【问题标题】:MDX Calculated Measure Year to Date年初至今的 MDX 计算量度
【发布时间】:2019-07-19 09:51:51
【问题描述】:

我有一个 OLAP 多维立方体,它最简单的形式包含:

  • 具有 NetAmount 度量的事实表
  • 时间维度,包含年、月、日、月中日、年中日等字段

要求是用户希望能够比较从每年年初到特定日期的总 NetAmount。可以通过在“日”和“月”字段上设置过滤器来选择日期。例如,用户希望查看以下各项的总价值:

  • 2019 年 1 月 1 日至 2019 年 1 月 20 日
  • 2018 年 1 月 1 日至 2018 年 1 月 20 日
  • 2017 年 1 月 1 日至 2017 年 1 月 20 日

解决此要求的最佳方法是什么?

【问题讨论】:

    标签: ssas mdx olap


    【解决方案1】:

    您可以像这样使用 YTD 函数创建计算成员:

    CREATE MEMBER CURRENTCUBE.[Measures].[NetAmountYTD]
    as
    
    Aggregate(YTD ([Time].[Time].CurrentMember), [Measures].[NetAmount])
    

    您还可以创建 Utility 维度,例如 TimeUtility,并添加 YTD 成员,并像这样定义它:

    Scope([TimeUtility].[YTD]);
        this = Aggregate(YTD ([Time].[Time].CurrentMember), [TimeUtility].[DefaultMember]);
    End Scope;
    

    这样,无论您查看 [TimeUtility].[YTD] 的任何衡量标准,它都会为您提供该衡量标准的年初至今,而不仅仅是 NetAmount,因此它将是通用解决方案。

    【讨论】:

      猜你喜欢
      • 2018-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-25
      • 2023-03-16
      相关资源
      最近更新 更多