Skip to main content
Répondu

Parametrer une prime annuel mensualisé tenant compte des l'absences du mois


Bonjour,

Pour mon client, je souhaite créer une prime applicable à l’ensemble des collaborateurs.

Le client souhaite que cette prime corresponde à 800€par an pour un salarié à taux plein.

Je dois donc proratisé la prime en fonction de sa durée de contrat, et proratisé en fonction des absences du mois (hors CP).

Mon calcul doit donc être:

(800 / 12) X (Durée contrat mensuelle / 151,67) X (durée présence du mois / durée théorique présence du mois)

Je ne n’arrive pas à parametrer cette prime.

Pouvez-vous m’aider?

 

Meilleure réponse par Florent RABIN

Bonjour,

Je me suis permis d’apporter un complément dans le profil proposé pour tenir compte des jours si le salarié arrive après le 1er du mois dans le prorata le cas des forfaits jours qui ne peut se proratiser en heures et la possibilité d’inhiber le déclenchement en mettant -1 en colonne d’EV au cas ou.

Begin

Montant = 800
Datedeb = bul.periode
If emp.dtdebcontrat > Datedeb then datedeb = emp.dtdebcontrat 
Datefin = Bul.date
NbjMois = Diffdays(Datedeb,Bul.date)

CumNbJAbs = NbJCalendairesAbsences(DateDeb, DateFin, "04+08+54+11+09+32+33+69")

If BUL.S41.G01.00.013 <> "10" then
    ProrataTP = BUL.NBHMCONTRAT / 151.67
else
    // forfait jours
    ProrataTP = BUL.FJNBJAN / 218
endif

Prorata = (NbjMois - CumNbJAbs) / bul.NbjMois
Montant  = ((Montant / 12) * ProrataTP) * Prorata

ForcMontant  = Saisie("Prime annuelle",Montant)
If ForcMontant <> 0 then Montant = ForcMontant  
If ForcMontant  = -1 then Montant = 0

If Montant <> 0 then
    Exec("Lprime_D05")
    Bases = Montant
    methodeCalcul = 2
    Liblong="Prime annuelle"
    Exec ("GenereLprime")
endif

End

 

Bonne fin de journée

Afficher l'original
Ce sujet vous a-t-il aidé à trouver une réponse à votre question?

7 commentaires

Karen TRESFIELD
Connaisseur

Begin

Montant = 800
Datedeb=Date(1,datemonth(bul.date),dateyear(bul.date))
Datefin = Bul.date
NbjMois = Diffdays(Datedeb,Bul.date)

CumNbJAbs = NbJCalendairesAbsences(DateDeb, DateFin, "04+08+54+11+09+32+33+69")

  > Ajouter les codes absences que vous souhaitez comptabiliser dans les jours d’absence


ProrataTP = BUL.NBHMCONTRAT/151.67
Prorata = (NbjMois - CumNbJAbs)/NbjMois

    Exec("Lprime_D05")
    Bases = Saisie("Prime annuelle",(Montant/12)*Prorata*ProrataTP)

> Le montant sera modifiable au besoin dans la saisie des éléments variables


    methodeCalcul = 2
    Liblong="Prime annuelle"
    Exec ("GenereLprime")
End


Florent RABIN
Formateur certifié
  • Formateur certifié
  • 58 commentaires
  • Réponse
  • 27 février 2024

Bonjour,

Je me suis permis d’apporter un complément dans le profil proposé pour tenir compte des jours si le salarié arrive après le 1er du mois dans le prorata le cas des forfaits jours qui ne peut se proratiser en heures et la possibilité d’inhiber le déclenchement en mettant -1 en colonne d’EV au cas ou.

Begin

Montant = 800
Datedeb = bul.periode
If emp.dtdebcontrat > Datedeb then datedeb = emp.dtdebcontrat 
Datefin = Bul.date
NbjMois = Diffdays(Datedeb,Bul.date)

CumNbJAbs = NbJCalendairesAbsences(DateDeb, DateFin, "04+08+54+11+09+32+33+69")

If BUL.S41.G01.00.013 <> "10" then
    ProrataTP = BUL.NBHMCONTRAT / 151.67
else
    // forfait jours
    ProrataTP = BUL.FJNBJAN / 218
endif

Prorata = (NbjMois - CumNbJAbs) / bul.NbjMois
Montant  = ((Montant / 12) * ProrataTP) * Prorata

ForcMontant  = Saisie("Prime annuelle",Montant)
If ForcMontant <> 0 then Montant = ForcMontant  
If ForcMontant  = -1 then Montant = 0

If Montant <> 0 then
    Exec("Lprime_D05")
    Bases = Montant
    methodeCalcul = 2
    Liblong="Prime annuelle"
    Exec ("GenereLprime")
endif

End

 

Bonne fin de journée


Bonjour,

 

Dans quelle doc puis-je trouver à quelles absences correspondent ces codes ?

Merci,

Christian


Forum|alt.badge.img+2
  • Ambassadeur
  • 387 commentaires
  • 20 mars 2024

Bonjour,

 

Dans Synthese, absence

le code dans la colonne affectation DADS

bonne journée


Bonjour,

 

Merci Hervé.

 

Slts.


Bonjour, est-ce que ce type de formule peut fonctionner aussi pour une prime 13ème mois?


  • Auteur
  • Nouveau
  • 2 commentaires
  • 12 décembre 2024

Bonjour,

Je pense que oui, cela va dépendre de votre façon de calculer le 13eme mois.

 


Commenter


Gestion des cookies

Nous utilisons des cookies pour améliorer et personnaliser votre expérience. Si vous acceptez ou continuez de naviguer, vous acceptez règles relatives aux cookies. En savoir plus sur nos cookies

 
Paramètres de cookies