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