MDX结果集组由自定义名称组成

时间:2011-12-24 03:27:07

标签: ssas mdx

我在开发报告时想出了一个方案,我需要先用自定义名称对结果集进行分组,然后是年份。

  

WITH MEMBER [措施]。[上一年互联网销售额]   如   (   [措施]。[互联网销售额],   PARALLELPERIOD   ([日期]。[日历年]。[日历年],1,[日期]。[日历年] .CurrentMember)   ),FORMAT_STRING =“货币”

     

会员[措施]。[Varience] AS   (   [措施]。[互联网销售额] - [措施]。[上一年互联网销售额]   )   会员[措施]。[PercentageVarience] AS   (   [措施]时的情况。[上一年互联网销售额]是空或非([措施]。[上一年互联网销售额])那么1        何时[措施]。[互联网销售额]是否为-100   ELSE [措施]。[Varience]    /   [措施]。[上一年互联网销售额]   结束 )   ,FORMAT_STRING =“百分比”   会员[措施]。[上一年互联网订单数量]   如   (   [措施]。[互联网订单计数],   PARALLELPERIOD   ([日期]。[日历年]。[日历年],1,[日期]。[日历年] .CurrentMember)   )

     

会员[措施]。[订单数量变化] AS   (   [措施]。[互联网订单计数] - [措施]。[上一年互联网订单数量]   )   会员[措施]。[订单数量百分比] AS   (   [措施]时的情况。[上一年的互联网订单计数]是空或非([措施]。[上一年互联网订单计数])那么1        何时[措施]。[互联网订单计数] IS NULL THEN -1   ELSE [措施]。[订单数量变化]    /   [措施]。[上一年互联网订单数量]   结束 )   ,FORMAT_STRING =“百分比”

     

SELECT {[measures]。[上一年互联网销售额],[Measures]。[Internet Sales Amount]   ,[措施]。[Varience],[Measures]。[PercentageVarience]   ,[措施]。[上一年互联网订单计数],[措施]。[互联网订单计数]   ,[措施]。[订单数量变化],[措施]。[订单数量百分比]}在列上   ,[日期]。[日历年]。儿童在行   来自[冒险作品]

前4列的结果集需要作为[Internet Sales],接下来的4列作为[Internet Orders],因此在报表图层中我通过带有自定义名称的选项获取组。 MDX的预期输出为 enter image description here 您能帮我找到一种方法将组列添加到结果集

1 个答案:

答案 0 :(得分:4)

您可以在其他维度上使用假的mdx calculated members来获取您的标签。在我们的示例中,让我们使用[Organization]维度:

WITH 
  // Does not change the value of a tuple
  MEMBER [Organization].[Organizations].[Internet Sales] as [Organization].[Organizations].defaultmember 
  MEMBER [Organization].[Organizations].[Internet Order] as [Organization].[Organizations].defaultmember
SELET
  {[Organization].[Organizations].[Internet Sales]} * {[measures].[Previous Year Internet Sales Amount],[Measures].[Internet Sales Amount] , [measures].[Varience],[Measures].[PercentageVarience]}
  +
  {[Organization].[Organizations].[Internet Order]} * {[measures].[Previous Year Internet Order Count],[Measures].[Internet Order Count] , [measures].[Order Count Varience],[Measures].[Order Count PercentageVarience]} 
  ON 0,
... as your request

那应该得到你的结果