The following lines contain the word 'select', 'insert', 'update' or 'delete':
PROCEDURE delete_time_def_direct(p_business_group_id NUMBER)
IS
--
cursor get_time_defs(p_bg_id number)
is
select time_definition_id
from pay_time_definitions
where business_group_id = p_bg_id;
delete from per_time_periods
where time_definition_id = timrec.time_definition_id;
delete from pay_time_definitions
where business_group_id = p_business_group_id;
END delete_time_def_direct;
PROCEDURE delete_retro_details(p_business_group_id NUMBER)
IS
--
cursor get_ret_asg(p_bg_id number) is
select pra.retro_assignment_id
from pay_retro_assignments pra
where pra.assignment_id in (select distinct paf.assignment_id
from per_assignments_f paf
where paf.business_group_id = p_bg_id);
select retro_component_usage_id
from pay_retro_component_usages
where business_group_id = p_bg_id;
delete from pay_retro_entries
where retro_assignment_id = rarec.retro_assignment_id;
delete from pay_retro_assignments
where retro_assignment_id = rarec.retro_assignment_id;
delete from pay_element_span_usages
where retro_component_usage_id = retrec.retro_component_usage_id;
delete from pay_retro_component_usages
where retro_component_usage_id = retrec.retro_component_usage_id;
END delete_retro_details;
PROCEDURE delete_run_types(p_business_group_id NUMBER)
IS
cursor getrt(p_business_group_id number)
is
select run_type_id
from pay_run_types_f
where business_group_id = p_business_group_id;
delete from pay_run_type_usages_f
where parent_run_type_id = rtrec.run_type_id;
delete from pay_run_type_usages_f
where child_run_type_id = rtrec.run_type_id;
delete from pay_element_type_usages_f
where run_type_id = rtrec.run_type_id;
delete from pay_run_type_org_methods_f
where run_type_id = rtrec.run_type_id;
delete from pay_run_types_f
where run_type_id = rtrec.run_type_id;
END delete_run_types;
PROCEDURE delete_mag_structure(p_business_group_id NUMBER)
IS
begin
--
hr_utility.set_location('hr_delete.delete_mag_structure',1);
DELETE FROM pay_magnetic_records mr
WHERE EXISTS ( SELECT ''
FROM ff_formulas_f ff
WHERE ff.formula_id = mr.formula_id
AND ff.business_group_id = p_business_group_id);
end delete_mag_structure;
PROCEDURE delete_bal_load_struct(p_business_group_id NUMBER)
IS
--
l_business_group_name per_business_groups.name%type ;
SELECT bg.name
FROM per_business_groups bg
WHERE bg.business_group_id = p_business_group_id ;
SELECT bh.batch_id,
bh.batch_status
FROM pay_balance_batch_headers bh
WHERE ( (bh.business_group_id = p_business_group_id)
OR ( upper(bh.business_group_name) = upper(l_business_group_name)) );
SELECT bl.batch_line_id
FROM pay_balance_batch_lines bl
where bl.batch_id = p_batch;
hr_utility.set_location('hr_delete.delete_bal_load_struct',10);
hr_utility.set_location('hr_delete.delete_bal_load_struct',20);
hr_utility.set_location('hr_delete.delete_bal_load_struct',30);
DELETE FROM pay_message_lines
WHERE source_id = pblrec.batch_line_id
AND source_type = 'L';
DELETE FROM pay_message_lines
WHERE source_id = pbhrec.batch_id
AND source_type = 'H';
DELETE FROM pay_balance_batch_lines bl
WHERE bl.batch_id = pbhrec.batch_id;
DELETE FROM pay_balance_batch_headers bh
WHERE bh.batch_id = pbhrec.batch_id;
hr_utility.set_location('hr_delete.delete_bal_load_struct',99);
end delete_bal_load_struct;
PROCEDURE delete_formula_direct(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_formula_direct';
SELECT distinct formula_id
FROM ff_formulas_f
WHERE business_group_id = c_business_group_id;
DELETE FROM ff_compiled_info_f ci
WHERE ci.formula_id = form.formula_id;
DELETE FROM ff_fdi_usages_f fdi
WHERE fdi.formula_id = form.formula_id;
DELETE FROM ff_formulas_f ff
WHERE ff.formula_id = form.formula_id;
end delete_formula_direct;
PROCEDURE delete_database_items(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_database_items';
SELECT null
FROM ff_user_entities
WHERE business_group_id = c_business_group_id;
DELETE FROM ff_user_entities
WHERE business_group_id = p_business_group_id;
end delete_database_items;
PROCEDURE delete_assign_low_detail(p_business_group_id NUMBER)
IS
begin
--
hr_utility.set_location('hr_delete.delete_assign_low_detail',1);
DELETE FROM pay_coin_anal_elements cae
WHERE EXISTS (SELECT ''
FROM pay_pre_payments ppp
WHERE ppp.pre_payment_id
= cae.pre_payment_id
AND EXISTS ( SELECT ''
FROM pay_assignment_actions paa
WHERE paa.assignment_action_id
= ppp.assignment_action_id
AND EXISTS (SELECT ''
FROM per_assignments_f pa
WHERE pa.assignment_id
= paa.assignment_id
AND pa.business_group_id
= p_business_group_id
)
)
);
hr_utility.set_location('hr_delete.delete_assign_low_detail',3);
DELETE FROM pay_monetary_units_tl montl
WHERE EXISTS ( SELECT ''
FROM pay_monetary_units mon
WHERE montl.monetary_unit_id = mon.monetary_unit_id
AND mon.business_group_id = p_business_group_id
);
DELETE FROM pay_monetary_units mon
WHERE mon.business_group_id = p_business_group_id;
hr_utility.set_location('hr_delete.delete_assign_low_detail',5);
DELETE FROM pay_process_events ppe
WHERE EXISTS (SELECT ''
FROM per_assignments_f pa
WHERE pa.assignment_id = ppe.assignment_id
AND pa.business_group_id = p_business_group_id
);
end delete_assign_low_detail;
PROCEDURE delete_assign_detail(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_assign_detail';
SELECT pee.element_entry_id
from pay_element_entries_f pee,
pay_element_links_f pel
where pel.business_group_id = p_business_group_id
and pee.element_link_id = pel.element_link_id;
select palb.latest_balance_id,
'ASG' bal_type
from pay_assignment_latest_balances palb,
pay_assignment_actions paa,
pay_payroll_actions ppa
where ppa.business_group_id = p_bg_id
and ppa.payroll_action_id = paa.payroll_action_id
and paa.assignment_action_id = palb.assignment_action_id
union all
select pplb.latest_balance_id,
'PER' bal_type
from pay_person_latest_balances pplb,
pay_assignment_actions paa,
pay_payroll_actions ppa
where ppa.business_group_id = p_bg_id
and ppa.payroll_action_id = paa.payroll_action_id
and paa.assignment_action_id = pplb.assignment_action_id
union all
select plb.latest_balance_id,
'AP' bal_type
from pay_latest_balances plb,
pay_assignment_actions paa,
pay_payroll_actions ppa
where ppa.business_group_id = p_bg_id
and ppa.payroll_action_id = paa.payroll_action_id
and paa.assignment_action_id = plb.assignment_action_id;
select pac.payroll_action_id,
pac.action_type
from pay_payroll_actions pac
where pac.business_group_id = p_business_group_id
order by pac.effective_date desc,
pac.payroll_action_id desc;
update pay_assignment_actions act
set act.secondary_status = 'U'
where act.payroll_action_id = c1rec.payroll_action_id;
delete from pay_balance_context_values
where latest_balance_id = lbrec.latest_balance_id;
delete from pay_assignment_latest_balances
where latest_balance_id = lbrec.latest_balance_id;
delete from pay_person_latest_balances
where latest_balance_id = lbrec.latest_balance_id;
delete from pay_latest_balances
where latest_balance_id = lbrec.latest_balance_id;
delete from pay_element_entry_values_f eev
where eev.element_entry_id = cevrec.element_entry_id;
delete from pay_entry_process_details
where element_entry_id = cevrec.element_entry_id;
delete from pay_element_entries_f pee
where pee.element_entry_id = cevrec.element_entry_id;
end delete_assign_detail;
PROCEDURE delete_assign_direct(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_assign_direct';
SELECT null
FROM sys.dual
WHERE exists(select null
FROM per_all_assignments_f
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM per_assignment_status_types
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM per_letter_types
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM per_parent_spines
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM per_grades
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM per_jobs
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM PER_RECRUITMENT_ACTIVITIES
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM PER_REQUISITIONS
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM PER_BUDGETS
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM PER_PAY_PROPOSALS
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM PER_CAREER_PATHS
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM PER_POSITION_STRUCTURES
WHERE business_group_id = c_business_group_id);
SELECT null
FROM sys.dual
WHERE exists(select null
FROM per_events
WHERE business_group_id = c_business_group_id);
DELETE FROM per_letter_request_lines
WHERE business_group_id = p_business_group_id;
DELETE per_letter_requests
WHERE business_group_id = p_business_group_id;
DELETE per_letter_gen_statuses
WHERE business_group_id = p_business_group_id;
DELETE per_letter_types
WHERE business_group_id = p_business_group_id;
delete from per_pay_proposal_components ppc
where ppc.business_group_id = p_business_group_id;
delete from per_pay_proposals
where business_group_id = p_business_group_id;
DELETE FROM per_bookings pb
WHERE pb.business_group_id = p_business_group_id;
DELETE FROM per_events
WHERE business_group_id = p_business_group_id;
DELETE FROM per_assignment_budget_values_f abv
WHERE abv.business_group_id = p_business_group_id;
DELETE FROM per_budget_values
WHERE business_group_id = p_business_group_id;
DELETE FROM per_budget_values
WHERE business_group_id = p_business_group_id;
DELETE FROM per_budget_elements
WHERE business_group_id = p_business_group_id;
DELETE FROM per_budget_versions
WHERE business_group_id = p_business_group_id;
DELETE FROM per_budgets
WHERE business_group_id = p_business_group_id;
DELETE FROM pay_object_groups pog
WHERE
SOURCE_TYPE = 'PAF'
AND
EXISTS
(SELECT ''
FROM per_assignments_f pa
WHERE pa.assignment_id = pog.source_id
AND pa.business_group_id = p_business_group_id);
DELETE FROM pay_us_asg_reporting uar
WHERE
EXISTS
(SELECT ''
FROM per_assignments_f pa
WHERE pa.assignment_id = uar.assignment_id
AND pa.business_group_id = p_business_group_id);
DELETE FROM pay_personal_payment_methods_f ppm
WHERE ppm.business_group_id = p_business_group_id;
DELETE FROM pay_cost_allocations_f ca
WHERE ca.business_group_id = p_business_group_id;
DELETE FROM per_assignment_extra_info aei
WHERE
EXISTS
(SELECT ''
FROM per_assignments_f pa
WHERE pa.assignment_id = aei.assignment_id
AND pa.business_group_id = p_business_group_id);
DELETE FROM per_quickpaint_result_text qrt
WHERE
EXISTS
(SELECT ''
FROM per_assignments_f pa
WHERE pa.assignment_id = qrt.assignment_id
AND pa.business_group_id = p_business_group_id);
DELETE FROM pay_assignment_link_usages alu
WHERE EXISTS ( SELECT ''
FROM per_assignments_f pa
WHERE pa.assignment_id = alu.assignment_id
AND pa.business_group_id = p_business_group_id);
DELETE FROM hr_assignment_set_amendments asa
WHERE EXISTS ( SELECT ''
FROM per_assignments_f pa
WHERE pa.assignment_id = asa.assignment_id
AND pa.business_group_id = p_business_group_id);
DELETE FROM per_spinal_point_placements_f
WHERE business_group_id = p_business_group_id;
DELETE FROM per_secondary_ass_statuses
WHERE business_group_id = p_business_group_id;
DELETE FROM per_all_assignments_f
WHERE business_group_id = p_business_group_id;
DELETE FROM per_pay_bases
WHERE business_group_id = p_business_group_id;
DELETE FROM per_career_path_elements
WHERE business_group_id = p_business_group_id;
DELETE FROM per_career_paths
WHERE business_group_id = p_business_group_id;
DELETE PER_ASS_STATUS_TYPE_AMENDS
WHERE business_group_id = p_business_group_id;
DELETE per_assignment_status_types
WHERE business_group_id = p_business_group_id;
DELETE FROM per_recruitment_activity_for
WHERE business_group_id = p_business_group_id;
DELETE FROM per_recruitment_activities
WHERE business_group_id = p_business_group_id;
DELETE FROM per_vacancies vac
WHERE vac.business_group_id = p_business_group_id;
DELETE FROM per_requisitions pr
WHERE pr.business_group_id = p_business_group_id;
DELETE FROM pay_org_payment_methods_f
WHERE business_group_id = p_business_group_id;
end delete_assign_direct;
PROCEDURE delete_grade_direct(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_grade_direct';
SELECT null
FROM per_grades
WHERE business_group_id = c_business_group_id;
SELECT null
FROM per_parent_spines
WHERE business_group_id = c_business_group_id;
DELETE FROM per_grade_spines_f gs
WHERE gs.business_group_id = p_business_group_id;
DELETE FROM per_valid_grades vg
WHERE vg.business_group_id = p_business_group_id;
DELETE FROM per_grades_tl gdt
WHERE gdt.grade_id IN (SELECT pg.grade_id
FROM per_grades pg
WHERE pg.business_group_id = p_business_group_id);
DELETE FROM per_grades pg
WHERE pg.business_group_id = p_business_group_id;
DELETE FROM PER_SPINAL_POINT_STEPS_F
WHERE business_group_id = p_business_group_id;
DELETE FROM per_spinal_points
WHERE business_group_id = p_business_group_id;
DELETE FROM per_parent_spines
WHERE business_group_id = p_business_group_id;
end delete_grade_direct;
PROCEDURE delete_job_direct(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_job_direct';
SELECT null
FROM PER_POSITION_STRUCTURES
WHERE business_group_id = c_business_group_id;
SELECT null
FROM per_jobs
WHERE business_group_id = c_business_group_id;
DELETE FROM per_pos_structure_elements pse
WHERE pse.business_group_id = p_business_group_id;
DELETE FROM per_pos_structure_versions psv
WHERE psv.business_group_id = p_business_group_id;
DELETE FROM per_position_structures ps
WHERE ps.business_group_id = p_business_group_id;
DELETE FROM per_job_evaluations
WHERE business_group_id = p_business_group_id;
DELETE FROM per_job_requirements
WHERE business_group_id = p_business_group_id;
DELETE FROM per_position_extra_info poi
WHERE EXISTS (SELECT ''
FROM hr_all_positions_f pos
WHERE pos.position_id = poi.position_id
AND pos.business_group_id = p_business_group_id);
DELETE FROM hr_all_positions_f_tl pft
WHERE pft.position_id IN (SELECT psf.position_id
FROM hr_all_positions_f psf
WHERE psf.business_group_id = p_business_group_id);
DELETE FROM hr_all_positions_f
WHERE business_group_id = p_business_group_id;
DELETE FROM per_positions
WHERE business_group_id = p_business_group_id;
DELETE FROM per_job_extra_info jei
WHERE EXISTS (SELECT ''
FROM per_jobs job
WHERE job.job_id = jei.job_id
AND job.business_group_id = p_business_group_id);
DELETE FROM per_jobs_tl jbt
WHERE EXISTS (SELECT ''
FROM per_jobs job
WHERE job.job_id = jbt.job_id
AND job.business_group_id = p_business_group_id);
DELETE FROM per_jobs job
WHERE job.business_group_id = p_business_group_id;
DELETE FROM per_job_groups jgr
WHERE jgr.business_group_id = p_business_group_id;
end delete_job_direct;
PROCEDURE delete_person_direct(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_person_direct';
SELECT null
FROM per_people_f
WHERE business_group_id = c_business_group_id;
SELECT null
FROM per_absence_attendance_types
WHERE business_group_id = c_business_group_id;
DELETE FROM per_absence_attendances
WHERE business_group_id = p_business_group_id;
DELETE FROM per_abs_attendance_reasons
WHERE business_group_id = p_business_group_id;
DELETE FROM per_abs_attendance_types_tl t
WHERE t.absence_attendance_type_id in
(select b.absence_attendance_type_id
from per_absence_attendance_types b
where b.business_group_id = p_business_group_id);
DELETE FROM per_absence_attendance_types
WHERE business_group_id = p_business_group_id;
DELETE FROM pay_object_groups pog
WHERE
SOURCE_TYPE = 'PPF'
AND
EXISTS (SELECT ''
FROM per_people_f per
WHERE per.person_id = pog.source_id
AND per.business_group_id = p_business_group_id);
DELETE FROM per_people_extra_info pei
WHERE EXISTS (SELECT ''
FROM per_people_f per
WHERE per.person_id = pei.person_id
AND per.business_group_id = p_business_group_id);
DELETE FROM per_person_analyses
WHERE business_group_id = p_business_group_id;
DELETE FROM per_contact_relationships cr
WHERE cr.business_group_id = p_business_group_id;
DELETE FROM per_applications app
WHERE app.business_group_id = p_business_group_id;
DELETE FROM per_periods_of_service pos
WHERE pos.business_group_id = p_business_group_id;
DELETE FROM per_addresses pa
WHERE pa.business_group_id = p_business_group_id;
DELETE FROM per_people_f pp
WHERE pp.business_group_id = p_business_group_id;
DELETE FROM per_person_types
WHERE business_group_id = p_business_group_id;
end delete_person_direct;
PROCEDURE delete_per_misc(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_person_direct';
DELETE FROM per_number_generation_controls png
WHERE png.business_group_id = p_business_group_id;
end delete_per_misc;
PROCEDURE delete_element_direct(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_element_direct';
SELECT null
FROM pay_element_types_f
WHERE business_group_id = c_business_group_id;
SELECT iv.input_value_id input_value_id,
iv.generate_db_items_flag generate_db_items_flag
FROM pay_input_values_f iv
WHERE EXISTS ( SELECT ''
FROM pay_element_types_f pet
WHERE pet.element_type_id = iv.element_type_id
AND pet.business_group_id = p_business_group_id)
FOR UPDATE;
SELECT element_type_id
FROM pay_element_types_f
WHERE business_group_id = p_business_group_id
FOR UPDATE;
SELECT liv.link_input_value_id
from pay_link_input_values_f liv,
pay_element_links_f pel
where pel.business_group_id = p_business_group_id
and liv.element_link_id = pel.element_link_id;
DELETE FROM pay_balance_feeds_f pbf
WHERE pbf.business_group_id = p_business_group_id;
delete from pay_link_input_values_f liv
where liv.link_input_value_id = levrec.link_input_value_id;
DELETE FROM pay_element_links_f el
WHERE el.business_group_id = p_business_group_id;
DELETE FROM pay_element_type_rules etr
WHERE EXISTS (SELECT ''
FROM pay_element_sets es
WHERE es.element_set_id = etr.element_set_id
AND es.business_group_id = p_business_group_id);
DELETE FROM pay_ele_classification_rules ecr
WHERE EXISTS (SELECT ''
FROM pay_element_sets es
WHERE es.element_set_id = ecr.element_set_id
AND es.business_group_id = p_business_group_id);
DELETE FROM pay_element_sets es
WHERE es.business_group_id = p_business_group_id;
DELETE FROM pay_sub_classification_rules_f scr
WHERE scr.business_group_id = p_business_group_id;
DELETE FROM pay_formula_result_rules_f frr
WHERE frr.business_group_id = p_business_group_id;
DELETE FROM pay_status_processing_rules_f spr
WHERE spr.business_group_id = p_business_group_id;
DELETE FROM pay_iterative_rules_f pir
WHERE exists (select ''
from pay_element_types pet
where pir.business_group_id = p_business_group_id
and pet.element_type_id = pir.element_type_id
);
DELETE FROM pay_input_values_f
WHERE CURRENT OF get_input_values;
delete from pay_input_values_f_tl
where input_value_id = iv_rec.input_value_id;
delete from pay_element_types_f_tl
where element_type_id = et_rec.element_type_id;
delete from pay_element_types_f
where current of get_element_types;
end delete_element_direct;
PROCEDURE delete_org_low_detail(p_business_group_id NUMBER)
IS
begin
--
hr_utility.set_location('hr_delete.delete_org_low_detail',10);
DELETE FROM pay_grade_rules_f gr
WHERE gr.business_group_id = p_business_group_id;
hr_utility.set_location('hr_delete.delete_org_low_detail',30);
DELETE FROM pay_rates pr
WHERE pr.business_group_id = p_business_group_id;
hr_utility.set_location('hr_delete.delete_org_low_detail',70);
end delete_org_low_detail;
PROCEDURE delete_org_detail(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_org_detail';
SELECT null
FROM per_special_info_types sit
WHERE business_group_id = c_business_group_id;
DELETE FROM pay_wc_rates pwr
WHERE pwr.business_group_id = p_business_group_id;
DELETE FROM pay_wc_funds pwf
WHERE pwf.business_group_id = p_business_group_id;
DELETE FROM per_special_info_type_usages situ
WHERE situ.special_information_type_id =
(SELECT sit.special_information_type_id
FROM per_special_info_types sit
WHERE sit.special_information_type_id = situ.special_information_type_id
AND sit.business_group_id = p_business_group_id);
DELETE FROM per_special_info_types sit
WHERE sit.business_group_id = p_business_group_id;
end delete_org_detail;
PROCEDURE delete_payroll_direct(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_payroll_direct';
SELECT null
FROM pay_payrolls_f
WHERE business_group_id = c_business_group_id;
DELETE FROM pay_org_pay_method_usages_f pmu
WHERE
EXISTS ( SELECT ''
FROM pay_payrolls_f pp
WHERE pp.payroll_id = pmu.payroll_id
AND pp.business_group_id = p_business_group_id);
DELETE FROM hr_assignment_set_criteria has
WHERE
EXISTS ( SELECT ''
FROM hr_assignment_sets ase
WHERE ase.assignment_set_id = has.assignment_set_id
AND ase.business_group_id = p_business_group_id);
DELETE FROM hr_assignment_sets ase
WHERE ase.business_group_id = p_business_group_id;
DELETE FROM PER_TIME_PERIODS tim
WHERE EXISTS ( SELECT ''
FROM pay_payrolls_f pp
WHERE pp.payroll_id = tim.payroll_id
AND pp.business_group_id = p_business_group_id);
DELETE FROM pay_payroll_gl_flex_maps glf
WHERE EXISTS ( SELECT ''
FROM pay_payrolls_f pp
WHERE pp.payroll_id = glf.payroll_id
AND pp.business_group_id = p_business_group_id);
DELETE FROM pay_payrolls_f pay
WHERE pay.business_group_id = p_business_group_id;
end delete_payroll_direct;
PROCEDURE delete_balance_direct(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_balance_direct';
SELECT null
FROM PAY_DEFINED_BALANCES
WHERE business_group_id = c_business_group_id;
select balance_type_id
from pay_balance_types
where business_group_id = c_business_group_id;
DELETE FROM pay_backpay_rules br
WHERE EXISTS ( SELECT ''
FROM pay_backpay_sets bs
WHERE bs.backpay_set_id = br.backpay_set_id
AND bs.business_group_id = p_business_group_id);
DELETE FROM pay_backpay_sets bs
WHERE bs.business_group_id = p_business_group_id;
DELETE FROM pay_balance_set_members bsm
WHERE EXISTS ( SELECT ''
FROM pay_balance_sets pbs
WHERE pbs.balance_set_id = bsm.balance_set_id
AND pbs.business_group_id = p_business_group_id);
DELETE FROM pay_balance_sets pbs
WHERE pbs.business_group_id = p_business_group_id;
DELETE FROM pay_balance_classifications pbc
WHERE pbc.business_group_id = p_business_group_id;
DELETE FROM pay_defined_balances pdb
WHERE pdb.business_group_id = p_business_group_id;
DELETE FROM pay_balance_dimensions pbd
WHERE pbd.business_group_id = p_business_group_id;
DELETE FROM pay_balance_feeds_f pbf
WHERE pbf.balance_type_id = balrec.balance_type_id;
DELETE FROM pay_balance_types_tl pbt
WHERE pbt.balance_type_id = balrec.balance_type_id;
DELETE FROM pay_balance_types pbt
WHERE pbt.balance_type_id = balrec.balance_type_id;
end delete_balance_direct;
PROCEDURE delete_pay_misc(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_pay_misc';
SELECT null
FROM PAY_MESSAGE_LINES
WHERE source_id = c_business_group_id
and source_type = 'B';
SELECT pbh.BATCH_ID
FROM PAY_BATCH_HEADERS pbh
WHERE pbh.BUSINESS_GROUP_ID = p_bg_id;
DELETE pay_consolidation_sets cs
WHERE cs.business_group_id = p_business_group_id;
DELETE pay_restriction_values rv
WHERE EXISTS (SELECT ''
FROM pay_customized_restrictions cr
WHERE cr.customized_restriction_id
= rv.customized_restriction_id
AND cr.business_group_id = p_business_group_id);
DELETE pay_custom_restrictions_tl crtl
WHERE EXISTS (SELECT ''
FROM pay_customized_restrictions cr
WHERE cr.customized_restriction_id
= crtl.customized_restriction_id
AND cr.business_group_id = p_business_group_id);
DELETE pay_customized_restrictions cr
WHERE cr.business_group_id = p_business_group_id;
DELETE pay_user_column_instances_f uci
WHERE uci.business_group_id = p_business_group_id;
DELETE pay_user_columns uc
WHERE uc.business_group_id = p_business_group_id;
DELETE pay_user_rows_f ur
WHERE ur.business_group_id = p_business_group_id;
DELETE pay_user_tables ut
WHERE ut.business_group_id = p_business_group_id;
DELETE pay_element_classifications ec
WHERE ec.business_group_id = p_business_group_id;
DELETE FROM pay_message_lines ml
WHERE ml.source_type = 'B'
AND ml.source_id = p_business_group_id;
DELETE FROM pay_freq_rule_periods pfr
WHERE pfr.business_group_id = p_business_group_id;
DELETE FROM pay_ele_payroll_freq_rules pef
WHERE pef.business_group_id = p_business_group_id;
DELETE FROM ben_benefit_contributions_f bbc
WHERE bbc.business_group_id = p_business_group_id;
DELETE FROM pay_datetracked_events
WHERE business_group_id = p_business_group_id;
DELETE FROM pay_event_groups
WHERE business_group_id = p_business_group_id;
DELETE FROM pay_event_procedures
WHERE business_group_id = p_business_group_id;
DELETE FROM pay_event_updates
WHERE business_group_id = p_business_group_id;
DELETE FROM pay_dated_tables
WHERE business_group_id = p_business_group_id;
end delete_pay_misc;
Procedure delete_qun_misc(p_business_group_id number)
IS
--
l_proc varchar2(80) := g_package || 'delete_qun_misc';
DELETE from hr_quest_answer_values qsv
WHERE qsv.quest_answer_val_id in (
SELECT qv.quest_answer_val_id
FROM hr_quest_answer_values qv
, hr_quest_answers qa
WHERE qa.questionnaire_answer_id = qv.questionnaire_answer_id
AND qa.business_group_id = P_BUSINESS_GROUP_ID);
DELETE from hr_quest_answers qsa
WHERE qsa.business_group_id = P_BUSINESS_GROUP_ID;
DELETE from hr_quest_fields qsf
WHERE qsf.field_id in (
SELECT qf.field_id
FROM hr_quest_fields qf
, hr_questionnaires qn
WHERE qf.questionnaire_template_id = qn.questionnaire_template_id
AND qn.business_group_id = P_BUSINESS_GROUP_ID);
DELETE from hr_questionnaires qsn
WHERE qsn.business_group_id = P_BUSINESS_GROUP_ID;
DELETE from per_participants par
WHERE par.business_group_id = P_BUSINESS_GROUP_ID;
DELETE from per_appraisals apr
WHERE apr.business_group_id = P_BUSINESS_GROUP_ID;
PROCEDURE delete_org_direct(p_business_group_id NUMBER,
p_rt_running in VARCHAR2 default 'N')
IS
--
l_proc varchar2(80) := g_package||'delete_org_direct';
SELECT null
FROM PER_ORGANIZATION_STRUCTURES
WHERE business_group_id = c_business_group_id;
select lookup_type
from fnd_lookup_types
where security_group_id = p_sec_grp;
select security_group_id
into l_security_group_id
from per_business_groups
where business_group_id = p_business_group_id;
DELETE FROM hr_organization_information hoi
WHERE
EXISTS
(SELECT ''
FROM hr_organization_units hou
WHERE hou.organization_id = hoi.organization_id
AND hou.business_group_id = p_business_group_id);
SELECT 'Y'
FROM fnd_profile_options po
,fnd_profile_option_values pov
WHERE po.profile_option_name = 'ENABLE_SECURITY_GROUPS'
AND po.profile_option_id = pov.profile_option_id
AND po.application_id = pov.application_id
AND pov.level_id = 10002
AND pov.profile_option_value = 'Y'
AND to_number(pov.level_value) BETWEEN 800 AND 900;
DELETE FROM fnd_lookup_values
WHERE security_group_id = l_security_group_id
AND lookup_type = typrec.lookup_type;
DELETE FROM fnd_lookup_types_tl
WHERE security_group_id = l_security_group_id
AND lookup_type = typrec.lookup_type;
DELETE FROM fnd_lookup_types
WHERE security_group_id = l_security_group_id
AND lookup_type = typrec.lookup_type;
DELETE FROM fnd_security_groups_tl
WHERE security_group_id = l_security_group_id;
DELETE FROM fnd_security_groups
WHERE security_group_id = l_security_group_id;
DELETE per_org_structure_elements
WHERE business_group_id = p_business_group_id;
DELETE per_org_structure_versions
WHERE business_group_id = p_business_group_id;
DELETE per_organization_structures
WHERE business_group_id = p_business_group_id;
DELETE hr_organization_units
WHERE business_group_id = p_business_group_id
AND organization_id <> p_business_group_id;
end delete_org_direct;
PROCEDURE delete_bg_misc(p_business_group_id NUMBER)
IS
--
-- Bug fix required for 10,5 stand alone
-- make delete from financials_system_parameters dynamic plsql.
--
-- Cursor to find out which of the financials_system_parameters
-- tables is available
-- FINANCIALS_SYSTEM_PARAMS_ALL (10.6 install)
-- FINANCIALS_SYSTEM_PARAMETERS (10.5 HR + other apps install)
-- none (10.5 HR only install)
--The ORDER BY clause ensures we pick up FINANCIALS_SYSTEM_PARAMS_ALL
--if it's there, ahead of FINANCIALS_SYSTEM_PARAMETERS.
--
cursor fsp_table_name is
select table_name
from user_catalog
where table_name in ('FINANCIALS_SYSTEM_PARAMS_ALL',
'FINANCIALS_SYSTEM_PARAMETERS')
order by table_name desc;
hr_utility.set_location('hr_delete.delete_bg_misc',1);
hr_utility.set_location('hr_delete.delete_bg_misc',2);
DELETE per_letter_gen_statuses
WHERE business_group_id = p_business_group_id;
hr_utility.set_location('hr_delete.delete_bg_misc',4);
hr_utility.set_location('hr_delete.delete_bg_misc',7);
l_sql_text := 'delete from '
|| l_fsp_table_name
|| ' where business_group_id = '
|| to_char (p_business_group_id);
hr_utility.set_location('hr_delete.delete_bg_misc',8);
hr_utility.set_location('hr_delete.delete_bg_misc',9);
hr_utility.set_location('hr_delete.delete_bg_misc',10);
hr_utility.set_location('hr_delete.delete_bg_misc',11);
hr_utility.set_location('hr_delete.delete_bg_misc',12);
end delete_bg_misc;
PROCEDURE delete_upg_details(p_business_group_id NUMBER)
IS
--
begin
--
hr_utility.set_location('hr_delete.p_business_group_id',1);
delete from pay_upgrade_status
where business_group_id = p_business_group_id;
hr_utility.set_location('hr_delete.p_business_group_id',2);
end delete_upg_details;
PROCEDURE delete_security_list_for_bg(p_business_group_id NUMBER)
IS
--
l_proc varchar2(80) := g_package||'delete_security_list_for_bg';
SELECT pp.person_id
FROM per_people_f pp,
per_person_list pl
WHERE pp.person_id = pl.person_id
AND pp.business_group_id = p_business_group_id;
DELETE FROM pay_security_payrolls psp
WHERE psp.business_group_id = p_business_group_id;
DELETE FROM pay_payroll_list ppl
WHERE EXISTS ( SELECT ''
FROM pay_payrolls_f pay
WHERE pay.payroll_id = ppl.payroll_id
AND pay.business_group_id = p_business_group_id);
DELETE FROM per_person_list pl
WHERE pl.person_id = pevrec.person_id;
DELETE FROM per_position_list pol
WHERE EXISTS ( SELECT ''
FROM hr_all_positions_f pos
WHERE pos.position_id = pol.position_id
AND pos.business_group_id = p_business_group_id);
hr_utility.set_location('hr_delete.delete_security_list_for_bg',6);
DELETE FROM per_organization_list ol
WHERE ol.organization_id IN ( SELECT ou.organization_id
FROM hr_all_organization_units ou
WHERE ou.business_group_id = p_business_group_id);
hr_utility.set_location('hr_delete.delete_security_list_for_bg',7);
DELETE FROM per_security_profiles psp
WHERE psp.business_group_id = p_business_group_id
AND psp.view_all_flag = 'N';
hr_utility.set_location('hr_delete.delete_security_list_for_bg',8);
DELETE FROM per_security_organizations pso
WHERE pso.organization_id IN ( SELECT ou.organization_id
FROM hr_all_organization_units ou
WHERE ou.business_group_id = p_business_group_id);
hr_utility.set_location('hr_delete.delete_security_list_for_bg',9);
DELETE FROM per_security_users psu
WHERE psu.security_profile_id IN (SELECT sp.security_profile_id
FROM per_security_profiles sp
WHERE sp.business_group_id = p_business_group_id);
END delete_security_list_for_bg;
PROCEDURE delete_below_bg(p_business_group_id NUMBER,
p_preserve_org_information in VARCHAR2 default 'N',
p_rt_running in VARCHAR2 default 'N')
IS
--
l_proc varchar2(80) := g_package||'delete_below_bg';
delete_run_types(p_business_group_id);
delete_security_list_for_bg(p_business_group_id);
delete_retro_details(p_business_group_id);
delete_mag_structure(p_business_group_id);
delete_bal_load_struct(p_business_group_id);
delete_formula_direct(p_business_group_id);
delete_assign_low_detail(p_business_group_id);
delete_assign_detail(p_business_group_id);
delete_database_items(p_business_group_id);
delete_assign_direct(p_business_group_id);
delete_grade_direct(p_business_group_id);
delete_job_direct(p_business_group_id);
delete_person_direct(p_business_group_id);
delete_per_misc(p_business_group_id);
delete_element_direct(p_business_group_id);
delete_org_low_detail(p_business_group_id);
delete_org_detail(p_business_group_id);
delete_time_def_direct(p_business_group_id);
delete_payroll_direct(p_business_group_id);
delete_balance_direct(p_business_group_id);
delete_pay_misc(p_business_group_id);
delete_qun_misc(p_business_group_id);
delete_upg_details(p_business_group_id);
delete_org_direct(p_business_group_id,
p_rt_running);
delete_bg_misc(p_business_group_id);
end delete_below_bg;