SSAS:使用钻取操作按MDX条件折叠

时间:2014-02-03 11:08:18

标签: ssas mdx bids

我有一个参差不齐的用户层次结构,在维度中有一个自定义内部层次结构,称为[Dim User]。[User Hierarchy],它基于非规范化的Level1,Level2,Level3,Level4,Level5。我想要的是根据用户类型SHOP的后代的用户类型的条件折叠用户层次结构。

我所做的是创建了一个钻取操作,具有以下条件:

IIF([Dim User Balance].[User Type Key].CurrentMember IS 
descendants({[Dim User Type].[UserTypeIdHierarchy].&[9]},0,self), TRUE, FALSE)

然而,当我尝试通过动作访问练习时,我似乎无法在任何地方找到它?我错过了什么?或者也许更好的做到这一点?

尝试使用mdx执行此操作时,此查询会遗漏成员:

SELECT
{  
[Measures].[Measure] 
    } ON 0, non empty  { 
        FILTER (
            {[Dim User].[User Hierarchy].[Level1].allmembers  }
            ,[Dim User].[User Hierarchy].CurrentMember.Children.Count > 1
        ) 
    } ON 1

    from [cube]

当这样做的时候:

SELECT
{  
[Measures].[comp money in] 
    } ON columns,{
    descendants( [Dim User].[UserHierarchy].children,0,self) * 
    descendants([Dim User].[UserTypeIdHierarchy].&[9],0,self)}
    on rows
    from [activities]

它排除了度量中用户层次结构的后代,这不是我想要的。我希望所有数字仍然可以汇总。这是我关注的Y轴上显示的内容。我希望它专注于特定的用户类型,这些用户类型从9开始。

0 个答案:

没有答案