[Home] [Help]
PACKAGE BODY: APPS.PAY_ELEMENT_TYPES_SWI
Source
1 Package Body pay_element_types_swi As
2 /* $Header: pyetpswi.pkb 120.0 2005/05/29 04:44 appldev noship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'pay_element_types_swi.';
7 --
8 -- ---------------------------------------------------------------------------+
9 -- |--------------------------< create_element_type >------------------------|+
10 -- ---------------------------------------------------------------------------+
11 PROCEDURE create_element_type
12 (p_validate in number default hr_api.g_false_num
13 ,p_effective_date in date
14 ,p_classification_id in number
15 ,p_element_name in varchar2
16 ,p_input_currency_code in varchar2
17 ,p_output_currency_code in varchar2
18 ,p_multiple_entries_allowed_fla in varchar2
19 ,p_processing_type in varchar2
20 ,p_business_group_id in number default null
21 ,p_legislation_code in varchar2 default null
22 ,p_formula_id in number default null
23 ,p_benefit_classification_id in number default null
24 ,p_additional_entry_allowed_fla in varchar2 default null
25 ,p_adjustment_only_flag in varchar2 default null
26 ,p_closed_for_entry_flag in varchar2 default null
27 ,p_reporting_name in varchar2 default null
28 ,p_description in varchar2 default null
29 ,p_indirect_only_flag in varchar2 default null
30 ,p_multiply_value_flag in varchar2 default null
31 ,p_post_termination_rule in varchar2 default null
32 ,p_process_in_run_flag in varchar2 default null
33 ,p_processing_priority in number default null
34 ,p_standard_link_flag in varchar2 default null
35 ,p_comments in varchar2 default null
36 ,p_third_party_pay_only_flag in varchar2 default null
37 ,p_iterative_flag in varchar2 default null
38 ,p_iterative_formula_id in number default null
39 ,p_iterative_priority in number default null
40 ,p_creator_type in varchar2 default null
41 ,p_retro_summ_ele_id in number default null
42 ,p_grossup_flag in varchar2 default null
43 ,p_process_mode in varchar2 default null
44 ,p_advance_indicator in varchar2 default null
45 ,p_advance_payable in varchar2 default null
46 ,p_advance_deduction in varchar2 default null
47 ,p_process_advance_entry in varchar2 default null
48 ,p_proration_group_id in number default null
49 ,p_proration_formula_id in number default null
50 ,p_recalc_event_group_id in number default null
51 ,p_legislation_subgroup in varchar2 default null
52 ,p_qualifying_age in number default null
53 ,p_qualifying_length_of_service in number default null
54 ,p_qualifying_units in varchar2 default null
55 ,p_attribute_category in varchar2 default null
56 ,p_attribute1 in varchar2 default null
57 ,p_attribute2 in varchar2 default null
58 ,p_attribute3 in varchar2 default null
59 ,p_attribute4 in varchar2 default null
60 ,p_attribute5 in varchar2 default null
61 ,p_attribute6 in varchar2 default null
62 ,p_attribute7 in varchar2 default null
63 ,p_attribute8 in varchar2 default null
64 ,p_attribute9 in varchar2 default null
65 ,p_attribute10 in varchar2 default null
66 ,p_attribute11 in varchar2 default null
67 ,p_attribute12 in varchar2 default null
68 ,p_attribute13 in varchar2 default null
69 ,p_attribute14 in varchar2 default null
70 ,p_attribute15 in varchar2 default null
71 ,p_attribute16 in varchar2 default null
72 ,p_attribute17 in varchar2 default null
73 ,p_attribute18 in varchar2 default null
74 ,p_attribute19 in varchar2 default null
75 ,p_attribute20 in varchar2 default null
76 ,p_element_information_category in varchar2 default null
77 ,p_element_information1 in varchar2 default null
78 ,p_element_information2 in varchar2 default null
79 ,p_element_information3 in varchar2 default null
80 ,p_element_information4 in varchar2 default null
81 ,p_element_information5 in varchar2 default null
82 ,p_element_information6 in varchar2 default null
83 ,p_element_information7 in varchar2 default null
84 ,p_element_information8 in varchar2 default null
85 ,p_element_information9 in varchar2 default null
86 ,p_element_information10 in varchar2 default null
87 ,p_element_information11 in varchar2 default null
88 ,p_element_information12 in varchar2 default null
89 ,p_element_information13 in varchar2 default null
90 ,p_element_information14 in varchar2 default null
91 ,p_element_information15 in varchar2 default null
92 ,p_element_information16 in varchar2 default null
93 ,p_element_information17 in varchar2 default null
94 ,p_element_information18 in varchar2 default null
95 ,p_element_information19 in varchar2 default null
96 ,p_element_information20 in varchar2 default null
97 ,p_default_uom in varchar2 default null
98 ,p_once_each_period_flag in varchar2 default null
99 ,p_language_code in varchar2 default null
100 ,p_element_type_id out nocopy number
101 ,p_effective_start_date out nocopy date
102 ,p_effective_end_date out nocopy date
103 ,p_object_version_number out nocopy number
104 ,p_comment_id out nocopy number
105 ,p_return_status out nocopy varchar2
106 ) is
107 --
108 -- Variables for API Boolean parameters
109 l_validate boolean;
110 l_processing_priority_warning boolean;
111 --
112 -- Variables for IN/OUT parameters
113 --
114 -- Other variables
115 l_proc varchar2(72) := g_package ||'create_element_type';
116 Begin
117 hr_utility.set_location(' Entering:' || l_proc,10);
118 --
119 -- Issue a savepoint
120 --
121 savepoint create_element_type_swi;
122 --
123 -- Initialise Multiple Message Detection
124 --
125 hr_multi_message.enable_message_list;
126 --
127 -- Remember IN OUT parameter IN values
128 --
129 --
130 -- Convert constant values to their corresponding boolean value
131 --
132 l_validate :=
133 hr_api.constant_to_boolean
134 (p_constant_value => p_validate);
135 --
136 -- Register Surrogate ID or user key values
137 --
138 --
139 -- Call API
140 --
141 pay_element_types_api.create_element_type
142 (p_validate => l_validate
143 ,p_effective_date => p_effective_date
144 ,p_classification_id => p_classification_id
145 ,p_element_name => p_element_name
146 ,p_input_currency_code => p_input_currency_code
147 ,p_output_currency_code => p_output_currency_code
148 ,p_multiple_entries_allowed_fla => p_multiple_entries_allowed_fla
149 ,p_processing_type => p_processing_type
150 ,p_business_group_id => p_business_group_id
151 ,p_legislation_code => p_legislation_code
152 ,p_formula_id => p_formula_id
153 ,p_benefit_classification_id => p_benefit_classification_id
154 ,p_additional_entry_allowed_fla => p_additional_entry_allowed_fla
155 ,p_adjustment_only_flag => p_adjustment_only_flag
156 ,p_closed_for_entry_flag => p_closed_for_entry_flag
157 ,p_reporting_name => p_reporting_name
158 ,p_description => p_description
159 ,p_indirect_only_flag => p_indirect_only_flag
160 ,p_multiply_value_flag => p_multiply_value_flag
161 ,p_post_termination_rule => p_post_termination_rule
162 ,p_process_in_run_flag => p_process_in_run_flag
163 ,p_processing_priority => p_processing_priority
164 ,p_standard_link_flag => p_standard_link_flag
165 ,p_comments => p_comments
166 ,p_third_party_pay_only_flag => p_third_party_pay_only_flag
167 ,p_iterative_flag => p_iterative_flag
168 ,p_iterative_formula_id => p_iterative_formula_id
169 ,p_iterative_priority => p_iterative_priority
170 ,p_creator_type => p_creator_type
171 ,p_retro_summ_ele_id => p_retro_summ_ele_id
172 ,p_grossup_flag => p_grossup_flag
173 ,p_process_mode => p_process_mode
174 ,p_advance_indicator => p_advance_indicator
175 ,p_advance_payable => p_advance_payable
176 ,p_advance_deduction => p_advance_deduction
177 ,p_process_advance_entry => p_process_advance_entry
178 ,p_proration_group_id => p_proration_group_id
179 ,p_proration_formula_id => p_proration_formula_id
180 ,p_recalc_event_group_id => p_recalc_event_group_id
181 ,p_legislation_subgroup => p_legislation_subgroup
182 ,p_qualifying_age => p_qualifying_age
183 ,p_qualifying_length_of_service => p_qualifying_length_of_service
184 ,p_qualifying_units => p_qualifying_units
185 ,p_attribute_category => p_attribute_category
186 ,p_attribute1 => p_attribute1
187 ,p_attribute2 => p_attribute2
188 ,p_attribute3 => p_attribute3
189 ,p_attribute4 => p_attribute4
190 ,p_attribute5 => p_attribute5
191 ,p_attribute6 => p_attribute6
192 ,p_attribute7 => p_attribute7
193 ,p_attribute8 => p_attribute8
194 ,p_attribute9 => p_attribute9
195 ,p_attribute10 => p_attribute10
196 ,p_attribute11 => p_attribute11
197 ,p_attribute12 => p_attribute12
198 ,p_attribute13 => p_attribute13
199 ,p_attribute14 => p_attribute14
200 ,p_attribute15 => p_attribute15
201 ,p_attribute16 => p_attribute16
202 ,p_attribute17 => p_attribute17
203 ,p_attribute18 => p_attribute18
204 ,p_attribute19 => p_attribute19
205 ,p_attribute20 => p_attribute20
206 ,p_element_information_category => p_element_information_category
207 ,p_element_information1 => p_element_information1
208 ,p_element_information2 => p_element_information2
209 ,p_element_information3 => p_element_information3
210 ,p_element_information4 => p_element_information4
211 ,p_element_information5 => p_element_information5
212 ,p_element_information6 => p_element_information6
213 ,p_element_information7 => p_element_information7
214 ,p_element_information8 => p_element_information8
215 ,p_element_information9 => p_element_information9
216 ,p_element_information10 => p_element_information10
217 ,p_element_information11 => p_element_information11
218 ,p_element_information12 => p_element_information12
219 ,p_element_information13 => p_element_information13
220 ,p_element_information14 => p_element_information14
221 ,p_element_information15 => p_element_information15
222 ,p_element_information16 => p_element_information16
223 ,p_element_information17 => p_element_information17
224 ,p_element_information18 => p_element_information18
225 ,p_element_information19 => p_element_information19
226 ,p_element_information20 => p_element_information20
227 ,p_default_uom => p_default_uom
228 ,p_once_each_period_flag => p_once_each_period_flag
229 ,p_language_code => p_language_code
230 ,p_element_type_id => p_element_type_id
231 ,p_effective_start_date => p_effective_start_date
232 ,p_effective_end_date => p_effective_end_date
233 ,p_object_version_number => p_object_version_number
234 ,p_comment_id => p_comment_id
235 ,p_processing_priority_warning => l_processing_priority_warning
236 );
237 --
238 -- Convert API warning boolean parameter values to specific
239 -- messages and add them to Multiple Message List
240 --
241 --if l_processing_priority_warning then
242 -- fnd_message.set_name('PAY', 'PAY_6149_ELEMENT_PRIORITY_UPD');
243 -- hr_multi_message.add
244 -- (p_message_type => hr_multi_message.g_warning_msg
245 -- );
246 --end if; --
247 -- Convert API non-warning boolean parameter values
248 --
249 --
250 -- Derive the API return status value based on whether
251 -- messages of any type exist in the Multiple Message List.
252 -- Also disable Multiple Message Detection.
253 --
254 p_return_status := hr_multi_message.get_return_status_disable;
255 hr_utility.set_location(' Leaving:' || l_proc,20);
256 --
257 exception
258 when hr_multi_message.error_message_exist then
259 --
260 -- Catch the Multiple Message List exception which
261 -- indicates API processing has been aborted because
262 -- at least one message exists in the list.
263 --
264 rollback to create_element_type_swi;
265 --
266 -- Reset IN OUT parameters and set OUT parameters
267 --
268 p_element_type_id := null;
269 p_effective_start_date := null;
270 p_effective_end_date := null;
271 p_object_version_number := null;
272 p_comment_id := null;
273 p_return_status := hr_multi_message.get_return_status_disable;
274 hr_utility.set_location(' Leaving:' || l_proc, 30);
275 when others then
276 --
277 -- When Multiple Message Detection is enabled catch
278 -- any Application specific or other unexpected
279 -- exceptions. Adding appropriate details to the
280 -- Multiple Message List. Otherwise re-raise the
281 -- error.
282 --
283 rollback to create_element_type_swi;
284 if hr_multi_message.unexpected_error_add(l_proc) then
285 hr_utility.set_location(' Leaving:' || l_proc,40);
286 raise;
287 end if;
288 --
289 -- Reset IN OUT and set OUT parameters
290 --
291 p_element_type_id := null;
292 p_effective_start_date := null;
293 p_effective_end_date := null;
294 p_object_version_number := null;
295 p_comment_id := null;
296 p_return_status := hr_multi_message.get_return_status_disable;
297 hr_utility.set_location(' Leaving:' || l_proc,50);
298 end create_element_type;
299 -- ----------------------------------------------------------------------------
300 -- |--------------------------< update_element_type >-------------------------|
301 -- ----------------------------------------------------------------------------
302 PROCEDURE update_element_type
303 (p_validate in number default hr_api.g_false_num
304 ,p_effective_date in date
305 ,p_datetrack_update_mode in varchar2
306 ,p_element_type_id in number
307 ,p_object_version_number in out nocopy number
308 ,p_formula_id in number default hr_api.g_number
309 ,p_benefit_classification_id in number default hr_api.g_number
310 ,p_additional_entry_allowed_fla in varchar2 default hr_api.g_varchar2
311 ,p_adjustment_only_flag in varchar2 default hr_api.g_varchar2
312 ,p_closed_for_entry_flag in varchar2 default hr_api.g_varchar2
313 ,p_element_name in varchar2 default hr_api.g_varchar2
314 ,p_reporting_name in varchar2 default hr_api.g_varchar2
315 ,p_description in varchar2 default hr_api.g_varchar2
316 ,p_indirect_only_flag in varchar2 default hr_api.g_varchar2
317 ,p_multiple_entries_allowed_fla in varchar2 default hr_api.g_varchar2
318 ,p_multiply_value_flag in varchar2 default hr_api.g_varchar2
319 ,p_post_termination_rule in varchar2 default hr_api.g_varchar2
320 ,p_process_in_run_flag in varchar2 default hr_api.g_varchar2
321 ,p_processing_priority in number default hr_api.g_number
322 ,p_standard_link_flag in varchar2 default hr_api.g_varchar2
323 ,p_comments in varchar2 default hr_api.g_varchar2
324 ,p_third_party_pay_only_flag in varchar2 default hr_api.g_varchar2
325 ,p_iterative_flag in varchar2 default hr_api.g_varchar2
326 ,p_iterative_formula_id in number default hr_api.g_number
327 ,p_iterative_priority in number default hr_api.g_number
328 ,p_creator_type in varchar2 default hr_api.g_varchar2
329 ,p_retro_summ_ele_id in number default hr_api.g_number
330 ,p_grossup_flag in varchar2 default hr_api.g_varchar2
331 ,p_process_mode in varchar2 default hr_api.g_varchar2
332 ,p_advance_indicator in varchar2 default hr_api.g_varchar2
333 ,p_advance_payable in varchar2 default hr_api.g_varchar2
334 ,p_advance_deduction in varchar2 default hr_api.g_varchar2
335 ,p_process_advance_entry in varchar2 default hr_api.g_varchar2
336 ,p_proration_group_id in number default hr_api.g_number
337 ,p_proration_formula_id in number default hr_api.g_number
338 ,p_recalc_event_group_id in number default hr_api.g_number
339 ,p_qualifying_age in number default hr_api.g_number
340 ,p_qualifying_length_of_service in number default hr_api.g_number
341 ,p_qualifying_units in varchar2 default hr_api.g_varchar2
342 ,p_attribute_category in varchar2 default hr_api.g_varchar2
343 ,p_attribute1 in varchar2 default hr_api.g_varchar2
344 ,p_attribute2 in varchar2 default hr_api.g_varchar2
345 ,p_attribute3 in varchar2 default hr_api.g_varchar2
346 ,p_attribute4 in varchar2 default hr_api.g_varchar2
347 ,p_attribute5 in varchar2 default hr_api.g_varchar2
348 ,p_attribute6 in varchar2 default hr_api.g_varchar2
349 ,p_attribute7 in varchar2 default hr_api.g_varchar2
350 ,p_attribute8 in varchar2 default hr_api.g_varchar2
351 ,p_attribute9 in varchar2 default hr_api.g_varchar2
352 ,p_attribute10 in varchar2 default hr_api.g_varchar2
353 ,p_attribute11 in varchar2 default hr_api.g_varchar2
354 ,p_attribute12 in varchar2 default hr_api.g_varchar2
355 ,p_attribute13 in varchar2 default hr_api.g_varchar2
356 ,p_attribute14 in varchar2 default hr_api.g_varchar2
357 ,p_attribute15 in varchar2 default hr_api.g_varchar2
358 ,p_attribute16 in varchar2 default hr_api.g_varchar2
359 ,p_attribute17 in varchar2 default hr_api.g_varchar2
360 ,p_attribute18 in varchar2 default hr_api.g_varchar2
361 ,p_attribute19 in varchar2 default hr_api.g_varchar2
362 ,p_attribute20 in varchar2 default hr_api.g_varchar2
363 ,p_element_information_category in varchar2 default hr_api.g_varchar2
364 ,p_element_information1 in varchar2 default hr_api.g_varchar2
365 ,p_element_information2 in varchar2 default hr_api.g_varchar2
366 ,p_element_information3 in varchar2 default hr_api.g_varchar2
367 ,p_element_information4 in varchar2 default hr_api.g_varchar2
368 ,p_element_information5 in varchar2 default hr_api.g_varchar2
369 ,p_element_information6 in varchar2 default hr_api.g_varchar2
370 ,p_element_information7 in varchar2 default hr_api.g_varchar2
371 ,p_element_information8 in varchar2 default hr_api.g_varchar2
372 ,p_element_information9 in varchar2 default hr_api.g_varchar2
373 ,p_element_information10 in varchar2 default hr_api.g_varchar2
374 ,p_element_information11 in varchar2 default hr_api.g_varchar2
375 ,p_element_information12 in varchar2 default hr_api.g_varchar2
376 ,p_element_information13 in varchar2 default hr_api.g_varchar2
377 ,p_element_information14 in varchar2 default hr_api.g_varchar2
378 ,p_element_information15 in varchar2 default hr_api.g_varchar2
379 ,p_element_information16 in varchar2 default hr_api.g_varchar2
380 ,p_element_information17 in varchar2 default hr_api.g_varchar2
381 ,p_element_information18 in varchar2 default hr_api.g_varchar2
382 ,p_element_information19 in varchar2 default hr_api.g_varchar2
383 ,p_element_information20 in varchar2 default hr_api.g_varchar2
384 ,p_once_each_period_flag in varchar2 default hr_api.g_varchar2
385 ,p_language_code in varchar2 default hr_api.g_varchar2
386 ,p_effective_start_date out nocopy date
387 ,p_effective_end_date out nocopy date
388 ,p_comment_id out nocopy number
389 ,p_return_status out nocopy varchar2
390 ) is
391 --
392 -- Variables for API Boolean parameters
393 l_validate boolean;
394 l_processing_priority_warning boolean;
395 l_element_name_warning boolean;
396 l_element_name_change_warning boolean;
397 --
398 -- Variables for IN/OUT parameters
399 l_object_version_number number;
400 --
401 -- Other variables
402 l_proc varchar2(72) := g_package ||'update_element_type';
403 Begin
404 hr_utility.set_location(' Entering:' || l_proc,10);
405 --
406 -- Issue a savepoint
407 --
408 savepoint update_element_type_swi;
409 --
410 -- Initialise Multiple Message Detection
411 --
412 hr_multi_message.enable_message_list;
413 --
414 -- Remember IN OUT parameter IN values
415 --
416 l_object_version_number := p_object_version_number;
417 --
418 -- Convert constant values to their corresponding boolean value
419 --
420 l_validate :=
421 hr_api.constant_to_boolean
422 (p_constant_value => p_validate);
423 --
424 -- Register Surrogate ID or user key values
425 --
426 --
427 -- Call API
428 --
429 pay_element_types_api.update_element_type
430 (p_validate => l_validate
431 ,p_effective_date => p_effective_date
432 ,p_datetrack_update_mode => p_datetrack_update_mode
433 ,p_element_type_id => p_element_type_id
434 ,p_object_version_number => p_object_version_number
435 ,p_formula_id => p_formula_id
436 ,p_benefit_classification_id => p_benefit_classification_id
437 ,p_additional_entry_allowed_fla => p_additional_entry_allowed_fla
438 ,p_adjustment_only_flag => p_adjustment_only_flag
439 ,p_closed_for_entry_flag => p_closed_for_entry_flag
440 ,p_element_name => p_element_name
441 ,p_reporting_name => p_reporting_name
442 ,p_description => p_description
443 ,p_indirect_only_flag => p_indirect_only_flag
444 ,p_multiple_entries_allowed_fla => p_multiple_entries_allowed_fla
445 ,p_multiply_value_flag => p_multiply_value_flag
446 ,p_post_termination_rule => p_post_termination_rule
447 ,p_process_in_run_flag => p_process_in_run_flag
448 ,p_processing_priority => p_processing_priority
449 ,p_standard_link_flag => p_standard_link_flag
450 ,p_comments => p_comments
451 ,p_third_party_pay_only_flag => p_third_party_pay_only_flag
452 ,p_iterative_flag => p_iterative_flag
453 ,p_iterative_formula_id => p_iterative_formula_id
454 ,p_iterative_priority => p_iterative_priority
455 ,p_creator_type => p_creator_type
456 ,p_retro_summ_ele_id => p_retro_summ_ele_id
457 ,p_grossup_flag => p_grossup_flag
458 ,p_process_mode => p_process_mode
459 ,p_advance_indicator => p_advance_indicator
460 ,p_advance_payable => p_advance_payable
461 ,p_advance_deduction => p_advance_deduction
462 ,p_process_advance_entry => p_process_advance_entry
463 ,p_proration_group_id => p_proration_group_id
464 ,p_proration_formula_id => p_proration_formula_id
465 ,p_recalc_event_group_id => p_recalc_event_group_id
466 ,p_qualifying_age => p_qualifying_age
467 ,p_qualifying_length_of_service => p_qualifying_length_of_service
468 ,p_qualifying_units => p_qualifying_units
469 ,p_attribute_category => p_attribute_category
470 ,p_attribute1 => p_attribute1
471 ,p_attribute2 => p_attribute2
472 ,p_attribute3 => p_attribute3
473 ,p_attribute4 => p_attribute4
474 ,p_attribute5 => p_attribute5
475 ,p_attribute6 => p_attribute6
476 ,p_attribute7 => p_attribute7
477 ,p_attribute8 => p_attribute8
478 ,p_attribute9 => p_attribute9
479 ,p_attribute10 => p_attribute10
480 ,p_attribute11 => p_attribute11
481 ,p_attribute12 => p_attribute12
482 ,p_attribute13 => p_attribute13
483 ,p_attribute14 => p_attribute14
484 ,p_attribute15 => p_attribute15
485 ,p_attribute16 => p_attribute16
486 ,p_attribute17 => p_attribute17
487 ,p_attribute18 => p_attribute18
488 ,p_attribute19 => p_attribute19
489 ,p_attribute20 => p_attribute20
490 ,p_element_information_category => p_element_information_category
491 ,p_element_information1 => p_element_information1
492 ,p_element_information2 => p_element_information2
493 ,p_element_information3 => p_element_information3
494 ,p_element_information4 => p_element_information4
495 ,p_element_information5 => p_element_information5
496 ,p_element_information6 => p_element_information6
497 ,p_element_information7 => p_element_information7
498 ,p_element_information8 => p_element_information8
499 ,p_element_information9 => p_element_information9
500 ,p_element_information10 => p_element_information10
501 ,p_element_information11 => p_element_information11
502 ,p_element_information12 => p_element_information12
503 ,p_element_information13 => p_element_information13
504 ,p_element_information14 => p_element_information14
505 ,p_element_information15 => p_element_information15
506 ,p_element_information16 => p_element_information16
507 ,p_element_information17 => p_element_information17
508 ,p_element_information18 => p_element_information18
509 ,p_element_information19 => p_element_information19
510 ,p_element_information20 => p_element_information20
511 ,p_once_each_period_flag => p_once_each_period_flag
512 ,p_language_code => p_language_code
513 ,p_effective_start_date => p_effective_start_date
514 ,p_effective_end_date => p_effective_end_date
515 ,p_comment_id => p_comment_id
516 ,p_processing_priority_warning => l_processing_priority_warning
517 ,p_element_name_warning => l_element_name_warning
518 ,p_element_name_change_warning => l_element_name_change_warning
519 );
520 --
521 -- Convert API warning boolean parameter values to specific
522 -- messages and add them to Multiple Message List
523 --
524 if l_processing_priority_warning then
525 fnd_message.set_name('PAY','PAY_6149_ELEMENT_PRIORITY_UPD');
526 hr_multi_message.add
527 (p_message_type => hr_multi_message.g_warning_msg
528 );
529 end if;
530 if l_element_name_warning then
531 fnd_message.set_name('PAY','PAY_6365_ELEMENT_NO_DB_NAME');
532 hr_multi_message.add
533 (p_message_type => hr_multi_message.g_warning_msg
534 );
535 end if;
536 if l_element_name_change_warning then
537 fnd_message.set_name('PAY','PAY_6137_ELEMENT_DUP_NAME');
538 hr_multi_message.add
539 (p_message_type => hr_multi_message.g_warning_msg
540 );
541 end if; --
542 -- Convert API non-warning boolean parameter values
543 --
544 --
545 -- Derive the API return status value based on whether
546 -- messages of any type exist in the Multiple Message List.
547 -- Also disable Multiple Message Detection.
548 --
549 p_return_status := hr_multi_message.get_return_status_disable;
550 hr_utility.set_location(' Leaving:' || l_proc,20);
551 --
552 exception
553 when hr_multi_message.error_message_exist then
554 --
555 -- Catch the Multiple Message List exception which
556 -- indicates API processing has been aborted because
557 -- at least one message exists in the list.
558 --
559 rollback to update_element_type_swi;
560 --
561 -- Reset IN OUT parameters and set OUT parameters
562 --
563 p_object_version_number := l_object_version_number;
564 p_effective_start_date := null;
565 p_effective_end_date := null;
566 p_comment_id := null;
567 p_return_status := hr_multi_message.get_return_status_disable;
568 hr_utility.set_location(' Leaving:' || l_proc, 30);
569 when others then
570 --
571 -- When Multiple Message Detection is enabled catch
572 -- any Application specific or other unexpected
573 -- exceptions. Adding appropriate details to the
574 -- Multiple Message List. Otherwise re-raise the
575 -- error.
576 --
577 rollback to update_element_type_swi;
578 if hr_multi_message.unexpected_error_add(l_proc) then
579 hr_utility.set_location(' Leaving:' || l_proc,40);
580 raise;
581 end if;
582 --
583 -- Reset IN OUT and set OUT parameters
584 --
585 p_object_version_number := l_object_version_number;
586 p_effective_start_date := null;
587 p_effective_end_date := null;
588 p_comment_id := null;
589 p_return_status := hr_multi_message.get_return_status_disable;
590 hr_utility.set_location(' Leaving:' || l_proc,50);
591 end update_element_type;
592 -- ----------------------------------------------------------------------------
593 -- |--------------------------< delete_element_type >-------------------------|
594 -- ----------------------------------------------------------------------------
595 PROCEDURE delete_element_type
596 (p_validate in number default hr_api.g_false_num
597 ,p_effective_date in date
598 ,p_datetrack_delete_mode in varchar2
599 ,p_element_type_id in number
600 ,p_object_version_number in out nocopy number
601 ,p_effective_start_date out nocopy date
602 ,p_effective_end_date out nocopy date
603 ,p_return_status out nocopy varchar2
604 ) is
605 --
606 -- Variables for API Boolean parameters
607 l_validate boolean;
608 l_balance_feeds_warning boolean;
609 l_processing_rules_warning boolean;
610 --
611 -- Variables for IN/OUT parameters
612 l_object_version_number number;
613 --
614 -- Other variables
615 l_proc varchar2(72) := g_package ||'delete_element_type';
616 Begin
617 hr_utility.set_location(' Entering:' || l_proc,10);
618 --
619 -- Issue a savepoint
620 --
621 savepoint delete_element_type_swi;
622 --
623 -- Initialise Multiple Message Detection
624 --
625 hr_multi_message.enable_message_list;
626 --
627 -- Remember IN OUT parameter IN values
628 --
629 l_object_version_number := p_object_version_number;
630 --
631 -- Convert constant values to their corresponding boolean value
632 --
633 l_validate :=
634 hr_api.constant_to_boolean
635 (p_constant_value => p_validate);
636 --
637 -- Register Surrogate ID or user key values
638 --
639 --
640 -- Call API
641 --
642 pay_element_types_api.delete_element_type
643 (p_validate => l_validate
644 ,p_effective_date => p_effective_date
645 ,p_datetrack_delete_mode => p_datetrack_delete_mode
646 ,p_element_type_id => p_element_type_id
647 ,p_object_version_number => p_object_version_number
648 ,p_effective_start_date => p_effective_start_date
649 ,p_effective_end_date => p_effective_end_date
650 ,p_balance_feeds_warning => l_balance_feeds_warning
651 ,p_processing_rules_warning => l_processing_rules_warning
652 );
653 --
654 -- Convert API warning boolean parameter values to specific
655 -- messages and add them to Multiple Message List
656 --
657 if l_balance_feeds_warning then
658 fnd_message.set_name('PAY', 'HR_6208_BAL_DEL_NOT_AUTO');
659 hr_multi_message.add
660 (p_message_type => hr_multi_message.g_warning_msg
661 );
662 end if;
663 if l_processing_rules_warning then
664 fnd_message.set_name('PAY', 'PAY_6156_ELEMENT_NO_DEL_SPR');
665 hr_multi_message.add
666 (p_message_type => hr_multi_message.g_warning_msg
667 );
668 end if; --
669 -- Convert API non-warning boolean parameter values
670 --
671 --
672 -- Derive the API return status value based on whether
673 -- messages of any type exist in the Multiple Message List.
674 -- Also disable Multiple Message Detection.
675 --
676 p_return_status := hr_multi_message.get_return_status_disable;
677 hr_utility.set_location(' Leaving:' || l_proc,20);
678 --
679 exception
680 when hr_multi_message.error_message_exist then
681 --
682 -- Catch the Multiple Message List exception which
683 -- indicates API processing has been aborted because
684 -- at least one message exists in the list.
685 --
686 rollback to delete_element_type_swi;
687 --
688 -- Reset IN OUT parameters and set OUT parameters
689 --
690 p_object_version_number := l_object_version_number;
691 p_effective_start_date := null;
692 p_effective_end_date := null;
693 p_return_status := hr_multi_message.get_return_status_disable;
694 hr_utility.set_location(' Leaving:' || l_proc, 30);
695 when others then
696 --
697 -- When Multiple Message Detection is enabled catch
698 -- any Application specific or other unexpected
699 -- exceptions. Adding appropriate details to the
700 -- Multiple Message List. Otherwise re-raise the
701 -- error.
702 --
703 rollback to delete_element_type_swi;
704 if hr_multi_message.unexpected_error_add(l_proc) then
705 hr_utility.set_location(' Leaving:' || l_proc,40);
706 raise;
707 end if;
708 --
709 -- Reset IN OUT and set OUT parameters
710 --
711 p_object_version_number := l_object_version_number;
712 p_effective_start_date := null;
713 p_effective_end_date := null;
714 p_return_status := hr_multi_message.get_return_status_disable;
715 hr_utility.set_location(' Leaving:' || l_proc,50);
716 end delete_element_type;
717 end pay_element_types_swi;