ALIAS
外部記述ファイルに ALIAS キーワードが指定された場合、別名 (代替名) があれば、RPG コンパイラーはファイルに関連付けられたフィールドにその別名を使用します。LIKEREC キーワードで定義されたデータ構造のサブフィールド名を判別するためにも、その別名を使用します。
RPG ファイルに ALIAS キーワードが指定されない、または外部フィールドに別名が定義されていない場合、
RPG コンパイラーは標準の外部フィールド名を使用します。
注: 特定の外部フィールドの代替名が引用符で囲まれている場合、標準の外部フィールド名がそのフィールドに対して使用されます。
ALIAS キーワードはすべての外部記述ファイルに対して使用できます。
ALIAS キーワードと一緒に PREFIX キーワードを指定した場合、 置換対象文字数を示す、PREFIX の 2 番目のパラメーターは、別名には適用されません。 以下の説明では、ファイル MYFILE にフィールド XYCUSTNM と XYID_NUM があり、XYCUSTNM フィールドの別名が CUSTOMER_NAME であることを想定しています。
キーワード PREFIX(NEW_) を指定した場合、2 番目のパラメーターがないため、
どの名前についても文字は置換されません。
フィールドおよび LIKEREC サブフィールドに使用される名前は、NEW_CUSTOMER_NAME および NEW_XYID_NUM になります。
キーワード PREFIX(NEW_:2) を指定した場合、別名を持たないフィールドの名前の 2 文字が置換されます。
フィールドおよび LIKEREC サブフィールドに使用される名前は、NEW_CUSTOMER_NAME および NEW_ID_NUM になります。XYID_NUM では先頭の 2 文字の "XY" が置換されますが、
CUSTOMER_NAME では文字は置換されません。
キーワード PREFIX('':2) を指定した場合、別名を持たないフィールドの名前の 2 文字が置換されます。
フィールドおよび LIKEREC サブフィールドに使用される名前は、CUSTOMER_NAME および ID_NUM になります。XYID_NUM では先頭の 2 文字の "XY" が置換されますが、
CUSTOMER_NAME では文字は置換されません。
PREFIX の最初のパラメーターにデータ構造名が含まれる場合 (例えば、PREFIX('MYDS.') など)、LIKEREC キーワードで定義されたデータ構造ではドットの前の接頭部の部分が無視されます。
外部記述ファイルに対する ALIAS キーワードの使用
最初のフィールドに ALIAS キーワードを使用して別名 CUSTOMER_NAME を CUSTNM フィールドと関連付ける、ファイル MYFILE の DDS 仕様。
A R CUSTREC
A CUSTNM 25A ALIAS(CUSTOMER_NAME)
A ID_NUM 12P 0>
ALIAS キーワードで非修飾ファイルを定義する RPG プログラムのソース。
このファイルのフィールドは次のとおりです。
- CUSTOMER_NAME (ALIAS 名を使用)
- ID_NUM (標準名を使用)
Fmyfile if e disk ALIAS
/free
read myfile;
if customer_name <> *blanks
and id_num > 0;
...
ALIAS キーワードで修飾ファイルを定義し、かつ LIKEREC データ構造を定義する RPG プログラムのソース。
このデータ構造のサブフィールドは次のとおりです。
- CUSTOMER_NAME (ALIAS 名を使用)
- ID_NUM (標準名を使用)
Fmyfile if e disk ALIAS QUALIFIED
D myDs ds LIKEREC(myfile.custRec)
/free
read myfile myDs;
if myDs.customer_name <> *blanks
and myDs.id_num > 0;
...