9단계: 솔루션 테스트
이 항목에서는 X12 840 판매 주문 메시지를 EDI 규약이 배포된 HTTP 엔드포인트에 전송하여 혼성 응용 프로그램을 테스트합니다. 다음과 같은 샘플 판매 주문 메시지를 사용합니다.
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샘플을 다운로드할 수 있습니다.
메시지를 보내려면
샘플 프로젝트에서 MessageSender 프로젝트를 찾아서 빌드합니다.
결과 MessageSender 명령줄 실행 파일(프로젝트 내 \bin\Debug 폴더 아래)을 사용하여 배포된 EDI 계약에 메시지를 보냅니다. 이 도구는 다음 형식의 명령줄 매개 변수를 허용합니다.
MessageSender.exe <ServiceBusNamespace> <IssuerName> <IssuerKey> <EDI agreement endpoint> <MessageFilepath> <ContentType>
설명
매개 변수 이름 Description ServiceBusNamespace Service Bus 네임스페이스 IssuerName 지정한 네임스페이스에 대한 발급자 이름입니다. IssuerKey 지정한 네임스페이스에 대한 발급자 키입니다. EDI 규약 엔드포인트 EDI 규약이 배포되는 엔드포인트입니다. 2단계(Azure의 경우): EDI 규약 만들기에서 배포한 EDI 계약의 수신 설정 탭(및 그 안에 있는 전송 페이지)에서 이 엔드포인트 URL을 가져올 수 있습니다. 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"
SQL Server Management Studio 열고 SalesOrder 테이블이 포함된 데이터베이스에 연결한 다음 새 레코드가 테이블에 삽입되었는지 확인합니다. Qty 열의 값을 확인합니다. 121이어야 합니다.
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입니다.