Ssas 如果当前成员有子级,则展开用户层次结构-MDX
我有一个用户层次结构,仅当用户有子级时,我才希望展开和向下钻取。如果层次结构中的成员没有子成员,我想隐藏此成员 下面的查询将获取层次结构中级别1上的所有成员,但我只想显示那些至少有一个子成员的成员 with member [Test] as '0' SELECT { [Test] } ON COLUMNS, non empty { ( [Dim User].[UserHierarchy].[UserLevel1].AllMembers ) }Dimension Properties MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS FROM [Activities] 成员[Test]为“0” 挑选 列上的{[Test]},非空 { ( [Dim用户].[UserHierarchy].[UserLevel1]。所有成员 ) }维度属性成员标题, 行上的成员\唯一\名称 来自[活动]Ssas 如果当前成员有子级,则展开用户层次结构-MDX,ssas,mdx,business-intelligence,Ssas,Mdx,Business Intelligence,我有一个用户层次结构,仅当用户有子级时,我才希望展开和向下钻取。如果层次结构中的成员没有子成员,我想隐藏此成员 下面的查询将获取层次结构中级别1上的所有成员,但我只想显示那些至少有一个子成员的成员 with member [Test] as '0' SELECT { [Test] } ON COLUMNS, non empty { ( [Dim User].[UserHierarchy].[UserLevel1].AllMembers ) }Dimension Properti
我怎样才能做到这一点?用户层次结构参差不齐 对于其他有同样问题的人,以及追求excel那种效果的人,如果用户层次结构的维度仅针对家长展开,则可以这样做:
WITH
MEMBER [Measures].[Test] AS
0
SELECT
{
[Test]
} ON 0,
NON EMPTY {
FILTER (
[Dim User].[UserHierarchy].[UserLevel1].AllMembers
,[Dim User].[UserHierarchy].CurrentMember.Children.Count > 0
)
} ON 1
FROM [Activities]
WITH
MEMBER [Measures].[Test] AS
0
SELECT
{
[Test]
} ON 0,
NON EMPTY {
filter (
{[dim user].[userhierarchy].[userlevel1].allmembers }
,[dim user].[userhierarchy].currentmember.children.count > 1
),
filter (
{[dim user].[userhierarchy].[userlevel2].allmembers }
,[dim user].[userhierarchy].currentmember.children.count > 1
),
filter (
{[dim user].[userhierarchy].[userlevel3].allmembers }
,[dim user].[userhierarchy].currentmember.children.count > 1
),
filter (
{[dim user].[userhierarchy].[userlevel4].allmembers }
,[dim user].[userhierarchy].currentmember.children.count > 1
),
filter (
{[dim user].[userhierarchy].[userlevel5].allmembers }
,[dim user].[userhierarchy].currentmember.children.count > 1
),
filter (
{[dim user].[userhierarchy].[userlevel6].allmembers }
,[dim user].[userhierarchy].currentmember.children.count > 1
),
filter (
{[dim user].[userhierarchy].[userlevel7].allmembers }
,[dim user].[userhierarchy].currentmember.children.count > 1
),
filter (
{[dim user].[userhierarchy].[userlevel8].allmembers }
,[dim user].[userhierarchy].currentmember.children.count > 1
),
filter (
{[dim user].[userhierarchy].[userlevel9].allmembers }
,[dim user].[userhierarchy].currentmember.children.count > 1
),
filter (
{[dim user].[userhierarchy].[userlevel10].allmembers }
,[dim user].[userhierarchy].currentmember.children.count > 1
)
} ON 1
FROM [Activities]
具有
成员[测量][测试]为
0
挑选
{
[测试]
}0,,
非空{
滤器(
{[dim user].[userhierarchy].[userlevel1].allmembers}
,[dim user].[userhierarchy].currentmember.children.count>1
),
滤器(
{[dim user].[userhierarchy].[userlevel2].allmembers}
,[dim user].[userhierarchy].currentmember.children.count>1
),
滤器(
{[dim user].[userhierarchy].[userlevel3].allmembers}
,[dim user].[userhierarchy].currentmember.children.count>1
),
滤器(
{[dim user].[userhierarchy].[userlevel4].allmembers}
,[dim user].[userhierarchy].currentmember.children.count>1
),
滤器(
{[dim user].[userhierarchy].[userlevel5].allmembers}
,[dim user].[userhierarchy].currentmember.children.count>1
),
滤器(
{[dim user].[userhierarchy].[userlevel6].allmembers}
,[dim user].[userhierarchy].currentmember.children.count>1
),
滤器(
{[dim user].[userhierarchy].[userlevel7].allmembers}
,[dim user].[userhierarchy].currentmember.children.count>1
),
滤器(
{[dim user].[userhierarchy].[userlevel8].allmembers}
,[dim user].[userhierarchy].currentmember.children.count>1
),
滤器(
{[dim user].[userhierarchy].[userlevel9].allmembers}
,[dim user].[userhierarchy].currentmember.children.count>1
),
滤器(
{[dim user].[userhierarchy].[userlevel10].allmembers}
,[dim user].[userhierarchy].currentmember.children.count>1
)
}在1号
来自[活动]
查询将自动检查用户层次结构,并自动下到必要的级别。感谢比尔提出他的解决方案,让我走上正轨。感谢比尔的回答。如果我想显示层次结构,例如从级别1到级别8,我将如何将您的答案转化为向我显示父母的完整层次结构?你的答案是,只隐藏层次结构中的成员,而他们的数字仍然显示在度量中吗?