Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Icon for Administrator rankAdministrator
4 years ago

Problema con CalendarAuto()

Estoy siguiendo los consejos sobre cómo ver los cambios en las facturas en este hilo y las soluciones requieren el uso de la función CalendarAuto(). Más específicamente, requiere el uso de una DateTable (que estoy tratando de averiguar) pero recibo un error (al intentar usar el siguiente código, que indica "La función CALENDARAUTO no puede encontrar una columna base del tipo DateTime en el modelo". (Primera captura de pantalla)

En cuanto a la tabla con información relacionada con la fecha, obtengo "Month_Nbr" y "Year_Nbr" de la base de datos SQL (irónicamente no hay un campo de "fecha") y luego lo conciantizo y lo convierto en un "Tipo de datos = Fecha", el campo "Combined_Date" (Segunda captura de pantalla).

Luego también creo un campo "Nueva fecha" que es solo una duplia del campo "Combined_Date", pero convertido en un tipo "Fecha / Hora" (tercera captura de pantalla).

No estoy seguro de por qué recibo el error con CalendarAuto(). ¡Cualquier ayuda sería apreciada!

rsearing_0-1652726201316.png

rsearing_1-1652726481752.png

rsearing_2-1652726694501.png

5 Replies

  • CalendarAuto no puede encontrar ninguna fecha relevante. Creo que esperas que la columna calculada sea la fecha, pero a calendarauto no le gustan las columnas calculadas de dax.

    Probablemente debería crear la columna de fecha en power query (o usar la función dax CALENDAR y crear las fechas para usarlas como parámetros)

    • Syndicate_Admin's avatar
      Syndicate_Admin
      Icon for Administrator rankAdministrator

      @HotChilli que tendría sentido (no me gusta la columna de fecha creada).

      Soy bastante nuevo y esperaba que pudiera dar un ejemplo de lo que quiere decir al crear la columna de fecha en PQ, por favor. (Gracias por sus comentarios).

  • En lugar de construir la columna de fecha en la tabla InvoiceData a través de DAX, lo haría en Power Query.

    Agregue una columna personalizada similar a esta:

    #date (año, mes, día) - todos los números.

    Asegúrese de que tenga tipo de fecha.

    Calendar auto debería poder encontrar y usar esto.

    -----

    Si desea seguir la ruta DAX, utilizando la función CALENDAR, un ejemplo es:

    CALENDAR (
        DATE ( 2010, 1, 1 ),
        DATE ( 2017, 12, 31 )
    )

    puede codificar el mes y el día y usar las variables MinYear y MaxYear que ya tiene.

  • @HotChilli , eso fue todo. Aparentemente no le gustó el DAX y pude usar el #date (año, mes, día) en PQ. ¡Muchas gracias por su ayuda!