DBA Data[Home] [Help]

APPS.GHR_PC_BASIC_PAY dependencies on GHR_PAY_CALC

Line 9: RETURN ghr_pay_calc.retained_grade_rec_type IS

5:
6: FUNCTION get_retained_grade_details (p_person_id IN NUMBER
7: ,p_effective_date IN DATE
8: ,p_pa_request_id IN NUMBER DEFAULT NULL)
9: RETURN ghr_pay_calc.retained_grade_rec_type IS
10: --
11: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
12: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
13: --

Line 11: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;

7: ,p_effective_date IN DATE
8: ,p_pa_request_id IN NUMBER DEFAULT NULL)
9: RETURN ghr_pay_calc.retained_grade_rec_type IS
10: --
11: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
12: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
13: --
14: l_last_pay_table_value NUMBER;
15: l_last_pay_table_value_conv NUMBER;

Line 12: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;

8: ,p_pa_request_id IN NUMBER DEFAULT NULL)
9: RETURN ghr_pay_calc.retained_grade_rec_type IS
10: --
11: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
12: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
13: --
14: l_last_pay_table_value NUMBER;
15: l_last_pay_table_value_conv NUMBER;
16: l_cur_pay_table_value NUMBER;

Line 128: raise ghr_pay_calc.pay_calc_message;

124: OR l_retained_grade_rec.pay_plan IS NULL
125: OR l_retained_grade_rec.user_table_id IS NULL
126: OR l_retained_grade_rec.pay_basis IS NULL THEN
127: hr_utility.set_message(8301, 'GHR_38255_MISSING_RETAINED_DET');
128: raise ghr_pay_calc.pay_calc_message;
129: END IF;
130: --
131: IF l_record_found THEN
132: hr_utility.set_location(' get_retained_grade_details ' ,5);

Line 135: ghr_pay_calc.get_pay_table_value (l_retained_grade_rec.user_table_id

131: IF l_record_found THEN
132: hr_utility.set_location(' get_retained_grade_details ' ,5);
133: -- only if we have previously found a retained record with the same start date do we bother
134: -- getting the values to compare
135: ghr_pay_calc.get_pay_table_value (l_retained_grade_rec.user_table_id
136: ,l_retained_grade_rec.pay_plan
137: ,l_retained_grade_rec.grade_or_level
138: ,l_retained_grade_rec.step_or_rate
139: ,p_effective_date

Line 144: ghr_pay_calc.get_pay_table_value (l_last_retained_grade_rec.user_table_id

140: ,l_cur_pay_table_value
141: ,l_dummy_date
142: ,l_dummy_date);
143:
144: ghr_pay_calc.get_pay_table_value (l_last_retained_grade_rec.user_table_id
145: ,l_last_retained_grade_rec.pay_plan
146: ,l_last_retained_grade_rec.grade_or_level
147: ,l_last_retained_grade_rec.step_or_rate
148: ,p_effective_date

Line 156: l_last_pay_table_value_conv := ghr_pay_calc.convert_amount

152:
153: -- if they are different pay basis Convert the last retained ggrade to the pay basis
154: -- of the current
155: IF l_last_retained_grade_rec.pay_basis <> l_retained_grade_rec.pay_basis THEN
156: l_last_pay_table_value_conv := ghr_pay_calc.convert_amount
157: (l_last_pay_table_value
158: ,l_last_retained_grade_rec.pay_basis
159: ,l_retained_grade_rec.pay_basis);
160: ELSE

Line 204: raise ghr_pay_calc.pay_calc_message;

200: hr_utility.set_location(' get_retained_grade_details ' ,7);
201: RETURN (l_retained_grade_rec);
202: ELSE
203: hr_utility.set_message(8301, 'GHR_38256_NO_RETAINED_GRADE');
204: raise ghr_pay_calc.pay_calc_message;
205: END IF;
206:
207: END get_retained_grade_details ;
208: --

Line 214: RETURN ghr_pay_calc.retained_grade_rec_type IS

210: -- before the MSL effective date.
211: FUNCTION get_expired_rg_details (p_person_id IN NUMBER
212: ,p_effective_date IN DATE
213: ,p_pa_request_id IN NUMBER DEFAULT NULL)
214: RETURN ghr_pay_calc.retained_grade_rec_type IS
215: --
216: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
217: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
218: --

Line 216: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;

212: ,p_effective_date IN DATE
213: ,p_pa_request_id IN NUMBER DEFAULT NULL)
214: RETURN ghr_pay_calc.retained_grade_rec_type IS
215: --
216: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
217: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
218: --
219: l_last_pay_table_value NUMBER;
220: l_last_pay_table_value_conv NUMBER;

Line 217: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;

213: ,p_pa_request_id IN NUMBER DEFAULT NULL)
214: RETURN ghr_pay_calc.retained_grade_rec_type IS
215: --
216: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
217: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
218: --
219: l_last_pay_table_value NUMBER;
220: l_last_pay_table_value_conv NUMBER;
221: l_cur_pay_table_value NUMBER;

Line 300: raise ghr_pay_calc.pay_calc_message;

296: OR l_retained_grade_rec.pay_plan IS NULL
297: OR l_retained_grade_rec.user_table_id IS NULL
298: OR l_retained_grade_rec.pay_basis IS NULL THEN
299: hr_utility.set_message(8301, 'GHR_38255_MISSING_RETAINED_DET');
300: raise ghr_pay_calc.pay_calc_message;
301: END IF;
302: --
303: IF l_record_found THEN
304: hr_utility.set_location(' get_expired_rg_details ' ,5);

Line 307: ghr_pay_calc.get_pay_table_value (l_retained_grade_rec.user_table_id

303: IF l_record_found THEN
304: hr_utility.set_location(' get_expired_rg_details ' ,5);
305: -- only if we have previously found a retained record with the same start date do we bother
306: -- getting the values to compare
307: ghr_pay_calc.get_pay_table_value (l_retained_grade_rec.user_table_id
308: ,l_retained_grade_rec.pay_plan
309: ,l_retained_grade_rec.grade_or_level
310: ,l_retained_grade_rec.step_or_rate
311: ,p_effective_date

Line 316: ghr_pay_calc.get_pay_table_value (l_last_retained_grade_rec.user_table_id

312: ,l_cur_pay_table_value
313: ,l_dummy_date
314: ,l_dummy_date);
315:
316: ghr_pay_calc.get_pay_table_value (l_last_retained_grade_rec.user_table_id
317: ,l_last_retained_grade_rec.pay_plan
318: ,l_last_retained_grade_rec.grade_or_level
319: ,l_last_retained_grade_rec.step_or_rate
320: ,p_effective_date

Line 328: l_last_pay_table_value_conv := ghr_pay_calc.convert_amount

324:
325: -- if they are different pay basis Convert the last retained ggrade to the pay basis
326: -- of the current
327: IF l_last_retained_grade_rec.pay_basis <> l_retained_grade_rec.pay_basis THEN
328: l_last_pay_table_value_conv := ghr_pay_calc.convert_amount
329: (l_last_pay_table_value
330: ,l_last_retained_grade_rec.pay_basis
331: ,l_retained_grade_rec.pay_basis);
332: ELSE

Line 352: raise ghr_pay_calc.pay_calc_message;

348: hr_utility.set_location(' get_expired_rg_details ' ,7);
349: RETURN (l_retained_grade_rec);
350: ELSE
351: hr_utility.set_message(8301, 'GHR_38256_NO_RETAINED_GRADE');
352: raise ghr_pay_calc.pay_calc_message;
353: END IF;
354:
355: END get_expired_rg_details ;
356: --

Line 358: PROCEDURE get_basic_pay_MAIN_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

354:
355: END get_expired_rg_details ;
356: --
357:
358: PROCEDURE get_basic_pay_MAIN_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
359: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
360: ,p_basic_pay OUT NOCOPY NUMBER
361: ,p_PT_eff_start_date OUT NOCOPY DATE) IS
362: l_basic_pay NUMBER;

Line 359: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

355: END get_expired_rg_details ;
356: --
357:
358: PROCEDURE get_basic_pay_MAIN_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
359: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
360: ,p_basic_pay OUT NOCOPY NUMBER
361: ,p_PT_eff_start_date OUT NOCOPY DATE) IS
362: l_basic_pay NUMBER;
363: l_dummy_date DATE;

Line 366: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

362: l_basic_pay NUMBER;
363: l_dummy_date DATE;
364: BEGIN
365: IF p_retained_grade.temp_step is not null then
366: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
367: ,p_pay_calc_data.pay_plan
368: ,p_pay_calc_data.grade_or_level
369: ,p_retained_grade.temp_step
370: ,p_pay_calc_data.effective_date

Line 376: ghr_pay_calc.get_pay_table_value(p_retained_grade.user_table_id

372: ,p_PT_eff_start_date
373: ,l_dummy_date);
374: p_basic_pay := l_basic_pay;
375: ELSE
376: ghr_pay_calc.get_pay_table_value(p_retained_grade.user_table_id
377: ,p_retained_grade.pay_plan
378: ,p_retained_grade.grade_or_level
379: ,p_retained_grade.step_or_rate
380: ,p_pay_calc_data.effective_date

Line 386: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay

382: ,p_PT_eff_start_date
383: ,l_dummy_date);
384: --
385: -- need to convert to whatever the displayed value is
386: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay
387: ,p_retained_grade.pay_basis
388: ,p_pay_calc_data.pay_basis);
389: END IF;
390:

Line 445: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );

