11Calendar Timeframe =
22VAR _today_date = TODAY() //'Properties'[Today Date]
33VAR _yesterday_date = _today_date - 1
4- VAR _week_start = _today_date - WEEKDAY ( _today_date, 2 )
5- VAR _week_end = _today_date - WEEKDAY ( _today_date, 2 ) + 6
4+ VAR _week_start = _today_date - WEEKDAY ( _today_date, 1 )
5+ VAR _week_end = _today_date - WEEKDAY ( _today_date, 1 ) + 6
66VAR _month_start = DATE( YEAR(_today_date), MONTH(_today_date), 01 )
77VAR _month_end = EOMONTH( _today_date, 0)
8+ VAR _month_start_py = DATE( YEAR(_today_date) - 1, MONTH(_today_date), 01 )
9+ VAR _today_date_py = DATE( YEAR(_today_date) - 1, MONTH(_today_date), DAY(_today_date) )
810VAR _quarter_start = DATE ( YEAR (_today_date), ROUNDUP ( DIVIDE ( MONTH (_today_date), 3 ), 0 ) * 3 - 2, 1 )
911VAR _quarter_end = EOMONTH(EDATE(_quarter_start, 2), 0)
10- VAR _fiscal_year = YEAR(EDATE( _today_date, 6 ))
11- VAR _fiscal_year_start = DATE( _fiscal_year - 1, 07 , 01)
12- VAR _fiscal_year_end = DATE( _fiscal_year, 06, 30 )
12+ VAR _fiscal_year = YEAR(EDATE( _today_date, 2 ))
13+ VAR _fiscal_year_start = DATE( _fiscal_year - 1, 02 , 01)
14+ VAR _fiscal_year_end = DATE( _fiscal_year, 01, 31 )
1315VAR _tomorrow_date = IF(_today_date + 1 > _fiscal_year_end, _fiscal_year_end, _today_date + 1)
1416VAR _calendar_year = YEAR(_today_date)
1517VAR _calendar_year_start = DATE( _calendar_year , 01, 01)
@@ -18,11 +20,10 @@ VAR _previous_month_start = IF(MONTH(_today_date) = 1, DATE(YEAR(_today_
1820VAR _previous_month_end = DATE(YEAR(_previous_month_start), MONTH(_previous_month_start), DAY(EOMONTH(_previous_month_start,0)))
1921VAR _previous_quarter_start = EDATE(_quarter_start, -3)
2022VAR _previous_quarter_end = EOMONTH(EDATE(_quarter_start, -1), 0)
21- VAR _previous_fiscal_year_start = DATE( _fiscal_year - 2, 07 , 01)
22- VAR _previous_fiscal_year_end = DATE( _fiscal_year - 1, 06, 30 )
23+ VAR _previous_fiscal_year_start = DATE( _fiscal_year - 2, 02 , 01)
24+ VAR _previous_fiscal_year_end = DATE( _fiscal_year - 1, 01, 31 )
2325VAR _previous_calendar_year_start = DATE( _calendar_year - 1, 01, 01)
2426VAR _previous_calendar_year_end = DATE( _calendar_year - 1, 12, 31)
25-
2627VAR _result =
2728 UNION (
2829 ADDCOLUMNS (CALENDAR ( _today_date, _today_date), "Timeframe", "Today", "Timeframe Order", 1 )
@@ -33,17 +34,18 @@ VAR _result =
3334 , ADDCOLUMNS (CALENDAR ( _previous_month_start, _previous_month_end ), "Timeframe", "Previous Month", "Timeframe Order", 6 )
3435 , ADDCOLUMNS (CALENDAR ( _month_start, _month_end ), "Timeframe", "Current Month", "Timeframe Order", 7 )
3536 , ADDCOLUMNS (CALENDAR ( _month_start, _today_date ), "Timeframe", "MTD", "Timeframe Order", 8 )
36- , ADDCOLUMNS (CALENDAR ( _previous_quarter_start, _previous_quarter_end ), "Timeframe", "Previous Qtr", "Timeframe Order", 9 )
37- , ADDCOLUMNS (CALENDAR ( _quarter_start, _quarter_end ), "Timeframe", "Current Qtr", "Timeframe Order", 10 )
38- , ADDCOLUMNS (CALENDAR ( _quarter_start, _today_date ), "Timeframe", "QTD", "Timeframe Order", 11 )
39- , ADDCOLUMNS (CALENDAR ( _previous_fiscal_year_start, _previous_fiscal_year_end ), "Timeframe", "Previous Year", "Timeframe Order", 12 )
40- , ADDCOLUMNS (CALENDAR ( _fiscal_year_start, _fiscal_year_end ), "Timeframe", "Current Year", "Timeframe Order", 13 )
41- , ADDCOLUMNS (CALENDAR ( _fiscal_year_start, _today_date ), "Timeframe", "YTD", "Timeframe Order", 14 )
42- , ADDCOLUMNS (CALENDAR ( _tomorrow_date, _fiscal_year_end ), "Timeframe", "Rest of Year", "Timeframe Order", 15 )
43- , ADDCOLUMNS (CALENDAR ( _previous_calendar_year_start, _previous_calendar_year_end ), "Timeframe", "Previous Calendar Year", "Timeframe Order", 16 )
44- , ADDCOLUMNS (CALENDAR ( _calendar_year_start, _calendar_year_end ), "Timeframe", "Current Calendar Year", "Timeframe Order", 17 )
45- , ADDCOLUMNS (CALENDAR ( _calendar_year_start, _today_date ), "Timeframe", "Calendar YTD", "Timeframe Order", 18 )
46- , ADDCOLUMNS (CALENDAR ( _tomorrow_date, _calendar_year_end ), "Timeframe", "Rest of Calendar Year", "Timeframe Order", 19 )
37+ , ADDCOLUMNS (CALENDAR ( _month_start_py, _today_date_py ), "Timeframe", "MTD_PY", "Timeframe Order", 9 )
38+ , ADDCOLUMNS (CALENDAR ( _previous_quarter_start, _previous_quarter_end ), "Timeframe", "Previous Qtr", "Timeframe Order", 10 )
39+ , ADDCOLUMNS (CALENDAR ( _quarter_start, _quarter_end ), "Timeframe", "Current Qtr", "Timeframe Order", 11 )
40+ , ADDCOLUMNS (CALENDAR ( _quarter_start, _today_date ), "Timeframe", "QTD", "Timeframe Order", 12 )
41+ , ADDCOLUMNS (CALENDAR ( _previous_fiscal_year_start, _previous_fiscal_year_end ), "Timeframe", "Previous Year", "Timeframe Order", 13 )
42+ , ADDCOLUMNS (CALENDAR ( _fiscal_year_start, _fiscal_year_end ), "Timeframe", "Current Year", "Timeframe Order", 14 )
43+ , ADDCOLUMNS (CALENDAR ( _fiscal_year_start, _today_date ), "Timeframe", "YTD", "Timeframe Order", 15 )
44+ , ADDCOLUMNS (CALENDAR ( _tomorrow_date, _fiscal_year_end ), "Timeframe", "Rest of Year", "Timeframe Order", 16 )
45+ , ADDCOLUMNS (CALENDAR ( _previous_calendar_year_start, _previous_calendar_year_end ), "Timeframe", "Previous Calendar Year", "Timeframe Order", 17 )
46+ , ADDCOLUMNS (CALENDAR ( _calendar_year_start, _calendar_year_end ), "Timeframe", "Current Calendar Year", "Timeframe Order", 18 )
47+ , ADDCOLUMNS (CALENDAR ( _calendar_year_start, _today_date ), "Timeframe", "Calendar YTD", "Timeframe Order", 19 )
48+ , ADDCOLUMNS (CALENDAR ( _tomorrow_date, _calendar_year_end ), "Timeframe", "Rest of Calendar Year", "Timeframe Order", 20 )
4749 )
4850
4951RETURN
0 commit comments