WebSphere Message Broker バージョン 8.0.0.5 オペレーティング・システム: AIX、HP-Itanium、Linux、Solaris、Windows、z/OS

製品の最新バージョンについては、IBM Integration Bus バージョン 9.0 をご覧ください。

BAPI インターフェース

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 は、カスタマーのリストの検索などの、単一の操作を実行します。 アダプターは、単純な BAPI 呼び出しをそれぞれ単一のビジネス・オブジェクト・スキーマで表すことにより、この単純な BAPI 呼び出しをサポートします。

単純な BAPI をアウトバウンド処理またはインバウンド処理に使用できます。 単純な BAPI のモジュールを構成する際に、同期 RFC 処理または非同期トランザクション RFC (tRFC) 処理を指定できます。 さらにアウトバウンド処理の場合には、キューに入れられた非同期 RFC (qRFC) 処理を指定でき、この処理では BAPI は SAP サーバー上の事前定義されたキューに送信されます。
  • 同期 RFC 処理では、SAP サーバーおよびアダプターは処理時に使用可能でなければなりません。
    • アウトバウンド処理では、メッセージ・フローが要求を送信し、SAP サーバーからの応答を待機します。
    • インバウンド処理では、SAP サーバーが要求をアダプターを介してエンドポイントに送信し、アダプターからの応答を待機します。
  • 非同期 tRFC アウトバウンド処理では、アダプターはトランザクション ID を、SAP サーバーへの関数呼び出しに関連付けます。 アダプターは、 SAP サーバーからの応答を待機しません。 送信が正常に行われないと、メッセージ・フローは SAP トランザクション ID (TID) を使用して再び要求を行います。 TID は、ご使用のメッセージ内のフィールドです。
  • 非同期 tRFC インバウンド処理では、SAP サーバーが関数呼び出しを実行する際にアダプターが使用可能である必要はありません。 関数呼び出しは、呼び出される関数のリスト上に配置され、正常に行われるまで呼び出しが行われます。

    SAP サーバー上のユーザー定義のアウトバウンド・キューから関数呼び出しを送信するには、非同期 tRFC インバウンド処理も指定します。

  • 非同期 qRFC アウトバウンド処理における処理は、非同期 tRFC アウトバウンド処理と同様です。 TID が関数呼び出しに関連付けられ、アダプターは SAP サーバーからの応答を待機しません。 さらに BAPI は SAP サーバー上の事前定義されたキューに送信されます。 BAPI を事前定義されたキューに送信することにより、送信された順序をそのままに維持できます。

BAPI 作業単位インターフェース

BAPI 作業単位は、タスクを完了するために順番に処理される BAPI のセットで構成されます。 例えば、SAP システム内の従業員レコードを更新するには、そのレコードを更新する前にロックする必要があります。 このタスクは、同じ作業単位内で 3 つの BAPI を順番に呼び出すことによって実行されます。 以下の 3 つの BAPI は、そうした作業単位を形成するシーケンスの種類を示しています。
  • BAPI_ADDRESSEMP_REQUEST
  • BAPI_ADDRESSEMP_CHANGE
  • BAPI_ADDRESSEMP_APPROVE

最初の BAPI は従業員レコードをロックし、2 番目はレコードを更新し、3 番目は更新を承認します。 BAPI 作業単位を使用することの利点は、作業単位が 3 つの別個の機能で構成されているとしても、 メッセージ・フローが従業員レコードの変更を単一の呼び出しで要求できることです。 さらに、ビジネス・フローが正しく完了するために、BAPI が特定の順序で処理されることを SAP が求める場合、作業単位はこの順序をサポートします。

BAPI 結果セット・インターフェース

BAPI 結果セットは GetList および GetDetail 機能を使用して、SAP サーバー からデータの配列を取得します。 GetList 機能から戻される情報は GetDetail 機能への入力として使用されます。

例えば、カスタマーの集合に関する情報を取得する場合は、照会 BAPI として働く BAPI_CUSTOMER_GETLIST、および結果 BAPI として働く BAPI_CUSTOMER_GETDETAIL を使用します。 BAPI は以下のステップを実行します。
  1. BAPI_CUSTOMER_GETLIST 呼び出しはキーのリスト (例えば CustomerNumber) を戻します。
  2. 各キーは BAPI_CUSTOMER_GETDETAIL のビジネス・オブジェクトに動的にマップされます。
  3. BAPI_CUSTOMER_GETDETAIL は複数回処理され、これによってカスタマー情報の配列が戻されます。

アダプター接続ウィザードを使用して、 BAPI_CUSTOMER_GETLIST および BAPI_CUSTOMER_GETDETAIL 関数をディスカバーし、 2 つの BAPI 間のキー関係を構築します。 その後、ウィザードは BAPI のビジネス・オブジェクト定義を他の SCA サービス・リソースと共に生成します。 実行時にクライアントは BAPI_CUSTOMER_GETLIST ビジネス・オブジェクト内に値を設定し、 アダプターは SAP サーバー からカスタマー明細レコードの対応するセットを戻します。

特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        最終更新:
        
        最終更新: 2015-02-28 17:49:48


概念トピック概念トピック | バージョン 8.0.0.5 | scsap_bapiov