[Home] [Help]
PACKAGE BODY: APPS.HR_DEPLOYMENT_FACTOR_API
Source
1 Package Body hr_deployment_factor_api as
2 /* $Header: pedpfapi.pkb 115.6 2004/01/29 07:04:19 adudekul noship $ */
3 --
4 -- Package Variables
5 --
6 g_package varchar2(33) := ' hr_deployment_factor_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-----------------------< create_person_dpmt_factor >-----------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure create_person_dpmt_factor
13 (p_validate in boolean default false
14 ,p_effective_date in date
15 ,p_person_id in number
16 ,p_work_any_country in varchar2
17 ,p_work_any_location in varchar2
18 ,p_relocate_domestically in varchar2
19 ,p_relocate_internationally in varchar2
20 ,p_travel_required in varchar2
21 ,p_country1 in varchar2 default null
22 ,p_country2 in varchar2 default null
23 ,p_country3 in varchar2 default null
24 ,p_work_duration in varchar2 default null
25 ,p_work_schedule in varchar2 default null
26 ,p_work_hours in varchar2 default null
27 ,p_fte_capacity in varchar2 default null
28 ,p_visit_internationally in varchar2 default null
29 ,p_only_current_location in varchar2 default null
30 ,p_no_country1 in varchar2 default null
31 ,p_no_country2 in varchar2 default null
32 ,p_no_country3 in varchar2 default null
33 ,p_comments in varchar2 default null
34 ,p_earliest_available_date in date default null
35 ,p_available_for_transfer in varchar2 default null
36 ,p_relocation_preference in varchar2 default null
37 ,p_attribute_category in varchar2 default null
38 ,p_attribute1 in varchar2 default null
39 ,p_attribute2 in varchar2 default null
40 ,p_attribute3 in varchar2 default null
41 ,p_attribute4 in varchar2 default null
42 ,p_attribute5 in varchar2 default null
43 ,p_attribute6 in varchar2 default null
44 ,p_attribute7 in varchar2 default null
45 ,p_attribute8 in varchar2 default null
46 ,p_attribute9 in varchar2 default null
47 ,p_attribute10 in varchar2 default null
48 ,p_attribute11 in varchar2 default null
49 ,p_attribute12 in varchar2 default null
50 ,p_attribute13 in varchar2 default null
51 ,p_attribute14 in varchar2 default null
52 ,p_attribute15 in varchar2 default null
53 ,p_attribute16 in varchar2 default null
54 ,p_attribute17 in varchar2 default null
55 ,p_attribute18 in varchar2 default null
56 ,p_attribute19 in varchar2 default null
57 ,p_attribute20 in varchar2 default null
58 ,p_deployment_factor_id out nocopy number
59 ,p_object_version_number out nocopy number
60 ) is
61 --
62 -- Declare cursors and local variables
63 --
64 l_effective_date date;
65 l_earliest_available_date date;
66 l_proc varchar2(72) := g_package||'create_person_dpmt_factor';
67 l_deployment_factor_id per_deployment_factors.deployment_factor_id%type;
68 l_object_version_number per_deployment_factors.object_version_number%type;
69 l_business_group_id per_all_people_f.business_group_id%type;
70 --
71 cursor get_bg is
72 select business_group_id
73 from per_all_people_f
74 where person_id=p_person_id
75 and rownum = 1; -- Added for bug 3387339.
76 --
77 begin
78 hr_utility.set_location('Entering:'|| l_proc, 10);
79 --
80 -- Issue a savepoint
81 --
82 savepoint create_person_dpmt_factor;
83 --
84 -- Truncate the time portion from all IN date parameters
85 --
86 l_effective_date:=trunc(p_effective_date);
87 l_earliest_available_date:=trunc(p_earliest_available_date);
88 --
89 -- get the business group
90 --
91 open get_bg;
92 fetch get_bg into l_business_group_id;
93 close get_bg;
94 --
95 -- Call Before Process User Hook
96 --
97 begin
98 hr_deployment_factor_bk1.create_person_dpmt_factor_b
99 (p_effective_date => l_effective_date
100 ,p_person_id => p_person_id
101 ,p_business_group_id => l_business_group_id
102 ,p_work_any_country => p_work_any_country
103 ,p_work_any_location => p_work_any_location
104 ,p_relocate_domestically => p_relocate_domestically
105 ,p_relocate_internationally => p_relocate_internationally
106 ,p_travel_required => p_travel_required
107 ,p_country1 => p_country1
108 ,p_country2 => p_country2
109 ,p_country3 => p_country3
110 ,p_work_duration => p_work_duration
111 ,p_work_schedule => p_work_schedule
112 ,p_work_hours => p_work_hours
113 ,p_fte_capacity => p_fte_capacity
114 ,p_visit_internationally => p_visit_internationally
115 ,p_only_current_location => p_only_current_location
116 ,p_no_country1 => p_no_country1
117 ,p_no_country2 => p_no_country2
118 ,p_no_country3 => p_no_country3
119 ,p_comments => p_comments
120 ,p_earliest_available_date => l_earliest_available_date
121 ,p_available_for_transfer => p_available_for_transfer
122 ,p_relocation_preference => p_relocation_preference
123 ,p_attribute_category => p_attribute_category
124 ,p_attribute1 => p_attribute1
125 ,p_attribute2 => p_attribute2
126 ,p_attribute3 => p_attribute3
127 ,p_attribute4 => p_attribute4
128 ,p_attribute5 => p_attribute5
129 ,p_attribute6 => p_attribute6
130 ,p_attribute7 => p_attribute7
131 ,p_attribute8 => p_attribute8
132 ,p_attribute9 => p_attribute9
133 ,p_attribute10 => p_attribute10
134 ,p_attribute11 => p_attribute11
135 ,p_attribute12 => p_attribute12
136 ,p_attribute13 => p_attribute13
137 ,p_attribute14 => p_attribute14
138 ,p_attribute15 => p_attribute15
139 ,p_attribute16 => p_attribute16
140 ,p_attribute17 => p_attribute17
141 ,p_attribute18 => p_attribute18
142 ,p_attribute19 => p_attribute19
143 ,p_attribute20 => p_attribute20
144 );
145 exception
146 when hr_api.cannot_find_prog_unit then
147 hr_api.cannot_find_prog_unit_error
148 (p_module_name => 'create_person_dpmt_factor'
149 ,p_hook_type => 'BP'
150 );
151 end;
152 --
153 -- Process Logic
154 --
155 per_dpf_ins.ins
156 (p_effective_date => l_effective_date
157 ,p_person_id => p_person_id
158 ,p_business_group_id => l_business_group_id
159 ,p_work_any_country => p_work_any_country
160 ,p_work_any_location => p_work_any_location
161 ,p_relocate_domestically => p_relocate_domestically
162 ,p_relocate_internationally => p_relocate_internationally
163 ,p_travel_required => p_travel_required
164 ,p_country1 => p_country1
165 ,p_country2 => p_country2
166 ,p_country3 => p_country3
167 ,p_work_duration => p_work_duration
168 ,p_work_schedule => p_work_schedule
169 ,p_work_hours => p_work_hours
170 ,p_fte_capacity => p_fte_capacity
171 ,p_visit_internationally => p_visit_internationally
172 ,p_only_current_location => p_only_current_location
173 ,p_no_country1 => p_no_country1
174 ,p_no_country2 => p_no_country2
175 ,p_no_country3 => p_no_country3
176 ,p_comments => p_comments
177 ,p_earliest_available_date => l_earliest_available_date
178 ,p_available_for_transfer => p_available_for_transfer
179 ,p_relocation_preference => p_relocation_preference
180 ,p_attribute_category => p_attribute_category
181 ,p_attribute1 => p_attribute1
182 ,p_attribute2 => p_attribute2
183 ,p_attribute3 => p_attribute3
184 ,p_attribute4 => p_attribute4
185 ,p_attribute5 => p_attribute5
186 ,p_attribute6 => p_attribute6
187 ,p_attribute7 => p_attribute7
188 ,p_attribute8 => p_attribute8
189 ,p_attribute9 => p_attribute9
190 ,p_attribute10 => p_attribute10
191 ,p_attribute11 => p_attribute11
192 ,p_attribute12 => p_attribute12
193 ,p_attribute13 => p_attribute13
194 ,p_attribute14 => p_attribute14
195 ,p_attribute15 => p_attribute15
196 ,p_attribute16 => p_attribute16
197 ,p_attribute17 => p_attribute17
198 ,p_attribute18 => p_attribute18
199 ,p_attribute19 => p_attribute19
200 ,p_attribute20 => p_attribute20
201 ,p_deployment_factor_id => l_deployment_factor_id
202 ,p_object_version_number => l_object_version_number
203 );
204 --
205 -- Call After Process User Hook
206 --
207 begin
208 hr_deployment_factor_bk1.create_person_dpmt_factor_a
209 (p_effective_date => l_effective_date
210 ,p_person_id => p_person_id
211 ,p_business_group_id => l_business_group_id
212 ,p_work_any_country => p_work_any_country
213 ,p_work_any_location => p_work_any_location
214 ,p_relocate_domestically => p_relocate_domestically
215 ,p_relocate_internationally => p_relocate_internationally
216 ,p_travel_required => p_travel_required
217 ,p_country1 => p_country1
218 ,p_country2 => p_country2
219 ,p_country3 => p_country3
220 ,p_work_duration => p_work_duration
221 ,p_work_schedule => p_work_schedule
222 ,p_work_hours => p_work_hours
223 ,p_fte_capacity => p_fte_capacity
224 ,p_visit_internationally => p_visit_internationally
225 ,p_only_current_location => p_only_current_location
226 ,p_no_country1 => p_no_country1
227 ,p_no_country2 => p_no_country2
228 ,p_no_country3 => p_no_country3
229 ,p_comments => p_comments
230 ,p_earliest_available_date => l_earliest_available_date
231 ,p_available_for_transfer => p_available_for_transfer
232 ,p_relocation_preference => p_relocation_preference
233 ,p_attribute_category => p_attribute_category
234 ,p_attribute1 => p_attribute1
235 ,p_attribute2 => p_attribute2
236 ,p_attribute3 => p_attribute3
237 ,p_attribute4 => p_attribute4
238 ,p_attribute5 => p_attribute5
239 ,p_attribute6 => p_attribute6
240 ,p_attribute7 => p_attribute7
241 ,p_attribute8 => p_attribute8
242 ,p_attribute9 => p_attribute9
243 ,p_attribute10 => p_attribute10
244 ,p_attribute11 => p_attribute11
245 ,p_attribute12 => p_attribute12
246 ,p_attribute13 => p_attribute13
247 ,p_attribute14 => p_attribute14
248 ,p_attribute15 => p_attribute15
249 ,p_attribute16 => p_attribute16
250 ,p_attribute17 => p_attribute17
251 ,p_attribute18 => p_attribute18
252 ,p_attribute19 => p_attribute19
253 ,p_attribute20 => p_attribute20
254 ,p_deployment_factor_id => l_deployment_factor_id
255 ,p_object_version_number => l_object_version_number
256 );
257 exception
258 when hr_api.cannot_find_prog_unit then
259 hr_api.cannot_find_prog_unit_error
260 (p_module_name => 'create_person_dpmt_factor'
261 ,p_hook_type => 'AP'
262 );
263 end;
264 --
265 -- When in validation only mode raise the Validate_Enabled exception
266 --
267 if p_validate then
268 raise hr_api.validate_enabled;
269 end if;
270 --
271 -- Set all output arguments
272 --
273 p_deployment_factor_id := l_deployment_factor_id;
274 p_object_version_number := l_object_version_number;
275 --
276 hr_utility.set_location(' Leaving:'||l_proc, 70);
277 exception
278 when hr_api.validate_enabled then
279 --
280 -- As the Validate_Enabled exception has been raised
281 -- we must rollback to the savepoint
282 --
283 rollback to create_person_dpmt_factor;
284 --
285 -- Only set output warning arguments
286 -- (Any key or derived arguments must be set to null
287 -- when validation only mode is being used.)
288 --
289 p_deployment_factor_id := null;
290 p_object_version_number := null;
291 hr_utility.set_location(' Leaving:'||l_proc, 80);
292 when others then
293 --
294 -- A validation or unexpected error has occured
295 --
296 rollback to create_person_dpmt_factor;
297 --
298 -- set in out parameters and set out parameters
299 --
300 p_deployment_factor_id := null;
301 p_object_version_number := null;
302 --
303 hr_utility.set_location(' Leaving:'||l_proc, 90);
304 raise;
305 end create_person_dpmt_factor;
306 --
307 -- ----------------------------------------------------------------------------
308 -- |-----------------------< update_person_dpmt_factor >-----------------------|
309 -- ----------------------------------------------------------------------------
310 --
311 procedure update_person_dpmt_factor
312 (p_validate in boolean default false
313 ,p_effective_date in date
314 ,p_deployment_factor_id in number
315 ,p_object_version_number in out nocopy number
316 ,p_work_any_country in varchar2 default hr_api.g_varchar2
317 ,p_work_any_location in varchar2 default hr_api.g_varchar2
318 ,p_relocate_domestically in varchar2 default hr_api.g_varchar2
319 ,p_relocate_internationally in varchar2 default hr_api.g_varchar2
320 ,p_travel_required in varchar2 default hr_api.g_varchar2
321 ,p_country1 in varchar2 default hr_api.g_varchar2
322 ,p_country2 in varchar2 default hr_api.g_varchar2
323 ,p_country3 in varchar2 default hr_api.g_varchar2
324 ,p_work_duration in varchar2 default hr_api.g_varchar2
325 ,p_work_schedule in varchar2 default hr_api.g_varchar2
326 ,p_work_hours in varchar2 default hr_api.g_varchar2
327 ,p_fte_capacity in varchar2 default hr_api.g_varchar2
328 ,p_visit_internationally in varchar2 default hr_api.g_varchar2
329 ,p_only_current_location in varchar2 default hr_api.g_varchar2
330 ,p_no_country1 in varchar2 default hr_api.g_varchar2
331 ,p_no_country2 in varchar2 default hr_api.g_varchar2
332 ,p_no_country3 in varchar2 default hr_api.g_varchar2
333 ,p_comments in varchar2 default hr_api.g_varchar2
334 ,p_earliest_available_date in date default hr_api.g_date
335 ,p_available_for_transfer in varchar2 default hr_api.g_varchar2
336 ,p_relocation_preference in varchar2 default hr_api.g_varchar2
337 ,p_attribute_category in varchar2 default hr_api.g_varchar2
338 ,p_attribute1 in varchar2 default hr_api.g_varchar2
339 ,p_attribute2 in varchar2 default hr_api.g_varchar2
340 ,p_attribute3 in varchar2 default hr_api.g_varchar2
341 ,p_attribute4 in varchar2 default hr_api.g_varchar2
342 ,p_attribute5 in varchar2 default hr_api.g_varchar2
343 ,p_attribute6 in varchar2 default hr_api.g_varchar2
344 ,p_attribute7 in varchar2 default hr_api.g_varchar2
345 ,p_attribute8 in varchar2 default hr_api.g_varchar2
346 ,p_attribute9 in varchar2 default hr_api.g_varchar2
347 ,p_attribute10 in varchar2 default hr_api.g_varchar2
348 ,p_attribute11 in varchar2 default hr_api.g_varchar2
349 ,p_attribute12 in varchar2 default hr_api.g_varchar2
350 ,p_attribute13 in varchar2 default hr_api.g_varchar2
351 ,p_attribute14 in varchar2 default hr_api.g_varchar2
352 ,p_attribute15 in varchar2 default hr_api.g_varchar2
353 ,p_attribute16 in varchar2 default hr_api.g_varchar2
354 ,p_attribute17 in varchar2 default hr_api.g_varchar2
355 ,p_attribute18 in varchar2 default hr_api.g_varchar2
356 ,p_attribute19 in varchar2 default hr_api.g_varchar2
357 ,p_attribute20 in varchar2 default hr_api.g_varchar2
358 ) is
359 --
360 -- Declare cursors and local variables
361 --
362 l_effective_date date;
363 l_earliest_available_date date;
364 l_proc varchar2(72) := g_package||'update_person_dpmt_factor';
365 l_object_version_number per_deployment_factors.object_version_number%type;
366 l_ovn per_deployment_factors.object_version_number%type := p_object_version_number;
367 l_api_updating boolean;
368 --
369 begin
370 hr_utility.set_location('Entering:'|| l_proc, 10);
371 --
372 -- Issue a savepoint
373 --
374 savepoint update_person_dpmt_factor;
375 --
376 l_object_version_number:=p_object_version_number;
377 --
378 l_api_updating:=per_dpf_shd.api_updating
379 (p_deployment_factor_id=>p_deployment_factor_id
380 ,p_object_version_number=>l_object_version_number);
381 --
382 if not l_api_updating
383 then
384 --
385 hr_utility.set_location(l_proc, 20);
386 hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
387 hr_utility.raise_error;
388 end if;
389 --
390 -- Truncate the time portion from all IN date parameters
391 --
392 l_effective_date:=trunc(p_effective_date);
393 l_earliest_available_date:=trunc(p_earliest_available_date);
394 --
395 -- Call Before Process User Hook
396 --
397 begin
398 hr_deployment_factor_bk2.update_person_dpmt_factor_b
399 (p_effective_date => l_effective_date
400 ,p_person_id => per_dpf_shd.g_old_rec.person_id
401 ,p_business_group_id => per_dpf_shd.g_old_rec.business_group_id
402 ,p_work_any_country => p_work_any_country
403 ,p_work_any_location => p_work_any_location
404 ,p_relocate_domestically => p_relocate_domestically
405 ,p_relocate_internationally => p_relocate_internationally
406 ,p_travel_required => p_travel_required
407 ,p_country1 => p_country1
408 ,p_country2 => p_country2
409 ,p_country3 => p_country3
410 ,p_work_duration => p_work_duration
411 ,p_work_schedule => p_work_schedule
412 ,p_work_hours => p_work_hours
413 ,p_fte_capacity => p_fte_capacity
414 ,p_visit_internationally => p_visit_internationally
415 ,p_only_current_location => p_only_current_location
416 ,p_no_country1 => p_no_country1
417 ,p_no_country2 => p_no_country2
418 ,p_no_country3 => p_no_country3
419 ,p_comments => p_comments
420 ,p_earliest_available_date => l_earliest_available_date
421 ,p_available_for_transfer => p_available_for_transfer
422 ,p_relocation_preference => p_relocation_preference
423 ,p_attribute_category => p_attribute_category
424 ,p_attribute1 => p_attribute1
425 ,p_attribute2 => p_attribute2
426 ,p_attribute3 => p_attribute3
427 ,p_attribute4 => p_attribute4
428 ,p_attribute5 => p_attribute5
429 ,p_attribute6 => p_attribute6
430 ,p_attribute7 => p_attribute7
431 ,p_attribute8 => p_attribute8
432 ,p_attribute9 => p_attribute9
433 ,p_attribute10 => p_attribute10
434 ,p_attribute11 => p_attribute11
435 ,p_attribute12 => p_attribute12
436 ,p_attribute13 => p_attribute13
437 ,p_attribute14 => p_attribute14
438 ,p_attribute15 => p_attribute15
439 ,p_attribute16 => p_attribute16
440 ,p_attribute17 => p_attribute17
441 ,p_attribute18 => p_attribute18
442 ,p_attribute19 => p_attribute19
443 ,p_attribute20 => p_attribute20
444 ,p_deployment_factor_id => p_deployment_factor_id
445 ,p_object_version_number => l_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 => 'update_person_dpmt_factor'
451 ,p_hook_type => 'BP'
452 );
453 end;
454 --
455 -- Process Logic
456 --
457 per_dpf_upd.upd
458 (p_effective_date => l_effective_date
459 ,p_person_id => per_dpf_shd.g_old_rec.person_id
460 ,p_business_group_id => per_dpf_shd.g_old_rec.business_group_id
461 ,p_work_any_country => p_work_any_country
462 ,p_work_any_location => p_work_any_location
463 ,p_relocate_domestically => p_relocate_domestically
464 ,p_relocate_internationally => p_relocate_internationally
465 ,p_travel_required => p_travel_required
466 ,p_country1 => p_country1
467 ,p_country2 => p_country2
468 ,p_country3 => p_country3
469 ,p_work_duration => p_work_duration
470 ,p_work_schedule => p_work_schedule
471 ,p_work_hours => p_work_hours
472 ,p_fte_capacity => p_fte_capacity
473 ,p_visit_internationally => p_visit_internationally
474 ,p_only_current_location => p_only_current_location
475 ,p_no_country1 => p_no_country1
476 ,p_no_country2 => p_no_country2
477 ,p_no_country3 => p_no_country3
478 ,p_comments => p_comments
479 ,p_earliest_available_date => l_earliest_available_date
480 ,p_available_for_transfer => p_available_for_transfer
481 ,p_relocation_preference => p_relocation_preference
482 ,p_attribute_category => p_attribute_category
483 ,p_attribute1 => p_attribute1
484 ,p_attribute2 => p_attribute2
485 ,p_attribute3 => p_attribute3
486 ,p_attribute4 => p_attribute4
487 ,p_attribute5 => p_attribute5
488 ,p_attribute6 => p_attribute6
489 ,p_attribute7 => p_attribute7
490 ,p_attribute8 => p_attribute8
491 ,p_attribute9 => p_attribute9
492 ,p_attribute10 => p_attribute10
493 ,p_attribute11 => p_attribute11
494 ,p_attribute12 => p_attribute12
495 ,p_attribute13 => p_attribute13
496 ,p_attribute14 => p_attribute14
497 ,p_attribute15 => p_attribute15
498 ,p_attribute16 => p_attribute16
499 ,p_attribute17 => p_attribute17
500 ,p_attribute18 => p_attribute18
501 ,p_attribute19 => p_attribute19
502 ,p_attribute20 => p_attribute20
503 ,p_deployment_factor_id => p_deployment_factor_id
504 ,p_object_version_number => l_object_version_number
505 );
506 --
507 -- Call After Process User Hook
508 --
509 begin
510 hr_deployment_factor_bk2.update_person_dpmt_factor_a
511 (p_effective_date => l_effective_date
512 ,p_person_id => per_dpf_shd.g_old_rec.person_id
513 ,p_business_group_id => per_dpf_shd.g_old_rec.business_group_id
514 ,p_work_any_country => p_work_any_country
515 ,p_work_any_location => p_work_any_location
516 ,p_relocate_domestically => p_relocate_domestically
517 ,p_relocate_internationally => p_relocate_internationally
518 ,p_travel_required => p_travel_required
519 ,p_country1 => p_country1
520 ,p_country2 => p_country2
521 ,p_country3 => p_country3
522 ,p_work_duration => p_work_duration
523 ,p_work_schedule => p_work_schedule
524 ,p_work_hours => p_work_hours
525 ,p_fte_capacity => p_fte_capacity
526 ,p_visit_internationally => p_visit_internationally
527 ,p_only_current_location => p_only_current_location
528 ,p_no_country1 => p_no_country1
529 ,p_no_country2 => p_no_country2
530 ,p_no_country3 => p_no_country3
531 ,p_comments => p_comments
532 ,p_earliest_available_date => l_earliest_available_date
533 ,p_available_for_transfer => p_available_for_transfer
534 ,p_relocation_preference => p_relocation_preference
535 ,p_attribute_category => p_attribute_category
536 ,p_attribute1 => p_attribute1
537 ,p_attribute2 => p_attribute2
538 ,p_attribute3 => p_attribute3
539 ,p_attribute4 => p_attribute4
540 ,p_attribute5 => p_attribute5
541 ,p_attribute6 => p_attribute6
542 ,p_attribute7 => p_attribute7
543 ,p_attribute8 => p_attribute8
544 ,p_attribute9 => p_attribute9
545 ,p_attribute10 => p_attribute10
546 ,p_attribute11 => p_attribute11
547 ,p_attribute12 => p_attribute12
548 ,p_attribute13 => p_attribute13
549 ,p_attribute14 => p_attribute14
550 ,p_attribute15 => p_attribute15
551 ,p_attribute16 => p_attribute16
552 ,p_attribute17 => p_attribute17
553 ,p_attribute18 => p_attribute18
554 ,p_attribute19 => p_attribute19
555 ,p_attribute20 => p_attribute20
556 ,p_deployment_factor_id => p_deployment_factor_id
557 ,p_object_version_number => l_object_version_number
558 );
559 exception
560 when hr_api.cannot_find_prog_unit then
561 hr_api.cannot_find_prog_unit_error
562 (p_module_name => 'update_person_dpmt_factor'
563 ,p_hook_type => 'AP'
564 );
565 end;
566 --
567 -- When in validation only mode raise the Validate_Enabled exception
568 --
569 if p_validate then
570 raise hr_api.validate_enabled;
571 end if;
572 --
573 -- Set all output arguments
574 --
575 p_object_version_number := l_object_version_number;
576 --
577 hr_utility.set_location(' Leaving:'||l_proc, 70);
578 exception
579 when hr_api.validate_enabled then
580 --
581 -- As the Validate_Enabled exception has been raised
582 -- we must rollback to the savepoint
583 --
584 rollback to update_person_dpmt_factor;
585 --
586 -- Only set output warning arguments
587 -- (Any key or derived arguments must be set to null
588 -- when validation only mode is being used.)
589 --
590 p_object_version_number := null;
591 hr_utility.set_location(' Leaving:'||l_proc, 80);
592 when others then
593 --
594 -- A validation or unexpected error has occured
595 --
596 rollback to update_person_dpmt_factor;
597 --
598 -- set in out parameters and set out parameters
599 --
600 p_object_version_number := l_ovn;
601 --
602 hr_utility.set_location(' Leaving:'||l_proc, 90);
603 raise;
604 end update_person_dpmt_factor;
605 --
606 -- ----------------------------------------------------------------------------
607 -- |---------------------< create_position_dpmt_factor >----------------------|
608 -- ----------------------------------------------------------------------------
609 --
610 procedure create_position_dpmt_factor
611 (p_validate in boolean default false
612 ,p_effective_date in date
613 ,p_position_id in number
614 ,p_work_any_country in varchar2
615 ,p_work_any_location in varchar2
616 ,p_relocate_domestically in varchar2
617 ,p_relocate_internationally in varchar2
618 ,p_travel_required in varchar2
619 ,p_country1 in varchar2 default null
620 ,p_country2 in varchar2 default null
621 ,p_country3 in varchar2 default null
622 ,p_work_duration in varchar2 default null
623 ,p_work_schedule in varchar2 default null
624 ,p_work_hours in varchar2 default null
625 ,p_fte_capacity in varchar2 default null
626 ,p_relocation_required in varchar2 default null
627 ,p_passport_required in varchar2 default null
628 ,p_location1 in varchar2 default null
629 ,p_location2 in varchar2 default null
630 ,p_location3 in varchar2 default null
631 ,p_other_requirements in varchar2 default null
632 ,p_service_minimum in varchar2 default null
633 ,p_attribute_category in varchar2 default null
634 ,p_attribute1 in varchar2 default null
635 ,p_attribute2 in varchar2 default null
636 ,p_attribute3 in varchar2 default null
637 ,p_attribute4 in varchar2 default null
638 ,p_attribute5 in varchar2 default null
639 ,p_attribute6 in varchar2 default null
640 ,p_attribute7 in varchar2 default null
641 ,p_attribute8 in varchar2 default null
642 ,p_attribute9 in varchar2 default null
643 ,p_attribute10 in varchar2 default null
644 ,p_attribute11 in varchar2 default null
645 ,p_attribute12 in varchar2 default null
646 ,p_attribute13 in varchar2 default null
647 ,p_attribute14 in varchar2 default null
648 ,p_attribute15 in varchar2 default null
649 ,p_attribute16 in varchar2 default null
650 ,p_attribute17 in varchar2 default null
651 ,p_attribute18 in varchar2 default null
652 ,p_attribute19 in varchar2 default null
653 ,p_attribute20 in varchar2 default null
654 ,p_deployment_factor_id out nocopy number
655 ,p_object_version_number out nocopy number
656 ) is
657 --
658 -- Declare cursors and local variables
659 --
660 l_effective_date date;
661 l_proc varchar2(72) := g_package||'create_position_dpmt_factor';
662 l_deployment_factor_id per_deployment_factors.deployment_factor_id%type;
663 l_object_version_number per_deployment_factors.object_version_number%type;
664 l_business_group_id hr_all_positions_f.business_group_id%type;
665 --
666 cursor get_bg is
667 select business_group_id
668 from hr_all_positions_f
669 where position_id=p_position_id;
670 --
671 begin
672 hr_utility.set_location('Entering:'|| l_proc, 10);
673 --
674 -- Issue a savepoint
675 --
676 savepoint create_position_dpmt_factor;
677 --
678 -- Truncate the time portion from all IN date parameters
679 --
680 l_effective_date:=trunc(p_effective_date);
681 --
682 -- get the business group id
683 --
684 open get_bg;
685 fetch get_bg into l_business_group_id;
686 close get_bg;
687 --
688 -- Call Before Process User Hook
689 --
690 begin
691 hr_deployment_factor_bk3.create_position_dpmt_factor_b
692 (p_effective_date => l_effective_date
693 ,p_position_id => p_position_id
694 ,p_business_group_id => l_business_group_id
695 ,p_work_any_country => p_work_any_country
696 ,p_work_any_location => p_work_any_location
697 ,p_relocate_domestically => p_relocate_domestically
698 ,p_relocate_internationally => p_relocate_internationally
699 ,p_travel_required => p_travel_required
700 ,p_country1 => p_country1
701 ,p_country2 => p_country2
702 ,p_country3 => p_country3
703 ,p_work_duration => p_work_duration
704 ,p_work_schedule => p_work_schedule
705 ,p_work_hours => p_work_hours
706 ,p_fte_capacity => p_fte_capacity
707 ,p_relocation_required => p_relocation_required
708 ,p_passport_required => p_passport_required
709 ,p_location1 => p_location1
710 ,p_location2 => p_location2
711 ,p_location3 => p_location3
712 ,p_other_requirements => p_other_requirements
713 ,p_service_minimum => p_service_minimum
714 ,p_attribute_category => p_attribute_category
715 ,p_attribute1 => p_attribute1
716 ,p_attribute2 => p_attribute2
717 ,p_attribute3 => p_attribute3
718 ,p_attribute4 => p_attribute4
719 ,p_attribute5 => p_attribute5
720 ,p_attribute6 => p_attribute6
721 ,p_attribute7 => p_attribute7
722 ,p_attribute8 => p_attribute8
723 ,p_attribute9 => p_attribute9
724 ,p_attribute10 => p_attribute10
725 ,p_attribute11 => p_attribute11
726 ,p_attribute12 => p_attribute12
727 ,p_attribute13 => p_attribute13
728 ,p_attribute14 => p_attribute14
729 ,p_attribute15 => p_attribute15
730 ,p_attribute16 => p_attribute16
731 ,p_attribute17 => p_attribute17
732 ,p_attribute18 => p_attribute18
733 ,p_attribute19 => p_attribute19
734 ,p_attribute20 => p_attribute20
735 );
736 exception
737 when hr_api.cannot_find_prog_unit then
738 hr_api.cannot_find_prog_unit_error
739 (p_module_name => 'create_position_dpmt_factor'
740 ,p_hook_type => 'BP'
741 );
742 end;
743 --
744 -- Process Logic
745 --
746 per_dpf_ins.ins
747 (p_effective_date => l_effective_date
748 ,p_position_id => p_position_id
749 ,p_business_group_id => l_business_group_id
750 ,p_work_any_country => p_work_any_country
751 ,p_work_any_location => p_work_any_location
752 ,p_relocate_domestically => p_relocate_domestically
753 ,p_relocate_internationally => p_relocate_internationally
754 ,p_travel_required => p_travel_required
755 ,p_country1 => p_country1
756 ,p_country2 => p_country2
757 ,p_country3 => p_country3
758 ,p_work_duration => p_work_duration
759 ,p_work_schedule => p_work_schedule
760 ,p_work_hours => p_work_hours
761 ,p_fte_capacity => p_fte_capacity
762 ,p_relocation_required => p_relocation_required
763 ,p_passport_required => p_passport_required
764 ,p_location1 => p_location1
765 ,p_location2 => p_location2
766 ,p_location3 => p_location3
767 ,p_other_requirements => p_other_requirements
768 ,p_service_minimum => p_service_minimum
769 ,p_attribute_category => p_attribute_category
770 ,p_attribute1 => p_attribute1
771 ,p_attribute2 => p_attribute2
772 ,p_attribute3 => p_attribute3
773 ,p_attribute4 => p_attribute4
774 ,p_attribute5 => p_attribute5
775 ,p_attribute6 => p_attribute6
776 ,p_attribute7 => p_attribute7
777 ,p_attribute8 => p_attribute8
778 ,p_attribute9 => p_attribute9
779 ,p_attribute10 => p_attribute10
780 ,p_attribute11 => p_attribute11
781 ,p_attribute12 => p_attribute12
782 ,p_attribute13 => p_attribute13
783 ,p_attribute14 => p_attribute14
784 ,p_attribute15 => p_attribute15
785 ,p_attribute16 => p_attribute16
786 ,p_attribute17 => p_attribute17
787 ,p_attribute18 => p_attribute18
788 ,p_attribute19 => p_attribute19
789 ,p_attribute20 => p_attribute20
790 ,p_deployment_factor_id => l_deployment_factor_id
791 ,p_object_version_number => l_object_version_number
792 );
793 --
794 -- Call After Process User Hook
795 --
796 begin
797 hr_deployment_factor_bk3.create_position_dpmt_factor_a
798 (p_effective_date => l_effective_date
799 ,p_position_id => p_position_id
800 ,p_business_group_id => l_business_group_id
801 ,p_work_any_country => p_work_any_country
802 ,p_work_any_location => p_work_any_location
803 ,p_relocate_domestically => p_relocate_domestically
804 ,p_relocate_internationally => p_relocate_internationally
805 ,p_travel_required => p_travel_required
806 ,p_country1 => p_country1
807 ,p_country2 => p_country2
808 ,p_country3 => p_country3
809 ,p_work_duration => p_work_duration
810 ,p_work_schedule => p_work_schedule
811 ,p_work_hours => p_work_hours
812 ,p_fte_capacity => p_fte_capacity
813 ,p_relocation_required => p_relocation_required
814 ,p_passport_required => p_passport_required
815 ,p_location1 => p_location1
816 ,p_location2 => p_location2
817 ,p_location3 => p_location3
818 ,p_other_requirements => p_other_requirements
819 ,p_service_minimum => p_service_minimum
820 ,p_attribute_category => p_attribute_category
821 ,p_attribute1 => p_attribute1
822 ,p_attribute2 => p_attribute2
823 ,p_attribute3 => p_attribute3
824 ,p_attribute4 => p_attribute4
825 ,p_attribute5 => p_attribute5
826 ,p_attribute6 => p_attribute6
827 ,p_attribute7 => p_attribute7
828 ,p_attribute8 => p_attribute8
829 ,p_attribute9 => p_attribute9
830 ,p_attribute10 => p_attribute10
831 ,p_attribute11 => p_attribute11
832 ,p_attribute12 => p_attribute12
833 ,p_attribute13 => p_attribute13
834 ,p_attribute14 => p_attribute14
835 ,p_attribute15 => p_attribute15
836 ,p_attribute16 => p_attribute16
837 ,p_attribute17 => p_attribute17
838 ,p_attribute18 => p_attribute18
839 ,p_attribute19 => p_attribute19
840 ,p_attribute20 => p_attribute20
841 ,p_deployment_factor_id => l_deployment_factor_id
842 ,p_object_version_number => l_object_version_number
843 );
844 exception
845 when hr_api.cannot_find_prog_unit then
846 hr_api.cannot_find_prog_unit_error
847 (p_module_name => 'create_position_dpmt_factor'
848 ,p_hook_type => 'AP'
849 );
850 end;
851 --
852 -- When in validation only mode raise the Validate_Enabled exception
853 --
854 if p_validate then
855 raise hr_api.validate_enabled;
856 end if;
857 --
858 -- Set all output arguments
859 --
860 p_deployment_factor_id := l_deployment_factor_id;
861 p_object_version_number := l_object_version_number;
862 --
863 hr_utility.set_location(' Leaving:'||l_proc, 70);
864 exception
865 when hr_api.validate_enabled then
866 --
867 -- As the Validate_Enabled exception has been raised
868 -- we must rollback to the savepoint
869 --
870 rollback to create_position_dpmt_factor;
871 --
872 -- Only set output warning arguments
873 -- (Any key or derived arguments must be set to null
874 -- when validation only mode is being used.)
875 --
876 p_deployment_factor_id := null;
877 p_object_version_number := null;
878 hr_utility.set_location(' Leaving:'||l_proc, 80);
879 when others then
880 --
881 -- A validation or unexpected error has occured
882 --
883 rollback to create_position_dpmt_factor;
884 --
885 -- set in out parameters and set out parameters
886 --
887 p_deployment_factor_id := null;
888 p_object_version_number := null;
889 --
890 hr_utility.set_location(' Leaving:'||l_proc, 90);
891 raise;
892 end create_position_dpmt_factor;
893 --
894 --
895 -- ----------------------------------------------------------------------------
896 -- |--------------------< update_position_dpmt_factor >----------------------|
897 -- ----------------------------------------------------------------------------
898 --
899 procedure update_position_dpmt_factor
900 (p_validate in boolean default false
901 ,p_effective_date in date
902 ,p_deployment_factor_id in number
903 ,p_object_version_number in out nocopy number
904 ,p_work_any_country in varchar2 default hr_api.g_varchar2
905 ,p_work_any_location in varchar2 default hr_api.g_varchar2
906 ,p_relocate_domestically in varchar2 default hr_api.g_varchar2
907 ,p_relocate_internationally in varchar2 default hr_api.g_varchar2
908 ,p_travel_required in varchar2 default hr_api.g_varchar2
909 ,p_country1 in varchar2 default hr_api.g_varchar2
910 ,p_country2 in varchar2 default hr_api.g_varchar2
911 ,p_country3 in varchar2 default hr_api.g_varchar2
912 ,p_work_duration in varchar2 default hr_api.g_varchar2
913 ,p_work_schedule in varchar2 default hr_api.g_varchar2
914 ,p_work_hours in varchar2 default hr_api.g_varchar2
915 ,p_fte_capacity in varchar2 default hr_api.g_varchar2
916 ,p_relocation_required in varchar2 default hr_api.g_varchar2
917 ,p_passport_required in varchar2 default hr_api.g_varchar2
918 ,p_location1 in varchar2 default hr_api.g_varchar2
919 ,p_location2 in varchar2 default hr_api.g_varchar2
920 ,p_location3 in varchar2 default hr_api.g_varchar2
921 ,p_other_requirements in varchar2 default hr_api.g_varchar2
922 ,p_service_minimum in varchar2 default hr_api.g_varchar2
923 ,p_attribute_category in varchar2 default hr_api.g_varchar2
924 ,p_attribute1 in varchar2 default hr_api.g_varchar2
925 ,p_attribute2 in varchar2 default hr_api.g_varchar2
926 ,p_attribute3 in varchar2 default hr_api.g_varchar2
927 ,p_attribute4 in varchar2 default hr_api.g_varchar2
928 ,p_attribute5 in varchar2 default hr_api.g_varchar2
929 ,p_attribute6 in varchar2 default hr_api.g_varchar2
930 ,p_attribute7 in varchar2 default hr_api.g_varchar2
931 ,p_attribute8 in varchar2 default hr_api.g_varchar2
932 ,p_attribute9 in varchar2 default hr_api.g_varchar2
933 ,p_attribute10 in varchar2 default hr_api.g_varchar2
934 ,p_attribute11 in varchar2 default hr_api.g_varchar2
935 ,p_attribute12 in varchar2 default hr_api.g_varchar2
936 ,p_attribute13 in varchar2 default hr_api.g_varchar2
937 ,p_attribute14 in varchar2 default hr_api.g_varchar2
938 ,p_attribute15 in varchar2 default hr_api.g_varchar2
939 ,p_attribute16 in varchar2 default hr_api.g_varchar2
940 ,p_attribute17 in varchar2 default hr_api.g_varchar2
941 ,p_attribute18 in varchar2 default hr_api.g_varchar2
942 ,p_attribute19 in varchar2 default hr_api.g_varchar2
943 ,p_attribute20 in varchar2 default hr_api.g_varchar2
944 ) is
945 --
946 -- Declare cursors and local variables
947 --
948 l_effective_date date;
949 l_proc varchar2(72) := g_package||'update_position_dpmt_factor';
950 l_object_version_number per_deployment_factors.object_version_number%type;
951 l_ovn per_deployment_factors.object_version_number%type := p_object_version_number;
952 l_api_updating boolean;
953 --
954 begin
955 hr_utility.set_location('Entering:'|| l_proc, 10);
956 --
957 -- Issue a savepoint
958 --
959 savepoint update_position_dpmt_factor;
960 --
961 l_object_version_number:=p_object_version_number;
962 --
963 l_api_updating:=per_dpf_shd.api_updating
964 (p_deployment_factor_id=>p_deployment_factor_id
965 ,p_object_version_number=>l_object_version_number);
966 --
967 if not l_api_updating
968 then
969 --
970 hr_utility.set_location(l_proc, 20);
971 hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
972 hr_utility.raise_error;
973 end if;
974 --
975 -- Truncate the time portion from all IN date parameters
976 --
977 l_effective_date:=trunc(p_effective_date);
978 --
979 -- Call Before Process User Hook
980 --
981 begin
982 hr_deployment_factor_bk4.update_position_dpmt_factor_b
983 (p_effective_date => l_effective_date
984 ,p_position_id => per_dpf_shd.g_old_rec.position_id
985 ,p_business_group_id => per_dpf_shd.g_old_rec.business_group_id
986 ,p_work_any_country => p_work_any_country
987 ,p_work_any_location => p_work_any_location
988 ,p_relocate_domestically => p_relocate_domestically
989 ,p_relocate_internationally => p_relocate_internationally
990 ,p_travel_required => p_travel_required
991 ,p_country1 => p_country1
992 ,p_country2 => p_country2
993 ,p_country3 => p_country3
994 ,p_work_duration => p_work_duration
995 ,p_work_schedule => p_work_schedule
996 ,p_work_hours => p_work_hours
997 ,p_fte_capacity => p_fte_capacity
998 ,p_relocation_required => p_relocation_required
999 ,p_passport_required => p_passport_required
1000 ,p_location1 => p_location1
1001 ,p_location2 => p_location2
1002 ,p_location3 => p_location3
1003 ,p_other_requirements => p_other_requirements
1004 ,p_service_minimum => p_service_minimum
1005 ,p_attribute_category => p_attribute_category
1006 ,p_attribute1 => p_attribute1
1007 ,p_attribute2 => p_attribute2
1008 ,p_attribute3 => p_attribute3
1009 ,p_attribute4 => p_attribute4
1010 ,p_attribute5 => p_attribute5
1011 ,p_attribute6 => p_attribute6
1012 ,p_attribute7 => p_attribute7
1013 ,p_attribute8 => p_attribute8
1014 ,p_attribute9 => p_attribute9
1015 ,p_attribute10 => p_attribute10
1016 ,p_attribute11 => p_attribute11
1017 ,p_attribute12 => p_attribute12
1018 ,p_attribute13 => p_attribute13
1019 ,p_attribute14 => p_attribute14
1020 ,p_attribute15 => p_attribute15
1021 ,p_attribute16 => p_attribute16
1022 ,p_attribute17 => p_attribute17
1023 ,p_attribute18 => p_attribute18
1024 ,p_attribute19 => p_attribute19
1025 ,p_attribute20 => p_attribute20
1026 ,p_deployment_factor_id => p_deployment_factor_id
1027 ,p_object_version_number => l_object_version_number
1028 );
1029 exception
1030 when hr_api.cannot_find_prog_unit then
1031 hr_api.cannot_find_prog_unit_error
1032 (p_module_name => 'update_position_dpmt_factor'
1033 ,p_hook_type => 'BP'
1034 );
1035 end;
1036 --
1037 -- Process Logic
1038 --
1039 per_dpf_upd.upd
1040 (p_effective_date => l_effective_date
1041 ,p_position_id => per_dpf_shd.g_old_rec.position_id
1042 ,p_business_group_id => per_dpf_shd.g_old_rec.business_group_id
1043 ,p_work_any_country => p_work_any_country
1044 ,p_work_any_location => p_work_any_location
1045 ,p_relocate_domestically => p_relocate_domestically
1046 ,p_relocate_internationally => p_relocate_internationally
1047 ,p_travel_required => p_travel_required
1048 ,p_country1 => p_country1
1049 ,p_country2 => p_country2
1050 ,p_country3 => p_country3
1051 ,p_work_duration => p_work_duration
1052 ,p_work_schedule => p_work_schedule
1053 ,p_work_hours => p_work_hours
1054 ,p_fte_capacity => p_fte_capacity
1055 ,p_relocation_required => p_relocation_required
1056 ,p_passport_required => p_passport_required
1057 ,p_location1 => p_location1
1058 ,p_location2 => p_location2
1059 ,p_location3 => p_location3
1060 ,p_other_requirements => p_other_requirements
1061 ,p_service_minimum => p_service_minimum
1062 ,p_attribute_category => p_attribute_category
1063 ,p_attribute1 => p_attribute1
1064 ,p_attribute2 => p_attribute2
1065 ,p_attribute3 => p_attribute3
1066 ,p_attribute4 => p_attribute4
1067 ,p_attribute5 => p_attribute5
1068 ,p_attribute6 => p_attribute6
1069 ,p_attribute7 => p_attribute7
1070 ,p_attribute8 => p_attribute8
1071 ,p_attribute9 => p_attribute9
1072 ,p_attribute10 => p_attribute10
1073 ,p_attribute11 => p_attribute11
1074 ,p_attribute12 => p_attribute12
1075 ,p_attribute13 => p_attribute13
1076 ,p_attribute14 => p_attribute14
1077 ,p_attribute15 => p_attribute15
1078 ,p_attribute16 => p_attribute16
1079 ,p_attribute17 => p_attribute17
1080 ,p_attribute18 => p_attribute18
1081 ,p_attribute19 => p_attribute19
1082 ,p_attribute20 => p_attribute20
1083 ,p_deployment_factor_id => p_deployment_factor_id
1084 ,p_object_version_number => l_object_version_number
1085 );
1086 --
1087 -- Call After Process User Hook
1088 --
1089 begin
1090 hr_deployment_factor_bk4.update_position_dpmt_factor_a
1091 (p_effective_date => l_effective_date
1092 ,p_position_id => per_dpf_shd.g_old_rec.position_id
1093 ,p_business_group_id => per_dpf_shd.g_old_rec.business_group_id
1094 ,p_work_any_country => p_work_any_country
1095 ,p_work_any_location => p_work_any_location
1096 ,p_relocate_domestically => p_relocate_domestically
1097 ,p_relocate_internationally => p_relocate_internationally
1098 ,p_travel_required => p_travel_required
1099 ,p_country1 => p_country1
1100 ,p_country2 => p_country2
1101 ,p_country3 => p_country3
1102 ,p_work_duration => p_work_duration
1103 ,p_work_schedule => p_work_schedule
1104 ,p_work_hours => p_work_hours
1105 ,p_fte_capacity => p_fte_capacity
1106 ,p_relocation_required => p_relocation_required
1107 ,p_passport_required => p_passport_required
1108 ,p_location1 => p_location1
1109 ,p_location2 => p_location2
1110 ,p_location3 => p_location3
1111 ,p_other_requirements => p_other_requirements
1112 ,p_service_minimum => p_service_minimum
1113 ,p_attribute_category => p_attribute_category
1114 ,p_attribute1 => p_attribute1
1115 ,p_attribute2 => p_attribute2
1116 ,p_attribute3 => p_attribute3
1117 ,p_attribute4 => p_attribute4
1118 ,p_attribute5 => p_attribute5
1119 ,p_attribute6 => p_attribute6
1120 ,p_attribute7 => p_attribute7
1121 ,p_attribute8 => p_attribute8
1122 ,p_attribute9 => p_attribute9
1123 ,p_attribute10 => p_attribute10
1124 ,p_attribute11 => p_attribute11
1125 ,p_attribute12 => p_attribute12
1126 ,p_attribute13 => p_attribute13
1127 ,p_attribute14 => p_attribute14
1128 ,p_attribute15 => p_attribute15
1129 ,p_attribute16 => p_attribute16
1130 ,p_attribute17 => p_attribute17
1131 ,p_attribute18 => p_attribute18
1132 ,p_attribute19 => p_attribute19
1133 ,p_attribute20 => p_attribute20
1134 ,p_deployment_factor_id => p_deployment_factor_id
1135 ,p_object_version_number => l_object_version_number
1136 );
1137 exception
1138 when hr_api.cannot_find_prog_unit then
1139 hr_api.cannot_find_prog_unit_error
1140 (p_module_name => 'update_position_dpmt_factor'
1141 ,p_hook_type => 'AP'
1142 );
1143 end;
1144 --
1145 -- When in validation only mode raise the Validate_Enabled exception
1146 --
1147 if p_validate then
1148 raise hr_api.validate_enabled;
1149 end if;
1150 --
1151 -- Set all output arguments
1152 --
1153 p_object_version_number := l_object_version_number;
1154 --
1155 hr_utility.set_location(' Leaving:'||l_proc, 70);
1156 exception
1157 when hr_api.validate_enabled then
1158 --
1159 -- As the Validate_Enabled exception has been raised
1160 -- we must rollback to the savepoint
1161 --
1162 rollback to update_position_dpmt_factor;
1163 --
1164 -- Only set output warning arguments
1165 -- (Any key or derived arguments must be set to null
1166 -- when validation only mode is being used.)
1167 --
1168 p_object_version_number := null;
1169 hr_utility.set_location(' Leaving:'||l_proc, 80);
1170 when others then
1171 --
1172 -- A validation or unexpected error has occured
1173 --
1174 rollback to update_position_dpmt_factor;
1175 --
1176 -- set in out parameters and set out parameters
1177 --
1178 p_object_version_number := l_ovn;
1179 --
1180 hr_utility.set_location(' Leaving:'||l_proc, 90);
1181 raise;
1182 end update_position_dpmt_factor;
1183 --
1184 --
1185 -- ----------------------------------------------------------------------------
1186 -- |------------------------< create_job_dpmt_factor >------------------------|
1187 -- ----------------------------------------------------------------------------
1188 --
1189 procedure create_job_dpmt_factor
1190 (p_validate in boolean default false
1191 ,p_effective_date in date
1192 ,p_job_id in number
1193 ,p_work_any_country in varchar2
1194 ,p_work_any_location in varchar2
1195 ,p_relocate_domestically in varchar2
1196 ,p_relocate_internationally in varchar2
1197 ,p_travel_required in varchar2
1198 ,p_country1 in varchar2 default null
1199 ,p_country2 in varchar2 default null
1200 ,p_country3 in varchar2 default null
1201 ,p_work_duration in varchar2 default null
1202 ,p_work_schedule in varchar2 default null
1203 ,p_work_hours in varchar2 default null
1204 ,p_fte_capacity in varchar2 default null
1205 ,p_relocation_required in varchar2 default null
1206 ,p_passport_required in varchar2 default null
1207 ,p_location1 in varchar2 default null
1208 ,p_location2 in varchar2 default null
1209 ,p_location3 in varchar2 default null
1210 ,p_other_requirements in varchar2 default null
1211 ,p_service_minimum in varchar2 default null
1212 ,p_attribute_category in varchar2 default null
1213 ,p_attribute1 in varchar2 default null
1214 ,p_attribute2 in varchar2 default null
1215 ,p_attribute3 in varchar2 default null
1216 ,p_attribute4 in varchar2 default null
1217 ,p_attribute5 in varchar2 default null
1218 ,p_attribute6 in varchar2 default null
1219 ,p_attribute7 in varchar2 default null
1220 ,p_attribute8 in varchar2 default null
1221 ,p_attribute9 in varchar2 default null
1222 ,p_attribute10 in varchar2 default null
1223 ,p_attribute11 in varchar2 default null
1224 ,p_attribute12 in varchar2 default null
1225 ,p_attribute13 in varchar2 default null
1226 ,p_attribute14 in varchar2 default null
1227 ,p_attribute15 in varchar2 default null
1228 ,p_attribute16 in varchar2 default null
1229 ,p_attribute17 in varchar2 default null
1230 ,p_attribute18 in varchar2 default null
1231 ,p_attribute19 in varchar2 default null
1232 ,p_attribute20 in varchar2 default null
1233 ,p_deployment_factor_id out nocopy number
1234 ,p_object_version_number out nocopy number
1235 ) is
1236 --
1237 -- Declare cursors and local variables
1238 --
1239 l_effective_date date;
1240 l_proc varchar2(72) := g_package||'create_job_dpmt_factor';
1241 l_deployment_factor_id per_deployment_factors.deployment_factor_id%type;
1242 l_object_version_number per_deployment_factors.object_version_number%type;
1243 l_business_group_id hr_all_positions_f.business_group_id%type;
1244 --
1245 cursor get_bg is
1246 select business_group_id
1247 from per_jobs_v
1248 where job_id=p_job_id;
1249 --
1250 begin
1251 hr_utility.set_location('Entering:'|| l_proc, 10);
1252 --
1253 -- Issue a savepoint
1254 --
1255 savepoint create_job_dpmt_factor;
1256 --
1257 -- Truncate the time portion from all IN date parameters
1258 --
1259 l_effective_date:=trunc(p_effective_date);
1260 --
1261 -- get the business group id
1262 --
1263 open get_bg;
1264 fetch get_bg into l_business_group_id;
1265 close get_bg;
1266 --
1267 -- Call Before Process User Hook
1268 --
1269 begin
1270 hr_deployment_factor_bk5.create_job_dpmt_factor_b
1271 (p_effective_date => l_effective_date
1272 ,p_job_id => p_job_id
1273 ,p_business_group_id => l_business_group_id
1274 ,p_work_any_country => p_work_any_country
1275 ,p_work_any_location => p_work_any_location
1276 ,p_relocate_domestically => p_relocate_domestically
1277 ,p_relocate_internationally => p_relocate_internationally
1278 ,p_travel_required => p_travel_required
1279 ,p_country1 => p_country1
1280 ,p_country2 => p_country2
1281 ,p_country3 => p_country3
1282 ,p_work_duration => p_work_duration
1283 ,p_work_schedule => p_work_schedule
1284 ,p_work_hours => p_work_hours
1285 ,p_fte_capacity => p_fte_capacity
1286 ,p_relocation_required => p_relocation_required
1287 ,p_passport_required => p_passport_required
1288 ,p_location1 => p_location1
1289 ,p_location2 => p_location2
1290 ,p_location3 => p_location3
1291 ,p_other_requirements => p_other_requirements
1292 ,p_service_minimum => p_service_minimum
1293 ,p_attribute_category => p_attribute_category
1294 ,p_attribute1 => p_attribute1
1295 ,p_attribute2 => p_attribute2
1296 ,p_attribute3 => p_attribute3
1297 ,p_attribute4 => p_attribute4
1298 ,p_attribute5 => p_attribute5
1299 ,p_attribute6 => p_attribute6
1300 ,p_attribute7 => p_attribute7
1301 ,p_attribute8 => p_attribute8
1302 ,p_attribute9 => p_attribute9
1303 ,p_attribute10 => p_attribute10
1304 ,p_attribute11 => p_attribute11
1305 ,p_attribute12 => p_attribute12
1306 ,p_attribute13 => p_attribute13
1307 ,p_attribute14 => p_attribute14
1308 ,p_attribute15 => p_attribute15
1309 ,p_attribute16 => p_attribute16
1310 ,p_attribute17 => p_attribute17
1311 ,p_attribute18 => p_attribute18
1312 ,p_attribute19 => p_attribute19
1313 ,p_attribute20 => p_attribute20
1314 );
1315 exception
1316 when hr_api.cannot_find_prog_unit then
1317 hr_api.cannot_find_prog_unit_error
1318 (p_module_name => 'create_job_dpmt_factor'
1319 ,p_hook_type => 'BP'
1320 );
1321 end;
1322 --
1323 -- Process Logic
1324 --
1325 per_dpf_ins.ins
1326 (p_effective_date => l_effective_date
1327 ,p_job_id => p_job_id
1328 ,p_business_group_id => l_business_group_id
1329 ,p_work_any_country => p_work_any_country
1330 ,p_work_any_location => p_work_any_location
1331 ,p_relocate_domestically => p_relocate_domestically
1332 ,p_relocate_internationally => p_relocate_internationally
1333 ,p_travel_required => p_travel_required
1334 ,p_country1 => p_country1
1335 ,p_country2 => p_country2
1336 ,p_country3 => p_country3
1337 ,p_work_duration => p_work_duration
1338 ,p_work_schedule => p_work_schedule
1339 ,p_work_hours => p_work_hours
1340 ,p_fte_capacity => p_fte_capacity
1341 ,p_relocation_required => p_relocation_required
1342 ,p_passport_required => p_passport_required
1343 ,p_location1 => p_location1
1344 ,p_location2 => p_location2
1345 ,p_location3 => p_location3
1346 ,p_other_requirements => p_other_requirements
1347 ,p_service_minimum => p_service_minimum
1348 ,p_attribute_category => p_attribute_category
1349 ,p_attribute1 => p_attribute1
1350 ,p_attribute2 => p_attribute2
1351 ,p_attribute3 => p_attribute3
1352 ,p_attribute4 => p_attribute4
1353 ,p_attribute5 => p_attribute5
1354 ,p_attribute6 => p_attribute6
1355 ,p_attribute7 => p_attribute7
1356 ,p_attribute8 => p_attribute8
1357 ,p_attribute9 => p_attribute9
1358 ,p_attribute10 => p_attribute10
1359 ,p_attribute11 => p_attribute11
1360 ,p_attribute12 => p_attribute12
1361 ,p_attribute13 => p_attribute13
1362 ,p_attribute14 => p_attribute14
1363 ,p_attribute15 => p_attribute15
1364 ,p_attribute16 => p_attribute16
1365 ,p_attribute17 => p_attribute17
1366 ,p_attribute18 => p_attribute18
1367 ,p_attribute19 => p_attribute19
1368 ,p_attribute20 => p_attribute20
1369 ,p_deployment_factor_id => l_deployment_factor_id
1370 ,p_object_version_number => l_object_version_number
1371 );
1372 --
1373 -- Call After Process User Hook
1374 --
1375 begin
1376 hr_deployment_factor_bk5.create_job_dpmt_factor_a
1377 (p_effective_date => l_effective_date
1378 ,p_job_id => p_job_id
1379 ,p_business_group_id => l_business_group_id
1380 ,p_work_any_country => p_work_any_country
1381 ,p_work_any_location => p_work_any_location
1382 ,p_relocate_domestically => p_relocate_domestically
1383 ,p_relocate_internationally => p_relocate_internationally
1384 ,p_travel_required => p_travel_required
1385 ,p_country1 => p_country1
1386 ,p_country2 => p_country2
1387 ,p_country3 => p_country3
1388 ,p_work_duration => p_work_duration
1389 ,p_work_schedule => p_work_schedule
1390 ,p_work_hours => p_work_hours
1391 ,p_fte_capacity => p_fte_capacity
1392 ,p_relocation_required => p_relocation_required
1393 ,p_passport_required => p_passport_required
1394 ,p_location1 => p_location1
1395 ,p_location2 => p_location2
1396 ,p_location3 => p_location3
1397 ,p_other_requirements => p_other_requirements
1398 ,p_service_minimum => p_service_minimum
1399 ,p_attribute_category => p_attribute_category
1400 ,p_attribute1 => p_attribute1
1401 ,p_attribute2 => p_attribute2
1402 ,p_attribute3 => p_attribute3
1403 ,p_attribute4 => p_attribute4
1404 ,p_attribute5 => p_attribute5
1405 ,p_attribute6 => p_attribute6
1406 ,p_attribute7 => p_attribute7
1407 ,p_attribute8 => p_attribute8
1408 ,p_attribute9 => p_attribute9
1409 ,p_attribute10 => p_attribute10
1410 ,p_attribute11 => p_attribute11
1411 ,p_attribute12 => p_attribute12
1412 ,p_attribute13 => p_attribute13
1413 ,p_attribute14 => p_attribute14
1414 ,p_attribute15 => p_attribute15
1415 ,p_attribute16 => p_attribute16
1416 ,p_attribute17 => p_attribute17
1417 ,p_attribute18 => p_attribute18
1418 ,p_attribute19 => p_attribute19
1419 ,p_attribute20 => p_attribute20
1420 ,p_deployment_factor_id => l_deployment_factor_id
1421 ,p_object_version_number => l_object_version_number
1422 );
1423 exception
1424 when hr_api.cannot_find_prog_unit then
1425 hr_api.cannot_find_prog_unit_error
1426 (p_module_name => 'create_job_dpmt_factor'
1427 ,p_hook_type => 'AP'
1428 );
1429 end;
1430 --
1431 -- When in validation only mode raise the Validate_Enabled exception
1432 --
1433 if p_validate then
1434 raise hr_api.validate_enabled;
1435 end if;
1436 --
1437 -- Set all output arguments
1438 --
1439 p_deployment_factor_id := l_deployment_factor_id;
1440 p_object_version_number := l_object_version_number;
1441 --
1442 hr_utility.set_location(' Leaving:'||l_proc, 70);
1443 exception
1444 when hr_api.validate_enabled then
1445 --
1446 -- As the Validate_Enabled exception has been raised
1447 -- we must rollback to the savepoint
1448 --
1449 rollback to create_job_dpmt_factor;
1450 --
1451 -- Only set output warning arguments
1452 -- (Any key or derived arguments must be set to null
1453 -- when validation only mode is being used.)
1454 --
1455 p_deployment_factor_id := null;
1456 p_object_version_number := null;
1457 hr_utility.set_location(' Leaving:'||l_proc, 80);
1458 when others then
1459 --
1460 -- A validation or unexpected error has occured
1461 --
1462 rollback to create_job_dpmt_factor;
1463 --
1464 -- set in out parameters and set out parameters
1465 --
1466 p_deployment_factor_id := null;
1467 p_object_version_number := null;
1468 --
1469 hr_utility.set_location(' Leaving:'||l_proc, 90);
1470 raise;
1471 end create_job_dpmt_factor;
1472 --
1473 --
1474 -- ----------------------------------------------------------------------------
1475 -- |----------------------< update_job_dpmt_factor >-------------------------|
1476 -- ----------------------------------------------------------------------------
1477 --
1478 procedure update_job_dpmt_factor
1479 (p_validate in boolean default false
1480 ,p_effective_date in date
1481 ,p_deployment_factor_id in number
1482 ,p_object_version_number in out nocopy number
1483 ,p_work_any_country in varchar2 default hr_api.g_varchar2
1484 ,p_work_any_location in varchar2 default hr_api.g_varchar2
1485 ,p_relocate_domestically in varchar2 default hr_api.g_varchar2
1486 ,p_relocate_internationally in varchar2 default hr_api.g_varchar2
1487 ,p_travel_required in varchar2 default hr_api.g_varchar2
1488 ,p_country1 in varchar2 default hr_api.g_varchar2
1489 ,p_country2 in varchar2 default hr_api.g_varchar2
1490 ,p_country3 in varchar2 default hr_api.g_varchar2
1491 ,p_work_duration in varchar2 default hr_api.g_varchar2
1492 ,p_work_schedule in varchar2 default hr_api.g_varchar2
1493 ,p_work_hours in varchar2 default hr_api.g_varchar2
1494 ,p_fte_capacity in varchar2 default hr_api.g_varchar2
1495 ,p_relocation_required in varchar2 default hr_api.g_varchar2
1496 ,p_passport_required in varchar2 default hr_api.g_varchar2
1497 ,p_location1 in varchar2 default hr_api.g_varchar2
1498 ,p_location2 in varchar2 default hr_api.g_varchar2
1499 ,p_location3 in varchar2 default hr_api.g_varchar2
1500 ,p_other_requirements in varchar2 default hr_api.g_varchar2
1501 ,p_service_minimum in varchar2 default hr_api.g_varchar2
1502 ,p_attribute_category in varchar2 default hr_api.g_varchar2
1503 ,p_attribute1 in varchar2 default hr_api.g_varchar2
1504 ,p_attribute2 in varchar2 default hr_api.g_varchar2
1505 ,p_attribute3 in varchar2 default hr_api.g_varchar2
1506 ,p_attribute4 in varchar2 default hr_api.g_varchar2
1507 ,p_attribute5 in varchar2 default hr_api.g_varchar2
1508 ,p_attribute6 in varchar2 default hr_api.g_varchar2
1509 ,p_attribute7 in varchar2 default hr_api.g_varchar2
1510 ,p_attribute8 in varchar2 default hr_api.g_varchar2
1511 ,p_attribute9 in varchar2 default hr_api.g_varchar2
1512 ,p_attribute10 in varchar2 default hr_api.g_varchar2
1513 ,p_attribute11 in varchar2 default hr_api.g_varchar2
1514 ,p_attribute12 in varchar2 default hr_api.g_varchar2
1515 ,p_attribute13 in varchar2 default hr_api.g_varchar2
1516 ,p_attribute14 in varchar2 default hr_api.g_varchar2
1517 ,p_attribute15 in varchar2 default hr_api.g_varchar2
1518 ,p_attribute16 in varchar2 default hr_api.g_varchar2
1519 ,p_attribute17 in varchar2 default hr_api.g_varchar2
1520 ,p_attribute18 in varchar2 default hr_api.g_varchar2
1521 ,p_attribute19 in varchar2 default hr_api.g_varchar2
1522 ,p_attribute20 in varchar2 default hr_api.g_varchar2
1523 ) is
1524 --
1525 -- Declare cursors and local variables
1526 --
1527 l_effective_date date;
1528 l_proc varchar2(72) := g_package||'update_job_dpmt_factor';
1529 l_object_version_number per_deployment_factors.object_version_number%type;
1530 l_ovn per_deployment_factors.object_version_number%type := p_object_version_number;
1531 l_api_updating boolean;
1532 --
1533 begin
1534 hr_utility.set_location('Entering:'|| l_proc, 10);
1535 --
1536 -- Issue a savepoint
1537 --
1538 savepoint update_job_dpmt_factor;
1539 --
1540 l_object_version_number:=p_object_version_number;
1541 --
1542 l_api_updating:=per_dpf_shd.api_updating
1543 (p_deployment_factor_id=>p_deployment_factor_id
1544 ,p_object_version_number=>l_object_version_number);
1545 --
1546 if not l_api_updating
1547 then
1548 --
1549 hr_utility.set_location(l_proc, 20);
1550 hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
1551 hr_utility.raise_error;
1552 end if;
1553 --
1554 -- Truncate the time portion from all IN date parameters
1555 --
1556 l_effective_date:=trunc(p_effective_date);
1557 --
1558 -- Call Before Process User Hook
1559 --
1560 begin
1561 hr_deployment_factor_bk6.update_job_dpmt_factor_b
1562 (p_effective_date => l_effective_date
1563 ,p_job_id => per_dpf_shd.g_old_rec.job_id
1564 ,p_business_group_id => per_dpf_shd.g_old_rec.business_group_id
1565 ,p_work_any_country => p_work_any_country
1566 ,p_work_any_location => p_work_any_location
1567 ,p_relocate_domestically => p_relocate_domestically
1568 ,p_relocate_internationally => p_relocate_internationally
1569 ,p_travel_required => p_travel_required
1570 ,p_country1 => p_country1
1571 ,p_country2 => p_country2
1572 ,p_country3 => p_country3
1573 ,p_work_duration => p_work_duration
1574 ,p_work_schedule => p_work_schedule
1575 ,p_work_hours => p_work_hours
1576 ,p_fte_capacity => p_fte_capacity
1577 ,p_relocation_required => p_relocation_required
1578 ,p_passport_required => p_passport_required
1579 ,p_location1 => p_location1
1580 ,p_location2 => p_location2
1581 ,p_location3 => p_location3
1582 ,p_other_requirements => p_other_requirements
1583 ,p_service_minimum => p_service_minimum
1584 ,p_attribute_category => p_attribute_category
1585 ,p_attribute1 => p_attribute1
1586 ,p_attribute2 => p_attribute2
1587 ,p_attribute3 => p_attribute3
1588 ,p_attribute4 => p_attribute4
1589 ,p_attribute5 => p_attribute5
1590 ,p_attribute6 => p_attribute6
1591 ,p_attribute7 => p_attribute7
1592 ,p_attribute8 => p_attribute8
1593 ,p_attribute9 => p_attribute9
1594 ,p_attribute10 => p_attribute10
1595 ,p_attribute11 => p_attribute11
1596 ,p_attribute12 => p_attribute12
1597 ,p_attribute13 => p_attribute13
1598 ,p_attribute14 => p_attribute14
1599 ,p_attribute15 => p_attribute15
1600 ,p_attribute16 => p_attribute16
1601 ,p_attribute17 => p_attribute17
1602 ,p_attribute18 => p_attribute18
1603 ,p_attribute19 => p_attribute19
1604 ,p_attribute20 => p_attribute20
1605 ,p_deployment_factor_id => p_deployment_factor_id
1606 ,p_object_version_number => l_object_version_number
1607 );
1608 exception
1609 when hr_api.cannot_find_prog_unit then
1610 hr_api.cannot_find_prog_unit_error
1611 (p_module_name => 'update_job_dpmt_factor'
1612 ,p_hook_type => 'BP'
1613 );
1614 end;
1615 --
1616 -- Process Logic
1617 --
1618 per_dpf_upd.upd
1619 (p_effective_date => l_effective_date
1620 ,p_job_id => per_dpf_shd.g_old_rec.job_id
1621 ,p_business_group_id => per_dpf_shd.g_old_rec.business_group_id
1622 ,p_work_any_country => p_work_any_country
1623 ,p_work_any_location => p_work_any_location
1624 ,p_relocate_domestically => p_relocate_domestically
1625 ,p_relocate_internationally => p_relocate_internationally
1626 ,p_travel_required => p_travel_required
1627 ,p_country1 => p_country1
1628 ,p_country2 => p_country2
1629 ,p_country3 => p_country3
1630 ,p_work_duration => p_work_duration
1631 ,p_work_schedule => p_work_schedule
1632 ,p_work_hours => p_work_hours
1633 ,p_fte_capacity => p_fte_capacity
1634 ,p_relocation_required => p_relocation_required
1635 ,p_passport_required => p_passport_required
1636 ,p_location1 => p_location1
1637 ,p_location2 => p_location2
1638 ,p_location3 => p_location3
1639 ,p_other_requirements => p_other_requirements
1640 ,p_service_minimum => p_service_minimum
1641 ,p_attribute_category => p_attribute_category
1642 ,p_attribute1 => p_attribute1
1643 ,p_attribute2 => p_attribute2
1644 ,p_attribute3 => p_attribute3
1645 ,p_attribute4 => p_attribute4
1646 ,p_attribute5 => p_attribute5
1647 ,p_attribute6 => p_attribute6
1648 ,p_attribute7 => p_attribute7
1649 ,p_attribute8 => p_attribute8
1650 ,p_attribute9 => p_attribute9
1651 ,p_attribute10 => p_attribute10
1652 ,p_attribute11 => p_attribute11
1653 ,p_attribute12 => p_attribute12
1654 ,p_attribute13 => p_attribute13
1655 ,p_attribute14 => p_attribute14
1656 ,p_attribute15 => p_attribute15
1657 ,p_attribute16 => p_attribute16
1658 ,p_attribute17 => p_attribute17
1659 ,p_attribute18 => p_attribute18
1660 ,p_attribute19 => p_attribute19
1661 ,p_attribute20 => p_attribute20
1662 ,p_deployment_factor_id => p_deployment_factor_id
1663 ,p_object_version_number => l_object_version_number
1664 );
1665 --
1666 -- Call After Process User Hook
1667 --
1668 begin
1669 hr_deployment_factor_bk6.update_job_dpmt_factor_a
1670 (p_effective_date => l_effective_date
1671 ,p_job_id => per_dpf_shd.g_old_rec.job_id
1672 ,p_business_group_id => per_dpf_shd.g_old_rec.business_group_id
1673 ,p_work_any_country => p_work_any_country
1674 ,p_work_any_location => p_work_any_location
1675 ,p_relocate_domestically => p_relocate_domestically
1676 ,p_relocate_internationally => p_relocate_internationally
1677 ,p_travel_required => p_travel_required
1678 ,p_country1 => p_country1
1679 ,p_country2 => p_country2
1680 ,p_country3 => p_country3
1681 ,p_work_duration => p_work_duration
1682 ,p_work_schedule => p_work_schedule
1683 ,p_work_hours => p_work_hours
1684 ,p_fte_capacity => p_fte_capacity
1685 ,p_relocation_required => p_relocation_required
1686 ,p_passport_required => p_passport_required
1687 ,p_location1 => p_location1
1688 ,p_location2 => p_location2
1689 ,p_location3 => p_location3
1690 ,p_other_requirements => p_other_requirements
1691 ,p_service_minimum => p_service_minimum
1692 ,p_attribute_category => p_attribute_category
1693 ,p_attribute1 => p_attribute1
1694 ,p_attribute2 => p_attribute2
1695 ,p_attribute3 => p_attribute3
1696 ,p_attribute4 => p_attribute4
1697 ,p_attribute5 => p_attribute5
1698 ,p_attribute6 => p_attribute6
1699 ,p_attribute7 => p_attribute7
1700 ,p_attribute8 => p_attribute8
1701 ,p_attribute9 => p_attribute9
1702 ,p_attribute10 => p_attribute10
1703 ,p_attribute11 => p_attribute11
1704 ,p_attribute12 => p_attribute12
1705 ,p_attribute13 => p_attribute13
1706 ,p_attribute14 => p_attribute14
1707 ,p_attribute15 => p_attribute15
1708 ,p_attribute16 => p_attribute16
1709 ,p_attribute17 => p_attribute17
1710 ,p_attribute18 => p_attribute18
1711 ,p_attribute19 => p_attribute19
1712 ,p_attribute20 => p_attribute20
1713 ,p_deployment_factor_id => p_deployment_factor_id
1714 ,p_object_version_number => l_object_version_number
1715 );
1716 exception
1717 when hr_api.cannot_find_prog_unit then
1718 hr_api.cannot_find_prog_unit_error
1719 (p_module_name => 'update_job_dpmt_factor'
1720 ,p_hook_type => 'AP'
1721 );
1722 end;
1723 --
1724 -- When in validation only mode raise the Validate_Enabled exception
1725 --
1726 if p_validate then
1727 raise hr_api.validate_enabled;
1728 end if;
1729 --
1730 -- Set all output arguments
1731 --
1732 p_object_version_number := l_object_version_number;
1733 --
1734 hr_utility.set_location(' Leaving:'||l_proc, 70);
1735 exception
1736 when hr_api.validate_enabled then
1737 --
1738 -- As the Validate_Enabled exception has been raised
1739 -- we must rollback to the savepoint
1740 --
1741 rollback to update_job_dpmt_factor;
1742 --
1743 -- Only set output warning arguments
1744 -- (Any key or derived arguments must be set to null
1745 -- when validation only mode is being used.)
1746 --
1747 p_object_version_number := null;
1748 hr_utility.set_location(' Leaving:'||l_proc, 80);
1749 when others then
1750 --
1751 -- A validation or unexpected error has occured
1752 --
1753 rollback to update_job_dpmt_factor;
1754 --
1755 -- set in out parameters and set out parameters
1756 --
1757 p_object_version_number := l_ovn;
1758 --
1759 hr_utility.set_location(' Leaving:'||l_proc, 90);
1760 raise;
1761 end update_job_dpmt_factor;
1762 --
1763 end hr_deployment_factor_api;