Ssas 具有非空最后一个子项的MDX命名集

Ssas 具有非空最后一个子项的MDX命名集,ssas,mdx,cube,Ssas,Mdx,Cube,我有一个“趋势”维度。层次结构是,趋势->周->日。事实与“Day”键有关。无法保证度量值在给定的一周内的所有天都存在 当用户希望在“周”级别查看度量值时,我只需要显示该周的最后一个空日值。我有多个度量值,因此我对为每个度量值创建新的计算度量值不感兴趣(如) 相反,有没有办法创建一个命名集,我可以用它实现以下功能 示例 Week Day Measure 1 1 4 1 2 5 2 3 7 2 7

我有一个“趋势”维度。层次结构是,趋势->周->日。事实与“Day”键有关。无法保证度量值在给定的一周内的所有天都存在

当用户希望在“周”级别查看度量值时,我只需要显示该周的最后一个空日值。我有多个度量值,因此我对为每个度量值创建新的计算度量值不感兴趣(如)

相反,有没有办法创建一个命名集,我可以用它实现以下功能

示例

Week    Day    Measure
1       1      4
1       2      5
2       3      7
2       7      9
3       5      10
应达到“周”级别,如


谢谢!:)

如果您想创建一个可重复用于多个度量的计算成员,可以创建一个只包含一组计算成员的实用工具维度。不知道如何在SSAS中做到这一点(我熟悉icCube)。然后,您可以在请求中使用此层次结构来应用计算成员

让我们以你为例。我称之为效用维度[Stats]。其默认成员是返回当前度量值的计算成员。它包含[最后一天]计算成员

成员[Stats].[Stats].[Last Day]为(

挑选 [Measures]。0上的成员, [Trend].[Trend].[Week]。1上的成员

从[你的立方体]

其中[Stats].[Stats].[上个月]


您可以在应用于SELECT的每个[MEasures]的切片器中看到[Last Month]的技巧。然后,其公式使用当前[MEasures]的非空[Days](与基于键的顺序()相反-您可能需要调整).

如果您想创建一个可用于多个度量值的计算成员,您可以创建一个只包含一组计算成员的实用工具维度。不知道如何在SSAS中做到这一点(我熟悉icCube)。然后您可以在请求中使用此层次结构来应用计算成员

让我们举个例子。我调用了实用程序维度[Stats]。它的默认成员是返回当前度量值的计算成员。它包含[Last Day]计算成员

成员[Stats].[Stats].[Last Day]为(

挑选 [Measures]。0上的成员, [Trend].[Trend].[Week]。1上的成员

从[你的立方体]

其中[Stats].[Stats].[上个月]

您可以在应用于SELECT的每个[MEasures]的切片器中看到[Last Month]的技巧。然后,它的公式为当前[MEasures]使用非空的[Days](与基于键的顺序()相反-您可能需要调整)

Week    Day    Measure
1       2      5
2       7      9
3       5      10
NonEmpty( 

   Order( [Trend].[Trend].currentMember.children, 
          [Trend].[Trend].currentMember.properties( 'key', TYPED ), 
          BDESC 
   ), 
   [Stats].[Stats].defaultMember 

).item(0), 

[Stats].[Stats].defaultMember  )