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 111: raise ghr_pay_calc.pay_calc_message;

107: OR l_retained_grade_rec.pay_plan IS NULL
108: OR l_retained_grade_rec.user_table_id IS NULL
109: OR l_retained_grade_rec.pay_basis IS NULL THEN
110: hr_utility.set_message(8301, 'GHR_38255_MISSING_RETAINED_DET');
111: raise ghr_pay_calc.pay_calc_message;
112: END IF;
113: --
114: IF l_record_found THEN
115: hr_utility.set_location(' get_retained_grade_details ' ,5);

Line 118: ghr_pay_calc.get_pay_table_value (l_retained_grade_rec.user_table_id

114: IF l_record_found THEN
115: hr_utility.set_location(' get_retained_grade_details ' ,5);
116: -- only if we have previously found a retained record with the same start date do we bother
117: -- getting the values to compare
118: ghr_pay_calc.get_pay_table_value (l_retained_grade_rec.user_table_id
119: ,l_retained_grade_rec.pay_plan
120: ,l_retained_grade_rec.grade_or_level
121: ,l_retained_grade_rec.step_or_rate
122: ,p_effective_date

Line 127: ghr_pay_calc.get_pay_table_value (l_last_retained_grade_rec.user_table_id

123: ,l_cur_pay_table_value
124: ,l_dummy_date
125: ,l_dummy_date);
126:
127: ghr_pay_calc.get_pay_table_value (l_last_retained_grade_rec.user_table_id
128: ,l_last_retained_grade_rec.pay_plan
129: ,l_last_retained_grade_rec.grade_or_level
130: ,l_last_retained_grade_rec.step_or_rate
131: ,p_effective_date

Line 139: l_last_pay_table_value_conv := ghr_pay_calc.convert_amount

135:
136: -- if they are different pay basis Convert the last retained ggrade to the pay basis
137: -- of the current
138: IF l_last_retained_grade_rec.pay_basis <> l_retained_grade_rec.pay_basis THEN
139: l_last_pay_table_value_conv := ghr_pay_calc.convert_amount
140: (l_last_pay_table_value
141: ,l_last_retained_grade_rec.pay_basis
142: ,l_retained_grade_rec.pay_basis);
143: ELSE

Line 187: raise ghr_pay_calc.pay_calc_message;

183: hr_utility.set_location(' get_retained_grade_details ' ,7);
184: RETURN (l_retained_grade_rec);
185: ELSE
186: hr_utility.set_message(8301, 'GHR_38256_NO_RETAINED_GRADE');
187: raise ghr_pay_calc.pay_calc_message;
188: END IF;
189:
190: END get_retained_grade_details ;
191: --

Line 197: RETURN ghr_pay_calc.retained_grade_rec_type IS

193: -- before the MSL effective date.
194: FUNCTION get_expired_rg_details (p_person_id IN NUMBER
195: ,p_effective_date IN DATE
196: ,p_pa_request_id IN NUMBER DEFAULT NULL)
197: RETURN ghr_pay_calc.retained_grade_rec_type IS
198: --
199: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
200: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
201: --

Line 199: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;

195: ,p_effective_date IN DATE
196: ,p_pa_request_id IN NUMBER DEFAULT NULL)
197: RETURN ghr_pay_calc.retained_grade_rec_type IS
198: --
199: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
200: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
201: --
202: l_last_pay_table_value NUMBER;
203: l_last_pay_table_value_conv NUMBER;

Line 200: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;

196: ,p_pa_request_id IN NUMBER DEFAULT NULL)
197: RETURN ghr_pay_calc.retained_grade_rec_type IS
198: --
199: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
200: l_last_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
201: --
202: l_last_pay_table_value NUMBER;
203: l_last_pay_table_value_conv NUMBER;
204: l_cur_pay_table_value NUMBER;

Line 283: raise ghr_pay_calc.pay_calc_message;

279: OR l_retained_grade_rec.pay_plan IS NULL
280: OR l_retained_grade_rec.user_table_id IS NULL
281: OR l_retained_grade_rec.pay_basis IS NULL THEN
282: hr_utility.set_message(8301, 'GHR_38255_MISSING_RETAINED_DET');
283: raise ghr_pay_calc.pay_calc_message;
284: END IF;
285: --
286: IF l_record_found THEN
287: hr_utility.set_location(' get_expired_rg_details ' ,5);

Line 290: ghr_pay_calc.get_pay_table_value (l_retained_grade_rec.user_table_id

286: IF l_record_found THEN
287: hr_utility.set_location(' get_expired_rg_details ' ,5);
288: -- only if we have previously found a retained record with the same start date do we bother
289: -- getting the values to compare
290: ghr_pay_calc.get_pay_table_value (l_retained_grade_rec.user_table_id
291: ,l_retained_grade_rec.pay_plan
292: ,l_retained_grade_rec.grade_or_level
293: ,l_retained_grade_rec.step_or_rate
294: ,p_effective_date

Line 299: ghr_pay_calc.get_pay_table_value (l_last_retained_grade_rec.user_table_id

295: ,l_cur_pay_table_value
296: ,l_dummy_date
297: ,l_dummy_date);
298:
299: ghr_pay_calc.get_pay_table_value (l_last_retained_grade_rec.user_table_id
300: ,l_last_retained_grade_rec.pay_plan
301: ,l_last_retained_grade_rec.grade_or_level
302: ,l_last_retained_grade_rec.step_or_rate
303: ,p_effective_date

Line 311: l_last_pay_table_value_conv := ghr_pay_calc.convert_amount

307:
308: -- if they are different pay basis Convert the last retained ggrade to the pay basis
309: -- of the current
310: IF l_last_retained_grade_rec.pay_basis <> l_retained_grade_rec.pay_basis THEN
311: l_last_pay_table_value_conv := ghr_pay_calc.convert_amount
312: (l_last_pay_table_value
313: ,l_last_retained_grade_rec.pay_basis
314: ,l_retained_grade_rec.pay_basis);
315: ELSE

Line 335: raise ghr_pay_calc.pay_calc_message;

331: hr_utility.set_location(' get_expired_rg_details ' ,7);
332: RETURN (l_retained_grade_rec);
333: ELSE
334: hr_utility.set_message(8301, 'GHR_38256_NO_RETAINED_GRADE');
335: raise ghr_pay_calc.pay_calc_message;
336: END IF;
337:
338: END get_expired_rg_details ;
339: --

Line 341: PROCEDURE get_basic_pay_MAIN_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

337:
338: END get_expired_rg_details ;
339: --
340:
341: PROCEDURE get_basic_pay_MAIN_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
342: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
343: ,p_basic_pay OUT NOCOPY NUMBER
344: ,p_PT_eff_start_date OUT NOCOPY DATE) IS
345: l_basic_pay NUMBER;

Line 342: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

338: END get_expired_rg_details ;
339: --
340:
341: PROCEDURE get_basic_pay_MAIN_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
342: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
343: ,p_basic_pay OUT NOCOPY NUMBER
344: ,p_PT_eff_start_date OUT NOCOPY DATE) IS
345: l_basic_pay NUMBER;
346: l_dummy_date DATE;

Line 349: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

345: l_basic_pay NUMBER;
346: l_dummy_date DATE;
347: BEGIN
348: IF p_retained_grade.temp_step is not null then
349: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
350: ,p_pay_calc_data.pay_plan
351: ,p_pay_calc_data.grade_or_level
352: ,p_retained_grade.temp_step
353: ,p_pay_calc_data.effective_date

Line 359: ghr_pay_calc.get_pay_table_value(p_retained_grade.user_table_id

355: ,p_PT_eff_start_date
356: ,l_dummy_date);
357: p_basic_pay := l_basic_pay;
358: ELSE
359: ghr_pay_calc.get_pay_table_value(p_retained_grade.user_table_id
360: ,p_retained_grade.pay_plan
361: ,p_retained_grade.grade_or_level
362: ,p_retained_grade.step_or_rate
363: ,p_pay_calc_data.effective_date

Line 369: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay

365: ,p_PT_eff_start_date
366: ,l_dummy_date);
367: --
368: -- need to convert to whatever the displayed value is
369: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay
370: ,p_retained_grade.pay_basis
371: ,p_pay_calc_data.pay_basis);
372: END IF;
373:

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

424: l_record_found := TRUE;
425: IF l_PT_value IS NULL THEN
426: -- Set tokens to give name of pay table, pay plan, grade, step and rate
427: hr_utility.set_message(8301,'GHR_38252_NULL_PAY_PLAN_VALUE');
428: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
429: hr_utility.set_message_token('STEP',cur_pay_rec.step_or_rate);
430: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
431: hr_utility.set_message_token('GRADE',p_grade_or_level);
432: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );

