在JasperReports中显示彼此之下的表

时间:2012-02-10 14:55:38

标签: jasper-reports ireport

我必须创建一个报告,其中几个表格在彼此之下。每个表从SubDataset获取其数据,并且不包含任何一行或多行。

对于报告的第一个版本,我简单地忽略了一个表没有行的可能性,并将所有表格放在彼此之下,每个表格的高度为1行。这个想法是,如果有一行以上,那么桌子的高度会增长,这似乎很好。我已经给第一个表一个固定位置并将所有后续表格设置为浮动。在iReport中它看起来像这样:

enter image description here



但是当我创建报告时,只有第一个表位于预期位置。其余部分显示得太低而且重叠:

enter image description here



任何想法如何解决这个问题?我不能使用子报表,因为报表存储在数据库中,因此我无法引用其他报表。是否有其他替代子报表或表格?

2 个答案:

答案 0 :(得分:5)

您将“位置类型”属性设置为“修复相对于顶部”。将其更改为“Float”。

答案 1 :(得分:0)

尝试使用子报告。我创建表后跟另一个(datasource是XML)。

  1. 使用xPath创建子报表
  2. 使用子报表的“数据源表达式”属性设置子报表的数据源 ((net.sf.jasperreports.engine.data.JRXmlDataSource)$P{REPORT_DATA_SOURCE}).subDataSource("/FUND_STATEMENT/FUNDS/FUND")