Minues TB, should have done that before.
–
– ACST$M (Table)
–
– Dependencies:
– ACSB$M (Table)
– ACMK$M (Table)
– ACFTBE$M (Table)
– ACFTGA$M (Table)
– ACFTHV$M (Table)
– ACFTLI$M (Table)
– ACFTOP$M (Table)
– ACFTPF$M (Table)
– ACFTPH$M (Table)
– ACFTWI$M (Table)
– ACTY$M (Table)
–
CREATE TABLE ACST$M
(
ABBR VARCHAR2(25 BYTE),
ACFTBEKEY VARCHAR2(9 BYTE) NOT NULL,
ACFTGAKEY VARCHAR2(9 BYTE) NOT NULL,
ACFTHVKEY VARCHAR2(9 BYTE) NOT NULL,
ACFTLIKEY VARCHAR2(9 BYTE) NOT NULL,
ACFTOPKEY VARCHAR2(9 BYTE) NOT NULL,
ACFTPFKEY VARCHAR2(9 BYTE) NOT NULL,
ACFTPHKEY VARCHAR2(9 BYTE) NOT NULL,
ACFTWIKEY VARCHAR2(9 BYTE) NOT NULL,
ACMKKEY VARCHAR2(9 BYTE) NOT NULL,
ACSBKEY VARCHAR2(9 BYTE) NOT NULL,
ACTYKEY VARCHAR2(9 BYTE) NOT NULL,
ADDRESS VARCHAR2(32 BYTE),
AREA NUMBER(10),
CITY VARCHAR2(25 BYTE),
CODE VARCHAR2(7 BYTE),
COUNTRY NUMBER(6),
DIMLEVEL VARCHAR2(6 BYTE) NOT NULL,
DIMLEVELKEY VARCHAR2(9 BYTE) NOT NULL,
DIMRECTYPE NUMBER(6) DEFAULT 0 NOT NULL,
FAX VARCHAR2(10 BYTE),
ISNOITEM NUMBER(1) DEFAULT 0 NOT NULL,
ISVISIBLE NUMBER(1) DEFAULT 1 NOT NULL,
LASTMOD DATE DEFAULT (SYSDATE),
MEIOVERRIDDEN NUMBER(1) DEFAULT 0 NOT NULL,
MKEY VARCHAR2(9 BYTE) NOT NULL,
NAME VARCHAR2(50 BYTE),
NBCHECKOUTS NUMBER(3),
NBENDOFAISLES NUMBER(3),
NESTLEMARKETID VARCHAR2(4 BYTE),
PHONE VARCHAR2(10 BYTE),
PHONE800 VARCHAR2(10 BYTE),
SAPDELETED NUMBER(1) DEFAULT 0 NOT NULL,
STAT NUMBER(6),
STOREID VARCHAR2(10 BYTE),
TDLINKSCODE VARCHAR2(7 BYTE),
TXCY VARCHAR2(3 BYTE),
VERSION NUMBER(9) DEFAULT 0 NOT NULL,
ZIP VARCHAR2(10 BYTE),
CALLFREQUENCY NUMBER(6),
TAXID VARCHAR2(20 BYTE),
INACNAME VARCHAR2(58 BYTE),
VOLUMETIER NUMBER(6),
WEEKLYVOLUME NUMBER(9),
EXTCODE VARCHAR2(10 BYTE),
CREATEDBY VARCHAR2(9 BYTE),
CREATEDDATE DATE,
MAPTOACATACSTKEY VARCHAR2(9 BYTE),
SENTTONARSMAINT DATE,
SGRPNM VARCHAR2(32 BYTE),
STDLINXOCD VARCHAR2(6 BYTE),
STATUSIND NUMBER(6),
LONGITUDE NUMBER(10,7),
LATITUDE NUMBER(10,7),
COORDINATEPRECISION NUMBER(6),
TZKEY VARCHAR2(9 BYTE)
)
NOLOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
–
– AITY$M (Table)
–
– Dependencies:
– AIAL$M (Table)
–
CREATE TABLE AITY$M
(
AIALKEY VARCHAR2(9 BYTE) NOT NULL,
AICHKEY VARCHAR2(9 BYTE),
AITYPE NUMBER(6),
DIMRECTYPE NUMBER(6) DEFAULT 0,
ISVISIBLE NUMBER(1) DEFAULT 1 NOT NULL,
LASTMOD DATE DEFAULT (SYSDATE),
MKEY VARCHAR2(9 BYTE) NOT NULL,
VERSION NUMBER(9) DEFAULT 0 NOT NULL
)
NOLOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
–
– PRDE$M (Table)
–
– Dependencies:
– PRHO$M (Table)
–
CREATE TABLE PRDE$M
(
ABBR VARCHAR2(25 BYTE),
CODE VARCHAR2(5 BYTE),
DIMRECTYPE NUMBER(6) DEFAULT 0 NOT NULL,
ISVISIBLE NUMBER(1) DEFAULT 1 NOT NULL,
LASTMOD DATE DEFAULT (SYSDATE),
MEIOVERRIDDEN NUMBER(1) DEFAULT 0 NOT NULL,
MKEY VARCHAR2(9 BYTE) NOT NULL,
NAME VARCHAR2(50 BYTE),
PRSKKEY VARCHAR2(9 BYTE),
SAPDELETED NUMBER(1) DEFAULT 0 NOT NULL,
VERSION NUMBER(9) DEFAULT 0 NOT NULL,
PRHOKEY VARCHAR2(9 BYTE) NOT NULL,
INACNAME VARCHAR2(58 BYTE),
RETAILERCODE VARCHAR2(10 BYTE),
GENERIC NUMBER(1) DEFAULT (0) NOT NULL
)
NOLOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
–
– PRSKAT$M (Table)
–
– Dependencies:
– PRCT$M (Table)
– PRMN$M (Table)
–
CREATE TABLE PRSKAT$M
(
ABBR VARCHAR2(35 BYTE),
CASEPERPALLET NUMBER(5),
CASEPRICE NUMBER(10,2),
CASEPRICETV NUMBER(10,2),
CASESIZE NUMBER(3),
CASEUPC VARCHAR2(14 BYTE),
CODE VARCHAR2(14 BYTE),
GROSSWEIGHT NUMBER(8,2),
GTIN VARCHAR2(14 BYTE),
HEIGHT NUMBER(8,2),
INTERPACK NUMBER(5),
LASTMOD DATE DEFAULT (SYSDATE),
LENGTH NUMBER(8,2),
LINEARUNITS NUMBER(6),
MKEY VARCHAR2(9 BYTE) NOT NULL,
NAME VARCHAR2(75 BYTE),
NETWEIGHT NUMBER(8,2),
SAPDELETED NUMBER(1) DEFAULT (0) NOT NULL,
SUGGRETAILPRICE NUMBER(10,2),
SUGGRETAILPRICETV NUMBER(10,2),
SYXKEY VARCHAR2(17 BYTE) NOT NULL,
TXCY VARCHAR2(3 BYTE),
UNITCOSTPRICE NUMBER(10,2),
UNITCOSTPRICETV NUMBER(10,2),
UNITOFMEASURE NUMBER(6),
UNITPERCASE NUMBER(5) DEFAULT NULL,
UNITSIZE NUMBER(7,3),
VERSION NUMBER(9) DEFAULT (0) NOT NULL,
WEIGHTUNITS NUMBER(6),
WIDTH NUMBER(8,2),
PRCTKEY VARCHAR2(9 BYTE) NOT NULL,
PRMNKEY VARCHAR2(9 BYTE) NOT NULL,
ACATABBR VARCHAR2(35 BYTE),
CHECKDIGIT VARCHAR2(1 BYTE),
PIIN VARCHAR2(10 BYTE),
DEPRECATED NUMBER(1) DEFAULT (0) NOT NULL,
EXTCODE VARCHAR2(10 BYTE),
GENERIC NUMBER(1) DEFAULT (0) NOT NULL
)
NOLOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
–
– ZPL$M (Table)
–
CREATE TABLE ZPL$M
(
ACTDT DATE,
AUDKEY NUMBER(12),
CATEGORY VARCHAR2(40 BYTE) NOT NULL,
DEACTDT DATE,
DESCRIPTION VARCHAR2(80 BYTE),
EXTCODE VARCHAR2(40 BYTE),
IDENTIFICATION NUMBER(6) NOT NULL,
LANG VARCHAR2(3 BYTE) NOT NULL,
LASTMOD DATE,
LASTMODDBKEY VARCHAR2(9 BYTE) DEFAULT (‘000000000’) NOT NULL,
MKEY VARCHAR2(9 BYTE) NOT NULL,
STATE VARCHAR2(1 BYTE),
TRXN VARCHAR2(1 BYTE),
VERSION NUMBER(9) DEFAULT (0) NOT NULL
)
NOLOGGING
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING;
–
– MKEY_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE UNIQUE INDEX MKEY_ACST$M ON ACST$M
(MKEY)
NOLOGGING
NOPARALLEL;
–
– STATSTOREIDMKEYINDEX_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX STATSTOREIDMKEYINDEX_ACST$M ON ACST$M
(STAT, STOREID, MKEY)
NOLOGGING
NOPARALLEL;
–
– SAPDMKEYSTATINDEX_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX SAPDMKEYSTATINDEX_ACST$M ON ACST$M
(SAPDELETED, MKEY, STAT)
NOLOGGING
NOPARALLEL;
–
– TDLINKSCODEINDEX_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX TDLINKSCODEINDEX_ACST$M ON ACST$M
(TDLINKSCODE, SAPDELETED, MKEY)
NOLOGGING
NOPARALLEL;
–
– TZKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX TZKEYFK_ACST$M ON ACST$M
(TZKEY)
NOLOGGING
NOPARALLEL;
–
– STOREIDINDEX_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX STOREIDINDEX_ACST$M ON ACST$M
(STOREID)
NOLOGGING
NOPARALLEL;
–
– ACFTBEKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACFTBEKEYFK_ACST$M ON ACST$M
(ACFTBEKEY)
NOLOGGING
NOPARALLEL;
–
– ACFTGAKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACFTGAKEYFK_ACST$M ON ACST$M
(ACFTGAKEY)
NOLOGGING
NOPARALLEL;
–
– ACFTHVKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACFTHVKEYFK_ACST$M ON ACST$M
(ACFTHVKEY)
NOLOGGING
NOPARALLEL;
–
– ACFTLIKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACFTLIKEYFK_ACST$M ON ACST$M
(ACFTLIKEY)
NOLOGGING
NOPARALLEL;
–
– ACFTOPKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACFTOPKEYFK_ACST$M ON ACST$M
(ACFTOPKEY)
NOLOGGING
NOPARALLEL;
–
– ACFTPFKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACFTPFKEYFK_ACST$M ON ACST$M
(ACFTPFKEY)
NOLOGGING
NOPARALLEL;
–
– ACFTPHKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACFTPHKEYFK_ACST$M ON ACST$M
(ACFTPHKEY)
NOLOGGING
NOPARALLEL;
–
– ACFTWIKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACFTWIKEYFK_ACST$M ON ACST$M
(ACFTWIKEY)
NOLOGGING
NOPARALLEL;
–
– ACMKKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACMKKEYFK_ACST$M ON ACST$M
(ACMKKEY)
NOLOGGING
NOPARALLEL;
–
– ACSBKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACSBKEYFK_ACST$M ON ACST$M
(ACSBKEY)
NOLOGGING
NOPARALLEL;
–
– ACTYKEYFK_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX ACTYKEYFK_ACST$M ON ACST$M
(ACTYKEY)
NOLOGGING
NOPARALLEL;
–
– NAMEINDEX_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX NAMEINDEX_ACST$M ON ACST$M
(NAME)
NOLOGGING
NOPARALLEL;
–
– CODEINDEX_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE UNIQUE INDEX CODEINDEX_ACST$M ON ACST$M
(CODE)
NOLOGGING
NOPARALLEL;
–
– MKEYSAPDELETEDINDEX_ACST$M (Index)
–
– Dependencies:
– ACST$M (Table)
–
CREATE INDEX MKEYSAPDELETEDINDEX_ACST$M ON ACST$M
(MKEY, SAPDELETED)
NOLOGGING
NOPARALLEL;
–
– AIALKEYFK_AITY$M (Index)
–
– Dependencies:
– AITY$M (Table)
–
CREATE INDEX AIALKEYFK_AITY$M ON AITY$M
(AIALKEY)
NOLOGGING
NOPARALLEL;
–
– AICHKEYFK_AITY$M (Index)
–
– Dependencies:
– AITY$M (Table)
–
CREATE INDEX AICHKEYFK_AITY$M ON AITY$M
(AICHKEY)
NOLOGGING
NOPARALLEL;
– There is no statement for index MEIDBO.SYS_C00162829.
– The object is created when the parent object is created.
–
– CODEINDEX_PRDE$M (Index)
–
– Dependencies:
– PRDE$M (Table)
–
CREATE UNIQUE INDEX CODEINDEX_PRDE$M ON PRDE$M
(CODE)
NOLOGGING
NOPARALLEL;
–
– PRHOKEYFK_PRDE$M (Index)
–
– Dependencies:
– PRDE$M (Table)
–
CREATE INDEX PRHOKEYFK_PRDE$M ON PRDE$M
(PRHOKEY)
NOLOGGING
NOPARALLEL;
–
– PRSKKEYFK_PRDE$M (Index)
–
– Dependencies:
– PRDE$M (Table)
–
CREATE INDEX PRSKKEYFK_PRDE$M ON PRDE$M
(PRSKKEY)
NOLOGGING
NOPARALLEL;
– There is no statement for index MEIDBO.SYS_C00162923.
– The object is created when the parent object is created.
–
– NAMEINDEX_PRSKAT$M (Index)
–
– Dependencies:
– PRSKAT$M (Table)
–
CREATE INDEX NAMEINDEX_PRSKAT$M ON PRSKAT$M
(NAME)
NOLOGGING
NOPARALLEL;
–
– PRCTKEYFK_PRSKAT$M (Index)
–
– Dependencies:
– PRSKAT$M (Table)
–
CREATE INDEX PRCTKEYFK_PRSKAT$M ON PRSKAT$M
(PRCTKEY)
NOLOGGING
NOPARALLEL;
–
– PRMNKEYFK_PRSKAT$M (Index)
–
– Dependencies:
– PRSKAT$M (Table)
–
CREATE INDEX PRMNKEYFK_PRSKAT$M ON PRSKAT$M
(PRMNKEY)
NOLOGGING
NOPARALLEL;
–
– CODEINDEX_PRSKAT$M (Index)
–
– Dependencies:
– PRSKAT$M (Table)
–
CREATE INDEX CODEINDEX_PRSKAT$M ON PRSKAT$M
(CODE)
NOLOGGING
NOPARALLEL;
–
– SYXKEYINDEX_PRSKAT$M (Index)
–
– Dependencies:
– PRSKAT$M (Table)
–
CREATE UNIQUE INDEX SYXKEYINDEX_PRSKAT$M ON PRSKAT$M
(SYXKEY)
NOLOGGING
NOPARALLEL;
–
– MKEY_PRSKAT$M (Index)
–
– Dependencies:
– PRSKAT$M (Table)
–
CREATE UNIQUE INDEX MKEY_PRSKAT$M ON PRSKAT$M
(MKEY)
NOLOGGING
NOPARALLEL;
–
– SYXLOOKUPINDEX_ZPL$M (Index)
–
– Dependencies:
– ZPL$M (Table)
–
CREATE INDEX SYXLOOKUPINDEX_ZPL$M ON ZPL$M
(CATEGORY, EXTCODE, LANG)
NOLOGGING
NOPARALLEL;
–
– UNIQUEITEM_ZPL$M (Index)
–
– Dependencies:
– ZPL$M (Table)
–
CREATE UNIQUE INDEX UNIQUEITEM_ZPL$M ON ZPL$M
(CATEGORY, LANG, IDENTIFICATION)
NOLOGGING
NOPARALLEL;
– There is no statement for index MEIDBO.SYS_C00162991.
– The object is created when the parent object is created.
–
– ACST_U$M (Trigger)
–
– Dependencies:
– ACST$M (Table)
–
CREATE OR REPLACE TRIGGER ACST_U$M BEFORE UPDATE ON ACST$M
FOR EACH ROW
DECLARE
BEGIN
– if MKEY was updated
IF :NEW.MKEY <> :OLD.MKEY THEN
RAISE_APPLICATION_ERROR (-20032, ‘@MEIERR@20032 - MKEY CANNOT BE CHANGED’);
END IF;
– reset some :NEW header columns before writing the record in the database
:NEW.VERSION := :OLD.VERSION + 1;
:NEW.LASTMOD := SYSDATE;
END;
/
–
– AITY_U$M (Trigger)
–
– Dependencies:
– AITY$M (Table)
–
CREATE OR REPLACE TRIGGER “AITY_U$M” BEFORE UPDATE ON AITY$M
FOR EACH ROW
DECLARE
BEGIN
– if MKEY was updated
IF :NEW.MKEY <> :OLD.MKEY THEN
RAISE_APPLICATION_ERROR (-20032, ‘@MEIERR@20032 - MKEY CANNOT BE CHANGED’);
END IF;
– reset some :NEW header columns before writing the record in the database
:NEW.VERSION := :OLD.VERSION + 1;
:NEW.LASTMOD := SYSDATE;
END;
/
–
– PRDE_U$M (Trigger)
–
– Dependencies:
– PRDE$M (Table)
–
CREATE OR REPLACE TRIGGER PRDE_U$M BEFORE UPDATE ON PRDE$M
FOR EACH ROW
DECLARE
BEGIN
– if MKEY was updated
IF :NEW.MKEY <> :OLD.MKEY THEN
RAISE_APPLICATION_ERROR (-20032, ‘@MEIERR@20032 - MKEY CANNOT BE CHANGED’);
END IF;
– reset some :NEW header columns before writing the record in the database
:NEW.VERSION := :OLD.VERSION + 1;
:NEW.LASTMOD := SYSDATE;
END;
/
–
– PRSKAT_U$M (Trigger)
–
– Dependencies:
– PRSKAT$M (Table)
–
CREATE OR REPLACE TRIGGER PRSKAT_U$M BEFORE UPDATE ON PRSKAT$M
FOR EACH ROW
DECLARE
BEGIN
– if MKEY was updated
IF :NEW.MKEY <> :OLD.MKEY THEN
RAISE_APPLICATION_ERROR (-20032, ‘@MEIERR@20032 - MKEY CANNOT BE CHANGED’);
END IF;
– reset some :NEW header columns before writing the record in the database
:NEW.VERSION := :OLD.VERSION + 1;
:NEW.LASTMOD := SYSDATE;
END;
/
–
– ZPL_D$M (Trigger)
–
– Dependencies:
– ZPL$M (Table)
–
CREATE OR REPLACE TRIGGER “ZPL_D$M” BEFORE DELETE ON ZPL$M
FOR EACH ROW
DECLARE
vUSER VARCHAR(128);
vMKEY VARCHAR(9);
vTRXN VARCHAR(1);
vVERSION NUMERIC(9,0);
vLASTMODDBKEY VARCHAR(9);
vAUDKEY NUMERIC(12,0);
vLASTMOD DATE;
BEGIN
– get currently logged database user
vUSER := UPPER(LTRIM(RTRIM(USER)));
– set record variables
vMKEY := :OLD.MKEY;
vVERSION := :OLD.VERSION;
vLASTMODDBKEY := :OLD.LASTMODDBKEY;
vLASTMOD := SYSDATE;
IF vUSER = ‘MEIPURGE’ THEN
vTRXN := ‘P’; – Remove deleted rows from the Image without distribute it to mobiles
ELSE
vTRXN := ‘D’; – Distribute changes to mobile dbs and remove deleted rows from the Image
END IF;
– perform blob management
– if table is replicated, perform replication transaction auditing
– if table has associated transactions table, perform transaction tracing
END;
/
–
– ZPL_I$M (Trigger)
–
– Dependencies:
– ZPL$M (Table)
–
CREATE OR REPLACE TRIGGER “ZPL_I$M” BEFORE INSERT ON ZPL$M
FOR EACH ROW
DECLARE
vUSER VARCHAR(128);
vMKEY VARCHAR(9);
vTRXN VARCHAR(1);
vVERSION NUMERIC(9,0);
vLASTMODDBKEY VARCHAR(9);
vLASTMODUSKEY VARCHAR(9);
vAUDKEY NUMERIC(12,0);
vLASTMOD DATE;
BEGIN
– get currently logged database user
vUSER := UPPER(LTRIM(RTRIM(USER)));
– check for invalid MKEY value
IF TRANSLATE(:NEW.MKEY, ‘!0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ’, ‘!!!’) <> ‘!!!’ THEN
RAISE_APPLICATION_ERROR (-20099,’@MEIERR@20099 - INVALID MKEY VALUE’);
END IF;
– set record variables
vMKEY := :NEW.MKEY;
vTRXN := ‘I’;
vVERSION := :NEW.VERSION;
vLASTMODDBKEY := :NEW.LASTMODDBKEY;
vLASTMOD := SYSDATE;
IF :NEW.TRXN = ‘A’ AND vUSER = ‘MEIDBO’ THEN
vTRXN := ‘A’;
END IF;
– perform conflict resolution
vVERSION := 0;
IF vUSER <> ‘MEIAPPLY’ OR vLASTMODDBKEY IS NULL THEN
vLASTMODDBKEY := ‘000000000’;
END IF;
– if table is replicated, perform replication transaction auditing
– if table has associated transactions table, perform transaction tracing
– reset some :NEW header columns before writing the record in the database
:NEW.STATE := NULL;
:NEW.TRXN := NULL;
:NEW.VERSION := vVERSION;
:NEW.LASTMODDBKEY := vLASTMODDBKEY;
:NEW.AUDKEY := NULL;
:NEW.LASTMOD := vLASTMOD;
END;
/
–
– ZPL_U$M (Trigger)
–
– Dependencies:
– ZPL$M (Table)
–
CREATE OR REPLACE TRIGGER “ZPL_U$M” BEFORE UPDATE ON ZPL$M
FOR EACH ROW
DECLARE
vUSER VARCHAR(128);
vMKEY VARCHAR(9);
vTRXN VARCHAR(1);
vVERSION NUMERIC(9,0);
vLASTMODDBKEY VARCHAR(9);
vLASTMODUSKEY VARCHAR(9);
vAUDKEY NUMERIC(12,0);
vLASTMOD DATE;
BEGIN
– get currently logged database user
vUSER := UPPER(LTRIM(RTRIM(USER)));
– if MKEY was updated
IF :NEW.MKEY <> :OLD.MKEY THEN
RAISE_APPLICATION_ERROR (-20032, ‘@MEIERR@20032 - MKEY CANNOT BE CHANGED’);
END IF;
– set record variables
vMKEY := :NEW.MKEY;
vVERSION := :OLD.VERSION;
vLASTMODDBKEY := :OLD.LASTMODDBKEY;
vLASTMOD := SYSDATE;
– set TRXN value
vTRXN := ‘U’;
IF UPPER(:NEW.TRXN) = ‘X’ THEN
vTRXN := ‘X’;
END IF;
IF UPPER(:NEW.TRXN) = ‘L’ THEN
vTRXN := ‘L’;
END IF;
IF vUSER = ‘MEIAPPLY’ AND vTRXN <> ‘U’ THEN
RAISE_APPLICATION_ERROR (-20048, ‘@MEIERR@20048 - MEIAPPLY CANNOT PROCESS EXCLUSIVE UPDATE (X|L)’);
END IF;
– perform blob management
– perform conflict resolution
IF vTRXN = ‘U’ THEN
vVERSION := vVERSION + 1;
IF vUSER = ‘MEIAPPLY’ THEN
vLASTMODDBKEY := :NEW.LASTMODDBKEY;
ELSE
vLASTMODDBKEY := ‘000000000’;
END IF;
END IF;
– if table is replicated, perform replication transaction auditing
– if table has associated transactions table, perform transaction tracing
– reset some :NEW heade