ALL |
Tous |
| DAX (Data Analysis Expressions) |
Syntaxe
|
ALL( [table | column[, column[, column[,...]]]] )
|
Paramètres
| Nom |
Description |
| table |
Ce paramètre permet de spécifier une table entière dont toutes les lignes seront retournées sans tenir compte des filtres actuellement appliqués dans le contexte d'évaluation. |
| column |
Ce paramètre permet de spécifier une ou plusieurs colonnes dont les valeurs uniques doivent être retournées, en supprimant tous les filtres associés à ces colonnes dans le contexte. |
Description
Cette fonction permet de retourner toutes les lignes d'une table ou toutes les valeurs d'une colonne, en ignorant les filtres appliqués.
Remarques
- Fonction fondamentale pour ignorer les filtres : ALL permet de retourner toutes les lignes d'une table ou toutes les valeurs uniques d'une colonne, en ignorant
les filtres actuellement appliqués dans le contexte d'évaluation. Cela est essentiel pour calculer des totaux globaux ou des pourcentages relatifs sans être influencé par des
slicers ou des filtres de rapport.
- Utile dans les calculs de pourcentages et ratios : ALL est fréquemment utilisée pour créer des mesures comme «% du total», où il faut comparer une valeur filtrée
à la totalité des données. Par exemple, pour calculer la part des ventes d'un produit sur l'ensemble du chiffre d'affaires, ALL permet de récupérer le total global,
indépendamment des filtres de catégorie ou de région appliqués sur la visualisation.
- Peut s'appliquer à une table entière ou à une ou plusieurs colonnes : La fonction offre deux usages principaux : soit sur une table complète pour ignorer tous
les filtres, soit sur une ou plusieurs colonnes spécifiques pour supprimer uniquement les filtres liés à ces colonnes. Cette flexibilité permet d'affiner le comportement du
calcul en fonction du contexte et des besoins analytiques.
- Souvent combinée avec CALCULATE pour redéfinir le contexte : ALL est très souvent utilisée à l'intérieur de CALCULATE pour modifier le contexte de filtre des
mesures. Par exemple, CALCULATE(SUM(Sales[Amount]), ALL(Products)) permet de calculer la somme des ventes sur tous les produits, indépendamment des filtres appliqués dans
le rapport ou la visualisation.
- Permet la création de mesures dynamiques et interactives : Grâce à ALL, il est possible de construire des mesures interactives répondant aux sélections
utilisateurs tout en conservant un point de référence global. Par exemple, un indicateur de performance relative peut comparer la valeur filtrée à une valeur totale globale,
améliorant la lisibilité et l'analyse des rapports.
- Impact sur le filtrage croisé et les hiérarchies : ALL est souvent utilisée dans des modèles hiérarchiques pour ignorer certains niveaux de filtrage tout en
respectant d'autres. Cela permet, par exemple, de calculer des totaux régionaux indépendamment du filtre sur une catégorie de produits ou d'un mois spécifique, facilitant
l'analyse comparative à différents niveaux de granularité.
- Sensible aux performances sur de grandes tables : Bien qu'ALL soit puissante, son utilisation sur de très grandes tables peut avoir un impact sur les
performances, car elle force le moteur DAX à ignorer les filtres et à recalculer toutes les lignes ou valeurs uniques. Il est donc conseillé de l'utiliser judicieusement,
notamment dans des modèles volumineux ou complexes.
- Complémentaire aux fonctions ALLSELECTED et ALLEXCEPT : ALL est souvent comparée ou combinée avec ALLSELECTED et ALLEXCEPT pour des comportements plus ciblés
de suppression des filtres. ALLSELECTED respecte certains filtres de contexte visuel, tandis qu'ALLEXCEPT permet d'ignorer tous les filtres sauf ceux spécifiés. Cette
combinaison permet de créer des mesures très précises et adaptées aux besoins analytiques avancés.
Dernière mise à jour : Vendredi, le 30 Mai 2025