You are on page 1of 1

DECLARE

CURSOR fetch_det
IS
select
assignment_id,element_entry_id,object_version_number,effective_start_date
from pay_element_entries_f
where element_type_id = 175
and attribute1 is null
and assignment_id in (select assignment_id
from
(select Assignment_id,count(*)
from pay_element_entries_f
where element_type_id = 175
group by Assignment_id
having count(*) > 1))
--and rownum < 3
;

l_effective_start_date DATE := NULL;


l_effective_end_date DATE := NULL;
l_element_entry_id NUMBER := NULL;
l_delete_warning BOOLEAN;
l_err_msg VARCHAR2 (500) := NULL;
BEGIN
FOR i IN fetch_det
LOOP
BEGIN
pay_element_entry_api.delete_element_entry (
p_validate => FALSE,
p_datetrack_delete_mode => 'ZAP',
p_effective_date => i.effective_start_date,
p_element_entry_id => i.element_entry_id,
p_object_version_number => i.object_version_number,
p_effective_start_date => l_effective_start_date,
p_effective_end_date => l_effective_end_date,
p_delete_warning => l_delete_warning
);
COMMIT;
DBMS_OUTPUT.put_line (
'Element has been deleted: ' || i.element_entry_id
);
EXCEPTION
WHEN OTHERS
THEN
l_err_msg := SQLERRM;
DBMS_OUTPUT.put_line ('Main Exception: ' || l_err_msg);
END;
END LOOP;
EXCEPTION
WHEN OTHERS
THEN
l_err_msg := SQLERRM;
DBMS_OUTPUT.put_line ('Main Exception: ' || l_err_msg);
END;

You might also like