Règles de calcul

La section de règle Sub Calculate est au centre des calculs de taxes. Elle contient de nombreuses sous-routines permettant d'effectuer divers calculs. Par exemple, le système commence par extraire des données des soldes de l'exercice précédent comme soldes d'ouverture pour l'exercice en cours. Le système rapproche automatiquement les données de la balance des comptes des données du livre afin de s'assurer que le point de départ correct pour la disposition fiscale est le total de la balance des comptes ajusté. Il exécute ensuite le processus d'automatisation des taxes pour configurer des données dans les comptes d'écarts temporaires et permanents, ainsi que dans d'autres comptes de taxes. Le système calcule les pertes fiscales et les crédits d'impôt pour les provisions nationales. Il calcule également les ajustements du rendement sur les provisions et d'autres ajustements. Le taux d'imposition approprié est appliqué à chaque compte afin de calculer la charge d'impôts pour la période.

Les calculs d'impôt sont effectués au niveau de l'entité parent uniquement si la propriété définie par l'utilisateur TaxCalc est définie sur Yes pour l'entité. Sinon, les calculs d'impôt ne sont pas effectués.

Les calculs suivants sont effectués pour toutes les entités si les comptes sont valides du point de vue des données saisies.

  • Calcul des soldes d'ouverture

  • Calcul du rendement sur les provisions pour les comptes d'écarts temporaires

  • Calcul des ajustements automatiques

  • Calcul des valeurs d'automatisation

  • Calcul des pertes fiscales et des crédits d'impôt (par année d'expiration)

Les calculs suivants sont effectués pour les entités pour lesquelles le calcul d'impôt est activé à la fois pour l'entité parent et l'entité de base.

  • Calculs principaux des impôts

  • Calculs du RàN du compte de taxes

  • Validations

  • Calculs FIN18

Le tableau suivant présente les comptes valides pour les entités. Lorsqu'un compte est valide, il est pris en compte dans les calculs.

Compte Entité parent Entité de base
Un groupe est affecté au compte Aucun groupe n'est affecté à l'entité - Non

Un groupe est affecté à l'entité :

  • Le groupe correspond - Oui

  • Le groupe ne correspond pas - Non

Aucun groupe n'est affecté à l'entité - Valide

Un groupe est affecté à l'entité :

  • Le groupe correspond - Valide

  • Le groupe ne correspond pas :

    • Non valide si le groupe figure dans une de ses chaînes ancêtre

    • Valide si le groupe ne figure pas dans une de ses chaînes ancêtre

Aucun groupe n'est affecté au compte Non Yes

Chaque sous-routine effectue des calculs spécifiques dans le cadre du processus de provisionnement pour impôts.

Les sous-routines suivantes sont appelées dans Sub Calculate.

Sub Calculate

  • Appeler Calculate_ExchangeRates

  • Appeler Clear_ValidationCellText

  • Appeler Calculate_OpenBalances

  • Appeler Calculate_AutoAdjustment

  • Appeler Calculate_TaxLossesNational

  • Appeler Calculate_TaxCreditsNational

  • Appeler Calculate_RTA

  • Appeler Calculate_TaxAutomation

  • Appeler Calculate_TaxCalculations

    • Appeler Calculate_NatRegcoreTax

    • Appeler Calculate_AssetLiab

    • Appeler Calculate_VAAllocation

    • Appeler Calculate_Reclass

    • Appeler Calculate_TempEquity

    • Appeler Calculate_ETR

  • Appeler Calculate_TARF

  • Appeler Calculate_Validations

  • Appeler Clear_Zeros

  • Appeler Set_ImpactStatus


Graphique des sous-routines de calcul

Détails supplémentaires pour chaque sous-routine :

  • Sub Calculate ActiveRegion

    Déterminez si la région est active si au moins l'un des trois taux d'imposition régionaux est saisi.

  • Sub Calculate_AssetLiab

    Déterminez si les impôts différés concernent les actifs ou le passif.

    Déterminez si les impôts différés sont à court terme ou à long terme.

  • Sub Calculate_AutoAdjustments

    Calculez des ajustements automatiques afin d'effectuer un rapprochement entre les données du livre et celles de la balance des comptes.

  • Sub Calculate_BlendedTaxApportionment

    Calculez la répartition de taxe générale pour la région générale.

    Définissez la répartition fiscale générale sur 100 % si aucune répartition régionale n'est saisie.

  • Sub Calculate_BVTCoreTax

    Effectuez les calculs des impôts pour les comptes BVT.

    Flux des calculs principaux des taxes BVT :

    • Si aucun compte lié n'est spécifié pour le compte BVT, les calculs d'impôt ne sont pas effectués.

    • Le compte BVT en cours doit être valide pour le membre DataCategory AllBVTTax et le membre RollForward BVTTaxCalc.

    • Si le compte lié est de type Avec incidence fiscale, aucun taux d'imposition n'est appliqué.

    • Si aucun taux d'imposition de dérogation n'est spécifié pour le compte lié, le taux d'imposition de clôture à court terme/à long terme (basé sur le compte lié) est appliqué, et si aucun taux de clôture n'est spécifié, il est ignoré.

    • Le bénéfice national de la région est calculé en fonction de la propriété du compte lié. Si NBR est défini sur Yes pour le compte lié, le bénéfice national de la région est calculé ; dans le cas contraire, le bénéfice national de la région est ignoré.

    • Les calculs sont convertis en fonction du taux de clôture.

  • Sub Calculate_ExchangeRates

    Obtenez les taux de change d'ouverture à partir des taux de clôture de l'exercice précédent.

    Configurez les taux de change à utiliser pour la conversion.

    Sub Calculate_Exchange Rates est exécuté à partir de Sub Calculate.

  • Sub Calculate_ETR

    Calculez le taux d'imposition effectif légal, régional et consolidé.

    Définissez la répartition fiscale générale sur 100 % si aucune répartition régionale n'est saisie.

  • Sub Calculate_OpeningBalances

    Calculez les soldes d'ouverture pour les données de balance des comptes/de livre/d'impôt.

    Les soldes d'ouverture sont extraits des soldes de clôture de l'exercice précédent.

    Les soldes d'ouverture pour les soldes de clôture Scénario/Année/Période en cours sont extraits d'autres dimensions Scénario, Année et Période selon les conditions ci-dessous.

    • Si aucun scénario dynamique n'est spécifié à l'aide de l'écran personnalisé Soldes d'ouverture, le membre Scenario indiqué dans la propriété définie par l'utilisateur ("SrcSc") sera pris en compte. Si aucun membre n'est indiqué dans la propriété définie par l'utilisateur, le membre Scenario actuel sera utilisé.

    • Si aucune année source n'est indiquée dans la propriété définie par l'utilisateur ("SrcYr"), l'année précédente sera utilisée.

    • Si aucune période source n'est indiquée dans la propriété définie par l'utilisateur ("SrcP"), la dernière période (P12) sera utilisée.

    L'indication des soldes d'ouverture pour le scénario actuel a une incidence sur le statut des scénarios futurs dépendants pertinents.

    Sub Calculate_OpenBalances est exécuté à partir de Sub Calculate.

  • Sub Calculate_NatRegCoreTax

    Calculez la charge d'impôt nationale.

    Calculez les taux de change à l'ouverture.

    Calculez les taux de change de la période en cours.

    Effectuez l'extourne de capitaux propres.

    Procédez à la reclassification vers le mouvement de capitaux propres.

    Calculez l'impôt régional.

    Calculez le bénéfice net de la région.

    Calculez la modification du taux d'ouverture sur le bénéfice net de la région.

    Calculez les impôts régionaux en tant que déduction pour les provisions nationales.

  • Sub Calculate_Reclass

    Calculez la reclassification de la reconduction pour les actifs et les passifs.

  • Sub Calculate_TaxAutomation

    Calculez l'automatisation des taxes.

  • Sub Calculate_TARF

    Les livres comptables doivent être entrés dans le membre National Jurisdiction, mais pour la règle TARF, lus à partir de National et écrits dans Regional US_Blended.

    Effectuez des calculs de reconduction de compte de taxes.

  • Sub Calculate_TaxCreditsNational

    Calculez des crédits d'impôt pour les provisions nationales.

  • Sub Calculate_TaxLossesNational

    Calculer des pertes fiscales pour les provisions nationales.

  • Sub Calculate_TempEquity

    Calculez les comptes de capitaux propres temporaires dans TBBS.

  • Sub Calculate_VAAllocation

    Calculez l'allocation de provision pour moins-value.

  • Sub Calculate_Validations

    Calculez les validations suivantes :

    • Validez que TaxLossCFS au niveau de CYAdj est positif.

    • Validez que TaxLossesTotal au niveau de Closing est égal à TaxLosses/CreditTotal au niveau de TaxLossCreditTotal.

    • Validez que CurrentTaxExpense au niveau de CY moins NDefTaxTotal au niveau de CYTotal est égal à SETRTaxEffect.

    • Validez que RCurrentTaxExpense au niveau de CY moins RDefTaxTotal au niveau de CYTotal est égal à RETRTotal au niveau de RETRTaxEffec.

    • Validez que CurrentTaxExpense au niveau de CY moins NDefTaxTotal au niveau de CYTotal plus RCurrentTaxExpense au niveau de CY plus RDefTaxTotal au niveau de CYTotal est égal à CETRTotal au niveau de CETRTaxEffect.

  • Sub Clear_ValidationCellText

    Effacez toutes les entrées de commentaire de cellule de validation écrites à partir du processus de validation précédent.

  • Sub Clear_FXApport

    Effacez le FXCY de répartition généré.

  • Sub Clear_Zeros

    Effacez toutes les entrées de données égales à zéro.

  • Sub Set_ImpactStatus

    Définissez le statut d'incidence pour les futures périodes tout au long des années lorsque des modifications sont apportées à la dernière période de l'année précédente.

Espaces réservés pour les actions à effectuer avant/après l'exécution de code personnalisé

Les sous-routines suivantes peuvent être utilisées pour écrire la logique des actions à effectuer avant/après les calculs d'impôt spécifiques.

  • 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()

Espace réservé pour les actions à effectuer après l'exécution de code personnalisé

La sous-routine suivante peut être utilisée pour écrire la logique des actions à effectuer après les conversions de devise.

Translate_Custom ()

Vous pouvez ajouter le code personnalisé dans les sous-routines prédéfinies pour le pré-traitement et le post-traitement des données avant le segment de calcul indiqué.