DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_SCORECARD_SHARING_API

Source


1 Package Body hr_scorecard_sharing_api as
2 /* $Header: pepshapi.pkb 120.0 2006/03/14 19:41:56 tpapired noship $ */
3 --
4 -- Package Variables
5 --
6 g_package  varchar2(33) := '  hr_scorecard_sharing_api.';
7 g_debug    boolean      := hr_utility.debug_enabled;
8 
9 --
10 -- ----------------------------------------------------------------------------
11 -- |--------------------------< create_sharing_instance >---------------------|
12 -- ----------------------------------------------------------------------------
13 --
14 procedure create_sharing_instance
15   (p_validate                      in     boolean  default false
16   ,p_scorecard_id                  in     number
17   ,p_person_id                     in     number
18   ,p_attribute_category            in     varchar2 default null
19   ,p_attribute1                    in     varchar2 default null
20   ,p_attribute2                    in     varchar2 default null
21   ,p_attribute3                    in     varchar2 default null
22   ,p_attribute4                    in     varchar2 default null
23   ,p_attribute5                    in     varchar2 default null
24   ,p_attribute6                    in     varchar2 default null
25   ,p_attribute7                    in     varchar2 default null
26   ,p_attribute8                    in     varchar2 default null
27   ,p_attribute9                    in     varchar2 default null
28   ,p_attribute10                   in     varchar2 default null
29   ,p_attribute11                   in     varchar2 default null
30   ,p_attribute12                   in     varchar2 default null
31   ,p_attribute13                   in     varchar2 default null
32   ,p_attribute14                   in     varchar2 default null
33   ,p_attribute15                   in     varchar2 default null
34   ,p_attribute16                   in     varchar2 default null
35   ,p_attribute17                   in     varchar2 default null
36   ,p_attribute18                   in     varchar2 default null
37   ,p_attribute19                   in     varchar2 default null
38   ,p_attribute20                   in     varchar2 default null
39   ,p_attribute21                   in     varchar2 default null
40   ,p_attribute22                   in     varchar2 default null
41   ,p_attribute23                   in     varchar2 default null
42   ,p_attribute24                   in     varchar2 default null
43   ,p_attribute25                   in     varchar2 default null
44   ,p_attribute26                   in     varchar2 default null
45   ,p_attribute27                   in     varchar2 default null
46   ,p_attribute28                   in     varchar2 default null
47   ,p_attribute29                   in     varchar2 default null
48   ,p_attribute30                   in     varchar2 default null
49   ,p_sharing_instance_id              out nocopy   number
50   ,p_object_version_number            out nocopy   number
51   ) is
52   --
53   -- Declare cursors and local variables
54   --
55   l_proc                   varchar2(72) := g_package||'create_sharing_instance';
56   l_sharing_instance_id    number;
57   l_object_version_number  number;
58 
59 begin
60 
61   IF g_debug THEN
62 
63     hr_utility.set_location('Entering:'|| l_proc, 10);
64 
65     hr_utility.trace(' ');
66     hr_utility.trace(' --------------------------------'||
67                      '---------------------------------');
68     hr_utility.trace(' IN / IN OUT PARAMETER           '||
69                      ' VALUE');
70     hr_utility.trace(' --------------------------------'||
71                      '+--------------------------------');
72     hr_utility.trace('  p_scorecard_id                   '||
73                         to_char(p_scorecard_id));
74     hr_utility.trace('  p_person_id                      '||
75                         to_char(p_person_id));
76     hr_utility.trace(' --------------------------------'||
77                      '---------------------------------');
78     hr_utility.trace(' ');
79 
80   END IF;
81 
82   --
83   -- Issue a savepoint
84   --
85   savepoint create_sharing_instance;
86 
87   --
88   -- Call Before Process User Hook
89   --
90   begin
91     hr_scorecard_sharing_bk1.create_sharing_instance_b
92       (p_scorecard_id                  => p_scorecard_id
93       ,p_person_id                     => p_person_id
94       ,p_attribute_category            => p_attribute_category
95       ,p_attribute1                    => p_attribute1
96       ,p_attribute2                    => p_attribute2
97       ,p_attribute3                    => p_attribute3
98       ,p_attribute4                    => p_attribute4
99       ,p_attribute5                    => p_attribute5
100       ,p_attribute6                    => p_attribute6
101       ,p_attribute7                    => p_attribute7
102       ,p_attribute8                    => p_attribute8
103       ,p_attribute9                    => p_attribute9
104       ,p_attribute10                   => p_attribute10
105       ,p_attribute11                   => p_attribute11
106       ,p_attribute12                   => p_attribute12
107       ,p_attribute13                   => p_attribute13
108       ,p_attribute14                   => p_attribute14
109       ,p_attribute15                   => p_attribute15
110       ,p_attribute16                   => p_attribute16
111       ,p_attribute17                   => p_attribute17
112       ,p_attribute18                   => p_attribute18
113       ,p_attribute19                   => p_attribute19
114       ,p_attribute20                   => p_attribute20
115       ,p_attribute21                   => p_attribute21
116       ,p_attribute22                   => p_attribute22
117       ,p_attribute23                   => p_attribute23
118       ,p_attribute24                   => p_attribute24
119       ,p_attribute25                   => p_attribute25
120       ,p_attribute26                   => p_attribute26
121       ,p_attribute27                   => p_attribute27
122       ,p_attribute28                   => p_attribute28
123       ,p_attribute29                   => p_attribute29
124       ,p_attribute30                   => p_attribute30
125       );
126   exception
127     when hr_api.cannot_find_prog_unit then
128       hr_api.cannot_find_prog_unit_error
129         (p_module_name => 'create_sharing_instance'
130         ,p_hook_type   => 'BP'
131         );
132   end;
133 
134   --
135   -- Process Logic
136   --
137   IF g_debug THEN hr_utility.set_location(l_proc, 30); END IF;
138 
139   per_psh_ins.ins
140     (p_scorecard_id                  => p_scorecard_id
141     ,p_person_id                     => p_person_id
142     ,p_attribute_category            => p_attribute_category
143     ,p_attribute1                    => p_attribute1
144     ,p_attribute2                    => p_attribute2
145     ,p_attribute3                    => p_attribute3
146     ,p_attribute4                    => p_attribute4
147     ,p_attribute5                    => p_attribute5
148     ,p_attribute6                    => p_attribute6
149     ,p_attribute7                    => p_attribute7
150     ,p_attribute8                    => p_attribute8
151     ,p_attribute9                    => p_attribute9
152     ,p_attribute10                   => p_attribute10
153     ,p_attribute11                   => p_attribute11
154     ,p_attribute12                   => p_attribute12
155     ,p_attribute13                   => p_attribute13
156     ,p_attribute14                   => p_attribute14
157     ,p_attribute15                   => p_attribute15
158     ,p_attribute16                   => p_attribute16
159     ,p_attribute17                   => p_attribute17
160     ,p_attribute18                   => p_attribute18
161     ,p_attribute19                   => p_attribute19
162     ,p_attribute20                   => p_attribute20
163     ,p_attribute21                   => p_attribute21
164     ,p_attribute22                   => p_attribute22
165     ,p_attribute23                   => p_attribute23
166     ,p_attribute24                   => p_attribute24
167     ,p_attribute25                   => p_attribute25
168     ,p_attribute26                   => p_attribute26
169     ,p_attribute27                   => p_attribute27
170     ,p_attribute28                   => p_attribute28
171     ,p_attribute29                   => p_attribute29
172     ,p_attribute30                   => p_attribute30
173     ,p_sharing_instance_id           => l_sharing_instance_id
174     ,p_object_version_number         => l_object_version_number
175     );
176 
177   --
178   -- Call After Process User Hook
179   --
180   begin
181     hr_scorecard_sharing_bk1.create_sharing_instance_a
182       (p_scorecard_id                  => p_scorecard_id
183       ,p_person_id                     => p_person_id
184       ,p_attribute_category            => p_attribute_category
185       ,p_attribute1                    => p_attribute1
186       ,p_attribute2                    => p_attribute2
187       ,p_attribute3                    => p_attribute3
188       ,p_attribute4                    => p_attribute4
189       ,p_attribute5                    => p_attribute5
190       ,p_attribute6                    => p_attribute6
191       ,p_attribute7                    => p_attribute7
192       ,p_attribute8                    => p_attribute8
193       ,p_attribute9                    => p_attribute9
194       ,p_attribute10                   => p_attribute10
195       ,p_attribute11                   => p_attribute11
196       ,p_attribute12                   => p_attribute12
197       ,p_attribute13                   => p_attribute13
198       ,p_attribute14                   => p_attribute14
199       ,p_attribute15                   => p_attribute15
200       ,p_attribute16                   => p_attribute16
201       ,p_attribute17                   => p_attribute17
202       ,p_attribute18                   => p_attribute18
203       ,p_attribute19                   => p_attribute19
204       ,p_attribute20                   => p_attribute20
205       ,p_attribute21                   => p_attribute21
206       ,p_attribute22                   => p_attribute22
207       ,p_attribute23                   => p_attribute23
208       ,p_attribute24                   => p_attribute24
209       ,p_attribute25                   => p_attribute25
210       ,p_attribute26                   => p_attribute26
211       ,p_attribute27                   => p_attribute27
212       ,p_attribute28                   => p_attribute28
213       ,p_attribute29                   => p_attribute29
214       ,p_attribute30                   => p_attribute30
215       ,p_sharing_instance_id           => l_sharing_instance_id
216       ,p_object_version_number         => l_object_version_number
217       );
218   exception
219     when hr_api.cannot_find_prog_unit then
220       hr_api.cannot_find_prog_unit_error
221         (p_module_name => 'create_sharing_instance'
222         ,p_hook_type   => 'AP'
223         );
224   end;
225 
226   IF g_debug THEN hr_utility.set_location(l_proc, 40); END IF;
227   --
228   -- When in validation only mode raise the Validate_Enabled exception
229   --
230   if p_validate then
231     raise hr_api.validate_enabled;
232   end if;
233   --
234   -- Set all IN OUT and OUT parameters with out values
235   --
236   p_sharing_instance_id    := l_sharing_instance_id;
237   p_object_version_number  := l_object_version_number;
238 
239   --
240   -- Pipe the main IN OUT / OUT parameters for ease of debugging.
241   --
242   IF g_debug THEN
243 
244     hr_utility.trace(' ');
245     hr_utility.trace(' --------------------------------'||
246                      '---------------------------------');
247     hr_utility.trace(' IN OUT / OUT PARAMETER          '||
248                      ' VALUE');
249     hr_utility.trace(' --------------------------------'||
250                      '+--------------------------------');
251     hr_utility.trace('  p_sharing_instance_id          '||
252                         to_char(p_sharing_instance_id));
253     hr_utility.trace('  p_object_version_number        '||
254                         to_char(p_object_version_number));
255     hr_utility.trace(' --------------------------------'||
256                      '---------------------------------');
257     hr_utility.trace(' ');
258     hr_utility.set_location(' Leaving:'||l_proc, 970);
259 
260   END IF;
261 
262 exception
263   when hr_api.validate_enabled then
264     --
265     -- As the Validate_Enabled exception has been raised
266     -- we must rollback to the savepoint
267     --
268     rollback to create_sharing_instance;
269     --
270     -- Reset IN OUT parameters and set OUT parameters
271     -- (Any key or derived arguments must be set to null
272     -- when validation only mode is being used.)
273     --
274     p_sharing_instance_id    := null;
275     p_object_version_number  := null;
276     hr_utility.set_location(' Leaving:'||l_proc, 980);
277   when others then
278     --
279     -- A validation or unexpected error has occured
280     --
281     rollback to create_sharing_instance;
282     --
283     -- Reset IN OUT parameters and set all
284     -- OUT parameters, including warnings, to null
285     --
286     p_sharing_instance_id    := null;
287     p_object_version_number  := null;
288     hr_utility.set_location(' Leaving:'||l_proc, 990);
289     raise;
290 end create_sharing_instance;
291 --
292 -- ----------------------------------------------------------------------------
293 -- |--------------------------< delete_sharing_instance >---------------------|
294 -- ----------------------------------------------------------------------------
295 --
296 procedure delete_sharing_instance
297   (p_validate                      in     boolean  default false
298   ,p_sharing_instance_id           in     number
299   ,p_object_version_number         in     number
300   ) is
301   --
302   -- Declare cursors and local variables
303   --
304   l_proc varchar2(72) := g_package||'delete_sharing_instance';
305 
306 begin
307 
308   IF g_debug THEN
309 
310     hr_utility.set_location('Entering:'|| l_proc, 10);
311 
312     hr_utility.trace(' ');
313     hr_utility.trace(' --------------------------------'||
314                      '---------------------------------');
315     hr_utility.trace(' IN / IN OUT PARAMETER           '||
316                      ' VALUE');
317     hr_utility.trace(' --------------------------------'||
318                      '+--------------------------------');
319     hr_utility.trace('  p_sharing_instance_id            '||
320                         to_char(p_sharing_instance_id));
321     hr_utility.trace('  p_object_version_number          '||
322                         to_char(p_object_version_number));
323     hr_utility.trace(' --------------------------------'||
324                      '---------------------------------');
325     hr_utility.trace(' ');
326 
327   END IF;
328 
329   --
330   -- Issue a savepoint
331   --
332   savepoint delete_sharing_instance;
333 
334   --
335   -- Call Before Process User Hook
336   --
337   begin
338     hr_scorecard_sharing_bk2.delete_sharing_instance_b
339       (p_sharing_instance_id           => p_sharing_instance_id
340       ,p_object_version_number         => p_object_version_number
341       );
342   exception
343     when hr_api.cannot_find_prog_unit then
344       hr_api.cannot_find_prog_unit_error
345         (p_module_name => 'delete_sharing_instance'
346         ,p_hook_type   => 'BP'
347         );
348   end;
349 
350   --
351   -- Process Logic
352   --
353   IF g_debug THEN hr_utility.set_location(l_proc, 30); END IF;
354 
355   per_psh_del.del
356     (p_sharing_instance_id           => p_sharing_instance_id
357     ,p_object_version_number         => p_object_version_number
358     );
359 
360   --
361   -- Call After Process User Hook
362   --
363   begin
364     hr_scorecard_sharing_bk2.delete_sharing_instance_a
365       (p_sharing_instance_id           => p_sharing_instance_id
366       ,p_object_version_number         => p_object_version_number
367       );
368   exception
369     when hr_api.cannot_find_prog_unit then
370       hr_api.cannot_find_prog_unit_error
371         (p_module_name => 'delete_sharing_instance'
372         ,p_hook_type   => 'AP'
373         );
374   end;
375 
376   IF g_debug THEN hr_utility.set_location(l_proc, 40); END IF;
377   --
378   -- When in validation only mode raise the Validate_Enabled exception
379   --
380   if p_validate then
381     raise hr_api.validate_enabled;
382   end if;
383 
384   --
385   -- Pipe the main IN OUT / OUT parameters for ease of debugging.
386   --
387   IF g_debug THEN
388 
389     hr_utility.trace(' ');
390     hr_utility.trace(' --------------------------------'||
391                      '---------------------------------');
392     hr_utility.trace(' IN OUT / OUT PARAMETER          '||
393                      ' VALUE');
394     hr_utility.trace(' --------------------------------'||
395                      '+--------------------------------');
396     hr_utility.trace(' ');
397     hr_utility.set_location(' Leaving:'||l_proc, 970);
398 
399   END IF;
400 
401 exception
402   when hr_api.validate_enabled then
403     --
404     -- As the Validate_Enabled exception has been raised
405     -- we must rollback to the savepoint
406     --
407     rollback to delete_sharing_instance;
408     hr_utility.set_location(' Leaving:'||l_proc, 980);
409   when others then
410     --
411     -- A validation or unexpected error has occured
412     --
413     rollback to delete_sharing_instance;
414     hr_utility.set_location(' Leaving:'||l_proc, 990);
415     raise;
416 end delete_sharing_instance;
417 --
418 end hr_scorecard_sharing_api;