Фильтр даты MDX для измерения PerformancePoint
Может кто-нибудь дать мне указатель на то, как написать запрос MDX, который показывает последние X лет до вчерашнего дня в MDX? Я искал, но по MDX навыки в лучшем случае являются базовыми, и я изо всех сил пытаюсь правильно перевести примеры в блок формул.
Моя иерархия измерения даты выглядит следующим образом:
[Дата].[Дата].[Год].&[2017]
Всякий раз, когда я фильтрую результаты, я часто теряю иерархию и показываю только годы. Я надеюсь, что я могу найти запрос, который сохраняет структуру Год> Квартал> Месяц> День в фильтре древовидной структуры.
Почему я хочу это сделать? Мои данные сохраняются до вчерашнего дня, и когда я использую фильтр текущего диапазона дат на панели инструментов для "Этот месяц", он включает все дни в будущем на октябрь 2017 года, что делает мой KPI нестабильным, поскольку есть дни, которые еще не были факты происходят против них.
1 ответ
Я нашел этот фрагмент MDX, который сделал именно то, что мне было нужно. Зная, что по крайней мере один случай создается каждый день, это предотвратит показ любых будущих дат. TOPCOUNT показывает последние 5000 экземпляров моей иерархии дат (самый последний из которых относится к 2001 году). Затем он вписывается в настраиваемый фильтр MDX PerformancePoint:
ORDER(
NONEMPTY( TOPCOUNT({[Date].[Dates].AllMembers},
5000,
[Measures].[Total Cases Created] )), [Date].
[Dates].CurrentMember.MEMBER_KEY, ASC
)