このドキュメントでは、次のトピックについて説明します。
関連ステートメント:AT END OF
PAGE
| AT TOP OF
PAGE
| CLOSE
PRINTER
| DEFINE PRINTER
| DISPLAY
| FORMAT
| NEWPAGE
| PRINT
| SKIP
| SUSPEND IDENTICAL SUPPRESS
| WRITE
| WRITE TITLE
| WRITE TRAILER
関連機能グループ:出力レポートの作成
EJECT
ステートメントは、改ページとページ換えの制御に使用します。
このステートメントには、2 つの異なる構造が可能です。
次の構文図で使用されている記号については、「構文記号」を参照してください。
EJECT |
ON |
[(rep)] | ||
OFF |
構文要素の説明:
構文要素 | 説明 | |
---|---|---|
EJECT
ON/OFF (rep) |
レポート指定を含む EJECT ON/OFF - オンラインおよびバッチモード:
|
|
EJECT OFF
(rep) |
指定レポートのページ換え処理を行いません(構文 2 の EJECT ステートメントの指定は除く)。
|
|
EJECT ON
(rep) |
指定レポートのページ換え処理を実行します。 | |
EJECT
ON/OFF |
レポート指定を含まない EJECT ON/OFF - バッチモードのみ:
レポート指定 |
|
EJECT ON |
ソースプログラムリスト、出力レポートおよび次のメッセージの間でページ換えを実行します EXECUTION COMPLETED。これはデフォルト設定です。 |
|
EJECT
OFF |
上記の各出力間のページ換えを停止します。EJECT OFF は次の EJECT ON ステートメントが指定されるまで有効です。
|
|
(rep) |
レポート指定:
表記 範囲 0~31 の値、または
Natural で作成した出力レポートのフォーマットを制御する方法については、『プログラミングガイド』の「レポートフォーマットおよび制御」を参照してください。 |
この形式の EJECT
ステートメントでは、次のページでタイトルまたはヘッダー行を生成することなく、TOP/END PAGE
処理を行わずに改ページが実行されます。
EJECT |
[( rep )] | IF |
LESS [THAN ] operand1 [LINES ] [LEFT ] |
||||
WHEN |
オペランド定義テーブル:
オペランド | 構文要素 | フォーマット | オペランド参照 | ダイナミック定義 | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
operand1 |
C | S | N | P | I | ○ | × |
構文要素の説明:
構文要素 | 説明 |
---|---|
(rep) |
レポート指定:
表記 範囲 0~31 の値、または
Natural で作成した出力レポートのフォーマットを制御する方法については、『プログラミングガイド』の「レポートフォーマットおよび制御」を参照してください。 |
IF LESS THAN
operand1 LINES LEFT |
IF LESS THAN ...LINES LEFT 節:
現在の行の位置が、ページサイズから |
EJECT
ステートメントを実行しても、AT TOP OF
PAGE
、AT END OF
PAGE
、WRITE
TITLE
または WRITE
TRAILER
で使用されるステートメントは実行されません。また、DISPLAY GIVE SYSTEM
FUNCTIONS
で評価されるシステム関数にも影響しません。
EJECT
では、新規の物理ページの生成だけが行われます。Natural システム変数 *LINE-COUNT
が 1
に設定されますが、*PAGE-NUMBER
は影響を受けません。
** Example 'EJTEX1': EJECT ************************************************************************ DEFINE DATA LOCAL 1 EMPLOY-VIEW VIEW OF EMPLOYEES 2 CITY 2 NAME 2 JOB-TITLE END-DEFINE * FORMAT PS=15 LIMIT 9 READ EMPLOY-VIEW BY CITY /* AT START OF DATA EJECT WRITE /// 20T '%' (29) / 20T '%%' 47T '%%' / 20T '%%' 3X 'REPORT OF EMPLOYEES' 47T '%%' / 20T '%%' 3X ' SORTED BY CITY ' 47T '%%' / 20T '%%' 47T '%%' / 20T '%' (29) / EJECT END-START EJECT WHEN LESS THAN 3 LINES LEFT /* WRITE '*' (64) DISPLAY NOTITLE NOHDR CITY NAME JOB-TITLE 5X *LINE-COUNT WRITE '*' (64) END-READ END
%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% %% %% REPORT OF EMPLOYEES %% %% SORTED BY CITY %% %% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
**************************************************************** AIKEN SENKO PROGRAMMER 2 **************************************************************** **************************************************************** AIX EN OTHE GODEFROY COMPTABLE 5 **************************************************************** **************************************************************** AJACCIO CANALE CONSULTANT 8 **************************************************************** **************************************************************** ALBERTSLUND PLOUG KONTORASSISTENT 11 **************************************************************** **************************************************************** ALBUQUERQUE HAMMOND SECRETARY 14 ****************************************************************
**************************************************************** ALBUQUERQUE ROLLING MANAGER 2 **************************************************************** **************************************************************** ALBUQUERQUE FREEMAN MANAGER 5 **************************************************************** **************************************************************** ALBUQUERQUE LINCOLN ANALYST 8 **************************************************************** **************************************************************** ALFRETON GOLDBERG JUNIOR 11 ****************************************************************