441: l_record_found := TRUE;
442: IF l_PT_value IS NULL THEN
443: -- Set tokens to give name of pay table, pay plan, grade, step and rate
444: hr_utility.set_message(8301,'GHR_38252_NULL_PAY_PLAN_VALUE');
445: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
446: hr_utility.set_message_token('STEP',cur_pay_rec.step_or_rate);
447: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
448: hr_utility.set_message_token('GRADE',p_grade_or_level);
449: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );

Line 451: raise ghr_pay_calc.pay_calc_message;

447: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
448: hr_utility.set_message_token('GRADE',p_grade_or_level);
449: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
450: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
451: raise ghr_pay_calc.pay_calc_message;
452: END IF;
453: EXIT;
454: END LOOP;
455: --

Line 460: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );

456: IF NOT l_record_found THEN
457: -- Set tokens to give name of pay table, pay plan, grade, step and rate
458: -- Note: the is no step!
459: hr_utility.set_message(8301,'GHR_38257_NO_MIN_PAY_PLAN_VAL');
460: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
461: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
462: hr_utility.set_message_token('GRADE',p_grade_or_level);
463: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
464: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );

Line 465: raise ghr_pay_calc.pay_calc_message;

461: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
462: hr_utility.set_message_token('GRADE',p_grade_or_level);
463: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
464: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
465: raise ghr_pay_calc.pay_calc_message;
466: END IF;
467: --
468:
469: EXCEPTION

Line 525: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );

521:
522: IF l_PT_value IS NULL THEN
523: -- Set tokens to give name of pay table, pay plan, grade, step and rate
524: hr_utility.set_message(8301,'GHR_38252_NULL_PAY_PLAN_VALUE');
525: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
526: hr_utility.set_message_token('STEP',cur_pay_rec.step_or_rate);
527: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
528: hr_utility.set_message_token('GRADE',p_grade_or_level);
529: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );

Line 531: raise ghr_pay_calc.pay_calc_message;

527: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
528: hr_utility.set_message_token('GRADE',p_grade_or_level);
529: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
530: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
531: raise ghr_pay_calc.pay_calc_message;
532: END IF;
533: EXIT;
534: END LOOP;
535: --

Line 539: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );

535: --
536: IF NOT l_record_found THEN
537: -- Set tokens to give name of pay table, pay plan, grade, step and rate
538: hr_utility.set_message(8301,'GHR_38258_NO_MAX_PAY_PLAN_VAL');
539: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
540: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
541: hr_utility.set_message_token('GRADE',p_grade_or_level);
542: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
543: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );

Line 544: raise ghr_pay_calc.pay_calc_message;

540: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
541: hr_utility.set_message_token('GRADE',p_grade_or_level);
542: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
543: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
544: raise ghr_pay_calc.pay_calc_message;
545: END IF;
546: --
547:
548: EXCEPTION

Line 607: ghr_pay_calc.get_pay_table_value (p_user_table_id => p_user_table_id

603: -- this will be passed as '01' if the value of User entered step or rate is greater than the
604: -- basic pay then need to consider the same otherwise need to be autopopulated with
605: -- the Minimum step or rate having value greater than the adjusted basic pay
606: IF p_in_step_or_rate is not null THEN
607: ghr_pay_calc.get_pay_table_value (p_user_table_id => p_user_table_id
608: ,p_pay_plan => p_pay_plan
609: ,p_grade_or_level => p_grade_or_level
610: ,p_step_or_rate => p_in_step_or_rate
611: ,p_effective_date => p_effective_date

Line 636: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );

632:
633: IF l_PT_value IS NULL THEN
634: -- Set tokens to give name of pay table, pay plan, grade, step and rate
635: hr_utility.set_message(8301,'GHR_38252_NULL_PAY_PLAN_VALUE');
636: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
637: hr_utility.set_message_token('STEP',cur_pay_rec.step_or_rate);
638: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
639: hr_utility.set_message_token('GRADE',p_grade_or_level);
640: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );

Line 642: raise ghr_pay_calc.pay_calc_message;

638: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
639: hr_utility.set_message_token('GRADE',p_grade_or_level);
640: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
641: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
642: raise ghr_pay_calc.pay_calc_message;
643: END IF;
644: EXIT;
645: END IF;
646: END LOOP;

Line 652: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );

648: --
649: IF NOT l_record_found THEN
650: -- Set tokens to give name of pay table, pay plan, grade, step and rate
651: hr_utility.set_message(8301,'GHR_38258_NO_MAX_PAY_PLAN_VAL');
652: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
653: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
654: hr_utility.set_message_token('GRADE',p_grade_or_level);
655: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
656: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );

Line 657: raise ghr_pay_calc.pay_calc_message;

653: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
654: hr_utility.set_message_token('GRADE',p_grade_or_level);
655: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
656: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
657: raise ghr_pay_calc.pay_calc_message;
658: END IF;
659: --
660: END IF; -- p_in_step_or_rate Comparison
661:

