Esteo - Importación de asientos
Indice
Estructura del fichero
El fichero de correo es un fichero ASCII desglosado en "líneas" o "registros" de longitud variable separados entre sí por un simple salto de línea, es decir, por los caracteres de control CR/LF (ASCII 13/10 ó HEX 0D/0A).

Cada línea se compone de campos, cuyo número y tipo depende del tipo de línea, separados entre sí por comas. El último campo de cada línea no llevará coma ni ningún otro separador tras él.

El primer campo de una línea es siempre, necesariamente, el identificador del tipo de línea que consiste en un dígito encerrado entre comillas. Los valores válidos son: "?", "2", "3", "4", "5" y "6".

El programa no tendrá en cuenta los posibles espacios situados entre los campos, alrededor de las comas.

Cada línea es independiente del resto excepto en tres casos:

  • La línea tipo "4" (cabecera) es opcional. De utilizarse, solo puede existir una en todo el fichero y debe ser necesariamente la primera.
  • Las línas tipo "5" que incluyen los datos de los apuntes, serán procesadas correlativamente como grupo para conformar un asiento. Cada asiento se formará con todos los apuntes consecutivos que tengan el mismo valor en el campo "número de asiento".
  • Las líneas tipo "6" fuerzan la anotación de los compromisos de cobro o pago relativos al asiento que acaba de procesarse. Solo existe una linea de este tipo para cada asiento y debe ser ubicada inmediatamente después del último apunte del asiento.
Tipos de campos
Existen en esencia, tres tipos básicos de campos:
  • Campos de texto ó alfanuméricos (T). Estos campos deberán ir encerrados entre comillas, por lo que no pueden contener en su interior dicho símbolo de comillas (ASCII 34). Tienen una longitud fijada por el programa, con lo que todos los caracteres que excedan dicha longitud serán ignorados y si es necesario serán rellenados con espacios a la derecha, por lo que no es necesario cumplimentarlos en su longitud total.
    Las tablas que se adjuntan con las estructuras de las líneas indican las longitudes (fija o mínima y máxima) admisibles para cada campo. Si la tabla indica un valor mínimo de cero, se entenderá que el programa aceptará un campo vacío (""). Ejemplo: "Compra"
  • Campos numéricos (N). Estos campos NO deben ir encerrados entre comillas ni otros símbolos. No se uasarán comas para separar los millares o millones y los decimales se separarán con un punto y no con una coma. Ejemplo: 123456.4
  • Campos fecha (F). Son una particularidad de los campos de texto. Como ellos, deben ir encerrados entre comillas y su longitud es fija (6 caracteres) en el formato 'aammdd' (año-mes-dia). Ejemplo: "970531" para el 31 de Mayo de 1997.
Líneas de comentario
Este registro existe para que el programa pueda dejar un fichero residual con las líneas no procesadas y una explicación del motivo del no procesamiento. No ha sido diseñado 'a prori' para uso del emisor de correo pero puede emplearla si así lo desea. El programa ignorará estas líneas.

Descripción de campos:

CampoTipoLongitudComentarios
IdentificadorT1contenido fijo: "?"
Texto del comentarioT?libre contenido
Ejemplo: "?","Esto es un mero comentario"
Líneas de datos cuentas
Este tipo de registro puede ser utilizado para dar altas masivas de cuentas procedentes de otras aplicaciones. No son necesarias para la carga de de los asientos, ya que cada apunte contiene la denominación de la cuenta y efectúa el alta de la misma si es necesario.

Si utiliza este tipo de línea para altas masivas, sea cuidadoso en el orden de envío de las mismas: el programa solo creará aquellas cuentas de las que exista la cuenta del inmediato nivel superior, con lo que deberá enviar siempre primero las de menor nivel.

Descripción de campos:

CampoTipoLongitudComentarios
IdentificadorT1contenido fijo: "2"
Código cuentaT1 a 10solo dígitos numéricos (0-9)
Denominación cuentaT0 a 60siempre en MAYUSCULAS
Fin de campos obligatorios--A partir de este punto la línea puede terminar tras cualquier campo
Datos de la cuenta--Ver descipción
Ejemplo: "2","43000001","F9-SOFT S.L."

