Partager via


ALLSELECTED

S’applique à :Colonne calculéeTable calculéeMesureCalcul visuel

Supprime les filtres de contexte des colonnes et des lignes dans la requête actuelle, tout en conservant tous les autres filtres de contexte ou filtres explicites.

La fonction ALLSELECTED obtient le contexte qui représente toutes les lignes et colonnes dans la requête, tout en conservant les contextes et les filtres explicites autres que les filtres de lignes et de colonnes. Cette fonction peut être utilisée pour obtenir des valeurs totales affichées dans des requêtes.

Syntaxe

ALLSELECTED([<tableName> | <columnName>[, <columnName>[, <columnName>[,…]]]] )

Paramètres

Terme Définition
tableName Nom d’une table existante, spécifié avec la syntaxe DAX standard. Ce paramètre ne peut pas être une expression. Ce paramètre est facultatif.
columnName Nom, généralement complet, d’une colonne existante utilisant la syntaxe DAX standard. Il ne peut pas s’agir d’une expression. Ce paramètre est facultatif.

Valeur renvoyée

Contexte de la requête sans filtres de lignes ni de colonnes.

Notes

  • S’il existe un argument, l’argument est tableName ou columnName. S’il existe plusieurs arguments, ils doivent être des colonnes de la même table.

  • Cette fonction est différente de ALL() car elle conserve tous les filtres définis explicitement dans la requête et conserve tous les filtres de contexte autres que les filtres de lignes et de colonnes.

  • Cette fonction n’est pas prise en charge pour une utilisation en mode DirectQuery quand elle est utilisée dans des colonnes calculées ou des règles de sécurité au niveau des lignes (RLS).

Exemple

L’exemple suivant montre comment générer des niveaux différents de valeurs totales affichées dans un rapport de table à l’aide d’expressions DAX. Dans le rapport, deux (2) filtres précédents ont été appliqués aux données des ventes du revendeur : l’un sur le groupe du secteur de vente (Sales Territory Group) = Europe et l’autre sur le type de promotion (Promotion Type) = Remise de volume (Volume Discount). Une fois les filtres appliqués, des valeurs totales affichées peuvent être calculées pour l’intégralité du rapport, pour toutes les années ou pour toutes les catégories de produits. En outre, à des fins d’illustration, le total général de toutes les ventes du revendeur est également obtenu, en supprimant tous les filtres du rapport. L’évaluation de l’expression DAX suivante génère une table contenant toutes les informations nécessaires à la création d’une table avec des valeurs totales affichées.

define  
measure 'Reseller Sales'[Reseller Sales Amount]=sum('Reseller Sales'[Sales Amount])  
measure 'Reseller Sales'[Reseller Grand Total]=calculate(sum('Reseller Sales'[Sales Amount]), ALL('Reseller Sales'))  
measure 'Reseller Sales'[Reseller Visual Total]=calculate(sum('Reseller Sales'[Sales Amount]), ALLSELECTED())  
measure 'Reseller Sales'[Reseller Visual Total for All of Calendar Year]=calculate(sum('Reseller Sales'[Sales Amount]), ALLSELECTED('Date'[Calendar Year]))  
measure 'Reseller Sales'[Reseller Visual Total for All of Product Category Name]=calculate(sum('Reseller Sales'[Sales Amount]), ALLSELECTED('Product Category'[Product Category Name]))  
evaluate  
CalculateTable(  
    //CT table expression  
    summarize(
//summarize table expression  
crossjoin(distinct('Product Category'[Product Category Name]), distinct('Date'[Calendar Year]))  
//First Group by expression  
, 'Product Category'[Product Category Name]  
//Second Group by expression  
, 'Date'[Calendar Year]  
//Summary expressions  
, "Reseller Sales Amount", [Reseller Sales Amount]  
, "Reseller Grand Total", [Reseller Grand Total]  
, "Reseller Visual Total", [Reseller Visual Total]  
, "Reseller Visual Total for All of Calendar Year", [Reseller Visual Total for All of Calendar Year]  
, "Reseller Visual Total for All of Product Category Name", [Reseller Visual Total for All of Product Category Name]  
)  
//CT filters  
, 'Sales Territory'[Sales Territory Group]="Europe", 'Promotion'[Promotion Type]="Volume Discount"  
)  
order by [Product Category Name], [Calendar Year]  

