Seal Report Designer软件左侧面板中Models节点的Page Elements、Column Elements、Row Elements、Data Elements四种元素类型,通过不同的组合可以构建出多种报表布局。
1、明细报表
如果仅将数据表的列拖拽到Row Elements区域,则只生成简单明细报表,程序为每个Row Element生成一列,最终呈现仅包含这些列的数据表格,如下图所示:


至于Page Elements、Column Elements、Data Elements等三类数据类型,每种数据类型单独有值时都没法生成有意义的报表,如下图所示:

Page Elements和Row Elements可以配合使用,将某一数据列拖拽到Page Elements内作为分页依据,每页中显示Row Elements数据列表,构成分页明细报表。以销售报表为例,将销售年份作为分页依据,每页显示当前的销售情况,配置示意及报表截图如下所示:


2、分组报表
Row Elements和Data Elements可以配合生成分组报表,将用于分组统计的数据列拖拽到Row Elements区域,将要分组汇总的数据列拖拽到Data Elements区域,报表运行时会按照 Row Elements的字段进行分组,Data Elements中的字段会根据默认或指定的聚合函数(如求和、平均值、计数等)进行计算。以销售报表为例,将销售年份、销售区域、产品作为分组依据,计算产品每年在每个区域的销售总额,配置示意及报表截图如下所示


如果将销售年份放到Page Elements区域,则可以生成分页显示的分组报表,配置示意及报表截图如下所示:


3、交叉报表
Column Elements、Row Elements和Data Elements可以配合生成交叉报表(行、列两个方向均进行动态分组与汇总的报表),将用于列方向统计的数据列拖拽到Column Elements区域,将用于行方向统计的数据列拖拽到Row Elements区域,将要行、列交叉汇总的数据列拖拽到Data Elements区域,报表运行时会按照行、列两个方向根据默认或指定的聚合函数计算Data Elements中的字段。以销售报表为例,将销售年份、销售区域放到Column Elements区域,将产品放到Row Elements区域,将销售额放到Data Elements区域,计算产品每年在每个区域的每个产品的销售总额,配置示意及报表截图如下所示:


如果将销售年份放到Page Elements区域,则可以生成分页显示的交叉报表,配置示意及报表截图如下所示:


参考文献:
1https://github.com/ariacom/Seal-Report
4https://sealreport.org/forum/
5https://github.com/ariacom/Seal-Report/releases
6https://www.cnblogs.com/Leo_wl/p/7716582.html
7https://sealreport.org/Help/html/26c7ae63-9b83-dc1d-b5d0-00a18021be41.htm