AS400 ILE RPGとは?固定形式・フリーフォーマット・保守で見るポイント

AS400 / IBM i のRPGを調べていると、RPG、RPG III、RPG IV、ILE RPG、固定形式、フリーフォーマットという言葉が出てきます。初めて保守に入ると、どれが言語名で、どれが書き方で、どれが実行環境なのか分かりにくいところです。

この記事では、ILE RPGとは何かを、AS400保守現場の目線で整理します。難しい歴史よりも、既存ソースを読む時、改修する時、AIやCodexで調査する時に押さえるポイントをまとめます。

RPGは「古い言語」ではなく、既存資産を読むための共通語です

AS400 / IBM i の現場では、RPGやCLをまったく読まずに保守を進めることはできません。一方で、これからの教育ではRPGだけを単体で覚えるより、ジョブログ、画面、ファイル定義、CLの呼び出し関係まで並べて、既存システムの動きを説明できるようにすることが重要です。

見るもの現場で確認することAI活用時の注意点
RPGソース入出力ファイル、分岐、更新処理、エラー処理ソース全文や機密データは貼らず、処理概要と該当箇所だけを整理する
CL呼び出し順、OVRDBF、SBMJOB、MONMSGコマンドの意味だけでなく、前後関係を説明させる
ジョブログCPF/MCHメッセージ、異常終了箇所、実行ユーザーエラー文だけで判断せず、実行条件や直前処理を確認する
ファイル定義キー、桁数、CCSID、更新タイミング項目名だけで推測せず、実データを伏せたうえで仕様を確認する

ILE RPGとは

ILE RPGは、IBM i上で使われるRPGの代表的な形です。ILEはIntegrated Language Environmentの略で、モジュール、サービスプログラム、プロシージャーなどを使った開発ができます。現場では、古い固定形式RPGと、比較的新しいフリーフォーマットRPGが混在していることがあります。

AS400保守では、言語仕様を全部覚えるより先に、対象ソースが固定形式か、フリーフォーマットか、どのファイルを読み書きするか、どのCLやプログラムから呼ばれているかを確認します。

固定形式とフリーフォーマット

固定形式RPGは桁位置に意味があり、F仕様、D仕様、C仕様などを見る必要があります。フリーフォーマットRPGは、現代的な書き方に近く、処理の流れを追いやすいことがあります。ただし、どちらも同じ業務データを扱っているため、書き方だけで難易度は決まりません。

読み方の入口は RPG固定形式・フリーフォーマットの読み方 を確認してください。

ILE RPG保守で見るポイント

  • どの物理ファイル、論理ファイルを使っているか
  • CALL、CALLP、サービスプログラムの呼び出しがあるか
  • 入力値、配列、データ構造、パラメーターの型が合っているか
  • コンパイル手順、バインド、ライブラリリストが分かるか
  • ジョブログでCPF、RNX、MCHが出ていないか

影響範囲を見る場合は、DSPPGMREFで参照ファイルや呼び出し関係を確認します。異常終了がある場合は、RNX8888、MCH3601、CPF4101などのメッセージIDも合わせて確認します。

ILE RPGソースを開いた直後の確認順

既存ソースを読む時は、上から全文を追う前に、形式、入出力、入口、更新、例外処理を先に拾います。固定形式とフリーフォーマットが混在していても、見る順番を変えなければ処理の骨格をつかみやすくなります。

順番ソースで探すもの確認すること
1**FREE、H仕様、CTL-OPTソース形式、コンパイル条件、活動化グループなどの前提
2F仕様、DCL-F入力・更新・出力するファイルと装置
3D仕様、DCL-SDCL-DS桁数、型、データ構造、パラメーター
4DCL-PIDCL-PRCALLP呼び出し元・呼び出し先と受け渡す値
5CHAINSETLLREADE、SQLどの条件でレコードを選ぶか
6WRITEUPDATEDELETEどのファイルを、どの条件で変更するか
7MONITORON-ERROR、標識異常時の分岐、後続処理、ジョブログへの残り方

**FREEが1行目の1桁目にあるソースは完全フリー形式です。ない場合は桁位置を使う固定形式や、桁制限付きのフリー形式が混在する可能性があります。形式を変換する前に、呼び出し順、ファイル更新、コンパイル方法、テスト方法を確認してください。言語仕様の確認には、IBM公式のILE RPG Referenceを参照できます。

AIやCodexで読む時の注意

ILE RPGをAIやCodexで読む時は、ソースをそのまま貼る前に、機密情報、会社名、顧客名、パスワード、IPアドレスを削除します。AIには、処理概要、入力ファイル、更新ファイル、CALL関係、エラー処理を整理させる使い方が向いています。

本番修正はAIの回答だけで決めず、コンパイル、テスト、ジョブログ、バックアップ、戻し手順を確認します。安全な使い方は AS400保守でAI・Codexを安全に使う方法 にまとめています。

学習順序

  • AS400の基本とIBM iの関係を知る
  • RPG固定形式とフリーフォーマットの違いを読む
  • DSPPGMREFとDSPFFDで影響範囲を見る
  • コンパイルリストとジョブログを見る
  • Gitやソース管理で変更前後を追えるようにする

全体の学び方は AS400学習ロードマップ、保守全体は AS400保守・運用完全ガイド、ソース管理は AS400でGit・ソース管理を始める手順 を確認してください。

ILE RPGを読む時は、業務名とプログラム名を結びます

ILE RPGの文法だけを覚えても、現場の保守では足りません。在庫照会、請求締め、出荷確定、EDIのどの処理で使われるプログラムなのかを結び、ファイル更新、例外処理、後続ジョブを確認します。

ILE RPGは形式よりも処理の入口を探す

ILE RPGを読む時、固定形式かフリーフォーマットかに目が行きがちですが、保守では処理の入口を探すことが先です。どの画面やCLから呼ばれるのか、どのファイルを読むのか、どこで更新するのかを見つけると、形式の違いに惑わされにくくなります。

入口CALL元、メニュー、CL、ジョブスケジュール
入力画面、ファイル、パラメータ
更新WRITE、UPDATE、DELETE、SQL
例外MONITOR、ON-ERROR、エラー標識