取引ファイルを一覧表示する単純なRDMLプログラム。取引のタイプや状態については、その説明も表示します。

     GROUP_BY   NAME(#TRANS) FIELDS(#TRANNUM #TRANDATE #TRANTIME
           #TRANTYPE #TRANDESC #TRANUSER #TRANSTATE #STATDESC)
 
SELECT     FIELDS(#TRANS) FROM_FILE(TRANS)
FETCH      FIELDS(#TRANS) FROM_FILE(STATES)
           WITH_KEY(#TRANSTATE)
FETCH      FIELDS(#TRANS) FROM_FILE(TRNTYP)
           WITH_KEY(#TRANTYPE)
UPRINT     FIELDS(#TRANS)
ENDSELECT

ファイルTRANSに1万のレコードがあれば、このプログラムはデータベースに、(10000 + 10000 + 10000) = 30000回アクセスすることになります。

しかし、作業リストを使う、FETCHコマンドにKEEP_LASTパラメータを指定する、などの改訂により、処理性能を大きく改善することができます。

  • No labels