DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_NZ_ASSIGNMENT_API

Source


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