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: 
Anonymous
Not applicable

Fonction Date sur du Set Analysis

Bonjour à tous,

Tout d'abord je sais que ce sujet à déjà été traité mais rien à faire la formule ne me retourne pas les valeurs souhaitées!!

=count(DISTINCT {<Date_Employe={"=$(vPreviousMonth)"},Mois=,Année=>} [Matricule Groupe])

avec :vPreviousMonth  :  =AddMonths(min(Date_Employe),-1)

Ou

=count(DISTINCT {<Date_Employe={'=$(=AddMonths(min(Date_Employe),-1))'},Mois=,Année=>} [Matricule Groupe])

Et rien n'y fais la fonction date n'est pas prise en compte!!

Et si je met en dur : =count(DISTINCT {$<Date_Employe={'2015-01-01'},Mois=,Année=>} [Matricule Groupe])

Cela fonctionne correctement !!

Exemple sur la pièce jointe.

Merci d'avance!

1 Solution

Accepted Solutions
Brice-SACCUCCI
Employee
Employee

Bonjour,

pour ce genre de calculs, je vous conseille d'ajouter un compteur de mois dans votre calendrier. Faire du Set Analysis sur les dates n'est pas aisé à cause des formats et de l'interprétation qui sera parfois numérique, parfois sous forme textuelle...

Voici ce que j'utilise comme compteurs :

Year(Date) * 12 + Month(Date)              AS [Cal Compteur Mois],

Year(Date) * 4 + (Ceil(Month(Date)/3))   AS [Cal Compteur Trimestre]

Ainsi, il est possible de faire facilement {<[Cal Compteur Mois] = {$(=MAX([Cal Compteur Mois]) - 1)}>} par exemple.

View solution in original post

6 Replies
maxgro
MVP
MVP

in your .qvw

- Date_Employe is YYYY-MM-DD

- your variable vPreviousMonth is in another format, DD/MM/YYYY

you have to check and try to use one format for your date

I try with variable vPreviousMonth

=date(AddMonths(min(Date_Employe),-1),'YYYY-MM-DD')

and expression

=count(DISTINCT {<Date_Employe={"$(vPreviousMonth)"},Mois=,Année=>} [Matricule Groupe])

result is

1.png

Anonymous
Not applicable
Author

Gracie mille!!

Ca fonctionne niquel !!!

Anonymous
Not applicable
Author

Bonjour j'ai toujours un problème avec cette foutue formule et date dans mon application.

Voici mon set analysis :

count(DISTINCT {<Date_Employe={"=AddMonths(Date_Employe,-1)"}>} [Matricule Groupe])

Je souhaiterais obtenir l'effectif du mois précédent afin de faire un calcul de turnover :

Depart du mois en cours / l'effectif du mois précédent.

Brice-SACCUCCI
Employee
Employee

Bonjour,

pour ce genre de calculs, je vous conseille d'ajouter un compteur de mois dans votre calendrier. Faire du Set Analysis sur les dates n'est pas aisé à cause des formats et de l'interprétation qui sera parfois numérique, parfois sous forme textuelle...

Voici ce que j'utilise comme compteurs :

Year(Date) * 12 + Month(Date)              AS [Cal Compteur Mois],

Year(Date) * 4 + (Ceil(Month(Date)/3))   AS [Cal Compteur Trimestre]

Ainsi, il est possible de faire facilement {<[Cal Compteur Mois] = {$(=MAX([Cal Compteur Mois]) - 1)}>} par exemple.

Anonymous
Not applicable
Author

Bonne idée,

en plus j'utilise le QVC Calendar donc de base j'ai déjà les _MonthSerial, _QuarterSerial.... qui sont les compteurs de mois.

Par contre quand je fais la formule il me renvoi 0 ce qui est bizarre c'est que même en mettant en dur la valeur du mois précédent genre 12 dans le set analysis j'ai tjs 0....

Exemple : =count(DISTINCT {<[_MonthSerial] = {'12'}>} [Matricule Groupe])

ou en mettant le calcul en dynamique pareil :

=count(DISTINCT {<[_MonthSerial] = {"=[_MonthSerial] - 1"} [Matricule Groupe])

Voir sur l'exmple que j'ai posté précedemment : Community.qvw

Anonymous
Not applicable
Author

J'ai trouvé mon probleme il fallait que je désactive tout mes autres zones concernant la date :

=count(DISTINCT {<[_MonthSerial] = {$(=max(_MonthSerial)-1)},Mois=>} [Matricule Groupe])

Avec cette syntaxe ca marche merci !!