58:
59: BEGIN
60: lv_procedure_name := '.get_payroll_action_info';
61:
62: hr_utility.trace('Entering ' ||gv_package || lv_procedure_name);
63: ln_step := 1;
64: OPEN c_payroll_action_info(p_payroll_action_id);
65: FETCH c_payroll_action_info INTO ld_start_date,
66: ld_effective_date,
69: ln_legal_er_id,
70: ln_asg_set_id;
71: CLOSE c_payroll_action_info;
72:
73: hr_utility.set_location(gv_package || lv_procedure_name, 10);
74:
75: p_start_date := ld_start_date;
76: p_effective_date := ld_effective_date;
77: p_business_group_id := ln_business_group_id;
80: -- p_min_days_worked := ln_min_days;
81: p_asg_set_id := ln_asg_set_id;
82: p_batch_name := lv_batch_name;
83:
84: hr_utility.trace('Leaving ' ||gv_package || lv_procedure_name);
85:
86: EXCEPTION
87: WHEN OTHERS THEN
88: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
87: WHEN OTHERS THEN
88: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
89: gv_package || lv_procedure_name;
90:
91: hr_utility.trace(lv_error_message || '-' || SQLERRM);
92:
93: lv_error_message :=
94: pay_emp_action_arch.set_error_message(lv_error_message);
95:
92:
93: lv_error_message :=
94: pay_emp_action_arch.set_error_message(lv_error_message);
95:
96: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
97: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
98: hr_utility.raise_error;
99:
100: END get_payroll_action_info;
93: lv_error_message :=
94: pay_emp_action_arch.set_error_message(lv_error_message);
95:
96: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
97: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
98: hr_utility.raise_error;
99:
100: END get_payroll_action_info;
101:
94: pay_emp_action_arch.set_error_message(lv_error_message);
95:
96: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
97: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
98: hr_utility.raise_error;
99:
100: END get_payroll_action_info;
101:
102: -------------------------------------------------------------------------------
145: ln_days_in_year_le NUMBER;
146:
147: BEGIN
148: lv_procedure_name := '.get_capped_average_earnings';
149: hr_utility.trace('Entering ' || gv_package || lv_procedure_name);
150:
151: lv_ptu_calc_method := p_ptu_calc_method;
152: ln_days_in_year := p_days_in_year;
153: ln_business_group_id := p_business_group_id;
163: * portion of profit share based on wages.
164: */
165: IF (ln_factor_C / ln_factor_B) > ln_factor_D THEN
166:
167: hr_utility.set_location(gv_package || lv_procedure_name,10);
168: ln_factor_E := ln_factor_D;
169:
170: ELSE
171:
168: ln_factor_E := ln_factor_D;
169:
170: ELSE
171:
172: hr_utility.set_location(gv_package || lv_procedure_name,20);
173: ln_factor_E := ROUND( ln_factor_C / ln_factor_B, 4 );
174:
175: END IF;
176:
183: * number of days in the year specified at the
184: * Legal Employer level
185: */
186:
187: hr_utility.set_location(gv_package || lv_procedure_name,30);
188: pay_mx_utility.get_no_of_days_for_org
189: (ln_business_group_id,
190: ln_legal_employer_id,
191: 'LE',
192: ln_days_in_month_le,
193: ln_days_in_year_le) ;
194:
195: IF (ln_days_in_year_le <> NULL) THEN
196: hr_utility.set_location(gv_package || lv_procedure_name,40);
197: ln_days_in_year := ln_days_in_year_le;
198: END IF;
199:
200: ln_factor_D := ln_factor_D * ln_days_in_year;
197: ln_days_in_year := ln_days_in_year_le;
198: END IF;
199:
200: ln_factor_D := ln_factor_D * ln_days_in_year;
201: hr_utility.trace('ln_factor_D = ' || to_char(ln_factor_D));
202:
203: IF (ln_factor_C > ln_factor_D) THEN
204: hr_utility.set_location(gv_package || lv_procedure_name,50);
205: ln_factor_E := ln_factor_D;
200: ln_factor_D := ln_factor_D * ln_days_in_year;
201: hr_utility.trace('ln_factor_D = ' || to_char(ln_factor_D));
202:
203: IF (ln_factor_C > ln_factor_D) THEN
204: hr_utility.set_location(gv_package || lv_procedure_name,50);
205: ln_factor_E := ln_factor_D;
206: ELSE
207: hr_utility.set_location(gv_package || lv_procedure_name,60);
208: ln_factor_E := ln_factor_C;
203: IF (ln_factor_C > ln_factor_D) THEN
204: hr_utility.set_location(gv_package || lv_procedure_name,50);
205: ln_factor_E := ln_factor_D;
206: ELSE
207: hr_utility.set_location(gv_package || lv_procedure_name,60);
208: ln_factor_E := ln_factor_C;
209: END IF;
210:
211: ELSIF (lv_ptu_calc_method = 'PRORATE') THEN
219: * the limit should be adjusted to the amount that
220: * the highest paid employee would have made if he
221: * had worked the same number of days.
222: */
223: hr_utility.set_location(gv_package || lv_procedure_name,70);
224: ln_factor_D := ln_factor_D * ln_factor_B;
225: IF (ln_factor_C > ln_factor_D) THEN
226: hr_utility.set_location(gv_package || lv_procedure_name,80);
227: ln_factor_E := ln_factor_D;
222: */
223: hr_utility.set_location(gv_package || lv_procedure_name,70);
224: ln_factor_D := ln_factor_D * ln_factor_B;
225: IF (ln_factor_C > ln_factor_D) THEN
226: hr_utility.set_location(gv_package || lv_procedure_name,80);
227: ln_factor_E := ln_factor_D;
228: ELSE
229: hr_utility.set_location(gv_package || lv_procedure_name,90);
230: ln_factor_E := ln_factor_C;
225: IF (ln_factor_C > ln_factor_D) THEN
226: hr_utility.set_location(gv_package || lv_procedure_name,80);
227: ln_factor_E := ln_factor_D;
228: ELSE
229: hr_utility.set_location(gv_package || lv_procedure_name,90);
230: ln_factor_E := ln_factor_C;
231: END IF;
232:
233: END IF;
233: END IF;
234:
235: p_factor_D_used := ln_factor_D;
236: p_factor_E := ln_factor_E;
237: hr_utility.trace('p_factor_D = ' || TO_CHAR(p_factor_D));
238: hr_utility.trace('p_factor_E = ' || TO_CHAR(p_factor_E));
239: hr_utility.trace('Entering ' || gv_package || lv_procedure_name);
240: END get_capped_average_earnings;
241: /******************************************************************
234:
235: p_factor_D_used := ln_factor_D;
236: p_factor_E := ln_factor_E;
237: hr_utility.trace('p_factor_D = ' || TO_CHAR(p_factor_D));
238: hr_utility.trace('p_factor_E = ' || TO_CHAR(p_factor_E));
239: hr_utility.trace('Entering ' || gv_package || lv_procedure_name);
240: END get_capped_average_earnings;
241: /******************************************************************
242: Name : range_code
235: p_factor_D_used := ln_factor_D;
236: p_factor_E := ln_factor_E;
237: hr_utility.trace('p_factor_D = ' || TO_CHAR(p_factor_D));
238: hr_utility.trace('p_factor_E = ' || TO_CHAR(p_factor_E));
239: hr_utility.trace('Entering ' || gv_package || lv_procedure_name);
240: END get_capped_average_earnings;
241: /******************************************************************
242: Name : range_code
243: Purpose : This returns the select statement that is
270:
271: BEGIN
272: lv_procedure_name := '.range_code';
273:
274: hr_utility.trace('Entering ' || gv_package || lv_procedure_name);
275: hr_utility.set_location(gv_package || lv_procedure_name, 10);
276:
277: ln_step := 1;
278: get_payroll_action_info(p_payroll_action_id => p_payroll_action_id
271: BEGIN
272: lv_procedure_name := '.range_code';
273:
274: hr_utility.trace('Entering ' || gv_package || lv_procedure_name);
275: hr_utility.set_location(gv_package || lv_procedure_name, 10);
276:
277: ln_step := 1;
278: get_payroll_action_info(p_payroll_action_id => p_payroll_action_id
279: ,p_start_date => ld_start_date
288: -- ELSE
289: -- ln_min_days_worked := 0;
290: -- END IF;
291:
292: hr_utility.set_location(gv_package || lv_procedure_name, 20);
293:
294: ld_end_date := add_months(ld_start_date, 12) - 1;
295:
296: ln_step := 2;
369: ORDER BY paf.person_id';
370:
371: END IF; -- ln_asg_set_id is null
372:
373: hr_utility.set_location(gv_package || lv_procedure_name, 30);
374: p_sqlstr := lv_sql_string;
375: hr_utility.trace ('SQL string :' ||p_sqlstr);
376: hr_utility.set_location(gv_package || lv_procedure_name, 50);
377: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
371: END IF; -- ln_asg_set_id is null
372:
373: hr_utility.set_location(gv_package || lv_procedure_name, 30);
374: p_sqlstr := lv_sql_string;
375: hr_utility.trace ('SQL string :' ||p_sqlstr);
376: hr_utility.set_location(gv_package || lv_procedure_name, 50);
377: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
378:
379: EXCEPTION
372:
373: hr_utility.set_location(gv_package || lv_procedure_name, 30);
374: p_sqlstr := lv_sql_string;
375: hr_utility.trace ('SQL string :' ||p_sqlstr);
376: hr_utility.set_location(gv_package || lv_procedure_name, 50);
377: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
378:
379: EXCEPTION
380:
373: hr_utility.set_location(gv_package || lv_procedure_name, 30);
374: p_sqlstr := lv_sql_string;
375: hr_utility.trace ('SQL string :' ||p_sqlstr);
376: hr_utility.set_location(gv_package || lv_procedure_name, 50);
377: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
378:
379: EXCEPTION
380:
381: WHEN OTHERS THEN
381: WHEN OTHERS THEN
382: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
383: gv_package || lv_procedure_name;
384:
385: hr_utility.trace(lv_error_message || '-' || SQLERRM);
386:
387: lv_error_message :=
388: pay_emp_action_arch.set_error_message(lv_error_message);
389:
386:
387: lv_error_message :=
388: pay_emp_action_arch.set_error_message(lv_error_message);
389:
390: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
391: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
392: hr_utility.raise_error;
393:
394:
387: lv_error_message :=
388: pay_emp_action_arch.set_error_message(lv_error_message);
389:
390: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
391: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
392: hr_utility.raise_error;
393:
394:
395: END range_code;
388: pay_emp_action_arch.set_error_message(lv_error_message);
389:
390: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
391: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
392: hr_utility.raise_error;
393:
394:
395: END range_code;
396:
600: lv_EE_no per_all_people_f.employee_number%TYPE;
601:
602: BEGIN
603: lv_procedure_name := '.assignment_action_code';
604: hr_utility.trace('Entering ' || gv_package || lv_procedure_name);
605:
606: ln_person_id := -1;
607: ln_prev_person_id := -1;
608: lv_excl_flag := '-1';
607: ln_prev_person_id := -1;
608: lv_excl_flag := '-1';
609: lb_action_created := FALSE;
610:
611: hr_utility.trace('p_payroll_action_id = '|| p_payroll_action_id);
612: hr_utility.trace('p_start_person_id = '|| p_start_person_id);
613: hr_utility.trace('p_end_person_id = '|| p_end_person_id);
614: hr_utility.trace('p_chunk = '|| p_chunk);
615:
608: lv_excl_flag := '-1';
609: lb_action_created := FALSE;
610:
611: hr_utility.trace('p_payroll_action_id = '|| p_payroll_action_id);
612: hr_utility.trace('p_start_person_id = '|| p_start_person_id);
613: hr_utility.trace('p_end_person_id = '|| p_end_person_id);
614: hr_utility.trace('p_chunk = '|| p_chunk);
615:
616: ln_step := 1;
609: lb_action_created := FALSE;
610:
611: hr_utility.trace('p_payroll_action_id = '|| p_payroll_action_id);
612: hr_utility.trace('p_start_person_id = '|| p_start_person_id);
613: hr_utility.trace('p_end_person_id = '|| p_end_person_id);
614: hr_utility.trace('p_chunk = '|| p_chunk);
615:
616: ln_step := 1;
617: -- pay_emp_action_arch.gv_error_message := NULL;
610:
611: hr_utility.trace('p_payroll_action_id = '|| p_payroll_action_id);
612: hr_utility.trace('p_start_person_id = '|| p_start_person_id);
613: hr_utility.trace('p_end_person_id = '|| p_end_person_id);
614: hr_utility.trace('p_chunk = '|| p_chunk);
615:
616: ln_step := 1;
617: -- pay_emp_action_arch.gv_error_message := NULL;
618: hr_utility.set_location(gv_package || lv_procedure_name, 10);
614: hr_utility.trace('p_chunk = '|| p_chunk);
615:
616: ln_step := 1;
617: -- pay_emp_action_arch.gv_error_message := NULL;
618: hr_utility.set_location(gv_package || lv_procedure_name, 10);
619:
620: get_payroll_action_info(p_payroll_action_id => p_payroll_action_id
621: ,p_start_date => ld_start_date
622: ,p_effective_date => ld_date_earned
681: 'MX');
682:
683:
684: IF ln_min_days_worked > 0 THEN
685: hr_utility.set_location(gv_package || lv_procedure_name, 20);
686:
687: ELSE
688: hr_utility.set_location(gv_package || lv_procedure_name, 30);
689: ln_min_days_worked := 0;
684: IF ln_min_days_worked > 0 THEN
685: hr_utility.set_location(gv_package || lv_procedure_name, 20);
686:
687: ELSE
688: hr_utility.set_location(gv_package || lv_procedure_name, 30);
689: ln_min_days_worked := 0;
690: END IF;
691:
692: hr_utility.set_location(gv_package || lv_procedure_name, 40);
688: hr_utility.set_location(gv_package || lv_procedure_name, 30);
689: ln_min_days_worked := 0;
690: END IF;
691:
692: hr_utility.set_location(gv_package || lv_procedure_name, 40);
693:
694: ln_step := 3;
695: IF pay_mx_yrend_arch.g_gre_tab.count() = 0 THEN
696:
693:
694: ln_step := 3;
695: IF pay_mx_yrend_arch.g_gre_tab.count() = 0 THEN
696:
697: hr_utility.set_location(gv_package || lv_procedure_name, 50);
698:
699: --------------------------------------------------------------
700: -- Load the cache with the GREs under the given Legal Employer
701: --------------------------------------------------------------
725: WHEN NO_DATA_FOUND THEN
726: ln_factor_G := NULL;
727: END;
728:
729: hr_utility.trace('Values from PTU Factors Table IN ACTION_CODE');
730: hr_utility.trace('Factor F: ' || ln_factor_F);
731: hr_utility.trace('Factor G: ' || ln_factor_G);
732:
733: IF NVL(ln_factor_F, 0) = 0 THEN
726: ln_factor_G := NULL;
727: END;
728:
729: hr_utility.trace('Values from PTU Factors Table IN ACTION_CODE');
730: hr_utility.trace('Factor F: ' || ln_factor_F);
731: hr_utility.trace('Factor G: ' || ln_factor_G);
732:
733: IF NVL(ln_factor_F, 0) = 0 THEN
734: ln_factor_F_found := FALSE;
727: END;
728:
729: hr_utility.trace('Values from PTU Factors Table IN ACTION_CODE');
730: hr_utility.trace('Factor F: ' || ln_factor_F);
731: hr_utility.trace('Factor G: ' || ln_factor_G);
732:
733: IF NVL(ln_factor_F, 0) = 0 THEN
734: ln_factor_F_found := FALSE;
735: ELSE
755: -- pay_mx_yrend_arch.g_gre_tab.first()..pay_mx_yrend_arch.g_gre_tab.last()
756: -- LOOP
757:
758: IF lb_range_person THEN
759: hr_utility.set_location(gv_package || lv_procedure_name, 60);
760:
761: OPEN c_get_emp_asg_range(ln_business_group_id,
762: lv_incl_temp_EEs,
763: ld_start_date,
762: lv_incl_temp_EEs,
763: ld_start_date,
764: ld_end_date);
765: ELSE
766: hr_utility.set_location(gv_package || lv_procedure_name, 70);
767:
768: OPEN c_get_emp_asg (ln_business_group_id,
769: lv_incl_temp_EEs,
770: ld_start_date,
785: ln_tax_unit_id;
786: EXIT WHEN c_get_emp_asg%NOTFOUND;
787: END IF;
788:
789: hr_utility.trace('Previous person ID = ' || ln_prev_person_id);
790: hr_utility.trace('Current person ID = ' || ln_person_id);
791: hr_utility.trace('Assignment ID= ' || ln_assignment_id);
792: hr_utility.trace('Employment Category= ' || ln_employment_category);
793:
786: EXIT WHEN c_get_emp_asg%NOTFOUND;
787: END IF;
788:
789: hr_utility.trace('Previous person ID = ' || ln_prev_person_id);
790: hr_utility.trace('Current person ID = ' || ln_person_id);
791: hr_utility.trace('Assignment ID= ' || ln_assignment_id);
792: hr_utility.trace('Employment Category= ' || ln_employment_category);
793:
794: IF ln_person_id <> ln_prev_person_id THEN
787: END IF;
788:
789: hr_utility.trace('Previous person ID = ' || ln_prev_person_id);
790: hr_utility.trace('Current person ID = ' || ln_person_id);
791: hr_utility.trace('Assignment ID= ' || ln_assignment_id);
792: hr_utility.trace('Employment Category= ' || ln_employment_category);
793:
794: IF ln_person_id <> ln_prev_person_id THEN
795:
788:
789: hr_utility.trace('Previous person ID = ' || ln_prev_person_id);
790: hr_utility.trace('Current person ID = ' || ln_person_id);
791: hr_utility.trace('Assignment ID= ' || ln_assignment_id);
792: hr_utility.trace('Employment Category= ' || ln_employment_category);
793:
794: IF ln_person_id <> ln_prev_person_id THEN
795:
796: hr_utility.set_location(gv_package || lv_procedure_name,80);
792: hr_utility.trace('Employment Category= ' || ln_employment_category);
793:
794: IF ln_person_id <> ln_prev_person_id THEN
795:
796: hr_utility.set_location(gv_package || lv_procedure_name,80);
797: ln_step := 5;
798:
799: OPEN c_get_ytd_aaid(ld_start_date,
800: ld_end_date,
805:
806: IF ln_employment_category IN ('MX2_TEMP_WRK',
807: 'MX3_TEMP_CONSTRCT_WRK') THEN
808:
809: hr_utility.set_location(gv_package ||lv_procedure_name,90);
810:
811: --------------------------------------------------------
812: -- Check if worked days exceed the minimum limit.
813: --------------------------------------------------------
820: -- The temporary worker hasn't worked the stipulated
821: -- number of days during the Profit Sharing year
822: -- and is therefore ineligible for PTU.
823: ----------------------------------------------------
824: hr_utility.set_location(gv_package ||
825: lv_procedure_name, 95);
826: lv_excl_flag := 'X';
827:
828: END IF;
837: ------------------------------------------------------------
838:
839: IF ln_factor_G_found = FALSE OR ln_factor_F_found = FALSE THEN
840:
841: hr_utility.set_location(gv_package ||
842: lv_procedure_name, 999);
843:
844: ln_factor_B := NVL(pay_balance_pkg.get_value(
845: g_worked_days_def_bal_id,
844: ln_factor_B := NVL(pay_balance_pkg.get_value(
845: g_worked_days_def_bal_id,
846: ln_ytd_aaid), 0);
847:
848: hr_utility.set_location(gv_package ||
849: lv_procedure_name, 998);
850:
851: IF ( ln_factor_B <> 0 ) THEN
852:
869: ld_end_date) ;
870:
871: EXCEPTION
872: WHEN NO_DATA_FOUND THEN
873: hr_utility.set_message(801,
874: 'PAY_MX_PTU_INPUTS_MISSING');
875: hr_utility.raise_error;
876: END;
877:
871: EXCEPTION
872: WHEN NO_DATA_FOUND THEN
873: hr_utility.set_message(801,
874: 'PAY_MX_PTU_INPUTS_MISSING');
875: hr_utility.raise_error;
876: END;
877:
878: IF NVL(ln_factor_D, 0) = 0 THEN
879:
876: END;
877:
878: IF NVL(ln_factor_D, 0) = 0 THEN
879:
880: hr_utility.set_message(801,
881: 'PAY_MX_PTU_INPUTS_MISSING');
882: hr_utility.raise_error;
883:
884: END IF;
878: IF NVL(ln_factor_D, 0) = 0 THEN
879:
880: hr_utility.set_message(801,
881: 'PAY_MX_PTU_INPUTS_MISSING');
882: hr_utility.raise_error;
883:
884: END IF;
885:
886: get_capped_average_earnings(
900: ln_factor_E;
901:
902: --IF ln_factor_F_found = FALSE THEN
903:
904: hr_utility.set_location(gv_package ||
905: lv_procedure_name, 888);
906: -- ln_factor_F_total := ROUND( nvl(ln_factor_F_total,0) +
907: -- ln_factor_B, 4);
908:
915: END IF;
916:
917: IF ln_asg_set_id IS NOT NULL THEN
918:
919: hr_utility.set_location(gv_package ||
920: lv_procedure_name, 100);
921: ------------------------------------------------------
922: -- Check if the assignment set excludes this person
923: ------------------------------------------------------
934: -----------------------------------------------------------
935: -- No assignment set exclusions apply.
936: -----------------------------------------------------------
937:
938: hr_utility.set_location(gv_package ||
939: lv_procedure_name, 110);
940:
941: OPEN c_chk_asg_valid(ln_assignment_id,
942: ld_date_earned);
944: CLOSE c_chk_asg_valid;
945:
946: IF lv_excl_flag <> 'X' THEN
947:
948: hr_utility.set_location(gv_package ||lv_procedure_name,
949: 120);
950: ln_prev_person_id := ln_person_id;
951:
952: IF NOT lb_valid_pri_asg_found AND
956: -- The Previous person doesn't have a single valid
957: -- primary assignment as on the Profit Sharing Date
958: -- Paid. Log a message for the same.
959: ---------------------------------------------------
960: hr_utility.set_location(gv_package ||
961: lv_procedure_name, 130);
962:
963: OPEN c_get_EE_no(ln_skipped_person_id);
964: FETCH c_get_EE_no INTO lv_EE_no;
991:
992: lb_action_created := TRUE;
993: pay_mx_tax_functions.g_temp_object_actions := TRUE;
994:
995: hr_utility.set_location(gv_package ||
996: lv_procedure_name, 140);
997:
998: hr_utility.trace('PTU asg action ' ||
999: ln_PTU_action_id || ' created.');
994:
995: hr_utility.set_location(gv_package ||
996: lv_procedure_name, 140);
997:
998: hr_utility.trace('PTU asg action ' ||
999: ln_PTU_action_id || ' created.');
1000:
1001: ELSE
1002: -------------------------------------------------------
1004: -- Sharing Date Paid. Set a flag to check if any other
1005: -- primary assignment exists on that date for that
1006: -- person.
1007: -------------------------------------------------------
1008: hr_utility.set_location(gv_package ||
1009: lv_procedure_name, 150);
1010: lb_valid_pri_asg_found := FALSE;
1011: ln_skipped_person_id := ln_person_id;
1012: lv_excl_flag := '-1';
1013:
1014: END IF;
1015:
1016: ELSE
1017: hr_utility.trace('Assignment is excluded in asg set.');
1018: ln_prev_person_id := ln_person_id;
1019: lv_excl_flag := '-1';
1020: END IF;
1021: ELSE
1018: ln_prev_person_id := ln_person_id;
1019: lv_excl_flag := '-1';
1020: END IF;
1021: ELSE
1022: hr_utility.trace('Temporary worker criterion not satisfied');
1023: lv_excl_flag := '-1';
1024: END IF;
1025: ELSE
1026: hr_utility.trace('The assignment action creation has been ' ||
1022: hr_utility.trace('Temporary worker criterion not satisfied');
1023: lv_excl_flag := '-1';
1024: END IF;
1025: ELSE
1026: hr_utility.trace('The assignment action creation has been ' ||
1027: 'either already done or skipped for this ' ||
1028: 'person.');
1029: END IF;
1030: END LOOP;
1041: -- The Last person didn't have a single valid
1042: -- primary assignment as on the Profit Sharing Date
1043: -- Paid. Log a message for the same.
1044: ---------------------------------------------------------
1045: hr_utility.set_location(gv_package || lv_procedure_name, 160);
1046:
1047: OPEN c_get_EE_no(ln_skipped_person_id);
1048: FETCH c_get_EE_no INTO lv_EE_no;
1049: CLOSE c_get_EE_no;
1101: p_object_version_number => ln_ovn);
1102:
1103: END IF;
1104:
1105: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
1106:
1107: EXCEPTION
1108: WHEN BATCH_EXISTS THEN
1109:
1106:
1107: EXCEPTION
1108: WHEN BATCH_EXISTS THEN
1109:
1110: hr_utility.set_message(800, 'HR_BATCH_NAME_ALREADY_EXISTS');
1111: hr_utility.raise_error;
1112:
1113: WHEN OTHERS THEN
1114:
1107: EXCEPTION
1108: WHEN BATCH_EXISTS THEN
1109:
1110: hr_utility.set_message(800, 'HR_BATCH_NAME_ALREADY_EXISTS');
1111: hr_utility.raise_error;
1112:
1113: WHEN OTHERS THEN
1114:
1115: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
1114:
1115: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
1116: gv_package || lv_procedure_name;
1117:
1118: hr_utility.trace(lv_error_message || '-' || SQLERRM);
1119:
1120: lv_error_message :=
1121: pay_emp_action_arch.set_error_message(lv_error_message);
1122:
1119:
1120: lv_error_message :=
1121: pay_emp_action_arch.set_error_message(lv_error_message);
1122:
1123: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1124: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1125: hr_utility.raise_error;
1126:
1127: END assignment_action_code;
1120: lv_error_message :=
1121: pay_emp_action_arch.set_error_message(lv_error_message);
1122:
1123: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1124: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1125: hr_utility.raise_error;
1126:
1127: END assignment_action_code;
1128:
1121: pay_emp_action_arch.set_error_message(lv_error_message);
1122:
1123: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1124: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1125: hr_utility.raise_error;
1126:
1127: END assignment_action_code;
1128:
1129: /************************************************************
1213: lv_procedure_name := '.initialization_code';
1214:
1215: ln_step := 1;
1216:
1217: hr_utility.set_location(gv_package || lv_procedure_name, 10);
1218:
1219: get_payroll_action_info(p_payroll_action_id => p_payroll_action_id
1220: ,p_start_date => ld_start_date
1221: ,p_effective_date => ld_date_earned
1235: CLOSE c_get_batch_id;
1236:
1237: IF pay_mx_yrend_arch.g_gre_tab.count() = 0 THEN
1238:
1239: hr_utility.set_location(gv_package || lv_procedure_name, 20);
1240:
1241: --------------------------------------------------------------
1242: -- Load the cache with the GREs under the given Legal Employer
1243: --------------------------------------------------------------
1247: END IF;
1248:
1249: IF g_worked_days_def_bal_id IS NULL THEN
1250:
1251: hr_utility.set_location(gv_package || lv_procedure_name, 30);
1252:
1253: g_worked_days_def_bal_id := pay_ac_utility.get_defined_balance_id(
1254: 'Eligible Worked Days for Profit Sharing',
1255: '_PER_YTD',
1264: 'MX');
1265:
1266: lv_legal_ER_name := hr_general.decode_organization(ln_legal_employer_id);
1267:
1268: hr_utility.set_location(gv_package || lv_procedure_name, 40);
1269:
1270: OPEN c_get_PTU_ele_details;
1271: FETCH c_get_PTU_ele_details INTO g_PTU_ele_type_id;
1272: CLOSE c_get_PTU_ele_details;
1271: FETCH c_get_PTU_ele_details INTO g_PTU_ele_type_id;
1272: CLOSE c_get_PTU_ele_details;
1273:
1274: -- IF ln_min_days_worked > 0 THEN
1275: -- hr_utility.set_location(gv_package || lv_procedure_name, 50);
1276:
1277: -- ELSE
1278: -- hr_utility.set_location(gv_package || lv_procedure_name, 60);
1279: -- ln_min_days_worked := 0;
1274: -- IF ln_min_days_worked > 0 THEN
1275: -- hr_utility.set_location(gv_package || lv_procedure_name, 50);
1276:
1277: -- ELSE
1278: -- hr_utility.set_location(gv_package || lv_procedure_name, 60);
1279: -- ln_min_days_worked := 0;
1280: -- END IF;
1281:
1282: ln_step := 2;
1288: lv_legal_ER_name,
1289: ld_end_date);
1290: EXCEPTION
1291: WHEN NO_DATA_FOUND THEN
1292: hr_utility.set_message(801,'PAY_MX_PTU_INPUTS_MISSING');
1293: hr_utility.raise_error;
1294: END;
1295:
1296: ln_factor_A := ln_tot_share_amt / 2;
1289: ld_end_date);
1290: EXCEPTION
1291: WHEN NO_DATA_FOUND THEN
1292: hr_utility.set_message(801,'PAY_MX_PTU_INPUTS_MISSING');
1293: hr_utility.raise_error;
1294: END;
1295:
1296: ln_factor_A := ln_tot_share_amt / 2;
1297:
1303: lv_legal_ER_name,
1304: ld_end_date);
1305: EXCEPTION
1306: WHEN NO_DATA_FOUND THEN
1307: hr_utility.set_message(801,'PAY_MX_PTU_INPUTS_MISSING');
1308: hr_utility.raise_error;
1309: END;
1310:
1311: BEGIN
1304: ld_end_date);
1305: EXCEPTION
1306: WHEN NO_DATA_FOUND THEN
1307: hr_utility.set_message(801,'PAY_MX_PTU_INPUTS_MISSING');
1308: hr_utility.raise_error;
1309: END;
1310:
1311: BEGIN
1312: ln_factor_F := hruserdt.get_table_value(ln_business_group_id,
1329: WHEN NO_DATA_FOUND THEN
1330: ln_factor_G := NULL;
1331: END;
1332:
1333: hr_utility.trace('Values from PTU Factors Table');
1334: hr_utility.trace('Factor A: ' || ln_factor_A);
1335: hr_utility.trace('Factor D: ' || ln_factor_D);
1336: hr_utility.trace('Factor F: ' || ln_factor_F);
1337: hr_utility.trace('Factor G: ' || ln_factor_G);
1330: ln_factor_G := NULL;
1331: END;
1332:
1333: hr_utility.trace('Values from PTU Factors Table');
1334: hr_utility.trace('Factor A: ' || ln_factor_A);
1335: hr_utility.trace('Factor D: ' || ln_factor_D);
1336: hr_utility.trace('Factor F: ' || ln_factor_F);
1337: hr_utility.trace('Factor G: ' || ln_factor_G);
1338: ln_step := 3;
1331: END;
1332:
1333: hr_utility.trace('Values from PTU Factors Table');
1334: hr_utility.trace('Factor A: ' || ln_factor_A);
1335: hr_utility.trace('Factor D: ' || ln_factor_D);
1336: hr_utility.trace('Factor F: ' || ln_factor_F);
1337: hr_utility.trace('Factor G: ' || ln_factor_G);
1338: ln_step := 3;
1339:
1332:
1333: hr_utility.trace('Values from PTU Factors Table');
1334: hr_utility.trace('Factor A: ' || ln_factor_A);
1335: hr_utility.trace('Factor D: ' || ln_factor_D);
1336: hr_utility.trace('Factor F: ' || ln_factor_F);
1337: hr_utility.trace('Factor G: ' || ln_factor_G);
1338: ln_step := 3;
1339:
1340: hr_utility.set_location(gv_package || lv_procedure_name, 70);
1333: hr_utility.trace('Values from PTU Factors Table');
1334: hr_utility.trace('Factor A: ' || ln_factor_A);
1335: hr_utility.trace('Factor D: ' || ln_factor_D);
1336: hr_utility.trace('Factor F: ' || ln_factor_F);
1337: hr_utility.trace('Factor G: ' || ln_factor_G);
1338: ln_step := 3;
1339:
1340: hr_utility.set_location(gv_package || lv_procedure_name, 70);
1341:
1336: hr_utility.trace('Factor F: ' || ln_factor_F);
1337: hr_utility.trace('Factor G: ' || ln_factor_G);
1338: ln_step := 3;
1339:
1340: hr_utility.set_location(gv_package || lv_procedure_name, 70);
1341:
1342: IF NVL(ln_factor_A, 0) = 0 OR NVL(ln_factor_D, 0) = 0 THEN
1343: hr_utility.set_message(801,'PAY_MX_PTU_INPUTS_MISSING');
1344: hr_utility.raise_error;
1339:
1340: hr_utility.set_location(gv_package || lv_procedure_name, 70);
1341:
1342: IF NVL(ln_factor_A, 0) = 0 OR NVL(ln_factor_D, 0) = 0 THEN
1343: hr_utility.set_message(801,'PAY_MX_PTU_INPUTS_MISSING');
1344: hr_utility.raise_error;
1345: END IF;
1346:
1347: --
1340: hr_utility.set_location(gv_package || lv_procedure_name, 70);
1341:
1342: IF NVL(ln_factor_A, 0) = 0 OR NVL(ln_factor_D, 0) = 0 THEN
1343: hr_utility.set_message(801,'PAY_MX_PTU_INPUTS_MISSING');
1344: hr_utility.raise_error;
1345: END IF;
1346:
1347: --
1348: IF NVL(ln_factor_G, 0) = 0 OR NVL(ln_factor_F, 0) = 0 THEN
1397: g_factor_G := ln_factor_G;
1398: g_factor_H := ln_factor_H;
1399: g_factor_I := ln_factor_I;
1400:
1401: hr_utility.trace('Global Values for PTU Factors');
1402: hr_utility.trace('g_factor_A: ' || g_factor_A);
1403: hr_utility.trace('g_factor_D: ' || g_factor_D);
1404: hr_utility.trace('g_factor_F: ' || g_factor_F);
1405: hr_utility.trace('g_factor_G: ' || g_factor_G);
1398: g_factor_H := ln_factor_H;
1399: g_factor_I := ln_factor_I;
1400:
1401: hr_utility.trace('Global Values for PTU Factors');
1402: hr_utility.trace('g_factor_A: ' || g_factor_A);
1403: hr_utility.trace('g_factor_D: ' || g_factor_D);
1404: hr_utility.trace('g_factor_F: ' || g_factor_F);
1405: hr_utility.trace('g_factor_G: ' || g_factor_G);
1406: hr_utility.trace('g_factor_H: ' || g_factor_H);
1399: g_factor_I := ln_factor_I;
1400:
1401: hr_utility.trace('Global Values for PTU Factors');
1402: hr_utility.trace('g_factor_A: ' || g_factor_A);
1403: hr_utility.trace('g_factor_D: ' || g_factor_D);
1404: hr_utility.trace('g_factor_F: ' || g_factor_F);
1405: hr_utility.trace('g_factor_G: ' || g_factor_G);
1406: hr_utility.trace('g_factor_H: ' || g_factor_H);
1407: hr_utility.trace('g_factor_I: ' || g_factor_I);
1400:
1401: hr_utility.trace('Global Values for PTU Factors');
1402: hr_utility.trace('g_factor_A: ' || g_factor_A);
1403: hr_utility.trace('g_factor_D: ' || g_factor_D);
1404: hr_utility.trace('g_factor_F: ' || g_factor_F);
1405: hr_utility.trace('g_factor_G: ' || g_factor_G);
1406: hr_utility.trace('g_factor_H: ' || g_factor_H);
1407: hr_utility.trace('g_factor_I: ' || g_factor_I);
1408:
1401: hr_utility.trace('Global Values for PTU Factors');
1402: hr_utility.trace('g_factor_A: ' || g_factor_A);
1403: hr_utility.trace('g_factor_D: ' || g_factor_D);
1404: hr_utility.trace('g_factor_F: ' || g_factor_F);
1405: hr_utility.trace('g_factor_G: ' || g_factor_G);
1406: hr_utility.trace('g_factor_H: ' || g_factor_H);
1407: hr_utility.trace('g_factor_I: ' || g_factor_I);
1408:
1409: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
1402: hr_utility.trace('g_factor_A: ' || g_factor_A);
1403: hr_utility.trace('g_factor_D: ' || g_factor_D);
1404: hr_utility.trace('g_factor_F: ' || g_factor_F);
1405: hr_utility.trace('g_factor_G: ' || g_factor_G);
1406: hr_utility.trace('g_factor_H: ' || g_factor_H);
1407: hr_utility.trace('g_factor_I: ' || g_factor_I);
1408:
1409: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
1410:
1403: hr_utility.trace('g_factor_D: ' || g_factor_D);
1404: hr_utility.trace('g_factor_F: ' || g_factor_F);
1405: hr_utility.trace('g_factor_G: ' || g_factor_G);
1406: hr_utility.trace('g_factor_H: ' || g_factor_H);
1407: hr_utility.trace('g_factor_I: ' || g_factor_I);
1408:
1409: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
1410:
1411: EXCEPTION
1405: hr_utility.trace('g_factor_G: ' || g_factor_G);
1406: hr_utility.trace('g_factor_H: ' || g_factor_H);
1407: hr_utility.trace('g_factor_I: ' || g_factor_I);
1408:
1409: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
1410:
1411: EXCEPTION
1412: WHEN OTHERS THEN
1413: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
1412: WHEN OTHERS THEN
1413: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
1414: gv_package || lv_procedure_name;
1415:
1416: hr_utility.trace(lv_error_message || '-' || SQLERRM);
1417:
1418: lv_error_message :=
1419: pay_emp_action_arch.set_error_message(lv_error_message);
1420:
1417:
1418: lv_error_message :=
1419: pay_emp_action_arch.set_error_message(lv_error_message);
1420:
1421: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1422: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1423: hr_utility.raise_error;
1424:
1425: END initialization_code;
1418: lv_error_message :=
1419: pay_emp_action_arch.set_error_message(lv_error_message);
1420:
1421: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1422: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1423: hr_utility.raise_error;
1424:
1425: END initialization_code;
1426:
1419: pay_emp_action_arch.set_error_message(lv_error_message);
1420:
1421: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1422: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1423: hr_utility.raise_error;
1424:
1425: END initialization_code;
1426:
1427: /************************************************************
1499: WHERE lookup_type = 'YES_NO'
1500: AND lookup_code = 'Y';
1501: BEGIN
1502: lv_procedure_name := '.archive_code';
1503: hr_utility.trace('Entering ' || gv_package || lv_procedure_name);
1504:
1505: OPEN c_get_person;
1506: FETCH c_get_person INTO ln_assignment_id,
1507: lv_assignment_number,
1509: ln_business_group_id,
1510: ln_payroll_action_id;
1511: CLOSE c_get_person;
1512:
1513: hr_utility.trace('Assignment ID: ' || ln_assignment_id);
1514: hr_utility.trace('Person ID: ' || ln_person_id);
1515:
1516: hr_utility.trace('gd_start_date: '||gd_start_date);
1517: hr_utility.trace('gd_end_date: '||gd_end_date);
1510: ln_payroll_action_id;
1511: CLOSE c_get_person;
1512:
1513: hr_utility.trace('Assignment ID: ' || ln_assignment_id);
1514: hr_utility.trace('Person ID: ' || ln_person_id);
1515:
1516: hr_utility.trace('gd_start_date: '||gd_start_date);
1517: hr_utility.trace('gd_end_date: '||gd_end_date);
1518:
1512:
1513: hr_utility.trace('Assignment ID: ' || ln_assignment_id);
1514: hr_utility.trace('Person ID: ' || ln_person_id);
1515:
1516: hr_utility.trace('gd_start_date: '||gd_start_date);
1517: hr_utility.trace('gd_end_date: '||gd_end_date);
1518:
1519: get_payroll_action_info(p_payroll_action_id => ln_payroll_action_id
1520: ,p_start_date => ld_start_date
1513: hr_utility.trace('Assignment ID: ' || ln_assignment_id);
1514: hr_utility.trace('Person ID: ' || ln_person_id);
1515:
1516: hr_utility.trace('gd_start_date: '||gd_start_date);
1517: hr_utility.trace('gd_end_date: '||gd_end_date);
1518:
1519: get_payroll_action_info(p_payroll_action_id => ln_payroll_action_id
1520: ,p_start_date => ld_start_date
1521: ,p_effective_date => ld_date_earned
1527: ld_end_date := ADD_MONTHS(ld_start_date, 12) - 1;
1528:
1529: lv_legal_ER_name := hr_general.decode_organization(ln_legal_employer_id);
1530:
1531: hr_utility.trace('ld_end_date: '||ld_end_date);
1532: hr_utility.trace('lv_legal_ER_name: '||lv_legal_ER_name);
1533:
1534: BEGIN
1535: g_ptu_calc_method := NVL(hruserdt.get_table_value(ln_business_group_id,
1528:
1529: lv_legal_ER_name := hr_general.decode_organization(ln_legal_employer_id);
1530:
1531: hr_utility.trace('ld_end_date: '||ld_end_date);
1532: hr_utility.trace('lv_legal_ER_name: '||lv_legal_ER_name);
1533:
1534: BEGIN
1535: g_ptu_calc_method := NVL(hruserdt.get_table_value(ln_business_group_id,
1536: 'PTU Factors',
1542: WHEN NO_DATA_FOUND THEN
1543: g_ptu_calc_method := 'DAILY_WAGE';
1544: END;
1545:
1546: hr_utility.trace('g_ptu_calc_method: '||g_ptu_calc_method);
1547:
1548: OPEN c_get_ytd_aaid(gd_start_date,
1549: gd_end_date,
1550: ln_person_id);
1550: ln_person_id);
1551: FETCH c_get_ytd_aaid INTO ln_ytd_asg_act_id;
1552: CLOSE c_get_ytd_aaid;
1553:
1554: hr_utility.trace('YTD AA ID: ' || ln_ytd_asg_act_id );
1555:
1556: ln_step := 1;
1557: hr_utility.set_location(gv_package || lv_procedure_name, 10);
1558:
1553:
1554: hr_utility.trace('YTD AA ID: ' || ln_ytd_asg_act_id );
1555:
1556: ln_step := 1;
1557: hr_utility.set_location(gv_package || lv_procedure_name, 10);
1558:
1559: ln_factor_B := NVL(pay_balance_pkg.get_value(
1560: g_worked_days_def_bal_id,
1561: ln_ytd_asg_act_id), 0);
1640: p_object_version_number => ln_ovn);
1641:
1642: END IF;
1643:
1644: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
1645:
1646: EXCEPTION
1647: WHEN OTHERS THEN
1648: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
1647: WHEN OTHERS THEN
1648: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
1649: gv_package || lv_procedure_name;
1650:
1651: hr_utility.trace(lv_error_message || '-' || SQLERRM);
1652:
1653: lv_error_message :=
1654: pay_emp_action_arch.set_error_message(lv_error_message);
1655:
1652:
1653: lv_error_message :=
1654: pay_emp_action_arch.set_error_message(lv_error_message);
1655:
1656: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1657: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1658: hr_utility.raise_error;
1659:
1660: END archive_code;
1653: lv_error_message :=
1654: pay_emp_action_arch.set_error_message(lv_error_message);
1655:
1656: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1657: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1658: hr_utility.raise_error;
1659:
1660: END archive_code;
1661:
1654: pay_emp_action_arch.set_error_message(lv_error_message);
1655:
1656: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1657: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1658: hr_utility.raise_error;
1659:
1660: END archive_code;
1661:
1662: /************************************************************
1675: ln_step NUMBER;
1676:
1677: BEGIN
1678: lv_procedure_name := '.deinit_code';
1679: hr_utility.trace('Entering ' || gv_package || lv_procedure_name);
1680:
1681: ln_step := 1;
1682: hr_utility.set_location(gv_package || lv_procedure_name, 10);
1683:
1678: lv_procedure_name := '.deinit_code';
1679: hr_utility.trace('Entering ' || gv_package || lv_procedure_name);
1680:
1681: ln_step := 1;
1682: hr_utility.set_location(gv_package || lv_procedure_name, 10);
1683:
1684: DELETE
1685: FROM pay_action_information
1686: WHERE action_information_category = 'MX PROFIT SHARING FACTORS'
1686: WHERE action_information_category = 'MX PROFIT SHARING FACTORS'
1687: AND action_context_id = p_payroll_action_id
1688: AND action_context_type = 'PA';
1689:
1690: hr_utility.trace('Leaving ' || gv_package || lv_procedure_name);
1691:
1692: EXCEPTION
1693: WHEN OTHERS THEN
1694: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
1693: WHEN OTHERS THEN
1694: lv_error_message := 'Error at step ' || ln_step || ' IN ' ||
1695: gv_package || lv_procedure_name;
1696:
1697: hr_utility.trace(lv_error_message || '-' || SQLERRM);
1698:
1699: lv_error_message :=
1700: pay_emp_action_arch.set_error_message(lv_error_message);
1701:
1698:
1699: lv_error_message :=
1700: pay_emp_action_arch.set_error_message(lv_error_message);
1701:
1702: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1703: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1704: hr_utility.raise_error;
1705:
1706: END deinit_code;
1699: lv_error_message :=
1700: pay_emp_action_arch.set_error_message(lv_error_message);
1701:
1702: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1703: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1704: hr_utility.raise_error;
1705:
1706: END deinit_code;
1707:
1700: pay_emp_action_arch.set_error_message(lv_error_message);
1701:
1702: hr_utility.set_message(801,'HR_ELE_ENTRY_FORMULA_HINT');
1703: hr_utility.set_message_token('FORMULA_TEXT', lv_error_message);
1704: hr_utility.raise_error;
1705:
1706: END deinit_code;
1707:
1708: BEGIN
1705:
1706: END deinit_code;
1707:
1708: BEGIN
1709: --hr_utility.trace_on (NULL, 'MX_IDC');
1710: gv_package := 'pay_mx_PTU_calc';
1711: END pay_mx_PTU_calc;