highxsky
Hola a todos,
Estoy tratando de etiquetar un grupo de filas según el valor de una columna para la primera fila.
Esta es una tabla de datos de pedidos, que se ve así:
Número de orden | Fase | Modo de revisión |
123ABC | 1 | Revisión manual |
123ABC | 2 | Revisión automatizada |
123ABC | 3 | Revisión automatizada |
123ABC | 4 | Revisión automatizada |
456DEF | 1 | Revisión automatizada |
456DEF | 2 | Revisión automatizada |
456DEF | 3 | Revisión manual |
456DEF | 4 | Revisión manual |
Entonces, lo que me gustaría hacer es etiquetar cada Número de pedido, en una nueva columna calculada, según el modo de revisión durante la fase 1, por ejemplo:
123ABC -> «Revisión manual»
456DEF -> «Revisión automatizada»
Por lo que he visto, muchas personas tienen problemas similares pero con valores numéricos o de fecha y tienden a usar CALCULATE y MAX / MIN, por ejemplo.
En ese caso, trabajo con valores de cadena y tengo varias columnas como esa que me gustaría evaluar, así que trataría de evitar reemplazar cadenas por equivalentes numéricos (es decir, «automatizado» = 0, «manual» = 1) .
¿Tiene alguna sugerencia / pista sobre cómo lidiar con esto?
Gracias por adelantado,
Saludos,
Pierre
v-alq-msft
Hola, @highxsky
Según su descripción, puede crear una columna calculada o una medida como se muestra a continuación.
Calculated column:
Result Column =
var _ordernumber="Table"[Order Number]
return
CALCULATE(
MAX('Table'[Review Mode]),
FILTER(
ALL('Table'),
'Table'[Order Number] = _ordernumber&&
'Table'[Phase] =
CALCULATE(
MIN('Table'[Phase]),
FILTER(
ALL('Table'),
'Table'[Order Number] = _ordernumber
)
)
)
)
Measure:
Result Measure =
var _ordernumber = SELECTEDVALUE('Table'[Order Number])
return
CALCULATE(
MAX('Table'[Review Mode]),
FILTER(
ALL('Table'),
'Table'[Order Number] = _ordernumber&&
'Table'[Phase] =
CALCULATE(
MIN('Table'[Phase]),
FILTER(
ALL('Table'),
'Table'[Order Number] = _ordernumber
)
)
)
)
Resultado:
Atentamente
Alano
Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.
v-alq-msft
Hola, @highxsky
Según su descripción, puede crear una columna calculada o una medida como se muestra a continuación.
Calculated column:
Result Column =
var _ordernumber="Table"[Order Number]
return
CALCULATE(
MAX('Table'[Review Mode]),
FILTER(
ALL('Table'),
'Table'[Order Number] = _ordernumber&&
'Table'[Phase] =
CALCULATE(
MIN('Table'[Phase]),
FILTER(
ALL('Table'),
'Table'[Order Number] = _ordernumber
)
)
)
)
Measure:
Result Measure =
var _ordernumber = SELECTEDVALUE('Table'[Order Number])
return
CALCULATE(
MAX('Table'[Review Mode]),
FILTER(
ALL('Table'),
'Table'[Order Number] = _ordernumber&&
'Table'[Phase] =
CALCULATE(
MIN('Table'[Phase]),
FILTER(
ALL('Table'),
'Table'[Order Number] = _ordernumber
)
)
)
)
Resultado:
Atentamente
Alano
Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.
Greg_Deckler
https://community.powerbi.com/t5/Quick-Measures-Gallery/Lookup-Min-Max/td-p/985814
highxsky
En respuesta a Greg_Deckler
Hola Greg,
gracias por la respuesta y el enlace.
En mi caso, estoy tratando de recuperar el valor de la primera fila del artículo A y aplicarlo a cada fila de la fila del artículo A.
He intentado algunas manipulaciones con su modelo, pero sin obtener el resultado deseado.
La primera parte de la consulta, con un ligero giro de FILTRO, funciona bien, obtengo el resultado que estoy buscando.
Sin embargo, la segunda parte de la consulta es otra historia.
Parte 1, estudio DaX, salida OK
Parte 2, Power Query, salida KO
¿Podría darme más sugerencias para que pueda resolver ese problema?
Gracias de nuevo,
Pierre