Ganancias - Maestro Tipos de deducción

:mantelpiece_clock: 25 min.

¿Qué es?

Un tipo de deducción representa a cada uno de los montos que se deben calcular para determinar el monto de un impuesto

¿Qué se define en cada tipo de deducción?

Se define:

  • qué se calcula
  • cómo se calcula
  • en qué momento
  • a qué impuesto corresponde
  • que escala utiliza
  • impacto en el Formulario

Modo de uso

Menú → Gestión de Capital Humano → Liquidación de Sueldos → Configuraciones

El maestro de Tipos de deducción contiene la información necesaria para realizar cada cálculo.

Los tipos de deducción corresponden a remuneraciones imponibles o exentas y deducciones que formarán parte de la cuenta.

Permite configurar el comportamiento de cada tipo de deducción con la siguiente información:

Código: código del tipo de deducción

Nombre: nombre del tipo de deducción

Descripción: descripción del tipo de deducción

Código Concepto: concepto de liquidación asociado necesario para obtener su valor de lo ya liquidado

Signo: determina si se tiene que sumar, restar o no tener en cuenta en el cálculo para la determinación del Neto sujeto a impuesto

País: país para el cual está configurado

Método: parte del código que se tiene que ejecutar para realizar el cálculo del imponible o deducción

Código Item: determina la línea del formulario 1359 y su exportador

Orden: indica el orden de cálculo que debe tener según la dependencia de tipos de deducción

Obligatoria: verdadero - se calcula siempre, falso - solo se calcula si el colaborador informó algún valor para esta deducción en el organismo oficial (Siradig)

Clasificación: se utiliza para identificar determinados tipos de deducción. Opciones: sin clasificar y Pago a Cuenta

Tope (Ganancias - Tope para Cálculo de Deducciones): se utiliza para poder determinar la forma de aplicar el tope en determinados tipos de deducción. Opciones: sin tope, Anual o Mensual. El tope anual consume todo el tope anual a medida que se van informando deducciones. El tope mensual toma el tope proporcional según el mes de pago de la liquidación.

Acumula: se utiliza para configurar como acumula los importes. Opciones: No Acumula, Anualmente (Fecha Pago), Anualmente (Fecha Hasta), Mensualmente (Fecha Hasta)

Los tipos de deducción pueden requerir de información de topes y/o valores establecidos para realizar determinada cuenta.

Para configurar esta información, se completan los ítems del tipo de deducción.

Fecha Desde: vigencia desde

Fecha Hasta: vigencia hasta

Importe Fijo: valor fijo establecido

Importe Máximo mensual: tope mensual

Importe Máximo anual: tope anual

Porcentaje: para el caso de tener que aplicar un porcentaje

Porcentaje sobre concepto: para el caso de tener que aplicar un porcentaje sobre un concepto

Es retroactivo: indica si es retroactivo o no al 1 de enero del período

Se asocia cada tipo de deducción a los tipos de impuesto en el que debe calcularse

Para el caso de tipos de deducción que utilicen una escala para realizar el cálculo, se configura junto con el tipo de impuesto la escala correspondiente.

Ejemplo: Importe Fijo que utiliza una escala para Impuesto a los Ingresos Personales otra para la liquidación anual o final (que tienen otra escala).

Tipo de Impuesto: seleccionar el tipo de impuesto

Escala: seleccionar la escala si fuera necesario

Descripción

¿Qué hace cada método?

Modos de Cálculo


Guardaremos en la tabla Liquidación de Ganancias (GALiquidacionGanancias) los montos que conforman el cálculo del impuesto

Existen diferentes modos de cálculo dependiendo del tipo de deducción a calcular

Definimos

Fecha de Inicio:

