DBMS_LOCK.sleep (600);
808639Oct 27 2010 — edited Oct 27 2010CREATE OR REPLACE PROCEDURE baw_sleep_test (sleep_time IN NUMBER)
AS
v_baw_load_status VARCHAR2 (250) := '';
v_count NUMBER := 0;
BEGIN
SELECT load_status
INTO v_baw_load_status
FROM analytic_lat.wc_baw_control_ctl;
DBMS_OUTPUT.put_line ('Value Of v_baw_load_status is ::' || v_baw_load_status );
WHILE (v_baw_load_status <> 'COMPLETED')
loop
DBMS_LOCK.sleep (600);
SELECT load_status INTO v_baw_load_status FROM analytic_lat.wc_baw_control_ctl;
DBMS_OUTPUT.put_line ('Value Of v_baw_load_status is ::' || v_baw_load_status);
v_count := v_count + 1;
end loop;
-- DBMS_LOCK.sleep (sleep_time - TRUNC (sleep_time / 600) * 600);
DBMS_OUTPUT.put_line ('END of Process');
END;
This is my procedure, where I am checking the status from
SELECT load_status INTO v_baw_load_status FROM analytic_lat.wc_baw_control_ctl;
if it is :completed: then fine, if other than :completed: then it will hold for 10 min and then check the status.
Thanks,
Haraprasad...