DBA Data[Home] [Help]

PACKAGE BODY: APPS.OTA_COURSE_PREREQUISITE_SWI

Source


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