rem rem $Header: L:\\\\model\\repman40\\api\\RCS\\CIDEU.HPB 1.3 1998/12/30 14:52:21 loldham Exp $ rem Rem Copyright (c) 1994 by Oracle Corporation Rem NAME Rem cideu.hpb - Rem DESCRIPTION Rem Rem RETURNS Rem Rem NOTES Rem Rem MODIFIED (MM/DD/YY) Rem aheath 09/06/94 - Creation REM *************************************************************************** REM Hand-carved package body for DIAGRAM ELEMENT USAGE created on 05-SEP-94 REM *************************************************************************** CREATE OR REPLACE PACKAGE BODY cihdeu IS -- Type-specific post-process routines PROCEDURE check_delete(id rm.reference); str_type constant varchar2(6) := 'DEU'; part_type constant varchar2(6) := 'DIA'; --======================== PRE-PROCESS (INS,UPD) ============================-- PROCEDURE pre_process(operation varchar2,id rm.reference, pl in out NOCOPY ciodiagram_element_usage.data) IS BEGIN -- API access permitted -- Stop Now - no API access permitted! -- ciierr.fatal(2065,ciiutl.nls_type_name_s(str_type)); -- Perform INSERT-specific processing if operation = 'INS' then if pl.v.element_type_for is null then ciierr.fatal(1301,'ELEMENT_TYPE_FOR'); end if; -- Check for existence of diagram and cielement -- elements if ciiutl.el_exists(pl.v.diagram_reference,part_type) = false then ciierr.fatal(3500,'DIAGRAM ELEMENT USAGE','diagram', pl.v.diagram_reference); end if; if ciiutl.el_exists(pl.v.cielement_reference,pl.v.element_type_for) = false then ciierr.fatal(3500,'DIAGRAM ELEMENT USAGE','cielement', pl.v.cielement_reference); end if ; else if ciiutl.el_exists(id,str_type) = false then ciierr.fatal(3504,ciiutl.nls_type_name('DIAGRAM_ELEMENT_USAGE'),id); end if; end if; -- Access rights for diagram element usage derive from the diagram -- Access rights checking performed by triggers in config 4.0.9 -- ciiacc.check_access_rights(pl.v.diagram_reference, -- part_type,'UPD','NSHR'); -- if operation = 'INS' then -- ciiacc.check_access_rights(pl.v.cielement_reference, -- pl.v.element_type_for,'SEL'); -- end if; -- Check that diagram element usage with this diagram and -- cielement doesn't already exist on insert -- CHECK REPLACED BY DEFERRED CONSTRAINT AT 4.0.6 if operation = 'INS' then -- Initialize unassigned properties with default values on INSERT pl.v.element_type_name := str_type; pl.i.element_type_name := true; --#BEGIN if pl.i.sequence = false then pl.v.sequence := ciiexp.default_str_seq(pl.v.diagram_reference, pl.v.cielement_reference, str_type, NULL, 'CIELEMENT_REF'); pl.i.sequence := true; end if; --#END end if; END; --======================== PRE-PROCESS (DEL,SEL) ============================-- PROCEDURE pre_process(operation varchar2,id rm.reference) IS BEGIN -- Access rights for diagram element usage derive from the diagram -- Access rights checking performed by triggers in config 4.0.9 -- if operation = 'DEL' then -- API access permitted -- Stop Now - no API access permitted! -- ciierr.fatal(2065,ciiutl.nls_type_name_s(str_type)); -- ciiacc.check_access_rights(id,str_type,'UPD','MM'); -- else -- ciiacc.check_access_rights(id,str_type,operation,'MM'); -- end if; null; END; --===================== POST-PROCESS (INS,UPD,SEL) ==========================-- PROCEDURE post_process(operation varchar2,id rm.reference, pl ciodiagram_element_usage.data) IS BEGIN null; END; --========================= POST PROCESS (DEL) ==============================-- PROCEDURE post_process(operation varchar2,id rm.reference) IS BEGIN null; END; --============================= CHECK DELETE ================================-- PROCEDURE check_delete(id rm.reference) IS dummy number; error_count number := 0; BEGIN null; END; --================================== END ====================================-- -- -- Package instantiation block -- BEGIN is_installed := true; END; /