Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Administrator
4 years ago
Solved

Problema dateADD

Hola

Tengo un problema con la función DATEADD. Cuando agrego -1 mes muestra valores en blanco.

_Rev Anterior = CALCULAR([_Rev Real],DATEADD('Calendario'[Fecha],-1,MES))

cristianml_0-1649568403867.png

Cuando uso 0 funciona bien. Pero necesito usar -1, -3 meses, etc.

_Rev Anterior = CALCULAR([_Rev Real],DATEADD('Calendario'[Fecha],0,MES))

cristianml_1-1649568489206.png

¿Alguna idea?

¡Gracias!

  • Syndicate_Admin's avatar
    Syndicate_Admin
    4 years ago

    ¡Gracias por volver a publicar! 🙂

    El problema parece ser que las tablas de 'Calendario' se basan en fechas distintas de Actuals y Backlog, que parece ser una fecha por mes.

    Una tabla de fechas en Power BI debe incluir todas las fechas del intervalo comprendido entre la fecha más temprana y la fecha más reciente presente, incluso si algunas de esas fechas no existen en las tablas de hecho.

    También es una buena práctica incluir años financieros completos (y por lo tanto meses completos), de lo contrario, algunas funciones de inteligencia de tiempo pueden dar resultados inesperados.

    Aquí hay una definición propuesta de Calendario que cubriría los años completos de septiembre a agosto, y debería poder marcar como una tabla de fechas:

    Calendar =
    VAR FYStartMonth =
    	9 // FY is Sep to Aug 
    VAR Offset =
        MOD ( 13 - FYStartMonth, 12 )
    VAR MinDate =
        MIN ( MIN ( Actuals[Date] ), MIN ( Backlog[Date] ) )
    VAR MaxDate =
        MAX ( MAX ( Actuals[Date] ), MAX ( Backlog[Date] ) )
    VAR MinDateFY =
        YEAR ( EOMONTH ( MinDate, Offset ) )
    VAR MaxDateFY =
        YEAR ( EOMONTH ( MaxDate, Offset ) )
    VAR CalendarStart =
        EDATE ( DATE ( MinDateFY, 1, 1 ), - Offset )
    VAR CalendarEnd =
        EOMONTH ( DATE ( MAXDateFY, 12, 1 ), - Offset )
    VAR CalendarFinal =
        CALENDAR ( CalendarStart, CalendarEnd )
    RETURN
        CalendarFinal

    Hay otras formas de crear la tabla Fecha, por ejemplo, scripts de Power Query o herramientas como Bravo.

    ¡Esperemos que eso ayude!

    Saludos

    Owen

3 Replies

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Administrator

      hI @OwenAuger ,

      No me permite marcar como una tabla de fechas. Dice que la columna de fecha no puede tener brechas en las fechas. Pero no veo lagunas allí:

      cristianml_0-1649569483211.png

      • Syndicate_Admin's avatar
        Syndicate_Admin
        Administrator

        ¡Gracias por volver a publicar! 🙂

        El problema parece ser que las tablas de 'Calendario' se basan en fechas distintas de Actuals y Backlog, que parece ser una fecha por mes.

        Una tabla de fechas en Power BI debe incluir todas las fechas del intervalo comprendido entre la fecha más temprana y la fecha más reciente presente, incluso si algunas de esas fechas no existen en las tablas de hecho.

        También es una buena práctica incluir años financieros completos (y por lo tanto meses completos), de lo contrario, algunas funciones de inteligencia de tiempo pueden dar resultados inesperados.

        Aquí hay una definición propuesta de Calendario que cubriría los años completos de septiembre a agosto, y debería poder marcar como una tabla de fechas:

        Calendar =
        VAR FYStartMonth =
        	9 // FY is Sep to Aug 
        VAR Offset =
            MOD ( 13 - FYStartMonth, 12 )
        VAR MinDate =
            MIN ( MIN ( Actuals[Date] ), MIN ( Backlog[Date] ) )
        VAR MaxDate =
            MAX ( MAX ( Actuals[Date] ), MAX ( Backlog[Date] ) )
        VAR MinDateFY =
            YEAR ( EOMONTH ( MinDate, Offset ) )
        VAR MaxDateFY =
            YEAR ( EOMONTH ( MaxDate, Offset ) )
        VAR CalendarStart =
            EDATE ( DATE ( MinDateFY, 1, 1 ), - Offset )
        VAR CalendarEnd =
            EOMONTH ( DATE ( MAXDateFY, 12, 1 ), - Offset )
        VAR CalendarFinal =
            CALENDAR ( CalendarStart, CalendarEnd )
        RETURN
            CalendarFinal

        Hay otras formas de crear la tabla Fecha, por ejemplo, scripts de Power Query o herramientas como Bravo.

        ¡Esperemos que eso ayude!

        Saludos

        Owen