DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_CTR_UPD

Source


1 Package Body per_ctr_upd as
2 /* $Header: pectrrhi.pkb 120.5.12020000.3 2013/02/04 11:16:16 srannama ship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33) := '  per_ctr_upd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------------< update_dml >------------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 --   This procedure controls the actual dml update logic. The processing of
17 --   this procedure is:
18 --   1) Increment the object_version_number by 1 if the object_version_number
19 --      is defined as an attribute for this entity.
20 --   2) To set and unset the g_api_dml status as required (as we are about to
21 --      perform dml).
22 --   3) To update the specified row in the schema using the primary key in
23 --      the predicates.
24 --   4) To trap any constraint violations that may have occurred.
25 --   5) To raise any other errors.
26 --
27 -- Pre Conditions:
28 --   This is an internal private procedure which must be called from the upd
29 --   procedure.
30 --
31 -- In Parameters:
32 --   A Pl/Sql record structre.
33 --
34 -- Post Success:
35 --   The specified row will be updated in the schema.
36 --
37 -- Post Failure:
38 --   On the update dml failure it is important to note that we always reset the
39 --   g_api_dml status to false.
40 --   If a check, unique or parent integrity constraint violation is raised the
41 --   constraint_error procedure will be called.
42 --   If any other error is reported, the error will be raised after the
43 --   g_api_dml status is reset.
44 --
45 -- Developer Implementation Notes:
46 --   The update 'set' attribute list should be modified if any of your
47 --   attributes are not updateable.
48 --
49 -- Access Status:
50 --   Internal Table Handler Use Only.
51 --
52 -- {End Of Comments}
53 -- ----------------------------------------------------------------------------
54 Procedure update_dml(p_rec in out nocopy per_ctr_shd.g_rec_type) is
55 --
56   l_proc  varchar2(72) := g_package||'update_dml';
57 --
58 Begin
59   hr_utility.set_location('Entering:'||l_proc, 5);
60   --
61   -- Increment the object version
62   --
63   p_rec.object_version_number := p_rec.object_version_number + 1;
64   --
65   per_ctr_shd.g_api_dml := true;  -- Set the api dml status
66   --
67   -- Update the per_contact_relationships Row
68   --
69   update per_contact_relationships
70   set
71   contact_type                      = p_rec.contact_type,
72   comments                          = p_rec.comments,
73   primary_contact_flag              = p_rec.primary_contact_flag,
74   request_id                        = p_rec.request_id,
75   program_application_id            = p_rec.program_application_id,
76   program_id                        = p_rec.program_id,
77   program_update_date               = p_rec.program_update_date,
78   date_start                        = p_rec.date_start,
79   start_life_reason_id              = p_rec.start_life_reason_id,
80   date_end                          = p_rec.date_end,
81   end_life_reason_id                = p_rec.end_life_reason_id,
82   rltd_per_rsds_w_dsgntr_flag       = p_rec.rltd_per_rsds_w_dsgntr_flag,
83   personal_flag                     = p_rec.personal_flag,
84   sequence_number                   = p_rec.sequence_number,
85   cont_attribute_category           = p_rec.cont_attribute_category,
86   cont_attribute1                   = p_rec.cont_attribute1,
87   cont_attribute2                   = p_rec.cont_attribute2,
88   cont_attribute3                   = p_rec.cont_attribute3,
89   cont_attribute4                   = p_rec.cont_attribute4,
90   cont_attribute5                   = p_rec.cont_attribute5,
91   cont_attribute6                   = p_rec.cont_attribute6,
92   cont_attribute7                   = p_rec.cont_attribute7,
93   cont_attribute8                   = p_rec.cont_attribute8,
94   cont_attribute9                   = p_rec.cont_attribute9,
95   cont_attribute10                  = p_rec.cont_attribute10,
96   cont_attribute11                  = p_rec.cont_attribute11,
97   cont_attribute12                  = p_rec.cont_attribute12,
98   cont_attribute13                  = p_rec.cont_attribute13,
99   cont_attribute14                  = p_rec.cont_attribute14,
100   cont_attribute15                  = p_rec.cont_attribute15,
101   cont_attribute16                  = p_rec.cont_attribute16,
102   cont_attribute17                  = p_rec.cont_attribute17,
103   cont_attribute18                  = p_rec.cont_attribute18,
104   cont_attribute19                  = p_rec.cont_attribute19,
105   cont_attribute20                  = p_rec.cont_attribute20,
106   cont_information_category           = p_rec.cont_information_category,
107   cont_information1                   = p_rec.cont_information1,
108   cont_information2                   = p_rec.cont_information2,
109   cont_information3                   = p_rec.cont_information3,
110   cont_information4                   = p_rec.cont_information4,
111   cont_information5                   = p_rec.cont_information5,
112   cont_information6                   = p_rec.cont_information6,
113   cont_information7                   = p_rec.cont_information7,
114   cont_information8                   = p_rec.cont_information8,
115   cont_information9                   = p_rec.cont_information9,
116   cont_information10                  = p_rec.cont_information10,
117   cont_information11                  = p_rec.cont_information11,
118   cont_information12                  = p_rec.cont_information12,
119   cont_information13                  = p_rec.cont_information13,
120   cont_information14                  = p_rec.cont_information14,
121   cont_information15                  = p_rec.cont_information15,
122   cont_information16                  = p_rec.cont_information16,
123   cont_information17                  = p_rec.cont_information17,
124   cont_information18                  = p_rec.cont_information18,
125   cont_information19                  = p_rec.cont_information19,
126   cont_information20                  = p_rec.cont_information20,
127   third_party_pay_flag              = p_rec.third_party_pay_flag,
128   bondholder_flag                   = p_rec.bondholder_flag,
129   dependent_flag                    = p_rec.dependent_flag,
130   beneficiary_flag                  = p_rec.beneficiary_flag,
131   object_version_number             = p_rec.object_version_number
132   where contact_relationship_id = p_rec.contact_relationship_id;
133   --
134   per_ctr_shd.g_api_dml := false;   -- Unset the api dml status
135   --
136   hr_utility.set_location(' Leaving:'||l_proc, 10);
137 --
138 Exception
139   When hr_api.check_integrity_violated Then
140     -- A check constraint has been violated
141     per_ctr_shd.g_api_dml := false;   -- Unset the api dml status
142     per_ctr_shd.constraint_error
143       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
144   When hr_api.parent_integrity_violated Then
145     -- Parent integrity has been violated
146     per_ctr_shd.g_api_dml := false;   -- Unset the api dml status
147     per_ctr_shd.constraint_error
148       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
149   When hr_api.unique_integrity_violated Then
150     -- Unique integrity has been violated
151     per_ctr_shd.g_api_dml := false;   -- Unset the api dml status
152     per_ctr_shd.constraint_error
153       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
154   When Others Then
155     per_ctr_shd.g_api_dml := false;   -- Unset the api dml status
156     Raise;
157 End update_dml;
158 --
159 -- ----------------------------------------------------------------------------
160 -- |------------------------------< pre_update >------------------------------|
161 -- ----------------------------------------------------------------------------
162 -- {Start Of Comments}
163 --
164 -- Description:
165 --   This private procedure contains any processing which is required before
166 --   the update dml.
167 --
168 -- Pre Conditions:
169 --   This is an internal procedure which is called from the upd procedure.
170 --
171 -- In Parameters:
172 --   A Pl/Sql record structre.
173 --
174 -- Post Success:
175 --   Processing continues.
176 --
177 -- Post Failure:
178 --   If an error has occurred, an error message and exception will be raised
179 --   but not handled.
180 --
181 -- Developer Implementation Notes:
182 --   Any pre-processing required before the update dml is issued should be
183 --   coded within this procedure. It is important to note that any 3rd party
184 --   maintenance should be reviewed before placing in this procedure.
185 --
186 -- Access Status:
187 --   Internal Table Handler Use Only.
188 --
189 -- {End Of Comments}
190 -- ----------------------------------------------------------------------------
191 Procedure pre_update(p_rec in per_ctr_shd.g_rec_type) is
192 --
193   l_proc  varchar2(72) := g_package||'pre_update';
194 --
195 Begin
196   hr_utility.set_location('Entering:'||l_proc, 5);
197   --
198   hr_utility.set_location(' Leaving:'||l_proc, 10);
199 End pre_update;
200 --
201 -- ----------------------------------------------------------------------------
202 -- |-----------------------------< post_update >------------------------------|
203 -- ----------------------------------------------------------------------------
204 -- {Start Of Comments}
205 --
206 -- Description:
207 --   This private procedure contains any processing which is required after the
208 --   update dml.
209 --
210 -- Pre Conditions:
211 --   This is an internal procedure which is called from the upd procedure.
212 --
213 -- In Parameters:
214 --   A Pl/Sql record structre.
215 --
216 -- Post Success:
217 --   Processing continues.
218 --
219 -- Post Failure:
220 --   If an error has occurred, an error message and exception will be raised
221 --   but not handled.
222 --
223 -- Developer Implementation Notes:
224 --   Any post-processing required after the update dml is issued should be
225 --   coded within this procedure. It is important to note that any 3rd party
226 --   maintenance should be reviewed before placing in this procedure.
227 --
228 -- Access Status:
229 --   Internal Table Handler Use Only.
230 --
231 -- {End Of Comments}
232 -- ----------------------------------------------------------------------------
233 Procedure post_update(p_rec            in per_ctr_shd.g_rec_type,
234                       p_effective_date in date) is
235 --
236   l_proc  varchar2(72) := g_package||'post_update';
237   --
238   -- Start of fix for WWBUG 1408379
239   --
240   l_old ben_con_ler.g_con_ler_rec;
241   l_new ben_con_ler.g_con_ler_rec;
242   --
243   -- End of fix for WWBUG 1408379
244   --
245 --
246 Begin
247   hr_utility.set_location('Entering:'||l_proc, 5);
248   --
249   -- Start of API User Hook for post_update.
250   begin
251     per_ctr_rku.after_update
252       (p_contact_relationship_id        => p_rec.contact_relationship_id
253       ,p_business_group_id              => p_rec.business_group_id
254       ,p_person_id                      => p_rec.person_id
255       ,p_contact_person_id              => p_rec.contact_person_id
256       ,p_contact_type                   => p_rec.contact_type
257       ,p_comments                       => p_rec.comments
258       ,p_primary_contact_flag           => p_rec.primary_contact_flag
259       ,p_request_id                     => p_rec.request_id
260       ,p_program_application_id         => p_rec.program_application_id
261       ,p_program_id                     => p_rec.program_id
262       ,p_program_update_date            => p_rec.program_update_date
263       ,p_date_start                     => p_rec.date_start
264       ,p_start_life_reason_id           => p_rec.start_life_reason_id
265       ,p_date_end                       => p_rec.date_end
266       ,p_end_life_reason_id             => p_rec.end_life_reason_id
267       ,p_rltd_per_rsds_w_dsgntr_flag    => p_rec.rltd_per_rsds_w_dsgntr_flag
268       ,p_personal_flag                  => p_rec.personal_flag
269       ,p_sequence_number                => p_rec.sequence_number
270       ,p_cont_attribute_category        => p_rec.cont_attribute_category
271       ,p_cont_attribute1                => p_rec.cont_attribute1
272       ,p_cont_attribute2                => p_rec.cont_attribute2
273       ,p_cont_attribute3                => p_rec.cont_attribute3
274       ,p_cont_attribute4                => p_rec.cont_attribute4
275       ,p_cont_attribute5                => p_rec.cont_attribute5
276       ,p_cont_attribute6                => p_rec.cont_attribute6
277       ,p_cont_attribute7                => p_rec.cont_attribute7
278       ,p_cont_attribute8                => p_rec.cont_attribute8
279       ,p_cont_attribute9                => p_rec.cont_attribute9
280       ,p_cont_attribute10               => p_rec.cont_attribute10
281       ,p_cont_attribute11               => p_rec.cont_attribute11
282       ,p_cont_attribute12               => p_rec.cont_attribute12
283       ,p_cont_attribute13               => p_rec.cont_attribute13
284       ,p_cont_attribute14               => p_rec.cont_attribute14
285       ,p_cont_attribute15               => p_rec.cont_attribute15
286       ,p_cont_attribute16               => p_rec.cont_attribute16
287       ,p_cont_attribute17               => p_rec.cont_attribute17
288       ,p_cont_attribute18               => p_rec.cont_attribute18
289       ,p_cont_attribute19               => p_rec.cont_attribute19
290       ,p_cont_attribute20               => p_rec.cont_attribute20
291       ,p_cont_information_category        => p_rec.cont_information_category
292       ,p_cont_information1                => p_rec.cont_information1
293       ,p_cont_information2                => p_rec.cont_information2
294       ,p_cont_information3                => p_rec.cont_information3
295       ,p_cont_information4                => p_rec.cont_information4
296       ,p_cont_information5                => p_rec.cont_information5
297       ,p_cont_information6                => p_rec.cont_information6
298       ,p_cont_information7                => p_rec.cont_information7
299       ,p_cont_information8                => p_rec.cont_information8
300       ,p_cont_information9                => p_rec.cont_information9
301       ,p_cont_information10               => p_rec.cont_information10
302       ,p_cont_information11               => p_rec.cont_information11
303       ,p_cont_information12               => p_rec.cont_information12
304       ,p_cont_information13               => p_rec.cont_information13
305       ,p_cont_information14               => p_rec.cont_information14
306       ,p_cont_information15               => p_rec.cont_information15
307       ,p_cont_information16               => p_rec.cont_information16
308       ,p_cont_information17               => p_rec.cont_information17
309       ,p_cont_information18               => p_rec.cont_information18
310       ,p_cont_information19               => p_rec.cont_information19
311       ,p_cont_information20               => p_rec.cont_information20
312       ,p_third_party_pay_flag           => p_rec.third_party_pay_flag
313       ,p_bondholder_flag                => p_rec.bondholder_flag
314       ,p_dependent_flag                 => p_rec.dependent_flag
315       ,p_beneficiary_flag               => p_rec.beneficiary_flag
316       ,p_object_version_number          => p_rec.object_version_number
317       ,p_effective_date                 => p_effective_date
318       ,p_business_group_id_o
319           => per_ctr_shd.g_old_rec.business_group_id
320       ,p_person_id_o
321           => per_ctr_shd.g_old_rec.person_id
322       ,p_contact_person_id_o
323           => per_ctr_shd.g_old_rec.contact_person_id
324       ,p_contact_type_o
325           => per_ctr_shd.g_old_rec.contact_type
326       ,p_comments_o
327           => per_ctr_shd.g_old_rec.comments
328       ,p_primary_contact_flag_o
329           => per_ctr_shd.g_old_rec.primary_contact_flag
330       ,p_request_id_o
331           => per_ctr_shd.g_old_rec.request_id
332       ,p_program_application_id_o
333           => per_ctr_shd.g_old_rec.program_application_id
334       ,p_program_id_o
335           => per_ctr_shd.g_old_rec.program_id
336       ,p_program_update_date_o
337           => per_ctr_shd.g_old_rec.program_update_date
338       ,p_date_start_o
339           => per_ctr_shd.g_old_rec.date_start
340       ,p_start_life_id_o
341           => per_ctr_shd.g_old_rec.start_life_reason_id
342       ,p_date_end_o
343           => per_ctr_shd.g_old_rec.date_end
344       ,p_end_life_id_o
345           => per_ctr_shd.g_old_rec.end_life_reason_id
346       ,p_rltd_per_dsgntr_flag_o
347          => per_ctr_shd.g_old_rec.rltd_per_rsds_w_dsgntr_flag
348       ,p_personal_flag_o
349          => per_ctr_shd.g_old_rec.personal_flag
350       ,p_sequence_number_o
351     => per_ctr_shd.g_old_rec.sequence_number
352       ,p_cont_attribute_category_o
353           => per_ctr_shd.g_old_rec.cont_attribute_category
354       ,p_cont_attribute1_o
355           => per_ctr_shd.g_old_rec.cont_attribute1
356       ,p_cont_attribute2_o
357           => per_ctr_shd.g_old_rec.cont_attribute2
358       ,p_cont_attribute3_o
359           => per_ctr_shd.g_old_rec.cont_attribute3
360       ,p_cont_attribute4_o
361           => per_ctr_shd.g_old_rec.cont_attribute4
362       ,p_cont_attribute5_o
363           => per_ctr_shd.g_old_rec.cont_attribute5
364       ,p_cont_attribute6_o
365           => per_ctr_shd.g_old_rec.cont_attribute6
366       ,p_cont_attribute7_o
367           => per_ctr_shd.g_old_rec.cont_attribute7
368       ,p_cont_attribute8_o
369           => per_ctr_shd.g_old_rec.cont_attribute8
370       ,p_cont_attribute9_o
371           => per_ctr_shd.g_old_rec.cont_attribute9
372       ,p_cont_attribute10_o
373           => per_ctr_shd.g_old_rec.cont_attribute10
374       ,p_cont_attribute11_o
375           => per_ctr_shd.g_old_rec.cont_attribute11
376       ,p_cont_attribute12_o
377           => per_ctr_shd.g_old_rec.cont_attribute12
378       ,p_cont_attribute13_o
379           => per_ctr_shd.g_old_rec.cont_attribute13
380       ,p_cont_attribute14_o
381           => per_ctr_shd.g_old_rec.cont_attribute14
382       ,p_cont_attribute15_o
383           => per_ctr_shd.g_old_rec.cont_attribute15
384       ,p_cont_attribute16_o
385           => per_ctr_shd.g_old_rec.cont_attribute16
386       ,p_cont_attribute17_o
387           => per_ctr_shd.g_old_rec.cont_attribute17
388       ,p_cont_attribute18_o
389           => per_ctr_shd.g_old_rec.cont_attribute18
390       ,p_cont_attribute19_o
391           => per_ctr_shd.g_old_rec.cont_attribute19
392       ,p_cont_attribute20_o
393           => per_ctr_shd.g_old_rec.cont_attribute20
394       ,p_cont_information_category_o
395           => per_ctr_shd.g_old_rec.cont_information_category
396       ,p_cont_information1_o
397           => per_ctr_shd.g_old_rec.cont_information1
398       ,p_cont_information2_o
399           => per_ctr_shd.g_old_rec.cont_information2
400       ,p_cont_information3_o
401           => per_ctr_shd.g_old_rec.cont_information3
402       ,p_cont_information4_o
403           => per_ctr_shd.g_old_rec.cont_information4
404       ,p_cont_information5_o
405           => per_ctr_shd.g_old_rec.cont_information5
406       ,p_cont_information6_o
407           => per_ctr_shd.g_old_rec.cont_information6
408       ,p_cont_information7_o
409           => per_ctr_shd.g_old_rec.cont_information7
410       ,p_cont_information8_o
411           => per_ctr_shd.g_old_rec.cont_information8
412       ,p_cont_information9_o
413           => per_ctr_shd.g_old_rec.cont_information9
414       ,p_cont_information10_o
415           => per_ctr_shd.g_old_rec.cont_information10
416       ,p_cont_information11_o
417           => per_ctr_shd.g_old_rec.cont_information11
418       ,p_cont_information12_o
419           => per_ctr_shd.g_old_rec.cont_information12
420       ,p_cont_information13_o
421           => per_ctr_shd.g_old_rec.cont_information13
422       ,p_cont_information14_o
423           => per_ctr_shd.g_old_rec.cont_information14
424       ,p_cont_information15_o
425           => per_ctr_shd.g_old_rec.cont_information15
426       ,p_cont_information16_o
427           => per_ctr_shd.g_old_rec.cont_information16
428       ,p_cont_information17_o
429           => per_ctr_shd.g_old_rec.cont_information17
430       ,p_cont_information18_o
431           => per_ctr_shd.g_old_rec.cont_information18
432       ,p_cont_information19_o
433           => per_ctr_shd.g_old_rec.cont_information19
434       ,p_cont_information20_o
435           => per_ctr_shd.g_old_rec.cont_information20
436       ,p_third_party_pay_flag_o
437           => per_ctr_shd.g_old_rec.third_party_pay_flag
438       ,p_bondholder_flag_o
439           => per_ctr_shd.g_old_rec.bondholder_flag
440       ,p_dependent_flag_o
441           => per_ctr_shd.g_old_rec.dependent_flag
442       ,p_beneficiary_flag_o
443           => per_ctr_shd.g_old_rec.beneficiary_flag
444       ,p_object_version_number_o
445           => per_ctr_shd.g_old_rec.object_version_number
446       );
447   exception
448     when hr_api.cannot_find_prog_unit then
449       hr_api.cannot_find_prog_unit_error
450         (p_module_name => 'PER_CONTACT_RELATIONSHIPS'
451         ,p_hook_type   => 'AU'
452         );
453   end;
454   --
455   -- Start of Fix for WWBUG 1408379
456   --
457   l_old.person_id := per_ctr_shd.g_old_rec.person_id;
458   l_old.contact_person_id := per_ctr_shd.g_old_rec.contact_person_id;
459   l_old.business_group_id := per_ctr_shd.g_old_rec.business_group_id;
460   l_old.date_start := per_ctr_shd.g_old_rec.date_start;
461   l_old.date_end := per_ctr_shd.g_old_rec.date_end;
462   l_old.contact_type := per_ctr_shd.g_old_rec.contact_type;
463   l_old.personal_flag := per_ctr_shd.g_old_rec.personal_flag;
464   l_old.start_life_reason_id := per_ctr_shd.g_old_rec.start_life_reason_id;
465   l_old.end_life_reason_id := per_ctr_shd.g_old_rec.end_life_reason_id;
466   l_old.rltd_per_rsds_w_dsgntr_flag := per_ctr_shd.g_old_rec.rltd_per_rsds_w_dsgntr_flag;
467   l_old.contact_relationship_id := per_ctr_shd.g_old_rec.contact_relationship_id;
468 
469    -- Start of fix 14498058
470   l_old.cont_attribute1  := per_ctr_shd.g_old_rec.cont_attribute1;
471   l_old.cont_attribute2  := per_ctr_shd.g_old_rec.cont_attribute2;
472   l_old.cont_attribute3  := per_ctr_shd.g_old_rec.cont_attribute3;
473   l_old.cont_attribute4  := per_ctr_shd.g_old_rec.cont_attribute4;
474   l_old.cont_attribute5  := per_ctr_shd.g_old_rec.cont_attribute5;
475   l_old.cont_attribute6  := per_ctr_shd.g_old_rec.cont_attribute6;
476   l_old.cont_attribute7  := per_ctr_shd.g_old_rec.cont_attribute7;
477   l_old.cont_attribute8  := per_ctr_shd.g_old_rec.cont_attribute8;
478   l_old.cont_attribute9  := per_ctr_shd.g_old_rec.cont_attribute9;
479   l_old.cont_attribute10 := per_ctr_shd.g_old_rec.cont_attribute10;
480   l_old.cont_attribute11 := per_ctr_shd.g_old_rec.cont_attribute11;
481   l_old.cont_attribute12 := per_ctr_shd.g_old_rec.cont_attribute12;
482   l_old.cont_attribute13 := per_ctr_shd.g_old_rec.cont_attribute13;
483   l_old.cont_attribute14 := per_ctr_shd.g_old_rec.cont_attribute14;
484   l_old.cont_attribute15 := per_ctr_shd.g_old_rec.cont_attribute15;
485   l_old.cont_attribute16 := per_ctr_shd.g_old_rec.cont_attribute16;
486   l_old.cont_attribute17 := per_ctr_shd.g_old_rec.cont_attribute17;
487   l_old.cont_attribute18 := per_ctr_shd.g_old_rec.cont_attribute18;
488   l_old.cont_attribute19 := per_ctr_shd.g_old_rec.cont_attribute19;
489   l_old.cont_attribute20 := per_ctr_shd.g_old_rec.cont_attribute20;
490 
491   l_new.cont_attribute1  := p_rec.cont_attribute1;
492   l_new.cont_attribute2  := p_rec.cont_attribute2;
493   l_new.cont_attribute3  := p_rec.cont_attribute3;
494   l_new.cont_attribute4  := p_rec.cont_attribute4;
495   l_new.cont_attribute5  := p_rec.cont_attribute5;
496   l_new.cont_attribute6  := p_rec.cont_attribute6;
497   l_new.cont_attribute7  := p_rec.cont_attribute7;
498   l_new.cont_attribute8  := p_rec.cont_attribute8;
499   l_new.cont_attribute9  := p_rec.cont_attribute9;
500   l_new.cont_attribute10 := p_rec.cont_attribute10;
501   l_new.cont_attribute11 := p_rec.cont_attribute11;
502   l_new.cont_attribute12 := p_rec.cont_attribute12;
503   l_new.cont_attribute13 := p_rec.cont_attribute13;
504   l_new.cont_attribute14 := p_rec.cont_attribute14;
505   l_new.cont_attribute15 := p_rec.cont_attribute15;
506   l_new.cont_attribute16 := p_rec.cont_attribute16;
507   l_new.cont_attribute17 := p_rec.cont_attribute17;
508   l_new.cont_attribute18 := p_rec.cont_attribute18;
509   l_new.cont_attribute19 := p_rec.cont_attribute19;
510   l_new.cont_attribute20 := p_rec.cont_attribute20;
511   -- End of fix 14498058
512 
513   l_new.person_id := p_rec.person_id;
514   l_new.contact_person_id := p_rec.contact_person_id;
515   l_new.business_group_id := p_rec.business_group_id;
516   l_new.date_start := p_rec.date_start;
517   l_new.date_end := p_rec.date_end;
518   l_new.contact_type := p_rec.contact_type;
519   l_new.personal_flag := p_rec.personal_flag;
520   l_new.start_life_reason_id := p_rec.start_life_reason_id;
521   l_new.end_life_reason_id := p_rec.end_life_reason_id;
522   l_new.rltd_per_rsds_w_dsgntr_flag := p_rec.rltd_per_rsds_w_dsgntr_flag;
523   l_new.contact_relationship_id := p_rec.contact_relationship_id;
524   --
525   ben_con_ler.ler_chk(p_old            => l_old,
526                       p_new            => l_new,
527                       p_effective_date => p_effective_date);
528   --
529   -- End of Fix for WWBUG 1408379
530   --
531   --
532   -- End of API User Hook for post_update.
533   --
534   hr_utility.set_location(' Leaving:'||l_proc, 10);
535 End post_update;
536 --
537 -- ----------------------------------------------------------------------------
538 -- |-----------------------------< convert_defs >-----------------------------|
539 -- ----------------------------------------------------------------------------
540 -- {Start Of Comments}
541 --
542 -- Description:
543 --   The Convert_Defs procedure has one very important function:
544 --   It must return the record structure for the row with all system defaulted
545 --   values converted into its corresponding parameter value for update. When
546 --   we attempt to update a row through the Upd process , certain
547 --   parameters can be defaulted which enables flexibility in the calling of
548 --   the upd process (e.g. only attributes which need to be updated need to be
549 --   specified). For the upd process to determine which attributes
550 --   have NOT been specified we need to check if the parameter has a reserved
551 --   system default value. Therefore, for all parameters which have a
552 --   corresponding reserved system default mechanism specified we need to
553 --   check if a system default is being used. If a system default is being
554 --   used then we convert the defaulted value into its corresponding attribute
555 --   value held in the g_old_rec data structure.
556 --
557 -- Pre Conditions:
558 --   This private function can only be called from the upd process.
559 --
560 -- In Parameters:
561 --   A Pl/Sql record structre.
562 --
563 -- Post Success:
564 --   The record structure will be returned with all system defaulted parameter
565 --   values converted into its current row attribute value.
566 --
567 -- Post Failure:
568 --   No direct error handling is required within this function. Any possible
569 --   errors within this procedure will be a PL/SQL value error due to conversion
570 
571 --   of datatypes or data lengths.
572 --
573 -- Developer Implementation Notes:
574 --   None.
575 --
576 -- Access Status:
577 --   Internal Table Handler Use Only.
578 --
579 -- {End Of Comments}
580 -- ----------------------------------------------------------------------------
581 Procedure convert_defs(p_rec in out nocopy per_ctr_shd.g_rec_type) is
582 --
583   l_proc  varchar2(72) := g_package||'convert_defs';
584 --
585 Begin
586   --
587   hr_utility.set_location('Entering:'||l_proc, 5);
588   --
589   -- We must now examine each argument value in the
590   -- p_rec plsql record structure
591   -- to see if a system default is being used. If a system default
592   -- is being used then we must set to the 'current' argument value.
593   --
594   If (p_rec.business_group_id = hr_api.g_number) then
595     p_rec.business_group_id :=
596     per_ctr_shd.g_old_rec.business_group_id;
597   End If;
598   If (p_rec.person_id = hr_api.g_number) then
599     p_rec.person_id :=
600     per_ctr_shd.g_old_rec.person_id;
601   End If;
602   If (p_rec.contact_person_id = hr_api.g_number) then
603     p_rec.contact_person_id :=
604     per_ctr_shd.g_old_rec.contact_person_id;
605   End If;
606   If (p_rec.contact_type = hr_api.g_varchar2) then
607     p_rec.contact_type :=
608     per_ctr_shd.g_old_rec.contact_type;
609   End If;
610   If (p_rec.comments = hr_api.g_varchar2) then
611     p_rec.comments :=
612     per_ctr_shd.g_old_rec.comments;
613   End If;
614   If (p_rec.primary_contact_flag = hr_api.g_varchar2) then
615     p_rec.primary_contact_flag :=
616     per_ctr_shd.g_old_rec.primary_contact_flag;
617   End If;
618   If (p_rec.request_id = hr_api.g_number) then
619     p_rec.request_id :=
620     per_ctr_shd.g_old_rec.request_id;
621   End If;
622   If (p_rec.program_application_id = hr_api.g_number) then
623     p_rec.program_application_id :=
624     per_ctr_shd.g_old_rec.program_application_id;
625   End If;
626   If (p_rec.program_id = hr_api.g_number) then
627     p_rec.program_id :=
628     per_ctr_shd.g_old_rec.program_id;
629   End If;
630   If (p_rec.program_update_date = hr_api.g_date) then
631     p_rec.program_update_date :=
632     per_ctr_shd.g_old_rec.program_update_date;
633   End If;
634   If (p_rec.date_start = hr_api.g_date) then
635     p_rec.date_start :=
636      per_ctr_shd.g_old_rec.date_start;
637   End If;
638   If (p_rec.start_life_reason_id = hr_api.g_number) then
639     p_rec.start_life_reason_id :=
640       per_ctr_shd.g_old_rec.start_life_reason_id;
641   End If;
642   If (p_rec.date_end = hr_api.g_date) then
643     p_rec.date_end :=
644        per_ctr_shd.g_old_rec.date_end;
645   End If;
646   If (p_rec.end_life_reason_id = hr_api.g_number) then
647     p_rec.end_life_reason_id :=
648       per_ctr_shd.g_old_rec.end_life_reason_id;
649   End If;
650   If (p_rec.rltd_per_rsds_w_dsgntr_flag = hr_api.g_varchar2) then
651     p_rec.rltd_per_rsds_w_dsgntr_flag :=
652       per_ctr_shd.g_old_rec.rltd_per_rsds_w_dsgntr_flag;
653   End If;
654   If (p_rec.personal_flag = hr_api.g_varchar2) then
655     p_rec.personal_flag :=
656       per_ctr_shd.g_old_rec.personal_flag;
657   End If;
658   If (p_rec.sequence_number = hr_api.g_number) then
659     p_rec.sequence_number :=
660       per_ctr_shd.g_old_rec.sequence_number;
661   End If;
662   If (p_rec.cont_attribute_category = hr_api.g_varchar2) then
663     p_rec.cont_attribute_category :=
664     per_ctr_shd.g_old_rec.cont_attribute_category;
665   End If;
666   If (p_rec.cont_attribute1 = hr_api.g_varchar2) then
667     p_rec.cont_attribute1 :=
668     per_ctr_shd.g_old_rec.cont_attribute1;
669   End If;
670   If (p_rec.cont_attribute2 = hr_api.g_varchar2) then
671     p_rec.cont_attribute2 :=
672     per_ctr_shd.g_old_rec.cont_attribute2;
673   End If;
674   If (p_rec.cont_attribute3 = hr_api.g_varchar2) then
675     p_rec.cont_attribute3 :=
676     per_ctr_shd.g_old_rec.cont_attribute3;
677   End If;
678   If (p_rec.cont_attribute4 = hr_api.g_varchar2) then
679     p_rec.cont_attribute4 :=
680     per_ctr_shd.g_old_rec.cont_attribute4;
681   End If;
682   If (p_rec.cont_attribute5 = hr_api.g_varchar2) then
683     p_rec.cont_attribute5 :=
684     per_ctr_shd.g_old_rec.cont_attribute5;
685   End If;
686   If (p_rec.cont_attribute6 = hr_api.g_varchar2) then
687     p_rec.cont_attribute6 :=
688     per_ctr_shd.g_old_rec.cont_attribute6;
689   End If;
690   If (p_rec.cont_attribute7 = hr_api.g_varchar2) then
691     p_rec.cont_attribute7 :=
692     per_ctr_shd.g_old_rec.cont_attribute7;
693   End If;
694   If (p_rec.cont_attribute8 = hr_api.g_varchar2) then
695     p_rec.cont_attribute8 :=
696     per_ctr_shd.g_old_rec.cont_attribute8;
697   End If;
698   If (p_rec.cont_attribute9 = hr_api.g_varchar2) then
699     p_rec.cont_attribute9 :=
700     per_ctr_shd.g_old_rec.cont_attribute9;
701   End If;
702   If (p_rec.cont_attribute10 = hr_api.g_varchar2) then
703     p_rec.cont_attribute10 :=
704     per_ctr_shd.g_old_rec.cont_attribute10;
705   End If;
706   If (p_rec.cont_attribute11 = hr_api.g_varchar2) then
707     p_rec.cont_attribute11 :=
708     per_ctr_shd.g_old_rec.cont_attribute11;
709   End If;
710   If (p_rec.cont_attribute12 = hr_api.g_varchar2) then
711     p_rec.cont_attribute12 :=
712     per_ctr_shd.g_old_rec.cont_attribute12;
713   End If;
714   If (p_rec.cont_attribute13 = hr_api.g_varchar2) then
715     p_rec.cont_attribute13 :=
716     per_ctr_shd.g_old_rec.cont_attribute13;
717   End If;
718   If (p_rec.cont_attribute14 = hr_api.g_varchar2) then
719     p_rec.cont_attribute14 :=
720     per_ctr_shd.g_old_rec.cont_attribute14;
721   End If;
722   If (p_rec.cont_attribute15 = hr_api.g_varchar2) then
723     p_rec.cont_attribute15 :=
724     per_ctr_shd.g_old_rec.cont_attribute15;
725   End If;
726   If (p_rec.cont_attribute16 = hr_api.g_varchar2) then
727     p_rec.cont_attribute16 :=
728     per_ctr_shd.g_old_rec.cont_attribute16;
729   End If;
730   If (p_rec.cont_attribute17 = hr_api.g_varchar2) then
731     p_rec.cont_attribute17 :=
732     per_ctr_shd.g_old_rec.cont_attribute17;
733   End If;
734   If (p_rec.cont_attribute18 = hr_api.g_varchar2) then
735     p_rec.cont_attribute18 :=
736     per_ctr_shd.g_old_rec.cont_attribute18;
737   End If;
738   If (p_rec.cont_attribute19 = hr_api.g_varchar2) then
739     p_rec.cont_attribute19 :=
740     per_ctr_shd.g_old_rec.cont_attribute19;
741   End If;
742   If (p_rec.cont_attribute20 = hr_api.g_varchar2) then
743     p_rec.cont_attribute20 :=
744     per_ctr_shd.g_old_rec.cont_attribute20;
745   End If;
746   If (p_rec.cont_information_category = hr_api.g_varchar2) then
747     p_rec.cont_information_category :=
748     per_ctr_shd.g_old_rec.cont_information_category;
749   End If;
750   If (p_rec.cont_information1 = hr_api.g_varchar2) then
751     p_rec.cont_information1 :=
752     per_ctr_shd.g_old_rec.cont_information1;
753   End If;
754   If (p_rec.cont_information2 = hr_api.g_varchar2) then
755     p_rec.cont_information2 :=
756     per_ctr_shd.g_old_rec.cont_information2;
757   End If;
758   If (p_rec.cont_information3 = hr_api.g_varchar2) then
759     p_rec.cont_information3 :=
760     per_ctr_shd.g_old_rec.cont_information3;
761   End If;
762   If (p_rec.cont_information4 = hr_api.g_varchar2) then
763     p_rec.cont_information4 :=
764     per_ctr_shd.g_old_rec.cont_information4;
765   End If;
766   If (p_rec.cont_information5 = hr_api.g_varchar2) then
767     p_rec.cont_information5 :=
768     per_ctr_shd.g_old_rec.cont_information5;
769   End If;
770   If (p_rec.cont_information6 = hr_api.g_varchar2) then
771     p_rec.cont_information6 :=
772     per_ctr_shd.g_old_rec.cont_information6;
773   End If;
774   If (p_rec.cont_information7 = hr_api.g_varchar2) then
775     p_rec.cont_information7 :=
776     per_ctr_shd.g_old_rec.cont_information7;
777   End If;
778   If (p_rec.cont_information8 = hr_api.g_varchar2) then
779     p_rec.cont_information8 :=
780     per_ctr_shd.g_old_rec.cont_information8;
781   End If;
782   If (p_rec.cont_information9 = hr_api.g_varchar2) then
783     p_rec.cont_information9 :=
784     per_ctr_shd.g_old_rec.cont_information9;
785   End If;
786   If (p_rec.cont_information10 = hr_api.g_varchar2) then
787     p_rec.cont_information10 :=
788     per_ctr_shd.g_old_rec.cont_information10;
789   End If;
790   If (p_rec.cont_information11 = hr_api.g_varchar2) then
791     p_rec.cont_information11 :=
792     per_ctr_shd.g_old_rec.cont_information11;
793   End If;
794   If (p_rec.cont_information12 = hr_api.g_varchar2) then
795     p_rec.cont_information12 :=
796     per_ctr_shd.g_old_rec.cont_information12;
797   End If;
798   If (p_rec.cont_information13 = hr_api.g_varchar2) then
799     p_rec.cont_information13 :=
800     per_ctr_shd.g_old_rec.cont_information13;
801   End If;
802   If (p_rec.cont_information14 = hr_api.g_varchar2) then
803     p_rec.cont_information14 :=
804     per_ctr_shd.g_old_rec.cont_information14;
805   End If;
806   If (p_rec.cont_information15 = hr_api.g_varchar2) then
807     p_rec.cont_information15 :=
808     per_ctr_shd.g_old_rec.cont_information15;
809   End If;
810   If (p_rec.cont_information16 = hr_api.g_varchar2) then
811     p_rec.cont_information16 :=
812     per_ctr_shd.g_old_rec.cont_information16;
813   End If;
814   If (p_rec.cont_information17 = hr_api.g_varchar2) then
815     p_rec.cont_information17 :=
816     per_ctr_shd.g_old_rec.cont_information17;
817   End If;
818   If (p_rec.cont_information18 = hr_api.g_varchar2) then
819     p_rec.cont_information18 :=
820     per_ctr_shd.g_old_rec.cont_information18;
821   End If;
822   If (p_rec.cont_information19 = hr_api.g_varchar2) then
823     p_rec.cont_information19 :=
824     per_ctr_shd.g_old_rec.cont_information19;
825   End If;
826   If (p_rec.cont_information20 = hr_api.g_varchar2) then
827     p_rec.cont_information20 :=
828     per_ctr_shd.g_old_rec.cont_information20;
829   End If;
830   If (p_rec.third_party_pay_flag = hr_api.g_varchar2) then
831     p_rec.third_party_pay_flag :=
832     per_ctr_shd.g_old_rec.third_party_pay_flag;
833   End If;
834   If (p_rec.bondholder_flag = hr_api.g_varchar2) then
835     p_rec.bondholder_flag :=
836     per_ctr_shd.g_old_rec.bondholder_flag;
837   End If;
838   If (p_rec.dependent_flag = hr_api.g_varchar2) then
839     p_rec.dependent_flag :=
840     per_ctr_shd.g_old_rec.dependent_flag;
841   End If;
842   If (p_rec.beneficiary_flag = hr_api.g_varchar2) then
843     p_rec.beneficiary_flag :=
844     per_ctr_shd.g_old_rec.beneficiary_flag;
845   End If;
846   --
847   hr_utility.set_location(' Leaving:'||l_proc, 10);
848 --
849 End convert_defs;
850 --
851 -- ----------------------------------------------------------------------------
852 -- |---------------------------------< upd >----------------------------------|
853 -- ----------------------------------------------------------------------------
854 Procedure upd
855   (
856   p_rec            in out nocopy per_ctr_shd.g_rec_type,
857   p_effective_date in date,
858   p_validate       in     boolean default false
859   ) is
860 --
861   l_proc  varchar2(72) := g_package||'upd';
862 --
863 Begin
864   hr_utility.set_location('Entering:'||l_proc, 5);
865   --
866   -- Determine if the business process is to be validated.
867   --
868   If p_validate then
869     --
870     -- Issue the savepoint.
871     --
872     SAVEPOINT upd_per_ctr;
873   End If;
874   --
875   -- We must lock the row which we need to update.
876   --
877   per_ctr_shd.lck
878    (
879    p_rec.contact_relationship_id,
880    p_rec.object_version_number
881    );
882   --
883   -- 1. During an update system defaults are used to determine if
884   --    arguments have been defaulted or not. We must therefore
885   --    derive the full record structure values to be updated.
886   --
887   -- 2. Call the supporting update validate operations.
888   --
889   convert_defs(p_rec);
890   per_ctr_bus.update_validate(p_rec
891                              ,p_effective_date);
892   --
893   -- Call the supporting pre-update operation
894   --
895   pre_update(p_rec);
896   --
897   -- Update the row.
898   --
899   update_dml(p_rec);
900   --
901   -- Call the supporting post-update operation
902   --
903   post_update(p_rec
904              ,p_effective_date);
905   --
906   -- If we are validating then raise the Validate_Enabled exception
907   --
908   If p_validate then
909     Raise HR_Api.Validate_Enabled;
910   End If;
911   --
912   hr_utility.set_location(' Leaving:'||l_proc, 10);
913 Exception
914   When HR_Api.Validate_Enabled Then
915     --
916     -- As the Validate_Enabled exception has been raised
917     -- we must rollback to the savepoint
918     --
919     ROLLBACK TO upd_per_ctr;
920 End upd;
921 --
922 -- ----------------------------------------------------------------------------
923 -- |---------------------------------< upd >----------------------------------|
924 -- ----------------------------------------------------------------------------
925 Procedure upd
926   (
927   p_contact_relationship_id      in number,
928   p_contact_type                 in varchar2         default hr_api.g_varchar2,
929   p_comments                     in clob             default hr_api.g_varchar2,	-- Bug#13362792
930   p_primary_contact_flag         in varchar2         default hr_api.g_varchar2,
931   p_request_id                   in number           default hr_api.g_number,
932   p_program_application_id       in number           default hr_api.g_number,
933   p_program_id                   in number           default hr_api.g_number,
934   p_program_update_date          in date             default hr_api.g_date,
935   p_date_start                   in date             default hr_api.g_date,
936   p_start_life_reason_id         in number           default hr_api.g_number,
937   p_date_end                     in date             default hr_api.g_date,
938   p_end_life_reason_id           in number           default hr_api.g_number,
939   p_rltd_per_rsds_w_dsgntr_flag  in varchar2         default hr_api.g_varchar2,
940   p_personal_flag                in varchar2         default hr_api.g_varchar2,
941   p_sequence_number              in number           default hr_api.g_number,
942   p_cont_attribute_category      in varchar2         default hr_api.g_varchar2,
943   p_cont_attribute1              in varchar2         default hr_api.g_varchar2,
944   p_cont_attribute2              in varchar2         default hr_api.g_varchar2,
945   p_cont_attribute3              in varchar2         default hr_api.g_varchar2,
946   p_cont_attribute4              in varchar2         default hr_api.g_varchar2,
947   p_cont_attribute5              in varchar2         default hr_api.g_varchar2,
948   p_cont_attribute6              in varchar2         default hr_api.g_varchar2,
949   p_cont_attribute7              in varchar2         default hr_api.g_varchar2,
950   p_cont_attribute8              in varchar2         default hr_api.g_varchar2,
951   p_cont_attribute9              in varchar2         default hr_api.g_varchar2,
952   p_cont_attribute10             in varchar2         default hr_api.g_varchar2,
953   p_cont_attribute11             in varchar2         default hr_api.g_varchar2,
954   p_cont_attribute12             in varchar2         default hr_api.g_varchar2,
955   p_cont_attribute13             in varchar2         default hr_api.g_varchar2,
956   p_cont_attribute14             in varchar2         default hr_api.g_varchar2,
957   p_cont_attribute15             in varchar2         default hr_api.g_varchar2,
958   p_cont_attribute16             in varchar2         default hr_api.g_varchar2,
959   p_cont_attribute17             in varchar2         default hr_api.g_varchar2,
960   p_cont_attribute18             in varchar2         default hr_api.g_varchar2,
961   p_cont_attribute19             in varchar2         default hr_api.g_varchar2,
962   p_cont_attribute20             in varchar2         default hr_api.g_varchar2,
963   p_cont_information_category      in varchar2         default hr_api.g_varchar2,
964   p_cont_information1              in varchar2         default hr_api.g_varchar2,
965   p_cont_information2              in varchar2         default hr_api.g_varchar2,
966   p_cont_information3              in varchar2         default hr_api.g_varchar2,
967   p_cont_information4              in varchar2         default hr_api.g_varchar2,
968   p_cont_information5              in varchar2         default hr_api.g_varchar2,
969   p_cont_information6              in varchar2         default hr_api.g_varchar2,
970   p_cont_information7              in varchar2         default hr_api.g_varchar2,
971   p_cont_information8              in varchar2         default hr_api.g_varchar2,
972   p_cont_information9              in varchar2         default hr_api.g_varchar2,
973   p_cont_information10             in varchar2         default hr_api.g_varchar2,
974   p_cont_information11             in varchar2         default hr_api.g_varchar2,
975   p_cont_information12             in varchar2         default hr_api.g_varchar2,
976   p_cont_information13             in varchar2         default hr_api.g_varchar2,
977   p_cont_information14             in varchar2         default hr_api.g_varchar2,
978   p_cont_information15             in varchar2         default hr_api.g_varchar2,
979   p_cont_information16             in varchar2         default hr_api.g_varchar2,
980   p_cont_information17             in varchar2         default hr_api.g_varchar2,
981   p_cont_information18             in varchar2         default hr_api.g_varchar2,
982   p_cont_information19             in varchar2         default hr_api.g_varchar2,
983   p_cont_information20             in varchar2         default hr_api.g_varchar2,
984   p_third_party_pay_flag         in varchar2         default hr_api.g_varchar2,
985   p_bondholder_flag              in varchar2         default hr_api.g_varchar2,
986   p_dependent_flag               in varchar2         default hr_api.g_varchar2,
987   p_beneficiary_flag             in varchar2         default hr_api.g_varchar2,
988   p_object_version_number        in out nocopy number,
989   p_effective_date               in date,
990   p_validate                     in boolean      default false
991   ) is
992 --
993   l_rec    per_ctr_shd.g_rec_type;
994   l_proc  varchar2(72) := g_package||'upd';
995 --
996 Begin
997   hr_utility.set_location('Entering:'||l_proc, 5);
998   --
999   -- Call conversion function to turn arguments into the
1000   -- l_rec structure.
1001   --
1002   l_rec :=
1003   per_ctr_shd.convert_args
1004   (
1005   p_contact_relationship_id,
1006   hr_api.g_number,
1007   hr_api.g_number,
1008   hr_api.g_number,
1009   p_contact_type,
1010   p_comments,
1011   p_primary_contact_flag,
1012   p_request_id,
1013   p_program_application_id,
1014   p_program_id,
1015   p_program_update_date,
1016   p_date_start,
1017   p_start_life_reason_id,
1018   p_date_end,
1019   p_end_life_reason_id,
1020   p_rltd_per_rsds_w_dsgntr_flag,
1021   p_personal_flag,
1022   p_sequence_number,
1023   p_cont_attribute_category,
1024   p_cont_attribute1,
1025   p_cont_attribute2,
1026   p_cont_attribute3,
1027   p_cont_attribute4,
1028   p_cont_attribute5,
1029   p_cont_attribute6,
1030   p_cont_attribute7,
1031   p_cont_attribute8,
1032   p_cont_attribute9,
1033   p_cont_attribute10,
1034   p_cont_attribute11,
1035   p_cont_attribute12,
1036   p_cont_attribute13,
1037   p_cont_attribute14,
1038   p_cont_attribute15,
1039   p_cont_attribute16,
1040   p_cont_attribute17,
1041   p_cont_attribute18,
1042   p_cont_attribute19,
1043   p_cont_attribute20,
1044   p_cont_information_category,
1045   p_cont_information1,
1046   p_cont_information2,
1047   p_cont_information3,
1048   p_cont_information4,
1049   p_cont_information5,
1050   p_cont_information6,
1051   p_cont_information7,
1052   p_cont_information8,
1053   p_cont_information9,
1054   p_cont_information10,
1055   p_cont_information11,
1056   p_cont_information12,
1057   p_cont_information13,
1058   p_cont_information14,
1059   p_cont_information15,
1060   p_cont_information16,
1061   p_cont_information17,
1062   p_cont_information18,
1063   p_cont_information19,
1064   p_cont_information20,
1065   p_third_party_pay_flag,
1066   p_bondholder_flag,
1067   p_dependent_flag,
1068   p_beneficiary_flag,
1069   p_object_version_number
1070   );
1071   --
1072   -- Having converted the arguments into the
1073   -- plsql record structure we call the corresponding record
1074   -- business process.
1075   --
1076   upd(l_rec, p_effective_date, p_validate);
1077   p_object_version_number := l_rec.object_version_number;
1078   --
1079   hr_utility.set_location(' Leaving:'||l_proc, 10);
1080 End upd;
1081 --
1082 end per_ctr_upd;