サポートチーム便り2013.03.21
結合論理ファイル作成について
Question
結合論理ファイルを作成してRPG等々に使用しています。DDSを使って定義するよりも簡単で便利な方法があれば教えてください。
Answer
まず、結合論理ファイルを使用することは、基本的にほかの手段と比べてあまり良い方法とはいえません。たとえばRPG内で結合論理ファイルを使用したい時、1次ファイルをREADしたあと2次ファイルをCHAINするというロジックを、結合論理ファイルの代替とした方が、容易かつ効果的です。結合論理ファイルだと、UPDATEやINSERTにおいて制約がありますが、物理ファイルであれば融通が利きます。また、論理ファイルと違って余分な索引によるオーバーヘッドが発生しません。
そのほか、OPNQRYFでJFLDパラメータを使用することもできます。JDFTVALも使用することが可能です。JDFTVAL を指定すると、対応するレコードが2次ファイルにない時も1次ファイルにさえレコードがあればそのレコードが表示されます。JDFTVAL の指定がない場合には、対応するレコードが2次ファイルにないと1次ファイルのレコードも無視されます。また、SQL文を使って結合して閲覧するという手段もあります。
結合論理ファイルを作らない方が効果的な場合もありますので、DBを含めシステム設計時には良く検討してください。