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