DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_RI_WORKBENCH_ITEM_SWI

Source


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