Skip to main content

Bonjour

 

je cherche a mettre en place une fonction calcul suite à un accord d’entreprise concernant le maintien employeur en cas de maladie

 

l’accord permet à tout salarié de plus d’un an d’ancienneté de bénéficier d’un premier arrêt sans carence indemnisé à 100% les 30 premiers jours.

 

j’ai bien créé la question dans la fiche salarié et ait paramétré la fonction (comme suit)

 

je ne parviens pas à affiner celle ci pour que les salariés de moins d’un an ne bénéficient d’aucun complément en cas de maladie.

 

 

de plus je doit appliquer un maintien a 100% en cas d’AT (quelque soit l’ancienneté et la durée de l’arrêt)

 

Pouvez vous m’aider à corriger la fonction ?

 

merci pour votre aide 

 

 

 

 

 

 

Plage = anneecivile
Select Case AffectationDADS
        Case "08","04":
            //    Maladie Professionnelle     Accident de Travail
                Carence = 0
                Nbjours1 = 9999
                Pcent1 = 100

        Case "09":
        Carence = 3
        If SAL.S41.G01.00.015.002 = "01" and emp.anciennete >= 36 then Carence = 0

    //    if premierarret = true then
    //        Maintien = true
    //        Carence = 0
    //        Nbjours1 = 30
    //        Pcent1 = 100
    //    Endif

        //Conditions 1er arrêt au cours de l'année civile

    


                  If emp.anciennete >=12 then

            madatedebut = date(1,1,bul.annee)
            madatefin = dateadddays ( ABS.DtDeb,-1)
            Nba = NombreAbsences( madatedebut, madatefin, "09")
            If SAL.BOOL<1] = true then Nba = 1
            If SAL.BOOLu2] = true then Nba = 0

            if Nba = 0 then 

                Maintien = true
                Carence = 0
                Nbjours1 = 30
                Pcent1 = 100

                If emp.anciennete >= 12 then
                    Nbjours2 = 30    
                    Pcent2 = 200 / 3
                Endif
                If emp.anciennete >= 72 then
                    Nbjours2 = 10    
                    Pcent2 = 90
                    Nbjours3 = 40    
                    Pcent3 = 200 / 3
                Endif
                If emp.anciennete >= 132 then
                    Nbjours2 = 20    
                    Pcent2 = 90
                    Nbjours3 = 50    
                    Pcent3 = 200 / 3
                Endif
                If emp.anciennete >= 192 then
                    Nbjours2 = 30    
                    Pcent2 = 90
                    Nbjours3 = 60    
                    Pcent3 = 200 / 3
                Endif
                If emp.anciennete >= 252 then
                    Nbjours1 = 40
                    Pcent1 = 90
                    Nbjours2 = 70    
                    Pcent2 = 200/3
                    
                            Endif
                If emp.anciennete >= 312 then
                    Nbjours1 = 50
                    Pcent1 = 90
                    Nbjours2 = 80    
                    Pcent2 = 200 / 3
                    
                Endif

                    If emp.anciennete >= 372 then
                    Nbjours1 = 60
                    Pcent1 = 90
                    Nbjours2 = 90    
                    Pcent2 = 200 / 3
                    
                Endif


        

            Endif
        Endif
EndSelect

Bonjour

“je ne parviens pas à affiner celle ci pour que les salariés de moins d’un an ne bénéficient d’aucun complément en cas de maladie.”

Peut être en ajoutant 

Maintien = False

 

juste avant

 If emp.anciennete >=12 then

 

 

 

Bonne journée

 

 

 


Bonjour

 

merci pour votre aide 

 

cela fonctionne bien pour cette correction merci !

 

il ne reste plus qu’a appliquer le maintien a 100% en d ‘AT sans condition :-) 


Ana

ajouter

Maintien = true

après

 //    Maladie Professionnelle     Accident de Travail

 

Bonne journée


j’ai bien essayé mais celui ci ne se déclenche pas sur le bulletin

 

 


Ci dessous la fonction de silae pour la CCNA020

Select case AffectationDADS
Case "04","08","11":
    //    AT & MP & ATT
    TypesMaintiensRegroupes = "04,08,09,11,19"
    Maintien = True
    Carence = 0
    Nbjours1 = 180
    Pcent1 = 100
Case "09","19":……….
 

je ne vois pas ce qui pourrait clocher pour l’AT dans votre fonction

 

essayer en ajoutant la ligne types maintiens ou en laissant juste “04” pour voir

 

bonne journée


non toujours pas…

ce qui est étrange c’est que le calcul est bon mais que le complément ne se déclenche pas sur le bulletin...


Il me semble qu’il vous manque le type de maintien

à ajouter à la fin avant 

If Maintien = True then
    TypeMaintien =  Brut

EndIf

 

bonne journée
 

 

 


ouiiiiiiiiiiiiii 

 

c’est parfait 

 

merci bcp !!!!


Bonjour, 

 

Essayez celui-ci : 

Select Case AffectationDADS
    Case "08","04":
        // Maladie Professionnelle     Accident de Travail
        Carence = 0
        Nbjours1 = 9999
        Pcent1 = 100
    Case "09":
        Carence = 3
        If SAL.S41.G01.00.015.002 = "01" and emp.anciennete >= 36 then Carence = 0
        
        // Conditions 1er arrêt au cours de l'année civile
        If emp.anciennete >= 12 then
            madatedebut = date(1,1,bul.annee)
            madatefin = dateadddays(ABS.DtDeb,-1)
            Nba = NombreAbsences(madatedebut, madatefin, "09")
            If SAL.BOOLb1] = true then Nba = 1
            If SAL.BOOL2] = true then Nba = 0
            
            if Nba = 0 then 
                Maintien = true
                Carence = 0
                
                If emp.anciennete >= 12 and emp.anciennete < 72 then
                    Nbjours1 = 30
                    Pcent1 = 100
                    Nbjours2 = 30
                    Pcent2 = 200 / 3
                ElseIf emp.anciennete >= 72 and emp.anciennete < 132 then
                    Nbjours1 = 30
                    Pcent1 = 100
                    Nbjours2 = 10
                    Pcent2 = 90
                    Nbjours3 = 40
                    Pcent3 = 200 / 3
                ElseIf emp.anciennete >= 132 and emp.anciennete < 192 then
                    Nbjours1 = 30
                    Pcent1 = 100
                    Nbjours2 = 20
                    Pcent2 = 90
                    Nbjours3 = 50
                    Pcent3 = 200 / 3
                ElseIf emp.anciennete >= 192 and emp.anciennete < 252 then
                    Nbjours1 = 30
                    Pcent1 = 100
                    Nbjours2 = 30
                    Pcent2 = 90
                    Nbjours3 = 60
                    Pcent3 = 200 / 3
                ElseIf emp.anciennete >= 252 and emp.anciennete < 312 then
                    Nbjours1 = 40
                    Pcent1 = 90
                    Nbjours2 = 70
                    Pcent2 = 200/3
                ElseIf emp.anciennete >= 312 and emp.anciennete < 372 then
                    Nbjours1 = 50
                    Pcent1 = 90
                    Nbjours2 = 80
                    Pcent2 = 200 / 3
                ElseIf emp.anciennete >= 372 then
                    Nbjours1 = 60
                    Pcent1 = 90
                    Nbjours2 = 90
                    Pcent2 = 200 / 3
                End If
            End If
        End If
End Select


Commenter