Line 434: raise ghr_pay_calc.pay_calc_message;

430: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
431: hr_utility.set_message_token('GRADE',p_grade_or_level);
432: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
433: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
434: raise ghr_pay_calc.pay_calc_message;
435: END IF;
436: EXIT;
437: END LOOP;
438: --

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

439: IF NOT l_record_found THEN
440: -- Set tokens to give name of pay table, pay plan, grade, step and rate
441: -- Note: the is no step!
442: hr_utility.set_message(8301,'GHR_38257_NO_MIN_PAY_PLAN_VAL');
443: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
444: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
445: hr_utility.set_message_token('GRADE',p_grade_or_level);
446: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
447: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );

Line 448: raise ghr_pay_calc.pay_calc_message;

444: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
445: hr_utility.set_message_token('GRADE',p_grade_or_level);
446: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
447: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
448: raise ghr_pay_calc.pay_calc_message;
449: END IF;
450: --
451:
452: EXCEPTION

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

504:
505: IF l_PT_value IS NULL THEN
506: -- Set tokens to give name of pay table, pay plan, grade, step and rate
507: hr_utility.set_message(8301,'GHR_38252_NULL_PAY_PLAN_VALUE');
508: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
509: hr_utility.set_message_token('STEP',cur_pay_rec.step_or_rate);
510: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
511: hr_utility.set_message_token('GRADE',p_grade_or_level);
512: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );

Line 514: raise ghr_pay_calc.pay_calc_message;

510: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
511: hr_utility.set_message_token('GRADE',p_grade_or_level);
512: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
513: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
514: raise ghr_pay_calc.pay_calc_message;
515: END IF;
516: EXIT;
517: END LOOP;
518: --

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

518: --
519: IF NOT l_record_found THEN
520: -- Set tokens to give name of pay table, pay plan, grade, step and rate
521: hr_utility.set_message(8301,'GHR_38258_NO_MAX_PAY_PLAN_VAL');
522: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
523: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
524: hr_utility.set_message_token('GRADE',p_grade_or_level);
525: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
526: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );

Line 527: raise ghr_pay_calc.pay_calc_message;

523: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
524: hr_utility.set_message_token('GRADE',p_grade_or_level);
525: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
526: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
527: raise ghr_pay_calc.pay_calc_message;
528: END IF;
529: --
530:
531: EXCEPTION

Line 590: ghr_pay_calc.get_pay_table_value (p_user_table_id => p_user_table_id

586: -- this will be passed as '01' if the value of User entered step or rate is greater than the
587: -- basic pay then need to consider the same otherwise need to be autopopulated with
588: -- the Minimum step or rate having value greater than the adjusted basic pay
589: IF p_in_step_or_rate is not null THEN
590: ghr_pay_calc.get_pay_table_value (p_user_table_id => p_user_table_id
591: ,p_pay_plan => p_pay_plan
592: ,p_grade_or_level => p_grade_or_level
593: ,p_step_or_rate => p_in_step_or_rate
594: ,p_effective_date => p_effective_date

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

615:
616: IF l_PT_value IS NULL THEN
617: -- Set tokens to give name of pay table, pay plan, grade, step and rate
618: hr_utility.set_message(8301,'GHR_38252_NULL_PAY_PLAN_VALUE');
619: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
620: hr_utility.set_message_token('STEP',cur_pay_rec.step_or_rate);
621: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
622: hr_utility.set_message_token('GRADE',p_grade_or_level);
623: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );

Line 625: raise ghr_pay_calc.pay_calc_message;

621: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
622: hr_utility.set_message_token('GRADE',p_grade_or_level);
623: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
624: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );
625: raise ghr_pay_calc.pay_calc_message;
626: END IF;
627: EXIT;
628: END IF;
629: END LOOP;

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

631: --
632: IF NOT l_record_found THEN
633: -- Set tokens to give name of pay table, pay plan, grade, step and rate
634: hr_utility.set_message(8301,'GHR_38258_NO_MAX_PAY_PLAN_VAL');
635: hr_utility.set_message_token('PAY_TABLE_NAME',ghr_pay_calc.get_user_table_name(p_user_table_id) );
636: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
637: hr_utility.set_message_token('GRADE',p_grade_or_level);
638: -- hr_utility.set_message_token('EFF_DATE',TO_CHAR(p_effective_date,'DD-MON-YYYY') );
639: hr_utility.set_message_token('EFF_DATE',fnd_date.date_to_chardate(p_effective_date) );

Line 640: raise ghr_pay_calc.pay_calc_message;

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

Line 719: PROCEDURE get_basic_pay_SAL891_pos (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

715: RAISE;
716: END get_min_pay_table_value_GT_X;
717: --
718: --
719: PROCEDURE get_basic_pay_SAL891_pos (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
720: ,p_basic_pay OUT NOCOPY NUMBER
721: ,p_step_or_rate OUT NOCOPY VARCHAR2) IS
722: --
723: l_min_basic_pay NUMBER;

Line 779: PROCEDURE get_basic_pay_SAL891_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

775:
776: RAISE;
777: END get_basic_pay_SAL891_pos;
778: --
779: PROCEDURE get_basic_pay_SAL891_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
780: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
781: ,p_basic_pay OUT NOCOPY NUMBER
782: ,p_step_or_rate OUT NOCOPY VARCHAR2) IS
783: --

