RPGの外部記述ファイルでは一般にライブラリー・リストに従って外部ファイルが検索されて、
実行が行われる。
しかし外部記述ファイルのライブラリー名を明示的に指定したい場合がなかったであろうか?
例えば CGI は、どのスレッドで実行されるか不明であるのでライブラリー・リストに依存する
ことはできない。
そこでCGI 内部で OVRDBF によってライブラリーを指定してからユーザー・オープンでファイル
をオープンする手法がとられてきた。
使用後にはクローズしてから DLTOVR を実行する必要もあった。
このような冗長な処理を避けることができる「EXTFILE」というキー・ワードがV5R1M0 から
追加されている。
ファイル仕様書で EXTFILE を指定して、パラメータの内容をD仕様書で記述する。
0001.00 H DFTNAME(RPG005) DATEDIT(*YMD/)
0002.00 F********** EXTFILE サンプル *************************************
0003.00 FSHOHIN IF E K DISK EXTFILE(SHOHIN_LIB)
0004.00 F*****************************************************************
0005.00 D SHOHIN_LIB S 21A INZ('QTRFIL/SHOHIN')
0006.00 C *LOVAL SETLL SHOHIN
0007.00 C DO *HIVAL
0008.00 C SETOFF 50
0009.00 C READ SHOHIN 50
0010.00 C 50 LEAVE
0011.00 C END
0012.00 C SETON LR
0013.00 C RETURN
0014.00 C END TAG
SHOHIN_LIB というフィールドは固定情報でなくてもよい。
EXTFILE キーワードを使用すれば CGI では効果的である。
ただしコンパイル時にはライブラリー・リストは従来どおり必要である。