PAGEプログラムは、PAGINGの設定がYES
である場合、出力に改ページを挿入するプログラムです。PAGEに対するオプションの引数は、ページの残りの行数を条件とする改ページを指定します。
PAGEプログラムは、レポート・プログラムで一般的に使用されます。このプログラムは、PAGINGの設定がYES
である場合にのみ有効であり、REPORT、LISTNAMESなどの文からの出力に対してのみ効力があります。
構文
PAGE [n]
引数
現行ページの残りの行数がnより少ない場合にのみ改ページが発生することを示す正のINTEGER
式。残りの行数がn以上の場合、改ページは発生しません。例10-71「まとまった行の保持」を参照してください。
注意
ページの先頭
PAGE文が実行されるときにすでにページの先頭が表示されている場合、改ページは発生しません。
ヘッダーの生成
PAGEプログラムからは、追加の出力が新しいページに生成されることが通知されますが、追加の出力が存在しないかぎり、新しいページにヘッダーは生成されません。追加の出力が存在する場合は、現在のPAGEPRGプログラムによって定義されるヘッダーが生成され、出力の生成が開始されます。
例
例10-71 まとまった行の保持
12行のデータがあり、改ページによって中断されると読み取りづらくなるため、中断されないようにするとします。12行のデータを生成する複数の文の直前にPAGE
12
という文を使用します。12行のデータの前に改ページが発生するのは、ページの残りの行数が12行未満の場合のみです。その時点で12行以上残っている場合、出力は同じページ上で続行されます。
例10-72 改ページの挿入
レポート・プログラムの次の抜粋は、district
のループが開始されるたびに改ページが挿入されます。これにより、地区ごとのレポートがページの先頭から開始されます(レポート・プログラムでは、report.head
というヘッダー・プログラムを使用して、カスタマイズされたヘッダーを作成します。カスタマイズされたヘッダー・プログラムについては、PAGEPRGオプションを参照)。
PUSH PAGING PAGEPRG PAGING = YES PAGEPRG = 'report.head' FOR district DO PAGE ROW district BLANK FOR month ROW WIDTH 8 month sales sales.plan DOEND PAGE POP PAGING PAGEPRG