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- Para obtener los ingresos mensuales, necesito tomar los ingresos del mes actual y restarlos de los ingresos del mes anterior.
Este cálculo ( -Monthly Rev = [ATD Revenue] - CALCULATE([ATD Revenue],PREVIOUSMONTH(Period[Period Start Date])) funciona muy bien hasta que hay una brecha en el Gl Period y luego resta esa cantidad de cero, lo que no quiero que haga. Tampoco está funcionando correctamente de diciembre a enero, ya que también está trayendo de vuelta los ingresos de ATD de ese mes en lugar de restarlos del mes anterior.
La columna naranja es lo que está trayendo de vuelta y la columna "Debería ser" es lo que me gustaría que volviera. ¿Estoy pensando que la solución puede estar envolviendo esta fórmula en una función IF?
Dado que no tiene una tabla de fechas, "no puede" usar las funciones de inteligencia de tiempo. Por lo tanto, debe codificar los cálculos de fecha.
Probar:
Valor del mes anterior =
VAR SelDate = MAX(Período [Fecha de inicio del período])
VAR SelPeriod = AÑO(SelDate) * 100 + MES(SelDate)
VAR PP = IF( MONTH(SelDate) =1, (YEAR(SelDate) -1) * 100 + 12, YEAR(SelDate) * 100 + MONTH(SelDate) -1
DEVOLUCIÓN
CALCULATE([ATD Revenue], FILTER(ALL(Period), SelPeriod = PP))
y
-Ingresos mensuales = IF(ISBLANK([Valor del mes anterior]), BLANK(), [Ingresos ATD] - [Valor del mes anterior])
PD. Disculpas por cualquier error de sintaxis. Estoy escribiendo en mi teléfono
¿Es el tipo Period[Period Start Date]?
De acuerdo, los probaré como medidas separadas. Todavía estoy recibiendo estos espacios en blanco aleatorios y no lo entiendo. Así que estoy estableciendo tiempo con alguien en TI que tal vez pueda ayudarme a descubrir qué está pasando en el cubo. Pensé que era interesante en mi fórmula -PreviousMonth2 que los espacios en blanco se alinearan con los números impares que aparecen "421", 100019" y "38420". Tal vez eso tenga algo que ver con eso.
Veo que tienes un ID de período. Prueba:
Mes anterior ATD =
VAR PP = MAX(Tabla[PRD_ID]) + 1
DEVOLUCIÓN
CALCULAR ([ATD Revenue],
FILTER(ALL(Period), Tabla [PR_ID] = PP)
)
@PaulDBrown - No tenía idea de que las funciones de Inteligencia de Tiempo no se pudieran usar sin una tabla de Fecha. Ese es un gran consejo, gracias por compartir.
Traté de generar tu código. El único error de sintaxis que apareció fue el ")" que faltaba después de -1 antes de "RETURN". La única otra cosa que @Jdokken a tener en cuenta es que los ingresos mensuales ya existen, por lo que puede valer la pena ajustar el nombre a Ingresos mensuales $ o algo más.
@PaulDBrown probablemente sea un error de mi parte, sin embargo, por alguna razón, el código solo devolvía espacios en blanco tanto para los ingresos mensuales como para el valor del mes anterior. (Tema no relacionado, su imagen de perfil es absolutamente increíble! ¡Siempre aparece en la lista de los mejores autores de Kudoed y es el primero en llamar la atención! ¡Mate de oro!)
Aquí hay una referencia de Microsoft sobre la necesidad de una tabla de fechas para las funciones de inteligencia de tiempo:
https://docs.microsoft.com/en-gb/learn/modules/dax-power-bi-time-intelligence/2-functions
¡Leyenda! Saludos para este mate.
Ok, he tenido la oportunidad de probar esto (el código necesita correcciones)
Primero cree la medida para el período anterior:
Prev Period =
VAR SelDate =
MAX ( 'Table'[Period Start Date] )
VAR PP =
IF (
MONTH ( SelDate ) = 12,
( YEAR ( SelDate ) + 1 ) * 100 + 1,
YEAR ( SelDate ) * 100
+ MONTH ( SelDate ) + 1
)
RETURN
PP
Y entonces
Previous month value =
VAR SelDate =
MAX ( 'Table'[Period Start Date] )
RETURN
CALCULATE (
[ATD Revenue],
FILTER (
ALL ( 'Table' ),
YEAR ( SelDate ) * 100
+ MONTH ( SelDate ) = [Prev Period]
)
)
y
Monthly revenue =
IF (
ISBLANK ( [Previous month value] ),
BLANK (),
[ATD Revenue] - [Previous month value]
)
y obtienes:
Si eso no funciona, ¿puede mostrar una representación de cómo se configura el modelo?
(¡gracias por sus amables palabras sobre mi elección de perfil!)
Conseguí que la parte "PP" de su DAX funcionara (pero tuve que cambiarla a un -1 frente a un +1. Pero cuando intento devolver el PMV está en blanco.
Trate de mantenerlos como medidas separadas
@Jdokken Recreé su tabla y luego creé la solución:
Crea cuatro measuers simples:
Pasos a seguir:
@TheoC Muchas gracias por tratar de resolver esto. Estoy trabajando con un CUBE y, por lo tanto, solo puedo crear medidas (sin columnas). Creo que puede haber algo más sucediendo que no puedo ver, ya que el mes anterior no se llenará por períodos aleatorios, incluso si no hay lagunas en las fechas. Ni siquiera estoy seguro de dónde buscar en los datos para averiguar por qué muestran espacios en blanco para períodos anteriores que claramente tienen una cantidad.
@Jdokken No he probado lo nuevo de Paul, pero voy a salir en una extremidad aquí y decir que probablemente esté en el dinero. Tenía curiosidad por saber si podían integrarse en variables para determinar los resultados, así que armé medidas muy básicas que parecían funcionar y no perder meses. No tengo su conjunto de datos completo, pero este es el resultado a continuación utilizando figuras inventadas:
Las medidas son:
Si prueba lo anterior en su conjunto de datos, sería increíble. Estoy realmente interesado en ver si funciona o si la Inteligencia de Tiempo dentro de variables también es limitada. Pero como se mencionó, mirando los resultados en la tabla de captura de pantalla, ¿parece funcionar bien?
Hola
¿Desea que el resultado sea una fórmula de columna calculada o como una medida? Comparta un archivo PBI para trabajar.
Necesito una medida ya que estoy conectado a un cubo. No he podido averiguar cómo compartir un archivo PBI.
Hola
Necesitará una tabla de calendario que debe tener una relación con la columna Fecha de inicio del período. Una vez que esté en su lugar, tendrá que arrastrar Fecha desde la tabla Calendario a su visual (en lugar de Fecha de inicio del período). Escriba estas medidas:
ATD rev = suma(Datos[Ingresos ATD])
Rev mensual = [ATD rev]-calculate([ATD rev],previousmonth(calendar[date]))
Espero que esto ayude.
@Jdokken Recreé su tabla y luego creé la solución:
Crea cuatro measuers simples:
Pasos a seguir:
Hola @Jdokken
Recomendaría crear un par de medidas como las siguientes:
Corriente Mth Rev $ = CALCULAR ( [ATD Revenue] , DATESMTD ( 'TableName'[Fecha de inicio del período] )
Anterior Mth Rev $ = CALCULAR ( [ATD Revenue] , DATESADD ( 'TableName'[Fecha de inicio del período] , -1 , MES )
Espero que esto ayude a aparearse.
Danos un cinco alto si lo hace.
Para obtener Ingresos Mensuales tengo que tomar cada período ATD Ingresos y restarlos del período anterior.
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 | |
2 | |
1 |