IReport用户手册.docx

上传人:b****5 文档编号:8048134 上传时间:2023-01-28 格式:DOCX 页数:80 大小:4.45MB
下载 相关 举报
IReport用户手册.docx_第1页
第1页 / 共80页
IReport用户手册.docx_第2页
第2页 / 共80页
IReport用户手册.docx_第3页
第3页 / 共80页
IReport用户手册.docx_第4页
第4页 / 共80页
IReport用户手册.docx_第5页
第5页 / 共80页
点击查看更多>>
下载资源
资源描述

IReport用户手册.docx

《IReport用户手册.docx》由会员分享,可在线阅读,更多相关《IReport用户手册.docx(80页珍藏版)》请在冰豆网上搜索。

IReport用户手册.docx

IReport用户手册

iReport

用户手册

 

目录

GiulioToffoli1

1序言6

什么是iReport?

6

功能特点:

7

iReport社区:

7

鸣谢:

8

2入门8

必要条件:

8

下载:

9

编译iReport:

9

基本的配置:

9

创建JDBC连接:

12

第一个报表:

13

命令行选项:

17

3JasperReports基础概念17

JasperReports17

报表生命周期:

18

Jrxml源代码和jasper文件:

18

数据源和打印格式:

22

版本兼容性:

23

表达式:

24

一个简单的程序:

25

4报表结构26

Bands26

Title27

Pageheader27

Columnheader27

Groupheader28

Detail28

Groupfooter28

Columnfooter28

Pagefooter28

LastPagefooter28

Summary29

Background29

报表属性:

29

列30

高级选项:

32

脚本:

32

更多…33

Titleonanewpage选项:

33

Summaryonanewpage选项:

35

Floatingcolumnfooter选项:

35

打印顺序:

35

无数据打印(如果没有数据时):

36

i18n:

36

ResourceBundleBasename36

XML源文件的编码设置:

37

5报表元素37

选择并插入元素到报表中:

37

布置和元素顺序40

使用元素树管理元素:

43

基本属性:

43

线46

矩形46

椭圆47

图象47

文本元素50

静态文本51

文本域51

子报表55

专用元素56

图表56

条形码56

超连接58

Reference59

LocalAnchor59

LocalPage59

RemoteAnchor59

RemotePage59

6字体59

字体59

扩展字体60

编码61

使用Unicode字符61

报表字体61

7字段,参数和变量62

字段62

SQL查询的字段注册63

JavaBean的字段注册64

JRExtendedBeanDataSource的字段注册65

字段和文本域65

参数66

在查询中使用参数67

使用程序传递参数67

内置参数69

变量69

内置变量71

8Bandsandgroups71

Bands71

Groups72

9Subreport77

创建子报表78

连接子报表到父报表78

参数的通道78

指定数据源79

指定子报表80

一步一步举例80

返回参数86

10数据源87

iReport中的数据源88

JDBC连接89

ClassNotFoundException91

URL不正确91

连接参数不正确91

使用JDBC连接91

字段注册92

JRDataSource接口93

JavaBean作为数据源93

JavaBean的一个字段作为数据源95

XML数据源96

字段的注册98

XML和子报表100

CSV数据源104

字段的注册105

JREmptyDataSource105

实现一个新的JRDataSource106

用iReport实现个性化的JRDataSource108

JavaBeanExtended数据源110

11国际化111

ResourceBundleBaseName111

恢复本地化字符串113

格式化消息114

配置本地化报表114

12脚本115

JRAbstractScriptlet类115

iReport处理脚本117

用脚本部署报表118

13模板119

模版结构:

119

使用通用模板121

14图表123

创建一个简单的图表123

级Series128

自动级129

手动级130

图表类型和属性132

饼图133

3D饼图133

柱状图134

3D柱状图136

线图136

区域图137

15插件和附加工具137

插件结构XML文件138

it.businesslogic.ireport.plugin.IReportPlugin类139

大型编译器插件142

文本向导插件144

16常规问题解决方案145

打印百分比145

计算组的发生数146

分离detail148

插入一个页149

交叉报表152

使用多重连接找回数据152

如何使用存储过程153

1序言

什么是iReport?

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

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

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

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

这里将带给大家的虽然是0.4.1版本的,但是大部分的资源都是来自于0.2.0版本发布之后的。

因为早先的0.2.0版本不是用java编写的,而是用VisualJ++;因此这些版本都只能在微软的Windows系统运行,自从0.2.0版本发布以后便停止了用VisualJ++的开发。

