Forum Discussion

henry_s's avatar
henry_s
Regular Visitor
2 years ago
Solved

ENDOFMONTH function not working as expected

I created a simple date table as follows:

 

 

 

 

DateTable =
DATATABLE(
    "Date", DATETIME, {
        {"14/2/2024"},
        {"15/2/2024"},
        {"16/2/2024"}
    }
)

 

 

 

Then I created a new column using 

 

 

End of Month = ENDOFMONTH(DateTable[Date])

 

 

 

Result

 

I know I can use EOMONTH which works, but am curious why this doesnt? I expect to get 29 February but it seems like its simply picking the maximum date. Or maybe I failed to understand the documentation

 

 

 

  • Hi henry_s ,

     

    You are right.

    The EOMONTH is a date function that returns the last date of the month irrespective of what dates are present in the date table. 

    The ENDOFMONTH is a time intelligence function that returns last date in the current context which means for the month and year that corresponds to the row. You can think of it like a max function on date column for the year-month combination. 

     

    In documentation, you will find EOMONTH under date and time functions, while ENDOFMONTH in time intelligence functions. Time intelligence functions require a date table to operate to their best efficiency while date and time functions don't necessarily need that. 

2 Replies

  • Hi henry_s ,

     

    You are right.

    The EOMONTH is a date function that returns the last date of the month irrespective of what dates are present in the date table. 

    The ENDOFMONTH is a time intelligence function that returns last date in the current context which means for the month and year that corresponds to the row. You can think of it like a max function on date column for the year-month combination. 

     

    In documentation, you will find EOMONTH under date and time functions, while ENDOFMONTH in time intelligence functions. Time intelligence functions require a date table to operate to their best efficiency while date and time functions don't necessarily need that.