jaspersoft 报表设计器简单的使用(二)

1.添加表头

我们以制作明细表式的报表为例。我们可以在右侧“Elements”中找到需要的所有组件。

首先需要设定表头。表头中,一般都是报表的名称,所以添加不可修改的文字即可。

如果表头只在第一页输出,则需要将表头文字放在“Title”区;如果表头每页都要输出,则应该放在“pageHeader”,即“页首”区。

点击“Elements”上的“Static Text”组件,如下图。

 然后将组件拖拽到“Title”区或“pageHeader”区中,即可将组件加入到此区域中。

在此文字输入区域中输入表头名称即可。

输入完毕,需要设置文字属性,对文字进行排版。在右下角的“Properties”区中,可以设置静态文本框的位置、边框、文字属性等等。点击相应的页签,即可进行对应的设置。

2.设置PDF格式

为了让报表在PDF格式输出时可以正常输出中文,需要设定每个域的文字字体。

选择需要设定字体的文本域或者字段域,在右侧的“Properties”区,选择“Advanced”即可修改相关字体的设置。

具体设置如下:

  1. PDF Embedded:True
  2. PDF Encoding:UniGB-UCS2-H(Chinese Simplified)
  3. PDF Font Name:STSong-Light

3.设置边框 

报表中可以设定每个输出域的边框。一般我们会选择四边均有边框的模式。

点击需要设定边框的字符或者字段域,在右侧的“Properties”区,选择“Borders”页,修改“Pen Width”(笔宽度),例如设置为“1”,即可显示此域的边框。 

 4.设置栏高

为了让报表输出的更美观,我们可以设定报表各个栏宽度。

点击左侧树形图中各个栏的名称,或者直接点击工作区中栏的区域,在右侧“Properties”区中,即可修改栏的高度。

可以在此处设置各栏的高度,不需要的栏,可以将高度设置为0。

为了使Detail区中输出的报表内容的表格可以相连,需要将Detail区的高度设为与字段域高度相同。本例中,字段域高度为30,则Detail域的高度也为30 

 5.设置字段域

以下,说明一下报表中“字段域”的一些常用设置。

在打印报表时,有的时候会遇到字段中的内容很长,标准的表格打印不下的情况。此时,用户就会希望表格能够自动适应内容的多少而自动增加行高。在JasperReport中可以通过设置实现。

选中所有需要设置的字段域,在右侧“Properties”区中可以进行如下设置。

  1. “Font”-“PDF embedded”:选择“true”,可以将报表输出到PDF中。
  2. “Font”-“PDF Encoding”:选择“UniGB-UCS2-H(Chinese Simplified)”,保证PDF中的中文可以正确编码。
  3. “Font”-“PDF Font Name”:选择“STSong-Light”,保证PDF报表中的中文可以正确显示。
  4.  “Misc”-“Print repeated values”:选择“true”。在打印时,可以输出相同的值。
  5. “Print When”-“Detail Overflow”:选择“true”。在数据当页没有打印完毕,需要在第二页打印时,可以将表格的内容,包括边框,在第二页中输出。
  6.  “Size”-“Stretch Type”:选择“Relative to Tallest Object”。则所有被选中的字段域可以自动适应条目拉伸。
  7. “TextField Properties”-“Blank when null”:选择“true”,是当字段的值是Null时,输出空白格。
  8. “TextField Properties”-“Stretch with overflow”:选择“true”,当文本域的内容不能完全被显示在模板定义的区域内时,允许文本域拉伸。

 6.创建table表

 Jasperreport Studio有两种创建表的方法,1.手动画表  2.可以直接使用table组件创建表,不用自己手动的画表,

  • 6.1.手动画表

在报表的ColumnHeader区域画出表头需要的字段名, 然后在Detial区域放入查询语句查询出来的各个你所需要的字段,在Detial区域会自动循环出所有查询出来的数据 , 但是手动建表在报表中只能显示一张表,不能建多个表。记住,如果使用sql查询出来的数据有日期,那么需要将日期改成java.sql.date类型

  • 6.2.使用table组件画表

在右边Basic Elements 窗口中有个table的组件,直接拖过来放到除了Detail区域的其他区域如图显示

这里可以修改表名

选择数据库,添加查询语句,会出现下面这个窗口, 如图点击红色框出来的按钮,就是将字段全部取

选择一个字段名用来分组

 

然后一直next,最后finish 

可以放多个表,这就是使用table组件的优点

注意:在建表的时候会有些字段可能为空,那么显示出来的就会为null,我们需要把这些可能为空的字段设置一下,当他为空的时候,显示空白  如下位置给字段配置下。

 7.设置条形码

在左上的组件窗口里面有一个jasperreport自带的条形码组件,将他拖到指定的区域选择code128

双击这个 修改数据源

最后finish

在java中的配置以及可能出现的错误,看参考文献http://note.youdao.com/yws/public/redirect/share?id=68857136acfcc27edf4c1f6f05a7af95&type=false

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值