Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
amansinghfirstb
Helper III
Helper III

Problema al obtener % de los valores de cambio

Esta ha sido una historia desgarradora donde hasta ahora he intentado todos los trucos en el libro para obtener la respuesta, pero nada ha funcionado hasta ahora. Quiero algo como la columna F (que utiliza la columna G creada). Se proporcionan las celdas resaltadas y necesito la columna F a DAX.

la columna F calcula el cambio de orden % en la semana actual wrt el pedido promedio para las semanas anteriores. Como pueden ver

2 ACCEPTED SOLUTIONS
DataInsights
Super User
Super User

@amansinghfirstb,

Pruebe estas medidas:

Total Qty = SUM ( Orders[Qty] )

% Change = 
VAR vShipWk =
    MAX ( Orders[Schedule Ship Wk] )
VAR vDistinctShipWk =
    ALL ( Orders[Schedule Ship Wk] )
VAR vPrevShipWk =
    FILTER ( vDistinctShipWk, Orders[Schedule Ship Wk] < vShipWk )
VAR vPrevShipWkQty =
    ADDCOLUMNS ( vPrevShipWk, "TotalQty", [Total Qty] )
VAR vAverage =
    AVERAGEX ( vPrevShipWkQty, [TotalQty] )
VAR vResult =
    DIVIDE ( [Total Qty] - vAverage, vAverage )
RETURN
    vResult

DataInsights_0-1603561973545.png





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




View solution in original post

@amansinghfirstb,

Reemplace la última línea de la medida con esto para que se muestre en blanco para la fila total:

IF ( HASONEVALUE ( Orders[Schedule Ship Wk] ), vResult, BLANK() )





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




View solution in original post

15 REPLIES 15
DataInsights
Super User
Super User

@amansinghfirstb,

Pruebe estas medidas:

Total Qty = SUM ( Orders[Qty] )

% Change = 
VAR vShipWk =
    MAX ( Orders[Schedule Ship Wk] )
VAR vDistinctShipWk =
    ALL ( Orders[Schedule Ship Wk] )
VAR vPrevShipWk =
    FILTER ( vDistinctShipWk, Orders[Schedule Ship Wk] < vShipWk )
VAR vPrevShipWkQty =
    ADDCOLUMNS ( vPrevShipWk, "TotalQty", [Total Qty] )
VAR vAverage =
    AVERAGEX ( vPrevShipWkQty, [TotalQty] )
VAR vResult =
    DIVIDE ( [Total Qty] - vAverage, vAverage )
RETURN
    vResult

DataInsights_0-1603561973545.png





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




Esto no está saliendo bien.

amansinghfirstb_0-1603733592681.pngamansinghfirstb_1-1603733655188.png

@amansinghfirstb,

La línea 9 debe utilizar [Cantidad total].

La línea 11 debe utilizar [TotalQty] (sin espacio).

Se recomienda no preceder las medidas con un nombre de tabla.





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




Gracias, hice la corrección, pero ¿por qué estoy recibiendo el total así?

Capture23.PNG

La fluctuación del orden cambia ya que el 108,81% no tiene sentido. ¿Puedo quitarlo?

@amansinghfirstb,

Reemplace la última línea de la medida con esto para que se muestre en blanco para la fila total:

IF ( HASONEVALUE ( Orders[Schedule Ship Wk] ), vResult, BLANK() )





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




@DataInsights

He notado algo aquí. Cuando vuelvo a colocar la columna Business en la tabla, la fluctuación de pedidos va por un toss.

amansinghfirstb_0-1603740371440.pngamansinghfirstb_1-1603740400150.png

Idealmente, todas las empresas con un número de semana común deberían tener el mismo porcentaje de fluctuación de pedido que se calcula con respecto al total de la semana.

@amansinghfirstb,

¿Sería capaz de proporcionar el resultado esperado y cómo se calcula? Puede pegar el objeto visual de tabla en Excel y crear fórmulas que muestren la lógica de cálculo.





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




