gpt4 book ai didi

jasper-reports - 碧 Jade 报告 : Repeating subreport for each value of the list parameter

转载 作者:行者123 更新时间:2023-12-02 02:01:20 24 4
gpt4 key购买 nike

我需要在 JasperReports 中开发一份报告,其中包含一个子报告,但该子报告会针对列表参数中的每个值重复。例如:

要传递给ONE 子报表 的参数列表:1,2,3,4

我的报告:

  • 传递参​​数的值为 1 的子报表(Crosstable+ 分页符)
  • 传递参​​数的值为2的子报表(Crosstable+分页符)
  • 传递参​​数的值为 3 的子报表(Crosstable+ 分页符)
  • 传递参​​数的值为 4 的子报表(Crosstable+ 分页符)**

然后子报表还将包含另一个“子子报表”,应该为每个值重复 X 次,例如:传递参数的值为 1 的子报表(Crosstable+ 分页符):

  • 值为 1.1 的“sub-subreport”(另一个 Crosstable)
  • 值为 1.2 的“sub-subreport”(另一个 Crosstable)
  • 值为 1.3 的“sub-subreport”(另一个 Crosstable)

换句话说,我试图在同一个子报表上循环,但使用不同的数据,例如:

for(i=0; i<list.lenght();i++){
print(subreport(i));
}

我不知道怎么办。我希望我的例子很清楚。提前致谢

最佳答案

您的详细信息范围将为每条记录触发。因此,如果您的输入控件是 $P{myCustomers} 并且您的主报表查询是:

SELECT customer_id
FROM customers
WHERE $X{IN, customer_id, myCustomers}

然后您的主报告将有一个字段,$F{customer_id}。您的子报表需要有一个自己的参数,它将从主报表中获取一个值。将您的子报表插入主报表的详细信息区域。从主报表中单击子报表,然后在主报表的“属性”窗口中单击“参数”。 “名称”列是子报表中将接受传入值的参数名称,“表达式”字段是要传递的值。因此,如果您的子报表也有一个客户 ID 参数,名称为 customer_id,要传递的表达式为 $F{customer_id}。

iReport 文档 ( http://community.jaspersoft.com/documentation/ireport-ultimate-guide ) 在第 90 页有关于子报表的信息。

关于jasper-reports - 碧 Jade 报告 : Repeating subreport for each value of the list parameter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17112882/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com