プログラムおよびプロシージャーの呼び出し
ILE では、プログラムまたはプロシージャーのどちらかを呼び出すことができます。さらに、ILE RPG ではプロトタイプまたは非プロトタイプのプログラムおよ びプロシージャーを呼び出す機能が提供されます(プロトタイプとは、コンパイラーがコンパイル時にインターフェースを チェックできる呼び出しインターフェースの外部定義です)。
プログラムまたはプロシージャーを呼び出すのに望ましい方法は、 プロトタイプ呼び出しを使用することです。 プロトタイプのプロシージャーまたはプログラムに対するパラメーターの呼び出しおよび受け渡しのための構文は、組み込み関数と一緒に使用される、または式の中で使用される同一の自由形式構文を使用します。このため、プロトタイプ呼び出しは「自由形式」呼び出しとして参照されることがよく あります。
プログラムまたはプロシージャーの RPG 呼び出し元が存在しない場合や、プロシージャーがモジュールからエクスポートされない場合は、プロトタイプの指定は任意です。
プロトタイプが指定されていないと、RPG コンパイラーはプロシージャー・インターフェースからプロトタイプを生成します。プロシージャーにプロシージャー・インターフェースが含まれていない場合、RPG コンパイラーは、戻り値とパラメーターのないプロトタイプを生成します。
明示プロトタイプを持たないようなプロシージャーを呼び出すこともプロトタイプ呼び出しと見なされます。
次の場合には、プログラムまたはプロシージャーを呼び出すのに CALL または
CALLB 命令を使用してください。
- 非常に単純な呼び出しインターフェースの場合
- 演算項目 1 および演算項目 2 に PARM 命令の機能が必要な場合
- プロトタイプのパラメーター検査で可能である以上の柔軟性が必要な場合
この章では、次の処理を行う方法について説明します。
- プログラムまたはプロシージャーを呼び出す
- プロトタイプ呼び出しを使用する
- プロトタイプのパラメーターを渡す
- 固定形式の呼び出しを使用する
- プログラムまたはプロシージャーから戻る
- ILE バインド可能 API を使用する
- グラフィックス・ルーチンを呼び出す
- 特殊なルーチンを呼び出す