use*_*984 3 list jasper-reports
我需要使用不同对象的列表填充一些子报表.基本上可以说我有以下内容:
在新车
上使用的车辆
子报表上的子报表
我创建了一个车辆bean类,其变量为字符串,并为其创建getter和setter方法.然后在我的数据源中,我传入一个List<List<String>>detailRows.detailRows包含新车辆列表和二手车辆列表.所以我要说,我在数据源中传递detailRows.
问题是我如何将这两个列表传递给两个子报告?我可以
new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{newVehiclesList})用作子报表1的
new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{usedVehiclesList})数据源和子报表2的数据源吗?
除了我提到的之外还有什么需要做的吗?我需要创建并传递任何变量吗?是否正确使用了上面列出的列表列表,或者是它$F{detailRows}.get(0)?
我在主报表中创建了一个字段detailRows作为类型列表.然后我将以下内容传递给子报表数据源表达式,new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{detailRows}
是否有任何方法可以将newVehiclesListdetailRows 传递给子报表?
谢谢!
选择您的SubReport,您可以将属性"连接类型"设置为"使用数据源表达式",并在属性"数据源表达式"中设置:
new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{yourFieldHere})
Run Code Online (Sandbox Code Playgroud)
您的"yourFieldHere"是一个列表(不要忘记将字段属性中的"Field Class"设置为java.util.List)