iReport中文教程

合集下载

ireport 5.1.0 教程之ireport快速入门文档

ireport 5.1.0 教程之ireport快速入门文档

ireport5.1.0教程之ireport快速入门文档必要条件:iReport需要Sun Java2SDK1.4以上版本;为了能编译jasper文件就必须安装完整的java2(JDK),不光是(JRE)这个运行环境。

如果你还想编译iReport 源代码,你还要安装Jakarta Ant version1.6以上版本。

硬件方面,类似于java的环境,iReport也占很多的RAM,所以它也需要只少256Mb的内存和至少20Mb的磁盘空间。

下载:你可以到SourceForge网站上的企业主页上下载最新发布的iReport,可能有几种不同的分类:iReport-x.x.x.zip这是官方的zip格式的二进制文件。

iReport-x.x.x.tgz这是官方的tar gz格式的二进制文件。

iReport-x-x-x-src.zip这是官方的包含源代码的zip格式的二进制文件。

x.x.x表明了iReport的版本号。

每一种都包含必须使用的第三方的库和程序及附加文件,例如模板和一些html格式的基础教程。

如果你想要更多最新版本的源程序,你可以直接地连接CVS库。

但必须要有一个CVS客户端(像CVS,JCVS或者WinCVS)。

如果你有CVS那就执行如下的命令行:cvs-d:pserver:anonymous@:/cvsroot/ireportlogin(目前好象无法连接)and then all on the same line…cvs-z3-d:pserver:anonymous@:/cvsroot/ireportco iReport2这样CVS客户端就可以将iReport的所有文件下载到本地,包括所有的文档,库和所有有用的编译iReport的文件。

就使用其他CVS的用户来说,SourceForge网站也自制了详细的解释用来检出工程。

编译iReport:这些源中包含一个build.xml文件,它是被Jakarta Ant用来编译和启动iReport和或用来创建不同类型的工程。

ireport图文教程(超详细)(word文档良心出品)

ireport图文教程(超详细)(word文档良心出品)

1下载iReportiReport是一个可视化的报表模板设计工具,使用此工具能方便地对报表进行设计。

在iReport中已经包含了jasperreports在运行时需要的jar 文件,在项目中的lib目录中包含Jasperreports-***.jar即可,其中***为版本号,比如2.0.3。

下载地址:/project/showfiles.php?group_id=64348,此文档编写时版本为2.0.3,如图:点击download出现以下界面:可以看到提供了多种下载包,其中:ØiReport-2.0.3-src.zip:为iReport的源代码ØiReport-2.0.3.tar.gz:为.tar.gz格式,一般用于Linux、Unix等非windows系统ØiReport-2.0.3-windows.installer.exe:为exe格式,一般用于windows系统ØiReport-2.0.3.zip:为zip格式,可以用于各类操作系统本文使用window版本为例,因此下载iReport-2.0.3-windows.installer.exe即可。

2安装iReport安装iReport需要先设置JDK环境,2.0.X版本要求JDK1.5环境(另参考文档)。

如果是windows系统,直接双击安装图标即可。

(如果是下载的ZIP文档,则将其解压到指定的目录,还需运行bin/startup.bat)。

如果是其他系统,比如Linux,Unix等,解压下载的安装文件(如下载的是tar.gz格式,使用tar xvfz iReport-2.0.3.tar.gz进行解压,如下载的zip格式,使用zip命令解压),然后运行bin/startup.sh即可。

以下以在windows上安装为例:A.欢迎界面,点击“N ext >”继续B.阅读license内容,点击“I A gree”继续C.选择安装组件,点击“N ext >”继续D.指定安装路径,点击“N ext >”继续E.指定程序组名称,点击“I nstall”即可F.等待安装过程G.安装结束,点击“F inish”完成在桌面上会出现如此图标:。

ireport中文使用手册完整版.

ireport中文使用手册完整版.

iReport 用户手册version 1.0Giulio ToffoliiReport用户手册机密第 1 页 2013-9-1iReport 用户手册目录GiulioToffoli ................................................................................................................................. (1)1 序言 ........................................................................................................................................ (5)什么是iReport? (5)功能特点: (6)iReport 社区: (6)鸣谢:..................................................................................................................................... .. 72 入门 ........................................................................................................................................ (7)必要条件: (7)下载:..................................................................................................................................... .. 8编译iReport: (8)基本的配置: (8)创建JDBC连接: (11)第一个报表: (12)命令行选项: (16)3 JasperReports基础概念 (16)JasperReports ...................................................................................................................... . (16)报表生命周期: (17)Jrxml源代码和jasper文件: (17)数据源和打印格式: (21)版本兼容性: (22)表达式: .................................................................................................................................23一个简单的程序: (24)4 报表结构.....................................................................................................................................25 Bands................................................................................................................................... . (25)Title .................................................................................................................................26Page header .....................................................................................................................26Column header ................................................................................................................26Group header ...................................................................................................................27Detail ...............................................................................................................................27Group footer ....................................................................................................................27Column footer .................................................................................................................27Page footer ......................................................................................................................27Last Page footer ..............................................................................................................27Summary .........................................................................................................................28Background .....................................................................................................................28报表属性: (28)列.....................................................................................................................................29 机密第 2 页 2013-9-1iReport 用户手册高级选项: (31)脚本:.....................................................................................................................................31更多… .............................................................................................................................32Title on a new page选项: ............................................................................................32Summary on a new page选项: ....................................................................................34Floating column footer 选项: ......................................................................................34打印顺序: .....................................................................................................................34无数据打印(如果没有数据时): .............................................................................35i18n: .............................................................................................................................35Resource Bundle Base name (35)XML源文件的编码设置: ...........................................................................................365 报表元素.....................................................................................................................................36选择并插入元素到报表中: (36)布置和元素顺序 (39)使用元素树管理元素: (42)基本属性: (42)线.....................................................................................................................................45矩形 .................................................................................................................................45椭圆 .................................................................................................................................46图象 .................................................................................................................................46文本元素 (49)静态文本 .........................................................................................................................50文本域 .............................................................................................................................50子报表.....................................................................................................................................54专用元素 (55)图表 .................................................................................................................................55条形码 .............................................................................................................................55超连接.....................................................................................................................................57Reference ........................................................................................................................58 LocalAnchor....................................................................................................................58LocalPage ........................................................................................................................58RemoteAnchor ................................................................................................................58RemotePage ....................................................................................................................586 字体 ........................................................................................................................................ . (58)字体.........................................................................................................................................58扩展字体 .........................................................................................................................59编码 .................................................................................................................................60使用Unicode字符 .........................................................................................................60报表字体 (60)7 字段,参数和变量 (61)字段.........................................................................................................................................61SQL查询的字段注册 ....................................................................................................62JavaBean的字段注册 ....................................................................................................63JRExtendedBeanDataSource的字段注册 ......................................................................64 机密第 3 页 2013-9-1iReport 用户手册字段和文本域 .................................................................................................................64参数.........................................................................................................................................65在查询中使用参数 .........................................................................................................66使用程序传递参数 .........................................................................................................66内置参数 .........................................................................................................................68变量.........................................................................................................................................68内置变量 .........................................................................................................................708 Bands andgroups (70)Bands................................................................................................................................... . (70)Groups ................................................................................................................................ .. (71)9Subreport ............................................................................................................................ . (76)创建子报表 (77)连接子报表到父报表 (77)参数的通道 .....................................................................................................................77指定数据源 .....................................................................................................................78指定子报表 .....................................................................................................................79一步一步举例 (79)返回参数 (85)10 数据源.......................................................................................................................................86iReport中的数据源 (87)JDBC连接 (88)ClassNotFoundException ................................................................................................90URL不正确 ....................................................................................................................90连接参数不正确 .............................................................................................................90使用JDBC连接 .............................................................................................................90字段注册 .........................................................................................................................91JRDataSource接口 (92)JavaBean作为数据源 (92)JavaBean的一个字段作为数据源 ................................................................................94XML数据源 (95)字段的注册 .....................................................................................................................97XML和子报表 ...............................................................................................................99 CSV数据源 (103)字段的注册 (104)JREmptyDataSource .......................................................................................................... ... 104 实现一个新的JRDataSource ............................................................................................... 105 用iReport实现个性化的JRDataSource ............................................................................. 107 JavaBean Extended数据源 .................................................................................................. 109 11 国际化. (110)Resource Bundle BaseName ................................................................................................ 110 恢复本地化字符串 ............................................................................................................... 112 格式化消息 (113)配置本地化报表 ................................................................................................................... 113 12 脚本......................................................................................................................................... 114 机密第 4 页 2013-9-1iReport 用户手册JRAbstractScriptlet类 .......................................................................................................... 114 iReport处理脚本 .................................................................................................................. 116 用脚本部署报表 ................................................................................................................... 117 13 模板.. (118)模版结构: (118)使用通用模板 ....................................................................................................................... 120 14 图表.. (122)创建一个简单的图表 ........................................................................................................... 122 级Series (127)自动级 ........................................................................................................................... 128 手动级 ........................................................................................................................... 129 图表类型和属性 . (131)饼图 ............................................................................................................................... 132 3D饼图 ......................................................................................................................... 132 柱状图 (133)3D柱状图 ..................................................................................................................... 135 线图 (135)区域图 ........................................................................................................................... 136 15 插件和附加工具 (136)插件结构XML文件 (137)it.businesslogic.ireport.plugin.IReportPlugin类 ................................................................... 138 大型编译器插件 ................................................................................................................... 141 文本向导插件 .. (143)16 常规问题解决方案 (144)打印百分比 ........................................................................................................................... 144 计算组的发生数 ................................................................................................................... 145 分离detail ............................................................................................................................. 147 插入一个页 ........................................................................................................................... 148 交叉报表 ............................................................................................................................... 151 使用多重连接找回数据 ....................................................................................................... 151 如何使用存储过程 (152)1 序言什么是iReport?iReport是一个能够创建复杂报表的开源项目,并且它能调用JasperReports库应用于任何一种java应用程序。

ireport3.7.2操作手册

ireport3.7.2操作手册

1.概述1.1iReport简介iReport 是一款采用JAVA语言编写的开源软件,其主要作用是以可视化的方式设计、生成 JasperReport所使用的报表格式文件。

本文所描述的iReport版本为3.7.2。

iReport官方下载地址:/projects/ireport1.2功能特点●拖拽式,所见即所得的报表编辑器;●多样的向导来简化复杂的报表设计任务;●支持多种输出格式,包括:PDF,RTF,XML,XLS,CSV,HTM等;●支持多种数据源,包括JDBC,CVS,Hibernate,Excel,JavaBean,XML等;●支持超过20种的图表●超过30个排版和格式化工具●文档结构浏览器●……1.3基础配置iReport是用Java语言开发的,需选择1.5及其以上版本的JDK安装即可,如果你的系统已经有安装过JDK或是有 JRE即可省略。

验证JDK或是 JRE是否可以默认运行,在命令行(CMD)打入 X:>java 如果出现:Usage:java开头的一堆信息既是通过验证。

否则必须进行配置,配置信息如下,在windows的环境变量设置:path:在最后面加入“;java的安装目录”JAVA_HOME :“java的安装目录”CLASSPATH:“java的安装目录\bin”重新验证JDK或是 JRE是否可以在 CMD任何位置运行。

2.数据源创建在使用iReport创建一个报表前,需要为其添加一个数据源。

iReport 支持各种类型的数据源,包括JDBC,CVS,Hibernate,Excel,JavaBean,XML等,如下图所示:图2-1 支持数据源类型本文主要介绍Database JDBC connection的使用方法。

iReport 支持各种数据库,如:DB2、Oracle、MySQL、SQLServer等,前提是提供数据库的JDBC驱动器。

若未添加该种数据库驱动,列表框会呈现为红色。

ireport 5.1.0 教程之ireport快速入门文档

ireport 5.1.0 教程之ireport快速入门文档

ireport5.1.0教程之ireport快速入门文档必要条件:iReport需要Sun Java2SDK1.4以上版本;为了能编译jasper文件就必须安装完整的java2(JDK),不光是(JRE)这个运行环境。

如果你还想编译iReport 源代码,你还要安装Jakarta Ant version1.6以上版本。

硬件方面,类似于java的环境,iReport也占很多的RAM,所以它也需要只少256Mb的内存和至少20Mb的磁盘空间。

下载:你可以到SourceForge网站上的企业主页上下载最新发布的iReport,可能有几种不同的分类:iReport-x.x.x.zip这是官方的zip格式的二进制文件。

iReport-x.x.x.tgz这是官方的tar gz格式的二进制文件。

iReport-x-x-x-src.zip这是官方的包含源代码的zip格式的二进制文件。

x.x.x表明了iReport的版本号。

每一种都包含必须使用的第三方的库和程序及附加文件,例如模板和一些html格式的基础教程。

如果你想要更多最新版本的源程序,你可以直接地连接CVS库。

但必须要有一个CVS客户端(像CVS,JCVS或者WinCVS)。

如果你有CVS那就执行如下的命令行:cvs-d:pserver:anonymous@:/cvsroot/ireportlogin(目前好象无法连接)and then all on the same line…cvs-z3-d:pserver:anonymous@:/cvsroot/ireportco iReport2这样CVS客户端就可以将iReport的所有文件下载到本地,包括所有的文档,库和所有有用的编译iReport的文件。

就使用其他CVS的用户来说,SourceForge网站也自制了详细的解释用来检出工程。

编译iReport:这些源中包含一个build.xml文件,它是被Jakarta Ant用来编译和启动iReport和或用来创建不同类型的工程。

iReport使用指南

iReport使用指南

