테이블 폴 활동

테이블 폴 활동은 특수 플래그 열의 상태를 지정된 시간 간격으로 확인하여 데이터베이스 테이블의 행에서 데이터베이스 조작(삽입 또는 업데이트)이 발생했는지 여부를 확인합니다.

삽입 및 업데이트 조작의 경우 테이블 폴 활동은 런타임 동안 데이터베이스 테이블에서 변경한 데이터를 리턴하고 오케스트레이션의 변수로 해당 데이터를 직접 맵핑합니다. 그러나 삽입된 행 가져오기업데이트된 행 가져오기 활동은 변경된 데이터를 버퍼 테이블에 리턴하고 해당 버퍼 테이블은 오케스트레이션의 변수로 맵핑됩니다.
주: 데이터베이스에 트리거를 추가해서는 안되는 경우에만 삽입된 행 가져오기, 삭제된 행 가져오기업데이트된 행 가져오기 활동 대신 테이블 폴 활동을 사용하십시오.
Studio에서 테이블 폴 활동을 구성하기 전에, 먼저 소스 데이터베이스 테이블에서 두 개의 추가 데이터베이스 열을 작성하거나 데이터베이스 테이블에서 적합한 기존 데이터베이스 열 두 개를 사용해야 합니다. 소스 데이터베이스 테이블에는 다음 데이터베이스 열이 필요합니다.
  • INTEGER 유형의 순서 열 - 이 열에는 기본 키(일련의 고유 번호: 1, 2, 3 ...)가 포함됩니다.
  • CHAR(1) 유형의 플래그 열 - 이 열에는 통합 어플라이언스가 런타임에서 행을 처리해야 하는지 여부를 판별하기 위해 사용하는 플래그가 포함됩니다.

테이블 폴 활동이 포함된 오케스트레이션이 통합 어플라이언스에서 실행되기 전에 데이터베이스 테이블에서도 해당 열을 채워야 합니다. 통합 어플라이언스가 런타임 동안 행을 처리하지 않도록 하려면 플래그 열을 P로 설정하십시오. 통합 어플라이언스가 런타임 동안 행을 처리하도록 하려면 플래그 열을 로 설정하십시오.

다음 예제 데이터베이스 테이블에서는 다음 그림과 같이 플래그 열의 모든 값이 처음에 P로 설정됩니다.
사용자 정의 폴
주의: 플래그 열의 상태를 관리해야 합니다. 행을 처리한 후에는 다음 예제 시나리오의 설명대로 처리를 위해 통합 어플라이언스가 플래그 열을 P로 변경합니다.
  1. 데이터베이스에 행이 삽입됩니다. 플래그 열은 행에 대해 로 설정됩니다.
  2. 테이블 폴 활동은 처음 실행되고 플래그 값을 이 행에 대해 P로 설정합니다.
  3. 동일한 행이 업데이트되고 테이블 폴 활동이 다시 실행됩니다. 통합 어플라이언스가 플래그 열을 확인하고 플래그는 이 행이 이미 처리된 것으로 표시하므로 활동의 리턴 데이터에 행이 리턴되지 않습니다.

통합 어플라이언스가 행을 다시 처리하려면 동일한 소스 데이터베이스 테이블에 액세스하는 테이블 폴 활동에 대한 오케스트레이션 작업이 실행되기 전에 플래그 열을 다시 로 재설정해야 합니다.

테이블 폴 활동을 오케스트레이션에 추가 및 구성하는 단계는 다음 프로시저에 설명되어 있습니다.

오케스트레이션에서 테이블 폴 활동 추가

  1. 오케스트레이션을 작성하거나 여십시오. 오케스트레이션의 그래픽 표시가 열립니다.
  2. 활동 탭을 선택하고 데이터베이스 폴더를 펼치십시오.
  3. 테이블 폴 활동을 오케스트레이션으로 끌어오십시오.
  4. 테이블 폴 활동을 선택하십시오.

