1 Package Body per_esa_upd as
2 /* $Header: peesarhi.pkb 120.0.12010000.3 2008/08/06 09:08:49 ubhat ship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' per_esa_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_esa_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_esa_shd.g_api_dml := true; -- Set the api dml status
66 --
67 -- Update the per_establishment_attendances Row
68 --
69 update per_establishment_attendances
70 set
71 attendance_id = p_rec.attendance_id,
72 person_id = p_rec.person_id,
73 establishment_id = p_rec.establishment_id,
74 establishment = p_rec.establishment,
75 attended_start_date = p_rec.attended_start_date,
76 attended_end_date = p_rec.attended_end_date,
77 full_time = p_rec.full_time,
78 attribute_category = p_rec.attribute_category,
79 attribute1 = p_rec.attribute1,
80 attribute2 = p_rec.attribute2,
81 attribute3 = p_rec.attribute3,
82 attribute4 = p_rec.attribute4,
83 attribute5 = p_rec.attribute5,
84 attribute6 = p_rec.attribute6,
85 attribute7 = p_rec.attribute7,
86 attribute8 = p_rec.attribute8,
87 attribute9 = p_rec.attribute9,
88 attribute10 = p_rec.attribute10,
89 attribute11 = p_rec.attribute11,
90 attribute12 = p_rec.attribute12,
91 attribute13 = p_rec.attribute13,
92 attribute14 = p_rec.attribute14,
93 attribute15 = p_rec.attribute15,
94 attribute16 = p_rec.attribute16,
95 attribute17 = p_rec.attribute17,
96 attribute18 = p_rec.attribute18,
97 attribute19 = p_rec.attribute19,
98 attribute20 = p_rec.attribute20,
99 object_version_number = p_rec.object_version_number,
100 business_group_id = p_rec.business_group_id,
101 party_id = p_rec.party_id, -- HR/TCA merge
102 address = p_rec.address
103 where attendance_id = p_rec.attendance_id;
104 --
105 per_esa_shd.g_api_dml := false; -- Unset the api dml status
106 --
107 hr_utility.set_location(' Leaving:'||l_proc, 10);
108 --
109 Exception
110 When hr_api.check_integrity_violated Then
111 -- A check constraint has been violated
112 per_esa_shd.g_api_dml := false; -- Unset the api dml status
113 per_esa_shd.constraint_error
114 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
115 When hr_api.parent_integrity_violated Then
116 -- Parent integrity has been violated
117 per_esa_shd.g_api_dml := false; -- Unset the api dml status
118 per_esa_shd.constraint_error
119 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
120 When hr_api.unique_integrity_violated Then
121 -- Unique integrity has been violated
122 per_esa_shd.g_api_dml := false; -- Unset the api dml status
123 per_esa_shd.constraint_error
124 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
125 When Others Then
126 per_esa_shd.g_api_dml := false; -- Unset the api dml status
127 Raise;
128 End update_dml;
129 --
130 -- ----------------------------------------------------------------------------
131 -- |------------------------------< pre_update >------------------------------|
132 -- ----------------------------------------------------------------------------
133 -- {Start Of Comments}
134 --
135 -- Description:
136 -- This private procedure contains any processing which is required before
137 -- the update dml.
138 --
139 -- Pre Conditions:
140 -- This is an internal procedure which is called from the upd procedure.
141 --
142 -- In Parameters:
143 -- A Pl/Sql record structre.
144 --
145 -- Post Success:
146 -- Processing continues.
147 --
148 -- Post Failure:
149 -- If an error has occurred, an error message and exception will be raised
150 -- but not handled.
151 --
152 -- Developer Implementation Notes:
153 -- Any pre-processing required before the update dml is issued should be
154 -- coded within this procedure. It is important to note that any 3rd party
155 -- maintenance should be reviewed before placing in this procedure.
156 --
157 -- Access Status:
158 -- Internal Table Handler Use Only.
159 --
160 -- {End Of Comments}
161 -- ----------------------------------------------------------------------------
162 Procedure pre_update(p_rec in per_esa_shd.g_rec_type) is
163 --
164 l_proc varchar2(72) := g_package||'pre_update';
165 --
166 Begin
167 hr_utility.set_location('Entering:'||l_proc, 5);
168 --
169 hr_utility.set_location(' Leaving:'||l_proc, 10);
170 End pre_update;
171 --
172 -- ----------------------------------------------------------------------------
173 -- |-----------------------------< post_update >------------------------------|
174 -- ----------------------------------------------------------------------------
175 -- {Start Of Comments}
176 --
177 -- Description:
178 -- This private procedure contains any processing which is required after the
179 -- update dml.
180 --
181 -- Pre Conditions:
182 -- This is an internal procedure which is called from the upd procedure.
183 --
184 -- In Parameters:
185 -- A Pl/Sql record structre.
186 --
187 -- Post Success:
188 -- Processing continues.
189 --
190 -- Post Failure:
191 -- If an error has occurred, an error message and exception will be raised
192 -- but not handled.
193 --
194 -- Developer Implementation Notes:
195 -- Any post-processing required after the update dml is issued should be
196 -- coded within this procedure. It is important to note that any 3rd party
197 -- maintenance should be reviewed before placing in this procedure.
198 --
199 -- Access Status:
200 -- Internal Table Handler Use Only.
201 --
202 -- {End Of Comments}
203 -- ----------------------------------------------------------------------------
204 Procedure post_update(p_rec in per_esa_shd.g_rec_type,
205 p_effective_date in date
206 ) is
207 --
208 l_proc varchar2(72) := g_package||'post_update';
209 --
210 Begin
211 hr_utility.set_location('Entering:'||l_proc, 5);
212 --
213 --
214 -- Start of API User Hook for post_update.
215 begin
216 per_esa_rku.after_update
217 (p_attendance_id =>p_rec.attendance_id,
218 p_person_id =>p_rec.person_id,
219 p_establishment_id =>p_rec.establishment_id,
220 p_establishment =>p_rec.establishment,
221 p_attended_start_date =>p_rec.attended_start_date,
222 p_attended_end_date =>p_rec.attended_end_date,
223 p_full_time =>p_rec.full_time,
224 p_attribute_category =>p_rec.attribute_category,
225 p_attribute1 =>p_rec.attribute1,
226 p_attribute2 =>p_rec.attribute2,
227 p_attribute3 =>p_rec.attribute3,
228 p_attribute4 =>p_rec.attribute4,
229 p_attribute5 =>p_rec.attribute5,
230 p_attribute6 =>p_rec.attribute6,
231 p_attribute7 =>p_rec.attribute7,
232 p_attribute8 =>p_rec.attribute8,
233 p_attribute9 =>p_rec.attribute9,
234 p_attribute10 =>p_rec.attribute10,
235 p_attribute11 =>p_rec.attribute11,
236 p_attribute12 =>p_rec.attribute12,
237 p_attribute13 =>p_rec.attribute13,
238 p_attribute14 =>p_rec.attribute14,
239 p_attribute15 =>p_rec.attribute15,
240 p_attribute16 =>p_rec.attribute16,
241 p_attribute17 =>p_rec.attribute17,
242 p_attribute18 =>p_rec.attribute18,
243 p_attribute19 =>p_rec.attribute19,
244 p_attribute20 =>p_rec.attribute20,
245 p_object_version_number =>p_rec.object_version_number,
246 p_business_group_id =>p_rec.business_group_id,
247 p_effective_date =>p_effective_date,
248 p_party_id =>p_rec.party_id, -- HR/TCA merge
249 p_address =>p_rec.address,
250 p_person_id_o =>per_esa_shd.g_old_rec.person_id,
251 p_establishment_id_o =>per_esa_shd.g_old_rec.establishment_id,
252 p_establishment_o =>per_esa_shd.g_old_rec.establishment,
253 p_attended_start_date_o =>per_esa_shd.g_old_rec.attended_start_date,
254 p_attended_end_date_o =>per_esa_shd.g_old_rec.attended_end_date,
255 p_full_time_o =>per_esa_shd.g_old_rec.full_time,
256 p_attribute_category_o =>per_esa_shd.g_old_rec.attribute_category,
257 p_attribute1_o =>per_esa_shd.g_old_rec.attribute1,
258 p_attribute2_o =>per_esa_shd.g_old_rec.attribute2,
259 p_attribute3_o =>per_esa_shd.g_old_rec.attribute3,
260 p_attribute4_o =>per_esa_shd.g_old_rec.attribute4,
261 p_attribute5_o =>per_esa_shd.g_old_rec.attribute5,
262 p_attribute6_o =>per_esa_shd.g_old_rec.attribute6,
263 p_attribute7_o =>per_esa_shd.g_old_rec.attribute7,
264 p_attribute8_o =>per_esa_shd.g_old_rec.attribute8,
265 p_attribute9_o =>per_esa_shd.g_old_rec.attribute9,
266 p_attribute10_o =>per_esa_shd.g_old_rec.attribute10,
267 p_attribute11_o =>per_esa_shd.g_old_rec.attribute11,
268 p_attribute12_o =>per_esa_shd.g_old_rec.attribute12,
269 p_attribute13_o =>per_esa_shd.g_old_rec.attribute13,
270 p_attribute14_o =>per_esa_shd.g_old_rec.attribute14,
271 p_attribute15_o =>per_esa_shd.g_old_rec.attribute15,
272 p_attribute16_o =>per_esa_shd.g_old_rec.attribute16,
273 p_attribute17_o =>per_esa_shd.g_old_rec.attribute17,
274 p_attribute18_o =>per_esa_shd.g_old_rec.attribute18,
275 p_attribute19_o =>per_esa_shd.g_old_rec.attribute19,
276 p_attribute20_o =>per_esa_shd.g_old_rec.attribute20,
277 p_object_version_number_o =>per_esa_shd.g_old_rec.object_version_number,
278 p_business_group_id_o =>per_esa_shd.g_old_rec.business_group_id,
279 p_party_id_o =>per_esa_shd.g_old_rec.party_id, -- HR/TCA merge
280 p_address_o =>per_esa_shd.g_old_rec.address
281 );
282 exception
283 when hr_api.cannot_find_prog_unit then
284 hr_api.cannot_find_prog_unit_error
285 (p_module_name => 'PER_ESTABLISHMENT_ATTENDANCES'
286 ,p_hook_type => 'AU'
287 );
288 end;
289 -- End of API User Hook for post_update.
290 --
291 hr_utility.set_location(' Leaving:'||l_proc, 10);
292 End post_update;
293 --
294 -- ----------------------------------------------------------------------------
295 -- |-----------------------------< convert_defs >-----------------------------|
296 -- ----------------------------------------------------------------------------
297 -- {Start Of Comments}
298 --
299 -- Description:
300 -- The Convert_Defs procedure has one very important function:
301 -- It must return the record structure for the row with all system defaulted
302 -- values converted into its corresponding parameter value for update. When
303 -- we attempt to update a row through the Upd process , certain
304 -- parameters can be defaulted which enables flexibility in the calling of
305 -- the upd process (e.g. only attributes which need to be updated need to be
306 -- specified). For the upd process to determine which attributes
307 -- have NOT been specified we need to check if the parameter has a reserved
308 -- system default value. Therefore, for all parameters which have a
309 -- corresponding reserved system default mechanism specified we need to
310 -- check if a system default is being used. If a system default is being
311 -- used then we convert the defaulted value into its corresponding attribute
312 -- value held in the g_old_rec data structure.
313 --
314 -- Pre Conditions:
315 -- This private function can only be called from the upd process.
316 --
317 -- In Parameters:
318 -- A Pl/Sql record structre.
319 --
320 -- Post Success:
321 -- The record structure will be returned with all system defaulted parameter
322 -- values converted into its current row attribute value.
323 --
324 -- Post Failure:
325 -- No direct error handling is required within this function. Any possible
326 -- errors within this procedure will be a PL/SQL value error due to conversion
327
328 -- of datatypes or data lengths.
329 --
330 -- Developer Implementation Notes:
331 -- None.
332 --
333 -- Access Status:
334 -- Internal Table Handler Use Only.
335 --
336 -- {End Of Comments}
337 -- ----------------------------------------------------------------------------
338 Procedure convert_defs(p_rec in out nocopy per_esa_shd.g_rec_type) is
339 --
340 l_proc varchar2(72) := g_package||'convert_defs';
341 --
342 Begin
343 --
344 hr_utility.set_location('Entering:'||l_proc, 5);
345 --
346 -- We must now examine each argument value in the
347 -- p_rec plsql record structure
348 -- to see if a system default is being used. If a system default
349 -- is being used then we must set to the 'current' argument value.
350 --
351 If (p_rec.person_id = hr_api.g_number) then
352 p_rec.person_id :=
353 per_esa_shd.g_old_rec.person_id;
354 End If;
355 If (p_rec.establishment_id = hr_api.g_number) then
356 p_rec.establishment_id :=
357 per_esa_shd.g_old_rec.establishment_id;
358 End If;
359 If (p_rec.establishment = hr_api.g_varchar2) then
360 p_rec.establishment :=
361 per_esa_shd.g_old_rec.establishment;
362 End If;
363 If (p_rec.attended_start_date = hr_api.g_date) then
364 p_rec.attended_start_date :=
365 per_esa_shd.g_old_rec.attended_start_date;
366 End If;
367 If (p_rec.attended_end_date = hr_api.g_date) then
368 p_rec.attended_end_date :=
369 per_esa_shd.g_old_rec.attended_end_date;
370 End If;
371 If (p_rec.full_time = hr_api.g_varchar2) then
372 p_rec.full_time :=
373 per_esa_shd.g_old_rec.full_time;
374 End If;
375 If (p_rec.attribute_category = hr_api.g_varchar2) then
376 p_rec.attribute_category :=
377 per_esa_shd.g_old_rec.attribute_category;
378 End If;
379 If (p_rec.attribute1 = hr_api.g_varchar2) then
380 p_rec.attribute1 :=
381 per_esa_shd.g_old_rec.attribute1;
382 End If;
383 If (p_rec.attribute2 = hr_api.g_varchar2) then
384 p_rec.attribute2 :=
385 per_esa_shd.g_old_rec.attribute2;
386 End If;
387 If (p_rec.attribute3 = hr_api.g_varchar2) then
388 p_rec.attribute3 :=
389 per_esa_shd.g_old_rec.attribute3;
390 End If;
391 If (p_rec.attribute4 = hr_api.g_varchar2) then
392 p_rec.attribute4 :=
393 per_esa_shd.g_old_rec.attribute4;
394 End If;
395 If (p_rec.attribute5 = hr_api.g_varchar2) then
396 p_rec.attribute5 :=
397 per_esa_shd.g_old_rec.attribute5;
398 End If;
399 If (p_rec.attribute6 = hr_api.g_varchar2) then
400 p_rec.attribute6 :=
401 per_esa_shd.g_old_rec.attribute6;
402 End If;
403 If (p_rec.attribute7 = hr_api.g_varchar2) then
404 p_rec.attribute7 :=
405 per_esa_shd.g_old_rec.attribute7;
406 End If;
407 If (p_rec.attribute8 = hr_api.g_varchar2) then
408 p_rec.attribute8 :=
409 per_esa_shd.g_old_rec.attribute8;
410 End If;
411 If (p_rec.attribute9 = hr_api.g_varchar2) then
412 p_rec.attribute9 :=
413 per_esa_shd.g_old_rec.attribute9;
414 End If;
415 If (p_rec.attribute10 = hr_api.g_varchar2) then
416 p_rec.attribute10 :=
417 per_esa_shd.g_old_rec.attribute10;
418 End If;
419 If (p_rec.attribute11 = hr_api.g_varchar2) then
420 p_rec.attribute11 :=
421 per_esa_shd.g_old_rec.attribute11;
422 End If;
423 If (p_rec.attribute12 = hr_api.g_varchar2) then
424 p_rec.attribute12 :=
425 per_esa_shd.g_old_rec.attribute12;
426 End If;
427 If (p_rec.attribute13 = hr_api.g_varchar2) then
428 p_rec.attribute13 :=
429 per_esa_shd.g_old_rec.attribute13;
430 End If;
431 If (p_rec.attribute14 = hr_api.g_varchar2) then
432 p_rec.attribute14 :=
433 per_esa_shd.g_old_rec.attribute14;
434 End If;
435 If (p_rec.attribute15 = hr_api.g_varchar2) then
436 p_rec.attribute15 :=
437 per_esa_shd.g_old_rec.attribute15;
438 End If;
439 If (p_rec.attribute16 = hr_api.g_varchar2) then
440 p_rec.attribute16 :=
441 per_esa_shd.g_old_rec.attribute16;
442 End If;
443 If (p_rec.attribute17 = hr_api.g_varchar2) then
444 p_rec.attribute17 :=
445 per_esa_shd.g_old_rec.attribute17;
446 End If;
447 If (p_rec.attribute18 = hr_api.g_varchar2) then
448 p_rec.attribute18 :=
449 per_esa_shd.g_old_rec.attribute18;
450 End If;
451 If (p_rec.attribute19 = hr_api.g_varchar2) then
452 p_rec.attribute19 :=
453 per_esa_shd.g_old_rec.attribute19;
454 End If;
455 If (p_rec.attribute20 = hr_api.g_varchar2) then
456 p_rec.attribute20 :=
457 per_esa_shd.g_old_rec.attribute20;
458 End If;
459 If (p_rec.business_group_id = hr_api.g_number) then
460 p_rec.business_group_id :=
461 per_esa_shd.g_old_rec.business_group_id;
462 End If;
463 If (p_rec.party_id = hr_api.g_number) then -- HR/TCA merge
464 p_rec.party_id :=
465 per_esa_shd.g_old_rec.party_id;
466 End If;
467 If (p_rec.address = hr_api.g_varchar2) then
468 p_rec.address :=
469 per_esa_shd.g_old_rec.address;
470 End If;
471 --
472 hr_utility.set_location(' Leaving:'||l_proc, 10);
473 --
474 End convert_defs;
475 --
476 -- ----------------------------------------------------------------------------
477 -- |---------------------------------< upd >----------------------------------|
478 -- ----------------------------------------------------------------------------
479 Procedure upd
480 (
481 p_rec in out nocopy per_esa_shd.g_rec_type,
482 p_effective_date in date,
483 p_validate in boolean default false
484 ) is
485 --
486 l_proc varchar2(72) := g_package||'upd';
487 --
488 Begin
489 hr_utility.set_location('Entering:'||l_proc, 5);
490 --
491 -- Determine if the business process is to be validated.
492 --
493 If p_validate then
494 --
495 -- Issue the savepoint.
496 --
497 SAVEPOINT upd_per_esa;
498 End If;
499 --
500 -- We must lock the row which we need to update.
501 --
502 per_esa_shd.lck
503 (
504 p_rec.attendance_id,
505 p_rec.object_version_number
506 );
507 --
508 -- 1. During an update system defaults are used to determine if
509 -- arguments have been defaulted or not. We must therefore
510 -- derive the full record structure values to be updated.
511 --
512 -- 2. Call the supporting update validate operations.
513 --
514 convert_defs(p_rec);
515 per_esa_bus.update_validate(p_rec,p_effective_date);
516 --
517 -- Call the supporting pre-update operation
518 --
519 pre_update(p_rec);
520 --
521 -- Update the row.
522 --
523 update_dml(p_rec);
524 --
525 -- Call the supporting post-update operation
526 --
527 post_update(p_rec, p_effective_date);
528 --
529 -- If we are validating then raise the Validate_Enabled exception
530 --
531 If p_validate then
532 Raise HR_Api.Validate_Enabled;
533 End If;
534 --
535 hr_utility.set_location(' Leaving:'||l_proc, 10);
536 Exception
537 When HR_Api.Validate_Enabled Then
538 --
539 -- As the Validate_Enabled exception has been raised
540 -- we must rollback to the savepoint
541 --
542 ROLLBACK TO upd_per_esa;
543 End upd;
544 --
545 -- ----------------------------------------------------------------------------
546 -- |---------------------------------< upd >----------------------------------|
547 -- ----------------------------------------------------------------------------
548 Procedure upd
549 (
550 p_attendance_id in number,
551 p_person_id in number default hr_api.g_number,
552 p_establishment_id in number default hr_api.g_number,
553 p_establishment in varchar2 default hr_api.g_varchar2,
554 p_attended_start_date in date default hr_api.g_date,
555 p_attended_end_date in date default hr_api.g_date,
556 p_full_time in varchar2 default hr_api.g_varchar2,
557 p_attribute_category in varchar2 default hr_api.g_varchar2,
558 p_attribute1 in varchar2 default hr_api.g_varchar2,
559 p_attribute2 in varchar2 default hr_api.g_varchar2,
560 p_attribute3 in varchar2 default hr_api.g_varchar2,
561 p_attribute4 in varchar2 default hr_api.g_varchar2,
562 p_attribute5 in varchar2 default hr_api.g_varchar2,
563 p_attribute6 in varchar2 default hr_api.g_varchar2,
564 p_attribute7 in varchar2 default hr_api.g_varchar2,
565 p_attribute8 in varchar2 default hr_api.g_varchar2,
566 p_attribute9 in varchar2 default hr_api.g_varchar2,
567 p_attribute10 in varchar2 default hr_api.g_varchar2,
568 p_attribute11 in varchar2 default hr_api.g_varchar2,
569 p_attribute12 in varchar2 default hr_api.g_varchar2,
570 p_attribute13 in varchar2 default hr_api.g_varchar2,
571 p_attribute14 in varchar2 default hr_api.g_varchar2,
572 p_attribute15 in varchar2 default hr_api.g_varchar2,
573 p_attribute16 in varchar2 default hr_api.g_varchar2,
574 p_attribute17 in varchar2 default hr_api.g_varchar2,
575 p_attribute18 in varchar2 default hr_api.g_varchar2,
576 p_attribute19 in varchar2 default hr_api.g_varchar2,
577 p_attribute20 in varchar2 default hr_api.g_varchar2,
578 p_object_version_number in out nocopy number,
579 p_business_group_id in number default hr_api.g_number,
580 p_effective_date in date,
581 p_validate in boolean default false,
582 p_party_id in number default hr_api.g_number,
583 p_address in varchar2 default hr_api.g_varchar2
584 ) is
585 --
586 l_rec per_esa_shd.g_rec_type;
587 l_proc varchar2(72) := g_package||'upd';
588 --
589 Begin
590 hr_utility.set_location('Entering:'||l_proc, 5);
591 --
592 -- Call conversion function to turn arguments into the
593 -- l_rec structure.
594 --
595 l_rec :=
596 per_esa_shd.convert_args
597 (
598 p_attendance_id,
599 p_person_id,
600 p_establishment_id,
601 p_establishment,
602 p_attended_start_date,
603 p_attended_end_date,
604 p_full_time,
605 p_attribute_category,
606 p_attribute1,
607 p_attribute2,
608 p_attribute3,
609 p_attribute4,
610 p_attribute5,
611 p_attribute6,
612 p_attribute7,
613 p_attribute8,
614 p_attribute9,
615 p_attribute10,
616 p_attribute11,
617 p_attribute12,
618 p_attribute13,
619 p_attribute14,
620 p_attribute15,
621 p_attribute16,
622 p_attribute17,
623 p_attribute18,
624 p_attribute19,
625 p_attribute20,
626 p_object_version_number,
627 p_business_group_id,
628 p_party_id, -- HR/TCA merge
629 p_address
630 );
631 --
632 -- Having converted the arguments into the
633 -- plsql record structure we call the corresponding record
634 -- business process.
635 --
636 upd(l_rec, p_effective_date,p_validate);
637 p_object_version_number := l_rec.object_version_number;
638 --
639 hr_utility.set_location(' Leaving:'||l_proc, 10);
640 End upd;
641 --
642 end per_esa_upd;