Line 780: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

776: RAISE;
777: END get_basic_pay_SAL891_pos;
778: --
779: PROCEDURE get_basic_pay_SAL891_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
780: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
781: ,p_basic_pay OUT NOCOPY NUMBER
782: ,p_step_or_rate OUT NOCOPY VARCHAR2) IS
783: --
784: -- This one always uses the retained grade details no matter what

Line 850: raise ghr_pay_calc.pay_calc_message;

846: BEGIN
847: IF p_PT_date <> p_eff_start_date THEN
848: hr_utility.set_message(8301,'GHR_38395_NOT_CURRENT_PT');
849: -- hr_utility.set_message_token('PAY_TABLE_NAME',get_user_table_name(p_user_table_id) );
850: raise ghr_pay_calc.pay_calc_message;
851: END IF;
852: END check_current_PT;
853: --
854: PROCEDURE check_old_PT (p_PT_date IN DATE

Line 861: raise ghr_pay_calc.pay_calc_message;

857: /* This procedure is no more required as per Bug 3837402 .
858: IF p_PT_date -1 <> p_eff_end_date THEN
859: hr_utility.set_message(8301,'GHR_38396_NOT_OLD_PT');
860: -- hr_utility.set_message_token('PAY_TABLE_NAME',get_user_table_name(p_user_table_id) );
861: raise ghr_pay_calc.pay_calc_message;
862: END IF;
863: */
864: null;
865:

Line 868: PROCEDURE get_basic_pay_SAL894_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

864: null;
865:
866: END check_old_PT;
867: --
868: PROCEDURE get_basic_pay_SAL894_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
869: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
870: ,p_pay_table_data IN VARCHAR2
871: ,p_basic_pay OUT NOCOPY NUMBER
872: ,p_PT_eff_start_date OUT NOCOPY DATE

Line 869: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

865:
866: END check_old_PT;
867: --
868: PROCEDURE get_basic_pay_SAL894_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
869: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
870: ,p_pay_table_data IN VARCHAR2
871: ,p_basic_pay OUT NOCOPY NUMBER
872: ,p_PT_eff_start_date OUT NOCOPY DATE
873: ,p_7dp OUT NOCOPY NUMBER) IS

Line 930: ghr_pay_calc.get_pay_table_value(l_user_table_id

926: END IF;
927: END IF;
928: --AVR
929: -- Get current value just to get the Pay Table effective date
930: ghr_pay_calc.get_pay_table_value(l_user_table_id
931: ,l_pay_plan
932: ,l_grade_or_level
933: ,'01'
934: ,p_pay_calc_data.effective_date

Line 1023: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay

1019:
1020: l_basic_pay := CEIL(l_E + l_min_cur_basic_pay);
1021:
1022: --
1023: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay
1024: ,l_pay_basis
1025: ,p_pay_calc_data.pay_basis);
1026: --
1027: p_PT_eff_start_date := l_PT_eff_start_date;

Line 1043: PROCEDURE get_basic_pay_SAL894_50 (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1039: RAISE;
1040: END get_basic_pay_SAL894_6step;
1041: --
1042: --
1043: PROCEDURE get_basic_pay_SAL894_50 (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1044: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1045: ,p_pay_table_data IN VARCHAR2
1046: ,p_basic_pay OUT NOCOPY NUMBER
1047: ,p_step OUT NOCOPY VARCHAR2

Line 1044: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

1040: END get_basic_pay_SAL894_6step;
1041: --
1042: --
1043: PROCEDURE get_basic_pay_SAL894_50 (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1044: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1045: ,p_pay_table_data IN VARCHAR2
1046: ,p_basic_pay OUT NOCOPY NUMBER
1047: ,p_step OUT NOCOPY VARCHAR2
1048: ,p_prd OUT NOCOPY VARCHAR2

Line 1079: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;

1075: --Bug 3180991
1076: l_old_user_table_id NUMBER;
1077: l_asg_ei_data per_assignment_extra_info%rowtype;
1078: l_prd_effective_date date;
1079: l_retained_grade_rec ghr_pay_calc.retained_grade_rec_type;
1080: l_position_id per_assignments_f.position_id%type;
1081: l_assignment_id per_assignments_f.assignment_id%type;
1082: l_temp_step per_people_extra_info.pei_information6%type;
1083: l_effective_date date;

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

1188: hr_utility.set_location(' get_basic_pay_SAL894_50 l_asg_ei_data.aei_information6 ' ||l_asg_ei_data.aei_information6 ,11);
1189:
1190: IF l_asg_ei_data.aei_information6 NOT IN ('A','B','E','F','U','V') THEN
1191:
1192: l_old_user_table_id := ghr_pay_calc.get_user_table_id( l_position_id , l_prd_effective_date );
1193: hr_utility.set_location(' get_basic_pay_SAL894_50 l_old_user_table_id ' ||l_old_user_table_id ,13);
1194:
1195: ELSE
1196:

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

1216:
1217: hr_utility.set_location(' get_basic_pay_SAL894_50 temp step after loop' ||l_temp_step ,14);
1218: hr_utility.set_location(' get_basic_pay_SAL894_50 l_old_user_table_id after loop' ||l_old_user_table_id ,14);
1219:
1220: --check for temp promotion and temp step is not null then use ghr_pay_calc.get_user_table_id.
1221: IF l_temp_step IS NOT NULL THEN
1222: l_old_user_table_id := ghr_pay_calc.get_user_table_id( l_position_id , l_prd_effective_date );
1223: hr_utility.set_location(' get_basic_pay_SAL894_50 if l_old_user_table_id ' ||l_old_user_table_id ,15);
1224: END IF;

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

1218: hr_utility.set_location(' get_basic_pay_SAL894_50 l_old_user_table_id after loop' ||l_old_user_table_id ,14);
1219:
1220: --check for temp promotion and temp step is not null then use ghr_pay_calc.get_user_table_id.
1221: IF l_temp_step IS NOT NULL THEN
1222: l_old_user_table_id := ghr_pay_calc.get_user_table_id( l_position_id , l_prd_effective_date );
1223: hr_utility.set_location(' get_basic_pay_SAL894_50 if l_old_user_table_id ' ||l_old_user_table_id ,15);
1224: END IF;
1225:
1226: END IF;

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

1250: check_old_PT (l_PT_eff_start_date, l_eff_end_date);
1251: --
1252: END IF;
1253: */
1254: l_converted_increase := ghr_pay_calc.convert_amount( (l_max_cur_basic_pay - l_max_old_basic_pay)/2
1255: ,l_pay_basis
1256: ,p_pay_calc_data.pay_basis);
1257: --
1258:

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

1285:
1286: IF l_pos_basic_pay IS NULL THEN
1287: -- For pay plan CA need to check it hasn't exceeded EX-04 (table 0000 step 00)
1288: IF l_pay_plan = 'CA' THEN
1289: IF l_ret_basic_pay > ghr_pay_calc.get_standard_pay_table_value('EX'
1290: ,'04'
1291: ,'00'
1292: ,p_pay_calc_data.effective_date) THEN
1293: hr_utility.set_message(8301, 'GHR_38587_NO_CALC_EXCEED_EX_IV');

Line 1295: raise ghr_pay_calc.unable_to_calculate;

1291: ,'00'
1292: ,p_pay_calc_data.effective_date) THEN
1293: hr_utility.set_message(8301, 'GHR_38587_NO_CALC_EXCEED_EX_IV');
1294: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
1295: raise ghr_pay_calc.unable_to_calculate;
1296: ELSE
1297: p_basic_pay := l_ret_basic_pay;
1298: p_step := '00';
1299: p_prd := NULL;

Line 1311: raise ghr_pay_calc.unable_to_calculate;

1307: -- Do not know what to do if pay plan is ES or IE and pay retention is terminated!
1308: IF l_pay_plan = 'CA' THEN
1309: hr_utility.set_message(8301, 'GHR_38588_NO_CALC_PAY_RET_END');
1310: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
1311: raise ghr_pay_calc.unable_to_calculate;
1312: ELSE
1313: p_basic_pay := l_pos_basic_pay;
1314: p_step := l_pos_step;
1315: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);

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

1311: raise ghr_pay_calc.unable_to_calculate;
1312: ELSE
1313: p_basic_pay := l_pos_basic_pay;
1314: p_step := l_pos_step;
1315: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);
1316: IF p_pay_calc_data.pay_rate_determinant IN ('J','K','R','S','3') THEN
1317: IF l_pay_basis = 'PH' THEN
1318: p_prd := 0;
1319: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

Line 1319: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

1315: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);
1316: IF p_pay_calc_data.pay_rate_determinant IN ('J','K','R','S','3') THEN
1317: IF l_pay_basis = 'PH' THEN
1318: p_prd := 0;
1319: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1320: p_prd := '0';
1321: ELSE
1322: p_prd := '6';
1323: END IF;

