前回はこちら。
前回、ライブラリとテーブルを作成するところまで学習したので、残りをやっていきます。
あとやるべきことは次の作業のようです。
- 画面の作成
- プログラムの作成
- コンパイル
順にやっていきます。
まずはHELLO WORLDから
が!まずはIBM i の理解のために、HELLO WORLDを表示する画面を作成しようと思います!
表示ファイル(画面)の作成
STRPDMコマンドを実行(あるいはメニューから5 プログラミング→2 PDMの順で選択)
メンバーの処理を選択

すると画面ファイルQDDSSRCという画面ファイルを編集する画面に入ります。
こういう時、QDDSSRCという文字列が何を意味するのかわからないと次に進めないタチなので、調べました
- Q = IBM標準ライブラリ/ファイルのプレフィックス(”System”を意味するIBMの命名規則)
- DDS = Data Description Specifications
- SRC = Source
エンターを押すと、メンバーの処理画面が出てきます。ここでF6(作成)キーを押します。

すると、SEU開始画面が出てきます。
ここで次のように入力

- メンバー:CUSTDSPL
- タイプ:DSPF
- テキスト:顧客情報表示画面
ここでエンターを押すと、いよいよ画面定義をするための画面が開かれます。
まじかよって感じのわかりにくさです。インベーダーゲーム始まるのかと思いました。

20回くらいエラーを出して、このような画面ファイルを作成しました。

作成した後は、コンパイルという手順を踏みます。
CRTDSPF FILE(CUSTLIB/CUSTDSPL) SRCFILE(CUSTLIB/QDDSSRC) SRCMBR(CUSTDSPL)
これで画面の準備はOKです。続いて、ロジックを担当するRPGプログラムの作成に移ります。
RPGプログラムの作成
遂にIBM i の言語RPGを書く時が来ました。
AIが進化して本当に良かったです。「RPG プログラミング」とかで検索するとゲームの作り方しか出てこなかったので(泣)
画面を作ったときの画面で次のように入力します。

- ファイル:QDDSSRC
- ライブラリ:CUSTLIB
- メンバー:DSPPGM
- タイプ:RPG
そしてAI(Claude)の指示されるままに以下のプログラムを記述。

ここでコンパイルすれば作業完了なんですが…
コンパイルエラー発生( ; ; )

ここでかなり時間を使ったのですが、結局解決できず、今回はここまでにします。
IBM i でHello Worldするのはお預けです。
RPGという言語は記述する位置を一つでも間違えるとコンパイルが通らないのですが、これがAIとの相性が悪く、AIの出力するプログラムは毎回スペースの数が変わったりして、困りました。
ここはAIではない、別の資料を探して、それを使う必要があるかなと考えています。
次回はこのエラーを解決できたら書きます。お楽しみに
今回覚えた概念
- PDM(Programming Development Manager):ソースメニューやオブジェクトの管理を行うメニュー
- SEU(Source Entry Utility):IBM i の標準的なソースコード編集ツール
今回覚えたコマンド
- WRKF FILE(テーブル名/*ALL):ライブラリ内のテーブルの確認
- DLTF FILE(テーブル名/テーブル名):テーブルを削除
おまけ
- IBM i ACS(Access Client Sokutions)というIBM製のソフトを使えば、Macでもエミュレータを使うことができました!
これからはMacでIBM i開発をしつつ、ACSの操作にも慣れていこうと思います。 - ACSについて

文字化けは 通信→構成→ホスト・コード・ページ の設定を「930 日本(拡張カタカナ)」にすると直りました。
