Использовать область действия для всех мер в кубе OLAP, кроме одной или нескольких выбранных рассчитанных мер - PullRequest
0 голосов
/ 02 мая 2018

Я создал область, которая делает вычисления времени. Проблема в том, что мне нужно, чтобы эти расчеты были рассчитаны для большинства мер и ничего не делать для некоторых специальных мер. Я знаю меры, которые я хочу выбросить из области видимости (например, [Measures].[Stock Unit Close]). Кроме того, эта мера рассчитывается. Я пытаюсь использовать

scope(EXCEPT([Measures].allmembers, [Measures].[Stock Unit Close])); ...; end scope;

но это не работает. Заканчивается этой ошибкой

Обнаружен набор, который не может содержать вычисляемых элементов. MdxScript (Core) (1510, 2) Обнаружен набор, который не может содержать вычисляемых элементов. Оператор END SCOPE не соответствует открывающему оператору SCOPE. MdxScript (Core) (1568, 1) Оператор END SCOPE не соответствует открывающему оператору SCOPE. В сценарии MDX обнаружена одна или несколько ошибок.

и, кроме того, этот кодекс работает только для натуральных мер, но не работает для вычисляемых мер.

Может кто-нибудь мне помочь, пожалуйста?

Ответы [ 2 ]

0 голосов
/ 02 мая 2018

Вы можете пропустить слово SCOPE и делать то, что вы хотите:

(EXCEPT([Measures].allmembers, [Measures].[Stock Unit Close])) = 123;

Этот трюк представляет собой скрытый способ определения физических и расчетных показателей одновременно.

0 голосов
/ 02 мая 2018

Я знаю, что это не совсем то, что вы хотите, потому что вы должны ОБРАТИТЬСЯ ко всем группам измерений по отдельности. Но, по крайней мере, не каждая мера.

Это работает как для натуральных, так и для вычисленных мер из группы мер.

например. Имя группы мер - «Активации», исключите одну меру из ОБЛАСТИ.

scope(MeasureGroupMeasures("Activations")-[Measures].[Average Activation Amount]);
this=1;
end scope;

или

scope(EXCEPT(MeasureGroupMeasures("Activations"),[Measures].[Client Accommodation Amount]));
this=1;
end scope;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...