Leçon 9 / 10 — Chapitre 7: DAX : CALCULATE et le contexte de filtre
Comptages et piège de la ligne blanche
Compter « le nombre de produits jamais vendus » ou « le nombre de clients actifs » se fait souvent avec COUNTROWS( FILTER( ... ) ) ou avec CALCULATE.
Deux comptages à ne pas confondre :
DISTINCTCOUNT( Ventes[Code client] ): nombre de clients apparaissant dans les ventes du contexte.COUNTROWS( Clients ): nombre de lignes de la dimension Clients (dans le contexte).
Si des ventes portent un code client absent de la dimension Clients, Power BI ajoute une ligne blanche à Clients (chapitre 4). Résultat : DISTINCTCOUNT( Ventes[Code client] ) peut renvoyer un de plus que le nombre de vrais clients, à cause de cette valeur vide comptée comme une valeur distincte.
Se prémunir : compter sur la clé de la dimension (DISTINCTCOUNT( Clients[Code client] )) plutôt que sur la clé côté faits, ou nettoyer les clés orphelines dans Power Query. Vérifier aussi la présence d'une catégorie « (Vide) » dans les visuels associés.
Produits jamais vendus : COUNTROWS( FILTER( Produits, ISBLANK( [CA Produit] ) ) ) — les produits dont la mesure de CA est vide dans le contexte, donc sans aucune vente.
À retenir
DISTINCTCOUNTcôté faits peut compter une valeur vide en trop (clés orphelines).- Compter sur la clé de la dimension, ou nettoyer les orphelins en amont.
- « Éléments sans activité » :
COUNTROWS( FILTER( dimension, ISBLANK([mesure]) ) ).
À vous de jouer : des ventes portent un code client inexistant dans la dimension Clients. DISTINCTCOUNT( Ventes[Code client] ) risque de renvoyer combien de plus que le nombre réel de clients ?
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 90 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès