Files
mip/Data/BulkLoad/EFT/Nominations/plsql/cg$documents.spc

123 lines
4.4 KiB
Plaintext

CREATE OR REPLACE PACKAGE EFT_NOM.cg$DOCUMENTS IS
called_from_package BOOLEAN := FALSE;
-- Repository User-Defined Error Messages
DOCU_PK CONSTANT VARCHAR2(240) := '';
DOCU_DOCU_UK CONSTANT VARCHAR2(240) := '';
-- Column default prompts. Format PSEQNO_COL
P10DOCU_ID CONSTANT VARCHAR2(240) := 'Docu Id';
P20BLOB_CONTENT CONSTANT VARCHAR2(240) := 'Blob Content';
P30CONTENT_TYPE CONSTANT VARCHAR2(240) := 'Content Type';
P40LAST_UPDATED CONSTANT VARCHAR2(240) := 'Last Updated';
P50MIME_TYPE CONSTANT VARCHAR2(240) := 'Mime Type';
P60NAME CONSTANT VARCHAR2(240) := 'Name';
P70DOC_SIZE CONSTANT VARCHAR2(240) := 'Doc Size';
P80DAD_CHARSET CONSTANT VARCHAR2(240) := 'Dad Charset';
P90DESCRIPTION CONSTANT VARCHAR2(240) := 'Description';
P100LANGUAGE CONSTANT VARCHAR2(240) := 'Language';
cg$row DOCUMENTS%ROWTYPE;
-- DOCUMENTS row type variable
TYPE cg$row_type IS RECORD
(DOCU_ID cg$row.DOCU_ID%TYPE
,BLOB_CONTENT cg$row.BLOB_CONTENT%TYPE
,CONTENT_TYPE cg$row.CONTENT_TYPE%TYPE
,LAST_UPDATED cg$row.LAST_UPDATED%TYPE
,MIME_TYPE cg$row.MIME_TYPE%TYPE
,NAME cg$row.NAME%TYPE
,DOC_SIZE cg$row.DOC_SIZE%TYPE
,DAD_CHARSET cg$row.DAD_CHARSET%TYPE
,DESCRIPTION cg$row.DESCRIPTION%TYPE
,LANGUAGE cg$row.LANGUAGE%TYPE
,the_rowid ROWID)
;
-- DOCUMENTS indicator type variable
TYPE cg$ind_type IS RECORD
(DOCU_ID BOOLEAN DEFAULT FALSE
,BLOB_CONTENT BOOLEAN DEFAULT FALSE
,CONTENT_TYPE BOOLEAN DEFAULT FALSE
,LAST_UPDATED BOOLEAN DEFAULT FALSE
,MIME_TYPE BOOLEAN DEFAULT FALSE
,NAME BOOLEAN DEFAULT FALSE
,DOC_SIZE BOOLEAN DEFAULT FALSE
,DAD_CHARSET BOOLEAN DEFAULT FALSE
,DESCRIPTION BOOLEAN DEFAULT FALSE
,LANGUAGE BOOLEAN DEFAULT FALSE);
cg$ind_true cg$ind_type;
-- DOCUMENTS primary key type variable
TYPE cg$pk_type IS RECORD
(DOCU_ID cg$row.DOCU_ID%TYPE
,the_rowid ROWID)
;
-- PL/SQL Table Type variable for triggers
TYPE cg$table_type IS TABLE OF DOCUMENTS%ROWTYPE
INDEX BY BINARY_INTEGER;
cg$table cg$table_type;
TYPE cg$tableind_type IS TABLE OF cg$ind_type
INDEX BY BINARY_INTEGER;
cg$tableind cg$tableind_type;
idx BINARY_INTEGER := 1;
PROCEDURE ins(cg$rec IN OUT cg$row_type,
cg$ind IN OUT cg$ind_type,
do_ins IN BOOLEAN DEFAULT TRUE
);
PROCEDURE upd(cg$rec IN OUT cg$row_type,
cg$ind IN OUT cg$ind_type,
do_upd IN BOOLEAN DEFAULT TRUE,
cg$pk IN cg$row_type DEFAULT NULL
);
PROCEDURE del(cg$pk IN cg$pk_type,
do_del IN BOOLEAN DEFAULT TRUE
);
PROCEDURE lck(cg$old_rec IN cg$row_type,
cg$old_ind IN cg$ind_type,
nowait_flag IN BOOLEAN DEFAULT TRUE
);
PROCEDURE slct(cg$sel_rec IN OUT cg$row_type);
PROCEDURE validate_arc(cg$rec IN OUT cg$row_type);
PROCEDURE validate_domain(cg$rec IN OUT cg$row_type,
cg$ind IN cg$ind_type DEFAULT cg$ind_true);
PROCEDURE validate_foreign_keys_ins(cg$rec IN cg$row_type);
PROCEDURE validate_foreign_keys_upd(cg$rec IN cg$row_type,
cg$old_rec IN cg$row_type,
cg$ind IN cg$ind_type);
PROCEDURE validate_foreign_keys_del(cg$rec IN cg$row_type);
PROCEDURE validate_domain_cascade_delete(cg$old_rec IN cg$row_type);
PROCEDURE validate_domain_cascade_update(cg$old_rec IN cg$row_type);
PROCEDURE cascade_update(cg$new_rec IN OUT cg$row_type,
cg$old_rec IN cg$row_type );
PROCEDURE domain_cascade_update(cg$new_rec IN OUT cg$row_type,
cg$new_ind IN OUT cg$ind_type,
cg$old_rec IN cg$row_type);
PROCEDURE domain_cascade_upd( cg$rec IN OUT cg$row_type,
cg$ind IN OUT cg$ind_type,
cg$old_rec IN cg$row_type);
PROCEDURE cascade_delete(cg$old_rec IN OUT cg$row_type);
PROCEDURE domain_cascade_delete(cg$old_rec IN cg$row_type);
PROCEDURE upd_denorm2( cg$rec IN cg$row_type,
cg$ind IN cg$ind_type );
PROCEDURE upd_oper_denorm2( cg$rec IN cg$row_type,
cg$old_rec IN cg$row_type,
cg$ind IN cg$ind_type,
operation IN VARCHAR2 DEFAULT 'UPD' );
END cg$DOCUMENTS;
/