次の方法で共有


手順 9:ソリューションのテスト

このトピックでは、EDI アグリーメントが展開されている HTTP エンドポイントに X12 840 販売注文メッセージを送信することで、ハイブリッド アプリケーションをテストします。 販売注文メッセージのサンプルは次のようになります。

ISA*00*          *00*          *ZZ*CONTOSO        *ZZ*NORTHWIND      *991221*1226*U*00401*000000025*0*T*:~
GS*PO*THEM*US*19991221*1226*1*X*004010~
ST*840*0002~
BQT*00*BQT02*20120619*001*20120719~
PER*1A*John*EM*John@contoso.com~
N1*001~
N2*co~
N3*Contoso*One Contoso Way~
N4*Redmond*WA*98052*US~
PO1*PO101*121*01*10*AA*A1*1~
CTT*475~
SE*10*0002~
GE*1*1~
IEA*1*000000025~

このメッセージでは、強調表示されたセグメント ( PO1 以降の行) に注文数量が含まれます。 このメッセージの注文数量は 121 です。 そのため、このメッセージを送信する場合は、 SalesOrder テーブルに挿入する必要があります。 数量を 100 未満に変更してメッセージを再送信することができます。その場合は FILE 送信ポートに指定したファイルの場所に送信される必要があります。

EDI 契約にこのメッセージを送信するには、Microsoft Azure BizTalk Servicesのサンプルに付属している MessageSender ツールを使用できます。 サンプルは から https://go.microsoft.com/fwlink/p/?LinkId=235057ダウンロードできます。

メッセージを送信するには

  1. サンプル パッケージに含まれる MessageSender プロジェクトをビルドします。

  2. 結果の MessageSender コマンド ライン実行可能ファイル (プロジェクト内の \bin\Debug フォルダーの下) を使用して、展開された EDI アグリーメントにメッセージを送信します。 このツールは、次の形式のコマンド ライン パラメーターを受け取ります。

    MessageSender.exe <ServiceBusNamespace> <IssuerName> <IssuerKey> <EDI agreement endpoint> <MessageFilepath> <ContentType>
    

    各パラメーターの意味は次のとおりです。

    パラメーター名 説明
    ServiceBusNamespace Service Bus の名前空間
    IssuerName 指定された名前空間の発行者名
    IssuerKey 指定された名前空間の発行者キー
    EDI agreement endpoint EDI アグリーメントが展開されているエンドポイント。 このエンドポイント URL は、「 手順 2 (Azure の場合): EDI 契約を作成する」でデプロイした EDI 契約の [受信設定] タブ (およびその中の [トランスポート] ページ) から取得できます。
    MessageFilePath サンプル要求メッセージが含まれているファイルへのパス。
    ContentType このチュートリアルでは、このパラメーターを text/plain に設定します。

    コマンド プロンプトを開き、MessageSender プロジェクトをビルドしたソリューションに移動します。 次のコマンドを実行し、注文数が 100 を超える要求メッセージを送信します。

    MessageSender.exe <service bus namespace> owner <issuer key>https://<namespace>.servicebus.appfabriclabs.com/7576ff3d-a0f3-4a46-a4f6-f5be4a50616a/DemoAgreement<path to the sample message> "text/plain"
    
  3. SQL Server Management Studio開き、SalesOrder テーブルを含むデータベースに接続し、新しいレコードがテーブルに挿入されていることを確認します。 [Qty] 列の値に注目してください。121 である必要があります。

  4. MessageSender を使用して別のメッセージを送信しますが、今回はメッセージに並べ替えられた数量の値を 99 に設定します。 これで、 SalesOrder テーブルにレコードが挿入されていないことに気付くでしょう。 代わりに、メッセージは、注文数量が 100 未満のメッセージを受信するために指定したファイルの場所にコピーされます。 受信したメッセージは次のようになります。

    <ns1:SalesOrder xmlns:ns0="http://schemas.microsoft.com/BizTalk/EDI/X12/2006" xmlns:ns1="http://ECommerceSalesOrder.Inbound">
      <CompanyCode>co</CompanyCode>
      <PartID>1</PartID>
      <Quantity>99</Quantity>
      <AskPrice>10</AskPrice>
      <RequestShipmentDate>2012-07-19</RequestShipmentDate>
      <Address>
        <Line1>Contoso</Line1>
        <Line2>One Contoso Way</Line2>
        <City>Redmond</City>
        <State>WA</State>
        <Country>US</Country>
        <Zipcode>98052</Zipcode>
      </Address>
      <Contact>
        <Firstname>John</Firstname>
        <Lastname>John@contoso.com</Lastname>
      </Contact>
      <Comments>Order from Partnerco</Comments>
      <DateNow>2012-06-19</DateNow>
    </ns1:SalesOrder>
    
    

    Quantity 要素の値に注目してください。 99です。

参照

チュートリアル 4: BizTalk Server 2013 を使用したハイブリッド アプリケーションの作成