【问题标题】:SSAS Cube CalculationSSAS 立方体计算
【发布时间】:2015-02-09 15:36:44
【问题描述】:

我有一个由多个维度和指标组成的多维数据集。我有一个度量“成本”,我想根据用户选择的细分获得记录成本相对于总成本的百分比。例如:

如果用户选择维度:“Campaign”、“Adgroup”和“Keyword”,结果集应按如下方式计算“%cost”。所有 '%cost' 应加起来为 1。

如果用户选择维度:“Campaign”,结果集应计算“%cost”,如下所示。所有 '%cost' 的总和应为 1。

如何在 SSAS 多维数据集计算中编写公式,以使我能够根据用户选择的细分动态计算成本百分比?

我的当前公式为([Keyword].[Keyword].CurrentMember, [Measures].[Cost])/ (sum(Axis(1),[Measures].[Cost]))。它有效,但需要很长时间来计算。我想知道是否有更好的方法来做到这一点。

提前致谢。

【问题讨论】:

    标签: visual-studio-2012 ssas mdx olap-cube


    【解决方案1】:

    如果使用Parent呢?

    [Measures].[Cost]
    /
    (Axis(1).Item(0).Item(0).Hierarchy.CurrentMember.Parent
    ,[Measures].[Cost])
    

    这让服务器可以使用预先计算的值而不是 SUM。

    (我也删除了[Keyword].[Keyword].CurrentMember,因为没有理由在这里使用它:如果它在轴上或作为过滤器,引擎会自动应用它)

    【讨论】:

      【解决方案2】:

      这个公式完美运行。但是当在一个多维数据集中你有更多的棕褐色两个并尝试在 Excel 中显示它们时,它会显示 #value 错误而不是给出结果,而如果放置两个以上的变量它可以工作。这是唯一的问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-09
        • 1970-01-01
        • 1970-01-01
        • 2011-02-03
        • 1970-01-01
        相关资源
        最近更新 更多