Как умножить два показателя перед агрегацией - PullRequest
0 голосов
/ 30 ноября 2018

У меня есть две меры.Первый - это сумма, а второй состоит из значений -1,0 и 1, поэтому таблица выглядит следующим образом:

Amount   Sign
--------------
400      -1
200       1
300       0

Результат, который я хочу получить, равен 400*(-1) + 200*1 + 300*0 = -200, но я получаю (400+200+300)*(-1+1+0) = 0

Это мой расчетный член:

WITH 
  MEMBER [Measures].[Result]
  AS
[Measures].[Sign]*[Measures].[Amount]
select 
[Measures].[Result] on 0,
[Time].[Time].members on 1
from [MyCube]

1 Ответ

0 голосов
/ 30 ноября 2018

В вашем проекте SSAS перейдите в представление источника данных, для базовой таблицы фактов добавьте NamedCalculation.В этом умножение, которое вы объяснили.Теперь в Кубе добавьте это как меру.Он будет вести себя так, как вы хотите, чтобы он вел себя.

...