[Home] [Help]
PACKAGE BODY: APPS.HR_PERIODS_OF_PLACEMENT_API
Source
1 Package Body hr_periods_of_placement_api as
2 /* $Header: pepdpapi.pkb 115.3 2003/12/03 07:09:02 adhunter noship $ */
3 --
4 -- Package Variables
5 --
6 g_package varchar2(33) := ' hr_periods_of_placement_api.';
7 --
8 -- ----------------------------------------------------------------------------
9 -- |----------------------< update_pdp_details >-------------------------------|
10 -- ----------------------------------------------------------------------------
11 --
12 procedure update_pdp_details
13 (p_validate in boolean default false
14 ,p_effective_date in date
15 ,p_object_version_number in out nocopy number
16 ,p_person_id in number
17 ,p_date_start in date
18 ,p_projected_termination_date in date default hr_api.g_date
19 ,p_termination_reason in varchar2 default hr_api.g_varchar2
20 ,p_attribute_category in varchar2 default hr_api.g_varchar2
21 ,p_attribute1 in varchar2 default hr_api.g_varchar2
22 ,p_attribute2 in varchar2 default hr_api.g_varchar2
23 ,p_attribute3 in varchar2 default hr_api.g_varchar2
24 ,p_attribute4 in varchar2 default hr_api.g_varchar2
25 ,p_attribute5 in varchar2 default hr_api.g_varchar2
26 ,p_attribute6 in varchar2 default hr_api.g_varchar2
27 ,p_attribute7 in varchar2 default hr_api.g_varchar2
28 ,p_attribute8 in varchar2 default hr_api.g_varchar2
29 ,p_attribute9 in varchar2 default hr_api.g_varchar2
30 ,p_attribute10 in varchar2 default hr_api.g_varchar2
31 ,p_attribute11 in varchar2 default hr_api.g_varchar2
32 ,p_attribute12 in varchar2 default hr_api.g_varchar2
33 ,p_attribute13 in varchar2 default hr_api.g_varchar2
34 ,p_attribute14 in varchar2 default hr_api.g_varchar2
35 ,p_attribute15 in varchar2 default hr_api.g_varchar2
36 ,p_attribute16 in varchar2 default hr_api.g_varchar2
37 ,p_attribute17 in varchar2 default hr_api.g_varchar2
38 ,p_attribute18 in varchar2 default hr_api.g_varchar2
39 ,p_attribute19 in varchar2 default hr_api.g_varchar2
40 ,p_attribute20 in varchar2 default hr_api.g_varchar2
41 ,p_attribute21 in varchar2 default hr_api.g_varchar2
42 ,p_attribute22 in varchar2 default hr_api.g_varchar2
43 ,p_attribute23 in varchar2 default hr_api.g_varchar2
44 ,p_attribute24 in varchar2 default hr_api.g_varchar2
45 ,p_attribute25 in varchar2 default hr_api.g_varchar2
46 ,p_attribute26 in varchar2 default hr_api.g_varchar2
47 ,p_attribute27 in varchar2 default hr_api.g_varchar2
48 ,p_attribute28 in varchar2 default hr_api.g_varchar2
49 ,p_attribute29 in varchar2 default hr_api.g_varchar2
50 ,p_attribute30 in varchar2 default hr_api.g_varchar2
51 ,p_information_category in varchar2 default hr_api.g_varchar2
52 ,p_information1 in varchar2 default hr_api.g_varchar2
53 ,p_information2 in varchar2 default hr_api.g_varchar2
54 ,p_information3 in varchar2 default hr_api.g_varchar2
55 ,p_information4 in varchar2 default hr_api.g_varchar2
56 ,p_information5 in varchar2 default hr_api.g_varchar2
57 ,p_information6 in varchar2 default hr_api.g_varchar2
58 ,p_information7 in varchar2 default hr_api.g_varchar2
59 ,p_information8 in varchar2 default hr_api.g_varchar2
60 ,p_information9 in varchar2 default hr_api.g_varchar2
61 ,p_information10 in varchar2 default hr_api.g_varchar2
62 ,p_information11 in varchar2 default hr_api.g_varchar2
63 ,p_information12 in varchar2 default hr_api.g_varchar2
64 ,p_information13 in varchar2 default hr_api.g_varchar2
65 ,p_information14 in varchar2 default hr_api.g_varchar2
66 ,p_information15 in varchar2 default hr_api.g_varchar2
67 ,p_information16 in varchar2 default hr_api.g_varchar2
68 ,p_information17 in varchar2 default hr_api.g_varchar2
69 ,p_information18 in varchar2 default hr_api.g_varchar2
70 ,p_information19 in varchar2 default hr_api.g_varchar2
71 ,p_information20 in varchar2 default hr_api.g_varchar2
72 ,p_information21 in varchar2 default hr_api.g_varchar2
73 ,p_information22 in varchar2 default hr_api.g_varchar2
74 ,p_information23 in varchar2 default hr_api.g_varchar2
75 ,p_information24 in varchar2 default hr_api.g_varchar2
76 ,p_information25 in varchar2 default hr_api.g_varchar2
77 ,p_information26 in varchar2 default hr_api.g_varchar2
78 ,p_information27 in varchar2 default hr_api.g_varchar2
79 ,p_information28 in varchar2 default hr_api.g_varchar2
80 ,p_information29 in varchar2 default hr_api.g_varchar2
81 ,p_information30 in varchar2 default hr_api.g_varchar2
82 ) is
83
84 --
85 -- Declare cursors and local variables
86 --
87
88 l_proc varchar2(72) := g_package||'update_pdp_details';
89 l_effective_date date;
90 l_date_start date;
91
92 --
93 -- Declare out parameters
94 --
95 l_object_version_number number;
96 l_ovn number := p_object_version_number;
97
98 begin
99
100 hr_utility.set_location('Entering:'|| l_proc, 10);
101
102 --
103 -- Pipe the main IN / IN OUT parameters for ease of debugging.
104 --
105 hr_utility.trace(' ');
106 hr_utility.trace(' --------------------------------'||
107 '---------------------------------');
108 hr_utility.trace(' IN / IN OUT NOCOPY PARAMETER '||
109 ' VALUE');
110 hr_utility.trace(' --------------------------------'||
111 '+--------------------------------');
112 hr_utility.trace(' p_effective_date '||
113 to_char(p_effective_date));
114 hr_utility.trace(' p_object_version_number '||
115 to_char(p_object_version_number));
116 hr_utility.trace(' p_person_id '||
117 to_char(p_person_id));
118 hr_utility.trace(' p_date_start '||
119 to_char(p_date_start));
120 hr_utility.trace(' p_termination_reason '||
121 p_termination_reason);
122 hr_utility.trace(' --------------------------------'||
123 '---------------------------------');
124 hr_utility.trace(' ');
125
126 --
127 -- Create a savepoint.
128 --
129 savepoint update_pdp_details;
130
131
132 l_object_version_number := p_object_version_number;
133 --
134 -- Truncate the time portion from all IN date parameters
135 --
136 l_effective_date := trunc(p_effective_date);
137 l_date_start := trunc(p_date_start);
138
139 --
140 -- Call Before Process User Hook
141 --
142 begin
143
144 hr_periods_of_placement_bk1.update_pdp_details_b
145 (p_object_version_number => l_object_version_number
146 ,p_effective_date => l_effective_date
147 ,p_person_id => p_person_id
148 ,p_date_start => l_date_start
149 ,p_projected_termination_date => null
150 ,p_termination_reason => p_termination_reason
151 ,p_attribute_category => p_attribute_category
152 ,p_attribute1 => p_attribute1
153 ,p_attribute2 => p_attribute2
154 ,p_attribute3 => p_attribute3
155 ,p_attribute4 => p_attribute4
156 ,p_attribute5 => p_attribute5
157 ,p_attribute6 => p_attribute6
158 ,p_attribute7 => p_attribute7
159 ,p_attribute8 => p_attribute8
160 ,p_attribute9 => p_attribute9
161 ,p_attribute10 => p_attribute10
162 ,p_attribute11 => p_attribute11
163 ,p_attribute12 => p_attribute12
164 ,p_attribute13 => p_attribute13
165 ,p_attribute14 => p_attribute14
166 ,p_attribute15 => p_attribute15
167 ,p_attribute16 => p_attribute16
168 ,p_attribute17 => p_attribute17
169 ,p_attribute18 => p_attribute18
170 ,p_attribute19 => p_attribute19
171 ,p_attribute20 => p_attribute20
172 ,p_attribute21 => p_attribute21
173 ,p_attribute22 => p_attribute22
174 ,p_attribute23 => p_attribute23
175 ,p_attribute24 => p_attribute24
176 ,p_attribute25 => p_attribute25
177 ,p_attribute26 => p_attribute26
178 ,p_attribute27 => p_attribute27
179 ,p_attribute28 => p_attribute28
180 ,p_attribute29 => p_attribute29
181 ,p_attribute30 => p_attribute30
182 ,p_information_category => p_information_category
183 ,p_information1 => p_information1
184 ,p_information2 => p_information2
185 ,p_information3 => p_information3
186 ,p_information4 => p_information4
187 ,p_information5 => p_information5
188 ,p_information6 => p_information6
189 ,p_information7 => p_information7
190 ,p_information8 => p_information8
191 ,p_information9 => p_information9
192 ,p_information10 => p_information10
193 ,p_information11 => p_information11
194 ,p_information12 => p_information12
195 ,p_information13 => p_information13
196 ,p_information14 => p_information14
197 ,p_information15 => p_information15
198 ,p_information16 => p_information16
199 ,p_information17 => p_information17
200 ,p_information18 => p_information18
201 ,p_information19 => p_information19
202 ,p_information20 => p_information20
203 ,p_information21 => p_information21
204 ,p_information22 => p_information22
205 ,p_information23 => p_information23
206 ,p_information24 => p_information24
207 ,p_information25 => p_information25
208 ,p_information26 => p_information26
209 ,p_information27 => p_information27
210 ,p_information28 => p_information28
211 ,p_information29 => p_information29
215 exception
212 ,p_information30 => p_information30
213 );
214
216 when hr_api.cannot_find_prog_unit then
217 hr_api.cannot_find_prog_unit_error
218 (p_module_name => 'UPDATE_PDP_DETAILS'
219 ,p_hook_type => 'BP'
220 );
221 end;
222
223 hr_utility.set_location(l_proc, 30);
224 --
225 -- Update Period of Placement
226 --
227 per_pdp_upd.upd
228 (p_object_version_number => l_object_version_number
229 ,p_effective_date => l_effective_date
230 ,p_person_id => p_person_id
231 ,p_date_start => l_date_start
232 ,p_projected_termination_date => null
233 ,p_termination_reason => p_termination_reason
234 ,p_attribute_category => p_attribute_category
235 ,p_attribute1 => p_attribute1
236 ,p_attribute2 => p_attribute2
237 ,p_attribute3 => p_attribute3
238 ,p_attribute4 => p_attribute4
239 ,p_attribute5 => p_attribute5
240 ,p_attribute6 => p_attribute6
241 ,p_attribute7 => p_attribute7
242 ,p_attribute8 => p_attribute8
243 ,p_attribute9 => p_attribute9
244 ,p_attribute10 => p_attribute10
245 ,p_attribute11 => p_attribute11
246 ,p_attribute12 => p_attribute12
247 ,p_attribute13 => p_attribute13
248 ,p_attribute14 => p_attribute14
249 ,p_attribute15 => p_attribute15
250 ,p_attribute16 => p_attribute16
251 ,p_attribute17 => p_attribute17
252 ,p_attribute18 => p_attribute18
253 ,p_attribute19 => p_attribute19
254 ,p_attribute20 => p_attribute20
255 ,p_attribute21 => p_attribute21
256 ,p_attribute22 => p_attribute22
257 ,p_attribute23 => p_attribute23
258 ,p_attribute24 => p_attribute24
259 ,p_attribute25 => p_attribute25
260 ,p_attribute26 => p_attribute26
261 ,p_attribute27 => p_attribute27
262 ,p_attribute28 => p_attribute28
263 ,p_attribute29 => p_attribute29
264 ,p_attribute30 => p_attribute30
265 ,p_information_category => p_information_category
266 ,p_information1 => p_information1
267 ,p_information2 => p_information2
268 ,p_information3 => p_information3
269 ,p_information4 => p_information4
270 ,p_information5 => p_information5
271 ,p_information6 => p_information6
272 ,p_information7 => p_information7
273 ,p_information8 => p_information8
274 ,p_information9 => p_information9
275 ,p_information10 => p_information10
276 ,p_information11 => p_information11
277 ,p_information12 => p_information12
278 ,p_information13 => p_information13
279 ,p_information14 => p_information14
280 ,p_information15 => p_information15
281 ,p_information16 => p_information16
282 ,p_information17 => p_information17
283 ,p_information18 => p_information18
284 ,p_information19 => p_information19
285 ,p_information20 => p_information20
286 ,p_information21 => p_information21
287 ,p_information22 => p_information22
288 ,p_information23 => p_information23
289 ,p_information24 => p_information24
290 ,p_information25 => p_information25
291 ,p_information26 => p_information26
292 ,p_information27 => p_information27
293 ,p_information28 => p_information28
294 ,p_information29 => p_information29
295 ,p_information30 => p_information30
296 );
297
298 --
299 -- Assign the out parameters
300 --
301 p_object_version_number := l_object_version_number;
302
303 hr_utility.set_location(l_proc, 40);
304
305 --
306 -- Call After Process User Hook
307 --
308 begin
309
310 hr_periods_of_placement_bk1.update_pdp_details_a
311 (p_object_version_number => l_object_version_number
312 ,p_effective_date => l_effective_date
313 ,p_person_id => p_person_id
314 ,p_date_start => l_date_start
315 ,p_projected_termination_date => null
316 ,p_termination_reason => p_termination_reason
317 ,p_attribute_category => p_attribute_category
318 ,p_attribute1 => p_attribute1
319 ,p_attribute2 => p_attribute2
320 ,p_attribute3 => p_attribute3
321 ,p_attribute4 => p_attribute4
322 ,p_attribute5 => p_attribute5
323 ,p_attribute6 => p_attribute6
324 ,p_attribute7 => p_attribute7
325 ,p_attribute8 => p_attribute8
326 ,p_attribute9 => p_attribute9
327 ,p_attribute10 => p_attribute10
328 ,p_attribute11 => p_attribute11
329 ,p_attribute12 => p_attribute12
330 ,p_attribute13 => p_attribute13
331 ,p_attribute14 => p_attribute14
332 ,p_attribute15 => p_attribute15
333 ,p_attribute16 => p_attribute16
334 ,p_attribute17 => p_attribute17
335 ,p_attribute18 => p_attribute18
336 ,p_attribute19 => p_attribute19
337 ,p_attribute20 => p_attribute20
338 ,p_attribute21 => p_attribute21
339 ,p_attribute22 => p_attribute22
340 ,p_attribute23 => p_attribute23
341 ,p_attribute24 => p_attribute24
342 ,p_attribute25 => p_attribute25
343 ,p_attribute26 => p_attribute26
344 ,p_attribute27 => p_attribute27
345 ,p_attribute28 => p_attribute28
346 ,p_attribute29 => p_attribute29
347 ,p_attribute30 => p_attribute30
348 ,p_information_category => p_information_category
349 ,p_information1 => p_information1
350 ,p_information2 => p_information2
351 ,p_information3 => p_information3
352 ,p_information4 => p_information4
353 ,p_information5 => p_information5
354 ,p_information6 => p_information6
355 ,p_information7 => p_information7
356 ,p_information8 => p_information8
357 ,p_information9 => p_information9
358 ,p_information10 => p_information10
359 ,p_information11 => p_information11
360 ,p_information12 => p_information12
361 ,p_information13 => p_information13
362 ,p_information14 => p_information14
363 ,p_information15 => p_information15
364 ,p_information16 => p_information16
365 ,p_information17 => p_information17
366 ,p_information18 => p_information18
367 ,p_information19 => p_information19
368 ,p_information20 => p_information20
369 ,p_information21 => p_information21
370 ,p_information22 => p_information22
371 ,p_information23 => p_information23
372 ,p_information24 => p_information24
373 ,p_information25 => p_information25
374 ,p_information26 => p_information26
375 ,p_information27 => p_information27
376 ,p_information28 => p_information28
377 ,p_information29 => p_information29
378 ,p_information30 => p_information30
379 );
380 exception
381 when hr_api.cannot_find_prog_unit then
382 hr_api.cannot_find_prog_unit_error
383 (p_module_name => 'UPDATE_PDP_DETAILS'
384 ,p_hook_type => 'AP'
385 );
386 end;
387 --
388 -- When in validation only mode raise the Validate_Enabled exception
389 --
390 if p_validate then
391 raise hr_api.validate_enabled;
392 end if;
393
394 --
395 -- Pipe the main IN OUT / OUT parameters for ease of debugging.
396 --
397 hr_utility.trace(' ');
398 hr_utility.trace(' --------------------------------'||
399 '---------------------------------');
400 hr_utility.trace(' IN OUT NOCOPY / OUT NOCOPY PARAMETER '||
401 ' VALUE');
402 hr_utility.trace(' --------------------------------'||
403 '+--------------------------------');
404 hr_utility.trace(' p_object_version_number '||
405 to_char(p_object_version_number));
406 hr_utility.trace(' --------------------------------'||
407 '---------------------------------');
408 hr_utility.trace(' ');
409
410 hr_utility.set_location(' Leaving:'||l_proc, 70);
411
412 exception
413 when hr_api.validate_enabled then
414 --
415 -- As the Validate_Enabled exception has been raised
416 -- we must rollback to the savepoint
417 --
418 rollback to update_pdp_details;
419 --
420 -- Only set output warning arguments
421 -- (Any key or derived arguments must be set to null
422 -- when validation only mode is being used.)
423 --
424 p_object_version_number := null;
425 hr_utility.set_location(l_proc, 80);
426 when others then
427 --
428 -- A validation or unexpected error has occured
429 --
430 rollback to update_pdp_details;
431 --
432 -- set in out parameters and set out parameters
433 --
434 p_object_version_number := l_ovn;
435 hr_utility.set_location(' Leaving:'||l_proc, 90);
436 raise;
437 end update_pdp_details;
438 --
439 --
440 end hr_periods_of_placement_api;