プログラム記述ファイルでのオーバーフロー標識の使用

オーバーフロー標識 (OA ~ OG、OV) は、ページの最後の行を印刷、または 超えた時にオンに設定されます。 オーバーフロー標識を使用して、次のページに印刷する行を指定することがで きます。 オーバーフロー標識は、プログラム記述 PRINTER ファイルの場合にだけ指定す ることができ、主に見出し行の印刷を条件付けるために使用されます。 オーバーフロー標識は、出力仕様書に OFLIND キーワードを使用して指定され 、演算仕様書 (9 ~ 11 桁目) および出力仕様書 (21 ~ 29 桁目) の命令を条件付 けるために使用することができます。 オーバーフロー標識が指定されていない場合には、コンパイラーが最初の未使 用のオーバーフロー標識を PRINTER ファイルに割り当てます。 オーバーフロー標識は、演算仕様書の結果の標識 (71 ~ 76 桁目) として 指定することもできます。

コンパイラーは、ページでオーバーフロー状態が最初に起こった時点でのみオーバーフロー標識をオンに 設定します。以下の 1 つが起こった場合には必ず、オーバーフロー条件ということになります。
  • オーバーフロー行を超えて行が印刷された場合
  • 行送り操作によってオーバーフロー行を超えた場合
  • スキップ操作によってオーバーフロー行を超えた場合

表 1 には、ファイル仕様書および出力仕様書で、 オーバーフロー標識がある場合またはない場合の結果が示してあります。

以下の考慮事項は出力仕様書で使用するオーバーフロー標識に適用されます。
  • 行送り操作によってオーバーフロー行を超えると、オーバーフロー標識 がオンに設定されます。
  • 同じページの中で別の行にオーバーフロー行を超えてスキップすると、 オーバーフロー標識がオンに設定されます。
  • オーバーフロー行を超えて新しいページの任意の行にスキップしたとしても、 指定したオーバーフロー行を超えてスキップ先を指定したのでなければ、 オーバーフロー標識はオンに設定されません。
  • 新しいページへのスキップをオーバーフロー標識によって 条件付けられていない行で指定した場合には、新しいページに用紙が 進んだ後にオーバーフロー標識がオフに設定されます。
  • 新しい行へスキップするように指定した場合にプリンターが その行に現在あるとすると、スキップは行われません。 またオーバーフロー行を超えていなければ、オーバーフロー標識は オフに設定されます。
  • 出力印刷レコードに OR 記入行の指定がある場合には、前の行のスペース およびスキップの記入項目が使用されます。 それらが前の行と異なる場合には、スペースを 入力して ON 行の項目をスキップします。
  • 各ページに 1 つだけの制御グループから情報を入れるように、制御レベルの 標識をオーバーフロー標識と一緒に使用することができます。図 1を参照してください。
  • オーバーフロー行の条件付けの場合には、オーバーフロー標識は AND 関係または OR 関係のいずれにも指定することができます。 AND 関係の場合には、オーバーフロー標識は、オーバーフロー行と見なされる その行の主要な仕様書行に指定しなければなりません。 OR 関係の場合には、オーバーフロー標識は主要な仕様書行または OR 記入行に指 定することができます。 1 つのオーバーフロー標識しか 1 グループの出力標識と関連付けることがで きません。 OR 関係の場合には、オーバーフロー標識を指定した仕様書行上の 条件付け標識だけがオーバーフロー行の条件付けに使用されます。
  • オーバーフロー標識を AND 記入行で使用した場合には、この行は オーバーフロー行とはなりません。 この場合オーバーフロー標識は、 他のすべての出力標識と同じように扱われます。
  • オーバーフロー標識がレコード識別標識との AND 関係で使用されている時 には、レコード・タイプはオーバーフローが起こった時に読み取られたもので ない可能性があるので、矛盾した結果となることがよくあります。 したがって、レコード識別標識がオンにはならず、オーバーフローとレコード識 別の両方の標識によって条件付けられたすべての行が印刷されません。
  • オーバーフロー標識によって例外行 (17 桁目に E) および 例外レコード内のフィールドの条件付けができます。
表 1. オーバーフロー標識がある場合またはない場合の結果
ファイル仕様書の桁 44 ~ 80 出力仕様書の桁 21 ~ 29 処置
記入なし 記入なし 未使用の最初のオーバーフロー標識がオーバーフロー時の 次ページへのスキップの条件付けに使用されます。
記入なし 記入 コンパイル時のエラー。オーバーフロー標識が出力仕様書から 脱落しています。 未使用の最初のオーバーフロー標識がオーバーフロー時の 次ページへのスキップの条件付けに使用されます。
OFLIND(標識) 記入なし 連続印刷中。オーバーフローは認識されません。
OFLIND(標識) 記入 通常のオーバーフロー処理。