DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_PERFORMANCE_RATINGS_API

Source


4 -- Package Variables
1 Package Body hr_performance_ratings_api as
2 /* $Header: peprtapi.pkb 120.1 2006/02/13 14:12:56 vbala noship $ */
3 --
5 --
6 g_package  varchar2(33) := '  hr_performance_ratings_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |----------------------< <create_performance_rating> >---------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_performance_rating
13   (p_validate                      in     boolean     default false
14   ,p_effective_date                in     date
15   ,p_appraisal_id                  in     number
16   ,p_person_id                     in     number default null
17   ,p_objective_id                  in     number
18   ,p_performance_level_id          in     number      default null
19   ,p_comments                      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_performance_rating_id            out nocopy number
42   ,p_object_version_number            out nocopy number
43   ,p_appr_line_score               in     number      default null
44   ) is
45   --
46   -- Declare cursors and local variables
47   --
48 
49   l_proc                     varchar2(72) := g_package||'create_performance_rating';
50   l_performance_rating_id    per_performance_ratings.performance_rating_id%TYPE;
51   l_object_version_number    per_performance_ratings.object_version_number%TYPE;
52 --
53 begin
54 --
55   hr_utility.set_location('Entering:'|| l_proc, 10);
56   --
57   -- Issue a savepoint.
58   --
59   savepoint create_performance_rating;
60   --
61   -- Call Before Process User Hook
62   --
63   begin
64 	hr_performance_ratings_bk1.create_performance_rating_b	(
65          p_effective_date         => p_effective_date
66         ,p_appraisal_id           => p_appraisal_id
67         ,p_objective_id           => p_objective_id
68         ,p_performance_level_id   => p_performance_level_id
69         ,p_person_id              => p_person_id
70         ,p_comments               => p_comments
71         ,p_attribute_category     => p_attribute_category
72         ,p_attribute1             => p_attribute1
73         ,p_attribute2             => p_attribute2
74         ,p_attribute3             => p_attribute3
75         ,p_attribute4             => p_attribute4
76         ,p_attribute5             => p_attribute5
77         ,p_attribute6             => p_attribute6
78         ,p_attribute7             => p_attribute7
79         ,p_attribute8             => p_attribute8
80         ,p_attribute9             => p_attribute9
81         ,p_attribute10            => p_attribute10
82         ,p_attribute11            => p_attribute11
83         ,p_attribute12            => p_attribute12
84         ,p_attribute13            => p_attribute13
85         ,p_attribute14            => p_attribute14
86         ,p_attribute15            => p_attribute15
87         ,p_attribute16            => p_attribute16
88         ,p_attribute17            => p_attribute17
89         ,p_attribute18            => p_attribute18
90         ,p_attribute19            => p_attribute19
91         ,p_attribute20            => p_attribute20
92 	,p_appr_line_score        => p_appr_line_score
93 	);
94       exception
95 	   when hr_api.cannot_find_prog_unit then
96 		  hr_api.cannot_find_prog_unit_error
97 				(p_module_name	=> 'create_performance_rating',
98 				 p_hook_type	=> 'BP'
99 				);
100   end;
101   --
102   -- End of Before Process User Hook call
103   --
104   hr_utility.set_location(l_proc, 20);
105   --
106   -- Validation in addition to Row Handlers
107   --
108   hr_utility.set_location(l_proc, 30);
109   --
110   -- Process Logic
111   --
112   per_prt_ins.ins
113      (p_validate               => p_validate
114      ,p_effective_date         => p_effective_date
115      ,p_appraisal_id           => p_appraisal_id
116      ,p_person_id              => p_person_id
117      ,p_objective_id           => p_objective_id
118      ,p_performance_level_id   => p_performance_level_id
119      ,p_comments               => p_comments
120      ,p_attribute_category     => p_attribute_category
124      ,p_attribute4             => p_attribute4
121      ,p_attribute1             => p_attribute1
122      ,p_attribute2             => p_attribute2
123      ,p_attribute3             => p_attribute3
125      ,p_attribute5             => p_attribute5
126      ,p_attribute6             => p_attribute6
127      ,p_attribute7             => p_attribute7
128      ,p_attribute8             => p_attribute8
129      ,p_attribute9             => p_attribute9
130      ,p_attribute10            => p_attribute10
131      ,p_attribute11            => p_attribute11
132      ,p_attribute12            => p_attribute12
133      ,p_attribute13            => p_attribute13
134      ,p_attribute14            => p_attribute14
135      ,p_attribute15            => p_attribute15
136      ,p_attribute16            => p_attribute16
137      ,p_attribute17            => p_attribute17
138      ,p_attribute18            => p_attribute18
139      ,p_attribute19            => p_attribute19
140      ,p_attribute20            => p_attribute20
141      ,p_performance_rating_id  => l_performance_rating_id
142      ,p_object_version_number  => l_object_version_number
143      ,p_appr_line_score        => p_appr_line_score
144   );
145 
146   hr_utility.set_location(l_proc, 40);
147   --
148   -- Call After Process User Hook
149   --
150   begin
151 	hr_performance_ratings_bk1.create_performance_rating_a	(
152          p_performance_rating_id  => l_performance_rating_id
153         ,p_object_version_number  => l_object_version_number
154         ,p_effective_date         => p_effective_date
155         ,p_appraisal_id           => p_appraisal_id
156         ,p_person_id              => p_person_id
157         ,p_objective_id           => p_objective_id
158         ,p_performance_level_id   => p_performance_level_id
159         ,p_comments               => p_comments
160         ,p_attribute_category     => p_attribute_category
161         ,p_attribute1             => p_attribute1
162         ,p_attribute2             => p_attribute2
163         ,p_attribute3             => p_attribute3
164         ,p_attribute4             => p_attribute4
165         ,p_attribute5             => p_attribute5
166         ,p_attribute6             => p_attribute6
167         ,p_attribute7             => p_attribute7
168         ,p_attribute8             => p_attribute8
169         ,p_attribute9             => p_attribute9
170         ,p_attribute10            => p_attribute10
171         ,p_attribute11            => p_attribute11
172         ,p_attribute12            => p_attribute12
173         ,p_attribute13            => p_attribute13
174         ,p_attribute14            => p_attribute14
175         ,p_attribute15            => p_attribute15
176         ,p_attribute16            => p_attribute16
177         ,p_attribute17            => p_attribute17
178         ,p_attribute18            => p_attribute18
179         ,p_attribute19            => p_attribute19
180         ,p_attribute20            => p_attribute20
181 	,p_appr_line_score        => p_appr_line_score
182 	);
183       exception
184 	   when hr_api.cannot_find_prog_unit then
185 		  hr_api.cannot_find_prog_unit_error
186 				(p_module_name	=> 'create_performance_rating',
187 				 p_hook_type	=> 'AP'
188 				);
189   end;
190   --
191   -- End of After process user hook
192   --
193   -- When in validation only mode raise the Validate_Enabled exception
194   --
195   if p_validate then
196     raise hr_api.validate_enabled;
197   end if;
198   --
199   -- Set all output arguments
200   --
201   p_performance_rating_id  := l_performance_rating_id;
202   p_object_version_number  := l_object_version_number;
203   --
204   hr_utility.set_location(' Leaving:'||l_proc, 50);
205   --
206 exception
207   when hr_api.validate_enabled then
208     --
209     -- As the Validate_Enabled exception has been raised
210     -- we must rollback to the savepoint
211     --
212     ROLLBACK TO create_performance_rating;
213     --
214     -- Only set output warning arguments
215     -- (Any key or derived arguments must be set to null
216     -- when validation only mode is being used.)
217     --
218     p_performance_rating_id  := null;
219     p_object_version_number  := null;
220     --
221     --
222   when others then
223     --
224     -- A validation or unexpected error has occurred
225     --
226     -- Added as part of fix to bug 632482
227     --
228     p_performance_rating_id  := null;
229     p_object_version_number  := null;
230     ROLLBACK TO create_performance_rating;
231     raise;
232     --
233     -- End of fix.
234     --
235     hr_utility.set_location(' Leaving:'||l_proc, 60);
236 end create_performance_rating;
237 --
238 -- ----------------------------------------------------------------------------
239 -- |---------------------< <delete_performance_rating> >----------------------|
240 -- ----------------------------------------------------------------------------
241 --
242 procedure delete_performance_rating
243   (p_validate                      in     boolean  default false
244   ,p_performance_rating_id         in     number
245   ,p_object_version_number         in     number
246   ) is
247   --
248   -- Declare cursors and local variables
249   --
250   l_proc                varchar2(72) := g_package||'delete_performance_rating';
251 --
252 begin
253 --
254   hr_utility.set_location('Entering:'|| l_proc, 10);
255   --
256   -- Issue a savepoint.
257   --
258   savepoint delete_performance_rating;
259   --
260   -- Call Before Process User Hook
261   --
262   begin
263 	hr_performance_ratings_bk3.delete_performance_rating_b
264 		(
268       exception
265 		p_performance_rating_id   =>	p_performance_rating_id,
266 		p_object_version_number   =>	p_object_version_number
267 	);
269 	   when hr_api.cannot_find_prog_unit then
270 		  hr_api.cannot_find_prog_unit_error
271 				(p_module_name	=> 'delete_performance_rating',
272 				 p_hook_type	=> 'BP'
273 				);
274   end;
275   --
276   -- End of Before Process User hook
277   --
278   hr_utility.set_location(l_proc, 20);
279   --
280   -- Delete the performance_rating
281   --
282   per_prt_del.del
283   (p_validate			=> p_validate
284   ,p_performance_rating_id	=> p_performance_rating_id
285   ,p_object_version_number	=> p_object_version_number
286   );
287   --
288   hr_utility.set_location(l_proc, 30);
289   --
290   -- Call After Process User Hook
291   --
292   begin
293 	hr_performance_ratings_bk3.delete_performance_rating_a	(
294 		p_performance_rating_id   =>	p_performance_rating_id,
295 		p_object_version_number   =>	p_object_version_number
296 	);
297       exception
298 	   when hr_api.cannot_find_prog_unit then
299 		  hr_api.cannot_find_prog_unit_error
300 				(p_module_name	=> 'delete_performance_rating',
301 				 p_hook_type	=> 'AP'
302 				);
303   end;
304   --
305   -- End of After Process User hook
306   --
307   -- When in validation only mode raise the Validate_Enabled exception
308   --
309   if p_validate then
310     raise hr_api.validate_enabled;
311   end if;
312   --
313   hr_utility.set_location(' Leaving:'||l_proc, 40);
314   --
315 exception
316   when hr_api.validate_enabled then
317     --
318     -- As the Validate_Enabled exception has been raised
319     -- we must rollback to the savepoint
320     --
321     ROLLBACK TO delete_performance_rating;
322     --
323     --
324   when others then
325     --
326     -- A validation or unexpected error has occurred
327     --
328     -- Added as part of fix to bug 632482
329     --
330     ROLLBACK TO delete_performance_rating;
331     raise;
332     --
333     -- End of fix.
334     --
335     hr_utility.set_location(' Leaving:'||l_proc, 50);
336 --
337 end delete_performance_rating;
338 --
339 -- ----------------------------------------------------------------------------
340 -- |---------------------< <update_performance_rating> >----------------------|
341 -- ----------------------------------------------------------------------------
342 --
343 procedure update_performance_rating
344   (p_validate                      in     boolean     default false
345   ,p_effective_date                in     date
346   ,p_performance_rating_id         in     number
347   ,p_person_id                     in     number default null
348   ,p_object_version_number         in out nocopy number
349   ,p_appraisal_id                  in     number      default hr_api.g_number
350   ,p_objective_id                  in     number      default hr_api.g_number
351   ,p_performance_level_id          in     number      default hr_api.g_number
352   ,p_comments                      in     varchar2    default hr_api.g_varchar2
353   ,p_attribute_category            in     varchar2    default hr_api.g_varchar2
354   ,p_attribute1                    in     varchar2    default hr_api.g_varchar2
355   ,p_attribute2                    in     varchar2    default hr_api.g_varchar2
356   ,p_attribute3                    in     varchar2    default hr_api.g_varchar2
357   ,p_attribute4                    in     varchar2    default hr_api.g_varchar2
358   ,p_attribute5                    in     varchar2    default hr_api.g_varchar2
359   ,p_attribute6                    in     varchar2    default hr_api.g_varchar2
360   ,p_attribute7                    in     varchar2    default hr_api.g_varchar2
361   ,p_attribute8                    in     varchar2    default hr_api.g_varchar2
362   ,p_attribute9                    in     varchar2    default hr_api.g_varchar2
363   ,p_attribute10                   in     varchar2    default hr_api.g_varchar2
364   ,p_attribute11                   in     varchar2    default hr_api.g_varchar2
365   ,p_attribute12                   in     varchar2    default hr_api.g_varchar2
366   ,p_attribute13                   in     varchar2    default hr_api.g_varchar2
367   ,p_attribute14                   in     varchar2    default hr_api.g_varchar2
368   ,p_attribute15                   in     varchar2    default hr_api.g_varchar2
369   ,p_attribute16                   in     varchar2    default hr_api.g_varchar2
370   ,p_attribute17                   in     varchar2    default hr_api.g_varchar2
371   ,p_attribute18                   in     varchar2    default hr_api.g_varchar2
372   ,p_attribute19                   in     varchar2    default hr_api.g_varchar2
373   ,p_attribute20                   in     varchar2    default hr_api.g_varchar2
374   ,p_appr_line_score               in     number      default hr_api.g_number
375   ) is
376   --
377   -- Declare cursors and local variables
378   --
379   l_proc                     varchar2(72) := g_package||'update_performance_rating';
380   l_object_version_number    per_performance_ratings.object_version_number%TYPE;
381   l_temp_ovn                 number       := p_object_version_number;
382   --
383 begin
384   hr_utility.set_location('Entering:'|| l_proc, 10);
385   --
386   -- Issue a savepoint.
387   --
388   savepoint update_performance_rating;
389   --
390   -- Call Before Process User Hook
391   --
392   begin
393 	hr_performance_ratings_bk2.update_performance_rating_b	(
394          p_effective_date           => p_effective_date
395         ,p_performance_rating_id    => p_performance_rating_id
396         ,p_object_version_number    => p_object_version_number
397         ,p_appraisal_id             => p_appraisal_id
398         ,p_person_id                => p_person_id
399         ,p_objective_id             => p_objective_id
400         ,p_performance_level_id     => p_performance_level_id
401         ,p_comments                 => p_comments
402         ,p_attribute_category       => p_attribute_category
403         ,p_attribute1               => p_attribute1
404         ,p_attribute2               => p_attribute2
405         ,p_attribute3               => p_attribute3
406         ,p_attribute4               => p_attribute4
407         ,p_attribute5               => p_attribute5
408         ,p_attribute6               => p_attribute6
409         ,p_attribute7               => p_attribute7
410         ,p_attribute8               => p_attribute8
411         ,p_attribute9               => p_attribute9
412         ,p_attribute10              => p_attribute10
413         ,p_attribute11              => p_attribute11
414         ,p_attribute12              => p_attribute12
415         ,p_attribute13              => p_attribute13
416         ,p_attribute14              => p_attribute14
417         ,p_attribute15              => p_attribute15
418         ,p_attribute16              => p_attribute16
419         ,p_attribute17              => p_attribute17
420         ,p_attribute18              => p_attribute18
421         ,p_attribute19              => p_attribute19
422         ,p_attribute20              => p_attribute20
423 	,p_appr_line_score          => p_appr_line_score
424 	);
425       exception
426 	   when hr_api.cannot_find_prog_unit then
427 		  hr_api.cannot_find_prog_unit_error
428 				(p_module_name	=> 'update_performance_rating',
429 				 p_hook_type	=> 'BP'
430 				);
431   end;
432   --
433   -- End of Before Process User Hook call
434   --
435   hr_utility.set_location(l_proc, 20);
436   --
437   -- Process Logic
438   --
439   l_object_version_number := p_object_version_number;
440   --
441   per_prt_upd.upd
442      (p_validate                 => p_validate
443      ,p_effective_date           => p_effective_date
444      ,p_performance_rating_id    => p_performance_rating_id
445      ,p_object_version_number    => l_object_version_number
446      ,p_performance_level_id     => p_performance_level_id
447      ,p_person_id                => p_person_id
448      ,p_comments                 => p_comments
449      ,p_attribute_category       => p_attribute_category
450      ,p_attribute1               => p_attribute1
451      ,p_attribute2               => p_attribute2
452      ,p_attribute3               => p_attribute3
453      ,p_attribute4               => p_attribute4
454      ,p_attribute5               => p_attribute5
455      ,p_attribute6               => p_attribute6
456      ,p_attribute7               => p_attribute7
457      ,p_attribute8               => p_attribute8
458      ,p_attribute9               => p_attribute9
459      ,p_attribute10              => p_attribute10
460      ,p_attribute11              => p_attribute11
461      ,p_attribute12              => p_attribute12
462      ,p_attribute13              => p_attribute13
463      ,p_attribute14              => p_attribute14
464      ,p_attribute15              => p_attribute15
465      ,p_attribute16              => p_attribute16
466      ,p_attribute17              => p_attribute17
467      ,p_attribute18              => p_attribute18
468      ,p_attribute19              => p_attribute19
469      ,p_attribute20              => p_attribute20
470      ,p_appr_line_score          => p_appr_line_score
471      );
472   --
473   hr_utility.set_location(l_proc, 30);
474   --
475   -- Call After Process User Hook
476   --
477   begin
478 	hr_performance_ratings_bk2.update_performance_rating_a	(
479          p_effective_date           => p_effective_date
480         ,p_performance_rating_id    => p_performance_rating_id
481         ,p_object_version_number    => l_object_version_number
482         ,p_appraisal_id             => p_appraisal_id
483 	,p_person_id                => p_person_id
484         ,p_objective_id             => p_objective_id
485         ,p_performance_level_id     => p_performance_level_id
486         ,p_comments                 => p_comments
487         ,p_attribute_category       => p_attribute_category
488         ,p_attribute1               => p_attribute1
489         ,p_attribute2               => p_attribute2
490         ,p_attribute3               => p_attribute3
491         ,p_attribute4               => p_attribute4
492         ,p_attribute5               => p_attribute5
493         ,p_attribute6               => p_attribute6
494         ,p_attribute7               => p_attribute7
495         ,p_attribute8               => p_attribute8
496         ,p_attribute9               => p_attribute9
497         ,p_attribute10              => p_attribute10
498         ,p_attribute11              => p_attribute11
499         ,p_attribute12              => p_attribute12
500         ,p_attribute13              => p_attribute13
501         ,p_attribute14              => p_attribute14
502         ,p_attribute15              => p_attribute15
503         ,p_attribute16              => p_attribute16
504         ,p_attribute17              => p_attribute17
505         ,p_attribute18              => p_attribute18
506         ,p_attribute19              => p_attribute19
507         ,p_attribute20              => p_attribute20
508 	,p_appr_line_score          => p_appr_line_score
509 	);
510       exception
511 	   when hr_api.cannot_find_prog_unit then
512 		  hr_api.cannot_find_prog_unit_error
513 				(p_module_name	=> 'update_performance_rating',
514 				 p_hook_type	=> 'AP'
515 				);
516   end;
517   --
518   -- End After Process User Hook
519   --
520   -- When in validation only mode raise the Validate_Enabled exception
521   --
522   if p_validate then
523     raise hr_api.validate_enabled;
524   end if;
525   --
526   -- Set all output arguments. l_object_version_number now has the new
527   -- object version number as the update was successful
528   --
529   p_object_version_number  := l_object_version_number;
530   --
531   hr_utility.set_location(' Leaving:'||l_proc, 40);
532 exception
533   when hr_api.validate_enabled then
534     --
535     -- As the Validate_Enabled exception has been raised
536     -- we must rollback to the savepoint
537     --
538     ROLLBACK TO update_performance_rating;
539     --
540     -- Only set output warning arguments and in out arguments back
541     -- to their IN value
542     -- (Any key or derived arguments must be set to null
543     -- when validation only mode is being used.)
544     --
545     p_object_version_number := l_object_version_number;
546     --
547     --
548   when others then
549     --
550     -- A validation or unexpected error has occurred
551     --
552     -- Added as part of fix to bug 632482
553     --
554     p_object_version_number := l_temp_ovn;
555     ROLLBACK TO update_performance_rating;
556     raise;
557     --
558     -- End of fix.
559     --
560     hr_utility.set_location(' Leaving:'||l_proc, 50);
561 --
562 end update_performance_rating;
563 --
564 end hr_performance_ratings_api;