54: --
55: -- {End Of Comments}
56: -- ----------------------------------------------------------------------------
57: Procedure dt_update_dml
58: (p_rec in out nocopy ben_ber_shd.g_rec_type
59: ,p_effective_date in date
60: ,p_datetrack_mode in varchar2
61: ,p_validation_start_date in date
62: ,p_validation_end_date in date
109: Exception
110: When hr_api.check_integrity_violated Then
111: -- A check constraint has been violated
112: --
113: ben_ber_shd.constraint_error
114: (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
115: When hr_api.unique_integrity_violated Then
116: -- Unique integrity has been violated
117: --
114: (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
115: When hr_api.unique_integrity_violated Then
116: -- Unique integrity has been violated
117: --
118: ben_ber_shd.constraint_error
119: (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
120: When Others Then
121: --
122: Raise;
153: --
154: -- {End Of Comments}
155: -- ----------------------------------------------------------------------------
156: Procedure update_dml
157: (p_rec in out nocopy ben_ber_shd.g_rec_type
158: ,p_effective_date in date
159: ,p_datetrack_mode in varchar2
160: ,p_validation_start_date in date
161: ,p_validation_end_date in date
220: --
221: -- {End Of Comments}
222: -- ----------------------------------------------------------------------------
223: Procedure dt_pre_update
224: (p_rec in out nocopy ben_ber_shd.g_rec_type
225: ,p_effective_date in date
226: ,p_datetrack_mode in varchar2
227: ,p_validation_start_date in date
228: ,p_validation_end_date in date
236: If (p_datetrack_mode <> hr_api.g_correction) then
237: --
238: -- Update the current effective end date
239: --
240: ben_ber_shd.upd_effective_end_date
241: (p_effective_date => p_effective_date
242: ,p_base_key_value => p_rec.elig_rslt_id
243: ,p_new_effective_end_date => (p_validation_start_date - 1)
244: ,p_validation_start_date => p_validation_start_date
305: --
306: -- {End Of Comments}
307: -- ----------------------------------------------------------------------------
308: Procedure pre_update
309: (p_rec in out nocopy ben_ber_shd.g_rec_type
310: ,p_effective_date in date
311: ,p_datetrack_mode in varchar2
312: ,p_validation_start_date in date
313: ,p_validation_end_date in date
363: --
364: -- {End Of Comments}
365: -- ----------------------------------------------------------------------------
366: Procedure post_update
367: (p_rec in ben_ber_shd.g_rec_type
368: ,p_effective_date in date
369: ,p_datetrack_mode in varchar2
370: ,p_validation_start_date in date
371: ,p_validation_end_date in date
404: => p_rec.business_group_id
405: ,p_object_version_number
406: => p_rec.object_version_number
407: ,p_effective_start_date_o
408: => ben_ber_shd.g_old_rec.effective_start_date
409: ,p_effective_end_date_o
410: => ben_ber_shd.g_old_rec.effective_end_date
411: ,p_elig_obj_id_o
412: => ben_ber_shd.g_old_rec.elig_obj_id
406: => p_rec.object_version_number
407: ,p_effective_start_date_o
408: => ben_ber_shd.g_old_rec.effective_start_date
409: ,p_effective_end_date_o
410: => ben_ber_shd.g_old_rec.effective_end_date
411: ,p_elig_obj_id_o
412: => ben_ber_shd.g_old_rec.elig_obj_id
413: ,p_person_id_o
414: => ben_ber_shd.g_old_rec.person_id
408: => ben_ber_shd.g_old_rec.effective_start_date
409: ,p_effective_end_date_o
410: => ben_ber_shd.g_old_rec.effective_end_date
411: ,p_elig_obj_id_o
412: => ben_ber_shd.g_old_rec.elig_obj_id
413: ,p_person_id_o
414: => ben_ber_shd.g_old_rec.person_id
415: ,p_assignment_id_o
416: => ben_ber_shd.g_old_rec.assignment_id
410: => ben_ber_shd.g_old_rec.effective_end_date
411: ,p_elig_obj_id_o
412: => ben_ber_shd.g_old_rec.elig_obj_id
413: ,p_person_id_o
414: => ben_ber_shd.g_old_rec.person_id
415: ,p_assignment_id_o
416: => ben_ber_shd.g_old_rec.assignment_id
417: ,p_elig_flag_o
418: => ben_ber_shd.g_old_rec.elig_flag
412: => ben_ber_shd.g_old_rec.elig_obj_id
413: ,p_person_id_o
414: => ben_ber_shd.g_old_rec.person_id
415: ,p_assignment_id_o
416: => ben_ber_shd.g_old_rec.assignment_id
417: ,p_elig_flag_o
418: => ben_ber_shd.g_old_rec.elig_flag
419: ,p_business_group_id_o
420: => ben_ber_shd.g_old_rec.business_group_id
414: => ben_ber_shd.g_old_rec.person_id
415: ,p_assignment_id_o
416: => ben_ber_shd.g_old_rec.assignment_id
417: ,p_elig_flag_o
418: => ben_ber_shd.g_old_rec.elig_flag
419: ,p_business_group_id_o
420: => ben_ber_shd.g_old_rec.business_group_id
421: ,p_object_version_number_o
422: => ben_ber_shd.g_old_rec.object_version_number
416: => ben_ber_shd.g_old_rec.assignment_id
417: ,p_elig_flag_o
418: => ben_ber_shd.g_old_rec.elig_flag
419: ,p_business_group_id_o
420: => ben_ber_shd.g_old_rec.business_group_id
421: ,p_object_version_number_o
422: => ben_ber_shd.g_old_rec.object_version_number
423: );
424: --
418: => ben_ber_shd.g_old_rec.elig_flag
419: ,p_business_group_id_o
420: => ben_ber_shd.g_old_rec.business_group_id
421: ,p_object_version_number_o
422: => ben_ber_shd.g_old_rec.object_version_number
423: );
424: --
425: exception
426: --
478: --
479: -- {End Of Comments}
480: -- ----------------------------------------------------------------------------
481: Procedure convert_defs
482: (p_rec in out nocopy ben_ber_shd.g_rec_type
483: ) is
484: --
485: Begin
486: --
490: -- is being used then we must set to the 'current' argument value.
491: --
492: If (p_rec.elig_obj_id = hr_api.g_number) then
493: p_rec.elig_obj_id :=
494: ben_ber_shd.g_old_rec.elig_obj_id;
495: End If;
496: If (p_rec.person_id = hr_api.g_number) then
497: p_rec.person_id :=
498: ben_ber_shd.g_old_rec.person_id;
494: ben_ber_shd.g_old_rec.elig_obj_id;
495: End If;
496: If (p_rec.person_id = hr_api.g_number) then
497: p_rec.person_id :=
498: ben_ber_shd.g_old_rec.person_id;
499: End If;
500: If (p_rec.assignment_id = hr_api.g_number) then
501: p_rec.assignment_id :=
502: ben_ber_shd.g_old_rec.assignment_id;
498: ben_ber_shd.g_old_rec.person_id;
499: End If;
500: If (p_rec.assignment_id = hr_api.g_number) then
501: p_rec.assignment_id :=
502: ben_ber_shd.g_old_rec.assignment_id;
503: End If;
504: If (p_rec.elig_flag = hr_api.g_varchar2) then
505: p_rec.elig_flag :=
506: ben_ber_shd.g_old_rec.elig_flag;
502: ben_ber_shd.g_old_rec.assignment_id;
503: End If;
504: If (p_rec.elig_flag = hr_api.g_varchar2) then
505: p_rec.elig_flag :=
506: ben_ber_shd.g_old_rec.elig_flag;
507: End If;
508: If (p_rec.business_group_id = hr_api.g_number) then
509: p_rec.business_group_id :=
510: ben_ber_shd.g_old_rec.business_group_id;
506: ben_ber_shd.g_old_rec.elig_flag;
507: End If;
508: If (p_rec.business_group_id = hr_api.g_number) then
509: p_rec.business_group_id :=
510: ben_ber_shd.g_old_rec.business_group_id;
511: End If;
512: --
513: End convert_defs;
514: --
517: -- ----------------------------------------------------------------------------
518: Procedure upd
519: (p_effective_date in date
520: ,p_datetrack_mode in varchar2
521: ,p_rec in out nocopy ben_ber_shd.g_rec_type
522: ) is
523: --
524: l_proc varchar2(72) := g_package||'upd';
525: l_validation_start_date date;
533: dt_api.validate_dt_upd_mode(p_datetrack_mode => p_datetrack_mode);
534: --
535: -- We must lock the row which we need to update.
536: --
537: ben_ber_shd.lck
538: (p_effective_date => p_effective_date
539: ,p_datetrack_mode => p_datetrack_mode
540: ,p_elig_rslt_id => p_rec.elig_rslt_id
541: ,p_object_version_number => p_rec.object_version_number
612: ,p_effective_start_date out nocopy date
613: ,p_effective_end_date out nocopy date
614: ) is
615: --
616: l_rec ben_ber_shd.g_rec_type;
617: l_proc varchar2(72) := g_package||'upd';
618: --
619: Begin
620: hr_utility.set_location('Entering:'||l_proc, 5);
622: -- Call conversion function to turn arguments into the
623: -- l_rec structure.
624: --
625: l_rec :=
626: ben_ber_shd.convert_args
627: (p_elig_rslt_id
628: ,null
629: ,null
630: ,p_elig_obj_id