jasperreports报表
本章介绍如何设计一个JasperReport。下面的步骤将在本章中:· 创建一个JRXML报表模板。· 预览XML报表模板。创建一个JRXML报表模板创建JRXML文件,该文件是jasper_report_template.jrxml使用文本编辑器,并保存此文件按照我们的环境设置,在 C:\tools\jasperreports-5.0.1\test 。
下面是在上述报表模板主要字段的详细信息:
·
·
接下来,让我们打开命令提示符并转到build.xml文件放置的目录。执行命令ant(由于viewDesignXML是默认的目标)。输出如下:C:\tools\jasperreports-5.0.1\test>antBuildfile: C:\tools\jasperreports-5.0.1\test\build.xml viewDesignXML:[java] log4j:WARN No appenders could be found for logger(net.sf.jasperreports.engine.xml.JRXmlDigesterFactory).[java] log4j:WARN Please initialize the log4j system properly.
同为比较常用的报表工具,FineReport的报表制作不需要XML模板,FineReport中所有的报表代码细节被隐藏,呈现出的是是可视化的设计过程,以行式报表为例,具体如下:
1. 描述行式报表即清单式明细表,是最常见也是最简单的报表样式,如下图效果:
2. 制作步骤2.1 准备数据数据准备包括两步,准备数据连接和数据集,FineReport安装exe的时候会内置一个名为FRDemo的数据连接,连接的是工程下的一个WebReport的ACCESS数据库,接下来文档中所有的示例数据全部来源于该数据库。连接数据库FRDemo,我们使用内置数据库表订单来制作一张订单列表。新建工作薄,添加数据集ds1,SQL语句为SELECT * FROM 订单。
2.2 模板设计· 表样设计根据实际情况设计表样,如下图:
· 字段绑定根据表样中的字段标题将数据集中的字段拖曳至相应单元格中,如下图:
· 数据显示方式FineReport数据显示有3种方式:列表、分组和汇总。
列表:如上效果图所示,即数据以列表的方式展示,不做任何分组处理;分组:指后面的单元格会根据前面的单元格的数据,进行数据过滤分组,合并相同项显示;汇总:指对单元格中的数据进行汇总计算,汇总包括求和、平均、最大值、最小值和个数,只针对单元格中字段时数值类型的单元格。注:默认的数据显示方式为分组,其每种方式的效果样式请查看数据显示方式。在效果图中看到行式报表是以列表的方式展示的,故需设置订单ID字段的数据显示方式设置为列表。
注:只需要将最左边的单元格订单ID的显示方式设置为列表即可,在父子格中介绍了,单元格会默认将其左侧纵向扩展的单元格作为父格,那么A2是B2的父格,B2是C2的父格,以此类推,经过数据传递,可以看到所有的单元格的父格均是订单ID所在的A2单元格,所以只需要将A2的数据显示方式设置为列表,其他的单元格会跟随该单元格来显示数据。· 单元格样式设置由于数据库中运货费的是小数形式,为了整齐美观,可设置其数据格式保留两位小数,选中F2单元格,在右侧下方的单元格属性表中选择单元格属性表-样式,在格式里面选择数字,并设置其保留两位小数,如下图:END