【案例分享】項目施工進度報告 - 樹形報表


樹形分組(也稱逐級展開或鑽取)是統計報表中常見的一種功能和樣式,常利用樹形報表實現維度鑽取功能,逐級查看更細粒度的指標數據,那么如何根據維度層次和最細粒度的指標數據,匯總生成這樣一個樹形結構報表統計報表呢?

下面將使用葡萄城報表 Table 控件實現樹形結構報表,並設置進度條顯示功能。

一、報表模板

二、數據源結構

三、實現思路

1. 使用Table控件,按照級別字段分組;

2. 對不同級別的數據,添加縮進

3. 設置隱藏或展開狀態

四、報表實現

1. 新建RDL 報表模板

2. 添加數據源和數據集

3. 添加 Table 控件

3.1 綁定數據字段

3.2 綁定數據字段

3.2.1 選中“Table”,在屬性窗口中,選擇“屬性對話框”

3.2.2 選擇“詳細數據分組”標簽,輸入表達式:=【編號】;上級分組:=【上級編號】;點擊確定。

設置“可見性”選擇“可見性可以通過其他報表元素進行切換”,輸入TextBoxName:TextBox4;

3.2.4 選中“項目名稱”單元格,設置“Padding”的Left 屬性值為:=2 + (Level() * 20) & "pt"

 

4. 設置進度條

4.1 添加區間顏色函數(如果項目進度<0.2 則表示緊急,顯示為紅色標識等)

4.1.1 選中 “腳本”選項,輸入以下代碼:

Function GetColor(ByVal value As Double) As String
    If(value < 0.2) Then
        Return "Red"
    ElseIf(value < 0.4) Then
        Return "#F37A5A"
    ElseIf(value < 0.6) Then
        Return "#FFE022"
    ElseIf(value < 0.8) Then
        Return "#B5E610"
    Else
        Return "#00B338"
    End If
End Function

4.2 添加Image 控件。

為“計划完成進度”和“實際完成進度”單元格,添加Image 控件,將Image 控件直接拖拽到單元格中

4.2.1 為 Image 設置值

1. 設置 Source屬性為”Database”

2. 設置Value 屬性為“=DataBar(Fields!計划完成進度.Value,0,1,0,Code.GetColor( Fields!計划完成進度.Value))

 

5. 設置進度條

5.1 添加行號腳本代碼

Private Dim Counter As Integer = 0

Public Function GetCounter() As Integer
    Me.Counter = Me.Counter + 1
    return Me.Counter
End Function

5.2 設置單元格值為:=Code.GetCounter()

 

6. 調整一下字體和顯示樣式

最終效果

轉載請注明出自:葡萄城報表

 

相關閱讀:

【報表福利大放送】100余套報表模板免費下載

矩表 - 現代數據分析中必不可少的報表工具

多維透視表 - 矩表實現商品銷售對比統計

 


免責聲明!

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



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