Skip to main content
Réponse

Edition historique - date en année à cheval


Bonjour,

J’ai besoin d’aide sur l’EH ci-dessous, celle-ci est en année civile et j’ai besoin de faire ressortir les informations d’octobre N-1 à septembre N (exemple d’octobre 2023 à septembre 2024), pourriez-vous m’aider svp ? Merci 

Begin

annee = DateYear ( EH.DATEDEBUT )
dtdebA = date(1,1,annee)
dtfinA = date(31,12,annee)

//-- pour exclure les salariés non présents sur la période sélectionnée (lignes 9 à 12)

x = CumulBulletins ( dtdebA, dtfinA, "Bul_brut")
if SAL_DateSortie < dtdebA and x = 0 then LigneExclue = true
if SEM_dtfin < dtdebA and x = 0 then LigneExclue = true
if SEM_DtDebContrat > dtfinA and x = 0 then LigneExclue = true

//--

dtdeb = date(1,1,annee)
dtfin = date(31,1,annee)
colonne0010 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,2,annee)
dtfin = DateAddMonths(dtfin,1)
colonne0020 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,3,annee)
dtfin = date(31,3,annee)
colonne0030 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,4,annee)
dtfin = date(30,4,annee)
colonne0040 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,5,annee)
dtfin = date(31,5,annee)
colonne0050 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,6,annee)
dtfin = date(30,6,annee)
colonne0060 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,7,annee)
dtfin = date(31,7,annee)
colonne0070 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,8,annee)
dtfin = date(31,8,annee)
colonne0080 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,9,annee)
dtfin = date(30,9,annee)
colonne0090 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,10,annee)
dtfin = date(31,10,annee)
colonne0100 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,11,annee)
dtfin = date(30,11,annee)
colonne0110 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,12,annee)
dtfin = date(31,12,annee)
colonne0120 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

colonne0130 = colonne0010 + colonne0020 + colonne0030 + colonne0040 + colonne0050 + colonne0060 + colonne0070 + colonne0080 + colonne0090 + colonne0100 + colonne0110 + colonne0120

End

---------------------------------

J’ai fait ce qui est ci-dessous, mais j’aimerais que cela soit utilisable d’année en année et pas seulement pour ces dates précises :

begin


dtdeb = date(1,10,2023)
dtfin = date(31,10,2023)
colonne110 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,11,2023)
dtfin = date(30,11,2023)
colonne115 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,12,2023)
dtfin = date(31,12,2023)
colonne120 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,1,2024)
dtfin = date(31,1,2024)
colonne125 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,2,2024)
dtfin = DateAddMonths(dtfin,1)
colonne130 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")


dtdeb = date(1,3,2024)
dtfin = date(31,3,2024)
colonne135 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,4,2024)
dtfin = date(30,4,2024)
colonne140 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,5,2024)
dtfin = date(31,5,2024)
colonne145 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,6,2024)
dtfin = date(30,6,2024)
colonne150 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,7,2024)
dtfin = date(31,7,2024)
colonne155 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,8,2024)
dtfin = date(31,8,2024)
colonne160 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,9,2024)
dtfin = date(30,09,2024)
colonne165 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

end
 

Meilleure réponse par HERVE GUERARD

Bonjour

 

Je pense que l'édition ci-dessus correspond à votre attente

en sélectionnant les 12 bulles de 10 à 9

begin

colonne0100.titre = "brut 10"
colonne0200.titre = "brut 11"
colonne0300.titre = "brut 12"
colonne0400.titre = "brut 1"
colonne0500.titre = "brut 2"
colonne0600.titre = "brut 3"
colonne0700.titre = "brut 4"
colonne0800.titre = "brut 5"
colonne0900.titre = "brut 6"
colonne1000.titre = "brut 7"
colonne1100.titre = "brut 8"
colonne1200.titre = "brut 9"
end

 

*******************

begin
annee = DateYear ( EH.DATEDEBUT )
annee1 = DateYear ( EH.DATEFIN )

if bul_periode <> date(1,10,annee) then
colonne0100=0
else
colonne0100 = bul_brut
endif


if bul_periode <> date(1,11,annee) then
colonne0200=0
else
colonne0200 = bul_brut
endif


if bul_periode <> date(1,12,annee) then
colonne0300=0
else
colonne0300 = bul_brut
endif

if bul_periode <> date(1,1,annee1) then
colonne0400=0
else
colonne0400 = bul_brut
endif

if bul_periode <> date(1,2,annee1) then
colonne0500=0
else
colonne0500 = bul_brut
endif
if bul_periode <> date(1,3,annee1) then
colonne0600=0
else
colonne0600 = bul_brut
endif
if bul_periode <> date(1,4,annee1) then
colonne0700=0
else
colonne0700 = bul_brut
endif

if bul_periode <> date(1,5,annee1) then
colonne0800=0
else
colonne0800 = bul_brut
endif