IReport使用指南使用ireport0.2.3作为范例报表属性Report name 定义报表模板名Page size页面尺寸Preset sizes 预设尺寸有多种标准页面尺寸可选择,也可以自定义页面尺寸Width 页面的宽度 (可以选择单位)pixels(像素)inches(英寸)cm(厘米)mm(毫米)Height 页面的高度同上Orientation页面打印方向Portrait纵向Landscape 横向默认值为PortraitPage Margin 页边距Top 上边距Bottom 下边距Left 左边距Rigth 右边距Report Columns 报表列Columns 报表的列数默认值为1Width 列的宽度默认值为555 Spacing 列和列之间的空隙默认值为0Scriptlet class 在模板中使用的脚本类Title on new page 标题是否占用一页True(标题占用一页)False(标题不占用一页)默认值为falseSummary on a new page 总结是否占用一页同上默认值为falsePrint order 当列数不为1时,数据填充方向Vertical (垂直方向)Horizontal (水平方向)默认值为VerticalWhen no data 当数据源中没有记录数据时NoPages(不产生页面)BlankPage(产生一个空的页面)AllSectionsNoDetail(显示除了Detail条目以外的所有条目) 默认值为NoPagesXML encoding 报表模板(xml)使用的编码规则请参考相应的字符集编码公共属性Band 包含被选元素的条目名Top 指定被选元素在条目中的x轴坐标Left指定被选元素在条目中的y轴坐标Width 指定被选元素的宽度Height 指定被选元素的高度Foreground 前景色Background 背景色Transparent 是否透明指定被选元素的背景色是否透明OpaqueTransparent默认值为OpaqueRemove line when blank 为空时移除线当条目中的一条记录所有字段都为空时,是否把该条记录从条目中移除true(移除)false(不移除)默认值为truePrint in first whole band 在第一个条目中输出当你选择Print repeated values为false时,在换页或换列时,是否重新输出该值默认值为falsePrint when detail overflows 当超出细节条目时输出当由于某些原因导致当前条目不能在当前页内被打完,当开始一个新的页接着输出时,被选元素是否在新页上重新输出默认值为falsePrint repeated values 输出重复值当多条记录连续中某字段的值都相同时,是否每条记录的该字段都输出false(仅输出第一条记录中的该字段,其余的都不输出)默认值为truePosition type 位置类型当报表Section因为拉伸而受到影响时,指定被选元素的位置Float(被选元素根据周围元素的尺寸所移动)FixRelativeToTop(元素保持相对于它所在条目顶部的位置)FixRelativeToBottom(元素保持相对于它所在条目底部的位置)默认值为FixRelativeToTopPrint When group changes 当组改变时输出当指定的组发生改变时,输出被选的元素Print When Expression 是否当表达式成立时输出表达式成立时输出被选元素默认值为false,一般不要修改这个值参数属性Parameter name 参数名Parameter class type 参数类型Is for prompting 是否提示输入值是否在应用程序根据参数值提供动态提示Default value expression 默认值表达式Parameter description 参数描述当Is for prompting 为true时,返回该值作为应用程序的提示值字段属性Field name 字段名Field class type 字段的类型Field description 字段描述通常作为字段的别名来使用变量属性Variable name变量名Variable class type 变量类型Calculation type 计算类型Nothing(无)Count(数量)Sum(和)Average(平均值)Lowest(最小值)Highest(最大值)StandardDeviation(标准值)Variance(方差)System(系统)默认值为NothingReset type 重置类型报表变量的值可以在每一个迭代下改变,使用Reset type来决定变量的值在什么时候重新计算None(变量的值不重新计算)Report(变量的值仅在报表数据填充时计算一次)Page(变量的值在报表的每个页计算一次)Column(变量的值在报表的每列计算一次)Group(变量的值在报表的每个组计算一次)默认值为ReportReset group 重置组当Reset type 为group时,指定组Variable expression 变量表达式定义计算变量的值的表达式Initial value expression 初始值表达式初始化变量的起始值系统内建变量PAGE_MEMBER(当前页面号)COLUMNS_MENBER(当前列号,页面列数*(当前页面号-1)+当前列在当前页的号) REPORT_COUNT(报表中的记录数,指从数据源中得到的记录)PAGE_COUNT(当前页中的记录数)COLUMNS_COUNT(当前列中的记录数)Groupname_COUNT(当前组中的记录数)字体属性Report font 可以选择已经定义好了的字体类别Font name 字体名Size 字体的尺寸PDF font name PDF字体名Bold 加粗Italic 斜体Underline 下划线Strike Trough 穿越线LineSpacing 线间隔Single(单)1_1_2(1.5)Double(双)Horizontal alignVertical alignPDF Embedded 指定PDF字体是否被嵌在文档中PDF Encoding PDF字体的编码类型静态文本元素属性Static Text 静态文本的内容文本域元素属性Textfield Expression Class 文本域表达式的类型Evaluation time 表达式计算的时刻具体细节可参考图象属性说明Evaluation group 计算组当Evaluation timed为Group时,指定计算表达式时刻的组Stretch with overflow 超出时拉伸当文本域的内容不能完全被显示在模板定义的区域内时,是否允许文本域拉伸Blank when null 为空时显示空白当文本域内容为空时,是否什么都不显示Pattern 模式模式用来定义文本域表达式输出的格式Textfield expression 文本域表达式文本域的内容超链接属性图形元素属性Pen 画图形所使用的线的类型None(没有线)Thin(细线)1 Point(普通的线)2 Point(中等的线)4 Point(粗的线)Dotted(虚线)Stretch type 当报表Section被拉伸时,图形元素的拉伸行为类型NoStretch(不拉伸)RelativeToTallestObject(图形元素将适应元素组中最高的元素拉伸) RelativeToBandHeight(图形元素将适应条目拉伸)Fill 图形填充方式Solid(实心填充)线元素属性Line direction 线的方向TopDown(从上到下)BottomUp(从下到上)矩形元素属性Radius 矩形四个角的弧度半径(圆角或直角)如果radius为0,该矩形为直角图象属性Image Expression 图象表达式定义被显示图象的表达式Image Expression Class 图象表达式类型ng.Stringjava.io.File.URLjava.io.InputStreamjava.awt.Image默认值为ng.StringScale Image 图象显示方式Clip 图象不伸缩,仅仅显示在模板里定义区域(长*宽)的那部分图象FillFrame 图象伸缩,图象以完全适合模板定义区域的方式显示RetainShape 图象伸缩,以原有图象的比例伸缩以适合在模板定义的区域里显示(适合高度或宽度)默认值为 RetainShapeUsing cache 是否使用缓存默认值为TrueVertical alignmentTop(顶部)Middle(中间)Buttom(底部)默认值为TopHorizotal alignmentLeft(左)Center(中)Right(右)默认值为LeftEvaluation time 表达式计算的时刻(经常用在变量计算页的行数等等)Now (当前的条目被填充时,计算表达式)Report (当报表要结束时,计算表达式)Page (当前页要结束时,计算表达式)Column (当前列要结束时,计算表达式)Group (当指定组的属性发生改变时,计算表达式)默认值为NowEvaluation group 计算组当Evaluation timed为Group时,指定计算表达式时刻的组子报表属性Parameters Map Expression Connection / Datasource Expression Using cacheImage Expression ClassSubreport ExpressionSubreport parameters图表属性组属性Start on a new column是否在新的列开始Reset page number是否在新的页开始Start on a new page是否在新的也开始,并重新计算PAGE_MUMBER Print header on each page 是否在每个新的页上打印组头Min height to start new page 新的也开始的最小高度使组的底部和页底和列底中提供一段间距Group expression 组表达式当该值发生改变时,在报表中产生一个新的组Group header band height 组头条目的高度Group footer band height 组尾条目的高度条目属性Band height 条目高度Split allowed 是否允许分割当条目被拉伸时,是否允许它分页Print When Expression是否当表达式成立时输出表达式成立时输出被选条目默认值为false,一般不要修改这个值。

ireport使用教程

ireport使用教程

JasperReport那些事儿如果你还不知道jasperreport和ireport,那你可以参考我的上一篇文章,或者谷歌百度一下。

好了,废话少说,Let’s start,Go!我的环境是iReport3.0+JDK6.0。

先看看效果。

1)准备数据源,这里使用XML文件(使用UTF8编码)作为数据源。

2)打开iReport,新建一个空的模版文件。

3)加入一个静态文本(StaticText),右击属性(Property),编辑字体属性和内容。

