Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Imagínate esto:
Imagen para ilustración, no es en realidad mi modelo de datos.
Quiero crear una medida que cuente el número de sociedades de cartera, una dimensión con menor granularidad que la dimensión customer_key.
Estos son los problemas:
Bajo estas restricciones, ¿es posible escribir la medida de recuento de sociedades de cartera que cortará correctamente las dimensiones del producto?
Solved! Go to Solution.
He probado la función CROSSFILTER() y el rendimiento no parece tan malo como temía, así que daré por resuelto este problema por ahora.
Utilicé la misma forma que ilustra la guía de relaciones bidireccionales:
Count of Holding Companies =
CALCULATE(
DISTINCTCOUNT(Customer[Holding Company]),
CROSSFILTER(
Customer[CustomerId],
Sales[CustomerId],
BOTH
)
)
De esta manera, cuando la tabla Product filtre la tabla Sales, también filtrará la tabla Customer en la medida.
Hice algunas pruebas, ¡y parece que el 'patrón relacionado' funcionó el doble de bien en mi senario!
Después de borrar cashe en el archivo de escritorio, ejecuté el analizador de rendimiento y obtuve estos dos resultados:
El 'Patrón relacionado' utiliza su sugestión de SUMMARIZE junto con SUMX:
Count of Holding Companies =
VAR HoldingCompaniesFromSales =
SUMMARIZE ( Sales, Customer[Holding Company] )
VAR Result =
SUMX ( HoldingCompaniesFromSales, 1 )
RETURN
Result
Mientras que el 'Crossfilter' utiliza la función CROSSFILTER:
Count of Holding Companies =
CALCULATE(
DISTINCTCOUNT(Customer[Holding Company]),
CROSSFILTER(
Customer[CustomerId],
Sales[CustomerId],
BOTH
)
)
He marcado su sugerencia como la solución.
Sería interesante comparar el patrón de "conteo distinto relacionado" aquí.
Debería ser lógicamente equivalente a su medida, pero me interesaría saber cómo se compara el rendimiento.
En este caso sería:
Count of Holding Companies =
VAR HoldingCompaniesFromSales =
SUMMARIZE ( Sales, Customer[Holding Company] )
VAR Result =
SUMX ( HoldingCompaniesFromSales, 1 )
RETURN
Result
He probado la función CROSSFILTER() y el rendimiento no parece tan malo como temía, así que daré por resuelto este problema por ahora.
Utilicé la misma forma que ilustra la guía de relaciones bidireccionales:
Count of Holding Companies =
CALCULATE(
DISTINCTCOUNT(Customer[Holding Company]),
CROSSFILTER(
Customer[CustomerId],
Sales[CustomerId],
BOTH
)
)
De esta manera, cuando la tabla Product filtre la tabla Sales, también filtrará la tabla Customer en la medida.
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
1 | |
1 |