在导出主报表期间为每一行传递子报表jrdatasource

时间:2014-09-24 04:52:42

标签: java jasper-reports

我必须为主报告中的每一行打印一个子报告,但问题是我只在我为其中一列返回字段值时获得了子报告的数据(Subreport取决于主报告中为每行中的该字段值返回的值。

我读过jasper报告不支持字段值中的典型数据类型($F{abc}只能包含有限的数据类型,如字符串,数字等),如ArraysList,{{1 }或Collection

参数支持这些复杂的数据类型,但在JRDataSource函数期间,参数值应该传递给主报告,因为我没有子报告的数据源。

在导出主报告期间,我有什么方法可以将JasperFillManager.fillreport()传递给子报告吗?

可能与否?如果是,那怎么样?

1 个答案:

答案 0 :(得分:0)

在报表设计器中,单击子报表并设置“数据源表达式”

new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{List<YourObjectObject>})

在主报告中,您可以创建List<YourObjectObject>