关于Font Name 属性和PDF Font Name属性需要PMingLiu字体(下载)(将PMingLi u字体放在ireport安装目录的font文件夹下)或者你可以选择其他字体,例如宋体,PDF Font Name 选STSong-Light。

4)接下来就要做表格部分,新建一个子报表(subreport),除了第二步选择No C onnection or datasource,基本上只要点Next就行了。

5)完成上一步后就会跳到子报表NameList_subreport0的视图,其实子报表也是一个独立的报表。

但是你现在只能看到一个叫Detail的区域(band)。

我们还需要更多的区域来结合完成表格的制作。

调出区域管理器(菜单View->Bands),将column header 和column footer的高度(height)设为20.6)在column header加入三个静态文本(StaticText),字体属性和之前的一样,分别加入内容姓名,性别,年龄。

在detail区域加入三个文本(textField),在column fo oter加入一个文本,字体属性和StaticText保持一样。

然后设置所有静态文本和文本的边框,如图。

现在的textField都是没有数据的,那么怎么填充数据呢?现在我们来看怎么配置数据源和填充数据。

7)菜单data->connections/datasource,新建一个XML datasouce,目录位置指向之前建立的XML文件。

iReport报表设计器使用说明

iReport报表设计器使用说明

iReport报表设计器使用说明修订历史记录A - 增加M - 修订D - 删除目录iReport报表设计器使用说明 (1)先演示一个简单报表的创建过程 (5)➢a、新建一个报表 (5)➢b、选择报表模版 (6)➢c、命名报表,选择存放路径 (7)➢d、给报表组织数据源 (8)➢e、选择统计分组字段 (12)➢f、完成报表的建立过程 (12)➢g、将可用的数据域组织到相应的位置即可完成报表的设计。

(13)➢h、查看设计好的报表效果。

(14)理解几个重要概念 (15)➢a、iReport的输出格式 (15)➢b、报表的动态对象变量、参数、字段 (15)➢c、编译、静态运行、动态运行 (15)➢d、报表的结构 (15)讲解制表过程常用的几个控件和相应的设置 (17)➢先将全局分成下面几个版块 (17)➢报表属性管理版块 (19)➢报表设计版块 (21)➢各种元素及其属性版块 (22)➢属性版块 (23)制表过程常见问题解答 (24)➢Text field与static text的区别 (24)➢如何设置两行数据的间距 (24)➢如何给报表设置参数 (25)➢表报中文格式无法输出pdf或输出pdf时为乱码 (27)➢解决字符串过长,自动换行的问题 (30)➢如何让报表里的空数据显示为空,不显示null (32)➢如何让报表的数据在方框里面显示 (33)➢如何设置报表的宽度和高度 (37)➢如何让字体居中,靠左等 (38)➢解决自动换行,跨页后内容信息显示不完整的问题 (39)➢配置数据源时提示找不到jdbc驱动 (41)➢查询语句有数据的情况下输出报表为空 (43)➢如何运用变量,以设置变量统计某一列为例 (44)➢如何制作分组报表 (47)✧什么时候用到分组 (47)✧如何制作分组报表 (47)➢如何制作子报表 (50)i.先举例说明什么是子报表: (50)ii.总结子报表概念 (51)iii.制作子报表的几个前提条件 (51)iv.制作子报表的过程 (51)➢数据源的配置 (58)1.iReport中的数据源 (59)2.JDBC连接 (60)✧ClassNotFoundException (61)✧URL不正确 (61)✧连接参数不正确 (62)✧使用JDBC连接 (62)✧字段注册 (62)3.JRDataSource接口 (63)4.JavaBean作为数据源 (64)✧JavaBean的一个字段作为数据源 (65)5.XML数据源 (67)✧字段的注册 (69)6.XML和子报表 (71)7.CSV数据源 (74)✧字段的注册 (75)8.JREmptyDataSource (75)✧实现一个新的JRDataSource (76)✧用iReport实现个性化的JRDataSource (78)9.JavaBean Extended数据源 (80)➢参数$P!{ }与$P{ }的区别 (81)➢如何制作图表 (82)a.饼图(或3D饼图): (82)b.柱状图(或3D柱状): (85)c.线图: (89)d.区域图: (93)e.其他图: (93)➢制作交叉报表的过程 (93)a.crosstabs (93)b.交叉表制作向导 (93)➢制作模版 (97)a)制作模版 (97)b)添加模版 (100)c)利用模版 (100)附:iReport报表中各个元素的属性的含义 (103)先演示一个简单报表的创建过程➢a、新建一个报表➢b、选择报表模版➢c、命名报表,选择存放路径➢d、给报表组织数据源如果还没有数据源,可以选择新建new,将显示下图新建步骤可测试数据源是否有效。

iReport使用文档

iReport使用文档

目录1.快速入门 (1)1.1连接配置 (1)1.1.1添加一个JDBC连接 (1)1.2报表配置 (4)1.2.1报表配置 (4)2.认识进价 (9)2.1界面认识 (9)2.1.1主页面 (9)2.1.2 Report Inspector: (10)2.1.3组件面板 (10)3.学以致用 (11)3.1报表制作 (11)3.1.1简单报表示例 (11)3.1.2添加框线 (13)3.1.3单元格中添加颜色 (15)3.1.4单元格颜色奇偶行显示 (16)3.2组件使用 (19)3.2.1交叉表(Crosstab组件) (19)3.2.2图形报表(Chart组件): (24)3.2.3子报表(Subreport组件) (27)3.24 表格(Table组件) (31)4.深入研究 (34)4.1函数使用 (34)4.1.1 Sum函数 (34)4.2数据连接 (37)4.2.1超链接 (37)5.工具使用 (42)5.1 Web展示工具 (42)5.1.1 Web展示工具安装 (42)5.1.2 Web展示工具配置 (45)1.快速入门1.1连接配置1.1.1添加一个JDBC连接1、页面介绍:“Recent report”最近打开的报表;“Step1”建立数据连接;“Step2”新建报表;“Step3”运行、预览报表2、点击Step1开始建立连接3、选择“数据源”4、连接JDBC如果没有该数据库的JCBC驱动jar包,iReport会很智能的用红色来显示该驱动的名称,所有你赶快找到该驱动jar包。

5、JDBC的配置6、测试连接是否成功1.2报表配置1.2.1报表配置1、完成数据库的连接之后就开始设计自己报表,点击“Step2”2、选择报表样式3、报表命名及存储路径的选择4、数据源选择5、选择表6、选择字段7、选择字段后展示8、根据你设计表的样式选择需要的字段9、这次做的是简单的报表,“Group by”跳过10、报表创建完成2.认识进价2.1界面认识2.1.1主页面1、每一个部分我们叫它为“band”Title:title段只在整个报表中的第一页的最上面部分显示,除了第一页以外,不管报表中共有多少个页面也不会出现Title bandPage Header:Page Header段中的内容将会在整个报表中的每一个页面中都会出现,显示在页面的上部Column Header:针对Detail Band的表头段,一般情况下在这个段中画报表的表头Detail:报表内容段,在这个Band中设计报表中需要重复出现的内容,Detail段中的内容每页都会出现Column Footer:正对Detail Band的表尾段Page Footer:显示在所在页面的最下端Summary:表格的合计段,出现在整个报表的最后一页中的Detail Band的后面,一般用来统计报表中某一个或某几个字段的合计值2.1.2 Report Inspector:2.1.3组件面板组件面板包括:Break(分页)组件、Chart(图形)组件、Crosstab(交叉表)组件、Frame (框架)组件、Image(图片)组件、Barcode(条形码)组件、generic element(通用元素)组件、List(列表)组件、Spider Chart(蜘蛛图)组件、Round Rectangle(圆角矩形)组件、Table(表格)组件、Line(线条)组件、Map(地图)组件、Rectangle(矩形)组件、Sort(分类)组件、Subreport(子报表)组件Text Field(文本字段)组件、Static Text(静态文本)组件。

