-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathTable-GenerateDateTable.txt
19 lines (19 loc) · 1.67 KB
/
Table-GenerateDateTable.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
let
Start = Date.StartOfMonth(Date.AddYears(Date.From(DateTimeZone.UtcNow()),-1)),
End = Date.EndOfMonth(Date.From(DateTimeZone.UtcNow())),
DayCount = Duration.Days(End-Start),
Source = List.Dates(Start, DayCount, #duration(1,0,0,0)),
#"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Changed Type" = Table.TransformColumnTypes(#"Converted to Table",{{"Column1", type date}}),
#"Renamed Columns" = Table.RenameColumns(#"Changed Type",{{"Column1", "Date"}}),
#"Inserted Year" = Table.AddColumn(#"Renamed Columns", "Year", each Date.Year([Date]), Int64.Type),
#"Inserted Month" = Table.AddColumn(#"Inserted Year", "Month", each Date.Month([Date]), Int64.Type),
#"Inserted Month Name" = Table.AddColumn(#"Inserted Month", "Month Name", each Date.MonthName([Date]), type text),
#"Inserted Day" = Table.AddColumn(#"Inserted Month Name", "Day", each Date.Day([Date]), Int64.Type),
#"Inserted Day Name" = Table.AddColumn(#"Inserted Day", "Day Name", each Date.DayOfWeekName([Date]), type text),
#"Inserted Weekday Number" = Table.AddColumn(#"Inserted Day Name", "Weekday Number", each Date.DayOfWeek([Date], 1) + 1, type number),
#"Inserted Month Year Name" = Table.AddColumn(#"Inserted Weekday Number", "Month Year Name", each [Month Name] & " " & Text.From([Year])),
#"Inserted Day Month Name" = Table.AddColumn(#"Inserted Month Year Name", "Day Month Name", each Date.ToText([Date], "dd.MM")),
#"Inserted Calendar Week" = Table.AddColumn(#"Inserted Day Month Name", "Week", each "KW" & Number.ToText(Date.WeekOfYear([Date], Day.Monday), Text.Repeat("0",2)))
in
#"Inserted Calendar Week"