代码之家  ›  专栏  ›  技术社区  ›  BOENDAGGER

SSAS计算成员以确定属性具有值的百分比

  •  0
  • BOENDAGGER  · 技术社区  · 8 年前

    我对编写MDX查询还不熟悉,而且我在将查询组合在一起时遇到了一些问题,这些问题应该很简单。

    项目 ). 事实表中有一列表示该项已获批准的日期。并非所有项目都已批准,在这种情况下,AprovalDate将为空。

    我需要做的是显示在透视表中遍历多维数据集时已批准的项的百分比。我不太明白如何定义将执行此计算的计算成员。

    我目前有以下:

    CREATE MEMBER CURRENTCUBE.[Measures].[Percentage Approved]
    AS IIF(
        [Measures].[Item Count] = 0, 
        0, 
        SUM({[Item].[Has Status Approved].&[1]},[Measures].[Item Count]) / [Measures].[Item Count]
        ), 
    FORMAT_STRING = "Percent", 
    VISIBLE = 1;
    

    这似乎给出了正确的结果,但所有未经批准的项都从结果中筛选出来(因此仅显示100%已批准百分比的行)。

    我应该如何将MDX查询组合在一起以获得所需的结果?如有任何帮助/澄清,将不胜感激,我觉得这一切都很混乱

    1 回复  |  直到 8 年前
        1
  •  1
  •   whytheq    8 年前

    你需要所有的设计人员吗?

    CREATE MEMBER CURRENTCUBE.[Measures].[Percentage Approved]
    AS IIF(
        [Measures].[Item Count] = 0, 
        0, 
        SUM({[Item].[Has Status Approved].&[1]},[Measures].[Item Count]) / ( [Item].[All], [Measures].[Item Count])
        ), 
    FORMAT_STRING = "Percent", 
    VISIBLE = 1;