2018.05.24
 

上書き復元の際に、リネームされないようにしたい

Question

既存のオブジェクトがシステムに存在している状態で、テープから上書き復元をしようとしたところ、既存のオブジェクトが自動的にリネームされ、テープからオブジェクトが復元されました。

どうしてこのような動きになるのでしょうか。また、上書き復元する方法はありますでしょうか。

Answer

リネームされたオブジェクトはファイルであるかと思います。通常は、ファイルレベルIDが異なると復元はされませんが、パラメータMBROPT(*ALL)」 および「ALWOBJDIF(*ALL)」が指定されていると、差異があっても復元することができます。その場合、復元時に既存オブジェクトを自動でリネームし、復元オブジェクトがそのまま復元される形になります。

この状態が発生したと考えられます。

ファイルレベルIDが異なっていても復元させたい場合は、 RSTOBJのパラメータに、「ALWOBJDIF(*COMPATIBLE)」を指定することで可能になります。

条件があり、復元元と復元先の「様式レベルID」が同じである必要がございます。 この情報は、DSPFDの「レコード様式リスト」にて確認することができます。

以下例:

ヒント02

ファイルレベルIDは、ファイル毎に違うIDが割り振られますが、様式レベルIDについては、同じDDSで作成していると同じ値になるようです。
※ソースファイルおよびDDSなしで作成したファイルは、様式レベルIDが異なってしまいます。

したがって、様式レベルIDが同じであれば、「ALWOBJDIF(*COMPATIBLE)」を指定することで、上書き復元が可能になります。

様式レベルIDが異なっている場合は、復元されませんので、ログを確認し、別名あるいは別ライブラリーに復元し、CPYFなどの対応をしてください

ページトップ

ボタン