44: l_start_pos NUMBER;
45: l_delimiter varchar2(1):=' ';
46: l_proc VARCHAR2(60):= g_package||' get parameter ';
47: BEGIN
48: hr_utility.set_location('Entering ' || l_proc, 20);
49: l_start_pos := instr(' '||p_parameter_string,l_delimiter||p_token||'=');
50: IF l_start_pos = 0 THEN
51: l_delimiter := '|';
52: l_start_pos := instr(' '||p_parameter_string,l_delimiter||p_token||'=');
65: instr(l_parameter,':',1,p_segment_number+1) -1
66: - instr(l_parameter,':',1,p_segment_number));
67: END IF;
68: END IF;
69: hr_utility.set_location('Leaving ' || l_proc, 100);
70: RETURN l_parameter;
71:
72: END get_parameter;
73:
101: l_proc VARCHAR2(60):= g_package||' get_all_parameters ';
102:
103: BEGIN
104:
105: hr_utility.set_location('Entering ' || l_proc, 20);
106:
107: OPEN csr_parameter_info (p_payroll_action_id);
108: FETCH csr_parameter_info INTO p_company_id,
109: p_period_type,
126: p_french_contrib_code :=
127: hr_general.decode_lookup('NAME_TRANSLATIONS','CONTRIBUTION CODE');
128:
129:
130: hr_utility.set_location('Leaving ' || l_proc, 100);
131:
132: END get_all_parameters;
133: --
134:
173: BEGIN
174:
175:
176:
177: hr_utility.set_location('Entering ' || l_proc,10);
178:
179: --
180: -- Load the parameters to the process
181: --
220: END IF;
221: CLOSE c_existing_archive;
222:
223:
224: hr_utility.set_location('Step ' || l_proc, 30);
225:
226: sqlstr := 'SELECT DISTINCT person_id
227: FROM per_people_f ppf
228: ,pay_payroll_actions ppa
229: WHERE ppa.payroll_action_id = :payroll_action_id
230: AND ppa.business_group_id = ppf.business_group_id
231: ORDER BY ppf.person_id';
232:
233: hr_utility.set_location('Leaving ' || l_proc,100);
234: EXCEPTION
235:
236: WHEN duplicate THEN
237: hr_utility.set_location(' Leaving with EXCEPTION: '||l_proc,100);
233: hr_utility.set_location('Leaving ' || l_proc,100);
234: EXCEPTION
235:
236: WHEN duplicate THEN
237: hr_utility.set_location(' Leaving with EXCEPTION: '||l_proc,100);
238:
239: hr_utility.set_message(801, 'PAY_75086_DUCS_DUPLICATE_ARCH');
240: FND_FILE.PUT_LINE(fnd_file.log,substr(hr_utility.get_message,1,240));
241: sqlstr := 'select 1 from dual where to_char(:payroll_action_id) = dummy';
235:
236: WHEN duplicate THEN
237: hr_utility.set_location(' Leaving with EXCEPTION: '||l_proc,100);
238:
239: hr_utility.set_message(801, 'PAY_75086_DUCS_DUPLICATE_ARCH');
240: FND_FILE.PUT_LINE(fnd_file.log,substr(hr_utility.get_message,1,240));
241: sqlstr := 'select 1 from dual where to_char(:payroll_action_id) = dummy';
242:
243:
236: WHEN duplicate THEN
237: hr_utility.set_location(' Leaving with EXCEPTION: '||l_proc,100);
238:
239: hr_utility.set_message(801, 'PAY_75086_DUCS_DUPLICATE_ARCH');
240: FND_FILE.PUT_LINE(fnd_file.log,substr(hr_utility.get_message,1,240));
241: sqlstr := 'select 1 from dual where to_char(:payroll_action_id) = dummy';
242:
243:
244: WHEN OTHERS THEN
241: sqlstr := 'select 1 from dual where to_char(:payroll_action_id) = dummy';
242:
243:
244: WHEN OTHERS THEN
245: hr_utility.set_location(' Leaving with EXCEPTION: '||l_proc,100);
246: -- Return cursor that selects no rows
247: sqlstr := 'select 1 from dual where to_char(:payroll_action_id) = dummy';
248: hr_utility.set_location('Quitting ' || l_proc,10);
249:
244: WHEN OTHERS THEN
245: hr_utility.set_location(' Leaving with EXCEPTION: '||l_proc,100);
246: -- Return cursor that selects no rows
247: sqlstr := 'select 1 from dual where to_char(:payroll_action_id) = dummy';
248: hr_utility.set_location('Quitting ' || l_proc,10);
249:
250: END range_code;
251:
252: /*--------------------------------------------------------------------------
375: l_num number(1);
376: l_create_act boolean;
377: --
378: BEGIN -- assignment_action_code
379: hr_utility.set_location('Entering ' || l_proc,10);
380:
381: if g_payroll_action_id is null
382: or g_payroll_action_id <> p_payroll_action_id
383: then
447: , rec_assact.assignment_action_id);
448: end if; -- l_create_act
449: END LOOP;
450:
451: hr_utility.set_location('Leaving ' || l_proc,100);
452:
453: END assignment_action_code; --End of Assignment Action Creation
454:
455: /*--------------------------------------------------------------------------
460: --------------------------------------------------------------------------*/
461: PROCEDURE archinit(p_payroll_action_id IN NUMBER) IS
462: l_proc VARCHAR2(60):= g_package||'.archinit';
463: BEGIN
464: hr_utility.set_location('Entering: ' || l_proc,10);
465: if g_payroll_action_id is null
466: or g_payroll_action_id <> p_payroll_action_id
467: then
468: hr_utility.set_location(l_proc,20);
464: hr_utility.set_location('Entering: ' || l_proc,10);
465: if g_payroll_action_id is null
466: or g_payroll_action_id <> p_payroll_action_id
467: then
468: hr_utility.set_location(l_proc,20);
469: pay_fr_ducs.get_all_parameters
470: (p_payroll_action_id => p_payroll_action_id
471: ,p_business_group_id => g_business_group_id
472: ,p_company_id => g_company_id
482: ,p_french_pay_value => g_french_pay_value
483: ,p_french_contrib_code => g_french_contrib_code);
484: g_payroll_action_id := p_payroll_action_id;
485: END IF;
486: hr_utility.set_location(' Leaving: ' || l_proc,99);
487:
488: END archinit;
489:
490: /*--------------------------------------------------------------------------
557: --
558: BEGIN
559:
560:
561: hr_utility.set_location('Entering ' || l_proc,10);
562:
563: open csr_locked_action_info;
564: fetch csr_locked_action_info into l_locked_action;
565: close csr_locked_action_info;
629: where assignment_action_id = child.new_ass_act_id;
630: END LOOP; -- child
631:
632:
633: hr_utility.set_location('Step ' || l_proc,20);
634:
635: -- Only process the parent action if it has no child actions
636:
637: IF not l_child THEN
644: end if; -- csr_locking_reversal%NOTFOUND
645: close csr_locking_reversal;
646: END IF;
647: end if; -- l_action_type <> 'X'
648: hr_utility.set_location('Leaving ' || l_proc,100);
649:
650: END archive_code; -- End of Archive Code
651:
652: -------------------------------------------------------------------
798:
799: BEGIN
800:
801:
802: hr_utility.set_location('Entering ' || l_proc,10);
803:
804: -- Determine establishment ID
805: IF p_tax_unit_id is null then
806: OPEN cassact;
873: IF NOT g_estab_pens_provs.pens_provs.exists(l_Order_Number) THEN
874: OPEN cestpens(to_char(l_Order_Number));
875: FETCH cestpens INTO g_estab_pens_provs.pens_provs(l_Order_Number);
876: IF cestpens%notfound THEN
877: hr_utility.set_message(801, 'PAY_75087_DUCS_PENS_PROV');
878: FND_FILE.NEW_LINE(fnd_file.log, 1);
879: FND_FILE.PUT_LINE(fnd_file.log,hr_utility.get_message);
880: END IF;
881: CLOSE cestpens;
875: FETCH cestpens INTO g_estab_pens_provs.pens_provs(l_Order_Number);
876: IF cestpens%notfound THEN
877: hr_utility.set_message(801, 'PAY_75087_DUCS_PENS_PROV');
878: FND_FILE.NEW_LINE(fnd_file.log, 1);
879: FND_FILE.PUT_LINE(fnd_file.log,hr_utility.get_message);
880: END IF;
881: CLOSE cestpens;
882: --
883: END IF;
905: END LOOP;
906: close ccontrib;
907:
908:
909: hr_utility.set_location('Leaving ' || l_proc, 100);
910:
911: END retrieve_contributions;
912:
913: ---------------------------------------------------------------------
1109:
1110: END IF;
1111:
1112: IF l_remaining_amount > 0 THEN
1113: hr_utility.set_message(801, 'PAY_75088_DUCS_TOTAL_NOT_ALLOC');
1114: hr_utility.set_message_token(801,'ORGANIZATION',p_name);
1115: FND_FILE.NEW_LINE(fnd_file.log, 1);
1116: FND_FILE.PUT_LINE(fnd_file.log,hr_utility.get_message);
1117: END IF;
1110: END IF;
1111:
1112: IF l_remaining_amount > 0 THEN
1113: hr_utility.set_message(801, 'PAY_75088_DUCS_TOTAL_NOT_ALLOC');
1114: hr_utility.set_message_token(801,'ORGANIZATION',p_name);
1115: FND_FILE.NEW_LINE(fnd_file.log, 1);
1116: FND_FILE.PUT_LINE(fnd_file.log,hr_utility.get_message);
1117: END IF;
1118:
1112: IF l_remaining_amount > 0 THEN
1113: hr_utility.set_message(801, 'PAY_75088_DUCS_TOTAL_NOT_ALLOC');
1114: hr_utility.set_message_token(801,'ORGANIZATION',p_name);
1115: FND_FILE.NEW_LINE(fnd_file.log, 1);
1116: FND_FILE.PUT_LINE(fnd_file.log,hr_utility.get_message);
1117: END IF;
1118:
1119:
1120: END process_payment;
1386: WHERE organization_id = l_pension_provider_id
1387: AND org_information_context = 'FR_PE_PRV_INFO';
1388: EXCEPTION
1389: WHEN no_data_found THEN
1390: hr_utility.set_message(801,'PAY_75087_DUCS_PENS_PROV');
1391: FND_FILE.NEW_LINE(fnd_file.log, 1);
1392: FND_FILE.PUT_LINE(fnd_file.log,hr_utility.get_message);
1393: END;
1394: END IF;
1388: EXCEPTION
1389: WHEN no_data_found THEN
1390: hr_utility.set_message(801,'PAY_75087_DUCS_PENS_PROV');
1391: FND_FILE.NEW_LINE(fnd_file.log, 1);
1392: FND_FILE.PUT_LINE(fnd_file.log,hr_utility.get_message);
1393: END;
1394: END IF;
1395:
1396: l_sort1_code := rec_contr.subpage_identifier;
1729:
1730:
1731: BEGIN
1732:
1733: hr_utility.set_location('Entering ' || l_proc, 20);
1734: if g_payroll_action_id is null
1735: or g_payroll_action_id <> p_payroll_action_id
1736: then
1737: pay_fr_ducs.get_all_parameters
2387:
2388:
2389:
2390: --
2391: hr_utility.set_location('Leaving ' || l_proc, 100);
2392:
2393: EXCEPTION
2394:
2395: WHEN duplicate THEN
2392:
2393: EXCEPTION
2394:
2395: WHEN duplicate THEN
2396: hr_utility.set_location('Leaving with duplicate exception' || l_proc, 100);
2397: WHEN others THEN
2398: --3655620 write any other errors to the log file as otherwise the message
2399: --text is not propagated back to the CM and only appears in the log if
2400: --the LOGGING action parameter includes the letter G
2490:
2491:
2492: BEGIN
2493:
2494: hr_utility.set_location('Entering ' || l_proc,10);
2495:
2496: l_period_end_date := fnd_date.string_to_date(p_period_end_date,'YYYY/MM/DD HH24:MI:SS');
2497:
2498: FOR payment IN cpayment_option LOOP
2507: AND payment.payment_2_limit IS NULL)
2508: OR (payment.payment_3_type IN ('AMOUNT','PERCENT')
2509: AND payment.payment_3_limit IS NULL) THEN
2510: l_error_flag:='Y';
2511: hr_utility.set_message(801, 'PAY_75089_DUCS_NULL_ACC_LIMIT');
2512: hr_utility.set_message_token(801,'ORGANIZATION',payment.organization_name);
2513: FND_FILE.NEW_LINE(fnd_file.log, 1);
2514: FND_FILE.PUT_LINE(fnd_file.log,hr_utility.get_message);
2515: END IF;
2508: OR (payment.payment_3_type IN ('AMOUNT','PERCENT')
2509: AND payment.payment_3_limit IS NULL) THEN
2510: l_error_flag:='Y';
2511: hr_utility.set_message(801, 'PAY_75089_DUCS_NULL_ACC_LIMIT');
2512: hr_utility.set_message_token(801,'ORGANIZATION',payment.organization_name);
2513: FND_FILE.NEW_LINE(fnd_file.log, 1);
2514: FND_FILE.PUT_LINE(fnd_file.log,hr_utility.get_message);
2515: END IF;
2516:
2510: l_error_flag:='Y';
2511: hr_utility.set_message(801, 'PAY_75089_DUCS_NULL_ACC_LIMIT');
2512: hr_utility.set_message_token(801,'ORGANIZATION',payment.organization_name);
2513: FND_FILE.NEW_LINE(fnd_file.log, 1);
2514: FND_FILE.PUT_LINE(fnd_file.log,hr_utility.get_message);
2515: END IF;
2516:
2517: IF l_error_flag ='Y' THEN
2518:
2589: retcode := 1;
2590: END IF;
2591:
2592:
2593: hr_utility.set_location('Leaving ' || l_proc, 100);
2594:
2595: END recalculate_payment;
2596: --
2597: