无数据源时的Jasper报告带

时间:2011-12-14 21:34:52

标签: java jasper-reports

我的理解是,如果您不向JRDataSource提供JasperFillManager,那么生成的JasperReport将不包含任何细节带。

出于这个问题的上下文之外的原因,我想在一个小/简单的JasperReport上放置一些组件(条形图和表格),我希望数据来自我将传入的HashMap因此,我不需要JRDataSource实现,这也意味着我不会得到任何细节带。

所以我的问题是:然后我应该将我的组件添加到哪个频段?详细信息频段是我通常会添加组件的地方,但如果我没有得到详细信息乐队,这些孤儿组成部分在哪里?

编辑:这个问题的切线显而易见:我将如何计算此频段所需的尺寸(高度)?

2 个答案:

答案 0 :(得分:3)

您可以将JREmptyDatasource传递给JasperFillManager。您甚至可以使用JREmptyDataSource#JREmptyDataSource(int count)构造函数指定所需的虚拟记录数,即将显示多少个细节带。

答案 1 :(得分:2)

将它们放入标题或摘要频段。

实际上,您的报告没有数据。但是,由于您将Map作为带有“数据”的参数传递,因此您对此无数据报告感到满意。确保报告设置为在没有数据时显示“所有部分,无详细信息”。

使用图表,您可以根据需要设置图表高度和波段高度。表组件将扩展......但这不是问题。它可以根据需要扩展标题或摘要频段。