分享
 
 
 

iReport 和 Jasperreport整合开发web报表向导(2)

王朝java/jsp·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

iReport 和 Jasperreport整合开发web报表向导(2)

在上一篇文档里我们初步介绍了iReport和Jasperreport,基本上我们已经对它们有了一个最初的认识,在今天这篇文档里,我将深入的对iReport这个工具进行说明。

接着上篇文档的结尾,如果我们成功运行iReport的话,可以看到如下的主界面:

点击“新增”

按钮可以创建一个新的空报表,考虑到生成后的XML文件编辑的时候可以显示中文,请在xml encoding选项上GB2312(没有选项自己手动输入),如下图:

当设置玩必要的选项点击完成可以得到一个空白的报表,如下图:

好了,输入一段文本,很简单,点击创建“静态文本”按钮

,然后在报表任何一个工作区(如title,pageheader,detail,pagefooter summary等等)输入,如输入“今天天气不错!”

在属性框页可以对输入的内容进行属性控制,如字体,颜色,大小,以及其他的属性,报表中任何的元素(静态文本,线,框等等)都有自己的属性页,一般双击任何元素都可以弹出该元素的属性页,属性页如下图:

完工,一个最简单的报表就生成了,iReport配有运行环境,如下快捷按钮:

左边的按钮是运行静态报表(无需数据库环境),右边的是运行动态报表(这时需要设置数据库连接,数据库的连接载下面介绍)

那么经过上遍的努力,很显然我们将要运行的静态报表,那么点击左边的按钮就可以看到下面的pdf,如图:

当然上遍的例子是最简单,呵呵J

下面我将采用问答的方式进行逐步讲解iReport的用法

1. 如何连接数据库?

2. 如何定义变量、参数以及字段?

3. 如何定义字体以及如何使用自定义的字体(如黑体、楷体或者比较艺术化的子体)?

4. 如何执行SQL脚本进行查询?

5. 如何把做好的报表引入到应用程序中?

好了,针对上面的问题,我在下面的篇幅中给于解答并穿插介绍iReport中其它的功能菜单。

1. 如何连接数据库?

静态的报表其实很少的,我在前一篇文档中有提到过一句经典的话:

“A datasource + a jasper = a print”因此有必要首先介绍一下如何连接数据库,其实很简单

进入Datasource/Connections/Datasources菜单或者点击

快捷按钮,则出现下面属性页:

进行必要的数据库连接属性配置,然后点击test按钮进行测试,如果提示测试成功,则保存数据库连接,即可。

2. 如何定义变量、参数以及字段?

变量、参数以及字段的定义,在iReport里是比较方便的,在菜单view下可以看到一些控制点,如下图:

Report properties 设置报表属性

Report query 设置查询语句的,这个在下面有介绍

Report fields设置字段(数据库)

Report variables设置变量

Report parameters设置参数

Report fonts 设置字体

顺便把下面的你个也说明一下

Bands,弹出报表工作区(如title detail等)的属性页

Report groups设置组

Element properties 元素属性页

Element browser 显示报表所有元素的列表

设置很容易,但是在报表中引用这些变量、参数和字段就有写说头了,呵呵J,让我们一步一步慢慢来。

在iReport中引用的方式,如下表

元素

名称

引用

变量

variablesName

$V{ variablesName }

参数

parameterName

$P{ parameterName }

字段

filedsName

$F{ filedsName }

其实这些不说明好像不知道如何办,一单说明了,它们也是很好用的也很简单的。多用吧J

3. 如何定义字体以及如何使用自定义的字体(如黑体、楷体或者比较艺术化的子体)?

因为考虑到使用亚洲字体,因此你需要下在额外的jar包iTextAsian.jar,如果iReport下载包中含有此jar包,此步骤可免。

目前在iReport中使用中文字体,好像只有宋体一种,如果想用其它的字体(如黑体、楷体等)需要另外的方法,这在下面介绍,下面介绍如何使用常用的中文字体“宋体”的设置方法,在问题2中我们看到引入字体的选项,点击“Report fonts”可以看到下面属性页:

好,如上边的设置就已经设置好宋体,以后在报表的任何地方都可以引用该字体,如下面我们要把我们在上边的例子中的元素“今天天气不错!”改为用宋体,如下:

这样只要我们在Report font选项中选中songti 那么下面的属性自动继承,呵呵,方便吧J

好,下面讲述如何使用宋体以外的中文字体,如:黑体、楷体或其他的艺术化的字体。

也很简单,不过好像目前iReport的功能不够完美的缘故,还要手动修改xml文件才可以达到要求,如下图我们定义黑体:

首先不同的是在PDF font name选项中选中External TTF font…,按照常理,此时要在紧接着的选项中选择黑体的ttf文件SIMHEI.TTF,可是不知为什么TrueType font的选项是空的,(当时我在学习的时候,这步操作让我好胜郁闷),天啊,该怎么办?!

后来我查看了相应的xml文件,如下:(由于文件较大,因此只截取我们关心的)

<staticText>

<reportElement

mode="Opaque"

x="13"

y="42"

width="239"

height="53"

forecolor="#000000"

backcolor="#FFFFFF"

positionType="FixRelativeToTop"

isPrintRepeatedValues="true"

isRemoveLineWhenBlank="false"

isPrintInFirstWholeBand="false"

isPrintWhenDetailOverflows="false"/>

<textElement textAlignment="Left" verticalAlignment="Top" lineSpacing="Single">

<font fontName="黑体" pdfFontName="" size="36" isBold="false" isItalic="false" isUnderline="false" isPdfEmbedded ="true" pdfEncoding ="Identity-H" isStrikeThrough="false" />

</textElement>

<text><![CDATA[黑体]]></text>

</staticText>

大家可以看到黑体的pdfFontName=””是空的,于是我尝试把系统黑体的TTF文件路径(C:\WINNT\fonts\SIMHEI.TTF)写到这个地方,哈哈,居然成功了。

于是我得到这样一个结论,目前如果你在报表中使用其它的字体,首先要做上面图中所做的属性设置,然后手动把字体的TTF文件写到pdfFontName=””,虽然麻烦了点,不过这招挺管用,呵呵J

今天就写到这里,下面没有说到的问题,各位先看看自己能不能解决,明天见,如果你还有其它的我没有提到的问题,可以留言给我,呵呵J

欢迎访问我的站点http://plateau.sicool.com

Jplateau 2003年12月26日星期五 写于精博

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有