Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Cirdecp007
Creator
Creator

DN et Calcul du nombre de client par rapport au groupe d'une référence

Bonjour,

 

Je cherche à calculer la DN (Distribution Numérique) d'une référence par rapport à son groupe d'appartenance.

Je dois donc compter le nombre de client qui n'ont pas un CA à 0€ pour ma référence ce que j'obtiens bien avec 

Count({<Client = {"=Sum(CA) <> 0"}>} DISTINCT Client)

En revanche, j'ai maintenant besoin d'obtenir le nombre des clients qui ont un CA différent de 0€ pour l'ensemble des références appartenant au même groupe que ma référence sélectionnée.

Par exemple REF1, REF2, REF3 sont dans le groupe A et je veux donc savoir en sélectionnant REF1 le nombre de clients qui commandent soit REF1, soit REF2, soit REF3 donc qui commandent parmi groupe A.

Il me faudrait quelque chose comme groupe={groupe de REF1} et exclure la REF1 sélectionnée avec REF=

 

Je vous remercie par avance de votre aide.

6 Replies
Cirdecp007
Creator
Creator
Author

Je suppose qu'il faut passer par une fonction aggr() mais je ne sais pas comment...

Dref278
Creator
Creator

Bonjour,

De base, lorsque vous sélectionnez une référence, vous sélectionnez également son groupe d'appartenance ( par association). Vous devez alors utiliser la set analysis {1} pour faire le calcul sur l'ensemble des données, et agréger le calcul sur le groupe.

Cette formule devrait répondre au besoin :

Aggr({1}count(distinct CLIENT), GROUPE).

Si dans un tableau vous mettez cette mesure avec en dimension les références, vous devriez avoir la même valeur pour REF1, REF2 et REF3.

Cdlt,

Pour avoir une bonne réponse, il faut poser la bonne question (Chat GPT, 2023)
Dref278
Creator
Creator

La formule que je vous ai donné précédemment, risque de ne pas fonctionner correctement, si vous sélectionnez une période par exemple, car il prendra en compte l'ensemble des données et non pas la période choisie, la formule suivante serait peut être plus adapté :

Aggr({<REFERENCE= >}count(distinct CLIENT), GROUPE),

Ce que l'on dit ici, c'est que le calcul du nombre de client se fait au groupe, et ce, indépendamment de la référence sélectionnée, tout en tenant compte des autres filtres.

 

 

Pour avoir une bonne réponse, il faut poser la bonne question (Chat GPT, 2023)
Cirdecp007
Creator
Creator
Author

Merci beaucoup. Grâce à vous, je touche au but avec votre dernière formule.

Cependant, j'ai un dernier détail à modifier car j'ai un petit écart entre le nombre qui apparait (96) et celui que je souhaite avoir (90) car il me faut supprimer des lignes quand une certaine mesure est à 0.

J'ai donc ajouté {<CLIENT= {"=Sum(Quantité) <> 0"}>} dans ma formule (ce qui fonctionnait bien dans une autre formule) comme ceci :

Aggr({<REFERENCE= >}count({<CLIENT= {"=Sum(Quantité) <> 0"}>}distinct CLIENT), GROUPE)

Malheureusement quand je ne sélectionne pas le GROUPE A pour ma REFERENCE 1, j'ai 6 clients comptés en plus (que je suppose être à 0 en Quantité) mais ils disparaissent bien si le filtre est actif sur le GROUPE A et correspondent bien à mon comptage manuel des lignes.

Auriez-vous une idée svp ?

Je suppose que je ne place pas l'info au bon endroit ou il faut que j'imbrique une autre aggr() quelque part...

Dref278
Creator
Creator

Pouvez vous essayer de remplacer le

Sum(Quantité)<>0

par

Aggr(NODISINCT Sum(Quantite),GROUPE)<>0 

?

Pour avoir une bonne réponse, il faut poser la bonne question (Chat GPT, 2023)
Cirdecp007
Creator
Creator
Author

Merci beaucoup pour ce retour rapide.  

J'ai donc fait :

Aggr({<REFERENCE= >}count({<CLIENT= {"=Aggr(NODISTINCT Sum(Quantité),GROUPE) <> 0"}>}distinct CLIENT), GROUPE)

Malheureusement j'obtiens la valeur de la REF 1 seul (enfin ça y ressemble).

J'ai donc essayé de mettre des {<REFERENCE= >} un peu partout mais ça reste avec ma valeur de REF 1