Как выполнять отфильтрованные агрегации по полю фильтра в кубе olap?

В настоящее время у меня есть одно поле в таблице базы данных SQL под названием Amount. Это поле будет использоваться в отчете служб Reporting Services, который использует куб SSAS OLAP позади для отображения победителей и выплат. Плата за столбец отчета должна использовать это поле (я имею в виду сумму), отфильтрованное по статусу X, а победители столбца должны использовать это поле (также количество), отфильтрованное по статусу Y. Как я могу сделать это в кубе, чтобы использовать то же самое мера представлена ​​в двух столбцах с отфильтрованными значениями?

Я пытался использовать выражения меры, но не знаю, поможет ли этот трюк. Я тоже слышал о расчетных показателях, но не знаю, как это работает.

Любые идеи?


person José Amparo    schedule 29.11.2010    source источник


Ответы (1)


Добавьте в куб измерение [СТАТУС], содержащий элементы [X] и [Y]. Это может быть скрытое измерение. Добавьте [Amount] как меру и также скройте эту меру.

Затем добавьте в куб 2 вычисляемых показателя:

[Меры]. [Платеж] с выражением MDX:

([Status].[Status].[X], [Measures].[Amount])

И [Меры]. [Победители] как

([Status].[Status].[Y], [Measures].[Amount])
person Rudolf    schedule 30.11.2010
comment
+1 - Я столкнулся с некоторыми проблемами производительности с этим подходом на больших кубах, поэтому, если у вас очень большой, подумайте, можно ли это сделать как вычисление в DSV, чтобы материализовать эти значения? - person Meff; 01.12.2010