Ejemplo: "2","43000001","F9-SOFT S.L.","","B36798809",""

Notas:

  • Si la denominación queda en blanco, se utilizará el nombre por defecto: "LECTURA CORREO ccc/nnn", donde ccc es el código del emisor del correo y nnn es el número de correo.
  • Si la cuenta existe, este registro no será procesado; en otro caso, la cuenta será creada siempre que exista la cuenta del nivel inmediatamente anterior.
Líneas de datos diarios
Este tipo de registro puede ser utilizado para dar altas masivas de diarios procedentes de otras aplicaciones.

Descripción de campos:

CampoTipoLongitudComentarios
IdentificadorT1contenido fijo: "3"
Código diarioT1 a 2siempre en MAYUSCULAS
Denominación diarioT0 a 25-
Ejemplo: "3","VE","Ventas"

Notas:

  • Si la denominación queda en blanco, se utilizará el nombre por defecto: "LECTURA CORREO ccc/nnn", donde ccc es el código del emisor del correo y nnn es el número de correo.
  • Si el diario existe, este registro no será procesado; en otro caso, el diario será creado.
Línea de cabecera
Este tipo de línea se utiliza opcionalmente como primera línea del correo. Ha sido implementada para permitir una carga automática del correo al arrancar el programa con plena identificación de cada correo sin intervención manual

En cada apunte que el programa genera se incluyen los datos correspondientes al código emisor de usuario y número de correo.Estos dos datos permiten identificar cada correo en orden a deshacer la carga del mismo, es decir, a borrar los apuntes generados en la lectura del correo. Si no implementa estos campos o utiliza siempre los mismos valores para ellos, nunca podrá en caso de necesidad anular un correo recibido, ya que será incapaz de identificarlo para diferenciarlo del resto de los correos recibidos y cargados.

Una idea sencilla sería la de incluir en estos campos fragmentos de la fecha de emisión, como por ejemplo el mes en el código y el día en el número.

Si el campo "Confirmación de carga" tiene un valor "S", el programa solicitará del usuario que confirme la carga del correo. Puede utilizarse para permitir al usuario posponer dicho proceso de carga en el procedimiento de cargas automáticas en el arranque o para advertirle de forma genérica de alguna circunstancia. Por ejemplo: "si recibes un correo con confirmación habla conmigo antes de cargarlo".

Descripción de campos:

CampoTipoLongitudComentarios
IdentificadorT1contenido fijo: "4"
Código emisor correoT0 a 3libre contenido
Número de correoT3solo dígitos numéricos (0-9)
Confirmación de cargaT0 a 1valores: "S" ó "N"
Ejemplo: "4","AGO","025","N"

Notas:

  • No olvide utilizar tres dígitos numéricos en el número de correo. Cuando el programa solicita este valor para anular un correo recibido, traduce siempre la entrada del usuario rellenándola a este formato, con lo que si este campo adquiere un valor alfanumérico o de sólo dos dígitos, será incapaz (llegado el caso) de ordenar al programa su anulación.
  • El valor "S" en la confirmación de carga indica exigir confirmación, cualquier otro valor no lo hará.
Líneas de apuntes
El programa procesa y agrupa en un mismo asiento todas las líneas correlativas de este tipo (apuntes) que compartan el mismo valor en el campo "Número de asiento". El asiento será creado con los apuntes en el mismo orden en que aparecen en el correo.

Si el programa detecta algún inconveniente para la correcta carga de un asiento (descuadre, cuentas que no existen, fecha fuera del ejercicio, etc.), el asiento será procesado igualmente pero trasladado a la "Lista de Espera".

Descripción de campos:

