The following lines contain the word 'select', 'insert', 'update' or 'delete':
PROCEDURE DELETE_LINES(errbuf OUT NOCOPY VARCHAR2,
retcode OUT NOCOPY VARCHAR2,
p_source_type IN VARCHAR2,
p_source_code IN VARCHAR2,
p_payroll_id IN NUMBER,
p_time_period_id IN NUMBER,
p_batch_name IN VARCHAR2,
p_business_group_id IN NUMBER,
p_set_of_books_id IN NUMBER) IS
CURSOR payroll_control_cur IS -- Bug 6686483
select payroll_control_id,status_code,time_period_id
from psp_payroll_controls
where business_group_id = p_business_group_id
AND set_of_books_id = p_set_of_books_id
AND source_type = nvl(p_source_type,source_type)
AND source_type <> 'A' -- Bug 7136917
AND payroll_source_code = nvl(p_source_code,payroll_source_code)
AND payroll_id = nvl(p_payroll_id,payroll_id)
AND time_period_id = nvl(p_time_period_id,time_period_id)
AND nvl(batch_name,'N') = nvl(nvl(p_batch_name,batch_name),'N')
AND parent_payroll_control_id IS NULL
UNION
select payroll_control_id,status_code,time_period_id
from psp_payroll_controls ppc1
where ppc1.parent_payroll_control_id in(select payroll_control_id
from psp_payroll_controls
where business_group_id = p_business_group_id
AND set_of_books_id = p_set_of_books_id
AND source_type = nvl(p_source_type,source_type)
AND source_type <> 'A' -- Bug 7136917
AND payroll_source_code = nvl(p_source_code,payroll_source_code)
AND payroll_id = nvl(p_payroll_id,payroll_id)
AND time_period_id = nvl(p_time_period_id,time_period_id)
AND nvl(batch_name,'N') = nvl(nvl(p_batch_name,batch_name),'N'));
l_deleted BOOLEAN := TRUE;
SELECT ptp.period_name, ppf.payroll_name into l_period_name, l_payroll_name
FROM per_time_periods ptp, pay_payrolls_f ppf
WHERE ptp.time_period_id = payroll_control_rec.time_period_id
and ptp.payroll_id = ppf.payroll_id
and trunc(sysdate) between ppf.effective_start_date and ppf.effective_end_date;
l_deleted := FALSE;
SELECT COUNT(*) INTO cnt
FROM psp_summary_lines
WHERE payroll_control_id = payroll_control_rec.payroll_control_id;
DELETE FROM PSP_DISTRIBUTION_LINES
WHERE payroll_sub_line_id in (select payroll_sub_line_id
from psp_payroll_sub_lines
where payroll_line_id in (
select payroll_line_id from psp_payroll_lines
where payroll_control_id = payroll_control_rec.payroll_control_id));
UPDATE PSP_PAYROLL_CONTROLS
SET dist_dr_amount = NULL,
dist_cr_amount = NULL,
cdl_payroll_action_id = NULL --- salary cap 4304623
WHERE payroll_control_id = payroll_control_rec.payroll_control_id;
l_deleted := FALSE;
if l_deleted = FALSE
THEN
psp_message_s.print_error(p_mode => FND_FILE.LOG,
p_print_header => FND_API.G_TRUE);
END delete_lines;