子报告依赖

时间:2015-04-29 13:56:54

标签: jasper-reports subreport

如果另一个子报表没有任何行(没有返回任何行),是否有办法显示一个子报表。

我尝试了什么:

在我的第一个子报告中,我返回了已处理行的数量" REPORT_COUNT"掌握报告变量" SUBREPORT_VAR"。变量" SUBREPORT_VAR"尽力而为。我向master报告和输出变量添加了额外的文本字段。我将文本字段的评估时间设置为 Band ,因为没有它,它无法正常工作。

此外,我设置了选项" Print When Expression"第二个子报告:

  

$ V {SUBBREPORT_VAR}< 1

我使用jasper studio 5.5.0 final。

1 个答案:

答案 0 :(得分:0)

如果没有行计数,则结果不为null。 如果是这样,您可以在第二个子报表中表达时在打印中使用它:
$V{SUBBREPORT_VAR}==null

另一个选项是在主报表中运行查询并将其用作子报表表达式

IF($F{SOME_VAR_FROM_YOUR_QUERY}==null,subreport2.jasper,subreport1.jasper

SOME_VAR_FROM_YOUR_QUERY返回null时,如果不打印subreport1,则打印subreport2。