Diferencia entre revisiones de «CALCULO RETENCIONES/PROCEDIMIENTO»
(Página creada con «==Introducción== El cálculo de impuestos se realiza casi íntegramente usando la base de datos. Los objetos que participan de este cálculo se describen en este artículo pero la mayor información vendrá de la lectura de esos objetos en SQL por parte de personal especializado. ==Inicialización de parámetros de cálculo== Category:MANUAL/USUARIO Category:CALCULO IMPUESTOS Category:PORTAL Durante la edición de una factura de compras o de ventas, ca…») |
Sin resumen de edición |
||
Línea 1: | Línea 1: | ||
==Introducción== | ==Introducción== | ||
El cálculo de | El cálculo de retenciones e realiza casi íntegramente usando la base de datos. Los objetos que participan de este cálculo se describen en este artículo pero la mayor información vendrá de la lectura de esos objetos en SQL por parte de personal especializado. | ||
==Inicialización de parámetros de cálculo== | ==Inicialización de parámetros de cálculo== | ||
[[Category:MANUAL/USUARIO]] | [[Category:MANUAL/USUARIO]] | ||
[[Category:CALCULO | [[Category:CALCULO RETENCIONES]] | ||
[[Category:PORTAL]] | [[Category:PORTAL]] | ||
Las ordenes de pago admiten la carga de: | |||
*Facturas. | |||
*Notas de débito. | |||
*Notas de crédito. | |||
*Anticipos. | |||
(Las ordenes de pago se explican en su propia sección). | |||
Una vez cargada la información necesaria (y con las aprobaciones que correspondan) la orden de pago se puede '''liquidar'''. Cuando se liquida se ejecuta un procedimiento de Delphi '''TOPCAB_implemented.CalcularRetenciones''' que inserta los comprobantes de la orden de pago en [[CALCULO RETENCIONES/PARAMETROS|Retenciones, parámetros de ordenes de pago (impIMPCMPRET_PARAMS)]] dando inicio al proceso de cálculo de retenciones. | |||
Esta tabla tiene un trigger '''impIMPCMPRET_PARAMS_TR_impIMPCMPRET_INS''' que llama a un procedimiento '''prx_impIMPCMPRET_Actualizar_FAST''' que calcula las retenciones. | |||
==Vistas requeridas para el cálculo, impuestos distintos a IIBB C.A.B.A.== | ==Vistas requeridas para el cálculo, impuestos distintos a IIBB C.A.B.A.== | ||
Línea 18: | Línea 25: | ||
Las siguientes vistas son requeridas por el procedimiento de cálculo. | Las siguientes vistas son requeridas por el procedimiento de cálculo. | ||
=== | ===impIMPCMPRET_FACTURAS_FAST=== | ||
Para cada línea de la tabla '''[[CALCULO | Para cada línea de la tabla '''[[CALCULO RETENCIONES/PARAMETROS|Retenciones, parámetros de ordenes de pago (impIMPCMPRET_PARAMS)]]''' arma la lista de impuestos que corresponden a cada comprobante y toda información adicional necesaria (exenciones, comportamientos fiscales, etc). | ||
=== | ===impIMPCMPRET_AGRUP=== | ||
Agrupa las facturas de la orden de pago cuyas retenciones estamos calculando según la definición de la familia de comprobantes. Por ejemplo la familia de Ganancias agrupa todas las facturas en un solo registro (denominado '''<AGRUP>''') pero la familia de IVA no dejando que cada comprobante sea una agrupación de sí mismo. | |||
===impIMPCMPRET_ACUMULADOS=== | |||
Acumula según la definición de la familia de impuestos. Por ejemplo la familia de Ganancias acumula los pagos mensuales pero las otras familias no. | |||
===impIMPCMPRET_AGRUP=== | |||
Suma los montos y retenciones agrupadas según la definición de la familia del impuesto, por ejemplo la familia de Ganancias agrupa por mes pero la de IVA no. | |||
===impIMPCMPRET_CALCULO_FAST=== | |||
Usa las vistas descriptas para calcular las retenciones que corresponda. En aquellos casos donde no se calcula retención por el motivo que sea, y la familia usa acumulados, los registros se guardan con el importe en retención en 0. | |||
Este resultado se inserta en '''[[CALCULO RETENCIONES/RETENCIONES|Retenciones, detalle de montos retenidos (impIMPCMPRET_RETENCION)]]''' en el procedimiento '''prx_impIMPCMPRET_Actualizar_FAST'''. | |||
==Vistas requeridas para el cálculo, IIBB C.A.B.A.== | |||
===impIMPCMPRET_CALCULO_IBCABA=== | |||
Junta los datos necesarios para poder realizar el cálculo de retenciones. Como el cálculo de retenciones de IIBB C.A.B.A. se basa en el padrón '''[[CALCULO IMPUESTOS/PADRON IBCABA|Padrón de Regimenes generales por publicación (IBCABA_PRG)]]''' el procedimiento es mucho más sencillo y esta vista proporciona todo lo necesario. | |||
El resultado de esta vista se inserta en '''[[CALCULO RETENCIONES/RETENCIONES|Retenciones, detalle de montos retenidos (impIMPCMPRET_RETENCION)]]''' en el procedimiento '''prx_impIMPCMPRET_Actualizar_FAST'''. | |||
*'''impIMPCMPIMP_CALX_IIBB_POR_PADRON''' toma directamente el dato de '''[[CALCULO IMPUESTOS/PADRON IBCABA|Padrón de Regimenes generales por publicación (IBCABA_PRG)]]'''. | *'''impIMPCMPIMP_CALX_IIBB_POR_PADRON''' toma directamente el dato de '''[[CALCULO IMPUESTOS/PADRON IBCABA|Padrón de Regimenes generales por publicación (IBCABA_PRG)]]'''. | ||
==Procedimiento ''' | ==Procedimiento '''prx_impIMPCMPRET_Actualizar_FAST'''== | ||
Este procedimiento es llamado por el trigger '''impIMPCMPRET_PARAMS_TR_impIMPCMPRET_INS''' sobre la tabla '''[[CALCULO RETENCIONES/PARAMETROS|Retenciones, parámetros de ordenes de pago (impIMPCMPRET_PARAMS)]]'''. | |||
<hr> | |||
<hr> | |||
<hr> | |||
<hr> | |||
Este procedimiento es llamado por el sistema (Delphi, objeto: TcmpDETALLE_ART_CalculoImpuestos, procedimiento CalcularImpuestoClick) una vez que ha insertado todas las líneas de detalle de la factura en '''[[IMPUESTOS/PARAMETROS|Impuestos, parametros generales (impPARAMS)]]'''. El detalle del procedimiento es: | Este procedimiento es llamado por el sistema (Delphi, objeto: TcmpDETALLE_ART_CalculoImpuestos, procedimiento CalcularImpuestoClick) una vez que ha insertado todas las líneas de detalle de la factura en '''[[IMPUESTOS/PARAMETROS|Impuestos, parametros generales (impPARAMS)]]'''. El detalle del procedimiento es: |
Revisión del 17:20 17 dic 2024
Introducción
El cálculo de retenciones e realiza casi íntegramente usando la base de datos. Los objetos que participan de este cálculo se describen en este artículo pero la mayor información vendrá de la lectura de esos objetos en SQL por parte de personal especializado.
Inicialización de parámetros de cálculo
Las ordenes de pago admiten la carga de:
- Facturas.
- Notas de débito.
- Notas de crédito.
- Anticipos.
(Las ordenes de pago se explican en su propia sección).
Una vez cargada la información necesaria (y con las aprobaciones que correspondan) la orden de pago se puede liquidar. Cuando se liquida se ejecuta un procedimiento de Delphi TOPCAB_implemented.CalcularRetenciones que inserta los comprobantes de la orden de pago en Retenciones, parámetros de ordenes de pago (impIMPCMPRET_PARAMS) dando inicio al proceso de cálculo de retenciones.
Esta tabla tiene un trigger impIMPCMPRET_PARAMS_TR_impIMPCMPRET_INS que llama a un procedimiento prx_impIMPCMPRET_Actualizar_FAST que calcula las retenciones.
Vistas requeridas para el cálculo, impuestos distintos a IIBB C.A.B.A.
Las siguientes vistas son requeridas por el procedimiento de cálculo.
impIMPCMPRET_FACTURAS_FAST
Para cada línea de la tabla Retenciones, parámetros de ordenes de pago (impIMPCMPRET_PARAMS) arma la lista de impuestos que corresponden a cada comprobante y toda información adicional necesaria (exenciones, comportamientos fiscales, etc).
impIMPCMPRET_AGRUP
Agrupa las facturas de la orden de pago cuyas retenciones estamos calculando según la definición de la familia de comprobantes. Por ejemplo la familia de Ganancias agrupa todas las facturas en un solo registro (denominado <AGRUP>) pero la familia de IVA no dejando que cada comprobante sea una agrupación de sí mismo.
impIMPCMPRET_ACUMULADOS
Acumula según la definición de la familia de impuestos. Por ejemplo la familia de Ganancias acumula los pagos mensuales pero las otras familias no.
impIMPCMPRET_AGRUP
Suma los montos y retenciones agrupadas según la definición de la familia del impuesto, por ejemplo la familia de Ganancias agrupa por mes pero la de IVA no.
impIMPCMPRET_CALCULO_FAST
Usa las vistas descriptas para calcular las retenciones que corresponda. En aquellos casos donde no se calcula retención por el motivo que sea, y la familia usa acumulados, los registros se guardan con el importe en retención en 0.
Este resultado se inserta en Retenciones, detalle de montos retenidos (impIMPCMPRET_RETENCION) en el procedimiento prx_impIMPCMPRET_Actualizar_FAST.
Vistas requeridas para el cálculo, IIBB C.A.B.A.
impIMPCMPRET_CALCULO_IBCABA
Junta los datos necesarios para poder realizar el cálculo de retenciones. Como el cálculo de retenciones de IIBB C.A.B.A. se basa en el padrón Padrón de Regimenes generales por publicación (IBCABA_PRG) el procedimiento es mucho más sencillo y esta vista proporciona todo lo necesario.
El resultado de esta vista se inserta en Retenciones, detalle de montos retenidos (impIMPCMPRET_RETENCION) en el procedimiento prx_impIMPCMPRET_Actualizar_FAST.
- impIMPCMPIMP_CALX_IIBB_POR_PADRON toma directamente el dato de Padrón de Regimenes generales por publicación (IBCABA_PRG).
Procedimiento prx_impIMPCMPRET_Actualizar_FAST
Este procedimiento es llamado por el trigger impIMPCMPRET_PARAMS_TR_impIMPCMPRET_INS sobre la tabla Retenciones, parámetros de ordenes de pago (impIMPCMPRET_PARAMS).
Este procedimiento es llamado por el sistema (Delphi, objeto: TcmpDETALLE_ART_CalculoImpuestos, procedimiento CalcularImpuestoClick) una vez que ha insertado todas las líneas de detalle de la factura en Impuestos, parametros generales (impPARAMS). El detalle del procedimiento es:
- Elimina cualquier cálculo previo de impIMPCMPIMP.
- Inserta en esa tabla el cálculo realizado en impIMPCMPIMP_CALX.
- Inserta en esa tabla el cálculo realizado en impIMPCMPIMP_CALX_IIBB_POR_PADRON.
Una vez que el procedimiento ha sido ejecutado tendremos los impuestos calculados en la tabla Impuestos calculados (impIMPCMPIMP).