Reporting services MDX-元组中的最后一级-SSRS查询设计器

Reporting services MDX-元组中的最后一级-SSRS查询设计器,reporting-services,mdx,Reporting Services,Mdx,我的多维数据集中有这样一个特定组的层次结构(这是一个图像:): 我想知道如何只显示这个组的最后一级。因为当我写[Group]时,我会有来自各个级别的所有成员。主要条件是我不知道最后一个级别是级别04(可能有4个以上的级别) 有什么我应该知道的功能吗 当层次结构的级别数未知/不断变化时,可以使用hierarchy.levels.count获取层次结构中的级别数。从那里,您可以使用Levels功能获得最低级别。你必须减去1,因为它是以零为基础的位置 [Group].[Group].Levels([G

我的多维数据集中有这样一个特定组的层次结构(这是一个图像:):

我想知道如何只显示这个组的最后一级。因为当我写
[Group]
时,我会有来自各个级别的所有成员。主要条件是我不知道最后一个级别是
级别04
(可能有4个以上的级别)


有什么我应该知道的功能吗

当层次结构的级别数未知/不断变化时,可以使用hierarchy.levels.count获取层次结构中的级别数。从那里,您可以使用Levels功能获得最低级别。你必须减去1,因为它是以零为基础的位置

[Group].[Group].Levels([Group].[Group].levels.count-1)
您也可以使用子体执行此操作。后代函数中的第二个参数是与指定成员的距离,因此必须从级别计数中减去1。下面是一个示例查询

select {} on 0, 
descendants([Group].[Group].[All], ([Group].[Group].levels.count - 1), SELF) on 1
from [Cube]
注意:如果你有一个参差不齐的层次结构(我猜你是这样做的,因为你不知道层次的数量),这只会拉最低层次的成员,而不是所有的叶子。如果您使用hidememberif隐藏重复成员,使其不是自己的父成员,那么您真正需要的是所有叶子,您可以在“后代”函数中指定它们

select {} on 0, 
    descendants([Group].[Group].[All], , LEAVES) on 1
    from [Cube]

当层次结构的级别数未知/不断变化时,可以使用hierarchy.levels.count获取层次结构中的级别数。从那里,您可以使用Levels功能获得最低级别。你必须减去1,因为它是以零为基础的位置

[Group].[Group].Levels([Group].[Group].levels.count-1)
您也可以使用子体执行此操作。后代函数中的第二个参数是与指定成员的距离,因此必须从级别计数中减去1。下面是一个示例查询

select {} on 0, 
descendants([Group].[Group].[All], ([Group].[Group].levels.count - 1), SELF) on 1
from [Cube]
注意:如果你有一个参差不齐的层次结构(我猜你是这样做的,因为你不知道层次的数量),这只会拉最低层次的成员,而不是所有的叶子。如果您使用hidememberif隐藏重复成员,使其不是自己的父成员,那么您真正需要的是所有叶子,您可以在“后代”函数中指定它们

select {} on 0, 
    descendants([Group].[Group].[All], , LEAVES) on 1
    from [Cube]

第二个查询对我来说是最好的,因为第三个查询提供了所有级别的所有叶子。例如,我有这样的情况,在
02级
中,我还有一片叶子,也会显示出来——这是我不想要的。但我还有一个问题(也许是为了另一个话题)。只有在SSRS的设计模式下使用此代码,我才能得到这种情况。在查询设计器中有这样做的选项吗?第二个查询对我来说是最好的,因为第三个查询提供了所有级别的所有叶子。例如,我有这样的情况,在
02级
中,我还有一片叶子,也会显示出来——这是我不想要的。但我还有一个问题(也许是为了另一个话题)。只有在SSRS的设计模式下使用此代码,我才能得到这种情况。在查询设计器中是否有执行此操作的选项?