[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;