ALE Module のコンポーネント

ALE Module は Java で記述されており、Vision コネクター・フレームワークを拡張します。このモジュールは、以下のものから構成されます。

SAP では、Java および C で記述された RFC ライブラリーを提供しています。コネクターは、JAR ファイルとして提供され、実行されます。

図 50 に、ALE Module のアーキ テクチャーを示します。

図 50. ALE Module のアーキテクチャー

イベント処理コンポーネント

SAP からのイベントを処理する場合、コネクターは 図 50 に示したコンポーネントを次のように 使用します。

要求処理コンポーネント

統合ブローカーからの要求を処理する場合、コネクターは 図 50 に示したコンポーネントを次のように使用します。

リスナー・スレッド

リスナー・スレッドは、以下の動作を行います。

スレッドは、それがサポートする ALE 固有機能からのイベントを、同期的な方法で連続的に listen します。

Transaction IDs

SAP は、トランザクションとそれに対応する ID を使用してイベントを作成し、個々のデータが 1 回に限って SAP からデリバリーされることを保証します。SAP は、イベント・データとともに Transaction ID (TID) を送信します。イベント処理と要求処理に対する TID を集中管理するために、コネクターは各 TID を JMS-MQ メッセージとして WebSphere MQ キューに格納します。イベントを処理する場合、コネクターは関連する IDoc データをメッセージ・ボディとしても格納します。コネクターは、TID、TID 状況、および IDoc の処理状況をメッセージ・ヘッダーに格納します。

ALE 固有ビジネス・オブジェクト・ハンドラー

ALE 固有ビジネス・オブジェクト・ハンドラーは、イベント処理用と、要求処理用の 2 種類が提供されています。

イベント処理ビジネス・オブジェクト・ハンドラー

リスナー・スレッドは、以下を行うイベント処理ビジネス・オブジェクト・ハンドラーのインスタンスを生成します。

要求処理ビジネス・オブジェクト・ハンドラー

Vision コネクター・フレームワークは ALE 要求処理ビジネス・オブジェクト・ハンドラーをインスタンス化します。このハンドラーは、SAP 用の WebSphere ビジネス・オブジェクトにある TransactionId 属性の値をチェックします。この値が存在する場合は、以下のステップを続行します。

  1. JMS-MQ メッセージまたは SAP のいずれかから TID を取得します。
  2. ビジネス・オブジェクト・データを、SAP への RFC 呼び出しに必要な機能モジュール・インターフェースによって定義された IDoc データ形式に変換します。
  3. ALE インターフェースへの RFC 呼び出しを実行します。
  4. JMS-MQ メッセージ内でこの要求に対する TID の状況を更新します。
  5. 成功応答を統合ブローカーに戻します。

SAP 用のビジネス・オブジェクトの構造

SAP 用 WebSphere ビジネス・オブジェクトはそれぞれの IDoc を、制御レコード・ビジネス・オブジェクトとデータ・レコード・ビジネス・オブジェクトという 2 つの子ビジネス・オブジェクトを含む親ラッパー・ビジネス・オブジェクトとして表します。制御レコード・ビジネス・オブジェクトには、コネクターがビジネス・オブジェクトを処理するために必要とするメタデータが含まれています。データ・レコード・ビジネス・オブジェクトには、SAP アプリケーションによって処理される実際のビジネス・オブジェクト・データと、コネクターがそれを RFC 呼び出し用の IDoc 構造体に変換するために必要なメタデータが含まれています。

コネクターには、制御レコード用のビジネス・オブジェクト定義が含まれています。定義ファイル sap_idoccontrol.xsd は、¥repository¥SAP ディレクトリーに配置されます。

制御レコード・ビジネス・オブジェクトの TABNAM 属性は、以下のように、親ラッパー・ビジネス・オブジェクトがどの SAP 機能モジュールを呼び出すかを示します。

さらに、SAP が ALE のオブジェクトを正しく処理するためには、以下の属性に値を設定する必要があります。これらの値は ALE 構成に基づいて設定します。

両方のビジネス・オブジェクトの DOCNUM 属性は、データ・レコード・ビジネス・オブジェクトと制御レコード・ビジネス・オブジェクトとの関係を確立します。

サービス呼び出し要求を処理する場合には、ALE Module は単一のビジネス・オブジェクト内の複数の IDoc を処理できます。ただし、この処理を行えるようにするには、2 つ以上の親ラッパー・ビジネス・オブジェクトに対して別の複数 IDoc ラッパー・ビジネス・オブジェクトを追加する必要があります。このトップレベルの複数 IDoc ラッパー・ビジネス・オブジェクトには、親ラッパー・ビジネス・オブジェクトの配列を表す属性が含まれています。 詳細については、親ラッパー・ビジネス・オブジェクトを参照してください。

コネクターには、ビジネス・オブジェクトの生成ツールである SAPODA が組み込まれています。このツールは、IDoc 定義テキスト・ファイルを使用して ALE Module 用のビジネス・オブジェクト定義を生成します。ALE Module 用のビジネス・オブジェクトの開発 の詳細については、ALE Module のビジネス・オブジェクトの開発およびSAPODA を使用したビジネス・オブジェクト定義の生成を参照してください。

Copyright IBM Corp. 2004, 2005