使用子报表返回的值更新变量

时间:2011-11-03 08:11:58

标签: jasper-reports return-value subreport

我有一个主要报告,循环查询detail1 band上的查询数据 在这个主报表中,我调用一个子报表,它在输入参数中取一个整数并在结果中返回一个字符串(它实际上不显示任何内容)。

如果我想要使用这个子报告一次,它就可以工作,返回的值会受到我可以在主报告中显示的变量的影响。

但是当我必须在detail1的每次迭代中更新变量时,我无法使它工作。在这种情况下,它显示null或上一次计算的结果。

我想这都是关于重置类型和重置组的,但我真的被困在这里:(

PS:我正在使用jasperserver 3.3.x

1 个答案:

答案 0 :(得分:1)

返回的变量仅在“打印”整个波段时可用。尝试将变量放在与子报表(detail1)相同的带中的文本字段中,评估时间为“Band”。

此外,如果子报表实际上没有显示任何内容,您可以使用scriptlet执行所需的操作。