Jasper Sub报告没有在主要报告中显示
问题描述:
我有一个jasper报告。在那个主要报告的内部,我添加了一个子报告。我使用java类传递集合和参数(不直接使用sql查询)。它是编译成功。Jasper Sub报告没有在主要报告中显示
但是,它运行时只显示主报告。它没有显示子报告,并且也没有发生任何错误。它只是给那个地方留出一些空的空间。 任何人都可以告诉我如何解决这个问题吗? 在jasper中添加子报表时,我必须遵守哪些规则?
答
假设您将数据作为Java Bean收集传递给报表,那么我将假定您有一个字段作为将用于提供子报表的java.util.List
。
你原来的bean将是这样的:
public class ParentBean{
int id;
String fatherName;
List<ChildBean> childrenList;
//setters and getters goes here
}
当调用主报告,你应该添加三个字段,最后他们的类型是List。
选择报表,打开属性对话框,在连接/数据源表达,选择使用的数据源表达把下面:
new JRBeanCollectionDataSource($F{childrenList})
在你的报表,在ChildBean
使用的字段。
注意:对话框名称来自旧的iReport版本,现在可能已更改。
答
但是你有预览子报告吗?可能会有一些错误或单独的子报告填充什么...
答
1,创建数据集 2。创建列表对象 3.在List对象中带有参数和连接的Map域。
对不起,你的问题太广泛了。去阅读一些文章,还有一本关于JasperReports的书,并且一旦遇到具体问题就会回来。 – 2010-03-25 10:45:55