2013-05-03 65 views
1

我有一个名为FactSales的测量方块,每个方块都有条目。SSAS已计算的会员

我有三个维度,日期,客户和CustomerType。

每个FactSales行通过外键链接到日期和客户。客户通过外键链接到客户类型。

从这我能够吐出每个客户在每个日期,这是伟大的所有销售数字。

我有多种类型:typeA,typeB,typeC,typeD,typeE。

我想要的是创建两个计算成员,其中每个客户按照类型A汇总值,然后再按其他类型汇总。

我目前所面对的是一样的东西

Case 
    When IsEmpty([Measures].[FactSales]) or [Customer].[CustomerType].currentmember <> [Customer].[CustomerType].&[typeA] 
    Then null 
    ELSE ([Customer].[CustomerType].&[typeA], [Measures].[FactSales]) 
END 

,但我认为这是不对的,我也不能使用相同的方法来获得所有其他类型排除的typeA的价值。当我把它推到更高的水平时,我也没有得到聚合。

任何人都可以帮忙吗?我可能没有足够好地解释我的自我,所以请让我知道你是否需要更多信息。

回答

1

为什么你试图这样做?存储任何与单个事实无关的计算是不好的,实际上表格行中的数据应该只对应于一个系统事实(顺序,作业等),并且对于聚合,您将能够基于任何维度获取数据。 您当前的结构非常好,您可以通过将客户类型维度切分为多维数据集来轻松获取计算结果。