Line 736: PROCEDURE get_basic_pay_SAL891_pos (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

732: RAISE;
733: END get_min_pay_table_value_GT_X;
734: --
735: --
736: PROCEDURE get_basic_pay_SAL891_pos (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
737: ,p_basic_pay OUT NOCOPY NUMBER
738: ,p_step_or_rate OUT NOCOPY VARCHAR2) IS
739: --
740: l_min_basic_pay NUMBER;

Line 796: PROCEDURE get_basic_pay_SAL891_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

792:
793: RAISE;
794: END get_basic_pay_SAL891_pos;
795: --
796: PROCEDURE get_basic_pay_SAL891_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
797: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
798: ,p_basic_pay OUT NOCOPY NUMBER
799: ,p_step_or_rate OUT NOCOPY VARCHAR2) IS
800: --

Line 797: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

793: RAISE;
794: END get_basic_pay_SAL891_pos;
795: --
796: PROCEDURE get_basic_pay_SAL891_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
797: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
798: ,p_basic_pay OUT NOCOPY NUMBER
799: ,p_step_or_rate OUT NOCOPY VARCHAR2) IS
800: --
801: -- This one always uses the retained grade details no matter what

Line 867: raise ghr_pay_calc.pay_calc_message;

863: BEGIN
864: IF p_PT_date <> p_eff_start_date THEN
865: hr_utility.set_message(8301,'GHR_38395_NOT_CURRENT_PT');
866: -- hr_utility.set_message_token('PAY_TABLE_NAME',get_user_table_name(p_user_table_id) );
867: raise ghr_pay_calc.pay_calc_message;
868: END IF;
869: END check_current_PT;
870: --
871: PROCEDURE check_old_PT (p_PT_date IN DATE

Line 878: raise ghr_pay_calc.pay_calc_message;

874: /* This procedure is no more required as per Bug 3837402 .
875: IF p_PT_date -1 <> p_eff_end_date THEN
876: hr_utility.set_message(8301,'GHR_38396_NOT_OLD_PT');
877: -- hr_utility.set_message_token('PAY_TABLE_NAME',get_user_table_name(p_user_table_id) );
878: raise ghr_pay_calc.pay_calc_message;
879: END IF;
880: */
881: null;
882:

Line 885: PROCEDURE get_basic_pay_SAL894_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

881: null;
882:
883: END check_old_PT;
884: --
885: PROCEDURE get_basic_pay_SAL894_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
886: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
887: ,p_pay_table_data IN VARCHAR2
888: ,p_basic_pay OUT NOCOPY NUMBER
889: ,p_PT_eff_start_date OUT NOCOPY DATE

Line 886: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

882:
883: END check_old_PT;
884: --
885: PROCEDURE get_basic_pay_SAL894_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
886: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
887: ,p_pay_table_data IN VARCHAR2
888: ,p_basic_pay OUT NOCOPY NUMBER
889: ,p_PT_eff_start_date OUT NOCOPY DATE
890: ,p_7dp OUT NOCOPY NUMBER) IS

