Skip to main content

Edition historique qui part des cout salariaux


Forum|alt.badge.img

Bonjour,

 

un client m’a demandé de modifié l’édition des couts salariaux étant donné que c’est une édtion silae je ne peux pas donc j’ai créer un édition historique mais je seche car certain points ne ressorte pas.

  • Les heures normal et heure majorées ressortent mal 
  • les CP pris
  • Les RTT Pris
  • mon % de charges patronales est arrondis idem mon taux horaire moyen

Quelqu’un pour m’aiguiller ?

Voici mon édition :

entête :

Begin

colonne001.titre = "DATE"
colonne010.titre = "Type de contrat"
colonne020.titre = "Heures théoriques"
colonne030.titre = "Heures normales"
colonne040.titre = "Heures majorées"
colonne050.titre = "Total heures"
colonne060.titre = "CSS"
colonne070.titre = "ABS INJ"
colonne080.titre = "Congés PAR EDUC"
colonne090.titre = "AM non indem"
colonne100.titre = "Heures Réelles"
colonne110.titre = "CP Pris"
colonne120.titre = "RTT/Récup Pris"
colonne130.titre = "Brut"
colonne140.titre = "Charges Salariales"
colonne150.titre = "PAS"
colonne160.titre = "Net à Payer"
colonne170.titre = "Charges Patronales"
colonne180.titre = "% charges patronales"
colonne190.titre = "Primes et Parts variables"
colonne200.titre = "Suppléments coût global"
colonne210.titre = "Coût global"
colonne220.titre = "Coût horaire moyen"
colonne230.titre = "Forfait jour"
colonne240.titre = "Entrée"
colonne250.titre = "Sortie"

End

 

Lignes :

 

Begin

Begin

colonne001 = BUL_Periode
colonne010 = RecupereLibelleControleContenu("S41.G01.00.012.001",SEM_S41_G01_00_012_001)
colonne020 = SEM_HoraireMensuel + SEM_HoraireMensuelHeuresMajorees
colonne030 = BUL_NbHMensuellesNormales
colonne040 = BUL_NbHMensuellesMajorees
colonne050 = BUL_NbHMensuellesNormales + BUL_NbHMensuellesMajorees
// Absences
colonne060 = CumulLignesBaseSSelonLibelle("", "", "", "", "Congé sans solde%")
colonne070 =CumulLignesBaseSSelonLibelle("", "", "", "", "Absence injustifiée%")+CumulLignesBaseSSelonLibelle("", "", "", "", "Absence non justifiée%")
colonne080 = CumulLignesBaseSSelonLibelle("", "", "", "", "Congé parental%")
colonne090 =CumulLignesBaseSSelonLibelle("", "", "", "", "HN Absence Maladie non pro%")+CumulLignesBaseSSelonLibelle("", "", "", "", "HS Absence Maladie non pro%")

// Heures réelles
colonne100 = BUL_NbHT

// CP / RTT
colonne110 = CumulLignesBaseSSelonLibelle("", "", "", "", "CP%")
colonne120 = BUL_RTTJoursPris

// Montants
colonne130 = BUL_Brut
colonne140 = Bul_CumulRetenuesSD + Bul_CumulRetenuesSND
colonne150 = -CumulLignesResultatS("", "", "PAS_MT", "")
colonne160 = BUL_Netapayer
colonne170 = Bul_CumulRetenuesP

// Charges patronales
ChargesPatro = CumulLignesResultatP("", "", "", "")

// % charges patronales
If BUL_Brut <> 0 Then
 colonne180 = (ChargesPatro / BUL_Brut) * 100
Else
 colonne180 = 0
EndIf

// Primes
colonne190 =CumulLignesBaseSSelonZone("D%", "", "", "", 2) +CumulLignesBaseSSelonZone("H%", "", "", "", 2)

