Skip to main content
Répondu

prime ancienneté


Bonjour à tous

 

je dois créer une prime d’ancienneté sur une population ayant plus ou = 20 ans d’ancienneté.

cette prime doit apparaître sur une ligne différente du salaire de base, et doit correspondre a 2% du salaire mensuel.

 

Malgré plusieurs tentatives je n’y arrive pas du tout 😑

Begin
ForceBaseS = 0
Exec("Lprime_D01")

if emp.anciennete >= 240 then tauxs = 2
 If ForceBaseS <> 0 Then BaseS = ForceBaseS
        TauxS = 100
end

 

voici un exemple de saisie mais cela ne déclenche rien

 

je ne suis pas du tout à l’aise avec les fonctions calculs j’ai beaucoup de mal à comprendre le fonctionnement des écritures.

 

Merci beaucoup pour votre aide !!

 

Bonjour

Dans Paramétrage, Prime, Libellé de prime, vous pouvez créer la D01.

Dans Calcul, vous pouvez rentrer ce code. Attention : changez la valeur en BB si ce n’est pas le salaire de base à prendre en base.

Begin

ForceTauxS = 0
Include("INIT-D01")


        BB = Bul.SalaireDeBase
        
        TauxS = 0
        If Emp.anciennete >= 0 Then TauxS = 0
        If Emp.anciennete >= 240 Then TauxS = 2
 

        If ForceTauxS <> 0 Then TauxS = ForceTauxS
        BaseS = BB
        If Tauxs > 0 and BaseS <> 0 Then Exec ("GenereLprime")
End


Bonjour,

Je vous propose cette solution.

1 - Redescendre en dossier le libellé D01 et effacer le code dans l’onglet “Calcul” :

2- Dans le libellé D01, cocher la case ci-dessous pour que la prime alimente le taux horaire des absence :

3- Créer le profil de prime avec le code ci-dessous :

Begin

if Emp.anciennete >= 240 <> 0 then
    Exec("Lprime_D01")
    methodeCalcul = 1
    Bases = Bul.SalairedeBase
    Tauxs = 2
    Liblong = "Prime d'ancienneté"
    Exec ("GenereLprime")
endif

End

Pensez à exécuter votre profil dans un profil PCCN avec la fonction :

Exec("Pprime_PRANC")

Le code profil “PRANC” est un exemple et doit correspondre au code de votre profil.

Bonne journée.

 


Merci beaucoup pour vos réponses.

je vois que la prime D01 existe mais ne s’applique pas au dossier.

je reprends le sujet je ne sais donc pas si c’est une volonté du client 

je suis allé dans la fiche société mais je n’ai pas trouvé de coche pour activer ou annuler le déclenchement de cette prime juste une coche pour le choix de la base de calcul

 

 


Vous pouvez peut-être voir dans les fonctions Calculs s’il en existe une qui s’appelle Init-D01. Ca voudrait dire que la prime d’ancienneté a été désactivée manuellement.


j’ai vérifié et je n’ai pas ce libellé dans les fonctions calculs

 

 

 

 


 

le conventionnel s’applique bien, par contre le libellé D01 concerne ici la garantie d’ancienneté et non une prime d’ancienneté.

Puis la modifier pour y inclure ma prime désirée a 2% du plus pour les plus de 20 ans d’anciennté?

 

merci 


Vous pouvez peut-être voir dans les fonctions Calculs s’il en existe une qui s’appelle Init-D01. Ca voudrait dire que la prime d’ancienneté a été désactivée manuellement.

Bonjour

 

je vous répond ici, j’ai bien essayé ce code

Begin

ForceTauxS = 0
Include("INIT-D01")


        BB = Bul.SalaireDeBase
        
        TauxS = 0
        If Emp.anciennete >= 0 Then TauxS = 0
        If Emp.anciennete >= 240 Then TauxS = 2
 

        If ForceTauxS <> 0 Then TauxS = ForceTauxS
        BaseS = BB
        If Tauxs > 0 and BaseS <> 0 Then Exec ("GenereLprime")
End

 

dans prime comme ceci.

 

 

 

j’a également vérifier dans mes fonction calcul et je n’ai pas  de init-d01

et pourtant lorsque je relance mes paies rien ne se déclenche.

y a t il une manipulation supplémentaire à faire ?

 

Merci beaucoup pour vos retours !!!!

 


