WebSphere® Adapter for SAP Software は、 単純な BAPI、BAPI 作業単位、および BAPI 結果セットのために、アウトバウンド処理をサポートします。 アウトバウンド処理では、メッセージ・フローは SAP サーバー 上で、 BAPI および RFC が使用可能な他の関数を呼び出します。 アダプターがサポートしているのは、単純な BAPI のインバウンド処理のみです。 インバウンド処理では、SAP サーバーは RFC 対応関数 (BAPI 関数など) をアダプターからエンドポイントに送信します。
例えば、SAP サーバー上で新しい顧客を作成するサービスをビルドする場合があります。 「アダプター接続」ウィザードを実行して BAPI_CUSTOMER_CREATEFROMDATA 関数を発見すると、このウィザードによって BAPI_CUSTOMER_CREATEFROMDATA 用のビジネス・オブジェクト定義、および他の Service Component Architecture (SCA) サービス・リソースが生成されます。 BAPI アウトバウンド処理の際、アダプターはサービス要求を受信して、そのデータを BAPI 呼び出しに変換します。
単純な BAPI は、カスタマーのリストの検索などの、単一の操作を実行します。 アダプターは、単純な BAPI 呼び出しをそれぞれ単一のビジネス・オブジェクト・スキーマで表すことにより、この単純な BAPI 呼び出しをサポートします。
SAP サーバー上のユーザー定義のアウトバウンド・キューから関数呼び出しを送信するには、非同期 tRFC インバウンド処理も指定します。
最初の BAPI は従業員レコードをロックし、2 番目はレコードを更新し、3 番目は更新を承認します。 BAPI 作業単位を使用することの利点は、作業単位が 3 つの別個の機能で構成されているとしても、 メッセージ・フローが従業員レコードの変更を単一の呼び出しで要求できることです。 さらに、ビジネス・フローが正しく完了するために、BAPI が特定の順序で処理されることを SAP が求める場合、作業単位はこの順序をサポートします。
BAPI 結果セットは GetList および GetDetail 機能を使用して、SAP サーバー からデータの配列を取得します。 GetList 機能から戻される情報は GetDetail 機能への入力として使用されます。
アダプター接続ウィザードを使用して、 BAPI_CUSTOMER_GETLIST および BAPI_CUSTOMER_GETDETAIL 関数をディスカバーし、 2 つの BAPI 間のキー関係を構築します。 その後、ウィザードは BAPI のビジネス・オブジェクト定義を他の SCA サービス・リソースと共に生成します。 実行時にクライアントは BAPI_CUSTOMER_GETLIST ビジネス・オブジェクト内に値を設定し、 アダプターは SAP サーバー からカスタマー明細レコードの対応するセットを戻します。