多层分组统计报表
即按照不同的数据字段,形成多级分组,并分层级进行合计。
2. 添加多级嵌套行分组
3. 分组2添加小计,分组1添加总合计
4. 按照时间字段进行列分组。
2. 添加数据源和数据集
3. 添加矩表控件
添加矩表控件后,会发现有类似 [ 符号,表示分组,即可根据具体数据动态生成行。会发现设计器下面的矩表分组管理器;
4. 报表结构
4.1 添加行分组
如上述报表结构分析,行包含四级分组:
1. Group1:=[生产方式];
2. Group2:=[产品性质];
3. Group3:=[所属事业部],小计;
4. Group4:静态名称(静态列);
因此需要添加三级分组和一列静态列:
4.1.1 选中“行分组单元格”,右键单击,添加行分组——>子分组
4.1.2 添加三级分组
4.1.3 添加静态列
4.1.4 添加静态行:选中四级单元格,插入行——>分组内下方,执行三次
添加动态列:本节报表结构相对简单,只有一行“=【月】”字段的动态列,该列包含“=【周】”和按周小计。
4.2 添加列,子分组
报表结构基本完成,接下来需要做的是绑定数据。
5. 绑定报表数据
将分组数据拖拽到 单元格,静态列数据可选择。
6. 合并单元格,输入列名称
7. 添加合计
添加【生产方式】合计:添加成功之后,需要自行合并单元格,调整Value值:
添加总合计:
添加“【周】”合计
添加总合计:
8. 调整样式
到这里,报表的整体结构都已创建完成了,需要做的就是调整报表样式。
运行效果
9. 总结一下
上面的步骤虽然看起来有些复杂,但只要真正掌握的矩表控件的原理,类似的复杂多层分组报表只需几分钟便能制作完成。
传统报表的实现方式大多基于 Table 控件,虽然可实现多个分组功能,但在报表显示方面有限制,只能呈现上下级的分组,而现代的复杂报表的需求,通常是左右级嵌套,有时甚至要求相同内容的单元格合并,使用 Table 控件,有太多的局限,有了矩表控件,通过简单的拖拽就能轻松实现多层分组报表,不管有多少个分组和分组小计都能简单解决。
下面会通过一个具体的案例,使用葡萄城报表中的 矩表控件 来讲解实现多层分组统计报表。
(一)原始数据
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/145a3dce1aac3ca0827d367c20ae48c3.png)
(二)报表结构分析
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/fbf50ffc2fb19cd8149e92556253a6ba.png)
(三)报表实现思路
1. 使用矩表控件2. 添加多级嵌套行分组
3. 分组2添加小计,分组1添加总合计
4. 按照时间字段进行列分组。
(四)报表实现
1. 新建RDL 报表模板2. 添加数据源和数据集
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/646b5fd5e106e47b20a0e7a690d09e8e.png)
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/87e713af07d4a07474223fd1470efc22.png)
3. 添加矩表控件
添加矩表控件后,会发现有类似 [ 符号,表示分组,即可根据具体数据动态生成行。会发现设计器下面的矩表分组管理器;
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/4ed20e5649b4c3302e6ed1b60c508ed8.png)
4. 报表结构
4.1 添加行分组
如上述报表结构分析,行包含四级分组:
1. Group1:=[生产方式];
2. Group2:=[产品性质];
3. Group3:=[所属事业部],小计;
4. Group4:静态名称(静态列);
因此需要添加三级分组和一列静态列:
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/5221b1efb0718acdd07c23545bce7bb7.png)
4.1.1 选中“行分组单元格”,右键单击,添加行分组——>子分组
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/53216b0bf4948552555f41f1dd775549.png)
4.1.2 添加三级分组
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/82ae65bbb5eb063964d8c1608384eb58.png)
4.1.3 添加静态列
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/e35edeb53069561717179db24e7163e5.png)
4.1.4 添加静态行:选中四级单元格,插入行——>分组内下方,执行三次
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/0d2d334dea3787a7dffb510169190803.png)
添加动态列:本节报表结构相对简单,只有一行“=【月】”字段的动态列,该列包含“=【周】”和按周小计。
4.2 添加列,子分组
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/805379ff67d2955fdb9bca262351f4d8.png)
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/b4ec9382bd274db094f85a5b99ae52b2.png)
报表结构基本完成,接下来需要做的是绑定数据。
5. 绑定报表数据
将分组数据拖拽到 单元格,静态列数据可选择。
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/f0d43695e6dec8fd1dbb2088f154277a.png)
6. 合并单元格,输入列名称
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/831344b4157110d34a7526cf1d90d92c.png)
7. 添加合计
添加【生产方式】合计:添加成功之后,需要自行合并单元格,调整Value值:
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/c4c0cc7a01fe03006841bf4fe8545b3e.png)
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/c9f8570c2356bf5d13a8c82f86a838af.png)
添加总合计:
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/be1d0b10133355cbed16d3f23fdad41f.png)
添加“【周】”合计
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/494906c9117aa81c872b16e6225a8c24.png)
添加总合计:
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/66365571ff8ad7f8a3c9ae710995c787.png)
8. 调整样式
到这里,报表的整体结构都已创建完成了,需要做的就是调整报表样式。
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/2c1c4c0aa42f8db02e177fa1f0d2c3fe.png)
运行效果
![葡萄城报表](https://i-blog.csdnimg.cn/blog_migrate/4ea2b0eed432e1f8fe4a141f82e15642.png)
9. 总结一下
上面的步骤虽然看起来有些复杂,但只要真正掌握的矩表控件的原理,类似的复杂多层分组报表只需几分钟便能制作完成。
转载请注明出自:葡萄城报表