Ssas 将KPI值限制为同一层次结构的多个成员

Ssas 将KPI值限制为同一层次结构的多个成员,ssas,mdx,Ssas,Mdx,我所在的一家公司要求提供一份有关加班时间的KPI。他们想测量它是否低于他们设定的3%的阈值。有一个名为[Measures].[Percentage of加班时间(%)]的计算成员,可供使用 但是,他们希望将KPI仅限于可供其使用的两个部门 我试图通过指定此KPI值表达式来限制该值: ([Measures].[Percentage of Overtime Hours (%)], {[Project].[Project Department].&[Department A], [Projec

我所在的一家公司要求提供一份有关加班时间的KPI。他们想测量它是否低于他们设定的3%的阈值。有一个名为[Measures].[Percentage of加班时间(%)]的计算成员,可供使用

但是,他们希望将KPI仅限于可供其使用的两个部门

我试图通过指定此KPI值表达式来限制该值:

([Measures].[Percentage of Overtime Hours (%)], {[Project].[Project Department].&[Department A], [Project].[Project Department].&[Department B]})
但是,这给了我以下错误消息:

#Error The  function expects a string or numeric expression for the  argument. A tuple set expression was used.
在MSDN上,我找不到这个问题的答案。谷歌没有给我任何好的搜索结果,因为我不知道到底要搜索什么。限制度量值只会给我提供大量关于过滤器表达式如何工作的文章,这似乎不是我想要的

如何将KPI值仅限于这两个部门

我尝试按照建议使用范围语句

CREATE MEMBER  CURRENTCUBE.[Measures].[Percentage of Overtime Hours (%) for AB] AS null;

SCOPE([Measures].[Percentage of Overtime Hours (%) for AB]);
    This = NULL;

    SCOPE([Project].[Project Department].&[Company A]);
        This = ([Measures].[Percentage Overtime (%)], [Project].[Project Department].&[Company A]);
    END SCOPE;

    SCOPE([Project].[Project Department].&[Company B]);
        This = ([Measures].[Percentage Overtime (%)], [Project].[Project Department].&[Company B]);
    END SCOPE;

    SCOPE([Project].[Project Department].[All]);
        This = AGGREGATE({[Project].[Project Department].&[Company A], [Project].[Project Department].&[Company B]}, [Measures].[Percentage Overtime (%)]);
    END SCOPE;
END SCOPE;

然而,这似乎将同一问题推向更深的层次。在[项目].[项目部].[所有]级别查看[措施].[加班时间百分比(%)]时会变得清晰。它返回NULL。还有其他建议吗?

之所以出现错误,是因为您使用的是元组
(…)
,元组中只有一个成员,后面是一个集合:

( //<<braces indicate a tuple
  [Measures].[Percentage of Overtime Hours (%)]    //<<single member
 ,{
    [Project].[Project Department].&[Department A]  //<<two member set
   ,[Project].[Project Department].&[Department B]
  }
)

是否将此代码添加到
多维数据集脚本中?
?脚本中的聚合-参数的方式错误-[measures],一个数值表达式,应该是第二个参数。@whytheq更改了它,不幸的是相同的结果。在所有级别上仍然为空。也更新了我的帖子。还有其他想法吗?谢谢你的解释。我现在明白了为什么会出现错误,但我不清楚我能做些什么才能得到预期的结果。我怎样才能做到这一点?再次感谢你。在SSDT-BI SSAS中的KPI值下,但我可以在多维数据集脚本中将其创建为计算度量值,并将其添加到KPI_值下。这似乎是一个非常简洁的解决方案,它没有复制计算,现在就要尝试。尝试了,但遇到了相同的问题。请看我更新的帖子。真正的问题仍然是,如何正确地将这个非加性度量从多个集合汇总到所有集合?
CREATE MEMBER  currentcube.[Measures].[Percentage of Overtime Hours (%) for AB]
AS null;
SCOPE( ({
    [Project].[Project Department].&[Department A]
   ,[Project].[Project Department].&[Department B]
  },
  [Measures].[Percentage of Overtime Hours (%)]
 ));
this = [Measures].[Percentage of Overtime Hours (%)];
END SCOPE;