Mdx 是否可以基于icCube中的其他平面层次结构创建层次结构(向下钻取结构)?

Mdx 是否可以基于icCube中的其他平面层次结构创建层次结构(向下钻取结构)?,mdx,drilldown,iccube,Mdx,Drilldown,Iccube,我希望构建尽可能深入的层次结构,为用户提供数据的“导航路径” 通常,由于源数据限制,元数据无法正确放置到多级层次结构中,因此我会被阻止。或者,如果我设法解决了这个问题,我只能创建一个导航路径,而不能创建一个混合级别的替代路径 例如,考虑以下成本中心结构: 业务单元>经理>部门>成本中心 为了加强这种结构,我必须在ETL中做大量准备,以确保这些关系始终存在 是否可以在icCube中为这个(和类似的)示例定义4个层次结构: - Business Unit -> flat Business Un

我希望构建尽可能深入的层次结构,为用户提供数据的“导航路径”

通常,由于源数据限制,元数据无法正确放置到多级层次结构中,因此我会被阻止。或者,如果我设法解决了这个问题,我只能创建一个导航路径,而不能创建一个混合级别的替代路径

例如,考虑以下成本中心结构: 业务单元>经理>部门>成本中心

为了加强这种结构,我必须在ETL中做大量准备,以确保这些关系始终存在

是否可以在icCube中为这个(和类似的)示例定义4个层次结构:

- Business Unit -> flat Business Unit -- links to fact
- Manager -> flat hierarchy Manager -- links to fact
- Department -> flat hierarchy Department -- links to fact
- Cost Center -> flat hierarchy Cost Center -- links to fact
作为下一步,基于这些定义以下层次结构(有点类似于icCube的MDX+类别函数):

层次结构/导航路径:

Cost Center (BMDC) 
level 1: [Business Unit]
level 2: drill down to [Manager]
level 3: drill down to [Department]
level 4: drill down to [Cost Center]
而且:

Cost Center (MBDC)
level 1: [Manager]
level 2: [Business Unit] (that belong to this manager)
level 3: [Department] (that belong to this Business Unit)
level 4: [Cost Center] (that belong to this Department)
或者像这样缓慢变化的结构:

Cost Center (Year)
level 1: [Year]
level 2: [Business Unit]
level 3: [Cost Center]
Product - Customer
level 1: [Product]
level 2: [Customer]
或者只是一个有用的最终用户导航路径,如下所示:

Cost Center (Year)
level 1: [Year]
level 2: [Business Unit]
level 3: [Cost Center]
Product - Customer
level 1: [Product]
level 2: [Customer]
然后,作为逻辑上的下一步,我想在仪表板过滤器中使用这些导航路径来显示层次结构,供最终用户浏览。在我看来非常强大


在icCube中可以这样做吗?

如果我们想在报告中使用此功能,创建新的“物理”层次结构不是最好的主意。在这里,我将解释一个基于icCube报告的解决方案

第一点是在服务器中定义导航策略。为此,您可以使用负责“分支”的。作为参数,我们将获取要向下钻取的MDX成员(_成员)

比如:

CREATE FUNCTION ic3N_Simple(member_) as
     CASE
        WHEN member_.hierarchy is [Customers].[Geography] THEN [Time].[Calendar].[Year]
        WHEN member_.hierarchy is [Time].[Calendar] THEN Tail([Product].[Category],4)
        ELSE member_.children
     END
完成后,我们可以转到报告,并在任何小部件中使用此策略:


您在报告中定义了一个策略,该策略在服务器中定义,可以在任何报告中重复使用

谢谢,这是一个非常好的解决方案。我希望在应用程序菜单中的MDX过滤器(层次结构)和全局过滤器上也应用此功能。就目前而言,这是可行的。