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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Cálculo del mes anterior a la fecha basado en la fecha actual

Hola a todos

Tengo una función para calcular las ventas de PMTD (mes anterior a la fecha) usando la función a continuación

AnteriorMTD = TOTALMTD( SUMA(Tabla[Valor]) , DATEADD('Fecha'[Fecha], -1 , MES) )

Me gustaría tomar en cuenta el número de días para el mes en curso.

Por ejemplo, para el 4 de octubre, el PTMD solo calculará 4 días en septiembre, ya que solo estamos a 4 días en octubre.

¿Alguna idea de cómo lograrlo?

Gracias

2 ACCEPTED SOLUTIONS
Syndicate_Admin
Administrator
Administrator

Hay @Nanakwame

Si estoy leyendo correctamente, estás bastante cerca. Recomiendo crear tres medidas. La primera es sumar los valores relevantes. El segundo para sumar solo la parte del mes actual hasta la fecha. El tercero es imitar la posición de la medida del mes actual hasta la fecha.

  1. Suma Valor = Suma ( 'Tabla'[Valor] )
  2. Total curmthTD = CALCULATE ( [Suma Valor] , DATESMTD ( 'Fecha'[Fecha] ) )
  3. Total LstMthTD = CALCULATE ( [Total curmthTD] , DATEADD ('Fecha'[Fecha] , -1 , MES ) )


¡Espero que esto ayude! 🙂

View solution in original post

Hola Theo,

Probé el enfoque que proporcionaste y parece que está calculando los 6 días para octubre comparando todo septiembre. Preferiré compararlo con solo 6 días en septiembre también y así sucesivamente.

View solution in original post

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

No puedo decir cuánto tiempo he estado buscando esta solución - Muchas gracias

Syndicate_Admin
Administrator
Administrator

Hay @Nanakwame

Si estoy leyendo correctamente, estás bastante cerca. Recomiendo crear tres medidas. La primera es sumar los valores relevantes. El segundo para sumar solo la parte del mes actual hasta la fecha. El tercero es imitar la posición de la medida del mes actual hasta la fecha.

  1. Suma Valor = Suma ( 'Tabla'[Valor] )
  2. Total curmthTD = CALCULATE ( [Suma Valor] , DATESMTD ( 'Fecha'[Fecha] ) )
  3. Total LstMthTD = CALCULATE ( [Total curmthTD] , DATEADD ('Fecha'[Fecha] , -1 , MES ) )


¡Espero que esto ayude! 🙂

Esta respuesta me pareció muy útil. He estado buscando esta respuesta desde hace un tiempo. Muchas gracias. A mí me funciona perfectamente.

@tyjames05 alegro de que haya ayudado, amigo!

Hola Theo,

Probé el enfoque que proporcionaste y parece que está calculando los 6 días para octubre comparando todo septiembre. Preferiré compararlo con solo 6 días en septiembre también y así sucesivamente.

Hay @Nanakwame,

Puede probar estas medidas para comparar:

CurrentMonthValue = 
CALCULATE (
    SUM ( 'Table'[Value] ),
    FILTER (
        'Date',
        'Date'[Date] >= DATE ( YEAR ( TODAY () ), MONTH ( TODAY () ), 1 )
            && 'Date'[Date] <= TODAY ()
    )
)
PreviousMonthValue = 
VAR currentmonthstart =
    DATE ( YEAR ( TODAY () ), MONTH ( TODAY () ), 1 )
VAR currentday =
    TODAY ()
VAR currentdiff =
    DATEDIFF ( currentmonthstart, currentday, DAY )
VAR previousmonthstart =
    EOMONTH ( TODAY (), -2 ) + 1
VAR PreviousMonthValue =
    CALCULATE (
        SUM ( 'Table'[Value] ),
        FILTER (
            'Date',
            'Date'[Date] >= previousmonthstart
                && 'Date'[Date] <= previousmonthstart + currentdiff
        )
    )
RETURN
    PreviousMonthValue

vyingjl_0-1633937336830.png

Saludos
Equipo de apoyo a la comunidad _ Yingjie Li
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.