MDX计算成员维度上下文

时间:2016-08-28 09:55:23

标签: ssas mdx

我有以下计算成员,表示“积压”产品的数量:

WITH 
    MEMBER [Measures].[Overstocked Items Count] AS 
        FILTER(
            [Items].[Item No].CHILDREN,
            [Measures].[Overstocked Qty] > 0
        ).COUNT

除了Items维度本身之外,它对于任何链接到度量值组维度的效果都很好,原因很明显。有没有办法创建一个计算成员,尊重它所评估的上下文?因此,基本上如果根据项目组代码评估此成员,我需要按这些组计算项目,而不是整个项目集。

1 个答案:

答案 0 :(得分:3)

EXISTING是一个非常有用的关键字,可以将当前上下文添加到您的度量中:

WITH 
    MEMBER [Measures].[Overstocked Items Count] AS 
        FILTER(
            EXISTING([Items].[Item No].CHILDREN),
            [Measures].[Overstocked Qty] > 0
        ).COUNT
当您想要了解相同维度中不同层次结构中的成员时,

EXISTING非常好。例如假设您从国家/地区层次结构(地理维度)中选择了美国,并且您需要从stateCounty层次结构中计算州/县成员,这也是地理维度的一部分,然后EXISTING是正确的选择。

如果你想跨越尺寸,那么说你已经选择了美国,并且你想要计算客户,从与美国相关联的客户维度那么我就不会想到EXISTING会有效 - 您需要探索EXISTSNONEMPTY