DAX/PowerBI系列 - 参数表(Parameter Table) 度量值模板

DAX/PowerBI系列 - 参数表(Parameter Table) 度量值模板

 

难度: ★☆☆☆(2星)

适用范围: ★(3星)

 

概况:

当你有多个度量值都需要计算YTD,MoM,而又不想重复所有这些给每一个度量值分别设定计算度量值的话,有没有一个简便的方法,少点coding呢?

同时,用户通过选择,在同一个visual里面显示不同的度量值(组)。

此文涉及前文DAX/PowerBI系列 - 参数表(Parameter Table) - 多时间段数值对比的扩展部分,给出具体实例和解决方法。

 

应用场景:

以下是几个应用场景:

  • 用户想在同一个chart显示不同的度量值(组)
  • 避免重复定义一系列度量值

 

最终PowerBI效果显示如下(耐心等待PowerBI 出来,噔噔噔噔~~~)

 如图,1)左侧的YTD根据所选变化而变化;

2)右侧的标题是一个计算值,根据选择动态改变;同样右图中的所有值都根据所选不同而全部改变。

3)表格显示对应的值

 https://app.powerbi.com/view?r=eyJrIjoiYzZlYzgxYzItZTA1ZC00ODVmLTlkNjUtZGRlYjdlMDFjOWNlIiwidCI6ImQxYWY4NDdiLTJjZTEtNDRjYi1iYjUwLWQ1ODAyYmI0M2M4YiIsImMiOjEwfQ%3D%3D

 

欢迎转载,请保留原文链接和作者信息。O(∩_∩)O谢谢。
DAX/PowerBI系列 - 参数表(Parameter Table) 度量值模板(Period Table)
作者:马丁叔叔             链接:http://www.cnblogs.com/lizardbi/p/DAX-PATTERN-POWERBI-Parameter-Table-Period-Table-Extension.html

 

 

数据模型:

 

 

 

要点:

这里涉及到一个trick -- switch 语句。 通过switch语句把所选的度量值设到一个generalized的中间变量,再用这个中间变量来计算YTD,MoM等等的值。

 

中间变量

1 _tempMeasure = IF (
2     HASONEVALUE ( 'Measure Selection'[Measure] ),
3     SWITCH (VALUES ( 'Measure Selection'[Measure] ),
4         "Cost", [#Cost]
5         ,"Revenue", [#Revenue]
6         ,"Profit", [#Profit]
7         ,BLANK()) 
8     ,[#Cost])

 

中间变量前值

1 _prevMeasureValue = CALCULATE([_tempMeasure]
2                 , PARALLELPERIOD('Date'[Date], -1, MONTH)
3                 , FILTER(ALL('Date'),'Date'[Date]<= MAX('Fact'[Date]) ) 
4             )

 

  

YTD

1 YTD = CALCULATE([_tempMeasure]
2             , DATESYTD('Date'[Date],"12/31")
3             , FILTER(ALL('Date'),'Date'[Date]<= MAX('Fact'[Date]) ))

 

MoM(环比)

1 MoM % = DIVIDE([_tempMeasure] - [_prevMeasureValue], [_prevMeasureValue])

 


最终效果

参照 上文的PowerBI显示。

 

转载于:https://www.cnblogs.com/lizardbi/p/DAX-PATTERN-POWERBI-Parameter-Table-Period-Table-Extension.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值