我正在使用jasper report 5.0.0并创建一个带有如下所述场景的报告: 在我的ireport中,我需要显示学生姓名,班级,ID,目标, proficiencyForGoal。每个学生都有多个目标,每个目标都有进步。我的sql查询如下: 从2或3个表格中选择stud.name,stud.class,stud.id,prog.goal_id,prog.proficiency,这些表格由prog.goal_id加入并分组。该查询为每个学生提供多行。 ireport每行创建多个PDF(使用PDF预览)。 但我想在单个PDF中显示所有目标和目标熟练程度以及学生详细信息,如姓名,班级,ID。那就是我希望每个学生都有一份PDF,其中包含所有的细节。所以如果有500名学生,然后500个pdf。在单个jasperreport中显示一列中的多条记录
假设每个学生有10个目标,那么现在我得到的是一个名称,班级,身份证重复和500名学生的一名学生的PDF格式我得到500 * 10 = 5000 pdfs这是我不想要的。
欣赏您的快速输入或有关如何达到此要求的想法。
感谢
谢谢你的建议。我使用subdataset和datasetrun列表来显示学生的每个目标标识,而不是subreport。我使用单独的查询来获取subdataset中每个goal_id的熟练程度,如下所示:从prog中选择熟练程度,其中goal_id = 1和student_id = 1。我想知道如何将主报表查询中的字段student_id传递给子数据集作为参数,以便我不需要在子数据集中硬编码student_id。 – JasperNewBie
我不确定有关数据集的信息,但是您可以将主报告中的字段作为参数传递给子报表;有关详细信息和示例,请参阅此链接:http://community.jaspersoft.com/questions/536360/using-field-values-parameter-values-pass-sub-report。 – acostache