Get certified in Microsoft Fabric—for free! For a limited time, the Microsoft Fabric Community team will be offering free DP-600 exam vouchers. Prepare now
Hola a todos
Estoy buscando ayuda para seleccionar datos de una fila, usarlos para seleccionar datos en otra fila y, a continuación, realizar un cálculo. Tenemos datos de contrato. Cada contrato puede tener varias líneas principales y, a continuación, cada línea principal tiene sublíneas correspondientes. Necesito tomar datos de una línea principal específica y encontrar la primera línea correspondiente, y usar datos de ella para realizar un cálculo.
Número de contrato | Número de artículo de línea | Material ID | Material | Indicador principal/sub | Cantidad objetivo de artículo de línea | Cantidad de destino de artículo de línea UOM | Valor objetivo de partida individual |
41596 | 100 | PN-C01522 | Servicio de contratos de mantenimiento | M | 1 | Ea | 54815 |
41596 | 110 | PN-C20155 | Contrato 1.0 Trabajo | S | 330.11 | Horas | 54815.12 |
41596 | 120 | PN-C20155 | Contrato 1.0 Trabajo | S | 1 | Horas | 166.05 |
41596 | 130 | PN-C20161 | Contrato 1.5A OT Trabajo | S | 1 | Horas | 249.08 |
41596 | 140 | PN-C20161 | Contrato 1.5A OT Trabajo | S | 1 | Horas | 249.08 |
41596 | 150 | PN-C20163 | Contrato 2.0A OT Trabajo | S | 1 | Horas | 332.1 |
41596 | 160 | PN-C20163 | Contrato 2.0A OT Trabajo | S | 1 | Horas | 332.1 |
1. En primer lugar, necesito encontrar el indicador principal/sub M que también tiene PN-C01522 y usar el valor objetivo de partida individual
2. Entonces, dada la línea principal que coincide con este criterio es el número de partida de línea 100, busque el siguiente en la secuencia Número de artículo de línea de línea (en este caso, 110), por lo que el indicador principal/sub S y asegúrese de que el ID de material sea PN-C20155 y tome la cantidad de destino de artículo de línea de 330.11.
3. Luego quiero dividir el valor objetivo de partida individual por la cantidad objetivo de artículo de línea.
Los resultados se verían así (1a fila, basada en lo anterior):
Número de contrato | Valor objetivo de partida individual | Cantidad de derechos | Por unidad |
41596 | 54815 | 330.11 | 166.05 |
99999 | 2500 | 25 | 100.00 |
88888 | 6000 | 58 | 103.45 |
¿Alguien sabe una forma fácil de hacer esto?
hola @Shelley
Por favor, intente crear dos medidas como se indica a continuación:
Entitlement Qty =
VAR _nextlinenumber=CALCULATE(MIN('Table'[Line Item Number]),FILTER(ALLEXCEPT('Table','Table'[Contract Number]),'Table'[Line Item Number]>MAX('Table'[Line Item Number])))
return
CALCULATE(SUM('Table'[Line Item Target Quantity]),FILTER(ALLEXCEPT('Table','Table'[Contract Number]),'Table'[Line Item Number]=_nextlinenumber))
Per Unit = DIVIDE(CALCULATE(SUM('Table'[Line Item Target Value])) ,[Entitlement Qty],0)
Resultado:
y aquí está el archivo pbix de muestra, por favor pruébelo.
saludos
Lin
@Greg_Deckler ¡Gracias! Esto parece funcionar, pero nuestros datos son escasos y por lo que necesito asegurarme de que esto es robusto. ¿Hay alguna posibilidad, por favor, podría explicar lo que cada expresión está haciendo? Intento usar los documentos de referencia de Microsoft, pero por lo general son imposibles de entender con respecto a la aplicación.
@Greg_Deckler ¡Gracias! Su sugerencia parece funcionar para el artículo #1, pero ¿cómo hago el artículo 2? Es decir, ¿cómo selecciono el siguiente número de partida individual en secuencia (110) y, a continuación, agarro la cantidad de artículo de línea de esa fila y solo esa fila?
Check out the October 2024 Power BI update to learn about new features.
Learn from experts, get hands-on experience, and win awesome prizes.