Pentaho 5.1.2.1.137
我已经使用包含3个级别的层次结构定义了一个维度:企业,部门,商店。 在我的立方体中,我有一个CalculatedMember,它计算该层次结构当前成员的商店数量。它看起来像这样:
<CalculatedMember name="Store count" dimension="Measures">
<Formula>Count(Descendants([Location.Location].CurrentMember, [Store]))</Formula>
</CalculatedMember>
......这个工作正常,直到......
我尝试生成一个报告,其中我设置了“分区包括分区1”的过滤器。 如果报表包含Enterprise,Division和Store计数列,则此方法有效,但如果报表仅包含Enterprise和Store计数列,则不行。在这种情况下,即使分区1中有5个商店,商店计数也会设置为0。
我无法弄清楚如何使公式考虑当前的查询上下文(如果这确实是问题)。
提前致谢。
答案 0 :(得分:0)
您的查询不会点击Division
,因为在您的公式中您引用了[Location.Location].CurrentMember
,这意味着如果在其他轴上没有指定Division
级别,您将无法获得结果
您可以修改公式以始终使用最低级别,并添加EXISTING关键字,这将强制服务器使用当前过滤上下文:
Count(EXISTING [Location.Location].[Store].members)