Я занимаюсь разработкой куба OLAP с использованием SQL Server 2008 SSAS.
У меня есть таблица dimDate
, и мои данные фактов должны быть разделены по двум различным типам года.
Первый является календарным годом, то есть с 1 января по 31 декабря
Второй является годом производства сельскохозяйственных культур, которыйначинается 1 июля и заканчивается 30 июня
Вот как выглядит моя таблица дат:
Итак, YearG, MonthG иQuarterG представляет производственные значения.
Все работает до тех пор, пока я срезаю данные факта прямо в этих полях, но попытка использовать более сложные вычисления, такие как параллельный период, ytd и т. Д., Не работает на этом, так как вычисляетна основе года, полученного из ключа даты, который является календарным годом.
Вот пример MDX для вычисления YTD, который я выполняю в этом кубе:
AGGREGATE((ANCESTOR([Dim Date 2].[Time].Currentmember, [Dim Date 2].[Time].[Year])), [Measures].[NIS])
Как я могу сделатьон показывает правильную агрегацию для производителявторой год?То есть сумма всех значений меры с 1 июля до текущего нарезанного времени?
Спасибо