Reglas de cálculo

La sección de reglas Subcálculo es el núcleo de los cálculos de impuestos. Consta de muchas subrutinas para realizar diversos cálculos. Por ejemplo, el sistema se inicia extrayendo datos de los balances del año anterior como balances de apertura para el año actual. El sistema concilia automáticamente los datos del libro y los datos del balance de comprobación para asegurarse de que el punto de partida correcto para el aprovisionamiento de impuestos es el total ajustado del balance de comprobación. A continuación, ejecuta el proceso de automatización de impuestos para configurar los datos en las cuentas de diferencias temporales y permanentes, así como en otras cuentas fiscales. El sistema calcula las pérdidas fiscales y los créditos para el aprovisionamiento nacional. También calcula los ajustes de devengo y otros ajustes. La tasa de impuestos adecuada se aplica a cada cuenta para calcular los gastos en impuestos para el periodo.

Los cálculos de impuestos se realizan en el nivel de entidad padre solo si la entidad tiene la propiedad definida por el usuario TaxCalc establecida en Sí. De lo contrario, no se realizarán los cálculos de impuestos.

Los siguientes cálculos se realizarán para todas las entidades si las cuentas son válidas para la entrada de datos.

  • Cálculo de balances de apertura

  • Cálculo de RTA para cuentas de diferencias temporales

  • Cálculo de ajustes automáticos

  • Cálculo de valores de automatización

  • Cálculo de pérdidas fiscales y créditos de impuestos (por año de vencimiento)

Los siguientes cálculos se realizarán para las entidades en las que el cálculo de impuestos esté habilitado para la entidad base y padre.

  • Cálculos de impuestos principales

  • Cálculos de TARF

  • Validaciones

  • Cálculos de FIN18

En la siguiente tabla se muestran cuentas válidas para las entidades. Si la cuenta es válida, se tiene en cuenta para los cálculos.

Cuenta Entidad padre Entidad base
La cuenta tiene un grupo asignado No hay ningún grupo asignado a la entidad - No

Grupo asignado a la entidad:

  • Coincidencia de grupo - Sí

  • Sin coincidencia de grupo - No

No hay ningún grupo asignado a la entidad - Válida

Grupo asignado a la entidad:

  • Coincidencia de grupo - Válida

  • Sin coincidencia de grupo:

    • No es válida si el grupo se encuentra en la cadena de antecesores

    • Válida si el grupo no se encuentra en la cadena de antecesores

No se ha asignado ningún grupo a la cuenta No

Cada subrutina realiza cálculos específicos como parte del proceso de aprovisionamiento de impuestos.

En Sub Calculate, se llama a las siguientes subrutinas.

Sub Calculate

  • Llamada a Calculate_ExchangeRates

  • Llamada a Clear_ValidationCellText

  • Llamada a Calculate_OpenBalances

  • Llamada a Calculate_AutoAdjustment

  • Llamada a Calculate_TaxLossesNational

  • Llamada a Calculate_TaxCreditsNational

  • Llamada a Calculate_RTA

  • Llamada a Calculate_TaxAutomation

  • Llamada a Calculate_TaxCalculations

    • Llamada a Calculate_NatRegcoreTax

    • Llamada a Calculate_AssetLiab

    • Llamada a Calculate_VAAllocation

    • Llamada a Calculate_Reclass

    • Llamada a Calculate_TempEquity

    • Llamada a Calculate_ETR

  • Llamada a Calculate_TARF

  • Llamada a Calculate_Validations

  • Llamada a Clear_Zeros

  • Llamada a Set_ImpactStatus


Gráfico de subrutinas de cálculo

