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]))
            )
      )

AGCP

Modification de la fonction F_AGCP pour utiliser la constante FILLONCONTRAT

AGCP nouveau calcul

 

 

Fonction F_AGCPSMICMENS : Recalcul du smic mensuel proraté d'un mois

Paramètres :

  • MDEBUT : Mois de début du cumul (dans le cas d'un apprenti)
MACALCULER : Mois à calculer HREMU : Rubrique heures rémunérées HORBASE : Rubrique horaire de base
    si ((CONSTANTE(GENERAL.MOIS_PAYE)>=MACALCULER) et (MDEBUT<=MACALCULER))
    alors (
             (histoactifjoint(HREMU;MACALCULER;CONSTANTE(GENERAL.ANNEE_PAYE))/
              CONSTANTE(CONTRAT.HORAIRECOLLECTIF)*CONSTANTEHIS(GENERAL.SMICMENS;MACALCULER;CONSTANTE(GENERAL.ANNEE_PAYE))
              )
              *histoactifjoint(HORBASE;MACALCULER;CONSTANTE(GENERAL.ANNEE_PAYE))/1607
           )
    sinon (0)
    

    Rubriques créées

    • V_NEWAGCP : Rubrique libre nouveau calcul AGCP
    V_AD_AGCP : Rubrique libre nouveau calcul AGCP pour l'aide à domicile AD_HEXO : Heures aide à domicile exonérées AD_HNEXO : Heures non exonérées aide à domicile

    V_NEWAGCP : Rubrique libre nouveau calcul AGCP

    Liste des formules :

    • REMUCOEF : Rémunération
    HREMU : Heure rémunérée HORBASE : Horaire de base SMICPRO : Smic proraté mensuel CUMREMUCOEF : Cumul rémunération CUMSMICPRO : Cumul Smic proraté mensuel total

    Si la constante SMICAGCP (recalcule smic chaque mois) est à oui, utilise TOTSMICPRO sinon comme avant

    • TOTSMICPRO : Total Smic proraté. Recalcule tous les smic proratés de l'année
    si (CONSTANTE(GENERAL.SMICAGCP)=0)
    alors (0)
    sinon (si (CONSTANTE(GENERAL.ANNEE_PAYE)>=2024)
          alors (
                F_AGCPSMICMENS([AGCPDEBUT.BASE];1;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];2;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];3;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];4;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];5;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];6;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];7;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];8;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];9;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];10;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];11;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];12;[V_NEWAGCP.HREMU];[V_NEWAGCP.HORBASE])
                )
          sinon (
                F_AGCPSMICMENS([AGCPDEBUT.BASE];1;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];2;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];3;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];4;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];5;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];6;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];7;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];8;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];9;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];10;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];11;[V_AGCP.HREMU];[V_AGCP.HORBASE])
               +F_AGCPSMICMENS([AGCPDEBUT.BASE];12;[V_AGCP.HREMU];[V_AGCP.HORBASE])
                )
          )
    • MAXCOEF : Coefficient maximum AGCP
    COEF : Coefficient Allègement général de cotisation TOTALAGCP : Total AGCP TOTAGCPURSSAF : Total AGCP part Urssaf TOTAGCPAA : Total AGCP part AA AGCPURSSAF : Montant AGCP Urssaf mensuel AGCPAA : Montant AGCP AA mensuel

    Les quatre dernières formules permettent de recalculer le total AGCP pour chaque part en fonction du paramètre T actuel. Ainsi, s'il était incorrect en début d'année, le fait de le changer calculera les bons montant AGCP.

    V_AD_AGCP : AGCP aide à domicile

    Liste des formules :

    • ADREMU : Rémunération
    ADSMICPRO : Smic proraté mensuel ADCUMSMICPRO : Cumul Smic proraté mensuel total ADTOTSMICPRO : Total Smic proraté Aide à domicile ADCOEF : Coefficient aide à domicile ADTOTALAGCP : Total AGCP Aide à domicile ADTOTAGCPURSSAF : Total AGCP Urssaf aide à domicile ADTOTAGCPAA : Total AGCP AA Aide à domicile ADAGCPURSSAF : Montant AGCP Urssaf aide à domicile mensuel ADAGCPAA : Montant AGCP AA aide à domicile mensuel ADREMUCOEF : Rémunération utilisée  ADCUMREMUCOEF : Cumul rémunération

    AD_HNEXO : Heures non exonérées aide à domicile

    Rubrique de paye des heures aide à domicile non exonérées. A saisir en variable de paye.

    AD_HEXO : Heures aide à domicile exonérées

    Rubrique de paye des heures exonérées aide à domicile. Cette rubrique est calculée en fonction des heures non exonérées saisies par la différence entre les heures contractuelles et les heures non exonérées saisies.

    Les heures supplémentaires qui sont saisies sont réparties au prorata des heures exonérées et non exonérées.

    CUMUL.COMPTEUR

    Rubrique toujours égale à 1 pour comptabiliser le nombre de contrat.

    Mise en place

    ATTENTION : Pour activer  SMICAGCP  il faut faire une modif d'historique de V_NEWAGCP.HREMUOK et l'initialiser à 1 si V_NEWAGCP.HREMU<>0 pour un calcul correct de TOTSMICPRO 

    • Modifier les salariés pour les mettre en type Travailleurs à domicile.
    update rhpersonne P set pertypesalarie=5
    where exists (select * from rhcontrat C where (ctrempart=1003) and (ctrperid=P.perid))
    • Activer la constante NEWAGCP
    Activer la constante AGCP_AD pour les aides à domicile Activer la constante SMICAGCP  recalcul smic proraté Passer le gestionnaire de rubrique 62 Dans gestion des structures, ajouter le module AGCP aide à domicile Ajouter les cotisations AGCP aide à domicile : AGCPURSSAF_AD,AGCPURSSAFR_AD,AGCPRUAA_AD,AGCPRUAAREG_AD Enlever les cotisations AGCP aide à domicile utilisateur Ci dessous les modifications d'historique à mettre en place :

    AD_HEXO et AD_HNEXO

    à remplir par les rubriques utilisées précédemment.

    V_NEWAGCP.HREMU

    Reprendre AGCP.HREMU.

    V_NEWAGCP.REMUCOEF

    Reprendre AGCP.REMUCOEF.

    V_NEWAGCP.HORBASE

    si ([V_AGCP.HREMU]=0)
    alors (0)
    sinon ([V_AGCP.HORBASE])

    V_NEWAGCP.HREMUOK

    si ([V_NEWAGCP.HREMU]=0)
    alors (0)
    sinon (1)

    V_AD_AGCP.HREMU

    Reprendre la rubrique utilisateur AD_AGCP.HREMU.

    V_AD_AGCP.REMUCOEF

    Reprendre la rubrique utilisateur AD_AGCP.REMUCOEF.

    V_AD_AGCP.HORBASE

    si ([_V_AD_AGCP.HREMU]=0)
    alors (0)
    sinon ([_V_AGCP_AD.HORBASE])

    V_AD_AGCP.HREMUOK

    si ([_V_AGCP_AD.HREMU]=0)
    alors (0)
    sinon (1)

    BC_ADAGCPRUAA

    Reprendre la base de cotisation AGCP aide à domicile utilisateur

    BC_ADAGCPURSS

    Reprendre la base de cotisation AGCP aide à domicile utilisateur

     

    Assistantes familiales