Fermer

octobre 9, 2022

Comptes basés sur un pilote Oracle EPBCS basés sur d’autres comptes basés sur un pilote

Comptes basés sur un pilote Oracle EPBCS basés sur d’autres comptes basés sur un pilote


Si vous avez déjà eu plusieurs comptes basés sur des conducteurs basés sur d’autres comptes basés sur des conducteurs, vous avez peut-être remarqué que lorsque vous appuyez sur Enregistrer sur un formulaire, ils ne calculent pas tous entièrement. Dans l’exemple ci-dessous, chaque compte sans tendance sélectionnée a comme formule de membre le produit des deux comptes précédents. Par exemple, le revenu brut de Medicare est le produit du revenu nominal médical et de l’ajustement nominal sur brut – Medicare, puis le remboursement de Medicare est le produit du revenu brut de Medicare et du taux de remboursement de Medicare.

Capture d'écran 2022 10 09 134101

Les formules de membre pour tous ces comptes incluent également l’élément de plan « OFS_Total Plan » lors du calcul afin de capturer la vraie valeur finale de chaque pilote qui inclut tous les calculs et ajustements effectués. Pour le revenu brut de Medicare, la formule est :

« Medicare Nominal Revenue »->« OFS_Total Plan »* « Ajustement nominal sur brut – Medicare »->« OFS_Total Plan » ;

Oracle - Guide d'Oracle Cloud : 5 étapes pour assurer une migration réussie vers le cloud

Lorsque nous enregistrons dans l’exemple ci-dessus, Calculate Form est exécuté et ce qui suit est produit :

SS2

Notez que seul le premier compte basé sur le conducteur surligné en jaune est calculé, même si dans la dimension du compte, nous avons tous ces comptes dans le bon ordre séquentiel. Pour que le reste soit calculé, nous aurions besoin que Calculate Form soit exécuté trois fois de plus en appuyant trois fois sur Save. Nous n’entrerons pas dans les détails de la raison pour laquelle cela se produit, mais le problème réside dans le fait que OFS_Total Plan est un membre calculé dynamiquement. Afin de contourner ce problème et que tous les comptes soient entièrement calculés en appuyant une fois sur Enregistrer, nous devons inclure uniquement les membres stockés dans notre formule de membre. Une méthode consisterait à additionner individuellement toutes les parties de OFS_Total Plan (ce qui donnerait une formule de membre inutilement longue), une autre consisterait à utiliser les fonctions @sumrange et @relative pour extraire les membres individuels de niveau 0 de OFS_Total Plan :

@sumrange(“Revenu nominal de Medicare”,@relative(“OFS_Total Plan”,0)) * @sumrange(“Ajustement nominal à brut – Medicare”,@relative(“OFS_Total Plan”,0));

Une fois que nous avons modifié les quatre comptes basés sur le conducteur pour qu’ils soient écrits de la même manière que dans l’exemple ci-dessus avec leurs comptes de conducteur respectifs, lors de la sauvegarde, tous les comptes sont calculés en même temps.

SS3






Source link