if bul_periode <> date(1,6,annee1) then
colonne0900=0
else
colonne0900 = bul_brut
endif

if bul_periode <> date(1,7,annee1) then
colonne1000=0
else
colonne1000 = bul_brut
endif

if bul_periode <> date(1,8,annee1) then
colonne1100=0
else
colonne1100 = bul_brut
endif

if bul_periode <> date(1,9,annee1) then
colonne1200=0
else
colonne1200 = bul_brut
endif

end
Bonne journée

10 commentaires

Forum|alt.badge.img+2

Bonjour,

Pouvez vous me confirmez que vous lancer l’édition en faisant en clic droit sur la période de septembre, ou si vous sélectionnez l’ensemble des périodes?
Merci pour votre retour,


Bonjour,

@Aurélien Serdet j’aimerais générer l’édition sur toute la période car le client veut tous les salariés présents sur la période même ceux sortis.

Je sélectionne d’octobre à septembre (actuellement l’édition ne fonctionne pas car dans chaque colonne ressort les 12 mois au lieu du simple mois de salaire).

Merci pour votre aide.


Forum|alt.badge.img+2

L’édition est en mode bulletins ou salariés?


salariés


option.surlessalaries=true


Forum|alt.badge.img+2

voici le script ajusté pour la partie ligne :

begin
annee = DateYear ( EH.DATEDEBUT )
annee1 = DateYear ( EH.DATEFIN )
dtdebA = date(1,10,annee)
dtfinA = date(30,9,annee1)

//-- pour exclure les salariés non présents sur la période sélectionnée (lignes 9 à 12)

x = CumulBulletins ( dtdebA, dtfinA, "Bul_brut")
if SAL_DateSortie < dtdebA and x = 0 then LigneExclue = true
if SEM_dtfin < dtdebA and x = 0 then LigneExclue = true
if SEM_DtDebContrat > dtfinA and x = 0 then LigneExclue = true

dtdeb = date(1,10,annee)
dtfin = date(31,10,annee)
colonne110 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,11,annee)
dtfin = date(30,11,annee)
colonne115 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,12,annee)
dtfin = date(31,12,annee)
colonne120 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")


dtdeb = date(1,1,annee1)
dtfin = date(31,1,annee1)
colonne125 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,2,annee1)
dtfin = DateAddMonths(dtfin,1)
colonne130 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")


dtdeb = date(1,3,annee1)
dtfin = date(31,3,annee1)
colonne135 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,4,annee1)
dtfin = date(30,4,annee1)
colonne140 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,5,annee1)
dtfin = date(31,5,annee1)
colonne145 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,6,annee1)
dtfin = date(30,6,annee1)
colonne150 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,7,annee1)
dtfin = date(31,7,annee1)
colonne155 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,8,annee1)
dtfin = date(31,8,annee1)
colonne160 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

dtdeb = date(1,9,annee1)
dtfin = date(30,09,annee1)
colonne165 = CumulBulletins ( dtdeb , dtfin ,"Bul_brut")

end

 


Merci beaucoup cela fonctionne pour les dates c’est super.

En revanche, lorsque je sélectionne les mois d’octobre à septembre, le brut ne se limite pas au mois, mais me multiplie les mois.

Je fais cette manipulation afin de faire ressortir l’ensemble des salariés de la période, même ceux sortis.

Auriez-vous une solution ?

Pour info, j’ai mis des // ainsi devant le paramétrage ci-dessus proposé mais cela ne suffit pas pour faire ressortir l’ensemble des salariés sortis :

//-- pour exclure les salariés non présents sur la période sélectionnée (lignes 9 à 12)

//x = CumulBulletins ( dtdebA, dtfinA, "Bul_brut")
//if SAL_DateSortie < dtdebA and x = 0 then LigneExclue = true
//if SEM_dtfin < dtdebA and x = 0 then LigneExclue = true
//if SEM_DtDebContrat > dtfinA and x = 0 then LigneExclue = true

 

Merci pour votre aide.

Bonne soirée


Forum|alt.badge.img+2

Re,

désolé, effectivement il faut faire l’édition uniquement sur le mois de septembre pour ne pas avoir de cumul chaque mois et remplacer tout ce qui est avant

//-- pour exclure les salariés non présents sur la période sélectionnée (lignes 9 à 12)

par

begin
annee = Dateaddyears (EH.DATEDEBUT,-1)
annee = DateYear(annee)
annee1 = DateYear ( EH.DATEFIN )
dtdebA = date(1,10,annee)
dtfinA = date(30,9,annee1)

il n’est pas nécessaire des // devant les lignes 9 à 12 c’est juste pour ne pas mettre dans l’édition les salariés qui ne sont pas présent sur la période de 01/10/N à 30/09/N-1

Bonne soirée.

 


Forum|alt.badge.img+3
  • Ambassadeur
  • Réponse
  • October 4, 2024

