【问题标题】:Re- Print Title when Group Changes组更改时重新打印标题
【发布时间】:2013-06-26 19:33:38
【问题描述】:

我正在尝试构建一个报告,当我的组更改时标题栏会重新打印,但我无法弄清楚如何做到这一点。

在其他报告中,我可以通过将标题移动到页眉中来做到这一点,当一个组只有一页但现在我有一个 3 页组(在这种情况下,它应该只打印在3) 的第一页。

Print when Group Changes 选项似乎不像我认为的那样有效(至少不在分页器标题或列标题中)。

【问题讨论】:

    标签: jasper-reports


    【解决方案1】:

    所以我找到了一个几乎相同的姿势,这里有建议:Jasper Reports - Print when group changes


    我使用的不是“组更改时打印”

    $V{yourGroupName_COUNT}==1

    print when 选项,以便元素在一个组中只打印一次


    这有效,但在页眉中我的组没有得到 1
    因此,我还设置了 重置页码从新页面开始 选项,我能够在我的元素上设置 print when 选项我只想在第一页打印到

    $V{PAGE_NUMBER} ==1

    【讨论】:

      【解决方案2】:

      您误解了printWhenGroupChanges 属性的用途。仅在与isPrintRepeatedValues 结合使用时才有意义。当您选择隐藏报表中的重复值时,它允许您设置规则的例外;重复的值将在下一组开始时隐藏 except。因为它与数据集中重复的值有关,所以它不会对页眉产生影响(正如您已经发现的那样)。

      这里的正确方法是使用组标题。将您想要重复的内容放入相关组的groupHeader 部分。

      来自 JasperReports 终极指南:

      组标题 此部分标志着结果文档中新组的开始。它被插入 每次迭代期间组表达式的值发生变化时的文档 通过数据源。

      【讨论】:

      • 你是对的,我误解了 printWhenGroupChanges。我曾尝试将它放在组标题中,但问题是 列标题 带打印在 组标题 带上方。所以要让报告处理为:标题、列标题、详细信息(按此顺序),每个页面上都有一个 列标题,每个组的第一页上都有一个标题。我已经发布了我是如何做到这一点的答案。
      猜你喜欢
      • 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
      相关资源
      最近更新 更多