Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
Hola equipo,
Tengo los siguientes datos de ejemplo. Tengo que calcular la columna de rango (última columna resaltada) en función de las medidas: orden colocado, pedidos fallidos, diferencia. El artículo es la primera categoría, desglosada por subcategoría de artículos. Y el ranking debe agruparse por estas 2 categorías.
artículo | subelemento | llave | estado del pedido | pedidos realizados = recuento de claves en función del artículo, subelemento | failed orders=recuento de claves donde erroró el estado del pedido | diferencia = orden realizada-orden fallida | rango basado en el orden colocado, pedidos fallidos, diferencia agrupada por artículo y subelemento o rango = diff más alto obtiene el 1er rango, seguido del siguiente más alto como 2do rango y así sucesivamente. basado en el elemento, subelemento |
A | 2 | 1 | 1 | 3(El elemento A obtiene el 3º rango basado en la 3ª diferencia más alta en todos los elementos) | |||
regla 1 | 111 | éxito | 2 | ||||
regla 1 | 112 | fracasado | 2 | 1 | 1 | i (dentro del ítem Una regla 1 obtiene el 1er rango basado en la diferencia y agrupado por ítem, subelemento) | |
B | 5 | 3 | 2 | 2 (el elemento B obtiene el 2º rango basado en la 2ª diferencia más alta en todos los elementos) | |||
regla 1 | 113 | fracasado | 1 | 1 | 0 | ||
regla 2 | 114 | éxito | 4 | ||||
regla 2 | 115 | fracasado | 4 | 3 | 1 | i (dentro del ítem B regla 2 obtiene el 1er rango basado en la diferencia y agrupado por ítem,subelemento) | |
regla 2 | 128 | fracasado | 4 | 3 | 1 | i | |
regla 2 | 116 | fracasado | 4 | 3 | 1 | i | |
C | 11 | 4 | 7 | 1 (el elemento C obtiene el 1er rango basado en la diferencia) | |||
regla 1 | 117 | éxito | 4 | ||||
regla 1 | 118 | éxito | 4 | ||||
regla 1 | 119 | éxito | 4 | ||||
regla 1 | 120 | éxito | 4 | ||||
regla 2 | 121 | fracasado | 2 | 1 | 1 | Ii (dentro del ítem C regla 2 obtiene el 2º rango basado en la diferencia y agrupado por ítem,subelemento) | |
regla 2 | 122 | éxito | 2 | ||||
Artículo 3 | 123 | éxito | 5 | ||||
Artículo 3 | 124 | éxito | 5 | ||||
Artículo 3 | 125 | fracasado | 5 | 3 | 2 | i (dentro del ítem C la regla 3 obtiene el 1er rango basado en la primera diferencia más alta y agrupado por ítem, subelemento) | |
Artículo 3 | 126 | fracasado | 5 | 3 | 2 | i | |
Artículo 3 | 127 | fracasado | 5 | 3 | 2 | i |
Gracias de antemano.
Solved! Go to Solution.
Hola
No estoy seguro de si entendí su pregunta correctamente, pero por favor revise la imagen de abajo y el archivo pbix adjunto.
Todas las medidas están en el archivo pbix adjunto.
Orders placed: =
SWITCH (
TRUE (),
ISINSCOPE ( Data[Sub_Item_Key] ), SUM ( Data[Orders Placed] ),
COUNTROWS ( VALUES ( Data[Key] ) )
)
Orders failed: =
SWITCH (
TRUE (),
ISINSCOPE ( Data[Sub_Item_Key] ), SUM ( Data[Failed Orders] ),
CALCULATE ( COUNTROWS ( VALUES ( Data[Key] ) ), Data[Order Status] = "Failed" )
)
Difference: =
( [Orders placed:] - [Orders failed:] )
* DIVIDE ( [Orders failed:], [Orders failed:] )
Ranking: =
VAR currentitem =
MAX ( Data[Item] )
VAR subitemkeytable =
CALCULATETABLE (
SUMMARIZE ( ALL ( Data ), Data[Sub_Item_Key] ),
Data[Item] = currentitem
)
VAR itemtable =
SUMMARIZE ( ALL ( Data ), Data[Item] )
RETURN
SWITCH (
TRUE (),
ISINSCOPE ( Data[Sub_Item_Key] ), RANKX ( subitemkeytable, [Difference:],, DESC, DENSE ),
ISINSCOPE ( Data[Item] ), RANKX ( itemtable, [Difference:],, DESC, DENSE )
)
* DIVIDE ( [Difference:], [Difference:] )
Hola
No estoy seguro de si entendí su pregunta correctamente, pero por favor revise la imagen de abajo y el archivo pbix adjunto.
Todas las medidas están en el archivo pbix adjunto.
Orders placed: =
SWITCH (
TRUE (),
ISINSCOPE ( Data[Sub_Item_Key] ), SUM ( Data[Orders Placed] ),
COUNTROWS ( VALUES ( Data[Key] ) )
)
Orders failed: =
SWITCH (
TRUE (),
ISINSCOPE ( Data[Sub_Item_Key] ), SUM ( Data[Failed Orders] ),
CALCULATE ( COUNTROWS ( VALUES ( Data[Key] ) ), Data[Order Status] = "Failed" )
)
Difference: =
( [Orders placed:] - [Orders failed:] )
* DIVIDE ( [Orders failed:], [Orders failed:] )
Ranking: =
VAR currentitem =
MAX ( Data[Item] )
VAR subitemkeytable =
CALCULATETABLE (
SUMMARIZE ( ALL ( Data ), Data[Sub_Item_Key] ),
Data[Item] = currentitem
)
VAR itemtable =
SUMMARIZE ( ALL ( Data ), Data[Item] )
RETURN
SWITCH (
TRUE (),
ISINSCOPE ( Data[Sub_Item_Key] ), RANKX ( subitemkeytable, [Difference:],, DESC, DENSE ),
ISINSCOPE ( Data[Item] ), RANKX ( itemtable, [Difference:],, DESC, DENSE )
)
* DIVIDE ( [Difference:], [Difference:] )