Line 947: ghr_pay_calc.get_pay_table_value(l_user_table_id

943: END IF;
944: END IF;
945: --AVR
946: -- Get current value just to get the Pay Table effective date
947: ghr_pay_calc.get_pay_table_value(l_user_table_id
948: ,l_pay_plan
949: ,l_grade_or_level
950: ,'01'
951: ,p_pay_calc_data.effective_date

Line 1040: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay

1036:
1037: l_basic_pay := CEIL(l_E + l_min_cur_basic_pay);
1038:
1039: --
1040: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay
1041: ,l_pay_basis
1042: ,p_pay_calc_data.pay_basis);
1043: --
1044: p_PT_eff_start_date := l_PT_eff_start_date;

Line 1060: PROCEDURE get_basic_pay_SAL894_50 (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1056: RAISE;
1057: END get_basic_pay_SAL894_6step;
1058: --
1059: --
1060: PROCEDURE get_basic_pay_SAL894_50 (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1061: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1062: ,p_pay_table_data IN VARCHAR2
1063: ,p_basic_pay OUT NOCOPY NUMBER
1064: ,p_step OUT NOCOPY VARCHAR2

Line 1061: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

1057: END get_basic_pay_SAL894_6step;
1058: --
1059: --
1060: PROCEDURE get_basic_pay_SAL894_50 (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1061: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1062: ,p_pay_table_data IN VARCHAR2
1063: ,p_basic_pay OUT NOCOPY NUMBER
1064: ,p_step OUT NOCOPY VARCHAR2
1065: ,p_prd OUT NOCOPY VARCHAR2

Line 1096: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;

1092: --Bug 3180991
1093: l_old_user_table_id NUMBER;
1094: l_asg_ei_data per_assignment_extra_info%rowtype;
1095: l_prd_effective_date date;
1096: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
1097: l_position_id per_assignments_f.position_id%type;
1098: l_assignment_id per_assignments_f.assignment_id%type;
1099: l_temp_step per_people_extra_info.pei_information6%type;
1100: l_effective_date date;

Line 1209: l_old_user_table_id := ghr_pay_calc.get_user_table_id( l_position_id , l_prd_effective_date );

1205: hr_utility.set_location(' get_basic_pay_SAL894_50 l_asg_ei_data.aei_information6 ' ||l_asg_ei_data.aei_information6 ,11);
1206:
1207: IF l_asg_ei_data.aei_information6 NOT IN ('A','B','E','F','U','V') THEN
1208:
1209: l_old_user_table_id := ghr_pay_calc.get_user_table_id( l_position_id , l_prd_effective_date );
1210: hr_utility.set_location(' get_basic_pay_SAL894_50 l_old_user_table_id ' ||l_old_user_table_id ,13);
1211:
1212: ELSE
1213:

Line 1237: --check for temp promotion and temp step is not null then use ghr_pay_calc.get_user_table_id.

1233:
1234: hr_utility.set_location(' get_basic_pay_SAL894_50 temp step after loop' ||l_temp_step ,14);
1235: hr_utility.set_location(' get_basic_pay_SAL894_50 l_old_user_table_id after loop' ||l_old_user_table_id ,14);
1236:
1237: --check for temp promotion and temp step is not null then use ghr_pay_calc.get_user_table_id.
1238: IF l_temp_step IS NOT NULL THEN
1239: l_old_user_table_id := ghr_pay_calc.get_user_table_id( l_position_id , l_prd_effective_date );
1240: hr_utility.set_location(' get_basic_pay_SAL894_50 if l_old_user_table_id ' ||l_old_user_table_id ,15);
1241: END IF;

Line 1239: l_old_user_table_id := ghr_pay_calc.get_user_table_id( l_position_id , l_prd_effective_date );

1235: hr_utility.set_location(' get_basic_pay_SAL894_50 l_old_user_table_id after loop' ||l_old_user_table_id ,14);
1236:
1237: --check for temp promotion and temp step is not null then use ghr_pay_calc.get_user_table_id.
1238: IF l_temp_step IS NOT NULL THEN
1239: l_old_user_table_id := ghr_pay_calc.get_user_table_id( l_position_id , l_prd_effective_date );
1240: hr_utility.set_location(' get_basic_pay_SAL894_50 if l_old_user_table_id ' ||l_old_user_table_id ,15);
1241: END IF;
1242:
1243: END IF;

Line 1271: l_converted_increase := ghr_pay_calc.convert_amount( (l_max_cur_basic_pay - l_max_old_basic_pay)/2

1267: check_old_PT (l_PT_eff_start_date, l_eff_end_date);
1268: --
1269: END IF;
1270: */
1271: l_converted_increase := ghr_pay_calc.convert_amount( (l_max_cur_basic_pay - l_max_old_basic_pay)/2
1272: ,l_pay_basis
1273: ,p_pay_calc_data.pay_basis);
1274: --
1275:

Line 1306: IF l_ret_basic_pay > ghr_pay_calc.get_standard_pay_table_value('EX'

1302:
1303: IF l_pos_basic_pay IS NULL THEN
1304: -- For pay plan CA need to check it hasn't exceeded EX-04 (table 0000 step 00)
1305: IF l_pay_plan = 'CA' THEN
1306: IF l_ret_basic_pay > ghr_pay_calc.get_standard_pay_table_value('EX'
1307: ,'04'
1308: ,'00'
1309: ,p_pay_calc_data.effective_date) THEN
1310: hr_utility.set_message(8301, 'GHR_38587_NO_CALC_EXCEED_EX_IV');

Line 1312: raise ghr_pay_calc.unable_to_calculate;

1308: ,'00'
1309: ,p_pay_calc_data.effective_date) THEN
1310: hr_utility.set_message(8301, 'GHR_38587_NO_CALC_EXCEED_EX_IV');
1311: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
1312: raise ghr_pay_calc.unable_to_calculate;
1313: ELSE
1314: p_basic_pay := l_ret_basic_pay;
1315: p_step := '00';
1316: p_prd := NULL;

Line 1328: raise ghr_pay_calc.unable_to_calculate;

1324: -- Do not know what to do if pay plan is ES or IE and pay retention is terminated!
1325: IF l_pay_plan = 'CA' THEN
1326: hr_utility.set_message(8301, 'GHR_38588_NO_CALC_PAY_RET_END');
1327: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
1328: raise ghr_pay_calc.unable_to_calculate;
1329: ELSE
1330: p_basic_pay := l_pos_basic_pay;
1331: p_step := l_pos_step;
1332: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);

Line 1332: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);

1328: raise ghr_pay_calc.unable_to_calculate;
1329: ELSE
1330: p_basic_pay := l_pos_basic_pay;
1331: p_step := l_pos_step;
1332: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);
1333: IF p_pay_calc_data.pay_rate_determinant IN ('J','K','R','S','3') THEN
1334: IF l_pay_basis = 'PH' THEN
1335: p_prd := 0;
1336: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

Line 1336: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

1332: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);
1333: IF p_pay_calc_data.pay_rate_determinant IN ('J','K','R','S','3') THEN
1334: IF l_pay_basis = 'PH' THEN
1335: p_prd := 0;
1336: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1337: p_prd := '0';
1338: ELSE
1339: p_prd := '6';
1340: END IF;

Line 1344: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

1340: END IF;
1341: ELSIF p_pay_calc_data.pay_rate_determinant = 'U' THEN
1342: IF l_pay_basis = 'PH' THEN
1343: p_prd := 'B';
1344: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1345: p_prd := 'B';
1346: ELSE
1347: p_prd := 'F';
1348: END IF;

Line 1352: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

1348: END IF;
1349: ELSIF p_pay_calc_data.pay_rate_determinant = 'V' THEN
1350: IF l_pay_basis = 'PH' THEN
1351: p_prd := 'A';
1352: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1353: p_prd := 'A';
1354: ELSE
1355: p_prd := 'E';
1356: END IF;

Line 1377: PROCEDURE get_basic_pay_SAL894_100 (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1373:
1374: END get_basic_pay_SAL894_50;
1375: --
1376: --
1377: PROCEDURE get_basic_pay_SAL894_100 (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1378: ,p_basic_pay OUT NOCOPY NUMBER
1379: ,p_PT_eff_start_date OUT NOCOPY DATE) IS
1380: --
1381: l_dummy_step VARCHAR2(30);

Line 1416: l_old_user_table_id := ghr_pay_calc.get_user_table_id( p_pay_calc_data.position_id, l_PT_eff_start_date-1 );

1412:
1413: l_effective_date := p_pay_calc_data.effective_date;
1414: --
1415: --Bug# 3180991
1416: l_old_user_table_id := ghr_pay_calc.get_user_table_id( p_pay_calc_data.position_id, l_PT_eff_start_date-1 );
1417: --Bug# 3180991
1418:
1419: get_max_pay_table_value(l_old_user_table_id
1420: ,l_pay_plan

Line 1485: raise ghr_pay_calc.pay_calc_message;

1481: -- If we got here no record was returned
1482: -- set tokens to say the user table name and pay_plan that was used
1483: hr_utility.set_message(8301, 'GHR_38259_NO_WGI_STEP');
1484: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
1485: raise ghr_pay_calc.pay_calc_message;
1486: --
1487: END get_next_WGI_step;
1488: --
1489: PROCEDURE get_basic_pay_SALWGI_pos (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

Line 1489: PROCEDURE get_basic_pay_SALWGI_pos (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1485: raise ghr_pay_calc.pay_calc_message;
1486: --
1487: END get_next_WGI_step;
1488: --
1489: PROCEDURE get_basic_pay_SALWGI_pos (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1490: ,p_basic_pay OUT NOCOPY NUMBER
1491: ,p_new_step_or_rate OUT NOCOPY VARCHAR2) IS
1492: --
1493: l_new_step_or_rate VARCHAR2(30);

Line 1505: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

1501: --
1502: l_new_step_or_rate := get_next_WGI_step (p_pay_calc_data.pay_plan
1503: ,p_pay_calc_data.current_step_or_rate);
1504:
1505: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
1506: ,p_pay_calc_data.pay_plan
1507: ,p_pay_calc_data.grade_or_level
1508: ,l_new_step_or_rate
1509: ,p_pay_calc_data.effective_date

Line 1527: PROCEDURE get_basic_pay_SALWGI_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1523:
1524: RAISE;
1525: END get_basic_pay_SALWGI_pos;
1526: --
1527: PROCEDURE get_basic_pay_SALWGI_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1528: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1529: ,p_basic_pay OUT NOCOPY NUMBER
1530: ,p_new_step_or_rate OUT NOCOPY VARCHAR2) IS
1531: --

Line 1528: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

1524: RAISE;
1525: END get_basic_pay_SALWGI_pos;
1526: --
1527: PROCEDURE get_basic_pay_SALWGI_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1528: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1529: ,p_basic_pay OUT NOCOPY NUMBER
1530: ,p_new_step_or_rate OUT NOCOPY VARCHAR2) IS
1531: --
1532: -- This one always uses the retained grade details no matter what

Line 1545: l_retained_grade ghr_pay_calc.retained_grade_rec_type;

1541: l_user_table_id NUMBER;
1542: l_pay_basis VARCHAR2(30);
1543: --Bug 3021003
1544: l_ret_flag BOOLEAN;
1545: l_retained_grade ghr_pay_calc.retained_grade_rec_type;
1546: l_temp_step VARCHAR2(30);
1547:
1548: BEGIN
1549: -- This is the calcualation of a salary Change (SALARY_CHG) noac codes 867 - Interim Within Grade Increase,

Line 1580: ghr_pay_calc.is_retained_ia(p_pay_calc_data.person_id,

1576:
1577: IF nvl(g_noa_family_code,'XXX') = 'CORRECT' then
1578: -- Bug 3021003
1579: hr_utility.set_location('NAR inside noa_fam code = CORRECT ',5);
1580: ghr_pay_calc.is_retained_ia(p_pay_calc_data.person_id,
1581: p_pay_calc_data.effective_date,
1582: l_retained_grade.pay_plan,
1583: l_retained_grade.grade_or_level,
1584: l_retained_grade.step_or_rate,

Line 1606: ghr_pay_calc.get_pay_table_value(l_user_table_id

1602: l_new_step_or_rate := get_next_WGI_step (l_pay_plan
1603: ,l_step_or_rate);
1604: END IF;
1605:
1606: ghr_pay_calc.get_pay_table_value(l_user_table_id
1607: ,l_pay_plan
1608: ,l_grade_or_level
1609: ,l_new_step_or_rate
1610: ,p_pay_calc_data.effective_date

Line 1615: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay

1611: ,l_basic_pay
1612: ,l_dummy_date
1613: ,l_dummy_date );
1614: --
1615: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay
1616: ,l_pay_basis
1617: ,p_pay_calc_data.pay_basis);
1618: --
1619: p_new_step_or_rate := '00';

Line 1632: PROCEDURE get_basic_pay_SAL894_PRDM (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1628: RAISE;
1629: END get_basic_pay_SALWGI_per;
1630:
1631:
1632: PROCEDURE get_basic_pay_SAL894_PRDM (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1633: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1634: ,p_basic_pay OUT NOCOPY NUMBER
1635: ,p_prd OUT NOCOPY VARCHAR2
1636: ,p_PT_eff_start_date OUT NOCOPY DATE) IS

Line 1633: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

1629: END get_basic_pay_SALWGI_per;
1630:
1631:
1632: PROCEDURE get_basic_pay_SAL894_PRDM (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1633: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1634: ,p_basic_pay OUT NOCOPY NUMBER
1635: ,p_prd OUT NOCOPY VARCHAR2
1636: ,p_PT_eff_start_date OUT NOCOPY DATE) IS
1637: --

Line 1701: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);

1697: --
1698: END IF;
1699: ---------Pay Plan should be always 'GS'
1700: ---------l_pay_plan := 'GS';
1701: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);
1702: l_adjustment_percentage := ghr_pay_calc.get_lpa_percentage
1703: (p_pay_calc_data.duty_station_id
1704: ,p_pay_calc_data.effective_date);
1705: --

Line 1702: l_adjustment_percentage := ghr_pay_calc.get_lpa_percentage

1698: END IF;
1699: ---------Pay Plan should be always 'GS'
1700: ---------l_pay_plan := 'GS';
1701: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);
1702: l_adjustment_percentage := ghr_pay_calc.get_lpa_percentage
1703: (p_pay_calc_data.duty_station_id
1704: ,p_pay_calc_data.effective_date);
1705: --
1706: IF l_pay_plan = 'GS' THEN

Line 1711: ghr_pay_calc.get_pay_table_value(l_user_table_id

1707:
1708: hr_utility.set_location('Calculating for GS Plan ..Basic Pay ' || l_proc,15);
1709: hr_utility.set_location('user_table_id..' || to_char(l_user_table_id) ,15);
1710:
1711: ghr_pay_calc.get_pay_table_value(l_user_table_id
1712: ,l_pay_plan
1713: ,l_grade_or_level
1714: ,l_step_or_rate
1715: ,p_pay_calc_data.effective_date

Line 1722: ghr_pay_calc.get_locality_adj_894_PRDM_GS

1718: ,l_dummy_date);
1719:
1720: hr_utility.set_location('Calculating for GS Plan ..Locality Pay ' || l_proc,20);
1721:
1722: ghr_pay_calc.get_locality_adj_894_PRDM_GS
1723: (p_user_table_id => l_user_table_id
1724: ,p_pay_plan => l_pay_plan
1725: ,p_grade_or_level => l_grade_or_level
1726: ,p_step_or_rate => l_step_or_rate

Line 1736: IF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

1732:
1733: p_basic_pay := nvl(l_basic_pay,0);
1734: p_PT_eff_start_date := l_PT_eff_start_date;
1735:
1736: IF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1737: l_spl_basic_pay := ghr_pay_calc.get_standard_pay_table_value
1738: (l_pay_plan
1739: ,l_grade_or_level
1740: ,l_step_or_rate

Line 1737: l_spl_basic_pay := ghr_pay_calc.get_standard_pay_table_value

1733: p_basic_pay := nvl(l_basic_pay,0);
1734: p_PT_eff_start_date := l_PT_eff_start_date;
1735:
1736: IF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1737: l_spl_basic_pay := ghr_pay_calc.get_standard_pay_table_value
1738: (l_pay_plan
1739: ,l_grade_or_level
1740: ,l_step_or_rate
1741: ,p_pay_calc_data.effective_date);

Line 1746: l_A := ghr_pay_calc.get_standard_pay_table_value

1742: l_spl_locality_adj := ROUND(l_spl_basic_pay * (NVL(l_adjustment_percentage,0)/100),0);
1743: l_spl_adj_basic_pay := (l_spl_basic_pay + l_spl_locality_adj);
1744: ELSE
1745: l_spl_basic_pay := nvl(l_basic_pay,0);
1746: l_A := ghr_pay_calc.get_standard_pay_table_value
1747: ('GS'
1748: ,l_grade_or_level
1749: ,l_step_or_rate
1750: ,p_pay_calc_data.effective_date);

Line 1763: IF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

1759: -- Now do the comparison!
1760:
1761: IF (l_basic_pay > l_new_adj_basic_pay) OR
1762: (l_spl_adj_basic_pay > l_new_adj_basic_pay) THEN
1763: IF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1764: p_prd := 0;
1765: ELSE
1766: p_prd := 6;
1767: END IF;

Line 1783: ghr_pay_calc.get_locality_adj_894_PRDM_GM

1779: ,l_dummy_number);
1780:
1781: hr_utility.set_location('Calculating for GM Plan ..Locality Pay ' || l_proc,20);
1782:
1783: ghr_pay_calc.get_locality_adj_894_PRDM_GM
1784: (p_pay_calc_data => p_pay_calc_data
1785: ,p_retained_grade => p_retained_grade
1786: ,p_new_std_relative_rate => l_new_std_relative_rate
1787: ,p_new_adj_basic_pay => l_new_adj_basic_pay

Line 1800: (l_user_table_name <> ghr_pay_calc.l_standard_table_name) THEN

1796: p_prd := 0;
1797: l_new_adj_basic_pay := l_new_std_relative_rate;
1798: --------- l_locality_adj := l_new_adj_basic_pay - l_basic_pay;
1799: ELSIF (l_basic_pay > l_new_adj_basic_pay) AND
1800: (l_user_table_name <> ghr_pay_calc.l_standard_table_name) THEN
1801: p_prd := 6;
1802: l_new_adj_basic_pay := l_basic_pay;
1803: ------------- l_locality_adj := 0;
1804: END IF;

Line 1828: PROCEDURE get_basic_pay (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1824: -- --
1825: --------------------------- --------------------------------------------
1826: -- --
1827: ----------------------------------------------------------------------------------------
1828: PROCEDURE get_basic_pay (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1829: ,p_pay_calc_out_data OUT NOCOPY ghr_pay_calc.pay_calc_out_rec_type
1830: ,p_retained_grade IN OUT NOCOPY ghr_pay_calc.retained_grade_rec_type) IS
1831: --
1832: -- This is the main bit of all the pay calc -- how we get the basic pay , everything else kinda

Line 1829: ,p_pay_calc_out_data OUT NOCOPY ghr_pay_calc.pay_calc_out_rec_type

1825: --------------------------- --------------------------------------------
1826: -- --
1827: ----------------------------------------------------------------------------------------
1828: PROCEDURE get_basic_pay (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1829: ,p_pay_calc_out_data OUT NOCOPY ghr_pay_calc.pay_calc_out_rec_type
1830: ,p_retained_grade IN OUT NOCOPY ghr_pay_calc.retained_grade_rec_type) IS
1831: --
1832: -- This is the main bit of all the pay calc -- how we get the basic pay , everything else kinda
1833: -- falls out from that.

Line 1830: ,p_retained_grade IN OUT NOCOPY ghr_pay_calc.retained_grade_rec_type) IS

1826: -- --
1827: ----------------------------------------------------------------------------------------
1828: PROCEDURE get_basic_pay (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1829: ,p_pay_calc_out_data OUT NOCOPY ghr_pay_calc.pay_calc_out_rec_type
1830: ,p_retained_grade IN OUT NOCOPY ghr_pay_calc.retained_grade_rec_type) IS
1831: --
1832: -- This is the main bit of all the pay calc -- how we get the basic pay , everything else kinda
1833: -- falls out from that.
1834: -- Basically if we can calulate it we will otherwise raise ...

Line 1864: l_retained_grade ghr_pay_calc.retained_grade_rec_type;

1860: AND USER_TABLE_NAME like '0000%';
1861:
1862: l_fws_flag VARCHAR2(5);
1863: l_es_flag VARCHAR2(5);
1864: l_retained_grade ghr_pay_calc.retained_grade_rec_type;
1865: --1360547 Fix
1866: l_open_range_basic_pay NUMBER;
1867: l_chk_user_table VARCHAR2(1) := 'N';
1868: l_890_current_adj_basic_pay NUMBER;

Line 1980: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

1976:
1977: ELSE
1978:
1979:
1980: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
1981: ,p_pay_calc_data.pay_plan
1982: ,p_pay_calc_data.grade_or_level
1983: ,p_pay_calc_data.step_or_rate
1984: ,p_pay_calc_data.effective_date

Line 1997: raise ghr_pay_calc.unable_to_calculate;

1993: ,l_dummy_date);
1994: ELSE
1995: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
1996: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
1997: raise ghr_pay_calc.unable_to_calculate;
1998: END IF;
1999: --
2000: ELSE
2001: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');

Line 2003: raise ghr_pay_calc.unable_to_calculate;

1999: --
2000: ELSE
2001: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');
2002: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2003: raise ghr_pay_calc.unable_to_calculate;
2004: END IF;
2005: ELSIF SUBSTR(p_pay_calc_data.noa_family_code ,1,8) = 'GHR_SAL_' THEN
2006: -- For salary change family we need to further investigate the noac to determine
2007: -- how to do pay

Line 2026: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

2022: OR l_pay_plan IN ('IG') THEN --Bug# 7557159
2023: --
2024: -- This is what we refer to as MAIN_pos
2025: --
2026: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
2027: ,p_pay_calc_data.pay_plan
2028: ,p_pay_calc_data.grade_or_level
2029: ,p_pay_calc_data.step_or_rate
2030: ,p_pay_calc_data.effective_date

Line 2108: raise ghr_pay_calc.open_pay_range_mesg;

2104:
2105: --Begin Bug# 7557159
2106: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2107: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2108: raise ghr_pay_calc.open_pay_range_mesg;
2109: --End Bug# 7557159
2110: ELSE
2111: hr_utility.set_message(8301, 'GHR_38391_NO_CALC_PAY_PLAN_PRD');
2112: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);

Line 2114: raise ghr_pay_calc.unable_to_calculate;

2110: ELSE
2111: hr_utility.set_message(8301, 'GHR_38391_NO_CALC_PAY_PLAN_PRD');
2112: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2113: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2114: raise ghr_pay_calc.unable_to_calculate;
2115: END IF;
2116: --
2117: ELSIF (p_pay_calc_data.effective_date >= to_date('2007/01/07','YYYY/MM/DD') AND
2118: p_pay_calc_data.first_action_la_code1 = 'VGR' ) THEN

Line 2133: raise ghr_pay_calc.pay_calc_message;

2129: IF p_pay_calc_data.noa_code = '891' AND
2130: p_pay_calc_data.effective_date < to_date('2007/01/07','YYYY/MM/DD')THEN --Bug# 5482191
2131: hr_utility.set_message(8301, 'GHR_38248_INV_PAY_PLAN_891');
2132: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2133: raise ghr_pay_calc.pay_calc_message;
2134: --
2135: ELSIF p_pay_calc_data.noa_code IN ('867','892','893') THEN
2136: --
2137: IF p_pay_calc_data.pay_rate_determinant IN ('0','6','M') THEN

Line 2149: raise ghr_pay_calc.open_pay_range_mesg;

2145: ,p_pay_calc_out_data.out_step_or_rate);
2146: --Begin Bug# 7557159
2147: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2148: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2149: raise ghr_pay_calc.open_pay_range_mesg;
2150: --End Bug# 7557159
2151: ELSE
2152: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2153: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);

Line 2154: raise ghr_pay_calc.unable_to_calculate;

2150: --End Bug# 7557159
2151: ELSE
2152: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2153: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2154: raise ghr_pay_calc.unable_to_calculate;
2155: END IF;
2156:
2157: ELSIF (p_pay_calc_data.noa_code IN ('890') AND (l_fws_flag = 'TRUE' or l_es_flag = 'TRUE')) THEN
2158: --

Line 2181: l_890_current_adj_basic_pay := ghr_pay_calc.convert_amount(p_pay_calc_data.current_adj_basic_pay ,'PA','PH');

2177: --BUG 6211029 removed the below call to get_890_pay_table_value as no need of defaulting the step or rate
2178: -- need to be calculated based on the entered step or rate
2179:
2180: /* IF p_pay_calc_data.pay_basis = 'PH' AND p_pay_calc_data.current_adj_basic_pay > 100 THEN
2181: l_890_current_adj_basic_pay := ghr_pay_calc.convert_amount(p_pay_calc_data.current_adj_basic_pay ,'PA','PH');
2182: ELSE
2183: l_890_current_adj_basic_pay := p_pay_calc_data.current_adj_basic_pay;
2184: END IF;
2185:

Line 2198: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

2194: ,p_pay_calc_out_data.basic_pay
2195: ,l_dummy_date
2196: ,l_dummy_date); */
2197:
2198: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
2199: ,p_pay_calc_data.pay_plan
2200: ,p_pay_calc_data.grade_or_level
2201: ,p_pay_calc_data.step_or_rate
2202: ,p_pay_calc_data.effective_date

Line 2210: ghr_pay_calc.get_pay_table_value (p_user_table_id => p_pay_calc_data.user_table_id

2206:
2207:
2208: END IF;
2209: ELSIF p_pay_calc_data.pay_rate_determinant IN ('J','K','R','3','S') THEN
2210: ghr_pay_calc.get_pay_table_value (p_user_table_id => p_pay_calc_data.user_table_id
2211: ,p_pay_plan => p_pay_calc_data.pay_plan
2212: ,p_grade_or_level => p_pay_calc_data.grade_or_level
2213: ,p_step_or_rate => '05'
2214: ,p_effective_date => p_pay_calc_data.effective_date

Line 2229: raise ghr_pay_calc.open_pay_range_mesg;

2225: --
2226: --Begin Bug# 7557159
2227: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2228: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2229: raise ghr_pay_calc.open_pay_range_mesg;
2230: --End Bug# 7557159
2231: ELSE
2232: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2233: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);

Line 2234: raise ghr_pay_calc.unable_to_calculate;

2230: --End Bug# 7557159
2231: ELSE
2232: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2233: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2234: raise ghr_pay_calc.unable_to_calculate;
2235: END IF;
2236:
2237: ELSE -- All other NoaC's for the salary change family (not GM,GH)
2238:

Line 2244: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

2240: -- This is the easy one! refered to as MAIN_pos in the design doc
2241: -- all you have to do is a striaght look up on the user table given, using step,pay_plan,and
2242: -- grade given at the effective date also given
2243: -- Note: need for any conversion since it must already be in the given pay basis
2244: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
2245: ,p_pay_calc_data.pay_plan
2246: ,p_pay_calc_data.grade_or_level
2247: ,p_pay_calc_data.step_or_rate
2248: ,p_pay_calc_data.effective_date

Line 2261: raise ghr_pay_calc.open_pay_range_mesg;

2257: --
2258: --Begin Bug# 7557159
2259: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2260: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2261: raise ghr_pay_calc.open_pay_range_mesg;
2262: --End Bug# 7557159
2263: ELSE
2264: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2265: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);

Line 2266: raise ghr_pay_calc.unable_to_calculate;

2262: --End Bug# 7557159
2263: ELSE
2264: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2265: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2266: raise ghr_pay_calc.unable_to_calculate;
2267: END IF;
2268:
2269: --Pradeep commented for Title 38 Changes
2270: -- IF NOAC = 850 or 855 open up pay fields as well as doing the calc:

Line 2286: raise ghr_pay_calc.unable_to_calculate;

2282: --Bug# 5132113 added pay plan GR condition
2283: /*IF l_pay_plan in('GR') THEN
2284: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2285: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2286: raise ghr_pay_calc.unable_to_calculate;
2287: ELS*/ --Bug# 6342011 Commented
2288: IF p_pay_calc_data.noa_code IN ('891','892') THEN
2289: IF p_pay_calc_data.pay_rate_determinant IN ('0','6') THEN
2290: get_basic_pay_SAL891_pos(p_pay_calc_data

Line 2301: raise ghr_pay_calc.open_pay_range_mesg;

2297: ,p_pay_calc_out_data.out_step_or_rate);
2298: --Begin Bug# 7557159
2299: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2300: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2301: raise ghr_pay_calc.open_pay_range_mesg;
2302: --End Bug# 7557159
2303: ELSE
2304: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2305: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);

Line 2306: raise ghr_pay_calc.unable_to_calculate;

2302: --End Bug# 7557159
2303: ELSE
2304: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2305: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2306: raise ghr_pay_calc.unable_to_calculate;
2307: END IF;
2308: --Begin Bug 5661441 AFHR change
2309:
2310: ELSIF p_pay_calc_data.noa_code IN ('893') THEN

Line 2315: raise ghr_pay_calc.pay_calc_message;

2311: IF p_pay_calc_data.effective_date < to_date('2007/01/07','YYYY/MM/DD')THEN
2312: hr_utility.set_message(8301, 'GHR_INV_PAY_PLAN_893');
2313: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2314: hr_utility.set_message_token('NOAC',p_pay_calc_data.noa_code);
2315: raise ghr_pay_calc.pay_calc_message;
2316: ELSE
2317: IF p_pay_calc_data.pay_rate_determinant IN ('0','6') THEN
2318: get_basic_pay_SAL891_pos(p_pay_calc_data
2319: ,p_pay_calc_out_data.basic_pay

Line 2329: raise ghr_pay_calc.open_pay_range_mesg;

2325: ,p_pay_calc_out_data.out_step_or_rate);
2326: --Begin Bug# 7557159
2327: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2328: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2329: raise ghr_pay_calc.open_pay_range_mesg;
2330: --End Bug# 7557159
2331: ELSE
2332: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2333: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);