iReport使用教程(示例教程)

iReport使用教程(示例教程)

iReport使⽤教程(⽰例教程)在使⽤ireport的过程中,因为各种功能都要百度,但是⼤家使⽤的例⼦⼜千差万别让⼈很苦恼,所以⽤⼀个简单例⼦贯穿的展⽰⼀下ireport的常见功能。

iReport简介说到iReport不得不先介绍Jasperreport,Jasperreport是⼀个报表制作程序,⽤户需要按照它制定的规则编写⼀个XML⽂件,然后得到⽤户需要输出的格式⽂件。

它⽀持输出的⽂件格式包括PDF,HTML,XML,XLS,CVS等等。

⽽iReport就是⼀个制作Jasperreport的XML⽂件的可视化开发⼯具。

只是⼀个UI。

我使⽤的是iReport 3.5.1,使⽤的⽰例数据表如图:sales表:(⼈名、⼤致结构来⾃帆软电⼦⽂档,如有雷同,⽆意冒犯)sellers表:报表结构左边是view区,联系着主设计区中的各个band区域的数据,以及参数、变量等。

中间是主设计区,通过拖拽控件⾯板可以在此区域进⾏设计,有三种模式:设计(Designer)、源码(Xml)、预览(Preview),设计模式是可视的,源码⽅式可以直接在上修改,预览是对设计好的报表样式进⾏预览,也是⼀个编译的过程;右边是控件⾯板和属性⾯板,可以在此使⽤控件和设置属性。

JasperReport有三个⽅式来保持数据:Field、Paramrter、Variables。

⼀般情况下,Field是⽤作保存从数据源取出来的数据,⽤法是;Parameter是⽤来占位—我们在设计时往往不知道具体的值,那么⽤⼀个参数来占住它们的位置,在执⾏时,从程序或者数据库中传递对应的参数过来,从⽽实现⼀个动态的过程,⽤法是Variables是变量,可以将变量⽤于TextFild表达式中,也可以设置它的属性,使它具有⼀些功能,如求和,求平均数等,⽤法是数据源ireport提供很多种数据源的连接⽅式,点上⽅的数据库标识就可以设置数据库,下⽅的数据标识⽤来写SQL语句获取数据。

iReport使用教程

iReport使用教程

一、iReport简介说到iReport不得不先介绍Jasperreport,Jasperreport是一个报表制作程序,用户需要按照它制定的规则编写 一个XML文件,然后得到用户需要输出的格式文件。

它支持输出的文件格式包括PDF,HTML,XML,XLS,CVS等等。

而iReport就是一个制 作Jasperreport的XML文件的可视化开发工具。

只是一个UI。

二、安装说明2.1 基本安装现在最新的版本是iReport 0.5.1 (Aug 27, 2005).下载后解压然后在根目录双击iReport.bat就可以用了,但是为了可以使用external ttf font还必须要把 iReport-0.5.1/fonts 加到环境变量里面去。

2.2 了解制作报表用的包下载后到到 iReport-0.5.1/lib 里看看,你就可以发现iReport的真面目了。

(1) jasperreports-1.0.1.jarjasperreports 是iReport的核心内容。

它是一个强力的报表产生工具,他有能力描述丰富内容到屏幕上、到打印机或到PDF, HTML, XLS, CSV和XML文件。

它完全用Java编写的,并可在各种Java应用(包括J2EE或WEB应用)中用来产生动态内容。

它的主要目的是以一种简单而灵活 的方式来帮助创建导向的页面。

JasperReports组织根据在一个XML文件中定义的报表设计通过JDBC来接受来自一个关系数据库中的数据. 为了以数据来填充报表,报表设计必须首先被编译。

jasperreports的官方网站:/(2) itext-1.3.1.jariText是一个开放源码的Java类库,是用来生成PDF文件的。

iText的官方网站:如果要在生成的pdf文件显示中文等亚洲字符,还必须下载itext的亚洲字符包。

tTextAsian的官方下载地址:/downloads/iTextAsian.jar(3) jfreechart-1.0.0-rc1.jarjfreechart是一款免费的、功能强大的统计图生成工具,可以直接生成PNG,JPG 等各式的文件。

iReport

iReport

使用iReportiReport是用于定义JasperReport报表的可视化工具,JasperReport使用XML来定义一个报表的结构。

一、安装下载地址:/ir_opensource_download.html下载iReport-3.0.0-windows-installer.exe,按提示执行默认安装。

二、基本设置(1)语言iReport提供所谓的中文版本,中英混排,而且没有使用专门的中文字号。

要改成英语,点击菜单中的“Options”-“Settings...”,将“General”面板中的“Language”项设为“English”即可。

(2)编译路径"Options" -> "Settings" -> "Compiler" -> "Default compilation directory" 下选择编译路径,生成的jasper文件将放在此目录。

(3)PDF报表的中文处理需要将中文包iTextAsian.jar加入iReport安装路径的lib文件夹下。

在ireport中将中文的属性设置如下:字体:宋体,PDF name:STSong-Light,PDF Encoding:UniGB-UCS2-H (Chinese Simplified);或者"Format" -> "Styles" -> "New" -> "Text properties" -> "Font" -> "Add/modify report font" 定义一种样式,以后直接选择就可以了。

三、数据源设置将数据库使用的jdbc驱动包复制到iReport安装路径的lib文件夹下。

(1)打开"Data" -> "Connections/DataSources",点击“new”,选择"Database JDBC connection"。

iReport使用配置说明书.

iReport使用配置说明书.
配置数据库连接
点击iReport界面的【Report Datasources】按钮(如下图,如果没有此按钮,选中视图→工具栏→Designer选项,该按钮就会显示)
弹出如下Connections / Datasources窗口,点击【New】按钮,新建一个Oracle数据库连接
弹出如下选择窗口,选择Database JDBC connection选项,点击【Next >】,进入下一步连接配置窗口
点击【下一步】,选择需要在界面上填充的字段,如下图
成功建立后出现如下界面
在左边工作区内右键单击平【Parameters】,新建一个XH的参数,注意:参数名统一大写。
修改SQL查询语句
点击【Edit Query】
SELECT * FROM xj_bk_jbxx Where xh=$P{XH}
在JSP页面调用jasper时,先要指定使用哪个jasper
6
需要循环打印的部分,应该放在Detail中,并且Detail的高度,应该与循环打印的每一行高度相同。如果需要序号的,可以使用Variables自动生成。下图为循环打印示例,图中红框中部分为Detail循环打印部分,其高度必须与每一循环行的高度相同。
7
子报表为Subreport,每一个子报表必须单独占有一个Detail,不可跨band;使用子报表时,首先创建一个子报表,然后在父报表上添加一个子报表组件Subreport(从组件面板拖放到相应的Detail中),拖放以后会弹出连接子报表的窗口,如下图,选择之前创建的子报表后,点击【完成】按钮,完成子报表的引入。
response.setContentType("application/pdf");
OutputStream output = response.getOutputStream();

Ireport3.0最新中文版图文教程(一)

