方法

このようなプログラムを作成するには、以下の一般的なアプローチを使用しま す。

  1. RPG III ソースで始める場合は、CVTRPGSRC コマンドを使ってソースを RPG IV に変換する。

    変換する場合には必ず、すべての /COPY メンバーおよび変換しようとするソースに よって呼び出されるすべてのプログラムを変換するようにしてください。また、プログラムの 呼び出しに CL を使用する場合には、OPM CL の代わり に ILE CL を使用していることを確認してください。

  2. プログラムが実行する活動化グループを決定する。

    この例のように、アプリケーション・プログラム名の後に名前を付けることができます。

  3. 使用するバインディング・ディレクトリーがある場合は、それらの名前を 識別する。

    このアプローチでは、バインディング・ディレクトリーを使用している場合、該当ディレクトリーは既 に作成済みのものと見なしています。 例えば自分のソースにバインドしたい、 サード・パーティーのサービス・プログラムがある場合もあります。 したがって、バインディング・ディレクトリーの名前だけは知っておく必要があります。

  4. CRTBNDRPG を使用して ILE プログラムを作成します。このとき、DFTACTGRP(*NO) を指定し、ACTGRP パラメーターに活動化グループ、さらにバインディング・ディレクトリーがあればそれを BNDDIR パラメーターに指定します。

ACTGRP(*CALLER) が指定されていて、このプログラムがデフォルトの活動化グループ内で 実行中のプログラムによって呼び出される場合には、このプログラムは 一時変更の有効範囲設定、オープンの有効範囲設定、および RCLRSC の面で、ILE の意味構造論にしたがって 働くということに注意してください。

この方針の主な欠点は、ILE プログラムを作成する際、後で再利用できる永続モジュール・オブジェクトがないため、他のモジュールにバインドできないことです。 そのうえ、プロシージャー呼び出しはバインディング・ディレクトリーで識別されたモジュール またはサービス・プログラムに対するものでなければなりません。 プログラムを 作る時に、バインディング・ディレクトリーを使わずに 2 つ以上のモジュールを バインドしようとすると、3 番目の方針が必要になります。