PowerBI自帶的數(shù)據(jù)鉆取功能豌注,在實際應(yīng)用中是用戶使用度較高的功能之一兔仰,特別是需要實際操作的業(yè)務(wù)用戶领猾,往往需要根據(jù)匯總的結(jié)果定位到相關(guān)的明細數(shù)據(jù)瑰妄,以便進行下一步的流程操作陷嘴,這種場景下鉆取功能顯得尤為便利。
關(guān)于鉆取功能间坐,白茶之前也介紹過灾挨,包括云端的跨頁鉆取邑退,本期是結(jié)合特定的場景進行實際應(yīng)用的介紹,偏向于業(yè)務(wù)會多一些劳澄。
先來看看本期的案例數(shù)據(jù):
數(shù)據(jù)較為簡單瓜饥,一張事實表。將其導(dǎo)入到PowerBI里面浴骂。
案例數(shù)據(jù)與以往的不同乓土,偏向于商機類型的數(shù)據(jù),一般數(shù)據(jù)來源于SalesForce結(jié)構(gòu)會與此類似溯警,SAP系統(tǒng)中關(guān)于銷售訂單類型的數(shù)據(jù)趣苏,也符合本期的應(yīng)用場景。
商機數(shù)據(jù)的劃分梯轻,前幾個階段都屬于未關(guān)單數(shù)據(jù)食磕,最后的Loseing和Win都屬于已關(guān)單數(shù)據(jù)。業(yè)務(wù)用戶往往會關(guān)注未關(guān)單的數(shù)據(jù)進展如何喳挑,是否需要提供額外的支持彬伦,已關(guān)單的數(shù)據(jù)其中丟單的原因是什么等等。
而銷售訂單數(shù)據(jù)伊诵,會劃分為已發(fā)貨/未發(fā)貨单绑,部分發(fā)貨/全部發(fā)貨,已發(fā)貨確收/已發(fā)貨未確收等曹宴,業(yè)務(wù)形態(tài)與商機數(shù)據(jù)區(qū)別很大搂橙,但是在BI上需要的功能點,基本雷同笛坦。
編寫如下基礎(chǔ)度量值:
001.OppAmt =
SUM ( Fact_Opportunity[Amount] )
根據(jù)上面的業(yè)務(wù)形態(tài)区转,不難發(fā)現(xiàn),其實用戶想要的版扩,就是動態(tài)度量值的切換废离,我們實現(xiàn)的辦法有兩種。
①新建維度表礁芦,通過邏輯關(guān)系關(guān)聯(lián)度量值蜻韭。
新建如下度量值:
未關(guān)單數(shù)據(jù):
002.NoEndOppCount =
CALCULATE (
[001.OppAmt],
FILTER (
'Fact_Opportunity',
'Fact_Opportunity'[Status] IN { "1", "2", "3", "4" }
)
)
已關(guān)單數(shù)據(jù):
003.EndOppCount =
CALCULATE (
[001.OppAmt],
FILTER (
'Fact_Opportunity',
NOT 'Fact_Opportunity'[Status] IN { "1", "2", "3", "4" }
)
)
動態(tài)度量值:
004.SelectValue =
VAR SelectValue =
SELECTEDVALUE ( 'Dim_Select'[Index] )
VAR Result =
SWITCH (
TRUE (),
SelectValue = 1, [002.NoEndOppCount],
SelectValue = 2, [003.EndOppCount]
)
RETURN
Result
結(jié)果如下:
②新建字段參數(shù)。
我們將兩個結(jié)果放在一起對比一下:
從數(shù)據(jù)上來看宴偿,二者在動態(tài)度量值的處理上湘捎,結(jié)果是差不多的。
咱們繼續(xù)窄刘,按照背景介紹窥妇,是需要鉆取到對應(yīng)的明細數(shù)據(jù)的。
分別添加兩個明細頁娩践,將兩個度量值呈現(xiàn)出來活翩。
可以看出烹骨,二者之間目前呈現(xiàn)的方式都有點問題,度量值拼接的方式?jīng)]有數(shù)據(jù)材泄,而字段參數(shù)此時呈現(xiàn)的是2個值沮焕,我們來分別鉆取看一下效果:
兩個度量值都可以滿足鉆取的需求,但是有一個嚴重的漏洞拉宗,實際上我們在設(shè)計報表時峦树,明細表默認是不會選擇隱藏的,是需要開放給用戶進行明細數(shù)據(jù)導(dǎo)出的旦事,而兩個明細表默認進來的情況魁巩,都不太理想,需要我們處理一下姐浮。
修改如下度量值:
004.SelectValue =
VAR SelectValue =
SELECTEDVALUE ( 'Dim_Select'[Index] )
VAR Result =
SWITCH (
TRUE (),
SelectValue = 1, [002.NoEndOppCount],
SelectValue = 2, [003.EndOppCount],
[002.NoEndOppCount] + [003.EndOppCount]
)
RETURN
Result
結(jié)果如下:
度量值邏輯修改后谷遂,可以滿足當(dāng)用戶默認不篩選時,呈現(xiàn)正常的數(shù)據(jù)卖鲤,而字段參數(shù)功能肾扰,則無法進行其他修改。
所以蛋逾,面對如上業(yè)務(wù)場景時集晚,白茶建議選擇度量值維度表關(guān)聯(lián)的方式。
PS:如果有知道解決方案的小伙伴换怖,也可以聯(lián)系白茶甩恼。