当前位置: 首页 > 知识库问答 >
问题:

JasperReports,子报表行高同步

濮阳浩穰
2023-03-14

我有 2 个子报表,每个子报表包含将成为结果表的一列的信息。由于某些条目很长,我为两个子报表的行提供了相同的通用高度大小,该大小足以满足匆忙的效果,但现在它看起来很丑,所以他们希望我更改它。所以我想知道是否有办法协调两个子报表,以便给定条目中具有最高单元格的子报表指示所有行的宽度,并将该信息发送到另一个子报表以调整同一条目的大小,就像在一个子报表中的常规表上发生的那样。如果这是可能的,还是我必须使用iText来实现它?

先谢谢你。

共有1个答案

司马作人
2023-03-14

我在 jasper 报告上做了很多工作,我对此进行了大量思考,但我无法想出如何使子报告传达部分高度的答案。我写了一个关于使用 Java 类来定义可以设置和获取的静态高度的答案,但后来意识到除了为高度指定一个简单的数值之外,你不能指定任何其他内容,即无处调用方法来获取高度。

因此,我有两个可能的建议,根据您报告的实现细节,它们可能会也可能不会起作用。

第一个建议是尽可能使用一个报告,或者至少在两个子报告下面使用一个“底行”。

如果这不起作用,那么可以尝试对两个子报表部分使用最小高度值,但拉伸类型为“相对于最高对象”。然后,尽管它们可能不一样高,但至少它们不会太大。再次取决于细节,这可能会满足您的需要。

让我知道这是否可行,也许我可以想点别的。

 类似资料:
  • 主要内容:JasperReports <subreport>元素子报表是 JasperReports 的一项不错的功能。此功能允许将一个报表合并到另一个报表中,即一个报表可以是另一个报表的子报表。子报表帮助我们保持报表设计简单,因为我们可以创建许多简单的报表并将它们封装到主报表中。子报告的编译和填充就像普通报告一样。当合并到另一个报告模板中时,任何报告模板都可以用作子报告,(报告模板的)内部没有任何更改。 子报表就像普通的报表模板。它们实际上是net.sf.j

  • 我正在尝试用JasperReports创建一个XLS-Reports。为此,我使用了JasperReports 5.5.0(以及同一版本中的iReport)和apache POI3.9。 基结构是一个带有子报表的主报表,该子报表还包含另一个子报表。为了更好地理解一些代码示例: 我的问题是,如果母版的行高大于子报表的整个带高,子报表就不会将其带高延伸到母版的行高。我知道它必须只是一个简单的组合设置,

  • 问题内容: 我试图找出为什么我的报告停止工作后我添加了一个报表给它。我已经确认并尝试过所有类似的问题在这里,这里和这里。没有成功。子报表肯定位于同一目录中。定义看起来像: $ P {SUBREPORT_DIR}在哪里 而且仍然出现错误: 为什么?? 问题答案: 在第一条消息中 在哪里 是目录,但不是文件名。这是第一个错误。 第二个:有时jasper找不到子报表,即使路径正确也是如此。 解决此问题的

  • 有可能用jasperrepors文本文件实现类似rowSpan的东西吗? 我有两份报告:主报告和子报告。 在主详细信息带中,我有textfield和子报表:

  • 当我使用iReport v2.0.4制作一些带有子报告的报告时,我遵循了这个代码示例 现在我想运行Java这个报告。我的代码是: 给出以下错误 现在我正在更改我的IReport版本5.5像这样的错误 保存我的报告Path=E:\Myproject\NetBeansProjects\Inventory_control_system_for_hotel\Mainreportname.jrxmlSub

  • 主要内容:1 JasperReports 报表表达式声明,2 JasperReports Calculator,3 JasperReports 条件表达式,4 JasperReports 报表条件表达式的示例1 JasperReports 报表表达式声明 报表表达式是 JasperReports 的强大功能,它允许我们在报表上显示计算数据。计算数据是指非静态数据且未专门作为报表参数或数据源字段传递的数据。报表表达式是通过组合报表参数、字段和静态数据而构建的。默认情况下,Java 语言用于编写报表