La fecha de inicio es el 01/01/año de la fecha de pago de la liquidación si la configuración es Acumula Anualmente (Fecha Pago), salvo que la fecha de alta del empleado sea mayor, en ese caso se toma la fecha de alta
La fecha de inicio es el 01/01/año de la fecha hasta de la liquidación si la configuración es Acumula Anualmente (Fecha Hasta), salvo que la fecha de alta del empleado sea mayor, en ese caso se toma la fecha de alta
La fecha de inicio es el 01/mes/año de la fecha hasta de la liquidación si la configuración es Acumula Mensualmente (Fecha Hasta), salvo que la fecha de alta del empleado sea mayor, en ese caso se toma la fecha de alta

Diferencial zona patagónica:

si el colaborador gozara de algun beneficio incrementando algunas deducciones, se calculadorían los importes más el porcentaje, detectamos que Siradig informa si es zona patagónica con vigencia, se sigue liquidando como ahora porque en la anual este dato no tiene vigencia y debe tomarlo para todo el año. Actualmente sin usos

Tipo de Impuesto:

Está definido por el tipo de deducción “Tipo de Impuesto”

CalculoDeduccionModo1

Nombre del método: CalculoDeduccionModo1

Aplica para guardar en GALiquidacionGanancias - Liquidación de Ganancias y tipo de impuesto

Son importes que se toman de la liquidación.

Son tipos de deducción obligatoria SI Orden 100

La función debe tomar el código del concepto configurado en el tipo de deducción, buscar el resultado calculado en memoria

Importe Calculado = Resultado

Importe Auxiliar = Resultado

Guardar en Liquidación de ganancias

Ejemplo

CalculoDeduccionModo2

Nombre del método: CalculoDeduccionModo2

Son las novedades informadas por el empleado en la entidad oficial.

Aplica para guardar en GALiquidacionGanancias importes que surgen de lo que informa el empleado en el aplicativo de la entidad oficial (Siradig en Argentina), información que se importa a la tabla de Novedades de Deducciones (GADeduccionNovedad)

Son tipos de deducción obligatoria NO Orden 100

Se debe calcular

Acumulado = (es lo informado vigente) Calcular la suma de los importes (sum(Importe)) de la tabla GADeduccionNovedad de los registros donde la fecha desde de la novedad esté entre el 01/01/año y fecha de pago de la liquidación

