全網(wǎng)首發(fā) PowerBI 全動(dòng)態(tài)中國(guó)式復(fù)雜矩陣完美增強(qiáng)版 4.0 版

一直有小伙伴問 PowerBI DAX 可以做多強(qiáng)大而靈活的事而又未在任何資料中記載,那么這里你也許將看到的就是前所未有的案例,它集合了幾乎全部 DAX 強(qiáng)大特性并將 DAX 能力推向可見的最高階段。
還有很多小伙伴學(xué)習(xí)了《PowerBI 全動(dòng)態(tài)中國(guó)式復(fù)雜矩陣》的 1.0 和 2.0 版,已經(jīng)獲益良多,而今天,你將看到新的可能性。什么是 4.0 版?本文會(huì)給出說明。
今天,我們非常高興地報(bào)告給各位伙伴,PowerBI DAX 已經(jīng)可以實(shí)現(xiàn)完美的中國(guó)式復(fù)雜矩陣,它大概長(zhǎng)的是這樣的:

這類構(gòu)造可能用到大量 DAX 特性以及函數(shù),包括但不限于:篩選上下文,行上下文,上下文轉(zhuǎn)換,DAX查詢,VAR,EARLIER,SUMX,RANKX,TREATAS,{ },按列排序,CALCULATE,SWITCH,IN,數(shù)據(jù)沿襲等。
由于在極致復(fù)雜的狀態(tài)下,可能是任意復(fù)雜的,除了需要堅(jiān)實(shí)的 DAX 基礎(chǔ)還需要精妙的 DAX 建模思想和方法方可有效實(shí)現(xiàn)。本文先來提出這類矩陣的業(yè)務(wù)展現(xiàn)要求,以及最終形態(tài),讓大家對(duì)這種終極矩陣的形態(tài)有所認(rèn)識(shí),并可以自己嘗試實(shí)踐。
后續(xù)文章,我們會(huì)陸續(xù)再講解細(xì)節(jié)。
十大業(yè)務(wù)需求
以下列出業(yè)務(wù)人員對(duì)中國(guó)式復(fù)雜矩陣的十大需求:
一、矩陣列頭可以是任意排布的,如:任意順序;
二、矩陣行頭可以是任意排布的,如:任意順序;
三、矩陣列頭和行頭是可以從層級(jí)選擇的,如:多層級(jí),從層級(jí)選擇需要顯示的內(nèi)容;
四、矩陣行頭及內(nèi)容可以支持動(dòng)態(tài) TOP N,如:用戶選擇 TOP N,不顯示的收入其他;
五、矩陣的單元格背景顏色可以是任意的,如:按照某種規(guī)則設(shè)置(且支持透明度),普通,小計(jì),合計(jì);
六、矩陣的單元格字體顏色可以是任意的,如:正負(fù)的不同顏色等;
七、矩陣的單元格數(shù)字格式可以是任意的,如:千分位整數(shù),百分比,小數(shù)等;
八、矩陣行的排序可以是任意的,如:按照銷售額大小對(duì)行排序,但其他,小計(jì),合計(jì)總在最后;
九、矩陣的計(jì)算是全動(dòng)態(tài)的,如:切片器和其他圖表可以交叉篩選該矩陣;
十、矩陣的數(shù)字是可以導(dǎo)出的,且保持?jǐn)?shù)字格式可以在 Excel 中進(jìn)一步處理。
這些就是中國(guó)式復(fù)雜矩陣從業(yè)務(wù)角度出發(fā)的十大訴求。
其實(shí),業(yè)務(wù)完全可以提出讓單元格的設(shè)置和 Excel 一樣,那就相當(dāng)于又要實(shí)現(xiàn)一套 Excel 了,那種工程是不可想象的,因此,我們?cè)谶@里保留了最重要的十大訴求。如果您可以對(duì)照該十大訴求給出可復(fù)用的套路,你的 PowerBI 以及 DAX 的構(gòu)建水品就可以滿足日常應(yīng)用了。
其中,具有真正核心地位的是第九點(diǎn),它能來確保矩陣是動(dòng)態(tài),而不是一個(gè)固定死的矩陣。這也是 PowerBI DAX 有別于其他商業(yè)智能軟件的根本所在。PowerBI 本身并沒有一個(gè)官方說明來描述如何構(gòu)建中國(guó)式復(fù)雜矩陣,因此,我們需要探索并尋求一套解決方案。
完美版的實(shí)現(xiàn)
雖然沒有官方的介紹,但是我們還是探索和找到了這套完美實(shí)現(xiàn)方案?,F(xiàn)在的方案是無懈可擊的完美方案,原因很簡(jiǎn)單,它實(shí)現(xiàn)了上述所有十大業(yè)務(wù)需求。因此,我們稱之為:《PowerBI 全動(dòng)態(tài)中國(guó)式復(fù)雜矩陣完美版》史稱 v3.0。
下面給出歷史上,全網(wǎng)范圍首發(fā)給出的 PowerBI 中國(guó)式復(fù)雜矩陣方法:
2018-05-07 BI佐羅 全網(wǎng)首發(fā)《PowerBI 全動(dòng)態(tài)中國(guó)式復(fù)雜矩陣》史稱 v1.0
2019-01-06 BI佐羅 全網(wǎng)首發(fā)《PowerBI 全動(dòng)態(tài)中國(guó)式最強(qiáng)超級(jí)矩陣》史稱 v2.0
2021-01-08 BI佐羅 全網(wǎng)首發(fā)《PowerBI 全動(dòng)態(tài)中國(guó)式復(fù)雜矩陣完美版》史稱 v3.0
2021-01-08 BI佐羅 全網(wǎng)首發(fā)《PowerBI 全動(dòng)態(tài)中國(guó)式復(fù)雜矩陣完美增強(qiáng)版》史稱 v4.0
你沒有看錯(cuò),完美的階段已經(jīng)被超越了,今日同時(shí)首發(fā):《PowerBI 全動(dòng)態(tài)中國(guó)式復(fù)雜矩陣完美增強(qiáng)版》史稱 v4.0。
完美增強(qiáng)版到底增強(qiáng)了什么
作為完美增強(qiáng)版,是建立在完美版基礎(chǔ)上的增強(qiáng)版本,它首先也滿足了中國(guó)式復(fù)雜矩陣的十大業(yè)務(wù)需求。
主要有兩點(diǎn):
性能優(yōu)化
設(shè)計(jì)模式
完美增強(qiáng)版(v4.0)與完美版(v3.0)有著完全一摸一樣的面貌,然后 v4.0 的完美增強(qiáng)版將以至少 3 倍速高速運(yùn)行,如下所示:

