Как создать еженедельную таблицу фактов с исходными данными в ssas? - PullRequest
0 голосов
/ 26 июня 2019

У меня есть данные о заказе в базе данных транзакций с датой создания заказа.На основе созданной даты заказа и измерения времени-месяца заполняется таблица фактов заказа.Мои текущие данные о заказе указаны в месячном выражении, например, «201804», «201805»Теперь мне нужно построить таблицу фактов, которая будет предоставлять данные за неделю.Например: заказ AAA, созданный 01-09-2018, означает, что в моей таблице фактов должно быть 4 записи для этого заказа AAA с неделями 201838,201840,201841,201842 (YYYYWW).Как заполнить все 4 недели на основе созданной даты заказа?

Я создал свои факты в измерении Время-неделя.Я присоединился к измерению недели на основе года и условия даты заказа, как показано ниже

SELECT * from ORDER ORD INNER JOIN dbo.D_TYW_TimeYearWeek_T D_TYW ON (D_TYW.Year = ORD.ORD_AccountingYear AND D_TYW.Week = (SELECT FORMAT(DATEPART(ISO_WEEK, ORD.ORD_Date), '00')))

В моем измерении TimeYearWeek есть данные типа

D_TYW_ID Year Week StartDate EndDate 200301 2003 1 2003-01-01 00:00:00.000 2003-01-05 23:59:59.997 200302 2003 2 2003-01-06 00:00:00.000 2003-01-12 23:59:59.997 200303 2003 3 2003-01-13 00:00:00.000 2003-01-19 23:59:59.997

Моя недельная таблица фактов заполняется приведенной выше логикой кода, но не на все недели.Мой факт показывает данные только за 1-ю неделю сентября 2018 г. i.e201838 (2018 -W38), потому что дата создания заказа в '01 -09-2018 '

Мне нужна на все недели сентября, как действовать

...