[Home] [Help]
PACKAGE BODY: APPS.HR_SE_ASSIGNMENT_API
Source
1 PACKAGE BODY hr_se_assignment_api AS
2 /* $Header: peasgsei.pkb 120.0 2005/05/31 05:46:49 appldev noship $ */
3
4 g_package VARCHAR2(33) := 'hr_se_assignment_api.';
5 --
6 -- ----------------------------------------------------------------------------
7 -- |---------------------< create_se_secondary_emp_asg >-----------------------|
8 -- ----------------------------------------------------------------------------
9 --
10
11 PROCEDURE create_se_secondary_emp_asg
12 (p_validate IN BOOLEAN DEFAULT FALSE
13 ,p_effective_date IN DATE
14 ,p_person_id IN NUMBER
15 ,p_organization_id IN NUMBER
16 ,p_grade_id IN NUMBER DEFAULT NULL
17 ,p_position_id IN NUMBER DEFAULT NULL
18 ,p_job_id IN NUMBER DEFAULT NULL
19 ,p_assignment_status_type_id IN NUMBER DEFAULT NULL
20 ,p_payroll_id IN NUMBER DEFAULT NULL
21 ,p_location_id IN NUMBER DEFAULT NULL
22 ,p_supervisor_id IN NUMBER DEFAULT NULL
23 ,p_special_ceiling_step_id IN NUMBER DEFAULT NULL
24 ,p_pay_basis_id IN NUMBER DEFAULT NULL
25 ,p_assignment_number IN OUT NOCOPY VARCHAR2
26 ,p_change_reason IN VARCHAR2 DEFAULT NULL
27 ,p_comments IN VARCHAR2 DEFAULT NULL
28 ,p_date_probation_end IN DATE DEFAULT NULL
29 ,p_default_code_comb_id IN NUMBER DEFAULT NULL
30 ,p_employment_category IN VARCHAR2 DEFAULT NULL
31 ,p_frequency IN VARCHAR2 DEFAULT NULL
32 ,p_internal_address_line IN VARCHAR2 DEFAULT NULL
33 ,p_manager_flag IN VARCHAR2 DEFAULT NULL
34 ,p_normal_hours IN NUMBER DEFAULT NULL
35 ,p_perf_review_period IN NUMBER DEFAULT NULL
36 ,p_perf_review_period_frequency IN VARCHAR2 DEFAULT NULL
37 ,p_probation_period IN NUMBER DEFAULT NULL
38 ,p_probation_unit IN VARCHAR2 DEFAULT NULL
39 ,p_sal_review_period IN NUMBER DEFAULT NULL
40 ,p_sal_review_period_frequency IN VARCHAR2 DEFAULT NULL
41 ,p_set_of_books_id IN NUMBER DEFAULT NULL
42 ,p_source_type IN VARCHAR2 DEFAULT NULL
43 ,p_time_normal_finish IN VARCHAR2 DEFAULT NULL
44 ,p_time_normal_start IN VARCHAR2 DEFAULT NULL
45 ,p_bargaining_unit_code in varchar2 default null
46 ,p_labour_union_member_flag in varchar2 default 'N'
47 ,p_hourly_salaried_code in varchar2 default null
48 ,p_ass_attribute_category IN VARCHAR2 DEFAULT NULL
49 ,p_ass_attribute1 IN VARCHAR2 DEFAULT NULL
50 ,p_ass_attribute2 IN VARCHAR2 DEFAULT NULL
51 ,p_ass_attribute3 IN VARCHAR2 DEFAULT NULL
52 ,p_ass_attribute4 IN VARCHAR2 DEFAULT NULL
53 ,p_ass_attribute5 IN VARCHAR2 DEFAULT NULL
54 ,p_ass_attribute6 IN VARCHAR2 DEFAULT NULL
55 ,p_ass_attribute7 IN VARCHAR2 DEFAULT NULL
56 ,p_ass_attribute8 IN VARCHAR2 DEFAULT NULL
57 ,p_ass_attribute9 IN VARCHAR2 DEFAULT NULL
58 ,p_ass_attribute10 IN VARCHAR2 DEFAULT NULL
59 ,p_ass_attribute11 IN VARCHAR2 DEFAULT NULL
60 ,p_ass_attribute12 IN VARCHAR2 DEFAULT NULL
61 ,p_ass_attribute13 IN VARCHAR2 DEFAULT NULL
62 ,p_ass_attribute14 IN VARCHAR2 DEFAULT NULL
63 ,p_ass_attribute15 IN VARCHAR2 DEFAULT NULL
64 ,p_ass_attribute16 IN VARCHAR2 DEFAULT NULL
65 ,p_ass_attribute17 IN VARCHAR2 DEFAULT NULL
66 ,p_ass_attribute18 IN VARCHAR2 DEFAULT NULL
67 ,p_ass_attribute19 IN VARCHAR2 DEFAULT NULL
68 ,p_ass_attribute20 IN VARCHAR2 DEFAULT NULL
69 ,p_ass_attribute21 IN VARCHAR2 DEFAULT NULL
70 ,p_ass_attribute22 IN VARCHAR2 DEFAULT NULL
71 ,p_ass_attribute23 IN VARCHAR2 DEFAULT NULL
72 ,p_ass_attribute24 IN VARCHAR2 DEFAULT NULL
73 ,p_ass_attribute25 IN VARCHAR2 DEFAULT NULL
74 ,p_ass_attribute26 IN VARCHAR2 DEFAULT NULL
75 ,p_ass_attribute27 IN VARCHAR2 DEFAULT NULL
76 ,p_ass_attribute28 IN VARCHAR2 DEFAULT NULL
77 ,p_ass_attribute29 IN VARCHAR2 DEFAULT NULL
78 ,p_ass_attribute30 IN VARCHAR2 DEFAULT NULL
79 ,p_title IN VARCHAR2 DEFAULT NULL
80 ,p_local_unit IN VARCHAR2 DEFAULT NULL
81 ,p_ssyk_skills_code IN VARCHAR2 DEFAULT NULL
82 ,p_work_title IN VARCHAR2 DEFAULT NULL
83 ,p_notification_date IN VARCHAR2 DEFAULT NULL
84 ,p_asg_termination_date IN VARCHAR2 DEFAULT NULL
85 ,p_termination_reason IN VARCHAR2 DEFAULT NULL
86 ,p_pgp_segment1 IN VARCHAR2 DEFAULT NULL
87 ,p_pgp_segment2 IN VARCHAR2 DEFAULT NULL
88 ,p_pgp_segment3 IN VARCHAR2 DEFAULT NULL
89 ,p_pgp_segment4 IN VARCHAR2 DEFAULT NULL
90 ,p_pgp_segment5 IN VARCHAR2 DEFAULT NULL
91 ,p_pgp_segment6 IN VARCHAR2 DEFAULT NULL
92 ,p_pgp_segment7 IN VARCHAR2 DEFAULT NULL
93 ,p_pgp_segment8 IN VARCHAR2 DEFAULT NULL
94 ,p_pgp_segment9 IN VARCHAR2 DEFAULT NULL
95 ,p_pgp_segment10 IN VARCHAR2 DEFAULT NULL
96 ,p_pgp_segment11 IN VARCHAR2 DEFAULT NULL
97 ,p_pgp_segment12 IN VARCHAR2 DEFAULT NULL
98 ,p_pgp_segment13 IN VARCHAR2 DEFAULT NULL
99 ,p_pgp_segment14 IN VARCHAR2 DEFAULT NULL
100 ,p_pgp_segment15 IN VARCHAR2 DEFAULT NULL
101 ,p_pgp_segment16 IN VARCHAR2 DEFAULT NULL
102 ,p_pgp_segment17 IN VARCHAR2 DEFAULT NULL
103 ,p_pgp_segment18 IN VARCHAR2 DEFAULT NULL
104 ,p_pgp_segment19 IN VARCHAR2 DEFAULT NULL
105 ,p_pgp_segment20 IN VARCHAR2 DEFAULT NULL
106 ,p_pgp_segment21 IN VARCHAR2 DEFAULT NULL
107 ,p_pgp_segment22 IN VARCHAR2 DEFAULT NULL
108 ,p_pgp_segment23 IN VARCHAR2 DEFAULT NULL
109 ,p_pgp_segment24 IN VARCHAR2 DEFAULT NULL
110 ,p_pgp_segment25 IN VARCHAR2 DEFAULT NULL
111 ,p_pgp_segment26 IN VARCHAR2 DEFAULT NULL
112 ,p_pgp_segment27 IN VARCHAR2 DEFAULT NULL
113 ,p_pgp_segment28 IN VARCHAR2 DEFAULT NULL
114 ,p_pgp_segment29 IN VARCHAR2 DEFAULT NULL
115 ,p_pgp_segment30 IN VARCHAR2 DEFAULT NULL
116 ,p_pgp_concat_segments IN VARCHAR2 DEFAULT NULL
117 ,p_assignment_id OUT NOCOPY NUMBER
118 ,p_soft_coding_keyflex_id OUT NOCOPY NUMBER
119 ,p_people_group_id OUT NOCOPY NUMBER
120 ,p_object_version_number OUT NOCOPY NUMBER
121 ,p_effective_start_date OUT NOCOPY DATE
122 ,p_effective_end_date OUT NOCOPY DATE
123 ,p_assignment_sequence OUT NOCOPY NUMBER
124 ,p_comment_id OUT NOCOPY NUMBER
125 ,p_concatenated_segments OUT NOCOPY VARCHAR2
126 ,p_group_name OUT NOCOPY VARCHAR2
127 ,p_other_manager_warning OUT NOCOPY BOOLEAN
128 ) is
129
130 -- Declare cursors AND local variables
131 --
132 -- Declare variables
133 --
134
135 l_assignment_number per_assignments_f.assignment_number%TYPE;
136 l_effective_date DATE;
137 --
138 l_business_group_id per_business_groups.business_group_id%TYPE;
139 l_legislation_code per_business_groups.legislation_code%TYPE;
140 l_proc VARCHAR2(72) := g_package||'create_se_secondary_emp_asg';
141 v_field VARCHAR2(20);
142 --
143 -- Declare cursors
144 --
145 CURSOR csr_legislation IS
146 SELECT NULL
147 FROM per_assignments_f paf,
148 per_business_groups pbg
149 WHERE paf.person_id = p_person_id
150 AND l_effective_date BETWEEN paf.effective_start_date AND paf.effective_end_date
151 AND pbg.business_group_id = paf.business_group_id
152 AND pbg.legislation_code = 'SE';
153 --
154 --
155 BEGIN
156 hr_utility.set_location('Entering:'|| l_proc, 10);
157 --
158 -- Initialise local variable
159 --
160 l_effective_date := trunc(p_effective_date);
161 --
162 -- Validation IN addition to Table Handlers
163 --
164 -- Ensure that the employee IS within a SE business group
165 --
166 OPEN csr_legislation;
167 FETCH csr_legislation
168 INTO l_legislation_code;
169 IF csr_legislation%notfound THEN
170 CLOSE csr_legislation;
171 hr_utility.set_message(801, 'HR_7961_PER_BUS_GRP_INVALID');
172 hr_utility.set_message_token('LEG_CODE', 'SE');
173 hr_utility.raise_error;
174 END IF;
175 CLOSE csr_legislation;
176 --
177 --
178 -- Call create_secondary_emp_asg
179 --
180
181 hr_assignment_api.create_secondary_emp_asg
182 (p_validate => p_validate
183 ,p_effective_date => l_effective_date
184 ,p_person_id => p_person_id
185 ,p_organization_id => p_organization_id
186 ,p_grade_id => p_grade_id
187 ,p_position_id => p_position_id
188 ,p_job_id => p_job_id
189 ,p_assignment_status_type_id => p_assignment_status_type_id
190 ,p_payroll_id => p_payroll_id
191 ,p_location_id => p_location_id
192 ,p_supervisor_id => p_supervisor_id
193 ,p_special_ceiling_step_id => p_special_ceiling_step_id
194 ,p_pay_basis_id => p_pay_basis_id
195 ,p_assignment_number => l_assignment_number
196 ,p_change_reason => p_change_reason
197 ,p_comments => p_comments
198 ,p_date_probation_end => trunc(p_date_probation_end)
199 ,p_default_code_comb_id => p_default_code_comb_id
200 ,p_employment_category => p_employment_category
201 ,p_frequency => p_frequency
202 ,p_internal_address_line => p_internal_address_line
203 ,p_manager_flag => p_manager_flag
204 ,p_normal_hours => p_normal_hours
205 ,p_perf_review_period => p_perf_review_period
206 ,p_perf_review_period_frequency => p_perf_review_period_frequency
207 ,p_probation_period => p_probation_period
208 ,p_probation_unit => p_probation_unit
209 ,p_sal_review_period => p_sal_review_period
210 ,p_sal_review_period_frequency => p_sal_review_period_frequency
211 ,p_set_of_books_id => p_set_of_books_id
212 ,p_source_type => p_source_type
213 ,p_time_normal_finish => p_time_normal_finish
214 ,p_time_normal_start => p_time_normal_start
215 ,p_bargaining_unit_code => p_bargaining_unit_code
216 ,p_labour_union_member_flag => p_labour_union_member_flag
217 ,p_hourly_salaried_code => p_hourly_salaried_code
218 ,p_ass_attribute_category => p_ass_attribute_category
219 ,p_ass_attribute1 => p_ass_attribute1
220 ,p_ass_attribute2 => p_ass_attribute2
221 ,p_ass_attribute3 => p_ass_attribute3
222 ,p_ass_attribute4 => p_ass_attribute4
223 ,p_ass_attribute5 => p_ass_attribute5
224 ,p_ass_attribute6 => p_ass_attribute6
225 ,p_ass_attribute7 => p_ass_attribute7
226 ,p_ass_attribute8 => p_ass_attribute8
227 ,p_ass_attribute9 => p_ass_attribute9
228 ,p_ass_attribute10 => p_ass_attribute10
229 ,p_ass_attribute11 => p_ass_attribute11
230 ,p_ass_attribute12 => p_ass_attribute12
231 ,p_ass_attribute13 => p_ass_attribute13
232 ,p_ass_attribute14 => p_ass_attribute14
233 ,p_ass_attribute15 => p_ass_attribute15
234 ,p_ass_attribute16 => p_ass_attribute16
235 ,p_ass_attribute17 => p_ass_attribute17
236 ,p_ass_attribute18 => p_ass_attribute18
237 ,p_ass_attribute19 => p_ass_attribute19
238 ,p_ass_attribute20 => p_ass_attribute20
239 ,p_ass_attribute21 => p_ass_attribute21
240 ,p_ass_attribute22 => p_ass_attribute22
241 ,p_ass_attribute23 => p_ass_attribute23
242 ,p_ass_attribute24 => p_ass_attribute24
243 ,p_ass_attribute25 => p_ass_attribute25
244 ,p_ass_attribute26 => p_ass_attribute26
245 ,p_ass_attribute27 => p_ass_attribute27
246 ,p_ass_attribute28 => p_ass_attribute28
247 ,p_ass_attribute29 => p_ass_attribute29
248 ,p_ass_attribute30 => p_ass_attribute30
249 ,p_title => p_title
250 ,p_scl_segment2 => p_local_unit
251 ,p_scl_segment3 => p_ssyk_skills_code
252 ,p_scl_segment4 => p_work_title
253 ,p_scl_segment5 => p_notification_date
254 ,p_scl_segment6 => p_asg_termination_date
255 ,p_scl_segment7 => p_termination_reason
256 ,p_pgp_segment1 => p_pgp_segment1
257 ,p_pgp_segment2 => p_pgp_segment2
258 ,p_pgp_segment3 => p_pgp_segment3
259 ,p_pgp_segment4 => p_pgp_segment4
263 ,p_pgp_segment8 => p_pgp_segment8
260 ,p_pgp_segment5 => p_pgp_segment5
261 ,p_pgp_segment6 => p_pgp_segment6
262 ,p_pgp_segment7 => p_pgp_segment7
264 ,p_pgp_segment9 => p_pgp_segment9
265 ,p_pgp_segment10 => p_pgp_segment10
266 ,p_pgp_segment11 => p_pgp_segment11
267 ,p_pgp_segment12 => p_pgp_segment12
268 ,p_pgp_segment13 => p_pgp_segment13
269 ,p_pgp_segment14 => p_pgp_segment14
270 ,p_pgp_segment15 => p_pgp_segment15
271 ,p_pgp_segment16 => p_pgp_segment16
272 ,p_pgp_segment17 => p_pgp_segment17
273 ,p_pgp_segment18 => p_pgp_segment18
274 ,p_pgp_segment19 => p_pgp_segment19
275 ,p_pgp_segment20 => p_pgp_segment20
276 ,p_pgp_segment21 => p_pgp_segment21
277 ,p_pgp_segment22 => p_pgp_segment22
278 ,p_pgp_segment23 => p_pgp_segment23
279 ,p_pgp_segment24 => p_pgp_segment24
280 ,p_pgp_segment25 => p_pgp_segment25
281 ,p_pgp_segment26 => p_pgp_segment26
282 ,p_pgp_segment27 => p_pgp_segment27
283 ,p_pgp_segment28 => p_pgp_segment28
284 ,p_pgp_segment29 => p_pgp_segment29
285 ,p_pgp_segment30 => p_pgp_segment30
286 ,p_pgp_concat_segments => p_pgp_concat_segments
287 ,p_assignment_id => p_assignment_id
288 ,p_soft_coding_keyflex_id => p_soft_coding_keyflex_id
289 ,p_people_group_id => p_people_group_id
290 ,p_object_version_number => p_object_version_number
291 ,p_effective_start_date => p_effective_start_date
292 ,p_effective_end_date => p_effective_end_date
293 ,p_assignment_sequence => p_assignment_sequence
294 ,p_comment_id => p_comment_id
295 ,p_concatenated_segments => p_concatenated_segments
296 ,p_group_name => p_group_name
297 ,p_other_manager_warning => p_other_manager_warning
298 );
299 --
300 hr_utility.set_location(' Leaving:'||l_proc, 30);
301 --
302 END create_se_secondary_emp_asg;
303
304 -- ----------------------------------------------------------------------------
305 -- |--------------------------< update_se_emp_asg >---------------------------|
306 -- ----------------------------------------------------------------------------
307 --
308 PROCEDURE update_se_emp_asg
309 (p_validate IN BOOLEAN DEFAULT FALSE
310 ,p_effective_date IN DATE
311 ,p_datetrack_update_mode IN VARCHAR2
312 ,p_assignment_id IN NUMBER
313 ,p_object_version_number IN OUT NOCOPY NUMBER
314 ,p_supervisor_id IN NUMBER DEFAULT hr_api.g_number
315 ,p_assignment_number IN VARCHAR2 DEFAULT hr_api.g_varchar2
316 ,p_change_reason IN VARCHAR2 DEFAULT hr_api.g_varchar2
317 ,p_comments IN VARCHAR2 DEFAULT hr_api.g_varchar2
318 ,p_date_probation_end IN DATE DEFAULT hr_api.g_date
319 ,p_default_code_comb_id IN NUMBER DEFAULT hr_api.g_number
320 ,p_frequency IN VARCHAR2 DEFAULT hr_api.g_varchar2
321 ,p_internal_address_line IN VARCHAR2 DEFAULT hr_api.g_varchar2
322 ,p_manager_flag IN VARCHAR2 DEFAULT hr_api.g_varchar2
323 ,p_normal_hours IN NUMBER DEFAULT hr_api.g_number
324 ,p_perf_review_period IN NUMBER DEFAULT hr_api.g_number
325 ,p_perf_review_period_frequency IN VARCHAR2 DEFAULT hr_api.g_varchar2
326 ,p_probation_period IN NUMBER DEFAULT hr_api.g_number
327 ,p_probation_unit IN VARCHAR2 DEFAULT hr_api.g_varchar2
328 ,p_sal_review_period IN NUMBER DEFAULT hr_api.g_number
329 ,p_sal_review_period_frequency IN VARCHAR2 DEFAULT hr_api.g_varchar2
330 ,p_set_of_books_id IN NUMBER DEFAULT hr_api.g_number
331 ,p_source_type IN VARCHAR2 DEFAULT hr_api.g_varchar2
332 ,p_time_normal_finish IN VARCHAR2 DEFAULT hr_api.g_varchar2
333 ,p_time_normal_start IN VARCHAR2 DEFAULT hr_api.g_varchar2
334 ,p_bargaining_unit_code IN VARCHAR2 DEFAULT hr_api.g_varchar2
335 ,p_labour_union_member_flag IN VARCHAR2 DEFAULT hr_api.g_varchar2
336 ,p_hourly_salaried_code IN VARCHAR2 DEFAULT hr_api.g_varchar2
337 ,p_ass_attribute_category IN VARCHAR2 DEFAULT hr_api.g_varchar2
338 ,p_ass_attribute1 IN VARCHAR2 DEFAULT hr_api.g_varchar2
339 ,p_ass_attribute2 IN VARCHAR2 DEFAULT hr_api.g_varchar2
340 ,p_ass_attribute3 IN VARCHAR2 DEFAULT hr_api.g_varchar2
341 ,p_ass_attribute4 IN VARCHAR2 DEFAULT hr_api.g_varchar2
342 ,p_ass_attribute5 IN VARCHAR2 DEFAULT hr_api.g_varchar2
343 ,p_ass_attribute6 IN VARCHAR2 DEFAULT hr_api.g_varchar2
344 ,p_ass_attribute7 IN VARCHAR2 DEFAULT hr_api.g_varchar2
345 ,p_ass_attribute8 IN VARCHAR2 DEFAULT hr_api.g_varchar2
346 ,p_ass_attribute9 IN VARCHAR2 DEFAULT hr_api.g_varchar2
347 ,p_ass_attribute10 IN VARCHAR2 DEFAULT hr_api.g_varchar2
348 ,p_ass_attribute11 IN VARCHAR2 DEFAULT hr_api.g_varchar2
349 ,p_ass_attribute12 IN VARCHAR2 DEFAULT hr_api.g_varchar2
350 ,p_ass_attribute13 IN VARCHAR2 DEFAULT hr_api.g_varchar2
351 ,p_ass_attribute14 IN VARCHAR2 DEFAULT hr_api.g_varchar2
352 ,p_ass_attribute15 IN VARCHAR2 DEFAULT hr_api.g_varchar2
353 ,p_ass_attribute16 IN VARCHAR2 DEFAULT hr_api.g_varchar2
357 ,p_ass_attribute20 IN VARCHAR2 DEFAULT hr_api.g_varchar2
354 ,p_ass_attribute17 IN VARCHAR2 DEFAULT hr_api.g_varchar2
355 ,p_ass_attribute18 IN VARCHAR2 DEFAULT hr_api.g_varchar2
356 ,p_ass_attribute19 IN VARCHAR2 DEFAULT hr_api.g_varchar2
358 ,p_ass_attribute21 IN VARCHAR2 DEFAULT hr_api.g_varchar2
359 ,p_ass_attribute22 IN VARCHAR2 DEFAULT hr_api.g_varchar2
360 ,p_ass_attribute23 IN VARCHAR2 DEFAULT hr_api.g_varchar2
361 ,p_ass_attribute24 IN VARCHAR2 DEFAULT hr_api.g_varchar2
362 ,p_ass_attribute25 IN VARCHAR2 DEFAULT hr_api.g_varchar2
363 ,p_ass_attribute26 IN VARCHAR2 DEFAULT hr_api.g_varchar2
364 ,p_ass_attribute27 IN VARCHAR2 DEFAULT hr_api.g_varchar2
365 ,p_ass_attribute28 IN VARCHAR2 DEFAULT hr_api.g_varchar2
366 ,p_ass_attribute29 IN VARCHAR2 DEFAULT hr_api.g_varchar2
367 ,p_ass_attribute30 IN VARCHAR2 DEFAULT hr_api.g_varchar2
368 ,p_title IN VARCHAR2 DEFAULT hr_api.g_varchar2
369 ,p_local_unit IN VARCHAR2 DEFAULT hr_api.g_varchar2
370 ,p_ssyk_skills_code IN VARCHAR2 DEFAULT hr_api.g_varchar2
371 ,p_work_title IN VARCHAR2 DEFAULT hr_api.g_varchar2
372 ,p_notification_date IN VARCHAR2 DEFAULT hr_api.g_varchar2
373 ,p_asg_termination_date IN VARCHAR2 DEFAULT hr_api.g_varchar2
374 ,p_termination_reason IN VARCHAR2 DEFAULT hr_api.g_varchar2
375 ,p_comment_id OUT NOCOPY NUMBER
376 ,p_soft_coding_keyflex_id OUT NOCOPY NUMBER
377 ,p_effective_start_date OUT NOCOPY DATE
378 ,p_effective_end_date OUT NOCOPY DATE
379 ,p_concatenated_segments OUT NOCOPY VARCHAR2
380 ,p_no_managers_warning OUT NOCOPY BOOLEAN
381 ,p_other_manager_warning OUT NOCOPY BOOLEAN
382 ) is
383
384 --
385 -- Declare cursors AND local variables
386 --
387 l_proc VARCHAR2(72) := g_package||'update_se_emp_asg';
388 l_effective_date DATE;
389 l_legislation_code per_business_groups.legislation_code%TYPE;
390 l_business_group_id per_business_groups.business_group_id%type;
391 a varchar2(100);
392 v_field varchar2(20);
393 --
394 CURSOR check_legislation
395 (c_assignment_id per_assignments_f.assignment_id%TYPE,
396 c_effective_date DATE
397 )
398 IS
399 SELECT bgp.legislation_code
400 FROM per_assignments_f asg,
401 per_business_groups bgp
402 WHERE asg.business_group_id = bgp.business_group_id
403 AND asg.assignment_id = c_assignment_id
404 AND c_effective_date BETWEEN effective_start_date AND effective_end_date;
405 --
406
407
408 BEGIN
409 hr_utility.set_location('Entering:'|| l_proc, 10);
410
411 --
412 -- Truncate DATE variables
413 --
414 l_effective_date := trunc(p_effective_date);
415 --
416 -- Validate IN addition to Table Handlers
417 --
418 -- Check that the assignment exists.
419 --
420 OPEN check_legislation(p_assignment_id, l_effective_date);
421 FETCH check_legislation into l_legislation_code;
422 IF check_legislation%notfound THEN
423 CLOSE check_legislation;
424 hr_utility.set_message(801,'HR_7220_INVALID_PRIMARY_KEY');
425 hr_utility.raise_error;
426 END IF;
427 CLOSE check_legislation;
428 hr_utility.set_location(l_proc, 20);
429 --
430 -- Check that the legislation of the specified business group IS 'SE.
431 --
432 IF l_legislation_code <> 'SE' THEN
433 hr_utility.set_message(801, 'HR_7961_PER_BUS_GRP_INVALID');
434 hr_utility.set_message_token('LEG_CODE','SE');
435 hr_utility.raise_error;
436 END IF;
437 hr_utility.set_location(l_proc, 30);
438 --
439
440 --
441 -- Call update_emp_asg business process
442 --
443 hr_assignment_api.update_emp_asg
444 (p_validate => p_validate
445 ,p_effective_date => p_effective_date
446 ,p_datetrack_update_mode => p_datetrack_update_mode
447 ,p_assignment_id => p_assignment_id
448 ,p_object_version_number => p_object_version_number
449 ,p_supervisor_id => p_supervisor_id
450 ,p_assignment_number => p_assignment_number
451 ,p_change_reason => p_change_reason
452 ,p_comments => p_comments
453 ,p_date_probation_end => p_date_probation_end
454 ,p_default_code_comb_id => p_default_code_comb_id
455 ,p_frequency => p_frequency
456 ,p_internal_address_line => p_internal_address_line
457 ,p_manager_flag => p_manager_flag
458 ,p_normal_hours => p_normal_hours
459 ,p_perf_review_period => p_perf_review_period
460 ,p_perf_review_period_frequency => p_perf_review_period_frequency
461 ,p_probation_period => p_probation_period
462 ,p_probation_unit => p_probation_unit
463 ,p_sal_review_period => p_sal_review_period
464 ,p_sal_review_period_frequency => p_sal_review_period_frequency
465 ,p_set_of_books_id => p_set_of_books_id
466 ,p_source_type => p_source_type
467 ,p_time_normal_finish => p_time_normal_finish
468 ,p_time_normal_start => p_time_normal_start
469 ,p_bargaining_unit_code => p_bargaining_unit_code
470 ,p_labour_union_member_flag => p_labour_union_member_flag
471 ,p_hourly_salaried_code => p_hourly_salaried_code
472 ,p_ass_attribute_category => p_ass_attribute_category
473 ,p_ass_attribute1 => p_ass_attribute1
474 ,p_ass_attribute2 => p_ass_attribute2
475 ,p_ass_attribute3 => p_ass_attribute3
476 ,p_ass_attribute4 => p_ass_attribute4
477 ,p_ass_attribute5 => p_ass_attribute5
478 ,p_ass_attribute6 => p_ass_attribute6
479 ,p_ass_attribute7 => p_ass_attribute7
480 ,p_ass_attribute8 => p_ass_attribute8
481 ,p_ass_attribute9 => p_ass_attribute9
482 ,p_ass_attribute10 => p_ass_attribute10
483 ,p_ass_attribute11 => p_ass_attribute11
484 ,p_ass_attribute12 => p_ass_attribute12
485 ,p_ass_attribute13 => p_ass_attribute13
486 ,p_ass_attribute14 => p_ass_attribute14
487 ,p_ass_attribute15 => p_ass_attribute15
488 ,p_ass_attribute16 => p_ass_attribute16
489 ,p_ass_attribute17 => p_ass_attribute17
490 ,p_ass_attribute18 => p_ass_attribute18
491 ,p_ass_attribute19 => p_ass_attribute19
492 ,p_ass_attribute20 => p_ass_attribute20
493 ,p_ass_attribute21 => p_ass_attribute21
494 ,p_ass_attribute22 => p_ass_attribute22
495 ,p_ass_attribute23 => p_ass_attribute23
496 ,p_ass_attribute24 => p_ass_attribute24
497 ,p_ass_attribute25 => p_ass_attribute25
498 ,p_ass_attribute26 => p_ass_attribute26
499 ,p_ass_attribute27 => p_ass_attribute27
500 ,p_ass_attribute28 => p_ass_attribute28
501 ,p_ass_attribute29 => p_ass_attribute29
502 ,p_ass_attribute30 => p_ass_attribute30
503 ,p_title => p_title
504 ,p_segment2 => p_local_unit
505 ,p_segment3 => p_ssyk_skills_code
506 ,p_segment4 => p_work_title
507 ,p_segment5 => p_notification_date
508 ,p_segment6 => p_asg_termination_date
509 ,p_segment7 => p_termination_reason
510 ,p_soft_coding_keyflex_id => p_soft_coding_keyflex_id
511 ,p_comment_id => p_comment_id
512 ,p_effective_start_date => p_effective_start_date
513 ,p_effective_END_date => p_effective_end_date
514 ,p_concatenated_segments => p_concatenated_segments
515 ,p_no_managers_warning => p_no_managers_warning
516 ,p_other_manager_warning => p_other_manager_warning
517 );
518
519 hr_utility.set_location(' Leaving:'||l_proc, 40);
520 END update_se_emp_asg;
521
522
523 END hr_se_assignment_api;