The following lines contain the word 'select', 'insert', 'update' or 'delete':
07-Jan-2011 rgottipa 115.2 10324374 modified cursor c_selected_asg_set
06-SEP-2011 rgottipa 115.3 10399514 introduced new cursores
c_selected_asg_set_range and
c_all_asg_range. These will be
called if RANGE_PERSON_ID is enabled.
31-Dec-2012 rgottipa 115.4 15886428 Done changes to support print
terminate employees and Self Service
'paper' option.
*****************************************************************************/
gv_package VARCHAR2(100) := 'pay_ca_eoy_rl1_cancelled_reg';
select to_number(pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'PRE_ORGANIZATION_ID',ppa.legislative_parameters)),
to_number(pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'PER_ID',ppa.legislative_parameters)),
to_number(pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'ASG_SET_ID',ppa.legislative_parameters)),
pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'MODE',ppa.legislative_parameters),
effective_date,
start_date,
business_group_id,
pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'PROV_CD',ppa.legislative_parameters),
report_type
from pay_payroll_actions ppa
where ppa.payroll_action_id = cp_payroll_action_id;
select to_number(pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'PRE_ORGANIZATION_ID',ppa.legislative_parameters)),
to_number(pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'PER_ID',ppa.legislative_parameters)),
to_number(pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'ASG_SET_ID',ppa.legislative_parameters)),
pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'MODE',ppa.legislative_parameters),
effective_date,
start_date,
business_group_id,
pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'PROV_CD',ppa.legislative_parameters),
report_type,
report_qualifier,
report_category,
pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'PRINT_TERM',ppa.legislative_parameters)
from pay_payroll_actions ppa
where ppa.payroll_action_id = cp_payroll_action_id;
Purpose : This returns the select statement that is
used to created the range rows for the
RL1 Cancel PDF.
Arguments :
Notes : Calls procedure - get_payroll_action_info
******************************************************************/
PROCEDURE range_cursor(
p_payroll_action_id in number
,p_sqlstr out nocopy varchar2)
IS
ld_end_date DATE;
'select distinct asg.person_id person_id
from per_assignments_f asg
where person_id = ' || ln_person_id ||
' and :payroll_action_id > 0';
'select distinct paf.person_id
from hr_assignment_set_amendments asgset,
per_assignments_f paf
where assignment_set_id = ' || ln_asg_set || '
and asgset.assignment_id = paf.assignment_id
and asgset.include_or_exclude = ''I''
and :payroll_action_id > 0
order by paf.person_id';
'select distinct paf.person_id
from pay_payroll_actions ppa_rep,
pay_assignment_actions paa_rep,
per_assignments_f paf,
pay_payroll_actions ppa
where paa_rep.assignment_id = paf.assignment_id
and ppa.payroll_action_id = :payroll_action_id
and ppa_rep.business_group_id = ppa.business_group_id
and ppa_rep.effective_date = ppa.effective_date
and ppa_rep.report_type in (''RL1PAPERPDF'',''PAYCARL1AMPDF'')
and paa_rep.tax_unit_id = '|| ln_tax_unit_id ||'
and paa_rep.action_status = ''C''
and ppa_rep.payroll_action_id = paa_rep.payroll_action_id
order by paf.person_id ';
'select distinct paf.person_id
from pay_payroll_actions ppa_rep,
pay_assignment_actions paa_rep,
per_assignments_f paf,
pay_payroll_actions ppa
where paa_rep.assignment_id = paf.assignment_id
and ppa.payroll_action_id = :payroll_action_id
and ppa_rep.business_group_id = ppa.business_group_id
and ppa_rep.effective_date = ppa.effective_date
and ppa_rep.report_type in (''RL1PAPERPDF'',''PAYCARL1AMPDF'')
and paa_rep.action_status = ''C''
and ppa_rep.payroll_action_id = paa_rep.payroll_action_id
order by paf.person_id ';
CURSOR c_selected_asg_set(cp_start_person in number
,cp_end_person in number
,cp_asg_set in number
,cp_effective_date in date) is
select distinct paf.person_id
from hr_assignment_set_amendments asgset,
per_assignments_f paf,
pay_payroll_actions ppa,
pay_assignment_actions paa
where asgset.assignment_set_id = cp_asg_set
and asgset.include_or_exclude = 'I'
and paf.assignment_id = asgset.assignment_id
and paf.person_id between cp_start_person
and cp_end_person
and ppa.business_group_id = ln_business_group_id
and ppa.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and ppa.payroll_action_id = paa.payroll_action_id
and paa.tax_unit_id = nvl(ln_tax_unit_id, paa.tax_unit_id)
and paa.action_status = 'C'
and ppa.effective_date = cp_effective_date;
CURSOR c_selected_asg_set_range(cp_start_person in number
,cp_end_person in number
,cp_asg_set in number
,cp_effective_date in date) is
select distinct paf.person_id
from hr_assignment_set_amendments asgset,
per_assignments_f paf,
pay_payroll_actions ppa,
pay_assignment_actions paa,
pay_population_ranges ppr
where asgset.assignment_set_id = cp_asg_set
and asgset.include_or_exclude = 'I'
and paf.assignment_id = asgset.assignment_id
--and paf.person_id between cp_start_person
-- and cp_end_person
and ppa.business_group_id = ln_business_group_id
and ppa.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and ppa.payroll_action_id = paa.payroll_action_id
and paa.tax_unit_id = nvl(ln_tax_unit_id, paa.tax_unit_id)
and paa.action_status = 'C'
and ppa.effective_date = cp_effective_date
and ppr.payroll_action_id = p_payroll_action_id
and ppr.chunk_number = p_chunk
and ppr.person_id = to_number(paf.person_id);
/* Cursor c_all_pres to select RL1 Cancel PRE based on Business Group
and effective date */
CURSOR c_all_pres(cp_bg_id number,
cp_eff_date date) IS
select hou.organization_id
from hr_organization_information hoi,
hr_all_organization_units hou
where hou.business_group_id = cp_bg_id
AND hou.organization_id = hoi.organization_id
AND hou.date_from <= cp_eff_date
AND nvl(hou.date_to,fnd_date.canonical_to_date('4712/12/31 00:00:00'))
>= cp_eff_date
AND hoi.org_information_context = 'Prov Reporting Est'
AND hoi.org_information4 = 'P01'
AND exists ( SELECT 1
FROM pay_payroll_actions ppa ,
pay_assignment_actions paa
WHERE ppa.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
AND ppa.report_qualifier = 'DEFAULT'
AND ppa.business_group_id = cp_bg_id
AND ppa.effective_date = cp_eff_date
AND paa.payroll_action_id = ppa.payroll_action_id
AND paa.tax_unit_id = hou.organization_id);
select distinct paf.person_id
from pay_payroll_actions ppa_rep,
pay_assignment_actions paa_rep,
per_assignments_f paf
where ppa_rep.business_group_id = cp_bg_id
and ppa_rep.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and ppa_rep.report_qualifier = 'DEFAULT'
and ppa_rep.effective_date = cp_eff_date
and ppa_rep.action_status = 'C'
and paa_rep.payroll_action_id = ppa_rep.payroll_action_id
and paa_rep.action_status = 'C'
and paa_rep.assignment_id = paf.assignment_id
and paa_rep.tax_unit_id = nvl(cp_pre,paa_rep.tax_unit_id)
and to_number(paf.person_id) between
cp_start_person and cp_end_person;
select distinct paf.person_id
from pay_payroll_actions ppa_rep,
pay_assignment_actions paa_rep,
per_assignments_f paf,
pay_population_ranges ppr
where ppa_rep.business_group_id = cp_bg_id
and ppa_rep.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and ppa_rep.report_qualifier = 'DEFAULT'
and ppa_rep.effective_date = cp_eff_date
and ppa_rep.action_status = 'C'
and paa_rep.payroll_action_id = ppa_rep.payroll_action_id
and paa_rep.action_status = 'C'
and paa_rep.assignment_id = paf.assignment_id
and paa_rep.tax_unit_id = nvl(cp_pre,paa_rep.tax_unit_id)
--and to_number(paf.person_id) between
-- cp_start_person and cp_end_person;
select ppa.report_type,
paa.assignment_id,
paa.assignment_action_id,
paa.tax_unit_id,
paa.serial_number,
paf.effective_end_date
from pay_payroll_actions ppa,
pay_assignment_actions paa,
per_assignments_f paf
where paf.person_id = to_char(cp_person_id)
and paf.assignment_id = paa.assignment_id
and paa.tax_unit_id = nvl(cp_tax_unit_id,paa.tax_unit_id)
and ppa.business_group_id = ln_business_group_id
and paa.action_status = 'C'
and substr(paa.serial_number,1,3) = nvl(lv_prov_cd,substr(paa.serial_number,1,3))
and ppa.payroll_action_id = paa.payroll_action_id
and ppa.effective_date = cp_effective_date
and ppa.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and decode(ppa.report_type,'RL1PAPERPDF','LATEST','PAYCARL1AMPDF',
pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'MODE',ppa.legislative_parameters)) = 'LATEST'
and nvl(pay_ca_archive_utils.get_archive_value(substr(paa.serial_number,3,14),
substr(paa.serial_number,1,2),'JURISDICTION_CODE',
'CAEOY_RL1_NEGATIVE_BALANCE_EXISTS'),'N') = 'N'
and paf.effective_end_date = (select max(paf.effective_end_date)
from per_assignments_f paf
where paf.assignment_id = paa.assignment_id
and paf.effective_start_date <= cp_effective_date
and paf.effective_end_date >= trunc(cp_effective_date,'Y'))
and not exists (select 1
from pay_action_interlocks pai,
pay_assignment_actions paa1,
pay_payroll_actions ppa1
where pai.locked_action_id = paa.assignment_action_id
and pai.locking_action_id = paa1.assignment_action_id
and ppa1.effective_date = ppa.effective_date
and paa1.tax_unit_id = paa.tax_unit_id
and paa1.payroll_action_id = ppa1.payroll_action_id
and ppa1.report_type = 'PAYCARL1CLPDF')
and not exists
(select 1
from pay_assignment_actions paa1,
pay_payroll_actions ppa1
where ppa1.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and ppa1.payroll_action_id = paa1.payroll_action_id
and ppa1.effective_date = ppa.effective_date
and substr(paa1.serial_number,1,2) = substr(paa.serial_number,1,2)
and substr(paa1.serial_number,3,14)||lpad(paa1.assignment_action_id,14,0)
> substr(paa.serial_number,3,14)||lpad(paa.assignment_action_id,14,0)
and paa1.tax_unit_id = paa.tax_unit_id
and paa1.assignment_id = paa.assignment_id
and decode(ppa1.report_type,'PAYCARL1AMPDF',instr(ppa1.legislative_parameters,'MODE=LATEST'),1) <> 0 )
group by paa.assignment_action_id,ppa.report_type,paa.assignment_id,paa.tax_unit_id,paa.serial_number,paf.effective_end_date
order by paa.assignment_action_id desc;
select ppa.report_type,
paa.assignment_id,
paa.assignment_action_id,
paa.tax_unit_id,
paa.serial_number,
paf.effective_end_date
from pay_payroll_actions ppa,
pay_assignment_actions paa,
per_assignments_f paf
where paf.person_id = to_char(cp_person_id)
and paf.assignment_id = paa.assignment_id
and paa.tax_unit_id = nvl(cp_tax_unit_id,paa.tax_unit_id)
and ppa.business_group_id = ln_business_group_id
and paa.action_status = 'C'
and substr(paa.serial_number,1,3) = nvl(lv_prov_cd,substr(paa.serial_number,1,3))
and ppa.payroll_action_id = paa.payroll_action_id
and ppa.effective_date = cp_effective_date
and ppa.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and paf.effective_end_date = (select max(paf.effective_end_date)
from per_assignments_f paf
where paf.assignment_id = paa.assignment_id
and paf.effective_start_date <= cp_effective_date
and paf.effective_end_date >= trunc(cp_effective_date,'Y'))
and exists
( SELECT pail.locked_action_id
FROM pay_action_interlocks pail,
pay_payroll_actions ppa1,
pay_assignment_actions paa1
WHERE ppa1.report_type = 'PAYCARL1CLPDF'
AND ppa1.payroll_action_id = paa1.payroll_action_id
AND ppa1.effective_date = cp_effective_date
AND paa1.assignment_action_id = pail.locking_action_id
AND paa1.tax_unit_id = paa.tax_unit_id
AND paa1.assignment_id=paf.assignment_id
AND pail.locked_action_id = paa.assignment_action_id)
and not exists
(select 1
from pay_assignment_actions paa1,
pay_payroll_actions ppa1
where ppa1.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and ppa1.payroll_action_id = paa1.payroll_action_id
and ppa1.effective_date = ppa.effective_date
and substr(paa1.serial_number,1,2) = substr(paa.serial_number,1,2)
and substr(paa1.serial_number,3,14)||lpad(paa1.assignment_action_id,14,0)
> substr(paa.serial_number,3,14)||lpad(paa.assignment_action_id,14,0)
and paa1.tax_unit_id = paa.tax_unit_id
and paa1.assignment_id = paa.assignment_id
and decode(ppa1.report_type,'PAYCARL1AMPDF',instr(ppa1.legislative_parameters,'MODE=LATEST'),1) <> 0 )
group by paa.assignment_action_id,ppa.report_type,paa.assignment_id,paa.tax_unit_id,paa.serial_number,paf.effective_end_date
order by paa.assignment_action_id desc;
select ppa.report_type,
paa.assignment_id,
paa.assignment_action_id,
paa.tax_unit_id,
paa.serial_number,
paf.effective_end_date
from pay_payroll_actions ppa,
pay_assignment_actions paa,
per_assignments_f paf,
per_periods_of_service pds
where paf.person_id = to_char(cp_person_id)
and paf.assignment_id = paa.assignment_id
and paa.tax_unit_id = nvl(cp_tax_unit_id,paa.tax_unit_id)
and ppa.business_group_id = ln_business_group_id
and paa.action_status = 'C'
and substr(paa.serial_number,1,3) = nvl(lv_prov_cd,substr(paa.serial_number,1,3))
and ppa.payroll_action_id = paa.payroll_action_id
and ppa.effective_date = cp_effective_date
and ppa.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and decode(ppa.report_type,'RL1PAPERPDF','LATEST','PAYCARL1AMPDF',
pay_ca_eoy_rl1_cancelled_pkg.get_parameter(
'MODE',ppa.legislative_parameters)) = 'LATEST'
and nvl(pay_ca_archive_utils.get_archive_value(substr(paa.serial_number,3,14),
substr(paa.serial_number,1,2),'JURISDICTION_CODE',
'CAEOY_RL1_NEGATIVE_BALANCE_EXISTS'),'N') = 'N'
and paf.effective_end_date = (select max(paf.effective_end_date)
from per_assignments_f paf
where paf.assignment_id = paa.assignment_id
and paf.effective_start_date <= cp_effective_date
and paf.effective_end_date >= trunc(cp_effective_date,'Y'))
and not exists (select 1
from pay_action_interlocks pai,
pay_assignment_actions paa1,
pay_payroll_actions ppa1
where pai.locked_action_id = paa.assignment_action_id
and pai.locking_action_id = paa1.assignment_action_id
and ppa1.effective_date = ppa.effective_date
and paa1.tax_unit_id = paa.tax_unit_id
and paa1.payroll_action_id = ppa1.payroll_action_id
and ppa1.report_type = 'PAYCARL1CLPDF')
and not exists
(select 1
from pay_assignment_actions paa1,
pay_payroll_actions ppa1
where ppa1.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and ppa1.payroll_action_id = paa1.payroll_action_id
and ppa1.effective_date = ppa.effective_date
and substr(paa1.serial_number,1,2) = substr(paa.serial_number,1,2)
and substr(paa1.serial_number,3,14)||lpad(paa1.assignment_action_id,14,0)
> substr(paa.serial_number,3,14)||lpad(paa.assignment_action_id,14,0)
and paa1.tax_unit_id = paa.tax_unit_id
and paa1.assignment_id = paa.assignment_id
and decode(ppa1.report_type,'PAYCARL1AMPDF',instr(ppa1.legislative_parameters,'MODE=LATEST'),1) <> 0 )
and pds.actual_termination_date is not null
and pds.period_of_service_id = paf.period_of_service_id
group by paa.assignment_action_id,ppa.report_type,paa.assignment_id,paa.tax_unit_id,paa.serial_number,paf.effective_end_date
order by paa.assignment_action_id desc;
select ppa.report_type,
paa.assignment_id,
paa.assignment_action_id,
paa.tax_unit_id,
paa.serial_number,
paf.effective_end_date
from pay_payroll_actions ppa,
pay_assignment_actions paa,
per_assignments_f paf,
per_periods_of_service pds
where paf.person_id = to_char(cp_person_id)
and paf.assignment_id = paa.assignment_id
and paa.tax_unit_id = nvl(cp_tax_unit_id,paa.tax_unit_id)
and ppa.business_group_id = ln_business_group_id
and paa.action_status = 'C'
and substr(paa.serial_number,1,3) = nvl(lv_prov_cd,substr(paa.serial_number,1,3))
and ppa.payroll_action_id = paa.payroll_action_id
and ppa.effective_date = cp_effective_date
and ppa.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and paf.effective_end_date = (select max(paf.effective_end_date)
from per_assignments_f paf
where paf.assignment_id = paa.assignment_id
and paf.effective_start_date <= cp_effective_date
and paf.effective_end_date >= trunc(cp_effective_date,'Y'))
and exists
( SELECT pail.locked_action_id
FROM pay_action_interlocks pail,
pay_payroll_actions ppa1,
pay_assignment_actions paa1
WHERE ppa1.report_type = 'PAYCARL1CLPDF'
AND ppa1.payroll_action_id = paa1.payroll_action_id
AND ppa1.effective_date = cp_effective_date
AND paa1.assignment_action_id = pail.locking_action_id
AND paa1.tax_unit_id = paa.tax_unit_id
AND paa1.assignment_id=paf.assignment_id
AND pail.locked_action_id = paa.assignment_action_id)
and not exists
(select 1
from pay_assignment_actions paa1,
pay_payroll_actions ppa1
where ppa1.report_type in ('RL1PAPERPDF','PAYCARL1AMPDF')
and ppa1.payroll_action_id = paa1.payroll_action_id
and ppa1.effective_date = ppa.effective_date
and substr(paa1.serial_number,1,2) = substr(paa.serial_number,1,2)
and substr(paa1.serial_number,3,14)||lpad(paa1.assignment_action_id,14,0)
> substr(paa.serial_number,3,14)||lpad(paa.assignment_action_id,14,0)
and paa1.tax_unit_id = paa.tax_unit_id
and paa1.assignment_id = paa.assignment_id
and decode(ppa1.report_type,'PAYCARL1AMPDF',instr(ppa1.legislative_parameters,'MODE=LATEST'),1) <> 0 )
and pds.actual_termination_date is not null
and pds.period_of_service_id = paf.period_of_service_id
group by paa.assignment_action_id,ppa.report_type,paa.assignment_id,paa.tax_unit_id,paa.serial_number,paf.effective_end_date
order by paa.assignment_action_id desc;
select substr(full_name,1,48), employee_number
from per_people_f
where person_id = cp_person_id
order by effective_end_date desc;
select 'Y'
from pay_assignment_actions
where assignment_action_id = p_assignment_action_id;
select user_entity_id
from ff_database_items
where user_name = cp_user_name;
select pay_assignment_actions_s.nextval
into ln_rl1_cancelled_asg_action
from dual;
/* Insert into pay_assignment_actions. */
hr_nonrun_asact.insact(ln_rl1_cancelled_asg_action
,ln_primary_assignment_id
,p_payroll_action_id
,p_chunk
,ln_tax_unit_id);
** Update the serial number column with Province_code,
** Archiver assignment_action and Archiver Payroll_action_id
** so that we need not refer back in the reports.
***********************************************************/
-- NIRANJAN
/* ln_serial_number := lv_prov_of_emp||
lpad(to_char(ln_rep_act_to_lock),14,0)||
lpad(to_char(ln_arch_act_to_lock),14,0);*/
update pay_assignment_actions aa
set aa.serial_number = ln_serial_number
where aa.assignment_action_id = ln_rl1_cancelled_asg_action;
select pay_assignment_actions_s.nextval
into ln_rl1_cancelled_asg_action
from dual;
/* Insert into pay_assignment_actions. */
hr_nonrun_asact.insact(ln_rl1_cancelled_asg_action
,ln_primary_assignment_id
,p_payroll_action_id
,p_chunk
,ln_tax_unit_id);
** Update the serial number column with Province_code,
** Archiver assignment_action and Archiver Payroll_action_id
** so that we need not refer back in the reports.
***********************************************************/
/* NIRANJAN
ln_serial_number := lv_prov_of_emp||
lpad(to_char(ln_rep_act_to_lock),14,0)||
lpad(to_char(ln_arch_act_to_lock),14,0);*/
update pay_assignment_actions aa
set aa.serial_number = ln_serial_number
where aa.assignment_action_id = ln_rl1_cancelled_asg_action;
select report_format
into l_report_format
from pay_report_format_mappings_f
where report_type = lv_ppr_report_type
and report_qualifier = l_state
and report_category = l_report_cat ;
open c_selected_asg_set_range(p_start_person_id
,p_end_person_id
,ln_asg_set
,ld_end_date);
hr_utility.trace('Opened cusor c_selected_asg_set_range');
open c_selected_asg_set (p_start_person_id
,p_end_person_id
,ln_asg_set
,ld_end_date);
hr_utility.trace('Opened cusor c_selected_asg_set');
fetch c_selected_asg_set_range into ln_set_person_id;
if c_selected_asg_set_range%notfound then
hr_utility.trace('c_selected_asg_set_range not found ');
fetch c_selected_asg_set into ln_set_person_id;
if c_selected_asg_set%notfound then
hr_utility.trace('c_selected_asg_set not found ');
close c_selected_asg_set_range;
else close c_selected_asg_set;
select pay_ca_eoy_rl1_cancelled_pkg.get_parameter('PRE_ID',ppa.legislative_parameters),
pay_ca_eoy_rl1_cancelled_pkg.get_parameter('PER_ID',ppa.legislative_parameters),
pay_ca_eoy_rl1_cancelled_pkg.get_parameter('ASG_SET_ID',ppa.legislative_parameters),
pay_ca_eoy_rl1_cancelled_pkg.get_parameter('P_S1',ppa.legislative_parameters),
pay_ca_eoy_rl1_cancelled_pkg.get_parameter('P_S2',ppa.legislative_parameters),
pay_ca_eoy_rl1_cancelled_pkg.get_parameter('P_S3',ppa.legislative_parameters),
pay_ca_eoy_rl1_cancelled_pkg.get_parameter('EFFECTIVE_DATE',ppa.legislative_parameters),
pay_ca_eoy_rl1_cancelled_pkg.get_parameter('MODE',ppa.legislative_parameters),
ppa.effective_date,
ppa.start_date,
ppa.business_group_id
into l_pre_id,
l_per_id,
l_asg_set_id,
l_sort1,
l_sort2,
l_sort3,
l_dt, --session_date
l_print,
l_year_end,
l_year_start,
l_bg_id
from pay_payroll_actions ppa
where ppa.payroll_action_id = payactid;
sqlstr := 'select paa1.rowid
from hr_all_organization_units hou,
hr_all_organization_units hou1,
hr_locations_all loc,
per_all_people_f ppf,
per_all_assignments_f paf,
pay_assignment_actions paa1,
pay_payroll_actions ppa1
where ppa1.payroll_action_id = :p_payroll_action_id
and paa1.payroll_action_id = ppa1.payroll_action_id
and paa1.assignment_id = paf.assignment_id
and paf.effective_start_date =
(select max(paf2.effective_start_date)
from per_all_assignments_f paf2
where paf2.assignment_id= paf.assignment_id
and paf2.effective_start_date
<= ppa1.effective_date)
and paf.effective_end_date >= ppa1.start_date
and paf.assignment_type = ''E''
and hou1.organization_id = paa1.tax_unit_id
and hou.organization_id = paf.organization_id
and loc.location_id = paf.location_id
and ppf.person_id = paf.person_id
and ppf.effective_start_date =
(select max(ppf2.effective_start_date)
from per_all_people_f ppf2
where ppf2.person_id= paf.person_id
and ppf2.effective_start_date
<= ppa1.effective_date)
and ppf.effective_end_date >= ppa1.start_date
order by
decode(pay_ca_t4_reg.get_parameter
(''P_S1'',ppa1.legislative_parameters),
''RL1_PRE'',hou1.name,
''RL1_ORG'',hou.name,
''RL1_LOC'',loc.location_code,null),
decode(pay_ca_t4_reg.get_parameter(''P_S2'',ppa1.legislative_parameters),
''RL1_PRE'',hou1.name,
''RL1_ORG'',hou.name,
''RL1_LOC'',loc.location_code,null),
decode(pay_ca_t4_reg.get_parameter(''P_S3'',ppa1.legislative_parameters),
''RL1_PRE'',hou1.name,
''RL1_ORG'',hou.name,
''RL1_LOC'',loc.location_code,null),
ppf.last_name,first_name';