Skip to main content
Répondu

prime ancienneté


Forum|alt.badge.img
  • Explorateur
  • 77 commentaires

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 !!

 

Meilleure réponse par Florent RABIN

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

Afficher l'original

17 commentaires

Forum|alt.badge.img+2
  • Ambassadeur
  • 2032 commentaires
  • 21 février 2024

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


Kevin JULIEN
Expert
Forum|alt.badge.img
  • Expert
  • 51 commentaires
  • 21 février 2024

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.

 


Forum|alt.badge.img
  • Auteur
  • Explorateur
  • 77 commentaires
  • 21 février 2024

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

 

 


Forum|alt.badge.img+2
  • Ambassadeur
  • 2032 commentaires
  • 21 février 2024

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.


Forum|alt.badge.img
  • Auteur
  • Explorateur
  • 77 commentaires
  • 21 février 2024

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

 

 

 

 


Forum|alt.badge.img
  • Auteur
  • Explorateur
  • 77 commentaires
  • 21 février 2024

 

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 


Forum|alt.badge.img
  • Auteur
  • Explorateur
  • 77 commentaires
  • 23 février 2024
Mat a écrit:

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 !!!!

 


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

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


Forum|alt.badge.img
  • Auteur
  • Explorateur
  • 77 commentaires
  • 23 février 2024

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


Florent RABIN
Formateur certifié
  • Formateur certifié
  • 58 commentaires
  • 23 février 2024

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:

 


Forum|alt.badge.img
  • Auteur
  • Explorateur
  • 77 commentaires
  • 23 février 2024
Florent RABIN a écrit:

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é


Florent RABIN
Formateur certifié
  • Formateur certifié
  • 58 commentaires
  • 23 février 2024

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


Forum|alt.badge.img
  • Auteur
  • Explorateur
  • 77 commentaires
  • 28 février 2024
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 !


Florent RABIN
Formateur certifié
  • Formateur certifié
  • 58 commentaires
  • 28 février 2024

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


Forum|alt.badge.img
  • Auteur
  • Explorateur
  • 77 commentaires
  • 28 février 2024

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


Florent RABIN
Formateur certifié
  • Formateur certifié
  • 58 commentaires
  • 28 février 2024

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


Forum|alt.badge.img
  • Auteur
  • Explorateur
  • 77 commentaires
  • 28 février 2024

ça fonctionne !!!!

 

merci merci merci !!


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