我必须为主报告中的每一行打印一个子报告,但问题是我只在我为其中一列返回字段值时获得了子报告的数据(Subreport
取决于主报告中为每行中的该字段值返回的值。
我读过jasper报告不支持字段值中的典型数据类型($F{abc}
只能包含有限的数据类型,如字符串,数字等),如Arrays
,List
,{{1 }或Collection
。
参数支持这些复杂的数据类型,但在JRDataSource
函数期间,参数值应该传递给主报告,因为我没有子报告的数据源。
在导出主报告期间,我有什么方法可以将JasperFillManager.fillreport()
传递给子报告吗?
可能与否?如果是,那怎么样?
答案 0 :(得分:0)
在报表设计器中,单击子报表并设置“数据源表达式”
new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{List<YourObjectObject>})
在主报告中,您可以创建List<YourObjectObject>