我的任务就将最新的版本的iReport介绍给大家,因此,我不可能应用老的版本讲解。

功能特点:

以下将列出iRreport的一些比较突出的功能:

•百分之九十九支持JasperReportsXML标签

•所见即所得的报表编辑器,也就是说它具有创建矩形,线,椭圆,正文区域,标签,图表,子报表,条码等完善的工具图标供使用。

•嵌入式编辑器带有灯泡提示代码规则

•支持Unicode和非拉丁语言(俄文,中文,日文,韩文…)

•文档结构浏览器

•完善的报表编译器和输出器

•支持所有可以通过JDBC连接的数据库

•支持所有有效的数据源

•自动报表创建向导

•支持子报表

•源文件的备份

•支持文档模版

•支持TrueType字型

•支持本地化

•可添加插件扩展功能

•完全支持脚本

•支持图表

•标准对象库管理(页码…)

•支持拖拽

•无限制的取消/重做

iReport开发团队是那些来自世界各地的工程师,他们默默无闻的用他们熟练的技术和丰富的经验日负一日的为iReport添加功能排除bugs。

iReport社区:

iReport网址是;企业的网址是

Help:

在这里你不但可以提出要求,也可以提出技术上的问题

OpenDiscussion:

这个社区是用来发布注释,判定讨论结果和提出新的功能建议的。

如果你还是无法解决你的问题,不要着急,我们还有一个特殊的跟踪系统来帮助你:

不保证你的提问能很快得到答复,但是你一定能在几天内收到一个另你非常满意的答复。

这些都是免费的,如果你享有这些,我们还是希望你能够给我们的项目一些资助。

如果你需要一些关于商业方面的支持,你可以写email到:

gt@businesslogic.it.

请将你发现的bug的记录发送到:

在企业网站上,也可以进一步的提出要求(RFE).有能力的也可以提出不足并发表完整的代码。

为了能始终了解关于最新的项目的开发情况你可以将你的邮件地址加到我们的邮件列表中:

所有的iReport团队成员会以往直前地,严肃地,认真地考虑所有来自于用户们的建议,批评和忠告。

鸣谢:

iReport的结晶来自于许多人。

但是一些人正在被我们遗忘,我很荣幸的感谢以下为我们工程作出贡献的一些人:

TeodorDanciu,Alexander,AndreLegendre,CraigBSpengler,DavidWalters,EgonRPereira,ErtanO,GRaghavan,HeikoWenzel,KeesKuip,OctavioLuna,PeterHenderson,VinodKumarSingh,WadeChandler,EricaPastorello以及所有的评论家。

2入门

在这章我们将看到使用iReport之前的必要步奏,如何获得二进制的分发和源程序和如何编译和安装它。

必要条件:

iReport需要SunJava2SDK1.4以上版本;为了能编译jasper文件就必须安装完整的java2(JDK),不光是(JRE)这个运行环境。

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

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

下载:

你可以到SourceForge网站上的企业主页上下载最新发布的iReport

