java – Jasper Reports中的子报告
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – Jasper Reports中的子报告,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2864字,纯文字阅读大概需要5分钟。
内容图文
![java – Jasper Reports中的子报告](/upload/InfoBanner/zyjiaocheng/699/136c6d64004b44408eb44d1bc0c3c231.jpg)
我有两张桌子要在同一页面打印.这些表的数据将从自定义数据源的映射中提供.我需要实现它.我用Google搜索实现此任务.
那时我遇到了子报告概念,但我没有得到很多关于如何实施子报告的信息.
我知道如何创建子报告.但我不知道如何使用customdatasource填充子报告.那是我的问题.请帮助我实现这一目标.
注意:我尝试实现子报表,但是我收到了错误.这是我用于编译子报告的代码:
JasperPrint print = new JasperPrint();
JRPdfExporter exporter = new JRPdfExporter();
JasperDesign design, design1;
JasperReport report, report1;
JasperReport jasperReport;
JasperDesign jd1;
jd1 = JRXmlLoader.load("D:\\sub_report1.jrxml");
jasperReport = JasperCompileManager.compileReport(jd1);
Map parameters = new HashMap();
parameters.put("ReportTitle", "Table Report");
parameters.put("DataFile", "TableSource.java");
parameters.put("Subreport_1", jasperReport);
design = JRXmlLoader.load("D:\\sub_report2.jrxml");
report = JasperCompileManager.compileReport(design);
parameters.put("Subreport_2", report);
design1 = JRXmlLoader.load("D:\\master_report.jrxml");
report1 = JasperCompileManager.compileReport(design1);
JasperFillManager.fillReportToFile(report1, "D:\\master_report.jrprint", parameters, new TableDataSource());
exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);
exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, "D:K\\Report.pdf");
exporter.exportReport();
JasperViewer.viewReport(print);
这里我编译了subreport1& subreport2单独并将它们作为参数添加到地图中.然后我通过masterreports填充它时出错.请帮我编译报告.
堆栈跟踪编译器错误:
Exception in thread “main” net.sf.jasperreports.engine.JRRuntimeException: Unkown print order 0.
at net.sf.jasperreports.engine.fill.JRFillSubreport.initSubreportFiller(Unknown Source)
at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluateSubreport(Unknown Source)
at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluate(Unknown Source)
at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(Unknown Source)
at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(Unknown Source)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(Unknown Source)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(Unknown Source)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(Unknown Source)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(Unknown Source)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(Unknown Source)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(Unknown Source)
at net.sf.jasperreports.engine.fill.JRFiller.fillReport(Unknown Source)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(Unknown Source)
at net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(Unknown Source)
at ReportTableCompiler.main(ReportTableCompiler.java:53)
解决方法:
我发布了类似问题的答案.你可以在这里查看答案.
Using iReport with eclipse to generate reports approperly
内容总结
以上是互联网集市为您收集整理的java – Jasper Reports中的子报告全部内容,希望文章能够帮你解决java – Jasper Reports中的子报告所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。