Formato condicional personalizado (mediante DAX)

Un usuario Pregunto ✅

vivran22

Hola,

Estoy trabajando en el diseño de una solución y necesito ayuda.

Hay dos tablas de hechos: Datos y Destino.

Para ciertos KPI, necesito comparar el real anual / mensual / diario con el objetivo. Estoy buscando aplicar formato condicional usando DAX. Tengo un éxito parcial en el caso de que todas las comparaciones de objetivos sean «Cuanto más alto, mejor» o «Más bajo, mejor». Pero si quiero aplicar dinámicamente el formato condicional basado en la selección del filtro, ¿cómo debo hacerlo?

En la actualidad, estoy usando el siguiente DAX para formateo condicional:

Revenue KPI Color (HTB) = SWITCH(
     TRUE()
     ,SUM(Data[KPI_Value]) > SUM(Target[KPI_Value]) , "#f44242"
     
     ,SUM(Data[KPI_Value]) < SUM(Target[KPI_Value]), "#5ff442",
     "#f44242"
)
Revenue KPI Color (LTB) = SWITCH(
     TRUE()
     ,SUM(Data[KPI_Value]) < SUM(Target[KPI_Value]) , "#f44242"
     
     ,SUM(Data[KPI_Value]) > SUM(Target[KPI_Value]), "#5ff442",
     "#f44242"
)

He creado una tabla de KPI con la lista de todas las categorías y subcategorías de KPI disponibles. He incluido otra columna de bandera para Bajar mejor. Usando esta tabla, me gustaría impulsar la selección de color de KPI para mayor cuanto mejor o más bajo mejor.

Adjuntando el archivo pbix de muestra aquí

Cualquier ayuda en este asunto será muy apreciada.

Gracias,

Vivek

MFelix

En respuesta a vivran22

Tuve el mismo problema, olvidé mencionar que necesita transformar su columna donde define más bajo es mejor numerar.

Refiriéndose a la columna de selección de medidas.

Saludos,
MFelix

MFelix

hola @ vivran22,

Puede usar una de las dos medidas a continuación para hacer su formato condicional:

Conditional Low and High =
SWITCH (
    TRUE ();
    SUM ( Data[KPI_Value] ) > SUM ( Target[KPI_Value] )
        && SELECTEDVALUE ( 'KPI'[Lower The Better] ) = 0; "#f44242";
    SUM ( Data[KPI_Value] ) < SUM ( Target[KPI_Value] )
        && SELECTEDVALUE ( 'KPI'[Lower The Better] ) = 0; "#5ff442";
    SUM ( Data[KPI_Value] ) < SUM ( Target[KPI_Value] )
        && SELECTEDVALUE ( 'KPI'[Lower The Better] ) = 1; "#f44242";
    SUM ( Data[KPI_Value] ) > SUM ( Target[KPI_Value] )
        && SELECTEDVALUE ( 'KPI'[Lower The Better] ) = 1; "#5ff442";
    "#f44242"
)
Conditional Low and High = 
IF(SELECTEDVALUE('KPI'[Lower The Better]) = 1 ; [Revenue KPI Color (LTB)]; [Revenue KPI Color (HTB)]
)

No estoy seguro de si el orden es correcto según su archivo, pero los colores cambian en comparación con las imágenes que tiene en su informe.

Saludos,

MFelix

vivran22

En respuesta a MFelix

@MFelix

Hola,

Gracias por su respuesta. He intentado usar tanto el DAX compartido, pero no puedo seleccionar el DAX en la opción Formato por valor de campo (formato condicional). El DAX parece estar atenuado o algo así.

Por favor avise.

Gracias,

Vivek

MFelix

En respuesta a vivran22

Tuve el mismo problema, olvidé mencionar que necesita transformar su columna donde define más bajo es mejor numerar.

Refiriéndose a la columna de selección de medidas.

Saludos,
MFelix

vivran22

En respuesta a MFelix

¡Gracias! Funcionó.

Rgds,
Vivek

Deja un comentario

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