對(duì)于完美增強(qiáng)版(v4.0)而言,有著和完美版(v3.0)完全不同的實(shí)現(xiàn)方式:
v3.0 是基于模型層計(jì)算
v4.0 是基于視圖層計(jì)算
模型層計(jì)算以及視圖層計(jì)算的正式思路已經(jīng)由BI佐羅《PBI高級(jí)》給出。
可以看出,v4.0 與 v3.0 的呈現(xiàn)結(jié)果完全相同,但速度是完美版的 3 倍之多。
完美版 v3.0 版本 DAX 公式鳥瞰:

完美增強(qiáng)版 v4.0 版本 DAX 公式鳥瞰:

完美版 v3.0 版本 DAX 引擎執(zhí)行鳥瞰:

完美增強(qiáng)版 v4.0 版本 DAX 引擎執(zhí)行鳥瞰:

很明顯,相比于完美版 v3.0 版本 DAX 引擎執(zhí)行而言,完美增強(qiáng)版 v4.0 將 DAX 引擎執(zhí)行有了大幅度提升:
DAX 引擎 SE 查詢優(yōu)化了 5 倍以上
DAX 引擎 FE 查詢優(yōu)化了 3 倍以上
這些內(nèi)容對(duì)于業(yè)務(wù)背景的伙伴都不需要理解,只需要看出這個(gè)結(jié)果是好的,就可以了。
完美增強(qiáng)版的設(shè)計(jì)模式
在完美增強(qiáng)版 v4.0 的設(shè)計(jì)中,用到了大量設(shè)計(jì)模式和思想,包括但不限于:
視圖層通用計(jì)算思想
笛卡爾積通用表頭構(gòu)建模式
動(dòng)態(tài)掛載
非侵入式設(shè)計(jì)
鉤子
依賴注入
面向切面的 AOP 設(shè)計(jì)模式
計(jì)算組以及計(jì)算流透?jìng)髂J?/p>
用到的 DAX 特性更是幾乎包攬了所有 DAX 基礎(chǔ)和高級(jí)特性。
總結(jié)
每一個(gè)學(xué)習(xí) PowerBI DAX 的伙伴都應(yīng)該做到:以極致的性能實(shí)現(xiàn)中國(guó)式復(fù)雜矩陣的十大業(yè)務(wù)通用需求。您可以對(duì)照該業(yè)務(wù)訴求,自行實(shí)現(xiàn)以上案例來作為測(cè)試。
完美版 v3.0 和完美增強(qiáng)版 v4.0 由于是基于完全不同的思路構(gòu)建的,它們可以互作檢查,如果它們的計(jì)算結(jié)果是一致的,那么,作業(yè)就對(duì)了,無需檢查。
在構(gòu)建中國(guó)式復(fù)雜矩陣的過程中,涉及到幾乎所有 DAX 基礎(chǔ)和高級(jí)特性,正可謂一個(gè)案例又頂了一套課程。
本來,BI佐羅 出品《PBI高級(jí)》已經(jīng)詳解了中國(guó)式復(fù)雜矩陣的 v1.0 及 v2.0 方案,而 完美版 v3.0 和完美增強(qiáng)版 v4.0 將補(bǔ)充首發(fā)在 BI佐羅 出品《PBI高級(jí)》中,這套課程無端端又被植入了一個(gè)超級(jí)案例。
《PBI高級(jí)》是BI佐羅出品的《BI真經(jīng)》系列(共 7 門)的其中一門,如果您準(zhǔn)備或正在學(xué)習(xí) PowerBI,看了本文,如果你有分析的常識(shí),應(yīng)該分析下該如何選擇學(xué)習(xí)課程了吧,很顯然了啊。
《PBI高級(jí)》無端端又整合包括了:AOP超級(jí)設(shè)計(jì)模式,《PowerBI 全動(dòng)態(tài)中國(guó)式復(fù)雜矩陣》完美版及完美增強(qiáng)版的詳解,是不是應(yīng)該再漲點(diǎn)價(jià)了呢?2021,我們將與您同行,讓數(shù)據(jù)真正成為你的力量。
【點(diǎn)擊查看】PBI中國(guó)式復(fù)雜矩陣 v1.0
【點(diǎn)擊查看】PBI中國(guó)式復(fù)雜矩陣 v2.0
【點(diǎn)擊查看】立即搶購(gòu)BI佐羅出品《PBI高級(jí)》- 私信
【私信聯(lián)系】立即搶購(gòu)BI佐羅出品包括《PBI高級(jí)》在內(nèi)的《BI真經(jīng)》系列 - 私信

讓數(shù)據(jù)真正成為你的力量
Create value?through?simple and?easy?with fun?by PowerBI
Excel BI?|?DAX Pro?|?DAX?權(quán)威指南?|?線下VIP學(xué)習(xí)
掃碼與PBI精英一起學(xué)習(xí),驗(yàn)證碼:data2020
PowerBI MVP 帶你正確而高效地學(xué)習(xí) PowerBI
