计算成员的条件公式

Conditional formula for Calculated member

我在多维数据集中创建了计算成员,如下所示:

CREATE MEMBER [Custom].[Rolling 12] as Aggregate([Time].[Time].currentmember:[Time].[Time].currentmember.Lag(11), [Custom].[Frequency].defaultMember)

它会汇总过去 12 个月的多维数据集中任何度量。但是我有一个平均余额度量,它不应该汇总,而是在上面定义的同一时期内取平均值。

那么,是否可以这样写(伪代码):

CREATE MEMBER [Custom].[Rolling 12] as 

如果度量名称 = 平均余额则

平均([时间].[时间].currentmember:[时间].[时间].currentmember.Lag(11), [自定义].[频率].defaultMember)

else if 任何其他措施

聚合([时间].[时间].currentmember:[时间].[时间].currentmember.Lag(11), [自定义].[频率].defaultMember)

保持初始计算不变(使用 aggregate() 函数)。

您只能为此度量编写范围:

SCOPE([Custom].[Rolling 12],[Measures].[Average Balance]);
THIS = {your custom average calculation};
END SCOPE;

或w/o SCOPE 它必须以这种方式工作:

([Custom].[Rolling 12],[Measures].[Average Balance]) = {your custom average calculation};