// Coût global
colonne200 = BUL_SupplementCoutGlobal
colonne210 = BUL_Brut+BUL_SupplementCoutGlobal+CumulLignesResultatP("", "", "", "")
// Coût horaire
HeuresTrav = BUL_NbHMensuellesNormales + BUL_NbHMensuellesMajorees
If HeuresTrav > 0 Then
 colonne220 = (BUL_Brut+BUL_SupplementCoutGlobal+CumulLignesResultatP("", "", "", ""))/ (BUL_NbHMensuellesNormales + BUL_NbHMensuellesMajorees)
Else
 colonne220 = 0
EndIf

// Forfait jour
If SEM_S41_G01_00_013 = "10" Then
 colonne230 = "Forfait jours"
Else
 colonne230 = "Horaire en heures"
EndIf

// Entrée / Sortie
colonne240 = SAL_DateEntree
colonne250 = SAL_DateSortie

End

 

Merci par avance de votre aide

24 commentaires

Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 7, 2026

@Hotlinepaie wema pouvez vous m’aider ?


Forum|alt.badge.img+3
  • Les heures normal et heure majorées ressortent mal 
  • les CP pris
  • Les RTT Pris
  • mon % de charges patronales est arrondis idem mon taux horaire moyen

Que voulez dire concernant vos heures ? Rien ne sort ? 
Les CP non plus ?

Le % de charges est arrondi ? c’est pas bien ? 

Si vous voulez modifier le nombre de décimales, c’est dans la partie en tête qu’il faut ajouter une ligne qui précise le onombre de décimales.

 

Pour les congés, j’ai pris :

colonne07=absences("12",1)

Les RTT j’ai comme vous.

Les heures :

colonne04=BUL_NbHMN  => normales
colonne05=BUL_NbHMM ==> Majorées
 


Hotlinepaie wema
Explorateur
Forum|alt.badge.img+2

Bonjour Fanny,

 

Restez plutôt sur la même formule 

colonne030 = BUL_NbHMensuellesNormales
colonne040 = BUL_NbHMensuellesMajorees

au lieu de SEM_

pour les cp et rtt

voici la formule à adapter

colonne0030=CompteurCP("CPN1ACQUIS")
colonne0040=CompteurCP("CPNACQUIS")
colonne0050=CompteurCP("CPN1PRIS")
colonne0060=CompteurCP("CPNPRIS")
colonne0062=CompteurCP("RTTACQUIS")
colonne0064=CompteurCP("RTTPRIS")

 

voici mon édition à adapter

SOLDE CP/RTT

BEGIN

colonne0010.titre="Services"
colonne0015.titre="jrs acquis ancienneté N-1"
colonne0015.dernierelignedudetail = true

colonne0018.titre="jrs acquis ancienneté N"
colonne0018.dernierelignedudetail = true

colonne0030.titre="jrs acquis N-1"
colonne0030.dernierelignedudetail = true

colonne0040.titre="jrs acquis N"
colonne0040.dernierelignedudetail = true

colonne0050.titre="jrs repos pris N-1"
colonne0050.dernierelignedudetail = true

colonne0060.titre="jrs repos pris N"
colonne0060.dernierelignedudetail = true

colonne0062.titre="jrs RTT Acquis"
colonne0062.dernierelignedudetail = true

colonne0064.titre="jrs RTT Pris"
colonne0064.dernierelignedudetail = true

colonne0066.titre="Solde RTT"
colonne0066.dernierelignedudetail = true

colonne0070.titre="solde jrs repos N-1"
colonne0070.dernierelignedudetail = true

colonne0080.titre="solde jrs repos N"
colonne0080.dernierelignedudetail = true

END

 

=================================

 

BEGIN

colonne0010=SAL_AFFECT_TYPE1
colonne0015=CompteurCP("CPN1ACQUISANC")
colonne0018=CompteurCP("CPNACQUISANC")
colonne0030=CompteurCP("CPN1ACQUIS")
colonne0040=CompteurCP("CPNACQUIS")
colonne0050=CompteurCP("CPN1PRIS")
colonne0060=CompteurCP("CPNPRIS")
colonne0062=CompteurCP("RTTACQUIS")
colonne0064=CompteurCP("RTTPRIS")
colonne0066=colonne0062-colonne0064

colonne0070=colonne0030-colonne0050
colonne0080=colonne0040-colonne0060

END
 

 