Line 2334: raise ghr_pay_calc.unable_to_calculate;

2330: --End Bug# 7557159
2331: ELSE
2332: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2333: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2334: raise ghr_pay_calc.unable_to_calculate;
2335: END IF;
2336: END IF;
2337:
2338: --end Bug 5661441 AFHR change

Line 2343: raise ghr_pay_calc.pay_calc_message;

2339: ELSIF p_pay_calc_data.noa_code IN ('867') THEN --AFHR change 893 removed
2340: hr_utility.set_message(8301, 'GHR_INV_PAY_PLAN_893');
2341: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2342: hr_utility.set_message_token('NOAC',p_pay_calc_data.noa_code);
2343: raise ghr_pay_calc.pay_calc_message;
2344: --
2345: --Begin Bug# 7557159
2346: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2347: hr_utility.set_message(8301, 'GHR_38520_PRD_D');

Line 2348: raise ghr_pay_calc.open_pay_range_mesg;

2344: --
2345: --Begin Bug# 7557159
2346: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2347: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2348: raise ghr_pay_calc.open_pay_range_mesg;
2349: --End Bug# 7557159
2350: ELSE
2351: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');
2352: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);

Line 2353: raise ghr_pay_calc.unable_to_calculate;

2349: --End Bug# 7557159
2350: ELSE
2351: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');
2352: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2353: raise ghr_pay_calc.unable_to_calculate;
2354: END IF;
2355: --
2356: END IF;
2357: --Begin Bug# 7557159

