Ajoute, supprime et modifie le contexte de filtre.
Name_Color_Transport.xlsx
128.2 kB
CALCULATE (
<expression>,
<filter1>,
...
<filterN>
)
<filter> peut être :
une valeur logique (= qui renvoi Vrai ou Faux) une expression de table, qui supprime les filtres déjà appliqués sur les colonnes retournées par l’expression de table. Sales2007=
CALCULATE (
SUM ( Sales[Sales Amount] ),
OrderDate[Year] = 2007
)
CALCULATE réalise 4 actions :
Supprime le filtre appliqué sur la colonne Year de la table OrderDate. Conserve tous les autres filtres qui seraient appliqués (sur la table Sales ou la table OrderDate ou toutes les autres tables qui filtreraient la mesure) Filtre la table OrderDate quand la colonne Year = 2007 Somme la colonne SalesAmount
Ce qui donne :
/!\ CALCULATE résout l’argument 2 avant de l’appliquer au 1, contrairement aux autres fonctions)
Avec FILTER, ALL et VALUES
CALCULATE imbriquées
externes > internes.
CALCULATE (
CALCULATE (
[Measure],
ALL ( Customer[Country] )
),
KEEPFILTERS ( Customer[Country] = "Italy" )
)
C’est d’abord le CALCULATE externe (qui contient KEEPFILTERS ( Customer[Country] = "Italy" ) qui est d’abord exécuté).
Sinon dans les autres fonctions de filtre DAX : internes > externes .