[Home] [Help]
PACKAGE BODY: APPS.HR_FI_ASSIGNMENT_API
Source
1 PACKAGE BODY hr_fi_assignment_api AS
2 /* $Header: peasgfii.pkb 120.0 2005/05/31 05:40:34 appldev noship $ */
3
4 g_package VARCHAR2(33) := 'hr_fi_assignment_api.';
5 --
6 -- ----------------------------------------------------------------------------
7 -- |---------------------< create_fi_secondary_emp_asg >-----------------------|
8 -- ----------------------------------------------------------------------------
9 --
10
11 PROCEDURE create_fi_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_employment_type IN VARCHAR2 DEFAULT NULL
82 ,p_working_time_type IN VARCHAR2 DEFAULT NULL
83 ,p_shift_work_type IN VARCHAR2 DEFAULT NULL
84 ,p_shift_work_type_days IN VARCHAR2 DEFAULT NULL
85 ,p_community_price_category IN VARCHAR2 DEFAULT NULL
86 ,p_employee_status IN VARCHAR2 DEFAULT NULL
87 ,p_personnel_group IN VARCHAR2 DEFAULT NULL
88 ,p_insurance_occupational_group IN VARCHAR2 DEFAULT NULL
89 ,p_union_occupational_group IN VARCHAR2 DEFAULT NULL
90 ,p_reported_assignment IN VARCHAR2 DEFAULT NULL
91 ,p_tax_category IN VARCHAR2 DEFAULT NULL
92 ,p_social_security_liable IN VARCHAR2 DEFAULT NULL
93 ,p_pgp_segment1 IN VARCHAR2 DEFAULT NULL
94 ,p_pgp_segment2 IN VARCHAR2 DEFAULT NULL
95 ,p_pgp_segment3 IN VARCHAR2 DEFAULT NULL
96 ,p_pgp_segment4 IN VARCHAR2 DEFAULT NULL
97 ,p_pgp_segment5 IN VARCHAR2 DEFAULT NULL
98 ,p_pgp_segment6 IN VARCHAR2 DEFAULT NULL
99 ,p_pgp_segment7 IN VARCHAR2 DEFAULT NULL
100 ,p_pgp_segment8 IN VARCHAR2 DEFAULT NULL
101 ,p_pgp_segment9 IN VARCHAR2 DEFAULT NULL
102 ,p_pgp_segment10 IN VARCHAR2 DEFAULT NULL
103 ,p_pgp_segment11 IN VARCHAR2 DEFAULT NULL
104 ,p_pgp_segment12 IN VARCHAR2 DEFAULT NULL
105 ,p_pgp_segment13 IN VARCHAR2 DEFAULT NULL
106 ,p_pgp_segment14 IN VARCHAR2 DEFAULT NULL
107 ,p_pgp_segment15 IN VARCHAR2 DEFAULT NULL
108 ,p_pgp_segment16 IN VARCHAR2 DEFAULT NULL
109 ,p_pgp_segment17 IN VARCHAR2 DEFAULT NULL
110 ,p_pgp_segment18 IN VARCHAR2 DEFAULT NULL
111 ,p_pgp_segment19 IN VARCHAR2 DEFAULT NULL
112 ,p_pgp_segment20 IN VARCHAR2 DEFAULT NULL
113 ,p_pgp_segment21 IN VARCHAR2 DEFAULT NULL
114 ,p_pgp_segment22 IN VARCHAR2 DEFAULT NULL
115 ,p_pgp_segment23 IN VARCHAR2 DEFAULT NULL
116 ,p_pgp_segment24 IN VARCHAR2 DEFAULT NULL
117 ,p_pgp_segment25 IN VARCHAR2 DEFAULT NULL
118 ,p_pgp_segment26 IN VARCHAR2 DEFAULT NULL
119 ,p_pgp_segment27 IN VARCHAR2 DEFAULT NULL
120 ,p_pgp_segment28 IN VARCHAR2 DEFAULT NULL
121 ,p_pgp_segment29 IN VARCHAR2 DEFAULT NULL
122 ,p_pgp_segment30 IN VARCHAR2 DEFAULT NULL
123 ,p_pgp_concat_segments IN VARCHAR2 DEFAULT NULL
124 ,p_assignment_id OUT NOCOPY NUMBER
125 ,p_soft_coding_keyflex_id OUT NOCOPY NUMBER
126 ,p_people_group_id OUT NOCOPY NUMBER
127 ,p_object_version_number OUT NOCOPY NUMBER
128 ,p_effective_start_date OUT NOCOPY DATE
129 ,p_effective_end_date OUT NOCOPY DATE
130 ,p_assignment_sequence OUT NOCOPY NUMBER
131 ,p_comment_id OUT NOCOPY NUMBER
132 ,p_concatenated_segments OUT NOCOPY VARCHAR2
133 ,p_group_name OUT NOCOPY VARCHAR2
134 ,p_other_manager_warning OUT NOCOPY BOOLEAN
135 ) is
136
137 -- Declare cursors AND local variables
138 --
139 -- Declare variables
140 --
141
142 l_assignment_number per_assignments_f.assignment_number%TYPE;
143 l_effective_date DATE;
144 --
145 l_business_group_id per_business_groups.business_group_id%TYPE;
146 l_legislation_code per_business_groups.legislation_code%TYPE;
147 l_proc VARCHAR2(72) := g_package||'create_fi_secondary_emp_asg';
148 v_field VARCHAR2(20);
149 --
150 -- Declare cursors
151 --
152 CURSOR csr_legislation IS
153 SELECT NULL
154 FROM per_assignments_f paf,
155 per_business_groups pbg
156 WHERE paf.person_id = p_person_id
157 AND l_effective_date BETWEEN paf.effective_start_date AND paf.effective_end_date
158 AND pbg.business_group_id = paf.business_group_id
159 AND pbg.legislation_code = 'FI';
160 --
161 --
162 BEGIN
163 hr_utility.set_location('Entering:'|| l_proc, 10);
164 --
165 -- Initialise local variable
166 --
167 l_effective_date := trunc(p_effective_date);
168 --
169 -- Validation IN addition to Table Handlers
170 --
171 -- Ensure that the employee IS within a FI business group
172 --
173 OPEN csr_legislation;
174 FETCH csr_legislation
175 INTO l_legislation_code;
176 IF csr_legislation%notfound THEN
177 CLOSE csr_legislation;
178 hr_utility.set_message(801, 'HR_7961_PER_BUS_GRP_INVALID');
179 hr_utility.set_message_token('LEG_CODE', 'FI');
180 hr_utility.raise_error;
181 END IF;
182 CLOSE csr_legislation;
183 --
184 --
185 -- Call create_secondary_emp_asg
186 --
187
188 hr_assignment_api.create_secondary_emp_asg
189 (p_validate => p_validate
190 ,p_effective_date => l_effective_date
191 ,p_person_id => p_person_id
192 ,p_organization_id => p_organization_id
193 ,p_grade_id => p_grade_id
194 ,p_position_id => p_position_id
195 ,p_job_id => p_job_id
196 ,p_assignment_status_type_id => p_assignment_status_type_id
197 ,p_payroll_id => p_payroll_id
198 ,p_location_id => p_location_id
199 ,p_supervisor_id => p_supervisor_id
200 ,p_special_ceiling_step_id => p_special_ceiling_step_id
201 ,p_pay_basis_id => p_pay_basis_id
202 ,p_assignment_number => l_assignment_number
203 ,p_change_reason => p_change_reason
204 ,p_comments => p_comments
205 ,p_date_probation_end => trunc(p_date_probation_end)
206 ,p_default_code_comb_id => p_default_code_comb_id
207 ,p_employment_category => p_employment_category
208 ,p_frequency => p_frequency
209 ,p_internal_address_line => p_internal_address_line
210 ,p_manager_flag => p_manager_flag
211 ,p_normal_hours => p_normal_hours
212 ,p_perf_review_period => p_perf_review_period
213 ,p_perf_review_period_frequency => p_perf_review_period_frequency
214 ,p_probation_period => p_probation_period
215 ,p_probation_unit => p_probation_unit
216 ,p_sal_review_period => p_sal_review_period
217 ,p_sal_review_period_frequency => p_sal_review_period_frequency
218 ,p_set_of_books_id => p_set_of_books_id
219 ,p_source_type => p_source_type
220 ,p_time_normal_finish => p_time_normal_finish
221 ,p_time_normal_start => p_time_normal_start
222 ,p_bargaining_unit_code => p_bargaining_unit_code
223 ,p_labour_union_member_flag => p_labour_union_member_flag
224 ,p_hourly_salaried_code => p_hourly_salaried_code
225 ,p_ass_attribute_category => p_ass_attribute_category
226 ,p_ass_attribute1 => p_ass_attribute1
227 ,p_ass_attribute2 => p_ass_attribute2
228 ,p_ass_attribute3 => p_ass_attribute3
229 ,p_ass_attribute4 => p_ass_attribute4
230 ,p_ass_attribute5 => p_ass_attribute5
231 ,p_ass_attribute6 => p_ass_attribute6
232 ,p_ass_attribute7 => p_ass_attribute7
233 ,p_ass_attribute8 => p_ass_attribute8
234 ,p_ass_attribute9 => p_ass_attribute9
235 ,p_ass_attribute10 => p_ass_attribute10
236 ,p_ass_attribute11 => p_ass_attribute11
237 ,p_ass_attribute12 => p_ass_attribute12
238 ,p_ass_attribute13 => p_ass_attribute13
239 ,p_ass_attribute14 => p_ass_attribute14
240 ,p_ass_attribute15 => p_ass_attribute15
241 ,p_ass_attribute16 => p_ass_attribute16
242 ,p_ass_attribute17 => p_ass_attribute17
243 ,p_ass_attribute18 => p_ass_attribute18
244 ,p_ass_attribute19 => p_ass_attribute19
245 ,p_ass_attribute20 => p_ass_attribute20
246 ,p_ass_attribute21 => p_ass_attribute21
247 ,p_ass_attribute22 => p_ass_attribute22
248 ,p_ass_attribute23 => p_ass_attribute23
249 ,p_ass_attribute24 => p_ass_attribute24
250 ,p_ass_attribute25 => p_ass_attribute25
251 ,p_ass_attribute26 => p_ass_attribute26
252 ,p_ass_attribute27 => p_ass_attribute27
253 ,p_ass_attribute28 => p_ass_attribute28
254 ,p_ass_attribute29 => p_ass_attribute29
255 ,p_ass_attribute30 => p_ass_attribute30
256 ,p_title => p_title
257 ,p_scl_segment2 => p_local_unit
258 ,p_scl_segment3 => p_employment_type
259 ,p_scl_segment4 => p_working_time_type
260 ,p_scl_segment5 => p_shift_work_type
261 ,p_scl_segment6 => p_shift_work_type_days
262 ,p_scl_segment7 => p_community_price_category
263 ,p_scl_segment8 => p_employee_status
264 ,p_scl_segment9 => p_personnel_group
265 ,p_scl_segment10 => p_insurance_occupational_group
266 ,p_scl_segment11 => p_union_occupational_group
267 ,p_scl_segment12 => p_reported_assignment
268 ,p_scl_segment13 => p_tax_category
269 ,p_scl_segment14 => p_social_security_liable
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_fi_secondary_emp_asg;
317
318 -- ----------------------------------------------------------------------------
319 -- |--------------------------< update_fi_emp_asg >---------------------------|
320 -- ----------------------------------------------------------------------------
321 --
322 PROCEDURE update_fi_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_local_unit IN VARCHAR2 DEFAULT hr_api.g_varchar2
384 ,p_employment_type IN VARCHAR2 DEFAULT hr_api.g_varchar2
385 ,p_working_time_type IN VARCHAR2 DEFAULT hr_api.g_varchar2
386 ,p_shift_work_type IN VARCHAR2 DEFAULT hr_api.g_varchar2
387 ,p_shift_work_type_days IN VARCHAR2 DEFAULT hr_api.g_varchar2
388 ,p_community_price_category IN VARCHAR2 DEFAULT hr_api.g_varchar2
389 ,p_employee_status IN VARCHAR2 DEFAULT hr_api.g_varchar2
390 ,p_personnel_group IN VARCHAR2 DEFAULT hr_api.g_varchar2
391 ,p_insurance_occupational_group IN VARCHAR2 DEFAULT hr_api.g_varchar2
392 ,p_union_occupational_group IN VARCHAR2 DEFAULT hr_api.g_varchar2
393 ,p_reported_assignment IN VARCHAR2 DEFAULT hr_api.g_varchar2
394 ,p_tax_category IN VARCHAR2 DEFAULT hr_api.g_varchar2
395 ,p_social_security_liable IN VARCHAR2 DEFAULT hr_api.g_varchar2
396 ,p_comment_id OUT NOCOPY NUMBER
397 ,p_soft_coding_keyflex_id OUT NOCOPY NUMBER
398 ,p_effective_start_date OUT NOCOPY DATE
399 ,p_effective_end_date OUT NOCOPY DATE
400 ,p_concatenated_segments OUT NOCOPY VARCHAR2
401 ,p_no_managers_warning OUT NOCOPY BOOLEAN
402 ,p_other_manager_warning OUT NOCOPY BOOLEAN
403 ) is
404
405 --
406 -- Declare cursors AND local variables
407 --
408 l_proc VARCHAR2(72) := g_package||'update_fi_emp_asg';
409 l_effective_date DATE;
410 l_legislation_code per_business_groups.legislation_code%TYPE;
411 l_business_group_id per_business_groups.business_group_id%type;
412 a varchar2(100);
413 v_field varchar2(20);
414 --
415 CURSOR check_legislation
416 (c_assignment_id per_assignments_f.assignment_id%TYPE,
417 c_effective_date DATE
418 )
419 IS
420 SELECT bgp.legislation_code
421 FROM per_assignments_f asg,
422 per_business_groups bgp
423 WHERE asg.business_group_id = bgp.business_group_id
424 AND asg.assignment_id = c_assignment_id
425 AND c_effective_date BETWEEN effective_start_date AND effective_end_date;
426 --
427
428
429 BEGIN
430 hr_utility.set_location('Entering:'|| l_proc, 10);
431
432 --
433 -- Truncate DATE variables
434 --
435 l_effective_date := trunc(p_effective_date);
436 --
437 -- Validate IN addition to Table Handlers
438 --
439 -- Check that the assignment exists.
440 --
441 OPEN check_legislation(p_assignment_id, l_effective_date);
442 FETCH check_legislation into l_legislation_code;
443 IF check_legislation%notfound THEN
444 CLOSE check_legislation;
445 hr_utility.set_message(801,'HR_7220_INVALID_PRIMARY_KEY');
446 hr_utility.raise_error;
447 END IF;
448 CLOSE check_legislation;
449 hr_utility.set_location(l_proc, 20);
450 --
451 -- Check that the legislation of the specified business group IS 'FI'.
452 --
453 IF l_legislation_code <> 'FI' THEN
454 hr_utility.set_message(801, 'HR_7961_PER_BUS_GRP_INVALID');
455 hr_utility.set_message_token('LEG_CODE','FI');
456 hr_utility.raise_error;
457 END IF;
458 hr_utility.set_location(l_proc, 30);
459 --
460
461 --
462 -- Call update_emp_asg business process
463 --
464 hr_assignment_api.update_emp_asg
465 (p_validate => p_validate
466 ,p_effective_date => p_effective_date
467 ,p_datetrack_update_mode => p_datetrack_update_mode
468 ,p_assignment_id => p_assignment_id
469 ,p_object_version_number => p_object_version_number
470 ,p_supervisor_id => p_supervisor_id
471 ,p_assignment_number => p_assignment_number
472 ,p_change_reason => p_change_reason
473 ,p_comments => p_comments
474 ,p_date_probation_end => p_date_probation_end
475 ,p_default_code_comb_id => p_default_code_comb_id
476 ,p_frequency => p_frequency
477 ,p_internal_address_line => p_internal_address_line
478 ,p_manager_flag => p_manager_flag
479 ,p_normal_hours => p_normal_hours
480 ,p_perf_review_period => p_perf_review_period
481 ,p_perf_review_period_frequency => p_perf_review_period_frequency
482 ,p_probation_period => p_probation_period
483 ,p_probation_unit => p_probation_unit
484 ,p_sal_review_period => p_sal_review_period
485 ,p_sal_review_period_frequency => p_sal_review_period_frequency
486 ,p_set_of_books_id => p_set_of_books_id
487 ,p_source_type => p_source_type
488 ,p_time_normal_finish => p_time_normal_finish
489 ,p_time_normal_start => p_time_normal_start
490 ,p_bargaining_unit_code => p_bargaining_unit_code
491 ,p_labour_union_member_flag => p_labour_union_member_flag
492 ,p_hourly_salaried_code => p_hourly_salaried_code
493 ,p_ass_attribute_category => p_ass_attribute_category
494 ,p_ass_attribute1 => p_ass_attribute1
495 ,p_ass_attribute2 => p_ass_attribute2
496 ,p_ass_attribute3 => p_ass_attribute3
497 ,p_ass_attribute4 => p_ass_attribute4
498 ,p_ass_attribute5 => p_ass_attribute5
499 ,p_ass_attribute6 => p_ass_attribute6
500 ,p_ass_attribute7 => p_ass_attribute7
501 ,p_ass_attribute8 => p_ass_attribute8
502 ,p_ass_attribute9 => p_ass_attribute9
503 ,p_ass_attribute10 => p_ass_attribute10
504 ,p_ass_attribute11 => p_ass_attribute11
505 ,p_ass_attribute12 => p_ass_attribute12
506 ,p_ass_attribute13 => p_ass_attribute13
507 ,p_ass_attribute14 => p_ass_attribute14
508 ,p_ass_attribute15 => p_ass_attribute15
509 ,p_ass_attribute16 => p_ass_attribute16
510 ,p_ass_attribute17 => p_ass_attribute17
511 ,p_ass_attribute18 => p_ass_attribute18
512 ,p_ass_attribute19 => p_ass_attribute19
513 ,p_ass_attribute20 => p_ass_attribute20
514 ,p_ass_attribute21 => p_ass_attribute21
515 ,p_ass_attribute22 => p_ass_attribute22
516 ,p_ass_attribute23 => p_ass_attribute23
517 ,p_ass_attribute24 => p_ass_attribute24
518 ,p_ass_attribute25 => p_ass_attribute25
519 ,p_ass_attribute26 => p_ass_attribute26
520 ,p_ass_attribute27 => p_ass_attribute27
521 ,p_ass_attribute28 => p_ass_attribute28
522 ,p_ass_attribute29 => p_ass_attribute29
523 ,p_ass_attribute30 => p_ass_attribute30
524 ,p_title => p_title
525 ,p_segment2 => p_local_unit
526 ,p_segment3 => p_employment_type
527 ,p_segment4 => p_working_time_type
528 ,p_segment5 => p_shift_work_type
529 ,p_segment6 => p_shift_work_type_days
530 ,p_segment7 => p_community_price_category
531 ,p_segment8 => p_employee_status
532 ,p_segment9 => p_personnel_group
533 ,p_segment10 => p_insurance_occupational_group
534 ,p_segment11 => p_union_occupational_group
535 ,p_segment12 => p_reported_assignment
536 ,p_segment13 => p_tax_category
537 ,p_segment14 => p_social_security_liable
538 ,p_soft_coding_keyflex_id => p_soft_coding_keyflex_id
539 ,p_comment_id => p_comment_id
540 ,p_effective_start_date => p_effective_start_date
541 ,p_effective_END_date => p_effective_end_date
542 ,p_concatenated_segments => p_concatenated_segments
543 ,p_no_managers_warning => p_no_managers_warning
544 ,p_other_manager_warning => p_other_manager_warning
545 );
546
547 hr_utility.set_location(' Leaving:'||l_proc, 40);
548 END update_fi_emp_asg;
549
550
551 END hr_fi_assignment_api;