Ireport3.0最新中文版图文教程(一)

iReport图文教程作者:罗代均 ldj_work@目录1.第一个报表2.分组报表3.子报表4.图形报表5.创建web报表0.准备工作本教程用到的软件1.iReport 1.2.82.MySQL 5.03.MySQL Admin Tools4.Tomcat5.05.Struts 1.26.jdk 1.4创建测试数据库使用MySQL Admin Tools图形化工具创建如下两张表Employee 雇员信息表,字段如下empId int 雇员ID 自增,主键deptId int 部门IdempName, nvarchar(20) 雇员姓名Deprtment 部门信息表,字段如下deptId int 部门ID 自增,主键deptName nvarchar(45) 部门名称1.第一个报表将下载到的iReport解压到任意目录,ireport自带了MySQL的JDBC驱动,双击iReport.bat启动iReport 软件,界面如下:图1,新建报表文档1.如图1,新建报表文档,名称为FirstReport2.选择”Data---->连接/资料来源”菜单3.新建数据库JDBC连接,单击 “new” 按钮,弹出如下窗口,设置JDBC连接参数4.新建报表查询选择”Data---->报表查询”菜单,出现如下窗口,输入SQL语句: select * from employee5.放置列标题6放置详细信息将empId,deptId,empName三个字段拖入detail栏内7.查看报表结果最后报表结果如下2.分组报表1,新建报表文件,名称为groupReport,2.新建报表查询选择”Data-->报表查询”,输入如下SQL语句select t2.deptName,t1.empId,t1.empName from employee t1left join department t2 on t1.deptId=t2.deptId3.新建报表群组输入分组名称”deptName”,以及分组的字段”$F{deptName}”4.放置报表数据将deptName拖入deptNameHeader栏, empId,empName拖入detail栏5.查看报表结果报表结果如下,可以看到,已经按照部门名称分组了.我们还可以单击“T ”快捷按钮,加入一些静态文字信息。

IReport3.6报表使用说明

IReport3.6报表使用说明

IReport报表使用说明书安装报表工具下载ireport:/projects/ireport/files/下载iText :/projects/itext/files/注:中文包使用工具:ireport3.6.0+jasperreport3.6.0这两个都是使用目前为止最新的版本,注意这两个版本最好一致,如你使用ireport3.6.0的话jasperreport也最好使用3.6.0版本的。

IReport的报表设计过程1、安装好ireport3.6.02、加入中文包:这里可以看到报表标题和列头部都有中文。

中文如何处理?要是不处理好中文,预览的时候外部的pdf浏览器是无法显示有中文的文字的。

首先,得把iTextAsian.jar(亚洲语言包解决中文pdf问题)选择“选项”,弹出的窗口如:把几个包加进里面,按“确实”完成。

3、配置数据库:通过点击来配置数据库,单击后的界面:点击NEW来新建自己的数据库配置,选择版本类型:下一步:填写完配置后,测试:保存后完成配置数据库。

4、新建报表模板打开ireport3.6.0,点文件菜单下的new…菜单,新建一个报表模版,如下图或者直接点击界面进入:5、选择报表模版或样式iReport3.6.0已经内置了很多样式给我们使用,我们可以直接使用,或者是选择空白的样式自己设计模版。

如下图:现在我们用创建报表的向导来完成创建。

点击来执行向导;填写报表名称和存放路径:填写完成后,执行下一步:选择要查询的数据库,开始编辑SQL查询语句:用户可以自己在这里写查询语句;当然,如果不太记得表里面的数据字段和类型,可以通过点击来实现SQL查询语句的设计。

点击后的界面:双击选中要查询的表。

选择要查询的字段:添加查询表达式,点中select右击:弹出的表达式编辑器:点击OK完成。

若我们要用count方法与GROUP BY 来分组,选择分组的字段,右击,选中GROUP BY 完成。

如下:同样,当我们要用到order by 的字段,可以通过这种方法来完成。

iReport使用手册(简易配图基础版)

iReport使用手册(简易配图基础版)

iReport用户手册1.1什么是iReport?iReport是一个能够创建复杂报表的开源项目,并且它能调用JasperReports 库应用于任何一种java应用程序。

本身是分布式的且由符合GNU通用公共许可的百分之百纯java编写。

由于它丰富的图形界面,你能够很快的创建出任何一种你想要的报表。

iReport能够让我们提高技术方面的信心,比如它能降低学习JasperReports的XML语法的难度,而且能够为熟练的技术人员节省大量的时间并能开发出非常精细的报表。

2.1功能特点以下将列出iRreport的一些比较突出的功能:•百分之九十九支持JasperReports XML标签•所见即所得的报表编辑器,也就是说它具有创建矩形,线,椭圆,正文区域,标签,图表,子报表,条码等完善的工具图标供使用。

•嵌入式编辑器带有灯泡提示代码规则•支持Unicode和非拉丁语言(俄文,中文,日文,韩文…)•文档结构浏览器•完善的报表编译器和输出器•支持所有可以通过JDBC连接的数据库•支持所有有效的数据源•自动报表创建向导•支持子报表•源文件的备份•支持文档模版•支持TrueType字型•支持本地化•可添加插件扩展功能•完全支持脚本•支持图表•标准对象库管理(页码…)•支持拖拽•无限制的取消/重做3.1下载地址iReport-5.5.0-windows版下载链接:/project/ireport/iReport/iReport-5.5.0/iRe port-5.5.0-windows-installer.exe4.1安装流程1.打开安装文件,点击Next2.点击I Agree3.点击Next4.选择安装目录后,点击Next5.点击Install5.点击Finish安装完成5.1使用流程5.1.1新建一个文件1.点击菜单栏文件,选择New2.选择Report和Blank A4,后点击Launch Report Wizard3.编写Report name,选择存放目录后点击下一步4.默认选择Empty datasource,点击下一步5.点击下一步6.点击下一步7.点击完成新建完成5.1.2设置纸张大小以及页面布局飞1.选中文件名后,点击右键选择Page format..2.设置页面格式以及排版模式我们报表的设计是选择纸张大小A3,横向排列,纸张分两页此处特别强调Columns的作用就是将纸张界面分成相等的几部分,一般设置为2,也就是等分为两部分,左边和右边界面相等3.由于我们是画报表所以只需要保留细节(Detail)即可,因此将Title(标题),Page Header(页眉),Column Header(列标题),Page Footer(页脚),Summary(总结),Background(背景)项删除4.打开组件面板和属性面板,默认是打开状态5.1.3主要组件以及属性介绍1.常用组件Break介绍(组件都是拖移使用,直接点住不放,拖向细节界面空白处)Break是分页符,用来分页,可拖移动到细节编辑框中使用,使用效果如下2.常用组件Line介绍(组件都是拖移使用,直接点住不放,拖向细节界面空白处)Line用来画线条,在表格无法实现的情况下可以使用线条加以补充,使用效果如下3.常用组件Static Text介绍(组件都是拖移使用,直接点住不放,拖向细节界面空白处)Static Text是静态文本,是最常用的一个组件,表格的基本组成大多是静态文本,也就是一个个的表格框,可以输入相关信息,相关效果如下属性框截图:以下为重要内容:Static Text主要属性介绍,基本属性里的Left,Top,Width,Height,Forecolor,Backcolor,Opaque和Text properties里的Font name,Size,Horizontal Alignment,Vertical Alignment,Pdf EncodingStatic Text 基本属性1.Left----------表格框跟界面最左侧距离调整2.Top-----------表格框跟界面最左侧距离调整3.Width--------表格框本身的左右长度调整4.Height--------表格框本身的上下长度调整5.Forecolor----前景色调整(可以理解为字体颜色调整)6.Backcolor----背景色调整7.Opaque-------是否透明选项,可以选择,如果想前景色和背景色调整生效,勾选即可Text properties 属性1.Font name----字体名称调整2.Size------------字体大小调整3.Horizontal Alignment-------水平对直,可调整字体在表格框中的位置4.Vertical Alignment-----------垂直对直,可调整字体在表格框中的位置5.Pdf Encoding--------PDF编码,一般选择UniGB-UCS2-H (Chinese Simplified)4.常用组件Text Field介绍(组件都是拖移使用,直接点住不放,拖向细节界面空白处)Text Field是文本字段,也就是一个动态文本,可以将变化的数据传入表格,相关效果显示Text Field主要属性介绍,Text Field Expression文本域表达式,可以修改文本字段的表达方式可以在parameters(参数)中新建一个,然后将原始生成的参数替换一个命名5常用组件Image介绍(组件都是拖移使用,直接点住不放,拖向细节界面空白处)将Image拖移至细节页面空白处后,会弹出一个图片路径选择框,选择已经保存的图片点击打开后即可调整图片大小相关显示如下Image主要属性介绍,Image Expression路径设置可手动设置图片路径地址5.1.4使用iReport打造一个简单报表报表原图:第一步:拖移6个Static T ext到细节界面空白处,调整好表头的字体,字体大小,背景色,前景色,详细信息参照常用组件Static Text介绍中,效果图如下:第二步:框选已经做好的表头,使用Ctrl+C复制,效果图如下第三步:粘贴后进行前景色和背景色的调整,将粘贴项的Opaque(是否透明)改为不勾选状态,效果图如下第四步:将数据填充进报表,完成。

