[#11826] - Prevent orphan footer - new page

Jaspersoft Community 'Read-Only' as of July 8, 2022

Transition to New TIBCO Community Just Weeks Away

You can still search, review wiki content, and review discussions in read-only mode. Please email community@tibco.com with questions or issues requiring TIBCO review or response.

Bug report
Project: Severity:
Component: Reproducibility:
Assigned to:

When printing some detail rows in group i've encountered a problem.

Example: I'm trying to set first row on each page to be black others white
Let's say the detail has two frames, one of which is white, one is black. The frames have print when expression set to a Boolean variable that has initial expression "false", expression "true" and resetType "Page". Before this value evaluates we create another variable that has this variable as expression. This variable should result to false on first detail row on each page and true for other rows.
That means first row in a new page should always be black and others should be white. This works.

Problem is when we check the option "Prevent orphan footer" in a group and that footer happens to be orphaned, it takes the last row of detail to the new page. That detail row is then white, variable is not reset to its initial state even though it's on a new page. Second row is black.

OR Easier example would be print variable PAGE_NUMBER in detail row, when the "Prevent orphan footer" prevents orphaned footer, the row on new page doesn't have updated page number.

Prevent orphan footer in group takes the detail row from last page but doesn't re-evaluate the variables.

dkn's picture
Joined: May 15 2019 - 12:13am
Last seen: 7 months 3 weeks ago

1 Comment:

  • Status:New» Acknowledged
  • Assigned:nobody» teodord


This is one of the most delicate features of the engine. Indeed, when we keep a group together or when we prevent orphans, we simply get content that has already been generated and move it from one page to another.
This is because a detail band could be more complex and for example it could contain a subreport. We would have to rerun the subreport if it were for us to re-evaluate things.
Not sure if we are going to be able to fix this one.