さわってみよう rational developer for i v9.5 ibm i...

91
さわってみよう Rational Developer for i V9.5 IBM i 開発ツール~ -Remote System Explorer を使用した ILE RPG アプリケーションの操作演習資料-

Upload: others

Post on 28-May-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

さわってみよう Rational Developer for i V9.5

~ IBM i 開発ツール~

-Remote System Explorer を使用した ILE RPGアプリケーションの操作演習資料-

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-1-

【目次】

0 はじめに ................................................................................................................................................ 3

1 RDiの起動と RSEの開始 .................................................................................................................... 4

1.1 RDiの起動 .................................................................................................................................... 4

1.2 RSEパースペクティブの開始 ......................................................................................................... 6

2 IBM i への接続の構成と接続の開始 .................................................................................................... 8

2.1 IBM i への接続の構成 ................................................................................................................... 8

2.2 IBM i への接続の開始 ................................................................................................................... 9

2.3 RSEを使用したオブジェクトへのアクセスと表示 ........................................................................... 13

2.4 複数のソース・メンバーの表示と複数ビューの利用 ....................................................................... 16

2.5 ソース・メンバーのアウトライン表示 ............................................................................................... 21

3 ソースの編集 ....................................................................................................................................... 22

3.1 エディターのデフォルト設定の変更................................................................................................ 23

3.2 SEU コマンドの入力 ..................................................................................................................... 28

3.3 「元に戻す」「やり直し」操作 ........................................................................................................... 29

3.4 ソースのインデント ........................................................................................................................ 30

3.5 「検索」「置換」操作 ....................................................................................................................... 31

3.6 文字列による行のフィルタリング ................................................................................................... 32

3.7 フォーマットによる行のフィルタリング ............................................................................................ 34

3.8 複数ファイルの検索 ...................................................................................................................... 35

3.9 リモート・システム・ビューを使用した「比較」操作 ........................................................................... 37

3.10 構文検査 .................................................................................................................................. 40

3.11 アプリケーション・ダイアグラムを使用したプログラムの操作 ....................................................... 42

4 ソースの検査とコンパイル .................................................................................................................... 46

4.1 ソースの検査 ................................................................................................................................ 46

4.2 リモートでのソースのコンパイル .................................................................................................... 50

4.3 オブジェクト・テーブル・ビューを使用した IBM i コマンドの投入 ..................................................... 53

4.4 コマンドおよびプログラムの実行 ................................................................................................... 55

5 プログラムのデバッグ .......................................................................................................................... 61

5.1 サービス・エントリー・ポイントを使用したデバッグ・セッションの開始 ............................................... 61

5.2 ブレークポイントの設定 ................................................................................................................. 65

5.3 変数のモニター ............................................................................................................................ 67

5.4 プログラムのステップイン .............................................................................................................. 69

5.5 呼び出しスタックのリスト ............................................................................................................... 71

5.6 PAYROLLGでのブレークポイントの設定 ...................................................................................... 72

5.7 PAYROLLGのブレークポイントの除去 ......................................................................................... 73

5.8 PAYROLLGでの変数のモニター ................................................................................................. 75

5.9 監視ブレークポイントの設定 ......................................................................................................... 76

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-2-

5.10 デバッグ・セッションの終了 ........................................................................................................ 80

5.11 デバッグ・アクションを使用した統合デバッガーの開始 ............................................................... 80

5.12 ジョブのデバッグ ....................................................................................................................... 87

サマリー ...................................................................................................................................................... 90

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-3-

0 はじめに

この演習資料では Remote System Explorer (以降 RSE と省略) を使用して、ILE RPGで記述されたある給

与関連アプリケーション (PAYROLL) の操作・運用方法について学習します。この演習を通じて以下のことが

できることを目標とします。

【学習目標】

・ Rational Developer for i (以降 RDi と省略) を開始し、RSE パースペクティブを開くことができる

・ RSEパースペクティブのツールおよびビューを使用して IBM i に接続することができる

・ 給与関連アプリケーションの編集、検査、コンパイルおよびデバッグを行なうことができる

【演習準備】

・ Rational Developer for i V9.5を PC端末にインストールしてください。導入方法については、以下資料を

参照してください。

IBM Knowledge Center: Rational Developer for i のインストール

http://www-

01.ibm.com/support/knowledgecenter/SSAE4W_9.5.0/com.ibm.iseries.xd.doc/topics/c_node_installi

ng.html

・ 演習を実施する際、数字 2桁の“任意の No.”を割り当ててください。“任意の No.”は、演習で IBM i 上に作

成するライブラリー名に影響するため、他の方と重複しないように指定する必要があります。

任意の No. の指定範囲: 01~99

<注意 1> 続く演習内では、以下のように任意の Noを指定することがあります。

例: 「ライブラリーを次のように指定してください:RDPLABXX (’XX’は任意の No.です) 」

この場合、任意の No.が“01”の方は、「RDPLAB01」と指定します。

<注意 2> 演習手順を説明するための画面キャプチャーでは、99や XXを指定していることがありますが、

実際に演習を行う際には、適宜任意の No.に置き換えてください。

・ 演習用のプログラムが入ったライブラリーを以下のように復元してください。

1. IBM iサーバー上に予め RDPLABXX という SAVFを任意のライブラリーに作成する

2. RDPLABXX.zipをローカル PC上で解凍する

3. 展開してできた RDPLABXX フォルダー内の RDPLABXX.SAVF ファイルを、手順 1 で作成した IBM

i サーバー上のライブラリーに転送する (FTPなどを使用)

4. RSTLIB SAVLIB(RDPLABXX) DEV(*SAVF) SAVF(RDPLABXX) とコマンドを実行し、一旦

RDPLABXX というライブラリー名で復元する

5. CPYLIB コマンドで、RDPLABXXを「”RDPLAB”+任意の 2桁の No.」に複製します。

例:CPYLIB FROMLIB(RDPLABXX) TOLIB(RDPLAB00)

※これで、各任意の No.が付加された重複のないライブラリーが作成されました

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-4-

1 RDiの起動と RSEの開始

1.1 RDiの起動

以下の手順に従い、RDiを起動します。

1. デスクトップ上の「スタート」をクリックします。

2. 「すべてのプログラム」→「IBM Software Delivery Platform」→「IBM Rational Developer for i V9.5」→

「IBM Rational Developer for i」を選択します。

ワークスペースとは?

プロジェクトやワークベンチで開発するフォルダー、サブフォルダーおよびファイルなどのリソースを格納す

るためのディレクトリー (フォルダー) です。

3. 上記を選択後、「ワークスペースの選択」ダイアログが表示されます。今回は演習用のワークスペースのデ

ィレクトリーとして、一番最下位のディレクトリーを”RDPLAB”と指定してください。

(例) C:¥Documents and Settings¥ユーザー名¥IBM¥rationalsdp¥RDPLAB

ここを¥RDPLABに変更

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-5-

4. 指定後、「OK」をクリックしてワークスペースを開きます。「ようこそ」ページが表示されます。

5. 「ようこそ」タブの Xをクリックして、「ようこそ」ページを閉じてください。

6. 「ようこそ」ページを閉じると、リモート・システム・エクスプローラー・パースペクティブが開きます。 (※パー

スペクティブについては、「1.2 RSEパースペクティブの開始」を参照のこと)

以上で、RDiの起動が完了し、ワークベンチを開くことができました。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-6-

ワークベンチとは?

ワークベンチとは、デスクトップ開発環境を意味します。ワークベンチは、リソースの作成、管理および運用

を行なうための共通した枠組みを提供し、シームレスなツールの統合とオープンな開発環境を実現するこ

とを目的としています。ワークベンチは 1つ以上のビューおよびエディターから構成されています。

1.2 RSEパースペクティブの開始

RSEパースペクティブが開いていることを、以下の手順で確認しましょう。

1. パースペクティブの名称をウィンドウのタイトル・バーにて確認します。「リモート・システム・エクスプローラ

ー」と表示されていることを確認してください。

パースペクティブとは?

ワークベンチ・ウィンドウを構成するビューの初期状態の組み合わせと、それらのビューのレイアウトを定

義したものです。各種パースペクティブは、特定のリソースに対する操作を効率良く実施するための機能セ

ットを提供します。例えば、Java パースペクティブには、Java ソース・ファイルの編集時に一般的に使用さ

れるビューの組み合わせが含まれています。デバッグ・パースペクティブには、プログラムをデバッグする

際に一般的に使用されるビューの組み合わせが含まれています。各パースペクティブには、ビューおよび

エディターと操作するためのメニューおよびツールバーが含まれています。

2. RSE パースペクティブを開く方法を見てみましょう。「ウィンドウ」→「パースペクティブを開く」→「リモート・シ

ステム・エクスプローラー」を選択します。すでにリモート・システム・エクスプローラー・パースペクティブ

(RSE パースペクティブ) を開いている状態であるため、画面上は変化が見られませんが、この方法によっ

て RSEパースペクティブを開くことができます。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-7-

RSEパースペクティブは IBM i のプログラマーに対して、既存の IBM i へ接続の表示、新しく接続を構成

する機能などを提供します。また、定義した接続を確立・切断する機能や、IBM i 内のファイル、コマンド、

ジョブや IFS 上のオブジェクトを操作する機能も提供します。通常同じワークスペースを指定して RDi を起

動すると、前回最後に開いていたパースペクティブが表示されます。

以上で、RSEパースペクティブを開く演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-8-

2 IBM i への接続の構成と接続の開始

ここでは、IBM i への接続方法や、ライブラリー・リストからライブラリーを見つける方法、ライブラリーからオブ

ジェクトを選択しリモート・システム LPEXエディターを使用してメンバーを開く方法を学習します。

2.1 IBM i への接続の構成

初めてリモート・システム・エクスプローラーを開いた時には、何も接続が定義されていません。 (PC上のロー

カル・ハード・ドライブのみが接続された状態です。) リモートの IBM i システムに接続するためには、接続を定

義する必要があります。接続を定義するには、IBM i のホスト名もしくは IPアドレスを使用して IBM i を特定し

ます。接続の定義を区別するために接続名をつける (ラベルをつける) ことができます。この接続名を使用して

IBM i システムとの接続、切断を行ないます。IBM i システムに接続する際には、ワークベンチに IBM i 上での

ユーザー・プロファイルおよびパスワードを入力するためのプロンプトが表示されます。

初めて IBM iへの接続を定義する時、接続のプロファイルを作成します。全ての接続、フィルターおよびフィル

ター・プールはプロファイル内に格納されます。フィルターについてはこの後の演習で操作します。以下の手順

に従い、接続を構成します。

