Categoría:COMPROBANTES

De Pragma Wiki
Revisión del 20:20 7 feb 2025 de Luciano Carou (discusión | contribs.) (→‎Códigos fiscales)
(difs.) ← Revisión anterior | Revisión actual (difs.) | Revisión siguiente → (difs.)
Ir a la navegación Ir a la búsqueda

Descripción

Los comprobantes del sistema se agrupan en familias, y éstas a su vez contienen tipos. El sistema contiene funcionalidad para asistir en la generación de cualquier comprobante del sistema, pero para hacerlo necesita información descripta en esta categoría.

Diagrama de comprobantes.

Orden sugerido

Tablas asociadas

Con estos datos definidos podemos crear las COMPROBANTES/FAMILIAS que requieren de un código de 2 caracteres alfanuméricos. Estos dos caracteres deben coincidir con el prefijo de las tablas que representan a esos comprobantes, por ejemplo:

  • La familia [FV] corresponde a facturas de ventas.
  • Las tablas que las representan deben empezar con [FV], por ejemplo: FVCAB para los datos de la cabecera, FVDET para el detalle, etc.

Una vez definidas las familias de comprobantes podemos crear los COMPROBANTES/TIPOS que permiten un código de un carácter alfanumérico. Por ejemplo, la familia FV (factura de ventas) puede tener 3 tipos de comprobantes:

  • [F]acturas.
  • Notas de [D]ébito.
  • Notas de [C]rédito.

Puntos de emisión

Para definir qué usuarios pueden editar qué comprobantes (y sus puntos de emisión) hay que definir:

  • COMPROBANTES/PUNTOSEMISION para definir los puntos de emisión de cada tipo de comprobante, y los usuarios habilitados a cada uno.

Una vez definidos los puntos de emisión hay que definir:

Códigos fiscales

Para asociar los comprobantes definidos en el sistema a los códigos definidos por AFIP deben usarse las tablas:

Una vez definida por lo menos una asociación entre comprobantes y código fiscales puede usarse la siguiente consulta para asistir en esas relaciones.

Impresión de formularios de comprobantes

Para definir qué datos estarán disponibles al imprimir la familia del comprobante debe definirse:

Log de comprobantes

Estados de un comprobante

Un comprobante puede tener varios estados. Al grabarse originalmente (a través de la aplicación) los comprobantes tendrán un estado Nuevo (ver explicación más abajo).

Una vez grabado en la base de datos la aplicación le cambia el estado al comprobante según la intención del usuario que lo grabó.

El estado del comprobante se guarda en un campo llamado FCMPESTADO o cmpEstado dependiendo de la estructura de la tabla del comprobante.

Los estados posibles son:

  • Nuevo: es el estado en que se guarda un comprobante, normalmente es muy efímero ya que la aplicación solo usa ese estado para grabar el comprobante por primera vez e inmediatamente se lo cambia por alguno de los otros estados listados en esta sección, y según la intención del usuario quenregistró el comprobante. Encontrar un comprobante en estado Nuevo normalmente significa que algún trigger falló al intentar cambiarle el estado (a Abierto o registrado).
  • Abierto: el comprobante se encuentra grabado pero aún no registrado por lo que no debe tener ningún impacto en otras tablas (contabilidad, cuentas corrientes, etc.). Puede volver a editarse reabriéndolo.
  • Registrado: el comprobante se encuentra registrado normalmente y debe afectar todas las tablas previstas (contabilidad, cuentas corrientes, etc.).
  • Anulado: los comprobantes tienen dos modos de eliminación: físico el comprobante es eliminado físicamente de la base de datos, lógico el comprobante se marca con el estado Anulado. En este estado no debe tener ningún efecto en otras tablas (contabilidad, cuentas corrientes, etc.).