[Home] [Help]
PACKAGE BODY: APPS.IRC_REFERRAL_INFO_SWI
Source
1 PACKAGE BODY IRC_REFERRAL_INFO_SWI As
2 /* $Header: irirfswi.pkb 120.2 2008/04/23 03:41:46 vmummidi noship $ */
3 --
4 -- Package variables
5 --
6 g_package varchar2(33) := 'irc_referral_info_swi.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-------------------------< create_referral_info >-------------------------|
10 -- ----------------------------------------------------------------------------
11 PROCEDURE create_referral_info
12 (p_validate in number default hr_api.g_false_num
13 ,p_object_id in number
14 ,p_object_type in varchar2
15 ,p_source_type in varchar2 default null
16 ,p_source_name in varchar2 default null
17 ,p_source_criteria1 in varchar2 default null
18 ,p_source_value1 in varchar2 default null
19 ,p_source_criteria2 in varchar2 default null
20 ,p_source_value2 in varchar2 default null
21 ,p_source_criteria3 in varchar2 default null
22 ,p_source_value3 in varchar2 default null
23 ,p_source_criteria4 in varchar2 default null
24 ,p_source_value4 in varchar2 default null
25 ,p_source_criteria5 in varchar2 default null
26 ,p_source_value5 in varchar2 default null
27 ,p_source_person_id in number default null
28 ,p_candidate_comment in varchar2 default null
29 ,p_employee_comment in varchar2 default null
30 ,p_irf_attribute_category in varchar2 default null
31 ,p_irf_attribute1 in varchar2 default null
32 ,p_irf_attribute2 in varchar2 default null
33 ,p_irf_attribute3 in varchar2 default null
34 ,p_irf_attribute4 in varchar2 default null
35 ,p_irf_attribute5 in varchar2 default null
36 ,p_irf_attribute6 in varchar2 default null
37 ,p_irf_attribute7 in varchar2 default null
38 ,p_irf_attribute8 in varchar2 default null
39 ,p_irf_attribute9 in varchar2 default null
40 ,p_irf_attribute10 in varchar2 default null
41 ,p_irf_information_category in varchar2 default null
42 ,p_irf_information1 in varchar2 default null
43 ,p_irf_information2 in varchar2 default null
44 ,p_irf_information3 in varchar2 default null
45 ,p_irf_information4 in varchar2 default null
46 ,p_irf_information5 in varchar2 default null
47 ,p_irf_information6 in varchar2 default null
48 ,p_irf_information7 in varchar2 default null
49 ,p_irf_information8 in varchar2 default null
50 ,p_irf_information9 in varchar2 default null
51 ,p_irf_information10 in varchar2 default null
52 ,p_object_created_by in varchar2 default null
53 ,p_referral_info_id in number
54 ,p_object_version_number out nocopy number
55 ,p_start_date out nocopy date
56 ,p_end_date out nocopy date
57 ,p_return_status out nocopy varchar2
58 ) is
59 --
60 -- Variables for API Boolean parameters
61 l_validate boolean;
62 --
63 -- Variables for IN/OUT parameters
64 --
65 -- Other variables
66 l_referral_info_id number;
67 l_proc varchar2(72) := g_package ||'create_referral_info';
68 --
69 Cursor csr_get_party_id
70 is SELECT PARTY_ID FROM PER_ALL_PEOPLE_F
71 WHERE PERSON_ID=p_object_id;
72 --
73 l_party_id number;
74 Begin
75 hr_utility.set_location(' Entering:' || l_proc,10);
76 --
77 -- Issue a savepoint
78 --
79 savepoint create_referral_info_swi;
80 --
81 -- Initialise Multiple Message Detection
82 --
83 hr_multi_message.enable_message_list;
84 --
85 -- Remember IN OUT parameter IN values
86 --
87 --
88 -- Convert constant values to their corresponding boolean value
89 --
90 l_validate :=
91 hr_api.constant_to_boolean
92 (p_constant_value => p_validate);
93 --
94 -- Register Surrogate ID or user key values
95 --
96 irc_irf_ins.set_base_key_value
97 (p_referral_info_id => p_referral_info_id
98 );
99 --
100 hr_utility.set_location(' p_object_id: '||p_object_id ,11);
101 --
102 IF P_OBJECT_TYPE='PERSON' THEN
103 --
104 open csr_get_party_id;
105 fetch csr_get_party_id into l_party_id;
106 close csr_get_party_id;
107 --
108 ELSE
109 --
110 l_party_id := p_object_id;
111 --
112 END IF;
113 --
114 -- Call API
115 --
116 irc_referral_info_api.create_referral_info
117 (p_validate => l_validate
118 ,p_object_id => l_party_id
119 ,p_object_type => p_object_type
120 ,p_source_type => p_source_type
121 ,p_source_name => p_source_name
122 ,p_source_criteria1 => p_source_criteria1
123 ,p_source_value1 => p_source_value1
124 ,p_source_criteria2 => p_source_criteria2
125 ,p_source_value2 => p_source_value2
126 ,p_source_criteria3 => p_source_criteria3
127 ,p_source_value3 => p_source_value3
128 ,p_source_criteria4 => p_source_criteria4
129 ,p_source_value4 => p_source_value4
130 ,p_source_criteria5 => p_source_criteria5
131 ,p_source_value5 => p_source_value5
132 ,p_source_person_id => p_source_person_id
133 ,p_candidate_comment => p_candidate_comment
134 ,p_employee_comment => p_employee_comment
135 ,p_irf_attribute_category => p_irf_attribute_category
136 ,p_irf_attribute1 => p_irf_attribute1
137 ,p_irf_attribute2 => p_irf_attribute2
138 ,p_irf_attribute3 => p_irf_attribute3
139 ,p_irf_attribute4 => p_irf_attribute4
140 ,p_irf_attribute5 => p_irf_attribute5
141 ,p_irf_attribute6 => p_irf_attribute6
142 ,p_irf_attribute7 => p_irf_attribute7
143 ,p_irf_attribute8 => p_irf_attribute8
144 ,p_irf_attribute9 => p_irf_attribute9
145 ,p_irf_attribute10 => p_irf_attribute10
146 ,p_irf_information_category => p_irf_information_category
147 ,p_irf_information1 => p_irf_information1
148 ,p_irf_information2 => p_irf_information2
149 ,p_irf_information3 => p_irf_information3
150 ,p_irf_information4 => p_irf_information4
151 ,p_irf_information5 => p_irf_information5
152 ,p_irf_information6 => p_irf_information6
153 ,p_irf_information7 => p_irf_information7
154 ,p_irf_information8 => p_irf_information8
155 ,p_irf_information9 => p_irf_information9
156 ,p_irf_information10 => p_irf_information10
157 ,p_object_created_by => p_object_created_by
158 ,p_referral_info_id => l_referral_info_id
159 ,p_object_version_number => p_object_version_number
160 ,p_start_date => p_start_date
161 ,p_end_date => p_end_date
162 );
163 --
164 -- Convert API warning boolean parameter values to specific
165 -- messages and add them to Multiple Message List
166 --
167 --
168 -- Convert API non-warning boolean parameter values
169 --
170 --
171 -- Derive the API return status value based on whether
172 -- messages of any type exist in the Multiple Message List.
173 -- Also disable Multiple Message Detection.
174 --
175 p_return_status := hr_multi_message.get_return_status_disable;
176 hr_utility.set_location(' Leaving:' || l_proc,20);
177 --
178 exception
179 when hr_multi_message.error_message_exist then
180 --
181 -- Catch the Multiple Message List exception which
182 -- indicates API processing has been aborted because
183 -- at least one message exists in the list.
184 --
185 rollback to create_referral_info_swi;
186 --
187 -- Reset IN OUT parameters and set OUT parameters
188 --
189 p_object_version_number := null;
190 p_start_date := null;
191 p_end_date := null;
192 p_return_status := hr_multi_message.get_return_status_disable;
193 hr_utility.set_location(' Leaving:' || l_proc, 30);
194 when others then
195 --
196 -- When Multiple Message Detection is enabled catch
197 -- any Application specific or other unexpected
198 -- exceptions. Adding appropriate details to the
199 -- Multiple Message List. Otherwise re-raise the
200 -- error.
201 --
202 rollback to create_referral_info_swi;
203 if hr_multi_message.unexpected_error_add(l_proc) then
204 hr_utility.set_location(' Leaving:' || l_proc,40);
205 raise;
206 end if;
207 --
208 -- Reset IN OUT and set OUT parameters
209 --
210 p_object_version_number := null;
211 p_start_date := null;
212 p_end_date := null;
213 p_return_status := hr_multi_message.get_return_status_disable;
214 hr_utility.set_location(' Leaving:' || l_proc,50);
215 end create_referral_info;
216 -- ----------------------------------------------------------------------------
217 -- |-------------------------< update_referral_info >--------------------|
218 -- ----------------------------------------------------------------------------
219 PROCEDURE update_referral_info
220 (p_validate in number default hr_api.g_false_num
221 ,p_referral_info_id in number
222 ,p_source_type in varchar2 default hr_api.g_varchar2
223 ,p_source_name in varchar2 default hr_api.g_varchar2
224 ,p_source_criteria1 in varchar2 default hr_api.g_varchar2
225 ,p_source_value1 in varchar2 default hr_api.g_varchar2
226 ,p_source_criteria2 in varchar2 default hr_api.g_varchar2
227 ,p_source_value2 in varchar2 default hr_api.g_varchar2
228 ,p_source_criteria3 in varchar2 default hr_api.g_varchar2
229 ,p_source_value3 in varchar2 default hr_api.g_varchar2
230 ,p_source_criteria4 in varchar2 default hr_api.g_varchar2
231 ,p_source_value4 in varchar2 default hr_api.g_varchar2
232 ,p_source_criteria5 in varchar2 default hr_api.g_varchar2
233 ,p_source_value5 in varchar2 default hr_api.g_varchar2
234 ,p_source_person_id in number default hr_api.g_number
235 ,p_candidate_comment in varchar2 default hr_api.g_varchar2
236 ,p_employee_comment in varchar2 default hr_api.g_varchar2
237 ,p_irf_attribute_category in varchar2 default hr_api.g_varchar2
238 ,p_irf_attribute1 in varchar2 default hr_api.g_varchar2
239 ,p_irf_attribute2 in varchar2 default hr_api.g_varchar2
240 ,p_irf_attribute3 in varchar2 default hr_api.g_varchar2
241 ,p_irf_attribute4 in varchar2 default hr_api.g_varchar2
242 ,p_irf_attribute5 in varchar2 default hr_api.g_varchar2
243 ,p_irf_attribute6 in varchar2 default hr_api.g_varchar2
244 ,p_irf_attribute7 in varchar2 default hr_api.g_varchar2
245 ,p_irf_attribute8 in varchar2 default hr_api.g_varchar2
246 ,p_irf_attribute9 in varchar2 default hr_api.g_varchar2
247 ,p_irf_attribute10 in varchar2 default hr_api.g_varchar2
248 ,p_irf_information_category in varchar2 default hr_api.g_varchar2
249 ,p_irf_information1 in varchar2 default hr_api.g_varchar2
250 ,p_irf_information2 in varchar2 default hr_api.g_varchar2
251 ,p_irf_information3 in varchar2 default hr_api.g_varchar2
252 ,p_irf_information4 in varchar2 default hr_api.g_varchar2
253 ,p_irf_information5 in varchar2 default hr_api.g_varchar2
254 ,p_irf_information6 in varchar2 default hr_api.g_varchar2
255 ,p_irf_information7 in varchar2 default hr_api.g_varchar2
256 ,p_irf_information8 in varchar2 default hr_api.g_varchar2
257 ,p_irf_information9 in varchar2 default hr_api.g_varchar2
258 ,p_irf_information10 in varchar2 default hr_api.g_varchar2
259 ,p_object_version_number in out nocopy number
260 ,p_start_date out nocopy date
261 ,p_end_date out nocopy date
262 ,p_return_status out nocopy varchar2
263 ) is
264 --
265 -- Variables for API Boolean parameters
266 l_validate boolean;
267 --
268 -- Variables for IN/OUT parameters
269 l_object_version_number number;
270 --
271 -- Other variables
272 l_proc varchar2(72) := g_package ||'update_referral_info';
273 Begin
274 hr_utility.set_location(' Entering:' || l_proc,10);
275 --
276 -- Issue a savepoint
277 --
278 savepoint update_referral_info_swi;
279 --
280 -- Initialise Multiple Message Detection
281 --
282 hr_multi_message.enable_message_list;
283 --
284 -- Remember IN OUT parameter IN values
285 --
286 l_object_version_number := p_object_version_number;
287 --
288 -- Convert constant values to their corresponding boolean value
289 --
290 l_validate :=
291 hr_api.constant_to_boolean
292 (p_constant_value => p_validate);
293 --
294 -- Register Surrogate ID or user key values
295 --
296 --
297 -- Call API
298 --
299 irc_referral_info_api.update_referral_info
300 (p_validate => l_validate
301 ,p_referral_info_id => p_referral_info_id
302 ,p_source_type => p_source_type
303 ,p_source_name => p_source_name
304 ,p_source_criteria1 => p_source_criteria1
305 ,p_source_value1 => p_source_value1
306 ,p_source_criteria2 => p_source_criteria2
307 ,p_source_value2 => p_source_value2
308 ,p_source_criteria3 => p_source_criteria3
309 ,p_source_value3 => p_source_value3
310 ,p_source_criteria4 => p_source_criteria4
311 ,p_source_value4 => p_source_value4
312 ,p_source_criteria5 => p_source_criteria5
313 ,p_source_value5 => p_source_value5
314 ,p_source_person_id => p_source_person_id
315 ,p_candidate_comment => p_candidate_comment
316 ,p_employee_comment => p_employee_comment
317 ,p_irf_attribute_category => p_irf_attribute_category
318 ,p_irf_attribute1 => p_irf_attribute1
319 ,p_irf_attribute2 => p_irf_attribute2
320 ,p_irf_attribute3 => p_irf_attribute3
321 ,p_irf_attribute4 => p_irf_attribute4
322 ,p_irf_attribute5 => p_irf_attribute5
323 ,p_irf_attribute6 => p_irf_attribute6
324 ,p_irf_attribute7 => p_irf_attribute7
325 ,p_irf_attribute8 => p_irf_attribute8
326 ,p_irf_attribute9 => p_irf_attribute9
327 ,p_irf_attribute10 => p_irf_attribute10
328 ,p_irf_information_category => p_irf_information_category
329 ,p_irf_information1 => p_irf_information1
330 ,p_irf_information2 => p_irf_information2
331 ,p_irf_information3 => p_irf_information3
332 ,p_irf_information4 => p_irf_information4
333 ,p_irf_information5 => p_irf_information5
334 ,p_irf_information6 => p_irf_information6
335 ,p_irf_information7 => p_irf_information7
336 ,p_irf_information8 => p_irf_information8
337 ,p_irf_information9 => p_irf_information9
338 ,p_irf_information10 => p_irf_information10
339 ,p_object_version_number => p_object_version_number
340 ,p_start_date => p_start_date
341 ,p_end_date => p_end_date
342 );
343 --
344 -- Convert API warning boolean parameter values to specific
345 -- messages and add them to Multiple Message List
346 --
347 --
348 -- Convert API non-warning boolean parameter values
349 --
350 --
351 -- Derive the API return status value based on whether
352 -- messages of any type exist in the Multiple Message List.
353 -- Also disable Multiple Message Detection.
354 --
355 p_return_status := hr_multi_message.get_return_status_disable;
356 hr_utility.set_location(' Leaving:' || l_proc,20);
357 --
358 exception
359 when hr_multi_message.error_message_exist then
360 --
361 -- Catch the Multiple Message List exception which
362 -- indicates API processing has been aborted because
363 -- at least one message exists in the list.
364 --
365 rollback to update_referral_info_swi;
366 --
367 -- Reset IN OUT parameters and set OUT parameters
368 --
369 p_object_version_number := l_object_version_number;
370 p_start_date := null;
371 p_end_date := null;
372 p_return_status := hr_multi_message.get_return_status_disable;
373 hr_utility.set_location(' Leaving:' || l_proc, 30);
374 when others then
375 --
376 -- When Multiple Message Detection is enabled catch
377 -- any Application specific or other unexpected
378 -- exceptions. Adding appropriate details to the
379 -- Multiple Message List. Otherwise re-raise the
380 -- error.
381 --
382 rollback to update_referral_info_swi;
383 if hr_multi_message.unexpected_error_add(l_proc) then
384 hr_utility.set_location(' Leaving:' || l_proc,40);
385 raise;
386 end if;
387 --
388 -- Reset IN OUT and set OUT parameters
389 --
390 p_object_version_number := l_object_version_number;
391 p_start_date := null;
392 p_end_date := null;
393 p_return_status := hr_multi_message.get_return_status_disable;
394 hr_utility.set_location(' Leaving:' || l_proc,50);
395 end update_referral_info;
396 ---
397 end IRC_REFERRAL_INFO_SWI;