0

我坚持将不同的 MDX 条件合并到 MDX-SSAS 上的一个语句中。

详细信息:我有一个多维数据集(验收),其数据如下:

Uniq_ID        Acceptance_Type        Responsible_Area
   1              Accepted                FrontEnd
   2              Denied                  BackEnd
   3              Accepted                FrontEnd
   4              Accepted                FrontEnd
   5              Denied                  BackEnd
   6              Accepted                BackEnd
   7              Denied                  BackEnd
   8              Accepted                FrontEnd
   9              Accepted                BackEnd

逻辑:

(UniqID 计数,其中 Acceptance_type = 'Accepted' 和 Responsible_Area = 'FrontEnd' / count(ALL))

此时,我在 SSAS 中创建了 3 个计算成员以获得接受率:

1. [Count of Accepted] --> 这里我只统计所有成员 WHERE Acceptance_type = "Accepted"

代码: ([AcceptanceType].[AcceptanceType].[AcceptanceTypeID].&[2],[Measures].[count])

2. [Count of Accepted with Responsible area Frontend] 这里我再添加一个Responsible_area = FrontEnd的条件

代码: ([AcceptanceType].[AcceptanceType].[AcceptanceTypeID].&[2],[Measures].[Count of Accepted]) 请注意,我使用的是在 1 中创建的度量

3. [接受率]
**代码:
IIF([Measures].[Count] = 0, NULL, [Count of Accepted with Responsible area Frontend] / [Measures].[Count])

我实际上是在链接计算的成员.

我想将所有点 1、2、3 合并为一个,但我无法这样做。我正在使用 Microsoft Visual Studio -SSAS。

4

1 回答 1

0

您可以像这样在一次计算中做到这一点。请注意,我编造了前端成员参考,因为您的问题中没有示例:

DIVIDE(
 ([AcceptanceType].[AcceptanceType].[AcceptanceTypeID].&[2],[ResponsibleArea].[ResponsibleArea].&[Frontend],[Measures].[count]),
 [Measures].[count]
)

请注意,DIVIDE 只是IIf(count=0,,)代码的快捷方式。除非您拥有旧版本的 SSAS,否则它应该可以工作。

于 2016-12-03T01:30:54.417 回答