Código:
FUNCTION TRASCONTA(nModo)
//nModo:
//1.- Transferir todas las que haya
//2.- Transferir solo las de contado que esten pagadas y hacer contraasiento.
//3.- Contado no pagadas mas 15 d¡as
//Para Transferir el diario a Contabilidad
LOCAL aStruDiari:={;
{"ASIEN","N",6,0},;
{"FECHA","D",8,0},;
{"SUBCTA","C",12,0},;
{"CONTRA","C",12,0},;
{"PTADEBE","N",16,2},;
{"CONCEPTO","C",25,0},;
{"PTAHABER","N",16,2},;
{"FACTURA","N",8,0},;
{"BASEIMPO","N",16,2},;
{"IVA","N",5,2},;
{"RECEQUIV","N",5,2},;
{"DOCUMENTO","C",10,0},;
{"DEPARTA","C",3,0},;
{"CLAVE","C",6,0},;
{"ESTADO","C",1,0},;
{"NCASADO","N",6,0},;
{"TCASADO","N",1,0},;
{"TRANS","N",6,0},;
{"CAMBIO","N",16,6},;
{"DEBEME","N",16,2},;
{"HABERME","N",16,2},;
{"AUXILIAR","C",1,0},;
{"SERIE","C",1,0},;
{"SUCURSAL","C",4,0},;
{"CODDIVISA","C",5,0},;
{"IMPAUXME","N",16,2},;
{"MONEDAUSO","C",1,0},;
{"EURODEBE","N",16,2},;
{"EUROHABER","N",16,2},;
{"BASEEURO","N",16,2},;
{"NOCONV","L",1,0},;
{"NUMEROINV","C",10,0};
}
LOCAL aStruSubcta:={;
{"COD","C",12,0},;
{"TITULO","C",40,0},;
{"NIF","C",15,0},;
{"DOMICILIO","C",35,0},;
{"POBLACION","C",25,0},;
{"PROVINCIA","C",20,0},;
{"CODPOSTAL","C",5,0},;
{"DIVISA","L",1,0},;
{"CODDIVISA","C",5,0},;
{"DOCUMENTO","L",1,0},;
{"AJUSTAME","L",1,0},;
{"TIPOIVA","C",1,0};
}
LOCAL aStruDatasi:={;
{"ASIEN","N",6,0},;
{"CCOMENT","C",40,0};
}
//Ficheros y camino para ContaPlus.
LOCAL cXDiario:="C:\GRUPOSP\CONTAELI\TMP\XDIARIO"
LOCAL cXSubcta:="C:\GRUPOSP\CONTAELI\TMP\XSUBCTA"
LOCAL cXDatAsi:="C:\GRUPOSP\CONTAELI\TMP\XDATASI"
//Variables preestablecidas
LOCAL cMoneda:="2"
LOCAL nAsiento:=1
//Subcuentas fijas
LOCAL cCaja :="5700000" //Caja £nica.
LOCAL cBanco:="5720001" //Caja Cantabria
LOCAL cMerca:="7000000" //Venta de Mercader¡as
LOCAL cIvaRe:="4770016" //Iva repercutido al 16%
LOCAL cRecEq:="4770416" //Recargo de Equivalencia el que lo tenga
//Hasta que fecha
LOCAL dHasta:=DATE()
LOCAL lSeguir:=.F.
LOCAL cMsge:=""
LOCAL nMsge:=1 //1 No hay facturas 2.- Cancelado por el usuario
LOCAL dRemesa:=Date() //aqu¡ guardaremos la fecha de cobro de la remesa
LOCAL cCliente:=""
TAPIZ("BG")
..........
//Crear los ficheros son obligatorios los tres
//Aunque solamente tendr datos Xdiario.dbf
//En Xsubcta, tendr¡an que estar los clientes nuevos
//No existentes en Contabilidad
//En XdatAsi van los comentarios de los asientos, es decir nada
//Se crear vacio lo mismo que XSbucta.
............
IF lSeguir
DbCreate(cXdiario,aStrudiario)
DbCreate(cXDatAsi,aStrudatasi)
DbCreate(cXSubCta,aStruSubcta)
//Camino para exportar.
DbUseArea(.T.,,"C:\GRUPOSP\CONTAELI\TMP\XDIARIO","DIARIO",.T.)
Un Saludo.