Skip to main content
Réponse

Paramétrage prime en utlisant le questionnaire salarié


Forum|alt.badge.img+1

Bonjour

 

Je paramètre une prime niveau dossier en utilisant le questionnaire salarié.
Je passe par le code, pas par profil utilisateur.

Ca fonctionne bien avec sal.double[1], mais je voudrais plutôt utiliser du texte, à indiquer dans mes fiches salariés.

On est OK qu’il me faut utiliser sal.string[1] ?

Ma syntaxe suivante ne fonctionne pas :  

If Sal.string[1]= “test” Then taux2 = 5

==>
Echec_suiteattendue.

Une idée d’où peux venir le problème ? 

(Ma question société est bien sur “texte”, indice 1).

Meilleure réponse par HERVE GUERARD

ah, j’ai trouvé :)

il faudrait enlever l’espace entre le end et le if ligne30

End If

 

8 commentaires

Forum|alt.badge.img+3

Bonjour

 

La bonne variable est Sal.Text[1]

 

Bonne journée


Forum|alt.badge.img+1

Merci pour ta réponse ! 

J’avais aussi essayé avec sal.text mais j’ai ECHEC SUITE ATTENDUE.

 

If Sal.text[2]="test" Then taux2 = 100
Une autre syntaxe est nécessaire ? 


Forum|alt.badge.img+3

Bonjour,

 

Est ce que taux2 a été définie à zéro avant?

sinon j’essaierai 

If Sal.text[2]="test" Then

taux2 = 100

else

taux2 = 0

endif

histoire de voir quelle ligne pose problème

bonne journée


Forum|alt.badge.img+1

Ca rend fou ce code quand tu trouves pas l’erreur ! :D

If Sal.text[2]="test" Then 
taux2 = 100
Else
Taux2 = 0
Endif
 

Erreur sur la première ligne. Suite attendue

Q société : 

Oui, taux2 est déjà défini, et même valorisé en nombre avant ce passage.


Forum|alt.badge.img+3

 

Est ce que vous pouvez mettre la totalité du code?

 


Forum|alt.badge.img+1

J’imagine. Attention, je suis peut être pas super clean dans la présentation ! :D

 

Begin

ForceTauxS = 0
Bases = 0
taux1 = 0
taux2 = 0
taux3 = 0
Mois = Emp.anciennete

//Taux selon l'ancienneté
If Mois >= 12 then taux1 = 1
If Mois >= 36 then taux1 = 2
If Mois >= 48 then taux1 = 3
If Mois >= 84 then taux1 = 4
If Mois >= 120 then taux1 = 5

//Taux selon le poste occupé
If Sal.double[1]= 1 Then taux2 = 1
If Sal.double[1]= 2 Then taux2 = 2
If Sal.double[1]= 3 Then taux2 = 3
If Sal.double[1]= 4 Then taux2 = 4
If Sal.double[1]= 5 Then taux2 = 5

//Essai avec du texte
//If Sal.string[2]= test Then taux2 = 5
If Sal.text[2] = "test" Then
taux2 = 100
Else
taux2 = 0
End If

//Insertion du mémo explicatif du calcul :
Memo1 = "Taux de l'ancienneté = " + taux1 + " et Taux du poste = " + taux2 +"."
Memo2 = "Base Heures normales = " + ROUND(Bul.NbhmContrat * Bul.tauxhoraire,2) + " et base Heures supp = " + stockvar("Calnbhsval")


//Calcul de la base :
//BB = Bul.NbhmContrat * Bul.tauxhoraire + stockvar("Calnbhsval")
BB = (Bul.NbhmN + BUL.NBHMM) * Bul.TauxHoraire

tauxs = taux1 * taux2
BB = BB * (tauxs / 100)

If BB <> 0 Then
Exec("Lprime_D01")
Methodecalcul = 2
Bases = BB
If Memo1 <> "" Then Call Rem(Memo1)
If Memo2 <> "" Then Call Rem(Memo2)
Exec("GenereLprime")
EndIf

End

 


Forum|alt.badge.img+3
  • Ambassadeur
  • Réponse
  • October 9, 2025

ah, j’ai trouvé :)

il faudrait enlever l’espace entre le end et le if ligne30

End If

 


Forum|alt.badge.img+1

AAAAAAHHHH j’étais persuadé qu’il bloquait sur la première ligne, tant et si bien que j’ai pas bien regardé la suite…

 

Mon bulletin se calcule ! Je suis tout débloquééééé ! 

Merci beaucoup !