1. 前節で開始したRSEパースペクティブの左側にある「リモート・システム」ビューで、「新規接続」の左側にあ

る「△」をクリックします。「新規接続」が展開され、RSE を通じて接続が可能なリモート・システム・タイプが

一覧表示されます。「IBM i 」を右クリックして、「新規接続」を選択します。

2. 「リモート IBM i システム接続」プロンプトが表示されます。任意の接続名、ホスト名入力し、「ホスト名の確

認」にチェックを入れます。入力後、「終了」をクリックします。親プロファイル名はデフォルトの値を使用しま

す。

・ ホスト名: 使用される IBM iサーバーホスト名もしくは IPアドレス

・ 接続名: 任意の名前

以上で、IBM i への接続の構成は終了です。

一例です。任意の、ホスト名と接続

名を入力します

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-9-

2.2 IBM i への接続の開始

IBM i への接続を定義すると、IBM i へ接続できるようになります。構成した接続を展開すると、接続に関連し

たサブシステムが表示されます。サブシステムとはあらかじめ定義されたフィルターです。サブシステムを展開

するとリモート・システム上の様々な形式のオブジェクトが、グループ化され表示されます。定義済みのサブシス

テムには以下の 6つがあります。

・ オブジェクト

5250 インターフェースにおける PDM に相当するフィルターです。IBM i 内のライブラリー、オブジェクトお

よびメンバーへのアクセスに使用します。

・ コマンド

事前定義された CL コマンドが含まれており、ユーザー独自のコマンド・セットを作成することも可能です。

実行時は IBM i に対してコマンドが送信され、実行結果は RSEパースペクティブ内の IBM i コマンド・ロ

グに記録・表示されます。

・ IBMi コンテキスト

リモート接続用に作成されたコンテキスト(リモート・ロケーション)を表示および処理することができます。

コンテキストが作成されると、関連付けられたリモート・リソースを「リモート・システム」ビューで表示できま

す。

・ ジョブ

ジョブ属性によるサブセットが事前定義されており、様々なジョブをカテゴリーごとに確認することができま

す。また、これらのジョブに対して操作 (ジョブ・ログの表示など) を行なうことができます。

・ IFS ファイル

IBM i 上にある統合ファイル・システム内のフォルダー、ファイルを展開・表示できます。

・ スプール・ファイル

ログインされたユーザー・プロファイルに紐付いたスプール・ファイルの一覧を展開、表示できます。

・ QShells

このサブシステムより QSHELLのシェルを起動することができます。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-10-

ここで、IBM i に接続するために以下の手順を実行します。

1. 「リモート・システム」ビューで、新規に構成した接続 (例では、「IBMIV7R2」) を展開し、サブシステムを表

示します。「オブジェクト」を展開すると「ライブラリー・リスト」と「ユーザー・ライブラリー」の他に、以下の 3つ

の項目が表示されます。

・ ライブラリーの処理:WRKLIBPDMに相当する項目

・ オブジェクトの処理:WRKOBJPDMに相当する項目

・ メンバーの処理:WRKMBRPDMに相当する項目

2. 以下の手順に従い、演習で使用するライブラリーをライブラリー・リストに追加します。

(ア) 「オブジェクト」を右クリック→「プロパティー」を選択します。

(イ) 「プロパティー: オブジェクト」ウィンドウの左側ペインにて「初期ライブラリー・リスト」を選択します。ラ

イブラリーに以下を入力して「追加」を選択します。

・ ライブラリー: RDPLABXX (’XX’は任意の No.です)

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-11-

(ウ) リストに追加されたことを確認し、「OK」を選択します。今後この接続を使用する際にはライブラリー

RDPLABXX (XXは任意の No.) がライブラリー・リストに追加されます。

【Tips】

「ライブラリー・リスト」サブシステムを右クリックし、表示されるポップアップ・メニュー内の「ライブラリ

ー・リスト項目の追加」もしくは「現行ライブラリーの変更」を使用して、ライブラリーをライブラリー・リス

トに追加することも可能です。ただし、この場合は 5250セッションでADDLIBLEコマンドを実行した場

合と同様、今回の接続でのみ有効となります。切断後に再接続した場合は、再度ライブラリー・リスト

に追加する必要があります。

3. ライブラリー・リストへの追加後、「ライブラリー・リスト」の左側の「△」を押して展開します。

RDPLAB+’任意の No.’を入力します。

(例) RDPLAB01

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-12-

4. この時点で接続が活動化され、IBM i に接続するためのユーザー・プロファイルおよびパスワードを入力す

るプロンプトが表示されます。プロンプト上で以下を入力、設定後、「OK」を選択してください。

・ ユーザーID: 任意のユーザー・プロファイル

・ パスワード: 入力したユーザー・プロファイルのパスワード

・ ユーザーIDの保存: チェックを入れる

・ パスワードの保存: チェックを入れる

5. 接続後、先に設定したライブラリー「RDPLABXX (’XX’は任意の No.) 」がライブラリー・リストに含まれてい

ることを確認してください。「リモート・システム」ビューの「接続名 (例では IBMIV7R2) 」を示すフォルダー

に小さな緑色の矢印が表示されています。この矢印は現在接続がアクティブであることを示しています。

以上で、IBM i への接続が終了しました。

RDPLABXX (XXは任意の No.)

( 例 ) RDPLAB99.*lib.prod-usr

のようになります。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-13-

2.3 RSEを使用したオブジェクトへのアクセスと表示

ここまでで、ライブラリーRDPLABXX (’XX’は任意の No.) 内のオブジェクトの閲覧、アクセスの準備が整いま

した。

以下の手順に従い、オブジェクトにアクセスしてみましょう。

1. ライブラリー「RDPLABXX ('XX'は任意の No.) 」を展開します。ライブラリー内に存在する全オブジェクトが

表示されます。ここでは実行しませんが、各オブジェクトを右クリックすることで、そのオブジェクトに応じた

処理を選択することもできます。

2. 「リモート・システム」ビューで、ソース・ファイル「QDDSSRC」が見つかるまでドリルダウン (展開) します。

QDDSSRCが見つかったらさらに展開してください。

3. 同様に「リモート・システム」ビューで、ソース・ファイル「QRPGLESRC」が見つかるまでドリルダウンします。

QRPGLESRCが見つかったらさらに展開してください。

4. ソース・ファイル「QDDSSRC」を右クリック→「テーブルでの表示」を選択します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-14-

「オブジェクト・テーブル」ビューは「リモート・システム」ビュー内で選択したオブジェクトを入力として内容

をテーブル形式で表示させるビューです。ソース物理ファイルの場合には、ファイル内に存在するメンバー

の名前、タイプ、属性、テキストなどを確認することができます。

オブジェクト・テーブル・ビューの上部 (ツールバー) にはロック・アイコンがあります。ロック・アイコンはリ

モート・システム・ビューとオブジェクト・テーブル・ビュー間の相関を制御するものです。ロックが機能してい

ない (アイコンが押されていない) 場合は、リモート・システム・ビューで選択したオブジェクトやライブラリ

ーに関する内容が、自動的に IBM i テーブル・ビューに表示されます。ロックが機能している (アイコンが

押されている) 場合は、リモート・システム・ビューで異なるオブジェクトやライブラリーを選択しても、オブジ

ェクト・テーブル・ビューの表示内容は自動的に更新されません。

5. オブジェクト・テーブル・ビューのツールバーのロック/アンロック・ボタンがアンロックになっていることを確認

してください。ロック状態になっている場合にはボタンをクリックすることでアンロック状態とすることができま

す。

6. オブジェクト・テーブル・ビューのプロパティーを以下の手順で変更します。

(ア) ワークベンチ・メニューの「ウィンドウ」→「設定」を選択します。

(イ) 「設定」ウィンドウの左側ペインにて「リモート・システム」→「IBM i 」→「テーブル・ビュー」を選択しま

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-15-

す。その後、「設定」ウィンドウの右側ペインにて「最終変更日時」を選択して「追加」をクリックします。

「選択した列」に「最終変更日時」が追加されたことを確認後、「OK」をクリックします。

(ウ) オブジェクト・テーブル・ビューを更新します。オブジェクト・テーブル・ビューのツールバーの下向き矢

印アイコンをクリック→「列の表示」→「カスタマイズ済み」を選択します。

(エ) 設定ウィンドウで追加した最終変更日時の列が追加されて表示されます。

(オ) 最終変更日時の順にソートするために「最終変更日時」の列ヘッダーをクリックします。ヘッダーを再

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-16-

度クリックすると降順にソートされて表示されます。

7. リモート・システム・ビューにて、ソース・ファイル QRPGLESRC を選択します。オブジェクト・テーブル・ビュ

ーがアンロックになっている場合には、QRPGLESRC内のメンバーがオブジェクト・テーブル・ビューに自動

的に表示されます。

8. リモート・システム・ビューで、ソース・ファイル QDDSSRC 内のメンバーMSTDSP をダブルクリックします。

リモート・システム LPEX エディターが開きます。リモート・システム LPEX エディターはワークベンチに組み

込まれたエディターで、SEU のスーパーセットに相当するものです。SEU の構文検査機能が引き継がれて

います。F1キーによるヘルプ (マニュアル) 参照機能も提供されています。

9. MSTDSP タブをダブルクリックしてエディター・ウィンドウを最大化します。

10. もう一度、MSTDSP タブをダブルクリックすると、ウィンドウを初期サイズに戻すことができます。

以上で、RSEを用いたオブジェクトへのアクセス、表示の演習は終了です。

2.4 複数のソース・メンバーの表示と複数ビューの利用

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-17-

ここでは以下の手順で、2つ目のソース・メンバーをエディターで開きましょう。

1. リモート・システム・ビューにて、ソース・ファイル QRPGLESRC 内のメンバーPAYROLL をダブルクリックし

ます。

2. リモート・システム LPEXエディター内に PAYROLL タブが表示され、メンバーPAYROLLが開かれたことを

確認します。

3. 複数のタブが開いている場合は、操作したいタブをクリックすると、そのタブをアクティブにできます。

4. リモート・システム LPEXエディターでは、1つのソース・メンバーを複数のビューで開くことが可能です。ここ

では以下の手順に従って RPG ソースを複数のビューで開きます。

(ア) PAYROLL タブをダブル・クリックし、エディター・ウィンドウを最大化します。

(イ) エディター・ビューのソースを右クリック→「表示」→「新規ビューのオープン」を選択します。 (Tips:こ

の操作を繰り返すことで最大で 5つのビューを開くことが可能です。)

(ウ) ソース・ビューを右クリック→「表示」→「次のビュー」もしくは「前のビュー」を選択することで、開いた複

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-18-

数のビュー間を遷移することができます。

(エ) 一方のビューでソースに変更を加えた場合、他方のビューも自動的に更新されます。これを確認する

ために、左側のビューにて 33行目までスクロール・ダウンしてカーソルを 33行目に合わせます。その

後 Enter キーを押してください。新規の行が左右のビューで挿入されたことを確認してください。D 仕

様書の行で Enterキーを押したため新規の行も自動的に D仕様書の行として挿入されています。

(オ) 以下の画面例のように左側のビューにて、長さが 10 桁の変数 i を定義します。右側のビューにおい

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-19-

ても、左側のビューで定義した変数 iが反映され表示されます。

(カ) ソース・ビューを右クリック→「表示」→「水平分割」を選択します。これまで垂直方法に分割されていた

ビューが、水平方向に分割されて表示されます。

(下図:水平分割されたビュー)

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-20-

(キ) 閉じたいソース・ビュー (今回は RDPLABXX/QRPGLESRC (PAYROLL) : 2) を右クリック→「表示」

→「ビューのクローズ」を選択します。選択したビューが閉じられ、1 つ目のビューのみが開かれた状

態に戻ります。 (Tips: 1つ目のビューはこの機能では閉じられません。)

(ク) PAYROLL タブをダブル・クリックし、エディター・ウィンドウを初期サイズに戻しましょう。さらに、続く演

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-21-

習のために、初期状態のプログラム・ソースを再度読み込みます。PAYROLL タブの X をクリックして

ください。

(ケ) 変更内容の保存を確認するプロンプトが表示されます。「いいえ」を選択してください。

以上で、複数ソース・メンバーの表示と複数ビュー表示の演習は終了です。

2.5 ソース・メンバーのアウトライン表示

アウトライン・ビューは、RPGや COBOL、DDSソースを、リモート・システム LPEXエディターを使用して編集

する場合に効果的です。アウトライン・ビューでは、リモート・システム LPEX エディター・ウィンドウで開いている

ソース・ファイル内で、定義された項目の構造的なアウトラインを表示します。エディター使用時には、アウトライ

ン・ビュー内のファイル構造を展開、ビュー内の様々な要素をクリックすると、その要素が定義されているソース

内の位置に移動することができます。ここでは RPG ソースのアウトライン・ビューを以下の手順で使用します。

1. ワークベンチのリモート・システム・ビューから QRPGLESRC の PAYROLL を開きます。LPEX エディター

の右側に「アウトライン」ビューが表示されることを確認します。アウトラインの内容が表示されない場合は、

アウトライン・ビューの「更新」ボタンをクリックします。

【Tips】

アウトライン・ビューを閉じてしまった場合には、ワークベンチ・メニューの「ウィンドウ」→「パースペクティブ

のリセット」もしくは「ビューの表示」→「その他」→「一般」→「アウトライン」を選択することで表示させること

ができます。

2. アウトライン・ビューではロジックを含まないソース・プログラムのツリー・ビューが表示されます。ソース・メン

バーの詳細を、アウトライン・ビューを使用して確認します。アウトライン・ビューで「グローバル定義」→「ファ

イル」を選択します。

3. 表示装置ファイル「MSTDSP」→レコード形式「EMPSEL」を展開します。ここでは要素「EMPNO」→187 を

更新ボタン

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-22-

ダブルクリックします。

4. ソース・エディターにて EMPNO がある 187 行目にカーソルが移動したことを確認してください。次の演習

のために PAYROLL タブは開いたままにしておきます。

以上で、アウトラインを使用したソース・メンバーの操作の演習は終了です。

3 ソースの編集

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-23-

ここでは既に開いている ILE RPG ソース・メンバーPAYROLL を使用して、リモート・システム LPEX エディタ

ーを利用したソースの操作方法について演習を行います。

3.1 エディターのデフォルト設定の変更

最初にリモート・システム LPEXエディターの設定を変更します。

リモート・システム LPEX エディターでは事前定義された設定を使用することができますが、ユーザー独自に

カスタマイズした設定を利用することも可能です。設定ウィンドウの左側ペインにある LPEX エディターのカテゴ

リーにて設定を行ないます。今回は以下の手順に従い、LPEXエディターの構文解析設定 (特に桁依存編集に

ついて) 、外観、キー・アクションについてのデフォルト設定を変更します。

1. 桁依存編集の設定については以下の手順に従います。

(ア) ワークベンチ・メニューの「ウィンドウ」→「設定」をクリックします。

(イ) 設定ウィンドウの左側ペインにて、「リモート・システム」→「リモート・システム LPEX エディター」を選

択します。

(ウ) 設定ウィンドウの右側ペインで、「桁依存編集」にチェックを入れます。これにより、行の各フィールドを

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-24-

個別のエントリー・スペースとして認識するようになります。入力後、「適用」をクリックします。

2. リモート・システム LPEXエディターの外観を変更するには以下の手順に従います。

(ア) 設定ウィンドウの左側ペインにて「LPEXエディター」→「外観」を選択します。

(イ) 設定ウィンドウの右側ペインのスタイルから「formatLine」を選択します。前景および背景、フォントを

以下のように設定します。設定内容はウィンドウ内のプレビューに表示されます。

・ 前景: ダーク・グリーン (色選択のボタンを押して選択します。)

・ 背景: ライト・グリーン (色選択のボタンを押して選択します。)

・ フォント: MS ゴシック 標準 12pt (変更ボタンを押して設定します。)

(ウ) 設定ウィンドウの右側ペインのスタイルから「currentLine」を選択します。選択後、背景を水色 (左か

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-25-

ら 5番目、上から 2番目) に変更します。

(エ) 変更後、「OK」をクリックします。

変更した設定を無効にしたい場合には、デフォルトの外観に戻すために「デフォルトの復元」を選択す

ることもできます。

3. 編集中のソースの自動保存に関する設定は、以下の手順で変更します。

(ア) 設定ウィンドウの左側ペインにて「リモート・システム」→「リモート・システム LPEX エディター」を選択

します。

(イ) 設定ウィンドウの右側ペインの「自動保存」の項目のチェックの有無で設定が可能です。保管間隔分

数を 1~60分の間で設定することができます。今回はデフォルトのままにしておきます。

4. Enterキーによる操作内容の変更は以下の手順で実行します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-26-

(ア) 設定ウィンドウの左側ペインにて「LPEXエディター」→「ユーザー・キー・アクション」を選択します。

(イ) 「キー」フィールドおよび「アクション」フィールドに以下を入力してください。このフィールドは大文字・小

文字の区別があるため、必ず以下の通りに入力する必要があります。入力後、「設定」ボタンを押しま

す。

・ キー: enter

・ アクション: splitLine

(ウ) これで LPEXエディターにて Enterキーを入力した場合の操作内容が変更されました。

ILE RPG言語で新しい分離行を Enterキーで作成するには、この設定変更操作が必要です。

(エ) 続いて、新しい行に対して自動的に仕様書タイプが付加されるのを防ぎます。設定ウィンドウの左側

ペインにて「リモート・システム」→「リモート・システム・LPEX エディター」→「IBM i 構文解析プログラ

ム」→「ILE RPG」を選択します。

(オ) 設定ウィンドウの右側ペインの「直前の仕様書タイプを繰り返す」のチェックをはずします。チェックを

はずした後、「OK」をクリックして、設定ウィンドウを閉じます。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-27-

5. 設定が反映されていることを確認しましょう。

(ア) エディター・ビューにてソース PAYROLLの 27行目の列 10にカーソルを移動させます (MSTDSPの

MST と DSP の間) 。エディターが「挿入」モードであることを確認してください。現在のモードはビュー

のステータス行に表示されています。「置換」になっている場合には、PC の Insert キーを押すことで

「挿入」モードに変更することができます。

(イ) スペース・キーを 3回押下します。ファイル名にはスペースが挿入されますが、その他のカラムは桁移

動しないことを確認してください。

(ウ) Backspace キーを 3 回押下して元に戻します。この時も、その他のカラムの値は桁移動しないことが

確認できます。

以上で、エディターのデフォルト設定の変更方法に関する演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-28-

3.2 SEU コマンドの入力

LPEX エディターでは SEU で使用するコマンド (行の挿入、コピー、削除など) も利用可能です。以下の手順

に従い、SEU コマンドが使用可能であることを確認します。

1. カーソルを編集エリアの左側にあるグレーの行番号のエリアに移動します。

2. 任意の行番号のエリアで、dd と入力します。

3. 何行か下の行にカーソルを移動させ、再度行番号のエリアにて ddと入力後、Enterキーを押します。ddで

挟まれた行が削除されたことを確認してください。

4. 次に適当な行の行番号のエリアにて i5 と入力します。入力後、Enterキーを押します。新規の行が 5行分

挿入されたことを確認してください。

以上で、SEU コマンドに関する演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-29-

3.3 「元に戻す」「やり直し」操作

LPEX エディターは、エディター・ウィンドウ内でソースに加えられた変更内容を記録しています。最後にファイ

ルが保管されてから、追加された変更の数がステータス行に表示されます。ファイルに加えた変更を取り消した

い場合には「元に戻す」操作を行ないます。「元に戻す」操作で取り消した変更を再度有効にしたい場合には

「やり直し」操作を行ないます。ここでは以下の手順に従い、前節でソースに加えた変更を「元に戻す」「やり直し」

操作で無効化または有効化する演習を行ないます。

1. ワークベンチ・メニューの「編集」→「元に戻す」を選択します。先ほど挿入された 5 行が消去されるのを確

認してください。

2. Ctrl+zを押してください。これは「元に戻す」操作のショートカットです。これにより、SEU コマンド ddで消去

された行が再び表示されます。

3. ワークベンチ・メニューの「編集」→「やり直し」を選択します。再度表示された行が再び消去されます。

4. 続く演習の準備のために、初期状態のプログラム・ソースを再度読み込みます。ワークベンチ・メニューの

「ファイル」→「閉じる」を選択します。 (Tips: PAYROLL タブの Xをクリックして閉じることもできます。)

5. 変更内容の保存を確認するプロンプトが表示されますが「いいえ」を選択してください。

6. ワークベンチのリモート・システム・ビューから再度 QRPGLESRCの PAYROLLを開きます。

以上で「元に戻す」「やり直し」操作の演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-30-

3.4 ソースのインデント

ここでは、ソースのインデントに関して学習します。ILE RPG ソースを編集する場合、構造体の最初と最後の

部分を判別しにくい場合があります。インデント・ビューではインデント・モードを使用してソースの構造体を視覚

