外部記述ファイルの場合には、出力仕様書はオプションです。 RPG は、外部記述ファイルの出力仕様書を 必要とせずに外部レコード様式記述 を使用して出力レコードを記述する、WRITE や UPDATE などのファイル命令コー ドをサポートします。
出力仕様書を使用して、データを書き出す時点を制御するか、あるいは書き出す 選択フィールドを指定することができます。 外部記述ファイルのフィールド記述行の有効な項目は、出力標識 (21 〜 29 桁 目)、フィールド名 (30 〜 43 桁目)、および後で消去 (45 桁目) です。 外部記述ファイルに書き出されるフィールドの編集語および編集コードは、 ファイルの DDS で指定します。 外部記述ファイルの場合には、ページ・オーバーフロー・ルーチン (18 桁目) またはスペース/スキップ (40 〜 51 桁目) などの装置依存の従属機能は RPG プログラムでは有効ではありません。 オーバーフロー標識は 外部記述ファイルには正しくありません。 DDS の中で編集を指定する方法の説明については、Web サイト http://www.ibm.com/eserver/iseries/infocenter で iSeries Information Center の中の 『データベース』カテゴリーの『DB2 Universal Database for AS/400』の節を参照してください。
外部記述ファイルに出力仕様書を使用する場合には、7 〜 16 桁目にファイル名 の代わりにレコード様式名を指定します。
外部記述ファイル中のすべてのフィールドが出力レコードに入れられる場合に は、フィールド記述行の 30 〜 43 桁目に *ALL を指定してください。 *ALL を指定した場合には、そのレコードに他のフィールド記述行を指定するこ とはできません。
出力レコードに一定のフィールドだけを入れたい場合には、30 〜 43 桁目に フィールド名を入力してください。 これらの桁に指定するフィールド名は、入力仕様書でフィールドの名前が変更され ない限り外部レコード記述で定義されたフィールド名でなければなりません。 図 156 を参照してください。
外部記述ファイルの出力仕様書の使用に関する次の考慮事項に注意してくださ い。
*.. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... * OFilename++DF..N01N02N03Excnam++++B++A++Sb+Sa+............................* OITMREC D 20 O..............N01N02N03Field+++++++++YB.End++PConstant/editword/DTformat++ O *ALL 1 * OSLSREC D 30 O SLSNAM 2 O COMRAT O 15 BONUS *
新しいレコードの作成の場合、レコードのすべてのフィールドは、 プログラム中のレコードのそのフィールドに対する現在の値を使用して 外部記述レコード ITMREC に書き出されます。
新しいレコードを作成するために、標識 30 がオンの時に、フィールド SLSNAM および COMRAT が外部記述レコード SLSREC に書き出されます。 フィールド BONUS は標識 30 および 15 がオンの場合に、 書き出されます。 レコード中のその他のフィールドはすべて、デフォルト値として書き出されます。 これはデータ・タイプによって異なります (例えば、文字 フィールドの場合はブランクで、数字フィールドの場合はゼロです)。
(C) Copyright IBM Corporation 1992, 2006. All Rights Reserved.