次の方法で共有


手順 1: RFC を呼び出すための vPrev BizTalk プロジェクトを変更する

手順 1/3

完了までの時間: 10 分

目的: この手順では、既存の vPrev BizTalk プロジェクトに次の変更を加えます。

  • WCF ベースの SAP アダプターを使用して、SD_RFC_CUSTOMER_GET RFC のメタデータを生成します。

  • vPrev SAP アダプターを使用して RFC を呼び出すための要求メッセージを、WCF ベースの SAP アダプターを使用して RFC を呼び出すための要求メッセージにマップします。

  • WCF ベースの SAP アダプターを使用して受信した応答メッセージを、vPrev SAP アダプターの応答メッセージにマップします。

前提条件

  • SAP システムで SD_RFC_CUSTOMER_GET RFC を呼び出すには、vPrev BizTalk プロジェクトが必要です。

vPrev BizTalk プロジェクトを変更するには

  1. WCF ベースの SAP アダプターを使用して、SD_RFC_CUSTOMER_GET RFC のメタデータを生成します。 アダプター サービス BizTalk プロジェクト アドインを使用してメタデータを生成できます。

    RFC のメタデータを生成する方法については、「 SAP での RFC 操作のメタデータの参照、検索、および取得」を参照してください。 スキーマが生成されると、 SapBindingSchema.xsd のような名前のファイルが BizTalk プロジェクトに追加されます。 このファイルには、WCF ベースの SAP アダプターを使用してSD_RFC_CUSTOMER_GETを呼び出すためのスキーマが含まれています。

  2. SD_RFC_CUSTOMER_GET RFC のメタデータを生成すると、ポート バインド ファイルも作成されます。 次の手順では、このバインド ファイルを使用して、SAP システムにメッセージを送信する WCF-Custom 送信ポートを作成します。 操作の SOAP アクションは、メタデータを生成した操作にも設定されます。 たとえば、SD_RFC_CUSTOMER_GET RFC のメタデータを生成する場合、送信ポートの SOAP アクションの操作名は "SD_RFC_CUSTOMER_GET" になります。 ただし、オーケストレーションの一部として作成する論理送信ポートの操作名は、"Operation_1" のように異なる場合があります。 その結果、送信ポートを使用して SAP システムにメッセージを送信すると、エラーが発生します。 これを回避するには、オーケストレーションの論理送信ポートの操作名が、メタデータを生成した操作名と同じであることを確認します。

    そのため、このチュートリアルの場合、SD_RFC_CUSTOMER_GET RFC のメタデータを生成するため、論理送信ポート操作の名前を "SD_RFC_CUSTOMER_GET" に変更します。

  3. 要求メッセージの場合は、vPrev SAP アダプターを使用して生成されたスキーマを、WCF ベースの SAP アダプターを使用して生成されたスキーマにマップします。

    1. BizTalk マッパーを BizTalk プロジェクトに追加します。 BizTalk プロジェクトを右クリックし、[ 追加] をポイントし、[ 新しい項目] をクリックします。

      [ 新しい項目の追加 ] ダイアログ ボックスの左側のウィンドウで、[ マップ ファイル] を選択します。 右側のウィンドウで、[ マップ] を選択します。 RequestMap.btm など、マップの名前を指定します。 追加をクリックします。

    2. [ソース スキーマ] ウィンドウで、[ オープン ソース スキーマ] をクリックします。

    3. [BizTalk 型選択] ダイアログ ボックスで、プロジェクト名を展開し、[スキーマ] を展開して、vPrev SAP アダプターの要求メッセージのスキーマを選択します。 このチュートリアルでは、 SAP_Migration.SD_RFC_CUSTOMER_GET__x32003 を選択し、[OK] をクリック します

    4. [ ソース スキーマのルート ノード ] ダイアログ ボックスで、 SD_RFC_CUSTOMER_GET_Requestを選択し、[ OK] をクリックします。

    5. [宛先スキーマ] ウィンドウで、[ 宛先スキーマを開く] をクリックします。

    6. [BizTalk 型選択] ダイアログ ボックスで、プロジェクト名を展開し、[スキーマ] を展開して、WCF ベースの SAP アダプターの要求メッセージのスキーマを選択します。 このチュートリアルでは、 SAP_Migration.SapBindingSchema を選択し、[OK] をクリックします。

    7. [ ターゲット スキーマのルート ノード ] ダイアログ ボックスで、 SD_RFC_CUSTOMER_GETを選択し、[OK] をクリック します

      次の図に示すように、両方のスキーマの各要素をマップします。 左トリムの文字列ファンクトイドを使用して、CUSTOMER_T要素をマップします。 これを行うには、 ツールボックスから 文字列左トリム Functoid をドラッグし、マッパー グリッドにドロップします。 ソース スキーマの CUSTOMER_T 要素を Functoid に接続します。 同様に、変換先スキーマの CUSTOMER_T 要素を Functoid に接続します。 次の図は、Functoid を介して 2 つの要素がどのようにマップされるかを示しています。

      アダプター バージョン 間で要求メッセージをマップする

      文字列左トリム Functoid の詳細については、「文字列左トリム Functoid」を参照してください https://go.microsoft.com/fwlink/?LinkId=105774

    8. マップを保存します。

  4. 応答メッセージの場合は、vPrev SAP アダプターを使用して生成されたスキーマを、WCF ベースの SAP アダプターを使用して生成されたスキーマにマップします。

    1. BizTalk マッパーを BizTalk プロジェクトに追加します。 BizTalk プロジェクトを右クリックし、[ 追加] をポイントして、[ 新しい項目] をクリックします。

      [ 新しい項目の追加 ] ダイアログ ボックスの左側のウィンドウで、[ マップ ファイル] を選択します。 右側のウィンドウで、[ マップ] を選択します。 ResponseMap.btm など、マップの名前を指定します。 追加をクリックします。

    2. [ソース スキーマ] ウィンドウで、[ オープン ソース スキーマ] をクリックします。

    3. [BizTalk 型選択] ダイアログ ボックスで、プロジェクト名を展開し、[スキーマ] を展開して、WCF ベースの SAP アダプターの応答メッセージのスキーマを選択します。 このチュートリアルでは、 SAP_Migration.SapBindingSchema を選択し、[OK] をクリック します

    4. [ ソース スキーマのルート ノード ] ダイアログ ボックスで、 SD_RFC_CUSTOMER_GETResponseを選択し、[OK] をクリック します

    5. [宛先スキーマ] ウィンドウで、[ 宛先スキーマを開く] をクリックします。

    6. [BizTalk 型選択] ダイアログ ボックスで、プロジェクト名を展開し、[スキーマ] を展開して、vPrev SAP アダプターの応答メッセージのスキーマを選択します。 このチュートリアルでは、 SAP_Migration.SD_RFC_CUSTOMER_GET__x32003 を選択し、[OK] をクリック します

    7. [ ターゲット スキーマのルート ノード ] ダイアログ ボックスで、 SD_RFC_CUSTOMER_GET_Responseを選択し、[ OK] をクリックします。

    8. 次の図に示すように、両方のスキーマの各要素をマップします。

      アダプター バージョン 間で応答メッセージをマップする

    9. マップを保存します。

  5. BizTalk ソリューションを保存してビルドします。 ソリューションを右クリックし、[ソリューションの ビルド] をクリックします。

  6. ソリューションをデプロイします。 ソリューションを右クリックし、[ソリューションの デプロイ] をクリックします。

次のステップ

手順 2: BizTalk Server 管理コンソールでオーケストレーションを構成する」の説明に従って、WCF-Custom 送信ポートを作成し、この手順で作成したマップを使用するように構成します。

こちらもご覧ください

チュートリアル 2: SAP RFC BizTalk プロジェクトの移行