IcCube报告:如何停止层次结构中的钻取?

时间:2017-05-04 11:08:18

标签: mdx iccube iccube-reporting

当我们查询具有多个级别的维度/层次结构时,默认情况下允许该钻取通过该层次结构的所有级别... 例如,在由Continent/Country/State/City

组成的层次结构中

将钻取限制到州级(即不显示城市级别)的解决方案是什么,而不必在没有城市的情况下创建新的层次结构?

我听说可以使用架构脚本中的功能来“平坦化”层次结构。

有人可以给我一个实例吗?

1 个答案:

答案 0 :(得分:1)

第一种是将我们的导航映射为MDX功能(您也可以复制和粘贴代码,但没有重用)。像这样的思考(销售示例):

CREATE FUNCTION navigationDemo(_x) AS 
            {
            CASE  
            WHEN _x.hierarchy is [Customers].[Geography] THEN [Product].[Product].[Category]
            WHEN _x.hierarchy is [Product].[Product] THEN [Time].[Year].[Year]
            ELSE {}
            END
            }

完成此操作后,我们可以转到我们的小部件,在我们的示例中是一个表,并定义一个向下钻取策略。它应该是mdxExpression类型,我们可以在MDX Expression中插入我们新创建的函数

navigationDemo( $member )   // where $member is the clicked member in the table

不要忘记将'过滤器设置为'因为我们希望被点击的成员过滤新数据。

enter image description here