Detalles adicionales para cada subrutina:

  • Sub Calculate ActiveRegion

    Determina si la región está activa si se introduce al menos una de las tres tasas de impuestos regionales.

  • Sub Calculate_AssetLiab

    Determina si el impuesto diferido es un activo o pasivo.

    Determina si el impuesto diferido es actual o no actual.

  • Sub Calculate_AutoAdjustments

    Calcula los ajustes automáticamente para conciliar los datos del libro y los datos del balance de comprobación.

  • Sub Calculate_BlendedTaxApportionment

    Calcula el prorrateo de impuestos mixto para la región mixta.

    Establece el prorrateo mixto de impuestos en el 100% si no se introduce ningún prorrateo regional.

  • Sub Calculate_BVTCoreTax

    Realiza cálculos de impuestos para cuentas BVT.

    Flujo de cálculos de impuestos principales para BVT:

    • Si no se especifica ninguna cuenta vinculada para la cuenta BVT, no se realizan los cálculos de impuestos.

    • La cuenta BVT actual debe ser válida para el miembro DataCategory AllBVTTax y el miembro RollForward BVTTaxCalc.

    • Si la cuenta vinculada es de impuestos efectuados, no se aplica ninguna tasa de impuestos.

    • Si no se especifica ninguna tasa de impuesto de reemplazo para la cuenta vinculada, se aplica la tasa de impuesto de cierre actual/no actual (según la cuenta vinculada) y, si no se especifica ninguna tasa de cierre, se omite.

    • El NBR se calcula en función de la propiedad de la cuenta vinculada. Si la cuenta vinculada tiene establecido NBR - Sí, se calcula el NBR; de lo contrario, se omite.

    • Los cálculos se convierten a la tasa de cierre.

  • Sub Calculate_ExchangeRates

    Obtiene los tipos de cambio de apertura a partir de los tipos de cierre del año anterior.

    Configura los tipos de cambio que se van a utilizar para la conversión.

    Sub Calculate_Exchange Rates se ejecuta desde Sub Calculate.

  • Sub Calculate_ETR

    Calcula la tasa de impuestos efectiva estatutaria, regional y consolidada.

    Establece el prorrateo mixto de impuestos en el 100% si no se introduce ningún prorrateo regional.

  • Sub Calculate_OpeningBalances

    Calcula los balances de apertura para los datos de impuestos/de libro/ de balance de comprobación.

    Los balances de apertura se recuperan a partir de los balances de cierre del año anterior.

    Los balances de apertura para los balances de cierre de escenario, año y periodo actuales se obtienen de distintos elementos de escenario, año y periodo mediante el cumplimiento de las siguientes condiciones.

    • Si no se especifica ningún escenario dinámico mediante la pantalla personalizada Balances de apertura, se tendrá en cuenta el miembro de escenario especificado en la propiedad definida por el usuario ("SrcSc"). Si no se especifica ningún miembro en la propiedad definida por el usuario, se utilizará el miembro de escenario actual.

    • Si no se especifica ningún año de origen en la propiedad definida por el usuario ("SrcYr"), se utilizará el año anterior.

    • Si no se especifica ningún periodo de origen en la propiedad definida por el usuario ("SrcP"), se utilizará el último periodo (P12).

    Después de rellenar los balances de apertura para el escenario actual, se modificará el estado de los escenarios futuros dependientes correspondientes.

    Sub Calculate_OpenBalances se ejecuta desde Sub Calculate.

  • Sub Calculate_NatRegCoreTax

    Calcula el gasto en impuestos nacional.

    Calcula los cambios de tasas desde la apertura.

    Calcula los cambios de tasas desde el periodo actual.

    Realiza la retrocesión de patrimonio.

    Realiza la reclasificación para el movimiento de equidad.

    Calcula el impuesto regional.

    Cálculo de NBR.

    Calcula el cambio del tipo de cambio a la apertura en NBR.

    Calcula los impuestos regionales como deducción del aprovisionamiento nacional.

  • Sub Calculate_Reclass

    Calcula la reclasificación de RollForward para activos y pasivos.

  • Sub Calculate_TaxAutomation

    Calcula la automatización de impuestos.

  • Sub Calculate_TARF

    Las cuentas del libro tienen que introducirse en la jurisdicción nacional, pero para la regla de TARF, se leen de Nacional y se escriben en US_Blended de Regional.

    Realiza los cálculos de Diferimiento de cuenta fiscal.

  • Sub Calculate_TaxCreditsNational

    Calcula los créditos de impuestos para el aprovisionamiento nacional.

  • Sub Calculate_TaxLossesNational

    Calcula las pérdidas fiscales para el aprovisionamiento nacional.

  • Sub Calculate_TempEquity

    Calcula las cuentas de equidad temporales en TBBS.

  • Sub Calculate_VAAllocation

    Calcula la asignación de la provisión de valoración.

  • Sub Calculate_Validations

    Calcula las validaciones siguientes:

    • Valida que TaxLossCFS en CYAdj es positivo.

    • Valida que TaxLossesTotal al cierre es igual a TaxLosses/CreditTotal en TaxLossCreditTotal.

    • Valida que CurrentTaxExpense en CY menos NDefTaxTotal en CYTotal es igual a SETRTaxEffect.

    • Valida que RCurrentTaxExpense en CY menos RDefTaxTotal en CYTotal es igual a RETRTotal en RETRTaxEffec.

    • Valida que CurrentTaxExpense en CY menos NDefTaxTotal en CYTotal más RCurrentTaxExpense en CY más RDefTaxTotal en CYTotal es igual a CETRTotal en CETRTaxEffect.

  • Sub Clear_ValidationCellText

    Borra todas las entradas de texto de las celdas de validación escritas desde el anterior proceso de validación.

  • Sub Clear_FXApport

    Borra el FXCY generado del prorrateo.

  • Sub Clear_Zeros

    Borra todas las entradas de datos con valor cero.

  • Sub Set_ImpactStatus

    Establece el estado del impacto para periodos futuros a lo largo de los años cuando se realizan cambios en el año anterior del último periodo.

Marcadores de posición para la ejecución de código personalizado anterior y posterior

Las siguientes subrutinas se pueden utilizar para escribir la lógica previa y posterior durante cálculos de impuestos específicos.

  • Pre_OpenBalances()

    Calculate_OpenBalances

    Post_OpenBalances()

  • Pre_RTA()

    Calculate_RTA

    Post_RTA()

  • Pre_Taxautomation()

    Calculate_TaxAutomation(False,False)

    Post_Taxautomation()

  • Pre_TaxCalculations()

    Calculate_TaxCalculations(False,False)

    Post_TaxCalculations()

  • Pre_TARF()

    Calculate_TARF

    Post_TARF()

  • Pre_FIN18()

    Calculate_Fin18

    Post_FIN18()

  • Pre_Validations()

    Calculate_Validations

    Post_Validations()

Marcador de posición para la ejecución de código personalizado posterior

La siguiente subrutina se puede utilizar para escribir la lógica posterior durante conversiones de monedas.

Translate_Custom ()

Puede agregar el código personalizado en las subrutinas predefinidas para el procesamiento previo/posterior de datos antes del segmento de cálculo especificado.