Suma = (es lo ya deducido en el año) suma de lo ya deducido en el año (sum(GALiquidacionGanancias.Importe) para esa deducción con fecha entre la Fecha de Inicio a la fecha de pago de la liquidación

Importe Calculado = Acumulado - Suma

Importe Auxiliar = Importe Calculado

Guardar en Liquidación de ganancias

Ejemplo

Modo Reversión - Se agregó en la función LiquidarGanancias:

Se ejecuta automáticamente cuando detecta diferencias entre lo calculado y lo informado por el colaboraldor en la entidad oficial (ARCA-Siradig)

Compara la lista de Novedades de Deducciones del empleado (desde el 01/01 a la fecha de pago) con lo que tenga liquidado con anterioridad (buscar en GALiquidacionGanancias - desde la Fecha de Inicio a la fecha de pago), si se encuentra alguna deducción liquidada que sea Obligatoria = NO y que NO esté en la lista de las novedades cargadas en Siradig (GADeduccionNovedad), se debe revertir el importe de esa deducción.

Importe Calculado = Suma de todo lo liquidado para la deducción en cuestión * -1

Importe Auxiliar = Importe Calculado

Guardar en Liquidación de ganancias

CalculoDeduccionModo3

Nombre del método: CalculoDeduccionModo3

Aplica para guardar en Liquidación de Ganancias importes que surgen de lo que informa el empleado en el aplicativo de la entidad oficial (Siradig en Argentina ), información que se importa a la tabla de Novedades de Deducciones (GADeduccionNovedad)

Son tipos de deducción obligatoria NO Orden 100

La función debe tomar el código de la deducción, buscar si hay algo informado para ese empleado en el año en la tabla de Novedades de Deducciones y calcular:

Acumulado =

Si el atributo del legajo fecha de baja no es nulo y la fecha de baja está entre la fecha desde y fecha hasta de la liquidación (tengo la fecha en memoria) y el concepto (asociado en el tipo deducción) Indica Mes Baja para Deducciones Generales por Baja es = 0 (en memoria, aún no está guardado en GALiquidacionGanancias)

Calcular sum(Importe) de la tabla GADeduccionNovedad de los registros donde la fecha de la novedad esté entre el 01/01 y 31/12

sino

Calcular sum(Importe) de la tabla GADeduccionNovedad de los registros donde la fecha de la novedad esté entre el 01/01 y fecha de pago de la liquidación

Suma = (es lo ya deducido en el año) SJLiquidacionGanancias.Importe del año para esa deducción con fecha entre la Fecha de Inicio a la fecha de pago de la liquidación (no lo que está en memoria ni lo que estuviera liquidado si estoy viendo valores calculados)

Tope = es el tope del tipo de deducción (GADeduccionTipoItem.ImporteMaximoAnual)

Se debe considerar la configuracion de los atributos Tope del maestro Tipos de deducción y Es Retroactivo del maestro de Tipos de impuesto para la determinación del Tope

  • Si tipo de impuesto tiene Es Retroactivo = true y Tope = Anual o Mensual se debe tomar el valor de la columna Importe Fijo
  • Si tipo de impuesto tiene Es Retroactivo = false y Tope = Mensual se debe tomar el valor de la columna Importe Máximo Mensual
  • Si tipo de impuesto tiene Es Retroactivo = false y Tope = Anual se debe tomar el valor de la columna Importe Máximo Anual

Importe calculado = se topea el Acumulado con el Tope y se resta Suma (que es lo ya deducido)

Importe Auxiliar = Importe Calculado

Ejemplo

CalculoDeduccionModo4

Nombre del método: CalculoDeduccionModo4

Son deducciones obligatorias comunes a todos los empleados (ej. mínimo no imponible)

Son tipos de deducción obligatoria SI Orden 120

La función debe tomar el código de la deducción, y calcular:

Coeficiente = si hay una novedad de deducción (GADeduccionNovedad) con código “trabRegPatagonica” vigente, tomar GADeduccionTipo.Porcentaje IMPORTANTE si es cero poner 1

Cantidad de meses =

Si el atributo fecha de baja no es nulo y la fecha de baja está entre la fecha desde y fecha hasta de la liquidación y el concepto Indica Mes Baja para Deducciones Art. 23 por Baja es = 0 (en memoria, aún no está guardado en GALiquidacionGanancias)

  • Tomar 12 meses

sino

  • La cantidad de meses debe es desde el 1/1 a la fecha de pago

Suma = es la suma de la deducción entre el 1/1 (o la fecha de alta si fuera mayor al 1/1) y la fecha de pago de la tabla GALiquidacionGanancias (no lo que está en memoria ni lo que estuviera liquidado si estoy viendo valores calculados)

Se debe considerara el valor de Es Retroactivo que esté configurado en el tipo de impuesto

  • Si Es Retroactivo = true, cuando calcule el Acumulado SIEMPRE debe calcular como Retroactivo
  • Si Es Retroactivo = false, cuando calcule el Acumulado debe calcular retroactivo o no segun lo configurado en el tipo de deducción que se está calculando

Acumulado =

Si EsRetroactivo (de la tabla GADeduccionTipoItem) es = 1

  • Cantidad de meses * GADeduccionTipo.ImporteFijo (importe vigente a la fecha de pago de) * (100 + Coeficiente)/100

sino

  • Suma + GADeduccionTipo.ImporteFijo (importe vigente a la fecha de pago de) * (100 + Coeficiente)/100

Importe Calculado = Acumulado - Suma

Importe Calculado Mensual = Acumulado - Suma

Si

Suma + Importe Calculado > Importe Máximo Anual (segun mes de pago)

devolver Importe Máximo Anual - Suma

sino

devolver Importe Calculado

Ejemplo

CalculoDeduccionModo5

Nombre del método: CalculoDeduccionModo5

Aplica para guardar en Liquidación de Ganancias importes que surgen de lo que informa el empleado en el aplicativo de la entidad oficial (Siradig en Argentina ), información que se importa a la tabla de Novedades de Deducciones (GADeduccionNovedad)

Son tipos de deducción obligatoria NO Orden 120

La función debe tomar el código de la deducción, y calcular:

Cantidad de meses =

Si el atributo fecha de baja no es nulo y la fecha de baja está entre la fecha desde y fecha hasta de la liquidación y el concepto Indica Mes Baja para Deducciones Art. 23 por Baja es = 0

son los meses que hay entre el 31/12 o la fecha hasta de la tabla novedades de deducciones (si fuera menor al 31/12) y el 01/01 o la fecha desde si la fecha desde es mayor al 1/1 de la tabla de Novedades de Deducciones (es el total de meses en que está informado el hijo dentro del año de la fecha de pago de la liquidación y multiplicado por el porcentaje a deducir (GADeduccionNovedad.Importe)/100)

sino

es la cantidad de meses que hay entre la fecha de pago de liquidación y el 01/01 o la fecha desde si la fecha desde es mayor al 1/1 de la tabla de Novedades de Deducciones y multiplicado por el porcentaje a deducir (GADeduccionNovedad.Importe/100

Tener en cuenta que puede haber más de un hijo en esta tabla y que hay que multiplicar la cantidad de cada uno de estos hijos por el porcentaje informado,

entonces es la sumatoria de la cantidad de meses que hay entre la fecha de pago y la fecha desde de la deducción )

En la cantidad de meses incluir el mes actual.

Coeficiente = si hay una novedad de deducción (GADeduccionNovedad) con código “trabRegPatagonica” vigente, tomar GADeduccionTipo.Porcentaje, sino el valor del coeficiente es cero

Mes Actual =

Si el atributo fecha de baja no es nulo y la fecha de baja está entre la fecha desde y fecha hasta de la liquidación y el concepto Indica Mes Baja para Deducciones Art. 23 por Baja es = 0

Es la cantidad de hijos que tengo entre el mes del pago de la liquidación y el 31/12, cada uno multiplicado por su respectivo porcentaje (50 o 100) y el resultado de eso es multiplicado por el importe fijo * (100 + Coeficiente) / 100 (importe fijo vigente al mes de pago) (antes importe auxiliar)

sino

Es la cantidad de hijos que tengo en el mes del pago de la liquidación, cada uno multiplicado por su respectivo porcentaje (50 o 100) y el resultado de eso es multiplicado por el importe fijo * (100 + Coeficiente) / 100 (importe fijo vigente al mes de pago) (antes importe auxiliar)

Suma = es la suma GALiquidacionGanancias.Importe desde 1/1/añoliquidacion (o la fecha de alta si fuera mayor al 1/1) hasta GALiquidacion.FechaPago (no lo que está en memoria ni lo que estuviera liquidado si estoy viendo valores calculados)

Se debe considerara el valor de Es Retroactivo que esté configurado en el tipo de impuesto

  • Si Es Retroactivo = true, cuando calcule el Acumulado SIEMPRE debe calcular como Retroactivo
  • Si Es Retroactivo = false, cuando calcule el Acumulado debe calcular retroactivo o no segun lo configurado en el tipo de deducción que se está calculando

Acumulado =

Si EsRetroactivo (de la tabla GADeduccionTipoItem) es = 1

  • Cantidad de meses * GADeduccionTipoItem.ImporteFijo (vigente a la fecha de pago) * (100 + Coeficiente) / 100

sino

  • Suma + Mes Actual - suma mensual

Importe calculado = Acumulado - Suma

Importe Auxiliar = Acumulado - Suma

Si

Suma + Importe Calculado > Importe Máximo Anual (segun mes de pago)

devolver Importe Máximo Anual - Suma

sino

devolver Importe Calculado

Ejemplo

CalculoDeduccionModo6

Nombre del método: CalculoDeduccionModo6

Aplica para guardar en Liquidación de Ganancias importes que surgen de lo que informa el empleado en el aplicativo de la entidad oficial (Siradig en Argentina ), información que se importa a la tabla de Novedades de Deducciones (GADeduccionNovedad)

Son tipos de deducción obligatoria NO Orden 150

La función debe tomar el código de la deducción, y calcular:

Tope Ganancia Neta Acumulada = sumatoria de deducciones ya liquidadas GALiquidacionGanancias y deducciones que estoy calculando en la liquidación actual (en memoria) con orden menor a 120 desde la Fecha de Inicio a la fecha de pago (va a sumar imponibles y restar deducciones) * GADeduccionTipoItem.PorcSobreConcepto / 100. En la sumatoria de deducciones, no tomar las que no tienen un signo. Solo si tiene como signo +(más) ó -(menos).(no lo que está en memoria ni lo que estuviera liquidado si estoy viendo valores calculados)

Se guarda el tipo de deducción Tope Ganancia Neta Acumulada para realizar controles

Suma = sumar todas las novedades que tiene este tipo de deducción desde el 01/01 a la fecha de pago sum(GADeduccionNovedad.Importe) + la suma del concepto asociado (E. en Cuota médica Asistencial va Total Importes Prepaga) tomar solo el valor de memoria

Acumulado: sum(Importe) de la tabla GALiquidacionGanancias donde la fecha de pago de LiquidacionID (tabla SJLiquidacion) esté entre la Fecha de Inicio y la fecha de pago de la liquidación actual para la deducción en cuestión (no lo que está en memoria ni lo que estuviera liquidado si estoy viendo valores calculados)

Importe Calculado = aplicar Tope Ganancia Neta Acumulada a la Suma

y a lo que me da restarle el Acumulado.

Importe Auxiliar = Importe Calculado

Ejemplo

CalculoDeduccionModo9

Nombre del método: CalculoDeduccionModo9

Son tipos de deducción obligatoria SI Orden 300

El neto sujeto a impuesto: sumatoria de todos los registros de GALiquidacionGanancias

Importe Calculado = suma de todos los registros de GALiquidacionGanancias con signo desde el 1/1 (o fecha de alta si fuera mayor al 1/1) hasta la fecha de pago de la liquidación + memoria (liquidación actual).

Si el resultado es menor a cero, guardar cero

Guardar el registro con valor en cero en GALiquidacionGanancias

CalculoDeduccionModo10

Nombre del método: CalculoDeduccionModo10

  • Horas Extras a descontar del neto sujeto a impuesto = buscar el valor del concepto asociado a este tipo de deducción - Este tipo de deducción ya se calculó antes porque es Obligatoria SI y orden 100

Son tipos de deducción obligatoria SI Orden 410

LEY 27743

No hay que calcular más este tipo de deducción

  • Neto sujeto a impuesto sin horas extras = sumatoria de todos los registros de GALiquidacionGanancias - el importe del concepto asociado en la configuracion de este tipo de deducción

Son tipos de deducción obligatoria SI Orden 420

LEY 27743

No hay que calcular más este tipo de deducción

  • Alicuota NSI:

si Neto sujeto a impuesto <= 0

Alicuota NSI = 0

Mes determinado para buscar en tabla: Si el atributo fecha de baja no es nulo y la fecha de baja está entre la fecha desde y fecha hasta de la liquidación y el concepto Indica Mes Baja para Deducciones Art. 23 por Baja = 0 el mes de 12 sino es el mes de la fecha de pago

A partir del Neto Sujeto a Impuesto(en memoria) voy a la tabla, buscar el periodo (este periodo es el del Mes determinado) en la escala GAEscalaTipo/GAEscala/GAEscalaItem.Porcentaje y obtengo el porcentaje según el rango correspondiente, con el valor del neto sujeto a impuesto, buscar en la tabla (GAEscalaTipo/GAEscala/GAEscalaItem.Porcentaje) configurada según el tipo de impuesto (GADeduccionTipoImpuestoEscala), según rango de importes y vigencia (con la fecha de pago) el valor del campo porcentaje

Son tipos de deducción obligatoria SI Orden 430

LEY 27743

El tipo de deduccion Neto sujeto a impuesto sin horas extra se sacó de la condición

  • Alícuota sin horas extras =

si Neto sujeto a impuesto <= 0

Alicuota sin horas extras = 0

Mes determinado me para buscar en tabla: Si el atributo fecha de baja no es nulo y la fecha de baja está entre la fecha desde y fecha hasta de la liquidación y si Indica Mes Baja para Deducciones Art. 23 por Baja = 0 el mes de 12 sino es el mes de la fecha de pago

Con el valor del neto sujeto a impuesto sin horas extras, buscar en la tabla (GAEscalaTipo/GAEscala/GAEscalaItem.Porcentaje) configurada según el tipo de impuesto (GADeduccionTipoImpuestoEscala), según rango de importes y vigencia (con el Mes determinado) el valor del campo porcentaje

Son tipos de deducción obligatoria SI Orden 440

LEY 27743

No hay que calcular más este tipo de deducción

  • Importe Fijo =

si Neto sujeto a impuesto <= 0

Importe Fijo = 0

Si el atributo fecha de baja no es nulo y la fecha de baja está entre la fecha desde y fecha hasta de la liquidación y el concepto Indica Mes Baja para Deducciones Art. 23 por Baja es = 0

con el valor del Neto sujeto a impuesto sin horas extras, buscar en la tabla (GAEscalaTipo/GAEscala/GAEscalaItem.Porcentaje) configurada según el tipo de impuesto (GADeduccionTipoImpuestoEscala), según rango de importes y vigencia mes 12 el valor del campo Importe Fijo

sino

con el valor del Neto sujeto a impuesto sin horas extras, buscar en la tabla (GAEscalaTipo/GAEscala/GAEscalaItem.Porcentaje) configurada según el tipo de impuesto (GADeduccionTipoImpuestoEscala), según rango de importes y vigencia (con la fecha de pago) el valor del campo Importe Fijo

Son tipos de deducción obligatoria SI Orden 450

LEY 27743

El tipo de deduccion Neto sujeto a impuesto sin horas extra se sacó de la condición

  • Importe Sobre excedente =

si Neto sujeto a impuesto <= 0

Importe Fijo = 0

Si el atributo fecha de baja no es nulo y la fecha de baja está entre la fecha desde y fecha hasta de la liquidación y el concepto Indica Mes Baja para Deducciones Art. 23 por Baja es = 0

con el valor del Neto sujeto a impuesto sin horas extras, buscar en la tabla (GAEscalaTipo/GAEscala/GAEscalaItem.Porcentaje) configurada según el tipo de impuesto (GADeduccionTipoImpuestoEscala), según rango de importes y vigencia mes 12 el valor del campo Importe Desde

sino

con el valor del Neto sujeto a impuesto sin horas extras, buscar en la tabla (GAEscalaTipo/GAEscala/GAEscalaItem.Porcentaje) configurada según el tipo de impuesto (GADeduccionTipoImpuestoEscala), según rango de importes y vigencia (con la fecha de pago) el valor del campo Importe Desde

Son tipos de deducción obligatoria SI Orden 460

LEY 27743

El tipo de deduccion Neto sujeto a impuesto sin horas extra se sacó de la condición

La busqueda en la escala ahora se realiza con el Neto Sujeto a Impuesto (en memoria) y no con el que se le restan las extras

CalculoDeduccionModo11

Nombre del método: CalculoDeduccionModo11

Son tipos de deducción obligatoria SI Orden 500

  • Retenciones Anteriores:

LEY 27743

El tipo de impuesto va a ser = 3, retenciones anteriores debe sumar el acumulado de impuesto cedular + impuesto a las ganancias

Definimos que se deben sumar los tipos de deduccion con Orden = 888 + las retenciones cargadas por Siradig si las hubiere (retGan de todo el año más la de memoria)

CalculoDeduccionModo12

Nombre del método: CalculoDeduccionModo12

  • Importe Porcentaje Ganancias =

si Neto sujeto a impuesto <= 0

Importe Porcentaje Ganancias = 0

(neto sujeto a impuesto - Importe Sobre excedente) * Porcentaje (es la Alicuota NSI) / 100

Son tipos de deducción obligatoria SI Orden 600

  • Impuesto a las Ganancias al mes de pago = ImporteFijo + Importe Porcentaje Ganancias - Retenciones Anteriores

Son tipos de deducción obligatoria SI Orden 610

LEY 27743 - SOLO AÑO 2024

luego de lo que se calculaba, agregar lo detallado abajo y devolver en Impuesto a las Ganancias al mes de Pago

Agregar esta extension del cálculo solo si

Deduccion Especial Art. 83 Ley 27743 (+) <> 0 AND Impuesto a las Ganancias al mes de pago > 0

si Impuesto a las Ganancias al mes de pago <= Deduccion Especial Art. 83 Ley 27743 (+)

retornar 0

si Impuesto a las Ganancias al mes de pago > Deduccion Especial Art. 83 Ley 27743 (+)

retornar Impuesto a las Ganancias al mes de pago - Deduccion Especial Art. 83 Ley 27743 (+)

—---------------------------------------------------------------------------------------------------------

El impuesto no puede superar el 35% de lo que el empleado gana.

Aplicar el tope 35%

Porcentaje = Tomar el porcentaje del tipo de deducción Tope 35% Ganancias

Tope Porcentual para Impuesto: Aplicar este porcentaje a la suma de todos los tipos de deducción con signo + de la liquidación en proceso (información en memoria)

y restar el importe del concepto asociado (contiene la resta de algunos conceptos)

código del tipo de deducción “TopeImpuesto”

ANUAL

Tope Porcentual para Impuesto Anual:

Aplicar este porcentaje a la suma de todos los tipos de deducción con signo calculados entre las fechas desde y fecha hasta de la liquidación por fecha de pago

Impuesto a las ganancias: si la novedad asociada al tipo de impuesto (GAImpuestoTipo) es <> 0 y LiquidacionLegajoID = null, el Importe calculado debe tomar el valor de esta novedad, sino:

si Impuesto a las Ganancias al mes de pago > Porcentaje sobre imponible

Impuesto a las ganancias = Porcentaje sobre imponible (si Porcentaje sobre imponible <= 0 devolver 0)

sino

Impuesto a las ganancias = Impuesto a las Ganancias al mes de pago (si Porcentaje sobre imponible <= 0 devolver 0)

la novedad está configurada y asociada al tipo de impuesto

Son tipos de deducción obligatoria SI Orden 620

código del tipo de deducción ImpuestoCedular

Impuesto Cedular: si la novedad asociada al tipo de impuesto (GAImpuestoTipo) es <> 0 y LiquidacionLegajoID = null, el Importe calculado debe tomar el valor de esta novedad, sino:

si Impuesto a las Ganancias al mes de pago > Porcentaje sobre imponible

Impuesto Cedular = Porcentaje sobre imponible (si Porcentaje sobre imponible <= 0 revolver 0)

sino

Impuesto Cedular = Impuesto a las Ganancias al mes de pago (si Porcentaje sobre imponible <= 0 revolver 0)

ANUAL/FINAL

  1. Pagos a Cuenta: suma de deducciones de clase Pagos a Cuenta del 1/1 al 31/12 del año del mes de pago guardar en tipo de deduccion codigo PagosCta

Debe sumar todas las deducciones (de memoria) de todos los registros que estén dentro del rango de fechas y cuya Clasificación sea 2 - Pago a Cuenta configurada en el tipo de deduccion.

  1. Impuesto a las Ganancias Anual sin topear:

  2. Resultado: Si Importe Fijo + Importe Porcentaje Ganancias - Pagos a Cuenta es negativo, el resultado es 0 - Retenciones Anteriores

  3. Resultado: Si este cálculo da positivo, el resultado es Importe Fijo + Importe Porcentaje Ganancias - Pagos a Cuenta - Retenciones Anteriores

LEY 27743 - SOLO AÑO 2024

Buscar el último valor liquidado en el año del tipo de deduccion Deduccion Especial Art. 83 Ley 27743 (+) SIEMPRE TOMANDO COMO REFERENCIA EL AÑO DE LA FECHA DE PAGO

Agregar esta extension del cálculo solo si

Deduccion Especial Art. 83 Ley 27743 (+) <> 0 AND Impuesto a las Ganancias Anual sin topear > 0

a lo que da Impuesto al mes de pago, restar Deduccion Especial Art. 83 Ley 27743 (+)

y si da positivo dejar el valor de impu mes pago - ded esp 2do parr

y si da negativo, evaluar que no devuelva más de lo retenido (Retenciones Anteriores)

y si es inferior se topea con Retenciones Anteriores

si Impuesto a las Ganancias Anual sin topear <= Deduccion Especial Art. 83 Ley 27743 (+)

retornar 0

si Impuesto a las Ganancias Anual sin topear > Deduccion Especial Art. 83 Ley 27743 (+)

retornar Impuesto a las Ganancias Anual sin topear - Deduccion Especial Art. 83 Ley 27743 (+)

—-------------------------------------------------------------------------------------------------------------------

  1. Impuesto a las Ganancias Anual: Topear Impuesto a las Ganancias Anual sin topear con el importe de Porcentaje sobre imponible
  2. Saldo a Pagar: Impuesto a las Ganancias Anual sin topear - Impuesto a las Ganancias Anual (se expone en formulario)

Son tipos de deducción obligatoria SI Orden 620

CalculoDeduccionModo13

Nombre del método: CalculoDeduccionModo13

Son deducciones obligatorias comunes a todos los empleados , pero la base de su cálculo contiene deducciones NO obligatorias (cargas de familia)

Son tipos de deducción obligatoria SI Orden 130

La función debe tomar el código de la deducción, y calcular:

Coeficiente = si hay una novedad de deducción (GADeduccionNovedad) con código “trabRegPatagonica” vigente, tomar GADeduccionTipo.Porcentaje IMPORTANTE si es cero poner 1

Cantidad de meses =

Si el atributo fecha de baja no es nulo y la fecha de baja está entre la fecha desde y fecha hasta de la liquidación y el concepto Indica Mes Baja para Deducciones Art. 23 por Baja es = 0 (en memoria, aún no está guardado en GALiquidacionGanancias)

  • Tomar 12 meses

sino

  • La cantidad de meses debe es desde el 1/1 a la fecha de pago

Suma = es la suma de la deducción entre el 1/1 (o la fecha de alta si fuera mayor al 1/1) y la fecha de pago de la tabla GALiquidacionGanancias (no lo que está en memoria ni lo que estuviera liquidado si estoy viendo valores calculados)

Cargas familiares = es la suma de la deducción entre el 1/1 (o la fecha de alta si fuera mayor al 1/1) y la fecha de pago de todos los importes calculados para tipos de deduccion cuyo modo de cálculo es CalculoDeduccionModo5 de la tabla GALiquidacionGanancias + lo calculado en memoria

Acumulado =

Si EsRetroactivo (de la tabla GADeduccionTipoItem) es = 1

  • Cantidad de meses * GADeduccionTipo.ImporteFijo (importe vigente a la fecha de pago) + Cargas familiares/12 * (100 + Coeficiente)/100

sino

  • Suma + GADeduccionTipo.ImporteFijo (importe vigente a la fecha de pago) + Cargas familiares del mes de pago/12 * (100 + Coeficiente)/100 - suma mensual de esta deduccion (lo que se hubiera liquidado en el mes actual por fecha de pago, sin lo de memoria)

Importe Calculado = Acumulado - Suma

Importe Calculado Mensual = Acumulado - Suma

ANUAL/FINAL

Se debe considerara el valor de Es Retroactivo que esté configurado en el tipo de impuesto

  • Si Es Retroactivo = true, cuando calcule el Acumulado SIEMPRE debe calcular como Retroactivo
  • Si Es Retroactivo = false, cuando calcule el Acumulado debe calcular retroactivo o no segun lo configurado en el tipo de deducción que se está calculando