Работа с недельным календарем в PowerBI

Tweet about this on TwitterShare on Google+Share on Facebook

 

Читаю книгу The Definitive Guide to DAX: Business intelligence with Microsoft Excel, SQL Server Analysis Services, and Power BI (Business Skills) и в главе про работу с Custom Calendar наткнулся на описание реализации недельного календаря — чтобы на графиках и в таблицах выводить данные по неделям. Только недели получаются в таком формате:

OFgZLyH.png

На мой взгляд это совершенно неудобно. Привычно видеть сразу о каких дата идет речь, например так:

cS1ks5R.png

Поделюсь как это сделать.

В Power Query есть функции Date.StartOfWeek и Date.EndOfWeek. С помощью которых получаем столбцы с датой начала и конца недели.

#"Inserted Start of Week" = Table.AddColumn(#"Inserted Week of Month", "StartOfWeek", each Date.StartOfWeek([Дата],1), type date),

#"Inserted End of Week" = Table.AddColumn(#"Inserted Start of Week", "EndOfWeek", each Date.EndOfWeek([Дата],1), type date),

Далее объединяем эти столбцы.

UW80jX5.png

Но по умолчанию недели будут сортироваться в алфавитном порядке

rBhggow.png

Чтобы это исправить — нам нужно создать столбец индекс недели в формате “2017-52” по которому они должны сортироваться.

Для этого с помощью функции Date.Year  создаем столбец с годом, с помощью функции Date.WeekOfYear столбец с номером недели и объединяем их.

Затем указываем, что наш столбец неделя нужно сортировать по этому значению. Полный код для вставки в Power Query можно взять с гитхаба

ftQT61S.png

 

 

 

Related posts:

Tweet about this on TwitterShare on Google+Share on Facebook

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *