AS400 / IBM i の古い現場では、データ確認や帳票出力に QUERY/400 が残っていることがあります。WRKQRY や RUNQRY という言葉が出た時は、抽出条件、対象ファイル、出力先、実行ユーザー、機密情報の扱いを確認してから使うことが大切です。
この記事では、QUERY/400を「古いから置き換える」だけでなく、既存業務の抽出条件を安全に読み解くための入口として整理します。SQLやCPYTOIMPFへ移す前の棚卸しにも使えます。
QUERY/400で最初に見ること
| 確認項目 | 見る理由 | 関連ページ |
|---|---|---|
| 対象ファイル | どのライブラリ・物理ファイル・論理ファイルを見ているか確認する | DSPFFD/DSPPFM |
| 抽出条件 | 日付、得意先、商品、状態区分などの条件漏れを避ける | データ抽出ガイド |
| 出力項目 | 個人情報、単価、原価、取引先情報が含まれていないか確認する | 機密保護・権限確認 |
| 出力先 | 画面、スプール、ファイル、CSV化のどれかで扱いが変わる | WRKSPLF |
| 実行環境 | ユーザー、ライブラリリスト、権限が違うと結果が変わる | ライブラリ確認 |
WRKQRYとRUNQRYで注意すること
WRKQRY はQueryの定義を扱う入口、RUNQRY はQueryを実行する時に見かける入口です。現場では、誰かが作ったQueryをそのまま使い続けていることがあります。条件の意味が分からないまま実行すると、古い条件、テスト用条件、対象外データ混入、出力先ミスにつながります。
- Query名だけでなく、対象ファイルとライブラリを確認する
- 抽出条件の日付範囲、コード範囲、除外条件を確認する
- スプールや出力ファイルに機密情報が残らないか確認する
- 夜間バッチや外部連携で同じQueryが使われていないか確認する
- SQLへ置き換える場合は、件数・条件・並び順を比較する
SQLやCPYTOIMPFへ移す前の棚卸し
QUERY/400をSQLやCSV出力へ置き換える場合は、まず現在のQueryが何をしているかを整理します。いきなりSQLを書き直すのではなく、対象ファイル、結合条件、選択条件、並び順、集計、出力項目、利用者を一覧化します。
CodexやAIに相談する時の注意
Query定義や出力結果をAIに相談する時は、会社名、取引先名、商品名、個人情報、ライブラリ名、ファイル名、実データをマスキングします。AIには「条件の整理」「SQL移行時の比較観点」「確認チェックリスト化」を任せ、本番実行や抽出可否の判断は社内手順で行ってください。
AS400保守で安全にAIを使う考え方は、AS400保守向けCodex研修 にまとめています。
関連: AS400のデータをCSVへ出す時は、CPYTOIMPFでCSV出力する前の確認ポイント で、対象ファイル、抽出条件、文字化け、IFS(統合ファイルシステム)、機密情報を整理してください。
関連: 物理ファイルと論理ファイルの依存関係を見る時は、DSPDBRで物理ファイルと論理ファイルの関係を見る も確認してください。削除、復元、改修前の影響調査で見落としを減らせます。
Query/400は業務確認用の出力条件を残す
WRKQRYやRUNQRYで抽出する場合は、抽出条件、対象ファイル、出力順、集計有無を残しておくと、後から同じ結果を再現しやすくなります。現場では「前回と同じ抽出」が必要になることが多く、条件の記録がないと確認に時間がかかります。
CSV出力やSQLで代替できる場面もありますが、既存のQuery/400が業務確認に使われているなら、急に置き換えず、誰が何の判断に使っているかを把握するのが安全です。データ抽出の相談では、帳票用途なのか、調査用途なのか、定例運用なのかを分けて整理します。
古いQUERY/400を再利用する時の想定例
前年に使った売上一覧の照会を再実行する場合、名前が同じでも抽出条件や出力先が現在の運用に合うとは限りません。
| 確認点 | 確認内容 | 判断 |
|---|---|---|
| 参照先 | QUERY定義が参照するファイル、ライブラリ、メンバーを確認する | ライブラリリストで別環境のファイルを拾わないようにする |
| 条件 | 日付、状態コード、得意先範囲、結合条件を確認する | 前年固定値や廃止コードが残っていないかを見る |
| 出力 | 画面、印刷、出力ファイルのどこへ結果が出るか確認する | 既存ファイルの置換や大量出力の影響を事前に判断する |
本番でRUNQRYする前に、件数を絞った条件や検証環境で結果を確認します。定義を変更する場合は元のQUERYを直接上書きせず、利用者と用途を確認して版を分けます。