Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Filtrer une année

Bonjour,

Je suis actuellement en train de créer un projet Qlik Sense. Le but de ce dernier est d'afficher deux graphiques en fonction de deux filtres (client et appareil) :

  1. Le premier, doit afficher le chiffre d'affaire de chaque client pour chaque appareil sur toutes les années (2001 à 2015).
  2. Le second, doit afficher le chiffre d'affaire de chaque client pour chaque appareil sur l'année 2015.

J'ai réussi à faire le premier graphique et les deux filtres (client et appareil) sont correctement mis en place. Le problème c'est que je n'arrive pas à faire le deuxième graphique. Je n'arrive pas à dire que pour ce graphique ci il doit prendre que l'année 2015.

J'ai testé plusieurs solutions :

  1. J'ai doublé la requête SQL, la première qui sélectionne sur toute les années (pour le premier graphique) et la seconde qui sélectionne que l'année 2015 (pour le deuxième graphique). Le problème c'est que j'ai du mettre des alias (AS) pour différencier les deux requêtes et avec ces derniers je n'arrive pas.
  2. J'ai essayé de mettre en place cette condition dans l'éditeur d'expression (fx dans l'onglet donnée) mais je n'ai pas réussi.

Quelqu'un à-t-il une solution ?

Merci d'avance

Karim

7 Replies
maxgro
MVP
MVP

hope to understand

peut etre avec la set analysis

                                     

sum({$ <year={2015}>} [chiffre d'affaire])

Not applicable
Author

Bonjour maxgro,

Merci de votre réponse.

Mais je n'arrive quand même pas, ça me donne "dimension invalide".

Je ne comprend pas pourquoi il faut utiliser le "sum" ? Il va faire la somme des dates ?

Si quelqu'un à une solution ?

Merci

Karim

alineclozel
Creator
Creator

Bonjour,

Moi je mettrais ça dans l'expression :

Sum ( {<Date= {"$(=Max(Date))"} >} ChiffreAffaire)

Le max ... c'est pour avoir le chiffre d'affaire de la dernière année


Pourquoi le Sum : parce qu'il faut de toute façon dans ton expression une fonction (c'est comme ça dans qlikview).

C'est ce que je fais pour mes statistiques même quand j'ai une seule valeur part année ...


A +

Not applicable
Author

Bonjour Aline,

Merci de ta réponse.

Pour commencer je suis sur Qlik Sense et non pas sur Qlik View. Je sais pas si ça change grand chose.

J'ai essayé ta méthode, et comme auparavant, cela m'affiche uniquement le mois de décembre. J'ai testé plusieurs façon de faire et a chaque fois, j'avais que le mois de décembre dans mon graphique. Pourquoi ? Je ne sais pas. Ne serait-ce pas car dans le "MAX" je dois préciser que je veux sur toute l'année ?

Je n'arrive donc toujours pas à mon résultat voulu.

Merci

Karim

brunobertels
Master
Master

Bonjour

sum({$ <year={2015}>} [chiffre d'affaire])

{$ <year={2015}>} = dimension = year ; valeur = 2015 donc si tu as dimension invalide il faut vérifier ta dimension calendrier. J'imagine que tu as des dimension Année / Mois / date dans tes données ? si tu as une dimension qui s'appelle Année alors : {$ <Année={2015}>} et donc sum({$ <Année={2015}>} [chiffre d'affaire])

le sum c'est pour additionner le chiffres d'affaires qui dans ton graphique sera ventilé par client et appareil

Bruno

brunobertels
Master
Master

Bonjour

Cela est due a ce que dans cette formule Sum ( {<Date= {"$(=Max(Date))"} >} ChiffreAffaire)


max( date ) va chercher la dernière date chargée dans ta base. Si Date est une dimension MOIS dans ta base alors il prendra le dernier mois soit décembre.

Je te conseille de poster ton fichier qvf. ou ta base ou une partie de ta base si c'est du excel. Cela aidera la communauté à t'aider.

bruno

alineclozel
Creator
Creator

Coucou,

Effectivement j'étais parti du principe que tu avais un champ année.

Si il n'existe par défaut peut-être peux tu rajouter dans ton script.

J'ai cette formule dans mon guide perso, il faut bien sur l'adapter :

Year (Date# (annee, 'YYYY')) as Date,

Je pense que ça pourrait donner ça pour toi :

Year (Date# (Date, 'YYYY')) as annee


A tester !