데이터베이스 엔드포인트 작성, 선택 또는 편집

  1. 점검 목록에서 엔드포인트 선택 태스크를 클릭하고 다음 조치 중 하나를 선택하십시오.
    • 기존 엔드포인트를 선택하십시오.
      1. 찾아보기를 선택하십시오. 프로젝트 탐색기가 열립니다.
      2. 기존 엔드포인트를 선택하고 확인을 클릭하십시오. 데이터베이스 조작에 대해 폴할 소스 테이블 열 지정 프로시저로 건너뛰십시오.
    • 기존 엔드포인트를 선택하고 편집하십시오.
      1. 찾아보기를 선택하십시오. 프로젝트 탐색기가 열립니다.
      2. 기존 엔드포인트를 선택하고 확인을 클릭하십시오.
      3. 편집을 클릭하십시오. 엔드포인트 편집 분할창이 표시됩니다.
    • 새 엔드포인트를 작성하십시오.
      1. 새로 작성을 선택하십시오. 엔드포인트 작성 분할창이 열립니다.
  2. 데이터베이스 엔드포인트를 작성 또는 편집하십시오.

데이터베이스 조작에 대해 폴할 소스 테이블 열 지정

  1. 점검 목록에서 엔드포인트 선택을 클릭하십시오. 엔드포인트 선택 분할창이 열립니다.
  2. 찾아보기를 클릭하십시오. 단일 소스 테이블 대화 상자가 열립니다.
  3. 런타임 동안 테이블 폴 활동이 데이터베이스 조작에 대해 폴하는 테이블을 선택하십시오.
  4. 사용자 스키마로 필터 목록에서 사용자 스키마를 선택하십시오.
  5. 통합 어플라이언스가 사용하는 버퍼 또는 제어 테이블을 필터링하려면 버퍼 및 제어 테이블 숨기기를 선택하십시오.
    주: 이 필터는 Studio에서 스크립트로 생성된 표준 이름을 사용하는 버퍼 및 제어 테이블만 숨깁니다.
  6. 목록에서 단일 테이블을 선택하십시오.
    • 테이블을 추가하려면 >>를 클릭하십시오.
    • 테이블을 제거하려면 <<를 클릭하십시오.
  7. 소스 테이블의 기본 키 열에 대한 데이터베이스 조작만 폴하려면 테이블에서 1차 키만을 선택 선택란을 선택하십시오.
  8. 확인을 클릭하십시오. 테이블 열은 테이블 선택 분할창에 표시됩니다. (테이블에서 1차 키만을 선택 선택란을 선택한 경우에는 기본 키 열만 표시됩니다.)
  9. 이 테이블의 문자 인코딩이 데이터베이스의 인코딩과 다른 경우에는 다음 옵션 중 하나를 사용하여 다른 인코딩을 입력하십시오.
    • 인코딩 목록에서 기본 인코딩 유형 중 하나를 선택하십시오.
    • 인코딩 필드를 클릭하여 직접 인코딩 유형을 입력하십시오.
  10. 런타임 동안 테이블 폴 활동이 데이터베이스 조작(삽입, 삭제 또는 업데이트)에 대해 폴할 열을 테이블에서 선택하십시오. 기본적으로 모든 열이 선택되어 있습니다. 원하지 않는 열에는 사용 선택란을 지우십시오. 모든 열을 다시 선택하려면 모두 사용을 클릭하십시오.
  11. 열의 표제를 클릭하여 열 값으로 행을 정렬하십시오. 예를 들어, 행을 열 이름으로 정렬하려면 열의 열 이름 표제를 클릭하십시오. 열 헤더 이름 오른쪽에 화살표가 표시됩니다. 위로 화살표는 열이 a부터 시작하여 z까지 영문자 순서로 정렬됨을 의미합니다. 아래로 화살표는 열이 z부터 시작하여 a까지 영문자 반대 순서로 정렬됨을 의미합니다. 화살표를 클릭하면 영문자 순서가 바뀝니다.
  12. 필요한 경우, 각 조회 입력 매개변수의 데이터 유형, 인코딩 또는 널 입력 가능 값에 대한 설정을 변경하십시오. 새로 선택하려면 필드를 클릭하십시오.
    • 데이터 유형 - 기본값은 소스 데이터베이스 테이블에 있는 열의 데이터 유형입니다. 버퍼 테이블에서 열의 필수 데이터 유형이 소스 테이블의 데이터 유형과 다른 경우에는 데이터 유형 셀을 클릭하고 목록에서 다른 데이터 유형을 선택하여 다른 데이터 유형을 선택하십시오. UNSUPPORTED로 표시된 해당 데이터 유형에 적합한 데이터 유형을 선택해야 합니다.
      주: (MONEY 및 XMLTYPE 데이터 유형의 경우) Oracle 데이터베이스의 XMLTYPE 데이터 유형과 SQL Server 데이터베이스의 MONEY 데이터 유형의 경우에는 Studio가 올바른 데이터 유형을 자동으로 연관시키지 않으므로 적합한 데이터 유형을 수동으로 선택해야 합니다.
    • 크기 - 테이블에 정의된 열의 크기입니다. 이 크기는 데이터베이스 테이블에서 검색하며 구성할 수 없습니다.
    • 인코딩 - 기본값은 데이터베이스 레벨 또는 테이블 레벨에서 설정된 현재 기본 인코딩입니다. 열의 필수 인코딩이 현재 기본 인코딩과 다른 경우, 인코딩 셀을 클릭하고 목록에서 다른 인코딩을 선택하여 다른 인코딩을 선택하십시오.
    • 널 입력 가능 - 기본값은 소스 데이터베이스 테이블에 있는 열의 널 입력 가능 설정입니다. nullable = false인 경우에는 메시지에 열이 포함되어야 합니다. nullable=false인 경우에는 해당 열에 사용 선택란을 선택해야 합니다. nullable=false로 표시된 열은 런타임 동안 널을 포함할 수 없습니다.

