Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
MauriceLudo
Creator II
Creator II

Nb de contact 24 dernier moins

Bonjour,

je voudrais savoir comment je peux calculer le nb des appels pour le 24 dernier mois?

Ci-joint le Screenshots

Merci pour vos

41 Replies
sfatoux72
Partner - Specialist
Partner - Specialist

Des idées j'en ai des millions.

Mais si tu nous donnes l'expression que tu utilises pour MoisAnnée dans ton script de chargement, ainsi que le format du champ utilisé par l'expression (un exemple), on pourra certainement te dire exactement pourquoi tu obtiens ce résultat.

kevinchevrier
Partner - Creator III
Partner - Creator III

Pourquoi tu l'as créé ? Il existe déjà dans ton fichier

Kevin

MauriceLudo
Creator II
Creator II
Author

Merci,

voici l'expression :

dual(Month(Date) & Year(Date), Year(Date) + 100 * Month(Date) ) as [Mois année fichier],

format Date : 01/03/2017

kevinchevrier
Partner - Creator III
Partner - Creator III

Pourquoi tu le crées ? Le champ MoisAnnée existe déjà dans ton calendrier.

Ce champ commence à partir de 12/2014. C'est toi qui le définit dans ta variable Min....

Kevin

MauriceLudo
Creator II
Creator II
Author

j'ai déja testé ça fonctionne pas

MauriceLudo
Creator II
Creator II
Author

Voici le calendrier que j'ai créé

//Extraction de la plus grande date du fichier qui servira de borne de fin

MOIS_ANNEE_FICHIER:

NoConcatenate

LOAD

num([Mois année fichier]) as Max_Mois_Annee_Fichier

Resident  CPS

Order by [Mois année fichier] desc;

LET vMax =Peek('Max_Mois_Annee_Fichier',1,'MOIS_ANNEE_FICHIER');

DROP Table MOIS_ANNEE_FICHIER;

//Alimenter variables avec dates min & date max en fonction de la borne max calculé au dessus vMax

LET vTodayDate = Num(Today());

LET vMinDate = Num(makeDate(Year(Date($(vMax)))-2,Month(Date($(vMax))),'01'));

LET vDateY1 = Num(AddMonths($(vMax), -12));

LET vMaxDate = Num(makeDate(Year(Date($(vMax))),Month(Date($(vMax))),'01'));

//Création table temporaire contenant les dates entre vMinDate & vMaxDate

TempCalendar:

LOAD

$(vMinDate) + Iterno()-1 as Num,

Date($(vMinDate) + IterNo() - 1) as TempDate

AutoGenerate 1 While $(vMinDate) + IterNo() -1 <= $(vMaxDate);

//Récupération du premier jour du mois pour faire un calendrier Mois-Année

TempCalendar2:

LOAD

Distinct Num

Resident TempCalendar

Where Day(Num) ='01' ;

DROP Table TempCalendar;

For vNumMois = 1 to 24

LET vMois   = Peek('Num',$(vNumMois),'TempCalendar2');

For vNumMoisPA = 1 to 13

LET vNumMoisPATable = 13 - vNumMoisPA;

LET vMoisAnneePATable = AddMonths(date(vMois),1 - vNumMoisPA);

CALENDRIER:

LOAD *

inline

[

Mois_année_fichier_PA,Mois_PA,Mois_année_fichier

$(vMois),$(vNumMoisPATable),$(vMoisAnneePATable)

];

Next vNumMoisPA

Next vNumMois;

DROP Table TempCalendar2;

CALENDRIER_PA:

NoConcatenate

LOAD

Mois_PA,

MonthName(date(Mois_année_fichier_PA)) as [Mois année fichier PA],

num(MonthName(date(Mois_année_fichier_PA))) as [Num fichier PA],

Month(date(Mois_année_fichier_PA)) as [Mois fichier PA],

Month(date(Mois_année_fichier_PA)) as [_Mois fichier PA],

MonthName(Mois_année_fichier) as [Mois année fichier]

Resident CALENDRIER

Where len(Mois_PA) <> 0;

DROP Table CALENDRIER;

Master_Calendar:

LOAD Distinct

[Mois année fichier] as [Mois année]

Resident

CALENDRIER_PA

Where

num ([Mois année fichier]) > $(vDateY1)

;

lcloatre
Partner - Creator III
Partner - Creator III

Maurice,

Je te l'ai écrit hier :

Tu as un problème dans ta clé %Key_SKIL_DateTime, elle n'a pas le même format dans chaque table ce qui empêche de faire la jointure avec ton calendrier.

MauriceLudo
Creator II
Creator II
Author

Merci Laurent, j'ai corrigé

la je fais mes test d'un autre fichier, j'ai chargé une table et j'ai créé un calendrier

lcloatre
Partner - Creator III
Partner - Creator III

Tu dois donc pouvoir utiliser les "Mois" et "Année" de ton calendrier pour ton graphique.

MauriceLudo
Creator II
Creator II
Author

j'ai essayé à plusieurs fois sans sucées, voici l'appli tu peux essayer