的に表すことができます。ソースのインデントを表示させるには、以下の操作を行います。

1. ワークベンチ・メニューの「ソース」→「インデントの表示」を選択します。

2. RPG インデント・ビューがエディター・ビューの下に表示されます。RPG インデント・タブをダブルクリックし

てください。RPG インデント・ビューが最大化されます。

3. RPG インデント・ビューにて 150行目までスクロール・ダウンします。インデントを示す線が入れ子 (ネスト)

状態を示していることを確認してください。 (Tips: RPG インデント・ビューは表示のみです。編集はできま

せん。)

4. RPG インデント・タブをダブルクリックして、再度 RPG インデント・ビューを初期サイズに戻します。その後、

RPG インデント・タブの X印をクリックして RPG インデント・タブを閉じてください。

以上で、インデント表示の演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-31-

3.5 「検索」「置換」操作

LPEX エディターには検索・置換機能が備わっています。以下の手順に従い、テキストの検索・置換を行ない

ましょう。

1. エディター・ビューにて Ctrl+Home を押してください。ファイルの先頭部分にカーソルを移動させることがで

きます。

2. ワークベンチ・メニューの「編集」→「検索/置換」を選択するか Ctrl+Fを押してください。

3. エディター・ウィンドウの下部に検索/置換ウィンドウが表示されます。今回はサブルーチンの先頭部分

BEGSR を検索します。「検索」フィールドおよび「置換」フィールドに以下を入力します。

・ 検索フィールド: BEGSR

・ 置換フィールド: 必ずブランクのままにしておきます。

4. エディター・ウィンドウ内のカーソルが、BEGSR がある 52 行目に自動的に移ることを確認してください。確

認後「次へ」を押してください。ファイル内の BEGSRの次の位置に移ります。

5. 検索/置換ウィンドウを閉じるために、エディター・ウィンドウのソース表示部分をクリックしてください。

以上で、「検索」「置換」操作の演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-32-

3.6 文字列による行のフィルタリング

LPEX エディターでは設定した文字列に応じて、それらを含む行のみを表示させるフィルター機能が備わって

います。ここでは以下の手順に従い、文字列によるフィルタリングの演習を行ないます。

1. エディター・ウィンドウ内で、56 行目にある変数 EMPAPL をダブル・クリックしてください。EMPAPL が反転

表示されます。

2. ワークベンチ・メニューの「編集」→「選択済み」→「フィルター選択」を選択します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-33-

3. ソース・ファイルの各行のうち、EMPAPLを含む行のみが表示されます。

4. ソースの 79 行目にカーソルを移動させ、行番号の左側にある+マークをクリックして展開します。次の

EMPAPLを含む行までのソースが全て表示されます。

5. 再度ソース全体を表示させるには、ワークベンチ・メニューの「編集」→「すべて表示」を選択します。カーソ

ルの位置は全体を表示する前の位置が保持されます。

以上で、文字列によるフィルタリングの演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-34-

3.7 フォーマットによる行のフィルタリング

文字列による行のフィルタリングと同様に、LPEX エディターではフォーマット (日付、コメント、プロシージャー、

サブルーチンなど) によるフィルタリング表示も可能です。

以下の手順に従い、サブルーチンに関するフィルタリングの演習を行います。

1. プログラム・ソース PAYROLLのエディター・ウィンドウを右クリック→「フィルター・ビュー」→「サブルーチン」

を選択します。

2. ソースのうち、BEGSR および ENDSR を含む行のみが表示され、それ以外の行はまとめられた形で表示

されます。これにより、希望のサブルーチンに効率的にカーソルを移動することが可能です。

サブルーチン宣言 CHGCDE (444行目) にカーソルを移動させてください。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-35-

3. このサブルーチン内の全ソース・コードを表示させるために、440 行目の行番号左側の+マークをクリックし

て展開します。

4. エディター・ウィンドウを右クリック→「すべて表示」を選択します。再度ソース全体が表示されます。文字列

によるフィルタリングの際と同様に、カーソルの位置は全体を表示する前の位置が保持されます。

以上で、フォーマットによるフィルタリングの演習は終了です。

3.8 複数ファイルの検索

あるソース物理ファイル内の複数のメンバーや、あるディレクトリー内の複数のファイルに対して検索を行ない

たい場合には、検索ツールを使用します。検索ツールはマルチ・ファイル検索機能を備えており、一度に複数の

メンバーを検索できます。

ここでは以下の手順に従い、検索ツールの使用方法を学習します。

1. ワークベンチ・メニューの「検索」→「IBM i 」を選択します。検索ウィンドウが開かれます。

展開後

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-36-

2. 検索ウィンドウの「ストリングの検索」フィールド、ターゲット・ライブラリー、ファイル、メンバーに以下を入力

してください。入力後、「検索」を選択します。

・ 「ストリングの検索」フィールド: ENHRS

・ ターゲット・ライブラリー: RDPLABXX ('XX'は任意の No.)

・ ターゲット・ファイル: QDDSSRC

・ ターゲット・メンバー: *

3. エディター・ビューの下にリモート検索ビューが表示され、検索結果が表示されます。今回はソース物理ファ

イル QDDSSRC内の 3つのメンバーで、検索文字列”ENHRS”が見つかったことを確認してください。

4. リモート検索ビューの最後の以下の行をダブルクリックします。ソース・メンバーREFMST が、自動的に開

かれてエディター・ビューに表示されます。カーソルがメンバー内の ENHRS が存在する 27 行目に自動的

に遷移していることを確認してください。

(行 27) A ENHRS 3 1 TEXT ('EMPLOYEE NORMAL WEEK HOURS')

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-37-

5. REFMST タブの X印をクリックして REFMST ファイルを閉じます。

以上で、複数ファイル検索の演習は終了です。

3.9 リモート・システム・ビューを使用した「比較」操作

アプリケーション・プログラムの開発時に、プログラムに対して多くの変更を加える時、比較機能を有効に利用

することができます。比較機能を利用すると、異なるバージョンのプログラムを比較し、相違がある箇所を見つ

けることができます。

比較機能を使って、2 つのファイルの相違点を確認することができます。異なるファイル同士を比較することも

可能ですが、リポジトリー内のバージョン情報やローカル編集ヒストリーを利用し、ワークベンチ内でバージョン

を比較することもできます。比較操作を実行すると、比較エディターがエディター・エリアに表示されます。比較

エディター内では全ての相違点の確認、比較したリソース間の相違点をハイライト選択しコピーすることもできま

す。今回は以下の手順に従い、ワークベンチ内で異なるファイル同士を比較する演習を行います。

1. ワークベンチ・メニューの「ウィンドウ」→「設定」を選択します。

ダブルクリック

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-38-

2. 設定ウィンドウの左側ペインにて「LPEXエディター」→「比較」を選択します。

3. 設定ウィンドウの右側ペインにて以下の項目にチェックが入っているか確認します。チェックが入っていない

場合にはチェックを入れてください。確認後、「OK」をクリックしてください。

・ 先頭ブランクを無視: チェックが入っているか確認してください。

・ 末尾ブランクを無視: チェックが入っているか確認してください。

・ すべてのブランクを無視: チェックが入っているか確認してください。

4. PAYROLL メンバーのエディター・ウィンドウに戻り、ワークベンチ・メニューの「編集」→「ファイルと比較」を

選択します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-39-

5. ファイルの比較ウィンドウが表示されます。ウィンドウにて「接続名 (例:IBMIV7R2) 」→「*LIBL」→

「RDPLABXX (XXは任意の No.) 」→「QRPGLESRC」→「PAYROLLG」を選択します。選択後、「OK」を

クリックしてください。

下図のように、エディターに PAYROLL と PAYROLLG の相違点が表示されます。相違点は、異なる色

(上行赤色が比較先ファイルのコード PAYROLLG、下行黄色がオリジナル PAYROLL) でハイライト表示

されるので、どの行に相違点を含んでいるか容易に判別できます。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-40-

ソースを右クリックして「比較」→「次の不一致」を選択する、もしくは Ctrl+Shift+N を使用することで次の

相違点に遷移することができます。

6. Ctrl+Shift+N を押して次の相違点に遷移します。

7. ソースを右クリックして「比較」→「クリア」を選択します。

以上で、比較操作に関する演習は終了です。

3.10 構文検査

LPEX エディターの有用な機能の一つに、SEU から引き継いだ構文検査機能があります。構文検査は、ソー

ス内でカーソルを移動させるタイミングで機能させることも可能です。選択しているソースの一部、またはソー

ス・メンバー全体に対して機能させることができます。今回は演習として構文エラーを起こし、訂正するためのプ

ロンプトが表示されることを確認します。以下の手順に従い、構文検査を行います。

1. PAYROLLエディター・ウィンドウで”EXSR ACDESR”を含む 211行目にカーソルを移動させます。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-41-

2. EXSRに xを追加して EXSRx とします。

3. カーソルを 211行目から移動させます。 (下矢印で 212 行目にカーソルを移動させても構いません。) 211

行目と 212行目の間に、エラー・メッセージが表示されることを確認しましょう。

4. カーソルをエラー・メッセージ上に移動させます。移動後、F1 キーを押してください。エラー・メッセージに関

するヘルプ・ウィンドウが表示されます。

5. ウィンドウ右上の X をクリックして、ヘルプ・ウィンドウを閉じます。閉じた後、エラーを訂正するためにカーソ

ルを 211行目に戻して EXSRx を EXSR に直します。 (「編集」→「元に戻す」を選択して直しても構いませ

ん。)

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-42-

6. カーソルを再度 211行目から移動させます。エラー・メッセージが自動的に消去されるのを確認してください。

確認後、PAYROLL タブをダブルクリックして、ビューを初期サイズに戻してください。 (Tips: 現在エディタ

ーで開いているソース・メンバー全体を構文検査する場合は、ワークベンチ・メニューにて「ソース」→「すべ

て構文検査」を選択してください。)

以上で、構文検査に関する演習は終了です。

3.11 アプリケーション・ダイアグラムを使用したプログラムの操作

アプリケーション・ダイアグラムは、IBM i ネイティブ・アプリケーション内の異なるリソースの相関関係を視覚

的に表現します。アプリケーション・ダイアグラム・ビューでは、2 つの異なるダイアグラムを使用することができ

ます。1つ目はソース呼び出しダイアグラムで 2つ目はプログラム構造ダイアグラムです。

ソース呼び出しダイアグラムは、ILE RPG ソース内のサブルーチンおよびプロシージャー呼び出しの相関関

係を視覚的に表現します。

プログラム構造ダイアグラムは、プログラムおよびサービス・プログラムの相関関係を視覚的に表現するもの

