Skip to main content

Correction et mise à jour du gestionnaire de rubrique

Il s'agit ici des modifications qui ont été apportées via la version 62 du gestionnaire de rubrique.

Divers

REDUCRTTPAT : Déduction forfaitaire sur rachat de jour de RTT

Modification du taux afin de prendre en compte la déduction forfaitaire de 0.50€ pour les entreprises avec au moins 20 salariés et moins de 250 salariés.

La formule taux employeur prend en compte la constante générale NBSALARIE0101

  • entreprise < 20 salariés => taux 1.50€
  • 20 salariés <= entreprise < 250 => taux 0.50 €

Si la constante NBSALARIE0101 est égale à zéro le taux sera égal à 1.50

Il est également possible de mettre directement le taux dans la constante générale MTREDUCHEURE.

Pensez à ajouter la cotisation REDUCRTTPAT au niveau de la codification de régime pour les entreprises concernées.

Avant :

si (CONSTANTE(GENERAL.MTREDUCHEURE)=0)
alors (
      si (CONSTANTE(GENERAL.NBSALARIE0101)<=19)
      alors (1.50)
      sinon (0)
      )
sinon (CONSTANTE(GENERAL.MTREDUCHEURE))

Après

si (CONSTANTE(GENERAL.MTREDUCHEURE)=0)
alors (
      si (CONSTANTE(GENERAL.NBSALARIE0101)<=19)
      alors (1.50)
      sinon (
            si (CONSTANTE(GENERAL.NBSALARIE0101)<=249)
               alors (0.50)
               sinon (0)
            )
      )
sinon (CONSTANTE(GENERAL.MTREDUCHEURE))

MALCOMP25 : Complément Maladie si salaire >2.5 SMIC

  • Prise en compte de la constante générale FILLONCONTRAT pour calculer le smic soit contrat par contrat soit tout contrat confondu.
  • Ajout d'un contrôle d'un SMIC positif.

Avant

si (
   (([V_AGCP.CUMREMUCOEF]) >  (2.5*[V_AGCP.CUMSMICPRORATE]))
   et ([V_AGCP.CUMREMUCOEF]>0)
   )
alors (
        histocumulsitu([BC_BRUT_URSAFF.MONTANT])+ [BC_BRUT_URSAFF.MONTANT]
        - histocumulsitu([BC_MALCOMP25.MONTANT])
      )
sinon (
        histocumulsitu([BC_MALCOMP25.MONTANT])*(-1)
      )

Après

si (CONSTANTE(GENERAL.FILLONCONTRAT)=1)
alors (
      si (
         (([V_AGCP.CUMREMUCOEF]) >  (2.5*[V_AGCP.CUMSMICPRORATE]))
         et ([V_AGCP.CUMREMUCOEF]>0)
         )
      alors (
            histocumulsitu([BC_BRUT_URSAFF.MONTANT])+ [BC_BRUT_URSAFF.MONTANT]
            - histocumulsitu([BC_MALCOMP25.MONTANT])
            )
      sinon (
            histocumulsitu([BC_MALCOMP25.MONTANT])*(-1)
            )
      )
sinon (
      si (
         (([V_AGCP.CUMREMUCOEF]) >  (2.5*[V_AGCP.CUMSMICPRORATE]))
         et ([V_AGCP.CUMREMUCOEF]>0)
         et ([V_AGCP.CUMSMICPRORATE]>0)
         )
      alors (
            histocumuljoint([BC_BRUT_URSAFF.MONTANT])+ [BC_BRUT_URSAFF.MONTANT]
            - histocumuljoint([BC_MALCOMP25.MONTANT])
            )
      sinon (
            histocumuljoint([BC_MALCOMP25.MONTANT])*(-1)
            )
      )
PL_HRSDUREE : Durée en heures pour les temps partiels

Correctif pour prendre en compte les forfaits jours

Avant

CONSTANTE(CONTRAT.HORAIREMENSREEL)+[NBHRSCOMPL.MONTANT]-[TPT_NONPAYE.DUREE]

Après

si (CONSTANTE(CONTRAT.SITUATIONHORAIRE)=4)
alors (
  CONSTANTE(CONTRAT.HORAIRECOLLECTIF)*CONSTANTE(CONTRAT.JOUR_FORFAIT)
  /
  CONSTANTE(CONTRAT.FORFAITJOURCOLLECTIF)
)
SINON(
  CONSTANTE(CONTRAT.HORAIREMENSREEL)+[NBHRSCOMPL.MONTANT]-[TPT_NONPAYE.DUREE]
)

V_AGCP.HREMU

Correctif pour l'horaire collectif des forfaits jours

Remplacement de 218 par CONSTANTE(CONTRAT.FORFAITJOURCOLLECTIF)