Line 1327: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

1323: END IF;
1324: ELSIF p_pay_calc_data.pay_rate_determinant = 'U' THEN
1325: IF l_pay_basis = 'PH' THEN
1326: p_prd := 'B';
1327: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1328: p_prd := 'B';
1329: ELSE
1330: p_prd := 'F';
1331: END IF;

Line 1335: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

1331: END IF;
1332: ELSIF p_pay_calc_data.pay_rate_determinant = 'V' THEN
1333: IF l_pay_basis = 'PH' THEN
1334: p_prd := 'A';
1335: ELSIF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1336: p_prd := 'A';
1337: ELSE
1338: p_prd := 'E';
1339: END IF;

Line 1360: PROCEDURE get_basic_pay_SAL894_100 (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1356:
1357: END get_basic_pay_SAL894_50;
1358: --
1359: --
1360: PROCEDURE get_basic_pay_SAL894_100 (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1361: ,p_basic_pay OUT NOCOPY NUMBER
1362: ,p_PT_eff_start_date OUT NOCOPY DATE) IS
1363: --
1364: l_dummy_step VARCHAR2(30);

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

1395:
1396: l_effective_date := p_pay_calc_data.effective_date;
1397: --
1398: --Bug# 3180991
1399: l_old_user_table_id := ghr_pay_calc.get_user_table_id( p_pay_calc_data.position_id, l_PT_eff_start_date-1 );
1400: --Bug# 3180991
1401:
1402: get_max_pay_table_value(l_old_user_table_id
1403: ,l_pay_plan

Line 1468: raise ghr_pay_calc.pay_calc_message;

1464: -- If we got here no record was returned
1465: -- set tokens to say the user table name and pay_plan that was used
1466: hr_utility.set_message(8301, 'GHR_38259_NO_WGI_STEP');
1467: hr_utility.set_message_token('PAY_PLAN',p_pay_plan);
1468: raise ghr_pay_calc.pay_calc_message;
1469: --
1470: END get_next_WGI_step;
1471: --
1472: PROCEDURE get_basic_pay_SALWGI_pos (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

Line 1472: PROCEDURE get_basic_pay_SALWGI_pos (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1468: raise ghr_pay_calc.pay_calc_message;
1469: --
1470: END get_next_WGI_step;
1471: --
1472: PROCEDURE get_basic_pay_SALWGI_pos (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1473: ,p_basic_pay OUT NOCOPY NUMBER
1474: ,p_new_step_or_rate OUT NOCOPY VARCHAR2) IS
1475: --
1476: l_new_step_or_rate VARCHAR2(30);

Line 1488: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

1484: --
1485: l_new_step_or_rate := get_next_WGI_step (p_pay_calc_data.pay_plan
1486: ,p_pay_calc_data.current_step_or_rate);
1487:
1488: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
1489: ,p_pay_calc_data.pay_plan
1490: ,p_pay_calc_data.grade_or_level
1491: ,l_new_step_or_rate
1492: ,p_pay_calc_data.effective_date

Line 1510: PROCEDURE get_basic_pay_SALWGI_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1506:
1507: RAISE;
1508: END get_basic_pay_SALWGI_pos;
1509: --
1510: PROCEDURE get_basic_pay_SALWGI_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1511: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1512: ,p_basic_pay OUT NOCOPY NUMBER
1513: ,p_new_step_or_rate OUT NOCOPY VARCHAR2) IS
1514: --

Line 1511: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

1507: RAISE;
1508: END get_basic_pay_SALWGI_pos;
1509: --
1510: PROCEDURE get_basic_pay_SALWGI_per (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1511: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1512: ,p_basic_pay OUT NOCOPY NUMBER
1513: ,p_new_step_or_rate OUT NOCOPY VARCHAR2) IS
1514: --
1515: -- This one always uses the retained grade details no matter what

Line 1528: l_retained_grade ghr_pay_calc.retained_grade_rec_type;

1524: l_user_table_id NUMBER;
1525: l_pay_basis VARCHAR2(30);
1526: --Bug 3021003
1527: l_ret_flag BOOLEAN;
1528: l_retained_grade ghr_pay_calc.retained_grade_rec_type;
1529: l_temp_step VARCHAR2(30);
1530:
1531: BEGIN
1532: -- This is the calcualation of a salary Change (SALARY_CHG) noac codes 867 - Interim Within Grade Increase,

Line 1563: ghr_pay_calc.is_retained_ia(p_pay_calc_data.person_id,

1559:
1560: IF nvl(g_noa_family_code,'XXX') = 'CORRECT' then
1561: -- Bug 3021003
1562: hr_utility.set_location('NAR inside noa_fam code = CORRECT ',5);
1563: ghr_pay_calc.is_retained_ia(p_pay_calc_data.person_id,
1564: p_pay_calc_data.effective_date,
1565: l_retained_grade.pay_plan,
1566: l_retained_grade.grade_or_level,
1567: l_retained_grade.step_or_rate,

Line 1589: ghr_pay_calc.get_pay_table_value(l_user_table_id

1585: l_new_step_or_rate := get_next_WGI_step (l_pay_plan
1586: ,l_step_or_rate);
1587: END IF;
1588:
1589: ghr_pay_calc.get_pay_table_value(l_user_table_id
1590: ,l_pay_plan
1591: ,l_grade_or_level
1592: ,l_new_step_or_rate
1593: ,p_pay_calc_data.effective_date

Line 1598: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay

1594: ,l_basic_pay
1595: ,l_dummy_date
1596: ,l_dummy_date );
1597: --
1598: p_basic_pay := ghr_pay_calc.convert_amount(l_basic_pay
1599: ,l_pay_basis
1600: ,p_pay_calc_data.pay_basis);
1601: --
1602: p_new_step_or_rate := '00';

Line 1615: PROCEDURE get_basic_pay_SAL894_PRDM (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1611: RAISE;
1612: END get_basic_pay_SALWGI_per;
1613:
1614:
1615: PROCEDURE get_basic_pay_SAL894_PRDM (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1616: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1617: ,p_basic_pay OUT NOCOPY NUMBER
1618: ,p_prd OUT NOCOPY VARCHAR2
1619: ,p_PT_eff_start_date OUT NOCOPY DATE) IS

Line 1616: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

1612: END get_basic_pay_SALWGI_per;
1613:
1614:
1615: PROCEDURE get_basic_pay_SAL894_PRDM (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1616: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
1617: ,p_basic_pay OUT NOCOPY NUMBER
1618: ,p_prd OUT NOCOPY VARCHAR2
1619: ,p_PT_eff_start_date OUT NOCOPY DATE) IS
1620: --

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

1680: --
1681: END IF;
1682: ---------Pay Plan should be always 'GS'
1683: ---------l_pay_plan := 'GS';
1684: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);
1685: l_adjustment_percentage := ghr_pay_calc.get_lpa_percentage
1686: (p_pay_calc_data.duty_station_id
1687: ,p_pay_calc_data.effective_date);
1688: --

Line 1685: l_adjustment_percentage := ghr_pay_calc.get_lpa_percentage

1681: END IF;
1682: ---------Pay Plan should be always 'GS'
1683: ---------l_pay_plan := 'GS';
1684: l_user_table_name := ghr_pay_calc.get_user_table_name(l_user_table_id);
1685: l_adjustment_percentage := ghr_pay_calc.get_lpa_percentage
1686: (p_pay_calc_data.duty_station_id
1687: ,p_pay_calc_data.effective_date);
1688: --
1689: IF l_pay_plan = 'GS' THEN

Line 1694: ghr_pay_calc.get_pay_table_value(l_user_table_id

1690:
1691: hr_utility.set_location('Calculating for GS Plan ..Basic Pay ' || l_proc,15);
1692: hr_utility.set_location('user_table_id..' || to_char(l_user_table_id) ,15);
1693:
1694: ghr_pay_calc.get_pay_table_value(l_user_table_id
1695: ,l_pay_plan
1696: ,l_grade_or_level
1697: ,l_step_or_rate
1698: ,p_pay_calc_data.effective_date

Line 1705: ghr_pay_calc.get_locality_adj_894_PRDM_GS

1701: ,l_dummy_date);
1702:
1703: hr_utility.set_location('Calculating for GS Plan ..Locality Pay ' || l_proc,20);
1704:
1705: ghr_pay_calc.get_locality_adj_894_PRDM_GS
1706: (p_user_table_id => l_user_table_id
1707: ,p_pay_plan => l_pay_plan
1708: ,p_grade_or_level => l_grade_or_level
1709: ,p_step_or_rate => l_step_or_rate

Line 1719: IF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

1715:
1716: p_basic_pay := nvl(l_basic_pay,0);
1717: p_PT_eff_start_date := l_PT_eff_start_date;
1718:
1719: IF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1720: l_spl_basic_pay := ghr_pay_calc.get_standard_pay_table_value
1721: (l_pay_plan
1722: ,l_grade_or_level
1723: ,l_step_or_rate

Line 1720: l_spl_basic_pay := ghr_pay_calc.get_standard_pay_table_value

1716: p_basic_pay := nvl(l_basic_pay,0);
1717: p_PT_eff_start_date := l_PT_eff_start_date;
1718:
1719: IF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1720: l_spl_basic_pay := ghr_pay_calc.get_standard_pay_table_value
1721: (l_pay_plan
1722: ,l_grade_or_level
1723: ,l_step_or_rate
1724: ,p_pay_calc_data.effective_date);

Line 1729: l_A := ghr_pay_calc.get_standard_pay_table_value

1725: l_spl_locality_adj := ROUND(l_spl_basic_pay * (NVL(l_adjustment_percentage,0)/100),0);
1726: l_spl_adj_basic_pay := (l_spl_basic_pay + l_spl_locality_adj);
1727: ELSE
1728: l_spl_basic_pay := nvl(l_basic_pay,0);
1729: l_A := ghr_pay_calc.get_standard_pay_table_value
1730: ('GS'
1731: ,l_grade_or_level
1732: ,l_step_or_rate
1733: ,p_pay_calc_data.effective_date);

Line 1746: IF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN

1742: -- Now do the comparison!
1743:
1744: IF (l_basic_pay > l_new_adj_basic_pay) OR
1745: (l_spl_adj_basic_pay > l_new_adj_basic_pay) THEN
1746: IF l_user_table_name = ghr_pay_calc.l_standard_table_name THEN
1747: p_prd := 0;
1748: ELSE
1749: p_prd := 6;
1750: END IF;

Line 1766: ghr_pay_calc.get_locality_adj_894_PRDM_GM

1762: ,l_dummy_number);
1763:
1764: hr_utility.set_location('Calculating for GM Plan ..Locality Pay ' || l_proc,20);
1765:
1766: ghr_pay_calc.get_locality_adj_894_PRDM_GM
1767: (p_pay_calc_data => p_pay_calc_data
1768: ,p_retained_grade => p_retained_grade
1769: ,p_new_std_relative_rate => l_new_std_relative_rate
1770: ,p_new_adj_basic_pay => l_new_adj_basic_pay

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

1779: p_prd := 0;
1780: l_new_adj_basic_pay := l_new_std_relative_rate;
1781: --------- l_locality_adj := l_new_adj_basic_pay - l_basic_pay;
1782: ELSIF (l_basic_pay > l_new_adj_basic_pay) AND
1783: (l_user_table_name <> ghr_pay_calc.l_standard_table_name) THEN
1784: p_prd := 6;
1785: l_new_adj_basic_pay := l_basic_pay;
1786: ------------- l_locality_adj := 0;
1787: END IF;

Line 1811: PROCEDURE get_basic_pay (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

1807: -- --
1808: --------------------------- --------------------------------------------
1809: -- --
1810: ----------------------------------------------------------------------------------------
1811: PROCEDURE get_basic_pay (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1812: ,p_pay_calc_out_data OUT NOCOPY ghr_pay_calc.pay_calc_out_rec_type
1813: ,p_retained_grade IN OUT NOCOPY ghr_pay_calc.retained_grade_rec_type) IS
1814: --
1815: -- This is the main bit of all the pay calc -- how we get the basic pay , everything else kinda

Line 1812: ,p_pay_calc_out_data OUT NOCOPY ghr_pay_calc.pay_calc_out_rec_type

1808: --------------------------- --------------------------------------------
1809: -- --
1810: ----------------------------------------------------------------------------------------
1811: PROCEDURE get_basic_pay (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1812: ,p_pay_calc_out_data OUT NOCOPY ghr_pay_calc.pay_calc_out_rec_type
1813: ,p_retained_grade IN OUT NOCOPY ghr_pay_calc.retained_grade_rec_type) IS
1814: --
1815: -- This is the main bit of all the pay calc -- how we get the basic pay , everything else kinda
1816: -- falls out from that.

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

1809: -- --
1810: ----------------------------------------------------------------------------------------
1811: PROCEDURE get_basic_pay (p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
1812: ,p_pay_calc_out_data OUT NOCOPY ghr_pay_calc.pay_calc_out_rec_type
1813: ,p_retained_grade IN OUT NOCOPY ghr_pay_calc.retained_grade_rec_type) IS
1814: --
1815: -- This is the main bit of all the pay calc -- how we get the basic pay , everything else kinda
1816: -- falls out from that.
1817: -- Basically if we can calulate it we will otherwise raise ...

Line 1839: l_retained_grade ghr_pay_calc.retained_grade_rec_type;

1835: and PAY_PLAN = l_pay_plan;
1836:
1837: l_fws_flag VARCHAR2(5);
1838: l_es_flag VARCHAR2(5);
1839: l_retained_grade ghr_pay_calc.retained_grade_rec_type;
1840: l_ig_pay_amount NUMBER;--Bug# 7557159
1841: --1360547 Fix
1842: l_open_range_basic_pay NUMBER;
1843:

Line 1924: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

1920: -- This is the easy one! refered to as MAIN_pos in the design doc
1921: -- all you have to do is a striaght look up on the user table given, using step,pay_plan,and
1922: -- grade given at the effective date also given
1923: -- Note: need for any conversion since it must already be in the given pay basis
1924: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
1925: ,p_pay_calc_data.pay_plan
1926: ,p_pay_calc_data.grade_or_level
1927: ,p_pay_calc_data.step_or_rate
1928: ,p_pay_calc_data.effective_date

Line 1939: l_ig_pay_amount := ghr_pay_calc.get_standard_pay_table_value (p_pay_plan => l_pay_plan

1935: ,p_pay_calc_out_data.basic_pay
1936: ,l_dummy_date);
1937: --Begin Bug# 7557159
1938: ELSIF p_pay_calc_data.pay_rate_determinant IN ('S') AND l_pay_plan IN ('IG') THEN
1939: l_ig_pay_amount := ghr_pay_calc.get_standard_pay_table_value (p_pay_plan => l_pay_plan
1940: ,p_grade_or_level => '00'
1941: ,p_step_or_rate => '00'
1942: ,p_effective_date => p_pay_calc_data.effective_date);
1943: IF l_ig_pay_amount > p_pay_calc_data.current_basic_pay THEN

Line 1953: raise ghr_pay_calc.unable_to_calculate;

1949: --Begin Bug# 7557159
1950: ELSE
1951: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
1952: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
1953: raise ghr_pay_calc.unable_to_calculate;
1954: END IF;
1955: --
1956: ELSE
1957: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');

Line 1959: raise ghr_pay_calc.unable_to_calculate;

1955: --
1956: ELSE
1957: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');
1958: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
1959: raise ghr_pay_calc.unable_to_calculate;
1960: END IF;
1961: ELSIF SUBSTR(p_pay_calc_data.noa_family_code ,1,8) = 'GHR_SAL_' THEN
1962: -- For salary change family we need to further investigate the noac to determine
1963: -- how to do pay

Line 1982: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

1978: OR l_pay_plan IN ('IG') THEN --Bug# 7557159
1979: --
1980: -- This is what we refer to as MAIN_pos
1981: --
1982: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
1983: ,p_pay_calc_data.pay_plan
1984: ,p_pay_calc_data.grade_or_level
1985: ,p_pay_calc_data.step_or_rate
1986: ,p_pay_calc_data.effective_date

Line 2064: raise ghr_pay_calc.open_pay_range_mesg;

2060:
2061: --Begin Bug# 7557159
2062: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2063: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2064: raise ghr_pay_calc.open_pay_range_mesg;
2065: --End Bug# 7557159
2066: ELSE
2067: hr_utility.set_message(8301, 'GHR_38391_NO_CALC_PAY_PLAN_PRD');
2068: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);

Line 2070: raise ghr_pay_calc.unable_to_calculate;

2066: ELSE
2067: hr_utility.set_message(8301, 'GHR_38391_NO_CALC_PAY_PLAN_PRD');
2068: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2069: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2070: raise ghr_pay_calc.unable_to_calculate;
2071: END IF;
2072: --
2073: ELSIF (p_pay_calc_data.effective_date >= to_date('2007/01/07','YYYY/MM/DD') AND
2074: p_pay_calc_data.first_action_la_code1 = 'VGR' ) THEN

Line 2089: raise ghr_pay_calc.pay_calc_message;

2085: IF p_pay_calc_data.noa_code = '891' AND
2086: p_pay_calc_data.effective_date < to_date('2007/01/07','YYYY/MM/DD')THEN --Bug# 5482191
2087: hr_utility.set_message(8301, 'GHR_38248_INV_PAY_PLAN_891');
2088: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2089: raise ghr_pay_calc.pay_calc_message;
2090: --
2091: ELSIF p_pay_calc_data.noa_code IN ('867','892','893') THEN
2092: --
2093: IF p_pay_calc_data.pay_rate_determinant IN ('0','6','M') THEN

Line 2105: raise ghr_pay_calc.open_pay_range_mesg;

2101: ,p_pay_calc_out_data.out_step_or_rate);
2102: --Begin Bug# 7557159
2103: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2104: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2105: raise ghr_pay_calc.open_pay_range_mesg;
2106: --End Bug# 7557159
2107: ELSE
2108: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2109: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);

Line 2110: raise ghr_pay_calc.unable_to_calculate;

2106: --End Bug# 7557159
2107: ELSE
2108: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2109: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2110: raise ghr_pay_calc.unable_to_calculate;
2111: END IF;
2112:
2113: ELSIF (p_pay_calc_data.noa_code IN ('890') AND (l_fws_flag = 'TRUE' or l_es_flag = 'TRUE')) THEN
2114: --

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

2133: --BUG 6211029 removed the below call to get_890_pay_table_value as no need of defaulting the step or rate
2134: -- need to be calculated based on the entered step or rate
2135:
2136: /* IF p_pay_calc_data.pay_basis = 'PH' AND p_pay_calc_data.current_adj_basic_pay > 100 THEN
2137: l_890_current_adj_basic_pay := ghr_pay_calc.convert_amount(p_pay_calc_data.current_adj_basic_pay ,'PA','PH');
2138: ELSE
2139: l_890_current_adj_basic_pay := p_pay_calc_data.current_adj_basic_pay;
2140: END IF;
2141:

Line 2154: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

2150: ,p_pay_calc_out_data.basic_pay
2151: ,l_dummy_date
2152: ,l_dummy_date); */
2153:
2154: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
2155: ,p_pay_calc_data.pay_plan
2156: ,p_pay_calc_data.grade_or_level
2157: ,p_pay_calc_data.step_or_rate
2158: ,p_pay_calc_data.effective_date

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

2162:
2163:
2164: END IF;
2165: ELSIF p_pay_calc_data.pay_rate_determinant IN ('J','K','R','3','S') THEN
2166: ghr_pay_calc.get_pay_table_value (p_user_table_id => p_pay_calc_data.user_table_id
2167: ,p_pay_plan => p_pay_calc_data.pay_plan
2168: ,p_grade_or_level => p_pay_calc_data.grade_or_level
2169: ,p_step_or_rate => '05'
2170: ,p_effective_date => p_pay_calc_data.effective_date

Line 2185: raise ghr_pay_calc.open_pay_range_mesg;

2181: --
2182: --Begin Bug# 7557159
2183: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2184: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2185: raise ghr_pay_calc.open_pay_range_mesg;
2186: --End Bug# 7557159
2187: ELSE
2188: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2189: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);

Line 2190: raise ghr_pay_calc.unable_to_calculate;

2186: --End Bug# 7557159
2187: ELSE
2188: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2189: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2190: raise ghr_pay_calc.unable_to_calculate;
2191: END IF;
2192:
2193: ELSE -- All other NoaC's for the salary change family (not GM,GH)
2194:

Line 2200: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id

2196: -- This is the easy one! refered to as MAIN_pos in the design doc
2197: -- all you have to do is a striaght look up on the user table given, using step,pay_plan,and
2198: -- grade given at the effective date also given
2199: -- Note: need for any conversion since it must already be in the given pay basis
2200: ghr_pay_calc.get_pay_table_value(p_pay_calc_data.user_table_id
2201: ,p_pay_calc_data.pay_plan
2202: ,p_pay_calc_data.grade_or_level
2203: ,p_pay_calc_data.step_or_rate
2204: ,p_pay_calc_data.effective_date

Line 2217: raise ghr_pay_calc.open_pay_range_mesg;

2213: --
2214: --Begin Bug# 7557159
2215: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2216: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2217: raise ghr_pay_calc.open_pay_range_mesg;
2218: --End Bug# 7557159
2219: ELSE
2220: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2221: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);

Line 2222: raise ghr_pay_calc.unable_to_calculate;

2218: --End Bug# 7557159
2219: ELSE
2220: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2221: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2222: raise ghr_pay_calc.unable_to_calculate;
2223: END IF;
2224:
2225: --Pradeep commented for Title 38 Changes
2226: -- IF NOAC = 850 or 855 open up pay fields as well as doing the calc:

Line 2242: raise ghr_pay_calc.unable_to_calculate;

2238: --Bug# 5132113 added pay plan GR condition
2239: /*IF l_pay_plan in('GR') THEN
2240: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2241: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2242: raise ghr_pay_calc.unable_to_calculate;
2243: ELS*/ --Bug# 6342011 Commented
2244: IF p_pay_calc_data.noa_code IN ('891','892') THEN
2245: IF p_pay_calc_data.pay_rate_determinant IN ('0','6') THEN
2246: get_basic_pay_SAL891_pos(p_pay_calc_data

Line 2257: raise ghr_pay_calc.open_pay_range_mesg;

2253: ,p_pay_calc_out_data.out_step_or_rate);
2254: --Begin Bug# 7557159
2255: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2256: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2257: raise ghr_pay_calc.open_pay_range_mesg;
2258: --End Bug# 7557159
2259: ELSE
2260: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2261: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);

Line 2262: raise ghr_pay_calc.unable_to_calculate;

2258: --End Bug# 7557159
2259: ELSE
2260: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2261: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2262: raise ghr_pay_calc.unable_to_calculate;
2263: END IF;
2264: --Begin Bug 5661441 AFHR change
2265:
2266: ELSIF p_pay_calc_data.noa_code IN ('893') THEN

Line 2271: raise ghr_pay_calc.pay_calc_message;

2267: IF p_pay_calc_data.effective_date < to_date('2007/01/07','YYYY/MM/DD')THEN
2268: hr_utility.set_message(8301, 'GHR_INV_PAY_PLAN_893');
2269: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2270: hr_utility.set_message_token('NOAC',p_pay_calc_data.noa_code);
2271: raise ghr_pay_calc.pay_calc_message;
2272: ELSE
2273: IF p_pay_calc_data.pay_rate_determinant IN ('0','6') THEN
2274: get_basic_pay_SAL891_pos(p_pay_calc_data
2275: ,p_pay_calc_out_data.basic_pay

Line 2285: raise ghr_pay_calc.open_pay_range_mesg;

2281: ,p_pay_calc_out_data.out_step_or_rate);
2282: --Begin Bug# 7557159
2283: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2284: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2285: raise ghr_pay_calc.open_pay_range_mesg;
2286: --End Bug# 7557159
2287: ELSE
2288: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2289: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);

Line 2290: raise ghr_pay_calc.unable_to_calculate;

2286: --End Bug# 7557159
2287: ELSE
2288: hr_utility.set_message(8301, 'GHR_38254_NO_CALC_PRD');
2289: hr_utility.set_message_token('PRD',p_pay_calc_data.pay_rate_determinant);
2290: raise ghr_pay_calc.unable_to_calculate;
2291: END IF;
2292: END IF;
2293:
2294: --end Bug 5661441 AFHR change

Line 2299: raise ghr_pay_calc.pay_calc_message;

2295: ELSIF p_pay_calc_data.noa_code IN ('867') THEN --AFHR change 893 removed
2296: hr_utility.set_message(8301, 'GHR_INV_PAY_PLAN_893');
2297: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2298: hr_utility.set_message_token('NOAC',p_pay_calc_data.noa_code);
2299: raise ghr_pay_calc.pay_calc_message;
2300: --
2301: --Begin Bug# 7557159
2302: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2303: hr_utility.set_message(8301, 'GHR_38520_PRD_D');

Line 2304: raise ghr_pay_calc.open_pay_range_mesg;

2300: --
2301: --Begin Bug# 7557159
2302: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2303: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2304: raise ghr_pay_calc.open_pay_range_mesg;
2305: --End Bug# 7557159
2306: ELSE
2307: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');
2308: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);

Line 2309: raise ghr_pay_calc.unable_to_calculate;

2305: --End Bug# 7557159
2306: ELSE
2307: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');
2308: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2309: raise ghr_pay_calc.unable_to_calculate;
2310: END IF;
2311: --
2312: END IF;
2313: --Begin Bug# 7557159

Line 2316: raise ghr_pay_calc.open_pay_range_mesg;

2312: END IF;
2313: --Begin Bug# 7557159
2314: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2315: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2316: raise ghr_pay_calc.open_pay_range_mesg;
2317: --End Bug# 7557159
2318: ELSE
2319: hr_utility.set_message(8301, 'GHR_38261_NO_CALC_FAMILY');
2320: hr_utility.set_message_token('FAMILY',p_pay_calc_data.noa_family_code);

Line 2321: raise ghr_pay_calc.unable_to_calculate;

2317: --End Bug# 7557159
2318: ELSE
2319: hr_utility.set_message(8301, 'GHR_38261_NO_CALC_FAMILY');
2320: hr_utility.set_message_token('FAMILY',p_pay_calc_data.noa_family_code);
2321: raise ghr_pay_calc.unable_to_calculate;
2322: END IF;
2323: --
2324: --Begin Bug# 7557159
2325: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN

Line 2327: raise ghr_pay_calc.open_pay_range_mesg;

2323: --
2324: --Begin Bug# 7557159
2325: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2326: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2327: raise ghr_pay_calc.open_pay_range_mesg;
2328: --End Bug# 7557159
2329: ELSE
2330: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');
2331: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);

Line 2332: raise ghr_pay_calc.unable_to_calculate;

2328: --End Bug# 7557159
2329: ELSE
2330: hr_utility.set_message(8301, 'GHR_38260_NO_CALC_PAY_PLAN');
2331: hr_utility.set_message_token('PAY_PLAN',l_pay_plan);
2332: raise ghr_pay_calc.unable_to_calculate;
2333: END IF;
2334: --Begin Bug# 7557159
2335: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2336: hr_utility.set_message(8301, 'GHR_38520_PRD_D');

Line 2337: raise ghr_pay_calc.open_pay_range_mesg;

2333: END IF;
2334: --Begin Bug# 7557159
2335: ELSIF p_pay_calc_data.pay_rate_determinant = 'D' THEN
2336: hr_utility.set_message(8301, 'GHR_38520_PRD_D');
2337: raise ghr_pay_calc.open_pay_range_mesg;
2338: --End Bug# 7557159
2339: ELSE
2340: hr_utility.set_message(8301, 'GHR_38262_NO_CALC_PAY_BASIS');
2341: -- It could be either the position pay basis or the retained pay basis as to why we couldn't

Line 2352: raise ghr_pay_calc.unable_to_calculate;

2348: hr_utility.set_message_token('PAY_BASIS',
2349: ghr_pa_requests_pkg.get_lookup_meaning(800,'GHR_US_PAY_BASIS'
2350: ,l_pay_basis));
2351: END IF;
2352: raise ghr_pay_calc.unable_to_calculate;
2353: END IF;
2354: ELSE
2355: hr_utility.set_message(8301, 'GHR_38263_NO_CALC_DUAL_ACTION');
2356: raise ghr_pay_calc.unable_to_calculate;

Line 2356: raise ghr_pay_calc.unable_to_calculate;

2352: raise ghr_pay_calc.unable_to_calculate;
2353: END IF;
2354: ELSE
2355: hr_utility.set_message(8301, 'GHR_38263_NO_CALC_DUAL_ACTION');
2356: raise ghr_pay_calc.unable_to_calculate;
2357: END IF;
2358: END IF;
2359:
2360: EXCEPTION

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

2470: 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);
2471: -- End ->> Calculation Of New Basic Pay
2472:
2473: -- Start ->> Calculation of Adjusted Basic Pay
2474: l_new_loc_perc_factor := (NVL(ghr_pay_calc.get_lpa_percentage(l_duty_station_id
2475: ,l_PT_eff_start_date
2476: )
2477: ,0
2478: )

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

2632: 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);
2633: -- End -->> Calculate relative rate in range for the special rate
2634:
2635: -- Start ->> Calculation of Locality Rate
2636: l_new_loc_perc_factor := (NVL(ghr_pay_calc.get_lpa_percentage(l_duty_station_id
2637: ,l_PT_eff_start_date
2638: )
2639: ,0
2640: )

Line 2663: PROCEDURE get_basic_pay_SAL890_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type

2659:
2660: END get_wgi_GM_sp_basic_pay;
2661: --
2662:
2663: PROCEDURE get_basic_pay_SAL890_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
2664: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
2665: ,p_pay_table_data IN VARCHAR2
2666: ,p_basic_pay OUT NOCOPY NUMBER
2667: ) IS

Line 2664: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type

2660: END get_wgi_GM_sp_basic_pay;
2661: --
2662:
2663: PROCEDURE get_basic_pay_SAL890_6step(p_pay_calc_data IN ghr_pay_calc.pay_calc_in_rec_type
2664: ,p_retained_grade IN ghr_pay_calc.retained_grade_rec_type
2665: ,p_pay_table_data IN VARCHAR2
2666: ,p_basic_pay OUT NOCOPY NUMBER
2667: ) IS
2668: l_user_table_id NUMBER;

Line 2710: ghr_pay_calc.get_open_pay_table_values(p_user_table_id => l_user_table_id

2706: l_curr_basic_pay := p_pay_calc_data.current_basic_pay;
2707: l_effective_date := NVL(p_pay_calc_data.effective_date,TRUNC(sysdate));
2708:
2709: --fetching min and max range values on the preceding day of pay adjustment
2710: ghr_pay_calc.get_open_pay_table_values(p_user_table_id => l_user_table_id
2711: ,p_pay_plan => l_pay_plan
2712: ,p_grade_or_level => l_grade_or_level
2713: ,p_effective_date => l_effective_date-1
2714: ,p_row_high => l_old_rangeval_max

Line 2717: ghr_pay_calc.get_open_pay_table_values(p_user_table_id => l_user_table_id

2713: ,p_effective_date => l_effective_date-1
2714: ,p_row_high => l_old_rangeval_max
2715: ,p_row_low => l_old_rangeval_min);
2716: --fetching current min and max range values
2717: ghr_pay_calc.get_open_pay_table_values(p_user_table_id => l_user_table_id
2718: ,p_pay_plan => l_pay_plan
2719: ,p_grade_or_level => l_grade_or_level
2720: ,p_effective_date => l_effective_date
2721: ,p_row_high => l_new_rangeval_max