当前位置: 首页 > 面试题库 >

如何使用Jasper加载子报表资源?

郝承悦
2023-03-14
问题内容

使用Jasper,我可以使用资源来加载报告。因此,要加载主报告,我使用类似以下内容的内容:

InputStream is = getClass().getResourceAsStream("/resources/report1.jrxml");
design = JRXmlLoader.load(is);

但是,如果report1.jrxml中有一个子报表,怎么说在 /resources/sub.jrxml中 呢?


问题答案:

我这样做是这样的:

jasperDesign = JRXmlLoader.load(rootpath + "/WEB-INF/templates/Report.jrxml");
jasperDesignSR = JRXmlLoader.load(rootpath + "/WEB-INF/templates/SubReport.jrxml");


JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
JasperReport jasperReportSR = JasperCompileManager.compileReport(jasperDesignSR);

parameters.put("SubReportParam", jasperReportSR);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, dataSource);

“ SubReportParam”将是“ JasperReport”类型的参数,作为您报表中的SubreportExpression。

在.jrxml中:

<parameter name="SubReportParam" class="net.sf.jasperreports.engine.JasperReport" isForPrompting="false"/>

我不知道您是否在报表设计中使用IReport。右键单击子报表,您应该找到SubreportExpression。参数是我传递给“
fillReport”的地图

祝好运。



 类似资料:
  • 我正在从. jasper文件加载jasper报告文件以提高性能,如下所示。 但是我现在有一个要求,动态形成的查询必须设置为. jasper(编译)文件。有没有办法做同样的事情?

  • 我正在用PHP开发一个jasper报表,我尝试了嵌入式jasper Library0.9d--phpJasperLibrary-master在修复了库中的部分代码后,工作正常,但不能显示对我开发jasper报表非常重要的表格格式,所以我放弃了这种方法,建立了一个jasper服务器。 我已经通过composer并使用以下链接中的示例代码安装了PHP客户端(V2.0) http://community

  • 我有一个要转换成CSV格式的XML。我使用Jasper Reports来转换它,并使用Jasper Studio来设计JRXML。 这是XML: 我希望CSV格式包含以下列: fields_exitence分为3个(nonMap、ux和两者),属性在

  • 我非常熟悉jasperstudio 6.3.0,并且能够毫无问题地从java运行其他报告。效果很好。但是,我无法运行包含子报表的报表。我在这里找到了stackoverflow的解决方案,但仍然无法使其工作。在我的解决方案中,我将报告加载到一个表中进行存储,并从数据库中提取子报告和主报告,然后编译jrxml。到那时一切都很好 网旧金山。jasperreports。发动机JREException:在以

  • 当我从SourceForge网站下载JasperReports项目时,我创建JavaFx项目,我需要使用JasperReports库创建发票设计。提取的文件夹不包含dist文件夹,该文件夹包含构建发票设计所需的jar文件。文件夹包含这个文件夹,这里有什么问题“我是JasperReports的新手”

  • 我目前的技能只能通过使用JRBeanCollectionDataSource(list)作为数据源,在不使用子报表的情况下制作pdf。(数据打印成功) 谁能告诉我如何制作包含多个子报表的pdf报表,主jrxml文件和子报表jrxml文件中应该包含哪些内容,以及java代码中应该包含哪些内容?以及如何使用多个JRBeanCollectionDataSource(列表)?我唯一知道的是使用Map pa