charges patronales 

voici ma formule 

En tête

colonne185.titre = "% charges patronales"
colonne185.nbdec=2
colonne185.dernierelignedudetail = true
 

 

lignes

colonne185=BUL_CumulRetenuesP/BUL_BRUT*100


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

Bonjour,

 

Merci à vous pour vos réponses le client veut tout dans la même édition au final je dois partir de la base coût salariaux, ajouter et déplacer certaines colonnes mais c’est une galère sans fin j’ai essayer de trouver à l’aide du chatGPT silae mentor RH mais ca me donne rien de plus.

 

En clair mon édition doit suivre l’ordre suivant 

Matricule

Salarié

Mois

Type de contrat

Heures théoriques (cela me cumul quand il y 2 bs au lieu de me faire deux lignes)

Heures normale

Heures majorées ne me sort pas d’heures alors qu’il y en a 

Total Heures

Congé sans solde en heures

Absences injustifié en heures

congé parental en heures rien ne sort

AM non indemnisés donc ceux qui n’ont pas de maintien

Heures réelles

CP Pris

RTT pris dans le mois Rien ne sort

Brut 

Charges

Salariale

PAS

Net à Payer

Charges patronales

% charges patronales arrondis alors que l’édition de base à 2 décimales

Primes et part variables

Supplément cout global

Cout horaire moyen arrondis alors que l’édition de base à 2 décimales

Forfait jour (si c’est le cas)

Entrée

Sortie

Emploi

% affectation établissement non paramétré car pour le moment pas de répartition analytique par établissement

Etablissement

Voila mon édition à ce jour :

 

En tête :

Begin

colonne001.titre = "DATE"
colonne010.titre = "Type de contrat"
colonne020.titre = "Heures théoriques"
colonne030.titre = "Heures normales"
colonne040.titre = "Heures majorées"
colonne050.titre = "Total heures"
colonne060.titre = "CSS"
colonne070.titre = "ABS INJ"
colonne080.titre = "Congés PAR EDUC"
colonne090.titre = "AM non indem"
colonne100.titre = "Heures Réelles"
colonne110.titre = "CP Pris"
colonne120.titre = "RTT/Récup Pris"
colonne130.titre = "Brut"
colonne140.titre = "Charges Salariales"
colonne150.titre = "PAS"
colonne160.titre = "Net à Payer"
colonne170.titre = "Charges Patronales"
colonne180.titre = "% charges patronales"
colonne190.titre = "Primes et Parts variables"
colonne200.titre = "Suppléments coût global"
colonne210.titre = "Coût global"
colonne220.titre = "Coût horaire moyen"
colonne230.titre = "Forfait jour"
colonne240.titre = "Entrée"
colonne250.titre = "Sortie"
colonne260.titre= "Emploi"
colonne270.titre="% d'affectation Etablissement"
colonne280.titre="Etablissement"
End

 

Lignes :

Begin

Begin

colonne001 = BUL_Periode
colonne010 = RecupereLibelleControleContenu("S41.G01.00.012.001",SEM_S41_G01_00_012_001)
colonne020 = SEM_HoraireMensuel + SEM_HoraireMensuelHeuresMajorees
colonne030 = BUL_NbHMensuellesNormales
colonne040 = BUL_NbHMensuellesMajorees
colonne050 = BUL_NbHMensuellesNormales + BUL_NbHMensuellesMajorees
// Absences
colonne060 = CumulLignesBaseSSelonLibelle("", "", "", "", "Congé sans solde%")
colonne070 =CumulLignesBaseSSelonLibelle("", "", "", "", "Absence injustifiée%")+CumulLignesBaseSSelonLibelle("", "", "", "", "Absence non justifiée%")

colonne080 = CumulLignesBaseSSelonLibelle("", "", "", "", "Congé parental%")
colonne090 =CumulLignesBaseSSelonLibelle("", "", "", "", "HN Absence Maladie non pro%")+CumulLignesBaseSSelonLibelle("", "", "", "", "HS Absence Maladie non pro%")

// Heures réelles
colonne100 = BUL_NbHT

