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.
Hola
Estoy trabajando en un informe en el que se seleccionan 2 Factual[IDMoment] en los filtros de informe, ejemplos 1000 y 1500.
A partir de estos IDs tengo que mostrar, por ejemplo, una etiqueta de dimensión1 en las filas y algunos valores procedentes del DW y, a continuación, necesito calcular un Delta entre los 2 ID del informe.
Así que uso una matriz:
(1 de todo: ¿Hay algo mejor visual para hacer esto? ¿O una forma de ocultar columnas en Power BI?)
Estoy tratando de controlar esto usando variables, para desarrollar un buen código de rendimiento y por supuesto evitar hacer cálculos innecesarios
La idea es evitar hacer el cálculo en delta2 de previous_idmoment "1000", y simplemente mostrar en blanco () o cero
RESULT =
VAR SELECTED_2_IDs = ALLSELECTED(FACTUAL[IDMOMENT])
VAR LATEST_IDMOMENT = CALCULATE(MAX(FACTUAL[IDMOMENT]); FACTUAL[IDMOMENT] IN SELECTED_2_MOMENTS)
VAR PREVIOUS_IDMOMENT = CALCULATE(MIN(FACTUAL[IDMOMENT]); FACTUAL[IDMOMENT] IN SELECTED_2_MOMENTS)
RETURN IF (LATEST_IDMOMENT <> PREVIOUS_IDMOMENT;
...;
BLANK();)
Hemos detectado un problema desconocido.
De todos modos, mi pregunta es cuál es la mejor manera de controlar los cálculos "dónde" deben hacerse y así, cómo identificar el contexto de una columna (o celda)
Gracias
saludos
Hola @Ricardo77 ,
Cree que esto se puede hacer de la siguiente manera.
IDMOMENT = UNION(VALUES(FACTUAL[IDMOMENT]); {( "Delta")})
Esto crea una tabla con todos los IDMoments y una línea adicional con el valor Delta
SUMOFVALUES =
VAR MAXIMUM =
MAX ( FACTUAL[IDMOMENT] )
VAR minimum =
MIN ( FACTUAL[IDMOMENT] )
RETURN
SWITCH (
SELECTEDVALUE ( IDMOMENT[IDMOMENT] );
"Delta";
CALCULATE (
SUM ( FACTUAL[DW] );
FILTER ( FACTUAL; FACTUAL[IDMOMENT] = MAXIMUM )
)
- CALCULATE (
SUM ( FACTUAL[DW] );
FILTER ( FACTUAL; FACTUAL[IDMOMENT] = minimum )
);
CALCULATE (
SUM ( FACTUAL[DW] );
FILTER ( FACTUAL; FACTUAL[IDMOMENT] = MAX ( IDMOMENT[IDMOMENT] ) )
)
)
Como puede ver debajo de la columna Delta está al final de los datos y no hay necesidad de ocultarlos en las otras columnas, tenga en cuenta que esta solución tiene dos limitaciones:
Si desea superar esas medidas necesita ser cambiado un poco.
Compruebe la conexión del archivo PBIX.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsHola @MFelix , lo que una gran pieza de código DAX, Jesús 😂!
Lo probaré y diré algo después.
Por favor, permítanme sólo unos pocos comentarios & estallidos:
1- DAX no es fácil, esto no ayuda a los usuarios finales (es decir, los usuarios empresariales para BI de autoservicio ...)
2- DAX debe ser cuidadosamente desarrollado, o de lo contrario es muy lento, (por lo que la perspectiva "vamos a tratar de ver si esto funciona" muchas veces resulta en informes lentos ...)
Termino con una pregunta, relacionada con el segundo punto:
¿Hay de todos modos (considerando su código o en términos generales) para referir una columna (anterior) en una tabla o matriz, para optimizar los cálculos?
Podría ser como elegir el delta que calculó, y usarlo en un cálculo complejo como
( row_columnA * row_columnB / row_columnZ) + (row_columnD *delta)
sin tener que calcular delta de nuevo.
Gracias de nuevo, Saludos.
Hola @Ricardo77 ,
Totalmente de acuerdo con usted en los dos puntos que se refiere, comprobar este post desde el gran Alberto Ferrari donde defendemos que DAX es simple, pero no es fácil.
https://www.sqlbi.com/blog/alberto/2020/06/20/7-reasons-dax-is-not-easy/
Con respecto a su pregunta, esto es posible tener el uso del DELTA tiene una medida dentro de una medida o hacer una temp_table. Pero si pudiera dar más información sobre el contexto que necesita, porque el uso de medidas también depende del contexto.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em Português@Ricardo77: puede usar una jerarquía de matriz personalizada para "ocultar" columnas. https://community.powerbi.com/t5/Quick-Measures-Gallery/The-New-Hotness-Custom-Matrix-Hierarchy/m-p/...
No estoy seguro de que sea claro en los requisitos. ¿Puede publicar datos de ejemplo como texto?
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 | |
2 | |
1 |