CampoTipoLongitudComentarios
IdentificadorT1contenido fijo: "5"
Número de asientoT1 a 6solo dígitos numéricos (0-9)
Fecha del asientoF6-
Código diarioT1 a 2siempre en MAYUSCULAS
Código documentoT0 a 8asimilable a nº de factura
Código de cuentaT1 a 10solo dígitos numéricos (0-9)
Importe al debeN-si la imputación es al haber, poner 0 (cero)
Importe al haberN-si la imputación es al debe, poner 0 (cero)
Texto explic. apunteT0 a 60libre contenido
Clave de IVAT0 a 3-
Marca del punteoT0 a 2-
Fecha del documentoF0/6-
Denominación cuentaT0 a 60de uso si hay que crearla
Fin de campos obligatorios--A partir de este punto la línea puede terminar tras cualquier campo
Clave operación IVAT0 a 1no se comprueba
Fecha operaciónF0/6-
Datos de la cuenta--de uso si hay que crearla. Ver descripción
Datos adicionales versión 4.76--de uso principalmente para el SII. Ver descripción
Ejemplo: "5","12","970518","GE","345/97","43001",0,123000,"N/factura num.345/97","","","970518","F9-SOFT S.L."

Ejemplo: "5","12","970518","GE","345/97","43001",0,123000,"N/factura num.345/97","","","970518","F9-SOFT S.L.","","970501","","B36798809",""

Ejemplo: "5","12","970518","GE","345/97","43001",0,123000,"N/factura num.345/97","","","970518","F9-SOFT S.L.","","970501","","B36798809",#,"Fra.Cob.","170816"

Notas:

  • El número de asiento no tiene relación alguna con el número de asiento contable. El programa asignará el número de asiento contable que corresponda en el programa independientemente de este número. Su valor tan solo sirve para saber cuando acaba un asiento y empieza otro.
  • La fecha del asiento deberá pertenecer al ejercicio contable.
  • Los campos "Clave de IVA" y "Marca del punteo" suelen ir en blanco. Existen para permitir la transferencia de datos de otras contabilidades.
Líneas de cobros y pagos
Este tipo de línea es opcional y para que sea procesada deberá tener en su programa la licencia del módulo de cobros y pagos y además tener algún seguimiento asociado a la contabilidad en la que se desea cargar el correo.

Solo podrá incluirse una línea de este tipo inmediatamente detrás de un asiento y solo podrá existir una para cada asiento.

Descripción de campos:

CampoTipoLongitudComentarios
IdentificadorT1contenido fijo: "6"
Tipo de operaciónT1valores "C" (cobro) ó "P" (pago)
Código de cuentaT1 a 10código contable del cli./prov. ó deu./acr.
Código documentoT1 a 8asimilable a nº de factura
Fecha documentoF6asimilable a fecha factura
Importe facturaN--
Código forma pagoT0 a 9opcional
Fecha cálculo vtos.F6fecha de origen cálculo vencimientos
Número vencimientosN-valor de 1 a 360
Días a primer vto.N-valor de 0 a 999
Días entre resto vtos.N-valor de 0 a 999
Tipo ajuste días pagoN-valores válidos: 0, 1 y 2 (ver notas)
Dias pago mensualesN-tres valores (ver notas)
Dias pago semanalesN-dos valores (ver notas)
Sistema ajuste vtos.T1valores "0", "1" ó "2" (ver notas)
Ejemplo: "6","C","43010086","237/97","970421",134200,"L3060","970421",2,30,30,1,1,15,0, 0,0, "0"

Notas:

  • El campo "Tipo de operación" indica si el programa debe realizar una anotación de compromisos de cobro ("C") o compromisos de pago "P").
  • El código del cliente, proveedor o representante deberá incluir el código contable completo.
  • Los campos "Código documento" y, "Fecha documento" deben ser cubiertos. Son, junto con el código de cuenta, la identificación de los compromisos que se generarán.
  • Si la forma de cobro/pago no existiera, el programa la creará con el nombre "LECTURA CORREO ccc/nnn", pero SIEMPRE se utilizarán los datos de la línea para la generación de los compromisos y NUNCA los de la forma de cobro/pago existente en el fichero.
  • Fecha cálculo vencimientos: el programa calculará los vencimientos a partir de la fecha indicada en este campo y NO a partir de la fecha documento. Suelen coincidir, pero puede haber casos como un pacto con un representante para el pago de comisiones al último vencimineto de la factura del cliente en el que la fecha del documento sería la fecha de la factura del cliente y la fecha de inicio de cálculos para los pagos al representante sería la de este último vencimiento.
  • Tipo ajuste días pago. Un valor de 0 (cero) indica que los vencimientos no deben ser ajustados a los días de pago, un valor de 1 (uno) indica que los vencimientos deben ser ajustados a los días de pago mensuales. Un valor de 2 (dos) indica que los vencimientos deben ser ajsutados a los días de pago semanales.
  • Dias de pago mensuales. Indique (si los hay) los días de pago mensuales. Debe incluir tres datos con valores de 1 a 30; los datos no utilizados tendrán un valor 0 (cero). Ejemplo: 1,20,0 (días 1 y 20 de cada mes), 0,0,0 (no hay dias de pago mensuales). No es necesario que los ordene, pero si que ponga los tres.
  • Dias de pago semanales. Indique (si los hay) los días de pago semanales. Debe incluir dos datos con valores del 1 al 7; los datos no utilizados tendrán un valor 0 (cero). Ejemplo: 3,0 (los miércoles), 0,0 (no hay dias de pago semanales). No es necesario que los ordene, pero si que ponga los dos.
  • Sistema ajuste vencimientos. Este campo indica de que manera los vencimientos teóricos calculados han de ser ajsutados a los dias de pago. Un valor "0" indica ajustar al día de pago más cercano, un "1" indica ajustar al inmediato anterior y un "2" ajustar al primero siguiente.
