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顯示。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM