[Home] [Help]
PACKAGE BODY: APPS.HR_PERSONAL_SCORECARD_SWI
Source
1 Package Body hr_personal_scorecard_swi As
2 /* $Header: pepmsswi.pkb 120.4 2011/12/22 06:27:28 randhava ship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'hr_personal_scorecard_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |---------------------------< create_scorecard >---------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_scorecard
12 (p_validate in number default hr_api.g_false_num
13 ,p_effective_date in date
14 ,p_scorecard_name in varchar2
15 ,p_assignment_id in number
16 ,p_start_date in date
17 ,p_end_date in date
18 ,p_plan_id in number default null
19 ,p_creator_type in varchar2 default null
20 ,p_attribute_category in varchar2 default null
21 ,p_attribute1 in varchar2 default null
22 ,p_attribute2 in varchar2 default null
23 ,p_attribute3 in varchar2 default null
24 ,p_attribute4 in varchar2 default null
25 ,p_attribute5 in varchar2 default null
26 ,p_attribute6 in varchar2 default null
27 ,p_attribute7 in varchar2 default null
28 ,p_attribute8 in varchar2 default null
29 ,p_attribute9 in varchar2 default null
30 ,p_attribute10 in varchar2 default null
31 ,p_attribute11 in varchar2 default null
32 ,p_attribute12 in varchar2 default null
33 ,p_attribute13 in varchar2 default null
34 ,p_attribute14 in varchar2 default null
35 ,p_attribute15 in varchar2 default null
36 ,p_attribute16 in varchar2 default null
37 ,p_attribute17 in varchar2 default null
38 ,p_attribute18 in varchar2 default null
39 ,p_attribute19 in varchar2 default null
40 ,p_attribute20 in varchar2 default null
41 ,p_attribute21 in varchar2 default null
42 ,p_attribute22 in varchar2 default null
43 ,p_attribute23 in varchar2 default null
44 ,p_attribute24 in varchar2 default null
45 ,p_attribute25 in varchar2 default null
46 ,p_attribute26 in varchar2 default null
47 ,p_attribute27 in varchar2 default null
48 ,p_attribute28 in varchar2 default null
49 ,p_attribute29 in varchar2 default null
50 ,p_attribute30 in varchar2 default null
51 ,p_scorecard_id in number
52 ,p_object_version_number out nocopy number
53 ,p_status_code in varchar2
54 ,p_return_status out nocopy varchar2
55 ,p_obj_setting_deadline in date default null
56 ,p_supervisor_id in number default null
57 ,p_supervisor_assignment_id in number default null
58 ,p_eligibility_status in varchar2 default null
59 ,p_eligibility_eval_date in date default null
60 ) is
61 --
62 -- Variables for API Boolean parameters
63 l_validate boolean;
64 l_duplicate_name_warning boolean;
65 --
66 -- Variables for IN/OUT parameters
67 --
68 -- Other variables
69 l_scorecard_id number;
70 l_proc varchar2(72) := g_package ||'create_scorecard';
71 Begin
72 hr_utility.set_location(' Entering:' || l_proc,10);
73 --
74 -- Issue a savepoint
75 --
76 savepoint create_scorecard_swi;
77 --
78 -- Initialise Multiple Message Detection
79 --
80 hr_multi_message.enable_message_list;
81 --
82 -- Remember IN OUT parameter IN values
83 --
84 --
85 -- Convert constant values to their corresponding boolean value
86 --
87 l_validate :=
88 hr_api.constant_to_boolean
89 (p_constant_value => p_validate);
90 --
91 -- Register Surrogate ID or user key values
92 --
93 per_pms_ins.set_base_key_value
97 -- Call API
94 (p_scorecard_id => p_scorecard_id
95 );
96 --
98 --
99 hr_personal_scorecard_api.create_scorecard
100 (p_validate => l_validate
101 ,p_effective_date => p_effective_date
102 ,p_scorecard_name => p_scorecard_name
103 ,p_assignment_id => p_assignment_id
104 ,p_start_date => p_start_date
105 ,p_end_date => p_end_date
106 ,p_plan_id => p_plan_id
107 ,p_creator_type => p_creator_type
108 ,p_attribute_category => p_attribute_category
109 ,p_attribute1 => p_attribute1
110 ,p_attribute2 => p_attribute2
111 ,p_attribute3 => p_attribute3
112 ,p_attribute4 => p_attribute4
113 ,p_attribute5 => p_attribute5
114 ,p_attribute6 => p_attribute6
115 ,p_attribute7 => p_attribute7
116 ,p_attribute8 => p_attribute8
117 ,p_attribute9 => p_attribute9
118 ,p_attribute10 => p_attribute10
119 ,p_attribute11 => p_attribute11
120 ,p_attribute12 => p_attribute12
121 ,p_attribute13 => p_attribute13
122 ,p_attribute14 => p_attribute14
123 ,p_attribute15 => p_attribute15
124 ,p_attribute16 => p_attribute16
125 ,p_attribute17 => p_attribute17
126 ,p_attribute18 => p_attribute18
127 ,p_attribute19 => p_attribute19
128 ,p_attribute20 => p_attribute20
129 ,p_attribute21 => p_attribute21
130 ,p_attribute22 => p_attribute22
131 ,p_attribute23 => p_attribute23
132 ,p_attribute24 => p_attribute24
133 ,p_attribute25 => p_attribute25
134 ,p_attribute26 => p_attribute26
135 ,p_attribute27 => p_attribute27
136 ,p_attribute28 => p_attribute28
137 ,p_attribute29 => p_attribute29
138 ,p_attribute30 => p_attribute30
139 ,p_scorecard_id => l_scorecard_id
140 ,p_object_version_number => p_object_version_number
141 ,p_status_code => p_status_code
142 ,p_duplicate_name_warning => l_duplicate_name_warning
143 ,p_obj_setting_deadline => p_obj_setting_deadline
144 ,p_supervisor_id => p_supervisor_id
145 ,p_supervisor_assignment_id => p_supervisor_assignment_id
146 ,p_eligibility_status => p_eligibility_status
147 ,p_eligibility_eval_date => p_eligibility_eval_date
148 );
149 --
150 -- Convert API warning boolean parameter values to specific
151 -- messages and add them to Multiple Message List
152 --
153 if l_duplicate_name_warning then
154 fnd_message.set_name('PER', 'HR_50268_PMS_DUP_SC_FOR_ASG');
155 hr_multi_message.add
156 (p_message_type => hr_multi_message.g_warning_msg
157 );
158 end if;
159 --
160 -- Convert API non-warning boolean parameter values
161 --
162 --
163 -- Derive the API return status value based on whether
164 -- messages of any type exist in the Multiple Message List.
165 -- Also disable Multiple Message Detection.
166 --
167 p_return_status := hr_multi_message.get_return_status_disable;
168 hr_utility.set_location(' Leaving:' || l_proc,20);
169 --
170 exception
171 when hr_multi_message.error_message_exist then
172 --
173 -- Catch the Multiple Message List exception which
174 -- indicates API processing has been aborted because
175 -- at least one message exists in the list.
176 --
177 rollback to create_scorecard_swi;
178 --
179 -- Reset IN OUT parameters and set OUT parameters
180 --
181 p_object_version_number := null;
182 --p_status_code := null;
183 p_return_status := hr_multi_message.get_return_status_disable;
184 hr_utility.set_location(' Leaving:' || l_proc, 30);
185 when others then
186 --
187 -- When Multiple Message Detection is enabled catch
188 -- any Application specific or other unexpected
189 -- exceptions. Adding appropriate details to the
190 -- Multiple Message List. Otherwise re-raise the
191 -- error.
192 --
193 rollback to create_scorecard_swi;
194 if hr_multi_message.unexpected_error_add(l_proc) then
195 hr_utility.set_location(' Leaving:' || l_proc,40);
196 raise;
197 end if;
198 --
199 -- Reset IN OUT and set OUT parameters
200 --
201 p_object_version_number := null;
202 --p_status_code := null;
203 p_return_status := hr_multi_message.get_return_status_disable;
204 hr_utility.set_location(' Leaving:' || l_proc,50);
205 end create_scorecard;
206 -- ----------------------------------------------------------------------------
207 -- |---------------------------< delete_scorecard >---------------------------|
208 -- ----------------------------------------------------------------------------
209 PROCEDURE delete_scorecard
210 (p_validate in number default hr_api.g_false_num
211 ,p_scorecard_id in number
212 ,p_object_version_number in number
213 ,p_return_status out nocopy varchar2
214 ) is
215 --
216 -- Variables for API Boolean parameters
217 l_validate boolean;
218 l_created_by_plan_warning boolean;
219 --
220 -- Variables for IN/OUT parameters
221 --
222 -- Other variables
226 --
223 l_proc varchar2(72) := g_package ||'delete_scorecard';
224 Begin
225 hr_utility.set_location(' Entering:' || l_proc,10);
227 -- Issue a savepoint
228 --
229 savepoint delete_scorecard_swi;
230 --
231 -- Initialise Multiple Message Detection
232 --
233 hr_multi_message.enable_message_list;
234 --
235 -- Remember IN OUT parameter IN values
236 --
237 --
238 -- Convert constant values to their corresponding boolean value
239 --
240 l_validate :=
241 hr_api.constant_to_boolean
242 (p_constant_value => p_validate);
243 --
244 -- Register Surrogate ID or user key values
245 --
246 --
247 -- Call API
248 --
249 hr_personal_scorecard_api.delete_scorecard
250 (p_validate => l_validate
251 ,p_scorecard_id => p_scorecard_id
252 ,p_object_version_number => p_object_version_number
253 ,p_created_by_plan_warning => l_created_by_plan_warning
254 );
255 --
256 -- Convert API warning boolean parameter values to specific
257 -- messages and add them to Multiple Message List
258 --
259 if l_created_by_plan_warning then
260 fnd_message.set_name('PER', 'HR_50272_PMS_CREATOR_TYPE_WARN');
261 hr_multi_message.add
262 (p_message_type => hr_multi_message.g_warning_msg
263 );
264 end if; --
265 -- Convert API non-warning boolean parameter values
266 --
267 --
268 -- Derive the API return status value based on whether
269 -- messages of any type exist in the Multiple Message List.
270 -- Also disable Multiple Message Detection.
271 --
272 p_return_status := hr_multi_message.get_return_status_disable;
273 hr_utility.set_location(' Leaving:' || l_proc,20);
274 --
275 exception
276 when hr_multi_message.error_message_exist then
277 --
278 -- Catch the Multiple Message List exception which
279 -- indicates API processing has been aborted because
280 -- at least one message exists in the list.
281 --
282 rollback to delete_scorecard_swi;
283 --
284 -- Reset IN OUT parameters and set OUT parameters
285 --
286 p_return_status := hr_multi_message.get_return_status_disable;
287 hr_utility.set_location(' Leaving:' || l_proc, 30);
288 when others then
289 --
290 -- When Multiple Message Detection is enabled catch
291 -- any Application specific or other unexpected
292 -- exceptions. Adding appropriate details to the
293 -- Multiple Message List. Otherwise re-raise the
294 -- error.
295 --
296 rollback to delete_scorecard_swi;
297 if hr_multi_message.unexpected_error_add(l_proc) then
298 hr_utility.set_location(' Leaving:' || l_proc,40);
299 raise;
300 end if;
301 --
302 -- Reset IN OUT and set OUT parameters
303 --
304 p_return_status := hr_multi_message.get_return_status_disable;
305 hr_utility.set_location(' Leaving:' || l_proc,50);
306 end delete_scorecard;
307 -- ----------------------------------------------------------------------------
308 -- |---------------------------< update_scorecard >---------------------------|
309 -- ----------------------------------------------------------------------------
310 PROCEDURE update_scorecard
311 (p_validate in number default hr_api.g_false_num
312 ,p_effective_date in date
313 ,p_scorecard_id in number
314 ,p_object_version_number in out nocopy number
315 ,p_scorecard_name in varchar2 default hr_api.g_varchar2
316 ,p_start_date in date default hr_api.g_date
317 ,p_end_date in date default hr_api.g_date
318 ,p_plan_id in number default hr_api.g_number
319 ,p_attribute_category in varchar2 default hr_api.g_varchar2
320 ,p_attribute1 in varchar2 default hr_api.g_varchar2
321 ,p_attribute2 in varchar2 default hr_api.g_varchar2
322 ,p_attribute3 in varchar2 default hr_api.g_varchar2
323 ,p_attribute4 in varchar2 default hr_api.g_varchar2
324 ,p_attribute5 in varchar2 default hr_api.g_varchar2
325 ,p_attribute6 in varchar2 default hr_api.g_varchar2
326 ,p_attribute7 in varchar2 default hr_api.g_varchar2
327 ,p_attribute8 in varchar2 default hr_api.g_varchar2
328 ,p_attribute9 in varchar2 default hr_api.g_varchar2
329 ,p_attribute10 in varchar2 default hr_api.g_varchar2
330 ,p_attribute11 in varchar2 default hr_api.g_varchar2
331 ,p_attribute12 in varchar2 default hr_api.g_varchar2
332 ,p_attribute13 in varchar2 default hr_api.g_varchar2
333 ,p_attribute14 in varchar2 default hr_api.g_varchar2
334 ,p_attribute15 in varchar2 default hr_api.g_varchar2
335 ,p_attribute16 in varchar2 default hr_api.g_varchar2
336 ,p_attribute17 in varchar2 default hr_api.g_varchar2
337 ,p_attribute18 in varchar2 default hr_api.g_varchar2
338 ,p_attribute19 in varchar2 default hr_api.g_varchar2
339 ,p_attribute20 in varchar2 default hr_api.g_varchar2
340 ,p_attribute21 in varchar2 default hr_api.g_varchar2
341 ,p_attribute22 in varchar2 default hr_api.g_varchar2
342 ,p_attribute23 in varchar2 default hr_api.g_varchar2
343 ,p_attribute24 in varchar2 default hr_api.g_varchar2
344 ,p_attribute25 in varchar2 default hr_api.g_varchar2
348 ,p_attribute29 in varchar2 default hr_api.g_varchar2
345 ,p_attribute26 in varchar2 default hr_api.g_varchar2
346 ,p_attribute27 in varchar2 default hr_api.g_varchar2
347 ,p_attribute28 in varchar2 default hr_api.g_varchar2
349 ,p_attribute30 in varchar2 default hr_api.g_varchar2
350 ,p_status_code in varchar2 default hr_api.g_varchar2
351 ,p_return_status out nocopy varchar2
352 ,p_obj_setting_deadline in date default hr_api.g_date
353 ,p_supervisor_id in number default hr_api.g_number
354 ,p_supervisor_assignment_id in number default hr_api.g_number
355 ,p_eligibility_status in varchar2 default hr_api.g_varchar2
356 ,p_eligibility_eval_date in date default hr_api.g_date
357 ) is
358 --
359 -- Variables for API Boolean parameters
360 l_validate boolean;
361 l_duplicate_name_warning boolean;
362 --
363 -- Variables for IN/OUT parameters
364 l_object_version_number number;
365 --
366 -- Other variables
367 l_proc varchar2(72) := g_package ||'update_scorecard';
368 Begin
369 hr_utility.set_location(' Entering:' || l_proc,10);
370 --
371 -- Issue a savepoint
372 --
373 savepoint update_scorecard_swi;
374 --
375 -- Initialise Multiple Message Detection
376 --
377 hr_multi_message.enable_message_list;
378 --
379 -- Remember IN OUT parameter IN values
380 --
381 l_object_version_number := p_object_version_number;
382 --
383 -- Convert constant values to their corresponding boolean value
384 --
385 l_validate :=
386 hr_api.constant_to_boolean
387 (p_constant_value => p_validate);
388 --
389 -- Register Surrogate ID or user key values
390 --
391 --
392 -- Call API
393 --
394 hr_personal_scorecard_api.update_scorecard
395 (p_validate => l_validate
396 ,p_effective_date => p_effective_date
397 ,p_scorecard_id => p_scorecard_id
398 ,p_object_version_number => p_object_version_number
399 ,p_scorecard_name => p_scorecard_name
400 ,p_start_date => p_start_date
401 ,p_end_date => p_end_date
402 ,p_plan_id => p_plan_id
403 ,p_attribute_category => p_attribute_category
404 ,p_attribute1 => p_attribute1
405 ,p_attribute2 => p_attribute2
406 ,p_attribute3 => p_attribute3
407 ,p_attribute4 => p_attribute4
408 ,p_attribute5 => p_attribute5
409 ,p_attribute6 => p_attribute6
410 ,p_attribute7 => p_attribute7
411 ,p_attribute8 => p_attribute8
412 ,p_attribute9 => p_attribute9
413 ,p_attribute10 => p_attribute10
414 ,p_attribute11 => p_attribute11
415 ,p_attribute12 => p_attribute12
416 ,p_attribute13 => p_attribute13
417 ,p_attribute14 => p_attribute14
418 ,p_attribute15 => p_attribute15
419 ,p_attribute16 => p_attribute16
420 ,p_attribute17 => p_attribute17
421 ,p_attribute18 => p_attribute18
422 ,p_attribute19 => p_attribute19
423 ,p_attribute20 => p_attribute20
424 ,p_attribute21 => p_attribute21
425 ,p_attribute22 => p_attribute22
426 ,p_attribute23 => p_attribute23
427 ,p_attribute24 => p_attribute24
428 ,p_attribute25 => p_attribute25
429 ,p_attribute26 => p_attribute26
430 ,p_attribute27 => p_attribute27
431 ,p_attribute28 => p_attribute28
432 ,p_attribute29 => p_attribute29
433 ,p_attribute30 => p_attribute30
434 ,p_status_code => p_status_code
435 ,p_duplicate_name_warning => l_duplicate_name_warning
436 ,p_obj_setting_deadline => p_obj_setting_deadline
437 ,p_supervisor_id => p_supervisor_id
438 ,p_supervisor_assignment_id => p_supervisor_assignment_id
439 ,p_eligibility_status => p_eligibility_status
440 ,p_eligibility_eval_date => p_eligibility_eval_date
441 );
442 --
443 -- Convert API warning boolean parameter values to specific
444 -- messages and add them to Multiple Message List
445 --
446 if l_duplicate_name_warning then
447 fnd_message.set_name('PER', 'HR_50265_PMS_DUP_SCORECARD');
448 hr_multi_message.add
449 (p_message_type => hr_multi_message.g_warning_msg
450 );
451 end if; --
452 -- Convert API non-warning boolean parameter values
453 --
454 --
455 -- Derive the API return status value based on whether
456 -- messages of any type exist in the Multiple Message List.
457 -- Also disable Multiple Message Detection.
458 --
459 p_return_status := hr_multi_message.get_return_status_disable;
460 hr_utility.set_location(' Leaving:' || l_proc,20);
461 --
462 exception
463 when hr_multi_message.error_message_exist then
464 --
465 -- Catch the Multiple Message List exception which
466 -- indicates API processing has been aborted because
467 -- at least one message exists in the list.
468 --
469 rollback to update_scorecard_swi;
470 --
471 -- Reset IN OUT parameters and set OUT parameters
472 --
473 p_object_version_number := l_object_version_number;
474 p_return_status := hr_multi_message.get_return_status_disable;
475 hr_utility.set_location(' Leaving:' || l_proc, 30);
476 when others then
477 --
478 -- When Multiple Message Detection is enabled catch
479 -- any Application specific or other unexpected
480 -- exceptions. Adding appropriate details to the
481 -- Multiple Message List. Otherwise re-raise the
482 -- error.
483 --
484 rollback to update_scorecard_swi;
485 if hr_multi_message.unexpected_error_add(l_proc) then
486 hr_utility.set_location(' Leaving:' || l_proc,40);
487 raise;
488 end if;
489 --
490 -- Reset IN OUT and set OUT parameters
491 --
492 p_object_version_number := l_object_version_number;
493 p_return_status := hr_multi_message.get_return_status_disable;
494 hr_utility.set_location(' Leaving:' || l_proc,50);
495 end update_scorecard;
496 -- ----------------------------------------------------------------------------
497 -- |------------------------< update_scorecard_status >-----------------------|
498 -- ----------------------------------------------------------------------------
499 PROCEDURE update_scorecard_status
500 (p_validate in number default hr_api.g_false_num
501 ,p_effective_date in date
502 ,p_scorecard_id in number
503 ,p_object_version_number in out nocopy number
504 ,p_status_code in varchar2
505 ,p_return_status out nocopy varchar2
506 ) is
507 --
508 -- Variables for API Boolean parameters
509 l_validate boolean;
510 --
511 -- Variables for IN/OUT parameters
512 l_object_version_number number;
513 --
514 -- Other variables
515 l_proc varchar2(72) := g_package ||'update_scorecard_status';
516 Begin
517 hr_utility.set_location(' Entering:' || l_proc,10);
518 --
519 -- Issue a savepoint
520 --
521 savepoint update_scorecard_status_swi;
522 --
523 -- Initialise Multiple Message Detection
524 --
525 hr_multi_message.enable_message_list;
526 --
527 -- Remember IN OUT parameter IN values
528 --
529 l_object_version_number := p_object_version_number;
530 --
531 -- Convert constant values to their corresponding boolean value
532 --
533 l_validate :=
534 hr_api.constant_to_boolean
535 (p_constant_value => p_validate);
536 --
537 -- Register Surrogate ID or user key values
538 --
539 --
540 -- Call API
541 --
542 hr_personal_scorecard_api.update_scorecard_status
543 (p_validate => l_validate
544 ,p_effective_date => p_effective_date
545 ,p_scorecard_id => p_scorecard_id
546 ,p_object_version_number => p_object_version_number
547 ,p_status_code => p_status_code
548 );
549 --
550 -- Convert API warning boolean parameter values to specific
551 -- messages and add them to Multiple Message List
552 --
553 --
554 -- Convert API non-warning boolean parameter values
555 --
556 --
557 -- Derive the API return status value based on whether
558 -- messages of any type exist in the Multiple Message List.
559 -- Also disable Multiple Message Detection.
560 --
561 p_return_status := hr_multi_message.get_return_status_disable;
562 hr_utility.set_location(' Leaving:' || l_proc,20);
563 --
564 exception
565 when hr_multi_message.error_message_exist then
566 --
567 -- Catch the Multiple Message List exception which
568 -- indicates API processing has been aborted because
569 -- at least one message exists in the list.
570 --
571 rollback to update_scorecard_status_swi;
572 --
573 -- Reset IN OUT parameters and set OUT parameters
574 --
575 p_object_version_number := l_object_version_number;
576 p_return_status := hr_multi_message.get_return_status_disable;
577 hr_utility.set_location(' Leaving:' || l_proc, 30);
578 when others then
579 --
580 -- When Multiple Message Detection is enabled catch
581 -- any Application specific or other unexpected
582 -- exceptions. Adding appropriate details to the
583 -- Multiple Message List. Otherwise re-raise the
584 -- error.
585 --
586 rollback to update_scorecard_status_swi;
587 if hr_multi_message.unexpected_error_add(l_proc) then
588 hr_utility.set_location(' Leaving:' || l_proc,40);
589 raise;
590 end if;
591 --
592 -- Reset IN OUT and set OUT parameters
593 --
594 p_object_version_number := l_object_version_number;
595 p_return_status := hr_multi_message.get_return_status_disable;
596 hr_utility.set_location(' Leaving:' || l_proc,50);
597 end update_scorecard_status;
598 end hr_personal_scorecard_swi;