Datos completos de la cuenta
Los campos aquí descritos pueden seguir opcionalmente al nombre de la cuenta en las líneas de datos cuentas y en las líneas de apuntes. No es necesario cumplimentar todos los campos, la línea puede finalizar tras cualquiera de ellos.

Descripción de campos:

CampoTipoLongitudComentarios
DescripciónT0 a 160-
CIF españolT0 a 14No se comprueba
Clave tipo CIFT0 a 1Blanco, '1' a '6'. Si blanco, adopta valor '1' (NIF)
Código pais CIF residenciaT0 a 2No se comprueba
CIF país de residenciaT0 a 15No se comprueba
Marca excluir cli./prov.T0 a 1Blanco, vacío o 'N' = NO, otro valor = SI
Marca arrendamiento local fin.T0 a 1Blanco o vacío = NO, otro valor = SI
DirecciónT0 a 60-
Código postalT0 a 10-
PoblaciónT0 a 40-
ProvinciaT0 a 30-
Código paísT0 a 2No se comprueba
Nombre paísT0 a 30-
Razón socialT0 a 60-
Ejemplo: "Cuenta puente especial","B36798809","1","","","S","X","Ctra. de Madrid","36318","Vigo","Pontevedra","ES","ESPAÑA","F9-SOFT S.L."

Ejemplo: "","B36798809",""

Notas:

  • Se requiere la versión 4.32c o superior.
Datos adicionales versión 4.76
Los campos aquí descritos pueden seguir opcionalmente al último campo presente en las líneas de apuntes (se hace así para facilitar la compatibilidad entre versiones). El primer campo de este bloque, separado del anterior y del siguiente por comas, es el símbolo '#'. No es necesario cumplimentar todos los campos, la línea puede finalizar tras cualquiera de ellos.

Descripción de campos:

CampoTipoLongitudComentarios
Marcador de inicio de bloque 1El símbolo # sin entrecomillar
Documento apunteT0 a 8Número factura cobro/pago RECC
Fecha documento apunteF0/6Fecha factura cobro/pago RECC
Forma de cobro/pago RECCT0/1Blanco, "C", "T", "O", "N"
Medio de cobro/pago RECCT0 a 34No se comprueba
Código documento (SII)T0 a 60Número de factura para el SII
Tipo de factura (SII)T0 a 2No se comprueba
Clave operación (SII)T0 a 2No se comprueba
Clave operación 1 (SII)T0 a 2No se comprueba
Clave operación 2 (SII)T0 a 2No se comprueba
Descripción operación (SII)T0 a 80-
Emitida por terceros (SII)T0/1Blanco o "S"
Varios destinatarios (SII)T0/1Blanco o "S"
Cupón (SII)T0/1Blanco o "S"
Fecha de contabilización (SII)F0/6Fecha origen plazo presentación facturas recibidas
Ejemplo: ,#,"Fra.Cob.","170815","T","20200000991234567890"

Ejemplo: ,#,"","","","","Documento SII"

Notas:

  • Se requiere la versión 4.76 o superior.