【问题标题】:Jasper Report with sub reports outside detail or multiple detailsJasper 报告,带有外部详细信息或多个详细信息的子报告
【发布时间】:2013-02-14 16:57:08
【问题描述】:

我需要创建一个包含 4 个部分的报告。 为此,我看到了一个报告和其他 3 个子报告的选项。

问题是这些部分都不相关,所以我不能将子报告放在同一个详细信息带中。

有哪些选择?创建多个详细品牌,每个品牌都有一个子报告?还是将子报表放在页脚中?

没有子报告还有其他方法吗?如果我能做到这一点,只需一个 .jrxml 我想学习它。

我正在使用 iReports 5.0.0 和 jsf 2.0 来填充数据。

问候。

示例:

--------section 1---------
+----------+------+ -----
| title    | count|     |
+----------+------+     |
| ejample  | 150  |     |
| ejample  | 15   |     detail 
| ejample  | 10   |     |   
| ejample  | 1250 |     |   
| ejample  | 150  |     | 
+----------+------+ -----
--------section 2---------
+----------+------+ -----
| country  | %    |     |
+----------+------+     |
| ejample  | 150  |     |
| ejample  | 15   |     detail 
| ejample  | 10   |     |   
| ejample  | 1250 |     |   
| ejample  | 150  |     | 
+----------+------+ -----
--------section 3---------
   etc

【问题讨论】:

  • 我认为最干净的方法是在每个部分使用子报表。这样,如果您想在一个部分中修改某些内容,就不必弄乱一个大的 jrxml。您可以将 4 个子报表放在报表的默认详细信息区域中。

标签: jasper-reports


【解决方案1】:

添加 4 个细节带 - 每个部分都有一个细节带。这是因为子报表具有动态高度,但报表元素本身具有固定高度。为了不产生重叠输出,将每个子报告放入一个单独的波段。细节带随着内容的大小而增长。

根据您可能要考虑在主报表中使用子数据集并使用列表或表格元素安排显示的输出的复杂性。

【讨论】:

  • 那么,在第一个细节中,它遍历项目列表,然后传递到下一个细节带区?
  • 有 4 个子数据集,4 个细节带,并使用其中一个数据集在每个细节带中放置一个列表元素 > 这将允许您在单个报告中拥有 4 个独立的部分。在您的主报告中,您可以将查询设置为类似于 select 1 from dual 以不进入 no data 情况。
  • 考虑一下.. 你最好创建一个单独的 fake 组,例如4组标题栏,并将当没有数据时的报告配置设置为所有部分没有详细信息
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多