[Home] [Help]
Skip to content
PACKAGE BODY: APPS.HR_PL_PREVIOUS_EMPLOYMENT_API
Source
1 Package body hr_pl_previous_employment_api as
2 /* $Header: pepempli.pkb 120.0 2005/05/31 13:27:48 appldev noship $ */
3
4 -- Package Variables
5 g_package VARCHAR2(33);
6
7 -- ----------------------------------------------------------------------------
8 -- |-------------------------< create_pl_previous_employer>---------------------------|
9 -- ----------------------------------------------------------------------------
10
11 procedure create_pl_previous_employer
12 (
13 p_effective_date IN date
14 ,p_validate IN boolean default false
15 ,p_business_group_id IN number
16 ,p_person_id IN number
17 ,p_party_id IN number default null
18 ,p_start_date IN date default null
19 ,p_end_date IN date default null
20 ,p_period_years IN number default null
21 ,p_period_months IN number default null
22 ,p_period_days IN number default null
23 ,p_employer_name IN varchar2
24 ,p_employer_country IN varchar2 default null
25 ,p_employer_address IN varchar2 default null
26 ,p_employer_type IN varchar2 default null
27 ,p_employer_subtype IN varchar2 default null
28 ,p_description IN varchar2 default null
29 ,p_all_assignments IN varchar2 default 'N'
30 ,p_pem_attribute_category IN varchar2 default null
31 ,p_pem_attribute1 IN varchar2 default null
32 ,p_pem_attribute2 IN varchar2 default null
33 ,p_pem_attribute3 IN varchar2 default null
34 ,p_pem_attribute4 IN varchar2 default null
35 ,p_pem_attribute5 IN varchar2 default null
36 ,p_pem_attribute6 IN varchar2 default null
37 ,p_pem_attribute7 IN varchar2 default null
38 ,p_pem_attribute8 IN varchar2 default null
39 ,p_pem_attribute9 IN varchar2 default null
40 ,p_pem_attribute10 IN varchar2 default null
41 ,p_pem_attribute11 IN varchar2 default null
42 ,p_pem_attribute12 IN varchar2 default null
43 ,p_pem_attribute13 IN varchar2 default null
44 ,p_pem_attribute14 IN varchar2 default null
45 ,p_pem_attribute15 IN varchar2 default null
46 ,p_pem_attribute16 IN varchar2 default null
47 ,p_pem_attribute17 IN varchar2 default null
48 ,p_pem_attribute18 IN varchar2 default null
49 ,p_pem_attribute19 IN varchar2 default null
50 ,p_pem_attribute20 IN varchar2 default null
51 ,p_pem_attribute21 IN varchar2 default null
52 ,p_pem_attribute22 IN varchar2 default null
53 ,p_pem_attribute23 IN varchar2 default null
54 ,p_pem_attribute24 IN varchar2 default null
55 ,p_pem_attribute25 IN varchar2 default null
56 ,p_pem_attribute26 IN varchar2 default null
57 ,p_pem_attribute27 IN varchar2 default null
58 ,p_pem_attribute28 IN varchar2 default null
59 ,p_pem_attribute29 IN varchar2 default null
60 ,p_pem_attribute30 IN varchar2 default null
61 ,p_pem_information_category IN varchar2 default null
62 ,Direction_Number IN varchar2 default null
63 ,Telephone IN varchar2 default null
64 ,Mobile IN varchar2 default null
65 ,Fax IN varchar2 default null
66 ,E_mail IN varchar2 default null
67 ,Contact_Information IN varchar2 default null
68 ,p_pem_information7 IN varchar2 default null
69 ,p_pem_information8 IN varchar2 default null
70 ,p_pem_information9 IN varchar2 default null
71 ,p_pem_information10 IN varchar2 default null
72 ,p_pem_information11 IN varchar2 default null
73 ,p_pem_information12 IN varchar2 default null
74 ,p_pem_information13 IN varchar2 default null
75 ,p_pem_information14 IN varchar2 default null
76 ,p_pem_information15 IN varchar2 default null
77 ,p_pem_information16 IN varchar2 default null
78 ,p_pem_information17 IN varchar2 default null
79 ,p_pem_information18 IN varchar2 default null
80 ,p_pem_information19 IN varchar2 default null
81 ,p_pem_information20 IN varchar2 default null
82 ,p_pem_information21 IN varchar2 default null
83 ,p_pem_information22 IN varchar2 default null
84 ,p_pem_information23 IN varchar2 default null
85 ,p_pem_information24 IN varchar2 default null
86 ,p_pem_information25 IN varchar2 default null
87 ,p_pem_information26 IN varchar2 default null
88 ,p_pem_information27 IN varchar2 default null
89 ,p_pem_information28 IN varchar2 default null
90 ,p_pem_information29 IN varchar2 default null
91 ,p_pem_information30 IN varchar2 default null
92 ,p_previous_employer_id OUT NOCOPY number
93 ,p_object_version_number OUT NOCOPY number
94 ) is
95
96 -- Declare cursors and local variables
97 --
98 l_proc varchar2(72);
99 l_legislation_code varchar2(2);
100 --
101 cursor csr_bg is
102 select legislation_code
103 from per_business_groups pbg
104 where pbg.business_group_id in (select pe.business_group_id
105 from per_all_people_f pe
106 where pe.PERSON_ID = p_person_id);
107
108 l_period_years number;
109 l_period_months number;
110 l_period_days number;
111 --
112 begin
113
114 g_package := 'hr_pl_previous_employment_api.';
115 l_proc := g_package||'create_pl_previous_employer';
116 --
117 -- Validation in addition to Row Handlers
118 --
119 -- Check that the specified business group is valid.
120 --
121 open csr_bg;
122 fetch csr_bg
123 into l_legislation_code;
124 if csr_bg%notfound then
125 close csr_bg;
126 hr_utility.set_message(801, 'HR_7208_API_BUS_GRP_INVALID');
127 hr_utility.raise_error;
128 end if;
129 close csr_bg;
130 --
131 -- Check that the legislation of the specified business group is 'PL'.
132 --
133 if l_legislation_code <> 'PL' then
134 hr_utility.set_message(801, 'HR_7961_PER_BUS_GRP_INVALID');
135 hr_utility.set_message_token('LEG_CODE','PL');
136 hr_utility.raise_error;
137 end if;
138
139 if p_period_years is null and p_period_months is null and p_period_days is null then
140 hr_pl_utility.per_pl_calc_periods(p_start_date
141 ,p_end_date
142 ,l_period_years
143 ,l_period_months
144 ,l_period_days);
145 Else
146 l_period_years:=p_period_years;
147 l_period_months:=p_period_months;
148 l_period_days:=p_period_days;
149 End if;
150
151 hr_utility.set_location('Entering:'|| l_proc, 5);
152
153 --
154 hr_previous_employment_api.create_previous_employer
155 (
156 p_effective_date => p_effective_date
157 ,p_validate => p_validate
158 ,p_business_group_id => p_business_group_id
159 ,p_person_id => p_person_id
160 ,p_party_id => p_party_id
161 ,p_start_date => p_start_date
162 ,p_end_date => p_end_date
163 ,p_period_years => l_period_years
164 ,p_period_months => l_period_months
165 ,p_period_days => l_period_days
166 ,p_employer_name => p_employer_name
167 ,p_employer_country => p_employer_country
168 ,p_employer_address => p_employer_address
169 ,p_employer_type => p_employer_type
170 ,p_employer_subtype => p_employer_subtype
171 ,p_description => p_description
172 ,p_all_assignments => p_all_assignments
173 ,p_pem_attribute_category => p_pem_attribute_category
174 ,p_pem_attribute1 => p_pem_attribute1
175 ,p_pem_attribute2 => p_pem_attribute2
176 ,p_pem_attribute3 => p_pem_attribute3
177 ,p_pem_attribute4 => p_pem_attribute4
178 ,p_pem_attribute5 => p_pem_attribute5
179 ,p_pem_attribute6 => p_pem_attribute6
180 ,p_pem_attribute7 => p_pem_attribute7
181 ,p_pem_attribute8 => p_pem_attribute8
182 ,p_pem_attribute9 => p_pem_attribute9
183 ,p_pem_attribute10 => p_pem_attribute10
184 ,p_pem_attribute11 => p_pem_attribute11
185 ,p_pem_attribute12 => p_pem_attribute12
186 ,p_pem_attribute13 => p_pem_attribute13
187 ,p_pem_attribute14 => p_pem_attribute14
188 ,p_pem_attribute15 => p_pem_attribute15
189 ,p_pem_attribute16 => p_pem_attribute16
190 ,p_pem_attribute17 => p_pem_attribute17
191 ,p_pem_attribute18 => p_pem_attribute18
192 ,p_pem_attribute19 => p_pem_attribute19
193 ,p_pem_attribute20 => p_pem_attribute20
194 ,p_pem_attribute21 => p_pem_attribute21
195 ,p_pem_attribute22 => p_pem_attribute22
196 ,p_pem_attribute23 => p_pem_attribute23
197 ,p_pem_attribute24 => p_pem_attribute24
198 ,p_pem_attribute25 => p_pem_attribute25
199 ,p_pem_attribute26 => p_pem_attribute26
200 ,p_pem_attribute27 => p_pem_attribute27
201 ,p_pem_attribute28 => p_pem_attribute28
202 ,p_pem_attribute29 => p_pem_attribute29
203 ,p_pem_attribute30 => p_pem_attribute30
204 ,p_pem_information_category => 'PL'
205 ,p_pem_information1 => Direction_Number
206 ,p_pem_information2 => Telephone
207 ,p_pem_information3 => Mobile
208 ,p_pem_information4 => Fax
209 ,p_pem_information5 => E_mail
210 ,p_pem_information6 => Contact_Information
211 ,p_pem_information7 => p_pem_information7
212 ,p_pem_information8 => p_pem_information8
213 ,p_pem_information9 => p_pem_information9
214 ,p_pem_information10 => p_pem_information10
215 ,p_pem_information11 => p_pem_information11
216 ,p_pem_information12 => p_pem_information12
217 ,p_pem_information13 => p_pem_information13
218 ,p_pem_information14 => p_pem_information14
219 ,p_pem_information15 => p_pem_information15
220 ,p_pem_information16 => p_pem_information16
221 ,p_pem_information17 => p_pem_information17
222 ,p_pem_information18 => p_pem_information18
223 ,p_pem_information19 => p_pem_information19
224 ,p_pem_information20 => p_pem_information20
225 ,p_pem_information21 => p_pem_information21
226 ,p_pem_information22 => p_pem_information22
227 ,p_pem_information23 => p_pem_information23
228 ,p_pem_information24 => p_pem_information24
229 ,p_pem_information25 => p_pem_information25
230 ,p_pem_information26 => p_pem_information26
231 ,p_pem_information27 => p_pem_information27
232 ,p_pem_information28 => p_pem_information28
233 ,p_pem_information29 => p_pem_information29
234 ,p_pem_information30 => p_pem_information30
235 ,p_previous_employer_id => p_previous_employer_id
236 ,p_object_version_number => p_object_version_number
237 );
238 end create_pl_previous_employer;
239
240
241 -- ----------------------------------------------------------------------------
242 -- |-------------------------< update_pl_previous_employer >---------------------------|
243 -- ----------------------------------------------------------------------------
244
245
246 procedure update_pl_previous_employer
247 ( p_effective_date IN date
248 ,p_validate IN boolean default false
249 ,p_previous_employer_id IN number
250 ,p_start_date IN date default hr_api.g_date
251 ,p_end_date IN date default hr_api.g_date
252 ,p_period_years IN number default hr_api.g_number
253 ,p_period_months IN number default hr_api.g_number
254 ,p_period_days IN number default hr_api.g_number
255 ,p_employer_name IN varchar2 default hr_api.g_varchar2
256 ,p_employer_country IN varchar2 default hr_api.g_varchar2
257 ,p_employer_address IN varchar2 default hr_api.g_varchar2
258 ,p_employer_type IN varchar2 default hr_api.g_varchar2
259 ,p_employer_subtype IN varchar2 default hr_api.g_varchar2
260 ,p_description IN varchar2 default hr_api.g_varchar2
261 ,p_all_assignments IN varchar2 default 'N'
262 ,p_pem_attribute_category IN varchar2 default hr_api.g_varchar2
263 ,p_pem_attribute1 IN varchar2 default hr_api.g_varchar2
264 ,p_pem_attribute2 IN varchar2 default hr_api.g_varchar2
265 ,p_pem_attribute3 IN varchar2 default hr_api.g_varchar2
266 ,p_pem_attribute4 IN varchar2 default hr_api.g_varchar2
267 ,p_pem_attribute5 IN varchar2 default hr_api.g_varchar2
268 ,p_pem_attribute6 IN varchar2 default hr_api.g_varchar2
269 ,p_pem_attribute7 IN varchar2 default hr_api.g_varchar2
270 ,p_pem_attribute8 IN varchar2 default hr_api.g_varchar2
271 ,p_pem_attribute9 IN varchar2 default hr_api.g_varchar2
272 ,p_pem_attribute10 IN varchar2 default hr_api.g_varchar2
273 ,p_pem_attribute11 IN varchar2 default hr_api.g_varchar2
274 ,p_pem_attribute12 IN varchar2 default hr_api.g_varchar2
275 ,p_pem_attribute13 IN varchar2 default hr_api.g_varchar2
276 ,p_pem_attribute14 IN varchar2 default hr_api.g_varchar2
277 ,p_pem_attribute15 IN varchar2 default hr_api.g_varchar2
278 ,p_pem_attribute16 IN varchar2 default hr_api.g_varchar2
279 ,p_pem_attribute17 IN varchar2 default hr_api.g_varchar2
280 ,p_pem_attribute18 IN varchar2 default hr_api.g_varchar2
281 ,p_pem_attribute19 IN varchar2 default hr_api.g_varchar2
282 ,p_pem_attribute20 IN varchar2 default hr_api.g_varchar2
283 ,p_pem_attribute21 IN varchar2 default hr_api.g_varchar2
284 ,p_pem_attribute22 IN varchar2 default hr_api.g_varchar2
285 ,p_pem_attribute23 IN varchar2 default hr_api.g_varchar2
286 ,p_pem_attribute24 IN varchar2 default hr_api.g_varchar2
287 ,p_pem_attribute25 IN varchar2 default hr_api.g_varchar2
288 ,p_pem_attribute26 IN varchar2 default hr_api.g_varchar2
289 ,p_pem_attribute27 IN varchar2 default hr_api.g_varchar2
290 ,p_pem_attribute28 IN varchar2 default hr_api.g_varchar2
291 ,p_pem_attribute29 IN varchar2 default hr_api.g_varchar2
292 ,p_pem_attribute30 IN varchar2 default hr_api.g_varchar2
293 ,p_pem_information_category IN varchar2 default hr_api.g_varchar2
294 ,Direction_Number IN varchar2 default hr_api.g_varchar2
295 ,Telephone IN varchar2 default hr_api.g_varchar2
296 ,Mobile IN varchar2 default hr_api.g_varchar2
297 ,Fax IN varchar2 default hr_api.g_varchar2
298 ,E_mail IN varchar2 default hr_api.g_varchar2
299 ,Contact_Information IN varchar2 default hr_api.g_varchar2
300 ,p_pem_information7 IN varchar2 default hr_api.g_varchar2
301 ,p_pem_information8 IN varchar2 default hr_api.g_varchar2
302 ,p_pem_information9 IN varchar2 default hr_api.g_varchar2
303 ,p_pem_information10 IN varchar2 default hr_api.g_varchar2
304 ,p_pem_information11 IN varchar2 default hr_api.g_varchar2
305 ,p_pem_information12 IN varchar2 default hr_api.g_varchar2
306 ,p_pem_information13 IN varchar2 default hr_api.g_varchar2
307 ,p_pem_information14 IN varchar2 default hr_api.g_varchar2
308 ,p_pem_information15 IN varchar2 default hr_api.g_varchar2
309 ,p_pem_information16 IN varchar2 default hr_api.g_varchar2
310 ,p_pem_information17 IN varchar2 default hr_api.g_varchar2
311 ,p_pem_information18 IN varchar2 default hr_api.g_varchar2
312 ,p_pem_information19 IN varchar2 default hr_api.g_varchar2
313 ,p_pem_information20 IN varchar2 default hr_api.g_varchar2
314 ,p_pem_information21 IN varchar2 default hr_api.g_varchar2
315 ,p_pem_information22 IN varchar2 default hr_api.g_varchar2
316 ,p_pem_information23 IN varchar2 default hr_api.g_varchar2
317 ,p_pem_information24 IN varchar2 default hr_api.g_varchar2
318 ,p_pem_information25 IN varchar2 default hr_api.g_varchar2
319 ,p_pem_information26 IN varchar2 default hr_api.g_varchar2
320 ,p_pem_information27 IN varchar2 default hr_api.g_varchar2
321 ,p_pem_information28 IN varchar2 default hr_api.g_varchar2
322 ,p_pem_information29 IN varchar2 default hr_api.g_varchar2
323 ,p_pem_information30 IN varchar2 default hr_api.g_varchar2
324 ,p_object_version_number IN OUT NOCOPY number
325 ) is
326
327 -- Declare cursors and local variables
328 --
329 l_proc varchar2(72);
330 l_legislation_code varchar2(2);
331 --
332 cursor csr_bg is
333 select legislation_code
334 from per_business_groups pbg
335 where pbg.business_group_id in (select pe.business_group_id
336 from per_previous_employers pe
337 where pe.PREVIOUS_EMPLOYER_ID = p_previous_employer_id
338 );
339
340 l_period_years number;
341 l_period_months number;
342 l_period_days number;
343 --
344 begin
345
346 g_package := 'hr_pl_previous_employment_api.';
347 l_proc := g_package||'update_pl_previous_employer';
348
349 --
350 -- Validation in addition to Row Handlers
351 --
352 -- Check that the specified business group is valid.
353 --
354 open csr_bg;
355 fetch csr_bg
356 into l_legislation_code;
357 if csr_bg%notfound then
358 close csr_bg;
359 hr_utility.set_message(801, 'HR_7208_API_BUS_GRP_INVALID');
360 hr_utility.raise_error;
361 end if;
362 close csr_bg;
363 --
364 -- Check that the legislation of the specified business group is 'PL'.
365 --
366 if l_legislation_code <> 'PL' then
367 hr_utility.set_message(801, 'HR_7961_PER_BUS_GRP_INVALID');
368 hr_utility.set_message_token('LEG_CODE','PL');
369 hr_utility.raise_error;
370 end if;
371
372
373 if p_period_years is null and p_period_months is null and p_period_days is null then
374 hr_pl_utility.per_pl_calc_periods(p_start_date
375 ,p_end_date
376 ,l_period_years
377 ,l_period_months
378 ,l_period_days);
379 Else
380 l_period_years:=p_period_years;
381 l_period_months:=p_period_months;
382 l_period_days:=p_period_days;
383 End if;
384
385 hr_utility.set_location('Entering:'|| l_proc, 5);
386 --
387 hr_previous_employment_api.update_previous_employer
388 (
389 p_effective_date => p_effective_date
390 ,p_validate => p_validate
391 ,p_previous_employer_id => p_previous_employer_id
392 ,p_start_date => p_start_date
393 ,p_end_date => p_end_date
394 ,p_period_years => l_period_years
395 ,p_period_months => l_period_months
396 ,p_period_days => l_period_days
397 ,p_employer_name => p_employer_name
398 ,p_employer_country => p_employer_country
399 ,p_employer_address => p_employer_address
400 ,p_employer_type => p_employer_type
401 ,p_employer_subtype => p_employer_subtype
402 ,p_description => p_description
403 ,p_all_assignments => p_all_assignments
404 ,p_pem_attribute_category => p_pem_attribute_category
405 ,p_pem_attribute1 => p_pem_attribute1
406 ,p_pem_attribute2 => p_pem_attribute2
407 ,p_pem_attribute3 => p_pem_attribute3
408 ,p_pem_attribute4 => p_pem_attribute4
409 ,p_pem_attribute5 => p_pem_attribute5
410 ,p_pem_attribute6 => p_pem_attribute6
411 ,p_pem_attribute7 => p_pem_attribute7
412 ,p_pem_attribute8 => p_pem_attribute8
413 ,p_pem_attribute9 => p_pem_attribute9
414 ,p_pem_attribute10 => p_pem_attribute10
415 ,p_pem_attribute11 => p_pem_attribute11
416 ,p_pem_attribute12 => p_pem_attribute12
417 ,p_pem_attribute13 => p_pem_attribute13
418 ,p_pem_attribute14 => p_pem_attribute14
419 ,p_pem_attribute15 => p_pem_attribute15
420 ,p_pem_attribute16 => p_pem_attribute16
421 ,p_pem_attribute17 => p_pem_attribute17
422 ,p_pem_attribute18 => p_pem_attribute18
423 ,p_pem_attribute19 => p_pem_attribute19
424 ,p_pem_attribute20 => p_pem_attribute20
425 ,p_pem_attribute21 => p_pem_attribute21
426 ,p_pem_attribute22 => p_pem_attribute22
427 ,p_pem_attribute23 => p_pem_attribute23
428 ,p_pem_attribute24 => p_pem_attribute24
429 ,p_pem_attribute25 => p_pem_attribute25
430 ,p_pem_attribute26 => p_pem_attribute26
431 ,p_pem_attribute27 => p_pem_attribute27
432 ,p_pem_attribute28 => p_pem_attribute28
433 ,p_pem_attribute29 => p_pem_attribute29
434 ,p_pem_attribute30 => p_pem_attribute30
435 ,p_pem_information_category => 'PL'
436 ,p_pem_information1 => Direction_Number
437 ,p_pem_information2 => Telephone
438 ,p_pem_information3 => Mobile
439 ,p_pem_information4 => Fax
440 ,p_pem_information5 => E_mail
441 ,p_pem_information6 => Contact_Information
442 ,p_pem_information7 => p_pem_information7
443 ,p_pem_information8 => p_pem_information8
444 ,p_pem_information9 => p_pem_information9
445 ,p_pem_information10 => p_pem_information10
446 ,p_pem_information11 => p_pem_information11
447 ,p_pem_information12 => p_pem_information12
448 ,p_pem_information13 => p_pem_information13
449 ,p_pem_information14 => p_pem_information14
450 ,p_pem_information15 => p_pem_information15
451 ,p_pem_information16 => p_pem_information16
452 ,p_pem_information17 => p_pem_information17
453 ,p_pem_information18 => p_pem_information18
454 ,p_pem_information19 => p_pem_information19
455 ,p_pem_information20 => p_pem_information20
456 ,p_pem_information21 => p_pem_information21
457 ,p_pem_information22 => p_pem_information22
458 ,p_pem_information23 => p_pem_information23
459 ,p_pem_information24 => p_pem_information24
460 ,p_pem_information25 => p_pem_information25
461 ,p_pem_information26 => p_pem_information26
462 ,p_pem_information27 => p_pem_information27
463 ,p_pem_information28 => p_pem_information28
464 ,p_pem_information29 => p_pem_information29
465 ,p_pem_information30 => p_pem_information30
466 ,p_object_version_number => p_object_version_number
467 );
468
469 end update_pl_previous_employer;
470 -- ----------------------------------------------------------------------------
471 -- |-------------------------< create_pl_previous_employer>---------------------------|
472 -- ----------------------------------------------------------------------------
473
474 procedure create_pl_previous_job
475 ( p_effective_date in date
476 ,p_validate in boolean default false
477 ,p_previous_employer_id in number
478 ,p_start_date in date default null
479 ,p_end_date in date default null
480 ,p_period_years in number default null
481 ,p_period_months in number default null
482 ,p_period_days in number default null
483 ,p_job_name in varchar2 default null
484 ,p_employment_category in varchar2 default null
485 ,p_description in varchar2 default null
486 ,p_all_assignments in varchar2 default 'N'
487 ,p_pjo_attribute_category in varchar2 default null
488 ,p_pjo_attribute1 in varchar2 default null
489 ,p_pjo_attribute2 in varchar2 default null
490 ,p_pjo_attribute3 in varchar2 default null
491 ,p_pjo_attribute4 in varchar2 default null
492 ,p_pjo_attribute5 in varchar2 default null
493 ,p_pjo_attribute6 in varchar2 default null
494 ,p_pjo_attribute7 in varchar2 default null
495 ,p_pjo_attribute8 in varchar2 default null
496 ,p_pjo_attribute9 in varchar2 default null
497 ,p_pjo_attribute10 in varchar2 default null
498 ,p_pjo_attribute11 in varchar2 default null
499 ,p_pjo_attribute12 in varchar2 default null
500 ,p_pjo_attribute13 in varchar2 default null
501 ,p_pjo_attribute14 in varchar2 default null
502 ,p_pjo_attribute15 in varchar2 default null
503 ,p_pjo_attribute16 in varchar2 default null
504 ,p_pjo_attribute17 in varchar2 default null
505 ,p_pjo_attribute18 in varchar2 default null
506 ,p_pjo_attribute19 in varchar2 default null
507 ,p_pjo_attribute20 in varchar2 default null
508 ,p_pjo_attribute21 in varchar2 default null
509 ,p_pjo_attribute22 in varchar2 default null
510 ,p_pjo_attribute23 in varchar2 default null
511 ,p_pjo_attribute24 in varchar2 default null
512 ,p_pjo_attribute25 in varchar2 default null
513 ,p_pjo_attribute26 in varchar2 default null
514 ,p_pjo_attribute27 in varchar2 default null
515 ,p_pjo_attribute28 in varchar2 default null
516 ,p_pjo_attribute29 in varchar2 default null
517 ,p_pjo_attribute30 in varchar2 default null
518 ,p_pjo_information_category in varchar2 default null
519 ,Type_Of_Service in varchar2
520 ,p_pjo_information2 in varchar2 default null
521 ,p_pjo_information3 in varchar2 default null
522 ,p_pjo_information4 in varchar2 default null
523 ,p_pjo_information5 in varchar2 default null
524 ,p_pjo_information6 in varchar2 default null
525 ,p_pjo_information7 in varchar2 default null
526 ,p_pjo_information8 in varchar2 default null
527 ,p_pjo_information9 in varchar2 default null
528 ,p_pjo_information10 in varchar2 default null
529 ,p_pjo_information11 in varchar2 default null
530 ,p_pjo_information12 in varchar2 default null
531 ,p_pjo_information13 in varchar2 default null
532 ,p_pjo_information14 in varchar2 default null
533 ,p_pjo_information15 in varchar2 default null
534 ,p_pjo_information16 in varchar2 default null
535 ,p_pjo_information17 in varchar2 default null
536 ,p_pjo_information18 in varchar2 default null
537 ,p_pjo_information19 in varchar2 default null
538 ,p_pjo_information20 in varchar2 default null
539 ,p_pjo_information21 in varchar2 default null
540 ,p_pjo_information22 in varchar2 default null
541 ,p_pjo_information23 in varchar2 default null
542 ,p_pjo_information24 in varchar2 default null
543 ,p_pjo_information25 in varchar2 default null
544 ,p_pjo_information26 in varchar2 default null
545 ,p_pjo_information27 in varchar2 default null
546 ,p_pjo_information28 in varchar2 default null
547 ,p_pjo_information29 in varchar2 default null
548 ,p_pjo_information30 in varchar2 default null
549 ,p_previous_job_id out nocopy number
550 ,p_object_version_number out nocopy number
551 ) is
552
553 -- Declare cursors and local variables
554 --
555 l_proc varchar2(72);
556 l_legislation_code per_business_groups.legislation_code%type;
557 --
558 cursor csr_bg is
559 select legislation_code
560 from per_business_groups pbg
561 where pbg.business_group_id
562 in (select BUSINESS_GROUP_ID from PER_PREVIOUS_EMPLOYERS where PREVIOUS_EMPLOYER_ID =
563 p_previous_employer_id);
564 l_period_years number;
565 l_period_months number;
566 l_period_days number;
567 --
568 begin
569
570 g_package :='hr_pl_previous_employment_api.';
571 l_proc := g_package||'create_pl_previous_job';
572 --
573 -- Validation in addition to Row Handlers
574 --
575 -- Check that the specified business group is valid.
576 --
577 open csr_bg;
578 fetch csr_bg into l_legislation_code;
579 if csr_bg%notfound then
580 close csr_bg;
581 hr_utility.set_message(801, 'HR_7208_API_BUS_GRP_INVALID');
582 hr_utility.raise_error;
583 end if;
584 close csr_bg;
585 --
586 -- Check that the legislation of the specified business group is 'PL'.
587 --
588 if l_legislation_code <> 'PL' then
589 hr_utility.set_message(801, 'HR_7961_PER_BUS_GRP_INVALID');
590 hr_utility.set_message_token('LEG_CODE','PL');
591 hr_utility.raise_error;
592 end if;
593
594 if p_period_years is null and p_period_months is null and p_period_days is null then
595 hr_pl_utility.per_pl_calc_periods(p_start_date
596 ,p_end_date
597 ,l_period_years
598 ,l_period_months
599 ,l_period_days);
600 Else
601 l_period_years:=p_period_years;
602 l_period_months:=p_period_months;
603 l_period_days:=p_period_days;
604 End if;
605
606 hr_utility.set_location('Entering:'|| l_proc, 5);
607 --
608 hr_previous_employment_api.create_previous_job
609 (p_effective_date => p_effective_date
610 ,p_validate => p_validate
611 ,p_previous_employer_id =>p_previous_employer_id
612 ,p_start_date =>p_start_date
613 ,p_end_date =>p_end_date
614 ,p_period_years =>l_period_years
615 ,p_period_months =>l_period_months
616 ,p_period_days =>l_period_days
617 ,p_job_name =>p_job_name
618 ,p_employment_category =>p_employment_category
619 ,p_description =>p_description
620 ,p_all_assignments =>p_all_assignments
621 ,p_pjo_attribute_category =>p_pjo_attribute_category
622 ,p_pjo_attribute1 =>p_pjo_attribute1
623 ,p_pjo_attribute2 =>p_pjo_attribute2
624 ,p_pjo_attribute3 =>p_pjo_attribute3
625 ,p_pjo_attribute4 =>p_pjo_attribute4
626 ,p_pjo_attribute5 =>p_pjo_attribute5
627 ,p_pjo_attribute6 =>p_pjo_attribute6
628 ,p_pjo_attribute7 =>p_pjo_attribute7
629 ,p_pjo_attribute8 =>p_pjo_attribute8
630 ,p_pjo_attribute9 =>p_pjo_attribute9
631 ,p_pjo_attribute10 =>p_pjo_attribute10
632 ,p_pjo_attribute11 =>p_pjo_attribute11
633 ,p_pjo_attribute12 =>p_pjo_attribute12
634 ,p_pjo_attribute13 =>p_pjo_attribute13
635 ,p_pjo_attribute14 =>p_pjo_attribute14
636 ,p_pjo_attribute15 =>p_pjo_attribute15
637 ,p_pjo_attribute16 =>p_pjo_attribute16
638 ,p_pjo_attribute17 =>p_pjo_attribute17
639 ,p_pjo_attribute18 =>p_pjo_attribute18
640 ,p_pjo_attribute19 =>p_pjo_attribute19
641 ,p_pjo_attribute20 =>p_pjo_attribute20
642 ,p_pjo_attribute21 =>p_pjo_attribute21
643 ,p_pjo_attribute22 =>p_pjo_attribute22
644 ,p_pjo_attribute23 =>p_pjo_attribute23
645 ,p_pjo_attribute24 =>p_pjo_attribute24
646 ,p_pjo_attribute25 =>p_pjo_attribute25
647 ,p_pjo_attribute26 =>p_pjo_attribute26
648 ,p_pjo_attribute27 =>p_pjo_attribute27
649 ,p_pjo_attribute28 =>p_pjo_attribute28
650 ,p_pjo_attribute29 =>p_pjo_attribute29
651 ,p_pjo_attribute30 =>p_pjo_attribute30
652 ,p_pjo_information_category =>'PL'
653 ,p_pjo_information1 =>Type_Of_Service
654 ,p_pjo_information2 =>p_pjo_information2
655 ,p_pjo_information3 =>p_pjo_information3
656 ,p_pjo_information4 =>p_pjo_information4
657 ,p_pjo_information5 =>p_pjo_information5
658 ,p_pjo_information6 =>p_pjo_information6
659 ,p_pjo_information7 =>p_pjo_information7
660 ,p_pjo_information8 =>p_pjo_information8
661 ,p_pjo_information9 =>p_pjo_information9
662 ,p_pjo_information10 =>p_pjo_information10
663 ,p_pjo_information11 =>p_pjo_information11
664 ,p_pjo_information12 =>p_pjo_information12
665 ,p_pjo_information13 =>p_pjo_information13
666 ,p_pjo_information14 =>p_pjo_information14
667 ,p_pjo_information15 =>p_pjo_information15
668 ,p_pjo_information16 =>p_pjo_information16
669 ,p_pjo_information17 =>p_pjo_information17
670 ,p_pjo_information18 =>p_pjo_information18
671 ,p_pjo_information19 =>p_pjo_information19
672 ,p_pjo_information20 =>p_pjo_information20
673 ,p_pjo_information21 =>p_pjo_information21
674 ,p_pjo_information22 =>p_pjo_information22
675 ,p_pjo_information23 =>p_pjo_information23
676 ,p_pjo_information24 =>p_pjo_information24
677 ,p_pjo_information25 =>p_pjo_information25
678 ,p_pjo_information26 =>p_pjo_information26
679 ,p_pjo_information27 =>p_pjo_information27
680 ,p_pjo_information28 =>p_pjo_information28
681 ,p_pjo_information29 =>p_pjo_information29
682 ,p_pjo_information30 =>p_pjo_information30
683 ,p_previous_job_id =>p_previous_job_id
684 ,p_object_version_number =>p_object_version_number
685 );
686 end create_pl_previous_job;
687
688
689 -- ----------------------------------------------------------------------------
690 -- |-------------------------< update_pl_previous_job >---------------------------|
691 -- ----------------------------------------------------------------------------
692
693
694 procedure update_pl_previous_job
695 ( p_effective_date in date
696 ,p_validate in boolean default false
697 ,p_previous_job_id in number
698 ,p_start_date in date default hr_api.g_date
699 ,p_end_date in date default hr_api.g_date
700 ,p_period_years in number default hr_api.g_number
701 ,p_period_months in number default hr_api.g_number
702 ,p_period_days in number default hr_api.g_number
703 ,p_job_name in varchar2 default hr_api.g_varchar2
704 ,p_employment_category in varchar2 default hr_api.g_varchar2
705 ,p_description in varchar2 default hr_api.g_varchar2
706 ,p_all_assignments in varchar2 default 'N'
707 ,p_pjo_attribute_category in varchar2 default hr_api.g_varchar2
708 ,p_pjo_attribute1 in varchar2 default hr_api.g_varchar2
709 ,p_pjo_attribute2 in varchar2 default hr_api.g_varchar2
710 ,p_pjo_attribute3 in varchar2 default hr_api.g_varchar2
711 ,p_pjo_attribute4 in varchar2 default hr_api.g_varchar2
712 ,p_pjo_attribute5 in varchar2 default hr_api.g_varchar2
713 ,p_pjo_attribute6 in varchar2 default hr_api.g_varchar2
714 ,p_pjo_attribute7 in varchar2 default hr_api.g_varchar2
715 ,p_pjo_attribute8 in varchar2 default hr_api.g_varchar2
716 ,p_pjo_attribute9 in varchar2 default hr_api.g_varchar2
717 ,p_pjo_attribute10 in varchar2 default hr_api.g_varchar2
718 ,p_pjo_attribute11 in varchar2 default hr_api.g_varchar2
719 ,p_pjo_attribute12 in varchar2 default hr_api.g_varchar2
720 ,p_pjo_attribute13 in varchar2 default hr_api.g_varchar2
721 ,p_pjo_attribute14 in varchar2 default hr_api.g_varchar2
722 ,p_pjo_attribute15 in varchar2 default hr_api.g_varchar2
723 ,p_pjo_attribute16 in varchar2 default hr_api.g_varchar2
724 ,p_pjo_attribute17 in varchar2 default hr_api.g_varchar2
725 ,p_pjo_attribute18 in varchar2 default hr_api.g_varchar2
726 ,p_pjo_attribute19 in varchar2 default hr_api.g_varchar2
727 ,p_pjo_attribute20 in varchar2 default hr_api.g_varchar2
728 ,p_pjo_attribute21 in varchar2 default hr_api.g_varchar2
729 ,p_pjo_attribute22 in varchar2 default hr_api.g_varchar2
730 ,p_pjo_attribute23 in varchar2 default hr_api.g_varchar2
731 ,p_pjo_attribute24 in varchar2 default hr_api.g_varchar2
732 ,p_pjo_attribute25 in varchar2 default hr_api.g_varchar2
733 ,p_pjo_attribute26 in varchar2 default hr_api.g_varchar2
734 ,p_pjo_attribute27 in varchar2 default hr_api.g_varchar2
735 ,p_pjo_attribute28 in varchar2 default hr_api.g_varchar2
736 ,p_pjo_attribute29 in varchar2 default hr_api.g_varchar2
737 ,p_pjo_attribute30 in varchar2 default hr_api.g_varchar2
738 ,p_pjo_information_category in varchar2 default hr_api.g_varchar2
739 ,Type_Of_Service in varchar2 default hr_api.g_varchar2
740 ,p_pjo_information2 in varchar2 default hr_api.g_varchar2
741 ,p_pjo_information3 in varchar2 default hr_api.g_varchar2
742 ,p_pjo_information4 in varchar2 default hr_api.g_varchar2
743 ,p_pjo_information5 in varchar2 default hr_api.g_varchar2
744 ,p_pjo_information6 in varchar2 default hr_api.g_varchar2
745 ,p_pjo_information7 in varchar2 default hr_api.g_varchar2
746 ,p_pjo_information8 in varchar2 default hr_api.g_varchar2
747 ,p_pjo_information9 in varchar2 default hr_api.g_varchar2
748 ,p_pjo_information10 in varchar2 default hr_api.g_varchar2
749 ,p_pjo_information11 in varchar2 default hr_api.g_varchar2
750 ,p_pjo_information12 in varchar2 default hr_api.g_varchar2
751 ,p_pjo_information13 in varchar2 default hr_api.g_varchar2
752 ,p_pjo_information14 in varchar2 default hr_api.g_varchar2
753 ,p_pjo_information15 in varchar2 default hr_api.g_varchar2
754 ,p_pjo_information16 in varchar2 default hr_api.g_varchar2
755 ,p_pjo_information17 in varchar2 default hr_api.g_varchar2
756 ,p_pjo_information18 in varchar2 default hr_api.g_varchar2
757 ,p_pjo_information19 in varchar2 default hr_api.g_varchar2
758 ,p_pjo_information20 in varchar2 default hr_api.g_varchar2
759 ,p_pjo_information21 in varchar2 default hr_api.g_varchar2
760 ,p_pjo_information22 in varchar2 default hr_api.g_varchar2
761 ,p_pjo_information23 in varchar2 default hr_api.g_varchar2
762 ,p_pjo_information24 in varchar2 default hr_api.g_varchar2
763 ,p_pjo_information25 in varchar2 default hr_api.g_varchar2
764 ,p_pjo_information26 in varchar2 default hr_api.g_varchar2
765 ,p_pjo_information27 in varchar2 default hr_api.g_varchar2
766 ,p_pjo_information28 in varchar2 default hr_api.g_varchar2
767 ,p_pjo_information29 in varchar2 default hr_api.g_varchar2
768 ,p_pjo_information30 in varchar2 default hr_api.g_varchar2
769 ,p_object_version_number in out nocopy number
770 ) is
771
772 -- Declare cursors and local variables
773 --
774 l_proc varchar2(72);
775 l_legislation_code varchar2(2);
776 --
777 cursor csr_bg is
778 select legislation_code
779 from per_business_groups pbg
780 where pbg.business_group_id in (select BUSINESS_GROUP_ID from PER_PREVIOUS_JOBS_V
781 pjb,PER_PREVIOUS_EMPLOYERS_V pem
782 where pjb.PREVIOUS_EMPLOYER_ID=pem.PREVIOUS_EMPLOYER_ID
783 and pjb.PREVIOUS_JOB_ID = p_previous_job_id);
784
785 l_period_years number;
786 l_period_months number;
787 l_period_days number;
788 --
789 begin
790
791 g_package := 'hr_pl_previous_employment_api.';
792 l_proc := g_package||'update_pl_previous_job';
793
794 --
795 -- Validation in addition to Row Handlers
796 --
797 -- Check that the specified business group is valid.
798 --
799 open csr_bg;
800
801 fetch csr_bg into l_legislation_code;
802
803 if csr_bg%notfound then
804 close csr_bg;
805 hr_utility.set_message(801, 'HR_7208_API_BUS_GRP_INVALID');
806 hr_utility.raise_error;
807 end if;
808 close csr_bg;
809 --
810 -- Check that the legislation of the specified business group is 'PL'.
811 --
812 if l_legislation_code <> 'PL' then
813 hr_utility.set_message(801, 'HR_7961_PER_BUS_GRP_INVALID');
814 hr_utility.set_message_token('LEG_CODE','PL');
815 hr_utility.raise_error;
816 end if;
817
818 if p_period_years is null and p_period_months is null and p_period_days is null then
819 hr_pl_utility.per_pl_calc_periods(p_start_date
820 ,p_end_date
821 ,l_period_years
822 ,l_period_months
823 ,l_period_days);
824 Else
825 l_period_years:=p_period_years;
826 l_period_months:=p_period_months;
827 l_period_days:=p_period_days;
828 End if;
829
830 hr_utility.set_location('Entering:'|| l_proc, 5);
831 --
832 hr_previous_employment_api.update_previous_job
833 (p_effective_date =>p_effective_date
834 ,p_validate =>p_validate
835 ,p_previous_job_id =>p_previous_job_id
836 ,p_start_date =>p_start_date
837 ,p_end_date =>p_end_date
838 ,p_period_years =>l_period_years
839 ,p_period_months =>l_period_months
840 ,p_period_days =>l_period_days
841 ,p_job_name =>p_job_name
842 ,p_employment_category =>p_employment_category
843 ,p_description =>p_description
844 ,p_all_assignments =>p_all_assignments
845 ,p_pjo_attribute_category=>p_pjo_attribute_category
846 ,p_pjo_attribute1 =>p_pjo_attribute1
847 ,p_pjo_attribute2 =>p_pjo_attribute2
848 ,p_pjo_attribute3 =>p_pjo_attribute3
849 ,p_pjo_attribute4 =>p_pjo_attribute4
850 ,p_pjo_attribute5 =>p_pjo_attribute5
851 ,p_pjo_attribute6 =>p_pjo_attribute6
852 ,p_pjo_attribute7 =>p_pjo_attribute7
853 ,p_pjo_attribute8 =>p_pjo_attribute8
854 ,p_pjo_attribute9 =>p_pjo_attribute9
855 ,p_pjo_attribute10 =>p_pjo_attribute10
856 ,p_pjo_attribute11 =>p_pjo_attribute11
857 ,p_pjo_attribute12 =>p_pjo_attribute12
858 ,p_pjo_attribute13 =>p_pjo_attribute13
859 ,p_pjo_attribute14 =>p_pjo_attribute14
860 ,p_pjo_attribute15 =>p_pjo_attribute15
861 ,p_pjo_attribute16 =>p_pjo_attribute16
862 ,p_pjo_attribute17 =>p_pjo_attribute17
863 ,p_pjo_attribute18 =>p_pjo_attribute18
864 ,p_pjo_attribute19 =>p_pjo_attribute19
865 ,p_pjo_attribute20 =>p_pjo_attribute20
866 ,p_pjo_attribute21 =>p_pjo_attribute21
867 ,p_pjo_attribute22 =>p_pjo_attribute22
868 ,p_pjo_attribute23 =>p_pjo_attribute23
869 ,p_pjo_attribute24 =>p_pjo_attribute24
870 ,p_pjo_attribute25 =>p_pjo_attribute25
871 ,p_pjo_attribute26 =>p_pjo_attribute26
872 ,p_pjo_attribute27 =>p_pjo_attribute27
873 ,p_pjo_attribute28 =>p_pjo_attribute28
874 ,p_pjo_attribute29 =>p_pjo_attribute29
875 ,p_pjo_attribute30 =>p_pjo_attribute30
876 ,p_pjo_information_category =>'PL'
877 ,p_pjo_information1 =>Type_Of_Service
878 ,p_pjo_information2 =>p_pjo_information2
879 ,p_pjo_information3 =>p_pjo_information3
880 ,p_pjo_information4 =>p_pjo_information4
881 ,p_pjo_information5 =>p_pjo_information5
882 ,p_pjo_information6 =>p_pjo_information6
883 ,p_pjo_information7 =>p_pjo_information7
884 ,p_pjo_information8 =>p_pjo_information8
885 ,p_pjo_information9 =>p_pjo_information9
886 ,p_pjo_information10 =>p_pjo_information10
887 ,p_pjo_information11 =>p_pjo_information11
888 ,p_pjo_information12 =>p_pjo_information12
889 ,p_pjo_information13 =>p_pjo_information13
890 ,p_pjo_information14 =>p_pjo_information14
891 ,p_pjo_information15 =>p_pjo_information15
892 ,p_pjo_information16 =>p_pjo_information16
893 ,p_pjo_information17 =>p_pjo_information17
894 ,p_pjo_information18 =>p_pjo_information18
895 ,p_pjo_information19 =>p_pjo_information19
896 ,p_pjo_information20 =>p_pjo_information20
897 ,p_pjo_information21 =>p_pjo_information21
898 ,p_pjo_information22 =>p_pjo_information22
899 ,p_pjo_information23 =>p_pjo_information23
900 ,p_pjo_information24 =>p_pjo_information24
901 ,p_pjo_information25 =>p_pjo_information25
902 ,p_pjo_information26 =>p_pjo_information26
903 ,p_pjo_information27 =>p_pjo_information27
904 ,p_pjo_information28 =>p_pjo_information28
905 ,p_pjo_information29 =>p_pjo_information29
906 ,p_pjo_information30 =>p_pjo_information30
907 ,p_object_version_number =>p_object_version_number
908 );
909
910 end update_pl_previous_job;
911
912 End hr_pl_previous_employment_api;