Filtro DAX - función CROSSFILTER
Descripción
Especifica la dirección de filtrado cruzado que se utilizará en un cálculo para una relación que existe entre dos columnas.
La función DAX CROSSFILTER es nueva en Excel 2016.
Sintaxis
CROSSFILTER (<columnName1>, <columnName2>, <direction>)
Parámetros
No Señor. | Descripción de parámetros |
---|---|
1 | columnName1 El nombre de una columna, totalmente calificado, que generalmente representa el lado de muchos o el lado de la tabla de datos (hechos) de la relación que se utilizará. Si los argumentos se dan en orden inverso, la función los intercambiará antes de usarlos. Este argumento no puede ser una expresión. |
2 | columnName2 El nombre de una columna, totalmente calificado, que generalmente representa un lado o el lado de la tabla de búsqueda de la relación que se utilizará. Si los argumentos se dan en orden inverso, la función los intercambiará antes de usarlos. Este argumento no puede ser una expresión. |
3 | direction La dirección del filtro cruzado que se utilizará:
|
Valor devuelto
La función DAX CROSSFILTER no devuelve ningún valor.
La función DAX CROSSFILTER solo establece la dirección de filtrado cruzado para la relación indicada, durante la duración de la consulta.
Observaciones
En el caso de una relación 1: 1, no hay diferencia entre una y ambas direcciones.
CROSSFILTER solo se puede usar en funciones que toman un filtro como argumento. Por ejemplo, CALCULAR, CALCULATETABLE, CLOSINGBALANCEMONTH, CLOSINGBALANCEQUARTER, CLOSINGBALANCEYEAR, OPENINGBALANCEMONTH, OPENINGBALANCEQUARTER, OPENINGBALANCEYEAR, TOTALMTD, TOTALQTD y TOTALYTD.
CROSSFILTER utiliza las relaciones existentes en el modelo, identificando las relaciones por sus columnas de punto final.
En CROSSFILTER, la configuración de filtrado cruzado de una relación no es importante. Es decir, si la relación está configurada para filtrar una o ambas direcciones en el modelo no afecta el uso de la función. CROSSFILTER anulará cualquier configuración de filtrado cruzado existente.
Se devuelve un error si alguna de las columnas nombradas como argumento no es parte de una relación o los argumentos pertenecen a relaciones diferentes.
Si las expresiones CALCULATE están anidadas y más de una expresión CALCULATE contiene una función CROSSFILTER, entonces el CROSSFILTER más interno es el que prevalece en caso de conflicto o ambigüedad.
Ejemplo
= CALCULATE (Sales[Distinct Count of Products],
CROSSFILTER (Sales[Product],Products[Product],Both))