[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;