ireport报表开发总结

平时我们开发一些报表,例如汇总报表、电子发票、收据单等可以使用ireport来实现,自己绘制报表模板,然后java代码根据逻辑把相应的实例或集合传入即可。



1:中文乱码处理

对于中文字体,选中控件-“属性”-font-name[宋体]-pdf font name[STSong-Light]-pdf encoding[UniGB-UCS2-H(Chines...)]

2:制作表格

Fields-自定义fields-ctrl选中多个控件[右键-size-Adapt to parent height]

同理,相同高度[size-same height]

表格边框样式[属性-style-table_TD]

3:统计某一列的总和(SUM)| 参考:http://jaspereport.group.iteye.com/group/wiki/3401-jaspereport-ireport

variables中新建‘FEE_SUM’拖到Summary区域,其中属性variable class:java.lang.long| reset type:report | increment type:report |

Initial value:newjava.lang.Long(0) | variable expression:newjava.lang.Long($V{FEE_SUM}.longValue()+$F{fee}.longValue())

其中参数fee类型为java.lang.long意味着javabean传参时实体类中定义:private long fee;

统计字段显示格式设置:选中控件-属性-Pattern:¤ #,##0.00

4:实现隔行变色

表格控件都要引用同一个样式如:‘style1’,选中style1右键添加Conditional style-在新的样式属性栏中找到:conditionexpression:

new Boolean($V{PAGE_COUNT}.intValue()%2==1) 同时选中Opaque然后设置背景颜色,即可。


代码实例

// 表格报表
    @RequestMapping(value = "/report4")
    public String report4(Model model) {
        System.out.println("--------report");
        // 报表数据源
        JRDataSource jrDataSource = new JRBeanCollectionDataSource(Test.getList2());

        // 动态指定报表模板url
        model.addAttribute("url", "/WEB-INF/jasper/report2.jasper");
        model.addAttribute("format", "pdf"); // 报表格式 pdf xls
        model.addAttribute("jrMainDataSource", jrDataSource);
        model.addAttribute("report_title", "我的报表");
        model.addAttribute("Barcode", "1234");

        return "reportView"; // 对应jasper-views.xml中的bean id
    }

模板文件:类似这种两个文件

report2.jasper、report2.jrxml

当然最后java只调用第一个文件,第二个文件可以自行修改再生成第一个文件。

如果报表页面需要二维码,则需要这两个jar包:barbecue-1.5-beta1.jar、barcode4j-2.1.jar

最后,如何制作报表,则需要安装以下工具,这个版本比较低(功能较少)可以下载高版本的。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值