5단계: Contoso 프라이빗 프로세스 오케스트레이션 수정
이 단계에서는 Contoso용 ERP(Enterprise Resource Planning) 시스템과 통합하도록 프라이빗 프로세스 오케스트레이션을 수정합니다. Contoso용 ERP 시스템은 제품 가격 및 가용성을 위해 내부적으로 정의된 스키마를 사용합니다. 3A2 - 가격 및 PIP(가용성 파트너 인터페이스 프로세스)에 대한 프라이빗 프로세스를 사용자 지정하면 스키마 매핑 정보를 사용하여 ERP 시스템과 통합할 수 있습니다.
Contoso PriceAndAvailability 및 RNPIPs 어셈블리에 대한 참조를 추가하려면
contoso 솔루션이 솔루션 탐색기 표시되면 PrivateResponder 프로젝트를 마우스 오른쪽 단추로 클릭한 다음 참조 추가를 클릭합니다.
참조 추가 대화 상자에서 찾아보기를 클릭합니다. <drive>:\Program Files\Microsoft BizTalk <version> Accelerator for RosettaNet\Bin 폴더로 이동한 다음, 다음 어셈블리를 선택합니다.
Microsoft.Solutions.BTARN.CommonTypes.dll
Microsoft.Solutions.BTARN.ConfigurationManager.dll
Microsoft.Solutions.BTARN.GlobalSchemas.dll
Microsoft.Solutions.BTARN.PublicResponder.dll
Microsoft.Solutions.BTARN.Schemas.RNPIPs.dll
Microsoft.Solutions.BTARN.Shared.dll
Microsoft.Solutions.BTARN.XSDClasses.GlobalSchemas.dll
추가를 클릭합니다.
참조 추가 대화 상자에서 프로젝트 탭을 클릭하고 ContosoPriceAndAvailability 및 HeaderHelper 프로젝트를 선택한 다음 추가를 클릭합니다.
확인을 클릭합니다.
Microsoft 개발 환경 대화 상자에서 확인을 클릭합니다.
새 메시지 유형을 만들려면
솔루션 탐색기 PrivateResponder 오케스트레이션을 두 번 클릭하여 엽니다.
솔루션 탐색기 오케스트레이션 보기를 클릭합니다.
오케스트레이션 보기에서 메시지를 마우스 오른쪽 단추로 클릭한 다음 새 메시지를 클릭합니다.
속성 창 식별자 상자에 PIP3A2RequestMessage를 입력합니다.
메시지 유형 상자에서 드롭다운 화살표를 클릭하고 스키마를 확장한 다음 참조된 어셈블리>에서 선택을 선택합니다<.
아티팩트 유형 선택dialog 상자의 왼쪽 창에서 Microsoft.Solutions.BTARN.Schemas.RNPIP 를 선택하고 오른쪽 창에서 _3A2PriceAndAvailabilityQueryMessageGuideline_v1_3 선택한 다음 확인을 클릭합니다.
3~6단계를 반복하여 다음 정보를 사용하여 솔루션에 대한 모든 메시지 유형을 만듭니다.
ID 어셈블리 메시지 유형 PIP3A2ResponseMessage Microsoft.Solutions.BTARN.
Schemas.RNPips_3A2PriceAndAvailability
ResponseMessageGuideline_v1_3Contoso3A2ResponseMessage ContosoPriceAndAvailability rootPriceResponse Contoso3A2RequestMessage ContosoPriceAndAvailability rootPriceRequest 솔루션에 대한 메시지 형식 만들기를 완료했습니다.
새 변수를 만들려면
오케스트레이션 뷰에서 변수를 마우스 오른쪽 단추로 클릭한 다음 새 변수를 클릭합니다.
속성 창 식별자 상자에 contosoResponseXML을 입력합니다.
형식 상자의 드롭다운 목록에서 .NET 클래스>를 선택합니다<.
아티팩트 유형 선택 대화 상자의 왼쪽 창에 있는 현재 프로젝트 및 참조 노드에서 System.Xml선택하고 오른쪽 창의 목록에서 XmlDocument 를 선택한 다음 확인을 클릭합니다.
오케스트레이션 뷰에서 변수를 클릭한 다음 새 변수를 클릭합니다.
속성 창 식별자 상자에 submitMessage를 입력합니다.
형식 상자의 드롭다운 목록에서 .NET 클래스>를 선택합니다<.
아티팩트 유형 선택 대화 상자의 왼쪽 창에서 현재 프로젝트 및 참조 노드를 확장하고 , Microsoft.Solutions.BTARN.Shared를 선택하고, 오른쪽 창의 목록에서 SubmitRNIF 를 선택한 다음 확인을 클릭합니다.
오케스트레이션 필터 식을 변경하려면
오케스트레이션 Designer ReceiveFromPublicProcessResponder 셰이프를 선택합니다.
속성 창 필터 식 상자에서 값 상자를 클릭한 다음 줄임표 단추(...)를 클릭하여 식 필터링 대화 상자를 엽니다.
식 필터링 대화 상자의 그룹화 기준 섹션에서 첫 번째 줄의 OR 값을 클릭한 다음 드롭다운 목록에서 AND 를 선택합니다.
식 필터링 대화 상자에서 여기를 클릭하여 새 행을 추가한 다음, 드롭다운 목록에서 Microsoft.Solutions.BTARN.GlobalSchemas.SCPIPCode 를 선택합니다.
동일한 행에서 값을 클릭한 다음 "3A2"를 입력합니다.
같은 행의 그룹화 기준 상자에서 AND를 클릭한 다음 드롭다운 목록에서 OR을 선택합니다.
식 필터링 대화 상자에서 방금 만든 행을 선택한 다음 위쪽 화살표 단추를 한 번 클릭하여 행을 한 번 위로 이동합니다.
새 행을 추가하려면 여기를 클릭하고 드롭다운 목록에서 Microsoft.Solutions.BTARN.GlobalSchemas.SCPIPCode를 선택합니다.
동일한 행에서 값을 클릭한 다음 "3A2"를 입력합니다.
확인을 클릭합니다.
비즈니스 프로세스 워크플로를 수정하려면
메시지 할당 셰이프를 도구 상자에서 디자인 화면으로 끌어서 ReceiveFromPublicProcessResponder 셰이프 아래에 놓습니다. 만든 ConstructMessage_1 셰이프를 선택하고 속성 창의 이름 상자에 ConstructPIP3A2RequestMessage를 입력합니다.
Transform 셰이프를 디자인 화면으로 끌어서 ConstructPIP3A2RequestMessage 셰이프 아래에 놓습니다. 만든 ConstructMessage_1 셰이프를 선택하고 속성 창의 이름 상자에 ConstructContoso3A2RequestMessage를 입력합니다.
보내기 셰이프를 디자인 화면으로 끌어서 ConstructContoso3A2RequestMessage 셰이프 아래에 놓습니다.
수신 셰이프를 디자인 화면으로 끌어 Send_1 셰이프 아래에 놓습니다.
오케스트레이션 디자인 화면에서 빈 영역을 클릭합니다.
속성 창 트랜잭션 유형 속성을 선택한 다음 장기 실행을 클릭합니다.
범위 셰이프를 디자인 화면으로 끌어 Receive_1 셰이프 아래에 놓습니다.
속성 창 트랜잭션 유형 속성 드롭다운 목록에서 범위 셰이프에 대해 원자성 을 선택합니다.
호출 규칙 셰이프를 디자인 화면으로 끌어서 도구상자에서 도형을 범위 셰이프 안에 놓는 레이블에 놓습니다. 호출 규칙 셰이프의 속성 창 이름 상자에 Execute3A2Vocabulary를 입력합니다.
변환 셰이프를 디자인 화면으로 끌어서 Scope_1 셰이프 아래에 놓습니다. ConstructMessage_1 도형을 클릭합니다. 속성 창 이름 상자에 Construct3A2ResponseMessage를 입력합니다.
식 셰이프를 디자인 화면으로 끌어서 Construct3A2ResponseMessageTransform 셰이프 아래에 놓습니다.
Visual Studio의 파일에서 모두 저장 을 클릭하여 프로젝트를 저장합니다.