66 lines
2.6 KiB
Plaintext
66 lines
2.6 KiB
Plaintext
CREATE OR REPLACE TRIGGER "EFT_NOM".cg$AUS_SESSIONS
|
|
|
|
AFTER UPDATE ON SESSIONS
|
|
|
|
|
|
DECLARE
|
|
idx BINARY_INTEGER := cg$SESSIONS.cg$table.FIRST;
|
|
cg$old_rec cg$SESSIONS.cg$row_type;
|
|
cg$rec cg$SESSIONS.cg$row_type;
|
|
cg$ind cg$SESSIONS.cg$ind_type;
|
|
BEGIN
|
|
-- Application_logic Pre-After-Update-statement <<Start>>
|
|
-- Application_logic Pre-After-Update-statement << End >>
|
|
|
|
WHILE idx IS NOT NULL LOOP
|
|
cg$old_rec.CLIENT_ID := cg$SESSIONS.cg$table(idx).CLIENT_ID;
|
|
cg$old_rec.USER_NAME := cg$SESSIONS.cg$table(idx).USER_NAME;
|
|
cg$old_rec.SYUS_ID := cg$SESSIONS.cg$table(idx).SYUS_ID;
|
|
cg$old_rec.CUST_ID := cg$SESSIONS.cg$table(idx).CUST_ID;
|
|
cg$old_rec.INTE_ID := cg$SESSIONS.cg$table(idx).INTE_ID;
|
|
cg$old_rec.IP_ADDRESS := cg$SESSIONS.cg$table(idx).IP_ADDRESS;
|
|
cg$old_rec.EXPIRES := cg$SESSIONS.cg$table(idx).EXPIRES;
|
|
|
|
IF NOT (cg$SESSIONS.called_from_package) THEN
|
|
idx := cg$SESSIONS.cg$table.NEXT(idx);
|
|
cg$rec.CLIENT_ID := cg$SESSIONS.cg$table(idx).CLIENT_ID;
|
|
cg$ind.CLIENT_ID := updating('CLIENT_ID');
|
|
cg$rec.USER_NAME := cg$SESSIONS.cg$table(idx).USER_NAME;
|
|
cg$ind.USER_NAME := updating('USER_NAME');
|
|
cg$rec.SYUS_ID := cg$SESSIONS.cg$table(idx).SYUS_ID;
|
|
cg$ind.SYUS_ID := updating('SYUS_ID');
|
|
cg$rec.CUST_ID := cg$SESSIONS.cg$table(idx).CUST_ID;
|
|
cg$ind.CUST_ID := updating('CUST_ID');
|
|
cg$rec.INTE_ID := cg$SESSIONS.cg$table(idx).INTE_ID;
|
|
cg$ind.INTE_ID := updating('INTE_ID');
|
|
cg$rec.IP_ADDRESS := cg$SESSIONS.cg$table(idx).IP_ADDRESS;
|
|
cg$ind.IP_ADDRESS := updating('IP_ADDRESS');
|
|
cg$rec.EXPIRES := cg$SESSIONS.cg$table(idx).EXPIRES;
|
|
cg$ind.EXPIRES := updating('EXPIRES');
|
|
|
|
cg$SESSIONS.validate_foreign_keys_upd(cg$rec, cg$old_rec, cg$ind);
|
|
|
|
cg$SESSIONS.upd_denorm2( cg$rec,
|
|
cg$SESSIONS.cg$tableind(idx)
|
|
);
|
|
cg$SESSIONS.upd_oper_denorm2( cg$rec,
|
|
cg$old_rec,
|
|
cg$SESSIONS.cg$tableind(idx)
|
|
);
|
|
cg$SESSIONS.cascade_update(cg$rec, cg$old_rec);
|
|
cg$SESSIONS.domain_cascade_update(cg$rec, cg$ind, cg$old_rec);
|
|
|
|
cg$SESSIONS.called_from_package := FALSE;
|
|
END IF;
|
|
idx := cg$SESSIONS.cg$table.NEXT(idx);
|
|
END LOOP;
|
|
|
|
cg$SESSIONS.cg$table.DELETE;
|
|
|
|
-- Application_logic Post-After-Update-statement <<Start>>
|
|
-- Application_logic Post-After-Update-statement << End >>
|
|
|
|
END;
|
|
/
|
|
|