Bonjour,

Votre salarié a bien sa classification de renseignée en A019 dans sa fiche salarié en car si c’ets le cas sur un dossier test ca se déclenche bien donc pas de raison.

Ok j’ai vu pas de FC “INIT-D01” existante qui aurait pu être utilisée pour inhiber le déclenchement dans le dossier.

Lorsque vous avez créé le libellé de Prime D01, vous avez bienfait le choix CCN de A019? Logiquement si vous avez des salariés en A019 et d’autres sans CCN attribuées dans leur fiche par exemple, silae propose les deux choix pour créer un libellé et forcer la D01. Il faut bien choisir la CCN si vous voulez que ca impact vos salariés.

Dernière question, c’est une ligne supplémentaire de prime ancienneté que vous voulez mettre ou elle vient écraser la prime d’ancienneté qui est conventionnelle A019? Ou bien c’est pour des salariés sans CCN?

 

Bonne journée


merci pour ce retour

je ne vois pas ou choisir la CCN dans mon profil de prime ?

 

tous mes salariés sont bien rattachés à la CCN.

actuellement sur cette convention il n’y a pas de prime d’ancienneté mais une garantie d’ancienneté qui est bien fonctionnelle.

cette prime est bien un ajout du Conventionnel.

 

par contre je ne comprends pas le A019.

ce n’est pas le code de ma convention


En A019 vous êtes bien sur?

Car moi quand je vais dans la CCN A019 je vois bien une prime d’ancienneté:

Et quand je regarde le code, c’est bien une prime et pas garantie.

Et sur mon dossier test j’ai bien une prime d’ancienneté qui est apaprue:

 


En A019 vous êtes bien sur?

Car moi quand je vais dans la CCN A019 je vois bien une prime d’ancienneté:

Et quand je regarde le code, c’est bien une prime et pas garantie.

Et sur mon dossier test j’ai bien une prime d’ancienneté qui est apaprue:

 

ma convention est la C069

il s’agit bien d’une garantie d’ancienneté


Oui la C069 ok je comprends mieux, mais dans vos copies ecran il y avait indiqué la A019, donc cela portait à confusion.

Alors ce qu eje ferai selon ce que vous voulez faire.

Si c’est juste rajouter une prime d’ancienneté supplémentaire en plus de la garantie ancienneté qui existe deja conventionnellement, il suffit de faire une fonction calcul INIIT-PCCN et mettre ceci dedans:

BaseAnc = Bul.SalaireDeBase
If Emp.anciennete >= 240 Then TauxAnc = 2 else TauxAnc = 0
If TauxAnc <> 0 then
    Exec("Lprime_D01.1")
    methodecalcul = 1
    BaseS = BaseAnc 
    Tauxs = TauxAnc 
    Liblong = "Prime Ancienneté"
    x = Bases * Tauxs /100
    Call stockevar("PrimeAnc",x)
    If Tauxs > 0 and BaseS <> 0 Then Exec ("GenereLprime")
endif

 

 

Libre à vous de modifier edes choses si besoin (pas le libellé, il faut D01.1 déclenché car si vous mettez D01 vous allez avoir deux fois la même prime avec même bases et taux)

Ca donne ceci: 

 

Deuxième option vous voulez que la garantie ancienneté n’apparaisse pas, qu’il n’y est que la Prime (ca me semble pas la bonne solution car on viendrait à l’encontre du minimum conventionnel donc bien alerter le client)

Vous pouvez garder le paramétrage ci dessus et ce coup ci mettre la D01 au lieu de D01.1 et ensuite vous créez une fonction calcul INIT-D01 et mettez return dedans. Ca va supprimer la garantie et laissez que votre prime en D01

Voila espérant avoir été compréhensible.

Bonne fin de journée

Cordialement

Florent


Merci pour votre réponse, j’ai bien saisi la fonction calcul comme ceci

mais rien ne se passe lorsque je recalcul mes bulletins.

Dois je activer autre chose pour permettre le déclenchement de celle ci ?

Merci à vous !


Vos salariés ont bien plus de 240 mois d’ancienneté?


oui oui j’en ai 55 avec plus de 20 ans d’ancienneté 


Il y a une erreur dans le nom de la fonction calcul c’est INIT-PCCN et pas INIIT-PCCN

Il y a un i de trop


ça fonctionne !!!!

 

merci merci merci !!


Commenter