です。

ここでは、以下の手順に従い、アプリケーション・ダイアグラムを使用した演習を行います。

1. ソース・ファイル QRPGLESRC内のソース・メンバーPAYROLLG.rpgleを開きます。

2. ワークベンチ・メニューにて「ソース」→「アプリケーション・ダイアグラムの視覚化」を選択します。アプリケー

ション・ダイアグラムが表示されます。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-43-

3. アプリケーション・ダイアグラムにてサブルーチン ACDESR を選択します。要素を選択した際、その要素と

相関がある要素間の関係を示す矢印がハイライト強調されます。

4. サブルーチン ACDESR を右クリック→「プロパティー・ビューの表示」を選択してください。

5. プロパティー・ビューが表示され、選択したサブルーチンの情報が表示されます。プロパティー・タブ内の呼

び出しタブをクリックしてください。 (ウィンドウ・サイズは見やすいように適宜変更してください。) 選択した

サブルーチン ACDESR が呼び出すサブルーチンが一覧表示されます。同様に、呼び出し側タブを選択す

ると、ACDESRを呼び出しているサブルーチンの一覧が表示されます。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-44-

6. 呼び出しタブ内にリストされているサブルーチン CHGCDE をダブルクリックしてください。

7. RSE パースペクティブ内のソース・ビューにてサブルーチン CHGCDE の位置 (今回は 444 行目です。)

にカーソルが自動的に移動されたソースが表示されることを確認してください。

8. 再度アプリケーション・ダイアグラムに戻ります。アプリケーション・ダイアグラム・ビュー上の任意の箇所で

右クリック→「ファイル」→「イメージ・ファイルとして保存を選択します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-45-

9. 「イメージ・ファイルとして保存」画面が表示されます。ローカル PC上の任意のディレクトリーに、任意のファ

イル形式(GIF、BMP、JPEG、JPG、SVG、PNG、PDF) で保管できます。

10. ファイルが生成されたことを確認し、アプリケーション・ダイアグラム・ビューのタブにある X をクリックしてタ

ブを閉じてください。

以上で、アプリケーション・ダイアグラムに関する演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-46-

4 ソースの検査とコンパイル

ここでは、リモート・システム LPEX エディターを使用して、RPG プログラムの検査およびコンパイルの実行方

法について演習します。

4.1 ソースの検査

RSE の強力な機能の一つに、プログラム検査機能があります。これを使って、IBM i 上でコードをコンパイル

する前に、コンパイル・エラーがでないことを確認することができます。これにより、IBM i 上での無駄なコンパイ

ル操作を回避し、IBM i 上の負荷の低減を実現できます。また、この機能は IBM i に未接続の状態でコードを

作成する際にも活用できます。

IBM i エラー・リストには、エラー内容とともにエラーが発生する箇所とそのエラーの重大度が一覧表示され

ます。以下の手順に従い、ソースの検査機能について演習を行います。

1. RSE パースペクティブのエディター・ビューで PAYROLL タブをクリックし、ソースを表示します。その後、エ

ディター上にカーソルがある状態で、ワークベンチ・メニューの「ソース」→「確認」を選択します。

2. 検査が実行され、エディター・ウィンドウの下に IBM i エラー・リストが表示されたのを確認してください。エ

ラー・リストには以下の項目が含まれます。

・ メッセージ ID

・ メッセージ内容

・ 重大度

・ 行番号

・ ソース位置

・ 接続名

3. エラー・リストに表示されたエラーを訂正するには、以下の手順に従います。

(ア) IBM i エラー・リストのリストの上から 2つ目の RNF7030をダブルクリックします。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-47-

(イ) 自動的にエディター・ウィンドウ上のエラー発生行にカーソルが移動します。365 行目のエラーはタイ

プ・ミスが原因です。変数 EMES は本来 EMESS である必要があります。本来の変数の名称を見つ

けるには、コンテンツ・アシスト機能を利用すると効果的です。タイプ・ミスをした変数 EMES を選択

(ハイライト) し、Ctrl+スペース・キーを押してください。

(ウ) 本来の変数の名称候補がリスト表示されます。本来の名称である EMESS をリスト内でダブル・クリッ

クしてください。変数名が EMESSに置換されたことを確認してください。

(エ) IBM i エラー・リストの 3 行目の RNF7030 も同様のエラーです。IBM i エラー・リストの 3 行目の

RNF7030をダブルクリックしてください。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-48-

(オ) 95行目の RSNTAXも誤りで、正しくは RSNTAGです。訂正してください。

(カ) 次のエラーを訂正します。IBM i エラー・リストに表示された RNF5184 をダブルクリックしてください。

(3行目の RNF7030の次の行に表示された RNF7018は先に訂正した RSNTAXに起因するものな

ので無視して構いません。)

(キ) 364行目の’2’を’1’に訂正してください。

(ク) 最後に残った IBM i エラー・リストの最初にあるRNF5178を訂正します。このRNF5178はサブルー

チンの終了を意味する ENDSR が存在しないことに起因するエラーです。ENDSR がソース内に存在

しないため、RNF5178 が発生した行番号は 1 としてリストに表示されています。そのため、IBM i エ

ラー・リスト内のRNF5178をダブルクリックしても、ENDSRを挿入すべき位置にはカーソルは自動的

には移動しません。 (エラーRNF7515 は最初に訂正したエラーに関連するものなので無視して構い

ません。)

インデント・ビューを使用して、ENDSR を挿入すべき位置を知ることができます。今回はあらかじめコ

メントアウトしてある ENDSR を有効にする形で訂正します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-49-

エディター・ウィンドウ上で 398 行目にカーソルを移動させてください。その後、C 仕様書のアスタリス

ク (*) を除去してください。

(ケ) 以上で重大度を持つエラーをすべて訂正することができました。エラー・リストではフィルターを使用し

て、メッセージの重大度に応じてリストに表示させるエラーを制御することができます。フィルターを設

定するには以下の手順を実施します。

① エラー・リストの下向き矢印をクリック→「重大度の表示」を選択します。

② 重大度に応じたメッセージの種類が表示されます。“情報”や“警告”など表示させたくないメッセー

ジを選択から外してください。以上でフィルターの設定が終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-50-

4. 最後に、エラー・メッセージがエラー・リストから消去されることを確認します。

(ア) ソースを再度検査します。重大度を持つエラー・メッセージが全てなくなったことを確認してください。

(イ) 変更内容を保管するため、Ctrl+Sキーもしくは「ファイル」→「保存」でソースを保管します。

以上で、ソースの検査機能に関する演習は終了です。

4.2 リモートでのソースのコンパイル

RSEはリモート・コンパイル機能が実装されており、これはローカル PCからリモートの IBM i 上でのコンパイ

ル、バインド、オブジェクトのビルド要求を投入する際に利用します。

サポートされている CRTXXX コマンドに関する全オプションを利用することができます。リモート・コンパイル機

能を利用したプログラムのコンパイルは、デフォルトの設定ではバッチ・ジョブとして IBM i に投入されます。

ここでは以下の手順に従い、対話式にコンパイルを実行する方法について演習を行います。

1. 対話式にコンパイルを実行するために以下の手順で設定を変更します。

(ア) ワークベンチ・メニューの「ウィンドウ」→「設定」を選択してください。

(イ) 設定ウィンドウの左側ペインにて「リモート・システム」→「IBM i 」→「コマンド実行」を選択してください。

(ウ) 設定ウィンドウの右側ペインにて「バッチでのコンパイル」のチェックをはずし、「OK」をクリックします。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-51-

以上で設定の変更が終了です。

2. 次に以下の手順でコンパイル・パラメーターを指定するためにCRTBNDRPGコマンドのプロンプトを使用し

て、ソースのコンパイルを実行します。

(ア) リモート・システム・ビューで、QRPGLESRC内のメンバーPAYROLLを右クリックします。

(イ) ポップアップ・メニューが表示されます。メニューより「コンパイル (プロンプト) 」→「CRTBNDRPG」を

選択します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-52-

(ウ) 「バインド RPG PGMの作成」ウィンドウが開きます。「デバッグ用ビュー」に*ALLを設定してくださ

い。設定後、「OK」を選択してください。

(エ) リモートの IBM i 上でコンパイルが開始されます。ワークベンチ上の進行バー (ウィンドウ右下) でコ

ンパイルの進行状態が表示されることを確認してください。その後、エラーなしのエラー・リストが表示

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-53-

され、コンパイルが終了したことを確認してください。「コマンド・ログ」タブをクリックしてコマンド・ログを

確認できます。ログからも、コンパイルが完了してプログラムが作成されたことを確認できます。

以上で、対話式でのソース・コンパイルの演習は終了です。

4.3 オブジェクト・テーブル・ビューを使用した IBM i コマンドの投入

RSE のオブジェクト・テーブル・ビューは、オブジェクト内の内容を確認するだけでなく、コマンドを IBM i に投

入するためにも使用することができます。オブジェクト・テーブル・ビュー下部の「コマンド」フィールドに、実行し

たいコマンドを入力します。実行後のメッセージは、「メッセージ」フィールドで確認することができます。メッセー

ジの詳細も確認できます。コマンドの実行には、リモート・システム・ビューを利用することもできます。

ここでは、オブジェクト・テーブル・ビューからコマンドを実行し、現行ライブラリーを変更する演習を行います。

1. ワークベンチにてオブジェクト・テーブル・ビューのタブをクリックします。

2. 「コマンド」フィールドに以下を入力し、「実行」をクリックします。

・ 「コマンド」フィールド: CHGCURLIB RDPLABXX (XXは任意の No.)

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-54-

3. 実行結果が「メッセージ」フィールドに表示されます。「現行ライブラリーが RDPLABXX (XXは任意の No.)

に変更された。」と表示されたことを確認してください。

4. リモート・システム・ビューで、「ライブラリー・リスト」を右クリック→「更新」を選択します。

5. ライブラリー・リストが更新されて、リスト内のライブラリーRDPLABXX (XXは任意の No.) のアイコンに緑

色の小さなアスタリスクが付いていることを確認します。このマークは現在このライブラリーが現行ライブラ

リーとして設定されていることを示しています。また、現行ライブラリーに変更したファイルの拡張子が

lib.prod-cur となっていることを確認します。

以上で、IBM i テーブル・ビューを使用したコマンド実行に関する演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-55-

4.4 コマンドおよびプログラムの実行

リモート・システム・ビューおよび IBM i テーブル・ビューから、以下の方法でプログラムやコマンドを実行する

ことができます。

1. RSEサーバー (RSE通信サーバーとも呼ぶ) ・ジョブとして (ここまでの演習で使用している方法)

