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 a toda la comunidad,
Si alguien me pudiese arrojar luz sobre la solución a la problemática que tengo se lo agredecería:
Resulta que me gustaría poder realizar un gráfico para ver la variación porcentual de unos productos respecto al valor inicial de enero de 2020 (Enero 2020=100%). Tengo una columna donde estan todos los precios por producto i mes. Resulta que esa diferencia porcentual debiese tener en cuenta que existen diversos productos (columna productos) y no debiese realizarse el cálculo para todas las filas igual, sinó considerando el tipo de producto. No logro mediante el editor llegar a ninguna solución.
Ejemplo abajo (obtener la columna base 100):
Producto | Fecha | Precio | Base 100 (lo que se quiere) |
A | Enero 2020 | 90 | 100% |
A | Febrero 2020 | 100 | x% |
A | Marzo 2020 | 110 | x% |
A | Abril 2020 | 120 | x% |
A | Mayo 2020 | 140 | x% |
B | Enero 2020 | 200 | 100% |
B | Febrero 2020 | 240 | x% |
B | Marzo 2020 | 230 | x% |
B | Abril 2020 | 250 | x% |
B | Mayo 2020 | 270 | x% |
Muchas gracias
Un saludo
Solved! Go to Solution.
Hay @Syndicate_Admin ,
Estos son los pasos que puede seguir:
1. Crear medida.
Flag =
var _min=
CALCULATE(MIN('Table'[Date]),FILTER(ALL('Table'),'Table'[Category]=MAX('Table'[Category])))
var _currentvalue=
CALCULATE(SUM('Table'[Price]),FILTER(ALL('Table'),YEAR('Table'[Date])=YEAR(MAX('Table'[Date]))&&
MONTH('Table'[Date])=MONTH(MAX('Table'[Date]))&&
'Table'[Category]=MAX('Table'[Category])
&&'Table'[Product]=MAX('Table'[Product])))
var _minvalue=
CALCULATE(SUM('Table'[Price]),FILTER(ALL('Table'),MONTH('Table'[Date])=MONTH(_min)
&&YEAR('Table'[Date])=YEAR(_min)
&&'Table'[Category]=MAX('Table'[Category])
&&'Table'[Product]=MAX('Table'[Product])))
return
(_currentvalue-_minvalue)/_minvalue+1)
2. Resultado:
Al elegir Producto, comenzará desde el 100%:
Saludos
Liu Yang
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente
Hay @Syndicate_Admin ,
Estos son los pasos que puede seguir:
1. Crear medida.
Flag =
var _min=
CALCULATE(MIN('Table'[Date]),FILTER(ALL('Table'),'Table'[Category]=MAX('Table'[Category])))
var _currentvalue=
CALCULATE(SUM('Table'[Price]),FILTER(ALL('Table'),YEAR('Table'[Date])=YEAR(MAX('Table'[Date]))&&
MONTH('Table'[Date])=MONTH(MAX('Table'[Date]))&&
'Table'[Category]=MAX('Table'[Category])
&&'Table'[Product]=MAX('Table'[Product])))
var _minvalue=
CALCULATE(SUM('Table'[Price]),FILTER(ALL('Table'),MONTH('Table'[Date])=MONTH(_min)
&&YEAR('Table'[Date])=YEAR(_min)
&&'Table'[Category]=MAX('Table'[Category])
&&'Table'[Product]=MAX('Table'[Product])))
return
(_currentvalue-_minvalue)/_minvalue+1)
2. Resultado:
Al elegir Producto, comenzará desde el 100%:
Saludos
Liu Yang
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente
Hay @Syndicate_Admin ,
Estos son los pasos que puede seguir:
1. Crear medida.
Measure =
var _min=CALCULATE(MIN('Table'[Date]),FILTER(ALL('Table'),'Table'[Product]=MAX('Table'[Product])))
var _currentvalue=CALCULATE(SUM('Table'[Price]),FILTER(ALL('Table'),MONTH('Table'[Date])=MONTH(MAX('Table'[Date]))&&'Table'[Product]=MAX('Table'[Product])))
var _minvalue=CALCULATE(SUM('Table'[Price]),FILTER(ALL('Table'),MONTH('Table'[Date])=MONTH(_min)&&'Table'[Product]=MAX('Table'[Product])))
return
(_currentvalue-_minvalue)/_minvalue+1
2. Resultado:
¿Coincide con el resultado esperado?
Saludos
Liu Yang
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente
Estimado Liu,
Excelente, muchas gracias, ya estoy muy cerca de lo que necesito, pero debería añadir dos factores más a la ecuación para que obtenga lo que necesito:
1) En la base de datos, además de meses trabajo con años; del 2020 al 2022. Como debería modificar el DAX? En la actualidad el gráfico me queda así. Puedes observar que en el año 2021, vuelven todos los datos al 100% de nuevo.
2) Cuando selecciono un producto individual por filtro el gráfico se me transforma y en muchas ocasiones no me parte de valor 100 (ver ejemplos). Hay que considerar que los productos forman parte de categorías de famiílias y subfamílias además:
Muchas gracias
Un saludo
AMB
La tabla que se parecería al problema que tengo sería algo parecido a esto:
Category | Producto | Fecha | Precio | Base 100 |
1 | A | Enero 2020 | 90 | 100% |
1 | A | Febrero 2020 | 100 | x% |
1 | A | Marzo 2020 | 110 | x% |
1 | A | Abril 2020 | 120 | x% |
1 | A | Mayo 2020 | 140 | x% |
1 | A | Diciembre 2020 | 150 | x% |
1 | A | Enero 2021 | 160 | x% |
1 | A | Marzo 2021 | 165 | x% |
1 | A | Julio 2021 | 173 | x% |
1 | A | Diciembre 2021 | 180 | x% |
1 | A | Enero 2022 | 185 | x% |
1 | B | Enero 2020 | 200 | 100% |
1 | B | Febrero 2020 | 240 | x% |
1 | B | Marzo 2020 | 230 | x% |
1 | B | Abril 2020 | 250 | x% |
1 | B | Enero 2021 | 265 | x% |
1 | B | Diciembre 2021 | 270 | x% |
1 | B | Enero 2021 | 290 | x% |
2 | C | Enero 2020 | 5 | 100% |
2 | C | Enero 2021 | 7 | x% |
2 | C | Enero 2022 | 8 | x% |
2 | D | Enero 2020 | 24 | 100% |
2 | D | Enero 2021 | 26 | x% |
2 | D | Enero 2022 | 31 | x% |
Muchas gracias
Un saludo
AMB
@Syndicate_Admin es muy difícil entender la imagen que compartiste, será más fácil si compartes los datos en formato de tabla y explicas lo que estás buscando.
Lea esta publicación para obtener su respuesta rápidamente.
https://community.powerbi.com/t5/Community-Blog/How-to-Get-Your-Question-Answered-Quickly/ba-p/38490
Done
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 | |
2 | |
2 | |
2 | |
1 |