%FIELDS (更新するフィールド)

%FIELDS(name{:name...})

フィールドのリストは、自由形式グループでコーディングされる入出力操作 UPDATE に対する最後の引数として指定することができます。指定されたフィールドのみが更新され、入出力バッファーに入れられます。

注:
  1. それぞれの名前は、そのレコードの入力バッファー内のフィールド名になっている必要があります。フィールドの名前が変更された場合、 内部名が使用されます。
  2. 変更の始まりこの名前は、更新対象のレコードのファイル名または形式名を EXTNAME/LIKEREC キーワードに指定して定義されているデータ構造のサブフィールドになります。 使用されたキーワードと一緒に *INPUT を指定する必要があり、*NULL を指定してはなりません。 指定する名前には、入力フィールドに対応するサブフィールド名が含まれていなければなりません。 修飾データ構造の場合には、サブフィールドの簡易修飾名を使用します。変更の終わり
  3. この名前は、前述のように定義されたデータ構造の LIKEDS キーワードを使用して定義されるデータ構造のサブフィールドになります。
%FIELDS は更新するフィールドのリストを指定します。 たとえば、次のようになります。
図 1. フィールドの更新
 /free
   chain empno record;
   salary = salary + 2000;
   status = STATEXEMPT;
   update record %fields(salary:status);
 /end-free