[Home] [Help]
PACKAGE BODY: APPS.PAY_USER_COLUMN_SWI
Source
1 Package Body pay_user_column_swi As
2 /* $Header: pypucswi.pkb 120.0 2005/05/29 07:59 appldev noship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'pay_user_column_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |--------------------------< create_user_column >--------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_user_column
12 (p_validate in number default hr_api.g_false_num
13 ,p_business_group_id in number default null
14 ,p_legislation_code in varchar2 default null
15 ,p_user_table_id in number
16 ,p_formula_id in number default null
17 ,p_user_column_name in varchar2
18 ,p_user_column_id out nocopy number
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_proc varchar2(72) := g_package ||'create_user_column';
30 Begin
31 hr_utility.set_location(' Entering:' || l_proc,10);
32 --
33 -- Issue a savepoint
34 --
35 savepoint create_user_column_swi;
36 --
37 -- Initialise Multiple Message Detection
38 --
39 hr_multi_message.enable_message_list;
40 --
41 -- Remember IN OUT parameter IN values
42 --
43 --
44 -- Convert constant values to their corresponding boolean value
45 --
46 l_validate :=
47 hr_api.constant_to_boolean
48 (p_constant_value => p_validate);
49 --
50 -- Register Surrogate ID or user key values
51 --
52 --
53 -- Call API
54 --
55 pay_user_column_api.create_user_column
56 (p_validate => l_validate
57 ,p_business_group_id => p_business_group_id
58 ,p_legislation_code => p_legislation_code
59 ,p_user_table_id => p_user_table_id
60 ,p_formula_id => p_formula_id
61 ,p_user_column_name => p_user_column_name
62 ,p_user_column_id => p_user_column_id
63 ,p_object_version_number => p_object_version_number
64 );
65 --
66 -- Convert API warning boolean parameter values to specific
67 -- messages and add them to Multiple Message List
68 --
69 --
70 -- Convert API non-warning boolean parameter values
71 --
72 --
73 -- Derive the API return status value based on whether
74 -- messages of any type exist in the Multiple Message List.
75 -- Also disable Multiple Message Detection.
76 --
77 p_return_status := hr_multi_message.get_return_status_disable;
78 hr_utility.set_location(' Leaving:' || l_proc,20);
79 --
80 exception
81 when hr_multi_message.error_message_exist then
82 --
83 -- Catch the Multiple Message List exception which
84 -- indicates API processing has been aborted because
85 -- at least one message exists in the list.
86 --
87 rollback to create_user_column_swi;
88 --
89 -- Reset IN OUT parameters and set OUT parameters
90 --
91 p_user_column_id := null;
92 p_object_version_number := null;
93 p_return_status := hr_multi_message.get_return_status_disable;
94 hr_utility.set_location(' Leaving:' || l_proc, 30);
95 when others then
96 --
97 -- When Multiple Message Detection is enabled catch
98 -- any Application specific or other unexpected
99 -- exceptions. Adding appropriate details to the
100 -- Multiple Message List. Otherwise re-raise the
101 -- error.
102 --
103 rollback to create_user_column_swi;
104 if hr_multi_message.unexpected_error_add(l_proc) then
105 hr_utility.set_location(' Leaving:' || l_proc,40);
106 raise;
107 end if;
108 --
109 -- Reset IN OUT and set OUT parameters
110 --
111 p_user_column_id := null;
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_user_column;
116 -- ----------------------------------------------------------------------------
117 -- |--------------------------< update_user_column >--------------------------|
118 -- ----------------------------------------------------------------------------
119 PROCEDURE update_user_column
120 (p_validate in number default hr_api.g_false_num
121 ,p_user_column_id in number
122 ,p_user_column_name in varchar2 default hr_api.g_varchar2
123 ,p_formula_id in number default hr_api.g_number
124 ,p_object_version_number in out nocopy number
125 ,p_return_status out nocopy varchar2
126 ) is
127 --
128 -- Variables for API Boolean parameters
129 l_validate boolean;
130 l_formula_warning boolean;
131 --
132 -- Variables for IN/OUT parameters
133 l_object_version_number number;
134 --
135 -- Other variables
136 l_proc varchar2(72) := g_package ||'update_user_column';
137 Begin
138 hr_utility.set_location(' Entering:' || l_proc,10);
139 --
140 -- Issue a savepoint
141 --
142 savepoint update_user_column_swi;
143 --
144 -- Initialise Multiple Message Detection
145 --
146 hr_multi_message.enable_message_list;
147 --
148 -- Remember IN OUT parameter IN values
149 --
150 l_object_version_number := p_object_version_number;
151 --
152 -- Convert constant values to their corresponding boolean value
153 --
154 l_validate :=
155 hr_api.constant_to_boolean
156 (p_constant_value => p_validate);
157 --
158 -- Register Surrogate ID or user key values
159 --
160 --
161 -- Call API
162 --
163 pay_user_column_api.update_user_column
164 (p_validate => l_validate
165 ,p_user_column_id => p_user_column_id
166 ,p_user_column_name => p_user_column_name
167 ,p_formula_id => p_formula_id
168 ,p_object_version_number => p_object_version_number
169 ,p_formula_warning => l_formula_warning
170 );
171 --
172 -- Convert API warning boolean parameter values to specific
173 -- messages and add them to Multiple Message List
174 --
175 if l_formula_warning then
176 fnd_message.set_name('PAY', 'PAY_33176_UCOL_FF_NOT_FOUND ');
177 hr_multi_message.add
178 (p_message_type => hr_multi_message.g_warning_msg
179 );
180 end if; --
181 -- Convert API non-warning boolean parameter values
182 --
183 --
184 -- Derive the API return status value based on whether
185 -- messages of any type exist in the Multiple Message List.
186 -- Also disable Multiple Message Detection.
187 --
188 p_return_status := hr_multi_message.get_return_status_disable;
189 hr_utility.set_location(' Leaving:' || l_proc,20);
190 --
191 exception
192 when hr_multi_message.error_message_exist then
193 --
194 -- Catch the Multiple Message List exception which
195 -- indicates API processing has been aborted because
196 -- at least one message exists in the list.
197 --
198 rollback to update_user_column_swi;
199 --
200 -- Reset IN OUT parameters and set OUT parameters
201 --
202 p_object_version_number := l_object_version_number;
203 p_return_status := hr_multi_message.get_return_status_disable;
204 hr_utility.set_location(' Leaving:' || l_proc, 30);
205 when others then
206 --
207 -- When Multiple Message Detection is enabled catch
208 -- any Application specific or other unexpected
209 -- exceptions. Adding appropriate details to the
210 -- Multiple Message List. Otherwise re-raise the
211 -- error.
212 --
213 rollback to update_user_column_swi;
214 if hr_multi_message.unexpected_error_add(l_proc) then
215 hr_utility.set_location(' Leaving:' || l_proc,40);
216 raise;
217 end if;
218 --
219 -- Reset IN OUT and set OUT parameters
220 --
221 p_object_version_number := l_object_version_number;
222 p_return_status := hr_multi_message.get_return_status_disable;
223 hr_utility.set_location(' Leaving:' || l_proc,50);
224 end update_user_column;
225 -- ----------------------------------------------------------------------------
226 -- |--------------------------< delete_user_column >--------------------------|
227 -- ----------------------------------------------------------------------------
228 PROCEDURE delete_user_column
229 (p_validate in number default hr_api.g_false_num
230 ,p_user_column_id in number
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 ||'delete_user_column';
243 Begin
244 hr_utility.set_location(' Entering:' || l_proc,10);
245 --
246 -- Issue a savepoint
247 --
248 savepoint delete_user_column_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 pay_user_column_api.delete_user_column
270 (p_validate => l_validate
271 ,p_user_column_id => p_user_column_id
272 ,p_object_version_number => p_object_version_number
273 );
274 --
275 -- Convert API warning boolean parameter values to specific
276 -- messages and add them to Multiple Message List
277 --
278 --
279 -- Convert API non-warning boolean parameter values
280 --
281 --
282 -- Derive the API return status value based on whether
283 -- messages of any type exist in the Multiple Message List.
284 -- Also disable Multiple Message Detection.
285 --
286 p_return_status := hr_multi_message.get_return_status_disable;
287 hr_utility.set_location(' Leaving:' || l_proc,20);
288 --
289 exception
290 when hr_multi_message.error_message_exist then
291 --
292 -- Catch the Multiple Message List exception which
293 -- indicates API processing has been aborted because
294 -- at least one message exists in the list.
295 --
296 rollback to delete_user_column_swi;
297 --
298 -- Reset IN OUT parameters and set OUT parameters
299 --
300 p_object_version_number := l_object_version_number;
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_user_column_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_object_version_number := l_object_version_number;
320 p_return_status := hr_multi_message.get_return_status_disable;
321 hr_utility.set_location(' Leaving:' || l_proc,50);
322 end delete_user_column;
323 end pay_user_column_swi;