DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_AU_PROCESSES_SWI

Source


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