212: hr_utility.set_location('Entering:'||l_proc, 5);
213: --
214: -- Ensure that all the mandatory arguments are not null
215: --
216: hr_api.mandatory_arg_error(p_api_name => l_proc
217: ,p_argument => 'effective_date'
218: ,p_argument_value => p_effective_date
219: );
220: --
217: ,p_argument => 'effective_date'
218: ,p_argument_value => p_effective_date
219: );
220: --
221: hr_api.mandatory_arg_error(p_api_name => l_proc
222: ,p_argument => 'datetrack_mode'
223: ,p_argument_value => p_datetrack_mode
224: );
225: --
222: ,p_argument => 'datetrack_mode'
223: ,p_argument_value => p_datetrack_mode
224: );
225: --
226: hr_api.mandatory_arg_error(p_api_name => l_proc
227: ,p_argument => 'item_class_id'
228: ,p_argument_value => p_item_class_id
229: );
230: --
227: ,p_argument => 'item_class_id'
228: ,p_argument_value => p_item_class_id
229: );
230: --
231: hr_api.mandatory_arg_error(p_api_name => l_proc
232: ,p_argument => 'object_version_number'
233: ,p_argument_value => p_object_version_number
234: );
235: --
234: );
235: --
236: -- Check to ensure the datetrack mode is not INSERT.
237: --
238: If (p_datetrack_mode <> hr_api.g_insert) then
239: --
240: -- We must select and lock the current row.
241: --
242: Open C_Sel1;
269: End If;
270: --
271: -- Set the validation start and end date OUT arguments
272: --
273: if (p_datetrack_mode = hr_api.g_update) then
274: p_validation_start_date := p_effective_date;
275: p_validation_end_date := ame_itu_shd.g_old_rec.end_date;
276: elsif (p_datetrack_mode = hr_api.g_delete) then
277: p_validation_start_date := p_effective_date;
272: --
273: if (p_datetrack_mode = hr_api.g_update) then
274: p_validation_start_date := p_effective_date;
275: p_validation_end_date := ame_itu_shd.g_old_rec.end_date;
276: elsif (p_datetrack_mode = hr_api.g_delete) then
277: p_validation_start_date := p_effective_date;
278: p_validation_end_date := p_effective_date;
279: end if;
280: --
282: --
283: -- We need to trap the ORA LOCK exception
284: --
285: Exception
286: When HR_Api.Object_Locked then
287: --
288: -- The object is locked therefore we need to supply a meaningful
289: -- error message.
290: --