コンテンツフレーム起動

プロシージャ 文書を SAP ライブラリストラクチャに組み込む

呼出先のプロシージャ ( サブルーチン、汎用モジュール、およびメソッド) は、常に呼出元プログラムと同じ内部セッションで実行されます。

このグラフィックは添付のテキストに説明されています

サブルーチン

サブルーチンをコールするには、次の命令

PERFORM <subr>[(<prog>)] ...

を使用します。<prog> オプションを指定しない場合は、サブルーチンは内部でコールされます。つまり、サブルーチンは呼出元プログラムに属し、ロードは行われません。

<prog> オプションを指定すると、コールは外部で行われます。つまりサブルーチンはプログラム<prog> に属します。サブルーチンをコールすると、プログラム <prog> 全体が、( まだロードされていない場合は) 呼出元プログラムの内部セッションにロードされます。ロードされたプログラムは、呼出元プログラムのプログラムグループに属します。ただし、サブルーチンが汎用グループに属している場合は、新しいプログラムグループが作成されます。外部のサブルーチンがどのプログラムグループに所属するかによって、インタフェースの作業領域および使用する画面が決定されます。ただし、外部のサブルーチンは使わない方が良いため、この割当は動的に変えることも可能です。

汎用モジュール

汎用モジュールをコールするには、次の命令

CALL FUNCTION <func> ...

を使用します。汎用モジュールのコールは、( 汎用モジュールが、同じ汎用グループの別のプロシージャにコールされる場合を除いては) 外部で行われます。汎用モジュールをコールすると、その汎用モジュールのグループ全体が、( まだロードされていない場合は) 呼出元プログラムの内部セッションにロードされます。内部セッションでは、汎用グループによって、独自のインタフェース作業領域と画面を持つ、別のプログラムグループが形成されます。これは、汎用グループでは、データと画面のカプセル化が外部サブルーチンより優れていることを意味します。

メソッド

メソッドをコールするには、次の命令

CALL METHOD [<ref>->|<class>=>]<meth> ...

を使用します。命令の <ref> オプションまたは <class> オプションを指定しない場合は、コールは同じクラス内でローカルに行われ、クラスはリロードされません。

<ref> オプションまたは <class> オプションを指定すると、メソッドのコールは、オブジェクト参照 <ref> またはクラス名<class> で指定されたクラスのメソッドに適用されます。メソッドをコールすると、クラスプール全体が、( まだロードされていない場合は) 呼出元プログラムの内部セッションにロードされます。クラスプールによって、内部セッション内に追加のプログラムグループが形成されます。このグループは、データおよび画面について呼出元と共有せず、このグループから外部サブルーチンをコールすることはできません。

呼出先プロシージャの終了

プロシージャを終了するには、次の命令

EXIT

または

CHECK <logexp>

を使用します。

 

 

 

 

コンテンツフレーム終了