在客户端的浏览器中,查看报表的效果都是通过对基础数据进行加工而来的。制作一张报表模板,首先需准备报表所需的基础数据。基础数据的来源方式有多种,可来源于数据库表、视图、存储过程,或是其他文本文件如Excel等等,详细请查看数据集,不管数据来源于哪种方式,经过哪些预处理,最终都是返回如下图所示的一张或是多张二维表:
拥有了这些基础数据后,我们就可以对这些数据进行再加工,让其显示出我们所需的样式。
其数据的显示方式有三种,分别为:列表、分组、汇总,如下图:
![Java报表插件FineReport:[5]数据显示](http://www.52ij.com/uploads/allimg/160403/00110IE1-0.jpg)
![Java报表插件FineReport:[5]数据显示](http://www.52ij.com/uploads/allimg/160403/00110LV7-1.jpg)
前期准备工作(包括相关工具或所使用的原料等)Java报表插件:FineReport电脑 详细的操作方法或具体步骤
如上图,制作的报表展示出来的数据与基础表数据完全相同,即基础表中的每条记录无论是否重复都原封不动的展示出来,此为清单式明细列表。 在设计器中的设置方式如下:
可看到设为列表的数据列,以“S”表示,其对应英文select。
![Java报表插件FineReport:[5]数据显示](http://www.52ij.com/uploads/allimg/160403/00110M535-2.jpg)
![Java报表插件FineReport:[5]数据显示](http://www.52ij.com/uploads/allimg/160403/00110H218-3.jpg)
分组
分为普通分组和相邻连续分组,如下我们对比看下两者使用的不同情景。
普通分组
如上图所示,将数据列中相同项合并为一组显示的方式,我们称为分组显示。
设计器中的设置方式如下:
可看到设为分组的数据列,用“G”表示,其对应英文group。
![Java报表插件FineReport:[5]数据显示](http://www.52ij.com/uploads/allimg/160403/00110M0C-4.jpg)
![Java报表插件FineReport:[5]数据显示](http://www.52ij.com/uploads/allimg/160403/00110H5T-5.jpg)
相邻连续分组
像这样只有连在一起的相同数据才进行合并的方式,我们称为相邻连续分组。
设计器中的设置方式如下:
该分组方式的优点为:它一般是配合SQL中已排好序的列,对其实现的分组,这样实现的分组性能比普通分组会好一点,可解决分组慢的问题。其具体使用相邻连续分组功能来提高报表的性能优化,可查巧用相邻连续提高报表性能章节内容。
![Java报表插件FineReport:[5]数据显示](http://www.52ij.com/uploads/allimg/160403/00110M050-6.jpg)
![Java报表插件FineReport:[5]数据显示](http://www.52ij.com/uploads/allimg/160403/00110HX3-7.jpg)
汇总
对于表中的数值类型字段,我们可以设置其聚合方式,如:可以对销量字段,根据地区与销售员进行汇总求和;或计算出某地区某销售员所有产品的平均销量、最大销量、最小销量、产品个数等等。这些都属于数据的汇总。
在设计器中的设置如下对销量进行数量汇总:
![Java报表插件FineReport:[5]数据显示](http://www.52ij.com/uploads/allimg/160403/00110J645-8.jpg)
![Java报表插件FineReport:[5]数据显示](http://www.52ij.com/uploads/allimg/160403/00110HC5-9.jpg)
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
