ページ・オーバーフローの処理

PRINTER ファイルを使用する時の重要な考慮事項は、ページ・オーバーフロー です。 外部記述 PRINTER ファイルの場合には、ページ・オーバーフローの処理はユー ザーの責任で行ってください。 次の 1 つを実行します。
  • キーワード OFLIND (オーバーフロー標識) を使用して標識 *IN01 ~ *IN99 をオーバーフロー標識として指定してください。
  • 行番号およびページ・オーバーフローについて INFDS のプリンター・フィード バック・セクションを検査してください。 詳細については、「IBM® Rational® Development Studio for i: ILE RPG 解説書」を参照してください。
  • 1 ページ当たりの出力行数を数えてください。
  • 出力命令を指定した演算仕様書の 73 ~ 74 桁目に標識を指定することによ って、あるいはエラーの処理ができる INFSR を指定することによって、ファイ ルの例外 / エラーを検査してください。 INFDS には、ファイルの例外 / エラーに関する詳細情報が入っています。 例外およびエラー処理の詳細については、例外の処理を参照してくだ さい。

プログラム記述または外部記述ファイルの場合には、ファイル仕様書に キーワード OFLIND (オーバーフロー標識) を使用して標識 *IN01 ~ *IN99 を指定することができます。 この標識は、行がオーバーフロー行に印刷されるか、あるいは 行送り操作またはスキップ操作中にオーバーフロー行に達したか、これを超えた時 に、オンに設定されます。 標識を使用して、オーバーフロー条件への応答を 条件付けることができます。 この標識は、オーバーフロー標識 (*INOA - *INOG、*INOV) が実行するような 、RPG オーバーフロー論理を条件付けしません。 標識をオフに 設定することはユーザーの責任です。

プログラム記述と外部記述の両方のファイルの場合には、行番号およびページ 番号は、ファイルの INFDS のプリンター・フィードバック・セクションで使用可能 です。 この情報をアクセスするためには、 ファイル仕様書に INFDS キーワードを指定してください。 この仕様書では、367 ~ 368 桁目に行番号を定義し、データ構造の 369 ~ 372 桁目に ページ番号を定義してください。 行番号とページ番号の両方のフィールドとも、小数部を持たない 2 進数として定 義しなければなりません。 INFDS はプリンター・ファイルに対するすべての出力操作の後に更新されるので、 これらのフィールドを使用して、プログラム中に行カウントの論理をもたずに 現在の行およびページ番号を判別することができます。
注: プリンター・ファイルをディスクなどの別の装置に一時変更した場合 には、INFDS のプリンター・フィードバック・セクションは更新されず、行カウントの論理は正しく なくなります。

プログラム記述 PRINTER ファイルの場合には、以下の項で説明する オーバーフロー標識およびフェッチ・オーバーフロー・ルーチン論理が 適用されます。