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, chicos
Necesito ayuda para obtener esta tabla (mi objetivo es calcular la diferencia de % de la columna):
14/04/2022 | 14/04/2023 | % de diferencia | |
Presupuesto | 1000000 | 1100000 | 9% |
Asignado | 750000 | 700000 | -7% |
Contratado | 300000 | 350000 | 14% |
Mi problema es que en la tabla original tengo datos en este formato:
Categoría | Valor | Fecha |
Presupuesto | 1000000 | 14/04/2022 |
Asignado | 750000 | 14/04/2022 |
Contratado | 300000 | 14/04/2022 |
Presupuesto | 1100000 | 14/04/2023 |
Asignado | 700000 | 14/04/2023 |
Contratado | 350000 | 14/04/2023 |
Creo un modelo de datos que permite a mi usuario seleccionar un mes (en este caso abril) y puedo filtrar automáticamente mi tabla de datos con dos conjuntos de datos de abril de 2023 y la misma fecha en 2022.
Entonces, ¿cómo puedo hacer referencia en una nueva medida a la fecha que generará la segmentación de datos cuando seleccione un mes?
Tks por adelantado,
M
@Greg_Deckler Tengo Categoría en mi visual, pero como puedes ver en la captura de pantalla tengo dos fechas filtradas por una sola columna en la tabla original (el nombre de la columna es Datos).
Necesito referirme a estas dos fechas, para cada categoría, y calcular la diferencia porcentual.
Tks,
@MattiaMaetini Suponía que ibas a tener Categoría en algún tipo de visual. ¿No es así? Si no es así, ¿está creando una tabla calculada o ???
Ahora que me has hecho saber sobre una tabla adicional, puedes hacer esto:
Measure =
VAR __Category = MAX('Table'[Category])
VAR __Value = MAX('Table'[Value])
VAR __Date = MAX('Table'[Date])
VAR __LYDate =
MAXX(
FILTER(
'DatesTable',
YEAR([Date]) = YEAR(__Date) - 1 &&
[Month] = MONTH(__Date)
),
[Date]
)
VAR __LYValue = MAXX(FILTER('Table', [Category] = __Category && [Date] = __LYDate), [Value])
VAR __Result = DIVIDE( __Value - __LYValue), __LYValue)
RETURN
__Result
@Greg_Deckler dos preguntas:
1) La fórmula para calcular la fecha no pudo funcionar porque las dos fechas no necesariamente se refieren al mismo día: Tengo una tabla donde almacené estas informaciones (para cada mes creo dos registros, uno para cada año):
Fecha | Mes | Month_Label |
14/04/2022 | 4 | Abril |
14/04/2023 | 4 | Abril |
2) MAX (Categoría) podría funcionar solo para una categoría, necesito iterar para todos los valores para obtener mi objetivo
Tks
@MattiaMaetini Prueba algo como:
Measure =
VAR __Category = MAX('Table'[Category])
VAR __Value = MAX('Table'[Value])
VAR __Date = MAX('Table'[Date])
VAR __LYDate = DATE(YEAR(__Date) - 1, MONTH(__Date), DAY(__Date))
VAR __LYValue = MAXX(FILTER('Table', [Category] = __Category && [Date] = __LYDate), [Value])
VAR __Result = DIVIDE( __Value - __LYValue), __LYValue)
RETURN
__Result
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 |