I have a list of goals, each of which have another arraylist in it. I want to have the details in the child arraylist to be displayed using a subreport. I would like to have a subreport for each of the objects in the child arraylist.
The issue I am facing is that, I can't seem to find a way to specify the arraylist as data source for the subreport. When trying to create datasource, I can't select fields of the dataset on which the list is built, only the fields of the main report can be selected.
Is it possible to do this in iReport.? I am stuck with this for quite some time now. Any help is appreciated. :)
With information given this would be the answer.
Main bean (your goals?), containing
List
of other bean (SubBean
).Sub bean
How to pass the SubBean List to a subreport.
You need the field subBeans in you main report.
I suggest that you pass the location of the .jasper file as a parameter (Note jasper report needs absolute path) es. in main report
and in java pass it (in example sub folder "jasper" in working directory is the location of the subreport.jasper)
Now just call your subreport (needs to be complied into .jasper) from main report like this.
Hence:
I'm creating a new JRDataSource for the sub report passing the
List
ofSubBean
in the currentBean
indicating the absolute location of the compiled subreport.jasper
so now in your subreport you can use the field:
var2
of theSubBean
, just define it like this in the subreport.jrxml