Filtre DAX - Fonction KEEPFILTERS

La description

Modifie la façon dont les filtres sont appliqués lors de l'évaluation d'une fonction CALCULATE ou CALCULATETABLE.

Syntaxe

KEEPFILTERS (<expression>)

Paramètres

N ° Sr. Terme et définition
1

Expression

Toute expression DAX.

Valeur de retour

La fonction DAX KEEPFILTERS ne renvoie aucune valeur.

Remarques

Vous pouvez utiliser la fonction DAX KEEPFILTERS dans les fonctions contextuelles CALCULATE et CALCULATETABLE, pour remplacer le comportement standard de ces fonctions.

Lorsque vous utilisez KEEPFILTERS, tous les filtres existants dans le contexte actuel sont comparés aux colonnes des arguments de filtre et l'intersection de ces arguments est utilisée comme contexte pour évaluer l'expression.

L'effet net sur n'importe quelle colonne est que les deux ensembles d'arguments s'appliquent -

  • Les arguments de filtre utilisés dans la fonction CALCULATE.
  • Les filtres dans les arguments de la fonction KEEPFILTER.

En d'autres termes, alors que les filtres CALCULATE remplacent le contexte actuel, KEEPFILTERS ajoute des filtres au contexte actuel.

Exemple

= SUMX ( 
   CALCULATETABLE (East_Sales, 
   FILTER(East_Sales,East_Sales[Product] = [Product]), 
   KEEPFILTERS(East_Sales[Product]<>"Soap")), 
   East_Sales[Sales Amount]
)