次の方法で共有


BizTalk Adapter for mySAP Business Suite のアーキテクチャの概要

Microsoft BizTalk Adapter for mySAP Business Suite は、WINDOWS Communication Foundation (WCF) カスタム バインドを実装します。このカスタム バインドには、SAP システムとの通信を可能にする 1 つのカスタム トランスポート バインド要素が含まれています。 SAP アダプターは、Microsoft Windows Communication Foundation (WCF) 基幹業務 (LOB) アダプター SDK ランタイムによってラップされ、WCF チャネル アーキテクチャを介してアプリケーションに公開されます。 SAP アダプターは、SAP Unicode RFC SDK (librfc32u.dll) の 64 ビットバージョンまたは 32 ビット バージョンを介して SAP システムと通信します。

次の図は、SAP アダプターを使用して開発されたソリューションのエンドツーエンド アーキテクチャを示しています。

SAP エンドツーエンド アーキテクチャ

アダプターの使用

SAP アダプターは、クライアント アプリケーションに WCF サービスとして SAP システムを公開します。 クライアント アプリケーションは、WCF チャネルを介して SAP アダプターと SOAP メッセージを交換して、操作を実行し、SAP システム上のデータにアクセスします。 上の図は、SAP アダプターを使用できる 4 つの方法を示しています。

  • WCF チャネル モデルを使用して SAP アダプターと SOAP メッセージを直接交換することで、SAP システムに対する操作を実行する WCF チャネル アプリケーションを使用します。 WCF チャネル モデル プログラミングを使用した SAP アダプターのソリューション開発の詳細については、「WCF チャネル モデルを 使用したアプリケーションの開発」を参照してください。

  • WCF クライアントのメソッドを呼び出して SAP システムに対する操作を実行する WCF サービス モデル アプリケーションを使用します。 WCF クライアントは、SAP アダプターによって公開される操作を .NET メソッドとしてモデル化します。 Microsoft Windows Communication Foundation (WCF) 基幹業務 (LOB) アダプター SDK または svcutil.exe ツールを使用して、SAP アダプターによって公開されるメタデータから WCF クライアント クラスを作成できます。 WCF サービス モデルのプログラミングと SAP アダプターの詳細については、「 WCF サービス モデルを使用したアプリケーションの開発」を参照してください。

  • bizTalk WCF-Custom アダプターを使用するように構成された BizTalk ポートを介して、BIZTALK SERVER アプリケーションの WCF-Custom トランスポートの種類のバインドとして構成された SAP バインディング。 BizTalk WCF-Custom アダプターを使用すると、BizTalk Server アプリケーションと WCF サービス間の通信が可能になります。 BizTalk WCF-Custom アダプターは、その WCF-Custom トランスポートの種類を通じてカスタム WCF バインドをサポートしています。これにより、BizTalk WCF-Custom アダプターで使用されるバインディングとして、構成システムに公開されている WCF バインディングを構成できます。 BizTalk Server ソリューションで SAP アダプターを使用する方法の詳細については、「BizTalk アプリケーションの開発」を参照してください。 BizTalk トランザクションは、SAP Binding にバインド プロパティを設定することで読み込むことができる BizTalk レイヤーチャネル バインド要素でサポートされています。

  • IIS でホストされる Web サービスを使用します。 このシナリオでは、SAP アダプターは、標準の WCF HTTP バインディングのいずれかを使用して IIS でホストされる WCF サービス プロキシを介して公開されます。

  • .NET Framework Data Provider for mySAP Business Suite を使用します。 Data Provider for SAP は SAP アダプター上で実行され、SAP システムへの ADO.NET インターフェイスを提供します。

    SAP アダプターと SAP RFC ライブラリは、常に、アダプターを使用するアプリケーションまたはサービスを使用してインプロセスでホストされます。

SAP アダプターと WCF

WCF は、クライアントとサービス間のチャネルを介した SOAP メッセージの交換に基づくプログラミング モデルを提供します。 これらのメッセージは、通信しているクライアントとサービスによって公開されるエンドポイント間で送信されます。

エンドポイントは、メッセージを受信する場所を指定する エンドポイント アドレス 、メッセージの交換に使用される通信プロトコルを指定する バインディング 、およびエンドポイントによって公開される操作とデータ型を指定する コントラクト で構成されます。 バインドは、メッセージをエンドポイントと交換する方法を定義するために、互いに積み重ね合う 1 つ以上のバインド要素で構成されます。

バインディングでは、少なくとも、エンドポイントとメッセージを交換するために使用されるトランスポートとエンコードを指定する必要があります。 エンドポイント間のメッセージ交換は、1 つ以上のチャネルで構成されるチャネル スタックを介して行われます。 各チャネルは、エンドポイント用に構成されたバインド内のバインド要素の 1 つの具象実装です。

