Kalenteri = VAR __START_DATE = MIN(Table[Date_column]) VAR __END_DATE = MAX(Table[Date_column]) VAR __BASE_CALENDAR = CALENDAR(__START_DATE, __END_DATE) VAR __BASE_CALENDAR_FI = SELECTCOLUMNS(__BASE_CALENDAR, "Pvm", [Date]) RETURN GENERATE( __BASE_CALENDAR_FI, VAR __DATE = [Pvm] VAR __YEAR = YEAR(__DATE) VAR __QUARTER = FORMAT(__DATE, "Q") VAR __MONTH = MONTH(__DATE) VAR __HALF = ROUNDUP(__MONTH / 6, 0) VAR __ISOWEEK = WEEKNUM(__DATE, 21) VAR __ISOWEEK_YEAR = SWITCH(TRUE(), __MONTH == 1 && __ISOWEEK > 50, __YEAR-1, __MONTH == 12 && __ISOWEEK < 5, __YEAR+1, __YEAR ) VAR __WEEKDAY_NUMBER = WEEKDAY(__DATE,2) VAR __MONTH_NAME_FI = SWITCH(__MONTH, 1,"tammi", 2,"helmi", 3,"maalis", 4,"huhti", 5,"touko", 6,"kesä", 7,"heinä", 8,"elo", 9,"syys", 10,"loka", 11,"marras", 12,"joulu" ) VAR __WEEKDAY_NAME_FI = SWITCH(__WEEKDAY_NUMBER, 1,"maanantai", 2,"tiistai", 3,"keskiviikko", 4,"torstai", 5,"perjantai", 6,"lauantai", 7,"sunnuntai" ) RETURN ROW( "Vuosi", __YEAR, "Vuosipuolikas", "H" & __HALF, "Vuosi ja puolikas", __YEAR & "/H" & __HALF, "Kvartaali", "Q" & __QUARTER, "VuosiKvartaali", __YEAR & "/Q" & __QUARTER, "Kuukausi", __MONTH, "Kuu", FORMAT(__DATE,"mmm"), "Kuu FI", __MONTH_NAME_FI, "Kuukauden nimi", FORMAT(__DATE,"mmmm"), "Kuukauden nimi FI", __MONTH_NAME_FI & "kuu", "VuosiKuukausi", __YEAR & "/" & FORMAT(__MONTH, "00"), "VuosiKuu", __YEAR & "/" & FORMAT(__DATE,"mmm"), "VuosiKuu FI", __YEAR & "/" & __MONTH_NAME_FI, "Viikko", __ISOWEEK, "VuosiViikko", __ISOWEEK_YEAR & "/vk" & FORMAT(__ISOWEEK, "00"), "Viikonpäivä", __WEEKDAY_NUMBER, "Viikonpäivän nimi", FORMAT(__DATE,"dddd"), "Viikonpäivän nimi FI", __WEEKDAY_NAME_FI, "Viikonpäivän lyhenne", FORMAT(__DATE,"ddd"), "Viikonpäivän lyhenne FI", LEFT(__WEEKDAY_NAME_FI,2), "Päivä", DAY(__DATE) ) )