DML 작업 중 Replicat 오류 처리
Replicat가 해당 DML 문 중 하나에서 오류에 응답하는 방식을 제어하려면 Replicat 매개변수 파일에서 REPERROR 매개변수를 사용하십시오. REPERROR를 전역 매개변수로 사용하거나 MAP 문의 일부로 사용할 수 있습니다. DEFAULT 및 DEFAULT2 옵션을 사용하여 대부분의 오류를 기본 방식으로 처리(예: 처리 중단)하고 특정 방식으로 다른 오류를 처리할 수도 있습니다.
다음은 REPERROR 응답 범위로 구성됩니다.
-
ABEND: 트랜잭션을 롤백하고 처리를 정지합니다. -
DISCARD: 오류를 폐기 파일에 기록하고 처리를 계속합니다. -
EXCEPTION: 예외 처리에 대한 오류를 전송합니다. -
IGNORE: 오류를 무시한 후 처리를 계속합니다. -
RETRYOP [MAXRETRIESn]: 선택적으로 특정 횟수까지 작업을 재시도합니다. -
TRANSABORT [, MAXRETRIESn] [, DELAY[C]SECSn]: 트랜잭션을 중단하고 특정 간격의 특정 횟수까지 선택적으로 시작 부분으로 재배치합니다. -
RESET: 모든 이전REPERROR규칙을 제거하고 기본값인ABEND를 복원합니다. -
TRANSDISCARD: 커밋을 포함하여 해당 트랜잭션 내의 작업으로 인해 오류 사양에 나열된 Replicat 오류가 발생하는 경우 전체 복제된 소스 트랜잭션을 무시합니다. 이 옵션은 대상에서 무결성 제약 조건 검사가 사용 안함으로 설정된 경우에 유용합니다. -
TRANSEXCEPTION: 예외 매핑 명령문에 따라 복제된 소스 트랜잭션의 모든 레코드에 대해 예외 매핑을 수행합니다. 해당 트랜잭션 내의 작업(커밋 포함)으로 인해 오류 사양에 나열된 Replicat 오류가 발생하는 경우입니다.
대부분의 옵션은 오류를 생성한 개별 레코드에서 작동하며 Replicat는 트랜잭션에서 성공한 다른 작업을 처리합니다. 예외는 TRANSDISCARD 및 TRANSEXCEPTION입니다. 이러한 옵션은 해당 트랜잭션의 레코드가 오류를 생성하는 경우 트랜잭션의 모든 레코드에 영향을 줍니다. (ABEND 옵션은 전체 트랜잭션에도 적용되지만 오류 처리는 적용되지 않습니다.)
구문 및 사용법은 REPERROR를 참조하십시오.