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