AS400 CPF4101の確認ポイント|ファイル・メンバー・ライブラリリスト・OVRDBFを疑う

AS400 / IBM i で CPF4101 が出ると、ファイルが見つからない、メンバーがない、ライブラリリストが違う、OVRDBFで差し替えた先が違う、JOBDの初期ライブラリリストが違う、といった原因が考えられます。RPGやCLの実行時、夜間バッチ、Web/API連携、SQL実行で見かけることがあります。

この記事では、CPF4101を見た時に確認する順番を、AS400保守現場の目線で整理します。メッセージ本文だけで判断せず、ジョブログ、ライブラリリスト、対象ファイル、メンバー、権限、OVRDBFの有無を確認します。

CPF4101は、若手向けのエラー調査研修にも使いやすい

CPF4101のようなファイルオープン系エラーは、メッセージIDだけを検索して終わりにすると、次の障害でも同じ確認漏れが起きやすくなります。ファイル、メンバー、ライブラリリスト、OVRDBF、権限、ジョブの実行環境を順番に見る癖を付けることが大切です。

CPF4101で最初に確認すること

  • ジョブログで対象ファイル名、ライブラリ名、メンバー名を確認する
  • 実行ジョブのライブラリリストを確認する
  • DSPFD、DSPFFD、DSPPFMでファイルとメンバーの状態を見る
  • OVRDBFやジョブ記述で参照先が変わっていないか確認する
  • 実行ユーザーの権限を確認する

ライブラリリストのずれを疑う

CPF4101では、ファイルが存在しないのではなく、実行ジョブから見えていないだけのことがあります。対話型ジョブでは動くのに夜間バッチで失敗する場合、JOBDやSBMJOB時のライブラリリストが違う可能性があります。

特に、本番、検証、開発のライブラリ名が似ている環境では、想定と違うライブラリを見ていることがあります。ジョブログに出たライブラリ名を必ず確認します。

OVRDBFやメンバー指定を見る

CLでOVRDBFを使ってファイルやメンバーを差し替えている場合、差し替え先が存在しない、メンバー名が違う、ジョブ終了時に想定と違う状態が残る、といった理由でCPF4101が出ることがあります。OVRDBFを使う処理では、元のファイル定義だけでなく、実行時の上書き指定を確認します。

OVRDBFの基本は OVRDBFとは?ファイル上書き指定の確認ポイント、バッチ実行の見方は SBMJOB・WRKSBMJOB・DSPJOBDの確認手順 を確認してください。

Web/API連携で出た場合

Web化やAPI化でCPF4101が出る場合、5250画面とサーバージョブでライブラリリスト、ユーザー、QTEMP、ジョブ記述が違うことがあります。RPGやCLをそのまま呼ぶ時は、対話型ジョブ前提の環境依存を先に洗い出します。

Web/API化の確認は AS400のRPGをWeb化する前に確認すること、メッセージIDの入口は AS400メッセージID・エラーコード索引 を参照してください。

対応前チェックリスト

  • ジョブログのCPF4101前後を保存したか
  • 対象ファイル、ライブラリ、メンバーを控えたか
  • 実行ジョブのライブラリリストを確認したか
  • OVRDBF、JOBD、SBMJOBの指定を確認したか
  • 権限と所有者、実行ユーザーを確認したか。権限不足はCPF4101だけで決めず、CPF9802など前後メッセージも合わせて確認したか

CPF4101は「ファイルがない」とだけ捉えると遠回りになります。実行ジョブから見えるライブラリ、メンバー、OVRDBF、権限を順番に確認すると、原因を絞りやすくなります。

関連するAS400確認ルート

CPF4101はファイル未検出だけでなく、メンバー、ライブラリリスト、OVRDBF、実行環境差を切り分けます。

CPF4101を相談する前に確認する情報

CPF4101は「ファイルがない」だけでなく、ライブラリリスト、メンバー、OVRDBF、JOBD、実行環境の違いで発生することがあります。権限関連はCPF9802など前後メッセージを分けて確認します。本番で発生した場合は、対象ファイルだけを直す前に、どのジョブで、どのライブラリを見に行き、業務にどの影響が出ているかを分けて残します。

確認すること次に読む記事
本番影響と初動判断本番トラブル初動チェックリスト
ファイル定義と実データDSPFFD / DSPPFMの確認手順
OVRDBFや参照先変更OVRDBFの使い方と注意点
対象データの確認Query・SQLデータ確認チェックリスト

CPF4101が本番ジョブで発生し、ライブラリリストやOVRDBFの切り分けに迷う場合は、ジョブ名、対象ファイル、メンバー、ライブラリリスト、発生時刻、業務影響を整理してお問い合わせから相談できます。

CPF4101を検索した時の最短確認順

CPF4101は「ファイルがない」と決めつけると遠回りになります。実際には、対象ファイルは存在していても、実行ジョブのライブラリリストから見えていない、メンバー指定が違う、OVRDBFで別ファイルへ向いている、権限が足りない、というケースがあります。対話型では動くのに夜間バッチやAPI連携で失敗する場合は、ジョブ環境の違いを疑います。

確認順見るもの判断すること
1ジョブログのCPF4101前後どのプログラムが、どのファイルを開こうとしたか
2ライブラリリスト対話型とバッチで参照先が違わないか
3WRKOBJ / DSPFD / DSPFFDファイルやメンバーが存在するか、定義が合うか
4OVRDBF / JOBD / SBMJOB実行時に参照先が差し替わっていないか
5権限実行ユーザーが対象ライブラリやファイルを読めるか

OVRDBFが関係しそうな場合は OVRDBFの確認ポイント、ジョブログの読み方は AS400ジョブログ確認手順 も合わせて確認してください。

参考:IBM公式ドキュメント(OVRDBF)

本記事で扱った OVRDBF の全パラメーターと指定できる値は、IBM公式ドキュメントで確認できます。指定できる値や既定値はOSリリースによって異なるため、本番環境では自社のリリースに合わせて確認してください。