0

VSAMファイルのバックアップを取り、その後に同じVSAMファイルの標準のDelete-Define-Reproを実行するジョブがあります。存在しないファイルを削除しようとするシナリオを処理するために、Deleteがゼロ以外の戻りコードを返す場合はMAXCC / LASTCCを0に設定し、エラーがないかのようにプロセスを続行するという標準的な方法に従います。

ただし、あるユーザーがファイルを開いたり、他のジョブでファイルを読み取ったりしたために、削除が機能しないという状況に直面することがあります。この場合、ファイルがすでに存在しているために新しいVSAMファイルを定義しているときにジョブが失敗します(削除でパージできませんでした)。

この状況の回避策はありますか?または、他のプロセス/ユーザーによって保持されている場合でも、ファイルを強制的に削除できますか?

読んでくれてありがとう!

4

1 に答える 1

2

「他の何か」によって使用されている VSAM ファイル (またはその他のファイル) を削除することはお勧めできません。

DELETE から特定の値をテストしてみませんか?

バックアップを行ってから削除/定義する場合は、ファイルを排他的に制御することをお勧めします。そうしないと、何かが台無しになります。

DISP=OLD を使用して問題の VSAM ファイルである DSN を持つ DD を配置して、ファイルが何も使用されていない場合にのみジョブが選択されるようにすることができます。

バックアップはどうしていますか?とにかく、他のジョブが同時にファイルにアクセスしているのはなぜですか? これは「テスト」環境にありますか?どのタイプの VSAM ファイルですか? なぜ REPRO を行っているのですか? それが最善の方法だと思いますか?

これらすべてを知らなければ、実際の答えは難しいです。

于 2013-01-26T18:47:59.717 に答える