ティアンドトラスト Blog

技術情報に関して更新します。(月1更新予定)

2018年9月3日月曜日

SQLCLI について(RPGLEでSQLCLIを使用するには)

0 件のコメント :

RPGLESQLCLIを使用する場合、多種あるSQLCLI用のAPIを、使用する機能に合わせて呼び出します。
呼出しは、プログラムの動的呼び出し(CALL命令)ではなく、サブ・プロシージャ呼出しと同じように呼び出します。

すなわち、値を返すAPIを使用して、その値をメイン・プロシージャで使用する時は、EVAL命令、あるいは条件判断命令(IFDOWなど)で呼出し、返される値が不要な場合、CALLP命令で呼び出します。

RPGLEでサブ・プロシージャを呼び出す時に必要なものが、「プロトタイプ定義」と言われる、外部名、戻り値のタイプ/桁数、必要なパラメータの順番と個数とそれぞれのタイプ/桁数を定義したものになります。
1つのモジュール内で、メインとサブ・プロシージャを記述する時は、サブ・プロシージャ側に「プロシージャ・インターフェース定義」がありますので、プロトタイプ定義はオプション(IBM i V6以前のバージョンでは必須)になりますが、SQLCLIを使用する時は、別のモジュールやサービス・プログラムを使用する場合と同様にプロトタイプ定義が必須になります。