The following lines contain the word 'select', 'insert', 'update' or 'delete':
Procedure dt_delete_dml
(p_rec in out nocopy pay_ppr_shd.g_rec_type
,p_effective_date in date
,p_datetrack_mode in varchar2
,p_validation_start_date in date
,p_validation_end_date in date
) is
--
l_proc varchar2(72) := g_package||'dt_delete_dml';
If (p_datetrack_mode = hr_api.g_delete_next_change) then
pay_ppr_shd.g_api_dml := true; -- Set the api dml status
delete from pay_status_processing_rules_f
where status_processing_rule_id = p_rec.status_processing_rule_id
and effective_start_date = p_validation_start_date;
delete from pay_status_processing_rules_f
where status_processing_rule_id = p_rec.status_processing_rule_id
and effective_start_date >= p_validation_start_date;
End dt_delete_dml;
PROCEDURE delete_app_ownerships(p_pk_column IN varchar2
,p_pk_value IN varchar2
,p_datetrack_mode IN varchar2) IS
--
BEGIN
--
IF ((hr_startup_data_api_support.return_startup_mode
IN ('STARTUP','GENERIC')) AND
p_datetrack_mode = 'ZAP') THEN
--
DELETE FROM hr_application_ownerships
WHERE key_name = p_pk_column
AND key_value = p_pk_value;
END delete_app_ownerships;
PROCEDURE delete_app_ownerships(p_pk_column IN varchar2
,p_pk_value IN number
,p_datetrack_mode IN varchar2) IS
--
BEGIN
delete_app_ownerships(p_pk_column,
to_char(p_pk_value),
p_datetrack_mode
);
END delete_app_ownerships;
Procedure delete_dml
(p_rec in out nocopy pay_ppr_shd.g_rec_type
,p_effective_date in date
,p_datetrack_mode in varchar2
,p_validation_start_date in date
,p_validation_end_date in date
) is
--
l_proc varchar2(72) := g_package||'delete_dml';
pay_ppr_del.dt_delete_dml
(p_rec => p_rec
,p_effective_date => p_effective_date
,p_datetrack_mode => p_datetrack_mode
,p_validation_start_date => p_validation_start_date
,p_validation_end_date => p_validation_end_date
);
End delete_dml;
Procedure dt_pre_delete
(p_rec in out nocopy pay_ppr_shd.g_rec_type
,p_effective_date in date
,p_datetrack_mode in varchar2
,p_validation_start_date in date
,p_validation_end_date in date
) is
--
l_proc varchar2(72) := g_package||'dt_pre_delete';
If (p_datetrack_mode = hr_api.g_delete) then
p_rec.effective_end_date := p_validation_start_date - 1;
End dt_pre_delete;
Procedure pre_delete
(p_rec in out nocopy pay_ppr_shd.g_rec_type
,p_effective_date in date
,p_datetrack_mode in varchar2
,p_validation_start_date in date
,p_validation_end_date in date
) is
--
l_proc varchar2(72) := g_package||'pre_delete';
select t1.comment_id
from pay_status_processing_rules_f t1
where t1.comment_id is not null
and t1.status_processing_rule_id = p_rec.status_processing_rule_id
and t1.effective_start_date <= p_validation_end_date
and t1.effective_end_date >= p_validation_start_date
and not exists
(select 1
from pay_status_processing_rules_f t2
where t2.comment_id = t1.comment_id
and t2.status_processing_rule_id = t1.status_processing_rule_id
and (t2.effective_start_date > p_validation_end_date
or t2.effective_end_date < p_validation_start_date));
pay_ppr_del.dt_pre_delete
(p_rec => p_rec
,p_effective_date => p_effective_date
,p_datetrack_mode => p_datetrack_mode
,p_validation_start_date => p_validation_start_date
,p_validation_end_date => p_validation_end_date
);
End pre_delete;
Procedure post_delete
(p_rec in pay_ppr_shd.g_rec_type
,p_effective_date in date
,p_datetrack_mode in varchar2
,p_validation_start_date in date
,p_validation_end_date in date
) is
--
l_proc varchar2(72) := g_package||'post_delete';
delete_app_ownerships
('STATUS_PROCESSING_RULE_ID', p_rec.status_processing_rule_id
,p_datetrack_mode
);
pay_ppr_rkd.after_delete
(p_effective_date
=> p_effective_date
,p_datetrack_mode
=> p_datetrack_mode
,p_validation_start_date
=> p_validation_start_date
,p_validation_end_date
=> p_validation_end_date
,p_status_processing_rule_id
=> p_rec.status_processing_rule_id
,p_effective_start_date
=> p_rec.effective_start_date
,p_effective_end_date
=> p_rec.effective_end_date
,p_effective_start_date_o
=> pay_ppr_shd.g_old_rec.effective_start_date
,p_effective_end_date_o
=> pay_ppr_shd.g_old_rec.effective_end_date
,p_business_group_id_o
=> pay_ppr_shd.g_old_rec.business_group_id
,p_legislation_code_o
=> pay_ppr_shd.g_old_rec.legislation_code
,p_element_type_id_o
=> pay_ppr_shd.g_old_rec.element_type_id
,p_assignment_status_type_id_o
=> pay_ppr_shd.g_old_rec.assignment_status_type_id
,p_formula_id_o
=> pay_ppr_shd.g_old_rec.formula_id
,p_processing_rule_o
=> pay_ppr_shd.g_old_rec.processing_rule
,p_comment_id_o
=> pay_ppr_shd.g_old_rec.comment_id
,p_comments_o
=> pay_ppr_shd.g_old_rec.comments
,p_legislation_subgroup_o
=> pay_ppr_shd.g_old_rec.legislation_subgroup
,p_object_version_number_o
=> pay_ppr_shd.g_old_rec.object_version_number
);
End post_delete;
If (p_datetrack_mode = hr_api.g_delete_next_change and
l_validation_end_date = hr_api.g_eot) then
pay_ppr_bus.set_effective_end_date
(p_effective_date => p_effective_date
,p_status_processing_rule_id => p_rec.status_processing_rule_id
,p_element_type_id => pay_ppr_shd.g_old_rec.element_type_id
,p_formula_id => pay_ppr_shd.g_old_rec.formula_id
,p_assignment_status_type_id => pay_ppr_shd.g_old_rec.assignment_status_type_id
,p_processing_rule => pay_ppr_shd.g_old_rec.processing_rule
,p_business_group_id => pay_ppr_shd.g_old_rec.business_group_id
,p_legislation_code => pay_ppr_shd.g_old_rec.legislation_code
,p_datetrack_mode => p_datetrack_mode
,p_validation_start_date => l_validation_start_date
,p_validation_end_date => l_validation_end_date
);
pay_ppr_bus.delete_validate
(p_rec => p_rec
,p_effective_date => p_effective_date
,p_datetrack_mode => p_datetrack_mode
,p_validation_start_date => l_validation_start_date
,p_validation_end_date => l_validation_end_date
);
pay_ppr_del.pre_delete
(p_rec => p_rec
,p_effective_date => p_effective_date
,p_datetrack_mode => p_datetrack_mode
,p_validation_start_date => l_validation_start_date
,p_validation_end_date => l_validation_end_date
);
pay_ppr_del.delete_dml
(p_rec => p_rec
,p_effective_date => p_effective_date
,p_datetrack_mode => p_datetrack_mode
,p_validation_start_date => l_validation_start_date
,p_validation_end_date => l_validation_end_date
);
pay_formula_result_rules_pkg.parent_deleted (
'PAY_STATUS_PROCESSING_RULES_F',
p_rec.status_processing_rule_id,
p_effective_date,
p_datetrack_mode
);
pay_ppr_del.post_delete
(p_rec => p_rec
,p_effective_date => p_effective_date
,p_datetrack_mode => p_datetrack_mode
,p_validation_start_date => l_validation_start_date
,p_validation_end_date => l_validation_end_date
);