[Général] Date=20211123110200 Auteur=LDSysteme Version=2.00 Commentaire=Ce script permet de mettre en place la régularisation du Net imposable DSN et Annuelle, dans le cas du décalage de paie. [Variables] FP.RNTNFJ(Nouvelle fonction personnalisée) = "RNTNFJ" CU.NETIMA(Cumul Net imposable Annuel) = "NETIMA"/E RU.0200NF(Rubrique modèle) = "0200NF"/E RU.0200NG(Nouvelle rubrique - Régul CSG sur Heures sup. Exo 12/2020) = "0200NG" [FP.RNTNFJ] IF = PAS FP.RNTNFJ LBFO = "Régul. Net Non Fiscal 12" SRCE = [ // Cette fonction calcule le montant de CSG déductible sur le montant // des heures supplémentaires exonérées de décembre 2020, // l'objectif étant de régulariser la rémunération nette fiscale déclarée en DSN. // La régularisation n'est faite que si le salarié a un même contrat entre décembre 2020 et le mois courant. // Si le bulletin courant est calculé sans reprise des cumuls antérieurs (premier bulletin d'un contrat), pas de régularisation SI fIgnorerCumulsAntérieurs ALORS RENVOYER 0 // On balaye les bulletins antérieurs, en remontant soit jusqu'à 12/2020, soit jusqu'à un bulletin calculé sans reprise des cumuls antérieurs HeuresSupDécembre2020 est un réel Régul0200NFtrouvée est un booléen PosCAENBU est un entier = HSauvePosition(CAENBU) HLitRecherchePremier(CAENBU,"KENBU",[PEPERS.COSO,PEPERS.NPPE,pMoisPaye,pNOBU]) HLitPrécédent(CAENBU,"KENBU") TANTQUE PAS HEnDehors(CAENBU) // On s'arrête si on n'est plus sur le salarié courant ou si on est remonté au-delà de décembre 2020 SI CAENBU.COSO<>PEPERS.COSO OU CAENBU.NPPE<>PEPERS.NPPE OU CAENBU.MPAY<"202012" ALORS SORTIR // On enregistre le fait qu'il y a eu une ligne de bulletin de régularisation 0200NF sur ce bulletin, si pas déjà trouvée SI PAS Régul0200NFtrouvée ALORS SI HLitRecherchePremier(CALIBU,"KLIBU5",[PEPERS.COSO,PEPERS.NPPE,"0200NF",CAENBU.MPAY,CAENBU.NOBU]) ALORS SI CALIBU.MONT <> 0 ALORS Régul0200NFtrouvée=Vrai FIN FIN // Si on est en décembre et que décembre a été payé en janvier 2021, on lit le cumul des heures sup exonérées (en brut) SI CAENBU.MPAY="202012" _ET_ CAENBU.DARG >= "20210101" ALORS SI HLitRecherchePremier(CACUMU,"KCUMU",[PEPERS.COSO,PEPERS.NPPE,"BRNFIM",CAENBU.MPAY,CAENBU.NOBU]) ALORS HeuresSupDécembre2020+=CACUMU.VACU FIN FIN // On s'arrête là si on est arrivé sur un bulletin qui avait été calculé sans l'option "Reprise des cumuls antérieurs" SI PAS CAENBU.RCPP ALORS SORTIR HLitPrécédent(CAENBU,"KENBU") FIN HRetourPosition(PosCAENBU) // On régularise la CSG sur le montant des heures supplémentaires de décembre MontantCSGDéductible est un réel SI HeuresSupDécembre2020 <> 0 ET Régul0200NFtrouvée ALORS MontantCSGDéductible = Arrondi(HeuresSupDécembre2020 * 0.9825 * 0.068,2) CAELVA.NBRE = HeuresSupDécembre2020 // Pour affichage sur le bulletin et Régul du cumum NETIMA FIN RENVOYER MontantCSGDéductible ] [RU.0200NG] IF = PAS RU.0200NG CPY = RU.0200NF LIBE = "Régul CSG sur Heures sup. Exo 12/2020" SENS = "G" AMON = "FP" NMON = FP.RNTNFJ [RU.0200NG/CU.NETIMA] CLRT = "N" INVS = 0 [RU.0200NG/IF.1] DEL [RU.0200NG/IF.2] DEL [RU.0200NG/IF.1] NLCD = 1 ACCD = "1" GRCD = "" COP1 = "CU" NOP1 = "NTNFIA" TEST = "NE" COP2 = "VA" NOP2 = "0" [RU.0200NG/IF.2] NLCD = 2 ACCD = "1" GRCD = "ET" COP1 = "MA" NOP1 = "" TEST = "EQ" COP2 = "VA" NOP2 = "202111"