当前位置: 首页 > 知识库问答 >
问题:

具有自己查询的子报表呈现为空(只显示标题)

盛跃
2023-03-14
JasperFillManager.fillReport(report, paramsMap, DataSourceUtils.getConnection(SingletonSpring.getDataSource()))
    ....

<parameter name="Subreport0" class="net.sf.jasperreports.engine.JasperReport"/>

    ....

<queryString>
    <![CDATA[...]]]>
</queryString>

    ....

<band>
    <frame>
        <reportElement x="0" y="0" width="960" height="0" uuid="d6549c83-20a3-45b6-bd5e-0f2a545b9aec"/>
        <subreport>
            <reportElement x="0" y="0" width="960" height="0" uuid="5c65dc87-4ff9-4126-ade6-0bf7e76cce5c"/>

            ...[some parameters]...

            <dataSourceExpression><![CDATA[$P{REPORT_DATA_SOURCE}]]></dataSourceExpression>
            <subreportExpression><![CDATA[$P{Subreport0}]]></subreportExpression>
        </subreport>
    </frame>
</band>

当我执行这个生成的pdf填充主报表数据,而不是子报表数据,只有标题。

共有1个答案

吕承福
2023-03-14

因为子报表有它自己的数据集(您写到它是基于查询的),所以不需要传递父数据源。

最有可能的情况是,通过连接后问题将得到解决。尝试通过$p{REPORT_CONNECTION}参数和ConnectionExpression属性传递父报表的连接(当然是在两个报表使用相同数据库的情况下),而不是通过DataSourceExpression属性传递数据源。

subreport元素如下所示:

<subreport>
    <reportElement x="0" y="0" width="960" height="0"/>

    ...[some parameters]...

    <connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
    <subreportExpression><![CDATA[$P{Subreport0}]]></subreportExpression>
</subreport>
 类似资料:
  • 我正在尝试使用 iReport 设计器(两者都具有空数据源)从主报告(report1.jrxml)创建一个子报告(report1_subreport3.jrxml)。主报表详细信息带包含静态文本(“主报表”),子报表元素和子报表在其相应的详细信息带中包含静态文本(“子报表”) 但单击主报表的预览选项卡仅显示静态文本“主报表”,而不显示子报表(“子报表”)的静态文本。 我还浏览了http://com

  • 我试图在一个Jasper报告中显示多个表,我使用子报告来实现这个功能。但我一直在显示几个子报告。实际上,只显示其中一个(第一个)。 以下是我的主report.jrxml: 下面是subjectSubreport.jrxml: 这是printersSubreport.jrxml: 当我切换子报告时,第一个报告正确显示,另一个报告消失。在JasperSoft Studio中,一切都很好,当我将它们导出

  • 我已经创建了一个Jasper报告,我正试图将报告集成到主报告中。我可以按原样填充子报表中的数据,但如果我将其集成到主报表中,我就不能呈现我在子报表中呈现的数据。事实上,我在集成子报表的地方得到了空白。

  • 我有一个主报告,它在详细信息带中查询数据库中的项目列表,另一个详细信息带包含一个子报告,为每个记录呈现一次。我希望这第二个细节带只能在它的子报告不是空的时候呈现。 我试图将子报表中的REPORT_COUNT转换为返回变量,并将参数设置为,但是看起来返回变量是在带区呈现后计算出来的,因此即使正确返回也看不到变量。 我还能做什么? 这里的更新是主报告的JRXML:

  • 我想用subreport创建一个简单的Jasper报表,但我无法使其工作。 选择提供一个结果(数据库是Oracle),但是子报表在从生成的repport中不可见。但报告的结尾是一个全新的空页。 你能告诉我这个例子有什么问题吗?我尝试了很多东西(子报表中的默认值,当No Data=所有节时,子报表标题中的No detaily设置,以及很多东西,我不记得了),但没有任何帮助。

  • 我试图显示MVC图表,如为ASP.NETMVC4创建HTML5图表助手扩展中所示。我有标准的项目工作,但我不能得到多个图形显示在一个单一的视图调用的部分视图一次。 我将跳过查看和类,因为它们已在上面的文章中介绍过。 我创建了一个带有几个视图的控制器: 我用快速助手类填充它 我试图显示所有的图表与 为部分视图调用的是 我得到的是一系列