Bonjour

 

Je pense que l'édition ci-dessus correspond à votre attente

en sélectionnant les 12 bulles de 10 à 9

begin

colonne0100.titre = "brut 10"
colonne0200.titre = "brut 11"
colonne0300.titre = "brut 12"
colonne0400.titre = "brut 1"
colonne0500.titre = "brut 2"
colonne0600.titre = "brut 3"
colonne0700.titre = "brut 4"
colonne0800.titre = "brut 5"
colonne0900.titre = "brut 6"
colonne1000.titre = "brut 7"
colonne1100.titre = "brut 8"
colonne1200.titre = "brut 9"
end

 

*******************

begin
annee = DateYear ( EH.DATEDEBUT )
annee1 = DateYear ( EH.DATEFIN )

if bul_periode <> date(1,10,annee) then
colonne0100=0
else
colonne0100 = bul_brut
endif


if bul_periode <> date(1,11,annee) then
colonne0200=0
else
colonne0200 = bul_brut
endif


if bul_periode <> date(1,12,annee) then
colonne0300=0
else
colonne0300 = bul_brut
endif

if bul_periode <> date(1,1,annee1) then
colonne0400=0
else
colonne0400 = bul_brut
endif

if bul_periode <> date(1,2,annee1) then
colonne0500=0
else
colonne0500 = bul_brut
endif
if bul_periode <> date(1,3,annee1) then
colonne0600=0
else
colonne0600 = bul_brut
endif
if bul_periode <> date(1,4,annee1) then
colonne0700=0
else
colonne0700 = bul_brut
endif

if bul_periode <> date(1,5,annee1) then
colonne0800=0
else
colonne0800 = bul_brut
endif

if bul_periode <> date(1,6,annee1) then
colonne0900=0
else
colonne0900 = bul_brut
endif

if bul_periode <> date(1,7,annee1) then
colonne1000=0
else
colonne1000 = bul_brut
endif

if bul_periode <> date(1,8,annee1) then
colonne1100=0
else
colonne1100 = bul_brut
endif

if bul_periode <> date(1,9,annee1) then
colonne1200=0
else
colonne1200 = bul_brut
endif

end
Bonne journée


@HERVE GUERARD bonjour et désolée pour ma réponse tardive, la solution n’a pas fonctionnée.

Voici ce qui fonctionne : 

begin
 
options.surlessalaries = true
colonne110.titre="BRUT Octobre"
colonne110.dernierelignedudetail = true
colonne115.titre="BRUT Novembre"
colonne115.dernierelignedudetail = true
colonne120.titre="BRUT Décembre"
colonne120.dernierelignedudetail = true
colonne125.titre="BRUT Janvier"
colonne125.dernierelignedudetail = true
colonne130.titre="BRUT Février"
colonne130.dernierelignedudetail = true
colonne135.titre="BRUT Mars"
colonne135.dernierelignedudetail = true
colonne140.titre="BRUT Avril"
colonne140.dernierelignedudetail = true
colonne145.titre="BRUT Mai"
colonne145.dernierelignedudetail = true
colonne150.titre="BRUT Juin"
colonne150.dernierelignedudetail = true
colonne155.titre="BRUT Juillet"
colonne155.dernierelignedudetail = true
colonne160.titre="BRUT Aout"
colonne160.dernierelignedudetail = true
colonne165.titre="BRUT Septembre"
colonne165.dernierelignedudetail = true
 
end
 

***********************

begin
 
annee = dateyear(eh.datefin)
annee2 = annee-1
 
colonne110=CumulBulletins(date(1,10,annee2),date(1,10,annee2),"BUL_BRUT")
colonne115=CumulBulletins(date(1,11,annee2),date(1,11,annee2),"BUL_BRUT")
colonne120=CumulBulletins(date(1,12,annee2),date(1,12,annee2),"BUL_BRUT")
colonne125=CumulBulletins(date(1,01,annee),date(1,01,annee),"BUL_BRUT")
colonne130=CumulBulletins(date(1,02,annee),date(1,02,annee),"BUL_BRUT")
colonne135=CumulBulletins(date(1,03,annee),date(1,03,annee),"BUL_BRUT")
colonne140=CumulBulletins(date(1,04,annee),date(1,04,annee),"BUL_BRUT")
colonne145=CumulBulletins(date(1,05,annee),date(1,05,annee),"BUL_BRUT")
colonne150=CumulBulletins(date(1,06,annee),date(1,06,annee),"BUL_BRUT")
colonne155=CumulBulletins(date(1,07,annee),date(1,07,annee),"BUL_BRUT")
colonne160=CumulBulletins(date(1,08,annee),date(1,08,annee),"BUL_BRUT")
colonne165=CumulBulletins(date(1,09,annee),date(1,09,annee),"BUL_BRUT")
 
end

********

Bonne fin de journée et bon réveillon.