Après l’exécution de l’expression ci-dessus dans SQL Server Management Studio par rapport au modèle tabulaire AdventureWorks DW, vous obtenez les résultats suivants :

[Product Category Name] [Calendar Year] [Reseller Sales Amount] [Reseller Grand Total] [Reseller Visual Total] [Reseller Visual Total for All of Calendar Year] [Reseller Visual Total for All of Product Category Name]
Accessories 2000 80450596.9823 877006.7987 38786.018
Accessories 2001 80450596.9823 877006.7987 38786.018
Accessories 2002 625.7933 80450596.9823 877006.7987 38786.018 91495.3104
Accessories 2003 26037.3132 80450596.9823 877006.7987 38786.018 572927.0136
Accessories 2004 12122.9115 80450596.9823 877006.7987 38786.018 212584.4747
Accessories 2005 80450596.9823 877006.7987 38786.018
Accessories 2006 80450596.9823 877006.7987 38786.018
Bikes 2000 80450596.9823 877006.7987 689287.7939
Bikes 2001 80450596.9823 877006.7987 689287.7939
Bikes 2002 73778.938 80450596.9823 877006.7987 689287.7939 91495.3104
Bikes 2003 439771.4136 80450596.9823 877006.7987 689287.7939 572927.0136
Bikes 2004 175737.4423 80450596.9823 877006.7987 689287.7939 212584.4747
Bikes 2005 80450596.9823 877006.7987 689287.7939
Bikes 2006 80450596.9823 877006.7987 689287.7939
Clothing 2000 80450596.9823 877006.7987 95090.7757
Clothing 2001 80450596.9823 877006.7987 95090.7757
Clothing 2002 12132.4334 80450596.9823 877006.7987 95090.7757 91495.3104
Clothing 2003 58234.2214 80450596.9823 877006.7987 95090.7757 572927.0136
Clothing 2004 24724.1209 80450596.9823 877006.7987 95090.7757 212584.4747
Clothing 2005 80450596.9823 877006.7987 95090.7757
Clothing 2006 80450596.9823 877006.7987 95090.7757
Components 2000 80450596.9823 877006.7987 53842.2111
Components 2001 80450596.9823 877006.7987 53842.2111
Components 2002 4958.1457 80450596.9823 877006.7987 53842.2111 91495.3104
Components 2003 48884.0654 80450596.9823 877006.7987 53842.2111 572927.0136
Components 2004 80450596.9823 877006.7987 53842.2111 212584.4747
Components 2005 80450596.9823 877006.7987 53842.2111
Components 2006 80450596.9823 877006.7987 53842.2111

Les colonnes du rapport sont les suivantes :

Reseller Sales Amount
Valeur réelle des ventes du revendeur pour l’année et la catégorie de produits. Cette valeur apparaît dans une cellule au centre de votre rapport, à l’intersection de l’année et de la catégorie.

Reseller Visual Total for All of Calendar Year (Valeur totale affichée du revendeur pour toutes les années civiles)
Valeur totale pour une catégorie de produits sur toutes les années. Cette valeur apparaît à la fin d’une colonne ou d’une ligne d’une catégorie de produits donnée, pour toutes les années du rapport.

Reseller Visual Total for All of Product Category Name (Valeur totale affichée du revendeur pour tous les noms des catégories de produits)
Valeur totale sur une année pour toutes les catégories de produits. Cette valeur apparaît à la fin d’une colonne ou d’une ligne d’une année donnée, pour toutes les catégories de produits du rapport.

Reseller Visual Total (Valeur totale affichée du revendeur)
Valeur totale pour toutes les années et toutes les catégories de produits. Cette valeur figure généralement dans le coin inférieur droit de la table.

Reseller Grand Total (Total général du revendeur)
Il s’agit du total général de toutes les ventes du revendeur, avant l’application d’un filtre quelconque. Vous devez noter la différence avec [Reseller Visual Total]. N’oubliez pas que ce rapport comprend deux (2) filtres, l’un sur le groupe de catégories de produits et l’autre sur le type de promotion.

Notes

Si vous avez des filtres explicites dans votre expression, ils sont également appliqués à l’expression.