2. バッチ・ジョブとして

3. 対話型ジョブとして (特に 5250アプリケーションのテスト時に使用します)

1番目の方法では、プログラムは RSEサーバーと同じジョブとして IBM i 上で実行されます。

2、3 番目の方法の場合、ジョブが RSE 通信サーバーと結びついていないため、ジョブの状態を監視するの

は容易ではありません。

2番目のバッチ・ジョブの場合、通常は QSYSWRKサブシステム下の QZRCSRVD (リモート・コマンド・サー

バー・デーモン) から、QUSRWRK サブシステム下のいずれかの QZRCSRV (リモート・コマンド・サーバー)

ジョブに投入されます。ただし、バッチ・ジョブは任意の設定でジョブを投入することが可能です。特別な初期設

定をする必要はありません。

3番目の対話型プログラムの場合は、5250エミュレーターを使用します。(RDi V9.5からは、5250エミュレー

ターが実装されているため、RDiから 5250セッションを開始することができます。) また、エミュレーターと RSE

サーバー内の接続を関連付けるため、事前に IBM i 側で STRRSESVR NAME (接続名) コマンドを実行して

おく必要があります。

以下の図は、対話型プログラムの実行の仕組みを表しています。

(図:対話型プログラムの実行の仕組み)

ここでは以下の手順に従い、先程コンパイルして作成したプログラムを対話型で実行します。

RSEの IBM i 接続を右クリックし、「Host Connection Emulator」を選択し、5250セッションを開始しま

す。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-56-

「ホスト・プロパティー」タブを開き、セッション・タイプ、ホスト名または IP アドレス、コード・ページ、画面サイ

ズなど、ホスト接続プロパティーを適宜指定し、上部にある「接続」をクリックします。

接続されると、「ホスト接続」タブに切り替わり、5250セッションが開始されます。

(ア) 任意のユーザー・プロファイル、パスワードを入力してサインオンします。

(イ) コマンド行に以下のコマンドを入力・実行してください。以上で 5250 エミュレーター側の設定が終了で

す。「接続名」は、RSEから IBM i への接続を構成した際に設定したものです。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-57-

STRRSESVR NAME (接続名)

(ウ) 以下のような画面が表示されるのを確認します。以上で 5250エミュレーター側の設定は終了です。

6. 以下の手順に従い、RSEからプログラムを実行します。

(ア) リモート・システム・ビューで、作成したプログラム PAYROLLを右クリックします。

(イ) ポップアップ・メニューが表示されます。「指定して実行」→「対話式」を選択します。

MAIN System i メインメニュー システム : SYSTEMA 次の 1 つを選択してください。 1. ユーザー・タスク 2. オフィス・タスク 3. 汎用システム・タスク 4. ファイル,ライブラリー,およびフォルダー 5. プログラミング 6. 通信 7. システムの定義または変更 8. 問題処理 9. メニューの表示 10. 情報援助オプション 11. System i Access のタスク 90. サインオフ 選択項目またはコマンド ===> STRRSESVR NAME (IBMIV7R2) F3= 終了 F4=プロンプト F9=コマンド の複写 F12= 取り消し F13= 情報援助 F23= 初期 メニュー の設定 (C) COPYRIGHT IBM CORP. 1980, 2007. MAIN I5/OS メインメニュー システム : MARS1 次の1つを選択してください。 1. ユーザー・タスク 2. オフィス・タスク 3. 汎用システム・タスク 4. ファイル,ライブラリー,およびフォルダー 5. プログラミング 6. 通信 7. システムの定義または変更 8. 問題処理 9. メニューの表示 10. 情報援助オプション 11. ISERIES ACCESS のタスク 90. サインオフ 選択項目またはコマンド ===> STRRSESVR NAME (MARS1.MAKUHARI.JAPAN.IBM.COM) F3= 終了 F4=ポワ]ポ n F9=テ u]n ゙ の複写 F12= 取り消し F13= 情報援助 F23= 初期 xp ャー の設定 PRG01 Time Reporting System 7/08/01 Maintenance Selection 10:46:39 Enter an X beside the application you want to maintain X Employee Master Maintenance Project Master Maintenance Reason Code Master Maintenance

IBM RSE COMMUNICATIONS SERVER 接続名 : IBMIV7R2 (C) COPYRIGHT IBM CORP., 2001, 2003. ALL RIGHTS RESERVED. JOB: QPADEV0003/MATSU/496895 コマンド: ADDLIBLE RDPLAB99 *LAST 完了 ステム : MARS1 次の 1 つを選択してください。 1. ユーザー・タスク 2. オフィス・タスク 3. 汎用システム・タスク 4. ファイル,ライブラリー,およびフォルダー 5. プログラミング 6. 通信 7. システムの定義または変更 8. 問題処理 9. メニューの表示 10. 情報援助オプション 11. System i Access のタスク

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-58-

(ウ) 5250エミュレーター側に、PAYROLLプログラム・メニューが表示されます。

(エ) 「Employee Master Maintenance」の左に Xを入力し、実行キーを押してください。

(オ) 「Employee Number」と「Action Code」に以下を入力し、実行キーを押してください。

・ 「Employee Number」: 234

・ 「Action Code」: A

PRG01 Time Reporting System 15/12/25 Maintenance Selection 14:27:02 Enter an X beside the application you want to maintain X Employee Master Maintenance Project Master Maintenance Reason Code Master Maintenance F3-End of Job

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-59-

(カ) 各フィールドに任意の情報を入力して実行キーを押してください。

(キ) 一つ前の画面に戻ります。F3キーを押して、アプリケーションを終了してください。

(ク) 対話型ジョブの制御を行なうために RSE に戻ります。リモート・システム・ビューの「オブジェクト」を右

クリックしてください。

PRG01 Time Reporting System 15/12/25 Employee Master Maintenance 14:28:45 Employee Number 234 Action Code A A-Add C-Change D-Delete F3-End of Job F4-Maintenance Selection

PRG01 Time Reporting System 15/12/25 Employee Master Maintenance 14:29:40 Number 000234 Name IBM TAROH Category 1 Department ISE Location MAKUHARI USRID TAROH Normal week hours 400 (eg. 40.0 enter 400) Time Reporting History Current Year To Prior Month Date Year Project Related 00000 0000000 0000000 Non Project Related 00000 0000000 0000000 F3-End of Job F4-Maintenance Selection F5-Employee Selection PRG01 Time Reporting System 7/08/01 Employee Master Maintenance 10:53:19 Number 000234 Name Category Department Location USRID Normal week hours (eg. 40.0 enter 400) Time Reporting History Current Year To Prior Month Date Year Project Related 00000 0000000 0000000 Non Project Related 00000 0000000 0000000

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-60-

(ケ) ポップアップ・メニューが表示されます。メニューより「対話型ジョブの保留解除」を選択してください。

(セッションの切断でも構いません。その場合には、「切断」を選択してください。)

以上で、対話式でのプログラム実行の演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-61-

5 プログラムのデバッグ

ここでは、CL および ILE RPG プログラムのデバッグ方法についてデバッガーの開始、ブレークポイントの設

定、変数の監視方法などについて学習します。

5.1 サービス・エントリー・ポイントを使用したデバッグ・セッションの開始

この演習では、ILE RPGプログラム PAYROLLG、PAYROLLGを呼び出すための CLプログラム CLR1を使

用します。

アプリケーションに対してデバッグ・セッションを開始するために、サービス・エントリー・ポイント機能を使用し

ます。これにより、RPG、COBOL、CL や C、C++で記述されたビジネス・ロジックを呼び出す側のアプリケーシ

ョンのデバッグがしやすくなります。サービス・エントリー・ポイントは、RSE から直接設定ができる特殊なエント

リー・ブレークポイントです。アプリケーションに対するデバッガー機能を開始するトリガーとなります。指定した

プロシージャーの最初の行が実行されると、アプリケーションに対するデバッガー機能が開始されます。サービ

ス・エントリー・ポイントが設定されている箇所が実行されると、即座にジョブの制御を行なうことが可能になりま

す。新しいデバッグ・セッションが開始され、プログラムの実行はその時点で停止します。サービス・エントリー・

ポイントを指定しておくと、複数のプログラムの呼び出しが行われるアプリケーションのデバッグを行う時、一連

の流れの中で、ある特定のプログラム以降についてデバッグをしたい場合などに効果的です。

下図は、サービス・エントリー・ポイントが設定された CLプログラムが呼び出されるタイミングで、デバッグ・セ

ッションが開始する様子を表しています。

(図:サービス・エントリー・ポイントとデバッグの開始)

今回の演習で使用するプログラムは、ライブラリー内のファイルの更新を伴うプログラムです。デバッグ中に

実動ライブラリー内のファイルの更新を許可するためには、あらかじめ以下の手順で設定しておく必要がありま

す。

1. ワークベンチ・メニューの「ウィンドウ」→「設定」をクリックします。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-62-

2. 設定ウィンドウの左側ペインにて「実行/デバッグ」→「IBM i デバッグ」を選択します。

3. 設定ウィンドウの右側ペインにて「実動ファイルの更新」にチェックを入れます。その後、「OK」をクリックして

ください。以上で設定は終了です。

以下の手順に従い、サービス・エントリー・ポイントを使用してデバッグ・セッションを開始します。

1. IBM i デバッグ・サーバーを起動します。「リモート・システム」ビューで、「オブジェクト」サブシステムを右ク

リックし、「リモート・サーバー」→「デバッグ」→「開始」を選択します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-63-

2. リモート・システム・ビューにて「ライブラリー・リスト」→「RDPLABXX (’XX’は任意の No.) 」→「CLR1」を右

クリックし、「デバッグまたはコード・カバレッジ (サービス・エントリー) 」→「サービス・エントリー・ポイントの

設定」を選択します。

3. 選択後、サービス・エントリー・ポイントの設定が正常に終了したことを示すメッセージが表示されるので、

「OK」を押してください。

4. サービス・エントリー・ポイントを設定すると自動的に「IBM i サービス・エントリー・ポイント」ビューがワーク

ベンチの右下部に開かれます。このビューを使用してサービス・エントリー・ポイントの消去、活動化、非活

動化、変更、更新を行なうことが可能です。

5. 先の演習で使用した 5250 エミュレーター・セッション画面を表示させ、以下のコマンドを入力・実行し、ライ

ブラリー・リストに RDPLABXX (’XX’は任意の No.) を追加しましょう。

ADDLIBLE LIB (RDPLABXX) (XXは任意の No.)

(既に設定されている場合、「ライブラリー RDPLABXX はすでにライブラリー・リストに存在している。」という

メッセージが表示されます。その場合、メッセージは無視して次に進んでください。)

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-64-