Line 2360: raise ghr_pay_calc.open_pay_range_mesg;

2356: END IF;
2357: --Begin Bug# 7557159
2358: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2359: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2360: raise ghr_pay_calc.open_pay_range_mesg;
2361: --End Bug# 7557159
2362: ELSE
2363: hr_utility.set_message(8301, 'GHR_38261_NO_CALC_FAMILY');
2364: hr_utility.set_message_token('FAMILY',p_pay_calc_data.noa_family_code);

Line 2365: raise ghr_pay_calc.unable_to_calculate;

2361: --End Bug# 7557159
2362: ELSE
2363: hr_utility.set_message(8301, 'GHR_38261_NO_CALC_FAMILY');
2364: hr_utility.set_message_token('FAMILY',p_pay_calc_data.noa_family_code);
2365: raise ghr_pay_calc.unable_to_calculate;
2366: END IF;
2367: --
2368: --Begin Bug# 7557159
2369: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN

Line 2371: raise ghr_pay_calc.open_pay_range_mesg;

2367: --
2368: --Begin Bug# 7557159
2369: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2370: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2371: raise ghr_pay_calc.open_pay_range_mesg;
2372: --End Bug# 7557159
2373: ELSE
2374: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');
2375: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);

Line 2376: raise ghr_pay_calc.unable_to_calculate;

