Qlik Community

Groupe des Utilisateurs Francophones

Vous êtes francophone? Ce groupe est pour vous. Venez découvrir comment démarrer avec Qlik Sense et QlikView, poser vos questions et partager vos tutos et astuces avec les membres de notre communauté.

Highlighted
Not applicable

Cumul sur une année glissante

Bonjour, j'ai un probléme avec le cumul sur une année glissante,

j'ai 2 fichiers :

Eff:

LOAD Société,

     Date,

     Heures

FROM

[.................................]

(biff, embedded labels, table is Feuil1$);

Concatenate(Eff)

LOAD Société,

     [Date-Acci],

     [Nombre jours arrêt],

     Type_Acc,

     [Prise en compte]

FROM

[.......................................]

(biff, embedded labels, table is Feuil1$);

et un calendrier:

MinMaxTmp:

LOAD

min(Date) as MinDate,

max(Date) as MaxDate

Resident Eff;

Let vMinDate = Peek('MinDate',0, 'MinMaxTmp');

TRACE Date minimum : $(vMinDate);

Let vMaxDate = Peek('MaxDate',0, 'MinMaxTmp');

TRACE Date maximum : $(vMaxDate);

Calendar_TMP:

LOAD

date($(vMinDate)+RowNo()-1) as DateTmp

autogenerate($(vMaxDate)-$(vMinDate)+1);

Temps:

LOAD

DateTmp as Date,

Date(DateTmp,'DD/MM/YYYY') as DateExplicite,

Year(DateTmp) as année,

Month(DateTmp) as mois,

Num(Month(DateTmp),'# ##0') as MoisEnum,

Day(DateTmp) as Jour,

ceil(month(DateTmp)/3) as TrimestreEnum,

InYearToDate(DateTmp, Today(), 0)*-1 as CurYTDFlag,

InYearToDate(DateTmp, Today(),-1)*-1 as LastYTDFlag,

InMonthToDate(DateTmp, Today(),0)*-1 as CurMTDFlag,

InMonthToDate(DateTmp,Today(),-1)*-1 as LastMTDFlag,

InMonthToDate(DateTmp, AddYears(Today(),-1),0)*-1 as LastYMTDFlag,

if(WeekDay(DateTmp)<5,1,0) as JourOuvre,

AutoNumber(Num(MonthStart(DateTmp)), 'MoisSequentiel') as MoisSequentiel

Resident Calendar_TMP

order by DateTmp ASC;

Drop Tables Calendar_TMP, MinMaxTmp;

ChoixTemps:

LOAD

Date,

'YTD' as _T

Resident Temps

where CurYTDFlag=1 or LastYTDFlag=1

;

Concatenate(ChoixTemps)

LOAD

Date,

'MTD' as _T

Resident Temps

where CurMTDFlag=1 or LastYMTDFlag=1

;  

je veux avoir un cumul sur une année glissante  dans un graphe suivant la formule:

=round(((sum( {$<MoisSequentiel = {">$(#=(MoisSequentiel-12))<=$(#=MoisSequentiel)"}>}  if( [Prise en compte]='oui'  and Type_Acc like 'AT*' ,1,0 ) ))*1000000  )/sum({$<MoisSequentiel = {">$(#=(Max(MoisSequentiel)-12))<=$(#=Max(MoisSequentiel))"}>}Heures)   )



Mon probléme c'est que normalement j'aurai que 2 valeurs une pour le moi de mars 2017 et fevrier 2017 car mes valeurs commence de mars 2016.  mais j'ai plusieurs valeurs.

Merci a vous.

J'ai joint un jeu de données.

Tags (1)
11 Replies
Not applicable

Re: Cumul sur une année glissante

J'ai essayé tt mais ça marche pas alr si qulqu'un a une idée elle est la bienvenu.

lcloatre
Contributor III

Re: Cumul sur une année glissante

Peux-tu partager ton appli ?

Not applicable

Re: Cumul sur une année glissante

Bonjour, ci joint l'application.

Merci de votre aide

Not applicable

Re: Cumul sur une année glissante

Personne na une idée psk la je bloque!!

kevinchevrier
Contributor III

Re: Cumul sur une année glissante

=round(((sum( {$<MoisSequentiel = {">=$(=max(MoisSequentiel)-12)"}>}  if( [Prise en compte]='oui'  and Type_Acc like 'AT*' ,1,0 ) ))*1000000  )/

sum({$<MoisSequentiel = {">=$(=max(MoisSequentiel)-12)"}>}Heures)   )

Not applicable

Re: Cumul sur une année glissante

Mon problème c'est que quand je sélectionné par mois le résultat est juste mais dans le graphe l'affectation est fausse:

ce résultat est faux :

Capture.PNG

Mais quand je selectionne le mois 15 j'ai:

Capture.PNG

le moi 13:

Capture.PNG

le problème est dans le graphe et l'affectation des valeurs.

Comment pourrai je y remédier?

Merci

kevinchevrier
Contributor III

Re: Cumul sur une année glissante

Peux-tu remettre ton application en ligne ainsi que les valeurs que tu attends par mois et au global car je ne comprends pas ta demande.

Kevin

Not applicable

Re: Cumul sur une année glissante

Bonjour, ci joint un jeu de données et l'application

Pour l'instant l'application me donne le graphe

Capture.PNG

Alors que le vrai graphe est

Pour le moi 12: 38

Pour le moi 13:  43

Capture.PNG

Quand je choisi le mois séquentiel il me donne la valeur exacte mais je dois l'avoir sans sélection.

Merci pour votre aide.

christophebrault
Valued Contributor

Re: Cumul sur une année glissante

Bonjour,

Cet article montre clairement comment mettre en place ce genre d'analyse :

Calculating rolling n-period totals, averages or other aggregations