Интеллект на основе разных типов года - PullRequest
0 голосов
/ 29 мая 2018

Я занимаюсь разработкой куба OLAP с использованием SQL Server 2008 SSAS.

У меня есть таблица dimDate, и мои данные фактов должны быть разделены по двум различным типам года.

  • Первый является календарным годом, то есть с 1 января по 31 декабря

  • Второй является годом производства сельскохозяйственных культур, которыйначинается 1 июля и заканчивается 30 июня

Вот как выглядит моя таблица дат:

enter image description here

Итак, YearG, MonthG иQuarterG представляет производственные значения.

Все работает до тех пор, пока я срезаю данные факта прямо в этих полях, но попытка использовать более сложные вычисления, такие как параллельный период, ytd и т. Д., Не работает на этом, так как вычисляетна основе года, полученного из ключа даты, который является календарным годом.

Вот пример MDX для вычисления YTD, который я выполняю в этом кубе:

AGGREGATE((ANCESTOR([Dim Date 2].[Time].Currentmember, [Dim Date 2].[Time].[Year])), [Measures].[NIS])

Как я могу сделатьон показывает правильную агрегацию для производителявторой год?То есть сумма всех значений меры с 1 июля до текущего нарезанного времени?

Спасибо

...