Version 6
Calcul de plafond
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 (
Calcul AGCP et SMICPRORATE
Remplacement de histocumulsitu par histo cumuljoint car le calcul annuel se fait désormais tout contrat confondu
BC_MALCOMP25 : Assiette complément maladie si salaire>2.5 SMIC
Avant
si (
(([V_AGCP.CUMREMUCOEF]) > (2.5*[V_AGCP.CUMSMICPRORATE]))
et ([V_AGCP.CUMREMUCOEF]>0)
et ([V_AGCP.CUMSMICPRORATE]>0)
)
alors (
histocumulsitu([BC_BRUT_URSAFF.MONTANT])+ [BC_BRUT_URSAFF.MONTANT]
- histocumulsitu([BC_MALCOMP25.MONTANT])
)
sinon (
histocumulsitu([BC_MALCOMP25.MONTANT])*(-1)
)
Après
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)
)
BC_REG_ALLOC Base régularisation alloc
Avant
si (
([V_AGCP.CUMREMUCOEF]<=(3.5*[V_AGCP.CUMSMICPRORATE]))
ou ([V_AGCP.CUMREMUCOEF]<=0)
ou ([V_AGCP.CUMSMICPRORATE]<=0)
)
alors (
histocumulsitu([V_ALLOC.BASEALLOC])*(-1)
-histocumulsitu([BC_REG_ALLOC.MONTANT])
)
sinon (
histocumulsitu([V_ALLOC.BASEALLOCRED])
+histocumulsitu([BC_REG_ALLOCRE.MONTANT])
)
Après
si (
([V_AGCP.CUMREMUCOEF]<=(3.5*[V_AGCP.CUMSMICPRORATE]))
ou ([V_AGCP.CUMREMUCOEF]<=0)
ou ([V_AGCP.CUMSMICPRORATE]<=0)
)
alors (
histocumuljoint([V_ALLOC.BASEALLOC])*(-1)
-histocumuljoint([BC_REG_ALLOC.MONTANT])
)
sinon (
histocumuljoint([V_ALLOC.BASEALLOCRED])
+histocumuljoint([BC_REG_ALLOCRE.MONTANT])
)
Correctif sur fonction F_AGCP
Avant
si ((si (moisfin=0) alors (12) sinon (moisfin))<[AGCPDEBUT.MONTANT])
alors (0)
sinon (
si ((moisdebut=0) ou (moisfin=0))
alors (histocumulsitu(RUBACUMULER))
sinon (
histocumulsitu(RUBACUMULER;
maximum(1;(si (moisdebut=0) alors (1) sinon (moisdebut));[AGCPDEBUT.MONTANT]);
CONSTANTE(GENERAL.ANNEE_PAYE);
(si (moisfin=0) alors (12) sinon (moisfin));
CONSTANTE(GENERAL.ANNEE_PAYE)
)
)
)
Après
si ((si (moisfin=0) alors (12) sinon (moisfin))<[AGCPDEBUT.MONTANT])
alors (0)
sinon (
si ((moisdebut=0) ou (moisfin=0))
alors (histocumuljoint(RUBACUMULER))
sinon (
histocumuljoint(RUBACUMULER;
maximum(1;(si (moisdebut=0) alors (1) sinon (moisdebut));[AGCPDEBUT.MONTANT]);
CONSTANTE(GENERAL.ANNEE_PAYE);
(si (moisfin=0) alors (12) sinon (moisfin));
CONSTANTE(GENERAL.ANNEE_PAYE)
)
)
)
Assistantes familiales
66_AFDISPO : Indemnité de disponibilité
A saisir en variable de paye
Indemnité de disponibilité qui « ne peut être inférieure
à 2.25 fois le montant du salaire minimum de croissance, sans pouvoir être
inférieure à 90% de la rémunération prévue par le contrat de travail ».
Pour chaque journée de disponibilité, une comparaison doit être effectuée entre le salaire
légal (2.25 x Smic horaire) et contractuel (90% de la rémunération contractuelle).
66_AFPARTMIXTE : Part accueil mixte
Correctif pour que la rubrique fonctionne même si pas d'enfant au contrat.
Et comparatif entre le légal et le conventionnel
Avant :
si ( (CONSTANTE(CONTRAT.NATURECONTRAT)=3) et ([NUMCONV.NUMCONV]=66) et ([66_AFNBENF.MONTANT]<>0) )
alors (
[66_AFJRSINTER.MONTANT]/26
*([66_AF_1ENF.RESULTAT])
*[VP.VP]*(1+CONSTANTE(GENERAL.TAUXSUJETION66)/100)
)
sinon (0)
Après
si ( (CONSTANTE(CONTRAT.NATURECONTRAT)=3) et ([NUMCONV.NUMCONV]=66) )
alors (
maximum(
[66_AFJRSINTER.BASE]*5.06*CONSTANTE(GENERAL.SMICHOR)
;
[66_AFJRSINTER.MONTANT]/26
*([66_AF_1ENF.RESULTAT])
*[VP.VP]*(1+CONSTANTE(GENERAL.TAUXSUJETION66)/100)
)
)
sinon (0)
66_AFNBJINT : Nombre de jours d'accueil permanent intermittent
Erreur sur la formule sur le nombre de jour d'accueil enfant 2
Avant
si ( (CONSTANTE(CONTRAT.NATURECONTRAT)=3) et ([NUMCONV.NUMCONV]=66) et ([66_AFNBENF.MONTANT]<>0)
et ([66_AFACCINTER.MONTANT]=1))
alors (
[66_AFNBJENF1.MONTANT]
+
si ([66_AFNBENF.MONTANT]>=2)
alors (
[66_AFNBJENF2.MONTANT]=0
)
sinon (0)
+
si ([66_AFNBENF.MONTANT]>=3)
alors (
[66_AFNBJENF3.MONTANT]
)
sinon (0)
)
sinon (0)
Après
si ( (CONSTANTE(CONTRAT.NATURECONTRAT)=3) et ([NUMCONV.NUMCONV]=66) et ([66_AFNBENF.MONTANT]<>0)
et ([66_AFACCINTER.MONTANT]=1))
alors (
[66_AFNBJENF1.MONTANT]
+
si ([66_AFNBENF.MONTANT]>=2)
alors (
[66_AFNBJENF2.MONTANT]
)
sinon (0)
+
si ([66_AFNBENF.MONTANT]>=3)
alors (
[66_AFNBJENF3.MONTANT]
)
sinon (0)
)
sinon (0)
66_AFNBJABSCP : Nombre de jour absence convenance personnelle
Création de la rubrique pour minorer l'accueil non réalisé
66_AFNBJABS1
Création de la rubrique pour minorer l'accueil non réalisé par enfant
Régler le cas suivant
Modification du nombre d'enfant contractuel en cours de mois
Augmenter le nombre d'enfant
Afin de simplifier la rubrique 66_AF, on va créer des fonctions qui donneront le résultat.
Création d'une fonction :
66AF (REMU , CONV , NBJACCUEIL,NBJABSCP , PROG , PROGPREC ,NUMERO)
- REMU : 1 si calcul de la rémunération 0 si calcul de l'absence
- CONV : 1 si calcul conventionnel, 0 si calcul légal
- NBJACCUEIL : Rubrique contenant le nombre de jour d'accueil de l'enfant
- NBJABSCP : Nombre de jour d'absence à déduire de l'accueil non réalisé
- PROG : Rubrique de progression de l'enfant pour le calcul de la rémunération conventionnelle
- PROGPREC : Rubrique de progression de l'enfant précédent pour le calcul de la rémunération conventionnelle
- NUMERO : Numéro de l'enfant (pour le test avec 66_AFNBENF nombre d'enfant contractuel)
Passage à 5 enfants :
Création des rubriques suivantes sur le même modèle que les autres :
- 66_AFNBJENF4, 66_AFNBJENF5
- 66_AF_4ENF,66_AF_5ENF
- 66_AFPART4,66_AFPART5
66_AFIACCNE : Indemnité compensatrice pour accueil non réalisé
si ([66_AF.PRENDRELEG1]=1)
alors ([66_AF.ABSLEG1])
sinon ([66_AF.ABSCONV1])
+
si ( [66_AFNBENF.MONTANT]>1
)
alors (
si ([66_AF.PRENDRELEG2]=1)
alors ([66_AF.ABSLEG2])
sinon ([66_AF.ABSCONV2])
)
sinon (0)
+
si ( [66_AFNBENF.MONTANT]>2
)
alors (
si ([66_AF.PRENDRELEG3]=1)
alors ([66_AF.ABSLEG3])
sinon ([66_AF.ABSCONV3])
)
sinon (0)
+
si ( [66_AFNBENF.MONTANT]>3
)
alors (
si ([66_AF.PRENDRELEG4]=1)
alors ([66_AF.ABSLEG4])
sinon ([66_AF.ABSCONV4])
)
sinon (0)
+
si ( [66_AFNBENF.MONTANT]>4
)
alors (
si ([66_AF.PRENDRELEG5]=1)
alors ([66_AF.ABSLEG5])
sinon ([66_AF.ABSCONV5])
)
sinon (0)
66_AFBASE : Salaire de base
si ( (CONSTANTE(CONTRAT.NATURECONTRAT)=3) et ([NUMCONV.NUMCONV]=66) et ([66_AFNBENF.MONTANT]<>0) )
alors (
[66_AFPART1.MONTANT]
+[66_AFPART2.MONTANT]
+[66_AFPART3.MONTANT]
+[66_AFPART4.MONTANT]
+[66_AFPART5.MONTANT]
+[66_AFPARTMIXTE.MONTANT]
)
sinon (0)
66_AFNBJRPER : Nombre de jours d'accueil Permanent continu
si ( (CONSTANTE(CONTRAT.NATURECONTRAT)=3) et ([NUMCONV.NUMCONV]=66) et ([66_AFNBENF.MONTANT]<>0)
et ([66_AFACCINTER.MONTANT]=0))
alors (
[66_AFNBJENF1.MONTANT]
+
si ([66_AFNBENF.MONTANT]>=2)
alors (
[66_AFNBJENF2.MONTANT]
)
sinon (0)
+
si ([66_AFNBENF.MONTANT]>=3)
alors (
[66_AFNBJENF3.MONTANT]
)
sinon (0)
+
si ([66_AFNBENF.MONTANT]>=4)
alors (
[66_AFNBJENF4.MONTANT]
)
sinon (0)
+
si ([66_AFNBENF.MONTANT]>=5)
alors (
[66_AFNBJENF5.MONTANT]
)
sinon (0)
)
sinon (0)
66_AFNBJINT : Nombre de jours d'accueil permanent intermittent
si ( (CONSTANTE(CONTRAT.NATURECONTRAT)=3) et ([NUMCONV.NUMCONV]=66) et ([66_AFNBENF.MONTANT]<>0)
et ([66_AFACCINTER.MONTANT]=1))
alors (
[66_AFNBJENF1.MONTANT]
+
si ([66_AFNBENF.MONTANT]>=2)
alors (
[66_AFNBJENF2.MONTANT]
)
sinon (0)
+
si ([66_AFNBENF.MONTANT]>=3)
alors (
[66_AFNBJENF3.MONTANT]
)
sinon (0)
+
si ([66_AFNBENF.MONTANT]>=4)
alors (
[66_AFNBJENF4.MONTANT]
)
sinon (0)
+
si ([66_AFNBENF.MONTANT]>=5)
alors (
[66_AFNBJENF5.MONTANT]
)
sinon (0)
)
sinon (0)