Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more.
Get startedGrow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.
Hola Comunidad,
Estoy trabajando en un proyecto que calcula un impacto total de la mezcla al comparar datos entre 2 períodos seleccionados. Tengo medidas que calculan todo el componente, pero no puedo resumirlas como un total. ¿Hay alguna manera de hacerlo?
A continuación se muestran los datos ficticios.
Tabla de hechos
ID de período | Estado | Tipo | Tipo |
1 | acerca de | Volumen | 10000 |
1 | acerca de | Costo | 50000 |
1 | Ny | Volumen | 1500 |
1 | Ny | Costo | 15000 |
2 | acerca de | Volumen | 8000 |
2 | acerca de | Costo | 45000 |
2 | Ny | Volumen | 3000 |
2 | Ny | Costo | 20000 |
2 | Tx | Volumen | 1000 |
2 | Tx | Costo | 6000 |
3 | Ny | Volumen | 2500 |
3 | Ny | Costo | 10000 |
3 | Tx | Volumen | 1000 |
3 | Tx | Costo | 5000 |
El usuario usará 2 segmentaciones de datos para seleccionar datos para una comparación. Estas segmentaciones de datos son ID de período. Supongamos que un usuario selecciona peiord 1 en la #1 de segmentación y el período 2 en la segmentación #2
Las lógicas de cálculo:
Período 1 | |||
Estado | Vuelo | Costo | Avg |
acerca de | 10000 | 50000 | 5 |
Ny | 1500 | 15000 | 10 |
Tx | 0 | 0 | 0 |
Total | 11500 | 65000 | 5.652174 |
Período 2 | |||
Estado | Vuelo | Costo | Avg |
acerca de | 8000 | 45000 | 5.625 |
Ny | 3000 | 20000 | 6.666667 |
Tx | 1000 | 6000 | 6 |
Total | 12000 | 71000 | 5.916667 |
Primero encontramos un total de Volumen, Costo y Promedio para cada período. Estas son las medidas
Ahora, tenemos que encontrar un porcentaje de un volumen de cada estado en comparación con un total de todo el estado en un período. Luego, encontramos lo que un cambio porcentual de cada estado entre 2 períodos
% de vuelo | |||
Estado | Período 1 | Período 2 | Chg |
acerca de | 0.8695652 | 0.666666667 | -0.2029 |
Ny | 0.1304348 | 0.25 | 0.119565 |
Tx | 0 | 0.083333333 | 0.083333 |
Total | 1 | 1 | 0 |
Una vez que tengamos un porcentaje diferente de cada estado, indicaremos el impacto del volumen. Para ello, usamos un porcentaje diferente multiplicar por un volumen total de todo el estado desde el período #1
Para encontrar el impacto de costo medio de cada estado, usamos el promedio de costo estatal del período #1 restar por un costo promedio total del período #1. Dado que TX no tenía un costo promedio en el período #1, usamos el costo promedio tx del período #2 y restamos por un costo promedio total del período #1.
Impacto De Dol | |||
Estado | Vol Impact | Impacto medio | |
acerca de | -2333.3333 | -0.65217391 | 1521.739 |
Ny | 1375 | 4.347826087 | 5978.261 |
Tx | 958.33333 | 0.347826087 | 333.3333 |
Total | 7833.333 |
Una vez que tengamos Impacto Vol y Impacto Promedio, calcularemos el Impacto Dol multiplicando El Impacto Vol por Impacto Promedio y luego sumaremos todo el Impacto Dol del estado para obtener nuestro Impacto Dol total.
Aquí está mi código de medida Dol Impact
Impacto de Dol (Dol Impact)
Hola @Maxemus2000
Cuando se desea una medida calculada en una cierta granularidad entonces sumada, normalmente utilizaría SUMX.
El primer argumento de SUMX debe ser una tabla que contenga filas que representen la granularidad del cálculo (en el estado del caso) y el segundo argumento debe ser el propio cálculo.
En su caso, tiene un par de opciones:
1. Escriba otra medida que importe la medida original por Estado, y utilice esta nueva medida en sus objetos visuales:
Dol Impact Summed by State =
SUMX (
VALUES ( FactTable[State] ),
[Dol Impact]
)
2. Vuelva a escribir la medida original para que suma por Estado:
Dol Impact =
SUMX (
VALUES ( FactTable[State] ),
VAR Vol1_Pct = [Volume Sel 1] / [Total Volume Sel 1]
VAR Vol2_Pct = [Volume Sel 2] / [Total Volume Sel 2]
VAR Pct_Diff = Vol1_Pct - Vol2_Pct
VAR Vol_Impact = Pct_Diff * [Total Volume Sel 1]
VAR AvgCost_Impact =
IF ( [Volume Sel 1] <> 0, [Avg Cost Sel 1], [Avg Cost Sel 2] )
- IF ( [Total Volume Sel 1] <> 0, [Total Avg Cost Sel 1], [Total Avg Cost Sel 2] )
VAR Dollar_Impact = Vol_Impact * AvgCost_Impact
RETURN
Dollar_Impact
)
Notas:
saludos
Owen
@OwenAuger,
¡Gracias por tu ayuda! Usé la opción #1and funciona muy bien. Anteriormente estaba tratando de hacer SUMX después de la devolución en el cálculo de la medida Dol Impact y no funcionó. Tal vez utilicé el componente de estado de una tabla diferente (error de novato).
Tengo una pregunta más, si no te importa responder. En lugar de los detalles del estado, ¿qué pasa si quiero hacer los detalles de Estado y Tienda? ¿Qué necesito agregar/cambiar cuando calculo la suma total usando SUMX?
Esas son buenas noticias 🙂
Si tiene State & Store definiendo su granularidad, normalmente usaría RESUME para crear una tabla de combinaciones existentes y SUMX sobre eso:
Dol Impact Summed by State =
SUMX (
SUMMARIZE( FactTable, FactTable[State], FactTable[Store] ),
[Dol Impact]
)
Notas:
saludos
Owen 🙂
@OwenAuger
Gracias de nuevo por ayudar. Usé SUMX anidado y me dio "NaN" como resultado. Supongo que podría haber algún error de cálculo en alguna parte.
Por otro lado, he probado la solución SUMMARIZE que ha proporcionado, me dio 0 como un total. ¿Esto está relacionado con el "error de cálculo"?
Además, ¿puede educarme sobre por qué necesito crear otra medida para calcular el dólar total? Intenté añadir la misma declaración SUMX después de RETURN en el Impacto Dol y me dio 0 en lugar del total.
Tengo el error naN cuidando de.
Algunos de los datos estaban en blanco y A PBI no le gusta cuando hago "A / B". Por lo tanto, usé DIVIDE(A, B, 0) en su lugar.
Eso es bueno 🙂
¿El método SUMMARIZE sigue dando un resultado cero?
Para depurar, crearía un objeto visual de tabla o matriz con State & Store, además de la medida final mediante RESUME.
Los valores de medida individuales deben sumar al total, y usted será capaz de ver por qué se compensan a cero.
Sí, el verano todavía me está dando 0. Puse esto en una tabla de matriz y muestra todo 0.
Gracias, no estoy seguro de qué está causando eso, algo en la lógica del cálculo [Dol Impact].
¿Puede compartir un archivo pbix de muestra (con datos desinfectados si es necesario) que muestre este problema?
saludos
Owen
Desafortunadamente, debido a la crisis de tiempo y la privacidad de los datos, no puedo compartir mi archivo .pbix original y no tengo suficiente tiempo para replicarlo con datos ficticios. El ejemplo es más o menos usando el cálculo exacto que proporcioné. Por ahora, el SUMX anidado ha hecho el trabajo. Voy a buscar una solución SUMMRIZE cuando tenga tiempo. Gracias por toda su ayuda 🙂
Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.
Ask questions in Eventhouse and KQL, Eventstream, and Reflex.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
3 | |
1 | |
1 | |
1 | |
1 |