6. コマンド行にて以下のコマンドを入力・実行して、プログラム CLR1を開始します。

CALL PGM(RDPLABXX/CLR1) PARM (‘XX’) (XXは任意の No.)

7. プログラムを開始すると、即座に設定したサービス・エントリー・ポイントに到達し、ワークステーション上で

デバッグ・セッションが開始します。エディターでは CLR1のソース・コードが開かれます。デバッグ・パース

ペクティブからデバッグ機能に含まれる全ての機能を操作することが可能です。

【参考】デバッグが起動する際、「パースペクティブ切り替えの確認」画面が表示されます。それまで開

いていたリモート・システム・エクスプローラー・パースペクティブ (RSE パースペクティブ) から、デバ

ッグ・パースペクティブに切り替わることを確認するメッセージです。内容を確認し「はい」をクリックして

ください。

以上で、サービス・エントリー・ポイントを使用したデバッグ・セッション開始の演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-65-

5.2 ブレークポイントの設定

ここでは、実行可能行に対してブレークポイントを設定する方法について学習します。

以下の手順で演習を行ないます。

1. 以下いずれかの方法で、11行目にブレークポイントを追加します。

(ア) 方法その 1:ソース・ビューで、11行目にカーソルを合わせ、右クリックして「ブレークポイントの追加/

除去」を選択します。

(イ) 方法その 2:ソース・ビューで、11 行目の左端のグレーの部分をダブルクリックします。追加が完了し

たら、ソース・ビューにブレークポイントを示すチェック・マークが付加されます。

2. 続いて 99回のループ後にループ内で停止するように、条件付きブレークポイントを追加しましょう。

(ア) ソース・ビューにてカーソルを 8行目に移動させます。

(イ) デバッグ・パースペクティブの右側ペインの上部にあるブレークポイント・ビューを表示します。任意の

位置で右クリックし、「ブレークポイントの追加」→「行」を選択します。

付加されたブレークポイント

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-66-

(ウ) 行ブレークポイントの追加ウィンドウが開かれます。「次へ」を選択します。

(エ) オプション・パラメーターの頻度の項目で「開始」に 99 を入力します。入力後、「終了」を選択してくださ

い。これで、99回以上ループが実行された後にこのポイントで停止する設定ができました。

以上で、ブレークポイントの設定に関する演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-67-

5.3 変数のモニター

デバッグ・パースペクティブのモニター・ビューを使用して、変数の値をモニターできます。

この演習では、プログラム内の変数&countの値を以下の手順でモニターします。

1. デバッグ・パースペクティブのソース・ビューで、7 行目にある変数&count をダブル・クリックで選択し、右ク

リックします。

2. ポップアップ・メニューが表示されたら「式のモニター」を選択します。

3. モニター・ビューが開かれて、変数&countが表示されます。現在の値が 0であることを確認してください。こ

こまでの演習でブレークポイントとモニターの設定が完了しました。

4. 次に、アプリケーションを実行します。デバッグ・ビューのツールバーで「再開」アイコンを押してください。プ

ログラムの実行が再開し、8行目で停止します。 (99回目のループ時に 8行目で停止します。)

5. モニター・ビューにて変数&count の値が 99 となっていることを確認してください。また、ソース・ビューで、8

行目の左端グレーの列に矢印マークがあることを確認してください。これはプログラムの実行が 8行目で止

まっていることを表しています。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-68-

6. もう一度「再開」アイコンをクリックします。プログラムが再度 8行目で停止し、変数&countの値が 100にな

っていることを確認してください。

7. プログラムが次のブレークポイントである 11 行目で停止するように、もう一度「再開」アイコンをクリックしま

す。11行目で停止状態となっていることを確認してください。

以上で、変数のモニター機能に関する演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-69-

5.4 プログラムのステップイン

デバッガーではプログラム・コールに対するステップオーバーやステップイン機能も提供されています。ステッ

プオーバーでは、呼び出し先のプログラムはそのまま実行され、デバッガーは呼び出し元プログラム内の次の

実行可能ステートメントで停止します。ステップインでは、呼び出し先のプログラム内の次の実行可能ステートメ

ントで停止します。

ここでは以下の手順に従い、ステップイン機能について演習を行います。

1. デバッグ・ツールバーにて「ステップイン」アイコンを押してください。

2. PAYROLLG のソースが表示されます。プログラムのコンパイル時に指定したオプション・パラメーターによ

り表示される内容が、ソース (RPG:*SRCDBG、ILE RPG:*SOURCE) もしくはリスト・ビュー (RPG:

*LSTDBG、ILE RPG:*LIST) と異なります。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-70-

3. ソース・ビューの任意の場所で右クリック→「ビューの切り替え」→「*LISTINGの表示」を選択します。

4. これまでソースが表示されていた領域が、リスト・ビューに切り替えられます。今回使用しているプログラム

PAYROLLGには/Copyがありませんが、/Copyが存在するプログラムの場合、リスト・ビューに表示されま

す。

5. ソース・ビューに再度切り替えるため、リスト・ビューの任意の場所で右クリックして、「ビューの切り替え」→

「*SOURCEの表示」を選択してください。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-71-

以上で、プログラムのステップインの演習は終了です。

5.5 呼び出しスタックのリスト

デバッグ・ビューの左側ペインの上部に、呼び出しスタックの全項目が一覧表示されます。各スレッド単位にツ

リー構造でリストされます。スレッドはプログラムごとに展開できます。

スタック項目をダブルクリックすると、対応するソースが (可能な場合) 表示されます。ソースが表示可能でな

い場合には、ソース・ビューに「No Debug Data Available.」と表示されます。

この演習では、呼び出しスタックのリスト表示を以下の手順で進めていきます。

1. デバッグ・ビューの左側ペインで「スレッド 1」を見つけてください。

2. 「スレッド 1」が展開されていない場合は、「スレッド 1」の左側にある「△」をクリックして展開し、スタック項目

を表示してください。表示されるスタック項目は、異なるプログラム間および (もしくは) ILE モジュール間で

スイッチすることが可能です。

以上で、呼び出しスタックのリストに関する演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-72-

5.6 PAYROLLGでのブレークポイントの設定

ここでは以下の手順に従い、PAYROLLGにブレークポイントを設定します。

1. デバッグ・ビューで、「スレッド 1」の PAYROLLGを選択します。ソース・ビューに PAYROLLGのソースが表

示されます。

2. ソース・ビューにて、57 行目にブレークポイントを設定します。57 行目の左端のグレーの部分をダブルクリ

ックしてください。

3. 同様の方法で、58行目にもブレークポイントを設定します。

4. 87 行目の左端エリアを右クリックします。ポップアップ・メニューが表示されたら「ブレークポイントの追加/除

去」を選択します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-73-

5. これまでに設定したブレークポイントが全て、ブレークポイント・ビューに表示されているか確認してください。

(※) ブレークポイント・ビューは、ブレークポイントの位置を特定する際に効果的に利用できます。ブ

レークポイント・ビューでブレークポイントをダブルクリックすると、ソースの該当行にカーソルを自動的

に移動させることができます。またブレークポイントの追加、削除、使用可否の設定、編集を行なうこと

もできます。

以上で、PAYROLLGでのブレークポイントの設定の演習は終了です。

5.7 PAYROLLGのブレークポイントの除去

ここでは、先の演習で PAYROLLGに設定したブレークポイントを除去していきます。

1. ソース・ビューで、58 行目の左端グレー部分を右クリックし、「ブレークポイントの追加/除去」を選択します。

58 行目のブレークポイントを示すアイコンが消え、ブレークポイントが除去されます。 (Tips: 左端エリアの

ブレークポイント印をダブルクリックして除去することもできます。)

2. ブレークポイントの除去が完了したら、デバッグ・ツールバーの「再開」アイコンをクリックします。プログラム

の実行が再開され、57行目で停止します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-74-

3. 57行目で停止したら、再度「再開」アイコンをクリックしてください。5250エミュレーター側で入力待ちの状態

になります。5250エミュレーターを表示し、「Project Master Maintenance」の左に Xを入力し、実行キーを

押してください。

4. プログラムが次のブレークポイントである 87 行目で停止したことを確認します。デバッグ・ビューに戻り、ソ

ース・ビューにて 87行目で停止していることを確認してください。

以上で、PAYROLLGでのブレークポイントの除去の演習は終了です。

PRG01 Time Reporting System 15/12/25 Maintenance Selection 16:04:38 Enter an X beside the application you want to maintain Employee Master Maintenance X Project Master Maintenance Reason Code Master Maintenance F3-End of Job

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-75-

5.8 PAYROLLGでの変数のモニター

ここでは以下の手順に従って、PAYROLLGの変数のモニターおよび変更を行ないます。

1. ソース・ビューで、88行目にある変数 EMPAPLをダブルクリックして選択 (ハイライト) →右クリックして「式

のモニター」を選択します。

2. デバッグ・パースペクティブの右側ペインの上部で、「モニター」タブをクリックしてください。設定した変数が

モニター・ビューに表示されます。

3. 同様の方法で、91行目の PRJAPLおよび 113行目の RSCDEもモニターできるように設定します。モニタ

ー・ビューで、変数 PRJAPL に X が与えられていることが確認できます。これは先に 5250 エミュレーター

で「Project Master Maintenance」オプションに Xを入力したためです。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-76-

4. モニター・ビューで、変数RSCDEをダブルクリックしてください。変数の値フィールドが入力可能な状態にな

ります。

5. 変数RSCDEの入力フィールドに対して以下の値を入力し、実行キーを押してください。変数への値の代入

が完了です。以上で PAYROLLGでの変数のモニターの演習は終了です。

・ 変数 RSCDEの値: X

以上で、PAYROLLGでの変数のモニターの演習は終了です。

5.9 監視ブレークポイントの設定

監視ブレークポイントを使用すると変数が変更された際にユーザーに通知することが可能となります。ユーザ

ーが何らかのアクションをとるまでプログラムの実行が中断されます。

以下の手順に従って、監視ブレークポイントの設定を行ないましょう。

1. ソース・ビューの下部にある行番号フィールドに、カーソルを移動させます。移動後、フィールドに 116 と入

力して、実行キーを押します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-77-

2. ソース・ビューの表示が 116行目に移るのを確認してください。

3. 116行目の変数*IN60 をダブルクリックして選択 (ハイライト) し、右クリックして「監視ブレークポイントの追

加」を選択してください。

4. 監視ブレークポイントの追加ウィンドウが表示されます。

「アドレスまたは式」フィールドに、自動的に*IN60が入力されているのを確認してください。

