84: 2377480 Legal Entity fetch per
85: assignment and not per
86: organization
87: J.N. Louw 28/02/2002 115.8 Added
88: hr_utility calls
89: Removed
90: record creation for
91: assignment with no
92: balance values
171: AS
172: -------------------------------------------------------------------------------
173: BEGIN -- MAIN --
174: -------------------------------------------------------------------------------
175: hr_utility.set_location('py_za_tax_reg.zvl',1);
176:
177: IF p_val IS NOT NULL THEN
178: IF p_val = 0 THEN
179: p_val := NULL;
179: p_val := NULL;
180: END IF;
181: END IF;
182:
183: hr_utility.set_location('py_za_tax_reg.zvl',2);
184:
185: EXCEPTION
186: WHEN OTHERS THEN
187: hr_utility.set_location('py_za_tax_reg.zvl',3);
183: hr_utility.set_location('py_za_tax_reg.zvl',2);
184:
185: EXCEPTION
186: WHEN OTHERS THEN
187: hr_utility.set_location('py_za_tax_reg.zvl',3);
188: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
189: hr_utility.raise_error;
190: -------------------------------------------------------------------------------
191: END zvl;
184:
185: EXCEPTION
186: WHEN OTHERS THEN
187: hr_utility.set_location('py_za_tax_reg.zvl',3);
188: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
189: hr_utility.raise_error;
190: -------------------------------------------------------------------------------
191: END zvl;
192:
185: EXCEPTION
186: WHEN OTHERS THEN
187: hr_utility.set_location('py_za_tax_reg.zvl',3);
188: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
189: hr_utility.raise_error;
190: -------------------------------------------------------------------------------
191: END zvl;
192:
193: -------------------------------------------------------------------------------
208: ------------
209: -------------------------------------------------------------------------------
210: BEGIN -- MAIN --
211: -------------------------------------------------------------------------------
212: hr_utility.set_location('py_za_tax_reg.valid_record',1);
213:
214: IF nvl(
215: to_char(
216: nvl(
222: )
223: , l_check_val
224: ) <> l_check_val
225: THEN
226: hr_utility.set_location('py_za_tax_reg.valid_record',2);
227: l_ret_val := TRUE;
228: END IF;
229:
230: hr_utility.set_location('py_za_tax_reg.valid_record',3);
226: hr_utility.set_location('py_za_tax_reg.valid_record',2);
227: l_ret_val := TRUE;
228: END IF;
229:
230: hr_utility.set_location('py_za_tax_reg.valid_record',3);
231: RETURN l_ret_val;
232:
233: EXCEPTION
234: WHEN OTHERS THEN
231: RETURN l_ret_val;
232:
233: EXCEPTION
234: WHEN OTHERS THEN
235: hr_utility.set_location('py_za_tax_reg.valid_record',4);
236: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
237: hr_utility.raise_error;
238: -------------------------------------------------------------------------------
239: END valid_record;
232:
233: EXCEPTION
234: WHEN OTHERS THEN
235: hr_utility.set_location('py_za_tax_reg.valid_record',4);
236: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
237: hr_utility.raise_error;
238: -------------------------------------------------------------------------------
239: END valid_record;
240:
233: EXCEPTION
234: WHEN OTHERS THEN
235: hr_utility.set_location('py_za_tax_reg.valid_record',4);
236: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
237: hr_utility.raise_error;
238: -------------------------------------------------------------------------------
239: END valid_record;
240:
241: -------------------------------------------------------------------------------
269:
270: -------------------------------------------------------------------------------
271: BEGIN -- MAIN --
272: -------------------------------------------------------------------------------
273: hr_utility.set_location('py_za_tax_reg.balance_id',1);
274:
275: OPEN csr_balance_id(p_balance_name);
276: FETCH csr_balance_id INTO l_retval;
277: CLOSE csr_balance_id;
275: OPEN csr_balance_id(p_balance_name);
276: FETCH csr_balance_id INTO l_retval;
277: CLOSE csr_balance_id;
278:
279: hr_utility.set_location('py_za_tax_reg.balance_id',2);
280: RETURN l_retval;
281:
282: EXCEPTION
283: WHEN OTHERS THEN
280: RETURN l_retval;
281:
282: EXCEPTION
283: WHEN OTHERS THEN
284: hr_utility.set_location('py_za_tax_reg.balance_id',3);
285: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
286: hr_utility.raise_error;
287: -------------------------------------------------------------------------------
288: END balance_id;
281:
282: EXCEPTION
283: WHEN OTHERS THEN
284: hr_utility.set_location('py_za_tax_reg.balance_id',3);
285: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
286: hr_utility.raise_error;
287: -------------------------------------------------------------------------------
288: END balance_id;
289:
282: EXCEPTION
283: WHEN OTHERS THEN
284: hr_utility.set_location('py_za_tax_reg.balance_id',3);
285: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
286: hr_utility.raise_error;
287: -------------------------------------------------------------------------------
288: END balance_id;
289:
290: -------------------------------------------------------------------------------
305: --
306: -------------------------------------------------------------------------------
307: BEGIN -- MAIN --
308: -------------------------------------------------------------------------------
309: hr_utility.set_location('py_za_tax_reg.ptd_value',1);
310: -- Check if the PTD value must be retrieved
311: --
312: IF g_retrieve_ptd THEN
313: hr_utility.set_location('py_za_tax_reg.ptd_value',2);
309: hr_utility.set_location('py_za_tax_reg.ptd_value',1);
310: -- Check if the PTD value must be retrieved
311: --
312: IF g_retrieve_ptd THEN
313: hr_utility.set_location('py_za_tax_reg.ptd_value',2);
314: -- PTD value of Site and Paye Amount not necessary
315: --
316: /* comment for bug 9780615 */
317: -- IF UPPER(p_balance_name) NOT IN ('SITE','PAYE') THEN
314: -- PTD value of Site and Paye Amount not necessary
315: --
316: /* comment for bug 9780615 */
317: -- IF UPPER(p_balance_name) NOT IN ('SITE','PAYE') THEN
318: -- hr_utility.set_location('py_za_tax_reg.ptd_value',3);
319: -- Is the assignment's action in the current period
320: --
321: IF g_end_period_id = p_action_period_id THEN
322: hr_utility.set_location('py_za_tax_reg.ptd_value',4);
318: -- hr_utility.set_location('py_za_tax_reg.ptd_value',3);
319: -- Is the assignment's action in the current period
320: --
321: IF g_end_period_id = p_action_period_id THEN
322: hr_utility.set_location('py_za_tax_reg.ptd_value',4);
323: -- Retrieve the value
324: --3491357
325: /*l_ptd_value := py_za_bal.calc_asg_tax_ptd_action (
326: p_asg_action_id
334: );
335: END IF;
336: -- END IF;
337: END IF;
338: hr_utility.set_location('py_za_tax_reg.ptd_value',5);
339: zvl(l_ptd_value);
340: hr_utility.set_location('py_za_tax_reg.ptd_value',6);
341: -- Return
342: RETURN l_ptd_value;
336: -- END IF;
337: END IF;
338: hr_utility.set_location('py_za_tax_reg.ptd_value',5);
339: zvl(l_ptd_value);
340: hr_utility.set_location('py_za_tax_reg.ptd_value',6);
341: -- Return
342: RETURN l_ptd_value;
343:
344: EXCEPTION
342: RETURN l_ptd_value;
343:
344: EXCEPTION
345: WHEN OTHERS THEN
346: hr_utility.set_location('py_za_tax_reg.ptd_value',7);
347: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
348: hr_utility.raise_error;
349: -------------------------------------------------------------------------------
350: END ptd_value;
343:
344: EXCEPTION
345: WHEN OTHERS THEN
346: hr_utility.set_location('py_za_tax_reg.ptd_value',7);
347: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
348: hr_utility.raise_error;
349: -------------------------------------------------------------------------------
350: END ptd_value;
351:
344: EXCEPTION
345: WHEN OTHERS THEN
346: hr_utility.set_location('py_za_tax_reg.ptd_value',7);
347: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
348: hr_utility.raise_error;
349: -------------------------------------------------------------------------------
350: END ptd_value;
351:
352: -------------------------------------------------------------------------------
366: --
367: -------------------------------------------------------------------------------
368: BEGIN -- MAIN --
369: -------------------------------------------------------------------------------
370: hr_utility.set_location('py_za_tax_reg.mtd_value',1);
371: -- Check if the MTD value must be retrieved
372: --
373: IF g_retrieve_mtd THEN
374: hr_utility.set_location('py_za_tax_reg.mtd_value',2);
370: hr_utility.set_location('py_za_tax_reg.mtd_value',1);
371: -- Check if the MTD value must be retrieved
372: --
373: IF g_retrieve_mtd THEN
374: hr_utility.set_location('py_za_tax_reg.mtd_value',2);
375: -- PTD value of Site and Paye Amount not necessary
376: --
377: /* comment for bug 9780615 */
378: -- IF UPPER(p_balance_name) NOT IN ('SITE','PAYE') THEN
375: -- PTD value of Site and Paye Amount not necessary
376: --
377: /* comment for bug 9780615 */
378: -- IF UPPER(p_balance_name) NOT IN ('SITE','PAYE') THEN
379: -- hr_utility.set_location('py_za_tax_reg.mtd_value',3);
380: -- Is the effective date of the action in the current period
381: --
382: IF p_effective_date between g_period_start_date
383: and g_period_end_date
381: --
382: IF p_effective_date between g_period_start_date
383: and g_period_end_date
384: THEN
385: hr_utility.set_location('py_za_tax_reg.mtd_value',4);
386: -- Retrieve the value
387: --3491357
388: /*l_mtd_value := py_za_bal.calc_asg_tax_mtd_action (
389: p_asg_action_id
397: );
398: END IF;
399: -- END IF;
400: END IF;
401: hr_utility.set_location('py_za_tax_reg.mtd_value',5);
402: zvl(l_mtd_value);
403: hr_utility.set_location('py_za_tax_reg.mtd_value',6);
404: -- Return
405: RETURN l_mtd_value;
399: -- END IF;
400: END IF;
401: hr_utility.set_location('py_za_tax_reg.mtd_value',5);
402: zvl(l_mtd_value);
403: hr_utility.set_location('py_za_tax_reg.mtd_value',6);
404: -- Return
405: RETURN l_mtd_value;
406:
407: EXCEPTION
405: RETURN l_mtd_value;
406:
407: EXCEPTION
408: WHEN OTHERS THEN
409: hr_utility.set_location('py_za_tax_reg.mtd_value',7);
410: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
411: hr_utility.raise_error;
412: -------------------------------------------------------------------------------
413: END mtd_value;
406:
407: EXCEPTION
408: WHEN OTHERS THEN
409: hr_utility.set_location('py_za_tax_reg.mtd_value',7);
410: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
411: hr_utility.raise_error;
412: -------------------------------------------------------------------------------
413: END mtd_value;
414:
407: EXCEPTION
408: WHEN OTHERS THEN
409: hr_utility.set_location('py_za_tax_reg.mtd_value',7);
410: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
411: hr_utility.raise_error;
412: -------------------------------------------------------------------------------
413: END mtd_value;
414:
415: -------------------------------------------------------------------------------
428: --
429: -------------------------------------------------------------------------------
430: BEGIN -- MAIN --
431: -------------------------------------------------------------------------------
432: hr_utility.set_location('py_za_tax_reg.ytd_value',1);
433: -- Check if the YTD value must be retrieved
434: --
435: IF g_retrieve_ytd THEN
436: hr_utility.set_location('py_za_tax_reg.ytd_value',2);
432: hr_utility.set_location('py_za_tax_reg.ytd_value',1);
433: -- Check if the YTD value must be retrieved
434: --
435: IF g_retrieve_ytd THEN
436: hr_utility.set_location('py_za_tax_reg.ytd_value',2);
437: -- Retrieve the value
438: --3491357
439: /*l_ytd_value := py_za_bal.calc_asg_tax_ytd_action (
440: p_asg_action_id
446: , p_balance_type_id
447: , '_ASG_TAX_YTD'
448: );
449: END IF;
450: hr_utility.set_location('py_za_tax_reg.ytd_value',3);
451: zvl(l_ytd_value);
452: hr_utility.set_location('py_za_tax_reg.ytd_value',4);
453: -- Return
454: RETURN l_ytd_value;
448: );
449: END IF;
450: hr_utility.set_location('py_za_tax_reg.ytd_value',3);
451: zvl(l_ytd_value);
452: hr_utility.set_location('py_za_tax_reg.ytd_value',4);
453: -- Return
454: RETURN l_ytd_value;
455:
456: EXCEPTION
454: RETURN l_ytd_value;
455:
456: EXCEPTION
457: WHEN OTHERS THEN
458: hr_utility.set_location('py_za_tax_reg.ytd_value',5);
459: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
460: hr_utility.raise_error;
461: -------------------------------------------------------------------------------
462: END ytd_value;
455:
456: EXCEPTION
457: WHEN OTHERS THEN
458: hr_utility.set_location('py_za_tax_reg.ytd_value',5);
459: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
460: hr_utility.raise_error;
461: -------------------------------------------------------------------------------
462: END ytd_value;
463:
456: EXCEPTION
457: WHEN OTHERS THEN
458: hr_utility.set_location('py_za_tax_reg.ytd_value',5);
459: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
460: hr_utility.raise_error;
461: -------------------------------------------------------------------------------
462: END ytd_value;
463:
464: -------------------------------------------------------------------------------
518: l_result_value csr_result_value%ROWTYPE;
519: -------------------------------------------------------------------------------
520: BEGIN -- MAIN --
521: -------------------------------------------------------------------------------
522: hr_utility.set_location('py_za_tax_reg.run_result_value',1);
523: OPEN csr_result_value;
524: FETCH csr_result_value INTO l_result_value;
525: CLOSE csr_result_value;
526: --
523: OPEN csr_result_value;
524: FETCH csr_result_value INTO l_result_value;
525: CLOSE csr_result_value;
526: --
527: hr_utility.set_location('py_za_tax_reg.run_result_value',2);
528: p_run_result_id := l_result_value.run_result_id;
529: RETURN l_result_value.result_value;
530: --
531: EXCEPTION
529: RETURN l_result_value.result_value;
530: --
531: EXCEPTION
532: WHEN OTHERS THEN
533: hr_utility.set_location('py_za_tax_reg.run_result_value',3);
534: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
535: hr_utility.raise_error;
536: -------------------------------------------------------------------------------
537: END run_result_value;
530: --
531: EXCEPTION
532: WHEN OTHERS THEN
533: hr_utility.set_location('py_za_tax_reg.run_result_value',3);
534: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
535: hr_utility.raise_error;
536: -------------------------------------------------------------------------------
537: END run_result_value;
538:
531: EXCEPTION
532: WHEN OTHERS THEN
533: hr_utility.set_location('py_za_tax_reg.run_result_value',3);
534: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
535: hr_utility.raise_error;
536: -------------------------------------------------------------------------------
537: END run_result_value;
538:
539: -------------------------------------------------------------------------------
570: l_result_value csr_result_value%ROWTYPE;
571: -------------------------------------------------------------------------------
572: BEGIN -- MAIN --
573: -------------------------------------------------------------------------------
574: hr_utility.set_location('py_za_tax_reg.run_result_value',4);
575: OPEN csr_result_value;
576: FETCH csr_result_value INTO l_result_value;
577: CLOSE csr_result_value;
578: --
575: OPEN csr_result_value;
576: FETCH csr_result_value INTO l_result_value;
577: CLOSE csr_result_value;
578: --
579: hr_utility.set_location('py_za_tax_reg.run_result_value',5);
580: RETURN l_result_value.result_value;
581: --
582: EXCEPTION
583: WHEN OTHERS THEN
580: RETURN l_result_value.result_value;
581: --
582: EXCEPTION
583: WHEN OTHERS THEN
584: hr_utility.set_location('py_za_tax_reg.run_result_value',6);
585: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
586: hr_utility.raise_error;
587: -------------------------------------------------------------------------------
588: END run_result_value;
581: --
582: EXCEPTION
583: WHEN OTHERS THEN
584: hr_utility.set_location('py_za_tax_reg.run_result_value',6);
585: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
586: hr_utility.raise_error;
587: -------------------------------------------------------------------------------
588: END run_result_value;
589:
582: EXCEPTION
583: WHEN OTHERS THEN
584: hr_utility.set_location('py_za_tax_reg.run_result_value',6);
585: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
586: hr_utility.raise_error;
587: -------------------------------------------------------------------------------
588: END run_result_value;
589:
590: -------------------------------------------------------------------------------
614: --
615: -------------------------------------------------------------------------------
616: BEGIN -- MAIN --
617: -------------------------------------------------------------------------------
618: hr_utility.set_location('py_za_tax_reg.decode_lookup_code',1);
619: OPEN csr_lookup_meaning;
620: FETCH csr_lookup_meaning INTO l_meaning;
621: CLOSE csr_lookup_meaning;
622:
619: OPEN csr_lookup_meaning;
620: FETCH csr_lookup_meaning INTO l_meaning;
621: CLOSE csr_lookup_meaning;
622:
623: hr_utility.set_location('py_za_tax_reg.decode_lookup_code',2);
624: RETURN l_meaning;
625:
626: EXCEPTION
627: WHEN OTHERS THEN
624: RETURN l_meaning;
625:
626: EXCEPTION
627: WHEN OTHERS THEN
628: hr_utility.set_location('py_za_tax_reg.decode_lookup_code',3);
629: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
630: hr_utility.raise_error;
631: -------------------------------------------------------------------------------
632: END decode_lookup_code;
625:
626: EXCEPTION
627: WHEN OTHERS THEN
628: hr_utility.set_location('py_za_tax_reg.decode_lookup_code',3);
629: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
630: hr_utility.raise_error;
631: -------------------------------------------------------------------------------
632: END decode_lookup_code;
633:
626: EXCEPTION
627: WHEN OTHERS THEN
628: hr_utility.set_location('py_za_tax_reg.decode_lookup_code',3);
629: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
630: hr_utility.raise_error;
631: -------------------------------------------------------------------------------
632: END decode_lookup_code;
633:
634: -------------------------------------------------------------------------------
651:
652: -------------------------------------------------------------------------------
653: BEGIN -- MAIN --
654: -------------------------------------------------------------------------------
655: hr_utility.set_location('py_za_tax_reg.assignment_tax_sta_dir',1);
656: --
657: l_tax_status := run_result_value (
658: p_element_name => 'ZA_Tax'
659: , p_value_name => 'Tax Status'
662: );
663: --
664: l_asg_tax_status_code := l_tax_status;
665: --
666: hr_utility.set_location('py_za_tax_reg.assignment_tax_sta_dir',2);
667: --
668: l_tax_status := decode_lookup_code (
669: p_lookup_type => 'ZA_TAX_STATUS'
670: , p_lookup_code => l_tax_status
670: , p_lookup_code => l_tax_status
671: , p_application_id => 800
672: );
673: --
674: hr_utility.set_location('py_za_tax_reg.assignment_tax_sta_dir',3);
675: --
676: IF l_run_result_id IS NOT NULL THEN
677: hr_utility.set_location('py_za_tax_reg.assignment_tax_sta_dir',4);
678: -- Find the directive value for the same result id
673: --
674: hr_utility.set_location('py_za_tax_reg.assignment_tax_sta_dir',3);
675: --
676: IF l_run_result_id IS NOT NULL THEN
677: hr_utility.set_location('py_za_tax_reg.assignment_tax_sta_dir',4);
678: -- Find the directive value for the same result id
679: l_dir_value := run_result_value (
680: p_value_name => 'Tax Directive Value'
681: , p_run_result_id => l_run_result_id
681: , p_run_result_id => l_run_result_id
682: );
683: END IF;
684: --
685: hr_utility.set_location('py_za_tax_reg.assignment_tax_sta_dir',5);
686: --
687: p_asg_tax_status := l_tax_status;
688: p_asg_dir_value := l_dir_value;
689: p_asg_tax_status_code := l_asg_tax_status_code;
690:
691:
692: EXCEPTION
693: WHEN OTHERS THEN
694: hr_utility.set_location('py_za_tax_reg.assignment_tax_sta_dir',6);
695: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
696: hr_utility.raise_error;
697: -------------------------------------------------------------------------------
698: END assignment_tax_sta_dir;
691:
692: EXCEPTION
693: WHEN OTHERS THEN
694: hr_utility.set_location('py_za_tax_reg.assignment_tax_sta_dir',6);
695: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
696: hr_utility.raise_error;
697: -------------------------------------------------------------------------------
698: END assignment_tax_sta_dir;
699:
692: EXCEPTION
693: WHEN OTHERS THEN
694: hr_utility.set_location('py_za_tax_reg.assignment_tax_sta_dir',6);
695: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
696: hr_utility.raise_error;
697: -------------------------------------------------------------------------------
698: END assignment_tax_sta_dir;
699:
700: -------------------------------------------------------------------------------
743:
744: -------------------------------------------------------------------------------
745: BEGIN -- MAIN --
746: -------------------------------------------------------------------------------
747: hr_utility.set_location('py_za_tax_reg.assignment_nature',1);
748: --
749: FOR v_asg_nature IN csr_asg_nature
750: ( c_assignment_id => p_assignment_id
751: , c_effective_date => p_effective_date
761: l_nature := 'A';
762:
763: END IF;
764: --
765: hr_utility.set_location('py_za_tax_reg.assignment_nature',2);
766: --
767: p_asg_nature := l_nature;
768:
769: EXCEPTION
767: p_asg_nature := l_nature;
768:
769: EXCEPTION
770: WHEN OTHERS THEN
771: hr_utility.set_location('py_za_tax_reg.assignment_nature',3);
772: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
773: hr_utility.raise_error;
774: -------------------------------------------------------------------------------
775: END assignment_nature;
768:
769: EXCEPTION
770: WHEN OTHERS THEN
771: hr_utility.set_location('py_za_tax_reg.assignment_nature',3);
772: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
773: hr_utility.raise_error;
774: -------------------------------------------------------------------------------
775: END assignment_nature;
776:
769: EXCEPTION
770: WHEN OTHERS THEN
771: hr_utility.set_location('py_za_tax_reg.assignment_nature',3);
772: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
773: hr_utility.raise_error;
774: -------------------------------------------------------------------------------
775: END assignment_nature;
776:
777: -------------------------------------------------------------------------------
791: l_balance_value NUMBER;
792: -------------------------------------------------------------------------------
793: BEGIN -- MAIN --
794: -------------------------------------------------------------------------------
795: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',1);
796: IF p_asg_tax_status = 'Seasonal Worker' THEN
797: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',2);
798: --
799: l_bal_type_id :=
793: BEGIN -- MAIN --
794: -------------------------------------------------------------------------------
795: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',1);
796: IF p_asg_tax_status = 'Seasonal Worker' THEN
797: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',2);
798: --
799: l_bal_type_id :=
800: balance_id (
801: p_balance_name => 'Total Seasonal Workers Days Worked'
799: l_bal_type_id :=
800: balance_id (
801: p_balance_name => 'Total Seasonal Workers Days Worked'
802: );
803: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',3);
804: l_balance_value :=
805: ytd_value (
806: p_asg_action_id => p_asg_action_id
807: , p_balance_type_id => l_bal_type_id
808: , p_effective_date => p_effective_date
809: );
810: END IF;
811:
812: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',4);
813: zvl(l_balance_value);
814: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',5);
815: -- Return
816: RETURN l_balance_value;
810: END IF;
811:
812: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',4);
813: zvl(l_balance_value);
814: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',5);
815: -- Return
816: RETURN l_balance_value;
817:
818: EXCEPTION
816: RETURN l_balance_value;
817:
818: EXCEPTION
819: WHEN OTHERS THEN
820: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',6);
821: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
822: hr_utility.raise_error;
823: -------------------------------------------------------------------------------
824: END assignment_dys_worked;
817:
818: EXCEPTION
819: WHEN OTHERS THEN
820: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',6);
821: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
822: hr_utility.raise_error;
823: -------------------------------------------------------------------------------
824: END assignment_dys_worked;
825:
818: EXCEPTION
819: WHEN OTHERS THEN
820: hr_utility.set_location('py_za_tax_reg.assignment_dys_worked',6);
821: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
822: hr_utility.raise_error;
823: -------------------------------------------------------------------------------
824: END assignment_dys_worked;
825:
826: -------------------------------------------------------------------------------
849: l_date per_all_assignments_f.effective_start_date%TYPE;
850: -------------------------------------------------------------------------------
851: BEGIN -- MAIN --
852: -------------------------------------------------------------------------------
853: hr_utility.set_location('py_za_tax_reg.assignment_start_date',1);
854: OPEN csr_assignment_start_date;
855: FETCH csr_assignment_start_date INTO l_date;
856: CLOSE csr_assignment_start_date;
857:
854: OPEN csr_assignment_start_date;
855: FETCH csr_assignment_start_date INTO l_date;
856: CLOSE csr_assignment_start_date;
857:
858: hr_utility.set_location('py_za_tax_reg.assignment_start_date',2);
859: RETURN l_date;
860:
861: EXCEPTION
862: WHEN OTHERS THEN
859: RETURN l_date;
860:
861: EXCEPTION
862: WHEN OTHERS THEN
863: hr_utility.set_location('py_za_tax_reg.assignment_start_date',3);
864: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
865: hr_utility.raise_error;
866: -------------------------------------------------------------------------------
867: END assignment_start_date;
860:
861: EXCEPTION
862: WHEN OTHERS THEN
863: hr_utility.set_location('py_za_tax_reg.assignment_start_date',3);
864: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
865: hr_utility.raise_error;
866: -------------------------------------------------------------------------------
867: END assignment_start_date;
868:
861: EXCEPTION
862: WHEN OTHERS THEN
863: hr_utility.set_location('py_za_tax_reg.assignment_start_date',3);
864: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
865: hr_utility.raise_error;
866: -------------------------------------------------------------------------------
867: END assignment_start_date;
868:
869: -------------------------------------------------------------------------------
892: l_date per_all_assignments_f.effective_start_date%TYPE;
893: -------------------------------------------------------------------------------
894: BEGIN -- MAIN --
895: -------------------------------------------------------------------------------
896: hr_utility.set_location('py_za_tax_reg.assignment_end_date',1);
897:
898: OPEN csr_assignment_end_date;
899: FETCH csr_assignment_end_date INTO l_date;
900: CLOSE csr_assignment_end_date;
898: OPEN csr_assignment_end_date;
899: FETCH csr_assignment_end_date INTO l_date;
900: CLOSE csr_assignment_end_date;
901:
902: hr_utility.set_location('py_za_tax_reg.assignment_end_date',2);
903: RETURN l_date;
904:
905: EXCEPTION
906: WHEN OTHERS THEN
903: RETURN l_date;
904:
905: EXCEPTION
906: WHEN OTHERS THEN
907: hr_utility.set_location('py_za_tax_reg.assignment_end_date',3);
908: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
909: hr_utility.raise_error;
910: -------------------------------------------------------------------------------
911: END assignment_end_date;
904:
905: EXCEPTION
906: WHEN OTHERS THEN
907: hr_utility.set_location('py_za_tax_reg.assignment_end_date',3);
908: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
909: hr_utility.raise_error;
910: -------------------------------------------------------------------------------
911: END assignment_end_date;
912:
905: EXCEPTION
906: WHEN OTHERS THEN
907: hr_utility.set_location('py_za_tax_reg.assignment_end_date',3);
908: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
909: hr_utility.raise_error;
910: -------------------------------------------------------------------------------
911: END assignment_end_date;
912:
913: -------------------------------------------------------------------------------
927: --
928: -------------------------------------------------------------------------------
929: BEGIN -- MAIN --
930: -------------------------------------------------------------------------------
931: hr_utility.set_location('py_za_tax_reg.include_assignment',1);
932: --
933: p_asg_end_date := assignment_end_date (p_assignment_id => p_asg_id);
934: -- Include ALL Assignments
935: --
933: p_asg_end_date := assignment_end_date (p_assignment_id => p_asg_id);
934: -- Include ALL Assignments
935: --
936: IF g_include_asg = 'A' THEN
937: hr_utility.set_location('py_za_tax_reg.include_assignment',2);
938: --
939: l_include := TRUE;
940: -- Include Terminated Assignments ONLY
941: --
939: l_include := TRUE;
940: -- Include Terminated Assignments ONLY
941: --
942: ELSIF g_include_asg = 'T' THEN
943: hr_utility.set_location('py_za_tax_reg.include_assignment',3);
944: --
945: IF p_asg_end_date < g_period_end_date THEN
946: hr_utility.set_location('py_za_tax_reg.include_assignment',4);
947: l_include := TRUE;
942: ELSIF g_include_asg = 'T' THEN
943: hr_utility.set_location('py_za_tax_reg.include_assignment',3);
944: --
945: IF p_asg_end_date < g_period_end_date THEN
946: hr_utility.set_location('py_za_tax_reg.include_assignment',4);
947: l_include := TRUE;
948: ELSE
949: hr_utility.set_location('py_za_tax_reg.include_assignment',5);
950: l_include := FALSE;
945: IF p_asg_end_date < g_period_end_date THEN
946: hr_utility.set_location('py_za_tax_reg.include_assignment',4);
947: l_include := TRUE;
948: ELSE
949: hr_utility.set_location('py_za_tax_reg.include_assignment',5);
950: l_include := FALSE;
951: END IF;
952: -- Include Current Assignments ONLY
953: --
951: END IF;
952: -- Include Current Assignments ONLY
953: --
954: ELSIF g_include_asg = 'C' THEN
955: hr_utility.set_location('py_za_tax_reg.include_assignment',6);
956: --
957: IF p_asg_end_date >= g_period_end_date THEN
958: hr_utility.set_location('py_za_tax_reg.include_assignment',7);
959: l_include := TRUE;
954: ELSIF g_include_asg = 'C' THEN
955: hr_utility.set_location('py_za_tax_reg.include_assignment',6);
956: --
957: IF p_asg_end_date >= g_period_end_date THEN
958: hr_utility.set_location('py_za_tax_reg.include_assignment',7);
959: l_include := TRUE;
960: ELSE
961: hr_utility.set_location('py_za_tax_reg.include_assignment',8);
962: l_include := FALSE;
957: IF p_asg_end_date >= g_period_end_date THEN
958: hr_utility.set_location('py_za_tax_reg.include_assignment',7);
959: l_include := TRUE;
960: ELSE
961: hr_utility.set_location('py_za_tax_reg.include_assignment',8);
962: l_include := FALSE;
963: END IF;
964: END IF;
965:
968: -- it's on or after the period end date
969: -- this will indicate a non terminated assignment
970: --
971: IF p_asg_end_date >= g_period_end_date THEN
972: hr_utility.set_location('py_za_tax_reg.include_assignment',9);
973: p_asg_end_date := NULL;
974: END IF;
975:
976: IF l_include THEN
973: p_asg_end_date := NULL;
974: END IF;
975:
976: IF l_include THEN
977: hr_utility.set_location('py_za_tax_reg.include_assignment',10);
978: p_asg_start_date := assignment_start_date (p_assignment_id => p_asg_id);
979: END IF;
980:
981: hr_utility.set_location('py_za_tax_reg.include_assignment',11);
977: hr_utility.set_location('py_za_tax_reg.include_assignment',10);
978: p_asg_start_date := assignment_start_date (p_assignment_id => p_asg_id);
979: END IF;
980:
981: hr_utility.set_location('py_za_tax_reg.include_assignment',11);
982: RETURN l_include;
983:
984: EXCEPTION
985: WHEN OTHERS THEN
982: RETURN l_include;
983:
984: EXCEPTION
985: WHEN OTHERS THEN
986: hr_utility.set_location('py_za_tax_reg.include_assignment',12);
987: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
988: hr_utility.raise_error;
989: -------------------------------------------------------------------------------
990: END include_assignment;
983:
984: EXCEPTION
985: WHEN OTHERS THEN
986: hr_utility.set_location('py_za_tax_reg.include_assignment',12);
987: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
988: hr_utility.raise_error;
989: -------------------------------------------------------------------------------
990: END include_assignment;
991:
984: EXCEPTION
985: WHEN OTHERS THEN
986: hr_utility.set_location('py_za_tax_reg.include_assignment',12);
987: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
988: hr_utility.raise_error;
989: -------------------------------------------------------------------------------
990: END include_assignment;
991:
992: -------------------------------------------------------------------------------
1031: l_include := 'N';
1032: END IF;
1033: END IF;
1034:
1035: hr_utility.set_location('py_za_tax_reg.include_assignment',1);
1036: RETURN l_include;
1037:
1038: EXCEPTION
1039: WHEN OTHERS THEN
1036: RETURN l_include;
1037:
1038: EXCEPTION
1039: WHEN OTHERS THEN
1040: hr_utility.set_location('py_za_tax_reg.include_assignment',2);
1041: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1042: hr_utility.raise_error;
1043: -------------------------------------------------------------------------------
1044: END include_assignment;
1037:
1038: EXCEPTION
1039: WHEN OTHERS THEN
1040: hr_utility.set_location('py_za_tax_reg.include_assignment',2);
1041: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1042: hr_utility.raise_error;
1043: -------------------------------------------------------------------------------
1044: END include_assignment;
1045:
1038: EXCEPTION
1039: WHEN OTHERS THEN
1040: hr_utility.set_location('py_za_tax_reg.include_assignment',2);
1041: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1042: hr_utility.raise_error;
1043: -------------------------------------------------------------------------------
1044: END include_assignment;
1045:
1046: -------------------------------------------------------------------------------
1066:
1067: -------------------------------------------------------------------------------
1068: BEGIN -- MAIN --
1069: -------------------------------------------------------------------------------
1070: hr_utility.set_location('py_za_tax_reg.total_employees',1);
1071:
1072: OPEN csr_total_employees;
1073: FETCH csr_total_employees INTO l_tot_employees;
1074: CLOSE csr_total_employees;
1072: OPEN csr_total_employees;
1073: FETCH csr_total_employees INTO l_tot_employees;
1074: CLOSE csr_total_employees;
1075:
1076: hr_utility.set_location('py_za_tax_reg.total_employees',2);
1077: RETURN l_tot_employees;
1078:
1079: EXCEPTION
1080: WHEN OTHERS THEN
1077: RETURN l_tot_employees;
1078:
1079: EXCEPTION
1080: WHEN OTHERS THEN
1081: hr_utility.set_location('py_za_tax_reg.total_employees',3);
1082: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1083: hr_utility.raise_error;
1084: -------------------------------------------------------------------------------
1085: END total_employees;
1078:
1079: EXCEPTION
1080: WHEN OTHERS THEN
1081: hr_utility.set_location('py_za_tax_reg.total_employees',3);
1082: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1083: hr_utility.raise_error;
1084: -------------------------------------------------------------------------------
1085: END total_employees;
1086:
1079: EXCEPTION
1080: WHEN OTHERS THEN
1081: hr_utility.set_location('py_za_tax_reg.total_employees',3);
1082: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1083: hr_utility.raise_error;
1084: -------------------------------------------------------------------------------
1085: END total_employees;
1086:
1087: -------------------------------------------------------------------------------
1107:
1108: -------------------------------------------------------------------------------
1109: BEGIN -- MAIN --
1110: -------------------------------------------------------------------------------
1111: hr_utility.set_location('py_za_tax_reg.total_assignments',1);
1112:
1113: OPEN csr_total_assignments;
1114: FETCH csr_total_assignments INTO l_tot_assignments;
1115: CLOSE csr_total_assignments;
1113: OPEN csr_total_assignments;
1114: FETCH csr_total_assignments INTO l_tot_assignments;
1115: CLOSE csr_total_assignments;
1116:
1117: hr_utility.set_location('py_za_tax_reg.total_assignments',2);
1118: RETURN l_tot_assignments;
1119:
1120: EXCEPTION
1121: WHEN OTHERS THEN
1118: RETURN l_tot_assignments;
1119:
1120: EXCEPTION
1121: WHEN OTHERS THEN
1122: hr_utility.set_location('py_za_tax_reg.total_assignments',3);
1123: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1124: hr_utility.raise_error;
1125: -------------------------------------------------------------------------------
1126: END total_assignments;
1119:
1120: EXCEPTION
1121: WHEN OTHERS THEN
1122: hr_utility.set_location('py_za_tax_reg.total_assignments',3);
1123: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1124: hr_utility.raise_error;
1125: -------------------------------------------------------------------------------
1126: END total_assignments;
1127:
1120: EXCEPTION
1121: WHEN OTHERS THEN
1122: hr_utility.set_location('py_za_tax_reg.total_assignments',3);
1123: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1124: hr_utility.raise_error;
1125: -------------------------------------------------------------------------------
1126: END total_assignments;
1127:
1128:
1166: --
1167: -------------------------------------------------------------------------------
1168: BEGIN -- MAIN --
1169: -------------------------------------------------------------------------------
1170: hr_utility.set_location('py_za_tax_reg.set_period_details',1);
1171: IF g_start_period_id IS NULL THEN
1172: hr_utility.set_location('py_za_tax_reg.set_period_details',2);
1173:
1174: OPEN csr_min_time_period;
1168: BEGIN -- MAIN --
1169: -------------------------------------------------------------------------------
1170: hr_utility.set_location('py_za_tax_reg.set_period_details',1);
1171: IF g_start_period_id IS NULL THEN
1172: hr_utility.set_location('py_za_tax_reg.set_period_details',2);
1173:
1174: OPEN csr_min_time_period;
1175: FETCH csr_min_time_period INTO l_min_period_id;
1176: CLOSE csr_min_time_period;
1177:
1178: g_start_period_id := l_min_period_id;
1179: END IF;
1180: --
1181: hr_utility.set_location('py_za_tax_reg.set_period_details',3);
1182: --
1183: OPEN csr_period_details;
1184: FETCH csr_period_details INTO l_period_info;
1185: CLOSE csr_period_details;
1183: OPEN csr_period_details;
1184: FETCH csr_period_details INTO l_period_info;
1185: CLOSE csr_period_details;
1186: --
1187: hr_utility.set_location('py_za_tax_reg.set_period_details',4);
1188: --
1189: g_period_num := l_period_info.period_num;
1190: g_period_start_date := l_period_info.start_date;
1191: g_period_end_date := l_period_info.end_date;
1189: g_period_num := l_period_info.period_num;
1190: g_period_start_date := l_period_info.start_date;
1191: g_period_end_date := l_period_info.end_date;
1192: --
1193: hr_utility.set_location('py_za_tax_reg.set_period_details',5);
1194:
1195: EXCEPTION
1196: WHEN OTHERS THEN
1197: hr_utility.set_location('py_za_tax_reg.set_period_details',6);
1193: hr_utility.set_location('py_za_tax_reg.set_period_details',5);
1194:
1195: EXCEPTION
1196: WHEN OTHERS THEN
1197: hr_utility.set_location('py_za_tax_reg.set_period_details',6);
1198: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1199: hr_utility.raise_error;
1200: -------------------------------------------------------------------------------
1201: END set_period_details;
1194:
1195: EXCEPTION
1196: WHEN OTHERS THEN
1197: hr_utility.set_location('py_za_tax_reg.set_period_details',6);
1198: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1199: hr_utility.raise_error;
1200: -------------------------------------------------------------------------------
1201: END set_period_details;
1202:
1195: EXCEPTION
1196: WHEN OTHERS THEN
1197: hr_utility.set_location('py_za_tax_reg.set_period_details',6);
1198: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1199: hr_utility.raise_error;
1200: -------------------------------------------------------------------------------
1201: END set_period_details;
1202:
1203:
1226: --
1227: -------------------------------------------------------------------------------
1228: BEGIN -- MAIN --
1229: -------------------------------------------------------------------------------
1230: hr_utility.set_location('py_za_tax_reg.set_payroll_details',1);
1231:
1232: OPEN csr_payroll_name;
1233: FETCH csr_payroll_name INTO g_payroll_name;
1234: CLOSE csr_payroll_name;
1232: OPEN csr_payroll_name;
1233: FETCH csr_payroll_name INTO g_payroll_name;
1234: CLOSE csr_payroll_name;
1235:
1236: hr_utility.set_location('py_za_tax_reg.set_payroll_details',2);
1237:
1238: EXCEPTION
1239: WHEN OTHERS THEN
1240: hr_utility.set_location('py_za_tax_reg.set_payroll_details',3);
1236: hr_utility.set_location('py_za_tax_reg.set_payroll_details',2);
1237:
1238: EXCEPTION
1239: WHEN OTHERS THEN
1240: hr_utility.set_location('py_za_tax_reg.set_payroll_details',3);
1241: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1242: hr_utility.raise_error;
1243: -------------------------------------------------------------------------------
1244: END set_payroll_details;
1237:
1238: EXCEPTION
1239: WHEN OTHERS THEN
1240: hr_utility.set_location('py_za_tax_reg.set_payroll_details',3);
1241: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1242: hr_utility.raise_error;
1243: -------------------------------------------------------------------------------
1244: END set_payroll_details;
1245:
1238: EXCEPTION
1239: WHEN OTHERS THEN
1240: hr_utility.set_location('py_za_tax_reg.set_payroll_details',3);
1241: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1242: hr_utility.raise_error;
1243: -------------------------------------------------------------------------------
1244: END set_payroll_details;
1245:
1246: -------------------------------------------------------------------------------
1278: l_tax_year VARCHAR2(10); -- Bug 13367825
1279: -------------------------------------------------------------------------------
1280: BEGIN -- MAIN --
1281: -------------------------------------------------------------------------------
1282: hr_utility.set_location('py_za_tax_reg.set_globals',1);
1283: --
1284: -- Bug 13367825
1285: OPEN csr_tax_year;
1286: FETCH csr_tax_year INTO l_tax_year;
1293: g_tax_register_id
1294: FROM
1295: dual;
1296: --
1297: hr_utility.set_location('py_za_tax_reg.set_globals',2);
1298: --
1299: g_payroll_id := p_payroll_id;
1300: g_start_period_id := p_start_period_id;
1301: g_end_period_id := p_end_period_id;
1301: g_end_period_id := p_end_period_id;
1302: g_include_asg := p_include;
1303: g_tax_year := l_tax_year ; -- Bug 13367825
1304: --
1305: hr_utility.set_location('py_za_tax_reg.set_globals',3);
1306: --
1307: IF p_retrieve_ptd = 'Y' THEN
1308: hr_utility.set_location('py_za_tax_reg.set_globals',4);
1309: g_retrieve_ptd := TRUE;
1304: --
1305: hr_utility.set_location('py_za_tax_reg.set_globals',3);
1306: --
1307: IF p_retrieve_ptd = 'Y' THEN
1308: hr_utility.set_location('py_za_tax_reg.set_globals',4);
1309: g_retrieve_ptd := TRUE;
1310: END IF;
1311: IF p_retrieve_mtd = 'Y' THEN
1312: hr_utility.set_location('py_za_tax_reg.set_globals',5);
1308: hr_utility.set_location('py_za_tax_reg.set_globals',4);
1309: g_retrieve_ptd := TRUE;
1310: END IF;
1311: IF p_retrieve_mtd = 'Y' THEN
1312: hr_utility.set_location('py_za_tax_reg.set_globals',5);
1313: g_retrieve_mtd := TRUE;
1314: END IF;
1315: IF p_retrieve_ytd = 'Y' THEN
1316: hr_utility.set_location('py_za_tax_reg.set_globals',6);
1312: hr_utility.set_location('py_za_tax_reg.set_globals',5);
1313: g_retrieve_mtd := TRUE;
1314: END IF;
1315: IF p_retrieve_ytd = 'Y' THEN
1316: hr_utility.set_location('py_za_tax_reg.set_globals',6);
1317: g_retrieve_ytd := TRUE;
1318: END IF;
1319: --
1320: hr_utility.set_location('py_za_tax_reg.set_globals',7);
1316: hr_utility.set_location('py_za_tax_reg.set_globals',6);
1317: g_retrieve_ytd := TRUE;
1318: END IF;
1319: --
1320: hr_utility.set_location('py_za_tax_reg.set_globals',7);
1321: --
1322: set_period_details;
1323: set_payroll_details;
1324: --set_company_details;
1322: set_period_details;
1323: set_payroll_details;
1324: --set_company_details;
1325: --
1326: hr_utility.set_location('py_za_tax_reg.set_globals',8);
1327:
1328: EXCEPTION
1329: WHEN OTHERS THEN
1330: hr_utility.set_location('py_za_tax_reg.set_globals',9);
1326: hr_utility.set_location('py_za_tax_reg.set_globals',8);
1327:
1328: EXCEPTION
1329: WHEN OTHERS THEN
1330: hr_utility.set_location('py_za_tax_reg.set_globals',9);
1331: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1332: hr_utility.raise_error;
1333: -------------------------------------------------------------------------------
1334: END set_globals;
1327:
1328: EXCEPTION
1329: WHEN OTHERS THEN
1330: hr_utility.set_location('py_za_tax_reg.set_globals',9);
1331: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1332: hr_utility.raise_error;
1333: -------------------------------------------------------------------------------
1334: END set_globals;
1335:
1328: EXCEPTION
1329: WHEN OTHERS THEN
1330: hr_utility.set_location('py_za_tax_reg.set_globals',9);
1331: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1332: hr_utility.raise_error;
1333: -------------------------------------------------------------------------------
1334: END set_globals;
1335:
1336: -------------------------------------------------------------------------------
1366: --
1367: -------------------------------------------------------------------------------
1368: BEGIN -- MAIN --
1369: -------------------------------------------------------------------------------
1370: hr_utility.set_location('py_za_tax_reg.ins_register',1);
1371: --
1372: INSERT INTO pay_za_tax_registers (
1373: tax_register_id
1374: , full_name
1415: , p_tot_mtd
1416: , p_tot_ytd
1417: );
1418: --
1419: hr_utility.set_location('py_za_tax_reg.ins_register',2);
1420: --
1421: EXCEPTION
1422: WHEN OTHERS THEN
1423: hr_utility.set_location('py_za_tax_reg.ins_register',3);
1419: hr_utility.set_location('py_za_tax_reg.ins_register',2);
1420: --
1421: EXCEPTION
1422: WHEN OTHERS THEN
1423: hr_utility.set_location('py_za_tax_reg.ins_register',3);
1424: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1425: hr_utility.raise_error;
1426: -------------------------------------------------------------------------------
1427: END ins_register;
1420: --
1421: EXCEPTION
1422: WHEN OTHERS THEN
1423: hr_utility.set_location('py_za_tax_reg.ins_register',3);
1424: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1425: hr_utility.raise_error;
1426: -------------------------------------------------------------------------------
1427: END ins_register;
1428:
1421: EXCEPTION
1422: WHEN OTHERS THEN
1423: hr_utility.set_location('py_za_tax_reg.ins_register',3);
1424: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1425: hr_utility.raise_error;
1426: -------------------------------------------------------------------------------
1427: END ins_register;
1428:
1429:
1436: AS
1437: -------------------------------------------------------------------------------
1438: BEGIN -- MAIN --
1439: -------------------------------------------------------------------------------
1440: hr_utility.set_location('py_za_tax_reg.clear_register',1);
1441: --
1442: DELETE
1443: FROM
1444: pay_za_tax_registers ztr
1444: pay_za_tax_registers ztr
1445: WHERE
1446: ztr.tax_register_id = p_id;
1447:
1448: hr_utility.set_location('py_za_tax_reg.clear_register',2);
1449:
1450: EXCEPTION
1451: WHEN OTHERS THEN
1452: hr_utility.set_location('py_za_tax_reg.clear_register',3);
1448: hr_utility.set_location('py_za_tax_reg.clear_register',2);
1449:
1450: EXCEPTION
1451: WHEN OTHERS THEN
1452: hr_utility.set_location('py_za_tax_reg.clear_register',3);
1453: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1454: hr_utility.raise_error;
1455: -------------------------------------------------------------------------------
1456: END clear_register;
1449:
1450: EXCEPTION
1451: WHEN OTHERS THEN
1452: hr_utility.set_location('py_za_tax_reg.clear_register',3);
1453: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1454: hr_utility.raise_error;
1455: -------------------------------------------------------------------------------
1456: END clear_register;
1457:
1450: EXCEPTION
1451: WHEN OTHERS THEN
1452: hr_utility.set_location('py_za_tax_reg.clear_register',3);
1453: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1454: hr_utility.raise_error;
1455: -------------------------------------------------------------------------------
1456: END clear_register;
1457:
1458: -------------------------------------------------------------------------------
1620:
1621: -------------------------------------------------------------------------------
1622: BEGIN -- Pre Process - MAIN --
1623: -------------------------------------------------------------------------------
1624: -- hr_utility.trace_on(null,'ZATAXREG');
1625: hr_utility.set_location('py_za_tax_reg.pre_process',1);
1626: --
1627: IF (p_assactid IS NULL ) THEN
1628: set_globals (
1621: -------------------------------------------------------------------------------
1622: BEGIN -- Pre Process - MAIN --
1623: -------------------------------------------------------------------------------
1624: -- hr_utility.trace_on(null,'ZATAXREG');
1625: hr_utility.set_location('py_za_tax_reg.pre_process',1);
1626: --
1627: IF (p_assactid IS NULL ) THEN
1628: set_globals (
1629: p_payroll_id => p_payroll_id
1635: , p_retrieve_ytd => p_retrieve_ytd
1636: );
1637: END IF;
1638: --
1639: hr_utility.set_location('py_za_tax_reg.pre_process',2);
1640: ------------------------
1641: <
1642: ------------------------
1643: FOR v_assignments IN csr_processed_assignments
1646: , p_end_period_id => g_end_period_id
1647: , p_asg_id => p_assignment_id
1648: )
1649: LOOP
1650: hr_utility.set_location('py_za_tax_reg.pre_process',3);
1651: --
1652: IF include_assignment (
1653: p_asg_id => v_assignments.assignment_id
1654: , p_asg_start_date => l_asg_start_date
1654: , p_asg_start_date => l_asg_start_date
1655: , p_asg_end_date => l_asg_end_date
1656: )
1657: THEN
1658: hr_utility.set_location('py_za_tax_reg.pre_process',4);
1659: -- get assignment's tax status and directive value
1660: assignment_tax_sta_dir (
1661: p_assignment_id => v_assignments.assignment_id
1662: , p_asg_tax_status => l_asg_tax_status
1670: , p_effective_date => v_assignments.effective_date
1671: , p_asg_nature => l_nature
1672: );
1673: --
1674: hr_utility.set_location('py_za_tax_reg.pre_process',6);
1675: -- get assignment's seasonal days worked
1676: l_asg_dys_worked :=
1677: assignment_dys_worked (
1678: p_asg_tax_status => l_asg_tax_status
1679: , p_asg_action_id => v_assignments.assignment_action_id
1680: , p_effective_date => v_assignments.effective_date
1681: );
1682: --
1683: hr_utility.set_location('py_za_tax_reg.pre_process',7);
1684: -----------------
1685: <
1686: -----------------
1687: FOR v_bal IN csr_irp5_balances (
1691: , p_start_period_id => g_start_period_id
1692: , p_end_period_id => g_end_period_id
1693: )
1694: LOOP
1695: hr_utility.set_location('py_za_tax_reg.pre_process',8);
1696: --
1697: --get the correct SARS Code for directors and foreign income
1698: l_bal_code := py_za_tax_certificates.get_sars_code(
1699: p_sars_code => v_bal.bal_code
1709: , p_balance_name => v_bal.bal_name
1710: , p_effective_date => v_assignments.effective_date
1711: );
1712: --
1713: hr_utility.set_location('py_za_tax_reg.pre_process',9);
1714: --
1715: l_mtd_bal :=
1716: mtd_value (
1717: p_asg_action_id => v_assignments.assignment_action_id
1719: , p_balance_name => v_bal.bal_name
1720: , p_effective_date => v_assignments.effective_date
1721: );
1722: --
1723: hr_utility.set_location('py_za_tax_reg.pre_process',10);
1724: --
1725: l_ytd_bal :=
1726: ytd_value (
1727: p_asg_action_id => v_assignments.assignment_action_id
1728: , p_balance_type_id => v_bal.bal_id
1729: , p_effective_date => v_assignments.effective_date
1730: );
1731: --
1732: hr_utility.set_location('py_za_tax_reg.pre_process',11);
1733: --
1734: IF valid_record (
1735: p_ptd_bal => l_ptd_bal
1736: , p_mtd_bal => l_mtd_bal
1736: , p_mtd_bal => l_mtd_bal
1737: , p_ytd_bal => l_ytd_bal
1738: )
1739: THEN
1740: hr_utility.set_location('py_za_tax_reg.pre_process',12);
1741: -- Create the register record
1742: --
1743: if (p_assactid IS NULL ) THEN
1744: ins_register (
1800: END LOOP Balance_Values;
1801: END IF; -- Include Assignment
1802: END LOOP Processed_Assignments;
1803: --
1804: hr_utility.set_location('py_za_tax_reg.pre_process',13);
1805: ---------------------
1806: -- Set out Parameters
1807: ---------------------
1808: p_tax_register_id := g_tax_register_id;
1813: p_tot_employees := total_employees;
1814: p_tot_assignments := total_assignments;
1815: EXCEPTION
1816: WHEN OTHERS THEN
1817: hr_utility.set_location('py_za_tax_reg.pre_process',14);
1818: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1819: hr_utility.raise_error;
1820: -------------------------------------------------------------------------------
1821: END pre_process;-- END --
1814: p_tot_assignments := total_assignments;
1815: EXCEPTION
1816: WHEN OTHERS THEN
1817: hr_utility.set_location('py_za_tax_reg.pre_process',14);
1818: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1819: hr_utility.raise_error;
1820: -------------------------------------------------------------------------------
1821: END pre_process;-- END --
1822: -------------------------------------------------------------------------------
1815: EXCEPTION
1816: WHEN OTHERS THEN
1817: hr_utility.set_location('py_za_tax_reg.pre_process',14);
1818: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1819: hr_utility.raise_error;
1820: -------------------------------------------------------------------------------
1821: END pre_process;-- END --
1822: -------------------------------------------------------------------------------
1823:
1844: -------------------------------------------------------------------------------
1845: BEGIN -- MAIN --
1846: -------------------------------------------------------------------------------
1847: l_code := p_code;
1848: hr_utility.set_location('py_za_tax_reg.valid_record_01032009 code:'||p_code,1);
1849:
1850: IF nvl(
1851: to_char(
1852: nvl(
1858: )
1859: , l_check_val
1860: ) <> l_check_val
1861: THEN
1862: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',2);
1863: l_ret_val := TRUE;
1864:
1865: if l_code = 3665 then l_code := 3651;
1866: -- Bug 13367825
1874:
1875: -- g_code contains list of all codes which are valid and their descriptions
1876: if g_code.exists(l_code) then
1877: p_desc := g_code(l_code).bal_name;
1878: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',2.1);
1879: elsif g_code.exists(l_code-50) then
1880: p_desc := g_code(l_code-50).bal_name;
1881: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',2.2);
1882: else
1877: p_desc := g_code(l_code).bal_name;
1878: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',2.1);
1879: elsif g_code.exists(l_code-50) then
1880: p_desc := g_code(l_code-50).bal_name;
1881: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',2.2);
1882: else
1883: l_ret_val := FALSE;
1884: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',2.3);
1885: end if;
1880: p_desc := g_code(l_code-50).bal_name;
1881: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',2.2);
1882: else
1883: l_ret_val := FALSE;
1884: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',2.3);
1885: end if;
1886: END IF;
1887:
1888: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',3);
1884: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',2.3);
1885: end if;
1886: END IF;
1887:
1888: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',3);
1889: RETURN l_ret_val;
1890:
1891: EXCEPTION
1892: WHEN OTHERS THEN
1889: RETURN l_ret_val;
1890:
1891: EXCEPTION
1892: WHEN OTHERS THEN
1893: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',4);
1894: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1895: hr_utility.raise_error;
1896: -------------------------------------------------------------------------------
1897: END valid_record_01032009;
1890:
1891: EXCEPTION
1892: WHEN OTHERS THEN
1893: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',4);
1894: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1895: hr_utility.raise_error;
1896: -------------------------------------------------------------------------------
1897: END valid_record_01032009;
1898:
1891: EXCEPTION
1892: WHEN OTHERS THEN
1893: hr_utility.set_location('py_za_tax_reg.valid_record_01032009',4);
1894: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1895: hr_utility.raise_error;
1896: -------------------------------------------------------------------------------
1897: END valid_record_01032009;
1898:
1899:
1945:
1946: -------------------------------------------------------------------------------
1947: BEGIN -- MAIN --
1948: -------------------------------------------------------------------------------
1949: hr_utility.set_location('py_za_tax_reg.assignment_nature_01032009',1);
1950: --
1951: FOR v_asg_nature IN csr_asg_nature
1952: ( c_assignment_id => p_assignment_id
1953: , c_effective_date => p_effective_date
1964: l_nature := 'A';
1965:
1966: END IF;
1967: --
1968: hr_utility.set_location('py_za_tax_reg.assignment_nature_01032009',2);
1969: --
1970: p_asg_nature := l_nature;
1971:
1972: EXCEPTION
1970: p_asg_nature := l_nature;
1971:
1972: EXCEPTION
1973: WHEN OTHERS THEN
1974: hr_utility.set_location('py_za_tax_reg.assignment_nature_01032009',3);
1975: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1976: hr_utility.raise_error;
1977: -------------------------------------------------------------------------------
1978: END assignment_nature_01032009;
1971:
1972: EXCEPTION
1973: WHEN OTHERS THEN
1974: hr_utility.set_location('py_za_tax_reg.assignment_nature_01032009',3);
1975: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1976: hr_utility.raise_error;
1977: -------------------------------------------------------------------------------
1978: END assignment_nature_01032009;
1979:
1972: EXCEPTION
1973: WHEN OTHERS THEN
1974: hr_utility.set_location('py_za_tax_reg.assignment_nature_01032009',3);
1975: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
1976: hr_utility.raise_error;
1977: -------------------------------------------------------------------------------
1978: END assignment_nature_01032009;
1979:
1980:
2068: end get_bal_name;
2069: -------------------------------------------------------------------------------
2070: BEGIN -- Pre Process - MAIN --
2071: -------------------------------------------------------------------------------
2072: hr_utility.set_location('Entering merge',1);
2073: hr_utility.set_location('from_code:'||from_code,1);
2074: hr_utility.set_location('to_code:'||to_code,1);
2075: if t_code_val.exists(from_code) then
2076: hr_utility.set_location('From Code exists',2);
2069: -------------------------------------------------------------------------------
2070: BEGIN -- Pre Process - MAIN --
2071: -------------------------------------------------------------------------------
2072: hr_utility.set_location('Entering merge',1);
2073: hr_utility.set_location('from_code:'||from_code,1);
2074: hr_utility.set_location('to_code:'||to_code,1);
2075: if t_code_val.exists(from_code) then
2076: hr_utility.set_location('From Code exists',2);
2077: t_code_val(from_code).included_in := to_code;
2070: BEGIN -- Pre Process - MAIN --
2071: -------------------------------------------------------------------------------
2072: hr_utility.set_location('Entering merge',1);
2073: hr_utility.set_location('from_code:'||from_code,1);
2074: hr_utility.set_location('to_code:'||to_code,1);
2075: if t_code_val.exists(from_code) then
2076: hr_utility.set_location('From Code exists',2);
2077: t_code_val(from_code).included_in := to_code;
2078: if not t_code_val.exists(to_code) then
2072: hr_utility.set_location('Entering merge',1);
2073: hr_utility.set_location('from_code:'||from_code,1);
2074: hr_utility.set_location('to_code:'||to_code,1);
2075: if t_code_val.exists(from_code) then
2076: hr_utility.set_location('From Code exists',2);
2077: t_code_val(from_code).included_in := to_code;
2078: if not t_code_val.exists(to_code) then
2079: hr_utility.set_location('To Code doesnt exists',2);
2080: t_code_val(to_code).bal_name := get_bal_name(to_code);
2075: if t_code_val.exists(from_code) then
2076: hr_utility.set_location('From Code exists',2);
2077: t_code_val(from_code).included_in := to_code;
2078: if not t_code_val.exists(to_code) then
2079: hr_utility.set_location('To Code doesnt exists',2);
2080: t_code_val(to_code).bal_name := get_bal_name(to_code);
2081: IF g_retrieve_ptd THEN
2082: t_code_val(to_code).ptd_val := 0;
2083: t_code_val(to_code).ptd_group_val := 0;
2103: IF g_retrieve_ytd then
2104: t_code_val(to_code).ytd_group_val := nvl(t_code_val( to_code).ytd_group_val,0) +
2105: nvl(t_code_val(from_code).ytd_group_val,0) ;
2106: END IF;
2107: hr_utility.set_location('After merging',5);
2108: hr_utility.set_location('t_code_val(to_code).ptd_group_val:'||t_code_val(to_code).ptd_group_val,10);
2109: hr_utility.set_location('t_code_val(to_code).mtd_group_val:'||t_code_val(to_code).mtd_group_val,10);
2110: hr_utility.set_location('t_code_val(to_code).ytd_group_val:'||t_code_val(to_code).ytd_group_val,10);
2111: end if;
2104: t_code_val(to_code).ytd_group_val := nvl(t_code_val( to_code).ytd_group_val,0) +
2105: nvl(t_code_val(from_code).ytd_group_val,0) ;
2106: END IF;
2107: hr_utility.set_location('After merging',5);
2108: hr_utility.set_location('t_code_val(to_code).ptd_group_val:'||t_code_val(to_code).ptd_group_val,10);
2109: hr_utility.set_location('t_code_val(to_code).mtd_group_val:'||t_code_val(to_code).mtd_group_val,10);
2110: hr_utility.set_location('t_code_val(to_code).ytd_group_val:'||t_code_val(to_code).ytd_group_val,10);
2111: end if;
2112: hr_utility.set_location('Exiting merge',50);
2105: nvl(t_code_val(from_code).ytd_group_val,0) ;
2106: END IF;
2107: hr_utility.set_location('After merging',5);
2108: hr_utility.set_location('t_code_val(to_code).ptd_group_val:'||t_code_val(to_code).ptd_group_val,10);
2109: hr_utility.set_location('t_code_val(to_code).mtd_group_val:'||t_code_val(to_code).mtd_group_val,10);
2110: hr_utility.set_location('t_code_val(to_code).ytd_group_val:'||t_code_val(to_code).ytd_group_val,10);
2111: end if;
2112: hr_utility.set_location('Exiting merge',50);
2113: -------------------------------------------------------------------------------
2106: END IF;
2107: hr_utility.set_location('After merging',5);
2108: hr_utility.set_location('t_code_val(to_code).ptd_group_val:'||t_code_val(to_code).ptd_group_val,10);
2109: hr_utility.set_location('t_code_val(to_code).mtd_group_val:'||t_code_val(to_code).mtd_group_val,10);
2110: hr_utility.set_location('t_code_val(to_code).ytd_group_val:'||t_code_val(to_code).ytd_group_val,10);
2111: end if;
2112: hr_utility.set_location('Exiting merge',50);
2113: -------------------------------------------------------------------------------
2114: END merge;
2108: hr_utility.set_location('t_code_val(to_code).ptd_group_val:'||t_code_val(to_code).ptd_group_val,10);
2109: hr_utility.set_location('t_code_val(to_code).mtd_group_val:'||t_code_val(to_code).mtd_group_val,10);
2110: hr_utility.set_location('t_code_val(to_code).ytd_group_val:'||t_code_val(to_code).ytd_group_val,10);
2111: end if;
2112: hr_utility.set_location('Exiting merge',50);
2113: -------------------------------------------------------------------------------
2114: END merge;
2115:
2116:
2425:
2426: -------------------------------------------------------------------------------
2427: BEGIN -- Pre Process - MAIN --
2428: -------------------------------------------------------------------------------
2429: -- hr_utility.trace_on(null,'ZATAXREG');
2430: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',1);
2431: --
2432: if (p_assactid IS NULL ) THEN
2433: set_globals (
2426: -------------------------------------------------------------------------------
2427: BEGIN -- Pre Process - MAIN --
2428: -------------------------------------------------------------------------------
2429: -- hr_utility.trace_on(null,'ZATAXREG');
2430: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',1);
2431: --
2432: if (p_assactid IS NULL ) THEN
2433: set_globals (
2434: p_payroll_id => p_payroll_id
2443: -- fetch code descriptions
2444: fetch_code_desc;
2445: --
2446: END IF;
2447: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',2);
2448: ------------------------
2449: <
2450: ------------------------
2451: FOR v_assignments IN csr_processed_assignments
2454: , p_end_period_id => g_end_period_id
2455: , p_asg_id => p_assignment_id
2456: )
2457: LOOP
2458: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',3);
2459: hr_utility.set_location('Assignment ID:'||v_assignments.assignment_id,3);
2460: hr_utility.set_location('Employee Num :'||v_assignments.employee_number,3);
2461: --
2462: IF include_assignment (
2455: , p_asg_id => p_assignment_id
2456: )
2457: LOOP
2458: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',3);
2459: hr_utility.set_location('Assignment ID:'||v_assignments.assignment_id,3);
2460: hr_utility.set_location('Employee Num :'||v_assignments.employee_number,3);
2461: --
2462: IF include_assignment (
2463: p_asg_id => v_assignments.assignment_id
2456: )
2457: LOOP
2458: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',3);
2459: hr_utility.set_location('Assignment ID:'||v_assignments.assignment_id,3);
2460: hr_utility.set_location('Employee Num :'||v_assignments.employee_number,3);
2461: --
2462: IF include_assignment (
2463: p_asg_id => v_assignments.assignment_id
2464: , p_asg_start_date => l_asg_start_date
2464: , p_asg_start_date => l_asg_start_date
2465: , p_asg_end_date => l_asg_end_date
2466: )
2467: THEN
2468: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',4);
2469: -- get assignment's tax status and directive value
2470: assignment_tax_sta_dir (
2471: p_assignment_id => v_assignments.assignment_id
2472: , p_asg_tax_status => l_asg_tax_status
2481: , p_asg_nature => l_nature
2482: , p_foreign_income => l_asg_foreign_income
2483: );
2484: --
2485: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',6);
2486: -- get assignment's seasonal days worked
2487: l_asg_dys_worked :=
2488: assignment_dys_worked (
2489: p_asg_tax_status => l_asg_tax_status
2490: , p_asg_action_id => v_assignments.assignment_action_id
2491: , p_effective_date => v_assignments.effective_date
2492: );
2493: --
2494: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',7);
2495:
2496: -----------------
2497: <
2498: -----------------
2517: , p_start_period_id => g_start_period_id
2518: , p_end_period_id => g_end_period_id
2519: )
2520: LOOP
2521: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',8);
2522: --
2523: hr_utility.set_location('Balance Type ID:'||v_bal.bal_id,8);
2524: hr_utility.set_location('Balance Name :'||v_bal.bal_name,8);
2525: hr_utility.set_location('v_assignments.action_sequence :'||v_assignments.action_sequence,8);
2519: )
2520: LOOP
2521: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',8);
2522: --
2523: hr_utility.set_location('Balance Type ID:'||v_bal.bal_id,8);
2524: hr_utility.set_location('Balance Name :'||v_bal.bal_name,8);
2525: hr_utility.set_location('v_assignments.action_sequence :'||v_assignments.action_sequence,8);
2526: hr_utility.set_location('g_start_period_id :'||g_start_period_id,8);
2527: hr_utility.set_location('g_end_period_id :'||g_end_period_id,8);
2520: LOOP
2521: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',8);
2522: --
2523: hr_utility.set_location('Balance Type ID:'||v_bal.bal_id,8);
2524: hr_utility.set_location('Balance Name :'||v_bal.bal_name,8);
2525: hr_utility.set_location('v_assignments.action_sequence :'||v_assignments.action_sequence,8);
2526: hr_utility.set_location('g_start_period_id :'||g_start_period_id,8);
2527: hr_utility.set_location('g_end_period_id :'||g_end_period_id,8);
2528: hr_utility.set_location('v_assignments.assignment_id :'||v_assignments.assignment_id,8);
2521: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',8);
2522: --
2523: hr_utility.set_location('Balance Type ID:'||v_bal.bal_id,8);
2524: hr_utility.set_location('Balance Name :'||v_bal.bal_name,8);
2525: hr_utility.set_location('v_assignments.action_sequence :'||v_assignments.action_sequence,8);
2526: hr_utility.set_location('g_start_period_id :'||g_start_period_id,8);
2527: hr_utility.set_location('g_end_period_id :'||g_end_period_id,8);
2528: hr_utility.set_location('v_assignments.assignment_id :'||v_assignments.assignment_id,8);
2529: hr_utility.set_location('v_assignments.effective_date :'||v_assignments.effective_date,8);
2522: --
2523: hr_utility.set_location('Balance Type ID:'||v_bal.bal_id,8);
2524: hr_utility.set_location('Balance Name :'||v_bal.bal_name,8);
2525: hr_utility.set_location('v_assignments.action_sequence :'||v_assignments.action_sequence,8);
2526: hr_utility.set_location('g_start_period_id :'||g_start_period_id,8);
2527: hr_utility.set_location('g_end_period_id :'||g_end_period_id,8);
2528: hr_utility.set_location('v_assignments.assignment_id :'||v_assignments.assignment_id,8);
2529: hr_utility.set_location('v_assignments.effective_date :'||v_assignments.effective_date,8);
2530:
2523: hr_utility.set_location('Balance Type ID:'||v_bal.bal_id,8);
2524: hr_utility.set_location('Balance Name :'||v_bal.bal_name,8);
2525: hr_utility.set_location('v_assignments.action_sequence :'||v_assignments.action_sequence,8);
2526: hr_utility.set_location('g_start_period_id :'||g_start_period_id,8);
2527: hr_utility.set_location('g_end_period_id :'||g_end_period_id,8);
2528: hr_utility.set_location('v_assignments.assignment_id :'||v_assignments.assignment_id,8);
2529: hr_utility.set_location('v_assignments.effective_date :'||v_assignments.effective_date,8);
2530:
2531: hr_utility.set_location('v_assignments.time_period_id :'||v_assignments.time_period_id,8);
2524: hr_utility.set_location('Balance Name :'||v_bal.bal_name,8);
2525: hr_utility.set_location('v_assignments.action_sequence :'||v_assignments.action_sequence,8);
2526: hr_utility.set_location('g_start_period_id :'||g_start_period_id,8);
2527: hr_utility.set_location('g_end_period_id :'||g_end_period_id,8);
2528: hr_utility.set_location('v_assignments.assignment_id :'||v_assignments.assignment_id,8);
2529: hr_utility.set_location('v_assignments.effective_date :'||v_assignments.effective_date,8);
2530:
2531: hr_utility.set_location('v_assignments.time_period_id :'||v_assignments.time_period_id,8);
2532: hr_utility.set_location('v_assignments.assignment_action_id :'||v_assignments.assignment_action_id,8);
2525: hr_utility.set_location('v_assignments.action_sequence :'||v_assignments.action_sequence,8);
2526: hr_utility.set_location('g_start_period_id :'||g_start_period_id,8);
2527: hr_utility.set_location('g_end_period_id :'||g_end_period_id,8);
2528: hr_utility.set_location('v_assignments.assignment_id :'||v_assignments.assignment_id,8);
2529: hr_utility.set_location('v_assignments.effective_date :'||v_assignments.effective_date,8);
2530:
2531: hr_utility.set_location('v_assignments.time_period_id :'||v_assignments.time_period_id,8);
2532: hr_utility.set_location('v_assignments.assignment_action_id :'||v_assignments.assignment_action_id,8);
2533:
2527: hr_utility.set_location('g_end_period_id :'||g_end_period_id,8);
2528: hr_utility.set_location('v_assignments.assignment_id :'||v_assignments.assignment_id,8);
2529: hr_utility.set_location('v_assignments.effective_date :'||v_assignments.effective_date,8);
2530:
2531: hr_utility.set_location('v_assignments.time_period_id :'||v_assignments.time_period_id,8);
2532: hr_utility.set_location('v_assignments.assignment_action_id :'||v_assignments.assignment_action_id,8);
2533:
2534:
2535: l_ptd_bal :=
2528: hr_utility.set_location('v_assignments.assignment_id :'||v_assignments.assignment_id,8);
2529: hr_utility.set_location('v_assignments.effective_date :'||v_assignments.effective_date,8);
2530:
2531: hr_utility.set_location('v_assignments.time_period_id :'||v_assignments.time_period_id,8);
2532: hr_utility.set_location('v_assignments.assignment_action_id :'||v_assignments.assignment_action_id,8);
2533:
2534:
2535: l_ptd_bal :=
2536: ptd_value (
2540: , p_balance_name => v_bal.bal_name
2541: , p_effective_date => v_assignments.effective_date
2542: );
2543: --
2544: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',9);
2545: --
2546: l_mtd_bal :=
2547: mtd_value (
2548: p_asg_action_id => v_assignments.assignment_action_id
2550: , p_balance_name => v_bal.bal_name
2551: , p_effective_date => v_assignments.effective_date
2552: );
2553: --
2554: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',10);
2555: --
2556: l_ytd_bal :=
2557: ytd_value (
2558: p_asg_action_id => v_assignments.assignment_action_id
2559: , p_balance_type_id => v_bal.bal_id
2560: , p_effective_date => v_assignments.effective_date
2561: );
2562: --
2563: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',11);
2564: --
2565: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',12);
2566: hr_utility.set_location('code :'||v_bal.bal_code,12);
2567: hr_utility.set_location('PTD:'||l_ptd_bal||' MTD:'||l_mtd_bal||' YTD:'||l_ytd_bal,12);
2561: );
2562: --
2563: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',11);
2564: --
2565: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',12);
2566: hr_utility.set_location('code :'||v_bal.bal_code,12);
2567: hr_utility.set_location('PTD:'||l_ptd_bal||' MTD:'||l_mtd_bal||' YTD:'||l_ytd_bal,12);
2568: t_code_val(v_bal.bal_code).bal_name := v_bal.bal_name;
2569:
2562: --
2563: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',11);
2564: --
2565: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',12);
2566: hr_utility.set_location('code :'||v_bal.bal_code,12);
2567: hr_utility.set_location('PTD:'||l_ptd_bal||' MTD:'||l_mtd_bal||' YTD:'||l_ytd_bal,12);
2568: t_code_val(v_bal.bal_code).bal_name := v_bal.bal_name;
2569:
2570: --Retrieve the value to be populated in code 4149
2563: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',11);
2564: --
2565: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',12);
2566: hr_utility.set_location('code :'||v_bal.bal_code,12);
2567: hr_utility.set_location('PTD:'||l_ptd_bal||' MTD:'||l_mtd_bal||' YTD:'||l_ytd_bal,12);
2568: t_code_val(v_bal.bal_code).bal_name := v_bal.bal_name;
2569:
2570: --Retrieve the value to be populated in code 4149
2571: --Value of Tax i.e. 4103 will be merged in code 4149 through populate_4149
2573: OR v_bal.bal_code in (4115,4141,4142) then
2574: l_4149_ptd:=l_4149_ptd + nvl(l_ptd_bal,0);
2575: l_4149_mtd:=l_4149_mtd + nvl(l_mtd_bal,0);
2576: l_4149_ytd:=l_4149_ytd + nvl(l_ytd_bal,0);
2577: hr_utility.set_location('l_4149_ptd:'||l_4149_ptd,12);
2578: hr_utility.set_location('l_4149_mtd:'||l_4149_mtd,12);
2579: hr_utility.set_location('l_4149_ytd:'||l_4149_ytd,12);
2580: end if;
2581:
2574: l_4149_ptd:=l_4149_ptd + nvl(l_ptd_bal,0);
2575: l_4149_mtd:=l_4149_mtd + nvl(l_mtd_bal,0);
2576: l_4149_ytd:=l_4149_ytd + nvl(l_ytd_bal,0);
2577: hr_utility.set_location('l_4149_ptd:'||l_4149_ptd,12);
2578: hr_utility.set_location('l_4149_mtd:'||l_4149_mtd,12);
2579: hr_utility.set_location('l_4149_ytd:'||l_4149_ytd,12);
2580: end if;
2581:
2582: /* Added for bug 9780615 */
2575: l_4149_mtd:=l_4149_mtd + nvl(l_mtd_bal,0);
2576: l_4149_ytd:=l_4149_ytd + nvl(l_ytd_bal,0);
2577: hr_utility.set_location('l_4149_ptd:'||l_4149_ptd,12);
2578: hr_utility.set_location('l_4149_mtd:'||l_4149_mtd,12);
2579: hr_utility.set_location('l_4149_ytd:'||l_4149_ytd,12);
2580: end if;
2581:
2582: /* Added for bug 9780615 */
2583:
2584: if v_bal.bal_name in ('PAYE') then
2585: l_4102_ptd:= nvl(l_ptd_bal,0);
2586: l_4102_mtd:= nvl(l_mtd_bal,0);
2587: l_4102_ytd:= nvl(l_ytd_bal,0);
2588: hr_utility.set_location('l_4102_ptd:'||l_4102_ptd,12);
2589: hr_utility.set_location('l_4102_mtd:'||l_4102_mtd,12);
2590: hr_utility.set_location('l_4102_ytd:'||l_4102_ytd,12);
2591: end if;
2592:
2585: l_4102_ptd:= nvl(l_ptd_bal,0);
2586: l_4102_mtd:= nvl(l_mtd_bal,0);
2587: l_4102_ytd:= nvl(l_ytd_bal,0);
2588: hr_utility.set_location('l_4102_ptd:'||l_4102_ptd,12);
2589: hr_utility.set_location('l_4102_mtd:'||l_4102_mtd,12);
2590: hr_utility.set_location('l_4102_ytd:'||l_4102_ytd,12);
2591: end if;
2592:
2593: -- Bug#13924112
2586: l_4102_mtd:= nvl(l_mtd_bal,0);
2587: l_4102_ytd:= nvl(l_ytd_bal,0);
2588: hr_utility.set_location('l_4102_ptd:'||l_4102_ptd,12);
2589: hr_utility.set_location('l_4102_mtd:'||l_4102_mtd,12);
2590: hr_utility.set_location('l_4102_ytd:'||l_4102_ytd,12);
2591: end if;
2592:
2593: -- Bug#13924112
2594: -- Adding Tax Code 3696 To TAX REGISTER REPORT
2595: if v_bal.bal_code in (3602,3652,3703,3753,3714,3764,3908) or (v_bal.bal_code in (3922) and v_bal.bal_name in ('Comp iro Death Non Taxable')) then
2596: l_3696_ptd:=l_3696_ptd + nvl(l_ptd_bal,0);
2597: l_3696_mtd:=l_3696_mtd + nvl(l_mtd_bal,0);
2598: l_3696_ytd:=l_3696_ytd + nvl(l_ytd_bal,0);
2599: hr_utility.set_location('l_3696_ptd:'||l_3696_ptd,12);
2600: hr_utility.set_location('l_3696_mtd:'||l_3696_mtd,12);
2601: hr_utility.set_location('l_3696_ytd:'||l_3696_ytd,12);
2602: end if;
2603: -- End Bug#13924112
2596: l_3696_ptd:=l_3696_ptd + nvl(l_ptd_bal,0);
2597: l_3696_mtd:=l_3696_mtd + nvl(l_mtd_bal,0);
2598: l_3696_ytd:=l_3696_ytd + nvl(l_ytd_bal,0);
2599: hr_utility.set_location('l_3696_ptd:'||l_3696_ptd,12);
2600: hr_utility.set_location('l_3696_mtd:'||l_3696_mtd,12);
2601: hr_utility.set_location('l_3696_ytd:'||l_3696_ytd,12);
2602: end if;
2603: -- End Bug#13924112
2604: if t_code_val.exists(v_bal.bal_code) then
2597: l_3696_mtd:=l_3696_mtd + nvl(l_mtd_bal,0);
2598: l_3696_ytd:=l_3696_ytd + nvl(l_ytd_bal,0);
2599: hr_utility.set_location('l_3696_ptd:'||l_3696_ptd,12);
2600: hr_utility.set_location('l_3696_mtd:'||l_3696_mtd,12);
2601: hr_utility.set_location('l_3696_ytd:'||l_3696_ytd,12);
2602: end if;
2603: -- End Bug#13924112
2604: if t_code_val.exists(v_bal.bal_code) then
2605: hr_utility.set_location('Code'||v_bal.bal_code||' exists',12);
2601: hr_utility.set_location('l_3696_ytd:'||l_3696_ytd,12);
2602: end if;
2603: -- End Bug#13924112
2604: if t_code_val.exists(v_bal.bal_code) then
2605: hr_utility.set_location('Code'||v_bal.bal_code||' exists',12);
2606: t_code_val(v_bal.bal_code).ptd_val := nvl(t_code_val(v_bal.bal_code).ptd_val,0) + nvl(l_ptd_bal,0);
2607: t_code_val(v_bal.bal_code).mtd_val := nvl(t_code_val(v_bal.bal_code).mtd_val,0) + nvl(l_mtd_bal,0);
2608: t_code_val(v_bal.bal_code).ytd_val := nvl(t_code_val(v_bal.bal_code).ytd_val,0) + nvl(l_ytd_bal,0);
2609: else
2606: t_code_val(v_bal.bal_code).ptd_val := nvl(t_code_val(v_bal.bal_code).ptd_val,0) + nvl(l_ptd_bal,0);
2607: t_code_val(v_bal.bal_code).mtd_val := nvl(t_code_val(v_bal.bal_code).mtd_val,0) + nvl(l_mtd_bal,0);
2608: t_code_val(v_bal.bal_code).ytd_val := nvl(t_code_val(v_bal.bal_code).ytd_val,0) + nvl(l_ytd_bal,0);
2609: else
2610: hr_utility.set_location('Code' ||v_bal.bal_code||' does not exists',12);
2611: t_code_val(v_bal.bal_code).ptd_val := l_ptd_bal;
2612: t_code_val(v_bal.bal_code).mtd_val := l_mtd_bal;
2613: t_code_val(v_bal.bal_code).ytd_val := l_ytd_bal;
2614: end if;
2614: end if;
2615: t_code_val(v_bal.bal_code).ptd_group_val := t_code_val(v_bal.bal_code).ptd_val;
2616: t_code_val(v_bal.bal_code).mtd_group_val := t_code_val(v_bal.bal_code).mtd_val;
2617: t_code_val(v_bal.bal_code).ytd_group_val := t_code_val(v_bal.bal_code).ytd_val;
2618: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_val:'||t_code_val(v_bal.bal_code).ptd_val,12);
2619: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_val:'||t_code_val(v_bal.bal_code).mtd_val,12);
2620: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_val:'||t_code_val(v_bal.bal_code).ytd_val,12);
2621: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_group_val:'||t_code_val(v_bal.bal_code).ptd_group_val,12);
2622: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_group_val:'||t_code_val(v_bal.bal_code).mtd_group_val,12);
2615: t_code_val(v_bal.bal_code).ptd_group_val := t_code_val(v_bal.bal_code).ptd_val;
2616: t_code_val(v_bal.bal_code).mtd_group_val := t_code_val(v_bal.bal_code).mtd_val;
2617: t_code_val(v_bal.bal_code).ytd_group_val := t_code_val(v_bal.bal_code).ytd_val;
2618: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_val:'||t_code_val(v_bal.bal_code).ptd_val,12);
2619: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_val:'||t_code_val(v_bal.bal_code).mtd_val,12);
2620: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_val:'||t_code_val(v_bal.bal_code).ytd_val,12);
2621: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_group_val:'||t_code_val(v_bal.bal_code).ptd_group_val,12);
2622: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_group_val:'||t_code_val(v_bal.bal_code).mtd_group_val,12);
2623: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_group_val:'||t_code_val(v_bal.bal_code).ytd_group_val,12);
2616: t_code_val(v_bal.bal_code).mtd_group_val := t_code_val(v_bal.bal_code).mtd_val;
2617: t_code_val(v_bal.bal_code).ytd_group_val := t_code_val(v_bal.bal_code).ytd_val;
2618: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_val:'||t_code_val(v_bal.bal_code).ptd_val,12);
2619: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_val:'||t_code_val(v_bal.bal_code).mtd_val,12);
2620: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_val:'||t_code_val(v_bal.bal_code).ytd_val,12);
2621: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_group_val:'||t_code_val(v_bal.bal_code).ptd_group_val,12);
2622: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_group_val:'||t_code_val(v_bal.bal_code).mtd_group_val,12);
2623: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_group_val:'||t_code_val(v_bal.bal_code).ytd_group_val,12);
2624:
2617: t_code_val(v_bal.bal_code).ytd_group_val := t_code_val(v_bal.bal_code).ytd_val;
2618: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_val:'||t_code_val(v_bal.bal_code).ptd_val,12);
2619: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_val:'||t_code_val(v_bal.bal_code).mtd_val,12);
2620: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_val:'||t_code_val(v_bal.bal_code).ytd_val,12);
2621: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_group_val:'||t_code_val(v_bal.bal_code).ptd_group_val,12);
2622: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_group_val:'||t_code_val(v_bal.bal_code).mtd_group_val,12);
2623: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_group_val:'||t_code_val(v_bal.bal_code).ytd_group_val,12);
2624:
2625: END LOOP Balance_Values;
2618: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_val:'||t_code_val(v_bal.bal_code).ptd_val,12);
2619: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_val:'||t_code_val(v_bal.bal_code).mtd_val,12);
2620: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_val:'||t_code_val(v_bal.bal_code).ytd_val,12);
2621: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_group_val:'||t_code_val(v_bal.bal_code).ptd_group_val,12);
2622: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_group_val:'||t_code_val(v_bal.bal_code).mtd_group_val,12);
2623: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_group_val:'||t_code_val(v_bal.bal_code).ytd_group_val,12);
2624:
2625: END LOOP Balance_Values;
2626:
2619: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_val:'||t_code_val(v_bal.bal_code).mtd_val,12);
2620: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_val:'||t_code_val(v_bal.bal_code).ytd_val,12);
2621: hr_utility.set_location('t_code_val(v_bal.bal_code).ptd_group_val:'||t_code_val(v_bal.bal_code).ptd_group_val,12);
2622: hr_utility.set_location('t_code_val(v_bal.bal_code).mtd_group_val:'||t_code_val(v_bal.bal_code).mtd_group_val,12);
2623: hr_utility.set_location('t_code_val(v_bal.bal_code).ytd_group_val:'||t_code_val(v_bal.bal_code).ytd_group_val,12);
2624:
2625: END LOOP Balance_Values;
2626:
2627: -- Merge codes
2815: -- RFI OVERRIDE FUNCTIONALITY FOR SARS REPORTING
2816:
2817: --Create the register records
2818: --
2819: hr_utility.set_location('After Merging codes',12.1);
2820: l_code := t_code_val.first;
2821: while TRIM(l_code) is not null
2822: loop
2823: zvl(t_code_val(l_code).ptd_group_val);
2822: loop
2823: zvl(t_code_val(l_code).ptd_group_val);
2824: zvl(t_code_val(l_code).mtd_group_val);
2825: zvl(t_code_val(l_code).ytd_group_val);
2826: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',12.2);
2827: hr_utility.set_location('Code :'||l_code||' PTD:'||t_code_val(l_code).ptd_group_val||' MTD:'||t_code_val(l_code).mtd_group_val||' YTD:'||t_code_val(l_code).ytd_group_val,12.2);
2828: IF valid_record_01032009 (
2829: p_ptd_bal => t_code_val(l_code).ptd_group_val
2830: , p_mtd_bal => t_code_val(l_code).mtd_group_val
2823: zvl(t_code_val(l_code).ptd_group_val);
2824: zvl(t_code_val(l_code).mtd_group_val);
2825: zvl(t_code_val(l_code).ytd_group_val);
2826: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',12.2);
2827: hr_utility.set_location('Code :'||l_code||' PTD:'||t_code_val(l_code).ptd_group_val||' MTD:'||t_code_val(l_code).mtd_group_val||' YTD:'||t_code_val(l_code).ytd_group_val,12.2);
2828: IF valid_record_01032009 (
2829: p_ptd_bal => t_code_val(l_code).ptd_group_val
2830: , p_mtd_bal => t_code_val(l_code).mtd_group_val
2831: , p_ytd_bal => t_code_val(l_code).ytd_group_val
2834: )
2835: THEN
2836: --
2837: --get the correct SARS Code for directors and foreign income
2838: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',12.3);
2839: l_bal_code := get_sars_code(
2840: p_sars_code => l_code
2841: , p_foreign_income => l_asg_foreign_income
2842: , p_nature => l_nature
2841: , p_foreign_income => l_asg_foreign_income
2842: , p_nature => l_nature
2843: );
2844: if t_code_val(l_code).included_in is null then
2845: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',12.4);
2846: if (p_assactid IS NULL ) THEN
2847: ins_register (
2848: p_full_name => v_assignments.full_name
2849: , p_employee_number => v_assignments.employee_number
2909: end loop;
2910: END IF; -- Include Assignment
2911: END LOOP Processed_Assignments;
2912: --
2913: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',13);
2914:
2915:
2916:
2917: ---------------------
2925: p_tot_employees := total_employees;
2926: p_tot_assignments := total_assignments;
2927: EXCEPTION
2928: WHEN OTHERS THEN
2929: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',14);
2930: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
2931: hr_utility.raise_error;
2932: -------------------------------------------------------------------------------
2933: END pre_process_01032009;-- END --
2926: p_tot_assignments := total_assignments;
2927: EXCEPTION
2928: WHEN OTHERS THEN
2929: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',14);
2930: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
2931: hr_utility.raise_error;
2932: -------------------------------------------------------------------------------
2933: END pre_process_01032009;-- END --
2934: -------------------------------------------------------------------------------
2927: EXCEPTION
2928: WHEN OTHERS THEN
2929: hr_utility.set_location('py_za_tax_reg.pre_process_01032009',14);
2930: hr_utility.set_message(801,'Sql Err Code: '||TO_CHAR(SQLCODE));
2931: hr_utility.raise_error;
2932: -------------------------------------------------------------------------------
2933: END pre_process_01032009;-- END --
2934: -------------------------------------------------------------------------------
2935: