[Home] [Help]
PACKAGE BODY: APPS.IRC_REFERRAL_INFO_API
Source
1 PACKAGE BODY IRC_REFERRAL_INFO_API as
2 /* $Header: irirfapi.pkb 120.0.12010000.2 2010/05/19 05:57:45 vmummidi ship $ */
3 --
4 -- Package Variables
5 --
6 g_package varchar2(33) := ' IRC_REFERRAL_INFO_API.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-------------------------< create_referral_info >--------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_referral_info
13 (p_validate in boolean default false
14 ,p_object_id in number
15 ,p_object_type in varchar2
16 ,p_source_type in varchar2 default null
17 ,p_source_name in varchar2 default null
18 ,p_source_criteria1 in varchar2 default null
19 ,p_source_value1 in varchar2 default null
20 ,p_source_criteria2 in varchar2 default null
21 ,p_source_value2 in varchar2 default null
22 ,p_source_criteria3 in varchar2 default null
23 ,p_source_value3 in varchar2 default null
24 ,p_source_criteria4 in varchar2 default null
25 ,p_source_value4 in varchar2 default null
26 ,p_source_criteria5 in varchar2 default null
27 ,p_source_value5 in varchar2 default null
28 ,p_source_person_id in number default null
29 ,p_candidate_comment in varchar2 default null
30 ,p_employee_comment in varchar2 default null
31 ,p_irf_attribute_category in varchar2 default null
32 ,p_irf_attribute1 in varchar2 default null
33 ,p_irf_attribute2 in varchar2 default null
34 ,p_irf_attribute3 in varchar2 default null
35 ,p_irf_attribute4 in varchar2 default null
36 ,p_irf_attribute5 in varchar2 default null
37 ,p_irf_attribute6 in varchar2 default null
38 ,p_irf_attribute7 in varchar2 default null
39 ,p_irf_attribute8 in varchar2 default null
40 ,p_irf_attribute9 in varchar2 default null
41 ,p_irf_attribute10 in varchar2 default null
42 ,p_irf_information_category in varchar2 default null
43 ,p_irf_information1 in varchar2 default null
44 ,p_irf_information2 in varchar2 default null
45 ,p_irf_information3 in varchar2 default null
46 ,p_irf_information4 in varchar2 default null
47 ,p_irf_information5 in varchar2 default null
48 ,p_irf_information6 in varchar2 default null
49 ,p_irf_information7 in varchar2 default null
50 ,p_irf_information8 in varchar2 default null
51 ,p_irf_information9 in varchar2 default null
52 ,p_irf_information10 in varchar2 default null
53 ,p_object_created_by in varchar2 default null
54 ,p_referral_info_id out nocopy number
55 ,p_object_version_number out nocopy number
56 ,p_start_date out nocopy date
57 ,p_end_date out nocopy date
58 ) is
59 --
60 -- Declare cursors and local variables
61 --
62 l_proc varchar2(72) := g_package||'create_referral_info';
63 l_referral_info_id number;
64 l_object_version_number number;
65 l_start_date date;
66 l_end_date date;
67 l_effective_date date;
68 begin
69 hr_utility.set_location('Entering:'|| l_proc, 10);
70 --
71 -- Issue a savepoint
72 --
73 savepoint create_referral_info;
74 --
75 -- Call Before Process User Hook
76 --
77 begin
78 irc_referral_info_bk1.create_referral_info_b
79 (p_object_id => p_object_id
80 ,p_object_type => p_object_type
81 ,p_source_type => p_source_type
82 ,p_source_name => p_source_name
83 ,p_source_criteria1 => p_source_criteria1
84 ,p_source_value1 => p_source_value1
85 ,p_source_criteria2 => p_source_criteria2
86 ,p_source_value2 => p_source_value2
87 ,p_source_criteria3 => p_source_criteria3
88 ,p_source_value3 => p_source_value3
89 ,p_source_criteria4 => p_source_criteria4
90 ,p_source_value4 => p_source_value4
91 ,p_source_criteria5 => p_source_criteria5
92 ,p_source_value5 => p_source_value5
93 ,p_source_person_id => p_source_person_id
94 ,p_candidate_comment => p_candidate_comment
95 ,p_employee_comment => p_employee_comment
96 ,p_irf_attribute_category => p_irf_attribute_category
97 ,p_irf_attribute1 => p_irf_attribute1
98 ,p_irf_attribute2 => p_irf_attribute2
99 ,p_irf_attribute3 => p_irf_attribute3
100 ,p_irf_attribute4 => p_irf_attribute4
101 ,p_irf_attribute5 => p_irf_attribute5
102 ,p_irf_attribute6 => p_irf_attribute6
103 ,p_irf_attribute7 => p_irf_attribute7
104 ,p_irf_attribute8 => p_irf_attribute8
105 ,p_irf_attribute9 => p_irf_attribute9
106 ,p_irf_attribute10 => p_irf_attribute10
107 ,p_irf_information_category => p_irf_information_category
108 ,p_irf_information1 => p_irf_information1
109 ,p_irf_information2 => p_irf_information2
110 ,p_irf_information3 => p_irf_information3
111 ,p_irf_information4 => p_irf_information4
112 ,p_irf_information5 => p_irf_information5
113 ,p_irf_information6 => p_irf_information6
114 ,p_irf_information7 => p_irf_information7
115 ,p_irf_information8 => p_irf_information8
116 ,p_irf_information9 => p_irf_information9
117 ,p_irf_information10 => p_irf_information10
118 ,p_object_created_by => p_object_created_by
119 );
120 exception
121 when hr_api.cannot_find_prog_unit then
122 hr_api.cannot_find_prog_unit_error
123 (p_module_name => 'create_referral_info'
124 ,p_hook_type => 'BP'
125 );
126 end;
127 --
128 -- Process Logic
129 --
130 -- Set the effective date to the sysdate
131 l_effective_date := sysdate;
132
133 irc_irf_ins.ins(p_effective_date => l_effective_date
134 ,p_object_id => p_object_id
135 ,p_object_type => p_object_type
136 ,p_source_type => p_source_type
137 ,p_source_name => p_source_name
138 ,p_source_criteria1 => p_source_criteria1
139 ,p_source_value1 => p_source_value1
140 ,p_source_criteria2 => p_source_criteria2
141 ,p_source_value2 => p_source_value2
142 ,p_source_criteria3 => p_source_criteria3
143 ,p_source_value3 => p_source_value3
144 ,p_source_criteria4 => p_source_criteria4
145 ,p_source_value4 => p_source_value4
146 ,p_source_criteria5 => p_source_criteria5
147 ,p_source_value5 => p_source_value5
148 ,p_source_person_id => p_source_person_id
149 ,p_candidate_comment => p_candidate_comment
150 ,p_employee_comment => p_employee_comment
151 ,p_irf_attribute_category => p_irf_attribute_category
152 ,p_irf_attribute1 => p_irf_attribute1
153 ,p_irf_attribute2 => p_irf_attribute2
154 ,p_irf_attribute3 => p_irf_attribute3
155 ,p_irf_attribute4 => p_irf_attribute4
156 ,p_irf_attribute5 => p_irf_attribute5
157 ,p_irf_attribute6 => p_irf_attribute6
158 ,p_irf_attribute7 => p_irf_attribute7
159 ,p_irf_attribute8 => p_irf_attribute8
160 ,p_irf_attribute9 => p_irf_attribute9
161 ,p_irf_attribute10 => p_irf_attribute10
162 ,p_irf_information_category => p_irf_information_category
163 ,p_irf_information1 => p_irf_information1
164 ,p_irf_information2 => p_irf_information2
165 ,p_irf_information3 => p_irf_information3
166 ,p_irf_information4 => p_irf_information4
167 ,p_irf_information5 => p_irf_information5
168 ,p_irf_information6 => p_irf_information6
169 ,p_irf_information7 => p_irf_information7
170 ,p_irf_information8 => p_irf_information8
171 ,p_irf_information9 => p_irf_information9
172 ,p_irf_information10 => p_irf_information10
173 ,p_object_created_by => p_object_created_by
174 ,p_referral_info_id => l_referral_info_id
175 ,p_object_version_number => l_object_version_number
176 ,p_start_date => l_start_date
177 ,p_end_date => l_end_date
178 );
179 -- Call After Process User Hook
180 --
181 begin
182 irc_referral_info_bk1.create_referral_info_a
183 (p_referral_info_id => l_referral_info_id
184 ,p_object_id => p_object_id
185 ,p_object_type => p_object_type
186 ,p_source_type => p_source_type
187 ,p_source_name => p_source_name
188 ,p_source_criteria1 => p_source_criteria1
189 ,p_source_value1 => p_source_value1
190 ,p_source_criteria2 => p_source_criteria2
191 ,p_source_value2 => p_source_value2
192 ,p_source_criteria3 => p_source_criteria3
193 ,p_source_value3 => p_source_value3
194 ,p_source_criteria4 => p_source_criteria4
195 ,p_source_value4 => p_source_value4
196 ,p_source_criteria5 => p_source_criteria5
197 ,p_source_value5 => p_source_value5
198 ,p_source_person_id => p_source_person_id
199 ,p_candidate_comment => p_candidate_comment
200 ,p_employee_comment => p_employee_comment
201 ,p_irf_attribute_category => p_irf_attribute_category
202 ,p_irf_attribute1 => p_irf_attribute1
203 ,p_irf_attribute2 => p_irf_attribute2
204 ,p_irf_attribute3 => p_irf_attribute3
205 ,p_irf_attribute4 => p_irf_attribute4
206 ,p_irf_attribute5 => p_irf_attribute5
207 ,p_irf_attribute6 => p_irf_attribute6
208 ,p_irf_attribute7 => p_irf_attribute7
209 ,p_irf_attribute8 => p_irf_attribute8
210 ,p_irf_attribute9 => p_irf_attribute9
211 ,p_irf_attribute10 => p_irf_attribute10
212 ,p_irf_information_category => p_irf_information_category
213 ,p_irf_information1 => p_irf_information1
214 ,p_irf_information2 => p_irf_information2
215 ,p_irf_information3 => p_irf_information3
216 ,p_irf_information4 => p_irf_information4
217 ,p_irf_information5 => p_irf_information5
218 ,p_irf_information6 => p_irf_information6
219 ,p_irf_information7 => p_irf_information7
220 ,p_irf_information8 => p_irf_information8
221 ,p_irf_information9 => p_irf_information9
222 ,p_irf_information10 => p_irf_information10
223 ,p_object_created_by => p_object_created_by
224 ,p_object_version_number => l_object_version_number
225 ,p_start_date => l_start_date
226 ,p_end_date => l_end_date
227 );
228 exception
229 when hr_api.cannot_find_prog_unit then
230 hr_api.cannot_find_prog_unit_error
231 (p_module_name => 'create_referral_info'
232 ,p_hook_type => 'AP'
233 );
234 end;
235 --
236 -- When in validation only mode raise the Validate_Enabled exception
237 --
238 if p_validate then
239 raise hr_api.validate_enabled;
240 end if;
241 --
242 -- Set all IN OUT and OUT parameters with out values
243 --
244 p_referral_info_id := l_referral_info_id;
245 p_object_version_number := l_object_version_number;
246 p_start_date := l_start_date;
247 p_end_date := l_end_date;
248 --
249 hr_utility.set_location(' Leaving:'||l_proc, 70);
250 exception
251 when hr_api.validate_enabled then
252 --
253 -- As the Validate_Enabled exception has been raised
254 -- we must rollback to the savepoint
255 --
256 rollback to create_referral_info;
257 --
258 -- Reset IN OUT parameters and set OUT parameters
259 -- (Any key or derived arguments must be set to null
260 -- when validation only mode is being used.)
261 --
262 p_referral_info_id := null;
263 p_object_version_number := null;
264 p_start_date := null;
265 p_end_date := null;
266 hr_utility.set_location(' Leaving:'||l_proc, 80);
267 when others then
268 --
269 -- A validation or unexpected error has occured
270 --
271 rollback to create_referral_info;
272 --
273 -- Reset IN OUT parameters and set all
274 -- OUT parameters, including warnings, to null
275 --
276 p_referral_info_id := null;
277 p_object_version_number := null;
278 p_start_date := null;
279 p_end_date := null;
280 hr_utility.set_location(' Leaving:'||l_proc, 90);
281 raise;
282 end create_referral_info;
283 --
284 --
285 -- ----------------------------------------------------------------------------
286 -- |-----------------------< update_referral_info >----------------------|
287 -- ----------------------------------------------------------------------------
288 --
289 procedure update_referral_info
290 (p_validate in boolean default false
291 ,p_referral_info_id in number
292 ,p_source_type in varchar2 default hr_api.g_varchar2
293 ,p_source_name in varchar2 default hr_api.g_varchar2
294 ,p_source_criteria1 in varchar2 default hr_api.g_varchar2
295 ,p_source_value1 in varchar2 default hr_api.g_varchar2
296 ,p_source_criteria2 in varchar2 default hr_api.g_varchar2
297 ,p_source_value2 in varchar2 default hr_api.g_varchar2
298 ,p_source_criteria3 in varchar2 default hr_api.g_varchar2
299 ,p_source_value3 in varchar2 default hr_api.g_varchar2
300 ,p_source_criteria4 in varchar2 default hr_api.g_varchar2
301 ,p_source_value4 in varchar2 default hr_api.g_varchar2
302 ,p_source_criteria5 in varchar2 default hr_api.g_varchar2
303 ,p_source_value5 in varchar2 default hr_api.g_varchar2
304 ,p_source_person_id in number default hr_api.g_number
305 ,p_candidate_comment in varchar2 default hr_api.g_varchar2
306 ,p_employee_comment in varchar2 default hr_api.g_varchar2
307 ,p_irf_attribute_category in varchar2 default hr_api.g_varchar2
308 ,p_irf_attribute1 in varchar2 default hr_api.g_varchar2
309 ,p_irf_attribute2 in varchar2 default hr_api.g_varchar2
310 ,p_irf_attribute3 in varchar2 default hr_api.g_varchar2
311 ,p_irf_attribute4 in varchar2 default hr_api.g_varchar2
312 ,p_irf_attribute5 in varchar2 default hr_api.g_varchar2
313 ,p_irf_attribute6 in varchar2 default hr_api.g_varchar2
314 ,p_irf_attribute7 in varchar2 default hr_api.g_varchar2
315 ,p_irf_attribute8 in varchar2 default hr_api.g_varchar2
316 ,p_irf_attribute9 in varchar2 default hr_api.g_varchar2
317 ,p_irf_attribute10 in varchar2 default hr_api.g_varchar2
318 ,p_irf_information_category in varchar2 default hr_api.g_varchar2
319 ,p_irf_information1 in varchar2 default hr_api.g_varchar2
320 ,p_irf_information2 in varchar2 default hr_api.g_varchar2
321 ,p_irf_information3 in varchar2 default hr_api.g_varchar2
322 ,p_irf_information4 in varchar2 default hr_api.g_varchar2
323 ,p_irf_information5 in varchar2 default hr_api.g_varchar2
324 ,p_irf_information6 in varchar2 default hr_api.g_varchar2
325 ,p_irf_information7 in varchar2 default hr_api.g_varchar2
326 ,p_irf_information8 in varchar2 default hr_api.g_varchar2
327 ,p_irf_information9 in varchar2 default hr_api.g_varchar2
328 ,p_irf_information10 in varchar2 default hr_api.g_varchar2
329 ,p_object_version_number in out nocopy number
330 ,p_start_date out nocopy date
331 ,p_end_date out nocopy date
332 ) is
333 --
334 -- Declare cursors and local variables
335 --
336 l_object_version_number number;
337 l_start_date date;
338 l_end_date date;
339 l_effective_date date;
340 l_proc varchar2(72) := g_package||'update_referral_info';
341 begin
342 hr_utility.set_location('Entering:'|| l_proc, 10);
343 --
344 -- Issue a savepoint
345 --
346 savepoint update_referral_info;
347 --
348 -- Call Before Process User Hook
349 --
350 begin
351 irc_referral_info_bk2.update_referral_info_b
352 (p_referral_info_id => p_referral_info_id
353 ,p_source_type => p_source_type
354 ,p_source_name => p_source_name
355 ,p_source_criteria1 => p_source_criteria1
356 ,p_source_value1 => p_source_value1
357 ,p_source_criteria2 => p_source_criteria2
358 ,p_source_value2 => p_source_value2
359 ,p_source_criteria3 => p_source_criteria3
360 ,p_source_value3 => p_source_value3
361 ,p_source_criteria4 => p_source_criteria4
362 ,p_source_value4 => p_source_value4
363 ,p_source_criteria5 => p_source_criteria5
364 ,p_source_value5 => p_source_value5
365 ,p_source_person_id => p_source_person_id
366 ,p_candidate_comment => p_candidate_comment
367 ,p_employee_comment => p_employee_comment
368 ,p_irf_attribute_category => p_irf_attribute_category
369 ,p_irf_attribute1 => p_irf_attribute1
370 ,p_irf_attribute2 => p_irf_attribute2
371 ,p_irf_attribute3 => p_irf_attribute3
372 ,p_irf_attribute4 => p_irf_attribute4
373 ,p_irf_attribute5 => p_irf_attribute5
374 ,p_irf_attribute6 => p_irf_attribute6
375 ,p_irf_attribute7 => p_irf_attribute7
376 ,p_irf_attribute8 => p_irf_attribute8
377 ,p_irf_attribute9 => p_irf_attribute9
378 ,p_irf_attribute10 => p_irf_attribute10
379 ,p_irf_information_category => p_irf_information_category
380 ,p_irf_information1 => p_irf_information1
381 ,p_irf_information2 => p_irf_information2
382 ,p_irf_information3 => p_irf_information3
383 ,p_irf_information4 => p_irf_information4
384 ,p_irf_information5 => p_irf_information5
385 ,p_irf_information6 => p_irf_information6
386 ,p_irf_information7 => p_irf_information7
387 ,p_irf_information8 => p_irf_information8
388 ,p_irf_information9 => p_irf_information9
389 ,p_irf_information10 => p_irf_information10
390 ,p_object_version_number => p_object_version_number
391 );
392 exception
393 when hr_api.cannot_find_prog_unit then
394 hr_api.cannot_find_prog_unit_error
395 (p_module_name => 'update_referral_info'
396 ,p_hook_type => 'BP'
397 );
398 end;
399 --
400 -- Process Logic
401 --
402 -- Set the effective date to the sysdate
403 l_effective_date := sysdate;
404 l_object_version_number := p_object_version_number;
405 if p_referral_info_id is null then
406 -- RAISE ERROR SAYING INVALID REFERRAL_INFO_ID
407 fnd_message.set_name('PER', 'IRC_INV_REF_INFO_ID');
408 fnd_message.raise_error;
409 end if;
410 irc_irf_upd.upd(p_effective_date => l_effective_date
411 ,p_datetrack_mode => 'UPDATE'
412 ,p_referral_info_id => p_referral_info_id
413 ,p_object_version_number => l_object_version_number
414 ,p_source_type => p_source_type
415 ,p_source_name => p_source_name
416 ,p_source_criteria1 => p_source_criteria1
417 ,p_source_value1 => p_source_value1
418 ,p_source_criteria2 => p_source_criteria2
419 ,p_source_value2 => p_source_value2
420 ,p_source_criteria3 => p_source_criteria3
421 ,p_source_value3 => p_source_value3
422 ,p_source_criteria4 => p_source_criteria4
423 ,p_source_value4 => p_source_value4
424 ,p_source_criteria5 => p_source_criteria5
425 ,p_source_value5 => p_source_value5
426 ,p_source_person_id => p_source_person_id
427 ,p_candidate_comment => p_candidate_comment
428 ,p_employee_comment => p_employee_comment
429 ,p_irf_attribute_category => p_irf_attribute_category
430 ,p_irf_attribute1 => p_irf_attribute1
431 ,p_irf_attribute2 => p_irf_attribute2
432 ,p_irf_attribute3 => p_irf_attribute3
433 ,p_irf_attribute4 => p_irf_attribute4
434 ,p_irf_attribute5 => p_irf_attribute5
435 ,p_irf_attribute6 => p_irf_attribute6
436 ,p_irf_attribute7 => p_irf_attribute7
437 ,p_irf_attribute8 => p_irf_attribute8
438 ,p_irf_attribute9 => p_irf_attribute9
439 ,p_irf_attribute10 => p_irf_attribute10
440 ,p_irf_information_category => p_irf_information_category
441 ,p_irf_information1 => p_irf_information1
442 ,p_irf_information2 => p_irf_information2
443 ,p_irf_information3 => p_irf_information3
444 ,p_irf_information4 => p_irf_information4
445 ,p_irf_information5 => p_irf_information5
446 ,p_irf_information6 => p_irf_information6
447 ,p_irf_information7 => p_irf_information7
448 ,p_irf_information8 => p_irf_information8
449 ,p_irf_information9 => p_irf_information9
450 ,p_irf_information10 => p_irf_information10
451 ,p_start_date => l_start_date
452 ,p_end_date => l_end_date
453 );
454 --
455 -- Call After Process User Hook
456 --
457 begin
458 irc_referral_info_bk2.update_referral_info_a
459 (p_referral_info_id => p_referral_info_id
460 ,p_source_type => p_source_type
461 ,p_source_name => p_source_name
462 ,p_source_criteria1 => p_source_criteria1
463 ,p_source_value1 => p_source_value1
464 ,p_source_criteria2 => p_source_criteria2
465 ,p_source_value2 => p_source_value2
466 ,p_source_criteria3 => p_source_criteria3
467 ,p_source_value3 => p_source_value3
468 ,p_source_criteria4 => p_source_criteria4
469 ,p_source_value4 => p_source_value4
470 ,p_source_criteria5 => p_source_criteria5
471 ,p_source_value5 => p_source_value5
472 ,p_source_person_id => p_source_person_id
473 ,p_candidate_comment => p_candidate_comment
474 ,p_employee_comment => p_employee_comment
475 ,p_irf_attribute_category => p_irf_attribute_category
476 ,p_irf_attribute1 => p_irf_attribute1
477 ,p_irf_attribute2 => p_irf_attribute2
478 ,p_irf_attribute3 => p_irf_attribute3
479 ,p_irf_attribute4 => p_irf_attribute4
480 ,p_irf_attribute5 => p_irf_attribute5
481 ,p_irf_attribute6 => p_irf_attribute6
482 ,p_irf_attribute7 => p_irf_attribute7
483 ,p_irf_attribute8 => p_irf_attribute8
484 ,p_irf_attribute9 => p_irf_attribute9
485 ,p_irf_attribute10 => p_irf_attribute10
486 ,p_irf_information_category => p_irf_information_category
487 ,p_irf_information1 => p_irf_information1
488 ,p_irf_information2 => p_irf_information2
489 ,p_irf_information3 => p_irf_information3
490 ,p_irf_information4 => p_irf_information4
491 ,p_irf_information5 => p_irf_information5
492 ,p_irf_information6 => p_irf_information6
493 ,p_irf_information7 => p_irf_information7
494 ,p_irf_information8 => p_irf_information8
495 ,p_irf_information9 => p_irf_information9
496 ,p_irf_information10 => p_irf_information10
497 ,p_object_version_number => p_object_version_number
498 );
499 exception
500 when hr_api.cannot_find_prog_unit then
501 hr_api.cannot_find_prog_unit_error
502 (p_module_name => 'update_referral_info'
503 ,p_hook_type => 'AP'
504 );
505 end;
506 --
507 -- When in validation only mode raise the Validate_Enabled exception
508 --
509 if p_validate then
510 raise hr_api.validate_enabled;
511 end if;
512 --
513 -- Set all IN OUT and OUT parameters with out values
514 --
515 p_object_version_number := l_object_version_number;
516 p_start_date := l_start_date;
517 p_end_date := l_end_date;
518 --
519 hr_utility.set_location(' Leaving:'||l_proc, 70);
520 exception
521 when hr_api.validate_enabled then
522 --
523 -- As the Validate_Enabled exception has been raised
524 -- we must rollback to the savepoint
525 --
526 rollback to update_referral_info;
527 --
528 -- Reset IN OUT parameters and set OUT parameters
529 -- (Any key or derived arguments must be set to null
530 -- when validation only mode is being used.)
531 --
532 p_start_date := null;
533 p_end_date := null;
534 hr_utility.set_location(' Leaving:'||l_proc, 80);
535 when others then
536 --
537 -- A validation or unexpected error has occured
538 --
539 rollback to update_referral_info;
540 --
541 -- Reset IN OUT parameters and set all
542 -- OUT parameters, including warnings, to null
543 --
544 p_start_date := null;
545 p_end_date := null;
546 hr_utility.set_location(' Leaving:'||l_proc, 90);
547 raise;
548 end update_referral_info;
549 --
550 --
551 -- ----------------------------------------------------------------------------
552 -- |-------------------------< copy_referral_details >-------------------------|
553 -- ----------------------------------------------------------------------------
554 --
555 procedure copy_referral_details
556 (p_source_assignment_id in number
557 ,p_target_assignment_id in number
558 ) is
559 --
560 -- Declare cursors and local variables
561 --
562 l_proc varchar2(72) := g_package||'copy_referral_details';
563 --
564 l_referral_info_id irc_referral_info.referral_info_id%type;
565 --
566 cursor csr_referral_info is
567 select *
568 from irc_referral_info
569 where object_id = p_source_assignment_id;
570 --
571 Cursor C_Sel1 is select irc_referral_info_s.nextval from sys.dual;
572 --
573 begin
574 hr_utility.set_location('Entering:'|| l_proc, 10);
575 --
576 -- Issue a savepoint
577 --
578 savepoint copy_referral_details;
579 --
580 --
581 -- Process Logic
582 --
583 --
584 Open C_Sel1;
585 Fetch C_Sel1 Into l_referral_info_id;
586 Close C_Sel1;
587 --
588 FOR l_ref_rec in csr_referral_info
589 LOOP
590 --
591 insert into irc_referral_info
592 (referral_info_id
593 ,object_id
594 ,object_type
595 ,start_date
596 ,end_date
597 ,source_type
598 ,source_name
599 ,source_criteria1
600 ,source_value1
601 ,source_criteria2
602 ,source_value2
603 ,source_criteria3
604 ,source_value3
605 ,source_criteria4
606 ,source_value4
607 ,source_criteria5
608 ,source_value5
609 ,source_person_id
610 ,candidate_comment
611 ,employee_comment
612 ,irf_attribute_category
613 ,irf_attribute1
614 ,irf_attribute2
615 ,irf_attribute3
616 ,irf_attribute4
617 ,irf_attribute5
618 ,irf_attribute6
619 ,irf_attribute7
620 ,irf_attribute8
621 ,irf_attribute9
622 ,irf_attribute10
623 ,irf_information_category
624 ,irf_information1
625 ,irf_information2
626 ,irf_information3
627 ,irf_information4
628 ,irf_information5
629 ,irf_information6
630 ,irf_information7
631 ,irf_information8
632 ,irf_information9
633 ,irf_information10
634 ,object_created_by
635 ,object_version_number
636 )
637 Values
638 (l_referral_info_id
639 ,p_target_assignment_id
640 ,l_ref_rec.object_type
641 ,l_ref_rec.start_date
642 ,l_ref_rec.end_date
643 ,l_ref_rec.source_type
644 ,l_ref_rec.source_name
645 ,l_ref_rec.source_criteria1
646 ,l_ref_rec.source_value1
647 ,l_ref_rec.source_criteria2
648 ,l_ref_rec.source_value2
649 ,l_ref_rec.source_criteria3
650 ,l_ref_rec.source_value3
651 ,l_ref_rec.source_criteria4
652 ,l_ref_rec.source_value4
653 ,l_ref_rec.source_criteria5
654 ,l_ref_rec.source_value5
655 ,l_ref_rec.source_person_id
656 ,l_ref_rec.candidate_comment
657 ,l_ref_rec.employee_comment
658 ,l_ref_rec.irf_attribute_category
659 ,l_ref_rec.irf_attribute1
660 ,l_ref_rec.irf_attribute2
661 ,l_ref_rec.irf_attribute3
662 ,l_ref_rec.irf_attribute4
663 ,l_ref_rec.irf_attribute5
664 ,l_ref_rec.irf_attribute6
665 ,l_ref_rec.irf_attribute7
666 ,l_ref_rec.irf_attribute8
667 ,l_ref_rec.irf_attribute9
668 ,l_ref_rec.irf_attribute10
669 ,l_ref_rec.irf_information_category
670 ,l_ref_rec.irf_information1
671 ,l_ref_rec.irf_information2
672 ,l_ref_rec.irf_information3
673 ,l_ref_rec.irf_information4
674 ,l_ref_rec.irf_information5
675 ,l_ref_rec.irf_information6
676 ,l_ref_rec.irf_information7
677 ,l_ref_rec.irf_information8
678 ,l_ref_rec.irf_information9
679 ,l_ref_rec.irf_information10
680 ,l_ref_rec.object_created_by
681 ,l_ref_rec.object_version_number
682 );
683 --
684 END LOOP;
685 --
686 --
687 hr_utility.set_location(' Leaving:'||l_proc, 20);
688 exception
689 when hr_api.validate_enabled then
690 --
691 -- As the Validate_Enabled exception has been raised
692 -- we must rollback to the savepoint
693 --
694 rollback to copy_referral_details;
695 --
696 hr_utility.set_location(' Leaving:'||l_proc, 30);
697 when others then
698 --
699 -- A validation or unexpected error has occured
700 --
701 rollback to copy_referral_details;
702 --
703 hr_utility.set_location(' Leaving:'||l_proc, 40);
704 raise;
705 end copy_referral_details;
706 --
707 end IRC_REFERRAL_INFO_API;