バージョン 6.3.3
 —  プログラミングガイド  —

3GL プログラムからの Natural サブプログラムの呼び出し

Natural サブプログラムは、第 3 世代プログラミング言語(3GL)で作成されたプログラミングオブジェクトから呼び出すことができます。 呼び出し元のプログラムは、標準の CALL インターフェイスをサポートする任意のプログラミング言語で作成できます。

この目的のために、Natural にはインターフェイス ncxr_callnat が用意されています。 3GL プログラムでは、必要なサブプログラム名を指定してこのインターフェイスを呼び出します。

注意:
あらかじめ Natural を有効化しておく必要があります。つまり、Natural オブジェクトで CALL ステートメントを使用して、呼び出し元の 3GL プログラムを呼び出しておく必要があります。

サブプログラムは、CALLNAT ステートメントで別の Natural オブジェクトから呼び出されたかのように実行されます。

END ステートメントまたは ESCAPE ROUTINE ステートメントで)サブプログラムの処理が終了すると、3GL プログラムに制御が戻ります。

このドキュメントでは、次のトピックについて説明します。


3GL プログラムからサブプログラムへのパラメータ渡し

呼び出し元の 3GL プログラムから Natural サブプログラムにパラメータを渡すことができます。 パラメータを渡す場合、CALL ステートメントを使用してパラメータを渡すときと同じルールが適用されます。

3GL プログラムでは、以下の 4 つのパラメータとともに Natural インターフェイス ncxr_callnat を呼び出します。

呼び出し元プログラムのパラメータの順序、フォーマット、および長さは、サブプログラムの DEFINE DATA PARAMETER ステートメント内のフィールドの順序、フォーマット、および長さと正確に一致している必要があります。 呼び出し元プログラムのフィールド名と呼び出されるサブプログラムのフィールド名は、同一である必要はありません。

Top of page

3GL プログラムからの Natural サブプログラムの呼び出し例

3GL プログラムから Natural サブプログラムを呼び出す方法の例については、Natural ルートディレクトリのサブディレクトリ samples\sysexuex にある以下の例を参照してください。

Top of page