1 PACKAGE hr_hk_assignment_api AUTHID CURRENT_USER AS
2 /* $Header: hrhkwras.pkh 120.2 2011/12/20 12:39:01 jmarupil ship $ */
3 /*#
4 * This Package contains assignment related APIs.
5 * @rep:scope public
6 * @rep:product per
7 * @rep:displayname Assignment for Hong Kong
8 */
9 --
10 -- ----------------------------------------------------------------------------
11 -- |----------------------------< update_hk_emp_asg >-------------------------|
12 -- ----------------------------------------------------------------------------
13 --
14 -- {Start Of Comments}
15 /*#
16 * This procedure updates employee assignment details for Hong Kong.
17 *
18 * The API calls the generic API update_emp_asg, with parameters set as
19 * appropriate for a Hong Kong employee assignment.
20 *
21 * <p><b>Licensing</b><br>
22 * This API is licensed for use with Human Resources.
23 *
24 * <p><b>Prerequisites</b><br>
25 * The assignment (p_assignment_id) must exist as of the effective date of the
26 * update (p_effective_date).
27 *
28 * <p><b>Post Success</b><br>
29 * The employee assignment is successfully updated in the database.
30 *
31 * <p><b>Post Failure</b><br>
32 * The API does not update the assignment and raises an error.
33 * @param p_validate If true, then validation alone will be performed and the
34 * database will remain unchanged. If false and all validation checks pass,
35 * then the database will be modified.
36 * @param p_effective_date Determines when the DateTrack operation takes
37 * effect.
38 * @param p_datetrack_update_mode Indicates which DateTrack mode to use when
39 * updating the record. You must set to either UPDATE, CORRECTION,
40 * UPDATE_OVERRIDE or UPDATE_CHANGE_INSERT. Modes available for use with a
41 * particular record depend on the dates of previous record changes and the
42 * effective date of this change.
43 * @param p_assignment_id Identifies the assignment for which you update
44 * Assignment record.
45 * @param p_object_version_number Pass in the current version number of the
46 * assignment to be updated. When the API completes if p_validate is false,
47 * then set to the version number of the updated assignment. If p_validate is
48 * true, then the value will be null.
49 * @param p_supervisor_id {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.SUPERVISOR_ID}
50 * @param p_assignment_number {@rep:casecolumn
51 * PER_ALL_ASSIGNMENTS_F.ASSIGNMENT_NUMBER}
52 * @param p_change_reason Indicates the reason for the last change in the
53 * assignment. Valid values are defined by 'EMP_ASSIGN_REASON' lookup type.
54 * @param p_comments Comment text.
55 * @param p_date_probation_end {@rep:casecolumn
56 * PER_ALL_ASSIGNMENTS_F.DATE_PROBATION_END}
57 * @param p_default_code_comb_id {@rep:casecolumn
58 * PER_ALL_ASSIGNMENTS_F.DEFAULT_CODE_COMB_ID}
59 * @param p_frequency Frequency of normal working hours, - week, month, year.
60 * Valid values are defined by 'FREQUENCY' lookup type.
61 * @param p_internal_address_line {@rep:casecolumn
62 * PER_ALL_ASSIGNMENTS_F.INTERNAL_ADDRESS_LINE}
63 * @param p_manager_flag {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.MANAGER_FLAG}
64 * @param p_normal_hours {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.NORMAL_HOURS}
65 * @param p_perf_review_period {@rep:casecolumn
66 * PER_ALL_ASSIGNMENTS_F.PERF_REVIEW_PERIOD}
67 * @param p_perf_review_period_frequency The Performance Review Frequency units
68 * will be used along with Performance Review Period to define the time between
69 * reviews. Valid values are defined by 'FREQUENCY' lookup type.
70 * @param p_probation_period {@rep:casecolumn
71 * PER_ALL_ASSIGNMENTS_F.PROBATION_PERIOD}
72 * @param p_probation_unit Units of probation period duration. Valid values are
73 * defined by 'QUALIFYING_UNITS' lookup type.
74 * @param p_sal_review_period {@rep:casecolumn
75 * PER_ALL_ASSIGNMENTS_F.SAL_REVIEW_PERIOD}
76 * @param p_sal_review_period_frequency The Salary Review Frequence Units will
77 * be used with Salary Review Period to define time between salary reviews.
78 * Valid values are defined by 'FREQUENCY' lookup type.
79 * @param p_set_of_books_id {@rep:casecolumn
80 * PER_ALL_ASSIGNMENTS_F.SET_OF_BOOKS_ID}
81 * @param p_source_type Recruitment activity source for applicant assignment,
82 * for example, Advertisement. Valid values are defined by 'REC_TYPE' lookup
83 * type
84 * @param p_time_normal_finish {@rep:casecolumn
85 * PER_ALL_ASSIGNMENTS_F.TIME_NORMAL_FINISH}
86 * @param p_time_normal_start {@rep:casecolumn
87 * PER_ALL_ASSIGNMENTS_F.TIME_NORMAL_START}
88 * @param p_bargaining_unit_code Bargaining unit code. Valid values are defined
89 * by 'BARGAINING_UNIT_CODE' lookup type.
90 * @param p_labour_union_member_flag Indicates whether the employee was in the
91 * dependent voluntary service. Valid values are defined by 'YES_NO' lookup
92 * type.
93 * @param p_hourly_salaried_code Identifies if the assignment is paid by the
94 * hour or by a salary. Valid values are defined by 'HOURLY_SALARIED_CODE'
95 * lookup type.
96 * @param p_ass_attribute_category This context value determines which
97 * Flexfield Structure to use with the Descriptive flexfield segments.
98 * @param p_ass_attribute1 Descriptive flexfield segment.
99 * @param p_ass_attribute2 Descriptive flexfield segment.
100 * @param p_ass_attribute3 Descriptive flexfield segment.
101 * @param p_ass_attribute4 Descriptive flexfield segment.
102 * @param p_ass_attribute5 Descriptive flexfield segment.
103 * @param p_ass_attribute6 Descriptive flexfield segment.
104 * @param p_ass_attribute7 Descriptive flexfield segment.
105 * @param p_ass_attribute8 Descriptive flexfield segment.
106 * @param p_ass_attribute9 Descriptive flexfield segment.
107 * @param p_ass_attribute10 Descriptive flexfield segment.
108 * @param p_ass_attribute11 Descriptive flexfield segment.
109 * @param p_ass_attribute12 Descriptive flexfield segment.
110 * @param p_ass_attribute13 Descriptive flexfield segment.
111 * @param p_ass_attribute14 Descriptive flexfield segment.
112 * @param p_ass_attribute15 Descriptive flexfield segment.
113 * @param p_ass_attribute16 Descriptive flexfield segment.
114 * @param p_ass_attribute17 Descriptive flexfield segment.
115 * @param p_ass_attribute18 Descriptive flexfield segment.
116 * @param p_ass_attribute19 Descriptive flexfield segment.
117 * @param p_ass_attribute20 Descriptive flexfield segment.
118 * @param p_ass_attribute21 Descriptive flexfield segment.
119 * @param p_ass_attribute22 Descriptive flexfield segment.
120 * @param p_ass_attribute23 Descriptive flexfield segment.
121 * @param p_ass_attribute24 Descriptive flexfield segment.
122 * @param p_ass_attribute25 Descriptive flexfield segment.
123 * @param p_ass_attribute26 Descriptive flexfield segment.
124 * @param p_ass_attribute27 Descriptive flexfield segment.
125 * @param p_ass_attribute28 Descriptive flexfield segment.
126 * @param p_ass_attribute29 Descriptive flexfield segment.
127 * @param p_ass_attribute30 Descriptive flexfield segment.
128 * @param p_title Assignment's Title e.g. Mr, Mrs, Dr. Valid values are defined
129 * by 'TITLE' lookup type.
130 * @param p_legal_employer_id Identifies the resgistered employer for the
131 * current assignment.
132 * @param p_principal_employer_name Indentifies the name of the Main employer
133 * if the employee is working Part time.
134 * @param p_include_on_ir56b Include this assignment on the IR56B report, valid
135 * values as applicable defined by YES_NO lookup_type
136 * @param p_exclusion_reason Indicates the reason why the assignment should not
137 * to appear on the IR56B report.
138 * @param p_ir56b_message Indicates the message to appear in the IR56B report.
139 * @param p_monies_held Indicates if any amount is to be withheld by the
140 * employer when the Assignment is leaving the country, Valid values as
141 * applicable are defined by YES_NO lookup_type.
142 * @param p_estimated_amount_held The amount to be withheld by the employer
143 * when the employee is leaving the country.
144 * @param p_soft_coding_keyflex_id If p_segments is set and the Soft coding key
145 * combination already exists, then set to the existing ID else create a new
146 * Soft coding key combination and return its value. If p_segments is not set
147 * and the Soft coding key combination already exists, then set
148 * @param p_comment_id If p_validate is false and new or existing comment text
149 * exists, then will be set to the identifier of the Assignment comment record.
150 * If p_validate is true or no comment text exists, then will be null.
151 * @param p_effective_start_date If p_validate is false, then set to the
152 * effective start date on the updated Assignment row which now exists as of
153 * the effective date. If p_validate is true, then set to null.
154 * @param p_effective_end_date If p_validate is false, then set to the
155 * effective end date on the updated Assignment row which now exists as of the
156 * effective date. If p_validate is true, then set to null.
157 * @param p_concatenated_segments If p_validate is false, returns the
158 * concatenation of all p_segment parameters. If p_validate is true or no
159 * p_segment parameters have been set, this will be null.
160 * @param p_no_managers_warning If p_validate is false, the manager_flag has
161 * been updated from 'Y' to 'N' and no other manager exists in
162 * p_organization_id, then set to true. If p_validate is false, the
163 * manager_flag has been updated from 'Y' to 'N' and another manager exists in
164 * p_organiz
165 * @param p_other_manager_warning If set to true, then a manager existed in the
166 * organization prior to calling this API and the manager flag has been set to
167 * 'Y' for yes.
168 * @rep:displayname Update Employee Assignment for Hong Kong
169 * @rep:category BUSINESS_ENTITY PER_EMPLOYEE_ASG
170 * @rep:category MISC_EXTENSIONS HR_DATAPUMP
171 * @rep:scope public
172 * @rep:lifecycle active
173 * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
174 */
175 --
176 -- {End Of Comments}
177 --
178 PROCEDURE update_hk_emp_asg
179 (p_validate IN BOOLEAN DEFAULT FALSE
180 ,p_effective_date IN DATE
181 ,p_datetrack_update_mode IN VARCHAR2
182 ,p_assignment_id IN NUMBER
183 ,p_object_version_number IN OUT NOCOPY NUMBER
184 ,p_supervisor_id IN NUMBER DEFAULT hr_api.g_number
185 ,p_assignment_number IN VARCHAR2 DEFAULT hr_api.g_varchar2
186 ,p_change_reason IN VARCHAR2 DEFAULT hr_api.g_varchar2
187 ,p_comments IN hr_comments.comment_text%TYPE DEFAULT hr_api.g_varchar2
188 ,p_date_probation_end IN DATE DEFAULT hr_api.g_date
189 ,p_default_code_comb_id IN NUMBER DEFAULT hr_api.g_number
190 ,p_frequency IN VARCHAR2 DEFAULT hr_api.g_varchar2
191 ,p_internal_address_line IN VARCHAR2 DEFAULT hr_api.g_varchar2
192 ,p_manager_flag IN VARCHAR2 DEFAULT hr_api.g_varchar2
193 ,p_normal_hours IN NUMBER DEFAULT hr_api.g_number
194 ,p_perf_review_period IN NUMBER DEFAULT hr_api.g_number
195 ,p_perf_review_period_frequency IN VARCHAR2 DEFAULT hr_api.g_varchar2
196 ,p_probation_period IN NUMBER DEFAULT hr_api.g_number
197 ,p_probation_unit IN VARCHAR2 DEFAULT hr_api.g_varchar2
198 ,p_sal_review_period IN NUMBER DEFAULT hr_api.g_number
199 ,p_sal_review_period_frequency IN VARCHAR2 DEFAULT hr_api.g_varchar2
200 ,p_set_of_books_id IN NUMBER DEFAULT hr_api.g_number
201 ,p_source_type IN VARCHAR2 DEFAULT hr_api.g_varchar2
202 ,p_time_normal_finish IN VARCHAR2 DEFAULT hr_api.g_varchar2
203 ,p_time_normal_start IN VARCHAR2 DEFAULT hr_api.g_varchar2
204 ,p_bargaining_unit_code IN VARCHAR2 DEFAULT hr_api.g_varchar2
205 ,p_labour_union_member_flag IN VARCHAR2 DEFAULT hr_api.g_varchar2
206 ,p_hourly_salaried_code IN VARCHAR2 DEFAULT hr_api.g_varchar2
207 ,p_ass_attribute_category IN VARCHAR2 DEFAULT hr_api.g_varchar2
208 ,p_ass_attribute1 IN VARCHAR2 DEFAULT hr_api.g_varchar2
209 ,p_ass_attribute2 IN VARCHAR2 DEFAULT hr_api.g_varchar2
210 ,p_ass_attribute3 IN VARCHAR2 DEFAULT hr_api.g_varchar2
211 ,p_ass_attribute4 IN VARCHAR2 DEFAULT hr_api.g_varchar2
212 ,p_ass_attribute5 IN VARCHAR2 DEFAULT hr_api.g_varchar2
213 ,p_ass_attribute6 IN VARCHAR2 DEFAULT hr_api.g_varchar2
214 ,p_ass_attribute7 IN VARCHAR2 DEFAULT hr_api.g_varchar2
215 ,p_ass_attribute8 IN VARCHAR2 DEFAULT hr_api.g_varchar2
216 ,p_ass_attribute9 IN VARCHAR2 DEFAULT hr_api.g_varchar2
217 ,p_ass_attribute10 IN VARCHAR2 DEFAULT hr_api.g_varchar2
218 ,p_ass_attribute11 IN VARCHAR2 DEFAULT hr_api.g_varchar2
219 ,p_ass_attribute12 IN VARCHAR2 DEFAULT hr_api.g_varchar2
220 ,p_ass_attribute13 IN VARCHAR2 DEFAULT hr_api.g_varchar2
221 ,p_ass_attribute14 IN VARCHAR2 DEFAULT hr_api.g_varchar2
222 ,p_ass_attribute15 IN VARCHAR2 DEFAULT hr_api.g_varchar2
223 ,p_ass_attribute16 IN VARCHAR2 DEFAULT hr_api.g_varchar2
224 ,p_ass_attribute17 IN VARCHAR2 DEFAULT hr_api.g_varchar2
225 ,p_ass_attribute18 IN VARCHAR2 DEFAULT hr_api.g_varchar2
226 ,p_ass_attribute19 IN VARCHAR2 DEFAULT hr_api.g_varchar2
227 ,p_ass_attribute20 IN VARCHAR2 DEFAULT hr_api.g_varchar2
228 ,p_ass_attribute21 IN VARCHAR2 DEFAULT hr_api.g_varchar2
229 ,p_ass_attribute22 IN VARCHAR2 DEFAULT hr_api.g_varchar2
230 ,p_ass_attribute23 IN VARCHAR2 DEFAULT hr_api.g_varchar2
231 ,p_ass_attribute24 IN VARCHAR2 DEFAULT hr_api.g_varchar2
232 ,p_ass_attribute25 IN VARCHAR2 DEFAULT hr_api.g_varchar2
233 ,p_ass_attribute26 IN VARCHAR2 DEFAULT hr_api.g_varchar2
234 ,p_ass_attribute27 IN VARCHAR2 DEFAULT hr_api.g_varchar2
235 ,p_ass_attribute28 IN VARCHAR2 DEFAULT hr_api.g_varchar2
236 ,p_ass_attribute29 IN VARCHAR2 DEFAULT hr_api.g_varchar2
237 ,p_ass_attribute30 IN VARCHAR2 DEFAULT hr_api.g_varchar2
238 ,p_title IN VARCHAR2 DEFAULT hr_api.g_varchar2
239 ,p_legal_employer_id IN VARCHAR2 DEFAULT hr_api.g_varchar2
240 ,p_principal_employer_name IN VARCHAR2 DEFAULT hr_api.g_varchar2
241 ,p_include_on_ir56b IN VARCHAR2 DEFAULT hr_api.g_varchar2
242 ,p_exclusion_reason IN VARCHAR2 DEFAULT hr_api.g_varchar2
243 ,p_ir56b_message IN VARCHAR2 DEFAULT hr_api.g_varchar2
244 ,p_Monies_held IN VARCHAR2 DEFAULT hr_api.g_varchar2
245 ,p_estimated_amount_held IN VARCHAR2 DEFAULT hr_api.g_varchar2
246 ,p_soft_coding_keyflex_id OUT NOCOPY NUMBER
247 ,p_comment_id OUT NOCOPY NUMBER
248 ,p_effective_start_date OUT NOCOPY DATE
249 ,p_effective_end_date OUT NOCOPY DATE
250 ,p_concatenated_segments OUT NOCOPY VARCHAR2
251 ,p_no_managers_warning OUT NOCOPY BOOLEAN
252 ,p_other_manager_warning OUT NOCOPY BOOLEAN
253 );
254 --
255 -- ----------------------------------------------------------------------------
256 -- |-----------------------< create_hk_secondary_emp_asg >--------------------|
257 -- ----------------------------------------------------------------------------
258 --
259 -- {Start Of Comments}
260 /*#
261 * This API creates a secondary employee assignment for Hong Kong.
262 *
263 * The API calls the generic API create_secondary_emp_asg. This API cannot be
264 * used to create the primary assignment. The primary assignment is created
265 * when you create the employee.
266 *
267 * <p><b>Licensing</b><br>
268 * This API is licensed for use with Human Resources.
269 *
270 * <p><b>Prerequisites</b><br>
271 * The person (p_person_id) and the organization (p_organization_id) must exist
272 * at the effective start date of the assignment (p_effective_date).
273 *
274 * <p><b>Post Success</b><br>
275 * The API successfully creates the secondary employee assignment record in the
276 * database.
277 *
278 * <p><b>Post Failure</b><br>
279 * The API does not create the secondary assignment record and raises an error.
280 * @param p_validate If true, then validation alone will be performed and the
281 * database will remain unchanged. If false and all validation checks pass,
282 * then the database will be modified.
283 * @param p_effective_date Determines when the DateTrack operation takes
284 * effect.
285 * @param p_person_id Identifies the person for whom you create the Secondary
286 * Assignment record.
287 * @param p_organization_id {@rep:casecolumn
288 * PER_ALL_ASSIGNMENTS_F.ORGANIZATION_ID}
289 * @param p_grade_id {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.GRADE_ID}
290 * @param p_position_id {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.POSITION_ID}
291 * @param p_job_id {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.JOB_ID}
292 * @param p_assignment_status_type_id {@rep:casecolumn
293 * PER_ALL_ASSIGNMENTS_F.ASSIGNMENT_STATUS_TYPE_ID}
294 * @param p_payroll_id {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.PAYROLL_ID}
295 * @param p_location_id {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.LOCATION_ID}
296 * @param p_supervisor_id {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.SUPERVISOR_ID}
297 * @param p_special_ceiling_step_id {@rep:casecolumn
298 * PER_ALL_ASSIGNMENTS_F.SPECIAL_CEILING_STEP_ID}
299 * @param p_pay_basis_id {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.PAY_BASIS_ID}
300 * @param p_assignment_number If the number generation method is Manual then
301 * this parameter is mandatory. If the number generation method is Automatic
302 * then the value of this parameter must be NULL. When the API Completes, if
303 * p_validate is false and the assignment number generation method is Automatic
304 * this will be set to the generated assignment number of the person created.
305 * If p_validate is false and the assignment number generation method is manual
306 * or if p_validate is true this will be set to the value passed.
307 * @param p_change_reason Indicates the reason for the last change in the
308 * assignment. Valid values are defined by 'EMP_ASSIGN_REASON' lookup type.
309 * @param p_comments Comment text.
310 * @param p_date_probation_end {@rep:casecolumn
311 * PER_ALL_ASSIGNMENTS_F.DATE_PROBATION_END}
312 * @param p_default_code_comb_id {@rep:casecolumn
313 * PER_ALL_ASSIGNMENTS_F.DEFAULT_CODE_COMB_ID}
314 * @param p_employment_category User defined category. For example Full-Time
315 * Permanent or Part-Time Permanent. Known as Assignment Category. Valid values
316 * are defined by 'EMP_CAT' lookup type.
317 * @param p_frequency Determines the Frequency of normal working hours, - week,
318 * month, year. Valid values are defined by 'FREQUENCY' lookup type.
319 * @param p_internal_address_line {@rep:casecolumn
320 * PER_ALL_ASSIGNMENTS_F.INTERNAL_ADDRESS_LINE}
321 * @param p_manager_flag {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.MANAGER_FLAG}
322 * @param p_normal_hours {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.NORMAL_HOURS}
323 * @param p_perf_review_period {@rep:casecolumn
324 * PER_ALL_ASSIGNMENTS_F.PERF_REVIEW_PERIOD}
325 * @param p_perf_review_period_frequency The Performance Review Frequency units
326 * is used with Performance Review Period to define time between reviews. Valid
327 * values are defined by 'FREQUENCY' lookup type.
328 * @param p_probation_period {@rep:casecolumn
329 * PER_ALL_ASSIGNMENTS_F.PROBATION_PERIOD}
330 * @param p_probation_unit Determines the Units of probation period duration.
331 * Valid values are defined by 'QUALIFYING_UNITS' lookup type.
332 * @param p_sal_review_period {@rep:casecolumn
333 * PER_ALL_ASSIGNMENTS_F.SAL_REVIEW_PERIOD}
334 * @param p_sal_review_period_frequency The Salary Review Frequence Units is
335 * used with Salary Review Period to define time between salary reviews. Valid
336 * values are defined by 'FREQUENCY' lookup type.
337 * @param p_set_of_books_id {@rep:casecolumn
338 * PER_ALL_ASSIGNMENTS_F.SET_OF_BOOKS_ID}
339 * @param p_source_type Determines the Recruitment activity source for
340 * applicant assignment, for example, Advertisement. Valid values are defined
341 * by 'REC_TYPE' lookup type.
342 * @param p_time_normal_finish {@rep:casecolumn
343 * PER_ALL_ASSIGNMENTS_F.TIME_NORMAL_FINISH}
344 * @param p_time_normal_start {@rep:casecolumn
345 * PER_ALL_ASSIGNMENTS_F.TIME_NORMAL_START}
346 * @param p_bargaining_unit_code Determines the Bargaining unit code. Valid
347 * values are defined by 'BARGAINING_UNIT_CODE' lookup type.
348 * @param p_labour_union_member_flag Indicates if the employee is anAssignment
349 * Labour union member. Valid values as applicable are defined by 'YES_NO'
350 * lookup type.
351 * @param p_hourly_salaried_code Identifies if the assignment is paid by the
352 * hour or by a salary. Valid values are defined by 'HOURLY_SALARIED_CODE'
353 * lookup type.
354 * @param p_ass_attribute_category This context value determines which
355 * Flexfield Structure to use with the Descriptive flexfield segments.
356 * @param p_ass_attribute1 Descriptive flexfield segment.
357 * @param p_ass_attribute2 Descriptive flexfield segment.
358 * @param p_ass_attribute3 Descriptive flexfield segment.
359 * @param p_ass_attribute4 Descriptive flexfield segment.
360 * @param p_ass_attribute5 Descriptive flexfield segment.
361 * @param p_ass_attribute6 Descriptive flexfield segment.
362 * @param p_ass_attribute7 Descriptive flexfield segment.
363 * @param p_ass_attribute8 Descriptive flexfield segment.
364 * @param p_ass_attribute9 Descriptive flexfield segment.
365 * @param p_ass_attribute10 Descriptive flexfield segment.
366 * @param p_ass_attribute11 Descriptive flexfield segment.
367 * @param p_ass_attribute12 Descriptive flexfield segment.
368 * @param p_ass_attribute13 Descriptive flexfield segment.
369 * @param p_ass_attribute14 Descriptive flexfield segment.
370 * @param p_ass_attribute15 Descriptive flexfield segment.
371 * @param p_ass_attribute16 Descriptive flexfield segment.
372 * @param p_ass_attribute17 Descriptive flexfield segment.
373 * @param p_ass_attribute18 Descriptive flexfield segment.
374 * @param p_ass_attribute19 Descriptive flexfield segment.
375 * @param p_ass_attribute20 Descriptive flexfield segment.
376 * @param p_ass_attribute21 Descriptive flexfield segment.
377 * @param p_ass_attribute22 Descriptive flexfield segment.
378 * @param p_ass_attribute23 Descriptive flexfield segment.
379 * @param p_ass_attribute24 Descriptive flexfield segment.
380 * @param p_ass_attribute25 Descriptive flexfield segment.
381 * @param p_ass_attribute26 Descriptive flexfield segment.
382 * @param p_ass_attribute27 Descriptive flexfield segment.
383 * @param p_ass_attribute28 Descriptive flexfield segment.
384 * @param p_ass_attribute29 Descriptive flexfield segment.
385 * @param p_ass_attribute30 Descriptive flexfield segment.
386 * @param p_title Assignment's Title e.g. Mr, Mrs, Dr. Valid values are defined
387 * by 'TITLE' lookup type.
388 * @param p_legal_employer_id Identifies the resgistered employer for the
389 * current assignment.
390 * @param p_principal_employer_name Indentifies the name of the Main employer
391 * if the employee is working Part time.
392 * @param p_include_on_ir56b Include this assignment on the IR56B report, valid
393 * values as applicable defined by YES_NO lookup_type
394 * @param p_exclusion_reason Indicates the reason why the assignment should not
395 * to appear on the IR56B report.
396 * @param p_ir56b_message Indicates the message to appear in the IR56B report.
397 * @param p_monies_held Indicates if any amount is to be withheld by the
398 * employer when the Assignment is leaving the country, Valid values as
399 * applicable are defined by YES_NO lookup_type.
400 * @param p_estimated_amount_held The amount to be withheld by the employer
401 * when the employee is leaving the country.
402 * @param p_pgp_segment1 People group segment
403 * @param p_pgp_segment2 People group segment
404 * @param p_pgp_segment3 People group segment
405 * @param p_pgp_segment4 People group segment
406 * @param p_pgp_segment5 People group segment
407 * @param p_pgp_segment6 People group segment
408 * @param p_pgp_segment7 People group segment
409 * @param p_pgp_segment8 People group segment
410 * @param p_pgp_segment9 People group segment
411 * @param p_pgp_segment10 People group segment
412 * @param p_pgp_segment11 People group segment
413 * @param p_pgp_segment12 People group segment
414 * @param p_pgp_segment13 People group segment
415 * @param p_pgp_segment14 People group segment
416 * @param p_pgp_segment15 People group segment
417 * @param p_pgp_segment16 People group segment
418 * @param p_pgp_segment17 People group segment
419 * @param p_pgp_segment18 People group segment
420 * @param p_pgp_segment19 People group segment
421 * @param p_pgp_segment20 People group segment
422 * @param p_pgp_segment21 People group segment
423 * @param p_pgp_segment22 People group segment
424 * @param p_pgp_segment23 People group segment
425 * @param p_pgp_segment24 People group segment
426 * @param p_pgp_segment25 People group segment
427 * @param p_pgp_segment26 People group segment
428 * @param p_pgp_segment27 People group segment
429 * @param p_pgp_segment28 People group segment
430 * @param p_pgp_segment29 People group segment
431 * @param p_pgp_segment30 People group segment
432 * @param p_pgp_concat_segments Determines the Concatenated segments for all
433 * the people group segments.
434 * @param p_assignment_id If p_validate is false, then this uniquely identifies
435 * the created Secondary Assignment. If p_validate is true, then set to null.
436 * @param p_people_group_id If p_validate is false and if the people group key
437 * combination already exists then the existing people group id will be
438 * returned else a new poeple group key combination would be created with the
439 * segments entered and its people group id returned. If p_validate is
440 * true,then the value will be null.
441 * @param p_soft_coding_keyflex_id If p_validate is set and the Soft coding key
442 * combination already exists, then set to the existing ID else create a new
443 * Soft coding key combination and return its value. If p_validate is true or
444 * no values are entered for segments contributing to the Soft coding key, then
445 * the value will be null.
446 * @param p_object_version_number If p_validate is false, then set to the
447 * version number of the created Secondary Assignment. If p_validate is true,
448 * then the value will be null.
449 * @param p_effective_start_date If p_validate is false, then set to the
450 * earliest effective start date for the created Secondary Assignment. If
451 * p_validate is true, then set to null.
452 * @param p_effective_end_date If p_validate is false, then set to the
453 * effective end date for the created Secondary Assignment. If p_validate is
454 * true, then set to null.
455 * @param p_assignment_sequence If p_validate is false, returns the sequence of
456 * the current assignment. If p_validate is true, this value will be null.
457 * @param p_comment_id If p_validate is false and comment text was provided,
458 * then will be set to the identifier of the created Secondary Assignment
459 * comment record. If p_validate is true or no comment text was provided, then
460 * will be null.
461 * @param p_concatenated_segments If p_validate is false, returns the
462 * concatenation of all p_segment parameters. If p_validate is true or no
463 * p_segment parameters have been set, this will be null.
464 * @param p_group_name if p_validate is false, returns the existing group name.
465 * If p_validate is true then returns the new group name.
466 * @param p_other_manager_warning If set to true, then a manager existed in the
467 * organization prior to calling this API and the manager flag has been set to
468 * 'Y' for yes.
469 * @rep:displayname Create Secondary Employee Assignment for Hong Kong
470 * @rep:category BUSINESS_ENTITY PER_EMPLOYEE_ASG
471 * @rep:category MISC_EXTENSIONS HR_DATAPUMP
472 * @rep:scope public
473 * @rep:lifecycle active
474 * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
475 */
476 --
477 -- {End Of Comments}
478 --
479 PROCEDURE create_hk_secondary_emp_asg
480 (p_validate IN BOOLEAN DEFAULT FALSE
481 ,p_effective_date IN DATE
482 ,p_person_id IN NUMBER
483 ,p_organization_id IN NUMBER
484 ,p_grade_id IN NUMBER DEFAULT NULL
485 ,p_position_id IN NUMBER DEFAULT NULL
486 ,p_job_id IN NUMBER DEFAULT NULL
487 ,p_assignment_status_type_id IN NUMBER DEFAULT NULL
488 ,p_payroll_id IN NUMBER DEFAULT NULL
489 ,p_location_id IN NUMBER DEFAULT NULL
490 ,p_supervisor_id IN NUMBER DEFAULT NULL
491 ,p_special_ceiling_step_id IN NUMBER DEFAULT NULL
492 ,p_pay_basis_id IN NUMBER DEFAULT NULL
493 ,p_assignment_number IN OUT NOCOPY VARCHAR2
494 ,p_change_reason IN VARCHAR2 DEFAULT NULL
495 ,p_comments IN hr_comments.comment_text%TYPE DEFAULT NULL
496 ,p_date_probation_end IN DATE DEFAULT NULL
497 ,p_default_code_comb_id IN NUMBER DEFAULT NULL
498 ,p_employment_category IN VARCHAR2 DEFAULT NULL
499 ,p_frequency IN VARCHAR2 DEFAULT NULL
500 ,p_internal_address_line IN VARCHAR2 DEFAULT NULL
501 ,p_manager_flag IN VARCHAR2 DEFAULT NULL
502 ,p_normal_hours IN NUMBER DEFAULT NULL
503 ,p_perf_review_period IN NUMBER DEFAULT NULL
504 ,p_perf_review_period_frequency IN VARCHAR2 DEFAULT NULL
505 ,p_probation_period IN NUMBER DEFAULT NULL
506 ,p_probation_unit IN VARCHAR2 DEFAULT NULL
507 ,p_sal_review_period IN NUMBER DEFAULT NULL
508 ,p_sal_review_period_frequency IN VARCHAR2 DEFAULT NULL
509 ,p_set_of_books_id IN NUMBER DEFAULT NULL
510 ,p_source_type IN VARCHAR2 DEFAULT NULL
511 ,p_time_normal_finish IN VARCHAR2 DEFAULT NULL
512 ,p_time_normal_start IN VARCHAR2 DEFAULT NULL
513 ,p_bargaining_unit_code IN VARCHAR2 DEFAULT NULL
514 ,p_labour_union_member_flag in varchar2 default 'N'
515 ,p_hourly_salaried_code IN VARCHAR2 DEFAULT NULL
516 ,p_ass_attribute_category IN VARCHAR2 DEFAULT NULL
517 ,p_ass_attribute1 IN VARCHAR2 DEFAULT NULL
518 ,p_ass_attribute2 IN VARCHAR2 DEFAULT NULL
519 ,p_ass_attribute3 IN VARCHAR2 DEFAULT NULL
520 ,p_ass_attribute4 IN VARCHAR2 DEFAULT NULL
521 ,p_ass_attribute5 IN VARCHAR2 DEFAULT NULL
522 ,p_ass_attribute6 IN VARCHAR2 DEFAULT NULL
523 ,p_ass_attribute7 IN VARCHAR2 DEFAULT NULL
524 ,p_ass_attribute8 IN VARCHAR2 DEFAULT NULL
525 ,p_ass_attribute9 IN VARCHAR2 DEFAULT NULL
526 ,p_ass_attribute10 IN VARCHAR2 DEFAULT NULL
527 ,p_ass_attribute11 IN VARCHAR2 DEFAULT NULL
528 ,p_ass_attribute12 IN VARCHAR2 DEFAULT NULL
529 ,p_ass_attribute13 IN VARCHAR2 DEFAULT NULL
530 ,p_ass_attribute14 IN VARCHAR2 DEFAULT NULL
531 ,p_ass_attribute15 IN VARCHAR2 DEFAULT NULL
532 ,p_ass_attribute16 IN VARCHAR2 DEFAULT NULL
533 ,p_ass_attribute17 IN VARCHAR2 DEFAULT NULL
534 ,p_ass_attribute18 IN VARCHAR2 DEFAULT NULL
535 ,p_ass_attribute19 IN VARCHAR2 DEFAULT NULL
536 ,p_ass_attribute20 IN VARCHAR2 DEFAULT NULL
537 ,p_ass_attribute21 IN VARCHAR2 DEFAULT NULL
538 ,p_ass_attribute22 IN VARCHAR2 DEFAULT NULL
539 ,p_ass_attribute23 IN VARCHAR2 DEFAULT NULL
540 ,p_ass_attribute24 IN VARCHAR2 DEFAULT NULL
541 ,p_ass_attribute25 IN VARCHAR2 DEFAULT NULL
542 ,p_ass_attribute26 IN VARCHAR2 DEFAULT NULL
543 ,p_ass_attribute27 IN VARCHAR2 DEFAULT NULL
544 ,p_ass_attribute28 IN VARCHAR2 DEFAULT NULL
545 ,p_ass_attribute29 IN VARCHAR2 DEFAULT NULL
546 ,p_ass_attribute30 IN VARCHAR2 DEFAULT NULL
547 ,p_title IN VARCHAR2 DEFAULT NULL
548 ,p_legal_employer_id IN VARCHAR2 DEFAULT NULL
549 ,p_principal_employer_name IN VARCHAR2 DEFAULT NULL
550 ,p_include_on_ir56b IN VARCHAR2 DEFAULT NULL
551 ,p_exclusion_reason IN VARCHAR2 DEFAULT NULL
552 ,p_ir56b_message IN VARCHAR2 DEFAULT NULL
553 ,p_Monies_held IN VARCHAR2 DEFAULT NULL
554 ,p_estimated_amount_held IN VARCHAR2 DEFAULT NULL
555 ,p_pgp_segment1 IN VARCHAR2 DEFAULT NULL
556 ,p_pgp_segment2 IN VARCHAR2 DEFAULT NULL
557 ,p_pgp_segment3 IN VARCHAR2 DEFAULT NULL
558 ,p_pgp_segment4 IN VARCHAR2 DEFAULT NULL
559 ,p_pgp_segment5 IN VARCHAR2 DEFAULT NULL
560 ,p_pgp_segment6 IN VARCHAR2 DEFAULT NULL
561 ,p_pgp_segment7 IN VARCHAR2 DEFAULT NULL
562 ,p_pgp_segment8 IN VARCHAR2 DEFAULT NULL
563 ,p_pgp_segment9 IN VARCHAR2 DEFAULT NULL
564 ,p_pgp_segment10 IN VARCHAR2 DEFAULT NULL
565 ,p_pgp_segment11 IN VARCHAR2 DEFAULT NULL
566 ,p_pgp_segment12 IN VARCHAR2 DEFAULT NULL
567 ,p_pgp_segment13 IN VARCHAR2 DEFAULT NULL
568 ,p_pgp_segment14 IN VARCHAR2 DEFAULT NULL
569 ,p_pgp_segment15 IN VARCHAR2 DEFAULT NULL
570 ,p_pgp_segment16 IN VARCHAR2 DEFAULT NULL
571 ,p_pgp_segment17 IN VARCHAR2 DEFAULT NULL
572 ,p_pgp_segment18 IN VARCHAR2 DEFAULT NULL
573 ,p_pgp_segment19 IN VARCHAR2 DEFAULT NULL
574 ,p_pgp_segment20 IN VARCHAR2 DEFAULT NULL
575 ,p_pgp_segment21 IN VARCHAR2 DEFAULT NULL
576 ,p_pgp_segment22 IN VARCHAR2 DEFAULT NULL
577 ,p_pgp_segment23 IN VARCHAR2 DEFAULT NULL
578 ,p_pgp_segment24 IN VARCHAR2 DEFAULT NULL
579 ,p_pgp_segment25 IN VARCHAR2 DEFAULT NULL
580 ,p_pgp_segment26 IN VARCHAR2 DEFAULT NULL
581 ,p_pgp_segment27 IN VARCHAR2 DEFAULT NULL
582 ,p_pgp_segment28 IN VARCHAR2 DEFAULT NULL
583 ,p_pgp_segment29 IN VARCHAR2 DEFAULT NULL
584 ,p_pgp_segment30 IN VARCHAR2 DEFAULT NULL
585 ,p_pgp_concat_segments IN VARCHAR2 DEFAULT NULL
586 ,p_assignment_id OUT NOCOPY NUMBER
587 ,p_people_group_id OUT NOCOPY NUMBER
588 ,p_soft_coding_keyflex_id OUT NOCOPY NUMBER
589 ,p_object_version_number OUT NOCOPY NUMBER
590 ,p_effective_start_date OUT NOCOPY DATE
591 ,p_effective_end_date OUT NOCOPY DATE
592 ,p_assignment_sequence OUT NOCOPY NUMBER
593 ,p_comment_id OUT NOCOPY NUMBER
594 ,p_concatenated_segments OUT NOCOPY VARCHAR2
595 ,p_group_name OUT NOCOPY VARCHAR2
596 ,p_other_manager_warning OUT NOCOPY BOOLEAN
597 );
598 --
599 END hr_hk_assignment_api;