DSPLIBLは、AS400 / IBM i で現在のジョブが参照するライブラリリストを確認するコマンドです。初心者には地味に見えますが、本番・検証・開発の取り違えを防ぐうえで非常に重要です。
同じ名前のプログラムやファイルが複数ライブラリにある現場では、どの順番でライブラリを見ているかによって実行結果が変わります。DSPLIBLは、その前提を確認する入口です。
DSPLIBLで確認すること
| 確認 | 意味 |
|---|---|
| ライブラリの順番 | *LIBL指定時にどのライブラリが優先されるかを見る |
| 本番ライブラリ | 本番作業で正しい環境を見ているか確認する |
| 検証・開発ライブラリ | テスト中に本番を参照していないか見る |
| QTEMP | 一時オブジェクトや中間ファイルの影響を考える |
| QGPLなど共通ライブラリ | 共通オブジェクトの参照を確認する |
本番作業前の使い方
- 作業前にDSPLIBLで現在のライブラリリストを見る
- 対象プログラムやファイルをWRKOBJで確認する
- 本番ライブラリと検証ライブラリの名前を声に出して確認する
- *LIBL指定で意図しないオブジェクトを参照しないか確認する
- 確認記録に接続先、ユーザー、対象ライブラリを残す
WRKOBJとの使い分け
DSPLIBLはライブラリリストの順番を見るコマンドです。WRKOBJは対象オブジェクトがどのライブラリにあるかを見るコマンドです。現場では、DSPLIBLで参照順を確認し、WRKOBJで対象オブジェクトを確認する流れが安全です。
WRKOBJの詳しい見方はWRKOBJの使い方、ライブラリ全体の基本はAS400ライブラリとオブジェクト入門を確認してください。
DSPLIBLは、本番・検証・個人ライブラリの混入を見る
DSPLIBLでライブラリリストを見る時は、単に一覧を確認するだけではなく、本番ライブラリ、検証ライブラリ、個人作業ライブラリが混ざっていないかを見ます。AS400 / IBM i では同じ名前のオブジェクトが複数ライブラリに存在することがあり、ライブラリリストの順番によって実行されるプログラムや参照されるファイルが変わります。
| 確認項目 | 見る内容 | 注意点 |
|---|---|---|
| 順番 | 本番、検証、共通、個人の並び | 上位のライブラリが優先される |
| 同名オブジェクト | プログラム、ファイル、サービスプログラム | 想定外の版を実行しない |
| ジョブ差 | 対話、バッチ、JOBD、SBMJOB後の違い | 画面とバッチでLIBLが違う場合がある |
| 環境差 | 本番、検証、開発、教育環境 | 接続先を間違えない |
| 記録 | 作業前後のLIBL、変更理由 | 障害時に戻せるようにする |
ライブラリリストの確認は、CPF4101やファイル参照違い、テスト環境と本番環境の取り違えを防ぐ基本です。若手に教える時は、DSPLIBLの結果を見せるだけでなく、同名オブジェクトがある場合に何が起きるか、バッチ投入後にどのLIBLで動くかまで確認させると実務に近づきます。
まとめ
DSPLIBLは、AS400で今どのライブラリを見ているかを確認するための基本コマンドです。本番・検証・開発の取り違えを防ぐため、作業前の確認手順に必ず入れておきましょう。
検証プログラムが本番ファイルを拾う想定例
検証ライブラリのプログラムを動かしたのに本番データが見えた場合、実行を続けず、ライブラリリストと同名オブジェクトの所在を確認します。
| 確認点 | 確認内容 | 判断 |
|---|---|---|
| 現在値 | DSPLIBLで現在ライブラリとユーザー部の順序を記録する | 想定外の本番ライブラリが先にないかを見る |
| 所在 | 対象プログラムとファイルの名前、種類、全ライブラリの所在を確認する | プログラムだけ検証版でファイルが本番版になっていないかを見る |
| 再確認 | ライブラリ修飾名または管理された検証ジョブ記述で再現する | 一時的なCHGLIBLを恒久設定にしない |
ライブラリリストを変更する前に現在値を保存し、同じジョブを使う後続処理への影響を確認します。恒久対応では、ジョブ記述、配置、命名、実行手順をそろえます。
関連するAS400確認ルート
DSPLIBLは、いま実行している環境が本番なのか検証なのか、どのライブラリを優先して見ているのかを確認する入口です。ライブラリリスト違いは障害に直結するため、基本構造とコマンド逆引きを合わせて確認します。
DSPLIBLは本番作業前の取り違え防止に使う
DSPLIBLは、ただライブラリリストを見るだけのコマンドではありません。本番作業前に、今のジョブが本当に本番ライブラリを見ているか、検証ライブラリや個人ライブラリが前に入っていないかを確認するために使います。作業前後で画面を残しておくと、後から説明しやすくなります。
- 一番上に想定外のライブラリがないか見る
- 作業対象オブジェクトがどのライブラリで解決されるか確認する
- SBMJOB後にライブラリリストが変わらないか見る
- 検証作業後に個人ライブラリを戻し忘れていないか確認する