// CP / RTT
colonne110=CumulLignesBaseSSelonLibelle("", "", "", "", "Congés payés%")
colonne120=CumulLignesBaseSSelonLibelle("", "", "", "", "RTT%")
// Montants
colonne130 = BUL_Brut
colonne140 = Bul_CumulRetenuesSD + Bul_CumulRetenuesSND
colonne150 = -CumulLignesResultatS("", "", "PAS_MT", "")
colonne160 = BUL_Netapayer
colonne170 = Bul_CumulRetenuesP

// Charges patronales
ChargesPatro = CumulLignesResultatP("", "", "", "")

// % charges patronales
If BUL_Brut <> 0 Then
 colonne180 = (ChargesPatro / BUL_Brut) * 100
Else
 colonne180 = 0
EndIf

// Primes
colonne190 =CumulLignesBaseSSelonZone("D%", "", "", "", 2) +CumulLignesBaseSSelonZone("H%", "", "", "", 2)

// Coût global
colonne200 = BUL_SupplementCoutGlobal
colonne210 = BUL_Brut+BUL_SupplementCoutGlobal+CumulLignesResultatP("", "", "", "")
// Coût horaire
HeuresTrav = BUL_NbHMensuellesNormales + BUL_NbHMensuellesMajorees
If HeuresTrav > 0 Then
 colonne220 = (BUL_Brut+BUL_SupplementCoutGlobal+CumulLignesResultatP("", "", "", ""))/ (BUL_NbHMensuellesNormales + BUL_NbHMensuellesMajorees)
Else
 colonne220 = 0
EndIf

// Forfait jour
If SEM_S41_G01_00_013 = "10" Then
 colonne230 = "Forfait jours"
Else
 colonne230 = "Horaire en heures"
EndIf

// Entrée / Sortie
colonne240 = SAL_DateEntree
colonne250 = SAL_DateSortie
colonne260=SEM_S41_G01_00_010
colonne270=""
colonne280=Eta_NomInterne

End


Forum|alt.badge.img+3

Congé parental, vous n’avez pas mis le mot “absence” devant… C’est normal ? 
Je l’ai bien sur les BS.

NBHMM ca vous plait pas ?  Peut être qu’il sera fait déduction des absences, je sais plus.

Moi, les RTT fonctionnent avec ca : 

BUL_RTTJoursPris

Vérifiez que vos RTT sont dans le Compteurs RTT, et pas CPSupp ou un autre truc ? 

 

Pour les décimales, indiquez cette ligne dans votre partie EN TETE:

colonne00.nbdec=2


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

Congé parental, vous n’avez pas mis le mot “absence” devant… C’est normal ? 
Je l’ai bien sur les BS.

NBHMM ca vous plait pas ?  Peut être qu’il sera fait déduction des absences, je sais plus.

Moi, les RTT fonctionnent avec ca : 

BUL_RTTJoursPris

Vérifiez que vos RTT sont dans le Compteurs RTT, et pas CPSupp ou un autre truc ? 

 

Pour les décimales, indiquez cette ligne dans votre partie EN TETE:

colonne00.nbdec=2

Je suis dessus depuis 3 jours (bon je fais autre chose entre temps ;) ) mais du coup je teste tellement de truc que j’en perds mon latin pour le congé parental vous mettez ou le mot absence ?

 

a quel moment vous mettez colonne00.nbdec=2 en début de l’entête?


Forum|alt.badge.img+3

FANNY T ES PAS REVEILLEE !  😴🤣

 

Colonne070, tu as marqué :

colonne070 =CumulLignesBaseSSelonLibelle("", "", "", "", "Absence injustifiée%")

Et bien je pense que pour la colonne080, il faut marquer “Absence congé parental”

colonne080 = CumulLignesBaseSSelonLibelle("", "", "", "", "Absence Congé parental%")

 

Pour l’en tête, on peut le mettre n’importe où j’imagine mais essayons de rester un peu organisé, un peu propre : 

colonne180.titre = "% charges patronales"

Colonne180.nbdec=2
colonne190.titre = "Primes et Parts variables"


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

