DETAIL (report detail line structure)

Top  Previous  Next

 

label

DETAIL

,AT( ) [,FONT( )] [,ALONE] [,ABSOLUTE] [,PAGEBEFORE( )] [,PAGEAFTER( )]

 

 

[,WITHPRIOR( )] [,WITHNEXT( )] [,USE( )] [,COLOR( )] [,TOGETHER]

 

controls

 

 

END

 

DETAIL

Declares items to be printed as the body of the report.

label

The name by which the structure is addressed in executable code.

AT

Specifies the offset and minimum width and height of the DETAIL, relative to the size of the area specified by the REPORT's AT attribute (PROP:AT).

FONT

Specifies the default font for all controls in this structure (PROP:FONT). If omitted, the REPORT's FONT attribute (if present) is used, or else the printer's default font is used.

ALONE

Declares the DETAIL structure must be printed on a page without FORM, (page) HEADER, or (page) FOOTER structures (PROP:ALONE).

ABSOLUTE

Declares the DETAIL prints at a fixed position relative to the page (PROP:ABSOLUTE).

PAGEBEFORE

Declares the DETAIL prints at the start of a new page, after activating normal page overflow actions (PROP:PAGEBEFORE).

PAGEAFTER

Declares the DETAIL prints, and then starts a new page by activating normal page overflow actions (PROP:PAGEAFTER).

WITHPRIOR

Declares the DETAIL prints on the same page as the DETAIL,or group HEADER or FOOTER that immediately precedes it during printing (PROP:WITHPRIOR).

WITHNEXT

Declares the DETAIL prints on the same page as the DETAIL, or group HEADER or FOOTER that immediately follows it during printing (PROP:WITHNEXT).

USE

A field equate label to reference the DETAIL structure in executable code (PROP:USE).

COLOR

Specifies a background color for the DETAIL and the default background color for the controls in the DETAIL (PROP:COLOR).

TOGETHER

Specifies that the DETAIL, or group HEADER or FOOTER structure (contained within a BREAK structure), is to only print on a single page, rather than being automatically split if there is not sufficient room for it (PROP:Together).

controls

Report output control fields.

The DETAIL structure declares items to be printed as the body of the report. A DETAIL structure must be terminated with a period or END statement. A REPORT may have multiple DETAIL structures.

A DETAIL structure is never automatically printed, therefore DETAIL structures are always explicitly printed by the PRINT statement. This means that a label is required for each DETAIL you wish to PRINT.

The DETAIL structure may be printed whenever necessary. Since you may have multiple DETAIL structures, they provide the ability to optionally print alternate print formats. This is determined by the logic in the executable code which prints the report.

DETAIL structures print within the detail print area specified by the REPORT statement's AT attribute. The DETAIL structure's AT attribute specifies the relative position, width and height of the detail to print. If there is horizontal room within the detail print area for multiple DETAIL structures, they print side-by-side.

Example:

CustRpt REPORT            !Declare customer report

        HEADER           !begin page header declaration

         !structure elements

        END              !end header declaration

CustDetail1 DETAIL       !begin detail declaration

         !structure elements

            END          !end detail declaration

CustDetail2 DETAIL       !begin detail declaration

         !structure elements

            END          !end detail declaration

         END             !End report declaration

CODE

OPEN(CustRpt)

SET(SomeFile)

LOOP

 NEXT(SomeFile)

  IF ERRORCODE() THEN BREAK.

 IF SomeCondition

  PRINT(CustDetail1)

 ELSE

  PRINT(CustDetail2)

 END

END

CLOSE(CustRpt)

 

See Also:

PRINT

AT