Ssas 将KPI值限制为同一层次结构的多个成员
我所在的一家公司要求提供一份有关加班时间的KPI。他们想测量它是否低于他们设定的3%的阈值。有一个名为[Measures].[Percentage of加班时间(%)]的计算成员,可供使用 但是,他们希望将KPI仅限于可供其使用的两个部门 我试图通过指定此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
([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;