FANNY T ES PAS REVEILLEE !  😴🤣

 

Colonne070, tu as marqué :

colonne070 =CumulLignesBaseSSelonLibelle("", "", "", "", "Absence injustifiée%")

Et bien je pense que pour la colonne080, il faut marquer “Absence congé parental”

colonne080 = CumulLignesBaseSSelonLibelle("", "", "", "", "Absence Congé parental%")

 

Pour l’en tête, on peut le mettre n’importe où j’imagine mais essayons de rester un peu organisé, un peu propre : 

colonne180.titre = "% charges patronales"

Colonne180.nbdec=2
colonne190.titre = "Primes et Parts variables"

Alors oui je suis un peu dans le gaz le cerveau en ébullition mais ca j’ai tenté ca ne fonctionne pas non plus

Pour nbdec=2 j’avais tenté de le mettre à cette endroit qui parait logique avant de poser la question mais ca ne veut pas 


Forum|alt.badge.img+3

Zut alors 😐😥

D’accord.

Moi j’ai : 

CH.P=BUL_CumulRetenuesP/BUL_Brut

colonne13=CH.P*100

Et j’ai deux décimales en précision dans mon code.

Je pense que dans le calcul, il trouve un résultat à deux décimales, puis le mulitplies par 100, alors il n’a plus de décimales.

et alors forcer dans la formule un arrondi à deux décimales ? 

ChargesPatro = CumulLignesResultatP("", "", "", "")

If BUL_Brut <> 0 Then
 colonne180 = Round((ChargesPatro / BUL_Brut) * 100,2)
Else
 colonne180 = 0
EndIf

 

 

Pour l’absence par contre, je ne comprends pas pourquoi ne pas passer par les formules d’absences; mais si ca marche pour les autres…
Le probleme provient peut être que l’absence est “grisée” sur le bulletin ? 
il est indiqué absence tout le mois, puis absence congé parental en grisé peut être ?

A moins que le probleme ne vienne juste du C majuscule…


colonne080 = CumulLignesBaseSSelonLibelle("", "", "", "", "Absence congé parental%")


Forum|alt.badge.img+3

