Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

PAGE LIMIT clause

Function

The PAGE LIMIT clause is used to define the length of a page and the vertical subdivisions

within which report groups are presented.

Format


PAGE [{LIMIT | LIMITS} {IS | ARE}] integer-p [{LINE | LINES}]
     [HEADING integer-h]
     [FIRST DETAIL integer-d]
     [LAST DETAIL integer-e]
     [FOOTING integer-f]


Syntax rules

  1. integer-p indicates the maximum possible number of print lines per page.

  2. integer-p must not exceed 999.

  3. The other integers of the PAGE LIMIT clause are line numbers. Since the numbering of the lines on a page starts with 1, integer-p may also be interpreted as a line number.

  4. The integers of the PAGE LIMIT clause are subject to the following relationships:
    integer-h must be equal to or greater than 1.
    integer-d must be equal to or greater than integer-h.
    integer-e must be equal to or greater than integer-d.
    integer-f must be equal to or greater than integer-e.
    integer-p must be equal to or greater than integer-f.

  5. integer-h of the HEADING phrase specifies the first line on the page on which anything may be written.

  6. integer-h must not exceed 999.

  7. integer-p of the LIMIT phrase specifies the last line on the page on which anything may be written.

  8. integer-d of the FIRST DETAIL phrase specifies the lowest line number permitted for any body groups.

  9. integer-d must not exceed 999.

  10. integer-e of the LAST DETAIL phrase specifies the highest line number permitted for any detail groups and control headings.

  11. integer-e must not exceed 999.

  12. No more than 127 detail report groups (DETAIL) may be specified within a report description entry.

  13. integer-f of the FOOTING phrase specifies the highest line number permitted for any control footings.

  14. No more than 31 control footings may be specified within a report description entry.

  15. integer-f must not exceed 999.

  16. If the PAGE LIMIT clause is specified but one or more of the optional integers is omitted,the following values are internally assumed by default:

     

    Omitted integer

    Value assumed when nothing is specified

    HEADING integer-h

    1

    FIRST DETAIL integer-d

    Value of HEADING integer-h

    LAST DETAIL integer-e

    Value of FOOTING integer-f

    FOOTING integer-f

    Value of LIMIT integer-p

  17. If the PAGE LIMIT clause is omitted entirely, the compiler assumes the following values for each integer of the PAGE LIMIT clause:

    Integer

    Assumed value

    LIMIT integer-p

    50

    HEADING integer-h

    1

    FIRST DETAIL integer-d

    1

    LAST DETAIL integer-e

    48

    FOOTING integer-f

    48

General rules

  1. The Report Writer uses the phrases of the PAGE LIMIT clause for partitioning the page into regions. Only report groups of specific types may be printed in certain regions. The page regions for each type of report group are:

    1. If the report heading description includes the NEXT GROUP NEXT PAGE clause, the report heading prints from the line whose number is integer-h through the line whose number is integer-p. Otherwise, the report heading must not print beyond the line whose number is integer-d minus 1, which requires explicit entry of integer-d (see under b. below).

    2. The page heading must lie in the region from integer h through integer d minus 1.

      This region does not exist if the value of integer-d is established by the compiler. It is therefore necessary for integer-d to be supplied explicitly in the PAGE LIMIT clause when printing a page heading or report heading which does not appear on a page by itself.
    3. Detail report groups and control headings may be printed only in the region from integer-d through integer-e, these boundaries included.

    4. Printout of control footings is permitted in the region from integer-d through integer-f.

    5. A page footing may be printed only in the region from integer-f+1 through integer-p. This region does not exist if the PAGE LIMIT clause is supplied without the integer-f phrase. Therefore, in this case, printing a page footing requires that integer-f be specified explicitly.

    6. If a whole page is associated with the report footing by means of LINE NEXT PAGE, the report footing may print in the region from integer-h through integer-p.
      Otherwise, report footings are subject to rule e).

  2. NEXT GROUP and LINE clauses of the report group description entries must not conflict with the PAGE LIMIT clause; that is, the lines of a report group must be within the assigned region.

  3. Table 39 is a schematic view of the partitioning of a page into regions in those cases where each integer of the PAGE LIMIT clause has a different value. The partitioning is represented as follows:

    integer-h < integer-d < integer-e < integer-f < integer-p

    This is also the assumption for the rules below for the use of these regions:

Table 39: Page partitioning into regions (schematic)  

Region 1:


Scope:

integer-h through integer-p.

Contents:

report heading or report footing.

Rules:

If the report heading description includes the NEXT GROUP clause with the NEXT PAGE phrase, a whole print page is reserved for the report heading; that is, no other report group is printed on this page. Whether the report head is printed using the whole or any part of the region, is determined by the LINE clause of the report heading description.

If the report footing description includes the first (or only) LINE clause with the NEXT PAGE phrase, a whole print page is reserved for the report footing; that is, the same rules apply as to the report heading.

Region 2:


Scope:

integer-h through integer-d minus 1.

Contents:

report heading and page heading, or page heading only.

Rules:

The report heading will be printed in region 2 only if its report group description does not include the NEXT GROUP PAGE clause. Since a report heading is printed only once per report, the report heading appears in region 2 only on the first page of the report.

With the exception of those pages which are exclusively reserved for the report heading and report footing, a page heading, if defined, will appear in region 2 on all pages.

If the first page is provided with both the report heading and the page heading, the page heading must be printed after the report heading. LINE and NEXT GROUP clauses of the two report description entries must not violate this rule.

Region 3:


Scope:

integer-d through integer-e.

Contents:

body group.

Rules:

As shown by the scope, region 4 generally extends beyond region 3 at the bottom.

Any body group may be written in region 3 or in the overlapped portion of region 4. The remaining portion of region 4 may receive control footings only.

Region 4:


Scope:

integer-d through integer-f.

Contents:

body group.

Rules:

As shown by the scope, region 4 generally extends beyond region 3 at the bottom.

Any body group may be written in region 3 or in the overlapped portion of region 4. The remaining portion of region 4 may receive control footings only.

Irrespective of the body’s group type, region 4 applies to the NEXT GROUP clause of this group.

Region 5:


Scope:

integer-f+1 through integer-p.

Contents:

report footing and page footing.

Rules:

If the first LINE clause in the report description entry for the report footing does not contain the NEXT PAGE phrase, the report footing will be printed in region 5 on the last page of the report.

The page footing of a report is always written in region 5.

If both the page footing and the report footing are to be printed in region 5 of the last page, then the page footing must precede the report footing. The LINE clauses of the two report groups must not be in conflict with this rule.