단일 테이블 인바운드 데이터베이스 활동은 런타임
동안 데이터베이스 테이블의 지정된 열에서 지정된 시간 간격으로
행에서 데이터베이스 조작이 발생했는지 여부를 폴링합니다.
이 절은 다음 단일 테이블 인바운드
데이터베이스 활동을 구성하는 프로시저를 설명합니다.
- 삽입된 행 가져오기 - 삽입된
행 가져오기 활동은 런타임 동안
INSERT 트리거 이벤트에서 버퍼 테이블에 추가되는
행을 폴링합니다. 삽입된 행 가져오기 활동은
버퍼 맵을 하나 이상의 변수로 맵핑합니다.
- 업데이트된 행 가져오기 - 업데이트된
행 가져오기 활동은 런타임 동안
UPDATE 트리거 이벤트에서 버퍼 테이블에 추가되는
행을 폴링합니다. 업데이트된 행 가져오기 활동은
버퍼 데이터를 하나 이상의 변수로 맵핑합니다.
- 삭제된 행 가져오기 - 삭제된
행 가져오기 활동은 런타임 동안
DELETE 트리거 이벤트에서 버퍼 테이블에 추가되는
행을 폴링합니다. 삭제된 행 가져오기 활동은
버퍼 데이터를 하나 이상의 변수로 맵핑합니다.
그림 1은
UPDATE 트리거 이벤트와
업데이트된 행
가져오기 활동의 예제 데이터 전송을 보여줍니다.
인바운드 데이터베이스 활동으로 통합
어플라이언스에 오케스트레이션을 게시한 후 오케스트레이션이
배치되기 전에 WMC(Web Management Console)를 사용하여 버퍼
테이블 및 트리거를 작성해야 합니다. Oracle 데이터베이스의 경우에는
또한 WMC를 사용하여 순서를 작성해야 합니다.
해당 조작 런타임 오류에 대한 활동 없음
오케스트레이션이
현재 오케스트레이션에 없는 활동의 행이 포함된 버퍼 테이블에 액세스하는
경우, 오케스트레이션이 실패하고 런타임 동안 다음 오류가
보고됩니다.
The buffer table contains the OperType operation but there is no activity in the orchestration for that operation.
여기서
OperType은
조작 유형(예: INSERT)입니다. 오케스트레이션에 대한 버퍼
테이블의 IH_OPERATION_NAME 열 값은 오케스트레이션의
데이터베이스 활동과 일치해야 합니다. 예를 들어, 버퍼 테이블의
행이 IH_OPERATION_NAME 열에서 INSERT 값을 갖지만 오케스트레이션에
삽입된 행 가져오기 활동이 포함되지 않는 경우에는 이 오류가
보고됩니다. 각 오케스트레이션마다 개별 버퍼 테이블이
필요합니다. 또한 소스 테이블의 트리거는 버퍼 테이블에
지정된 데이터베이스 조작과 일치해야 합니다. 예를
들어, 오케스트레이션에 단일 인바운드
업데이트된 행
가져오기 활동만 포함되는 경우에는 소스 데이터베이스
테이블에 UPDATE 트리거만 포함되어야 합니다.
오케스트레이션에 단일
테이블 인바운드 데이터베이스 활동 추가
- 오케스트레이션을 작성하거나 여십시오. 오케스트레이션의
그래픽 표시가 나타납니다.
- 활동 탭을 선택하고 데이터베이스 폴더를 펼치십시오.
- 원하는 단일 테이블 인바운드 데이터베이스 활동(삽입된
행 가져오기, 삭제된 행 가져오기 또는 업데이트된
행 가져오기)을 오케스트레이션으로 끌어오십시오.
- 활동을 선택하십시오.
데이터베이스 엔드포인트 작성, 선택 또는 편집
- 점검 목록에서 엔드포인트 선택 태스크를 클릭하고
다음 조치 중 하나를 선택하십시오.
- 기존 엔드포인트를 선택하십시오.
- 찾아보기를 선택하십시오. 프로젝트 탐색기가 표시됩니다.
- 기존 엔드포인트를 선택하고 확인을 클릭하십시오.
"활동 구성" 프로시저로 건너뛰십시오.
- 기존 엔드포인트를 선택하고 편집하십시오.
- 찾아보기를 선택하십시오. 프로젝트 탐색기가 표시됩니다.
- 기존 엔드포인트를 선택하고 확인을 클릭하십시오.
- 편집을 클릭하십시오. 엔드포인트 편집 분할창이 표시됩니다.
- 새로 작성을 선택하여 새 엔드포인트를 작성하십시오. 엔드포인트
작성 분할창이 표시됩니다.
- HTTP 엔드포인트 작성 또는 편집에 대해 HTTP 엔드포인트 작성 또는 편집을 참조하십시오.
런타임에서 통합 어플라이언스가 변경사항에
대해 폴링하는 소스 데이터베이스 테이블의 열 선택
- 점검 목록에서 테이블 선택을 클릭하십시오.
테이블 선택 분할창이 표시됩니다.
- 찾아보기...를 클릭하여 인바운드 메시지의
소스가 되는 데이터베이스 테이블을 선택하십시오. 데이터베이스
테이블 찾아보기 대화 상자가 표시됩니다.
- 목록에서 테이블을 선택하고 확인을 클릭하십시오.
테이블 선택 분할창에 선택한 테이블의
열 정보가 표시됩니다.
- 이 테이블의 문자 인코딩이 데이터베이스의
인코딩과 다른 경우에는 다음 옵션 중 하나를
사용하여 다른 인코딩을 입력하십시오.
- 인코딩 목록에서
기본 인코딩 유형 중 하나를 선택하십시오.
- 인코딩 필드를 클릭하여
직접 인코딩 유형을 입력하십시오.
이렇게
하면 결과 버퍼 테이블의 모든 열에 대한 인코딩이 설정됩니다. 참고: 일부 2바이트 문자는 SHIFT-JIS
인코딩을 사용하여 변환되지 않습니다. 자세한 정보는
Shift-JIS 인코딩 사용을 참조하십시오.
- 소스 테이블의 모든 열은 기본적으로 선택되어 있습니다. 결과
버퍼 테이블에서 열을 제거하려면 사용 선택란을
지우십시오. 모든 열을 다시 선택하려면 모두 사용을 클릭하십시오.
- 열의 표제를 클릭하여 열 값으로
행을 정렬하십시오. 예를 들어, 행을 열 이름으로
정렬하려면 열의 열 이름 표제를
클릭하십시오. 열 헤더 이름 오른쪽에 화살표가
표시됩니다. 위로 화살표는 열이 a부터 시작하여
z까지 영문자 순서로 정렬됨을 의미합니다. 아래로
화살표는 열이 z부터 시작하여 a까지
영문자 반대 순서로 정렬됨을 의미합니다. 화살표를
클릭하면 영문자 순서가 바뀝니다.
- 업데이트된 행 가져오기 활동의 경우 - 결과
버퍼 테이블에 업데이트된 열의 원래 값과 새 값을 모두
포함하려면 다음 단계를 수행하십시오.
- 이전 값을 클릭하십시오. 업데이트할
이전 값 열 대화 상자가 표시됩니다.
- 원래 값을 저장할 데이터베이스 열의 경우에는
저장 선택란을 선택하십시오.
- 원래 값을 저장할 열에 지정된 기본 이름을 변경할 수
있습니다. 적합한 이전 값을 저장할 열
이름 셀을 두 번 클릭하십시오.
- 확인을 클릭하십시오. 선택한 열은 출력 맵핑의
활동에서 분할창에서 접두부 문자열 old_와
함께 표시됩니다. 출력 맵핑 분할창에서 새 값과 원래 값을 모두 맵핑할 수
있습니다.
- 필요한 경우, 데이터 유형, 인코딩
또는 널 입력 가능 값의 설정을 변경하십시오. 새로
선택하려면 필드를 클릭하십시오.
- 데이터 유형 - 기본값은 소스 데이터베이스
테이블에 있는 열의 데이터 유형입니다. 버퍼 테이블에서
열의 필수 데이터 유형이 소스 테이블의 데이터 유형과 다른 경우에는
데이터 유형 셀을 클릭하고 목록에서
다른 데이터 유형을 선택하여 다른 데이터 유형을 선택하십시오.
UNSUPPORTED로 표시된 해당 데이터 유형에 적합한 데이터
유형을 선택해야 합니다.
참고: Oracle 데이터베이스의
XMLTYPE 데이터 유형과 SQL Server 데이터베이스의 MONEY 데이터
유형의 경우에는 Studio가 올바른 데이터 유형을 자동으로 연관시키지
않으므로 적합한 데이터 유형을 수동으로 선택해야 합니다.
주의: 런타임
동안 올바르지 않은 데이터를 방지하려면 소스 데이터 유형과
호환되는 데이터 유형을 선택해야 합니다. 예를 들어, 소스 데이터
유형이 INTEGER인 경우에는 버퍼 테이블에 SMALLINT 데이터 유형을
선택하지 마십시오. 런타임 동안 INTEGER 열에 저장된 큰 수는
SMALLINT 데이터 유형으로 올바르게 변환되지 않기 때문입니다.
- 크기 - 테이블에 정의된 열의
크기입니다. 이 크기는 데이터베이스 테이블에서 검색하며 구성할 수 없습니다.
- 인코딩 - 기본값은 데이터베이스 레벨
또는 테이블 레벨에서 설정된 현재 기본 인코딩입니다. 열의
필수 인코딩이 현재 기본 인코딩과 다른 경우, 인코딩
셀을 클릭하고 목록에서 다른 인코딩을
선택하여 다른 인코딩을 선택하십시오.
- 널 입력 가능 - 기본값은 소스 데이터베이스
테이블에 있는 열의 널 입력 가능 설정입니다. nullable=false인
경우에는 해당 열에 사용 선택란을 선택해야 합니다.
nullable=false로 표시된
열은 런타임 동안 널을 포함할 수 없습니다.
- 재설정을 클릭하여 모든 열
특성을 기본값으로 재설정하십시오. 이렇게 하면 모든 열의
사용 선택란도 재설정됩니다.
- 새로 고치기를 클릭하여 참조의 열
목록을 소스 데이터베이스의 최신 상태로 업데이트하십시오. 소스에
대한 최신 변경사항이 이 분할창에서 업데이트됩니다.
- 데이터베이스 활동의 전달 규칙 지정을 구성하십시오.
참고: 전달 규칙 태스크에서 정확히 한 번
옵션을 선택하는 경우, 통합 어플라이언스가 런타임 동안
사용하는 제어 테이블을 작성해야 합니다. 제어 테이블은
Studio의 오케스트레이션을 통합 어플라이언스에 게시한 후
작성합니다. 제어 테이블은 프로젝트를 배치하기 전에 WMC(Web Management
Console)를 사용하여 작성합니다.
참고: 정확히 한 번 옵션을 선택하는 경우 지속성을 사용 가능하도록 설정해야 합니다. 자세한 정보는
지속성 사용을 참조하십시오.
- 재시도 옵션을 구성하십시오. 자세한 정보는
인바운드 데이터베이스 활동에 대한 재시도 옵션을 참조하십시오.
활동의 출력 맵핑
- 점검 목록에서 출력 맵핑 태스크를 선택하십시오.
활동의
출력 매개변수는 활동에서 분할창에서 행 요소
아래에 표시됩니다. 활동에서 분할창에 표시되는 출력
매개변수는 테이블 선택 태스크에서 선택한 열에
해당합니다. 전달 규칙에서 일괄처리 옵션을 선택한 경우, 행 요소 옆에
다중 발생 기호가 표시됩니다.
참고: 업데이트된 행
가져오기 활동의 경우, 테이블 선택 태스크에서
업데이트할 이전 값 열 대화 상자에서 열을 선택하면 이러한 추가
출력 매개변수(기본적으로 문자열 old_가
접두부로 추가)가 행 요소 아래에도 표시됩니다. 출력 맵핑
분할창에 표시되는 모든 이전 값 열을 맵핑해야 합니다.
- 필수 출력 매개변수를 하나 이상의 변수로 맵핑하십시오. 맵핑에 대한 지시사항은 맵핑 작성을
참조하십시오. 이러한 활동의 출력
매개변수는 맵핑하지 않아도 됩니다.
참고: 인바운드
데이터베이스 활동으로 통합 어플라이언스에 오케스트레이션을
게시한 후 오케스트레이션이 배치되기 전에 WMC(Web Management
Console)를 사용하여 버퍼 테이블을 작성해야 합니다.