この特性は、帳票をプリンタまたは画面に出力する場合に使用します。この特性を使用して、ページ終了(EOP)状態が発生した時の動作を指定できます。マージには関係しません。
ページ終了(EOP)状態は、出力対象のフォームが現在のページの残りのスペースより大きい場合に発生します。ページ終了(EOP)状態の識別にはページサイズ(行数)が使われますが、このページサイズは論理ページサイズで、プリンタの物理ページサイズとは無関係です。Magic uniPaaSの論理ページサイズとプリンタの物理ページサイズは、[プリンタ]テーブルで関係を指定できます。Magic uniPaaSの論理ページサイズは、次のどちらかの値により計算されます。
[フォーム出力]処理コマンドで指定されている入出力ファイルの[行]カラムの値。
[行]カラムに値が設定されていない時には、[フォーム出力]処理コマンドで指定されている入出力ファイルが出力されるプリンタの[行]カラムの値。
ページ終了(EOP)状態は、次の[フォーム出力]処理コマンドで改ページが実行されるように設定されている場合、そのコマンドでクリアされます。つまり、次の[フォーム出力]処理コマンドの[ページ]特性の値が「A=自動」または「T=先頭」の時にクリアされます。
Magic uniPaaSでは、複数の入出力ファイルや出力デバイスに対して同時に出力が可能ですが、この場合、ページ終了(EOP)状態は、入出力ファイルや出力デバイスごとに処理されます。つまり、特定の入出力ファイルでページ終了(EOP)状態が発生した時でも、別の入出力ファイルは通常どおり処理されます。
[ページ]特性に指定できる値は、次の通りです。
S=スキップ …… この設定にしておくと、フォームが出力される前に、現在のページにフォームを出力するスペースが十分あるかどうかがチェックされます。スペースがある場合、フォームが出力されます。スペースがない時には、そのフォームはスキップされ、出力先への書き込みは行われません。その場合、ページ終了(EOP)状態がオンになります。このオンのページ終了(EOP)状態は、EOP関数を使用してチェックできます。
A=自動
…… 現在のフォームを印刷する前に、Magic uniPaaSは、現在のページに印刷可能なスペースがあるかどうかをチェックします。十分なスペースが存在していれば現在のページのフォームを印刷します。十分なスペースがない場合、改ページが実行され、新しいページのフォームを印刷することによって、自動的にEDPを処理します。
現在のフォームと同じクラスのヘッダフォームがある場合、Magic uniPaaSは最初にヘッダフォームを印刷し、その後、現在のフォームを印刷します。
T=先頭 …… この設定にしておくと、プリンタに対して改ページコードが送られ、その後、フォームデータがプリンタに送られます。この場合、次のページの先頭から印刷が始まります。つまり、強制改ページが実行されます。この処理では、ヘッダがもう一度出力されることはありません。
注意: |
ページ終了(EOP)状態が発生した時の処理は、必要に応じて決めます。例えば、ページ終了(EOP)状態が発生した時、強制的に改ページして出力を続けたい時は、[ページ]特性の値を「T=先頭」にしておきます。 |
[ページ]特性の値を「S=スキップ」にした場合、ページ終了(EOP)状態が発生すると、その後の出力は無視されます。その後、ページ終了(EOP)状態がクリアされると、出力が再開されます。
このため、「S=スキップ」は、特にアプリケーションで出力関連の処理を制御したい場合に指定します。その場合、EOP関数、Line関数を使用して[フォーム出力]処理コマンドの実行を制御します。