cálculo de medida de resumen ignorando el resultado de la declaración IF anterior

Un usuario Pregunto ✅

Anónimo

Hola usuarios de DAX:

Estoy calculando una medida de resumen basada en esta medida:

Cumulative Total MAX = IF ([Cumulative Total] >= [Total Cost Measure], [Total Cost Measure], [Cumulative Total])

El resultado está funcionando bien. Ahora, necesito usar esa medida para calcular una medida de resumen usando el siguiente código:

Incremental Cost by Year = 
CALCULATE( 
        [Cumulative Total MAX], 
        FILTER( 
            ALLSELECTED(MASTER),
            MAX(MASTER[Year]) >= MASTER[Year]
        )
    ,
        ALLSELECTED('Vulnerable Groups')
)

Este código funciona bien, excepto está ignorando el resultado de mi declaración IF anterior. De alguna manera necesito preservar el contexto del filtro anterior, pero también mantener la medida resultante de la declaración IF. He intentado innumerables variaciones del segundo cálculo, pero fue en vano. Muchas gracias por cualquier idea sobre cómo resolver esto.

Roberto

saumyashetty

Hola,

¿Puede publicar su libro de trabajo ficticio y el resultado requerido? Puedo intentarlo.

Anónimo

En respuesta a saumyashetty

¡Oh, genial!

Encuentre el archivo aquí.

Además, tenga en cuenta que la página incluye una segmentación de jerarquía.

¡Muchas gracias!

Roberto

saumyashetty

En respuesta a Anónimo

Hola,

Por favor, compruebe si esto es lo que está esperando.

En caso afirmativo, modifique su DAX para medir

Costo incremental por año =
CALCULAR(
[Cumulative Total MAX] ,ALLSELECTED(‘Grupos Vulnerables’)
)

Final.PNG

Anónimo

En respuesta a saumyashetty

Hola Saumia,

Gracias por su rápida respuesta. De hecho, estoy buscando los valores en el «Costo incremental por año» para igualar la suma de los valores de todos los grupos vulnerables para cada año. El problema con la medida original es que está ignorando los resultados anteriores de la declaración IF, que se está mostrando en los últimos 2 años. Aquí está el resultado graficado de mi medida original con la suma total encima del total apilado de cada año.

Resultado original.PNG

Y, aquí está el mismo resultado de la nueva medida que proporcionó:

Nuevo resultado.PNG

Nuevo resultado.PNG

Este resultado no corrige el problema subyacente y hace que una mayor parte de los totales anuales sumados sean diferentes de la suma real de los valores apilados en comparación con la medida original.

El problema es que mi cálculo ignora el resultado de la instrucción IF anterior. ¿Tiene alguna idea sobre cómo garantizar que el resultado de la instrucción IF anterior se incorpore a la medida de suma sin cambiar el filtro tal como está configurado actualmente? Muchas gracias por su apoyo. -Roberto

Ashish_Mathur

En respuesta a Anónimo

Hola,

Primero describa la pregunta en lugar de simplemente publicar una imagen o su fórmula DAX. Comparta un conjunto de datos y muestre el resultado en una tabla simple. Desde la Tabla, podemos crear cualquier visual que queramos.

Anónimo

En respuesta a Ashish_Mathur

Hola Ashish,

Mi problema es que mi medida de resumen «Costo incremental por año» ignora la declaración IF de la medida anterior sobre la que calculó. Mi medida de resumen basada en esta medida:

Cumulative Total MAX = IF ([Cumulative Total] >= [Total Cost Measure], [Total Cost Measure], [Cumulative Total])

El resultado de ese cálculo está funcionando bien. Ahora, necesito usar esa medida ajustada para calcular una medida de resumen usando el siguiente código:

Incremental Cost by Year = 
CALCULATE( 
        [Cumulative Total MAX], 
        FILTER( 
            ALLSELECTED(MASTER),
            MAX(MASTER[Year]) >= MASTER[Year]
        )
    ,
        ALLSELECTED('Vulnerable Groups')
)

Este código funciona bien, excepto está ignorando el resultado de mi declaración IF anterior. De alguna manera necesito preservar el contexto del filtro anterior, pero también mantener la medida resultante de la declaración IF.

Puede ver el problema más claramente en las últimas filas de la siguiente tabla:

Nueva tabla.PNG

El «Costo incremental por año» para 2025 debe ser de $12 000 000 + $1 580 150 + $2 381 603 = $15 961 753. Sin embargo, obtengo $16,494,443. Por alguna razón, esa medida se calcula en función de la medida «Total acumulativo» ($ 12,000,000 + $ 2,112,840 + $ 2,381,603) en lugar de la medida ajustada «Total acumulativo MAX».

Mi archivo está aquí. Agradezco enormemente cualquier ayuda que pueda brindar.

Atentamente. -Roberto

Ashish_Mathur

En respuesta a Anónimo

Hola,

No veo 16494443 en ninguna parte de su archivo PBI.

Anónimo

En respuesta a Ashish_Mathur

Disculpas. Volví a seleccionar los «grupos vulnerables» y los «años» en la segmentación para que coincidieran con la captura de pantalla de mi publicación anterior.

Aquí está el archivo. modelo de costo

Muchas gracias.

Ashish_Mathur

En respuesta a Anónimo

Hola,

Lo he intentado pero no puedo solucionarlo.

Anónimo

En respuesta a Ashish_Mathur

Está bien. ¡Gracias por tus esfuerzos!

Literalmente he pasado más de 100 horas trabajando para resolver esto. Estoy realmente asombrado de que este software sea tan torpe que no pueda proporcionar los totales correctos en un gráfico de barras apiladas…

saumyashetty

En respuesta a Anónimo

Lo mismo aquí probó de varias maneras, pero no pudo venir con el conjunto resultante deseado.

Anónimo

En respuesta a Anónimo

Entonces, mi pregunta es: ¿Cómo puedo ajustar la fórmula DAX en «Costo incremental por año» para asegurarme de que use el resultado de la declaración IF especificada en la medida «Total acumulativo MAX»? ¡Gracias!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *