DBA Data[Home] [Help]

PACKAGE: APPS.HR_IN_ASSIGNMENT_API

Source


1 PACKAGE hr_in_assignment_api AS
2 /* $Header: peasgini.pkh 120.4 2005/10/20 03:00 abhjain noship $ */
3 /*#
4  * This package contains the assignment APIs.
5  * @rep:scope public
6  * @rep:product PER
7  * @rep:displayname Assignment for India
8 */
9 --
10 -- ----------------------------------------------------------------------------
11 -- |-----------------------< create_in_secondary_emp_asg >--------------------|
12 -- ----------------------------------------------------------------------------
13 --
14 -- {Start Of Comments}
15 /*#
16  * This API creates secondary employment assignment for an employee.
17  *
18  * It creates additional non-primary assignments for an existing employee in a
19  * IN business Group. It calls create_secondary_emp_asg. You cannot use it to
20  * create the primary assignment. The primary assignment is created when you
21  * create the employee.
22  *
23  * <p><b>Licensing</b><br>
24  * This API is licensed for use with Human Resources.
25  *
26  * <p><b>Prerequisites</b><br>
27  * The person (p_person_id) and the organization (p_organization_id) must exist
28  * at the effective start date of the assignment (p_effective_date).
29  *
30  * <p><b>Post Success</b><br>
31  * A new secondary assignment is created for the employee.
32  *
33  * <p><b>Post Failure</b><br>
34  * The API does not create the assignment and raises an error.
35  *
36  * @param p_validate If true, then validation alone will be performed and the
37  * database will remain unchanged. If false and all validation checks pass,
38  * then the database will be modified.
39  * @param p_effective_date Determines when the DateTrack operation comes into
40  * force.
41  * @param p_person_id Identifies the person for whom you create the secondary
42  * assignment record.
43  * @param p_organization_id Identifies the organization of the secondary
44  * assignment.
45  * @param p_grade_id Identifies the grade of the secondary assignment.
46  * @param p_position_id Identifies the position of the secondary assignment.
47  * @param p_job_id Identifies the job of the secondary assignment.
48  * @param p_assignment_status_type_id Identifies the assignment status of the
49  * secondary assignment. Valid values are defined by 'PER_ASS_SYS_STATUS'
50  * lookup type.
51  * @param p_payroll_id Identifies the payroll for the secondary assignment.
52  * @param p_location_id Identifies the location of the secondary assignment.
53  * @param p_supervisor_id Identifies the supervisor for the secondary
54  * assignment. The value refers to the supervisor's person record.
55  * @param p_special_ceiling_step_id Highest allowed step for the grade scale
56  * associated with the grade of the secondary assignment.
57  * @param p_pay_basis_id Salary basis for the secondary assignment.
58  * @param p_assignment_number If p_validate is false then the parameter value
59  * passed is used as the assignment number. If no value is passed then the
60  * assignment number is generated. If p_validate is true null is returned.
61  * @param p_change_reason Reason for the assignment status change. If there is
62  * no change reason the parameter can be null. Valid values are defined in the
63  * 'EMP_ASSIGN_REASON' lookup type.
64  * @param p_comments Comment text.
65  * @param p_date_probation_end End date of probation period.
66  * @param p_default_code_comb_id Identifier for the General Ledger Accounting
67  * Flexfield combination that applies to this assignment.
68  * @param p_employment_category Employment category of the assignment. Valid
69  * values are defined in the 'EMP_CAT' lookup type.
70  * @param p_frequency Frequency associated with the defined normal working
71  * hours. Valid values are defined in the 'FREQUENCY' lookup type.
72  * @param p_internal_address_line Internal address identified with the
73  * secondary assignment.
74  * @param p_manager_flag Indicates whether the employee is a manager.
75  * @param p_normal_hours Normal working hours for this assignment.
76  * @param p_perf_review_period Length of performance review period.
77  * @param p_perf_review_period_frequency Units of performance review period.
78  * Valid values are defined in the 'FREQUENCY' lookup type.
79  * @param p_probation_period Length of probation period.
80  * @param p_probation_unit Units of probation period. Valid values are defined
81  * in the 'QUALIFYING_UNITS' lookup type.
82  * @param p_sal_review_period Length of salary review period.
83  * @param p_sal_review_period_frequency Units of salary review period. Valid
84  * values are defined in the 'FREQUENCY' lookup type.
85  * @param p_set_of_books_id Identifies General Ledger set of books.
86  * @param p_source_type Recruitment activity which this assignment is sourced
87  * from. Valid values are defined in the 'REC_TYPE' lookup type.
88  * @param p_time_normal_finish Normal work finish time.
89  * @param p_time_normal_start Normal work start time.
90  * @param p_bargaining_unit_code Code for bargaining unit. Valid values are
91  * defined in the 'BARGAINING_UNIT_CODE' lookup type.
92  * @param p_labour_union_member_flag Indicates whether the employee is a labour
93  * union member. A value 'Y' indicates that the employee is a labour union
94  * member.
95  * @param p_hourly_salaried_code Identifies if the assignment is paid hourly or
96  * is salaried. Valid values are defined in the 'HOURLY_SALARIED_CODE' lookup
97  * type.
98  * @param p_ass_attribute_category This context value determines which
99  * Flexfield Structure to use with the Descriptive flexfield segments.
100  * @param p_ass_attribute1 Descriptive flexfield segment.
101  * @param p_ass_attribute2 Descriptive flexfield segment.
102  * @param p_ass_attribute3 Descriptive flexfield segment.
103  * @param p_ass_attribute4 Descriptive flexfield segment.
104  * @param p_ass_attribute5 Descriptive flexfield segment.
105  * @param p_ass_attribute6 Descriptive flexfield segment.
106  * @param p_ass_attribute7 Descriptive flexfield segment.
107  * @param p_ass_attribute8 Descriptive flexfield segment.
108  * @param p_ass_attribute9 Descriptive flexfield segment.
109  * @param p_ass_attribute10 Descriptive flexfield segment.
110  * @param p_ass_attribute11 Descriptive flexfield segment.
111  * @param p_ass_attribute12 Descriptive flexfield segment.
112  * @param p_ass_attribute13 Descriptive flexfield segment.
113  * @param p_ass_attribute14 Descriptive flexfield segment.
114  * @param p_ass_attribute15 Descriptive flexfield segment.
115  * @param p_ass_attribute16 Descriptive flexfield segment.
116  * @param p_ass_attribute17 Descriptive flexfield segment.
117  * @param p_ass_attribute18 Descriptive flexfield segment.
118  * @param p_ass_attribute19 Descriptive flexfield segment.
119  * @param p_ass_attribute20 Descriptive flexfield segment.
120  * @param p_ass_attribute21 Descriptive flexfield segment.
121  * @param p_ass_attribute22 Descriptive flexfield segment.
122  * @param p_ass_attribute23 Descriptive flexfield segment.
123  * @param p_ass_attribute24 Descriptive flexfield segment.
124  * @param p_ass_attribute25 Descriptive flexfield segment.
125  * @param p_ass_attribute26 Descriptive flexfield segment.
126  * @param p_ass_attribute27 Descriptive flexfield segment.
127  * @param p_ass_attribute28 Descriptive flexfield segment.
128  * @param p_ass_attribute29 Descriptive flexfield segment.
129  * @param p_ass_attribute30 Descriptive flexfield segment.
130  * @param p_title Obsolete parameter, do not use.
131  * @param p_gre_legal_entity GRE or Legal Entity
132  * @param p_pf_organization PF Organization
133  * @param p_prof_tax_organization Professional Tax Organization
134  * @param p_esi_organization ESI Organization
135  * @param p_factory Factory
136  * @param p_establishment Establishment
137  * @param p_covered_by_gratuity_act Covered by Gratuity act flag. Valid values
138  * are defined by 'YES_NO' lookup type
139  * @param p_having_substantial_interest Having substantial interest flag.Valid
140  * values are defined by 'YES_NO' lookup type
141  * @param p_director Director flag. Valid values are defined by 'YES_NO' lookup
142  * type
143  * @param p_specified Specified Employee flag. Valid values are defined by
144  * 'YES_NO' lookup type.
145  * @param p_scl_concat_segments Concatenated segments for Soft Coded Key
146  * Flexfield. Concatenated segments can be supplied instead of individual
147  * segments.
148  * @param p_pgp_segment1 People group key flexfield segment.
149  * @param p_pgp_segment2 People group key flexfield segment.
150  * @param p_pgp_segment3 People group key flexfield segment.
151  * @param p_pgp_segment4 People group key flexfield segment.
152  * @param p_pgp_segment5 People group key flexfield segment.
153  * @param p_pgp_segment6 People group key flexfield segment.
154  * @param p_pgp_segment7 People group key flexfield segment.
155  * @param p_pgp_segment8 People group key flexfield segment.
156  * @param p_pgp_segment9 People group key flexfield segment.
157  * @param p_pgp_segment10 People group key flexfield segment.
158  * @param p_pgp_segment11 People group key flexfield segment.
159  * @param p_pgp_segment12 People group key flexfield segment.
160  * @param p_pgp_segment13 People group key flexfield segment.
161  * @param p_pgp_segment14 People group key flexfield segment.
162  * @param p_pgp_segment15 People group key flexfield segment.
163  * @param p_pgp_segment16 People group key flexfield segment.
164  * @param p_pgp_segment17 People group key flexfield segment.
165  * @param p_pgp_segment18 People group key flexfield segment.
166  * @param p_pgp_segment19 People group key flexfield segment.
167  * @param p_pgp_segment20 People group key flexfield segment.
168  * @param p_pgp_segment21 People group key flexfield segment.
169  * @param p_pgp_segment22 People group key flexfield segment.
170  * @param p_pgp_segment23 People group key flexfield segment.
171  * @param p_pgp_segment24 People group key flexfield segment.
172  * @param p_pgp_segment25 People group key flexfield segment.
173  * @param p_pgp_segment26 People group key flexfield segment.
174  * @param p_pgp_segment27 People group key flexfield segment.
175  * @param p_pgp_segment28 People group key flexfield segment.
176  * @param p_pgp_segment29 People group key flexfield segment.
177  * @param p_pgp_segment30 People group key flexfield segment.
178  * @param p_pgp_concat_segments Concatenated segments for People Group Key
179  * Flexfield. Concatenated segments can be supplied instead of individual
180  * segments.
181  * @param p_contract_id Contract associated with this assignment.
182  * @param p_establishment_id This identifies the establishment Legal Entity for
183  * this assignment.
184  * @param p_collective_agreement_id Collective Agreement that applies to this
185  * assignment.
186  * @param p_cagr_id_flex_num Identifier for the structure from CAGR Key
187  * flexfield to use for this assignment.
188  * @param p_cag_segment1 CAGR Key Flexfield segment.
189  * @param p_cag_segment2 CAGR Key Flexfield segment.
190  * @param p_cag_segment3 CAGR Key Flexfield segment.
191  * @param p_cag_segment4 CAGR Key Flexfield segment.
192  * @param p_cag_segment5 CAGR Key Flexfield segment.
193  * @param p_cag_segment6 CAGR Key Flexfield segment.
194  * @param p_cag_segment7 CAGR Key Flexfield segment.
195  * @param p_cag_segment8 CAGR Key Flexfield segment.
196  * @param p_cag_segment9 CAGR Key Flexfield segment.
197  * @param p_cag_segment10 CAGR Key Flexfield segment.
198  * @param p_cag_segment11 CAGR Key Flexfield segment.
199  * @param p_cag_segment12 CAGR Key Flexfield segment.
200  * @param p_cag_segment13 CAGR Key Flexfield segment.
201  * @param p_cag_segment14 CAGR Key Flexfield segment.
202  * @param p_cag_segment15 CAGR Key Flexfield segment.
203  * @param p_cag_segment16 CAGR Key Flexfield segment.
204  * @param p_cag_segment17 CAGR Key Flexfield segment.
205  * @param p_cag_segment18 CAGR Key Flexfield segment.
206  * @param p_cag_segment19 CAGR Key Flexfield segment.
207  * @param p_cag_segment20 CAGR Key Flexfield segment.
208  * @param p_notice_period Length of notice period.
209  * @param p_notice_period_uom Units for notice period. Valid values are defined
210  * in the 'QUALIFYING_UNITS' lookup type.
211  * @param p_employee_category Employee Category of the assignment. Valid values
212  * are defined in the 'EMPLOYEE_CATG' lookup type.
213  * @param p_work_at_home Indicate whether this assignment is to work at home.
214  * Valid values are defined in the 'YES_NO' lookup type.
215  * @param p_job_post_source_name The source of the job posting that was
216  * answered for this assignment.
217  * @param p_grade_ladder_pgm_id Grade Ladder for this assignment.
218  * @param p_supervisor_assignment_id Supervisor's assignment identification
219  * that is responsible for supervising this assignment.
220  * @param p_group_name If p_validate is false, set to the People Group Key
221  * Flexfield concatenated segments. If p_validate is true, set to null.
222  * @param p_concatenated_segments If p_validate is false, set to Soft Coded Key
223  * Flexfield concatenated segments, if p_validate is true, set to null.
224  * @param p_cagr_grade_def_id If a value is passed in for this parameter, it
225  * identifies an existing CAGR Key Flexfield combination to associate with the
226  * assignment, and the segment values are ignored. If a value is not passed in,
227  * then the individual CAGR Key Flexfield segments supplied will be used to
228  * choose an existing combination or create a new combination. When the API
229  * completes, if p_validate is false, then this uniquely identifies the
230  * associated combination of the CAGR Key flexfield for this assignment. If
231  * p_validate is true, then set to null.
232  * @param p_cagr_concatenated_segments If p_validate is false CAGR Key
233  * Flexfield concatenated segments is generated. If p_validate is true, it is
234  * set to null.
235  * @param p_assignment_id If p_validate is false, then this uniquely identifies
236  * the created secondary assignment. If p_validate is true, then set to null.
237  * @param p_soft_coding_keyflex_id If a value is passed in for this parameter,
238  * it identifies an existing Soft Coded Key Flexfield combination to associate
239  * with the assignment, and segment values are ignored. If a value is not
240  * passed in, then the individual Soft Coded Key Flexfield segments supplied
241  * will be used to choose an existing combination or create a new combination.
242  * When the API completes, if p_validate is false, then this uniquely
243  * identifies the associated combination of the Soft Coded Key flexfield for
244  * this assignment. If p_validate is true, then set to null.
245  * @param p_people_group_id If a value is passed in for this parameter, it
246  * identifies an existing People Group Key Flexfield combination to associate
247  * with the assignment, and segment values are ignored. If a value is not
248  * passed in, then the individual People Group Key Flexfield segments supplied
249  * will be used to choose an existing combination or create a new combination.
250  * When the API completes, if p_validate is false, then this uniquely
251  * identifies the associated combination of the People Group Key flexfield for
252  * this assignment. If p_validate is true, then set to null.
253  * @param p_object_version_number If p_validate is false, then set to the
254  * version number of the created secondary assignment. If p_validate is true,
255  * then the value will be null.
256  * @param p_effective_start_date If p_validate is false, then set to the
257  * earliest effective start date for the created secondary assignment. If
258  * p_validate is true, then set to null.
259  * @param p_effective_end_date If p_validate is false, then set to the
260  * effective end date for the created secondary assignment. If p_validate is
261  * true, then set to null.
262  * @param p_assignment_sequence If p_validate is false, then an automatically
263  * incremented number is associated with this assignment, depending on the
264  * number of assignment which already exist. If p_validate is true then set to
265  * null.
266  * @param p_comment_id If p_validate is false and comment text was provided,
267  * then will be set to the identifier of the created secondary assignment
268  * comment record. If p_validate is true or no comment text was provided, then
269  * will be null.
270  * @param p_other_manager_warning If set to true, then a manager existed in the
271  * organization prior to calling this API and the manager flag has been set to
272  * 'Y' for yes.
273  * @param p_hourly_salaried_warning Set to true if combination values entered
274  * for pay_basis and hourly_salaried_code are invalid date p_effective_date.
275  * @param p_gsp_post_process_warning Warning message name from
276  * pqh_gsp_post_process.
277  * @rep:displayname Create Secondary Employee Assignment for India
278  * @rep:category BUSINESS_ENTITY PER_CWK_ASG
279  * @rep:lifecycle active
280  * @rep:category MISC_EXTENSIONS HR_DATAPUMP
281  * @rep:scope public
282  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
283 */
284 --
285 -- {End Of Comments}
286 --
287 PROCEDURE create_in_secondary_emp_asg
288 (p_validate                     IN     BOOLEAN   DEFAULT   false
289 ,p_effective_date               IN     DATE
290 ,p_person_id                    IN     NUMBER
291 ,p_organization_id              IN     NUMBER
292 ,p_grade_id                     IN     NUMBER    DEFAULT   null
293 ,p_position_id                  IN     NUMBER    DEFAULT   null
294 ,p_job_id                       IN     NUMBER    DEFAULT   null
295 ,p_assignment_status_type_id    IN     NUMBER    DEFAULT   null
296 ,p_payroll_id                   IN     NUMBER    DEFAULT   null
297 ,p_location_id                  IN     NUMBER    DEFAULT   null
298 ,p_supervisor_id                IN     NUMBER    DEFAULT   null
299 ,p_special_ceiling_step_id      IN     NUMBER    DEFAULT   null
300 ,p_pay_basis_id                 IN     NUMBER    DEFAULT   null
301 ,p_assignment_number            IN OUT NOCOPY    VARCHAR2
302 ,p_change_reason                IN     VARCHAR2  DEFAULT   null
303 ,p_comments                     IN     VARCHAR2  DEFAULT   null
304 ,p_date_probation_end           IN     DATE      DEFAULT   null
305 ,p_default_code_comb_id         IN     NUMBER    DEFAULT   null
306 ,p_employment_category          IN     VARCHAR2  DEFAULT   null
307 ,p_frequency                    IN     VARCHAR2  DEFAULT   null
308 ,p_internal_address_line        IN     VARCHAR2  DEFAULT   null
309 ,p_manager_flag                 IN     VARCHAR2  DEFAULT   null
310 ,p_normal_hours                 IN     NUMBER    DEFAULT   null
311 ,p_perf_review_period           IN     NUMBER    DEFAULT   null
312 ,p_perf_review_period_frequency IN     VARCHAR2  DEFAULT   null
313 ,p_probation_period             IN     NUMBER    DEFAULT   null
314 ,p_probation_unit               IN     VARCHAR2  DEFAULT   null
315 ,p_sal_review_period            IN     NUMBER    DEFAULT   null
316 ,p_sal_review_period_frequency  IN     VARCHAR2  DEFAULT   null
317 ,p_set_of_books_id              IN     NUMBER    DEFAULT   null
318 ,p_source_type                  IN     VARCHAR2  DEFAULT   null
319 ,p_time_normal_finish           IN     VARCHAR2  DEFAULT   null
320 ,p_time_normal_start            IN     VARCHAR2  DEFAULT   null
321 ,p_bargaining_unit_code         IN     VARCHAR2  DEFAULT   null
322 ,p_labour_union_member_flag     IN     VARCHAR2  DEFAULT   null
323 ,p_hourly_salaried_code         IN     VARCHAR2  DEFAULT   null
324 ,p_ass_attribute_category       IN     VARCHAR2  DEFAULT   null
325 ,p_ass_attribute1               IN     VARCHAR2  DEFAULT   null
326 ,p_ass_attribute2               IN     VARCHAR2  DEFAULT   null
327 ,p_ass_attribute3               IN     VARCHAR2  DEFAULT   null
328 ,p_ass_attribute4               IN     VARCHAR2  DEFAULT   null
329 ,p_ass_attribute5               IN     VARCHAR2  DEFAULT   null
330 ,p_ass_attribute6               IN     VARCHAR2  DEFAULT   null
331 ,p_ass_attribute7               IN     VARCHAR2  DEFAULT   null
332 ,p_ass_attribute8               IN     VARCHAR2  DEFAULT   null
333 ,p_ass_attribute9               IN     VARCHAR2  DEFAULT   null
334 ,p_ass_attribute10              IN     VARCHAR2  DEFAULT   null
335 ,p_ass_attribute11              IN     VARCHAR2  DEFAULT   null
336 ,p_ass_attribute12              IN     VARCHAR2  DEFAULT   null
337 ,p_ass_attribute13              IN     VARCHAR2  DEFAULT   null
338 ,p_ass_attribute14              IN     VARCHAR2  DEFAULT   null
339 ,p_ass_attribute15              IN     VARCHAR2  DEFAULT   null
340 ,p_ass_attribute16              IN     VARCHAR2  DEFAULT   null
341 ,p_ass_attribute17              IN     VARCHAR2  DEFAULT   null
342 ,p_ass_attribute18              IN     VARCHAR2  DEFAULT   null
343 ,p_ass_attribute19              IN     VARCHAR2  DEFAULT   null
344 ,p_ass_attribute20              IN     VARCHAR2  DEFAULT   null
345 ,p_ass_attribute21              IN     VARCHAR2  DEFAULT   null
346 ,p_ass_attribute22              IN     VARCHAR2  DEFAULT   null
347 ,p_ass_attribute23              IN     VARCHAR2  DEFAULT   null
348 ,p_ass_attribute24              IN     VARCHAR2  DEFAULT   null
349 ,p_ass_attribute25              IN     VARCHAR2  DEFAULT   null
350 ,p_ass_attribute26              IN     VARCHAR2  DEFAULT   null
351 ,p_ass_attribute27              IN     VARCHAR2  DEFAULT   null
352 ,p_ass_attribute28              IN     VARCHAR2  DEFAULT   null
353 ,p_ass_attribute29              IN     VARCHAR2  DEFAULT   null
354 ,p_ass_attribute30              IN     VARCHAR2  DEFAULT   null
355 ,p_title                        IN     VARCHAR2  DEFAULT   null
356 ,p_gre_legal_entity             IN     VARCHAR2
357 ,p_pf_organization              IN     VARCHAR2  DEFAULT   null
358 ,p_prof_tax_organization        IN     VARCHAR2  DEFAULT   null
359 ,p_esi_organization             IN     VARCHAR2  DEFAULT   null
360 ,p_factory                      IN     VARCHAR2  DEFAULT   null
361 ,p_establishment                IN     VARCHAR2  DEFAULT   null
362 ,p_covered_by_gratuity_act      IN     VARCHAR2  DEFAULT   'N'
363 ,p_having_substantial_interest  IN     VARCHAR2  DEFAULT   'N'
364 ,p_director                     IN     VARCHAR2  DEFAULT   'N'
365 ,p_specified                    IN     VARCHAR2  DEFAULT   'Y'
366 ,p_scl_concat_segments          IN     VARCHAR2  DEFAULT   null
367 ,p_pgp_segment1                 IN     VARCHAR2  DEFAULT   null
368 ,p_pgp_segment2                 IN     VARCHAR2  DEFAULT   null
369 ,p_pgp_segment3                 IN     VARCHAR2  DEFAULT   null
370 ,p_pgp_segment4                 IN     VARCHAR2  DEFAULT   null
371 ,p_pgp_segment5                 IN     VARCHAR2  DEFAULT   null
372 ,p_pgp_segment6                 IN     VARCHAR2  DEFAULT   null
373 ,p_pgp_segment7                 IN     VARCHAR2  DEFAULT   null
374 ,p_pgp_segment8                 IN     VARCHAR2  DEFAULT   null
375 ,p_pgp_segment9                 IN     VARCHAR2  DEFAULT   null
376 ,p_pgp_segment10                IN     VARCHAR2  DEFAULT   null
377 ,p_pgp_segment11                IN     VARCHAR2  DEFAULT   null
378 ,p_pgp_segment12                IN     VARCHAR2  DEFAULT   null
379 ,p_pgp_segment13                IN     VARCHAR2  DEFAULT   null
380 ,p_pgp_segment14                IN     VARCHAR2  DEFAULT   null
381 ,p_pgp_segment15                IN     VARCHAR2  DEFAULT   null
382 ,p_pgp_segment16                IN     VARCHAR2  DEFAULT   null
383 ,p_pgp_segment17                IN     VARCHAR2  DEFAULT   null
384 ,p_pgp_segment18                IN     VARCHAR2  DEFAULT   null
385 ,p_pgp_segment19                IN     VARCHAR2  DEFAULT   null
386 ,p_pgp_segment20                IN     VARCHAR2  DEFAULT   null
387 ,p_pgp_segment21                IN     VARCHAR2  DEFAULT   null
388 ,p_pgp_segment22                IN     VARCHAR2  DEFAULT   null
389 ,p_pgp_segment23                IN     VARCHAR2  DEFAULT   null
390 ,p_pgp_segment24                IN     VARCHAR2  DEFAULT   null
391 ,p_pgp_segment25                IN     VARCHAR2  DEFAULT   null
392 ,p_pgp_segment26                IN     VARCHAR2  DEFAULT   null
393 ,p_pgp_segment27                IN     VARCHAR2  DEFAULT   null
394 ,p_pgp_segment28                IN     VARCHAR2  DEFAULT   null
395 ,p_pgp_segment29                IN     VARCHAR2  DEFAULT   null
396 ,p_pgp_segment30                IN     VARCHAR2  DEFAULT   null
397 ,p_pgp_concat_segments          IN     VARCHAR2  DEFAULT   null
398 ,p_contract_id                  IN     NUMBER    DEFAULT   null
399 ,p_establishment_id             IN     NUMBER    DEFAULT   null
400 ,p_collective_agreement_id      IN     NUMBER    DEFAULT   null
401 ,p_cagr_id_flex_num             IN     NUMBER    DEFAULT   null
402 ,p_cag_segment1                 IN     VARCHAR2  DEFAULT   null
403 ,p_cag_segment2                 IN     VARCHAR2  DEFAULT   null
404 ,p_cag_segment3                 IN     VARCHAR2  DEFAULT   null
405 ,p_cag_segment4                 IN     VARCHAR2  DEFAULT   null
406 ,p_cag_segment5                 IN     VARCHAR2  DEFAULT   null
407 ,p_cag_segment6                 IN     VARCHAR2  DEFAULT   null
408 ,p_cag_segment7                 IN     VARCHAR2  DEFAULT   null
409 ,p_cag_segment8                 IN     VARCHAR2  DEFAULT   null
410 ,p_cag_segment9                 IN     VARCHAR2  DEFAULT   null
411 ,p_cag_segment10                IN     VARCHAR2  DEFAULT   null
412 ,p_cag_segment11                IN     VARCHAR2  DEFAULT   null
413 ,p_cag_segment12                IN     VARCHAR2  DEFAULT   null
414 ,p_cag_segment13                IN     VARCHAR2  DEFAULT   null
415 ,p_cag_segment14                IN     VARCHAR2  DEFAULT   null
416 ,p_cag_segment15                IN     VARCHAR2  DEFAULT   null
417 ,p_cag_segment16                IN     VARCHAR2  DEFAULT   null
418 ,p_cag_segment17                IN     VARCHAR2  DEFAULT   null
419 ,p_cag_segment18                IN     VARCHAR2  DEFAULT   null
420 ,p_cag_segment19                IN     VARCHAR2  DEFAULT   null
421 ,p_cag_segment20                IN     VARCHAR2  DEFAULT   null
422 ,p_notice_period                IN     NUMBER    DEFAULT   null
423 ,p_notice_period_uom            IN     VARCHAR2  DEFAULT   null
424 ,p_employee_category            IN     VARCHAR2  DEFAULT   null
425 ,p_work_at_home                 IN     VARCHAR2  DEFAULT   null
426 ,p_job_post_source_name         IN     VARCHAR2  DEFAULT   null
427 ,p_grade_ladder_pgm_id          IN     NUMBER    DEFAULT   null
428 ,p_supervisor_assignment_id     IN     NUMBER    DEFAULT   null
429 ,p_group_name                      OUT NOCOPY VARCHAR2
430 ,p_concatenated_segments           OUT NOCOPY VARCHAR2
431 ,p_cagr_grade_def_id            IN OUT NOCOPY NUMBER
432 ,p_cagr_concatenated_segments   OUT NOCOPY VARCHAR2
433 ,p_assignment_id                OUT NOCOPY NUMBER
434 ,p_soft_coding_keyflex_id       IN OUT NOCOPY NUMBER
435 ,p_people_group_id              IN OUT NOCOPY NUMBER
436 ,p_object_version_number           OUT NOCOPY NUMBER
437 ,p_effective_start_date            OUT NOCOPY DATE
438 ,p_effective_end_date              OUT NOCOPY DATE
439 ,p_assignment_sequence             OUT NOCOPY NUMBER
440 ,p_comment_id                      OUT NOCOPY NUMBER
441 ,p_other_manager_warning           OUT NOCOPY BOOLEAN
442 ,p_hourly_salaried_warning         OUT NOCOPY BOOLEAN
443 ,p_gsp_post_process_warning        OUT NOCOPY VARCHAR2);
444 --
445 -- ----------------------------------------------------------------------------
446 -- |----------------------------< update_in_emp_asg >-------------------------|
447 -- ----------------------------------------------------------------------------
448 --
449 -- {Start Of Comments}
450 /*#
451  * This API updates employment assignment for an employee.
452  *
453  * It updates information for an existing employee assignment with a IN
454  * legislation. It calls the generic API update_emp_asg, with parameters set as
455  * appropriate for a IN employee assignment.
456  *
457  * <p><b>Licensing</b><br>
458  * This API is licensed for use with Human Resources.
459  *
460  * <p><b>Prerequisites</b><br>
461  * The assignment (p_assignment_id) must exist as of the effective date of the
462  * update (p_effective_date).
463  *
464  * <p><b>Post Success</b><br>
465  * Updates the assignment of the employee.
466  *
467  * <p><b>Post Failure</b><br>
468  * The API does not update the assignment and raises an error.
469  *
470  * @param p_validate If true, then validation alone will be performed and the
471  * database will remain unchanged. If false and all validation checks pass,
472  * then the database will be modified.
473  * @param p_effective_date Determines when the DateTrack operation comes into
474  * force.
475  * @param p_datetrack_update_mode Indicates which DateTrack mode to use when
476  * updating the record. You must set to either UPDATE, CORRECTION,
477  * UPDATE_OVERRIDE or UPDATE_CHANGE_INSERT. Modes available for use with a
478  * particular record depend on the dates of previous record changes and the
479  * effective date of this change.
480  * @param p_assignment_id Identifies the assignment record to modify.
481  * @param p_object_version_number Pass in the current version number of the
482  * assignment to be updated. When the API completes if p_validate is false,
483  * will be set to the new version number of the updated assignment. If
484  * p_validate is true will be set to the same value which was passed in.
485  * @param p_supervisor_id Supervisor for the assignment. The value refers to
486  * the supervisor's person record.
487  * @param p_assignment_number Assignment number.
488  * @param p_change_reason Reason for the assignment status change. If there is
489  * no change reason, then the parameter can be null. Valid values are defined
490  * in the 'EMP_ASSIGN_REASON' lookup type.
491  * @param p_assignment_status_type_id Assignment status. The system status must
492  * be the same as before the update, otherwise one of the status change APIs
493  * should be used.
494  * @param p_comments Comment text.
495  * @param p_date_probation_end End date of probation period.
496  * @param p_default_code_comb_id Identifier for the General Ledger Accounting
497  * Flexfield combination that applies to this assignment.
498  * @param p_frequency Frequency associated with the defined normal working
499  * hours. Valid values are defined in the 'FREQUENCY' lookup type.
500  * @param p_internal_address_line Internal address identified with this
501  * assignment.
502  * @param p_manager_flag Indicates whether the employee is a manager.
503  * @param p_normal_hours Normal working hours for this assignment.
504  * @param p_perf_review_period Length of performance review period.
505  * @param p_perf_review_period_frequency Units of performance review period.
506  * Valid values are defined in the 'FREQUENCY' lookup type.
507  * @param p_probation_period Length of probation period.
508  * @param p_probation_unit Units of probation period. Valid values are defined
509  * in the 'QUALIFYING_UNITS' lookup type.
510  * @param p_sal_review_period Length of salary review period.
511  * @param p_sal_review_period_frequency Units of salary review period. Valid
512  * values are defined in the 'FREQUENCY' lookup type.
513  * @param p_set_of_books_id Identifies General Ledger set of books.
514  * @param p_source_type Recruitment activity which this assignment is sourced
515  * from. Valid values are defined in the 'REC_TYPE' lookup type.
516  * @param p_time_normal_finish Normal work finish time.
517  * @param p_time_normal_start Normal work start time.
518  * @param p_bargaining_unit_code Code for bargaining unit. Valid values are
519  * defined in the 'BARGAINING_UNIT_CODE' lookup type.
520  * @param p_labour_union_member_flag Indicates whether the employee is a labor
521  * union member. Value 'Y' indicates employee is a labor union member.
522  * @param p_hourly_salaried_code Identifies if the assignment is paid hourly or
523  * is salaried. Valid values defined in the 'HOURLY_SALARIED_CODE' lookup type.
524  * @param p_ass_attribute_category This context value determines which
525  * Flexfield Structure to use with the Descriptive flexfield segments.
526  * @param p_ass_attribute1 Descriptive flexfield segment.
527  * @param p_ass_attribute2 Descriptive flexfield segment.
528  * @param p_ass_attribute3 Descriptive flexfield segment.
529  * @param p_ass_attribute4 Descriptive flexfield segment.
530  * @param p_ass_attribute5 Descriptive flexfield segment.
531  * @param p_ass_attribute6 Descriptive flexfield segment.
532  * @param p_ass_attribute7 Descriptive flexfield segment.
533  * @param p_ass_attribute8 Descriptive flexfield segment.
534  * @param p_ass_attribute9 Descriptive flexfield segment.
535  * @param p_ass_attribute10 Descriptive flexfield segment.
536  * @param p_ass_attribute11 Descriptive flexfield segment.
537  * @param p_ass_attribute12 Descriptive flexfield segment.
538  * @param p_ass_attribute13 Descriptive flexfield segment.
539  * @param p_ass_attribute14 Descriptive flexfield segment.
540  * @param p_ass_attribute15 Descriptive flexfield segment.
541  * @param p_ass_attribute16 Descriptive flexfield segment.
542  * @param p_ass_attribute17 Descriptive flexfield segment.
543  * @param p_ass_attribute18 Descriptive flexfield segment.
544  * @param p_ass_attribute19 Descriptive flexfield segment.
545  * @param p_ass_attribute20 Descriptive flexfield segment.
546  * @param p_ass_attribute21 Descriptive flexfield segment.
547  * @param p_ass_attribute22 Descriptive flexfield segment.
548  * @param p_ass_attribute23 Descriptive flexfield segment.
549  * @param p_ass_attribute24 Descriptive flexfield segment.
550  * @param p_ass_attribute25 Descriptive flexfield segment.
551  * @param p_ass_attribute26 Descriptive flexfield segment.
552  * @param p_ass_attribute27 Descriptive flexfield segment.
553  * @param p_ass_attribute28 Descriptive flexfield segment.
554  * @param p_ass_attribute29 Descriptive flexfield segment.
555  * @param p_ass_attribute30 Descriptive flexfield segment.
556  * @param p_title Obsolete parameter, do not use.
557  * @param p_gre_legal_entity Obsolete parameter, do not use.
558  * @param p_pf_organization PF Organization
559  * @param p_prof_tax_organization Professional Tax Organization
560  * @param p_esi_organization ESI Organization
561  * @param p_factory Factory
562  * @param p_establishment Establishment
563  * @param p_covered_by_gratuity_act Covered by Gratuity act flag. Valid values
564  * are defined by 'YES_NO' lookup type.
565  * @param p_having_substantial_interest Having substantial interest flag.Valid
566  * values are defined by 'YES_NO' lookup type.
567  * @param p_director Director flag. Valid values are defined by 'YES_NO' lookup
568  * type.
569  * @param p_specified Specified Employee flag. Valid values are defined by
570  * 'YES_NO' lookup type.
571  * @param p_concat_segments Concatenated segments for Soft Coded Key Flexfield.
572  * Concatenated segments can be supplied instead of individual segments.
573  * @param p_contract_id Contract associated with this assignment.
574  * @param p_establishment_id This identifies the establishment Legal Entity for
575  * this assignment.
576  * @param p_collective_agreement_id Collective Agreement that applies to this
577  * assignment.
578  * @param p_cagr_id_flex_num Identifier for the structure from CAGR Key
579  * flexfield to use for this assignment.
580  * @param p_cag_segment1 CAGR Key Flexfield segment.
581  * @param p_cag_segment2 CAGR Key Flexfield segment.
582  * @param p_cag_segment3 CAGR Key Flexfield segment.
583  * @param p_cag_segment4 CAGR Key Flexfield segment.
584  * @param p_cag_segment5 CAGR Key Flexfield segment.
585  * @param p_cag_segment6 CAGR Key Flexfield segment.
586  * @param p_cag_segment7 CAGR Key Flexfield segment.
587  * @param p_cag_segment8 CAGR Key Flexfield segment.
588  * @param p_cag_segment9 CAGR Key Flexfield segment.
589  * @param p_cag_segment10 CAGR Key Flexfield segment.
590  * @param p_cag_segment11 CAGR Key Flexfield segment.
591  * @param p_cag_segment12 CAGR Key Flexfield segment.
592  * @param p_cag_segment13 CAGR Key Flexfield segment.
593  * @param p_cag_segment14 CAGR Key Flexfield segment.
594  * @param p_cag_segment15 CAGR Key Flexfield segment.
595  * @param p_cag_segment16 CAGR Key Flexfield segment.
596  * @param p_cag_segment17 CAGR Key Flexfield segment.
597  * @param p_cag_segment18 CAGR Key Flexfield segment.
598  * @param p_cag_segment19 CAGR Key Flexfield segment.
599  * @param p_cag_segment20 CAGR Key Flexfield segment.
600  * @param p_notice_period Length of notice period.
601  * @param p_notice_period_uom Units for notice period. Valid values are defined
602  * in the 'QUALIFYING_UNITS' lookup type.
603  * @param p_employee_category Employee Category of the assignment. Valid values
604  * are defined in the 'EMPLOYEE_CATG' lookup type.
605  * @param p_work_at_home Indicates whether this assignment is to work at home.
606  * Valid values are defined in the 'YES_NO' lookup type.
607  * @param p_job_post_source_name Name of the source of the job posting that was
608  * answered for this assignment.
609  * @param p_supervisor_assignment_id Supervisor's assignment identification
610  * that is responsible for supervising this assignment.
611  * @param p_cagr_grade_def_id If a value is passed in for this parameter, it
612  * identifies an existing CAGR Key Flexfield combination to associate with the
613  * assignment, and the segment values are ignored. If a value is not passed in,
614  * then the individual CAGR Key Flexfield segments supplied will be used to
615  * choose an existing combination or create a new combination. When the API
616  * completes, if p_validate is false, then this uniquely identifies the
617  * associated combination of the CAGR Key flexfield for this assignment. If
618  * p_validate is true, then set to null.
619  * @param p_cagr_concatenated_segments If p_validate is false CAGR Key
620  * Flexfield concatenated segments is generated. If p_validate is true, it is
621  * set to null.
622  * @param p_concatenated_segments If p_validate is false, set to Soft Coded Key
623  * Flexfield concatenated segments, if p_validate is true, set to null.
624  * @param p_soft_coding_keyflex_id If a value is passed in for this parameter,
625  * it identifies an existing Soft Coded Key Flexfield combination to associate
626  * with the assignment, and segment values are ignored. If a value is not
627  * passed in, then the individual Soft Coded Key Flexfield segments supplied
628  * will be used to choose an existing combination or create a new combination.
629  * When the API completes, if p_validate is false, then this uniquely
630  * identifies the associated combination of the Soft Coded Key flexfield for
631  * this assignment. If p_validate is true, then set to null.
632  * @param p_comment_id If p_validate is false and comment text was provided,
633  * then will be set to the identifier of the created assignment comment record.
634  * @param p_effective_start_date If p_validate is false, then set to the
635  * effective start date on the updated assignment row which now exists as of
636  * the effective date. If p_validate is true, then set to null.
637  * @param p_effective_end_date If p_validate is false, then set to the
638  * effective end date on the updated assignment row which now exists as of the
639  * effective date. If p_validate is true, then set to null.
640  * @param p_no_managers_warning Set to true if as a result of the update there
641  * is no manager in the organization. Otherwise set to false.
642  * @param p_other_manager_warning If set to true, then a manager existed in the
643  * organization prior to calling this API and the manager flag has been set to
644  * 'Y' for yes.
645  * @param p_hourly_salaried_warning Set to true if values entered for Salary
646  * Basis and Hourly Salaried Code are invalid as of the effective date.
647  * @param p_gsp_post_process_warning Set to the name of the warning message
648  * from the Message Dictionary if any Grade Ladder related errors have been
649  * encountered while running this API.
650  * @rep:displayname Update Employee Assignment for India
651  * @rep:category BUSINESS_ENTITY PER_CWK_ASG
652  * @rep:lifecycle active
653  * @rep:category MISC_EXTENSIONS HR_DATAPUMP
654  * @rep:scope public
655  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
656 */
657 --
658 -- {End Of Comments}
659 --
660 PROCEDURE update_in_emp_asg
661   (p_validate                     IN     BOOLEAN  DEFAULT FALSE
662   ,p_effective_date               IN     DATE
663   ,p_datetrack_update_mode        IN     VARCHAR2
664   ,p_assignment_id                IN     NUMBER
665   ,p_object_version_number        IN OUT NOCOPY NUMBER
666   ,p_supervisor_id                IN     NUMBER   DEFAULT HR_API.G_NUMBER
667   ,p_assignment_number            IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
668   ,p_change_reason                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
669   ,p_assignment_status_type_id    IN     NUMBER   DEFAULT HR_API.G_NUMBER
670   ,p_comments                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
671   ,p_date_probation_end           IN     DATE     DEFAULT HR_API.G_DATE
672   ,p_default_code_comb_id         IN     NUMBER   DEFAULT HR_API.G_NUMBER
673   ,p_frequency                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
674   ,p_internal_address_line        IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
675   ,p_manager_flag                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
676   ,p_normal_hours                 IN     NUMBER   DEFAULT HR_API.G_NUMBER
677   ,p_perf_review_period           IN     NUMBER   DEFAULT HR_API.G_NUMBER
678   ,p_perf_review_period_frequency IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
679   ,p_probation_period             IN     NUMBER   DEFAULT HR_API.G_NUMBER
680   ,p_probation_unit               IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
681   ,p_sal_review_period            IN     NUMBER   DEFAULT HR_API.G_NUMBER
682   ,p_sal_review_period_frequency  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
683   ,p_set_of_books_id              IN     NUMBER   DEFAULT HR_API.G_NUMBER
684   ,p_source_type                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
685   ,p_time_normal_finish           IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
686   ,p_time_normal_start            IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
687   ,p_bargaining_unit_code         IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
688   ,p_labour_union_member_flag     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
689   ,p_hourly_salaried_code         IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
690   ,p_ass_attribute_category       IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
691   ,p_ass_attribute1               IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
692   ,p_ass_attribute2               IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
693   ,p_ass_attribute3               IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
694   ,p_ass_attribute4               IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
695   ,p_ass_attribute5               IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
696   ,p_ass_attribute6               IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
697   ,p_ass_attribute7               IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
698   ,p_ass_attribute8               IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
699   ,p_ass_attribute9               IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
700   ,p_ass_attribute10              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
701   ,p_ass_attribute11              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
702   ,p_ass_attribute12              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
703   ,p_ass_attribute13              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
704   ,p_ass_attribute14              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
705   ,p_ass_attribute15              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
706   ,p_ass_attribute16              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
707   ,p_ass_attribute17              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
708   ,p_ass_attribute18              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
709   ,p_ass_attribute19              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
710   ,p_ass_attribute20              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
711   ,p_ass_attribute21              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
712   ,p_ass_attribute22              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
713   ,p_ass_attribute23              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
714   ,p_ass_attribute24              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
715   ,p_ass_attribute25              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
716   ,p_ass_attribute26              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
717   ,p_ass_attribute27              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
718   ,p_ass_attribute28              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
719   ,p_ass_attribute29              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
720   ,p_ass_attribute30              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
721   ,p_title                        IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
722   ,p_gre_legal_entity             IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
723   ,p_pf_organization              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
724   ,p_prof_tax_organization        IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
725   ,p_esi_organization             IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
726   ,p_factory                      IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
727   ,p_establishment                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
728   ,p_covered_by_gratuity_act      IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
729   ,p_having_substantial_interest  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
730   ,p_director                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
731   ,p_specified                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
732   ,p_concat_segments              IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
733   ,p_contract_id                  IN     NUMBER DEFAULT HR_API.G_NUMBER
734   ,p_establishment_id             IN     NUMBER DEFAULT HR_API.G_NUMBER
735   ,p_collective_agreement_id      IN     NUMBER DEFAULT HR_API.G_NUMBER
736   ,p_cagr_id_flex_num             IN     NUMBER DEFAULT HR_API.G_NUMBER
737   ,p_cag_segment1                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
738   ,p_cag_segment2                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
739   ,p_cag_segment3                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
740   ,p_cag_segment4                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
741   ,p_cag_segment5                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
742   ,p_cag_segment6                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
743   ,p_cag_segment7                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
744   ,p_cag_segment8                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
745   ,p_cag_segment9                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
746   ,p_cag_segment10                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
747   ,p_cag_segment11                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
748   ,p_cag_segment12                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
749   ,p_cag_segment13                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
750   ,p_cag_segment14                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
751   ,p_cag_segment15                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
752   ,p_cag_segment16                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
753   ,p_cag_segment17                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
754   ,p_cag_segment18                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
755   ,p_cag_segment19                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
756   ,p_cag_segment20                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
757   ,p_notice_period                IN     NUMBER   DEFAULT HR_API.G_NUMBER
758   ,p_notice_period_uom            IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
759   ,p_employee_category            IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
760   ,p_work_at_home                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
761   ,p_job_post_source_name         IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
762   ,p_supervisor_assignment_id     IN     NUMBER   DEFAULT HR_API.G_NUMBER
763   ,p_cagr_grade_def_id            IN OUT NOCOPY NUMBER
764   ,p_cagr_concatenated_segments      OUT NOCOPY VARCHAR2
765   ,p_concatenated_segments           OUT NOCOPY VARCHAR2
766   ,p_soft_coding_keyflex_id       IN OUT NOCOPY NUMBER
767   ,p_comment_id                      OUT NOCOPY NUMBER
768   ,p_effective_start_date            OUT NOCOPY DATE
769   ,p_effective_end_date              OUT NOCOPY DATE
770   ,p_no_managers_warning             OUT NOCOPY BOOLEAN
771   ,p_other_manager_warning           OUT NOCOPY BOOLEAN
772   ,p_hourly_salaried_warning         OUT NOCOPY BOOLEAN
773   ,p_gsp_post_process_warning        OUT NOCOPY VARCHAR2
774   );
775 --
776 -- ----------------------------------------------------------------------------
777 -- |-----------------------< create_in_secondary_cwk_asg >--------------------|
778 -- ----------------------------------------------------------------------------
779 --
780 -- {Start Of Comments}
781 /*#
782  * This API creates a secondary contingent worker assignment.
783  *
784  * This API creates additional non-primary assignments for an existing
785  * contingent worker in a IN business Group.
786  *
787  * <p><b>Licensing</b><br>
788  * This API is licensed for use with Human Resources.
789  *
790  * <p><b>Prerequisites</b><br>
791  * The business group (p_business_group_id) and the organization
792  * (p_organization_id) must exist at the effective start date of the assignment
793  * (p_effective_date).
794  *
795  * <p><b>Post Success</b><br>
796  * A new secondary assignment is created for the contingent worker.
797  *
798  * <p><b>Post Failure</b><br>
799  * The API does not create the assignment and raises an error.
800  *
801  * @param p_validate If true, then validation alone will be performed and the
802  * database will remain unchanged. If false and all validation checks pass,
803  * then the database will be modified.
804  * @param p_effective_date Determines when the DateTrack operation comes into
805  * force.
806  * @param p_business_group_id Identifier for the Business Group.
807  * @param p_person_id Identifies the person for whom you create the secondary
808  * contingent worker assignment record.
809  * @param p_organization_id Identifies the organization of the secondary
810  * assignment.
811  * @param p_assignment_number Unique ID for the assignment created by the API
812  * @param p_assignment_category Assignment Category.
813  * @param p_assignment_status_type_id Identifies the assignment status of the
814  * secondary assignment. Valid values are defined by 'PER_ASS_SYS_STATUS'
815  * lookup type.
816  * @param p_change_reason Reason for the assignment status change. If there is
817  * no change reason the parameter can be null. Valid values are defined in the
818  * 'EMP_ASSIGN_REASON' lookup type. If there is no change reason please
819  * explicitly set this to null (else there is a risk of inadvertantly recording
820  * promotions).
821  * @param p_comments Comment text.
822  * @param p_default_code_comb_id Identifier for the General Ledger Accounting
823  * Flexfield combination that applies to this assignment.
824  * @param p_establishment_id This identifies the establishment Legal Entity for
825  * this secondary contingent worker assignment.
826  * @param p_frequency Frequency for quoting working hours (eg per week).
827  * @param p_internal_address_line Internal address line.
828  * @param p_job_id Identifies the job of the secondary contingent worker
829  * assignment.
830  * @param p_labour_union_member_flag Indicates whether the employee is a labour
831  * union member. A value 'Y' indicates that the employee is a labour union
832  * member.
833  * @param p_location_id Identifies the location of the secondary contingent
834  * worker assignment.
835  * @param p_manager_flag Indicates whether the employee is a manager.
836  * @param p_normal_hours Normal working hours.
837  * @param p_position_id Identifies the position of the secondary contingent
838  * worker assignment.
839  * @param p_grade_id Identifies the grade of the secondary contingent worker
840  * assignment.
841  * @param p_project_title Project title.
842  * @param p_set_of_books_id Set of books (GL).
843  * @param p_source_type Recruitment activity which this assignment is sourced
844  * from. Valid values are defined in the 'REC_TYPE' lookup type.
845  * @param p_supervisor_id Identifies the supervisor for the secondary
846  * contingent worker assignment. The value refers to the supervisor's person
847  * record.
848  * @param p_time_normal_finish Normal work finish time.
849  * @param p_time_normal_start Normal work start time.
850  * @param p_title Obsolete parameter, do not use.
851  * @param p_vendor_assignment_number Supplier's assignment number
852  * @param p_vendor_employee_number Supplier's employee number
853  * @param p_vendor_id Supplier of assignment.
854  * @param p_vendor_site_id Supplier site of assignment.
855  * @param p_po_header_id Assignment purchase order reference.
856  * @param p_po_line_id Assignment purchase order line.
857  * @param p_projected_assignment_end Projected end of assignment Reserved for
858  * future use.
859  * @param p_attribute_category This context value determines which flexfield
860  * structure to use with the descriptive flexfield segments.
861  * @param p_attribute1 Descriptive flexfield segment.
862  * @param p_attribute2 Descriptive flexfield segment.
863  * @param p_attribute3 Descriptive flexfield segment.
864  * @param p_attribute4 Descriptive flexfield segment.
865  * @param p_attribute5 Descriptive flexfield segment.
866  * @param p_attribute6 Descriptive flexfield segment.
867  * @param p_attribute7 Descriptive flexfield segment.
868  * @param p_attribute8 Descriptive flexfield segment.
869  * @param p_attribute9 Descriptive flexfield segment.
870  * @param p_attribute10 Descriptive flexfield segment.
871  * @param p_attribute11 Descriptive flexfield segment.
872  * @param p_attribute12 Descriptive flexfield segment.
873  * @param p_attribute13 Descriptive flexfield segment.
874  * @param p_attribute14 Descriptive flexfield segment.
875  * @param p_attribute15 Descriptive flexfield segment.
876  * @param p_attribute16 Descriptive flexfield segment.
877  * @param p_attribute17 Descriptive flexfield segment.
878  * @param p_attribute18 Descriptive flexfield segment.
879  * @param p_attribute19 Descriptive flexfield segment.
880  * @param p_attribute20 Descriptive flexfield segment.
881  * @param p_attribute21 Descriptive flexfield segment.
882  * @param p_attribute22 Descriptive flexfield segment.
883  * @param p_attribute23 Descriptive flexfield segment.
884  * @param p_attribute24 Descriptive flexfield segment.
885  * @param p_attribute25 Descriptive flexfield segment.
886  * @param p_attribute26 Descriptive flexfield segment.
887  * @param p_attribute27 Descriptive flexfield segment.
888  * @param p_attribute28 Descriptive flexfield segment.
889  * @param p_attribute29 Descriptive flexfield segment.
890  * @param p_attribute30 Descriptive flexfield segment.
891  * @param p_pgp_segment1 People group key flexfield segment.
892  * @param p_pgp_segment2 People group key flexfield segment.
893  * @param p_pgp_segment3 People group key flexfield segment.
894  * @param p_pgp_segment4 People group key flexfield segment.
895  * @param p_pgp_segment5 People group key flexfield segment.
896  * @param p_pgp_segment6 People group key flexfield segment.
897  * @param p_pgp_segment7 People group key flexfield segment.
898  * @param p_pgp_segment8 People group key flexfield segment.
899  * @param p_pgp_segment9 People group key flexfield segment.
900  * @param p_pgp_segment10 People group key flexfield segment.
901  * @param p_pgp_segment11 People group key flexfield segment.
902  * @param p_pgp_segment12 People group key flexfield segment.
903  * @param p_pgp_segment13 People group key flexfield segment.
904  * @param p_pgp_segment14 People group key flexfield segment.
905  * @param p_pgp_segment15 People group key flexfield segment.
906  * @param p_pgp_segment16 People group key flexfield segment.
907  * @param p_pgp_segment17 People group key flexfield segment.
908  * @param p_pgp_segment18 People group key flexfield segment.
909  * @param p_pgp_segment19 People group key flexfield segment.
910  * @param p_pgp_segment20 People group key flexfield segment.
911  * @param p_pgp_segment21 People group key flexfield segment.
912  * @param p_pgp_segment22 People group key flexfield segment.
913  * @param p_pgp_segment23 People group key flexfield segment.
914  * @param p_pgp_segment24 People group key flexfield segment.
915  * @param p_pgp_segment25 People group key flexfield segment.
916  * @param p_pgp_segment26 People group key flexfield segment.
917  * @param p_pgp_segment27 People group key flexfield segment.
918  * @param p_pgp_segment28 People group key flexfield segment.
919  * @param p_pgp_segment29 People group key flexfield segment.
920  * @param p_pgp_segment30 People group key flexfield segment.
921  * @param p_scl_contractor_name Contractor's Name.
922  * @param p_scl_concat_segments Concatenated segments for Soft Coded Key
923  * Flexfield. Concatenated segments can be supplied instead of individual
924  * segments.
925  * @param p_pgp_concat_segments Concatenated segments for People Group Key
926  * Flexfield. Concatenated segments can be supplied instead of individual
927  * segments.
928  * @param p_supervisor_assignment_id Supervisor's assignment identification
929  * that is responsible for supervising this assignment.
930  * @param p_assignment_id If p_validate is false, then this uniquely identifies
931  * the created secondary contingent worker assignment. If p_validate is true,
932  * then set to null.
933  * @param p_object_version_number If p_validate is false, then set to the
934  * version number of the created secondary contingent worker assignment. If
935  * p_validate is true, then the value will be null.
936  * @param p_effective_start_date If p_validate is false, then set to the
937  * earliest effective start date for the created secondary contingent worker
938  * assignment. If p_validate is true, then set to null.
939  * @param p_effective_end_date If p_validate is false, then set to the
940  * effective end date for the created secondary contingent worker assignment.
941  * If p_validate is true, then set to null.
942  * @param p_assignment_sequence If p_validate is false, then an automatically
943  * incremented number is associated with this secondary contingent worker
944  * assignment, depending on the number of assignment which already exist. If
945  * p_validate is true then set to null.
946  * @param p_comment_id If p_validate is false and comment text was provided,
947  * then will be set to the identifier of the created secondary contingent
948  * worker assignment comment record. If p_validate is true or no comment text
949  * was provided, then will be null.
950  * @param p_people_group_id If a value is passed in for this parameter, it
951  * identifies an existing People Group Key Flexfield combination to associate
952  * with the secondary contingent worker assignment, and segment values are
953  * ignored. If a value is not passed in, then the individual People Group Key
954  * Flexfield segments supplied will be used to choose an existing combination
955  * or create a new combination. When the API completes, if p_validate is false,
956  * then this uniquely identifies the associated combination of the People Group
957  * Key flexfield for this secondary contingent worker assignment. If p_validate
958  * is true, then set to null.
959  * @param p_people_group_name If p_validate is false, set to the People Group
960  * Name concatenated segments. If p_validate is true, set to null.
961  * @param p_other_manager_warning If set to true, then a manager existed in the
962  * organization prior to calling this API and the manager flag has been set to
963  * 'Y' for yes.
964  * @param p_hourly_salaried_warning Set to true if values entered for Salary
965  * Basis and Hourly Salaried Code are invalid as of p_effective_date.
966  * @param p_soft_coding_keyflex_id If a value is passed in for this parameter,
967  * it identifies an existing Soft Coded Key Flexfield combination to associate
968  * with the secondary contingent worker assignment, and segment values are
969  * ignored. If a value is not passed in, then the individual Soft Coded Key
970  * Flexfield segments supplied will be used to choose an existing combination
971  * or create a new combination. When the API completes, if p_validate is false,
972  * then this uniquely identifies the associated combination of the Soft Coded
973  * Key flexfield for this secondary contingent worker assignment. If p_validate
974  * is true, then set to null.
975  * @rep:displayname Create Secondary Contingent Worker Assignment for India
976  * @rep:category BUSINESS_ENTITY PER_CWK_ASG
977  * @rep:lifecycle active
978  * @rep:category MISC_EXTENSIONS HR_DATAPUMP
979  * @rep:scope public
980  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
981 */
982 --
983 -- {End Of Comments}
984 --
985 PROCEDURE create_in_secondary_cwk_asg
986   (p_validate                     IN     BOOLEAN  DEFAULT false
987   ,p_effective_date               IN     DATE
988   ,p_business_group_id            IN     NUMBER
989   ,p_person_id                    IN     NUMBER
990   ,p_organization_id              IN     NUMBER
991   ,p_assignment_number            IN OUT NOCOPY VARCHAR2
992   ,p_assignment_category          IN     VARCHAR2 DEFAULT null
993   ,p_assignment_status_type_id    IN     NUMBER   DEFAULT null
994   ,p_change_reason                IN     VARCHAR2 DEFAULT null
995   ,p_comments                     IN     VARCHAR2 DEFAULT null
996   ,p_default_code_comb_id         IN     NUMBER   DEFAULT null
997   ,p_establishment_id             IN     NUMBER   DEFAULT null
998   ,p_frequency                    IN     VARCHAR2 DEFAULT null
999   ,p_internal_address_line        IN     VARCHAR2 DEFAULT null
1000   ,p_job_id                       IN     NUMBER   DEFAULT null
1001   ,p_labour_union_member_flag     IN     VARCHAR2 DEFAULT 'N'
1002   ,p_location_id                  IN     NUMBER   DEFAULT null
1003   ,p_manager_flag                 IN     VARCHAR2 DEFAULT null
1004   ,p_normal_hours                 IN     NUMBER   DEFAULT null
1005   ,p_position_id                  IN     NUMBER   DEFAULT null
1006   ,p_grade_id                     IN     NUMBER   DEFAULT null
1007   ,p_project_title                IN     VARCHAR2 DEFAULT null
1008   ,p_set_of_books_id              IN     NUMBER   DEFAULT null
1009   ,p_source_type                  IN     VARCHAR2 DEFAULT null
1010   ,p_supervisor_id                IN     NUMBER   DEFAULT null
1011   ,p_time_normal_finish           IN     VARCHAR2 DEFAULT null
1012   ,p_time_normal_start            IN     VARCHAR2 DEFAULT null
1013   ,p_title                        IN     VARCHAR2 DEFAULT null
1014   ,p_vendor_assignment_number     IN     VARCHAR2 DEFAULT null
1015   ,p_vendor_employee_number       IN     VARCHAR2 DEFAULT null
1016   ,p_vendor_id                    IN     NUMBER   DEFAULT null
1017   ,p_vendor_site_id               IN     NUMBER   DEFAULT null
1018   ,p_po_header_id                 IN     NUMBER   DEFAULT null
1019   ,p_po_line_id                   IN     NUMBER   DEFAULT null
1020   ,p_projected_assignment_end     IN     DATE     DEFAULT null
1021   ,p_attribute_category           IN     VARCHAR2 DEFAULT null
1022   ,p_attribute1                   IN     VARCHAR2 DEFAULT null
1023   ,p_attribute2                   IN     VARCHAR2 DEFAULT null
1024   ,p_attribute3                   IN     VARCHAR2 DEFAULT null
1025   ,p_attribute4                   IN     VARCHAR2 DEFAULT null
1026   ,p_attribute5                   IN     VARCHAR2 DEFAULT null
1027   ,p_attribute6                   IN     VARCHAR2 DEFAULT null
1028   ,p_attribute7                   IN     VARCHAR2 DEFAULT null
1029   ,p_attribute8                   IN     VARCHAR2 DEFAULT null
1030   ,p_attribute9                   IN     VARCHAR2 DEFAULT null
1031   ,p_attribute10                  IN     VARCHAR2 DEFAULT null
1032   ,p_attribute11                  IN     VARCHAR2 DEFAULT null
1033   ,p_attribute12                  IN     VARCHAR2 DEFAULT null
1034   ,p_attribute13                  IN     VARCHAR2 DEFAULT null
1035   ,p_attribute14                  IN     VARCHAR2 DEFAULT null
1036   ,p_attribute15                  IN     VARCHAR2 DEFAULT null
1037   ,p_attribute16                  IN     VARCHAR2 DEFAULT null
1038   ,p_attribute17                  IN     VARCHAR2 DEFAULT null
1039   ,p_attribute18                  IN     VARCHAR2 DEFAULT null
1040   ,p_attribute19                  IN     VARCHAR2 DEFAULT null
1041   ,p_attribute20                  IN     VARCHAR2 DEFAULT null
1042   ,p_attribute21                  IN     VARCHAR2 DEFAULT null
1043   ,p_attribute22                  IN     VARCHAR2 DEFAULT null
1044   ,p_attribute23                  IN     VARCHAR2 DEFAULT null
1045   ,p_attribute24                  IN     VARCHAR2 DEFAULT null
1046   ,p_attribute25                  IN     VARCHAR2 DEFAULT null
1047   ,p_attribute26                  IN     VARCHAR2 DEFAULT null
1048   ,p_attribute27                  IN     VARCHAR2 DEFAULT null
1049   ,p_attribute28                  IN     VARCHAR2 DEFAULT null
1050   ,p_attribute29                  IN     VARCHAR2 DEFAULT null
1051   ,p_attribute30                  IN     VARCHAR2 DEFAULT null
1052   ,p_pgp_segment1                 IN     VARCHAR2 DEFAULT null
1053   ,p_pgp_segment2                 IN     VARCHAR2 DEFAULT null
1054   ,p_pgp_segment3                 IN     VARCHAR2 DEFAULT null
1055   ,p_pgp_segment4                 IN     VARCHAR2 DEFAULT null
1056   ,p_pgp_segment5                 IN     VARCHAR2 DEFAULT null
1057   ,p_pgp_segment6                 IN     VARCHAR2 DEFAULT null
1058   ,p_pgp_segment7                 IN     VARCHAR2 DEFAULT null
1059   ,p_pgp_segment8                 IN     VARCHAR2 DEFAULT null
1060   ,p_pgp_segment9                 IN     VARCHAR2 DEFAULT null
1061   ,p_pgp_segment10                IN     VARCHAR2 DEFAULT null
1062   ,p_pgp_segment11                IN     VARCHAR2 DEFAULT null
1063   ,p_pgp_segment12                IN     VARCHAR2 DEFAULT null
1064   ,p_pgp_segment13                IN     VARCHAR2 DEFAULT null
1065   ,p_pgp_segment14                IN     VARCHAR2 DEFAULT null
1066   ,p_pgp_segment15                IN     VARCHAR2 DEFAULT null
1067   ,p_pgp_segment16                IN     VARCHAR2 DEFAULT null
1068   ,p_pgp_segment17                IN     VARCHAR2 DEFAULT null
1069   ,p_pgp_segment18                IN     VARCHAR2 DEFAULT null
1070   ,p_pgp_segment19                IN     VARCHAR2 DEFAULT null
1071   ,p_pgp_segment20                IN     VARCHAR2 DEFAULT null
1072   ,p_pgp_segment21                IN     VARCHAR2 DEFAULT null
1073   ,p_pgp_segment22                IN     VARCHAR2 DEFAULT null
1074   ,p_pgp_segment23                IN     VARCHAR2 DEFAULT null
1075   ,p_pgp_segment24                IN     VARCHAR2 DEFAULT null
1076   ,p_pgp_segment25                IN     VARCHAR2 DEFAULT null
1077   ,p_pgp_segment26                IN     VARCHAR2 DEFAULT null
1078   ,p_pgp_segment27                IN     VARCHAR2 DEFAULT null
1079   ,p_pgp_segment28                IN     VARCHAR2 DEFAULT null
1080   ,p_pgp_segment29                IN     VARCHAR2 DEFAULT null
1081   ,p_pgp_segment30                IN     VARCHAR2 DEFAULT null
1082   ,p_scl_contractor_name          IN     VARCHAR2 DEFAULT null
1083   ,p_scl_concat_segments          IN     VARCHAR2 DEFAULT null
1084   ,p_pgp_concat_segments          IN     VARCHAR2 DEFAULT null
1085   ,p_supervisor_assignment_id     IN     NUMBER   DEFAULT null
1086   ,p_assignment_id                   OUT NOCOPY NUMBER
1087   ,p_object_version_number           OUT NOCOPY NUMBER
1088   ,p_effective_start_date            OUT NOCOPY DATE
1089   ,p_effective_end_date              OUT NOCOPY DATE
1090   ,p_assignment_sequence             OUT NOCOPY NUMBER
1091   ,p_comment_id                      OUT NOCOPY NUMBER
1092   ,p_people_group_id                 OUT NOCOPY NUMBER
1093   ,p_people_group_name               OUT NOCOPY VARCHAR2
1094   ,p_other_manager_warning           OUT NOCOPY BOOLEAN
1095   ,p_hourly_salaried_warning         OUT NOCOPY BOOLEAN
1096   ,p_soft_coding_keyflex_id          OUT NOCOPY NUMBER);
1097 --
1098 -- ----------------------------------------------------------------------------
1099 -- |----------------------------< update_in_cwk_asg >-------------------------|
1100 -- ----------------------------------------------------------------------------
1101 --
1102 -- {Start Of Comments}
1103 /*#
1104  * This API updates a contingent worker assignment.
1105  *
1106  * This API updates information for an existing contingent worker assignment
1107  * with a IN legislation. This changes attributes of the contingent worker
1108  * assignment that are not part of any other update.
1109  *
1110  * <p><b>Licensing</b><br>
1111  * This API is licensed for use with Human Resources.
1112  *
1113  * <p><b>Prerequisites</b><br>
1114  * The assignment (p_assignment_id) must exist as of the effective date of the
1115  * update (p_effective_date).
1116  *
1117  * <p><b>Post Success</b><br>
1118  * Updates the assignment of the contingent worker.
1119  *
1120  * <p><b>Post Failure</b><br>
1121  * The API does not update the assignment and raises an error.
1122  *
1123  * @param p_validate If true, then validation alone will be performed and the
1124  * database will remain unchanged. If false and all validation checks pass,
1125  * then the database will be modified.
1126  * @param p_effective_date Determines when the DateTrack operation comes into
1127  * force.
1128  * @param p_datetrack_update_mode Indicates which DateTrack mode to use when
1129  * updating the record. You must set to either UPDATE, CORRECTION,
1130  * UPDATE_OVERRIDE or UPDATE_CHANGE_INSERT. Modes available for use with a
1131  * particular record depend on the dates of previous record changes and the
1132  * effective date of this change.
1133  * @param p_assignment_id Identifies the contingent worker assignment record to
1134  * modify.
1135  * @param p_object_version_number Pass in the current version number of the
1136  * contingent worker assignment to be updated. When the API completes if
1137  * p_validate is false, will be set to the new version number of the updated
1138  * contingent worker assignment. If p_validate is true will be set to the same
1139  * value which was passed in.
1140  * @param p_assignment_category Assignment Category.
1141  * @param p_assignment_number Assignment Number.
1142  * @param p_change_reason Reason for the assignment status change. If there is
1143  * no change reason, then the parameter can be null. Valid values are defined
1144  * in the 'EMP_ASSIGN_REASON' lookup type.. If there is no change reason please
1145  * explicitly set this to null. (else there is a risk of inadvertantly
1146  * recording promotions)
1147  * @param p_comments Comment text.
1148  * @param p_default_code_comb_id Identifier for the General Ledger Accounting
1149  * Flexfield combination that applies to this assignment.
1150  * @param p_establishment_id This identifies the establishment Legal Entity for
1151  * this assignment.
1152  * @param p_frequency Frequency associated with the defined normal working
1153  * hours. Valid values are defined in the 'FREQUENCY' lookup type.
1154  * @param p_internal_address_line Internal address identified with this
1155  * assignment.
1156  * @param p_labour_union_member_flag Indicates whether the employee is a labor
1157  * union member. Value 'Y' indicates employee is a labor union member.
1158  * @param p_manager_flag Indicates whether the employee is a manager.
1159  * @param p_normal_hours Normal working hours for this assignment.
1160  * @param p_project_title Project title.
1161  * @param p_set_of_books_id Identifies General Ledger set of books.
1162  * @param p_source_type Recruitment activity which this assignment is sourced
1163  * from. Valid values are defined in the 'REC_TYPE' lookup type.
1164  * @param p_supervisor_id Supervisor for the assignment. The value refers to
1165  * the supervisor's person record.
1166  * @param p_time_normal_finish Normal work finish time.
1167  * @param p_time_normal_start Normal work start time.
1168  * @param p_title Obsolete parameter, do not use.
1169  * @param p_vendor_assignment_number Supplier's assignment number.
1170  * @param p_vendor_employee_number Supplier's employee number.
1171  * @param p_vendor_id Supplier of assignment.
1172  * @param p_vendor_site_id Supplier site of assignment.
1173  * @param p_po_header_id Assignment purchase order reference.
1174  * @param p_po_line_id Assignment purchase order line.
1175  * @param p_projected_assignment_end Projected end of assignment Reserved for
1176  * future use.
1177  * @param p_assignment_status_type_id Assignment status. The system status must
1178  * be the same as before the update, otherwise one of the status change APIs
1179  * should be used.
1180  * @param p_concat_segments Concatenated segments for Soft Coded Key Flexfield.
1181  * Concatenated segments can be supplied instead of individual segments.
1182  * @param p_attribute_category This context value determines which flexfield
1183  * structure to use with the descriptive flexfield segments.
1184  * @param p_attribute1 Descriptive flexfield segment.
1185  * @param p_attribute2 Descriptive flexfield segment.
1186  * @param p_attribute3 Descriptive flexfield segment.
1187  * @param p_attribute4 Descriptive flexfield segment.
1188  * @param p_attribute5 Descriptive flexfield segment.
1189  * @param p_attribute6 Descriptive flexfield segment.
1190  * @param p_attribute7 Descriptive flexfield segment.
1191  * @param p_attribute8 Descriptive flexfield segment.
1192  * @param p_attribute9 Descriptive flexfield segment.
1193  * @param p_attribute10 Descriptive flexfield segment.
1194  * @param p_attribute11 Descriptive flexfield segment.
1195  * @param p_attribute12 Descriptive flexfield segment.
1196  * @param p_attribute13 Descriptive flexfield segment.
1197  * @param p_attribute14 Descriptive flexfield segment.
1198  * @param p_attribute15 Descriptive flexfield segment.
1199  * @param p_attribute16 Descriptive flexfield segment.
1200  * @param p_attribute17 Descriptive flexfield segment.
1201  * @param p_attribute18 Descriptive flexfield segment.
1202  * @param p_attribute19 Descriptive flexfield segment.
1203  * @param p_attribute20 Descriptive flexfield segment.
1204  * @param p_attribute21 Descriptive flexfield segment.
1205  * @param p_attribute22 Descriptive flexfield segment.
1206  * @param p_attribute23 Descriptive flexfield segment.
1207  * @param p_attribute24 Descriptive flexfield segment.
1208  * @param p_attribute25 Descriptive flexfield segment.
1209  * @param p_attribute26 Descriptive flexfield segment.
1210  * @param p_attribute27 Descriptive flexfield segment.
1211  * @param p_attribute28 Descriptive flexfield segment.
1212  * @param p_attribute29 Descriptive flexfield segment.
1213  * @param p_attribute30 Descriptive flexfield segment.
1214  * @param p_scl_contractor_name Contractor's Name.
1215  * @param p_supervisor_assignment_id Supervisor assignment id.
1216  * @param p_org_now_no_manager_warning Set to true if this assignment is a
1217  * manager, organization_id is updated and there is now no manager in the
1218  * previous organization. Set to false if another manager exists in the
1219  * previous organization. This parameter is always false if organization_id is
1220  * not updated. The warning value applies only as of p_effective_date
1221  * @param p_effective_start_date If p_validate is false, then set to the
1222  * effective start date on the updated contingent worker assignment row which
1223  * now exists as of the effective date. If p_validate is true, then set to
1224  * null.
1225  * @param p_effective_end_date If p_validate is false, then set to the
1226  * effective end date on the updated contingent worker assignment row which now
1227  * exists as of the effective date. If p_validate is true, then set to null.
1228  * @param p_comment_id If p_validate is false and comment text was provided,
1229  * then will be set to the identifier of the created contingent worker
1230  * assignment comment record.
1231  * @param p_no_managers_warning Set to true if as a result of the update there
1232  * is no manager in the organization. Otherwise set to false.
1233  * @param p_other_manager_warning If set to true, then a manager existed in the
1234  * organization prior to calling this API and the manager flag has been set to
1235  * 'Y' for yes.
1236  * @param p_soft_coding_keyflex_id If a value is passed in for this parameter,
1237  * it identifies an existing Soft Coded Key Flexfield combination to associate
1238  * with the assignment, and segment values are ignored. If a value is not
1239  * passed in, then the individual Soft Coded Key Flexfield segments supplied
1240  * will be used to choose an existing combination or create a new combination.
1241  * When the API completes, if p_validate is false, then this uniquely
1242  * identifies the associated combination of the Soft Coded Key flexfield for
1243  * this assignment. If p_validate is true, then set to null.
1244  * @param p_concatenated_segments If p_validate is false, set to Soft Coded Key
1245  * Flexfield concatenated segments, if p_validate is true, set to null.
1246  * @param p_hourly_salaried_warning Set to true if values entered for Salary
1247  * Basis and Hourly Salaried Code are invalid as of the effective date.
1248  * @rep:displayname Update Contingent Worker Assignment for India
1249  * @rep:category BUSINESS_ENTITY PER_CWK_ASG
1250  * @rep:lifecycle active
1251  * @rep:category MISC_EXTENSIONS HR_DATAPUMP
1252  * @rep:scope public
1253  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
1254 */
1255 --
1256 -- {End Of Comments}
1257 --
1258   PROCEDURE update_in_cwk_asg
1259   (p_validate                     IN     BOOLEAN  DEFAULT FALSE
1260   ,p_effective_date               IN     DATE
1261   ,p_datetrack_update_mode        IN     VARCHAR2
1262   ,p_assignment_id                IN     NUMBER
1263   ,p_object_version_number        IN OUT NOCOPY NUMBER
1264   ,p_assignment_category          IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1265   ,p_assignment_number            IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1266   ,p_change_reason                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1267   ,p_comments                     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1268   ,p_default_code_comb_id         IN     NUMBER   DEFAULT HR_API.G_NUMBER
1269   ,p_establishment_id             IN     NUMBER   DEFAULT HR_API.G_NUMBER
1270   ,p_frequency                    IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1271   ,p_internal_address_line        IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1272   ,p_labour_union_member_flag     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1273   ,p_manager_flag                 IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1274   ,p_normal_hours                 IN     NUMBER   DEFAULT HR_API.G_NUMBER
1275   ,p_project_title                IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1276   ,p_set_of_books_id              IN     NUMBER   DEFAULT HR_API.G_NUMBER
1277   ,p_source_type                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1278   ,p_supervisor_id                IN     NUMBER   DEFAULT HR_API.G_NUMBER
1279   ,p_time_normal_finish           IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1280   ,p_time_normal_start            IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1281   ,p_title                        IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1282   ,p_vendor_assignment_number     IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1283   ,p_vendor_employee_number       IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1284   ,p_vendor_id                    IN     NUMBER   DEFAULT HR_API.G_NUMBER
1285   ,p_vendor_site_id               IN     NUMBER   DEFAULT HR_API.G_NUMBER
1286   ,p_po_header_id                 IN     NUMBER   DEFAULT HR_API.G_NUMBER
1287   ,p_po_line_id                   IN     NUMBER   DEFAULT HR_API.G_NUMBER
1288   ,p_projected_assignment_end     IN     DATE     DEFAULT HR_API.G_DATE
1289   ,p_assignment_status_type_id    IN     NUMBER   DEFAULT HR_API.G_NUMBER
1290   ,p_concat_segments              IN     VARCHAR2 DEFAULT NULL
1291   ,p_attribute_category           IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1292   ,p_attribute1                   IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1293   ,p_attribute2                   IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1294   ,p_attribute3                   IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1295   ,p_attribute4                   IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1296   ,p_attribute5                   IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1297   ,p_attribute6                   IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1298   ,p_attribute7                   IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1299   ,p_attribute8                   IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1300   ,p_attribute9                   IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1301   ,p_attribute10                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1302   ,p_attribute11                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1303   ,p_attribute12                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1304   ,p_attribute13                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1305   ,p_attribute14                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1306   ,p_attribute15                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1307   ,p_attribute16                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1308   ,p_attribute17                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1309   ,p_attribute18                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1310   ,p_attribute19                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1311   ,p_attribute20                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1312   ,p_attribute21                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1313   ,p_attribute22                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1314   ,p_attribute23                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1315   ,p_attribute24                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1316   ,p_attribute25                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1317   ,p_attribute26                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1318   ,p_attribute27                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1319   ,p_attribute28                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1320   ,p_attribute29                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1321   ,p_attribute30                  IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1322   ,p_scl_contractor_name          IN     VARCHAR2 DEFAULT HR_API.G_VARCHAR2
1323   ,p_supervisor_assignment_id     IN     NUMBER   DEFAULT HR_API.G_NUMBER
1324   ,p_org_now_no_manager_warning      OUT NOCOPY BOOLEAN
1325   ,p_effective_start_date            OUT NOCOPY DATE
1326   ,p_effective_end_date              OUT NOCOPY DATE
1327   ,p_comment_id                      OUT NOCOPY NUMBER
1328   ,p_no_managers_warning             OUT NOCOPY BOOLEAN
1329   ,p_other_manager_warning           OUT NOCOPY BOOLEAN
1330   ,p_soft_coding_keyflex_id          OUT NOCOPY NUMBER
1331   ,p_concatenated_segments           OUT NOCOPY VARCHAR2
1332   ,p_hourly_salaried_warning         OUT NOCOPY BOOLEAN
1333    );
1334 
1335 END hr_in_assignment_api;