Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Hola, necesito ayuda con una declaración DAX para una medida. Creé la siguiente instrucción para una tabla de matriz y funciona bien mostrar los subtotales de varias categorías en %. Muestra el subtotal por categoría sumado hasta el 100%, cada una de estas categorías tiene varios artículos.
PercSubtotal = DIVIDE (SUM( 'Workflow'[Páginas] ),
CALCULATE( SUM( 'Workflow'[Páginas]), ALLEXCEPT( 'Workflow', 'Workflow'[Projects] )
))
Así que esto estaba bien, hasta que tuve que usar un filtro en la tabla de matrices en su conjunto. Luego, los subtotales ya no sumaron el 100%, mostrando el % subtotal sin los datos filtrados (ver captura de pantalla a continuación). Así que ahora, la medida también tendría que filtrarse para que los subtotales vuelvan a mostrarse al 100%, pero ¿cómo se puede hacer eso?
Solved! Go to Solution.
Le sugiero que agregue la columna que desea filtrar en la función ALLEXCEPT. No es necesario que agregues esa columna a tu objeto visual.
Mi muestra:
Aquí agrego una región en mi tabla. Cuando use su código, enfrentaré el problema como el suyo. Si filtro Región, no obtendré el 100% en mi objeto visual, y el porcentaje no será dinámico en esta columna.
Necesitamos agregar [Región] en ALLEXCEPT.
PercSubtotal =
DIVIDE (
SUM ( 'Workflow'[Pages] ),
CALCULATE (
SUM ( 'Workflow'[Pages] ),
ALLEXCEPT ( 'Workflow', 'Workflow'[Projects], Workflow[Region] )
)
)
El resultado es el siguiente.
Saludos
Rico Zhou
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
¿Nadie?
Le sugiero que agregue la columna que desea filtrar en la función ALLEXCEPT. No es necesario que agregues esa columna a tu objeto visual.
Mi muestra:
Aquí agrego una región en mi tabla. Cuando use su código, enfrentaré el problema como el suyo. Si filtro Región, no obtendré el 100% en mi objeto visual, y el porcentaje no será dinámico en esta columna.
Necesitamos agregar [Región] en ALLEXCEPT.
PercSubtotal =
DIVIDE (
SUM ( 'Workflow'[Pages] ),
CALCULATE (
SUM ( 'Workflow'[Pages] ),
ALLEXCEPT ( 'Workflow', 'Workflow'[Projects], Workflow[Region] )
)
)
El resultado es el siguiente.
Saludos
Rico Zhou
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Hola Rico, esto funciona perfectamente, sencillo y elegante. ¡Muchas gracias por su ayuda!
@Phobos1 , necesitamos crear una medida dos quitar el filtro de fila, digamos tarea
PercSubtotal = DIVIDE (SUM( 'Workflow'[Páginas] ),
CALCULATE( SUM( 'Workflow'[Pages]), ALLEXCEPT( 'Workflow', 'Workflow'[Projects] ), removefilter('Workflow'[Tarea])
))
o
PercSubtotal = DIVIDE (SUM( 'Workflow'[Páginas] ),
CALCULATE( SUM( 'Flujo de trabajo'[Páginas]), removefilter('Flujo de trabajo'[Tarea])
))
Debe obtener el subtotal en cada fila, luego puede usar el filtro de nivel visual
Gracias por la respuesta rápida, intenté alterar la medida agregando los 'removefilters', pero luego recibo un mensaje de error:
El parámetro no es el tipo correcto.
Y también: La función ALLEXCEPT espera una referencia de tabla para el argumento '3', pero se utilizó una expresión de tabla.