Skip to content

Instantly share code, notes, and snippets.

@Maxa
Created June 6, 2021 16:45
Create Finnish DAX calendar for quick reporting in Power BI
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)
)
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment