jasper-reports - Jasper 报告 - 仅当至少有一个细节适合页面时才打印组标题

标签 jasper-reports report reporting

我正在创建一个具有一些非常具体要求的 jasper 报告。

  • 该报告包含一个组。
  • 组标题必须打印在组的开头和新页面上。

  • This is not a problem since I just have to tell it to "Reprint Header On Each Page". So far so good.


  • 不允许在页面上拆分详细信息部分。
  • 除非至少有一个详细信息部分适合,否则不得在页面底部打印组标题。 (可以改写为:只有在至少一个细节部分适合时才能打印组标题)

  • At this point I noticed that there is a property for the group called "Min Height To Start New Page". This would be useful for a detail section of constant height, however...


  • 细节部分是动态高度。

  • 我曾尝试在组上使用“保持在一起”,但是如果第一组很小,而第二组很大,则可能会在页面上留下太多空白。它被拒绝作为解决方案。

    考虑到这些要求。当页面无法容纳任何详细信息条目时,我要做的就是不打印组标题。

    我怀疑在填写报告时,它可能不知道详细信息部分的高度,直到填写完毕,然后为时已晚。我希望我是错的。

    我尝试通过两种方式重新创建此报告:
  • 一份包含组和详细信息部分的报告。
  • 带有组子报表的主报表,子报表中的另一个子报表用于详细信息。

  • 这两种方式都让我得到了相同的结果。

    从视觉上看,如果这是我的数据:
    Province - Ontario
      City - Ottawa
      City - Toronto
    Province - Nova Scotia
       City - Halifax
       City - New Glasgow
    Province - Quebec
       City - Montreal
       City - Quebec City
    

    我可能会得到这样的结果:
    **Page 1**
    Province - Ontario
      City - Ottawa
      City - Toronto
    Province - Nova Scotia
       City - Halifax
       City - New Glasgow
    Province - Quebec **<- This hanging header is unwanted**
    
    **Page 2**
    Province - Quebec
       City - Montreal
       City - Quebec City
    

    我尝试了许多设置排列,将子报表放置在不同的波段中,但我还没有找到有效的方法。我希望有人知道设置的组合,将子报表放置在不同的波段等,这将起作用。

    知道我如何做到这一点吗?

    最佳答案

    您无法真正阻止这种情况,因为您的详细信息带可能不止一页。但是,您有几个选项可以尝试。

  • 转到组属性并将“开始新页面的最小高度”设置为 200 或满足您需要的值。
  • 其次,您可以检查“在每页上打印组标题”,以便如果您的详细信息部分超过一页,则标题会重复。

  • 希望这可以帮助!

    关于jasper-reports - Jasper 报告 - 仅当至少有一个细节适合页面时才打印组标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27404668/

    相关文章:

    java - ireport 中的 JSON 数组

    python - 在没有 jasperserver 的情况下从 python 中运行 jasper 报告(使用 iReport 创建)?

    java - JasperReport & 填充组件

    javascript - 报告服务出现奇怪的 IE 渲染问题

    java - 在同一 TomEE 实例上的并行应用程序中使用 JasperReports 是否不可能(JasperReports 上下文)?

    java - Jasper Reports 中的子报表

    asp.net-mvc - ASP.NET MVC 上有免费的图表报告工具吗?

    visual-studio - 在 Visual Studio 2017 中创建报表时,如何让 Microsoft Dynamics 365 显示在数据源列表中?

    ms-access - 将参数从表单传递到报表

    database-design - 分解数据库密集型应用程序