DBA Data[Home] [Help]

PACKAGE BODY: APPS.OTA_FRM_OBJ_INCLUSION_SWI

Source


1 Package Body ota_frm_obj_inclusion_swi As
2 /* $Header: otfoiswi.pkb 120.1 2005/08/05 12:25 asud noship $ */
3 --
4 -- Package variables
5 --
6 g_package  varchar2(33) := 'ota_frm_obj_inclusion_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-----------------------< create_frm_obj_inclusion >-----------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_frm_obj_inclusion
12   (p_validate                     in     number    default hr_api.g_false_num
13   ,p_effective_date               in     date
14   ,p_object_id                    in     number
15   ,p_object_type                  in     varchar2
16   ,p_primary_flag                 in     varchar2
17   ,p_start_date_active            in     date      default null
18   ,p_end_date_active              in     date      default null
19   ,p_forum_id                     in     number
20   ,p_object_version_number           out nocopy number
21   ,p_return_status                   out nocopy varchar2
22   ) is
23   --
24   -- Variables for API Boolean parameters
25   l_validate                      boolean;
26   --
27   -- Variables for IN/OUT parameters
28   --
29   -- Other variables
30   l_proc    varchar2(72) := g_package ||'create_frm_obj_inclusion';
31 Begin
32   hr_utility.set_location(' Entering:' || l_proc,10);
33   --
34   -- Issue a savepoint
35   --
36   savepoint create_frm_obj_inclusion_swi;
37   --
38   -- Initialise Multiple Message Detection
39   --
40   hr_multi_message.enable_message_list;
41   --
42   -- Remember IN OUT parameter IN values
43   --
44   --
45   -- Convert constant values to their corresponding boolean value
46   --
47   l_validate :=
48     hr_api.constant_to_boolean
49       (p_constant_value => p_validate);
50   --
51   -- Register Surrogate ID or user key values
52   --
53   --
54   -- Call API
55   --
56   ota_frm_obj_inclusion_api.create_frm_obj_inclusion
57     (p_validate                     => l_validate
58     ,p_effective_date               => p_effective_date
59     ,p_object_id                    => p_object_id
60     ,p_object_type                  => p_object_type
61     ,p_primary_flag                 => p_primary_flag
62     ,p_start_date_active            => p_start_date_active
63     ,p_end_date_active              => p_end_date_active
64     ,p_forum_id                     => p_forum_id
65     ,p_object_version_number        => p_object_version_number
66     );
67   --
68   -- Convert API warning boolean parameter values to specific
69   -- messages and add them to Multiple Message List
70   --
71   --
72   -- Convert API non-warning boolean parameter values
73   --
74   --
75   -- Derive the API return status value based on whether
76   -- messages of any type exist in the Multiple Message List.
77   -- Also disable Multiple Message Detection.
78   --
79   p_return_status := hr_multi_message.get_return_status_disable;
80   hr_utility.set_location(' Leaving:' || l_proc,20);
81   --
82 exception
83   when hr_multi_message.error_message_exist then
84     --
85     -- Catch the Multiple Message List exception which
86     -- indicates API processing has been aborted because
87     -- at least one message exists in the list.
88     --
89     rollback to create_frm_obj_inclusion_swi;
90     --
91     -- Reset IN OUT parameters and set OUT parameters
92     --
93     p_object_version_number        := null;
94     p_return_status := hr_multi_message.get_return_status_disable;
95     hr_utility.set_location(' Leaving:' || l_proc, 30);
96   when others then
97     --
98     -- When Multiple Message Detection is enabled catch
99     -- any Application specific or other unexpected
100     -- exceptions.  Adding appropriate details to the
101     -- Multiple Message List.  Otherwise re-raise the
102     -- error.
103     --
104     rollback to create_frm_obj_inclusion_swi;
105     if hr_multi_message.unexpected_error_add(l_proc) then
106        hr_utility.set_location(' Leaving:' || l_proc,40);
107        raise;
108     end if;
109     --
110     -- Reset IN OUT and set OUT parameters
111     --
112     p_object_version_number        := null;
113     p_return_status := hr_multi_message.get_return_status_disable;
114     hr_utility.set_location(' Leaving:' || l_proc,50);
115 end create_frm_obj_inclusion;
116 --
117 -- ----------------------------------------------------------------------------
118 -- |-----------------------< update_frm_obj_inclusion >-----------------------|
119 -- ----------------------------------------------------------------------------
120 PROCEDURE update_frm_obj_inclusion
121   (p_validate                     in     number    default hr_api.g_false_num
122   ,p_effective_date               in     date
123   ,p_object_id                    in     number
124   ,p_object_type                  in     varchar2
125   ,p_primary_flag                 in     varchar2  default hr_api.g_varchar2
126   ,p_start_date_active            in     date      default hr_api.g_date
127   ,p_end_date_active              in     date      default hr_api.g_date
128   ,p_forum_id                     in     number
129   ,p_object_version_number        in out nocopy number
130   ,p_return_status                   out nocopy varchar2
131   ) is
132   --
133   -- Variables for API Boolean parameters
134   l_validate                      boolean;
135   --
136   -- Variables for IN/OUT parameters
137   --
138   -- Other variables
139   l_proc    varchar2(72) := g_package ||'update_frm_obj_inclusion';
140   l_effective_date date := trunc(p_effective_date);
141   l_object_version_number number := p_object_version_number;
142 
143 
144 Begin
145   hr_utility.set_location(' Entering:' || l_proc,10);
146   --
147   -- Issue a savepoint
148   --
149   savepoint update_frm_obj_inclusion_swi;
150   --
151   -- Initialise Multiple Message Detection
152   --
153   hr_multi_message.enable_message_list;
154   --
155   --
156   -- Convert constant values to their corresponding boolean value
157   --
158   l_validate :=
159     hr_api.constant_to_boolean
160       (p_constant_value => p_validate);
161   --
162   -- Register Surrogate ID or user key values
163   --
164   --
165   -- Call API
166   --
167   ota_frm_obj_inclusion_api.update_frm_obj_inclusion
168     (p_validate                     => l_validate
169     ,p_effective_date               => l_effective_date
170     ,p_object_id                    => p_object_id
171     ,p_object_type                  => p_object_type
172     ,p_primary_flag                 => p_primary_flag
173     ,p_start_date_active            => p_start_date_active
174     ,p_end_date_active              => p_end_date_active
175     ,p_forum_id                     => p_forum_id
176     ,p_object_version_number        => l_object_version_number
177     );
178   --
179   -- Convert API warning boolean parameter values to specific
180   -- messages and add them to Multiple Message List
181   --
182   --
183   -- Convert API non-warning boolean parameter values
184   --
185   --
186   -- Derive the API return status value based on whether
187   -- messages of any type exist in the Multiple Message List.
188   -- Also disable Multiple Message Detection.
189   --
190   p_return_status := hr_multi_message.get_return_status_disable;
191   hr_utility.set_location(' Leaving:' || l_proc,20);
192   --
193 exception
194   when hr_multi_message.error_message_exist then
195     --
196     -- Catch the Multiple Message List exception which
197     -- indicates API processing has been aborted because
198     -- at least one message exists in the list.
199     --
200     rollback to update_frm_obj_inclusion_swi;
201     --
202     -- Reset IN OUT parameters and set OUT parameters
203     --
204     p_object_version_number        := l_object_version_number;
205     p_return_status := hr_multi_message.get_return_status_disable;
206     hr_utility.set_location(' Leaving:' || l_proc, 30);
207   when others then
208     --
209     -- When Multiple Message Detection is enabled catch
210     -- any Application specific or other unexpected
211     -- exceptions.  Adding appropriate details to the
212     -- Multiple Message List.  Otherwise re-raise the
213     -- error.
214     --
215     rollback to update_frm_obj_inclusion_swi;
216     if hr_multi_message.unexpected_error_add(l_proc) then
217        hr_utility.set_location(' Leaving:' || l_proc,40);
218        raise;
219     end if;
220     --
221     -- Reset IN OUT and set OUT parameters
222     --
223     p_object_version_number        := l_object_version_number;
224     p_return_status := hr_multi_message.get_return_status_disable;
225     hr_utility.set_location(' Leaving:' || l_proc,50);
226 end update_frm_obj_inclusion;
227 --
228 -- ----------------------------------------------------------------------------
229 -- |-----------------------< delete_frm_obj_inclusion >-----------------------|
230 -- ----------------------------------------------------------------------------
231 PROCEDURE delete_frm_obj_inclusion
232   (p_validate                     in     number    default hr_api.g_false_num
233   ,p_forum_id                     in     number
234   ,p_object_id                    in     number
235   ,p_object_type                  in     varchar2
236   ,p_object_version_number        in     number
237   ,p_return_status                   out nocopy varchar2
238   ) is
239   --
240   -- Variables for API Boolean parameters
241   l_validate                      boolean;
242   --
243   -- Variables for IN/OUT parameters
244   --
245   -- Other variables
246   l_proc    varchar2(72) := g_package ||'delete_frm_obj_inclusion';
247 Begin
248   hr_utility.set_location(' Entering:' || l_proc,10);
249   --
250   -- Issue a savepoint
251   --
252   savepoint delete_frm_obj_inclusion_swi;
253   --
254   -- Initialise Multiple Message Detection
255   --
256   hr_multi_message.enable_message_list;
257   --
258   -- Remember IN OUT parameter IN values
259   --
260   --
261   -- Convert constant values to their corresponding boolean value
262   --
263   l_validate :=
264     hr_api.constant_to_boolean
265       (p_constant_value => p_validate);
266   --
267   -- Register Surrogate ID or user key values
268   --
269   --
270   -- Call API
271   --
272   ota_frm_obj_inclusion_api.delete_frm_obj_inclusion
273     (p_validate                     => l_validate
274     ,p_forum_id                     => p_forum_id
275     ,p_object_id                    => p_object_id
276     ,p_object_type                  => p_object_type
277     ,p_object_version_number        => p_object_version_number
278     );
279   --
280   -- Convert API warning boolean parameter values to specific
281   -- messages and add them to Multiple Message List
282   --
283   --
284   -- Convert API non-warning boolean parameter values
285   --
286   --
287   -- Derive the API return status value based on whether
288   -- messages of any type exist in the Multiple Message List.
289   -- Also disable Multiple Message Detection.
290   --
291   p_return_status := hr_multi_message.get_return_status_disable;
292   hr_utility.set_location(' Leaving:' || l_proc,20);
293   --
294 exception
295   when hr_multi_message.error_message_exist then
296     --
297     -- Catch the Multiple Message List exception which
298     -- indicates API processing has been aborted because
299     -- at least one message exists in the list.
300     --
301     rollback to delete_frm_obj_inclusion_swi;
302     --
303     -- Reset IN OUT parameters and set OUT parameters
304     --
305     p_return_status := hr_multi_message.get_return_status_disable;
306     hr_utility.set_location(' Leaving:' || l_proc, 30);
307   when others then
308     --
309     -- When Multiple Message Detection is enabled catch
310     -- any Application specific or other unexpected
311     -- exceptions.  Adding appropriate details to the
312     -- Multiple Message List.  Otherwise re-raise the
313     -- error.
314     --
315     rollback to delete_frm_obj_inclusion_swi;
316     if hr_multi_message.unexpected_error_add(l_proc) then
317        hr_utility.set_location(' Leaving:' || l_proc,40);
318        raise;
319     end if;
320     --
321     -- Reset IN OUT and set OUT parameters
322     --
323     p_return_status := hr_multi_message.get_return_status_disable;
324     hr_utility.set_location(' Leaving:' || l_proc,50);
325 end delete_frm_obj_inclusion;
326 end ota_frm_obj_inclusion_swi;