Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Hola
Estoy tratando de recuperar cuál es el mayor cambio de MoM en un conjunto de productos. Aquí está el enlace para el archivo.
La siguiente imagen ilustra lo que pretendo hacer.
Básicamente, el producto que más creció en febrero en comparación con enero fue Alpha (delineado en rojo), pero el que me gustaría obtener es Gamma (el que se describe en amarillo), ya que tuvo más ventas que el número establecido en el parámetro (en enero, Gamma tuvo 150 ventas, que es mayor o igual a 75, y aunque Alpha tuvo un aumento del 800% en febrero sobre enero, en enero solo vendió 1, que a su vez es menor que el valor establecido en el parámetro, 75).
Lo que en última instancia me gustaría tener es lo siguiente:
¿Alguna idea sobre cómo podría aplicarse esa medida?
Gracias de antemano.
Solved! Go to Solution.
El siguiente fragmento de código resolvió mi problema:
Largest var % =
VAR _MaxTotal =
MAXX(
SUMMARIZE(
FILTER(
ADDCOLUMNS(
VALUES( d_products[Product] ),
"@ThisMonthTotal", [Total],
"@LastMonthTotal", CALCULATE( [Total], DATEADD( d_calendar[Date], -1, MONTH ) )
),
[@LastMonthTotal] >= Prmtr[Prmtr Value]
),
d_products[Product]
),
[MoM %]
)
VAR _MaxWithTotal =
FILTER(
SUMMARIZE(
FILTER(
ADDCOLUMNS(
VALUES( d_products[Product] ),
"@ThisMonthTotal", [Total],
"@LastMonthTotal", CALCULATE( [Total], DATEADD( d_calendar[Date], -1, MONTH ) )
),
[@LastMonthTotal] >= Prmtr[Prmtr Value]
),
d_products[Product]
),
[MoM %] = _MaxTotal
)
VAR _Result = CONCATENATEX( _MaxWithTotal , d_products[Product] , ", " )
VAR _Condition = IF ( NOT ISBLANK( _MaxTotal ), _Result , BLANK() )
RETURN _Condition
El siguiente fragmento de código resolvió mi problema:
Largest var % =
VAR _MaxTotal =
MAXX(
SUMMARIZE(
FILTER(
ADDCOLUMNS(
VALUES( d_products[Product] ),
"@ThisMonthTotal", [Total],
"@LastMonthTotal", CALCULATE( [Total], DATEADD( d_calendar[Date], -1, MONTH ) )
),
[@LastMonthTotal] >= Prmtr[Prmtr Value]
),
d_products[Product]
),
[MoM %]
)
VAR _MaxWithTotal =
FILTER(
SUMMARIZE(
FILTER(
ADDCOLUMNS(
VALUES( d_products[Product] ),
"@ThisMonthTotal", [Total],
"@LastMonthTotal", CALCULATE( [Total], DATEADD( d_calendar[Date], -1, MONTH ) )
),
[@LastMonthTotal] >= Prmtr[Prmtr Value]
),
d_products[Product]
),
[MoM %] = _MaxTotal
)
VAR _Result = CONCATENATEX( _MaxWithTotal , d_products[Product] , ", " )
VAR _Condition = IF ( NOT ISBLANK( _MaxTotal ), _Result , BLANK() )
RETURN _Condition
@Pedro503 , Primero crear MOM usando Time Intelligence y estas medidas
Ventas MTD = CALCULAR(SUMA(Ventas[Importe de ventas]),DATESMTD('Fecha'[Fecha]))
last MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-1,MONTH)))
último mes Ventas = CALCULAR(SUMA(Ventas[Importe de ventas]),mes anterior('Fecha'[Fecha]))
Ventas MTD = CALCULAR(SUMA(Ventas[Importe de ventas]),DATESMTD('Fecha'[Fecha]))
last MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-1,MONTH)))
último mes Ventas = CALCULAR(SUMA(Ventas[Importe de ventas]),mes anterior('Fecha'[Fecha]))
diff = [Ventas MTD]-[últimas ventas de MTD]
diff % = divide([Ventas de MTD]-[últimas ventas de MTD],[últimas ventas de MTD])
A continuación, utilice la función index (dic-2022) para obtener el primer valor
Función de índice de Power BI: ejecutante superior/inferior por nombre y valor: https://youtu.be/HPhzzCwe10U
Gracias por su respuesta, @amitchandak
Traté de hacer lo que me sugeriste, pero no logré obtener el resultado que quería. El punto que falta, por lo que puedo ver, es el parámetro. ¿Sabe dónde se supone que debo insertar el SELECTEDVALUE() de mi parámetro para ignorar esos valores en el conjunto del parámetro "slicer"?
Una vez más, gracias por su respuesta.
User | Count |
---|---|
2 | |
2 | |
1 | |
1 | |
1 |