Dropdown Top N para una matriz de riesgo

Un usuario Pregunto ✅

Anónimo

Hola,

Estoy tratando de agregar una cortadora de Top N a mi panel de Riesgos.

He logrado que funcione para la tabla con la siguiente medida (información que se encuentra en este foro):

Riesgo TopN antes = VAR SelectedTop = SELECTEDVALUE (‘TopN'[TopN])
REGRESO
INTERRUPTOR (VERDADERO (),
SelectedTop = 0, [RiskBefore],
RANKX (
ALLSELECTED (‘Risks_Opportunities’),
[RiskBefore]
)
<= SelectedTop,
[RiskBefore]
)
RiskBefore = MIN (Risks_Opportunities[Val start])
Sin embargo, también haría que afectara a la matriz que muestra el recuento de riesgos sobre la cuadrícula de impacto / probabilidad.
Intenté modificar la fórmula anterior de esta manera:
Recuento de TopN = VAR SelectedTop = SELECTEDVALUE (‘TopN'[TopN])
REGRESO
INTERRUPTOR (VERDADERO (),
SelectedTop = 0, Risks_Opportunities[Count of Risks],
RANKX (
ALLSELECTED (‘Risks_Opportunities’),
[Count of Risks]
)
<= SelectedTop,
[Count of Risks]
)
Recuento de riesgos = COUNT (Risks_Opportunities[ID]) +0
y poner el Recuento de TopN medida en lugar de «Riesgos» en la matriz.
Muestra datos correctos, pero no se ve afectado por la segmentación.
¿Alguna sugerencia?

matrix1.PNG

hola @Anónimo

El problema debe ser condicional rankx en tu fórmula.

Prueba esta fórmula:

TopN Count = VAR SelectedTop = SELECTEDVALUE('TopN'[TopN])
RETURN
SWITCH(TRUE(),
SelectedTop = 0, Risks_Opportunities[Count of Risks],
RANKX (
ALLSELECTED( 'Risks_Opportunities'),
[Count of Risks]
,,DESC,Dense)
<= SelectedTop,
[Count of Risks]
)

Puede probar en el visual de tabla y luego transformarlo en el visual de matriz.

Si no es su caso, comparta su archivo pbix de muestra para que tengamos una prueba.

Atentamente,

Lin

Anónimo

En respuesta a v-lili6-msft

Hola,

Gracias por la fórmula modificada, pero no funcionó, el resultado fue el mismo que con el mío, mostró datos correctos, pero no reaccionó al cortador TOPN.

He preparado el archivo de muestra y lo puse en Onedrive:

Muestra PBIX

¡Gracias!

En respuesta a Anónimo

hola @Anónimo

Se debe al condicional rankx en tu fórmula.

Solo prueba esta fórmula

TopN Count = 
VAR SelectedTop = SELECTEDVALUE('TopN'[TopN])
RETURN
SWITCH(TRUE(),
    SelectedTop = 0, Risks_Opportunities[Count of Risks],
    RANKX ( 
            ALLSELECTED(  'Risks_Opportunities'[Impact],Risks_Opportunities[Probability]), 
            [Count of Risks]
                )
                  <= SelectedTop,
        [Count of Risks]
)

Atentamente,

Lin

Anónimo

En respuesta a v-lili6-msft

Hola v-lili6,

Gracias por la nueva fórmula.

Hace que la matriz responda a la cortadora, pero los datos que se muestran son incorrectos y, después de mirarlos durante 15 minutos, todavía no puedo determinar el patrón para modificarlos yo mismo.

La matriz debe mostrar los mismos datos que la tabla -> si establece el TopN en 1, que responde a un riesgo con impacto / probabilidad de 4 * 5 – debe haber un punto en la esquina superior derecha de la misma.

En respuesta a Anónimo

Hola, @Anónimo

En esta muestra, si establece el TopN en 1, debería mostrar el ranking1 [Count of Risks] valor, Son 18.

11.JPG

¿Por qué responde a un riesgo con impacto / probabilidad de 4 * 5?

y para «Todavía no puedo ‘determinar el patrón para modificarlo yo mismo», puede extraer el condicional rankx en una tabla visual para la prueba.

Test rank= RANKX ( 
            ALLSELECTED(  'Risks_Opportunities'[Impact],Risks_Opportunities[Probability]), 
            [Count of Risks]
                )

Atentamente,

Lin

Anónimo

En respuesta a v-lili6-msft

Hola v-lili6,

¡Gracias por la ayuda!

Sin embargo, me malinterpretaron.

La matriz debe tomar el TOPN clasificado según la medida «RiskBefore» y luego mostrar los recuentos en la matriz.

Como mecanismo de validación, debe visualizar los mismos datos que ve en la tabla debajo.

He modificado la fórmula; ahora casi funciona, pero aún muestra demasiado cuando configura el TOPN como 4 o más:

TopN Count = VAR SelectedTop = SELECTEDVALUE (‘TopN'[TopN]) INTERRUPTOR DE RETORNO (TRUE (), SelectedTop = 0, Risks_Opportunities[RiskBefore], RANKX (ALLSELECTED (‘Risks_Opportunities'[Impact], Risks_Opportunities[Probability]), [RiskBefore] ) <= SelectedTop, [Count of Risks])

En respuesta a Anónimo

hola @Anónimo

Esto todavía se debe a la misma [RiskBefore] valor por rango.

Por ejemplo:

Cuando elija 5, mostrará 6 resultados.

15.JPG

Utilice el rango condicional como medida en una tabla visual para probar su resultado.

rank=RANKX ( ALLSELECTED( 'Risks_Opportunities'[Impact],Risks_Opportunities[Probability]), [RiskBefore] ) 

Atentamente,

Lin

Anónimo

En respuesta a v-lili6-msft

Hola,

Hay un malentendido: funciona bien en la tabla, lo hizo desde el principio. El problema está en la matriz: debería visualizar el mismo contenido que la tabla. Creo que la imagen muestra muy bien el problema.

Y de alguna manera el rango no funciona en la tabla, no sé por qué.

Adjunto el PBIX con el siguiente contenido:

Matriz de riesgo

pbi.PNG

En respuesta a Anónimo

hola @Anónimo

Elimine la columna ID de la tabla visual y establezca Probabilidad e Impacto no resumir.

16.JPG

Atentamente,

Lin

Anónimo

En respuesta a v-lili6-msft

Hola,

Puedo hacer que muestre los datos como en la captura de pantalla que enviaste. ¡Pero esto no es lo que necesito!

¡Solo quiero que la matriz muestre los mismos puntos de datos que la tabla Riesgo / Oportunidades!

En la captura de pantalla con TopN = 5, la tabla muestra 6 riesgos.

Solo quiero que la matriz muestre estos 6 riesgos de acuerdo con su respectivo impacto / probabilidad. En la captura de pantalla que envió, muestra 2 + 1 + 1 + 8 + 4 + 3 = 19 riesgos

Deja un comentario

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