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

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

よく使うマニュアルです

Wiki

updated on 2004.06.23

a.8. 2000年問題 其の捌

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


マシンの設定も終わり、いよいよ始まり。だいたいの修正分量は、

種類

ソースメンバー数

ステップ数

RPG 429 172,872
CLP 356 33,907
RPG ILE 143 49,687
DSPF 263  
DDS(PF) 292  
合計 1,483 256,466

概算です。例の、QRYで出てきたフィールドを、一つ一つ、FNDSTRPDMで検索していった結果です。このジョブ、一個ずつバッチ投入したけど、全部でジョブ8,000以上で、一週間動いていた。プログラム一個にすると、止められないんですよね。一個一個別ジョブなら、HLDJOBQできるので、こうしました。それから、きっと、これは、減ったり、増えたりするでしょう。でも、だいたいこんなあたりでしょう。

さて、上記の分析とゆーか、結果を目の当たりにして、今思うこと。

知らない方がよかった...

まず、物理ファイル292個は少ないようで、多い。一個修正すれば、波紋の様に修正の波が広がる。さらに、当然、ファイル一個につき、旧レイアウトから新レイアウトへの変換プログラムが要る。それだけで、気が遠くなりそう。もう、無茶苦茶。

さて、気を取り直して、なにからやろうかねぇ。実は、この修正作業、自分ともう一人の2人でやります。トラブル対応はするけど、こんなの、「完璧に」できるんだろうか。ギネスに挑戦の気分だよ。

  1. まず、物理ファイルを全部修正する。
  2. 旧レイアウトと新レイアウトを比較して、フィールドの桁数が変わったものだけ、転送するRPGコードの自動生成のツールを作る。
  3. 変更ファイルに関連したものを、ライブラリー単位にしてゆく。
  4. 後は、惰性でやる。

ここまで決めて、なかなかやる気にならない。


ある方から、2000年の修正で、次のことに注意して、とメールを頂きました。

更新の度に1900を加算してしまったものがありました。

0098/04/01 → 1998/04/01 → 3898/04/01 → 5798/04/01

教訓:テストは必ず2サイクル以上行なうこと。

おお、わたしもやってしまいそう。ありがとうございます。みんなも気をつけよう!


ところで、転送プログラムは、途中までできたのだが、あーあ、いろいろ悩む。まず、入力して、書き出すだけのプログラムになるのだけど、

  • レコード様式一緒だから、リネームもコードしなくてはいけない。(F仕様書)
  • フィールドの桁が違うのなら、そのフィールドもリネームのコードしなくちゃいけない。(I仕様書)ILEで、PREFIX(忘れた)をすれば、フィールド全部接頭辞がつくんだけど、そうすると、変更のないフィールドも転送しなくてはいけない。
  • コンパイル時に、同一ファイルじゃいけないので、旧ファイルを統一的にリネームしたほうが楽みたいだ。
  • このツールで、コード生成時点には、旧レイアウトと新レイアウトの両方とも、実在しなくてはいけない。間違えて旧ファイルを消さないように。
  • この一連のプログラムの起動も自動的にコード化した、CLPもほしい。手作業は、簡単なだけに、ポカミスをしそうです。

それにしても、ファイトがでないよーーー。のんびり彼女とデートしている、町の、のんきな奴を、はり倒したい!

(続けたくないけど)続く...


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

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

 

Ads by TOK2