WCF ドキュメントには、WCF と WCF プログラミング モデルの詳細が含まれています。

Microsoft BizTalk Adapter for mySAP Business Suite は、WCF カスタム バインドである SAP バインディング (Microsoft.Adapters.SAP.SAPBinding) を公開します。 既定では、このバインドには 1 つのカスタム トランスポート バインド要素である SAP Adapter Binding Element (Microsoft.Adapters.SAP.SAPAdapter) が含まれています。これにより、SAP システムでの操作が可能になります。 BizTalk Serverで SAP アダプターを使用する場合は、EnableBizTalkCompatibilityMode バインド プロパティを設定して、カスタム バインド要素である BizTalk レイヤード チャネル バインド要素を SAP アダプター バインド要素の上に読み込むことができます。 BizTalk レイヤード チャネル バインド要素は、SAP アダプターによって内部的に実装され、SAP バインディングの外部には公開されません。

Microsoft.Adapters.SAP.SAPBinding (SAP バインディング) と Microsoft.Adapters.SAP.SAPAdapter (SAP Adapter Binding Element) はパブリック クラスであり、構成システムにも公開されます。 SAP アダプター バインド要素はパブリックに公開されているため、SAP アダプターの機能を拡張できる独自のカスタム WCF バインドを構築できます。 たとえば、WCF チャネルまたは WCF サービス モデル プログラミング ソリューションでエンタープライズ シングル Sign-On (SSO) をサポートするカスタム バインドを実装したり、データベース操作を 1 つの多機能操作に集約したり、カスタム アプリケーションによって実装された操作と SAP システム上の操作の間でスキーマ変換を実行したりできます。

SAP アダプターは、Microsoft Windows Communication Foundation (WCF) 基幹業務 (LOB) アダプター SDK の上に構築され、WCF LOB アダプター SDK ランタイム上で実行されます。 WCF LOB アダプター SDK は、SAP アダプターがユーザーとアダプター クライアントに豊富な機能セットを提供するために利用するソフトウェア フレームワークとツール インフラストラクチャを提供します。

SAP アダプターと WCF LOB アダプター SDK

Microsoft BizTalk Adapter for mySAP Business Suite は、Microsoft Windows Communication Foundation (WCF) 基幹業務 (LOB) アダプター SDK によって提供される機能を活用し、SAP Unicode RFC SDK ライブラリ (librfc32u.dll) を介して SAP システムへの接続を提供する一連のコア コンポーネントを実装します。

WCF LOB アダプター SDK は、SAP アダプターが Windows Communication Foundation (WCF) とインターフェイスするソフトウェア レイヤーとして機能し、RFC SDK は SAP アダプターが SAP システムとインターフェイスするレイヤーとして機能します。 次の図は、SAP アダプターの内部コンポーネントと、これらのコンポーネントと RFC SDK の間の関係を示しています。

内部アダプター コンポーネント の関係

SAP システムへの接続

SAP アダプターは、SAP Unicode RFC SDK ライブラリ (librfc32u.dll) を介して SAP システムに接続します。 SAP アダプターは、SAP RFC SDK の 32 ビットバージョンと 64 ビット バージョンの両方をサポートします。 SAP RFC SDK を使用すると、外部プログラムは SAP システムで ABAP 関数を呼び出します。

SAP アダプターへの接続 URI を指定して、SAP システムへの接続を確立します。 SAP アダプターは、SAP システムへの次の種類の接続をサポートしています。

  • SAP アダプターが SAP アプリケーション サーバーに直接接続するアプリケーション ホストベースの接続 (A)。

  • SAP アダプターが SAP メッセージング サーバーに接続する負荷分散接続 (B)。

  • SAP システムへの接続が、saprfc.ini 構成ファイル内の宛先によって指定される宛先ベースの接続 (D)。 A、B、および R 型の接続がサポートされています。

  • リスナー接続 (R)。アダプターは、リスナー ホスト、リスナー ゲートウェイ サービス、リスナー プログラム ID (接続 URI 内で直接、または saprfc.ini 構成ファイル内の R ベースの宛先) によって指定された SAP システム上の RFC 変換先を介して RFC、tRFC、IDOC を受信します。

    saprfc.ini ファイルの詳細については、SAP ドキュメントの「SAPRFC.INI ファイル」を 参照してください

    SAP アダプターが SAP システムに接続する方法の詳細については、「SAP システム への接続を作成する」を参照してください。

参照

BizTalk Adapter for mySAP Business Suite について