fn_error_handler

Purpose

This script is used as error handler.

Syntax

create table log_error
(Err 	VARCHAR2(2000)
,DT		DATE)
/

CREATE OR REPLACE NONEDITIONABLE FUNCTION fn_error_handler(octcode   IN NUMBER,
errcode   IN NUMBER,
statement IN VARCHAR2,
resync    IN NUMBER)
RETURN NUMBER AUTHID CURRENT_USER
 is
retcode NUMBER := DBMS_PDB_APP_CON.SYNC_ERROR_NOT_OK;
PROCEDURE prLog (pErr VARCHAR2)
IS
PRAGMA AUTONOMOUS_TRANSACTION;
BEGIN
INSERT INTO log_error
VALUES (pErr,SYSDATE);
COMMIT;
END prLog;
BEGIN
prLog('fn: '||errcode);
IF errcode IN (24344,6512,65297,65272,65274,4045,1,2264,1430,1434,955,4063,942,4043,65215,2260,904,4023,6510,4097,6508,4088
,2261,44201,2437,22859,12006,1418,21700,980
,1720,1449,1036,2443,2441		--Added Newly on 08-Sep-2020
,22275,1024,12003,				--Added Newly on 24-Nov-2020 
1439,6550						--Added Newly on 24-Nov-2020 --recheck 1439 some column datatype will have to be corrected
) THEN	
retcode := DBMS_PDB_APP_CON.SYNC_ERROR_OK_ALWAYS;
END IF;
prLog('ret: '||retcode);
RETURN retcode;
END;
/