Unidad de NegociosArtículo pedidoQtyCantidad cumplidaProgramar barco Wk% de variación
AscWP-9938393910
FrenteBWP2118SP29829810
FrenteBWP2157BR343410
AscWP-3731981982941%
AscWP-490HD32322941%
AscWP-59240402941%
AscWP-6016016012941%
AscWP-6574114112941%
AscWP-715HD3283282941%
AscWP-7758598592941%
AscWP-8534164162941%
AscWP-910090902941%
AscWP-92407047042941%
AscWP-982922222941%
AscWP-986144442941%
AscWP-HD630198982941%
FrenteBWP2056BR112941%
FrenteBWP2056GP442941%
FrenteBWP2095GP332941%
FrenteBWP2115BR222941%
FrenteBWP2195BR222941%
FrenteBWP2422BR662941%
AscWP-110675753282%
AscWP-19834064063282%
AscWP-20671071073282%
AscWP-209335353282%
AscWP-22212672673282%
AscWP-22714064063282%
AscWP-23781541543282%
AscWP-24686006003282%
AscWP-26841171173282%
AscWP-366HDA84843282%
AscWP-373HDP18183282%
AscWP-413HDA663282%
AscWP-5951401403282%
AscWP-6451891893282%
AscWP-6611401403282%
AscWP-7266606603282%
AscWP-8361601603282%
AscWP-8533363363282%
AscWP-88894943282%
AscWP-90464504503282%
AscWP-91641721723282%
AscWP-92254374373282%
AscWP-9361132013203282%
AscWP-94082162163282%
AscWP-94144904903282%
AscWP-983972723282%
AscWP-9860-EA4024023282%
AscWP-993340403282%
AscWP-9939553282%
AscWP-HD60731401403282%
AscWP-TM27K610527273282%
CarreteroM60318B-01011881883282%
FrenteBWP2556BR993282%
FrenteBWP511SP223282%
FrenteBWP9240DG43433282%
FrenteWP462 SP20203282%
FrenteWP635 BLANCA113282%
FrenteWP635 SP55553282%

% de cambio de abs (suma de la cantidad de pedido para una semana determinada- promedio de la cantidad de pedido para todas las semanas anteriores)/promedio de la cantidad del pedido para todas las semanas anteriores

El código funciona bien para los filtros externos, pero cuando agredo campos dentro de la tabla comienza a dar resultados extraños. Tengo 15 campos más en los que quiero que los usuarios corten/corten los datos. Este % de datos modificados solo dependerá de la semana seleccionada.

@amansinghfirstb,

Obtengo el mismo % de cambio que usted muestra (941% y 282%), con la unidad de negocio mostrada, así como la unidad de negocio no se muestra. ¿Publicaría la medida de cambio % para que pueda ver su DAX?





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




amansinghfirstb_0-1603821335985.png

amansinghfirstb_1-1603821361877.png

Estoy sacando Total Qty1 de esta medida que desindefiné.

amansinghfirstb_2-1603821391121.png

@amansinghfirstb,

La línea 11 de su medida es incorrecta.

La línea 11 debe utilizar [TotalQty] (sin espacio). Se trata de una columna temporal que se crea con fines de cálculo.





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




Cantidad total - SUM ( Pedidos[Cantidad] )

@DataInsights ¿Te referías a esto?

¿Cómo pondría esto en la misma medida de la fluctuación del porcentaje de orden?

@amansinghfirstb,

Prueba esta medida. Lo reescribí usando los nombres de tabla/columna, y modifiqué la lógica para manejar diferentes granularidades.

Order Fluctuation % change = 
VAR vShipWk =
    MAX ( 'All Fill Rate'[Wk] )
VAR vDistinctShipWk =
    ALLSELECTED ( 'All Fill Rate'[Wk] )
VAR vTotalQty =
    CALCULATE (
        SUM ( 'All Fill Rate'[Qty] ),
        ALLEXCEPT ( 'All Fill Rate', 'All Fill Rate'[Wk] )
    )
VAR vPrevShipWk =
    FILTER ( vDistinctShipWk, 'All Fill Rate'[Wk] < vShipWk )
VAR vPrevShipWkQty =
    ADDCOLUMNS (
        vPrevShipWk,
        "tmpTotalQty",
            CALCULATE (
                SUM ( 'All Fill Rate'[Qty] ),
                ALLEXCEPT ( 'All Fill Rate', 'All Fill Rate'[Wk] )
            )
    )
VAR vAverage =
    AVERAGEX ( vPrevShipWkQty, [tmpTotalQty] )
VAR vResult =
    DIVIDE ( vTotalQty - vAverage, vAverage )
RETURN
    IF ( HASONEVALUE ( 'All Fill Rate'[Wk] ), vResult, BLANK () )

DataInsights_0-1603837180155.png





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




amansinghfirstb_0-1603839683430.png

amansinghfirstb_1-1603839704099.png

Aún no hay éxito. De hecho, incluso los valores agregados sin filtros internos están saliendo mal.

Además, ¿por qué inicializó el qty total con la suma de todos los qty excepto la semana seleccionada? (Línea 7,8) No tiene sentido.

amansinghfirstb_2-1603839735780.png

@amansinghfirstb,

La variable vTotalQty (líneas 6-9) utiliza ALLEXCEPT para eliminar los criterios de filtro de todas las columnas excepto [Wk]. Debe mantener el filtro [Wk] (de la fila actual), pero omitir los filtros de la unidad de negocio y cualquier otra columna que agregue al objeto visual.

Si pudieras subir una versión desinfectada de tu pbix, echaré un vistazo.





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors