Diferencia entre revisiones de «CONTABILIDAD/MOVIMIENTOS»

De Pragma Wiki
Ir a la navegación Ir a la búsqueda
 
Línea 11: Línea 11:
Cada comprobante con efecto contable tiene que tener un trigger que actualice sus movimientos en esta tabla. La rutina general es:
Cada comprobante con efecto contable tiene que tener un trigger que actualice sus movimientos en esta tabla. La rutina general es:


*'''Generar un trigger de INSERT y UPDATE''' que primero elimina los movimientos de esta tabla para el comprobante, e inmediatamente después lo registra. Este trigger además debe considerar que los movimientos solo deben registrarse cuando el comprobante está en estado '''Registrado''', ver [[COMPROBANTES/ESTADOS|estados de un comprobante]].
*'''Generar un trigger de INSERT y UPDATE''' que primero elimina los movimientos de esta tabla para el comprobante, e inmediatamente después lo registra. Este trigger además debe considerar que los movimientos solo deben registrarse cuando el comprobante está en estado '''Registrado''', ver [[:Category:COMPROBANTES#Estados de un comprobante|ESTADOS DE UN COMPROBANTE]].
*'''Generar un trigger de DELETE''' que elimina los movimientos de esta tabla para el comprobante.
*'''Generar un trigger de DELETE''' que elimina los movimientos de esta tabla para el comprobante.



Revisión actual - 17:12 14 ene 2025

Descripción

La tabla CTAMOVTABLA guarda los movimientos contables del sistema. Todos los comprobantes del sistema que contabilizan, además de los asientos contables, registran sus movimientos contables en esta tabla.

También agrega campos que permiten llevar cuentas corrientes, movimientos de stock y mucho mas directamente desde la contabilidad maximizando la confiabilidad de la información y minimizando la posibilidad de error ya que toda la información provendría del mismo lugar.

Estructura

Cada comprobante con efecto contable tiene que tener un trigger que actualice sus movimientos en esta tabla. La rutina general es:

  • Generar un trigger de INSERT y UPDATE que primero elimina los movimientos de esta tabla para el comprobante, e inmediatamente después lo registra. Este trigger además debe considerar que los movimientos solo deben registrarse cuando el comprobante está en estado Registrado, ver ESTADOS DE UN COMPROBANTE.
  • Generar un trigger de DELETE que elimina los movimientos de esta tabla para el comprobante.

Identidad

Lista de campos

Columna Campo físico Campo lógico Atributo Descripción Etiquetas Definición Observaciones
1 FCUENTA Cuenta VARCHAR(24) Caracteres de longitud variable hasta 24 caracter/es KEY,REQ,VIS,INS CTAMOVTABLA Cuenta imputada.
2 FFECHA Fecha DATETIME Fecha y hora. KEY,REQ,VIS,INS CTAMOVTABLA Fecha del movimiento.
3 FCOMPROBANTE Comprobante VARCHAR(18) Caracteres de longitud variable hasta 18 caracter/es KEY,REQ,VIS,INS CTAMOVTABLA Comprobante primario, el que genera el movimiento (no confundir con FCOMPROBANTEX).
4 FCONCEPTO Concepto VARCHAR(24) Caracteres de longitud variable hasta 24 caracter/es KEY,REQ,VIS,INS,UPD CTAMOVTABLA Concepto del movimiento, cada comprobante puede definir los suyos para agregar información adicional al movimiento.
5 FLINEA Linea INT Entero. KEY,REQ,VIS,INS,UPD CTAMOVTABLA Línea del comprobante primario.
6 FSUBCUENTA Subcuenta VARCHAR(24) Caracteres de longitud variable hasta 24 caracter/es VIS,INS,UPD CTAMOVTABLA Subcuenta imputada.
7 FCOMPROBANTEX ComprobanteX VARCHAR(20) Caracteres de longitud variable hasta 20 caracter/es VIS,INS,UPD CTAMOVTABLA Comprobante secundario, ejemplo: una factura cancelada en una cobranza. No confundir con FCOMPROBANTE.
8 FLINEAX LineaX INT Entero. VIS,INS,UPD CTAMOVTABLA Línea del comprobante secundario.
9 FIMPUTATIPO Tipo VARCHAR(24) Caracteres de longitud variable hasta 24 caracter/es VIS,INS,UPD CTAMOVTABLA Tipo de imputación.
10 FIMPUTA Imputacion VARCHAR(24) Caracteres de longitud variable hasta 24 caracter/es VIS,INS,UPD CTAMOVTABLA Imputación.
11 FIMPUTASUB Subimputacion VARCHAR(24) Caracteres de longitud variable hasta 24 caracter/es VIS,INS,UPD CTAMOVTABLA Subimputación.
12 FSECTOR Sector VARCHAR(24) Caracteres de longitud variable hasta 24 caracter/es VIS,INS,UPD CTAMOVTABLA Sector imputado.
13 FDESCRIPCION Descripcion VARCHAR(128) Caracteres de longitud variable hasta 128 caracter/es VIS,INS,UPD CTAMOVTABLA Descripción del movimiento.
14 FCOMENTARIOS Comentarios VARCHAR(256) Caracteres de longitud variable hasta 256 caracter/es VIS,INS,UPD CTAMOVTABLA Comentarios adicionales.
15 FPROYECTO Proyecto VARCHAR(16) Caracteres de longitud variable hasta 16 caracter/es VIS,INS,UPD CTAMOVTABLA Previo a las imputaciones guardaba el proyecto, el campo debe permanecer por los movimientos legados.
16 FSUBPROYECTO Subproyecto VARCHAR(16) Caracteres de longitud variable hasta 16 caracter/es VIS,INS,UPD CTAMOVTABLA Previo a las imputaciones guardaba el subproyecto, el campo debe permanecer por los movimientos legados.
17 FMIGRACION FMIGRACION VARCHAR(32) Caracteres de longitud variable hasta 32 caracter/es VIS,INS,UPD CTAMOVTABLA OBSOLETO.
18 FJURISDICCION_IIBB JurisdiccionIIBB VARCHAR(24) Caracteres de longitud variable hasta 24 caracter/es VIS,INS,UPD CTAMOVTABLA Código de jurisdicción IIBB.
19 FCONTABLE FCONTABLE BIT Campo lógico, admite 1, 0 y NULL VIS,INS,UPD CTAMOVTABLA El estándar es marcado, pero cuando no lo está es un movimiento que queremos guardar en la tabla pero no es contable (ej: algunos movimientos de stock).
20 FTIPOIMPORTE TipoImporte VARCHAR(14) Caracteres de longitud variable hasta 14 caracter/es VIS,INS,UPD CTAMOVTABLA Tipo de importe.
21 FMONEDA Moneda VARCHAR(4) Caracteres de longitud variable hasta 4 caracter/es VIS,INS,UPD CTAMOVTABLA Moneda.
22 FFECHAVALUACION FechaValuacion DATETIME Fecha y hora. VIS,INS,UPD CTAMOVTABLA Fecha de valuación de la cotización.
23 FCOTIZACION Cotizacion NUMERIC(12,4) Numérico de 12 enteros y 4 decimales de precisión. VIS,INS,UPD CTAMOVTABLA Cotización.
24 FCANTIDAD Cantidad pMONEDA_EXTERNA Cantidades en moneda externa VIS,INS,UPD CTAMOVTABLA Cantidad del movimiento en la moneda del campo FMONEDA.
25 FORICANTIDADDEBITOS FORICANTIDADDEBITOS pMONEDA_EXTERNA Cantidades en moneda externa VIS,INS,UPD CTAMOVTABLA Cantidad (débitos) para movimientos legados, no se usa más pero debe permanecer en la tabla.
26 FORICANTIDADCREDITOS FORICANTIDADCREDITOS pMONEDA_EXTERNA Cantidades en moneda externa VIS,INS,UPD CTAMOVTABLA Cantidad (créditos) para movimientos legados, no se usa más pero debe permanecer en la tabla.
27 FORIDEBITOS FORIDEBITOS pMONEDA_LOCAL Cantidades en moneda local VIS,INS,UPD CTAMOVTABLA Débitos en moneda local para movimientos legados, no se usa más pero debe permanecer en la tabla.
28 FORICREDITOS FORICREDITOS pMONEDA_LOCAL Cantidades en moneda local VIS,INS,UPD CTAMOVTABLA Créditos en moneda local para movimientos legados, no se usa más pero debe permanecer en la tabla.
29 FCLAVETIPO ClaveTipo VARCHAR(14) Caracteres de longitud variable hasta 14 caracter/es VIS,INS,UPD CTAMOVTABLA Permite identificar movimientos de artículos, clientes, impuestos, proveedores, tesorería y retenciones. Combina con los campos que cuyo nombre comienza con FCLAVE.
30 FCLAVE Clave VARCHAR(24) Caracteres de longitud variable hasta 24 caracter/es VIS,INS,UPD CTAMOVTABLA Identifica el artículo, cliente, impuesto, proveedor, cheque o valor o retención cuando FCLAVETIPO está definido.
31 FCLAVESUB FCLAVESUB VARCHAR(32) Caracteres de longitud variable hasta 32 caracter/es VIS,INS,UPD CTAMOVTABLA Agrega información adicional al artículo, cliente, impuesto, proveedor, cheque o valor o retención cuando FCLAVETIPO está definido.
32 FCLAVEVAL FCLAVEVAL VARCHAR(64) Caracteres de longitud variable hasta 64 caracter/es VIS,INS,UPD CTAMOVTABLA Agrega información adicional al artículo, cliente, impuesto, proveedor, cheque o valor o retención cuando FCLAVETIPO está definido.
33 FCLAVEQ FCLAVEQ pMONEDA_LOCAL Cantidades en moneda local VIS,INS,UPD CTAMOVTABLA Usado para agregar movimentos de stock en movimientos de artículos.
34 FCLAVEM FCLAVEM NUMERIC(12,5) Numérico de 12 enteros y 5 decimales de precisión. VIS,INS,UPD CTAMOVTABLA Usado para agregar la medida de los movimientos de stock en movimientos de artículos.
35 FCLAVEEMISION FCLAVEEMISION DATETIME Fecha y hora. VIS,INS,UPD CTAMOVTABLA Datos relacionados con valores de tesorería cuando se usa FCLAVETIPO.
36 FCLAVEVENCIMIENTO FCLAVEVENCIMIENTO DATETIME Fecha y hora. VIS,INS,UPD CTAMOVTABLA Datos relacionados con valores de tesorería cuando se usa FCLAVETIPO.
37 FCLAVEVALUACION FCLAVEVALUACION VARCHAR(64) Caracteres de longitud variable hasta 64 caracter/es VIS,INS,UPD CTAMOVTABLA Datos relacionados con valores de tesorería cuando se usa FCLAVETIPO.
38 FDIFCAMBIO DifCambio BIT Campo lógico, admite 1, 0 y NULL VIS,INS,UPD CTAMOVTABLA El campo se marca cuando se trata de un registro de diferencia de cambio que está expresado en moneda local, con una cotización de 1 y asociado a un comprobante en moneda externa.
39 FETIQUETA Etiqueta VARCHAR(32) Caracteres de longitud variable hasta 32 caracter/es VIS,INS,UPD CTAMOVTABLA Es la etiqueta del movimiento, usada en cabeceras de asiento.
40 FETIQUETA_CLAVE EtiquetaClave VARCHAR(32) Caracteres de longitud variable hasta 32 caracter/es VIS,INS,UPD CTAMOVTABLA Admite un código adicional cuando usamos la etiqueta.
41 FCANTIDADDEBITOS CantDebitos pMONEDA_EXTERNA Cantidades en moneda externa COMPUTADO Campo calculado que muestra la cantidad de débitos.
42 FCANTIDADCREDITOS CantCreditos pMONEDA_EXTERNA Cantidades en moneda externa COMPUTADO Campo calculado que muestra la cantidad de créditos.
43 FDEBITOS Debitos pMONEDA_LOCAL Cantidades en moneda local COMPUTADO Campo calculado que muestra el importe (moneda local) de débitos.
44 FCREDITOS Creditos pMONEDA_LOCAL Cantidades en moneda local COMPUTADO Campo calculado que muestra el importe (moneda local) de créditos.
45 FCANTIDAD_SGN CantidadSigno pMONEDA_EXTERNA Cantidades en moneda externa COMPUTADO Campo calculado que muestra la cantidad en positivo cuando es un débito, y negativo cuando es un crédito.
46 FIMPORTE_SGN ImporteSigno pMONEDA_LOCAL Cantidades en moneda local VIS, COMPUTADO Campo calculado que muestra el importe en positivo cuando es un débito, y negativo cuando es un crédito.
47 FTIPOIMPORTE_CALC FTIPOIMPORTE_CALC VARCHAR(14) Caracteres de longitud variable hasta 14 caracter/es VIS, COMPUTADO Muestra el tipo de importe (débito o crédito) según los importaes del comprobante, usado con movimientos legados.
48 FCMPFAMILIA Familia VARCHAR(2) Caracteres de longitud variable hasta 2 caracter/es VIS, COMPUTADO Campo calculado que muestra la familia del comprobante tomando los dos primeros caracteres del campo FCOMPROBANTE.
49 FCMPTIPO Tipo VARCHAR(2) Caracteres de longitud variable hasta 2 caracter/es VIS, COMPUTADO Campo calculado que muestra el tipo de comprobante tomando el tercer caracter del campo FCOMPROBANTE.

Observaciones adicionales sobre los campos

Los campos que comienzan con FCLAVE permiten agregar información no contable a estos registros con el objetivo de usar la misma tabla para otros usos como armar una cuenta corriente de proveedores o clientes o armar una lista de movimientos de caja. El agregado de estos campos lleva solo unos años por lo que no cuenta con la historia completa, los registros anteriores al cambio no contiene esta información.

Por este motivo es que no hay todavía consultas que usen estos datos, pero eventualmente existirán.

FCLAVETIPO

Puede contener alguno de los valores listados abajo:

  • PRO refiere a movimientos de proveedores.
  • IMP refiere a movimientos de impuestos, por ejemplo, los impuestos de una factura.
  • RET refiere a movimientos de retenciones de impuestos, por ejemplo, las retenciones de una orden de pago.
  • CTAPER refiere a movimientos de cuentas personales.
  • CLI refiere a movimientos de clientes.
  • CAV refiere a movimientos de caja.

También se usa ART y ARTSINMOV pero aún no están implementados por completo.

FCLAVE

El contenido del campo se relaciona con los campos detallados anteriormente:

  • Cuando es PRO contiene el código del proveedor.
  • Cuando es IMP contiene el código de familia del impuesto.
  • Cuando es RET contiene el código de familia del impuesto.
  • Cuando es CTAPER contiene el código del titular de la cuenta personal.
  • Cuando es CLI contiene el código de cliente.
  • Cuando es CAV contiene el código de cartera de valores.

FCLAVESUB

El contenido del campo se relaciona con los campos detallados anteriormente:

  • Cuando es PRO contiene el código del domicilio del proveedor.
  • Cuando es IMP contiene el código de impuesto.
  • Cuando es RET contiene el código de impuesto.
  • Cuando es CLI contiene el código de domicilio del cliente.
  • Cuando es CAV contiene el código de concepto de caja.

FCLAVEVAL

El contenido del campo se relaciona con los campos detallados anteriormente:

  • Cuando es PRO contiene el código del domicilio del proveedor.
  • Cuando es IMP contiene la jurisdicción del impuesto.
  • Cuando es RET contiene la jurisdicción del impuesto.
  • Cuando es CAV contiene el código de valor (un cheque por ejemplo).

FCLAVEQ

Solo en movimientos ART o ARTSINMOV contiene la cantidad del movimiento.

FCLAVEM

Solo en movimientos ART o ARTSINMOV contiene la medida del empaque del movimiento.

FCLAVEEMISION

  • Cuando es PRO es la fecha de referencia a la factura del proveedor.
  • Cuando es CAV contiene la fecha de emisión del valor.

FCLAVEVENCIMIENTO

  • Cuando es PRO o CLI es la fecha de vencimiento.
  • Cuando es CAV contiene la fecha de vencimiento del valor.

Relaciones

Triggers