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
garythomannCoGC
Impactful Individual
Impactful Individual

DAX CALENDARAUTO function returns empty table when used in Power BI Desktop

Doh, followed along with the calendarauto example from the video (sqlbi.com) but no dates produced.

No syntax errors. Using 07.40 - Moving average.pbix

Table of Dates = CALENDARAUTO()


works just fine.

 

Tried other pbix files as well. 'New table' button was used :}

 

The following is the code I created that produces no syntax errors and no dates

 

Dates (CALENDARAUTO) =
    VAR _FirstDate_CustomerBirth = MIN ( 'Customer'[Birth Date] )
    VAR _FirstDate_ProductAvailable = MIN ( 'Product'[Available Date] )
    VAR _FirstDate_SalesDelivery = MIN ( 'Sales'[Delivery Date] )
    VAR _FirstDate_SalesOrder = MIN ( 'Sales'[Order Date] )
    VAR _FirstDate =
        IF ( _FirstDate_SalesOrder < _FirstDate_SalesDelivery, _FirstDate_SalesOrder, _FirstDate_SalesDelivery )
    VAR _DateTable =
         FILTER (
             CALENDARAUTO(),
             YEAR ( [Date] ) >= _FirstDate -- 'CALENDARAUTO'.[Date]
    )
RETURN
    ADDCOLUMNS(
        _DateTable,
        "Year", YEAR ( [Date] ),
        "Month", FORMAT ( [Date], "mmm" ),
        "Month Number", MONTH ( [Date] ),
        "Quarter", FORMAT ( [Date], "\QQ yyyy" )
    )

1 ACCEPTED SOLUTION
FreemanZ
Super User
Super User

hi @garythomannCoGC ,

 

try like:

Dates (CALENDARAUTO) =
    VAR _FirstDate_CustomerBirth = MIN ( 'Customer'[Birth Date] )
    VAR _FirstDate_ProductAvailable = MIN ( 'Product'[Available Date] )
    VAR _FirstDate_SalesDelivery = MIN ( 'Sales'[Delivery Date] )
    VAR _FirstDate_SalesOrder = MIN ( 'Sales'[Order Date] )
    VAR _FirstDate =
        IF ( _FirstDate_SalesOrder < _FirstDate_SalesDelivery, _FirstDate_SalesOrder, _FirstDate_SalesDelivery )
    VAR _DateTable =
         FILTER (
             CALENDARAUTO(),
             YEAR ( [Date] ) >= YEAR(_FirstDate) -- 'CALENDARAUTO'.[Date]
    )
RETURN
    ADDCOLUMNS(
        _DateTable,
        "Year", YEAR ( [Date] ),
        "Month", FORMAT ( [Date], "mmm" ),
        "Month Number", MONTH ( [Date] ),
        "Quarter", FORMAT ( [Date], "\QQ yyyy" )
    )

View solution in original post

2 REPLIES 2
garythomannCoGC
Impactful Individual
Impactful Individual

FreemanZ
Super User
Super User

hi @garythomannCoGC ,

 

try like:

Dates (CALENDARAUTO) =
    VAR _FirstDate_CustomerBirth = MIN ( 'Customer'[Birth Date] )
    VAR _FirstDate_ProductAvailable = MIN ( 'Product'[Available Date] )
    VAR _FirstDate_SalesDelivery = MIN ( 'Sales'[Delivery Date] )
    VAR _FirstDate_SalesOrder = MIN ( 'Sales'[Order Date] )
    VAR _FirstDate =
        IF ( _FirstDate_SalesOrder < _FirstDate_SalesDelivery, _FirstDate_SalesOrder, _FirstDate_SalesDelivery )
    VAR _DateTable =
         FILTER (
             CALENDARAUTO(),
             YEAR ( [Date] ) >= YEAR(_FirstDate) -- 'CALENDARAUTO'.[Date]
    )
RETURN
    ADDCOLUMNS(
        _DateTable,
        "Year", YEAR ( [Date] ),
        "Month", FORMAT ( [Date], "mmm" ),
        "Month Number", MONTH ( [Date] ),
        "Quarter", FORMAT ( [Date], "\QQ yyyy" )
    )

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

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.

Top Solution Authors