報表,從來都是商業領域的主角,而隨着商業智能(BI),大數據時代的到來,報表更加成為了業務系統的核心組成。因此傳統的格式已經無法滿足新的需求,最終用戶期望在一張報表中看到更多的匯總、分類信息,而往往這些匯總和分類信息是不固定的,比如下面這張報表
類似上圖中的復雜表頭和分類匯總,用傳統的報表已經無法完成。矩表(Table+ Matrix)就是專為此類報表需求而產生的強大工具,無論你是文檔類報表,Excel 類報表,中國式復雜報表,不限制行數和列數的報表...都會迎刃而解!
什么是矩表(Tablix)
葡萄城報表中的矩表是數據匯總統計的數據控件。矩表由矩陣(Matrix)控件演化而來,矩陣可將存儲的原始Detail 數據,通過【行分組】(即垂直顯示字段值)和【列分組】(即水平顯示字段值),將數據二維的展示出來,然后計算每一行或列的合計;也可以將字段值作為行號或列標,在每個行列交匯處計算出各自的數量,然后計算小計和總計。如下圖
傳統矩陣的缺點:
-
行分組單層次,無法支持多層級數據分析
矩陣只能將數據通過簡單的二維表展示,以及簡單的求和匯總統計,但對於多層級的行分組卻無法滿足要求,如在垂直展示銷售數據時, 我們需要先按區域匯總,區域再對應各省份的詳細數據,那么這樣就能夠更能有助於我們分析業務數據,提高精確性,而矩陣只能創建單層級數據展示,無法進行數據分層展示;
-
列分組上面,無法進行誇行單元格合並;
在列上面通常對應復雜表頭,如跨行合並,矩陣有很大的局限性。
-
合計功能單一
矩陣的合計僅支持自動生成的Sum()表達式,不支持編輯統計列。而客戶的需求合計方式根據業務的不同,不在只有單一的合計功能,像常用的占比,環比等復雜運算。
矩表打破了矩陣的局限,無論是水平方向還是垂直方向展示字段數據,都支持多層級的分組嵌套,且能夠自動合並相同內容項;支持復雜的表頭合並,固定列和分組列的統一展示; 對於合計功能也更加靈活,不僅支持總計,而且支持分組內小計,合計的表達式可以根據自身需求來定制。
矩表是將存儲的原始數據,通過內部的動態行列組織結構,將數據以分析匯總的方式呈現的數據控件。使用矩表,通過拖拽操作,不需要關心背后的實現邏輯,就能夠按照您需要的方式來展示數據。
矩表可創建常用的列表類報表,行列轉置報表, 履歷表,復雜表頭報表。不僅根據數據量可自動生成行列,而且可進行復雜的單元格合並,無論是簡單的清單列表還是高級的矩陣數據,矩表都能夠通過它強大的組織結構,拖拽實現。矩表可以將存儲在數據庫中的靜態二維表(只有列頭有含義的表數據),轉換成具有匯總和統計的數據透視表,且這些數據均是根據表結構自動生成的,不需要手動添加每行每列。大大節省了我們大大提升了創建數據分析報表的效率。可謂任何復雜結構的,無規律可尋的報表結構,都可使用矩表控件來實現結構。
矩表特點
- 強大的動態行列生成
以創建銷售業績報表,會以月份來匯報銷售數據,而且需要自己手動合計當月所有的銷售額,有了矩表控件后,我們只需要將月份指定到單元格,矩表會自動協助我們生成所有月份的列,並自動合計當月的銷售額,同樣在縱向展示銷售類目時,也不需要手動添加多行類目,只需要指定類目到單元格,矩表會自動生成所有類目行。
- 任意行的單元格合並
在很多企事業單位,報表的復雜度可以說讓人目瞪口呆,其中表頭最為經典,常常表頭由多行組成,且單元格合並忽上忽下。矩表則因為其組織結構的強大,可幫助我們輕輕松松實現跨多級行列的單元格合並。
- 定制化的合計功能
在大數據分析過程中,對於數據分析,再也不是簡單的求和,最大值,最小值,平均值這些簡單的合計功能了,我們需要根據業務規定,對於滿足條件的數據進行統計,求占比,同期占比等,矩表支持定制化的合計功能,不僅支持通用的合計公式,還可以根據自身需求定制表達式或編寫函數。
- 數據預警和可視化展示單元數據
矩表不僅可以顯示基礎數據,也可以通過數據預警或可視化工具來展示單元格數據。
- 精巧的細致的功能點
矩表是非常專業的數據展示工具,因而細化了用戶的需求,如行標題和列標題不僅可在每頁重復顯示,而且還可固定行頭列頭,當大數據量需要滾屏查看時,有了固定行頭和列頭的體驗更加易於客戶查找數據。
為什么要使用矩表?
要做大數據的統計分析,您需要矩表。
數據量過多需要實現自動歸類,您需要矩表,矩表提供的動態分組功能,自動幫您合並相同內容項,進行合計。
需要制作中國特色的報表,您需要矩表,解決報表結構復雜的問題。
實例 - 使用矩表創建【產品銷售數據分析表】
在設計器中添加 矩表
將訂購月指定到【行分組】單元格中,將【類別名稱】指定到列分組單元格中,在最下方單元格中指定合計方法:
=Sum(Sum(Fields!數量.Value *Fields!單價.Value * (1-Fields!折扣.Value))) 修改為:=Sum(Fields!數量.Value *Fields!單價.Value * (1-Fields!折扣.Value))。
最終效果
轉載請注明出自:葡萄城控件
相關閱讀: