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

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.

Reply
Anonymous
Not applicable

Calcular la diferencia mensual a partir de la última fecha con valor

Hola

Estoy buscando escribir una medida que calcularía la diferencia entre el último precio de un artículo y su precio en el mes anterior. Mi conjunto de datos tiene diferentes fechas más recientes para cada elemento, por lo que estaba usando LASTDATE y DATESBETWEEN para obtener el precio más reciente. Sin embargo, no estoy seguro de cómo obtener el precio del mes anterior.

Latest Price = 
VAR _LastDate = LASTDATE(Products[Date])
RETURN

CALCULATE(SUM(Products[Price]), DATESBETWEEN(Calendar[Date], _LastDate, _LastDate))

En el ejemplo siguiente, esta medida devuelve $4 para Bananas y $7 para Apples.

La diferencia de precio que estoy buscando sería:

  • Plátanos: 4-6 -2 (Marzo - Feb)
  • Manzanas: 7-4 x 3 (abril - marzo).

ArtículoFechaPrecio
PlátanosEne 20205
PlátanosFebrero de 20206
PlátanosMarzo de 20204
ManzanasEne 20202
ManzanasFebrero de 20205
ManzanasMarzo de 20204
ManzanasAbril de 20207

También necesito la diferencia porcentual, pero eso debería ser sencillo una vez que lo descubra. ¡Gracias de antemano!

Mejor

Alex

1 ACCEPTED SOLUTION
mahoneypat
Employee
Employee

Por favor, pruebe estas expresiones:

Precio más reciente ?
VAR __latestdate ?
MAX ( 'Tabla'[Fecha] )
devolución
CALCULATE ( SUM ( 'Tabla'[Precio] ), 'Tabla'[Fecha] - __latestdate )

Precio de prev ?
VAR __latestdate ?
MAX ( 'Tabla'[Fecha] )
VAR __prevdate ?
CALCULAR (
MAX ( 'Tabla'[Fecha] ),
FILTRO ( ALL ( 'Tabla'[Fecha] ), 'Tabla'[Fecha] < __latestdate )
)
devolución
CALCULATE ( SUM ( 'Tabla'[Precio] ), 'Tabla'[Fecha] - __prevdate )

Si esto funciona para usted, márquelo como solución. Los elogios también son apreciados. Por favor, avísame si no.

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


View solution in original post

5 REPLIES 5
Anonymous
Not applicable

Gracias a todos por su ayuda! 😊

mahoneypat
Employee
Employee

Por favor, pruebe estas expresiones:

Precio más reciente ?
VAR __latestdate ?
MAX ( 'Tabla'[Fecha] )
devolución
CALCULATE ( SUM ( 'Tabla'[Precio] ), 'Tabla'[Fecha] - __latestdate )

Precio de prev ?
VAR __latestdate ?
MAX ( 'Tabla'[Fecha] )
VAR __prevdate ?
CALCULAR (
MAX ( 'Tabla'[Fecha] ),
FILTRO ( ALL ( 'Tabla'[Fecha] ), 'Tabla'[Fecha] < __latestdate )
)
devolución
CALCULATE ( SUM ( 'Tabla'[Precio] ), 'Tabla'[Fecha] - __prevdate )

Si esto funciona para usted, márquelo como solución. Los elogios también son apreciados. Por favor, avísame si no.

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


@mahoneypat

¡Y si tuvieras una pelea con el 2 de abril! esta fórmula VAR no __latestdate no mostrar la última fecha del mes anterior, muestra la fila del 1 de abril.

Es por eso que quiero preguntar @plaidmelon si en su tabla sólo hay una fila para evry 1st del mes o muchas fechas y si está utilizando una fecha de calendario con el fin de utilizar el tiempo inteligente DAX fórmulas de precisión!

Gracias

Regards
Amine Jerbi

If I answered your question, please mark this thread as accepted
and you can follow me on
My Website, LinkedIn and Facebook

Tiene razón sobre los valores del 2 de abril. A partir de los datos de ejemplo que parecían no ser el caso, pero sería fácil adaptar ese enfoque utilizar el mes actual y anterior si es necesario.

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


TomMartens
Super User
Super User

Hey @plaidmelon ,

Asumo que tiene una medida que devuelve el último precio (el precio de la última fecha), tal vez esta medida se ve así:

last Amount = 
LASTNONBLANKVALUE('Calendar'[Date] , [Amount (explicit measure)]) 

Para encontrar el último precio del mes anterior puede restringir los días disponibles a los meses anteriores de la siguiente manera:

last amount previous month = 
var maxDate = CALCULATE(MAX('Calendar'[Date]))
var tDatesPreviousMonth = 
 DATESBETWEEN(
  'Calendar'[Date] 
  , EOMONTH(maxDate , -2) + 1 
  , EOMONTH(maxDate , -1)
  )
return
CALCULATE(
 [last Amount]
 , tDatesPreviousMonth 
 )

Con suerte, esto proporciona algunas ideas nuevas sobre cómo abordar su desafío.

saludos

Tom



Did I answer your question? Mark my post as a solution, this will help others!

Proud to be a Super User!
I accept Kudos 😉
Hamburg, Germany

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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