Jasper reports 列表<;对象>;作为子报表的JRBeanCollectionDataSource
我正在将列表作为JRBeanCollectionDataSource传递给子报表。这里的对象类型为Jasper reports 列表<;对象>;作为子报表的JRBeanCollectionDataSource,jasper-reports,Jasper Reports,我正在将列表作为JRBeanCollectionDataSource传递给子报表。这里的对象类型为A和B。对象类型A有两个属性:名称和地址,对象类型
A
和B
。对象类型A
有两个属性:名称
和地址
,对象类型
有位置
属性
如果对象的类型为A
,则我必须在子报表中显示名称
和地址
。如果它的类型是B
,那么我必须在子报表中显示位置
我必须访问子报表中的对象类型,这意味着属于哪种类型(a
或B
)?。
我试了很多,但没有找到任何解决办法
谁能帮帮我吗。
提前感谢。您有很多选择:
首先:在两个对象中放置一个标志字段,说明该对象是a还是B。
然后在子报表表达式中使用如下三元语句:
objectType=="ObjectA"?"subreportA.jasper":"subreportB.jasper"
Second:将子报告名称作为对象本身内的字段传递。
然后在子报表表达式中使用如下字段:
$F{subReportName}
Third:生成两个子报告,每个子报告都由自己的类型填充。若要显示“子报表A”,则填充ObjectA并将ObjectB列表保留为空。在Jasper中,如果填充列表为NULL
,则不会呈现子报表。您有许多选项:
首先:在两个对象中放置一个标志字段,说明该对象是a还是B。
然后在子报表表达式中使用如下三元语句:
objectType=="ObjectA"?"subreportA.jasper":"subreportB.jasper"
Second:将子报告名称作为对象本身内的字段传递。
然后在子报表表达式中使用如下字段:
$F{subReportName}
Third:生成两个子报告,每个子报告都由自己的类型填充。若要显示“子报表A”,则填充ObjectA并将ObjectB列表保留为空。在Jasper中,如果填充列表为NULL
,则不会呈现子报表