Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hola
Este es mi caso, es un poco denso pero trataré de explicarlo tan claramente como sea posible.
Me gustaría calcular una variable llamada GoodProdTime. De acuerdo con mi fórmula teórica, GoodProdTime - Kg de buena producción / Velocidad Nominal. El problema al que me enfrento es que este cálculo debe hacerse de forma independiente por cada orden de proceso (PO), ya que cada orden de proceso tendrá una cantidad diferente de kg de buena producción, pero también una velocidad nominal diferente. Para ponerlo en una fórmula esto es lo que me gustaría hacer (según un filtro de tiempo que estoy aplicando):
A partir de ahora, lo que puedo calcular es el siguiente:
La forma en que calculo esta segunda fórmula es la siguiente:
GoodProdTime ?
CALCULATE(SUM('ng SC_EGR_EGR_BAT'[QuantityFP]),'ng SC_EGR_EGR_BAT'[Invertir] á "", FORMAT('ng SC_EGR_EGR_BAT'[Rework],BLANK()) á "False"))
/
CALCULATE(AVERAGE('ng PoMixParameter'[parameter2Value]),'ng PoMixParameter'[phaseType] á "YBN1", 'ng PoMixParameter'[parameter2Id] á "BaseQuantity"
Como puedes ver lo que estoy haciendo es calcular el sumatorio de kgs (QuantityFP) de acuerdo con algunos filtros de su tabla y dividirlo por el promedio de velocidades nominales según algunos filtros también.
Hay una variable que vincula las dos tablas, vinculando el idPO de la tabla 'ng SC-EGR-EGR-BAT' con el idPO de la tabla 'ng PoMixParameter', que es la tabla que almacena la velocidad nominal por cada OP.
He tratado de explicarlo tan bien como sea posible, si alguno de ustedes tiene alguna duda por favor hágamelo saber y estaré encantado de responder a ellos.
¿Hay alguien que pueda ayudarme con esta fórmula? Cualquier ayuda sería muy apreciada!
Gracias de antemano,
Guerau
@GuerauFF ¡Me encantan las operaciones! Por favor, publique los datos de muestra y la salida esperada. Sé que es un poco un dolor, pero hace que el tiempo de resolución 10 veces más rápido y 100% más preciso. Por favor, yo en respuesta. ¡Me encantan este tipo de problemas!
Hola @Greg_Deckler !
¡Me encanta tu entusiasmo con este caso de uso! La fórmula está funcionando bien, es el resultado que no está saliendo bien.
Lamentablemente debido a problemas de cumplimiento con mi empresa no se me permite compartir el conjunto de datos original, pero he creado una versión más simple que representa el mismo problema para que pueda ver lo que quiero decir.
Adjunto el archivo pbix y el conjunto de datos de Excel (con el resultado esperado como usted dijo). Creo que te atorré acceso correctamente, si no me lo hago saber y lo haré de nuevo (podría enviarlos a ti por correo electrónico si es necesario).
¡Espero que puedas ayudarme!
Guerau
https://drive.google.com/file/d/1LpNhwRC1fRGqi7Oh8dpfYXa5nMf37_Zg/view?usp=sharing
https://drive.google.com/file/d/1ss8WDZ8kXDOmCITi0SPPX1WauAK75CUS/view?usp=sharing
@GuerauFF - OK, si entiendo esto correctamente esto no fue malo en absoluto. Consulte GoodProdTimeAll medida. PBIX se adjunta debajo de sig.
GoodProdTimeAll =
VAR __Table =
ADDCOLUMNS(
ADDCOLUMNS(
'Hoja1',
"__PHM",[PHM]
),
"__GoodProdTime",DIVIDE([Quantity],[__PHM],0)
)
RETURN
SUMX(__Table,[__GoodProdTime])
Gracias por la ayuda @Greg_Deckler !
Tengo una duda todavía aunque... ¿Cómo aplicarías los filtros que mencioné? Tanto la cantidad como la velocidad nominal deben filtrarse de acuerdo con ciertas especificaciones en algunas de las otras columnas de su tabla.
El conjunto de datos original es bastante más complejo que este ejemplo y me resulta difícil aplicar la solución.
Realmente apreciar su ayuda, sin embargo, sería increíble si pudiéramos hacer esto!
@GuerauFF Debe haber perdido la parte sobre los filtros, tendrá que explicar que sea por favor. He observado dónde se podrían aplicar filtros específicos, aunque nada en esta medida rompe el contexto del filtro por lo que debe ser capaz de usarlo en casi cualquier lugar:
GoodProdTimeAll =
VAR __Table =
ADDCOLUMNS(
ADDCOLUMNS(
'Hoja1', //You could use FILTER('Hoja1',<filters go here>)
"__PHM",[PHM]
),
"__GoodProdTime",DIVIDE([Quantity],[__PHM],0)
)
RETURN
SUMX(__Table,[__GoodProdTime]) //You could apply filters here SUMX(FILTER(__Table,<filters>),[GoodProdTime])
Ya veo, gracias por la respuesta.
Sólo falta una cosa. Cuando introduzme la fórmula que sugeriste, en el campo Cantidad no la identifica como una variable válida. Esta es la fórmula que estoy usando con mis propias tablas.
GoodProdTimeAll ?
VAR __Table ?
ADDCOLUMNS(
ADDCOLUMNS(
«Tabla de medidas»,
"__PHM",[PHM-EGR2]
),
"__GoodProdTime",DIVIDE('ng SC_EGR_EGR_BAT'[QuantityFP],[__PHM],0)
)
devolución
SUMX(__Table,[__GoodProdTime])
La parte en la que hago la división no me permite hacer ese cálculo. La variable QuantityFP está formateada como un número, así que esperaba que funcionara bien, ¿sabes lo que podría estar pasando?
No estoy seguro de qué me estoy perdiendo porque parece que sólo estoy copiando su fórmula y cambiando los nombres de las variables.
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
1 | |
1 |