AS400のDSPFFDとDSPPFMの使い分け|ファイル定義とデータ確認を画面で解説

AS400(IBM i)の保守で、物理ファイルや論理ファイルを調べる時に使う代表的な画面が DSPFFDDSPPFM です。

どちらもファイルを確認するコマンドですが、見ているものは違います。DSPFFDはフィールド定義、DSPPFMは物理ファイルのメンバー内容を見る画面です。初心者のうちは名前が似ていて混乱しやすいですが、保守では役割を分けて覚えると調査がかなり楽になります。

DSPFFDとDSPPFMの違い

コマンド見るもの現場で使う場面
DSPFFDフィールド定義、桁数、型、見出しなどRPG修正、帳票修正、外部連携項目の確認
DSPPFM物理ファイルのメンバー内データ処理前後のデータ確認、単体テスト、障害調査

DSPFFDで見るところ

DSPFFDは、ファイルのフィールド定義を確認する時に使います。RPGやCLの保守では、ソースだけを見ていても、実際のファイル定義とズレていることがあります。特に桁数、属性、フィールド名、キー項目の確認は重要です。

AS400のDSPFFD画面。ファイルのフィールド定義を確認する例
DSPFFDは、フィールド定義を確認する画面です。桁数、型、フィールド名を見て、ソースや帳票、外部連携とのズレを調べます。

DSPPFMで見るところ

DSPPFMは、物理ファイルの中身を確認する画面です。処理後にデータが作成されたか、更新されたか、想定外の値が入っていないかを見る時に使います。

ただし、本番環境でDSPPFMを見る時は、対象ライブラリと対象ファイルを必ず確認します。画面を見るだけでも、権限や運用ルールによっては注意が必要です。

AS400のDSPPFM画面。物理ファイルのメンバー内容を表示する例
DSPPFMは、物理ファイルのメンバー内容を確認する画面です。単体テストや障害調査では、処理前後のデータ確認に使います。

保守での確認順

順番確認すること判断すること
1対象ライブラリ本番、テスト、開発のどこを見ているか
2対象ファイルPFかLFか、見たいファイルが正しいか
3DSPFFD桁数、型、フィールド名がソースと合っているか
4DSPPFM実データが想定通りか
5関連処理RPG、CL、帳票、外部I/Fに影響がないか

初心者がやりがちなミス

初心者が危ないのは、ファイル名だけで判断してライブラリを見ないことです。AS400では同じ名前のファイルが複数ライブラリに存在することがあります。ライブラリーリストの上から参照されるので、どのライブラリのファイルを見ているかを確認しないと、テスト環境のつもりで本番を見ていた、という事故につながります。

関連して読む記事

販売管理保守でDSPFFDを見る場面

販売管理システムの保守では、受注、出荷、在庫引当、売上計上、請求、外部I/Fなどで同じようなファイル名が何度も出てきます。プログラムを修正するときに、画面や帳票の項目名だけを見て判断すると危ないです。私はまず対象ライブラリと対象ファイルを確認し、そのうえでDSPFFDでフィールド定義を見ます。

特に見るのは、桁数、型、少数桁、キー項目、参照しているファイル名です。数値項目の桁を誤ると、単体テストでは通っても本番データ量や実データの桁で落ちることがあります。外部連携CSVや帳票出力では、項目順のズレも事故になりやすいです。

確認する項目見る理由初心者が間違えやすい点
ライブラリ本番・テスト・開発のどの定義を見ているか確認するため*LIBL任せで別ライブラリの同名ファイルを見てしまう
フィールド名ソース、帳票、外部連携の項目と突き合わせるため画面項目名だけで判断してしまう
桁数・小数桁金額、数量、単価、在庫数の桁あふれを防ぐためフル桁入力テストを省いてしまう
キー項目論理ファイルや検索順、更新対象の判断に使うためPFとLFの違いを見ずに修正してしまう

DSPPFMは実データを見る画面だと割り切る

DSPPFMは、定義ではなく実データを確認する画面です。単体テスト後にデータが作成されたか、更新前後で値が変わったか、バッチ処理の結果が想定どおりかを見るときに使います。ただし、DSPPFMで見えている値だけを根拠にして修正判断をするのは危険です。定義はDSPFFD、実データはDSPPFM、と役割を分けて見る方が安全です。

データリカバリーや本番確認では、ライブラリ名を必ず明示します。AS400では同名ファイルが複数ライブラリに存在することが珍しくありません。どのライブラリのどのファイルを見ているのかを確認しないまま作業すると、テスト環境を見ているつもりで本番を見ていた、またはその逆が起きます。

場面DSPFFDDSPPFM
プログラム修正前項目定義、桁、型を確認する必要なら既存データの傾向を見る
単体テスト後定義変更が想定どおりか確認する作成・更新されたデータを確認する
障害調査エラー項目の定義を確認する異常値や未更新データを確認する
外部連携桁数、型、項目順の元情報を見る出力前後の値を確認する

関連して読む記事

まとめ

DSPFFDはファイル定義を見る画面、DSPPFMは物理ファイルの中身を見る画面です。どちらも保守ではよく使いますが、まず確認するべきなのは対象環境です。ライブラリ、ファイル、メンバーを確認してから画面を見る。この順番を守るだけで、AS400保守の調査はかなり落ち着いて進められます。