最初のページに戻ります。

総合の目次があるページに戻ります。

よく使うマニュアルです

Wiki

updated on 2004.06.23

3.2.メンバーについて

[ Previous ] [ HOME ] [ Upper ] [ Next ]


データの識別上、手軽なので、メンバーを複数持つことがありますが、場合によっては、あとで面倒なことになることがあります。

当然のことながら、RPGでファイルメンバーのオープンは、OVRDBFで予め、メンバー名を指定します。普段気にしていないが、何も指定しなければ、*FIRSTが選択されます(暗黙のオープン)。

ところが、全てのメンバーを一括して処理する場合、これがやっかいなのです。

考えられる方法は以下のとおりです。

  1. CPYFでFROMMBR(*ALL)として、どこかに複写してそれを使う。
  2. OVRDBFでMBR(*ALL)とする。
  3. CRTLF/ADDLFMでDATMBRS(*ALL)とする。
  4. メンバーリストをとり、プログラムのなかでその都度、OVRDBF→OPEN→処理→CLOSEを繰り返す。

上記の欠点

  1. 時間がかかる。資源の無駄。
  2. 順次処理しかできない。
  3. 後から、基礎となる物理ファイルにメンバーを追加したら、その都度RMVMとADDLFMをしなければならない。
  4. APIを使用しなければ、時間がかかる。

まともに使うなら、2と3ですが、CHAINをする時、2はできません。3ならば、CHAIN可能ですが,メンバーが増えた時、他のジョブで使用中だとできません
実際、設計の最初の段階では、考えてもいないことが後に発生して、メンバーを採用するのは『よせばよかった』と後悔することが多いです。



うまくいった例としては、

  • 全てのメンバーを一括して処理する場合、全てのジョブが終了したあとなので、RMVMとADDLFMができた
  • 論理ファイル作成以降、物理ファイルのメンバーは増えない
  • メンバー全体を対象とすることが絶対になかった

という場合です。


[ Previous ] [ HOME ] [ Upper ] [ Next ]

You are at K's tips-n-kicks of AS/400

 

SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送