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