Filtro DAX - funzione CROSSFILTER
Descrizione
Specifica la direzione del filtro incrociato da utilizzare in un calcolo per una relazione esistente tra due colonne.
La funzione DAX CROSSFILTER è una novità di Excel 2016.
Sintassi
CROSSFILTER (<columnName1>, <columnName2>, <direction>)
Parametri
Sr.No. | Parametro e descrizione |
---|---|
1 | columnName1 Il nome di una colonna, completamente qualificato, che di solito rappresenta il lato molti o il lato della tabella di dati (fatti) della relazione da utilizzare. Se gli argomenti vengono forniti in ordine inverso, la funzione li scambierà prima di utilizzarli. Questo argomento non può essere un'espressione. |
2 | columnName2 Il nome di una colonna, completo, che in genere rappresenta il lato o il lato della tabella di ricerca della relazione da utilizzare. Se gli argomenti vengono forniti in ordine inverso, la funzione li scambierà prima di utilizzarli. Questo argomento non può essere un'espressione. |
3 | direction La direzione del filtro incrociato da utilizzare -
|
Valore di ritorno
La funzione DAX CROSSFILTER non restituisce alcun valore.
La funzione DAX CROSSFILTER imposta solo la direzione del filtro incrociato per la relazione indicata, per la durata della query.
Osservazioni
Nel caso di una relazione 1: 1, non c'è differenza tra una e entrambe le direzioni.
CROSSFILTER può essere utilizzato solo nelle funzioni che accettano un filtro come argomento. Ad esempio, CALCULATE, CALCULATETABLE, CLOSINGBALANCEMONTH, CLOSINGBALANCEQUARTER, CLOSINGBALANCEYEAR, OPENINGBALANCEMONTH, OPENINGBALANCEQUARTER, OPENINGBALANCEYEAR, TOTALMTD, TOTALQTD e TOTALYTD.
CROSSFILTER utilizza le relazioni esistenti nel modello, identificando le relazioni in base alle colonne del punto finale.
In CROSSFILTER, l'impostazione del filtro incrociato di una relazione non è importante. Ovvero, se la relazione è impostata per filtrare una o entrambe le direzioni nel modello non influisce sull'utilizzo della funzione. CROSSFILTER sovrascriverà qualsiasi impostazione di crossfiltering esistente.
Viene restituito un errore se una delle colonne denominate come argomento non fa parte di una relazione o gli argomenti appartengono a relazioni diverse.
Se le espressioni CALCULATE sono nidificate e più di un'espressione CALCULATE contiene una funzione CROSSFILTER, il CROSSFILTER più interno è quello che prevale in caso di conflitto o ambiguità.
Esempio
= CALCULATE (Sales[Distinct Count of Products],
CROSSFILTER (Sales[Product],Products[Product],Both))