563: -- algorithm is quite similar to the other process cases,
564: -- but we have to take into account assignments and
565: -- personal payment methods.
566: BEGIN
567: hr_utility.set_location('procpyr',1);
568:
569: select legislative_parameters
570: into l_leg_param
571: from pay_payroll_actions ppa
570: into l_leg_param
571: from pay_payroll_actions ppa
572: where ppa.payroll_action_id = pactid;
573:
574: -- hr_utility.trace('Payroll Action ID = '||pactid);
575:
576: open c_inputs( pactid);
577:
578: fetch c_inputs into l_payroll_id,
587: cp_effective_date ;
588:
589: close c_inputs;
590:
591: -- hr_utility.trace('stperson '||stperson);
592: -- hr_utility.trace('endperson '||endperson);
593: -- hr_utility.trace('l_payroll_id '||l_payroll_id);
594: -- hr_utility.trace('l_consolidation_set_id '||l_consolidation_set_id);
595: -- hr_utility.trace('l_tax_unit_id '||l_tax_unit_id);
588:
589: close c_inputs;
590:
591: -- hr_utility.trace('stperson '||stperson);
592: -- hr_utility.trace('endperson '||endperson);
593: -- hr_utility.trace('l_payroll_id '||l_payroll_id);
594: -- hr_utility.trace('l_consolidation_set_id '||l_consolidation_set_id);
595: -- hr_utility.trace('l_tax_unit_id '||l_tax_unit_id);
596: -- hr_utility.trace('l_location_id '||l_location_id);
589: close c_inputs;
590:
591: -- hr_utility.trace('stperson '||stperson);
592: -- hr_utility.trace('endperson '||endperson);
593: -- hr_utility.trace('l_payroll_id '||l_payroll_id);
594: -- hr_utility.trace('l_consolidation_set_id '||l_consolidation_set_id);
595: -- hr_utility.trace('l_tax_unit_id '||l_tax_unit_id);
596: -- hr_utility.trace('l_location_id '||l_location_id);
597: -- hr_utility.trace('l_organization_id '||l_organization_id);
590:
591: -- hr_utility.trace('stperson '||stperson);
592: -- hr_utility.trace('endperson '||endperson);
593: -- hr_utility.trace('l_payroll_id '||l_payroll_id);
594: -- hr_utility.trace('l_consolidation_set_id '||l_consolidation_set_id);
595: -- hr_utility.trace('l_tax_unit_id '||l_tax_unit_id);
596: -- hr_utility.trace('l_location_id '||l_location_id);
597: -- hr_utility.trace('l_organization_id '||l_organization_id);
598: -- hr_utility.trace('l_person_id '||l_person_id);
591: -- hr_utility.trace('stperson '||stperson);
592: -- hr_utility.trace('endperson '||endperson);
593: -- hr_utility.trace('l_payroll_id '||l_payroll_id);
594: -- hr_utility.trace('l_consolidation_set_id '||l_consolidation_set_id);
595: -- hr_utility.trace('l_tax_unit_id '||l_tax_unit_id);
596: -- hr_utility.trace('l_location_id '||l_location_id);
597: -- hr_utility.trace('l_organization_id '||l_organization_id);
598: -- hr_utility.trace('l_person_id '||l_person_id);
599: -- hr_utility.trace('l_business_group_id '||l_business_group_id);
592: -- hr_utility.trace('endperson '||endperson);
593: -- hr_utility.trace('l_payroll_id '||l_payroll_id);
594: -- hr_utility.trace('l_consolidation_set_id '||l_consolidation_set_id);
595: -- hr_utility.trace('l_tax_unit_id '||l_tax_unit_id);
596: -- hr_utility.trace('l_location_id '||l_location_id);
597: -- hr_utility.trace('l_organization_id '||l_organization_id);
598: -- hr_utility.trace('l_person_id '||l_person_id);
599: -- hr_utility.trace('l_business_group_id '||l_business_group_id);
600: -- hr_utility.trace('l_assignment_set_id '||l_assignment_set_id);
593: -- hr_utility.trace('l_payroll_id '||l_payroll_id);
594: -- hr_utility.trace('l_consolidation_set_id '||l_consolidation_set_id);
595: -- hr_utility.trace('l_tax_unit_id '||l_tax_unit_id);
596: -- hr_utility.trace('l_location_id '||l_location_id);
597: -- hr_utility.trace('l_organization_id '||l_organization_id);
598: -- hr_utility.trace('l_person_id '||l_person_id);
599: -- hr_utility.trace('l_business_group_id '||l_business_group_id);
600: -- hr_utility.trace('l_assignment_set_id '||l_assignment_set_id);
601: -- hr_utility.trace('cp_start_date '||cp_start_date);
594: -- hr_utility.trace('l_consolidation_set_id '||l_consolidation_set_id);
595: -- hr_utility.trace('l_tax_unit_id '||l_tax_unit_id);
596: -- hr_utility.trace('l_location_id '||l_location_id);
597: -- hr_utility.trace('l_organization_id '||l_organization_id);
598: -- hr_utility.trace('l_person_id '||l_person_id);
599: -- hr_utility.trace('l_business_group_id '||l_business_group_id);
600: -- hr_utility.trace('l_assignment_set_id '||l_assignment_set_id);
601: -- hr_utility.trace('cp_start_date '||cp_start_date);
602: -- hr_utility.trace('cp_effective_date '||cp_effective_date);
595: -- hr_utility.trace('l_tax_unit_id '||l_tax_unit_id);
596: -- hr_utility.trace('l_location_id '||l_location_id);
597: -- hr_utility.trace('l_organization_id '||l_organization_id);
598: -- hr_utility.trace('l_person_id '||l_person_id);
599: -- hr_utility.trace('l_business_group_id '||l_business_group_id);
600: -- hr_utility.trace('l_assignment_set_id '||l_assignment_set_id);
601: -- hr_utility.trace('cp_start_date '||cp_start_date);
602: -- hr_utility.trace('cp_effective_date '||cp_effective_date);
603:
596: -- hr_utility.trace('l_location_id '||l_location_id);
597: -- hr_utility.trace('l_organization_id '||l_organization_id);
598: -- hr_utility.trace('l_person_id '||l_person_id);
599: -- hr_utility.trace('l_business_group_id '||l_business_group_id);
600: -- hr_utility.trace('l_assignment_set_id '||l_assignment_set_id);
601: -- hr_utility.trace('cp_start_date '||cp_start_date);
602: -- hr_utility.trace('cp_effective_date '||cp_effective_date);
603:
604: if l_assignment_set_id is NULL then
597: -- hr_utility.trace('l_organization_id '||l_organization_id);
598: -- hr_utility.trace('l_person_id '||l_person_id);
599: -- hr_utility.trace('l_business_group_id '||l_business_group_id);
600: -- hr_utility.trace('l_assignment_set_id '||l_assignment_set_id);
601: -- hr_utility.trace('cp_start_date '||cp_start_date);
602: -- hr_utility.trace('cp_effective_date '||cp_effective_date);
603:
604: if l_assignment_set_id is NULL then
605:
598: -- hr_utility.trace('l_person_id '||l_person_id);
599: -- hr_utility.trace('l_business_group_id '||l_business_group_id);
600: -- hr_utility.trace('l_assignment_set_id '||l_assignment_set_id);
601: -- hr_utility.trace('cp_start_date '||cp_start_date);
602: -- hr_utility.trace('cp_effective_date '||cp_effective_date);
603:
604: if l_assignment_set_id is NULL then
605:
606: open c_actions( stperson
639: l_asg_set_id := pay_payrg_pkg.get_parameter('PASID',l_leg_param);
640:
641: num := 0;
642: loop
643: hr_utility.set_location('procpyr',2);
644:
645: if l_assignment_set_id is NULL then
646:
647: hr_utility.trace('in c_actions num= '||num);
643: hr_utility.set_location('procpyr',2);
644:
645: if l_assignment_set_id is NULL then
646:
647: hr_utility.trace('in c_actions num= '||num);
648: fetch c_actions into lockedactid
649: ,assignid
650: ,greid
651: ,actiontype
656: exit when c_actions%notfound;
657:
658: else
659:
660: hr_utility.trace('in c_actions_1 num= '||num);
661: fetch c_actions_1 into lockedactid
662: ,assignid
663: ,greid
664: ,actiontype
928: select pay_assignment_actions_s.nextval
929: into lockingactid
930: from dual;
931:
932: hr_utility.trace('B4 insact'||to_char(lockingactid) ||','||to_char(greid)||','||actiontype||','||to_char(runactid) );
933:
934: -- insert the action record.
935: hr_nonrun_asact.insact(lockingactid,assignid,pactid,chunk,greid);
936: hr_utility.trace('A4 insact'||to_char(lockingactid) ||','||to_char(greid)||','||actiontype||','||to_char(runactid) );
932: hr_utility.trace('B4 insact'||to_char(lockingactid) ||','||to_char(greid)||','||actiontype||','||to_char(runactid) );
933:
934: -- insert the action record.
935: hr_nonrun_asact.insact(lockingactid,assignid,pactid,chunk,greid);
936: hr_utility.trace('A4 insact'||to_char(lockingactid) ||','||to_char(greid)||','||actiontype||','||to_char(runactid) );
937:
938: -- insert an interlock to this action.
939: hr_nonrun_asact.insint(lockingactid,lockedactid);
940:
971:
972: -- we need to insert one action for each of the
973: -- rows that we return from the cursor (i.e. one
974: -- for each assignment/pre-payment/reversal).
975: hr_utility.set_location('procpyr',3);
976:
977: IF actiontype in ('P', 'U') THEN
978:
979: open c_payment_info (lockedactid);
1207: select pay_assignment_actions_s.nextval
1208: into lockingactid
1209: from dual;
1210:
1211: hr_utility.trace('B4 insact'||to_char(lockingactid) ||','||to_char(greid)||','||actiontype||','||to_char(runactid) );
1212:
1213: -- insert the action record.
1214: hr_nonrun_asact.insact(lockingactid,assignid,pactid,chunk,greid);
1215: hr_utility.trace('A4 insact'||to_char(lockingactid) ||','||to_char(greid)||','||actiontype||','||to_char(runactid) );
1211: hr_utility.trace('B4 insact'||to_char(lockingactid) ||','||to_char(greid)||','||actiontype||','||to_char(runactid) );
1212:
1213: -- insert the action record.
1214: hr_nonrun_asact.insact(lockingactid,assignid,pactid,chunk,greid);
1215: hr_utility.trace('A4 insact'||to_char(lockingactid) ||','||to_char(greid)||','||actiontype||','||to_char(runactid) );
1216:
1217: -- insert an interlock to this action.
1218: hr_nonrun_asact.insint(lockingactid,lockedactid);
1219:
1253:
1254: end loop;
1255:
1256: if l_assignment_set_id is NULL then
1257: -- hr_utility.trace('Closing c_actions');
1258: close c_actions;
1259: else
1260: -- hr_utility.trace('Closing c_actions_1');
1261: close c_actions_1;
1256: if l_assignment_set_id is NULL then
1257: -- hr_utility.trace('Closing c_actions');
1258: close c_actions;
1259: else
1260: -- hr_utility.trace('Closing c_actions_1');
1261: close c_actions_1;
1262: end if;
1263:
1264: END action_creation;