覆盖计算成员(SSAS)上的上下文维度
让我们假设一个简单的场景:一个具有两个维度D1和D2的事实表F覆盖计算成员(SSAS)上的上下文维度,ssas,mdx,Ssas,Mdx,让我们假设一个简单的场景:一个具有两个维度D1和D2的事实表F F D1 D2 10 A B 15 B C 在这个场景中,我使用一个比这个更接近的表达式定义了一个新的计算成员C1: with member measures.C1 as sum( descendants( [D1].[Ds].currentMember, , leaves ), [myMeasure] ) select measures.C1 on 0, [D2].[Ds].AllMemb
F D1 D2
10 A B
15 B C
在这个场景中,我使用一个比这个更接近的表达式定义了一个新的计算成员C1:
with member measures.C1 as
sum(
descendants( [D1].[Ds].currentMember, , leaves ),
[myMeasure]
)
select
measures.C1 on 0,
[D2].[Ds].AllMembers on 1
from [MyCube]
如何修改C1以始终合并表达式中的所有D2成员
我得到了这样的结果:
C1 D2
10 B
15 C
我在找这个:
C1 D2
35 B
35 C
(当然,这是实际问题的简化,请不要尝试修复C1表达式,只添加代码以获得预期结果,我已尝试使用:
sum(
{ descendants( [D1].[Ds].currentMember, , leaves ),
[D2].[Ds].AllMembers },
[myMeasure]
(未成功)
关于。对于此特定示例,请将您的会员声明更改为以下内容
WITH MEMBER [Measures].[C1] AS
SUM([D1].[Ds].[All], [myMeasure])
这将为您提供该维度中的所有度量。然后,应该为D2维度中的每个属性重复该值
根据问题的标题和你的一些文章,这只是一个小例子。也许你需要调查一下。它非常强大,你可以用它做一些简单的事情。我不确定我是否理解你想要的输出。你能解释一下为什么35 B会显示两次吗?@Rick,谢谢你的评论。答案是固定的。