DBA Data[Home] [Help]
Skip to content

PACKAGE BODY: APPS.HR_PERSONAL_SCORECARD_API

Source


1 Package Body hr_personal_scorecard_api as
2 /* $Header: pepmsapi.pkb 120.3 2011/12/22 06:19:05 randhava ship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  hr_personal_scorecard_api.';
7 g_debug    boolean      := hr_utility.debug_enabled;
8 
9 --
10 -- ----------------------------------------------------------------------------
11 -- |--------------------------< create_scorecard >----------------------------|
12 -- ----------------------------------------------------------------------------
13 --
14 procedure create_scorecard
15   (p_validate                      in     boolean  default false
16   ,p_effective_date                in     date
17   ,p_scorecard_name                in     varchar2
18   ,p_assignment_id                 in     number
19   ,p_start_date                    in     date
20   ,p_end_date                      in     date
21   ,p_plan_id                       in     number   default null
22   ,p_creator_type                  in     varchar2 default 'MANUAL'
23   ,p_attribute_category            in     varchar2 default null
24   ,p_attribute1                    in     varchar2 default null
25   ,p_attribute2                    in     varchar2 default null
26   ,p_attribute3                    in     varchar2 default null
27   ,p_attribute4                    in     varchar2 default null
28   ,p_attribute5                    in     varchar2 default null
29   ,p_attribute6                    in     varchar2 default null
30   ,p_attribute7                    in     varchar2 default null
31   ,p_attribute8                    in     varchar2 default null
32   ,p_attribute9                    in     varchar2 default null
33   ,p_attribute10                   in     varchar2 default null
34   ,p_attribute11                   in     varchar2 default null
35   ,p_attribute12                   in     varchar2 default null
36   ,p_attribute13                   in     varchar2 default null
37   ,p_attribute14                   in     varchar2 default null
38   ,p_attribute15                   in     varchar2 default null
39   ,p_attribute16                   in     varchar2 default null
40   ,p_attribute17                   in     varchar2 default null
41   ,p_attribute18                   in     varchar2 default null
42   ,p_attribute19                   in     varchar2 default null
43   ,p_attribute20                   in     varchar2 default null
44   ,p_attribute21                   in     varchar2 default null
45   ,p_attribute22                   in     varchar2 default null
46   ,p_attribute23                   in     varchar2 default null
47   ,p_attribute24                   in     varchar2 default null
48   ,p_attribute25                   in     varchar2 default null
49   ,p_attribute26                   in     varchar2 default null
50   ,p_attribute27                   in     varchar2 default null
51   ,p_attribute28                   in     varchar2 default null
52   ,p_attribute29                   in     varchar2 default null
53   ,p_attribute30                   in     varchar2 default null
54   ,p_scorecard_id                     out nocopy   number
55   ,p_object_version_number            out nocopy   number
56   ,p_status_code                   in     varchar2
57   ,p_duplicate_name_warning           out nocopy   boolean
58   ,p_obj_setting_deadline			in 		 date default null
59   ,p_supervisor_id					in		 number default null
60   ,p_supervisor_assignment_id		in		 number default null
61   ,p_eligibility_status				in		 varchar2 default null
62   ,p_eligibility_eval_date			in		 date default null
63   ) is
64   --
65   -- Declare cursors and local variables
66   --
67   l_proc                   varchar2(72) := g_package||'create_scorecard';
68   l_effective_date         date;
69   l_start_date             date;
70   l_end_date               date;
71   l_scorecard_id           number;
72   l_object_version_number  number;
73   l_status_code            per_personal_scorecards.status_code%TYPE;
74   l_duplicate_name_warning boolean;
75 
76 begin
77 
78   IF g_debug THEN
79 
80     hr_utility.set_location('Entering:'|| l_proc, 10);
81 
82     hr_utility.trace(' ');
83     hr_utility.trace(' --------------------------------'||
84                      '---------------------------------');
85     hr_utility.trace(' IN / IN OUT PARAMETER           '||
86                      ' VALUE');
87     hr_utility.trace(' --------------------------------'||
88                      '+--------------------------------');
89     hr_utility.trace('  p_effective_date                 '||
90                         to_char(p_effective_date));
91     hr_utility.trace('  p_scorecard_name                 '||
92                         p_scorecard_name);
93     hr_utility.trace('  p_assignment_id                  '||
94                         to_char(p_assignment_id));
95     hr_utility.trace('  p_start_date                     '||
96                         to_char(p_start_date));
97     hr_utility.trace('  p_end_date                       '||
98                         to_char(p_end_date));
99     hr_utility.trace('  p_plan_id                        '||
100                         to_char(p_plan_id));
101     hr_utility.trace('  p_creator_type                   '||
102                         p_creator_type);
103     hr_utility.trace('  p_status_code                    '||
104                         p_status_code);
105     hr_utility.trace(' --------------------------------'||
106                      '---------------------------------');
107     hr_utility.trace(' ');
108 
109   END IF;
110 
111   --
112   -- Issue a savepoint
113   --
114   savepoint create_scorecard;
115 
116   --
117   -- Truncate the time portion from all IN date parameters
118   --
119   l_effective_date := trunc(p_effective_date);
120   l_start_date     := trunc(p_start_date);
121   l_end_date       := trunc(p_end_date);
122 
123   --
124   -- Call Before Process User Hook
125   --
126   begin
127     hr_personal_scorecard_bk1.create_scorecard_b
128       (p_effective_date                => l_effective_date
129       ,p_scorecard_name                => p_scorecard_name
130       ,p_assignment_id                 => p_assignment_id
131       ,p_start_date                    => l_start_date
132       ,p_end_date                      => l_end_date
133       ,p_plan_id                       => p_plan_id
134       ,p_creator_type                  => p_creator_type
135       ,p_status_code                   => p_status_code
136       ,p_attribute_category            => p_attribute_category
137       ,p_attribute1                    => p_attribute1
138       ,p_attribute2                    => p_attribute2
139       ,p_attribute3                    => p_attribute3
140       ,p_attribute4                    => p_attribute4
141       ,p_attribute5                    => p_attribute5
142       ,p_attribute6                    => p_attribute6
143       ,p_attribute7                    => p_attribute7
144       ,p_attribute8                    => p_attribute8
145       ,p_attribute9                    => p_attribute9
146       ,p_attribute10                   => p_attribute10
147       ,p_attribute11                   => p_attribute11
148       ,p_attribute12                   => p_attribute12
149       ,p_attribute13                   => p_attribute13
150       ,p_attribute14                   => p_attribute14
151       ,p_attribute15                   => p_attribute15
152       ,p_attribute16                   => p_attribute16
153       ,p_attribute17                   => p_attribute17
154       ,p_attribute18                   => p_attribute18
155       ,p_attribute19                   => p_attribute19
156       ,p_attribute20                   => p_attribute20
157       ,p_attribute21                   => p_attribute21
158       ,p_attribute22                   => p_attribute22
159       ,p_attribute23                   => p_attribute23
160       ,p_attribute24                   => p_attribute24
161       ,p_attribute25                   => p_attribute25
162       ,p_attribute26                   => p_attribute26
163       ,p_attribute27                   => p_attribute27
164       ,p_attribute28                   => p_attribute28
165       ,p_attribute29                   => p_attribute29
166       ,p_attribute30                   => p_attribute30
167 		,p_obj_setting_deadline			=> p_obj_setting_deadline
168 		,p_supervisor_id				=> p_supervisor_id
169 		,p_supervisor_assignment_id		=> p_supervisor_assignment_id
170 		,p_eligibility_status			=> p_eligibility_status
171 		,p_eligibility_eval_date		=> p_eligibility_eval_date
172       );
173   exception
174     when hr_api.cannot_find_prog_unit then
175       hr_api.cannot_find_prog_unit_error
176         (p_module_name => 'CREATE_SCORECARD'
177         ,p_hook_type   => 'BP'
178         );
179   end;
180 
181   --
182   -- Process Logic
183   --
184   IF g_debug THEN hr_utility.set_location(l_proc, 30); END IF;
185 
186   per_pms_ins.ins
187     (p_effective_date                => l_effective_date
188     ,p_scorecard_name                => p_scorecard_name
189     ,p_assignment_id                 => p_assignment_id
190     ,p_start_date                    => l_start_date
191     ,p_end_date                      => l_end_date
192     ,p_plan_id                       => p_plan_id
193     ,p_creator_type                  => p_creator_type
194     ,p_attribute_category            => p_attribute_category
195     ,p_attribute1                    => p_attribute1
196     ,p_attribute2                    => p_attribute2
197     ,p_attribute3                    => p_attribute3
198     ,p_attribute4                    => p_attribute4
199     ,p_attribute5                    => p_attribute5
200     ,p_attribute6                    => p_attribute6
201     ,p_attribute7                    => p_attribute7
202     ,p_attribute8                    => p_attribute8
203     ,p_attribute9                    => p_attribute9
204     ,p_attribute10                   => p_attribute10
205     ,p_attribute11                   => p_attribute11
206     ,p_attribute12                   => p_attribute12
207     ,p_attribute13                   => p_attribute13
208     ,p_attribute14                   => p_attribute14
209     ,p_attribute15                   => p_attribute15
210     ,p_attribute16                   => p_attribute16
211     ,p_attribute17                   => p_attribute17
212     ,p_attribute18                   => p_attribute18
213     ,p_attribute19                   => p_attribute19
214     ,p_attribute20                   => p_attribute20
215     ,p_attribute21                   => p_attribute21
216     ,p_attribute22                   => p_attribute22
217     ,p_attribute23                   => p_attribute23
218     ,p_attribute24                   => p_attribute24
219     ,p_attribute25                   => p_attribute25
220     ,p_attribute26                   => p_attribute26
221     ,p_attribute27                   => p_attribute27
222     ,p_attribute28                   => p_attribute28
223     ,p_attribute29                   => p_attribute29
224     ,p_attribute30                   => p_attribute30
225     ,p_scorecard_id                  => l_scorecard_id
226     ,p_object_version_number         => l_object_version_number
227     ,p_status_code                   => p_status_code
228     ,p_duplicate_name_warning        => l_duplicate_name_warning
229 	,p_obj_setting_deadline			 => p_obj_setting_deadline
230 	,p_supervisor_id				 => p_supervisor_id
231 	,p_supervisor_assignment_id		 => p_supervisor_assignment_id
232 	,p_eligibility_status			 => p_eligibility_status
233 	,p_eligibility_eval_date		 => p_eligibility_eval_date
234     );
235 
236 
237   --
238   -- Call After Process User Hook
239   --
240   begin
241     hr_personal_scorecard_bk1.create_scorecard_a
242       (p_effective_date                => l_effective_date
243       ,p_scorecard_name                => p_scorecard_name
244       ,p_assignment_id                 => p_assignment_id
245       ,p_start_date                    => l_start_date
246       ,p_end_date                      => l_end_date
247       ,p_plan_id                       => p_plan_id
248       ,p_creator_type                  => p_creator_type
249       ,p_attribute_category            => p_attribute_category
250       ,p_attribute1                    => p_attribute1
251       ,p_attribute2                    => p_attribute2
252       ,p_attribute3                    => p_attribute3
253       ,p_attribute4                    => p_attribute4
254       ,p_attribute5                    => p_attribute5
255       ,p_attribute6                    => p_attribute6
256       ,p_attribute7                    => p_attribute7
257       ,p_attribute8                    => p_attribute8
258       ,p_attribute9                    => p_attribute9
259       ,p_attribute10                   => p_attribute10
260       ,p_attribute11                   => p_attribute11
261       ,p_attribute12                   => p_attribute12
262       ,p_attribute13                   => p_attribute13
263       ,p_attribute14                   => p_attribute14
264       ,p_attribute15                   => p_attribute15
265       ,p_attribute16                   => p_attribute16
266       ,p_attribute17                   => p_attribute17
267       ,p_attribute18                   => p_attribute18
268       ,p_attribute19                   => p_attribute19
269       ,p_attribute20                   => p_attribute20
270       ,p_attribute21                   => p_attribute21
271       ,p_attribute22                   => p_attribute22
272       ,p_attribute23                   => p_attribute23
273       ,p_attribute24                   => p_attribute24
274       ,p_attribute25                   => p_attribute25
275       ,p_attribute26                   => p_attribute26
276       ,p_attribute27                   => p_attribute27
277       ,p_attribute28                   => p_attribute28
278       ,p_attribute29                   => p_attribute29
279       ,p_attribute30                   => p_attribute30
280       ,p_scorecard_id                  => l_scorecard_id
281       ,p_object_version_number         => l_object_version_number
282       ,p_status_code                   => p_status_code
283       ,p_duplicate_name_warning        => l_duplicate_name_warning
284 		,p_obj_setting_deadline			=> p_obj_setting_deadline
285 		,p_supervisor_id				=> p_supervisor_id
286 		,p_supervisor_assignment_id		=> p_supervisor_assignment_id
287 		,p_eligibility_status			=> p_eligibility_status
288 		,p_eligibility_eval_date		=> p_eligibility_eval_date
289       );
290   exception
291     when hr_api.cannot_find_prog_unit then
292       hr_api.cannot_find_prog_unit_error
293         (p_module_name => 'CREATE_SCORECARD'
294         ,p_hook_type   => 'AP'
295         );
296   end;
297 
298   IF g_debug THEN hr_utility.set_location(l_proc, 40); END IF;
299   --
300   -- When in validation only mode raise the Validate_Enabled exception
301   --
302   if p_validate then
303     raise hr_api.validate_enabled;
304   end if;
305   --
306   -- Set all IN OUT and OUT parameters with out values
307   --
308   p_scorecard_id           := l_scorecard_id;
309   p_object_version_number  := l_object_version_number;
310 --  p_status_code            := l_status_code;
311   p_duplicate_name_warning := l_duplicate_name_warning;
312 
313   --
314   -- Pipe the main IN OUT / OUT parameters for ease of debugging.
315   --
316   IF g_debug THEN
317 
318     hr_utility.trace(' ');
319     hr_utility.trace(' --------------------------------'||
320                      '---------------------------------');
321     hr_utility.trace(' IN OUT / OUT PARAMETER          '||
322                      ' VALUE');
323     hr_utility.trace(' --------------------------------'||
324                      '+--------------------------------');
325     hr_utility.trace('  p_scorecard_id                 '||
326                         to_char(p_scorecard_id));
327     hr_utility.trace('  p_object_version_number        '||
328                         to_char(p_object_version_number));
329     hr_utility.trace('  p_status_code                  '||
330                         p_status_code);
331     IF p_duplicate_name_warning THEN
332       hr_utility.trace('  p_duplicate_name_warning       '||
333                           'TRUE');
334     ELSE
335       hr_utility.trace('  p_duplicate_name_warning       '||
336                           'FALSE');
337     END IF;
338     hr_utility.trace(' --------------------------------'||
339                      '---------------------------------');
340     hr_utility.trace(' ');
341     hr_utility.set_location(' Leaving:'||l_proc, 970);
342 
343   END IF;
344 
345 exception
346   when hr_api.validate_enabled then
347     --
348     -- As the Validate_Enabled exception has been raised
349     -- we must rollback to the savepoint
350     --
351     rollback to create_scorecard;
352     --
353     -- Reset IN OUT parameters and set OUT parameters
354     -- (Any key or derived arguments must be set to null
355     -- when validation only mode is being used.)
356     --
357     p_scorecard_id           := null;
358     p_object_version_number  := null;
359     --p_status_code            := l_status_code;
360     p_duplicate_name_warning := l_duplicate_name_warning;
361     hr_utility.set_location(' Leaving:'||l_proc, 980);
362   when others then
363     --
364     -- A validation or unexpected error has occured
365     --
366     rollback to create_scorecard;
367     --
368     -- Reset IN OUT parameters and set all
369     -- OUT parameters, including warnings, to null
370     --
371     p_scorecard_id           := null;
372     p_object_version_number  := null;
373     --p_status_code            := null;
374     p_duplicate_name_warning := null;
375     hr_utility.set_location(' Leaving:'||l_proc, 990);
376     raise;
377 end create_scorecard;
378 --
379 -- ----------------------------------------------------------------------------
380 -- |--------------------------< update_scorecard >----------------------------|
381 -- ----------------------------------------------------------------------------
382 --
383 procedure update_scorecard
384   (p_validate                      in     boolean  default false
385   ,p_effective_date                in     date
386   ,p_scorecard_id                  in     number
387   ,p_object_version_number         in out nocopy   number
388   ,p_scorecard_name                in     varchar2 default hr_api.g_varchar2
389   ,p_start_date                    in     date     default hr_api.g_date
390   ,p_end_date                      in     date     default hr_api.g_date
391   ,p_plan_id                       in     number   default hr_api.g_number
392   ,p_attribute_category            in     varchar2 default hr_api.g_varchar2
393   ,p_attribute1                    in     varchar2 default hr_api.g_varchar2
394   ,p_attribute2                    in     varchar2 default hr_api.g_varchar2
395   ,p_attribute3                    in     varchar2 default hr_api.g_varchar2
396   ,p_attribute4                    in     varchar2 default hr_api.g_varchar2
397   ,p_attribute5                    in     varchar2 default hr_api.g_varchar2
398   ,p_attribute6                    in     varchar2 default hr_api.g_varchar2
399   ,p_attribute7                    in     varchar2 default hr_api.g_varchar2
400   ,p_attribute8                    in     varchar2 default hr_api.g_varchar2
401   ,p_attribute9                    in     varchar2 default hr_api.g_varchar2
402   ,p_attribute10                   in     varchar2 default hr_api.g_varchar2
403   ,p_attribute11                   in     varchar2 default hr_api.g_varchar2
404   ,p_attribute12                   in     varchar2 default hr_api.g_varchar2
405   ,p_attribute13                   in     varchar2 default hr_api.g_varchar2
406   ,p_attribute14                   in     varchar2 default hr_api.g_varchar2
407   ,p_attribute15                   in     varchar2 default hr_api.g_varchar2
408   ,p_attribute16                   in     varchar2 default hr_api.g_varchar2
409   ,p_attribute17                   in     varchar2 default hr_api.g_varchar2
410   ,p_attribute18                   in     varchar2 default hr_api.g_varchar2
411   ,p_attribute19                   in     varchar2 default hr_api.g_varchar2
412   ,p_attribute20                   in     varchar2 default hr_api.g_varchar2
413   ,p_attribute21                   in     varchar2 default hr_api.g_varchar2
414   ,p_attribute22                   in     varchar2 default hr_api.g_varchar2
415   ,p_attribute23                   in     varchar2 default hr_api.g_varchar2
416   ,p_attribute24                   in     varchar2 default hr_api.g_varchar2
417   ,p_attribute25                   in     varchar2 default hr_api.g_varchar2
418   ,p_attribute26                   in     varchar2 default hr_api.g_varchar2
419   ,p_attribute27                   in     varchar2 default hr_api.g_varchar2
420   ,p_attribute28                   in     varchar2 default hr_api.g_varchar2
421   ,p_attribute29                   in     varchar2 default hr_api.g_varchar2
422   ,p_attribute30                   in     varchar2 default hr_api.g_varchar2
423   ,p_status_code                   in     varchar2 default hr_api.g_varchar2
424   ,p_duplicate_name_warning           out nocopy   boolean
425   	,p_obj_setting_deadline			in 		 date     default hr_api.g_date
426 	,p_supervisor_id				in		 number   default hr_api.g_number
427 	,p_supervisor_assignment_id		in		 number   default hr_api.g_number
428 	,p_eligibility_status			in		 varchar2 default hr_api.g_varchar2
429 	,p_eligibility_eval_date		in		 date     default hr_api.g_date
430   ) is
431   --
432   -- Declare cursors and local variables
433   --
434   l_proc                   varchar2(72) := g_package||'update_scorecard';
435   l_effective_date         date;
436   l_start_date             date;
437   l_end_date               date;
438   l_object_version_number  number := p_object_version_number;
439   l_duplicate_name_warning boolean;
440 
441 begin
442 
443   IF g_debug THEN
444 
445     hr_utility.set_location('Entering:'|| l_proc, 10);
446 
447     hr_utility.trace(' ');
448     hr_utility.trace(' --------------------------------'||
449                      '---------------------------------');
450     hr_utility.trace(' IN / IN OUT PARAMETER           '||
451                      ' VALUE');
452     hr_utility.trace(' --------------------------------'||
453                      '+--------------------------------');
454     hr_utility.trace('  p_effective_date                 '||
455                         to_char(p_effective_date));
456     hr_utility.trace('  p_scorecard_id                   '||
457                         to_char(p_scorecard_id));
458     hr_utility.trace('  p_object_version_number          '||
459                         to_char(p_object_version_number));
460     hr_utility.trace('  p_scorecard_name                 '||
461                         p_scorecard_name);
462     hr_utility.trace('  p_plan_id                        '||
463                         to_char(p_plan_id));
464     hr_utility.trace('  p_start_date                     '||
465                         to_char(p_start_date));
466     hr_utility.trace('  p_end_date                       '||
467                         to_char(p_end_date));
468     hr_utility.trace(' --------------------------------'||
469                      '---------------------------------');
470     hr_utility.trace(' ');
471 
472   END IF;
473 
474   --
475   -- Issue a savepoint
476   --
477   savepoint update_scorecard;
478 
479   --
480   -- Truncate the time portion from all IN date parameters
481   --
482   l_effective_date := trunc(p_effective_date);
483   l_start_date     := trunc(p_start_date);
484   l_end_date       := trunc(p_end_date);
485 
486   --
487   -- Call Before Process User Hook
488   --
489   begin
490     hr_personal_scorecard_bk2.update_scorecard_b
491       (p_effective_date                => l_effective_date
492       ,p_scorecard_id                  => p_scorecard_id
493       ,p_object_version_number         => l_object_version_number
494       ,p_scorecard_name                => p_scorecard_name
495       ,p_start_date                    => l_start_date
496       ,p_end_date                      => l_end_date
497       ,p_plan_id                       => p_plan_id
498       ,p_attribute_category            => p_attribute_category
499       ,p_attribute1                    => p_attribute1
500       ,p_attribute2                    => p_attribute2
501       ,p_attribute3                    => p_attribute3
502       ,p_attribute4                    => p_attribute4
503       ,p_attribute5                    => p_attribute5
504       ,p_attribute6                    => p_attribute6
505       ,p_attribute7                    => p_attribute7
506       ,p_attribute8                    => p_attribute8
507       ,p_attribute9                    => p_attribute9
508       ,p_attribute10                   => p_attribute10
509       ,p_attribute11                   => p_attribute11
510       ,p_attribute12                   => p_attribute12
511       ,p_attribute13                   => p_attribute13
512       ,p_attribute14                   => p_attribute14
513       ,p_attribute15                   => p_attribute15
514       ,p_attribute16                   => p_attribute16
515       ,p_attribute17                   => p_attribute17
516       ,p_attribute18                   => p_attribute18
517       ,p_attribute19                   => p_attribute19
518       ,p_attribute20                   => p_attribute20
519       ,p_attribute21                   => p_attribute21
520       ,p_attribute22                   => p_attribute22
521       ,p_attribute23                   => p_attribute23
522       ,p_attribute24                   => p_attribute24
523       ,p_attribute25                   => p_attribute25
524       ,p_attribute26                   => p_attribute26
525       ,p_attribute27                   => p_attribute27
526       ,p_attribute28                   => p_attribute28
527       ,p_attribute29                   => p_attribute29
528       ,p_attribute30                   => p_attribute30
529       ,p_status_code                   => p_status_code
530 		,p_obj_setting_deadline			=> p_obj_setting_deadline
531 		,p_supervisor_id				=> p_supervisor_id
532 		,p_supervisor_assignment_id		=> p_supervisor_assignment_id
533 		,p_eligibility_status			=> p_eligibility_status
534 		,p_eligibility_eval_date		=> p_eligibility_eval_date
535       );
536   exception
537     when hr_api.cannot_find_prog_unit then
538       hr_api.cannot_find_prog_unit_error
539         (p_module_name => 'UPDATE_SCORECARD'
540         ,p_hook_type   => 'BP'
541         );
542   end;
543 
544   --
545   -- Process Logic
546   --
547   IF g_debug THEN hr_utility.set_location(l_proc, 30); END IF;
548 
549   per_pms_upd.upd
550     (p_effective_date                => l_effective_date
551     ,p_scorecard_id                  => p_scorecard_id
552     ,p_object_version_number         => l_object_version_number
553     ,p_scorecard_name                => p_scorecard_name
554     ,p_start_date                    => l_start_date
555     ,p_end_date                      => l_end_date
556     ,p_plan_id                       => p_plan_id
557     ,p_status_code                   => p_status_code
558     ,p_attribute_category            => p_attribute_category
559     ,p_attribute1                    => p_attribute1
560     ,p_attribute2                    => p_attribute2
561     ,p_attribute3                    => p_attribute3
562     ,p_attribute4                    => p_attribute4
563     ,p_attribute5                    => p_attribute5
564     ,p_attribute6                    => p_attribute6
565     ,p_attribute7                    => p_attribute7
566     ,p_attribute8                    => p_attribute8
567     ,p_attribute9                    => p_attribute9
568     ,p_attribute10                   => p_attribute10
569     ,p_attribute11                   => p_attribute11
570     ,p_attribute12                   => p_attribute12
571     ,p_attribute13                   => p_attribute13
572     ,p_attribute14                   => p_attribute14
573     ,p_attribute15                   => p_attribute15
574     ,p_attribute16                   => p_attribute16
575     ,p_attribute17                   => p_attribute17
576     ,p_attribute18                   => p_attribute18
577     ,p_attribute19                   => p_attribute19
578     ,p_attribute20                   => p_attribute20
579     ,p_attribute21                   => p_attribute21
580     ,p_attribute22                   => p_attribute22
581     ,p_attribute23                   => p_attribute23
582     ,p_attribute24                   => p_attribute24
583     ,p_attribute25                   => p_attribute25
584     ,p_attribute26                   => p_attribute26
585     ,p_attribute27                   => p_attribute27
586     ,p_attribute28                   => p_attribute28
587     ,p_attribute29                   => p_attribute29
588     ,p_attribute30                   => p_attribute30
589     ,p_duplicate_name_warning        => l_duplicate_name_warning
590 	,p_obj_setting_deadline			 => p_obj_setting_deadline
591 	,p_supervisor_id				 => p_supervisor_id
592 	,p_supervisor_assignment_id		 => p_supervisor_assignment_id
593 	,p_eligibility_status			 => p_eligibility_status
594 	,p_eligibility_eval_date		 => p_eligibility_eval_date
595     );
596 
597   --
598   -- Call After Process User Hook
599   --
600   begin
601     hr_personal_scorecard_bk2.update_scorecard_a
602       (p_effective_date                => l_effective_date
603       ,p_scorecard_id                  => p_scorecard_id
604       ,p_object_version_number         => l_object_version_number
605       ,p_scorecard_name                => p_scorecard_name
606       ,p_start_date                    => l_start_date
607       ,p_end_date                      => l_end_date
608       ,p_plan_id                       => p_plan_id
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_attribute21                   => p_attribute21
631       ,p_attribute22                   => p_attribute22
632       ,p_attribute23                   => p_attribute23
633       ,p_attribute24                   => p_attribute24
634       ,p_attribute25                   => p_attribute25
635       ,p_attribute26                   => p_attribute26
636       ,p_attribute27                   => p_attribute27
637       ,p_attribute28                   => p_attribute28
638       ,p_attribute29                   => p_attribute29
639       ,p_attribute30                   => p_attribute30
640       ,p_status_code                   => p_status_code
641       ,p_duplicate_name_warning        => l_duplicate_name_warning
642 		,p_obj_setting_deadline			=> p_obj_setting_deadline
643 		,p_supervisor_id				=> p_supervisor_id
644 		,p_supervisor_assignment_id		=> p_supervisor_assignment_id
645 		,p_eligibility_status			=> p_eligibility_status
646 		,p_eligibility_eval_date		=> p_eligibility_eval_date
647       );
648   exception
649     when hr_api.cannot_find_prog_unit then
650       hr_api.cannot_find_prog_unit_error
651         (p_module_name => 'UPDATE_SCORECARD'
652         ,p_hook_type   => 'AP'
653         );
654   end;
655 
656   IF g_debug THEN hr_utility.set_location(l_proc, 40); END IF;
657   --
658   -- When in validation only mode raise the Validate_Enabled exception
659   --
660   if p_validate then
661     raise hr_api.validate_enabled;
662   end if;
663   --
664   -- Set all IN OUT and OUT parameters with out values
665   --
666   p_object_version_number  := l_object_version_number;
667   p_duplicate_name_warning := l_duplicate_name_warning;
668 
669   --
670   -- Pipe the main IN OUT / OUT parameters for ease of debugging.
671   --
672   IF g_debug THEN
673 
674     hr_utility.trace(' ');
675     hr_utility.trace(' --------------------------------'||
676                      '---------------------------------');
677     hr_utility.trace(' IN OUT / OUT PARAMETER          '||
678                      ' VALUE');
679     hr_utility.trace(' --------------------------------'||
680                      '+--------------------------------');
681     hr_utility.trace('  p_object_version_number        '||
682                         to_char(p_object_version_number));
683     IF p_duplicate_name_warning THEN
684       hr_utility.trace('  p_duplicate_name_warning       '||
685                           'TRUE');
686     ELSE
687       hr_utility.trace('  p_duplicate_name_warning       '||
688                           'FALSE');
689     END IF;
690     hr_utility.trace(' --------------------------------'||
691                      '---------------------------------');
692     hr_utility.trace(' ');
693     hr_utility.set_location(' Leaving:'||l_proc, 970);
694 
695   END IF;
696 
697 exception
698   when hr_api.validate_enabled then
699     --
700     -- As the Validate_Enabled exception has been raised
701     -- we must rollback to the savepoint
702     --
703     rollback to update_scorecard;
704     --
705     -- Reset IN OUT parameters and set OUT parameters
706     -- (Any key or derived arguments must be set to null
707     -- when validation only mode is being used.)
708     --
709     p_object_version_number  := null;
710     p_duplicate_name_warning := l_duplicate_name_warning;
711     hr_utility.set_location(' Leaving:'||l_proc, 980);
712   when others then
713     --
714     -- A validation or unexpected error has occured
715     --
716     rollback to update_scorecard;
717     --
718     -- Reset IN OUT parameters and set all
719     -- OUT parameters, including warnings, to null
720     --
721     p_object_version_number  := null;
722     p_duplicate_name_warning := null;
723     hr_utility.set_location(' Leaving:'||l_proc, 990);
724     raise;
725 end update_scorecard;
726 --
727 -- ----------------------------------------------------------------------------
728 -- |--------------------------< update_scorecard_status >---------------------|
729 -- ----------------------------------------------------------------------------
730 --
731 procedure update_scorecard_status
732   (p_validate                      in     boolean  default false
733   ,p_effective_date                in     date
734   ,p_scorecard_id                  in     number
735   ,p_object_version_number         in out nocopy   number
736   ,p_status_code                   in     varchar2
737   ) is
738   --
739   -- Declare cursors and local variables
740   --
741   l_proc                   varchar2(72) := g_package||'update_scorecard_status';
742   l_effective_date         date;
743   l_object_version_number  number := p_object_version_number;
744   l_dummy                  boolean;
745 
746 begin
747 
748   IF g_debug THEN
749 
750     hr_utility.set_location('Entering:'|| l_proc, 10);
751 
752     hr_utility.trace(' ');
753     hr_utility.trace(' --------------------------------'||
754                      '---------------------------------');
755     hr_utility.trace(' IN / IN OUT PARAMETER           '||
756                      ' VALUE');
757     hr_utility.trace(' --------------------------------'||
758                      '+--------------------------------');
759     hr_utility.trace('  p_effective_date                 '||
760                         to_char(p_effective_date));
761     hr_utility.trace('  p_scorecard_id                   '||
762                         to_char(p_scorecard_id));
763     hr_utility.trace('  p_object_version_number          '||
764                         to_char(p_object_version_number));
765     hr_utility.trace('  p_status_code                    '||
766                         p_status_code);
767     hr_utility.trace(' --------------------------------'||
768                      '---------------------------------');
769     hr_utility.trace(' ');
770 
771   END IF;
772 
773   --
774   -- Issue a savepoint
775   --
776   savepoint update_scorecard_status;
777 
778   --
779   -- Truncate the time portion from all IN date parameters
780   --
781   l_effective_date := trunc(p_effective_date);
782 
783   --
784   -- Call Before Process User Hook
785   --
786   begin
787     hr_personal_scorecard_bk3.update_scorecard_status_b
788       (p_effective_date                => l_effective_date
789       ,p_scorecard_id                  => p_scorecard_id
790       ,p_object_version_number         => l_object_version_number
791       ,p_status_code                   => p_status_code
792       );
793   exception
794     when hr_api.cannot_find_prog_unit then
795       hr_api.cannot_find_prog_unit_error
796         (p_module_name => 'UPDATE_SCORECARD_STATUS'
797         ,p_hook_type   => 'BP'
798         );
799   end;
800 
801   --
802   -- Process Logic
803   --
804   IF g_debug THEN hr_utility.set_location(l_proc, 30); END IF;
805 
806   per_pms_upd.upd
807     (p_effective_date                => l_effective_date
808     ,p_scorecard_id                  => p_scorecard_id
809     ,p_object_version_number         => l_object_version_number
810     ,p_status_code                   => p_status_code
811     ,p_duplicate_name_warning        => l_dummy
812     );
813 
814   --
815   -- Call After Process User Hook
816   --
817   begin
818     hr_personal_scorecard_bk3.update_scorecard_status_a
819       (p_effective_date                => l_effective_date
820       ,p_scorecard_id                  => p_scorecard_id
821       ,p_object_version_number         => l_object_version_number
822       ,p_status_code                   => p_status_code
823       );
824   exception
825     when hr_api.cannot_find_prog_unit then
826       hr_api.cannot_find_prog_unit_error
827         (p_module_name => 'UPDATE_SCORECARD_STATUS'
828         ,p_hook_type   => 'AP'
829         );
830   end;
831 
832   IF g_debug THEN hr_utility.set_location(l_proc, 40); END IF;
833   --
834   -- When in validation only mode raise the Validate_Enabled exception
835   --
836   if p_validate then
837     raise hr_api.validate_enabled;
838   end if;
839   --
840   -- Set all IN OUT and OUT parameters with out values
841   --
842   p_object_version_number  := l_object_version_number;
843 
844   --
845   -- Pipe the main IN OUT / OUT parameters for ease of debugging.
846   --
847   IF g_debug THEN
848 
849     hr_utility.trace(' ');
850     hr_utility.trace(' --------------------------------'||
851                      '---------------------------------');
852     hr_utility.trace(' IN OUT / OUT PARAMETER          '||
853                      ' VALUE');
854     hr_utility.trace(' --------------------------------'||
855                      '+--------------------------------');
856     hr_utility.trace('  p_object_version_number        '||
857                         to_char(p_object_version_number));
858     hr_utility.trace(' --------------------------------'||
859                      '---------------------------------');
860     hr_utility.trace(' ');
861 
862   END IF;
863 
864 exception
865   when hr_api.validate_enabled then
866     --
867     -- As the Validate_Enabled exception has been raised
868     -- we must rollback to the savepoint
869     --
870     -- As the Validate_Enabled exception has been raised
871     -- we must rollback to the savepoint
872     --
873     rollback to update_scorecard_status;
874     --
875     -- Reset IN OUT parameters and set OUT parameters
876     -- (Any key or derived arguments must be set to null
877     -- when validation only mode is being used.)
878     --
879     p_object_version_number  := null;
880     hr_utility.set_location(' Leaving:'||l_proc, 980);
881   when others then
882     --
883     -- A validation or unexpected error has occured
884     --
885     rollback to update_scorecard_status;
886     --
887     -- Reset IN OUT parameters and set all
888     -- OUT parameters, including warnings, to null
889     --
890     p_object_version_number  := null;
891     hr_utility.set_location(' Leaving:'||l_proc, 990);
892     raise;
893 end update_scorecard_status;
894 --
895 -- ----------------------------------------------------------------------------
896 -- |--------------------------< delete_scorecard >----------------------------|
897 -- ----------------------------------------------------------------------------
898 --
899 procedure delete_scorecard
900   (p_validate                      in     boolean  default false
901   ,p_scorecard_id                  in     number
902   ,p_object_version_number         in     number
903   ,p_created_by_plan_warning          out nocopy   boolean
904   ) is
905   --
906   -- Declare cursors and local variables
907   --
908   l_proc                    varchar2(72) := g_package||'delete_scorecard';
909   l_created_by_plan_warning boolean;
910 
911 begin
912 
913   IF g_debug THEN
914 
915     hr_utility.set_location('Entering:'|| l_proc, 10);
916 
917     hr_utility.trace(' ');
918     hr_utility.trace(' --------------------------------'||
919                      '---------------------------------');
920     hr_utility.trace(' IN / IN OUT PARAMETER           '||
921                      ' VALUE');
922     hr_utility.trace(' --------------------------------'||
923                      '+--------------------------------');
924     hr_utility.trace('  p_scorecard_id                   '||
925                         to_char(p_scorecard_id));
926     hr_utility.trace('  p_object_version_number          '||
927                         to_char(p_object_version_number));
928     hr_utility.trace(' --------------------------------'||
929                      '---------------------------------');
930     hr_utility.trace(' ');
931 
932   END IF;
933 
934   --
935   -- Issue a savepoint
936   --
937   savepoint delete_scorecard;
938 
939   --
940   -- Call Before Process User Hook
941   --
942   begin
943     hr_personal_scorecard_bk4.delete_scorecard_b
944       (p_scorecard_id                  => p_scorecard_id
945       ,p_object_version_number         => p_object_version_number
946       );
947   exception
948     when hr_api.cannot_find_prog_unit then
949       hr_api.cannot_find_prog_unit_error
950         (p_module_name => 'DELETE_SCORECARD'
951         ,p_hook_type   => 'BP'
952         );
953   end;
954 
955   --
956   -- Process Logic
957   --
958   IF g_debug THEN hr_utility.set_location(l_proc, 30); END IF;
959 
960   per_pms_del.del
961     (p_scorecard_id                  => p_scorecard_id
962     ,p_object_version_number         => p_object_version_number
963     ,p_created_by_plan_warning       => l_created_by_plan_warning
964     );
965 
966   --
967   -- Call After Process User Hook
968   --
969   begin
970     hr_personal_scorecard_bk4.delete_scorecard_a
971       (p_scorecard_id                  => p_scorecard_id
972       ,p_object_version_number         => p_object_version_number
973       ,p_created_by_plan_warning       => l_created_by_plan_warning
974       );
975   exception
976     when hr_api.cannot_find_prog_unit then
977       hr_api.cannot_find_prog_unit_error
978         (p_module_name => 'DELETE_SCORECARD'
979         ,p_hook_type   => 'AP'
980         );
981   end;
982 
983   IF g_debug THEN hr_utility.set_location(l_proc, 40); END IF;
984   --
985   -- When in validation only mode raise the Validate_Enabled exception
986   --
987   if p_validate then
988     raise hr_api.validate_enabled;
989   end if;
990   --
991   -- Set all IN OUT and OUT parameters with out values
992   --
993   p_created_by_plan_warning := l_created_by_plan_warning;
994 
995   --
996   -- Pipe the main IN OUT / OUT parameters for ease of debugging.
997   --
998   IF g_debug THEN
999 
1000     hr_utility.trace(' ');
1001     hr_utility.trace(' --------------------------------'||
1002                      '---------------------------------');
1003     hr_utility.trace(' IN OUT / OUT PARAMETER          '||
1004                      ' VALUE');
1005     hr_utility.trace(' --------------------------------'||
1006                      '+--------------------------------');
1007     hr_utility.trace('  p_object_version_number        '||
1008                         to_char(p_object_version_number));
1009     IF p_created_by_plan_warning THEN
1010       hr_utility.trace('  p_created_by_plan_warning      '||
1011                           'TRUE');
1012     ELSE
1013       hr_utility.trace('  p_created_by_plan_warning      '||
1014                           'FALSE');
1015     END IF;
1016     hr_utility.trace(' --------------------------------'||
1017                      '---------------------------------');
1018     hr_utility.trace(' ');
1019     hr_utility.set_location(' Leaving:'||l_proc, 970);
1020 
1021   END IF;
1022 
1023 exception
1024   when hr_api.validate_enabled then
1025     --
1026     -- As the Validate_Enabled exception has been raised
1027     -- we must rollback to the savepoint
1028     --
1029     rollback to delete_scorecard;
1030     --
1031     -- Reset IN OUT parameters and set OUT parameters
1032     -- (Any key or derived arguments must be set to null
1033     -- when validation only mode is being used.)
1034     --
1035     p_created_by_plan_warning := l_created_by_plan_warning;
1036     hr_utility.set_location(' Leaving:'||l_proc, 980);
1037   when others then
1038     --
1039     -- A validation or unexpected error has occured
1040     --
1041     rollback to delete_scorecard;
1042     --
1043     -- Reset IN OUT parameters and set all
1044     -- OUT parameters, including warnings, to null
1045     --
1046     p_created_by_plan_warning := null;
1047     hr_utility.set_location(' Leaving:'||l_proc, 990);
1048     raise;
1049 end delete_scorecard;
1050 --
1051 end hr_personal_scorecard_api;