DBA Data[Home] [Help]

PACKAGE BODY: APPS.OTA_ANNOUNCEMENT_SWI

Source


1 Package Body ota_announcement_swi As
2 /* $Header: otancswi.pkb 115.1 2003/12/30 17:46:54 dhmulia noship $ */
3 --
4 -- Package variables
5 --
6 g_package  varchar2(33) := 'ota_announcement_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< create_announcement >-------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_announcement
12   (p_validate                     in     number    default hr_api.g_false_num
13   ,p_effective_date               in     date
14   ,p_announcement_title           in     varchar2
15   ,p_announcement_body            in     varchar2
16   ,p_business_group_id            in     number
17   ,p_start_date_active            in     date      default null
18   ,p_end_date_active              in     date      default null
19   ,p_owner_id                     in     number    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_announcement_id              in     number
42   ,p_object_version_number           out nocopy number
43   ,p_return_status                   out nocopy varchar2
44   ) is
45   --
46   -- Variables for API Boolean parameters
47   l_validate                      boolean;
48   --
49   -- Variables for IN/OUT parameters
50   --
51   -- Other variables
52   l_announcement_id              number;
53   l_proc    varchar2(72) := g_package ||'create_announcement';
54 Begin
55   hr_utility.set_location(' Entering:' || l_proc,10);
56   --
57   -- Issue a savepoint
58   --
59   savepoint create_announcement_swi;
60   --
61   -- Initialise Multiple Message Detection
62   --
63   hr_multi_message.enable_message_list;
64   --
65   -- Remember IN OUT parameter IN values
66   --
67   --
68   -- Convert constant values to their corresponding boolean value
69   --
70   l_validate :=
71     hr_api.constant_to_boolean
72       (p_constant_value => p_validate);
73   --
74   -- Register Surrogate ID or user key values
75   --
76   ota_anc_ins.set_base_key_value
77     (p_announcement_id => p_announcement_id
78     );
79   --
80   -- Call API
81   --
82   ota_announcement_api.create_announcement
83     (p_validate                     => l_validate
84     ,p_effective_date               => p_effective_date
85     ,p_announcement_title           => p_announcement_title
86     ,p_announcement_body            => p_announcement_body
87     ,p_business_group_id            => p_business_group_id
88     ,p_start_date_active            => p_start_date_active
89     ,p_end_date_active              => p_end_date_active
90     ,p_owner_id                     => p_owner_id
91     ,p_attribute_category           => p_attribute_category
92     ,p_attribute1                   => p_attribute1
93     ,p_attribute2                   => p_attribute2
94     ,p_attribute3                   => p_attribute3
95     ,p_attribute4                   => p_attribute4
96     ,p_attribute5                   => p_attribute5
97     ,p_attribute6                   => p_attribute6
98     ,p_attribute7                   => p_attribute7
99     ,p_attribute8                   => p_attribute8
100     ,p_attribute9                   => p_attribute9
101     ,p_attribute10                  => p_attribute10
102     ,p_attribute11                  => p_attribute11
103     ,p_attribute12                  => p_attribute12
104     ,p_attribute13                  => p_attribute13
105     ,p_attribute14                  => p_attribute14
106     ,p_attribute15                  => p_attribute15
107     ,p_attribute16                  => p_attribute16
108     ,p_attribute17                  => p_attribute17
109     ,p_attribute18                  => p_attribute18
110     ,p_attribute19                  => p_attribute19
111     ,p_attribute20                  => p_attribute20
112     ,p_announcement_id              => l_announcement_id
113     ,p_object_version_number        => p_object_version_number
114     );
115   --
116   -- Convert API warning boolean parameter values to specific
117   -- messages and add them to Multiple Message List
118   --
119   --
120   -- Convert API non-warning boolean parameter values
121   --
122   --
123   -- Derive the API return status value based on whether
124   -- messages of any type exist in the Multiple Message List.
125   -- Also disable Multiple Message Detection.
126   --
127   p_return_status := hr_multi_message.get_return_status_disable;
128   hr_utility.set_location(' Leaving:' || l_proc,20);
129   --
130 exception
131   when hr_multi_message.error_message_exist then
132     --
133     -- Catch the Multiple Message List exception which
134     -- indicates API processing has been aborted because
135     -- at least one message exists in the list.
136     --
137     rollback to create_announcement_swi;
138     --
139     -- Reset IN OUT parameters and set OUT parameters
140     --
141     p_object_version_number        := null;
142     p_return_status := hr_multi_message.get_return_status_disable;
143     hr_utility.set_location(' Leaving:' || l_proc, 30);
144   when others then
145     --
146     -- When Multiple Message Detection is enabled catch
147     -- any Application specific or other unexpected
148     -- exceptions.  Adding appropriate details to the
149     -- Multiple Message List.  Otherwise re-raise the
150     -- error.
151     --
152     rollback to create_announcement_swi;
153     if hr_multi_message.unexpected_error_add(l_proc) then
154        hr_utility.set_location(' Leaving:' || l_proc,40);
155        raise;
156     end if;
157     --
158     -- Reset IN OUT and set OUT parameters
159     --
160     p_object_version_number        := null;
161     p_return_status := hr_multi_message.get_return_status_disable;
162     hr_utility.set_location(' Leaving:' || l_proc,50);
163 end create_announcement;
164 -- ----------------------------------------------------------------------------
165 -- |--------------------------< delete_announcement >-------------------------|
166 -- ----------------------------------------------------------------------------
167 PROCEDURE delete_announcement
168   (p_validate                     in     number    default hr_api.g_false_num
169   ,p_announcement_id              in     number
170   ,p_object_version_number        in     number
171   ,p_return_status                   out nocopy varchar2
172   ) is
173   --
174   -- Variables for API Boolean parameters
175   l_validate                      boolean;
176   --
177   -- Variables for IN/OUT parameters
178   --
179   -- Other variables
180   l_proc    varchar2(72) := g_package ||'delete_announcement';
181 Begin
182   hr_utility.set_location(' Entering:' || l_proc,10);
183   --
184   -- Issue a savepoint
185   --
186   savepoint delete_announcement_swi;
187   --
188   -- Initialise Multiple Message Detection
189   --
190   hr_multi_message.enable_message_list;
191   --
192   -- Remember IN OUT parameter IN values
193   --
194   --
195   -- Convert constant values to their corresponding boolean value
196   --
197   l_validate :=
198     hr_api.constant_to_boolean
199       (p_constant_value => p_validate);
200   --
201   -- Register Surrogate ID or user key values
202   --
203   --
204   -- Call API
205   --
206   ota_announcement_api.delete_announcement
207     (p_validate                     => l_validate
208     ,p_announcement_id              => p_announcement_id
209     ,p_object_version_number        => p_object_version_number
210     );
211   --
212   -- Convert API warning boolean parameter values to specific
213   -- messages and add them to Multiple Message List
214   --
215   --
216   -- Convert API non-warning boolean parameter values
217   --
218   --
219   -- Derive the API return status value based on whether
220   -- messages of any type exist in the Multiple Message List.
221   -- Also disable Multiple Message Detection.
222   --
223   p_return_status := hr_multi_message.get_return_status_disable;
224   hr_utility.set_location(' Leaving:' || l_proc,20);
225   --
226 exception
227   when hr_multi_message.error_message_exist then
228     --
229     -- Catch the Multiple Message List exception which
230     -- indicates API processing has been aborted because
231     -- at least one message exists in the list.
232     --
233     rollback to delete_announcement_swi;
234     --
235     -- Reset IN OUT parameters and set OUT parameters
236     --
237     p_return_status := hr_multi_message.get_return_status_disable;
238     hr_utility.set_location(' Leaving:' || l_proc, 30);
239   when others then
240     --
241     -- When Multiple Message Detection is enabled catch
242     -- any Application specific or other unexpected
243     -- exceptions.  Adding appropriate details to the
244     -- Multiple Message List.  Otherwise re-raise the
245     -- error.
246     --
247     rollback to delete_announcement_swi;
248     if hr_multi_message.unexpected_error_add(l_proc) then
249        hr_utility.set_location(' Leaving:' || l_proc,40);
250        raise;
251     end if;
252     --
253     -- Reset IN OUT and set OUT parameters
254     --
255     p_return_status := hr_multi_message.get_return_status_disable;
256     hr_utility.set_location(' Leaving:' || l_proc,50);
257 end delete_announcement;
258 -- ----------------------------------------------------------------------------
259 -- |--------------------------< update_announcement >-------------------------|
260 -- ----------------------------------------------------------------------------
261 PROCEDURE update_announcement
262   (p_validate                     in     number    default hr_api.g_false_num
263   ,p_effective_date               in     date
264   ,p_announcement_title           in     varchar2
265   ,p_announcement_body            in     varchar2
266   ,p_business_group_id            in     number
267   ,p_start_date_active            in     date      default hr_api.g_date
268   ,p_end_date_active              in     date      default hr_api.g_date
269   ,p_owner_id                     in     number    default hr_api.g_number
270   ,p_attribute_category           in     varchar2  default hr_api.g_varchar2
271   ,p_attribute1                   in     varchar2  default hr_api.g_varchar2
272   ,p_attribute2                   in     varchar2  default hr_api.g_varchar2
273   ,p_attribute3                   in     varchar2  default hr_api.g_varchar2
274   ,p_attribute4                   in     varchar2  default hr_api.g_varchar2
275   ,p_attribute5                   in     varchar2  default hr_api.g_varchar2
276   ,p_attribute6                   in     varchar2  default hr_api.g_varchar2
277   ,p_attribute7                   in     varchar2  default hr_api.g_varchar2
278   ,p_attribute8                   in     varchar2  default hr_api.g_varchar2
279   ,p_attribute9                   in     varchar2  default hr_api.g_varchar2
280   ,p_attribute10                  in     varchar2  default hr_api.g_varchar2
281   ,p_attribute11                  in     varchar2  default hr_api.g_varchar2
282   ,p_attribute12                  in     varchar2  default hr_api.g_varchar2
283   ,p_attribute13                  in     varchar2  default hr_api.g_varchar2
284   ,p_attribute14                  in     varchar2  default hr_api.g_varchar2
285   ,p_attribute15                  in     varchar2  default hr_api.g_varchar2
286   ,p_attribute16                  in     varchar2  default hr_api.g_varchar2
287   ,p_attribute17                  in     varchar2  default hr_api.g_varchar2
288   ,p_attribute18                  in     varchar2  default hr_api.g_varchar2
289   ,p_attribute19                  in     varchar2  default hr_api.g_varchar2
290   ,p_attribute20                  in     varchar2  default hr_api.g_varchar2
291   ,p_announcement_id              in     number
292   ,p_object_version_number        in out nocopy number
293   ,p_return_status                   out nocopy varchar2
294   ) is
295   --
296   -- Variables for API Boolean parameters
297   l_validate                      boolean;
298   --
299   -- Variables for IN/OUT parameters
300   l_object_version_number         number;
301   --
302   -- Other variables
303   l_proc    varchar2(72) := g_package ||'update_announcement';
304 Begin
305   hr_utility.set_location(' Entering:' || l_proc,10);
306   --
307   -- Issue a savepoint
308   --
309   savepoint update_announcement_swi;
310   --
311   -- Initialise Multiple Message Detection
312   --
313   hr_multi_message.enable_message_list;
314   --
315   -- Remember IN OUT parameter IN values
316   --
317   l_object_version_number         := p_object_version_number;
318   --
319   -- Convert constant values to their corresponding boolean value
320   --
321   l_validate :=
322     hr_api.constant_to_boolean
323       (p_constant_value => p_validate);
324   --
325   -- Register Surrogate ID or user key values
326   --
327   --
328   -- Call API
329   --
330   ota_announcement_api.update_announcement
331     (p_validate                     => l_validate
332     ,p_effective_date               => p_effective_date
333     ,p_announcement_title           => p_announcement_title
334     ,p_announcement_body            => p_announcement_body
335     ,p_business_group_id            => p_business_group_id
336     ,p_start_date_active            => p_start_date_active
337     ,p_end_date_active              => p_end_date_active
338     ,p_owner_id                     => p_owner_id
339     ,p_attribute_category           => p_attribute_category
340     ,p_attribute1                   => p_attribute1
341     ,p_attribute2                   => p_attribute2
342     ,p_attribute3                   => p_attribute3
343     ,p_attribute4                   => p_attribute4
344     ,p_attribute5                   => p_attribute5
345     ,p_attribute6                   => p_attribute6
346     ,p_attribute7                   => p_attribute7
347     ,p_attribute8                   => p_attribute8
348     ,p_attribute9                   => p_attribute9
349     ,p_attribute10                  => p_attribute10
350     ,p_attribute11                  => p_attribute11
351     ,p_attribute12                  => p_attribute12
352     ,p_attribute13                  => p_attribute13
353     ,p_attribute14                  => p_attribute14
354     ,p_attribute15                  => p_attribute15
355     ,p_attribute16                  => p_attribute16
356     ,p_attribute17                  => p_attribute17
357     ,p_attribute18                  => p_attribute18
358     ,p_attribute19                  => p_attribute19
359     ,p_attribute20                  => p_attribute20
360     ,p_announcement_id              => p_announcement_id
361     ,p_object_version_number        => p_object_version_number
362     );
363   --
364   -- Convert API warning boolean parameter values to specific
365   -- messages and add them to Multiple Message List
366   --
367   --
368   -- Convert API non-warning boolean parameter values
369   --
370   --
371   -- Derive the API return status value based on whether
372   -- messages of any type exist in the Multiple Message List.
373   -- Also disable Multiple Message Detection.
374   --
375   p_return_status := hr_multi_message.get_return_status_disable;
376   hr_utility.set_location(' Leaving:' || l_proc,20);
377   --
378 exception
379   when hr_multi_message.error_message_exist then
380     --
381     -- Catch the Multiple Message List exception which
382     -- indicates API processing has been aborted because
383     -- at least one message exists in the list.
384     --
385     rollback to update_announcement_swi;
386     --
387     -- Reset IN OUT parameters and set OUT parameters
388     --
389     p_object_version_number        := l_object_version_number;
390     p_return_status := hr_multi_message.get_return_status_disable;
391     hr_utility.set_location(' Leaving:' || l_proc, 30);
392   when others then
393     --
394     -- When Multiple Message Detection is enabled catch
395     -- any Application specific or other unexpected
396     -- exceptions.  Adding appropriate details to the
397     -- Multiple Message List.  Otherwise re-raise the
398     -- error.
399     --
400     rollback to update_announcement_swi;
401     if hr_multi_message.unexpected_error_add(l_proc) then
402        hr_utility.set_location(' Leaving:' || l_proc,40);
403        raise;
404     end if;
405     --
406     -- Reset IN OUT and set OUT parameters
407     --
408     p_object_version_number        := l_object_version_number;
409     p_return_status := hr_multi_message.get_return_status_disable;
410     hr_utility.set_location(' Leaving:' || l_proc,50);
411 end update_announcement;
412 end ota_announcement_swi;