【问题标题】:Jasper Reports - how to get column footer to appear directly below details bandJasper Reports - 如何让列页脚直接出现在详细信息带下方
【发布时间】:2010-07-13 01:09:55
【问题描述】:

我正在尝试让列页脚带直接显示在详细信息带下方。

详细信息带通常只包含 2 或 3 行,因此不应该很深。页脚总是出现在页面下方,而不是直接出现在详细信息带中内容的末尾下方 - 因此详细信息带高于它包含的内容。如何让详细信息带折叠到内容的末尾,以便之后立即显示页脚。

我确定这只是应用某些设置的情况 - 但我无法确定这些设置是什么。

谢谢。

【问题讨论】:

  • 您是如何设计/定义报告的?我发现除非你使用像iReport 这样的东西,否则很难进行这种调整。使用该工具,您可以缩小条带并删除已定义报告中的额外空间。您还可以使用 iReport 添加/删除波段。
  • 嗨 - 感谢您的反馈。我正在使用 iReport。如何删除多余的空间?在设计器上看起来没有空间,因为我减小了相关带的宽度。但生成的 PDF 仍然包含空白。

标签: jasper-reports


【解决方案1】:

在 iReport 中,在主报表的属性中将 Ignore pagination 设置为 true。

这应该会导致您的页脚在您的详细信息带中的内容底部呈现。

【讨论】:

  • 我意识到我需要处理超过一页的报告。所以“忽略分页”不再合适。但是,我在属性窗口“浮动列页脚”中找到了它上面的设置,将页脚直接放在每个页面的详细信息带下方。完美的!希望这可以帮助其他人。
  • @Peanut:谢谢。它也帮助了我。但它出现在Summary band 之后。这对我来说是另一个问题。请给我一个解决方案吗?
  • 嗯,这听起来很奇怪,确实它会起作用,因为报告没有不再有页面了,但是如果你导出到 pdf 会发生什么?,我会看看在Agus answer,这是确定列页脚放置位置的正确方法。
  • @mmcrae 是的,这不再是正确的答案了(fow 较新的报告版本,也许它在 2010 年有效),现在您应该使用“浮动列页脚”,当您通常单击时可以找到它在属性选项卡下报告
【解决方案2】:

您可以尝试设置 Column Footer Placement 属性。为我解决了。

JasperReports 终极指南中的引述

Column Footer Placement - isFloatColumnFooter 布尔属性允许用户自定义 列页脚部分的行为。默认情况下,此部分呈现在 页面底部,页面页脚正上方。在某些情况下,它很有用 将其呈现在页面上更高的位置,就在最后一个细节或组页脚的下方 那个特定的列。为此,请将 isFloatColumnFooter 属性设置为 true

【讨论】:

  • 如何将其设置为 true 来确定最后 3 个选项中的哪一个?
  • 这取决于您使用的频段。考虑到Float Column Footer 被选中:如果您没有任何组,那么它将直接放置在详细信息带中最后一个detail 条目的下方。如果您有带页脚的组,则将直接放置在最后一个组页脚下方。
【解决方案3】:

如果你想保持页面的格式,设置报告的“浮动列页脚”属性比“忽略分页”更好。在忽略分页的情况下,视图会缩小(例如不是 A4 格式的 PDF)。 “浮动列页脚”保持页面格式。

【讨论】:

  • 正确 - 选择“忽略分页”使得 PDF 只是一页,没有底部边距或任何东西
【解决方案4】:

对于那些不使用报告工具(JasperSoft 或更旧的 iReport)并直接使用 XML 的用户,请将 isFloatColumnFooter 添加到 <jasperReport> 元素。

<?xml version = "1.0" encoding = "UTF-8"?>
<!DOCTYPE jasperReport PUBLIC "//JasperReports//DTD Report Design//EN"
   "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">

<jasperReport xmlns = "http://jasperreports.sourceforge.net/jasperreports"
              xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation = "http://jasperreports.sourceforge.net/jasperreports
   http://jasperreports.sourceforge.net/xsd/jasperreport.xsd"
              isFloatColumnFooter="true"
              name="report2" pageWidth="595" pageHeight="230" 
              columnWidth="555" leftMargin="20" rightMargin="20"
              topMargin="20" bottomMargin="20">

...
</jasperReport>

【讨论】:

    【解决方案5】:

    浮动列页脚是正确的设置。 如果您在详细信息带的输出和 te 页脚之间仍有空间丢失,请注意其他带浪费空间,就像摘要一样。如果您不需要带子,请将其删除或将其高度设置为 0。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-30
      • 1970-01-01
      相关资源
      最近更新 更多