1: PACKAGE BODY PA_PAY_UTIL AS
2: /* $Header: PAPYUTLB.pls 120.1 2011/04/07 07:26:14 speddi noship $ */
3:
4: PROCEDURE update_pa_audit
5: (
33: l_task_number pa_tasks.task_number%TYPE;
34:
35: begin
36:
37: if pa_pay_util.g_expenditure_item_id is not null then
38: select task_number
39: into l_task_number
40: from pa_tasks
41: where task_id = (select task_id
39: into l_task_number
40: from pa_tasks
41: where task_id = (select task_id
42: from pa_expenditure_items_all
43: where expenditure_item_id = pa_pay_util.g_expenditure_item_id);
44:
45: return l_task_number;
46: else
47: return pa_pay_util.g_task_number;
43: where expenditure_item_id = pa_pay_util.g_expenditure_item_id);
44:
45: return l_task_number;
46: else
47: return pa_pay_util.g_task_number;
48: end if;
49:
50: exception
51: when no_data_found then
58:
59: l_project_number pa_projects_all.segment1%TYPE;
60:
61: begin
62: if pa_pay_util.g_expenditure_item_id is not null then
63: select segment1
64: into l_project_number
65: from pa_projects_all
66: where project_id = (select project_id
64: into l_project_number
65: from pa_projects_all
66: where project_id = (select project_id
67: from pa_expenditure_items_all
68: where expenditure_item_id = pa_pay_util.g_expenditure_item_id);
69:
70: return l_project_number;
71: else
72: return pa_pay_util.g_project_number;
68: where expenditure_item_id = pa_pay_util.g_expenditure_item_id);
69:
70: return l_project_number;
71: else
72: return pa_pay_util.g_project_number;
73: end if;
74:
75: exception
76: when no_data_found then
83:
84: l_job_name per_jobs_v.name%TYPE;
85:
86: begin
87: if pa_pay_util.g_expenditure_item_id is not null then
88: select name
89: into l_job_name
90: from per_jobs_v
91: where job_id = (select job_id
89: into l_job_name
90: from per_jobs_v
91: where job_id = (select job_id
92: from pa_expenditure_items_all
93: where expenditure_item_id = pa_pay_util.g_expenditure_item_id);
94: return l_job_name;
95: else
96: return pa_pay_util.g_job_name;
97: end if;
92: from pa_expenditure_items_all
93: where expenditure_item_id = pa_pay_util.g_expenditure_item_id);
94: return l_job_name;
95: else
96: return pa_pay_util.g_job_name;
97: end if;
98:
99: exception
100: when no_data_found then
107:
108: l_location_code hr_locations.location_code%TYPE;
109:
110: begin
111: if pa_pay_util.g_expenditure_item_id is not null then
112: select location_code
113: into l_location_code
114: from hr_locations
115: where location_id = (select location_id
113: into l_location_code
114: from hr_locations
115: where location_id = (select location_id
116: from pa_expenditure_items_all
117: where expenditure_item_id = pa_pay_util.g_expenditure_item_id);
118: return l_location_code;
119: else
120: return pa_pay_util.g_location_code;
121: end if;
116: from pa_expenditure_items_all
117: where expenditure_item_id = pa_pay_util.g_expenditure_item_id);
118: return l_location_code;
119: else
120: return pa_pay_util.g_location_code;
121: end if;
122:
123: exception
124: when no_data_found then
131:
132: l_work_type_name pa_work_types_vl.name%TYPE;
133:
134: begin
135: if pa_pay_util.g_expenditure_item_id is not null then
136: select name
137: into l_work_type_name
138: from pa_work_types_vl
139: where work_type_id = (select work_type_id
137: into l_work_type_name
138: from pa_work_types_vl
139: where work_type_id = (select work_type_id
140: from pa_expenditure_items_all
141: where expenditure_item_id = pa_pay_util.g_expenditure_item_id);
142:
143: return l_work_type_name;
144: else
145: return pa_pay_util.g_work_type_name;
141: where expenditure_item_id = pa_pay_util.g_expenditure_item_id);
142:
143: return l_work_type_name;
144: else
145: return pa_pay_util.g_work_type_name;
146: end if;
147:
148: exception
149: when no_data_found then
151: end get_work_type;
152:
153: procedure set_global_ei(p_ei_id number) IS
154: begin
155: pa_pay_util.g_expenditure_item_id := p_ei_id;
156: end set_global_ei;
157:
158: procedure get_hr_rate(p_person_id in NUMBER,
159: p_assignment_id in number,
176: l_rbc_factors l_rate_factors_type;
177: begin
178:
179: if p_ei_id is null then
180: pa_pay_util.g_expenditure_item_id := NULL;
181: else
182: l_ei_id := to_number(p_ei_id);
183: set_global_ei(l_ei_id);
184: end if;
202: p_rate => l_rbc_rate);
203:
204: x_rate := l_rbc_rate;
205:
206: pa_pay_util.g_expenditure_item_id := NULL;
207: pa_pay_util.g_work_type_name := NULL;
208: pa_pay_util.g_task_number := NULL;
209: pa_pay_util.g_project_number := NULL;
210: pa_pay_util.g_location_code := NULL;
203:
204: x_rate := l_rbc_rate;
205:
206: pa_pay_util.g_expenditure_item_id := NULL;
207: pa_pay_util.g_work_type_name := NULL;
208: pa_pay_util.g_task_number := NULL;
209: pa_pay_util.g_project_number := NULL;
210: pa_pay_util.g_location_code := NULL;
211: pa_pay_util.g_job_name := NULL;
204: x_rate := l_rbc_rate;
205:
206: pa_pay_util.g_expenditure_item_id := NULL;
207: pa_pay_util.g_work_type_name := NULL;
208: pa_pay_util.g_task_number := NULL;
209: pa_pay_util.g_project_number := NULL;
210: pa_pay_util.g_location_code := NULL;
211: pa_pay_util.g_job_name := NULL;
212:
205:
206: pa_pay_util.g_expenditure_item_id := NULL;
207: pa_pay_util.g_work_type_name := NULL;
208: pa_pay_util.g_task_number := NULL;
209: pa_pay_util.g_project_number := NULL;
210: pa_pay_util.g_location_code := NULL;
211: pa_pay_util.g_job_name := NULL;
212:
213: exception
206: pa_pay_util.g_expenditure_item_id := NULL;
207: pa_pay_util.g_work_type_name := NULL;
208: pa_pay_util.g_task_number := NULL;
209: pa_pay_util.g_project_number := NULL;
210: pa_pay_util.g_location_code := NULL;
211: pa_pay_util.g_job_name := NULL;
212:
213: exception
214: when others then
207: pa_pay_util.g_work_type_name := NULL;
208: pa_pay_util.g_task_number := NULL;
209: pa_pay_util.g_project_number := NULL;
210: pa_pay_util.g_location_code := NULL;
211: pa_pay_util.g_job_name := NULL;
212:
213: exception
214: when others then
215: x_rate := NULL;