开发者

List<Object> as a JRBeanCollectionDataSource to a Subreport

I'm passin开发者_如何学Gog a List as a JRBeanCollectionDataSource to a Subreport. Here Object is of Type A and B. The object type A has two properties: name and address and the object type B has the location property.

If Object is of type A then I have to display name and address in subreport. And if it is of type B then I have to display location in subreport.

I have to access a type of Object in a subreport, means is of which type (A or B)?. I have tried a lot but not found any solution.

Can anyone help me please. Thanks in advance.


You have many options:

First: Put a flag field in both objects stating is this Object A or Object B.
Then in Subreport Expression use a ternary statement like this:

objectType=="ObjectA"?"subreportA.jasper":"subreportB.jasper"

Second: Pass the sub report name as a field inside the object itself.
Then in Subreport Expression use the field like:

$F{subReportName}

Third: Make two subreports each is populated by its own type. If you want to show "Subreport A" then populate ObjectA and leave ObjectB list as null. In Jasper, if the populating list is NULL, the subreport is not rendered.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