67: --
68: Begin
69: hr_utility.set_location('Entering:'||l_proc, 5);
70: --
71: If (p_datetrack_mode = hr_api.g_correction) then
72: hr_utility.set_location(l_proc, 10);
73: --
74: -- Because we are updating a row we must get the next object
75: -- version number.
109: End If;
110: --
111: hr_utility.set_location(' Leaving:'||l_proc, 15);
112: Exception
113: When hr_api.check_integrity_violated Then
114: -- A check constraint has been violated
115: --
116: ame_rlu_shd.constraint_error
117: (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
113: When hr_api.check_integrity_violated Then
114: -- A check constraint has been violated
115: --
116: ame_rlu_shd.constraint_error
117: (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
118: When hr_api.unique_integrity_violated Then
119: -- Unique integrity has been violated
120: --
121: ame_rlu_shd.constraint_error
114: -- A check constraint has been violated
115: --
116: ame_rlu_shd.constraint_error
117: (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
118: When hr_api.unique_integrity_violated Then
119: -- Unique integrity has been violated
120: --
121: ame_rlu_shd.constraint_error
122: (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
118: When hr_api.unique_integrity_violated Then
119: -- Unique integrity has been violated
120: --
121: ame_rlu_shd.constraint_error
122: (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
123: When Others Then
124: --
125: Raise;
126: End dt_update_dml;
235: l_dummy_version_number number;
236: --
237: Begin
238: hr_utility.set_location('Entering:'||l_proc, 5);
239: If (p_datetrack_mode <> hr_api.g_correction) then
240: --
241: -- Update the current effective end date
242: --
243: ame_rlu_shd.upd_end_date
248: ,p_new_end_date => p_validation_start_date
249: ,p_object_version_number => l_dummy_version_number
250: );
251: --
252: If (p_datetrack_mode = hr_api.g_update_override) then
253: --
254: -- As the datetrack mode is 'UPDATE_OVERRIDE' then we must
255: -- delete any future rows
256: --
424: );
425: --
426: exception
427: --
428: when hr_api.cannot_find_prog_unit then
429: --
430: hr_api.cannot_find_prog_unit_error
431: (p_module_name => 'AME_RULE_USAGES'
432: ,p_hook_type => 'AU');
426: exception
427: --
428: when hr_api.cannot_find_prog_unit then
429: --
430: hr_api.cannot_find_prog_unit_error
431: (p_module_name => 'AME_RULE_USAGES'
432: ,p_hook_type => 'AU');
433: --
434: end;
489: -- p_rec plsql record structure
490: -- to see if a system default is being used. If a system default
491: -- is being used then we must set to the 'current' argument value.
492: --
493: If (p_rec.usage_type = hr_api.g_varchar2) then
494: p_rec.usage_type :=
495: ame_rlu_shd.g_old_rec.usage_type;
496: End If;
497: If (p_rec.security_group_id = hr_api.g_number) then
493: If (p_rec.usage_type = hr_api.g_varchar2) then
494: p_rec.usage_type :=
495: ame_rlu_shd.g_old_rec.usage_type;
496: End If;
497: If (p_rec.security_group_id = hr_api.g_number) then
498: p_rec.security_group_id :=
499: ame_rlu_shd.g_old_rec.security_group_id;
500: End If;
501: If (p_rec.priority = hr_api.g_number) then
497: If (p_rec.security_group_id = hr_api.g_number) then
498: p_rec.security_group_id :=
499: ame_rlu_shd.g_old_rec.security_group_id;
500: End If;
501: If (p_rec.priority = hr_api.g_number) then
502: p_rec.priority :=
503: ame_rlu_shd.g_old_rec.priority;
504: End If;
505: If (p_rec.approver_category = hr_api.g_varchar2) then
501: If (p_rec.priority = hr_api.g_number) then
502: p_rec.priority :=
503: ame_rlu_shd.g_old_rec.priority;
504: End If;
505: If (p_rec.approver_category = hr_api.g_varchar2) then
506: p_rec.approver_category :=
507: ame_rlu_shd.g_old_rec.approver_category;
508: End If;
509: If (p_rec.start_date = hr_api.g_date) then
505: If (p_rec.approver_category = hr_api.g_varchar2) then
506: p_rec.approver_category :=
507: ame_rlu_shd.g_old_rec.approver_category;
508: End If;
509: If (p_rec.start_date = hr_api.g_date) then
510: p_rec.start_date := ame_rlu_shd.g_old_rec.start_date;
511: End If;
512: If (p_rec.end_date = hr_api.g_date) then
513: p_rec.end_date := ame_rlu_shd.g_old_rec.end_date;
508: End If;
509: If (p_rec.start_date = hr_api.g_date) then
510: p_rec.start_date := ame_rlu_shd.g_old_rec.start_date;
511: End If;
512: If (p_rec.end_date = hr_api.g_date) then
513: p_rec.end_date := ame_rlu_shd.g_old_rec.end_date;
514: End If;
515: --
516: End convert_defs;
537: --
538: -- set the start and end dates if not set
539: --
540: if p_rec.start_date is null then
541: p_rec.start_date := hr_api.g_date;
542: end if;
543: if p_rec.end_date is null then
544: p_rec.end_date := hr_api.g_date;
545: end if;
540: if p_rec.start_date is null then
541: p_rec.start_date := hr_api.g_date;
542: end if;
543: if p_rec.end_date is null then
544: p_rec.end_date := hr_api.g_date;
545: end if;
546: --
547: -- We must lock the row which we need to update.
548: --
636: ,p_item_id in number
637: ,p_rule_id in number
638: ,p_old_start_date in date
639: ,p_object_version_number in out nocopy number
640: ,p_usage_type in varchar2 default hr_api.g_varchar2
641: ,p_security_group_id in number default hr_api.g_number
642: ,p_priority in number default hr_api.g_number
643: ,p_approver_category in varchar2 default hr_api.g_varchar2
644: ,p_start_date in out nocopy date
637: ,p_rule_id in number
638: ,p_old_start_date in date
639: ,p_object_version_number in out nocopy number
640: ,p_usage_type in varchar2 default hr_api.g_varchar2
641: ,p_security_group_id in number default hr_api.g_number
642: ,p_priority in number default hr_api.g_number
643: ,p_approver_category in varchar2 default hr_api.g_varchar2
644: ,p_start_date in out nocopy date
645: ,p_end_date in out nocopy date
638: ,p_old_start_date in date
639: ,p_object_version_number in out nocopy number
640: ,p_usage_type in varchar2 default hr_api.g_varchar2
641: ,p_security_group_id in number default hr_api.g_number
642: ,p_priority in number default hr_api.g_number
643: ,p_approver_category in varchar2 default hr_api.g_varchar2
644: ,p_start_date in out nocopy date
645: ,p_end_date in out nocopy date
646: ) is
639: ,p_object_version_number in out nocopy number
640: ,p_usage_type in varchar2 default hr_api.g_varchar2
641: ,p_security_group_id in number default hr_api.g_number
642: ,p_priority in number default hr_api.g_number
643: ,p_approver_category in varchar2 default hr_api.g_varchar2
644: ,p_start_date in out nocopy date
645: ,p_end_date in out nocopy date
646: ) is
647: --