「監視するバイト数」フィールドは、デフォルトで 0 に設定されています。0 は、その変数に定義済みのバイト

数を監視することを意味します。「終了」を選択してください。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-78-

5. デバッグ・ツールバーの「再開」アイコンをクリックしてください。アプリケーションは 5250 エミュレーターから

の入力待ちの状態となります。

6. 5250 エミュレーターの画面で、「Project Code」および「Action Code」に以下を入力してください。入力後、

実行キーを押します。

・ 「Project Code」: 123

・ 「Action Code」: D

PRG01 Time Reporting System 15/12/25 Project Master Maintenance 16:10:57 Project Code Action Code A-Add C-Change D-Delete F3-End of Job F4-Maintenance Selection PRG01 Time Reporting System 7/08/01 Maintenance Selection 21:01:53 Enter an X beside the application you want to maintain Employee Master Maintenance X Project Master Maintenance Reason Code Master Maintenance F3-End of Job

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-79-

7. 変数*IN60 が変更されたことを示す以下のメッセージが表示されることを確認してください。これは、監視ブ

レークポイントを設定したために表示されるメッセージです。

8. メッセージを確認後、「OK」をクリックします。ソース・ビューで、プログラムが 465 行目で停止するのを確認

してください。465行目は、変数*IN60を変更する行の次に来る実行可能な行です。

以上で、監視ブレークポイントの設定の演習が終了です。

PRG01 Time Reporting System 15/12/25 Project Master Maintenance 16:10:57 Project Code 123 Action Code D A-Add C-Change D-Delete F3-End of Job F4-Maintenance Selection PRG01 Time Reporting System 7/08/01 Maintenance Selection 21:01:53 Enter an X beside the application you want to maintain Employee Master Maintenance X Project Master Maintenance Reason Code Master Maintenance F3-End of Job

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-80-

5.10 デバッグ・セッションの終了

以下の手順に従い、デバッガーを終了します。

1. デバッグ・ツールバーの「再開」アイコンをクリックしてください。アプリケーションは 5250 エミュレーターから

の入力待ちの状態となります。

2. 5250 エミュレ

ーターにてF3 キ

ーを押してくださ

い。プログラムが終了したことを示す以下のメッセージが表示されます。「OK」をクリックしてください。

以上で、デバッグ・セッションの終了の演習が終了です。

5.11 デバッグ・アクションを使用した統合デバッガーの開始

サービス・エントリー・ポイントを使用する方法のほかにも、デバッグ・セッションを開始する方法がいくつかあり

ます。リモート・システム・ビューのプログラムもしくはサービス・プログラムのポップアップ・メニューから直接開

始する方法や、起動構成ウィンドウから開始する方法などがあります。プロンプトなしにリモート・システム・ビュ

ーから直接開始する方法では、プログラムに渡すパラメーターを指定することはできません。起動構成ウィンド

ウから開始する方法では、プログラムの呼び出し方法やパラメーターの指定が可能です。今回演習で使用する

プログラム CLR1は、パラメーターが必要となります。

ここでは以下の手順に従いデバッガーを開始します。

PRG01 Time Reporting System 15/12/25 Project Master Maintenance 16:13:12 Project Code 123 Action Code D A-Add C-Change D-Delete DELETE REQUESTED BUT RECORD DOES NOT EXIST F3-End of Job F4-Maintenance Selection PRG01 Time Reporting System 7/08/01 Maintenance Selection 21:01:53 Enter an X beside the application you want to maintain Employee Master Maintenance X Project Master Maintenance Reason Code Master Maintenance F3-End of Job

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-81-

1. リモート・システム・ビューにてプログラム CLR1 を選択し、右クリックして「デバッグ (プロンプト) 」→「対話

式」を選択してください。

2. 選択したプログラムに対する起動構成ウィンドウと呼ばれるデバッグ・プロンプト・ウィンドウが開かれます。

・「接続」および「デバッグするプログラムまたはサービス・プログラム」には、選択したプログラムに応じた

値があらかじめ設定された状態になっています。

・「名前」フィールドには以下を入力してください。

「名前」フィールド: CLR1

・「実動ファイルの更新」にチェックがない場合には、チェックを入れてください。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-82-

3. 次に、「開始方法」タブをクリックします。「開始方法」タブにはデフォルトで、デバッグ対象タブで指定された

プログラムの呼び出しコマンドが登録されています。今回使用するプログラム CLR1 はパラメーターが必要

なので、「プロンプト」をクリックしてパラメーターを設定します。

4. CALLコマンドのプロンプト・ウィンドウが開かれます。ウィンドウ内の「パラメーター」フィールドに、以下の値

を入力してください。入力後、「OK」をクリックします。

・ 「パラメーター」フィールド: ‘XX’ (XXは任意の No.)

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-83-

5. 起動構成ウィンドウの開始方法タブにパラメーターが設定された CALL コマンドのストリングが表示されて

いることを確認します。確認後、「デバッグ」をクリックしてください。

6. デバッグ・パースペクティブが開かれます。以下のメッセージが表示された場合には、メッセージを閉じずに、

以下の手順に従い、RSE サーバーと 5250 エミュレーターの対話型ジョブとの接続を確立させます。メッセ

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-84-

ージは、接続が確立された後に自動的に消え、デバッグ・パースペクティブが開かれます。

(手順) :5250エミュレーターの対話型ジョブと RSEサーバーとの接続

5250エミュレーターのコマンド行にて以下のコマンドを入力・実行してください。

STRRSESVR NAME (接続名)

MAIN IBM I メインメニュー システム : SYSTEMA 次の1つを選択してください。 1. ユーザー・タスク 2. オフィス・タスク 3. 汎用システム・タスク 4. ファイル,ライブラリー,およびフォルダー 5. プログラミング 6. 通信 7. システムの定義または変更 8. 問題処理 9. メニューの表示 10. 情報援助オプション 11. ISERIES ACCESS のタスク 90. サインオフ 選択項目またはコマンド ===> STRRSESVR NAME(IBMIV7R2) F3= 終了 F4=ポワ]ポ n F9=テ u]n ゙ の複写 F12= 取り消し F13= 情報援助 F23= 初期 xp ャー の設定 PRG01 Time Reporting System 7/08/01 Maintenance Selection 10:46:39 Enter an X beside the application you want to maintain X Employee Master Maintenance Project Master Maintenance Reason Code Master Maintenance F3-End of Job

このダイアログは

閉じません!!

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-85-

7. RDi側でデバッグ・パースペクティブが開かれ、対話式のデバッグ・セッションが開始されます。

8. ここで、デバッグ・ビューの「終了」アイコンをクリックし、デバッグ・セッションを終了させます。デバッグ・セッ

ションは以上で終了しますが、プログラムの実行自体は終了状態になりません。 (プログラムを終了させる

場合には 5250エミュレーターにて F3キーを押しますが、ここではまだ終了させません。)

9. 次の 2 つの方法で、デバッグ構成の作成、除去、編集ができます。いずれかの方法で「構成およびデバッ

グ」を選択してください。

① ワークベンチ・ツールバーの「デバッグ」アイコン (虫) をクリックして、リストから「構成: デバッグ」

を選択する

② ワークベンチ・メニューより「実行」→「デバッグ構成」を選択する

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-86-

10. 「構成およびデバッグ」ウィンドウが開かれます。直前に作成した構成「CLR1」を確認できます。

(※) 構成 CLR1 は対話型アプリケーションとしてのプログラム CLR1 に関するデバッグ構成です。こ

のウィンドウを使用して、デバッグ構成の変更や使用するパラメーター変更、構成のコピー、新規構成

の作成を行うことができます。

今回は何もせずに「閉じる」をクリックしてウィンドウを閉じてください。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-87-

11. 次に、この演習で作成したサービス・エントリー・ポイントを除去して、デバッグ・パースペクティブを閉じる演

習を行ないます。

(ア) RSE パースペクティブを開き、リモート・システム・ビューでー「ライブラリー・リスト」→「RDPLABXX

(XX は任意の No.) 」→「CLR1」を右クリック→「デバッグ (サービス・エントリー) 」→「サービス・エン

トリー・ポイントの除去」を選択します。

以上でデバッグ・アクションを使用した統合デバッガーの開始の演習は終了です。

5.12 ジョブのデバッグ

RSEのデバッガーはプログラムのデバッグだけでなく、ジョブのデバッグにも使用することが可能です。

ここでは以下の手順に従い、ジョブのデバッグを行ないます。

1. RSE パースペクティブのリモート・システム・ビューにて「接続名」→「ジョブ」→「ユーザー・アクティブ・ジョブ」

→「QINTER」を展開します。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-88-

2. QINTER配下のアクティブ・ジョブを右クリック→「指定してデバッグ」→「IBM i ジョブ」を選択してください。

3. デバッグ・セッションが開始され、デバッグ・パースペクティブが表示されます。プログラムに設定したときと

同様に、ジョブに対してもブレークポイントの設定や変数のモニターなどができます。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-89-

4. 今回はデバッグ・セッションを終了させるためにデバッグ・ビューの「ユーザー・ジョブ」を右クリック→「終了」

を選択します。デバッグ・セッションが終了します。

5. 5250エミュレーターにて F3キーを押してアプリケーションを終了させます。

6. 対話型ジョブの制御を行なうために RSEに戻り、リモート・システム・ビューで「オブジェクト」を右クリック

し、メニューで「対話型ジョブの保留解除」を選択してください。 (セッションの切断でも構いません。その場

合には、「切断」を選択してください。)

7. 5250エミュレーターはコマンド行にて SIGNOFF コマンドを実行後、ウィンドウの Xをクリックして閉じてくだ

さい。RDi もウィンドウ右上の Xをクリックして閉じてください。

以上で、ジョブのデバッグに関する演習は終了です。

【さわってみよう RDi V9.5 ~ IBM i 開発ツール】

-90-

サマリー

以上で RDiの演習は終了です。ここでは以下について演習を進めました。

・ RSEの基本操作方法

RDi V9.5から IBM i へ接続を構成して、IBM i 上のリソースにアクセスする方法について学びました。

次に、RSEを使用して ILE RPGプログラム・ソースの基本的な編集方法、またアプリケーション・ダイアグラム

の基本操作方法について学習しました。

編集した ILE RPGプログラム・ソースを IBM i 上でコンパイルする前に、ローカル PC上でエラーが発生しな

いか検査する機能や、実際に IBM i 上でコンパイルする方法およびログの確認方法について学習しました。

最後に、作成したプログラムのデバッグ方法、および、IBM i 内のジョブをデバッグする方法について学習しま

した。