Why detail lines are not overflowing to a new page

Why detail lines are not overflowing to a new page

If section can help you, if you have created a repeat loop to output all of the detail lines of a document, but unfortunately the detail lines are not overflowing to a new page.

 

Here are the settings, that can prevent an automatic page overflow of the detail lines:

 

1.Detail lines should not be inserted in a container with a fixed position.

2.Do not insert many detail lines in a single cell with block protection activated.

3.The header cannot overflow to a new page, so some header elements should probably be moved to the body section.

 

 

1.The detail lines should NOT be inserted in a container, that has a fixed position.

If the detail lines are inserted in the container with a fixed position, then an automatic page overflow will not happen. A fixed position is marked in the element tree on the left with a cross hair like below:

 

NG2MissingDetailPageOverflow0001

 

A similar issue is seen, if the main container has a dynamic position, but another fixed positioned container is used in the same sub-tree above the detail lines like below:

 

NG2MissingDetailPageOverflow0002

 

In the case above the marked container does not expand and has no influence on the size of the parent container hence no overflow is to be seen.

 

So you need to make sure, that all parent containers of the repeat loop has a dynamic position. Such a container also includes a table, if it is used as a parent container.

 

In order to set a position of the dynamically positioned containers you can:

 

a.Make sure, that the header has a dynamic size e.g. a dynamically positioned container e.g. with margins.

b.You can also consider to add a top margin on the container, that contains the repeat of the detail lines.

 

 

2.Do not insert all detail lines in a single cell of a table if block protection is selected.

If you have inserted all of the detail lines in a single cell like below, then you might have prevented a page overflow:

 

NG2MissingDetailPageOverflow0003

 

If you insert multiple elements in a single cell like above, then you can use that as a way to implement block protection i.e. that all elements inside the cell will always be output on the same page. That is however a problem, if there is not enough space on the current page for all the detail lines.

 

So the potential problem above is, that the detail lines are placed in a single cell, where the normal (better) setup to insert the table within the repeat loop.

 

The setup above may however not necessarily prevent a page overflow. That depends on the row setting of the parent row, where the cell is inserted. The default row height is this:

 

NG2MissingDetailPageOverflow0004

 

This default setting enables the block protection, which then prevents a page overflow. You can enable the page overflow by changing this setting to this:

 

NG2MissingDetailPageOverflow0005

 

 

3. The header cannot overflow to a new page

If you have a header of your documents, that may grow a lot to e.g. overlap the footer or  even overflow to a new page, then you need to treat such a header as detail lines.Such a large header probably is only to be included on page 1 of the document. If that is the case then you should consider simply to move the element(s) that gets so large from the header container into the start of the body section.

    • Related Articles

    • Options for handling detail lines

      When it comes to detail lines of a document, then you of course need to use a repeat loop, that iterates across all of the detail lines of your input file. Here I use this XML file as input: (You can find that in the document Library of InterFormNG2 ...
    • How to iterate across detail lines in spooled file

      In this section I will show you how you can make InterFormNG2 iterate across detail lines in an input spooled file, and how to setup conditions on each detail line. This can be done in two different ways depending on which spooled file format, that ...
    • Page overflow

      When you insert many dynamically positioned elements in your output, then InterFormNG2 will automatically force a page overflow. This section covers the page overflow in details: 1.Introduction 2.Flexible header size. 3.Flexible footer size - for a ...
    • Page body

      The body section of a page If you have inserted either a header or a footer element to a page element, then a body element is also added: The body elements contains the elements, that should only be executed/inserted once. This section normally ...
    • Page footer

      Page footer If you want to keep the same footer for all pages of a merge, then you should normally insert them in a footer element of the page element. To create a page footer element you need to right-click on the page element in the element tree ...