Срез раздела SSAS на основе вычисленного элемента измерения - PullRequest
3 голосов
/ 16 апреля 2019

У меня есть куб SSAS, где данные разделены на текущий год, прошлый год и до прошлого года.Я хотел бы установить свойство среза раздела для разделов, но у меня возникли проблемы с его корректной обработкой.

После просмотра SSAS Partition Slice Expression я определил вычисленныйчлен [Date].[Year].[All].[CurrentYear], и использовал это как выражение моего среза.Он определяется как:

StrToMember("[Date].[Year].&[" + Format(now(), "yyyy") + "]")

Когда я обрабатываю куб, происходит сбой с ошибкой «Нарушены ограничения, наложенные на срез раздела».Я проверил, что запрос, который строит срез, является правильным, и он работает, когда я использую выражение среза [Date].[Year].&[2019].

Есть ли что-то неправильное, что я делаю здесь, или это япытаться сделать невозможно?

1 Ответ

2 голосов
/ 17 апреля 2019

Выражение среза раздела SSAS довольно ограничено.Вы не можете использовать динамические функции MDX;более того, вы не можете указывать бесконечные диапазоны, такие как {NULL:[Date].[Calendar].[Dec, 2008]}.Вы должны явно указать выражение среза, перечислив при необходимости все его элементы.
Документация MS , к сожалению, не завершена.Я бы проверил, нужен ли вам кусочек;Сам SSAS выполняет довольно хорошую работу по автоматическому определению срезов при обработке.
Другой возможный подход - определить элемент статического измерения в указанной иерархии и использовать его в выражении среза раздела.Важно использовать ту же иерархию.

...