순서 및 플래그 열 선택

  1. 점검 목록에서 열 선택을 선택하십시오.
  2. 목록에서 순서 열을 선택하십시오. 기본 키(일련의 고유 번호: 1, 2, 3 ...)가 포함되는 INTEGER 유형의 순서 열로, 소스 데이터베이스 테이블에 추가했거나 소스 데이터베이스 테이블의 기존 열을 사용할 수 있는 것으로 판별했습니다.
  3. 목록에서 플래그 열을 선택하십시오. 통합 어플라이언스가 행을 처리할 때 통합 어플라이언스가 P로 설정하는 플래그가 포함된 CHAR 유형의 플래그 열입니다. 통합 어플라이언스는 순서 및 플래그 열을 사용하여 중복 메시지를 검사합니다. 또한 통합 어플라이언스가 전달 규칙 분할창에서 행 처리 후 삭제 선택란의 설정과 열을 모두 사용하여 삭제 요청에 대한 조치를 판별합니다.
    • 행 처리 후 삭제 선택란을 선택하면 통합 어플라이언스가 플래그를 M으로 설정한 후 행을 삭제합니다.
    • 행 처리 후 삭제 선택란을 지우면 통합 어플라이언스가 플래그를 MP로 차례로 설정하지만 행은 삭제되지 않습니다. 통합 어플라이언스가 행을 다시 처리하려면 동일한 소스 데이터베이스 테이블에 액세스하는 테이블 폴 활동에 대한 오케스트레이션 작업이 실행되기 전에 플래그 열을 다시 로 재설정해야 합니다.
  4. 전달 규칙을 구성하십시오.
    주: 전달 규칙 태스크에서 정확히 한 번 옵션을 선택하는 경우, 통합 어플라이언스가 런타임 동안 사용하는 제어 테이블을 작성해야 합니다. 제어 테이블은 Studio의 오케스트레이션을 통합 어플라이언스에 게시한 후 작성합니다. 제어 테이블은 프로젝트를 배치하기 전에 WMC(Web Management Console)를 사용하여 작성합니다.
    주: 정확히 한 번 옵션을 선택하는 경우 지속성을 사용 가능하도록 설정해야 합니다. 자세한 정보는 지속성 사용을 참조하십시오.
  5. 재시도 옵션을 구성하십시오.

활동의 출력 맵핑

  1. 점검 목록에서 출력 맵핑 태스크를 선택하십시오. 활동의 출력 매개변수는 활동에서 분할창에서 요소 아래에 표시됩니다. 활동에서 분할창에 표시되는 출력 매개변수는 테이블 선택 태스크에서 선택한 열에 해당합니다. 전달 규칙에서 일괄처리 옵션을 선택한 경우, 요소 옆에 다중 발생 기호가 표시됩니다.
    주: 테이블 폴 활동의 rows 출력 매개변수는 런타임 동안 순서 및 플래그 열 값으로 채우지 않습니다. 테이블 선택 태스크에서 선택한 열만 리턴됩니다.
  2. 필수 출력 매개변수를 변수로 맵핑하십시오. 맵핑에 대한 지시사항은 맵핑 작성을 참조하십시오. 이러한 활동의 출력 매개변수는 맵핑하지 않아도 됩니다.