ページ・オーバーフローの処理
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 ファイルの場合には、以下の項で説明する オーバーフロー標識およびフェッチ・オーバーフロー・ルーチン論理が 適用されます。