2372: --End Bug# 7557159
2373: ELSE
2374: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');
2375: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2376: raise ghr_pay_calc.unable_to_calculate;
2377: END IF;
2378: --Begin Bug# 7557159
2379: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2380: hr_utility.set_message(8301, 'GHR_38520_PRD_D');

Line 2381: raise ghr_pay_calc.open_pay_range_mesg;

2377: END IF;
2378: --Begin Bug# 7557159
2379: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2380: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2381: raise ghr_pay_calc.open_pay_range_mesg;
2382: --End Bug# 7557159
2383: ELSE
2384: hr_utility.set_message(8301, 'GHR_38262_NO_CALC_PAY_BASIS');
2385: -- It could be either the position pay basis or the retained pay basis as to why we couldn't

Line 2396: raise ghr_pay_calc.unable_to_calculate;

2392: hr_utility.set_message_token('PAY_BASIS',
2393: ghr_pa_requests_pkg.get_lookup_meaning(800,'GHR_US_PAY_BASIS'
2394: ,l_pay_basis));
2395: END IF;
2396: raise ghr_pay_calc.unable_to_calculate;
2397: END IF;
2398: ELSE
2399: hr_utility.set_message(8301, 'GHR_38263_NO_CALC_DUAL_ACTION');
2400: raise ghr_pay_calc.unable_to_calculate;