(可能有几种不同的分类:

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

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

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

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

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

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

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

如果你有CVS那就执行如下的命令行:

cvs-d:

pserver:

anonymous@:

/cvsroot/ireportlogin(目前好象无法连接)

andthenallonthesameline…

cvs-z3-d:

pserver:

anonymous@:

/cvsroot/ireport

coiReport2

这样CVS客户端就可以将iReport的所有文件下载到本地,包括所有的文档,库和所有有用的编译iReport的文件。

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

编译iReport:

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

下载iReport-x.x.x-src.zip,解压缩到你指定的目录,例如:

c:

\devel(or/usr/develonunixsystem)。

打开命令提示符或shell,进入你解压的目录和iReport目录:

C:

\devel\iReport-0.3.2>antiReport

如果这个源完整的存在与目录中,它将被编译进类中iReport就能直接启动。

基本的配置:

如果选择下载了iReport二进制版本的,那就直接将该压缩文件解压缩到指定目录,例如:

c:

\devel(or/usr/develonaunixsystem).打开命令提示符或shell,进入被解压缩的目录,输入iReport目录:

C:

\devel\iReport-0.3.2>iReport.bat

oronunix:

$./iReport.sh

(inthiscase,itshouldbeprecededbya“chmod+x”ifthefileisnotexecutable.)

第一步执行完毕时iReport将创建一个名叫”.ireport”的文件在用户的主目录。

这里的主目录指由自己设置和配置的目录。

如果文件夹不能被创建,这就有可能是解压缩造成的影响而不能够配置成功,这时,你就要自己手动的创建一个目录。

进行下一步之前你需要将tools.jar文件拷贝到JDK的lib目录下以及iReport的lib目录下。

如果没有这个文件的话在编译report时将会产生一些异常(carriedoutbyusingclassescontainedinthisjavalibrary).在MacOSX系统中tools.jar文件就不需要拉,因为具有编译ireport所必须的类的classes.jar文件代替它。

iReport的初始化配置包括:

设置所要查看运行后的文档的格式;选择语言;设置编译后的文件目录。

其他的配置说明将在以下进行。

为了继续的进行配置必须打开ireport,然后选择菜单选项中工具选项(menuOptions→Tools.)。

此时将出现2.1选项窗口。

2.1图

选择你最熟悉的语言接下来点“Compiler”选项卡。

2.2图

这个选项卡是用来设置编译后的文件存储目录,默认的目录会在iReport的根目录。

一般情况下是要指定一个有效的目录来保存编译文件。

这个目录也可以是加载报表源时的目录,既然这样就选择“Usethereportsdirectoryforcompiles”复选框。

2.3图

完成以上列出的配置后,接下来我们还要设置报表输出格式和查看XML源所用编辑器。

重启iReport继续设置上图的选项。

创建一个空白报表测试一下我们的设置(menuFile→NewDocument),领悟一下iReport所提供的功能。

之后点工具条上的运行按扭

如果你操作的正确,将会有一个保存jrxml文件的提示,相应的一个jrxml文件将被创建,之后会发布出一个预先设置的空白页。

这就意味着你刚才的配置ok拉。

创建JDBC连接:

一个有代表性的关系数据库可以提供最普通的数据源给一个报表。

首先,我们来看看如何设置一个JDBC连接,点菜单DatasourceConnections/Datasources并点窗口的连接列表的new按扭。

此时打开一个新建连接(图2.4)窗口。

在这个面板上填写连接名:

(i.e.“Mynewconnection”)并选择正确的JDBC驱动。

iReport支持大部分的JDBC驱动URL格式。

因此你能够自动创建一个URL通过在相应的输入框中填写服务器地址和数据库名。

若要完成连接你就必须输入数据库名和密码用来连接数据库。

如果你想保存密码,那就将“Savepassword”打对勾。

注意:

iReport将密码保存在一个txt文件中,如果你不想保存密码就不要选择“Savepassword”复选框…

点test按扭测试一下连接,不过最好是再保存之前测试。

2.4图

iReport被装入的JDBC驱动只有MYSQL和HSQLDB。

如果在测试期间发现有ClassNotFound异常,很有可能是能被选择的驱动的classpath中不包含JAR或

(ZIP)文件。

不用关闭iReport,拷贝这个JDBC驱动到lib目录下,重试一下;这个JAR将被重新被iReport加载。

在第十章,我们将深入广泛的解释所有的数据源的配置形式。

测试通过后按保存按钮保存连接。

通过这种方式我创建了一个新的数据源,这样iReport就可以将它作为预置的数据源来使用。

选择菜单中“build→Setactiveconnection”项目。

2.5图

从列表中选择我们的连接按OK按钮(图2.5).那么iReport就会在需要使用数据库时用这个连接(我们想要字段就可以通过SQL查询和打印来创建)。

第一个报表:

现在我们已经安装配置了iReport,并创建了一个JDBC连接数据库,接下来我们将创建一个简单的报表用这个向导。

这个例子以及以后的所有例子我们都用HSQL数据库引擎(HSQLDB),它是一个小型的用java编写的关系型数据库,而且提供了JDBC驱动。

如果用它的话,我们就必须拷贝hsqldb.jar文件到libs目录(这个文件已经在0.3.2版本之后都包含在发布文件中了)。

为了能了解到更多的关于这个小家伙的信息,就登陆HSQLDB的官方网站.

为了能设置一个有效的数据库连接我们给出以下例子(来源与本手册);使用以下参数:

Proprieties

Value

Name

Northwind

JDBCDriver

org.hsqldb.jdbcDriver

JDBCUrl

jdbc:

hsqldb:

c:

/devel/northwind/northwind

Username

sa

Password

表格2.1

配置的最后请设置Northwind作为一个有效的连接(Build→Setactiveconnection)。

选择菜单“File→ReportWizard”.这是一个用来一步步创建报表的工具。

图2.6

在文本区域输入SQL查询用来充当报表中的数据,例如:

select*fromcustomersorderbycountry

…点Next.这里的分组选项是非常重要的一条。

接下来我们将详细讨论。

iReport将读取customers表的这些字段(图2.7).

图2.7

选择你需要的字段然后点Next.你会得到一个提示:

你希望从这些被选择到报表中的那个字段用来分组(即便要)(图2.8)…

图2.8

根据这个向导,你最多可以创建四个组。

其他的可以随后来定义(事实上它是可以设置很多组的)。

我们将定义一个简单的组用COUNTRY字段(图.2.8).

下一步向导会让你选择一个能被用来创建一个基本报表的模板。

iReport提供了一些非常简单摸板供选择,接下来我将试着创建一个新模板。

目前我们知道的有两种类型的模板:

thetabulartemplates,所有的记录都在同一条表格线内,一个字段后面跟的一个数据。

thecolumnartemplates,这里是将字段按列排列,每列一个字段,下面将是所有数据。

图2.9

第一个报表选择tabular模板,它是著名的T样式(T的意思就是tabular)。

一但你选择这个模板,那就点next。

之后向导将展示我们操作的结果。

点Finish来创建这个报表,它将展现在iReport的中央区域,等待被执行。

执行之前你得先保存报表源,这样它才能被用来编译创建报表。

该如何编译创建呢?

你可以点工具条上

按钮(使用连接的运行报表)。

图2.10

接下来你就点这个带连接的运行报表按钮,此时将会提示你输入你个文件名来保存这个文件。

可以以report1.jrxml的文件名来保存。

在控制面板上的下面的窗口将会有一些提示信息。

这些信息就是告诉你发生了什么事:

一个报表被编译,并完成创建,输出“exported”

图2.11

操作完成后,如果不出以外,这个报表将以缺省的PDF格式展示在你面前,原因是你最初设置输出格式为PDF。

命令行选项:

可能有一些特殊的参数出现在命令行上。

所有的参数不区分大小写的。

特们能被缩写知道最短(例如:

这个命令:

–ireport-homec就可以被指定为–i;并不是它因为以“i”开头;命令解释器将认为-i是一个不明确是否是–ireport-home选项).

根据需要Boolean型选项可能被指定用缩写型–opzione和扩展型–opzione=true或–opzione=false。

以下命令可以得到命令选项的列表:

iReport.bat-?

./iReport.sh-?

以下的表格能解释不同的有效选项,它引用0.4.1版本,可能不能完成所有连续的版本。

Option

Description

-config-file

指定一个配置文件的文件名。

这个文件不会修改ireport,他将保存一个最终修改后的配置到规范性的目录,用户主目录/.ireport

-ireport-home

指定程序目录。

-temp-dir

指定一个存储临时性文件的目录。

-user-home

指定用户目录。

默认的是系统的根目录。

-version

用这项可以立即打印出iReport的版本信息。

表格2.2

如果Ant被使用,它就不可能指定这些选项立即执行从命令行,但是它却是必须的,可以修改build.xml文件来达到,可添加标签有利于java任务在iReport运行时。

3JasperReports基础概念

JasperReports

iReport的核心就是一个开源的JasperReports库,它是由一个罗马的叫TeodorDanciu的开发者开发。

是目前最有利于创建分布式和强有力的报表的免费软件库。

这章我们就来阐述一下JasperReports的基础概念来加深我们对iReport工作流程的理解。

JasperReportsAPI,为报表定义的XML结构语法,以及在我们程序中需要用的库的详细资料都归档在这本名叫“TheJasperReportsUltimateGuide.”的手册中。

这本书非常的超值。

(目前标价35$).其他可以直接利用的信息和例子可以到官方网站:

.

两者不相同的是,iReport的分布式依照GPL规范,而JasperReports依照LGPL规范,因此它的局限性很小。

这就意味着JasperReports能够被随意应用于商业,不用购买昂贵的软件许可或呆在家里从网上搜索复杂的开源的许可。

这是用iReport创建一个被用做商品报表的基本原则,事实上,程序仅仅需要用JasperReports库来打印出报表来,仅仅在程序运行时用到它。

由于没有完整的商业许可(指需求以外的许可),iReport只能作为一种开发工具,也不可能成为一个不符合GPL分布式标准的程序的一部分。

报表生命

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1