AS400 / IBM i の夜間バッチが MSGW で止まった時、急いで応答したくなります。しかし、応答値の意味を確認しないまま進めると、処理を止めすぎたり、危険な状態で続行したりすることがあります。
この記事では、夜間バッチがMSGWで止まった時の初動対応を、現場の実例に近い形で整理します。
想定する状況
| 項目 | 例 |
|---|---|
| 発生時刻 | 深夜2時台 |
| 状態 | WRKACTJOBで対象ジョブがMSGW |
| 処理 | 売上締め前の集計バッチ |
| 影響 | 後続の請求、帳票、外部連携が遅れる可能性 |
まず見るコマンド
WRKACTJOB WRKJOB JOB(123456/BATCH/SALESCLS) DSPJOBLOG WRKSPLF
応答前に確認すること
| 確認項目 | 理由 |
|---|---|
| メッセージID | 何に対する応答待ちかを判断する |
| 応答候補 | C、I、R、Dなどの意味を確認する |
| 対象プログラム | どのRPG/CLで止まったかを見る |
| 対象ファイル | 未検出、ロック、権限、データ異常を疑う |
| 後続ジョブ | 止めるとどこまで遅れるかを見る |
| 途中更新 | 再実行してよい状態かを判断する |
よくある判断
応答値は環境やメッセージによって意味が変わるため、必ずメッセージ本文とヘルプを確認します。一般論として、再試行、無視、取消、ダンプ取得などの選択肢がありますが、業務更新が絡む場合は「続行できるか」より「続行して業務的に正しいか」を見ます。
やってはいけない対応
- メッセージIDを控えずに応答する
- 応答候補の意味を確認せずにCやIを返す
- 後続ジョブの有無を確認せずに再実行する
- 途中更新や出力済みファイルを見ずにリランする
対応メモの例
| 項目 | 残す内容 |
|---|---|
| ジョブ | ジョブ名、ユーザー、ジョブ番号 |
| MSGW | 発生時刻、メッセージID、応答候補 |
| 判断 | 応答した値、判断理由、承認者 |
| 影響 | 後続ジョブ、帳票、外部連携、再実行有無 |
関連して読む記事
バッチ全体の確認は AS400バッチ処理の確認手順、ジョブログの読み方は ジョブログ確認手順、CLのMONMSGは AS400のCLとは を確認してください。
まとめ
MSGWは、ジョブが判断を待って止まっている状態です。応答前にメッセージID、応答候補、対象プログラム、対象ファイル、後続ジョブ、途中更新を確認すると、安全に判断しやすくなります。
