Receive 셰이프 구성 방법
Receive 셰이프
수신 셰이프를 사용하여 오케스트레이션을 시작할 수 있습니다. Activate 속성을 True로 설정하면 런타임 엔진은 들어오는 메시지를 테스트하여 올바른 형식인지 여부와 필터가 적용된 경우 필터 식이 충족되는지 여부를 확인합니다. 메시지 수신 기준이 충족되면 런타임 엔진은 새 오케스트레이션 instance 만들고 실행하며 수신 셰이프는 메시지를 받습니다.
참고
Receive 셰이프의 Activate 속성이 True로 설정된 경우 수신 은 오케스트레이션의 첫 번째 작업이어야 합니다.
참고
모든 Receive 셰이프에서 Activate 속성이 False로 설정된 경우 실행하려면 다른 오케스트레이션에서 오케스트레이션을 호출해야 합니다.
참고
Activate 속성이 True로 설정된 scope 내에 Receive 셰이프를 배치한 다음 변수의 기본 생성자 사용 속성을 False로 변경하지 않고 .NET 클래스 변수를 오케스트레이션에 추가하는 경우 activate receive 문은 생성된 XLANG/S 코드의 scope 외부에 있지만 디자인 화면은 계속 내부로 표시됩니다. scope.
각 오케스트레이션에는 Activate 속성이 True로 설정된 Receive 셰이프가 하나 이상 있어야 합니다.
이전에 보낸 메시지에 대한 간접 또는 비동기 응답을 요청-응답 포트를 사용하지 않고 받으려는 경우 이 메시지와 현재 실행 중인 오케스트레이션의 인스턴스 간에 상관 관계를 설정해야 응답자가 올바른 인스턴스에 대한 응답을 받을 수 있습니다. 들어오는 메시지의 값에 대해 후속 상관 관계를 설정하려는 경우 Receive 셰이프에 상관 관계 집합 초기화를 적용하고 이전에 초기화한 상관 관계 집합을 사용하여 상관 관계를 설정하려는 경우에는 상관 관계 집합 추적을 적용할 수 있습니다. 자세한 내용은 오케스트레이션에서 상관 관계 사용을 참조하세요.
Receive 셰이프를 구성하려면 다음을 수행하십시오.
메시지 및 포트 작업을 설정합니다.
오케스트레이션 보기 창에서 해당 오케스트레이션에 수신될 메시지 유형에 대해 메시지 및 포트 작업이 둘 다 정의되어 있는지 확인합니다.
속성 창 메시지 속성 드롭다운 목록에서 받을 메시지를 선택합니다.
속성 창 포트 작업을 선택하여 작업 드롭다운 목록에서 메시지를 받습니다.
—또는—
수신 셰이프에서 메시지를 받을 포트 소켓으로 수신 커넥터를 끌어옵니다.
수신 셰이프가 오케스트레이션을 활성화되도록 지정합니다.
속성 창에서 활성화 속성을 True로 설정합니다.
속성 창 필터 식 속성의 줄임표(...) 단추를 클릭하여 이 Receive 셰이프가 허용하는 메시지를 제한하는 필터를 만듭니다.
—또는—
수신 셰이프를 마우스 오른쪽 단추로 클릭한 다음 필터 식 편집을 클릭합니다.
식 필터 대화 상자가 나타납니다. 이 대화 상자에서 하나 이상의 필터 식을 만들 수 있습니다.
참고
필터를 적용하려면 먼저 메시지 유형을 정의하고 수신 셰이프에 할당해야 합니다.
상관 관계 집합을 지정하여 수신 셰이프가 허용하는 메시지를 제한합니다.
따라야 할 각 상관 관계 집합에 대해 다음 상관 관계 집합 속성의 드롭다운에서 상관 관계 집합을 검사.
초기화하려는 각 상관 관계 집합에 대해 Correlation Sets 초기화 속성의 드롭다운에서 상관 관계 집합을 검사.
필터 식 그리드 컨트롤
이 그리드 컨트롤을 통해 식을 구성하는 조건을 정의하여 필터 식을 작성할 수 있습니다. 그리드의 셀에서 조건을 추가, 편집 및 삭제할 수 있습니다. 이 그리드 컨트롤에는 속성, 연산자, 값 및 그룹화의 네 개의 열이 있습니다.
속성입니다. 속성 참조를 입력하거나 셀의 드롭다운 목록에서 속성을 선택할 수 있습니다. 이 목록에는 들어오는 메시지에 대한 속성이 포함됩니다.
연산자. 이 셀에 연산자를 입력하거나 드롭다운 목록에서 연산자를 선택할 수 있습니다. 사용할 수 있는 연산자는 다음과 같습니다.
피연산자 의미 == 같음 != 같지 않음 < 보다 작음 <= 작거나 같음 > 보다 큼 >= 크거나 같음 Exists Exists 값. 값 열의 셀에는 문자열 리터럴, 정수 리터럴 또는 null과 같은 모든 상수를 보유할 수 있습니다.
참고
선택한 속성이 문자열 유형이면 값을 따옴표로 묶어야 합니다(예: SMTP.From = "MyServer").
그룹화 방법. 이 열을 사용하여 조건부 그룹화를 제어할 수 있습니다. 필터 식은 항상 DNF(Disjunctive Normal Form)로 표시되므로 그룹화 방법이 자동으로 결정될 수 있습니다. "그리고"는 조건부가 다음에 오는 조건부와 함께 그룹화된다는 의미이고 "또는"은 조건부가 다음 행의 조건부와 별개라는 의미입니다. 조건부를 함께 그룹화하면 그리드 컨트롤 왼쪽에 회색 대괄호가 표시됩니다. 조건부 그룹은 중첩할 수 없습니다. 이 셀에 값을 지정하지 않으면 셀 기본값인 AND가 사용됩니다.
예를 들어 다음과 같은 식을 만들 수 있습니다.
MSMQ.MsgID = 1
이 필터를 사용하면 송신 포트 그룹은 MSMQ 메시지 ID가 1인 메시지에만 등록합니다.
추가 식을 만들고 이러한 식이 다른 식과 AND 또는 OR 관계를 가지도록 지정할 수 있습니다. 예를 들면 다음과 같습니다.
MSMQ.MsgID = 1 OR
SMTP.From = "MyServer"
이 경우에 송신 포트 그룹은 MSMQ 메시지 ID가 1이거나 MyServer라는 SMTP 서버에서 전송된 모든 메시지에 등록합니다.
힌트 레이블
이 필드는 사용 지침을 제공합니다. 레이블 텍스트는 활성 셀이 들어 있는 열에 따라 달라집니다. 레이블에는 다음과 같이 열 이름과 지침이 차례대로 표시됩니다.
속성입니다. 목록에서 들어오는 메시지에 대한 속성을 선택합니다.
연산자. 속성과 값을 비교할 연산자를 선택합니다.
값. 목록에서 메시지 속성을 선택하거나 리터럴 값을 입력합니다.
그룹화 방법. 이 행이 다음 행과 그룹화되는 방법을 지정합니다. '그리고'는 행을 연결하고 '또는'은 행을 분리합니다.
[위로 이동] 단추
선택한 행을 위로 이동하려면 이 단추를 클릭합니다. (먼저 그리드 컨트롤의 왼쪽에 있는 오른쪽 화살표 (>) 단추를 클릭하여 행을 선택합니다.
[아래로 이동] 단추
선택한 행을 아래로 이동하려면 이 단추를 클릭합니다. (먼저 그리드 컨트롤의 왼쪽에 있는 오른쪽 화살표 (>) 단추를 클릭하여 행을 선택합니다.
만든 필터 식 필드
이 읽기 전용 텍스트 상자에는 사용자가 작성 중인 식이 표시됩니다.