CREATE OR REPLACE PACKAGE BODY EFT_NOM.cama_support IS g_header CONSTANT VARCHAR2(160) := '$Header: /Isle Of Grain/database/PLSQL/cama_support.pck 1 7/01/05 12:54 Gilberta $'; g_revision CONSTANT VARCHAR2(160) := '$Revision: 1 $'; --- -- S E T S E Q U E N C E --- PROCEDURE set_sequence(p_sequence_name IN VARCHAR2 ,p_value IN NUMBER) IS -- v_increment NUMBER; v_dummy NUMBER; -- PRAGMA AUTONOMOUS_TRANSACTION; -- BEGIN -- dbms_output.put_line('ready for ' || p_sequence_name); FOR v_sequence IN (SELECT us.increment_by ,us.last_number ,us.min_value ,us.max_value FROM user_sequences us WHERE us.sequence_name = upper(p_sequence_name) AND us.last_number != p_value - 1) LOOP v_increment := p_value - v_sequence.last_number; dbms_output.put_line('last is ' || v_sequence.last_number || ' inc was ' || v_sequence.increment_by || ' will be ' || v_increment); IF (p_value - 1) BETWEEN v_sequence.min_value AND v_sequence.max_value THEN EXECUTE IMMEDIATE 'alter sequence ' || p_sequence_name || ' increment by ' || v_increment; EXECUTE IMMEDIATE 'select ' || p_sequence_name || '.nextval FROM dual' INTO v_dummy; dbms_output.put_line('inc is ' || v_increment || ' nextval is ' || v_dummy); EXECUTE IMMEDIATE 'alter sequence ' || p_sequence_name || ' increment by ' || v_sequence.increment_by; EXECUTE IMMEDIATE 'select ' || p_sequence_name || '.nextval FROM dual' INTO v_dummy; dbms_output.put_line('inc is ' || v_sequence.increment_by || ' nextval is ' || v_dummy); ELSE dbms_output.put_line((p_value - 1) || ' is not between ' || v_sequence.min_value || ' and ' || v_sequence.max_value); END IF; END LOOP; dbms_output.put_line('finished with ' || p_sequence_name); COMMIT; -- END set_sequence; PROCEDURE recompile(status_in IN VARCHAR2 := 'INVALID' ,name_in IN VARCHAR2 := '%' ,type_in IN VARCHAR2 := '%' ,schema_in IN VARCHAR2 := USER) IS -- v_objtype VARCHAR2(100); -- CURSOR obj_cur IS SELECT owner ,object_name ,object_type FROM all_objects WHERE (status LIKE upper(status_in) OR upper(status_in) = 'ALL') AND object_name LIKE upper(name_in) AND object_name != 'RECOMPILE' AND object_type LIKE upper(type_in) AND owner LIKE upper(schema_in) AND object_type IN ('PACKAGE', 'FUNCTION', 'PROCEDURE', 'PACKAGE BODY', 'TRIGGER', 'VIEW') ORDER BY decode(object_type ,'PACKAGE' ,1 ,'FUNCTION' ,2 ,'PROCEDURE' ,3 ,'PACKAGE BODY' ,4 ,'TRIGGER' ,5 ,'VIEW' ,6); BEGIN FOR rec IN obj_cur LOOP BEGIN IF rec.object_type = 'PACKAGE' THEN v_objtype := 'PACKAGE SPECIFICATION'; ELSE v_objtype := rec.object_type; END IF; dbms_ddl.alter_compile(v_objtype ,rec.owner ,rec.object_name); dbms_output.put_line(substr('Compiled ' || v_objtype || ' of ' || rec.owner || '.' || rec.object_name ,1 ,2000)); EXCEPTION WHEN OTHERS THEN dbms_output.put_line(substr('Unable to compile ' || rec.owner || '.' || rec.object_name || '(' || v_objtype || ')' || SQLERRM(SQLCODE) ,1 ,2000)); END; END LOOP; END recompile; END cama_support; /