다음을 통해 공유


Scope 셰이프 구성 방법

범위 셰이프는 해당 내용에 대한 컨텍스트 프레임워크를 제공합니다. 범위 셰이프의 첫 번째 블록은 scope 기본 작업이 수행되는 컨텍스트 블록 또는 본문입니다. try/catch 문의 try 블록과 유사합니다. 본문에 따라 범위 셰이프에는 하나 이상의 예외 처리기 블록과 보정 블록이 포함될 수도 있습니다.

참고

BizTalk Server 및 SQL Server 서로 다른 컴퓨터에 있는 여러 컴퓨터 환경에서 두 컴퓨터에서 UTC(협정 세계시)가 다른 경우 범위 셰이프에 대해 구성한 Timeout 속성이 BizTalk Server UTC 시간으로 인해 예상보다 일찍 트리거될 수 있습니다. SQL Server 컴퓨터는 동기화되지 않습니다. Coordinated Universal Time은 표준 시간대의 영향을 받지 않으므로 이는 표준 시간대 문제가 아닙니다.

Scope 셰이프를 트랜잭션 경계선으로 구성하려면 다음을 수행하십시오.

  1. 속성 창 트랜잭션 형식 속성을 Atomic 또는 Long Running으로 설정합니다.

    참고

    트랜잭션 유형을 원자성 또는 장기 실행으로 설정하려면 오케스트레이션 자체가 장기 실행 트랜잭션이어야 합니다.

  2. 트랜잭션 형식Atomic으로 설정된 경우 속성 창 다음 속성을 지정합니다.

    속성 Description
    Batch 오케스트레이션의 여러 인스턴스에서 이 트랜잭션을 다른 트랜잭션과 일괄 처리할 수 있는지 여부를 결정하는 부울 값입니다. BizTalk Server는 오케스트레이션의 여러 인스턴스에서 원자성 트랜잭션의 일괄 처리를 지원하지 않으므로 이 속성은 결코 BizTalk Server에서 사용되지 않습니다. 이 속성은 이후 릴리스에서는 지원되지 않습니다.
    격리 수준 동시 트랜잭션에서 데이터에 액세스할 수 있는 정도를 결정합니다.

    - 커밋됨 읽기 - 선택한 트랜잭션이 커밋될 때까지 동시 트랜잭션의 데이터 수정에 액세스하지 못하도록 합니다. 이 옵션은 Microsoft SQL Server의 기본 설정입니다.
    - 반복 가능한 읽기 - 선택한 트랜잭션이 완료될 때까지 읽기 잠금을 요구합니다.
    - 직렬화 가능 - 선택한 트랜잭션이 완료될 때까지 동시 트랜잭션이 데이터를 수정하지 못하도록 합니다. 이 옵션이 가장 제한적인 격리 수준입니다.
    재시도 오류가 발생할 때 이 트랜잭션을 재시도할지 여부를 결정하는 부울 값입니다. 기본값은 True입니다. 참고: Microsoft.XLANG.BaseTypes.RetryTransactionException을 throw하거나 오케스트레이션 엔진이 상태를 저장하거나 트랜잭션을 커밋할 수 없는 경우 원자성 트랜잭션이 다시 시도됩니다.
    제한 시간 트랜잭션이 사용되지 않아 실패하기까지의 시간(초)을 결정합니다. 시간 제한을 사용하지 않으려면 이 속성 값을 0으로 설정합니다. 참고: 이는 DTC 시간 제한이며 오케스트레이션 엔진에 의해 적용되지 않습니다. 원자성 트랜잭션의 경우에만 엔진에서 트랜잭션을 중단하지 않습니다. 트랜잭션은 커밋 시까지 정상적으로 진행되고, 내부 개체 중 하나를 통해 DTC 트랜잭션에 참여하는 경우에만 커밋 시 실패합니다.
  3. 트랜잭션 유형장기 실행으로 설정된 경우 속성 창 다음 속성을 지정합니다.

    속성 Description
    제한 시간 트랜잭션이 시간 초과되어 실패한 트랜잭션으로 간주되기까지의 시간(초)을 결정합니다. 시간 제한을 사용하지 않으려면 이 속성 값을 0으로 설정합니다.

로컬 변수를 포함하도록 Scope 셰이프를 구성하려면 다음을 수행하십시오.

  1. 오케스트레이션 보기 창에서 해당 Scope를 두 번 클릭합니다.

  2. scope 아래의 Variables 폴더를 마우스 오른쪽 단추로 클릭한 다음 새 변수를 클릭합니다.

  3. 오케스트레이션 변수를 추가하는 방법의 "변수를 추가하려면"의 2단계부터 진행합니다.