iReport中文教程

iReport中文教程

iReport一、介绍iReport是一个能够创建复杂报表的开源项目,它100%使用Java语言编写,是目前全球最为流行的开源报表设计器之一。

由于它丰富的图形界面,你能够很快的创建出任何一种你想要的报表。

以下是iReport一些比较突出的功能:•拖拽式,所见即所得的报表编辑器;•多样的向导来简化复杂的报表设计任务;•超过30个排版和格式化工具;•报表可转换为PDF HTML EXCEL FLASH CSV RTF TXT OpenOffice Java2D JRViewer等格式;•支持所有有效的数据源。

如:JDBC,CVS,Hibernate,JavaBean等;•用户自定义数据源;•无限次数的撤消/重做;•集成脚本(scriptlet)支持;•内置图表支持:超过20种的图表支持。

并可扩展;•国际化:集成超过15种语言;•报表模板与报表库样式管理;•源文件的备份;•文档结构浏览器。

二、开始在本章中我们将介绍iReport运行时所需要的环境、如何下载iReport以及如何在我们的系统中安装使用。

2.1、运行环境(Requirements)iReport运行时需要sun java2 SDK 1.5及以上版本,为了能编译我们的报表文件我们需要完整的安装JDK。

2.2、下载(Download)iReport官方网址:/cap3.html。

2.3、运行(Run)将文件下载到本地解压后,您可以直接双击iReport.exe或者iReport.bat来运行程序。

注:在本文中iReport的版本是3.0.0。

三、报表结构在本章中我们将分析一下报表的结构,看一下报表中每一部分的作用是什么,以及在生成报表的时候每一部分将产生什么样的效果。

栏(Bands)报表被垂直分成若干个部分,每一个部分我们叫它“band”。

每一个band都有自己的特性,在报表生成的时候有些会打印一次,有些会打印多次。

如下图。

接下来我们就对每一种类型的band分别进行介绍。

IReport帮助文档(step by step)

IReport帮助文档(step by step)

iReport 使用幫助(step by step)要打印的報表預覽與說明:1.要打印的報表Booking Hotel Information(PDF預覽):2.數據說明:Booking Hotel Information由7組數據組成,分別為:1)Contact Person Information2)Guest Information(與BookingHotelInformation為(一對多關系),具體有多少條記錄不確定)3)HotelInformation4)Check In/Out and Flight Details5)Room Detail(與BookingHotelInformation為(一對多關系)具體有多少條記錄不確定)6)Remaks7)Total Amount(MYR)3.報表的設計:考慮到報表中含有一對多的關系,因此頇要子報表。

報表則設計為一個父報表,兩個子報表。

Are you Ready??Step one:準備好要打印報表的數據1.說明:在項目開發過程中,需要打印的數據往往都是在業務層已經準備好了,為了更好的模擬真實項目的環境,我們在程序的業務層準備好打印報表的數據(模擬要打印的數據):2.Booking Hotel Infamtion的業務層處理類為:BookingHotelFacade.java,在該類中準備需要的數據,首先我們從簡入繁,先開發報表的的標題與Contact Person Information部分,如下圖所示:3.我們在業務層中準的數據為:package com.techson.facade;import java.util.ArrayList;import java.util.Date;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;public class BookingHotelFacade {public static List<Map<Object, Object>> mapList() {List<Map<Object, Object>> mapList = new ArrayList<Map<Object, Object>>();for(int i=1; i<5; i++) {Map<Object, Object> map = new HashMap<Object, Object>();map.put("id", "BK0811000" + i);map.put("bookingDate", new Date());map.put("customerName", "DENG");map.put("email", "DYFDYX@");map.put("telOne", "12345678764");map.put("telTwo", "21312345445");map.put("fax", "5161155151516");mapList.add(map);}return mapList;}}4.數據處理的幾點說明:1)使用List<Map<Object, Object>>能更靈活的處理數據,建議使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

iReport中文教程iReport一、介绍iReport是一个能够创建复杂报表的开源项目,它100%使用Java语言编写,是目前全球最为流行的开源报表设计器之一。

由于它丰富的图形界面,你能够很快的创建出任何一种你想要的报表。

以下是iReport一些比较突出的功能:•拖拽式,所见即所得的报表编辑器;•多样的向导来简化复杂的报表设计任务;•超过30个排版和格式化工具;•报表可转换为PDF HTML EXCEL FLASH CSV RTF TXT OpenOffice Java2D JRViewer等格式;•支持所有有效的数据源。

如:JDBC,CVS,Hibernate,JavaBean等;•用户自定义数据源;•无限次数的撤消/重做;•集成脚本(scriptlet)支持;•内置图表支持:超过20种的图表支持。

并可扩展;•国际化:集成超过15种语言;•报表模板与报表库样式管理;•源文件的备份;•文档结构浏览器。

二、开始在本章中我们将介绍iReport运行时所需要的环境、如何下载iReport以及如何在我们的系统中安装使用。

2.1、运行环境(Requirements)iReport运行时需要sun java2 SDK 1.5及以上版本,为了能编译我们的报表文件我们需要完整的安装JDK。

2.2、下载(Download)iReport官方网址:/cap3.html。

2.3、运行(Run)将文件下载到本地解压后,您可以直接双击iReport.exe或者iReport.bat来运行程序。

注:在本文中iReport的版本是3.0.0。

三、报表结构在本章中我们将分析一下报表的结构,看一下报表中每一部分的作用是什么,以及在生成报表的时候每一部分将产生什么样的效果。

栏(Bands)报表被垂直分成若干个部分,每一个部分我们叫它“band”。