Arf, mon post est en attente de validation :(

 

en résumé, essayez ca : 

CH.P=BUL_CumulRetenuesP/BUL_Brut

colonne13=CH.P*100

 

et ca : 

colonne080 = CumulLignesBaseSSelonLibelle("", "", "", "", "Absence congé parental%")

 


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

Arf, mon post est en attente de validation :(

 

en résumé, essayez ca : 

CH.P=BUL_CumulRetenuesP/BUL_Brut

colonne13=CH.P*100

 

et ca : 

colonne080 = CumulLignesBaseSSelonLibelle("", "", "", "", "Absence congé parental%")

 

Mon % de charges patronales impec merci infiniment 

 

Une idée pour faire pareil avec mon cout moyen

Actuellement j’ai ca :

HeuresTrav = BUL_NbHMensuellesNormales + BUL_NbHMensuellesMajorees
If HeuresTrav > 0 Then
 colonne220 = (BUL_Brut+BUL_SupplementCoutGlobal+CumulLignesResultatP("", "", "", ""))/ (BUL_NbHMensuellesNormales + BUL_NbHMensuellesMajorees)
Else
 colonne220 = 0
EndIf
 


Forum|alt.badge.img+3

Temps mort ! 

Elle marche la rubrique :  BUL_NbHMensuellesMajorees ou non ? dans heuretrav
Si non, le taux moyen est faux, non ? 
Et si oui, la colonne 040 doit marcher !

 

je ferais : 

If colonne050 > 0 Then
 colonne220 = (BUL_Brut+BUL_SupplementCoutGlobal+BUL_CumulRetenuesP) / colonne050
Else
 colonne220 = 0
EndIf

 

 


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

Bonjour,

 

Sur mon édition j’ai ca 

avec aucune heures majorées

sur celle de silae ca :

Silae a bien des heures majorées cependant hormis l’arrondi j’ai le même cout moyen.

Je suis désolé je déteste ne pas trouver une solution


Forum|alt.badge.img+3

Ah ben zut…
Vous avez vérifié 15 fois qu’il n’y ait pas d’erreur d ‘orthographe en colonne 050 ?

 

Et la variable BUL_NbHMM donne aussi 0 heures supp’ ???

Vous avez regardé sur ce bulletin à quoi correspondent ces 1.25h ? C’est un truc classique ? 

 

Pour le taux moyen, c’est bon, on est juste ? 


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

Je viens de refaire un copier coller mes heures majorées sont Ok 

 

la colonne220 ressort bien le taux moyen comme ma formule d’avant mais toujours arrondi


Forum|alt.badge.img+3

ok, on tente autre chose :



CG = BUL_Brut+BUL_SupplementCoutGlobal+BUL_CumulRetenuesP

Colonne220=0.00
If colonne050>0 Then colonne220= CG /colonne050

 


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

ok, on tente autre chose :



CG = BUL_Brut+BUL_SupplementCoutGlobal+BUL_CumulRetenuesP

Colonne220=0.00
If colonne050>0 Then colonne220= CG /colonne050

 

Super ca a marché il me reste que mon absence congés parental qui fonctionne pas et mes heures théoriques avec les BS qui se cumulent

 

Mais déjà ca avance merci

 


Forum|alt.badge.img+3

ok ! 

 

et on en est ou sur ces deux points ? 
Concernant l’absence, on va essayer :

colonne080 = CumulLignesBaseSSelonLibelle("", "", "", "", "Absence congé parental%")

 

Et le cas des multi BS … Très compliqué. Je vois pas la solution, hormis adapter toute les formules pour limiter le calcul sur l’emploi en cours, et encore je ne suis même pas sûr que ce soit ce que vous attendez.


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

alors je viens de retenter mais ca ne me sort rien pourtant ce qui n’est pas logique car j’ai bien 0 en HR

et sur le BS ca donne ca :

sur le récap de paie

 


Forum|alt.badge.img+3

Et oui, c’est pourquoi je disais :

“Le probleme provient peut être que l’absence est “grisée” sur le bulletin ? 
il est indiqué absence tout le mois, puis absence congé parental en grisé peut être ?”

 

On arrive aux limite de la récupération des absences via des libellés.
Je pense que ca doit marcher avec les codes d’absences.

 

CALABSH_33 doit fonctionner par contre.


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

Et oui, c’est pourquoi je disais :

“Le probleme provient peut être que l’absence est “grisée” sur le bulletin ? 
il est indiqué absence tout le mois, puis absence congé parental en grisé peut être ?”

 

On arrive aux limite de la récupération des absences via des libellés.
Je pense que ca doit marcher avec les codes d’absences.

 

CALABSH_33 doit fonctionner par contre.

je viens de mettre Stockvar("CALABSH_33") et oui ca fonctionne nickel


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

Et oui, c’est pourquoi je disais :

“Le probleme provient peut être que l’absence est “grisée” sur le bulletin ? 
il est indiqué absence tout le mois, puis absence congé parental en grisé peut être ?”

 

On arrive aux limite de la récupération des absences via des libellés.
Je pense que ca doit marcher avec les codes d’absences.

 

CALABSH_33 doit fonctionner par contre.

je viens de mettre Stockvar("CALABSH_33") et oui ca fonctionne nickel

Pouvez vous me dire ou trouver tout ses libellés de type Stockvar("CALABSH_54"), Stockvar("RETENUES_52")…..


Forum|alt.badge.img+3

je fouille souvent dans les libellés de primes ou de fonction calculs mais vous avez la liste entière de tous les stockvar dans outils (l’onglet général, pas du dossier) ==> modifications ==> En tête bulletins.

Vous rentrez en lecture seule.


Forum|alt.badge.img
  • Auteur
  • Connaisseur
  • January 8, 2026

je fouille souvent dans les libellés de primes ou de fonction calculs mais vous avez la liste entière de tous les stockvar dans outils (l’onglet général, pas du dossier) ==> modifications ==> En tête bulletins.

Vous rentrez en lecture seule.

merci beaucoup de votre aide j’ai beaucoup appris aujourd’hui