DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_MX_ASSIGNMENT_API

Source


1 PACKAGE BODY hr_mx_assignment_api AS
2 /* $Header: pemxwras.pkb 120.0 2005/05/31 11:31:08 appldev noship $ */
3 
4 -- Global variables
5 --
6      g_package  VARCHAR2(33);
7      g_debug    BOOLEAN;
8 
9 --   --------------------------------------------------------------------------
10 -- |--------------------< create_mx_secondary_emp_asg >-------------------------|
11 --   --------------------------------------------------------------------------
12 
13 PROCEDURE create_mx_secondary_emp_asg
14   (p_validate                     IN     BOOLEAN  DEFAULT   false
15   ,p_effective_date               IN     DATE
16   ,p_person_id                    IN     NUMBER
17   ,p_organization_id              IN     NUMBER
18   ,p_grade_id                     IN     NUMBER   DEFAULT   null
19   ,p_position_id                  IN     NUMBER   DEFAULT   null
20   ,p_job_id                       IN     NUMBER   DEFAULT   null
21   ,p_assignment_status_type_id    IN     NUMBER   DEFAULT   null
22   ,p_payroll_id                   IN     NUMBER   DEFAULT   null
23   ,p_location_id                  IN     NUMBER   DEFAULT   null
24   ,p_supervisor_id                IN     NUMBER   DEFAULT   null
25   ,p_special_ceiling_step_id      IN     NUMBER   DEFAULT   null
26   ,p_pay_basis_id                 IN     NUMBER   DEFAULT   null
27   ,p_assignment_number            IN OUT NOCOPY   VARCHAR2
28   ,p_change_reason                IN     VARCHAR2 DEFAULT   null
29   ,p_comments                     IN     VARCHAR2 DEFAULT   null
30   ,p_date_probation_end           IN     DATE     DEFAULT   null
31   ,p_default_code_comb_id         IN     NUMBER   DEFAULT   null
32   ,p_employment_category          IN     VARCHAR2 DEFAULT   null
33   ,p_frequency                    IN     VARCHAR2 DEFAULT   null
34   ,p_internal_address_line        IN     VARCHAR2 DEFAULT   null
35   ,p_manager_flag                 IN     VARCHAR2 DEFAULT   null
36   ,p_normal_hours                 IN     NUMBER   DEFAULT   null
37   ,p_perf_review_period           IN     NUMBER   DEFAULT   null
38   ,p_perf_review_period_frequency IN     VARCHAR2 DEFAULT   null
39   ,p_probation_period             IN     NUMBER   DEFAULT   null
40   ,p_probation_unit               IN     VARCHAR2 DEFAULT   null
41   ,p_sal_review_period            IN     NUMBER   DEFAULT   null
42   ,p_sal_review_period_frequency  IN     VARCHAR2 DEFAULT   null
43   ,p_set_of_books_id              IN     NUMBER   DEFAULT   null
44   ,p_source_type                  IN     VARCHAR2 DEFAULT   null
45   ,p_time_normal_finish           IN     VARCHAR2 DEFAULT   null
46   ,p_time_normal_start            IN     VARCHAR2 DEFAULT   null
47   ,p_bargaining_unit_code         IN     VARCHAR2 DEFAULT   null
48   ,p_labour_union_member_flag     IN     VARCHAR2 DEFAULT   null
49   ,p_hourly_salaried_code         IN     VARCHAR2 DEFAULT   null
50   ,p_ass_attribute_category       IN     VARCHAR2 DEFAULT   null
51   ,p_ass_attribute1               IN     VARCHAR2 DEFAULT   null
52   ,p_ass_attribute2               IN     VARCHAR2 DEFAULT   null
53   ,p_ass_attribute3               IN     VARCHAR2 DEFAULT   null
54   ,p_ass_attribute4               IN     VARCHAR2 DEFAULT   null
55   ,p_ass_attribute5               IN     VARCHAR2 DEFAULT   null
56   ,p_ass_attribute6               IN     VARCHAR2 DEFAULT   null
57   ,p_ass_attribute7               IN     VARCHAR2 DEFAULT   null
58   ,p_ass_attribute8               IN     VARCHAR2 DEFAULT   null
59   ,p_ass_attribute9               IN     VARCHAR2 DEFAULT   null
60   ,p_ass_attribute10              IN     VARCHAR2 DEFAULT   null
61   ,p_ass_attribute11              IN     VARCHAR2 DEFAULT   null
62   ,p_ass_attribute12              IN     VARCHAR2 DEFAULT   null
63   ,p_ass_attribute13              IN     VARCHAR2 DEFAULT   null
64   ,p_ass_attribute14              IN     VARCHAR2 DEFAULT   null
65   ,p_ass_attribute15              IN     VARCHAR2 DEFAULT   null
66   ,p_ass_attribute16              IN     VARCHAR2 DEFAULT   null
67   ,p_ass_attribute17              IN     VARCHAR2 DEFAULT   null
68   ,p_ass_attribute18              IN     VARCHAR2 DEFAULT   null
69   ,p_ass_attribute19              IN     VARCHAR2 DEFAULT   null
70   ,p_ass_attribute20              IN     VARCHAR2 DEFAULT   null
71   ,p_ass_attribute21              IN     VARCHAR2 DEFAULT   null
72   ,p_ass_attribute22              IN     VARCHAR2 DEFAULT   null
73   ,p_ass_attribute23              IN     VARCHAR2 DEFAULT   null
74   ,p_ass_attribute24              IN     VARCHAR2 DEFAULT   null
75   ,p_ass_attribute25              IN     VARCHAR2 DEFAULT   null
76   ,p_ass_attribute26              IN     VARCHAR2 DEFAULT   null
77   ,p_ass_attribute27              IN     VARCHAR2 DEFAULT   null
78   ,p_ass_attribute28              IN     VARCHAR2 DEFAULT   null
79   ,p_ass_attribute29              IN     VARCHAR2 DEFAULT   null
80   ,p_ass_attribute30              IN     VARCHAR2 DEFAULT   null
81   ,p_title                        IN     VARCHAR2 DEFAULT   null
82   ,p_tax_unit                     IN     VARCHAR2 DEFAULT   null
83   ,p_timecard_approver            IN     VARCHAR2 DEFAULT   null
84   ,p_timecard_required            IN     VARCHAR2 DEFAULT   null
85   ,p_work_schedule                IN     VARCHAR2 DEFAULT   null
86   ,p_gov_emp_sector               IN     VARCHAR2 DEFAULT   null
87   ,p_ss_salary_type               IN     VARCHAR2 DEFAULT   null
88   ,p_scl_concat_segments    	  IN 	 VARCHAR2 DEFAULT   null
89   ,p_pgp_segment1                 IN     VARCHAR2 DEFAULT   null
90   ,p_pgp_segment2                 IN     VARCHAR2 DEFAULT   null
91   ,p_pgp_segment3                 IN     VARCHAR2 DEFAULT   null
92   ,p_pgp_segment4                 IN     VARCHAR2 DEFAULT   null
93   ,p_pgp_segment5                 IN     VARCHAR2 DEFAULT   null
94   ,p_pgp_segment6                 IN     VARCHAR2 DEFAULT   null
95   ,p_pgp_segment7                 IN     VARCHAR2 DEFAULT   null
96   ,p_pgp_segment8                 IN     VARCHAR2 DEFAULT   null
97   ,p_pgp_segment9                 IN     VARCHAR2 DEFAULT   null
98   ,p_pgp_segment10                IN     VARCHAR2 DEFAULT   null
99   ,p_pgp_segment11                IN     VARCHAR2 DEFAULT   null
100   ,p_pgp_segment12                IN     VARCHAR2 DEFAULT   null
101   ,p_pgp_segment13                IN     VARCHAR2 DEFAULT   null
102   ,p_pgp_segment14                IN     VARCHAR2 DEFAULT   null
103   ,p_pgp_segment15                IN     VARCHAR2 DEFAULT   null
104   ,p_pgp_segment16                IN     VARCHAR2 DEFAULT   null
105   ,p_pgp_segment17                IN     VARCHAR2 DEFAULT   null
106   ,p_pgp_segment18                IN     VARCHAR2 DEFAULT   null
107   ,p_pgp_segment19                IN     VARCHAR2 DEFAULT   null
108   ,p_pgp_segment20                IN     VARCHAR2 DEFAULT   null
109   ,p_pgp_segment21                IN     VARCHAR2 DEFAULT   null
110   ,p_pgp_segment22                IN     VARCHAR2 DEFAULT   null
111   ,p_pgp_segment23                IN     VARCHAR2 DEFAULT   null
112   ,p_pgp_segment24                IN     VARCHAR2 DEFAULT   null
113   ,p_pgp_segment25                IN     VARCHAR2 DEFAULT   null
114   ,p_pgp_segment26                IN     VARCHAR2 DEFAULT   null
115   ,p_pgp_segment27                IN     VARCHAR2 DEFAULT   null
116   ,p_pgp_segment28                IN     VARCHAR2 DEFAULT   null
117   ,p_pgp_segment29                IN     VARCHAR2 DEFAULT   null
118   ,p_pgp_segment30                IN     VARCHAR2 DEFAULT   null
119   ,p_pgp_concat_segments	  IN     VARCHAR2 DEFAULT   null
120   ,p_contract_id                  IN     NUMBER   DEFAULT   null
121   ,p_establishment_id             IN     NUMBER   DEFAULT   null
122   ,p_collective_agreement_id      IN     NUMBER   DEFAULT   null
123   ,p_cagr_id_flex_num             IN     NUMBER   DEFAULT   null
124   ,p_cag_segment1                 IN     VARCHAR2 DEFAULT   null
125   ,p_cag_segment2                 IN     VARCHAR2 DEFAULT   null
126   ,p_cag_segment3                 IN     VARCHAR2 DEFAULT   null
127   ,p_cag_segment4                 IN     VARCHAR2 DEFAULT   null
128   ,p_cag_segment5                 IN     VARCHAR2 DEFAULT   null
129   ,p_cag_segment6                 IN     VARCHAR2 DEFAULT   null
130   ,p_cag_segment7                 IN     VARCHAR2 DEFAULT   null
131   ,p_cag_segment8                 IN     VARCHAR2 DEFAULT   null
132   ,p_cag_segment9                 IN     VARCHAR2 DEFAULT   null
133   ,p_cag_segment10                IN     VARCHAR2 DEFAULT   null
134   ,p_cag_segment11                IN     VARCHAR2 DEFAULT   null
135   ,p_cag_segment12                IN     VARCHAR2 DEFAULT   null
136   ,p_cag_segment13                IN     VARCHAR2 DEFAULT   null
137   ,p_cag_segment14                IN     VARCHAR2 DEFAULT   null
138   ,p_cag_segment15                IN     VARCHAR2 DEFAULT   null
139   ,p_cag_segment16                IN     VARCHAR2 DEFAULT   null
140   ,p_cag_segment17                IN     VARCHAR2 DEFAULT   null
141   ,p_cag_segment18                IN     VARCHAR2 DEFAULT   null
142   ,p_cag_segment19                IN     VARCHAR2 DEFAULT   null
143   ,p_cag_segment20                IN     VARCHAR2 DEFAULT   null
144   ,p_notice_period		  IN	 NUMBER   DEFAULT   null
145   ,p_notice_period_uom		  IN     VARCHAR2 DEFAULT   null
146   ,p_employee_category		  IN     VARCHAR2 DEFAULT   null
147   ,p_work_at_home		  IN	 VARCHAR2 DEFAULT   null
148   ,p_job_post_source_name         IN     VARCHAR2 DEFAULT   null
149   ,p_grade_ladder_pgm_id	  IN	 NUMBER   DEFAULT   null
150   ,p_supervisor_assignment_id	  IN	 NUMBER   DEFAULT   null
151   ,p_group_name                      OUT NOCOPY   VARCHAR2
152   ,p_concatenated_segments           OUT NOCOPY   VARCHAR2
153   ,p_cagr_grade_def_id            IN OUT NOCOPY   NUMBER
154   ,p_cagr_concatenated_segments      OUT NOCOPY   VARCHAR2
155   ,p_assignment_id                   OUT NOCOPY   NUMBER
156   ,p_soft_coding_keyflex_id       IN OUT NOCOPY   NUMBER
157   ,p_people_group_id              IN OUT NOCOPY   NUMBER
158   ,p_object_version_number           OUT NOCOPY   NUMBER
159   ,p_effective_start_date            OUT NOCOPY   DATE
160   ,p_effective_end_date              OUT NOCOPY   DATE
161   ,p_assignment_sequence             OUT NOCOPY   NUMBER
162   ,p_comment_id                      OUT NOCOPY   NUMBER
163   ,p_other_manager_warning           OUT NOCOPY   BOOLEAN
164   ,p_hourly_salaried_warning         OUT NOCOPY   BOOLEAN
165   ,p_gsp_post_process_warning        OUT NOCOPY   VARCHAR2)
166  IS
167 --
168   -- Declare cursors AND local variables
169   --
170   -- Declare variables
171   --
172 
173   l_assignment_number  per_assignments_f.assignment_number%TYPE;
174   l_effective_date     DATE;
175   l_business_group_id  per_all_people_f.business_group_id%TYPE;
176 
177   --
178   l_proc               VARCHAR2(72);
179   --
180   --
181 BEGIN
182 
183   l_proc := g_package||'create_mx_secondary_emp_asg';
184 
185   if g_debug then
186    hr_utility.set_location('Entering:'|| l_proc, 10);
187   end if;
188 
189   -----------------------------------------------------------------
190   -- Initialise local variable
191   -----------------------------------------------------------------
192   l_effective_date := trunc(p_effective_date);
193 
194   -----------------------------------------------------------------
195   -- Check that the business group of the person is in 'MX'
196   -- legislation.
197   -----------------------------------------------------------------
198   l_business_group_id := hr_mx_utility.get_bg_from_person(p_person_id);
199 
200  if g_debug then
201   hr_utility.set_location(l_proc, 20);
202  end if;
203 
204   hr_mx_utility.check_bus_grp(l_business_group_id, 'MX');
205 
206  if g_debug then
207   hr_utility.set_location(l_proc, 30);
208  end if;
209 
210   -----------------------------------------------------------------
211   -- Call create_secondary_emp_asg
212   -----------------------------------------------------------------
213 
214   hr_assignment_api.create_secondary_emp_asg
215   (p_validate                    	=>	  p_validate
216   ,p_effective_date             	=>	  p_effective_date
217   ,p_person_id                		=>	  p_person_id
218   ,p_organization_id             	=>	  p_organization_id
219   ,p_grade_id                    	=>	  p_grade_id
220   ,p_position_id                	=>	  p_position_id
221   ,p_job_id                      	=>	  p_job_id
222   ,p_assignment_status_type_id   	=>	  p_assignment_status_type_id
223   ,p_payroll_id                  	=>	  p_payroll_id
224   ,p_location_id                 	=>	  p_location_id
225   ,p_supervisor_id              	=>	  p_supervisor_id
226   ,p_special_ceiling_step_id     	=>	  p_special_ceiling_step_id
227   ,p_pay_basis_id                	=>	  p_pay_basis_id
228   ,p_assignment_number           	=>	  p_assignment_number
229   ,p_change_reason                	=>	  p_change_reason
230   ,p_comments                     	=>	  p_comments
231   ,p_date_probation_end         	=>	  p_date_probation_end
232   ,p_default_code_comb_id        	=>	  p_default_code_comb_id
233   ,p_employment_category         	=>	  p_employment_category
234   ,p_frequency                  	=>	  p_frequency
235   ,p_internal_address_line       	=>	  p_internal_address_line
236   ,p_manager_flag                	=>	  p_manager_flag
237   ,p_normal_hours                	=>	  p_normal_hours
238   ,p_perf_review_period          	=>	  p_perf_review_period
239   ,p_perf_review_period_frequency 	=>	  p_perf_review_period_frequency
240   ,p_probation_period            	=>	  p_probation_period
241   ,p_probation_unit              	=>	  p_probation_unit
242   ,p_sal_review_period             	=>	  p_sal_review_period
243   ,p_sal_review_period_frequency 	=>	  p_sal_review_period_frequency
244   ,p_set_of_books_id               	=>	  p_set_of_books_id
245   ,p_source_type                 	=>	  p_source_type
246   ,p_time_normal_finish          	=>	  p_time_normal_finish
247   ,p_time_normal_start           	=>	  p_time_normal_start
248   ,p_bargaining_unit_code        	=>	  p_bargaining_unit_code
249   ,p_labour_union_member_flag    	=>	  p_labour_union_member_flag
250   ,p_hourly_salaried_code        	=>	  p_hourly_salaried_code
251   ,p_ass_attribute_category      	=>	  p_ass_attribute_category
252   ,p_ass_attribute1              	=>	  p_ass_attribute1
253   ,p_ass_attribute2              	=>	  p_ass_attribute2
254   ,p_ass_attribute3              	=>	  p_ass_attribute3
255   ,p_ass_attribute4              	=>	  p_ass_attribute4
256   ,p_ass_attribute5              	=>	  p_ass_attribute5
257   ,p_ass_attribute6              	=>	  p_ass_attribute6
258   ,p_ass_attribute7              	=>	  p_ass_attribute7
259   ,p_ass_attribute8              	=>	  p_ass_attribute8
260   ,p_ass_attribute9              	=>	  p_ass_attribute9
261   ,p_ass_attribute10             	=>	  p_ass_attribute10
262   ,p_ass_attribute11             	=>	  p_ass_attribute11
263   ,p_ass_attribute12             	=>	  p_ass_attribute12
264   ,p_ass_attribute13             	=>	  p_ass_attribute13
265   ,p_ass_attribute14             	=>	  p_ass_attribute14
266   ,p_ass_attribute15             	=>	  p_ass_attribute15
267   ,p_ass_attribute16             	=>	  p_ass_attribute16
268   ,p_ass_attribute17             	=>	  p_ass_attribute17
269   ,p_ass_attribute18             	=>	  p_ass_attribute18
270   ,p_ass_attribute19             	=>	  p_ass_attribute19
271   ,p_ass_attribute20             	=>	  p_ass_attribute20
272   ,p_ass_attribute21             	=>	  p_ass_attribute21
273   ,p_ass_attribute22             	=>	  p_ass_attribute22
274   ,p_ass_attribute23             	=>	  p_ass_attribute23
275   ,p_ass_attribute24             	=>	  p_ass_attribute24
276   ,p_ass_attribute25             	=>	  p_ass_attribute25
277   ,p_ass_attribute26             	=>	  p_ass_attribute26
278   ,p_ass_attribute27             	=>	  p_ass_attribute27
279   ,p_ass_attribute28             	=>	  p_ass_attribute28
280   ,p_ass_attribute29             	=>	  p_ass_attribute29
281   ,p_ass_attribute30             	=>	  p_ass_attribute30
282   ,p_title                       	=>	  p_title
283   ,p_scl_segment1                	=>	  p_tax_unit
284   ,p_scl_segment2               	=>	  p_timecard_approver
285   ,p_scl_segment3               	=>	  p_timecard_required
286   ,p_scl_segment4               	=>	  p_work_schedule
287   ,p_scl_segment5               	=>	  p_gov_emp_sector
288   ,p_scl_segment6               	=>	  p_ss_salary_type
289   ,p_scl_concat_segments    		=>	  p_scl_concat_segments
290   ,p_pgp_segment1                	=>	  p_pgp_segment1
291   ,p_pgp_segment2                	=>	  p_pgp_segment2
292   ,p_pgp_segment3                	=>	  p_pgp_segment3
293   ,p_pgp_segment4                	=>	  p_pgp_segment4
294   ,p_pgp_segment5                	=>	  p_pgp_segment5
295   ,p_pgp_segment6                	=>	  p_pgp_segment6
296   ,p_pgp_segment7                	=>	  p_pgp_segment7
297   ,p_pgp_segment8                	=>	  p_pgp_segment8
298   ,p_pgp_segment9                	=>	  p_pgp_segment9
299   ,p_pgp_segment10               	=>	  p_pgp_segment10
300   ,p_pgp_segment11               	=>	  p_pgp_segment11
301   ,p_pgp_segment12               	=>	  p_pgp_segment12
302   ,p_pgp_segment13               	=>	  p_pgp_segment13
303   ,p_pgp_segment14               	=>	  p_pgp_segment14
304   ,p_pgp_segment15               	=>	  p_pgp_segment15
305   ,p_pgp_segment16               	=>	  p_pgp_segment16
306   ,p_pgp_segment17               	=>	  p_pgp_segment17
307   ,p_pgp_segment18               	=>	  p_pgp_segment18
308   ,p_pgp_segment19               	=>	  p_pgp_segment19
309   ,p_pgp_segment20               	=>	  p_pgp_segment20
310   ,p_pgp_segment21               	=>	  p_pgp_segment21
311   ,p_pgp_segment22               	=>	  p_pgp_segment22
312   ,p_pgp_segment23               	=>	  p_pgp_segment23
313   ,p_pgp_segment24               	=>	  p_pgp_segment24
314   ,p_pgp_segment25               	=>	  p_pgp_segment25
315   ,p_pgp_segment26               	=>	  p_pgp_segment26
316   ,p_pgp_segment27               	=>	  p_pgp_segment27
317   ,p_pgp_segment28               	=>	  p_pgp_segment28
318   ,p_pgp_segment29               	=>	  p_pgp_segment29
319   ,p_pgp_segment30               	=>	  p_pgp_segment30
320   ,p_pgp_concat_segments		=>	  p_pgp_concat_segments
321   ,p_contract_id                   	=>	  p_contract_id
322   ,p_establishment_id              	=>	  p_establishment_id
323   ,p_collective_agreement_id       	=>	  p_collective_agreement_id
324   ,p_cagr_id_flex_num              	=>	  p_cagr_id_flex_num
325   ,p_cag_segment1                	=>	  p_cag_segment1
326   ,p_cag_segment2                	=>	  p_cag_segment2
327   ,p_cag_segment3                	=>	  p_cag_segment3
328   ,p_cag_segment4                	=>	  p_cag_segment4
329   ,p_cag_segment5                	=>	  p_cag_segment5
330   ,p_cag_segment6                	=>	  p_cag_segment6
331   ,p_cag_segment7                	=>	  p_cag_segment7
332   ,p_cag_segment8                	=>	  p_cag_segment8
333   ,p_cag_segment9                	=>	  p_cag_segment9
334   ,p_cag_segment10               	=>	  p_cag_segment10
335   ,p_cag_segment11               	=>	  p_cag_segment11
336   ,p_cag_segment12               	=>	  p_cag_segment12
337   ,p_cag_segment13               	=>	  p_cag_segment13
338   ,p_cag_segment14               	=>	  p_cag_segment14
339   ,p_cag_segment15               	=>	  p_cag_segment15
340   ,p_cag_segment16               	=>	  p_cag_segment16
341   ,p_cag_segment17               	=>	  p_cag_segment17
342   ,p_cag_segment18               	=>	  p_cag_segment18
343   ,p_cag_segment19               	=>	  p_cag_segment19
344   ,p_cag_segment20               	=>	  p_cag_segment20
345   ,p_notice_period			=>	  p_notice_period
346   ,p_notice_period_uom			=>	  p_notice_period_uom
347   ,p_employee_category			=>	  p_employee_category
348   ,p_work_at_home			=>	  p_work_at_home
349   ,p_job_post_source_name        	=>	  p_job_post_source_name
350   ,p_grade_ladder_pgm_id	    	=>	  p_grade_ladder_pgm_id
351   ,p_supervisor_assignment_id    	=>	  p_supervisor_assignment_id
352   ,p_group_name                     	=>	  p_group_name
353   ,p_concatenated_segments          	=>	  p_concatenated_segments
354   ,p_cagr_grade_def_id            	=>	  p_cagr_grade_def_id
355   ,p_cagr_concatenated_segments      	=>	  p_cagr_concatenated_segments
356   ,p_assignment_id                  	=>	  p_assignment_id
357   ,p_soft_coding_keyflex_id       	=>	  p_soft_coding_keyflex_id
358   ,p_people_group_id              	=>	  p_people_group_id
359   ,p_object_version_number          	=>	  p_object_version_number
360   ,p_effective_start_date            	=>	  p_effective_start_date
361   ,p_effective_end_date             	=>	  p_effective_end_date
362   ,p_assignment_sequence             	=>	  p_assignment_sequence
363   ,p_comment_id                      	=>	  p_comment_id
364   ,p_other_manager_warning          	=>	  p_other_manager_warning
365   ,p_hourly_salaried_warning        	=>	  p_hourly_salaried_warning
366   ,p_gsp_post_process_warning       	=>	  p_gsp_post_process_warning );
367 
368 if g_debug then
369   hr_utility.set_location('Leaving: '||l_proc, 40);
370 end if;
371 
372 END create_mx_secondary_emp_asg;
373 
374 -- ----------------------------------------------------------------------------
375 -- |--------------------------< update_mx_emp_asg >------------------------------|
376 -- ----------------------------------------------------------------------------
377 
378  PROCEDURE update_mx_emp_asg
379  ( p_validate                     IN     BOOLEAN  DEFAULT   false
380   ,p_effective_date               IN     DATE
381   ,p_datetrack_update_mode        IN     VARCHAR2
382   ,p_assignment_id                IN     NUMBER
383   ,p_object_version_number        IN OUT NOCOPY   NUMBER
384   ,p_supervisor_id                IN     NUMBER   DEFAULT   hr_api.g_number
385   ,p_assignment_number            IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
386   ,p_change_reason                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
387   ,p_assignment_status_type_id    IN     NUMBER   DEFAULT   hr_api.g_number
388   ,p_comments                     IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
389   ,p_date_probation_end           IN     DATE     DEFAULT   hr_api.g_date
390   ,p_default_code_comb_id         IN     NUMBER   DEFAULT   hr_api.g_number
391   ,p_frequency                    IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
392   ,p_internal_address_line        IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
393   ,p_manager_flag                 IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
394   ,p_normal_hours                 IN     NUMBER   DEFAULT   hr_api.g_number
395   ,p_perf_review_period           IN     NUMBER   DEFAULT   hr_api.g_number
396   ,p_perf_review_period_frequency IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
397   ,p_probation_period             IN     NUMBER   DEFAULT   hr_api.g_number
398   ,p_probation_unit               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
399   ,p_sal_review_period            IN     NUMBER   DEFAULT   hr_api.g_number
400   ,p_sal_review_period_frequency  IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
401   ,p_set_of_books_id              IN     NUMBER   DEFAULT   hr_api.g_number
402   ,p_source_type                  IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
403   ,p_time_normal_finish           IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
404   ,p_time_normal_start            IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
405   ,p_bargaining_unit_code         IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
406   ,p_labour_union_member_flag     IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
407   ,p_hourly_salaried_code         IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
408   ,p_ass_attribute_category       IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
409   ,p_ass_attribute1               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
410   ,p_ass_attribute2               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
411   ,p_ass_attribute3               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
412   ,p_ass_attribute4               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
413   ,p_ass_attribute5               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
414   ,p_ass_attribute6               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
415   ,p_ass_attribute7               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
416   ,p_ass_attribute8               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
417   ,p_ass_attribute9               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
418   ,p_ass_attribute10              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
419   ,p_ass_attribute11              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
420   ,p_ass_attribute12              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
421   ,p_ass_attribute13              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
422   ,p_ass_attribute14              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
423   ,p_ass_attribute15              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
424   ,p_ass_attribute16              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
425   ,p_ass_attribute17              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
426   ,p_ass_attribute18              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
427   ,p_ass_attribute19              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
428   ,p_ass_attribute20              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
429   ,p_ass_attribute21              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
430   ,p_ass_attribute22              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
431   ,p_ass_attribute23              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
432   ,p_ass_attribute24              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
433   ,p_ass_attribute25              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
434   ,p_ass_attribute26              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
435   ,p_ass_attribute27              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
436   ,p_ass_attribute28              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
437   ,p_ass_attribute29              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
438   ,p_ass_attribute30              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
439   ,p_title                        IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
440   ,p_tax_unit                     IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
441   ,p_timecard_approver            IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
442   ,p_timecard_required            IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
443   ,p_work_schedule                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
444   ,p_gov_emp_sector               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
445   ,p_ss_salary_type               IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
446   ,p_scl_concat_segments    	  IN 	 VARCHAR2 DEFAULT   hr_api.g_varchar2
447   ,p_concat_segments              IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
448   ,p_contract_id                  IN     NUMBER   DEFAULT   hr_api.g_number
449   ,p_establishment_id             IN     NUMBER   DEFAULT   hr_api.g_number
450   ,p_collective_agreement_id      IN     NUMBER   DEFAULT   hr_api.g_number
451   ,p_cagr_id_flex_num             IN     NUMBER   DEFAULT   hr_api.g_number
452   ,p_cag_segment1                 IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
453   ,p_cag_segment2                 IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
454   ,p_cag_segment3                 IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
455   ,p_cag_segment4                 IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
456   ,p_cag_segment5                 IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
457   ,p_cag_segment6                 IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
458   ,p_cag_segment7                 IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
459   ,p_cag_segment8                 IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
460   ,p_cag_segment9                 IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
461   ,p_cag_segment10                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
462   ,p_cag_segment11                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
463   ,p_cag_segment12                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
464   ,p_cag_segment13                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
465   ,p_cag_segment14                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
466   ,p_cag_segment15                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
467   ,p_cag_segment16                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
468   ,p_cag_segment17                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
469   ,p_cag_segment18                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
470   ,p_cag_segment19                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
471   ,p_cag_segment20                IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
472   ,p_notice_period		  IN     NUMBER   DEFAULT   hr_api.g_number
473   ,p_notice_period_uom            IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
474   ,p_employee_category		  IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
475   ,p_work_at_home		  IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
476   ,p_job_post_source_name	  IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
477   ,p_supervisor_assignment_id     IN     NUMBER   DEFAULT   hr_api.g_number
478   ,p_ss_leaving_reason            IN     VARCHAR2 DEFAULT   hr_api.g_varchar2
479   ,p_cagr_grade_def_id            IN OUT NOCOPY   NUMBER
480   ,p_cagr_concatenated_segments      OUT NOCOPY   VARCHAR2
481   ,p_concatenated_segments           OUT NOCOPY   VARCHAR2
482   ,p_soft_coding_keyflex_id       IN OUT NOCOPY   NUMBER
483   ,p_comment_id                      OUT NOCOPY   NUMBER
484   ,p_effective_start_date            OUT NOCOPY   DATE
485   ,p_effective_end_date              OUT NOCOPY   DATE
486   ,p_no_managers_warning             OUT NOCOPY   BOOLEAN
487   ,p_other_manager_warning           OUT NOCOPY   BOOLEAN
488   ,p_hourly_salaried_warning         OUT NOCOPY   BOOLEAN
489   ,p_gsp_post_process_warning        OUT NOCOPY   VARCHAR2 )
490    IS
491    --
492    -- Declare cursors AND local variables
493    --
494    l_proc                       VARCHAR2(72);
495    l_effective_date             DATE;
496    l_legislation_code           per_business_groups.legislation_code%TYPE;
497    l_business_group_id          per_assignments_f.business_group_id%TYPE;
498 
499    --
500 
501 
502  BEGIN
503 
504   l_proc  := g_package||'update_mx_emp_asg';
505 
506   if g_debug then
507    hr_utility.set_location('Entering:'|| l_proc, 10);
508   end if;
509 
510   -----------------------------------------------------------------
511    -- Check that the Business Group for the assignment is in 'MX'
512   -----------------------------------------------------------------
513    l_business_group_id := hr_mx_utility.get_bg_from_assignment(p_assignment_id);
514 
515  if g_debug then
516   hr_utility.set_location(l_proc, 20);
517  end if;
518 
519    hr_mx_utility.check_bus_grp(l_business_group_id, 'MX');
520 
521  if g_debug then
522   hr_utility.set_location(l_proc, 30);
523  end if;
524 
525   -----------------------------------------------------------------
526    -- Truncate DATE variables
527   -----------------------------------------------------------------
528    l_effective_date := trunc(p_effective_date);
529 
530   -----------------------------------------------------------------
531    -- Validate the Leaving Reason entered, if any.
532   -----------------------------------------------------------------
533    if p_ss_leaving_reason <> hr_api.g_varchar2 then   -- Bug 3777663
534       per_mx_validations.check_SS_Leaving_Reason(p_ss_leaving_reason);
535 
536        if g_debug then
537           hr_utility.set_location(l_proc, 40);
538        end if;
539 
540   -----------------------------------------------------------------
541    -- Load the Leaving Reason onto the Global Variable.
542   -----------------------------------------------------------------
543        g_leaving_reason := p_ss_leaving_reason;
544    else
545        g_leaving_reason := NULL;
546    end if;
547 
548   -----------------------------------------------------------------
549     -- Call update_emp_asg business process
550   -----------------------------------------------------------------
551    hr_assignment_api.update_emp_asg
552   (p_validate                   	=>	  p_validate
553   ,p_effective_date              	=>	  l_effective_date
554   ,p_datetrack_update_mode      	=>	  p_datetrack_update_mode
555   ,p_assignment_id                	=>	  p_assignment_id
556   ,p_object_version_number       	=>	  p_object_version_number
557   ,p_supervisor_id                 	=>	  p_supervisor_id
558   ,p_assignment_number           	=>	  p_assignment_number
559   ,p_change_reason               	=>	  p_change_reason
560   ,p_assignment_status_type_id     	=>	  p_assignment_status_type_id
561   ,p_comments                    	=>	  p_comments
562   ,p_date_probation_end               	=>	  p_date_probation_end
563   ,p_default_code_comb_id          	=>	  p_default_code_comb_id
564   ,p_frequency                   	=>	  p_frequency
565   ,p_internal_address_line       	=>	  p_internal_address_line
566   ,p_manager_flag                	=>	  p_manager_flag
567   ,p_normal_hours                  	=>	  p_normal_hours
568   ,p_perf_review_period            	=>	  p_perf_review_period
569   ,p_perf_review_period_frequency	=>	  p_perf_review_period_frequency
570   ,p_probation_period              	=>	  p_probation_period
571   ,p_probation_unit              	=>	  p_probation_unit
572   ,p_sal_review_period             	=>	  p_sal_review_period
573   ,p_sal_review_period_frequency 	=>	  p_sal_review_period_frequency
574   ,p_set_of_books_id               	=>	  p_set_of_books_id
575   ,p_source_type                 	=>	  p_source_type
576   ,p_time_normal_finish          	=>	  p_time_normal_finish
577   ,p_time_normal_start           	=>	  p_time_normal_start
578   ,p_bargaining_unit_code        	=>	  p_bargaining_unit_code
579   ,p_labour_union_member_flag    	=>	  p_labour_union_member_flag
580   ,p_hourly_salaried_code        	=>	  p_hourly_salaried_code
581   ,p_ass_attribute_category      	=>	  p_ass_attribute_category
582   ,p_ass_attribute1              	=>	  p_ass_attribute1
583   ,p_ass_attribute2              	=>	  p_ass_attribute2
584   ,p_ass_attribute3              	=>	  p_ass_attribute3
585   ,p_ass_attribute4              	=>	  p_ass_attribute4
586   ,p_ass_attribute5              	=>	  p_ass_attribute5
587   ,p_ass_attribute6              	=>	  p_ass_attribute6
588   ,p_ass_attribute7              	=>	  p_ass_attribute7
589   ,p_ass_attribute8              	=>	  p_ass_attribute8
590   ,p_ass_attribute9              	=>	  p_ass_attribute9
591   ,p_ass_attribute10             	=>	  p_ass_attribute10
592   ,p_ass_attribute11             	=>	  p_ass_attribute11
593   ,p_ass_attribute12             	=>	  p_ass_attribute12
594   ,p_ass_attribute13             	=>	  p_ass_attribute13
595   ,p_ass_attribute14             	=>	  p_ass_attribute14
596   ,p_ass_attribute15             	=>	  p_ass_attribute15
597   ,p_ass_attribute16             	=>	  p_ass_attribute16
598   ,p_ass_attribute17             	=>	  p_ass_attribute17
599   ,p_ass_attribute18             	=>	  p_ass_attribute18
600   ,p_ass_attribute19             	=>	  p_ass_attribute19
601   ,p_ass_attribute20             	=>	  p_ass_attribute20
602   ,p_ass_attribute21             	=>	  p_ass_attribute21
603   ,p_ass_attribute22             	=>	  p_ass_attribute22
604   ,p_ass_attribute23             	=>	  p_ass_attribute23
605   ,p_ass_attribute24             	=>	  p_ass_attribute24
606   ,p_ass_attribute25             	=>	  p_ass_attribute25
607   ,p_ass_attribute26             	=>	  p_ass_attribute26
608   ,p_ass_attribute27             	=>	  p_ass_attribute27
609   ,p_ass_attribute28             	=>	  p_ass_attribute28
610   ,p_ass_attribute29             	=>	  p_ass_attribute29
611   ,p_ass_attribute30             	=>	  p_ass_attribute30
612   ,p_title                       	=>	  p_title
613   ,p_segment1				=>	  p_tax_unit
614   ,p_segment2			  	=>	  p_timecard_approver
615   ,p_segment3			  	=>	  p_timecard_required
616   ,p_segment4			  	=>	  p_work_schedule
617   ,p_segment5			  	=>	  p_gov_emp_sector
618   ,p_segment6			 	=>	  p_ss_salary_type
619   ,p_concat_segments             	=>	  p_concat_segments
620   ,p_contract_id                 	=>	  p_contract_id
621   ,p_establishment_id            	=>	  p_establishment_id
622   ,p_collective_agreement_id     	=>	  p_collective_agreement_id
623   ,p_cagr_id_flex_num            	=>	  p_cagr_id_flex_num
624   ,p_cag_segment1                	=>	  p_cag_segment1
625   ,p_cag_segment2                	=>	  p_cag_segment2
626   ,p_cag_segment3                	=>	  p_cag_segment3
627   ,p_cag_segment4                	=>	  p_cag_segment4
628   ,p_cag_segment5                	=>	  p_cag_segment5
629   ,p_cag_segment6                	=>	  p_cag_segment6
630   ,p_cag_segment7                	=>	  p_cag_segment7
631   ,p_cag_segment8                	=>	  p_cag_segment8
632   ,p_cag_segment9                	=>	  p_cag_segment9
633   ,p_cag_segment10               	=>	  p_cag_segment10
634   ,p_cag_segment11               	=>	  p_cag_segment11
635   ,p_cag_segment12               	=>	  p_cag_segment12
636   ,p_cag_segment13               	=>	  p_cag_segment13
637   ,p_cag_segment14               	=>	  p_cag_segment14
638   ,p_cag_segment15               	=>	  p_cag_segment15
639   ,p_cag_segment16               	=>	  p_cag_segment16
640   ,p_cag_segment17               	=>	  p_cag_segment17
641   ,p_cag_segment18               	=>	  p_cag_segment18
642   ,p_cag_segment19               	=>	  p_cag_segment19
643   ,p_cag_segment20               	=>	  p_cag_segment20
644   ,p_notice_period			=>	  p_notice_period
645   ,p_notice_period_uom			=>	  p_notice_period_uom
646   ,p_employee_category			=>	  p_employee_category
647   ,p_work_at_home			=>	  p_work_at_home
648   ,p_job_post_source_name		=>	  p_job_post_source_name
649   ,p_supervisor_assignment_id    	=>	  p_supervisor_assignment_id
650   ,p_cagr_grade_def_id          	=>	  p_cagr_grade_def_id
651   ,p_cagr_concatenated_segments     	=>	  p_cagr_concatenated_segments
652   ,p_concatenated_segments           	=>	  p_concatenated_segments
653   ,p_soft_coding_keyflex_id       	=>	  p_soft_coding_keyflex_id
654   ,p_comment_id                      	=>	  p_comment_id
655   ,p_effective_start_date            	=>	  p_effective_start_date
656   ,p_effective_end_date              	=>	  p_effective_end_date
657   ,p_no_managers_warning            	=>	  p_no_managers_warning
658   ,p_other_manager_warning           	=>	  p_other_manager_warning
659   ,p_hourly_salaried_warning         	=>	  p_hourly_salaried_warning
660   ,p_gsp_post_process_warning        	=>	  p_gsp_post_process_warning );
661 
662 
663    if g_debug then
664        hr_utility.set_location('Leaving: '||l_proc, 50);
665    end if;
666 --
667 End update_mx_emp_asg;
668 
669 
670 --   --------------------------------------------------------------------------
671 -- |--------------------< update_mx_emp_asg_criteria >-------------------------|
672 --   --------------------------------------------------------------------------
673 
674 PROCEDURE update_mx_emp_asg_criteria
675  (p_effective_date                IN     DATE
676   ,p_datetrack_update_mode        IN     VARCHAR2
677   ,p_assignment_id                IN     NUMBER
678   ,p_validate                     IN     BOOLEAN  DEFAULT FALSE
679   ,p_called_from_mass_update      IN     BOOLEAN  DEFAULT FALSE
680   ,p_grade_id                     IN     NUMBER   DEFAULT HR_API.G_NUMBER
681   ,p_position_id                  IN     NUMBER   DEFAULT HR_API.G_NUMBER
682   ,p_job_id                       IN     NUMBER   DEFAULT HR_API.G_NUMBER
683   ,p_payroll_id                   IN     NUMBER   DEFAULT HR_API.G_NUMBER
684   ,p_location_id                  IN     NUMBER   DEFAULT HR_API.G_NUMBER
685   ,p_organization_id              IN     NUMBER   DEFAULT HR_API.G_NUMBER
686   ,p_pay_basis_id                 IN     NUMBER   DEFAULT HR_API.G_NUMBER
687   ,p_segment1                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
688   ,p_segment2                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
689   ,p_segment3                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
690   ,p_segment4                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
691   ,p_segment5                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
692   ,p_segment6                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
693   ,p_segment7                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
694   ,p_segment8                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
695   ,p_segment9                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
696   ,p_segment10                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
697   ,p_segment11                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
698   ,p_segment12                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
699   ,p_segment13                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
700   ,p_segment14                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
701   ,p_segment15                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
702   ,p_segment16                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
703   ,p_segment17                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
704   ,p_segment18                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
705   ,p_segment19                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
706   ,p_segment20                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
707   ,p_segment21                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
708   ,p_segment22                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
709   ,p_segment23                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
710   ,p_segment24                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
711   ,p_segment25                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
712   ,p_segment26                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
713   ,p_segment27                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
714   ,p_segment28                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
715   ,p_segment29                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
716   ,p_segment30                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
717   ,p_employment_category          IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
718   ,p_concat_segments              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
719   ,p_contract_id                  IN     NUMBER   DEFAULT HR_API.G_NUMBER
720   ,p_establishment_id             IN     NUMBER   DEFAULT HR_API.G_NUMBER
721   ,p_tax_unit                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
722   ,p_grade_ladder_pgm_id          IN     NUMBER   DEFAULT HR_API.G_NUMBER
723   ,p_supervisor_assignment_id     IN     NUMBER   DEFAULT HR_API.G_NUMBER
724   ,p_ss_leaving_reason            IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
725   ,p_object_version_number        IN OUT NOCOPY NUMBER
726   ,p_special_ceiling_step_id      IN OUT NOCOPY NUMBER
727   ,p_people_group_id              IN OUT NOCOPY NUMBER
728   ,p_soft_coding_keyflex_id       IN OUT NOCOPY NUMBER
729   ,p_group_name                      OUT NOCOPY VARCHAR2
730   ,p_effective_start_date            OUT NOCOPY DATE
731   ,p_effective_end_date              OUT NOCOPY DATE
732   ,p_org_now_no_manager_warning      OUT NOCOPY BOOLEAN
733   ,p_other_manager_warning           OUT NOCOPY BOOLEAN
734   ,p_spp_delete_warning              OUT NOCOPY BOOLEAN
735   ,p_entries_changed_warning         OUT NOCOPY VARCHAR2
736   ,p_tax_district_changed_warning    OUT NOCOPY BOOLEAN
737   ,p_concatenated_segments           OUT NOCOPY VARCHAR2
738   ,p_gsp_post_process_warning        OUT NOCOPY VARCHAR2 )
739    IS
740 --
741   -- Declare cursors AND local variables
742   --
743   -- Declare variables
744   --
745   l_effective_date  DATE;
746   l_business_group_id          per_assignments_f.business_group_id%TYPE;
747 
748   --
749   l_proc            VARCHAR2(72);
750   --
751   --
752 BEGIN
753 
754   l_proc := g_package||'update_mx_emp_asg_criteria';
755 
756   if g_debug then
757    hr_utility.set_location('Entering:'|| l_proc, 10);
758   end if;
759 
760   -----------------------------------------------------------------
761   -- Initialise local variable
762   -----------------------------------------------------------------
763   l_effective_date := trunc(p_effective_date);
764 
765   -----------------------------------------------------------------
766    -- Check that the Business Group for the assignment is in 'MX'
767   -----------------------------------------------------------------
768    l_business_group_id := hr_mx_utility.get_bg_from_assignment(p_assignment_id);
769 
770  if g_debug then
771   hr_utility.set_location(l_proc, 20);
772  end if;
773 
774    hr_mx_utility.check_bus_grp(l_business_group_id, 'MX');
775 
776  if g_debug then
777   hr_utility.set_location(l_proc, 30);
778  end if;
779 
780   -----------------------------------------------------------------
781   -- Validate the Leaving Reason entered, if any.
782   -----------------------------------------------------------------
783   per_mx_validations.check_SS_Leaving_Reason(p_ss_leaving_reason);
784 
785    if g_debug then
786        hr_utility.set_location(l_proc, 40);
787    end if;
788 
789   -----------------------------------------------------------------
790   -- Load the Leaving Reason onto the Global Variable.
791   -----------------------------------------------------------------
792   g_leaving_reason := p_ss_leaving_reason;
793 
794   -----------------------------------------------------------------
795   -- Call update_mx_emp_asg_criteria
796   -----------------------------------------------------------------
797 
798   hr_assignment_api.update_emp_asg_criteria
799   (p_effective_date               =>	 l_effective_date
800   ,p_datetrack_update_mode        =>	 p_datetrack_update_mode
801   ,p_assignment_id                =>	 p_assignment_id
802   ,p_validate                     =>	 p_validate
803   ,p_called_from_mass_update      =>	 p_called_from_mass_update
804   ,p_grade_id                     =>	 p_grade_id
805   ,p_position_id                  =>	 p_position_id
806   ,p_job_id                       =>	 p_job_id
807   ,p_payroll_id                   =>	 p_payroll_id
808   ,p_location_id                  =>	 p_location_id
809   ,p_organization_id              =>	 p_organization_id
810   ,p_pay_basis_id                 =>	 p_pay_basis_id
811   ,p_segment1                     =>	 p_segment1
812   ,p_segment2                     =>	 p_segment2
813   ,p_segment3                     =>	 p_segment3
814   ,p_segment4                     =>	 p_segment4
815   ,p_segment5                     =>	 p_segment5
816   ,p_segment6                     =>	 p_segment6
817   ,p_segment7                     =>	 p_segment7
818   ,p_segment8                     =>	 p_segment8
819   ,p_segment9                     =>	 p_segment9
820   ,p_segment10                    =>	 p_segment10
821   ,p_segment11                    =>	 p_segment11
822   ,p_segment12                    =>	 p_segment12
823   ,p_segment13                    =>	 p_segment13
824   ,p_segment14                    =>	 p_segment14
825   ,p_segment15                    =>	 p_segment15
826   ,p_segment16                    =>	 p_segment16
827   ,p_segment17                    =>	 p_segment17
828   ,p_segment18                    =>	 p_segment18
829   ,p_segment19                    =>	 p_segment19
830   ,p_segment20                    =>	 p_segment20
831   ,p_segment21                    =>	 p_segment21
832   ,p_segment22                    =>	 p_segment22
833   ,p_segment23                    =>	 p_segment23
834   ,p_segment24                    =>	 p_segment24
835   ,p_segment25                    =>	 p_segment25
836   ,p_segment26                    =>	 p_segment26
837   ,p_segment27                    =>	 p_segment27
838   ,p_segment28                    =>	 p_segment28
839   ,p_segment29                    =>	 p_segment29
840   ,p_segment30                    =>	 p_segment30
841   ,p_employment_category          =>	 p_employment_category
842   ,p_concat_segments              =>	 p_concat_segments
843   ,p_contract_id                  =>	 p_contract_id
844   ,p_establishment_id             =>	 p_establishment_id
845   ,p_scl_segment1                 =>	 p_tax_unit
846   ,p_grade_ladder_pgm_id          =>	 p_grade_ladder_pgm_id
847   ,p_supervisor_assignment_id     =>	 p_supervisor_assignment_id
848   ,p_object_version_number        =>	 p_object_version_number
849   ,p_special_ceiling_step_id      =>	 p_special_ceiling_step_id
850   ,p_people_group_id              =>	 p_people_group_id
851   ,p_soft_coding_keyflex_id       =>	 p_soft_coding_keyflex_id
852   ,p_group_name                   =>	 p_group_name
853   ,p_effective_start_date         =>	 p_effective_start_date
854   ,p_effective_end_date           =>	 p_effective_end_date
855   ,p_org_now_no_manager_warning   =>	 p_org_now_no_manager_warning
856   ,p_other_manager_warning        =>	 p_other_manager_warning
857   ,p_spp_delete_warning           =>	 p_spp_delete_warning
858   ,p_entries_changed_warning      =>	 p_entries_changed_warning
859   ,p_tax_district_changed_warning =>	 p_tax_district_changed_warning
860   ,p_concatenated_segments        =>	 p_concatenated_segments
861   ,p_gsp_post_process_warning     =>	 p_gsp_post_process_warning );
862 
863    if g_debug then
864        hr_utility.set_location('Leaving: '||l_proc, 50);
865    end if;
866 
867 END update_mx_emp_asg_criteria;
868 
869 
870 --   --------------------------------------------------------------------------
871 -- |--------------------< mx_final_process_emp_asg >-------------------------|
872 --   --------------------------------------------------------------------------
873 
874 PROCEDURE mx_final_process_emp_asg
875   (p_validate                      IN     BOOLEAN  DEFAULT FALSE
876   ,p_assignment_id                 IN     NUMBER
877   ,p_object_version_number         IN OUT NOCOPY NUMBER
878   ,p_final_process_date            IN     DATE
879   ,p_ss_leaving_reason             IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
880   ,p_effective_start_date             OUT NOCOPY DATE
881   ,p_effective_end_date               OUT NOCOPY DATE
882   ,p_org_now_no_manager_warning       OUT NOCOPY BOOLEAN
883   ,p_asg_future_changes_warning       OUT NOCOPY BOOLEAN
884   ,p_entries_changed_warning          OUT NOCOPY VARCHAR2
885   ) IS
886 --
887   -- Declare cursors AND local variables
888   --
889   -- Declare variables
890   --
891   l_final_process_date  DATE;
892   l_business_group_id   per_assignments_f.business_group_id%TYPE;
893 
894   --
895   l_proc            VARCHAR2(72);
896   --
897   --
898 BEGIN
899 
900   l_proc := g_package||'mx_final_process_emp_asg';
901 
902   if g_debug then
903    hr_utility.set_location('Entering:'|| l_proc, 10);
904   end if;
905 
906   -----------------------------------------------------------------
907   -- Initialise local variable
908   -----------------------------------------------------------------
909   l_final_process_date := trunc(p_final_process_date);
910 
911   -----------------------------------------------------------------
912    -- Check that the Business Group for the assignment is in 'MX'
913   -----------------------------------------------------------------
914    l_business_group_id := hr_mx_utility.get_bg_from_assignment(p_assignment_id);
915 
916  if g_debug then
917   hr_utility.set_location(l_proc, 20);
918  end if;
919 
920    hr_mx_utility.check_bus_grp(l_business_group_id, 'MX');
921 
922  if g_debug then
923   hr_utility.set_location(l_proc, 30);
924  end if;
925 
926   -----------------------------------------------------------------
927   -- Validate the Leaving Reason entered.
928   -----------------------------------------------------------------
929   per_mx_validations.check_SS_Leaving_Reason(p_ss_leaving_reason);
930 
931    if g_debug then
932        hr_utility.set_location(l_proc, 40);
933    end if;
934 
935   -----------------------------------------------------------------
936   -- Load the Leaving Reason onto the Global Variable.
937   -----------------------------------------------------------------
938   g_leaving_reason := p_ss_leaving_reason;
939 
940   -----------------------------------------------------------------
941   -- Call update_mx_emp_asg_criteria
942   -----------------------------------------------------------------
943 
944   hr_assignment_api.final_process_emp_asg
945   (p_validate                      =>	p_validate
946   ,p_assignment_id                 =>	p_assignment_id
947   ,p_object_version_number         =>	p_object_version_number
948   ,p_final_process_date            =>	l_final_process_date
949   ,p_effective_start_date          =>	p_effective_start_date
950   ,p_effective_end_date            =>	p_effective_end_date
951   ,p_org_now_no_manager_warning    =>	p_org_now_no_manager_warning
952   ,p_asg_future_changes_warning    =>	p_asg_future_changes_warning
953   ,p_entries_changed_warning       =>	p_entries_changed_warning );
954 
955    if g_debug then
956        hr_utility.set_location('Leaving: '||l_proc, 50);
957    end if;
958 
959 END mx_final_process_emp_asg;
960 
961 BEGIN
962 	g_debug    := hr_utility.debug_enabled;
963 	g_package  := 'hr_mx_assignment_api.';
964 
965 END hr_mx_assignment_api;