The following lines contain the word 'select', 'insert', 'update' or 'delete':
Procedure update_dml
(p_rec in out nocopy per_pse_shd.g_rec_type
) is
--
l_proc varchar2(72) := g_package||'update_dml';
update per_pos_structure_elements
set
pos_structure_element_id = p_rec.pos_structure_element_id
,business_group_id = p_rec.business_group_id
,pos_structure_version_id = p_rec.pos_structure_version_id
,subordinate_position_id = p_rec.subordinate_position_id
,parent_position_id = p_rec.parent_position_id
,request_id = p_rec.request_id
,program_application_id = p_rec.program_application_id
,program_id = p_rec.program_id
,program_update_date = p_rec.program_update_date
,object_version_number = p_rec.object_version_number
where pos_structure_element_id = p_rec.pos_structure_element_id;
End update_dml;
Procedure pre_update
(p_rec in per_pse_shd.g_rec_type
) is
--
l_proc varchar2(72) := g_package||'pre_update';
End pre_update;
Procedure post_update
(p_rec in per_pse_shd.g_rec_type
) is
--
l_proc varchar2(72) := g_package||'post_update';
per_pse_rku.after_update
(p_pos_structure_element_id
=> p_rec.pos_structure_element_id
,p_business_group_id
=> p_rec.business_group_id
,p_pos_structure_version_id
=> p_rec.pos_structure_version_id
,p_subordinate_position_id
=> p_rec.subordinate_position_id
,p_parent_position_id
=> p_rec.parent_position_id
,p_request_id
=> p_rec.request_id
,p_program_application_id
=> p_rec.program_application_id
,p_program_id
=> p_rec.program_id
,p_program_update_date
=> p_rec.program_update_date
,p_object_version_number
=> p_rec.object_version_number
,p_business_group_id_o
=> per_pse_shd.g_old_rec.business_group_id
,p_pos_structure_version_id_o
=> per_pse_shd.g_old_rec.pos_structure_version_id
,p_subordinate_position_id_o
=> per_pse_shd.g_old_rec.subordinate_position_id
,p_parent_position_id_o
=> per_pse_shd.g_old_rec.parent_position_id
,p_request_id_o
=> per_pse_shd.g_old_rec.request_id
,p_program_application_id_o
=> per_pse_shd.g_old_rec.program_application_id
,p_program_id_o
=> per_pse_shd.g_old_rec.program_id
,p_program_update_date_o
=> per_pse_shd.g_old_rec.program_update_date
,p_object_version_number_o
=> per_pse_shd.g_old_rec.object_version_number
);
End post_update;
If (p_rec.program_update_date = hr_api.g_date) then
p_rec.program_update_date :=
per_pse_shd.g_old_rec.program_update_date;
per_pse_bus.update_validate
(p_rec
,p_effective_date
);
select PARENT_POSITION_ID into l_old_parent_pos_id from per_pos_structure_elements x
where POS_STRUCTURE_VERSION_ID = p_rec.pos_structure_version_id
and not exists (select null from per_pos_structure_elements
where SUBORDINATE_POSITION_ID = x.PARENT_POSITION_ID)
and rownum=1;
per_pse_upd.pre_update(p_rec);
per_pse_upd.update_dml(p_rec);
Putting extra check on Top Node in the Position hierarchy so that it can not be updated.*/
select PARENT_POSITION_ID into l_new_parent_pos_id from per_pos_structure_elements x
where POS_STRUCTURE_VERSION_ID = p_rec.pos_structure_version_id
and not exists (select null from per_pos_structure_elements
where SUBORDINATE_POSITION_ID = x.PARENT_POSITION_ID)
and rownum=1;
per_pse_upd.post_update
(p_rec
);
,p_program_update_date in date default hr_api.g_date
) is
--
l_rec per_pse_shd.g_rec_type;
,p_program_update_date
,p_object_version_number
);