Power BI下基于固定基期成本计算月度成本变动的DAX实现方案
该需求完全可以通过DAX实现,核心逻辑是通过清除日期筛选器的上下文影响,固定获取2021年1月的基准成本作为计算分母即可,具体实现步骤如下:
前置准备
你需要提前准备好符合Power BI建模规范的模型:
- 有一张连续的日期维度表,且和存储成本数据的事实表通过日期字段建立一对多的关联关系
- 页面上的相对月份切片器使用日期维度表的年月字段生成
分步编写DAX度量值
- 首先编写基础的月度成本聚合度量值(如果你的模型中已有对应度量值可直接跳过)
月度成本 = SUM('成本事实表'[成本金额])
- 其次编写不受切片器影响的固定基准成本度量值
2021年1月基准成本 = CALCULATE( [月度成本], REMOVEFILTERS('日期维度表'), '日期维度表'[年份] = 2021, '日期维度表'[月份] = 1 )
如果你的日期维度表没有单独拆分的年份、月份列,也可以用日期范围写法实现同样效果:
2021年1月基准成本 = CALCULATE( [月度成本], REMOVEFILTERS('日期维度表'), '日期维度表'[日期] >= DATE(2021,1,1), '日期维度表'[日期] <= EOMONTH(DATE(2021,1,1),0) )
- 最后编写成本变动率度量值
成本变动率 = DIVIDE( [月度成本], [2021年1月基准成本], 0 )
效果说明
将编写好的成本变动率度量值格式设置为百分比类型后,即可得到你需要的计算结果,无论月份切片器选择什么时间段,基准成本都会固定为2021年1月的£1.27,计算结果完全匹配示例:
2021年2月:£1.25 ÷ £1.27 ≈ 99%
2021年3月:£1.27 ÷ £1.27 = 100%
2021年8月:£1.26 ÷ £1.27 ≈ 99.2%
内容的提问来源于stack exchange,提问作者Mike Eale
相关产品推荐
相关产品推荐

