Skip to main content

ajout c01 majoration heures de nuit habituelles dans calcul libellé prime


Forum|alt.badge.img+3

Bonjour, je dois paramétrer une prime d’ancienneté en fonction de plusieurs variables.

J’ai réussi à faire rentrer dans ma base de cette prime les heures supp’, le salaire de base, la prime de travail poste (dans cet exemple ci-dessous à l’aide d’une création d’une variable stockée par profil utilisateur ) mais je n’arrive pas à faire que la majoration heures de nuit habituelles (qui est une prime conventionnelle qui remonte automatiquement, pas de création dans le profil utilisateur) rentre dans la base de cette prime d’ancienneté. comment faire? merci

voici mon libellé prime pour ma prime d’ancienneté:

Begin

// ===========================================================
// PRIME D’ANCIENNETÉ JPM - AVEC CONDITION D’ENTRÉE (3 ANS MINIMUM)
// ===========================================================

// --- Initialisation des variables de cumul ---    
xx1 = 0
bs = 0.0
ts = 0.0
rs = 0.0
bp = 0.0
tp = 0.0
rp = 0.0
call CumulLignesEmploi(15,"Heures supplémentaires%","",bul.periode,bul.date,bs,ts,rs,bp,tp,rp)
xx1 = rs

xx2 = 0
bs = 0.0
ts = 0.0
rs = 0.0
bp = 0.0
tp = 0.0
rp = 0.0
call CumulLignesEmploi(15,"Heures complémentaires%","",bul.periode,bul.date,bs,ts,rs,bp,tp,rp)
xx2 = rs

// --- Variables stockées issues des primes précédentes ---
AS = CumulStockvar(bul.periode,bul.date,"PR_AS")
PO = CumulStockvar(bul.periode,bul.date,"PR_POSTE")
RS = CumulStockvar(bul.periode,bul.date,"R_SALAIRE")
SD = CumulStockvar(bul.periode,bul.date,"SD_EXCEPTI")
PE = CumulStockvar(bul.periode,bul.date,"PR_EXCEPTI")
VAC = CumulStockvar(bul.periode,bul.date,"PR_VAC")
PRSD = CumulStockvar(bul.periode,bul.date,"PR_SD")

// ===========================================================
// Calcul du nombre de mois d’ancienneté à partir de la date d’entrée
// ===========================================================
AncienneteMois = Sal.DateEntree

// ===========================================================
// Condition : ne pas générer la prime si moins de 3 ans (36 mois)
// ===========================================================

// Détermination du taux en fonction de l’ancienneté

Mois = Emp.anciennete

    TauxS = 0
If Mois >= 36 Then TauxS = 3
If Mois >= 48 Then TauxS = 4
If Mois >= 60 Then TauxS = 5
If Mois >= 72 Then TauxS = 6
If Mois >= 84 Then TauxS = 7
If Mois >= 96 Then TauxS = 8
If Mois >= 108 Then TauxS = 9
If Mois >= 120 Then TauxS = 10
If Mois >= 132 Then TauxS = 11
If Mois >= 144 Then TauxS = 12
If Mois >= 156 Then TauxS = 13
If Mois >= 168 Then TauxS = 14
If Mois >= 180 Then TauxS = 15

// Base brute de calcul
BB = bul.salairedebase + AS + PO +xx1 + RS + SD + PE + xx2 +VAC + PRSD

    //BaseS = Saisie("PAnc",0)
    //If StockVar("_Force_Liblong_Perso") <> "" Then Liblong = StockVar("_Force_Liblong_Perso")
    //CH 20250325 #104843 - Prime forcée et incluse dans le taux horaire d'absence
    //If bul.ccn = "M110" and ETA.CCNBool[22] = false and BUL.S41.G01.00.013 = "10" then Call LibellePrimeAffecteValeurChamp("Inclus_Calc_Majoration_TauxHoraireAbs",True)
    //If BaseS = -1 then BaseS = 0.0 methodeCalcul = 1
    //If BaseS <> 0.0 Then Exec("GenereLPrime")

  MethodeCalcul = 1
  Bases = BB
  Tauxs = TauxS
  Liblong = "Prime d'ancienneté JPM"

    // Bulle explicative visible sur le bulletin
  Memo = "Ancienneté : " + Mois + " mois (" + Round(Mois / 12, 1) + " ans) | Base : " + Round(BB,2) + " € | Taux : " + TauxS + " %"
  Call Rem(Memo)

// Génération de la ligne de prime
If TauxS > 0 And BB <> 0 Then  Exec("GenereLprime")

End