Version 2
Rubrique libre DEDUCSAL
Le problème vient de la formule MTHRSNIMP
Elle est plafonnée à zéro donc quand il y a une régul négative, ca ne le prend pas en compte
Alors que MTHRSIMP n'est pas plafonnée.
Il faut calculer l'exonération cumulée plafonnée, puis la différence avec le cumul d'avant ce bulletin. Une régularisation ressort alors en négatif, sans reprendre plus que ce qui avait réellement été exonéré.
Modification de MTHRSNIMP
Avant
maximum(0;
([BC_HRS.MONTANT]+[BC_RTT.MONTANT])*(-1)
+
minimum(0;
(histocumul([BC_HRS.MONTANT])+[BC_HRS.MONTANT]
+histocumul([BC_RTT.MONTANT])+[BC_RTT.MONTANT]
+maximum(8037;CONSTANTE(GENERAL.EXOHSUP)))
)
)
Après
Le premier minimum est l'exonération due depuis le début d'année, bulletin inclus. Le second est la même chose sans le bulletin en cours. La différence est le montant du bulletin.
minimum(maximum(8037;CONSTANTE(GENERAL.EXOHSUP));
maximum(0;
(histocumul([BC_HRS.MONTANT])+histocumul([BC_RTT.MONTANT])
+[BC_HRS.MONTANT]+[BC_RTT.MONTANT])*(-1)))
-
minimum(maximum(8037;CONSTANTE(GENERAL.EXOHSUP));
maximum(0;
(histocumul([BC_HRS.MONTANT])+histocumul([BC_RTT.MONTANT]))*(-1)))