前提条件
分散モデルは、BAPI呼び出しの潜在的な受信者を定義します。データの分散は追加の条件にリンクできるため、BAPI間またはBAPIとメッセージタイプ間の特定の依存関係をレシーバーフィルターとして定義できます。
これらのレシーバーフィルターのそれぞれについて、分散モデルが定義される前に、実行時の値が条件が満たされているかどうかを決定するフィルターオブジェクトが作成されます。
手順
分布モデルのクエリは、フィルターオブジェクトの決定とレシーバーの決定の実行の2つのサブフェーズに分けられます。
フィルタオブジェクトの決定
受信者の決定を実行する前に、BAPIに割り当てられているフィルターオブジェクトを決定する必要があります。フィルタオブジェクトが実行時にわかっている場合は、受信者の決定時に直接指定できます。そうでない場合は、汎用モジュールALE_BAPI_GET_FILTEROBJECTSが使用可能です。これにより、特定のBAPIに対応するフィルタオブジェクトが抽出されます。
受信者決定の実行
汎用モジュールALE_SYNC_BAPI_GET_RECEIVERは、同期BAPIの受信者を決定するためにアプリケーションプログラムによって呼び出されます。このモジュールは、すべてのレシーバーを含むテーブルを返します。論理システムに加えて、テーブルにはRFC宛先も含まれています。受信者の決定が条件に関連付けられている場合は、汎用モジュールに上記で決定されたフィルタオブジェクトの値を指定する必要があります。
ALE配布モデルからリモートBAPIを呼び出すための受信者の決定は、通常、次のように表示されます。
同期BAPIのレシーバを1つだけ決定する場合は、アプリケーションプログラムが汎用モジュールALE_BAPI_GET_UNIQUE_RECEIVERを呼び出します。