[Home] [Help]
PACKAGE BODY: APPS.PAY_ELEMENT_LINK_SWI
Source
1 Package Body pay_element_link_swi As
2 /* $Header: pypelswi.pkb 115.0 2002/12/31 02:15:03 ndorai noship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'pay_element_link_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< create_element_link >-------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_element_link
12 (p_validate in number default hr_api.g_false_num
13 ,p_effective_date in date
14 ,p_element_type_id in number
15 ,p_business_group_id in number
16 ,p_costable_type in varchar2
17 ,p_payroll_id in number default null
18 ,p_job_id in number default null
19 ,p_position_id in number default null
20 ,p_people_group_id in number default null
21 ,p_cost_allocation_keyflex_id in number default null
22 ,p_organization_id in number default null
23 ,p_location_id in number default null
24 ,p_grade_id in number default null
25 ,p_balancing_keyflex_id in number default null
26 ,p_element_set_id in number default null
27 ,p_pay_basis_id in number default null
28 ,p_link_to_all_payrolls_flag in varchar2 default null
29 ,p_standard_link_flag in varchar2 default null
30 ,p_transfer_to_gl_flag in varchar2 default null
31 ,p_comments in varchar2 default null
32 ,p_employment_category in varchar2 default null
33 ,p_qualifying_age in number default null
34 ,p_qualifying_length_of_service in number default null
35 ,p_qualifying_units in varchar2 default null
36 ,p_attribute_category in varchar2 default null
37 ,p_attribute1 in varchar2 default null
38 ,p_attribute2 in varchar2 default null
39 ,p_attribute3 in varchar2 default null
40 ,p_attribute4 in varchar2 default null
41 ,p_attribute5 in varchar2 default null
42 ,p_attribute6 in varchar2 default null
43 ,p_attribute7 in varchar2 default null
44 ,p_attribute8 in varchar2 default null
45 ,p_attribute9 in varchar2 default null
46 ,p_attribute10 in varchar2 default null
47 ,p_attribute11 in varchar2 default null
48 ,p_attribute12 in varchar2 default null
49 ,p_attribute13 in varchar2 default null
50 ,p_attribute14 in varchar2 default null
51 ,p_attribute15 in varchar2 default null
52 ,p_attribute16 in varchar2 default null
53 ,p_attribute17 in varchar2 default null
54 ,p_attribute18 in varchar2 default null
55 ,p_attribute19 in varchar2 default null
56 ,p_attribute20 in varchar2 default null
57 ,p_cost_segment1 in varchar2 default null
58 ,p_cost_segment2 in varchar2 default null
59 ,p_cost_segment3 in varchar2 default null
60 ,p_cost_segment4 in varchar2 default null
61 ,p_cost_segment5 in varchar2 default null
62 ,p_cost_segment6 in varchar2 default null
63 ,p_cost_segment7 in varchar2 default null
64 ,p_cost_segment8 in varchar2 default null
65 ,p_cost_segment9 in varchar2 default null
66 ,p_cost_segment10 in varchar2 default null
67 ,p_cost_segment11 in varchar2 default null
68 ,p_cost_segment12 in varchar2 default null
69 ,p_cost_segment13 in varchar2 default null
70 ,p_cost_segment14 in varchar2 default null
71 ,p_cost_segment15 in varchar2 default null
72 ,p_cost_segment16 in varchar2 default null
73 ,p_cost_segment17 in varchar2 default null
74 ,p_cost_segment18 in varchar2 default null
75 ,p_cost_segment19 in varchar2 default null
76 ,p_cost_segment20 in varchar2 default null
77 ,p_cost_segment21 in varchar2 default null
78 ,p_cost_segment22 in varchar2 default null
79 ,p_cost_segment23 in varchar2 default null
80 ,p_cost_segment24 in varchar2 default null
81 ,p_cost_segment25 in varchar2 default null
82 ,p_cost_segment26 in varchar2 default null
83 ,p_cost_segment27 in varchar2 default null
84 ,p_cost_segment28 in varchar2 default null
85 ,p_cost_segment29 in varchar2 default null
86 ,p_cost_segment30 in varchar2 default null
87 ,p_balance_segment1 in varchar2 default null
88 ,p_balance_segment2 in varchar2 default null
89 ,p_balance_segment3 in varchar2 default null
90 ,p_balance_segment4 in varchar2 default null
91 ,p_balance_segment5 in varchar2 default null
92 ,p_balance_segment6 in varchar2 default null
93 ,p_balance_segment7 in varchar2 default null
94 ,p_balance_segment8 in varchar2 default null
95 ,p_balance_segment9 in varchar2 default null
96 ,p_balance_segment10 in varchar2 default null
97 ,p_balance_segment11 in varchar2 default null
98 ,p_balance_segment12 in varchar2 default null
99 ,p_balance_segment13 in varchar2 default null
100 ,p_balance_segment14 in varchar2 default null
101 ,p_balance_segment15 in varchar2 default null
102 ,p_balance_segment16 in varchar2 default null
103 ,p_balance_segment17 in varchar2 default null
104 ,p_balance_segment18 in varchar2 default null
105 ,p_balance_segment19 in varchar2 default null
106 ,p_balance_segment20 in varchar2 default null
107 ,p_balance_segment21 in varchar2 default null
108 ,p_balance_segment22 in varchar2 default null
109 ,p_balance_segment23 in varchar2 default null
110 ,p_balance_segment24 in varchar2 default null
111 ,p_balance_segment25 in varchar2 default null
112 ,p_balance_segment26 in varchar2 default null
113 ,p_balance_segment27 in varchar2 default null
114 ,p_balance_segment28 in varchar2 default null
115 ,p_balance_segment29 in varchar2 default null
116 ,p_balance_segment30 in varchar2 default null
117 ,p_cost_concat_segments in varchar2
118 ,p_balance_concat_segments in varchar2
119 ,p_element_link_id out nocopy number
120 ,p_comment_id out nocopy number
121 ,p_object_version_number out nocopy number
122 ,p_effective_start_date out nocopy date
123 ,p_effective_end_date out nocopy date
124 ,p_return_status out nocopy varchar2
125 ) is
126 --
127 -- Variables for API Boolean parameters
128 l_validate boolean;
129 --
130 -- Variables for IN/OUT parameters
131 --
132 -- Other variables
133 l_proc varchar2(72) := g_package ||'create_element_link';
134 Begin
135 hr_utility.set_location(' Entering:' || l_proc,10);
136 --
137 -- Issue a savepoint
138 --
139 savepoint create_element_link_swi;
140 --
141 -- Initialise Multiple Message Detection
142 --
143 hr_multi_message.enable_message_list;
144 --
145 -- Remember IN OUT parameter IN values
146 --
147 --
148 -- Convert constant values to their corresponding boolean value
149 --
150 l_validate :=
151 hr_api.constant_to_boolean
152 (p_constant_value => p_validate);
153 --
154 -- Register Surrogate ID or user key values
155 --
156 --
157 -- Call API
158 --
159 pay_element_link_api.create_element_link
160 (p_validate => l_validate
161 ,p_effective_date => p_effective_date
162 ,p_element_type_id => p_element_type_id
163 ,p_business_group_id => p_business_group_id
164 ,p_costable_type => p_costable_type
165 ,p_payroll_id => p_payroll_id
166 ,p_job_id => p_job_id
167 ,p_position_id => p_position_id
168 ,p_people_group_id => p_people_group_id
169 ,p_cost_allocation_keyflex_id => p_cost_allocation_keyflex_id
170 ,p_organization_id => p_organization_id
171 ,p_location_id => p_location_id
172 ,p_grade_id => p_grade_id
173 ,p_balancing_keyflex_id => p_balancing_keyflex_id
174 ,p_element_set_id => p_element_set_id
175 ,p_pay_basis_id => p_pay_basis_id
176 ,p_link_to_all_payrolls_flag => p_link_to_all_payrolls_flag
177 ,p_standard_link_flag => p_standard_link_flag
178 ,p_transfer_to_gl_flag => p_transfer_to_gl_flag
179 ,p_comments => p_comments
180 ,p_employment_category => p_employment_category
181 ,p_qualifying_age => p_qualifying_age
182 ,p_qualifying_length_of_service => p_qualifying_length_of_service
183 ,p_qualifying_units => p_qualifying_units
184 ,p_attribute_category => p_attribute_category
185 ,p_attribute1 => p_attribute1
186 ,p_attribute2 => p_attribute2
187 ,p_attribute3 => p_attribute3
188 ,p_attribute4 => p_attribute4
189 ,p_attribute5 => p_attribute5
190 ,p_attribute6 => p_attribute6
191 ,p_attribute7 => p_attribute7
192 ,p_attribute8 => p_attribute8
193 ,p_attribute9 => p_attribute9
194 ,p_attribute10 => p_attribute10
195 ,p_attribute11 => p_attribute11
196 ,p_attribute12 => p_attribute12
197 ,p_attribute13 => p_attribute13
198 ,p_attribute14 => p_attribute14
199 ,p_attribute15 => p_attribute15
200 ,p_attribute16 => p_attribute16
201 ,p_attribute17 => p_attribute17
202 ,p_attribute18 => p_attribute18
203 ,p_attribute19 => p_attribute19
204 ,p_attribute20 => p_attribute20
205 ,p_cost_segment1 => p_cost_segment1
206 ,p_cost_segment2 => p_cost_segment2
207 ,p_cost_segment3 => p_cost_segment3
208 ,p_cost_segment4 => p_cost_segment4
209 ,p_cost_segment5 => p_cost_segment5
210 ,p_cost_segment6 => p_cost_segment6
211 ,p_cost_segment7 => p_cost_segment7
212 ,p_cost_segment8 => p_cost_segment8
213 ,p_cost_segment9 => p_cost_segment9
214 ,p_cost_segment10 => p_cost_segment10
215 ,p_cost_segment11 => p_cost_segment11
216 ,p_cost_segment12 => p_cost_segment12
217 ,p_cost_segment13 => p_cost_segment13
218 ,p_cost_segment14 => p_cost_segment14
219 ,p_cost_segment15 => p_cost_segment15
220 ,p_cost_segment16 => p_cost_segment16
221 ,p_cost_segment17 => p_cost_segment17
222 ,p_cost_segment18 => p_cost_segment18
223 ,p_cost_segment19 => p_cost_segment19
224 ,p_cost_segment20 => p_cost_segment20
225 ,p_cost_segment21 => p_cost_segment21
226 ,p_cost_segment22 => p_cost_segment22
227 ,p_cost_segment23 => p_cost_segment23
228 ,p_cost_segment24 => p_cost_segment24
229 ,p_cost_segment25 => p_cost_segment25
230 ,p_cost_segment26 => p_cost_segment26
231 ,p_cost_segment27 => p_cost_segment27
232 ,p_cost_segment28 => p_cost_segment28
233 ,p_cost_segment29 => p_cost_segment29
234 ,p_cost_segment30 => p_cost_segment30
235 ,p_balance_segment1 => p_balance_segment1
236 ,p_balance_segment2 => p_balance_segment2
237 ,p_balance_segment3 => p_balance_segment3
238 ,p_balance_segment4 => p_balance_segment4
239 ,p_balance_segment5 => p_balance_segment5
240 ,p_balance_segment6 => p_balance_segment6
241 ,p_balance_segment7 => p_balance_segment7
242 ,p_balance_segment8 => p_balance_segment8
243 ,p_balance_segment9 => p_balance_segment9
244 ,p_balance_segment10 => p_balance_segment10
245 ,p_balance_segment11 => p_balance_segment11
246 ,p_balance_segment12 => p_balance_segment12
247 ,p_balance_segment13 => p_balance_segment13
248 ,p_balance_segment14 => p_balance_segment14
249 ,p_balance_segment15 => p_balance_segment15
250 ,p_balance_segment16 => p_balance_segment16
251 ,p_balance_segment17 => p_balance_segment17
252 ,p_balance_segment18 => p_balance_segment18
253 ,p_balance_segment19 => p_balance_segment19
254 ,p_balance_segment20 => p_balance_segment20
255 ,p_balance_segment21 => p_balance_segment21
256 ,p_balance_segment22 => p_balance_segment22
257 ,p_balance_segment23 => p_balance_segment23
258 ,p_balance_segment24 => p_balance_segment24
259 ,p_balance_segment25 => p_balance_segment25
260 ,p_balance_segment26 => p_balance_segment26
261 ,p_balance_segment27 => p_balance_segment27
262 ,p_balance_segment28 => p_balance_segment28
263 ,p_balance_segment29 => p_balance_segment29
264 ,p_balance_segment30 => p_balance_segment30
265 ,p_cost_concat_segments => p_cost_concat_segments
266 ,p_balance_concat_segments => p_balance_concat_segments
267 ,p_element_link_id => p_element_link_id
268 ,p_comment_id => p_comment_id
269 ,p_object_version_number => p_object_version_number
270 ,p_effective_start_date => p_effective_start_date
271 ,p_effective_end_date => p_effective_end_date
272 );
273 --
274 -- Convert API warning boolean parameter values to specific
275 -- messages and add them to Multiple Message List
276 --
277 --
278 -- Convert API non-warning boolean parameter values
279 --
280 --
281 -- Derive the API return status value based on whether
282 -- messages of any type exist in the Multiple Message List.
283 -- Also disable Multiple Message Detection.
284 --
285 p_return_status := hr_multi_message.get_return_status_disable;
286 hr_utility.set_location(' Leaving:' || l_proc,20);
287 --
288 exception
289 when hr_multi_message.error_message_exist then
290 --
291 -- Catch the Multiple Message List exception which
292 -- indicates API processing has been aborted because
293 -- at least one message exists in the list.
294 --
295 rollback to create_element_link_swi;
296 --
297 -- Reset IN OUT parameters and set OUT parameters
298 --
299 p_element_link_id := null;
300 p_comment_id := null;
301 p_object_version_number := null;
302 p_effective_start_date := null;
303 p_effective_end_date := null;
304 p_return_status := hr_multi_message.get_return_status_disable;
305 hr_utility.set_location(' Leaving:' || l_proc, 30);
306 when others then
307 --
308 -- When Multiple Message Detection is enabled catch
309 -- any Application specific or other unexpected
310 -- exceptions. Adding appropriate details to the
311 -- Multiple Message List. Otherwise re-raise the
312 -- error.
313 --
314 rollback to create_element_link_swi;
315 if hr_multi_message.unexpected_error_add(l_proc) then
316 hr_utility.set_location(' Leaving:' || l_proc,40);
317 raise;
318 end if;
319 --
320 -- Reset IN OUT and set OUT parameters
321 --
322 p_element_link_id := null;
323 p_comment_id := null;
324 p_object_version_number := null;
325 p_effective_start_date := null;
326 p_effective_end_date := null;
327 p_return_status := hr_multi_message.get_return_status_disable;
328 hr_utility.set_location(' Leaving:' || l_proc,50);
329 end create_element_link;
330 -- ----------------------------------------------------------------------------
331 -- |--------------------------< delete_element_link >-------------------------|
332 -- ----------------------------------------------------------------------------
333 PROCEDURE delete_element_link
334 (p_validate in number default hr_api.g_false_num
335 ,p_effective_date in date
336 ,p_element_link_id in number
337 ,p_datetrack_delete_mode in varchar2
338 ,p_object_version_number in out nocopy number
339 ,p_effective_start_date out nocopy date
340 ,p_effective_end_date out nocopy date
341 ,p_return_status out nocopy varchar2
342 ) is
343 --
344 -- Variables for API Boolean parameters
345 l_validate boolean;
346 l_entries_warning boolean;
347 --
348 -- Variables for IN/OUT parameters
349 l_object_version_number number;
350 --
351 -- Other variables
352 l_proc varchar2(72) := g_package ||'delete_element_link';
353 Begin
354 hr_utility.set_location(' Entering:' || l_proc,10);
355 --
356 -- Issue a savepoint
357 --
358 savepoint delete_element_link_swi;
359 --
360 -- Initialise Multiple Message Detection
361 --
362 hr_multi_message.enable_message_list;
363 --
364 -- Remember IN OUT parameter IN values
365 --
366 l_object_version_number := p_object_version_number;
367 --
368 -- Convert constant values to their corresponding boolean value
369 --
370 l_validate :=
371 hr_api.constant_to_boolean
372 (p_constant_value => p_validate);
373 --
374 -- Register Surrogate ID or user key values
375 --
376 --
377 -- Call API
378 --
379 pay_element_link_api.delete_element_link
380 (p_validate => l_validate
381 ,p_effective_date => p_effective_date
382 ,p_element_link_id => p_element_link_id
383 ,p_datetrack_delete_mode => p_datetrack_delete_mode
384 ,p_object_version_number => p_object_version_number
385 ,p_effective_start_date => p_effective_start_date
386 ,p_effective_end_date => p_effective_end_date
387 ,p_entries_warning => l_entries_warning
388 );
389 --
390 -- Convert API warning boolean parameter values to specific
391 -- messages and add them to Multiple Message List
392 --
393 if l_entries_warning then
394 /*fnd_message.set_name('EDIT HERE: APP_CODE', 'EDIT_HERE: MESSAGE_NAME ');*/
395 hr_multi_message.add
396 (p_message_type => hr_multi_message.g_warning_msg
397 );
398 end if; --
399 -- Convert API non-warning boolean parameter values
400 --
401 --
402 -- Derive the API return status value based on whether
403 -- messages of any type exist in the Multiple Message List.
404 -- Also disable Multiple Message Detection.
405 --
406 p_return_status := hr_multi_message.get_return_status_disable;
407 hr_utility.set_location(' Leaving:' || l_proc,20);
408 --
409 exception
410 when hr_multi_message.error_message_exist then
411 --
412 -- Catch the Multiple Message List exception which
413 -- indicates API processing has been aborted because
414 -- at least one message exists in the list.
415 --
416 rollback to delete_element_link_swi;
417 --
418 -- Reset IN OUT parameters and set OUT parameters
419 --
420 p_object_version_number := l_object_version_number;
421 p_effective_start_date := null;
422 p_effective_end_date := null;
423 p_return_status := hr_multi_message.get_return_status_disable;
424 hr_utility.set_location(' Leaving:' || l_proc, 30);
425 when others then
426 --
427 -- When Multiple Message Detection is enabled catch
428 -- any Application specific or other unexpected
429 -- exceptions. Adding appropriate details to the
430 -- Multiple Message List. Otherwise re-raise the
431 -- error.
432 --
433 rollback to delete_element_link_swi;
434 if hr_multi_message.unexpected_error_add(l_proc) then
435 hr_utility.set_location(' Leaving:' || l_proc,40);
436 raise;
437 end if;
438 --
439 -- Reset IN OUT and set OUT parameters
440 --
441 p_object_version_number := l_object_version_number;
442 p_effective_start_date := null;
443 p_effective_end_date := null;
444 p_return_status := hr_multi_message.get_return_status_disable;
445 hr_utility.set_location(' Leaving:' || l_proc,50);
446 end delete_element_link;
447 -- ----------------------------------------------------------------------------
448 -- |--------------------------< update_element_link >-------------------------|
449 -- ----------------------------------------------------------------------------
450 PROCEDURE update_element_link
451 (p_validate in number default hr_api.g_false_num
452 ,p_effective_date in date
453 ,p_element_link_id in number
454 ,p_datetrack_mode in varchar2
455 ,p_costable_type in varchar2 default hr_api.g_varchar2
456 ,p_element_set_id in number default hr_api.g_number
457 ,p_multiply_value_flag in varchar2 default hr_api.g_varchar2
458 ,p_standard_link_flag in varchar2 default hr_api.g_varchar2
459 ,p_transfer_to_gl_flag in varchar2 default hr_api.g_varchar2
460 ,p_comments in varchar2 default hr_api.g_varchar2
461 ,p_comment_id in varchar2 default hr_api.g_varchar2
462 ,p_employment_category in varchar2 default hr_api.g_varchar2
463 ,p_qualifying_age in number default hr_api.g_number
464 ,p_qualifying_length_of_service in number default hr_api.g_number
465 ,p_qualifying_units in varchar2 default hr_api.g_varchar2
466 ,p_attribute_category in varchar2 default hr_api.g_varchar2
467 ,p_attribute1 in varchar2 default hr_api.g_varchar2
468 ,p_attribute2 in varchar2 default hr_api.g_varchar2
469 ,p_attribute3 in varchar2 default hr_api.g_varchar2
470 ,p_attribute4 in varchar2 default hr_api.g_varchar2
471 ,p_attribute5 in varchar2 default hr_api.g_varchar2
472 ,p_attribute6 in varchar2 default hr_api.g_varchar2
473 ,p_attribute7 in varchar2 default hr_api.g_varchar2
474 ,p_attribute8 in varchar2 default hr_api.g_varchar2
475 ,p_attribute9 in varchar2 default hr_api.g_varchar2
476 ,p_attribute10 in varchar2 default hr_api.g_varchar2
477 ,p_attribute11 in varchar2 default hr_api.g_varchar2
478 ,p_attribute12 in varchar2 default hr_api.g_varchar2
479 ,p_attribute13 in varchar2 default hr_api.g_varchar2
480 ,p_attribute14 in varchar2 default hr_api.g_varchar2
481 ,p_attribute15 in varchar2 default hr_api.g_varchar2
482 ,p_attribute16 in varchar2 default hr_api.g_varchar2
483 ,p_attribute17 in varchar2 default hr_api.g_varchar2
484 ,p_attribute18 in varchar2 default hr_api.g_varchar2
485 ,p_attribute19 in varchar2 default hr_api.g_varchar2
486 ,p_attribute20 in varchar2 default hr_api.g_varchar2
487 ,p_cost_segment1 in varchar2 default hr_api.g_varchar2
488 ,p_cost_segment2 in varchar2 default hr_api.g_varchar2
489 ,p_cost_segment3 in varchar2 default hr_api.g_varchar2
490 ,p_cost_segment4 in varchar2 default hr_api.g_varchar2
491 ,p_cost_segment5 in varchar2 default hr_api.g_varchar2
492 ,p_cost_segment6 in varchar2 default hr_api.g_varchar2
493 ,p_cost_segment7 in varchar2 default hr_api.g_varchar2
494 ,p_cost_segment8 in varchar2 default hr_api.g_varchar2
495 ,p_cost_segment9 in varchar2 default hr_api.g_varchar2
496 ,p_cost_segment10 in varchar2 default hr_api.g_varchar2
497 ,p_cost_segment11 in varchar2 default hr_api.g_varchar2
498 ,p_cost_segment12 in varchar2 default hr_api.g_varchar2
499 ,p_cost_segment13 in varchar2 default hr_api.g_varchar2
500 ,p_cost_segment14 in varchar2 default hr_api.g_varchar2
501 ,p_cost_segment15 in varchar2 default hr_api.g_varchar2
502 ,p_cost_segment16 in varchar2 default hr_api.g_varchar2
503 ,p_cost_segment17 in varchar2 default hr_api.g_varchar2
504 ,p_cost_segment18 in varchar2 default hr_api.g_varchar2
505 ,p_cost_segment19 in varchar2 default hr_api.g_varchar2
506 ,p_cost_segment20 in varchar2 default hr_api.g_varchar2
507 ,p_cost_segment21 in varchar2 default hr_api.g_varchar2
508 ,p_cost_segment22 in varchar2 default hr_api.g_varchar2
509 ,p_cost_segment23 in varchar2 default hr_api.g_varchar2
510 ,p_cost_segment24 in varchar2 default hr_api.g_varchar2
511 ,p_cost_segment25 in varchar2 default hr_api.g_varchar2
512 ,p_cost_segment26 in varchar2 default hr_api.g_varchar2
513 ,p_cost_segment27 in varchar2 default hr_api.g_varchar2
514 ,p_cost_segment28 in varchar2 default hr_api.g_varchar2
515 ,p_cost_segment29 in varchar2 default hr_api.g_varchar2
516 ,p_cost_segment30 in varchar2 default hr_api.g_varchar2
517 ,p_balance_segment1 in varchar2 default hr_api.g_varchar2
518 ,p_balance_segment2 in varchar2 default hr_api.g_varchar2
519 ,p_balance_segment3 in varchar2 default hr_api.g_varchar2
520 ,p_balance_segment4 in varchar2 default hr_api.g_varchar2
521 ,p_balance_segment5 in varchar2 default hr_api.g_varchar2
522 ,p_balance_segment6 in varchar2 default hr_api.g_varchar2
523 ,p_balance_segment7 in varchar2 default hr_api.g_varchar2
524 ,p_balance_segment8 in varchar2 default hr_api.g_varchar2
525 ,p_balance_segment9 in varchar2 default hr_api.g_varchar2
526 ,p_balance_segment10 in varchar2 default hr_api.g_varchar2
527 ,p_balance_segment11 in varchar2 default hr_api.g_varchar2
528 ,p_balance_segment12 in varchar2 default hr_api.g_varchar2
529 ,p_balance_segment13 in varchar2 default hr_api.g_varchar2
530 ,p_balance_segment14 in varchar2 default hr_api.g_varchar2
531 ,p_balance_segment15 in varchar2 default hr_api.g_varchar2
532 ,p_balance_segment16 in varchar2 default hr_api.g_varchar2
533 ,p_balance_segment17 in varchar2 default hr_api.g_varchar2
534 ,p_balance_segment18 in varchar2 default hr_api.g_varchar2
535 ,p_balance_segment19 in varchar2 default hr_api.g_varchar2
536 ,p_balance_segment20 in varchar2 default hr_api.g_varchar2
537 ,p_balance_segment21 in varchar2 default hr_api.g_varchar2
538 ,p_balance_segment22 in varchar2 default hr_api.g_varchar2
539 ,p_balance_segment23 in varchar2 default hr_api.g_varchar2
540 ,p_balance_segment24 in varchar2 default hr_api.g_varchar2
541 ,p_balance_segment25 in varchar2 default hr_api.g_varchar2
542 ,p_balance_segment26 in varchar2 default hr_api.g_varchar2
543 ,p_balance_segment27 in varchar2 default hr_api.g_varchar2
544 ,p_balance_segment28 in varchar2 default hr_api.g_varchar2
545 ,p_balance_segment29 in varchar2 default hr_api.g_varchar2
546 ,p_balance_segment30 in varchar2 default hr_api.g_varchar2
547 ,p_cost_concat_segments_in in varchar2 default hr_api.g_varchar2
548 ,p_balance_concat_segments_in in varchar2 default hr_api.g_varchar2
549 ,p_object_version_number in out nocopy number
550 ,p_cost_allocation_keyflex_id out nocopy number
551 ,p_balancing_keyflex_id out nocopy number
552 ,p_cost_concat_segments_out out nocopy varchar2
553 ,p_balance_concat_segments_out out nocopy varchar2
554 ,p_effective_start_date out nocopy date
555 ,p_effective_end_date out nocopy date
556 ,p_return_status out nocopy varchar2
557 ) is
558 --
559 -- Variables for API Boolean parameters
560 l_validate boolean;
561 --
562 -- Variables for IN/OUT parameters
563 l_object_version_number number;
564 --
565 -- Other variables
566 l_proc varchar2(72) := g_package ||'update_element_link';
567 Begin
568 hr_utility.set_location(' Entering:' || l_proc,10);
569 --
570 -- Issue a savepoint
571 --
572 savepoint update_element_link_swi;
573 --
574 -- Initialise Multiple Message Detection
575 --
576 hr_multi_message.enable_message_list;
577 --
578 -- Remember IN OUT parameter IN values
579 --
580 l_object_version_number := p_object_version_number;
581 --
582 -- Convert constant values to their corresponding boolean value
583 --
584 l_validate :=
585 hr_api.constant_to_boolean
586 (p_constant_value => p_validate);
587 --
588 -- Register Surrogate ID or user key values
589 --
590 --
591 -- Call API
592 --
593 pay_element_link_api.update_element_link
594 (p_validate => l_validate
595 ,p_effective_date => p_effective_date
596 ,p_element_link_id => p_element_link_id
597 ,p_datetrack_mode => p_datetrack_mode
598 ,p_costable_type => p_costable_type
599 ,p_element_set_id => p_element_set_id
600 ,p_multiply_value_flag => p_multiply_value_flag
601 ,p_standard_link_flag => p_standard_link_flag
602 ,p_transfer_to_gl_flag => p_transfer_to_gl_flag
603 ,p_comments => p_comments
604 ,p_comment_id => p_comment_id
605 ,p_employment_category => p_employment_category
606 ,p_qualifying_age => p_qualifying_age
607 ,p_qualifying_length_of_service => p_qualifying_length_of_service
608 ,p_qualifying_units => p_qualifying_units
609 ,p_attribute_category => p_attribute_category
610 ,p_attribute1 => p_attribute1
611 ,p_attribute2 => p_attribute2
612 ,p_attribute3 => p_attribute3
613 ,p_attribute4 => p_attribute4
614 ,p_attribute5 => p_attribute5
615 ,p_attribute6 => p_attribute6
616 ,p_attribute7 => p_attribute7
617 ,p_attribute8 => p_attribute8
618 ,p_attribute9 => p_attribute9
619 ,p_attribute10 => p_attribute10
620 ,p_attribute11 => p_attribute11
621 ,p_attribute12 => p_attribute12
622 ,p_attribute13 => p_attribute13
623 ,p_attribute14 => p_attribute14
624 ,p_attribute15 => p_attribute15
625 ,p_attribute16 => p_attribute16
626 ,p_attribute17 => p_attribute17
627 ,p_attribute18 => p_attribute18
628 ,p_attribute19 => p_attribute19
629 ,p_attribute20 => p_attribute20
630 ,p_cost_segment1 => p_cost_segment1
631 ,p_cost_segment2 => p_cost_segment2
632 ,p_cost_segment3 => p_cost_segment3
633 ,p_cost_segment4 => p_cost_segment4
634 ,p_cost_segment5 => p_cost_segment5
635 ,p_cost_segment6 => p_cost_segment6
636 ,p_cost_segment7 => p_cost_segment7
637 ,p_cost_segment8 => p_cost_segment8
638 ,p_cost_segment9 => p_cost_segment9
639 ,p_cost_segment10 => p_cost_segment10
640 ,p_cost_segment11 => p_cost_segment11
641 ,p_cost_segment12 => p_cost_segment12
642 ,p_cost_segment13 => p_cost_segment13
643 ,p_cost_segment14 => p_cost_segment14
644 ,p_cost_segment15 => p_cost_segment15
645 ,p_cost_segment16 => p_cost_segment16
646 ,p_cost_segment17 => p_cost_segment17
647 ,p_cost_segment18 => p_cost_segment18
648 ,p_cost_segment19 => p_cost_segment19
649 ,p_cost_segment20 => p_cost_segment20
650 ,p_cost_segment21 => p_cost_segment21
651 ,p_cost_segment22 => p_cost_segment22
652 ,p_cost_segment23 => p_cost_segment23
653 ,p_cost_segment24 => p_cost_segment24
654 ,p_cost_segment25 => p_cost_segment25
655 ,p_cost_segment26 => p_cost_segment26
656 ,p_cost_segment27 => p_cost_segment27
657 ,p_cost_segment28 => p_cost_segment28
658 ,p_cost_segment29 => p_cost_segment29
659 ,p_cost_segment30 => p_cost_segment30
660 ,p_balance_segment1 => p_balance_segment1
661 ,p_balance_segment2 => p_balance_segment2
662 ,p_balance_segment3 => p_balance_segment3
663 ,p_balance_segment4 => p_balance_segment4
664 ,p_balance_segment5 => p_balance_segment5
665 ,p_balance_segment6 => p_balance_segment6
666 ,p_balance_segment7 => p_balance_segment7
667 ,p_balance_segment8 => p_balance_segment8
668 ,p_balance_segment9 => p_balance_segment9
669 ,p_balance_segment10 => p_balance_segment10
670 ,p_balance_segment11 => p_balance_segment11
671 ,p_balance_segment12 => p_balance_segment12
672 ,p_balance_segment13 => p_balance_segment13
673 ,p_balance_segment14 => p_balance_segment14
674 ,p_balance_segment15 => p_balance_segment15
675 ,p_balance_segment16 => p_balance_segment16
676 ,p_balance_segment17 => p_balance_segment17
677 ,p_balance_segment18 => p_balance_segment18
678 ,p_balance_segment19 => p_balance_segment19
679 ,p_balance_segment20 => p_balance_segment20
680 ,p_balance_segment21 => p_balance_segment21
681 ,p_balance_segment22 => p_balance_segment22
682 ,p_balance_segment23 => p_balance_segment23
683 ,p_balance_segment24 => p_balance_segment24
684 ,p_balance_segment25 => p_balance_segment25
685 ,p_balance_segment26 => p_balance_segment26
686 ,p_balance_segment27 => p_balance_segment27
687 ,p_balance_segment28 => p_balance_segment28
688 ,p_balance_segment29 => p_balance_segment29
689 ,p_balance_segment30 => p_balance_segment30
690 ,p_cost_concat_segments_in => p_cost_concat_segments_in
691 ,p_balance_concat_segments_in => p_balance_concat_segments_in
692 ,p_object_version_number => p_object_version_number
693 ,p_cost_allocation_keyflex_id => p_cost_allocation_keyflex_id
694 ,p_balancing_keyflex_id => p_balancing_keyflex_id
695 ,p_cost_concat_segments_out => p_cost_concat_segments_out
696 ,p_balance_concat_segments_out => p_balance_concat_segments_out
697 ,p_effective_start_date => p_effective_start_date
698 ,p_effective_end_date => p_effective_end_date
699 );
700 --
701 -- Convert API warning boolean parameter values to specific
702 -- messages and add them to Multiple Message List
703 --
704 --
705 -- Convert API non-warning boolean parameter values
706 --
707 --
708 -- Derive the API return status value based on whether
709 -- messages of any type exist in the Multiple Message List.
710 -- Also disable Multiple Message Detection.
711 --
712 p_return_status := hr_multi_message.get_return_status_disable;
713 hr_utility.set_location(' Leaving:' || l_proc,20);
714 --
715 exception
716 when hr_multi_message.error_message_exist then
717 --
718 -- Catch the Multiple Message List exception which
719 -- indicates API processing has been aborted because
720 -- at least one message exists in the list.
721 --
722 rollback to update_element_link_swi;
723 --
724 -- Reset IN OUT parameters and set OUT parameters
725 --
726 p_object_version_number := l_object_version_number;
727 p_cost_allocation_keyflex_id := null;
728 p_balancing_keyflex_id := null;
729 p_cost_concat_segments_out := null;
730 p_balance_concat_segments_out := null;
731 p_effective_start_date := null;
732 p_effective_end_date := null;
733 p_return_status := hr_multi_message.get_return_status_disable;
734 hr_utility.set_location(' Leaving:' || l_proc, 30);
735 when others then
736 --
737 -- When Multiple Message Detection is enabled catch
738 -- any Application specific or other unexpected
739 -- exceptions. Adding appropriate details to the
740 -- Multiple Message List. Otherwise re-raise the
741 -- error.
742 --
743 rollback to update_element_link_swi;
744 if hr_multi_message.unexpected_error_add(l_proc) then
745 hr_utility.set_location(' Leaving:' || l_proc,40);
746 raise;
747 end if;
748 --
749 -- Reset IN OUT and set OUT parameters
750 --
751 p_object_version_number := l_object_version_number;
752 p_cost_allocation_keyflex_id := null;
753 p_balancing_keyflex_id := null;
754 p_cost_concat_segments_out := null;
755 p_balance_concat_segments_out := null;
756 p_effective_start_date := null;
757 p_effective_end_date := null;
758 p_return_status := hr_multi_message.get_return_status_disable;
759 hr_utility.set_location(' Leaving:' || l_proc,50);
760 end update_element_link;
761 end pay_element_link_swi;