はじめに
こんにちは、cat_1980と申します
この記事は、IBM i 若手技術者コミュニティ にて、
「IBM i 初学者向けの教育に役立つ資料作成」 をテーマに作成した 教育資料です
ここでは、「IBM i のファイルとソースの基礎」 について説明しています
IBM i 初学者の部屋 にて、そのほかの教育資料も公開中!
ぜひ覗いてみてください!
分かること(要点・ポイント)
- ライブラリ内のオブジェクト類の関係性
- ファイルの種類について
- 物理ファイルの作り方
- ソースメンバーからオブジェクトになる流れ
読み方ガイド
- 本資料は IBM i の初学者向け にまとめています
- 重要なポイントには 目次に★マークをつけて強調 しています
- 図をクリックすると、大きく見やすくなります
- 筆者の環境:RPG III です
目次
- はじめに
- 分かること(要点・ポイント)
- 読み方ガイド
- ファイル・オブジェクトの関係(振り返り確認用)(★★★)
- ファイルの種類(★★)
- 物理ファイル(★)
- 物理ファイル作成方法、データの入れ方
- 物理ファイルと論理ファイルの関係
- 表示ファイルについて
- 印刷ファイルについて
- 保存ファイルについて
-
ソースについて(★★)
12-1. ソースファイルについて
12-2. ソースメンバーについて
12-3. ソースメンバーとオブジェクトの比較 - DDSとは
- Q&A集
ファイル・オブジェクトの関係
- IBM i のファイル・オブジェクト・ソースファイル・ソースメンバー・ライブラリは、以下のような関係になっています
- この図を最初の段階で理解する必要はありません
読み進めながら振り返る形で、この図を確認してみてください
※ 〇〇〇001 などは、特定のファイル、オブジェクト、ソースメンバー、ライブラリを示します。
ファイルの種類
IBM i のファイルは、主に以下のような種類があります
物理ファイル
物理ファイルは、フィールド・レコードなるものから構成されています
物理ファイル作成方法、データの入れ方
物理ファイルはソースファイルからのコンパイルによって作成されます
その後、データが入ることでデータを持った物理ファイルとして利用されます
物理ファイルと論理ファイルの関係
論理ファイルは 物理ファイルからデータを引用します
表示ファイルについて
表示ファイルは、IBM i 上の画面表示の内容を設定しているファイルです
画面表示のレイアウトや入力・出力される情報が設定されています
印刷ファイルについて
印刷ファイルは、帳票やレポートの出力内容を設定しているファイルです
保存ファイルについて
保存ファイルはオブジェクトバックアップ・システム間の移行時に使用するファイルです
ソースについて
ソースファイルについて
ソースファイルとは、ソースメンバーを格納する「入れ物」のことです
ソースファイル名は決まっています ➡ QRPGSRC など
※「ソースファイル」はライブラリごとに存在します
ソースメンバーについて
ソースメンバーとは = いわゆるプログラムコードのことです
オブジェクト作成フローを見て それぞれの状態、仕様を確認してみて下さい
ソースメンバーとオブジェクトの比較
DDSとは
物理ファイル、論理ファイル、画面ファイル、印刷ファイルの
コードを書くときの言語のこと
ソースメンバーは QDDSSRC に置きます
Q&A集
Q. ソースメンバーと、そのソースメンバーによって作られたオブジェクトはリンクしている?
A. リンクしていません
(片方を消したり、修正しても影響はありません)
Q. ソースメンバーが消えたらどうなる?
A. コンパイル済みのプログラムはそのまま動きます
(ただし変更はできません:ソースがないので再コンパイル不可)
Q. ファイル(オブジェクト)の同名の条件は?
A. 同一ライブラリ内では、同名かつ同タイプのファイル(オブジェクト)は作成不可
になります
(QRPGSRC のようなソースファイルは、同名で別ライブラリに存在します)
Q. ソースメンバーの同名の条件は?
A. 同一ソースファイル内に、 同名のソースメンバーは作成不可
(わかりやすく管理するために、
ソースメンバー名 = プログラム名 にして管理するのが一般的です)
Q. 同名のオブジェクト(別ライブラリに)があった場合は、プログラムはどのオブジェクトを引用するの?
A. 実行時(引用時)は ライブラリ リストの順序 に依存します
特定ライブラリのオブジェクトを使いたい場合は、
① ファイルの既存の参照を解除
DLTOVR *ALL
② 対象のファイルを参照
OVRDBF FILE(ファイル名) TOFILE(ライブラリ名/ファイル名)
① ➡ ② を行い、特定のオブジェクトを参照させます
結び
最後までお読みいただきありがとうございました
IBM i は、簡単に全体をまとめた資料があまりない印象です
初めに全体をなんとなく把握すれば、その後もつまずくことが少なくなるかな?という思いで書きました
この記事が皆さんの参考になれば幸いです
※最終修正 2025/10/29
当記事の著作権はIBMに帰属します 詳細はこちらを参照ください。












