($title_img_alt)

こちらからの投稿は、先頭に表示されているコメントへの返信になります。
RENAMEについて AS400初心者 さん [ 5月11日(土) 22時33分 ]
RENAMEについて教えてください。
例えば下記のようにAをSETLL READEしたあと、BのファイルをCHAINしてUPDATEする処理があった場合、
Aファイルのレコードの位置づけはどうなりますか?。BファイルのCHAINよりAファイルのレコードの
位置づけは変わったりしますか?
Aは論理ファイル、Bは物理ファイルとし、Aはリネームして別名A1とします。AのもとはBの
物理ファイルとします。

 KEY1 SETLL A
 KEY1 READE A
      DOW  EOF(A) = *OFF
  
 AAA  CHAIN B
      IF   FOUND(B) 
      UPDATE B
      END IF

 KE1  READE A
      ENDDO
RE:RENAMEについて IKD さん [ 5月12日(日) 8時42分 ]
前提としてファイルAのアクセス・パスの保守 (MAINT)が *IMMED である場合ですが
ファイル B へのCHAINによってファイルA の次に読み込むアクセス・パスが
影響を受けて変わることはありませんが ファイルBのUPDATEによってファイルAの
アクセス・パスが変更されてしまうと次に読み込むレコードは変わります。
これは以前に検証済みです。
RE:RENAMEについて AS400初心者 さん [ 5月12日(日) 16時14分 ]
ご回答ありがとうございます。
CHAINだけだとAファイルの読み込み位置については影響がでないことは分かりました。
BファイルのUPDATEにより、物理ファイルのレコード順が変わった場合は、
次に読み込むレコードも変わってしまう認識であってますでしょうか?
RE:RENAMEについて IKD さん [ 5月13日(月) 6時45分 ]
その通りです。
UPDATEによってアクセス・パスも更新されてまうと
次に読み込むレコードの順序が変わっていまいます。
この症状を初めて見たときはOSのバグかと思ってしまいましたが
そうではありませんでした。
正常な結果です。

お名前

パスワード

メールアドレス

タイトル

ホームページ

アドレス

項目