Line 2400: raise ghr_pay_calc.unable_to_calculate;

2396: raise ghr_pay_calc.unable_to_calculate;
2397: END IF;
2398: ELSE
2399: hr_utility.set_message(8301, 'GHR_38263_NO_CALC_DUAL_ACTION');
2400: raise ghr_pay_calc.unable_to_calculate;
2401: END IF;
2402: END IF;
2403:
2404: EXCEPTION

Line 2518: l_new_loc_perc_factor := (NVL(ghr_pay_calc.get_lpa_percentage(l_duty_station_id

2514: l_new_basic_pay := l_min_cur_basic_pay + ROUND((l_temp2_basic_pay * (l_max_cur_basic_pay - l_min_cur_basic_pay)),0);
2515: -- End ->> Calculation Of New Basic Pay
2516:
2517: -- Start ->> Calculation of Adjusted Basic Pay
2518: l_new_loc_perc_factor := (NVL(ghr_pay_calc.get_lpa_percentage(l_duty_station_id
2519: ,l_PT_eff_start_date
2520: )
2521: ,0
2522: )

Line 2680: l_new_loc_perc_factor := (NVL(ghr_pay_calc.get_lpa_percentage(l_duty_station_id

2676: l_new_special_rate := l_min_sp_basic_pay + ROUND (((l_max_sp_basic_pay - l_min_sp_basic_pay) * l_new_special_rate),0);
2677: -- End -->> Calculate relative rate in range for the special rate
2678:
2679: -- Start ->> Calculation of Locality Rate
2680: l_new_loc_perc_factor := (NVL(ghr_pay_calc.get_lpa_percentage(l_duty_station_id
2681: ,l_PT_eff_start_date
2682: )
2683: ,0
2684: )

Line 2707: PROCEDURE get_basic_pay_SAL890_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

2703:
2704: END get_wgi_GM_sp_basic_pay;
2705: --
2706:
2707: PROCEDURE get_basic_pay_SAL890_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
2708: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
2709: ,p_pay_table_data IN VARCHAR2
2710: ,p_basic_pay OUT NOCOPY NUMBER
2711: ) IS

Line 2708: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

2704: END get_wgi_GM_sp_basic_pay;
2705: --
2706:
2707: PROCEDURE get_basic_pay_SAL890_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
2708: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
2709: ,p_pay_table_data IN VARCHAR2
2710: ,p_basic_pay OUT NOCOPY NUMBER
2711: ) IS
2712: l_user_table_id NUMBER;

Line 2775: ghr_pay_calc.get_open_pay_table_values(p_user_table_id => l_user_table_id

2771: l_org_id := cur_get_pos_org_rec.organization_id;
2772: END LOOP;
2773:
2774: --fetching min and max range values on the preceding day of pay adjustment
2775: ghr_pay_calc.get_open_pay_table_values(p_user_table_id => l_user_table_id
2776: ,p_pay_plan => l_pay_plan
2777: ,p_grade_or_level => l_grade_or_level
2778: ,p_effective_date => l_effective_date-1
2779: ,p_row_high => l_old_rangeval_max

Line 2783: ghr_pay_calc.get_open_pay_table_values(p_user_table_id => l_user_table_id

2779: ,p_row_high => l_old_rangeval_max
2780: ,p_row_low => l_old_rangeval_min);
2781:
2782: --fetching current min and max range values
2783: ghr_pay_calc.get_open_pay_table_values(p_user_table_id => l_user_table_id
2784: ,p_pay_plan => l_pay_plan
2785: ,p_grade_or_level => l_grade_or_level
2786: ,p_effective_date => l_effective_date
2787: ,p_row_high => l_new_rangeval_max

Line 2802: l_new_non_perfagn_max := ghr_pay_calc.get_standard_pay_table_value('EX'

2798: p_business_group_id => l_business_group_id,
2799: p_effective_date => l_effective_date);
2800:
2801: IF NOT(ghr_pay_caps.perf_certified(l_agency_subele_code,l_org_id, l_pay_plan, l_effective_date)) THEN
2802: l_new_non_perfagn_max := ghr_pay_calc.get_standard_pay_table_value('EX'
2803: ,'03'
2804: ,'00'
2805: ,l_effective_date);
2806: l_old_non_perfagn_max := ghr_pay_calc.get_standard_pay_table_value('EX'

Line 2806: l_old_non_perfagn_max := ghr_pay_calc.get_standard_pay_table_value('EX'

2802: l_new_non_perfagn_max := ghr_pay_calc.get_standard_pay_table_value('EX'
2803: ,'03'
2804: ,'00'
2805: ,l_effective_date);
2806: l_old_non_perfagn_max := ghr_pay_calc.get_standard_pay_table_value('EX'
2807: ,'03'
2808: ,'00'
2809: ,l_effective_date-1);
2810: l_new_rangeval_max := l_new_non_perfagn_max;