您的位置 首页 > 娱乐休闲

中国式复杂报表开发教程(6)— 类 Excel 树形结构报表

大家周一好,中国式复杂报表开发教程又来咯!

在一些统计报表中,我们常利用树形报表实现维度钻取功能,逐级钻取查看更细粒度的指标数据,那么如何根据维度层次和最细粒度的指标数据,汇总生成树形结构报表统计报表呢?

本文主要介绍如何使用ActiveReports 设计开发树形结构报表,并设置进度条显示功能。


报表模板:


数据源结构:


实现思路:

1. 使用Table控件,按照级别字段分组;

2. 对不同级别的数据,添加缩进

3. 设置隐藏或展开状态


报表实现:

1. 新建RDL 报表模板

2. 添加数据源和数据集

3. 添加Table 控件

3.1 绑定数据字段

3.2 设置详细数据分组

3.2.1 选中“Table”,在属性窗口中,选择“属性对话框”

3.2.2 选择“详细数据分组”标签,输入表达式:=【编号】;上级分组:=【上级编号】;点击确定。

设置“可见性”选择“可见性可以通过其他报表元素进行切换”,输入TextBoxName:TextBox4;




3.2.3 选中“项目名称”单元格,设置“Padding”的Left 属性值为:=2 + (Level() * 20) & "pt"

4. 设置进度条

4.1 添加区间颜色函数;

如果项目进度<0.2 则表示紧急,显示为红色标识等;

选中 “脚本”选项,输入以下代码:

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 控件直接拖拽到单元格中

现在,为 Image 设置值:

首先,设置 Source属性为”Database”;

然后,设置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. 调整样式

到这里,报表的整体结构都已创建完成了,需要做的就是调整报表样式。


报表模板预览

网址:

目录:1. 常规报表-》Excel 表格类-》施工进度报告

登录名:Demo

密码: 123456


免费试用

请通过以下方式联系葡萄城,获取ActiveReports的免费试用版,及本文涉及的模板和源码。

微信:GrapeCityDT

邮件:marke


关于葡萄城控件

葡萄城是一家跨国软件研发集团,专注控件领域近30年,是全球最大的控件提供商,也是微软认证的金牌合作伙伴。


往期中国式复杂报表开发教程

(1)类 Excel 单维度交叉表

(2)类 Excel 多维度交叉表

(3)类 Excel 复合数据透视表

(4)类 Excel 复杂表头报表

(5)类 Excel 多层分组统计

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“如何在excel插入树状表,Excel表树状图,Excel表族谱式树状图”边界阅读