Tratando Erros de Replicat Durante Operações DML
Para controlar a forma como o Replicat responde a um erro durante uma de suas instruções DML, use o parâmetro REPERROR no arquivo de parâmetros do Replicat. Você pode usar REPERROR como um parâmetro global ou como parte de uma instrução MAP. Você pode tratar a maioria dos erros de forma padrão (por exemplo, para interromper o processamento) com as opções DEFAULT e DEFAULT2 e também tratar outros erros de uma maneira específica.
Os itens a seguir incluem o intervalo de respostas REPERROR:
-
ABEND: faz rollback da transação e interrompe o processamento. -
DISCARD: registre o erro no arquivo de descarte e continue o processamento. -
EXCEPTION: envia o erro para o processamento de exceções. -
IGNORE: ignore o erro e continue processando. -
RETRYOP [MAXRETRIESn]: repita a operação, opcionalmente até um número específico de vezes. -
TRANSABORT [, MAXRETRIESn] [, DELAY[C]SECSn]: abortar a transação e reposicionar para o início, opcionalmente até um número específico de vezes em intervalos específicos. -
RESET: remova todas as regrasREPERRORanteriores e restaure o padrão deABEND. -
TRANSDISCARD: descarta toda a transação de origem replicada se qualquer operação dentro dessa transação, incluindo o commit, causar um erro de Replicat que está listado na especificação de erro. Essa opção é útil quando a verificação de restrição de integridade está desativada no destino. -
TRANSEXCEPTION: executa o mapeamento de exceções para cada registro na transação de origem replicada, de acordo com sua instrução de mapeamento de exceções, se qualquer operação dentro dessa transação (incluindo o commit) causar um erro de Replicat listado na especificação de erro.
A maioria das opções opera no registro individual que gerou um erro e o Replicat processa as outras operações bem-sucedidas na transação. As exceções são TRANSDISCARD e TRANSEXCEPTION: essas opções afetarão todos os registros de uma transação se algum registro dessa transação gerar um erro. (A opção ABEND também se aplica a toda a transação, mas não aplica o tratamento de erros.)
Consulte REPERROR para obter sintaxe e uso.