针对ireport多模版合并导出只能导出第一个模版数据的解决方案

简介:

 问题描述:

      在实际开发中,我们后期肯定会涉及到把制作好的多个报表模版合并导出的需求。在这里,我遇到了一个麻烦,就是只能把集合中的第一个模版数据导出(合并导出使用JASPER_PRINT_LIST

 解决方案:

      调试了很久,最终才找到导致问题的原因。先给大家贴上问题代码

 
  1. JRDataSource dataSource = new JRMapArrayDataSource(datas); 
  2. for (String jasperPath : jasperList) { 
  3.     jasperPrintList.add(JasperFillManager.fillReport( 
  4.             jasperPath, new HashMap(), dataSource)); 

       然后修改后的代码:

 
  1. for (String jasperPath : jasperList) { 
  2.     jasperPrintList.add(JasperFillManager.fillReport( 
  3.             jasperPath, new HashMap(), new JRMapArrayDataSource(datas))); 

    仔细对比大家有没有看出来哪里不一样,呵呵。对,就是它的数据源问题,需要为每个JasperPrint对象创建新的数据源。好了,问题解决了,希望遇到这个问题的朋友能看到少走点弯路。



本文转自 沫沫金 51CTO博客,原文链接:http://blog.51cto.com/zl0828/989168,如需转载请自行联系原作者

相关文章
|
JavaScript
VUE之vxe-table高级表格(表格内增删改、导入、导出、自定义打印、列设置隐藏显示等)用法
VUE之vxe-table高级表格(表格内增删改、导入、导出、自定义打印、列设置隐藏显示等)用法
7959 0
VUE之vxe-table高级表格(表格内增删改、导入、导出、自定义打印、列设置隐藏显示等)用法
|
6月前
从同一文件中导出和导入多个组件
从同一文件中导出和导入多个组件
|
JSON Java 应用服务中间件
利用esaypoi自定义Excel表格模板导入与导出表单数据
今天工作中又遇到了excel导出数据的功能,在这里我将自己自定义的Excel模板和相关的代码拿出来,解释一下如何进行操作,以便日后能够方便的进行功能开发,提高效率。
724 0
|
7月前
|
Python
【python自动办公】批量更改Excel中大量工作表的内容(附源码 有注释)
【python自动办公】批量更改Excel中大量工作表的内容(附源码 有注释)
189 0
|
数据采集 关系型数据库 MySQL
PHPExcel导出报表封装函数(单元格合并、设置填充色)
PHPExcel导出报表封装函数(单元格合并、设置填充色)
178 0
|
存储 JSON JavaScript
【Excel自动化办公Part3】:工作表的创建、删除、复制和修改名称,冻结窗格,添加筛选
【Excel自动化办公Part3】:工作表的创建、删除、复制和修改名称,冻结窗格,添加筛选
165 0
【Excel自动化办公Part3】:工作表的创建、删除、复制和修改名称,冻结窗格,添加筛选
|
JavaScript 前端开发
VUE之Elenent-ui之table表格导出、调用后端接口导出(后端返回流文件导出)
VUE之Elenent-ui之table表格导出、调用后端接口导出(后端返回流文件导出)
354 0
VS2010自定义新建文件模版
  不知不觉VS2010已经成为.NET开发人员的必备工具,相比经典版VS2005,到过渡版VS2008,2010在性能稳定性和易用性上都得到很大的提高。   结合VS工具,其下的插件也层出不穷。今天重点给大家介绍如何使用VS2010VS2010自定义新建文件模版,新建文件时,添加个人信息,如:创建者,创建时间等个性化信息。
688 0