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