Avant

 {Forfait Annuel en jours}
               si (CONSTANTE(CONTRAT.SITUATIONHORAIRE)=4)
               alors (CONSTANTE(CONTRAT.HORAIRECOLLECTIF)*CONSTANTE(CONTRAT.JOUR_FORFAIT)/218
                      *
                       si (([IJBRUT.MONTANT]<>0) ou ([ABSTOTALV.MONTANT]-[ABSTOTALM.MONTANT]<>0))
                       alors ([BC_BRUT_URSAFF.MONTANT]
                               /
                               ([BC_BRUT_URSAFF.MONTANT]+[IJBRUT.MONTANT] +[ABSTOTALV.MONTANT]-[ABSTOTALM.MONTANT])
                       )
                       sinon (1)
                      )
               sinon (

Après

 {Forfait Annuel en jours}
               si (CONSTANTE(CONTRAT.SITUATIONHORAIRE)=4)
               alors (CONSTANTE(CONTRAT.HORAIRECOLLECTIF)*CONSTANTE(CONTRAT.JOUR_FORFAIT)/CONSTANTE(CONTRAT.FORFAITJOURCOLLECTIF)
                      *
                       si (([IJBRUT.MONTANT]<>0) ou ([ABSTOTALV.MONTANT]-[ABSTOTALM.MONTANT]<>0))
                       alors ([BC_BRUT_URSAFF.MONTANT]
                               /
                               ([BC_BRUT_URSAFF.MONTANT]+[IJBRUT.MONTANT] +[ABSTOTALV.MONTANT]-[ABSTOTALM.MONTANT])
                       )
                       sinon (1)
                      )
               sinon (

Stagiaire

BC_BRUT_STA : Brut stagiaire

Contrôle de la constante contrat DSNNATURE et mettre à zéro si différent de 29 convention de stage

Avant

si ([BC_BRUT_URSAFF.MONTANT]>=0)
alors (MAXIMUM([BC_BRUT_URSAFF.MONTANT]-[CONAIDE.SEUILSTAGIAIRE];0))
sinon (MAXIMUM((0-[BC_BRUT_URSAFF.MONTANT])-[CONAIDE.SEUILSTAGIAIRE];0)
       *-1)

Après

si (CONSTANTE(CONTRAT.DSNNATURE)=29)
alors (
        si ([B_COT_URSAFF.MONTANT]>=0)
        alors (MAXIMUM([B_COT_URSAFF.MONTANT]-[CONAIDE.SEUILSTAGIAIRE];0))
        sinon (MAXIMUM((0-[B_COT_URSAFF.MONTANT])-[CONAIDE.SEUILSTAGIAIRE];0)
       *-1)
       )
sinon (0)

BC_BRUT_STA_PL

Idem que précédemment

Avant

si ([BC_BRUT_URSAFF.MONTANT]>=0)
alors (PLAFONNER([BC_BRUT_URSAFF.MONTANT];0;[CONAIDE.SEUILSTAGIAIRE]))
sinon (PLAFONNER((0-[BC_BRUT_URSAFF.MONTANT]);0;[CONAIDE.SEUILSTAGIAIRE])*-1)

Après

si (CONSTANTE(CONTRAT.DSNNATURE)=29)
alors (
      si ([B_COT_URSAFF.MONTANT]>=0)
      alors (PLAFONNER([B_COT_URSAFF.MONTANT];0;[CONAIDE.SEUILSTAGIAIRE]))
      sinon (PLAFONNER((0-[B_COT_URSAFF.MONTANT]);0;[CONAIDE.SEUILSTAGIAIRE])*-1)
      )
sinon (0)

BC_BRUT_URSAFF

Même chose que précédemment mais à l'inverse

Avant

si (CONSTANTE(CONTRAT.NATURECONTRAT)=0008)
alors (
        si ([FO.TOTAL]<>0)
        alors ([FO.TOTAL])
        sinon ([B_COT_URSAFF.MONTANT])
      )
sinon ([B_COT_URSAFF.MONTANT])

Après

si (CONSTANTE(CONTRAT.DSNNATURE)=29)
alors (0)
sinon (
      si (CONSTANTE(CONTRAT.NATURECONTRAT)=0008)
      alors (
            si ([FO.TOTAL]<>0)
            alors ([FO.TOTAL])
            sinon ([B_COT_URSAFF.MONTANT])
            )
      sinon ([B_COT_URSAFF.MONTANT])
      )

MALCOMP25 : Complément Maladie si salaire >2.5 SMIC

Correction de la formule taux employeur pour prendre en compte les stagiaires qui n'ont pas droit au taux réduit de cotisation maladie

Avant :

si (([BC_MALCOMP25.MONTANT]>0)ou([BC_BRUT_STA.MONTANT]>0) )   alors (6)   sinon (0)
Après
si (
    ([BC_MALCOMP25.MONTANT]>0)
    ou (([BC_BRUT_STA.MONTANT]>0) et (CONSTANTE(CONTRAT.DSNNATURE)=29))
   )
alors (6)
sinon (0)

CSG

Voici les rubriques créées ou modifiées pour prendre en compte le calcul du plafond CSG

Deux rubriques itératives pour calculer la base brute qui doit être abattue (avant application du plafond) et la base brute non abattue :

  • B_COT_CSG_ABT : Base CSG-CRDS abattue
B_COT_CSG_NABT : Base CSG-CRDS non abattue

Ces rubriques sont alimentées par la base CSG (B_COT_CSG) en suivant la règle suivante :

  • taux=98.25 -> B_COT_CSG_ABT  à 100%
si taux=1.75 -> B_COT_CSG_ABT à -100% et B_COT_CSG_NABT à 100% si taux=-98.25% -> B_COT_CSG_ABT à -100% si taux=100% ->B_COT_CSG_NABT à 100% si taux=-100%  -> B_COT_CSG_ABT à -100% si taux=-1.75% -> Il s'agit d'une erreur, les réintégrations fiscales n'entrent pas dans la base CSG-CRDS Si le taux est négatif et différent de -98.25% ou -1.75%  :

 il s'agit probablement de remboursement de prévoyance -> B_COT_CSG_ABT au taux indiqué

V_CSG : Rubrique libre pour les éléments de calcul CSG

CUM_AV_ABT : Cumul montant qui doit être abattu

minimum(
       (histocumulJOINT([B_COT_CSG_ABT.MONTANT])+[B_COT_CSG_ABT.MONTANT])
       ;
       (histocumulJOINT([PL_MENSA.MONTANT])+[PL_MENSA.MONTANT])*4
       )

CUM_ABT Cumul abattu :

[V_CSG.CUM_AV_ABT]*0.9825

CUM_NABT : Cumul non abattu

(histocumulJOINT([B_COT_CSG_ABT.MONTANT])+[B_COT_CSG_ABT.MONTANT] - [V_CSG.CUM_AV_ABT])
+
(histocumulJOINT([B_COT_CSG_NABT.MONTANT])+[B_COT_CSG_NABT.MONTANT])
Rubrique BC_CSG et BC_CRDS

Avant

si (CONSTANTE(CONTRAT.NATURECONTRAT)=0008)
alors (
        si ([FO.TOTAL]<>0)
        alors ([FO.TOTAL])
        sinon (F_TESTCSG([B_COT_CSG.MONTANT];[BC_CSG.MONTANT]))
      )
sinon (
      si (CONSTANTE(CONTRAT.DSNNATURE)=29)
      alors (F_TESTCSG([BC_BRUT_STA.MONTANT]*0.9825;[BC_CSG.MONTANT]))
      sinon (F_TESTCSG([B_COT_CSG.MONTANT];[BC_CSG.MONTANT]))
      )

Après

si ((CONSTANTE(GENERAL.NEWCSG)=1) ou (CONSTANTE(GENERAL.ANNEE_PAYE)>=2024))
alors (
      si ((CONSTANTE(CONTRAT.NATURECONTRAT)=0008) et ([FO.TOTAL]<>0))
      alors ([FO.TOTAL])
      sinon (
            [V_CSG.CUM_ABT]
            +[V_CSG.CUM_NABT]
            -histocumulJOINT([BC_CSG.MONTANT])
            )
      )
sinon (
      si (CONSTANTE(CONTRAT.NATURECONTRAT)=0008)
      alors (
            si ([FO.TOTAL]<>0)
            alors ([FO.TOTAL])
            sinon (F_TESTCSG([B_COT_CSG.MONTANT];[BC_CSG.MONTANT]))
            )
      sinon (
            si (CONSTANTE(CONTRAT.DSNNATURE)=29)
            alors (F_TESTCSG([BC_BRUT_STA.MONTANT]*0.9825;[BC_CSG.MONTANT]))
            sinon (F_TESTCSG([B_COT_CSG.MONTANT];[BC_CSG.MONTANT]))
            )
      )

Calcul de plafond

PL_HRSDUREE : Durée en heures pour les temps partiels

V_AGCP.HREMU

Calcul AGCP et SMICPRORATE

Remplacement de histocumulsitu par histo cumuljoint car le calcul annuel se fait désormais tout contrat confondu

Nous avons réactivé la constante FILLONCONTRAT : qui permet d'indiquer si la régularisation annuelle est à faire contrat par contrat.

Pour effectuer une régularisation annuelle tout contrat confondu, il faut saisir la constante FILLONCONTRAT à "NON"

AGCP nouvelle mouture

Assistantes familiales