每一个band都有自己的特性,在报表生成的时候有些会打印一次,有些会打印多次。

如下图。

接下来我们就对每一种类型的band分别进行介绍。

Title Band:title 段只在整个报表的第一页的最上面部分显示,除了第一页,不管报表中有多少个页面也不会再出现Title band 中的内容。

就是报表的标题。

pageHeader Band:pageHeader 段中的内容将会在整个报表中的每一个页面中都会出现,显示的位置在页面的上部。

如果是报表的第一页,pageHeader 中的内容将显示在Title Band 下面,除了第一页以外的其他所有页面中,pageHeader 中的内容将显示在页面的最上端,即页眉。

pageFooter Band:显示在所在页面的最下端,即页脚。

Detail Band:报表内容段,在这个Band 中设计报表中需要重复出现的内容,Detail 段中的内容每页都会出现。

columnHeader Band:针对Detail Band 的表头段,一般情况下在这个段中画报表的表头。

columnFooter Band:针对Detail Band 的表尾段。

Summary Band:表格的合计段,出现在整个报表的最后一页中的Detail band 的后面,一般用来统计报表中某一个或某几个字段的合计值。

lastPageFooter:内容将会出现在报表的最后一页的最后部分。

为了实际演示各个band的生成效果,我们可以在报表中的各个band里添加不同的对象,以测试各个band 的作用。

步骤:第一步:新建文档,报表名称命名为:MyFirstReport,然后单击“OK”。

第二步:设置JDBC连接参数单击“Date 连接/资料来源”,出现如下界面:然后单击“New”,出现如下界面:选择“Database JDBC connection”项,单击“Next”,设置好参数,单击“Test”,如果测试成功单击“Save”保存,如果测试没有成功,请检查一下以上步骤。

第三步:单击Data 报表查询。

在query editor里输入下面的语句:select * from tb_employee,然后单击“OK”第四步:单击“不会变动的文字”按钮,添加各个Band内容。

在报表中的各个band分别放置如下内容:第五步:将要显示的字段拖到“detail”栏内第六步:单击“执行报表”查看结果:启动报表,生成的效果如下:最后一页:四、报表元素在本章中我们将介绍可以在报表中使用的对象及他们的相关属性。

我们所说的元素主要是一些图形对象,比如text,rectangle等。

在iReport中没有段落、表格或分页的概念,在报表中最基本的对象主要有七个:-Line(线段)-Rectangle(矩形)-Ellipse(椭圆形)-Static text(不会变动的文字)-Text field(文字栏位)-Image(图像)-Subreport(子报表)-Crosstab()-Chart通过以上这些组件的组合我们可以做出各种各样复杂的报表样式。

iReport提供两种特殊的图形对象:chart和barcode。

每一种类型的对象都有一些通用的属性,如高度、宽度、位置、所在的band等。

除此之外还有一些针对不同元素的特殊属性。

每一个元素都必须在一个band内部,如果一个元素跨了一个以上的band,那么在编译的时候将会抛出元素位置错误的异常。

要添加一个元素到报表中,我们可以从主工具栏中选择相应的工具,然后添加到报表区域中即可。

我们可以通过双击对象或右键菜单打开元素的属性设置窗口。

属性窗口由若干个标签页构成,“Common”标签里包含每一个组件都具有的通用属性,其它的标签页是针对不同元素的属性设置。

在下面的章节中,我们将对每一个对象的使用做详细的介绍。

五、字体和样式一个style是一个预定义的属性的集合,用来控制元素的外观(比如背景色、边框线、字体等)。

我们可以为我们的报表定义一个默认的style。

要为一个元素应用一个style,我们可以选择该元素并从元素的属性窗口common标签里的style列表选择你需要的style。

Fonts是用来描述text的外观特征。

5.1、字体(Font)通常定义一个字体,我们需要做下面几件事情:-Font name(字体名称)-Font dimension(字体大小)-Attribute(属性,诸如bold-faced,italics,underlined,barred)如果我们需要导出PDF格式的报表,需要为字体添加下面的信息:PDF Font Name:PDF字体名称(预先定义PDF字体或一个在classpath里的TIF文件的名称)。

PDF Embedded:当使用一个外部的TTF类别的字体文件生成报表时是否把它包含在PDF文件里的一个标志。

PDF Encoding:指定一个字体编码名称。

单击“格式化 报表字形”可以创建自定义的字体。

如果我们需要将报表导出成PDF格式,将会使用指定的PDF字体,其它属性将会被忽略掉。

5.2、样式(Styles)我们可以选择主菜单的“Format Styles”来定义一个style。

如下图所示:单击“格式化 Styles”可以创建自定义的样式。

点击“New”按钮添加一个新的style。

在弹出的窗口中我们可以定义一些属性,如果我们需要某个属性的值,我们可以点击按钮来实现。

在每个元素属性窗口的“Common”标签里有一个style属性下拉框,如果我们需要为一个元素设置一个style,我们可以在这个下拉框里选择我们定义好的style,这样就可以把一个style应用到一个元素上面了。

我们可以为一个Style加一个动态的条件,当条件满足的时候采用某个style,否则就采用默认的style。

举个例子,还是以数据库里的employee表为例,如果员工的工龄大于3时,我们让工龄以红色加粗的字体显示。

打开Query窗口,输入下面的查询SQL:Select * from tb_employee新建一个style,在弹出窗口的style conditions里新建一个conditions,在表达式窗口里输入下面的表达式:($F{employee.workingYear}.intValue()>2?new Boolean(true):new Boolean(false))如下图:新建的style如下图:接下来把员工姓名和工龄到报表当中,并将我们新建的style应用到薪水这个field上,如下图:启动查看运行效果如下:六、字段、参数、变量在ireport中有三种类型的对像可以用来保存数据:Fields/Parameters/Variables.这三种对象可以用在某些地方的Expression中,通过一定的逻辑在报表生成的时候动态的更改某些值。

Fields/Parameters/Variables有类型的概念,它们的类型就是一个标准的Java的Object。

要使用这三种类型的对象我们必须首先创建它,创建的方法是点击“View”主菜单中,选择其中的子菜单Fields,Variables,Parameters我们可以创建不同的对象。

通过这三个子菜单我们可以查看并管理Fields,Variables,Parameters对象。

会出现如下界面:通过该窗口,我们可以创建,修改,删除这三种类型对象。

6.1、字段(Fields)Field在ireport是专门用来组织记录。

Field的创建有多种途径可以实现,我们可以根据在ireport中各种类型的数据源来创建我们所需要的Field。

6.1.1、在Fields标签页中,我们可以点击new 按钮来创建一个新的Field。

一个Field有两个必填的属性: name、type和一个可选项的description。

从ireport1.0.0开始,fields 可以是任何Java数据类型。

这样当我们使用JavaBean作为数据源时我们可以很方便的从ng.Object向报表中的Field的转换工作。

在对象的Expression里你可以使用下面的语法来引用一个field: $F{field name}例如,如果你想处理com.bstek.test.domain.Person Bean里的username 字段,可以这样去写:((com.bstek.test.domain.Person)${username})6.1.2、用一个SQL query来创建Field在ireport的设计中,使用SQL query的方式来创建或记录字段的是使用最广泛的也是最直接最简单的一种方式。

做此操作我们需要首先打开ReportQueryDialog窗口(点击主工具栏的按钮), ReportQueryDialog 窗口出现后,我们可以输入合适的SQL检索并创建Fields。

相关文档
最新文档