92 lines
3.5 KiB
Plaintext
92 lines
3.5 KiB
Plaintext
CREATE OR REPLACE TRIGGER "EFT_NOM".cg$BIR_DOCUMENTS
|
|
|
|
BEFORE INSERT ON DOCUMENTS FOR EACH ROW
|
|
|
|
|
|
DECLARE
|
|
cg$rec cg$DOCUMENTS.cg$row_type;
|
|
cg$ind cg$DOCUMENTS.cg$ind_type;
|
|
BEGIN
|
|
-- Application_logic Pre-Before-Insert-row <<Start>>
|
|
-- Application_logic Pre-Before-Insert-row << End >>
|
|
|
|
-- Load cg$rec/cg$ind values from new
|
|
|
|
cg$rec.DOCU_ID := :new.DOCU_ID;
|
|
cg$ind.DOCU_ID := TRUE;
|
|
-- Warning: Column BLOB_CONTENT is of type BLOB and not allowed in triggers
|
|
cg$ind.BLOB_CONTENT := FALSE;
|
|
cg$rec.CONTENT_TYPE := :new.CONTENT_TYPE;
|
|
cg$ind.CONTENT_TYPE := TRUE;
|
|
cg$rec.LAST_UPDATED := :new.LAST_UPDATED;
|
|
cg$ind.LAST_UPDATED := TRUE;
|
|
cg$rec.MIME_TYPE := :new.MIME_TYPE;
|
|
cg$ind.MIME_TYPE := TRUE;
|
|
cg$rec.NAME := :new.NAME;
|
|
cg$ind.NAME := TRUE;
|
|
cg$rec.DOC_SIZE := :new.DOC_SIZE;
|
|
cg$ind.DOC_SIZE := TRUE;
|
|
cg$rec.DAD_CHARSET := :new.DAD_CHARSET;
|
|
cg$ind.DAD_CHARSET := TRUE;
|
|
cg$rec.DESCRIPTION := :new.DESCRIPTION;
|
|
cg$ind.DESCRIPTION := TRUE;
|
|
cg$rec.LANGUAGE := :new.LANGUAGE;
|
|
cg$ind.LANGUAGE := TRUE;
|
|
|
|
if not (cg$DOCUMENTS.called_from_package) then
|
|
cg$DOCUMENTS.validate_arc(cg$rec);
|
|
cg$DOCUMENTS.validate_domain(cg$rec);
|
|
|
|
cg$DOCUMENTS.ins(cg$rec, cg$ind, FALSE);
|
|
cg$DOCUMENTS.called_from_package := FALSE;
|
|
end if;
|
|
|
|
cg$DOCUMENTS.cg$table(cg$DOCUMENTS.idx).DOCU_ID := cg$rec.DOCU_ID;
|
|
cg$DOCUMENTS.cg$tableind(cg$DOCUMENTS.idx).DOCU_ID := cg$ind.DOCU_ID;
|
|
|
|
cg$DOCUMENTS.cg$table(cg$DOCUMENTS.idx).BLOB_CONTENT := cg$rec.BLOB_CONTENT;
|
|
cg$DOCUMENTS.cg$tableind(cg$DOCUMENTS.idx).BLOB_CONTENT := cg$ind.BLOB_CONTENT;
|
|
|
|
cg$DOCUMENTS.cg$table(cg$DOCUMENTS.idx).CONTENT_TYPE := cg$rec.CONTENT_TYPE;
|
|
cg$DOCUMENTS.cg$tableind(cg$DOCUMENTS.idx).CONTENT_TYPE := cg$ind.CONTENT_TYPE;
|
|
|
|
cg$DOCUMENTS.cg$table(cg$DOCUMENTS.idx).LAST_UPDATED := cg$rec.LAST_UPDATED;
|
|
cg$DOCUMENTS.cg$tableind(cg$DOCUMENTS.idx).LAST_UPDATED := cg$ind.LAST_UPDATED;
|
|
|
|
cg$DOCUMENTS.cg$table(cg$DOCUMENTS.idx).MIME_TYPE := cg$rec.MIME_TYPE;
|
|
cg$DOCUMENTS.cg$tableind(cg$DOCUMENTS.idx).MIME_TYPE := cg$ind.MIME_TYPE;
|
|
|
|
cg$DOCUMENTS.cg$table(cg$DOCUMENTS.idx).NAME := cg$rec.NAME;
|
|
cg$DOCUMENTS.cg$tableind(cg$DOCUMENTS.idx).NAME := cg$ind.NAME;
|
|
|
|
cg$DOCUMENTS.cg$table(cg$DOCUMENTS.idx).DOC_SIZE := cg$rec.DOC_SIZE;
|
|
cg$DOCUMENTS.cg$tableind(cg$DOCUMENTS.idx).DOC_SIZE := cg$ind.DOC_SIZE;
|
|
|
|
cg$DOCUMENTS.cg$table(cg$DOCUMENTS.idx).DAD_CHARSET := cg$rec.DAD_CHARSET;
|
|
cg$DOCUMENTS.cg$tableind(cg$DOCUMENTS.idx).DAD_CHARSET := cg$ind.DAD_CHARSET;
|
|
|
|
cg$DOCUMENTS.cg$table(cg$DOCUMENTS.idx).DESCRIPTION := cg$rec.DESCRIPTION;
|
|
cg$DOCUMENTS.cg$tableind(cg$DOCUMENTS.idx).DESCRIPTION := cg$ind.DESCRIPTION;
|
|
|
|
cg$DOCUMENTS.cg$table(cg$DOCUMENTS.idx).LANGUAGE := cg$rec.LANGUAGE;
|
|
cg$DOCUMENTS.cg$tableind(cg$DOCUMENTS.idx).LANGUAGE := cg$ind.LANGUAGE;
|
|
|
|
cg$DOCUMENTS.idx := cg$DOCUMENTS.idx + 1;
|
|
|
|
:new.DOCU_ID := cg$rec.DOCU_ID;
|
|
-- Warning: Column BLOB_CONTENT is of type BLOB and not allowed in triggers
|
|
:new.CONTENT_TYPE := cg$rec.CONTENT_TYPE;
|
|
:new.LAST_UPDATED := cg$rec.LAST_UPDATED;
|
|
:new.MIME_TYPE := cg$rec.MIME_TYPE;
|
|
:new.NAME := cg$rec.NAME;
|
|
:new.DOC_SIZE := cg$rec.DOC_SIZE;
|
|
:new.DAD_CHARSET := cg$rec.DAD_CHARSET;
|
|
:new.DESCRIPTION := cg$rec.DESCRIPTION;
|
|
:new.LANGUAGE := cg$rec.LANGUAGE;
|
|
|
|
-- Application_logic Post-Before-Insert-row <<Start>>
|
|
-- Application_logic Post-Before-Insert-row << End >>
|
|
END;
|
|
/
|
|
|