DBA Data[Home] [Help]

PACKAGE: APPS.HR_EMPLOYEE_API

Source


1 Package hr_employee_api as
2 /* $Header: peempapi.pkh 120.2.12010000.1 2008/07/28 04:34:26 appldev ship $ */
3 /*#
4  * This package contains employee APIs.
5  * @rep:scope public
6  * @rep:product per
7  * @rep:displayname Employee
8 */
9 --
10 -- ----------------------------------------------------------------------------
11 -- |-----------------------------< create_employee >--------------------------|
12 -- ----------------------------------------------------------------------------
13 --
14 -- {Start Of Comments}
15 /*#
16  * This API creates a new employee.
17  *
18  * This API creates a default primary assignment and a period of service for
19  * the employee. Secure user functionality is included in this version of the
20  * API. The employee is visible to secure users in the business group. <P>HR
21  * Foundation users can use the following parameters only: p_validate,
22  * p_hire_date, p_business_group_id, p_last_name, p_previous_last_name,
23  * p_mailstop, p_office_number, p_internal_location, p_correspondence_language,
24  * p_known_as, p_sex, p_date_of_birth, p_email_address, p_employee_number,
25  * p_expense_check_send_to_addres, p_first_name, p_middle_names,
26  * p_national_identifier, p_title, p_attribute_category, and p_attribute1-30.
27  *
28  * <p><b>Licensing</b><br>
29  * This API is licensed for use with Human Resources and HR Foundation.
30  *
31  * <p><b>Prerequisites</b><br>
32  * The business group must exist on the effective date. If person_type_id is
33  * supplied, it must have a corresponding system person type of EMP and must be
34  * active in the same business group as the employee being created.
35  *
36  * <p><b>Post Success</b><br>
37  * The person, period of service, and default employee assignment are created.
38  *
39  * <p><b>Post Failure</b><br>
40  * The employee is not created and an error is raised.
41  * @param p_validate If true, then validation alone will be performed and the
42  * database will remain unchanged. If false and all validation checks pass,
43  * then the database will be modified.
44  * @param p_hire_date Hire Date.
45  * @param p_business_group_id Business group of the person.
46  * @param p_last_name Last name.
47  * @param p_sex Legal gender. Valid values are defined by the SEX lookup type.
48  * @param p_person_type_id Type of employee being created.
49  * @param p_per_comments Person comment text.
50  * @param p_date_employee_data_verified Date on which the employee data was
51  * last verified.
52  * @param p_date_of_birth Date of birth.
53  * @param p_email_address Email address.
54  * @param p_employee_number The business group's employee number generation
55  * method determines when the API derives and passes out an employee number or
56  * when the calling program should pass in a value. When the API call completes
57  * if p_validate is false then will be set to the employee number. If
58  * p_validate is true then will be set to the passed value.
59  * @param p_expense_check_send_to_addres Mailing address.
60  * @param p_first_name First name.
61  * @param p_known_as Preferred name.
62  * @param p_marital_status Marital status. Valid values are defined by the
63  * MAR_STATUS lookup type.
64  * @param p_middle_names Middle names.
65  * @param p_nationality Nationality. Valid values are defined by the
66  * NATIONALITY lookup type.
67  * @param p_national_identifier Number by which a person is identified in a
68  * given legislation.
69  * @param p_previous_last_name Previous last name.
70  * @param p_registered_disabled_flag Flag indicating whether the person is
71  * classified as disabled.
72  * @param p_title Title. Valid values are defined by the TITLE lookup type.
73  * @param p_vendor_id Obsolete parameter, do not use.
74  * @param p_work_telephone Obsolete parameter, do not use.
75  * @param p_attribute_category This context value determines which flexfield
76  * structure to use with the descriptive flexfield segments.
77  * @param p_attribute1 Descriptive flexfield segment.
78  * @param p_attribute2 Descriptive flexfield segment.
79  * @param p_attribute3 Descriptive flexfield segment.
80  * @param p_attribute4 Descriptive flexfield segment.
81  * @param p_attribute5 Descriptive flexfield segment.
82  * @param p_attribute6 Descriptive flexfield segment.
83  * @param p_attribute7 Descriptive flexfield segment.
84  * @param p_attribute8 Descriptive flexfield segment.
85  * @param p_attribute9 Descriptive flexfield segment.
86  * @param p_attribute10 Descriptive flexfield segment.
87  * @param p_attribute11 Descriptive flexfield segment.
88  * @param p_attribute12 Descriptive flexfield segment.
89  * @param p_attribute13 Descriptive flexfield segment.
90  * @param p_attribute14 Descriptive flexfield segment.
91  * @param p_attribute15 Descriptive flexfield segment.
92  * @param p_attribute16 Descriptive flexfield segment.
93  * @param p_attribute17 Descriptive flexfield segment.
94  * @param p_attribute18 Descriptive flexfield segment.
95  * @param p_attribute19 Descriptive flexfield segment.
96  * @param p_attribute20 Descriptive flexfield segment.
97  * @param p_attribute21 Descriptive flexfield segment.
98  * @param p_attribute22 Descriptive flexfield segment.
99  * @param p_attribute23 Descriptive flexfield segment.
100  * @param p_attribute24 Descriptive flexfield segment.
101  * @param p_attribute25 Descriptive flexfield segment.
102  * @param p_attribute26 Descriptive flexfield segment.
103  * @param p_attribute27 Descriptive flexfield segment.
104  * @param p_attribute28 Descriptive flexfield segment.
105  * @param p_attribute29 Descriptive flexfield segment.
106  * @param p_attribute30 Descriptive flexfield segment.
107  * @param p_per_information_category Obsolete parameter, do not use.
108  * @param p_per_information1 Developer descriptive flexfield segment.
109  * @param p_per_information2 Developer descriptive flexfield segment.
110  * @param p_per_information3 Developer descriptive flexfield segment.
111  * @param p_per_information4 Developer descriptive flexfield segment.
112  * @param p_per_information5 Developer descriptive flexfield segment.
113  * @param p_per_information6 Developer descriptive flexfield segment.
114  * @param p_per_information7 Developer descriptive flexfield segment.
115  * @param p_per_information8 Developer descriptive flexfield segment.
116  * @param p_per_information9 Developer descriptive flexfield segment.
117  * @param p_per_information10 Developer descriptive flexfield segment.
118  * @param p_per_information11 Developer descriptive flexfield segment.
119  * @param p_per_information12 Developer descriptive flexfield segment.
120  * @param p_per_information13 Developer descriptive flexfield segment.
121  * @param p_per_information14 Developer descriptive flexfield segment.
122  * @param p_per_information15 Developer descriptive flexfield segment.
123  * @param p_per_information16 Developer descriptive flexfield segment.
124  * @param p_per_information17 Developer descriptive flexfield segment.
125  * @param p_per_information18 Developer descriptive flexfield segment.
126  * @param p_per_information19 Developer descriptive flexfield segment.
127  * @param p_per_information20 Developer descriptive flexfield segment.
128  * @param p_per_information21 Developer descriptive flexfield segment.
129  * @param p_per_information22 Developer descriptive flexfield segment.
130  * @param p_per_information23 Developer descriptive flexfield segment.
131  * @param p_per_information24 Developer descriptive flexfield segment.
132  * @param p_per_information25 Developer descriptive flexfield segment.
133  * @param p_per_information26 Developer descriptive flexfield segment.
134  * @param p_per_information27 Developer descriptive flexfield segment.
135  * @param p_per_information28 Developer descriptive flexfield segment.
136  * @param p_per_information29 Developer descriptive flexfield segment.
137  * @param p_per_information30 Developer descriptive flexfield segment.
138  * @param p_date_of_death Date of death.
139  * @param p_background_check_status Flag indicating whether the person's
140  * background has been checked.
141  * @param p_background_date_check Date on which the background check was
142  * performed.
143  * @param p_blood_type Blood type.
144  * @param p_correspondence_language Preferred language for correspondence.
145  * @param p_fast_path_employee Obsolete parameter, do not use.
146  * @param p_fte_capacity Obsolete parameter, do not use.
147  * @param p_honors Honors awarded.
148  * @param p_internal_location Internal location of office.
149  * @param p_last_medical_test_by Name of physician who performed the last
150  * medical test.
151  * @param p_last_medical_test_date Date of last medical test.
152  * @param p_mailstop Internal mail location.
153  * @param p_office_number Office number.
154  * @param p_on_military_service Flag indicating whether the person is on
155  * military service.
156  * @param p_pre_name_adjunct First part of the last name.
157  * @param p_rehire_recommendation Obsolete parameter, do not use.
158  * @param p_projected_start_date Obsolete parameter, do not use.
159  * @param p_resume_exists Flag indicating whether the person's resume is on
160  * file.
161  * @param p_resume_last_updated Date on which the resume was last updated.
162  * @param p_second_passport_exists Flag indicating whether a person has
163  * multiple passports.
164  * @param p_student_status If this employee is a student, this field is used to
165  * capture their status. Valid values are defined by the STUDENT_STATUS lookup
166  * type.
167  * @param p_work_schedule Days on which this person will work.
168  * @param p_suffix Suffix after the person's last name e.g. Sr., Jr., III.
169  * @param p_benefit_group_id Benefit group to which this person will belong.
170  * @param p_receipt_of_death_cert_date Date death certificate was received.
171  * @param p_coord_ben_med_pln_no Secondary medical plan name. Column used for
172  * external processing.
173  * @param p_coord_ben_no_cvg_flag No secondary medical plan coverage. Column
174  * used for external processing.
175  * @param p_coord_ben_med_ext_er Secondary external medical coverage. Column
176  * used for external processing.
177  * @param p_coord_ben_med_pl_name Secondary medical coverage name. Column used
178  * for external processing.
179  * @param p_coord_ben_med_insr_crr_name Secondary medical coverage insurance
180  * carrier name. Column used for external processing.
181  * @param p_coord_ben_med_insr_crr_ident Secondary medical coverage insurance
182  * carrier identifier. Column used for external processing.
183  * @param p_coord_ben_med_cvg_strt_dt Secondary medical coverage effective
184  * start date. Column used for external processing.
185  * @param p_coord_ben_med_cvg_end_dt Secondary medical coverage effective end
186  * date. Column used for external processing.
187  * @param p_uses_tobacco_flag Flag indicating whether the person uses tobacco.
188  * @param p_dpdnt_adoption_date Date on which the dependent was adopted.
189  * @param p_dpdnt_vlntry_svce_flag Flag indicating whether the dependent is on
190  * voluntary service.
191  * @param p_original_date_of_hire Original date of hire.
192  * @param p_adjusted_svc_date Adjusted service date.
193  * @param p_town_of_birth Town or city of birth.
194  * @param p_region_of_birth Geographical region of birth.
195  * @param p_country_of_birth Country of birth.
196  * @param p_global_person_id Obsolete parameter, do not use.
197  * @param p_party_id TCA party for whom you create the person record.
198  * @param p_person_id If p_validate is false, then this uniquely identifies the
199  * person created. If p_validate is true, then set to null.
200  * @param p_assignment_id If p_validate is false, then this uniquely identifies
201  * the created assignment. If p_validate is true, then set to null.
202  * @param p_per_object_version_number If p_validate is false, then set to the
203  * version number of the created person. If p_validate is true, then set to
204  * null.
205  * @param p_asg_object_version_number If p_validate is false, then this
206  * parameter is set to the version number of the assignment created. If
207  * p_validate is true, then this parameter is null.
208  * @param p_per_effective_start_date If p_validate is false, then set to the
209  * earliest effective start date for the created person. If p_validate is true,
210  * then set to null.
211  * @param p_per_effective_end_date If p_validate is false, then set to the
212  * effective end date for the created person. If p_validate is true, then set
213  * to null.
214  * @param p_full_name If p_validate is false, then set to the complete full
215  * name of the person. If p_validate is true, then set to null.
216  * @param p_per_comment_id If p_validate is false and comment text was
217  * provided, then will be set to the identifier of the created person comment
218  * record. If p_validate is true or no comment text was provided, then will be
219  * null.
220  * @param p_assignment_sequence If p_validate is false, then set to the
221  * sequence number of the default assignment. If p_validate is true, then set
222  * to null.
223  * @param p_assignment_number If p_validate is false, then set to the
224  * assignment number of the default assignment. If p_validate is true, then set
225  * to null.
226  * @param p_name_combination_warning If set to true, then the combination of
227  * last name, first name and date of birth existed prior to calling this API.
228  * @param p_assign_payroll_warning If set to true, then the date of birth is
229  * not entered. If set to false, then the date of birth has been entered.
230  * Indicates if it will be possible to set the payroll on any of this person's
231  * assignments.
232  * @param p_orig_hire_warning Set to true if the original hire date is
233  * populated and the person type is not "Employee", "Employee and Applicant",
234  * "Ex-employee" or "Ex-employee and Applicant".
235  * @rep:displayname Create Employee
236  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE
237  * @rep:category MISC_EXTENSIONS HR_DATAPUMP
238  * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
239  * @rep:scope public
240  * @rep:lifecycle active
241  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
242 */
243 --
244 -- {End Of Comments}
245 --
246 procedure create_employee
247   (p_validate                      in     boolean  default false
248   ,p_hire_date                     in     date
249   ,p_business_group_id             in     number
250   ,p_last_name                     in     varchar2
251   ,p_sex                           in     varchar2
252   ,p_person_type_id                in     number   default null
253   ,p_per_comments                  in     varchar2 default null
254   ,p_date_employee_data_verified   in     date     default null
255   ,p_date_of_birth                 in     date     default null
256   ,p_email_address                 in     varchar2 default null
257   ,p_employee_number               in out nocopy varchar2
258   ,p_expense_check_send_to_addres  in     varchar2 default null
259   ,p_first_name                    in     varchar2 default null
260   ,p_known_as                      in     varchar2 default null
261   ,p_marital_status                in     varchar2 default null
262   ,p_middle_names                  in     varchar2 default null
263   ,p_nationality                   in     varchar2 default null
264   ,p_national_identifier           in     varchar2 default null
265   ,p_previous_last_name            in     varchar2 default null
266   ,p_registered_disabled_flag      in     varchar2 default null
267   ,p_title                         in     varchar2 default null
268   ,p_vendor_id                     in     number   default null
269   ,p_work_telephone                in     varchar2 default null
270   ,p_attribute_category            in     varchar2 default null
271   ,p_attribute1                    in     varchar2 default null
272   ,p_attribute2                    in     varchar2 default null
273   ,p_attribute3                    in     varchar2 default null
274   ,p_attribute4                    in     varchar2 default null
275   ,p_attribute5                    in     varchar2 default null
276   ,p_attribute6                    in     varchar2 default null
277   ,p_attribute7                    in     varchar2 default null
278   ,p_attribute8                    in     varchar2 default null
279   ,p_attribute9                    in     varchar2 default null
280   ,p_attribute10                   in     varchar2 default null
281   ,p_attribute11                   in     varchar2 default null
282   ,p_attribute12                   in     varchar2 default null
283   ,p_attribute13                   in     varchar2 default null
284   ,p_attribute14                   in     varchar2 default null
285   ,p_attribute15                   in     varchar2 default null
286   ,p_attribute16                   in     varchar2 default null
287   ,p_attribute17                   in     varchar2 default null
288   ,p_attribute18                   in     varchar2 default null
289   ,p_attribute19                   in     varchar2 default null
290   ,p_attribute20                   in     varchar2 default null
291   ,p_attribute21                   in     varchar2 default null
292   ,p_attribute22                   in     varchar2 default null
293   ,p_attribute23                   in     varchar2 default null
294   ,p_attribute24                   in     varchar2 default null
295   ,p_attribute25                   in     varchar2 default null
296   ,p_attribute26                   in     varchar2 default null
297   ,p_attribute27                   in     varchar2 default null
298   ,p_attribute28                   in     varchar2 default null
299   ,p_attribute29                   in     varchar2 default null
300   ,p_attribute30                   in     varchar2 default null
301   ,p_per_information_category      in     varchar2 default null
302   -- p_per_information_category - Obsolete parameter, do not use
303   ,p_per_information1              in     varchar2 default null
304   ,p_per_information2              in     varchar2 default null
305   ,p_per_information3              in     varchar2 default null
306   ,p_per_information4              in     varchar2 default null
307   ,p_per_information5              in     varchar2 default null
308   ,p_per_information6              in     varchar2 default null
309   ,p_per_information7              in     varchar2 default null
310   ,p_per_information8              in     varchar2 default null
311   ,p_per_information9              in     varchar2 default null
312   ,p_per_information10             in     varchar2 default null
316   ,p_per_information14             in     varchar2 default null
313   ,p_per_information11             in     varchar2 default null
314   ,p_per_information12             in     varchar2 default null
315   ,p_per_information13             in     varchar2 default null
317   ,p_per_information15             in     varchar2 default null
318   ,p_per_information16             in     varchar2 default null
319   ,p_per_information17             in     varchar2 default null
320   ,p_per_information18             in     varchar2 default null
321   ,p_per_information19             in     varchar2 default null
322   ,p_per_information20             in     varchar2 default null
323   ,p_per_information21             in     varchar2 default null
324   ,p_per_information22             in     varchar2 default null
325   ,p_per_information23             in     varchar2 default null
326   ,p_per_information24             in     varchar2 default null
327   ,p_per_information25             in     varchar2 default null
328   ,p_per_information26             in     varchar2 default null
329   ,p_per_information27             in     varchar2 default null
330   ,p_per_information28             in     varchar2 default null
331   ,p_per_information29             in     varchar2 default null
332   ,p_per_information30             in     varchar2 default null
333   ,p_date_of_death                 in     date     default null
334   ,p_background_check_status       in     varchar2 default null
335   ,p_background_date_check         in     date     default null
336   ,p_blood_type                    in     varchar2 default null
337   ,p_correspondence_language       in     varchar2 default null
338   ,p_fast_path_employee            in     varchar2 default null
339   ,p_fte_capacity                  in     number   default null
340   ,p_honors                        in     varchar2 default null
341   ,p_internal_location             in     varchar2 default null
342   ,p_last_medical_test_by          in     varchar2 default null
343   ,p_last_medical_test_date        in     date     default null
344   ,p_mailstop                      in     varchar2 default null
345   ,p_office_number                 in     varchar2 default null
346   ,p_on_military_service           in     varchar2 default null
347   ,p_pre_name_adjunct              in     varchar2 default null
348   ,p_rehire_recommendation         in     varchar2 default null  -- Bug3210500
349   ,p_projected_start_date          in     date     default null
350   ,p_resume_exists                 in     varchar2 default null
351   ,p_resume_last_updated           in     date     default null
352   ,p_second_passport_exists        in     varchar2 default null
353   ,p_student_status                in     varchar2 default null
354   ,p_work_schedule                 in     varchar2 default null
355   ,p_suffix                        in     varchar2 default null
356   ,p_benefit_group_id              in     number   default null
357   ,p_receipt_of_death_cert_date    in     date     default null
358   ,p_coord_ben_med_pln_no          in     varchar2 default null
359   ,p_coord_ben_no_cvg_flag         in     varchar2 default 'N'
360   ,p_coord_ben_med_ext_er          in     varchar2 default null
361   ,p_coord_ben_med_pl_name         in     varchar2 default null
362   ,p_coord_ben_med_insr_crr_name   in     varchar2 default null
363   ,p_coord_ben_med_insr_crr_ident  in     varchar2 default null
364   ,p_coord_ben_med_cvg_strt_dt     in     date default null
365   ,p_coord_ben_med_cvg_end_dt      in     date default null
366   ,p_uses_tobacco_flag             in     varchar2 default null
367   ,p_dpdnt_adoption_date           in     date     default null
368   ,p_dpdnt_vlntry_svce_flag        in     varchar2 default 'N'
369   ,p_original_date_of_hire         in     date     default null
370   ,p_adjusted_svc_date             in     date     default null
371   ,p_town_of_birth                in      varchar2 default null
372   ,p_region_of_birth              in      varchar2 default null
373   ,p_country_of_birth             in      varchar2 default null
374   ,p_global_person_id             in      varchar2 default null
375   ,p_party_id                     in      number default null
376   ,p_person_id                        out nocopy number
377   ,p_assignment_id                    out nocopy number
378   ,p_per_object_version_number        out nocopy number
379   ,p_asg_object_version_number        out nocopy number
380   ,p_per_effective_start_date         out nocopy date
381   ,p_per_effective_end_date           out nocopy date
382   ,p_full_name                        out nocopy varchar2
383   ,p_per_comment_id                   out nocopy number
384   ,p_assignment_sequence              out nocopy number
385   ,p_assignment_number                out nocopy varchar2
386   ,p_name_combination_warning         out nocopy boolean
387   ,p_assign_payroll_warning           out nocopy boolean
388   ,p_orig_hire_warning                out nocopy boolean
389   );
390 --
391 -- ----------------------------------------------------------------------------
392 -- |-----------------------------< create_employee >--------------------------|
393 -- ----------------------------------------------------------------------------
394 --
395 -- This version of the API is now out-of-date however it has been provided to
396 -- you for backward compatibility support and will be removed in the future.
397 -- Oracle recommends you to modify existing calling programs in advance of the
398 -- support being withdrawn thus avoiding any potential disruption.
399 --
400 procedure create_employee
401   (p_validate                      in     boolean  default false
402   ,p_hire_date                     in     date
403   ,p_business_group_id             in     number
407   ,p_per_comments                  in     varchar2 default null
404   ,p_last_name                     in     varchar2
405   ,p_sex                           in     varchar2
406   ,p_person_type_id                in     number   default null
408   ,p_date_employee_data_verified   in     date     default null
409   ,p_date_of_birth                 in     date     default null
410   ,p_email_address                 in     varchar2 default null
411   ,p_employee_number               in out nocopy varchar2
412   ,p_expense_check_send_to_addres  in     varchar2 default null
413   ,p_first_name                    in     varchar2 default null
414   ,p_known_as                      in     varchar2 default null
415   ,p_marital_status                in     varchar2 default null
416   ,p_middle_names                  in     varchar2 default null
417   ,p_nationality                   in     varchar2 default null
418   ,p_national_identifier           in     varchar2 default null
419   ,p_previous_last_name            in     varchar2 default null
420   ,p_registered_disabled_flag      in     varchar2 default null
421   ,p_title                         in     varchar2 default null
422   ,p_vendor_id                     in     number   default null
423   ,p_work_telephone                in     varchar2 default null
424   ,p_attribute_category            in     varchar2 default null
425   ,p_attribute1                    in     varchar2 default null
426   ,p_attribute2                    in     varchar2 default null
427   ,p_attribute3                    in     varchar2 default null
428   ,p_attribute4                    in     varchar2 default null
429   ,p_attribute5                    in     varchar2 default null
430   ,p_attribute6                    in     varchar2 default null
431   ,p_attribute7                    in     varchar2 default null
432   ,p_attribute8                    in     varchar2 default null
433   ,p_attribute9                    in     varchar2 default null
434   ,p_attribute10                   in     varchar2 default null
435   ,p_attribute11                   in     varchar2 default null
436   ,p_attribute12                   in     varchar2 default null
437   ,p_attribute13                   in     varchar2 default null
438   ,p_attribute14                   in     varchar2 default null
439   ,p_attribute15                   in     varchar2 default null
440   ,p_attribute16                   in     varchar2 default null
441   ,p_attribute17                   in     varchar2 default null
442   ,p_attribute18                   in     varchar2 default null
443   ,p_attribute19                   in     varchar2 default null
444   ,p_attribute20                   in     varchar2 default null
445   ,p_attribute21                   in     varchar2 default null
446   ,p_attribute22                   in     varchar2 default null
447   ,p_attribute23                   in     varchar2 default null
448   ,p_attribute24                   in     varchar2 default null
449   ,p_attribute25                   in     varchar2 default null
450   ,p_attribute26                   in     varchar2 default null
451   ,p_attribute27                   in     varchar2 default null
452   ,p_attribute28                   in     varchar2 default null
453   ,p_attribute29                   in     varchar2 default null
454   ,p_attribute30                   in     varchar2 default null
455   ,p_per_information_category      in     varchar2 default null
456   -- p_per_information_category - Obsolete parameter, do not use
457   ,p_per_information1              in     varchar2 default null
458   ,p_per_information2              in     varchar2 default null
459   ,p_per_information3              in     varchar2 default null
460   ,p_per_information4              in     varchar2 default null
461   ,p_per_information5              in     varchar2 default null
462   ,p_per_information6              in     varchar2 default null
463   ,p_per_information7              in     varchar2 default null
464   ,p_per_information8              in     varchar2 default null
465   ,p_per_information9              in     varchar2 default null
466   ,p_per_information10             in     varchar2 default null
467   ,p_per_information11             in     varchar2 default null
468   ,p_per_information12             in     varchar2 default null
469   ,p_per_information13             in     varchar2 default null
470   ,p_per_information14             in     varchar2 default null
471   ,p_per_information15             in     varchar2 default null
472   ,p_per_information16             in     varchar2 default null
473   ,p_per_information17             in     varchar2 default null
474   ,p_per_information18             in     varchar2 default null
475   ,p_per_information19             in     varchar2 default null
476   ,p_per_information20             in     varchar2 default null
477   ,p_per_information21             in     varchar2 default null
478   ,p_per_information22             in     varchar2 default null
479   ,p_per_information23             in     varchar2 default null
480   ,p_per_information24             in     varchar2 default null
481   ,p_per_information25             in     varchar2 default null
482   ,p_per_information26             in     varchar2 default null
483   ,p_per_information27             in     varchar2 default null
484   ,p_per_information28             in     varchar2 default null
485   ,p_per_information29             in     varchar2 default null
486   ,p_per_information30             in     varchar2 default null
487   ,p_date_of_death                 in     date     default null
488   ,p_background_check_status       in     varchar2 default null
489   ,p_background_date_check         in     date     default null
490   ,p_blood_type                    in     varchar2 default null
494   ,p_honors                        in     varchar2 default null
491   ,p_correspondence_language       in     varchar2 default null
492   ,p_fast_path_employee            in     varchar2 default null
493   ,p_fte_capacity                  in     number   default null
495   ,p_internal_location             in     varchar2 default null
496   ,p_last_medical_test_by          in     varchar2 default null
497   ,p_last_medical_test_date        in     date     default null
498   ,p_mailstop                      in     varchar2 default null
499   ,p_office_number                 in     varchar2 default null
500   ,p_on_military_service           in     varchar2 default null
501   ,p_pre_name_adjunct              in     varchar2 default null
502   ,p_rehire_recommendation         in     varchar2 default null  -- Bug3210500
503   ,p_projected_start_date          in     date     default null
504   ,p_resume_exists                 in     varchar2 default null
505   ,p_resume_last_updated           in     date     default null
506   ,p_second_passport_exists        in     varchar2 default null
507   ,p_student_status                in     varchar2 default null
508   ,p_work_schedule                 in     varchar2 default null
509   ,p_suffix                        in     varchar2 default null
510   ,p_benefit_group_id              in     number   default null
511   ,p_receipt_of_death_cert_date    in     date     default null
512   ,p_coord_ben_med_pln_no          in     varchar2 default null
513   ,p_coord_ben_no_cvg_flag         in     varchar2 default 'N'
514   ,p_coord_ben_med_ext_er          in     varchar2 default null
515   ,p_coord_ben_med_pl_name         in     varchar2 default null
516   ,p_coord_ben_med_insr_crr_name   in     varchar2 default null
517   ,p_coord_ben_med_insr_crr_ident  in     varchar2 default null
518   ,p_coord_ben_med_cvg_strt_dt     in     date default null
519   ,p_coord_ben_med_cvg_end_dt      in     date default null
520   ,p_uses_tobacco_flag             in     varchar2 default null
521   ,p_dpdnt_adoption_date           in     date     default null
522   ,p_dpdnt_vlntry_svce_flag        in     varchar2 default 'N'
523   ,p_original_date_of_hire         in     date     default null
524   ,p_adjusted_svc_date             in     date     default null
525   ,p_town_of_birth                in      varchar2 default null
526   ,p_region_of_birth              in      varchar2 default null
527   ,p_country_of_birth             in      varchar2 default null
528   ,p_global_person_id             in      varchar2 default null
529   ,p_party_id                     in      number default null
530   ,p_person_id                        out nocopy number
531   ,p_assignment_id                    out nocopy number
532   ,p_per_object_version_number        out nocopy number
533   ,p_asg_object_version_number        out nocopy number
534   ,p_per_effective_start_date         out nocopy date
535   ,p_per_effective_end_date           out nocopy date
536   ,p_full_name                        out nocopy varchar2
537   ,p_per_comment_id                   out nocopy number
538   ,p_assignment_sequence              out nocopy number
539   ,p_assignment_number                out nocopy varchar2
540   ,p_name_combination_warning         out nocopy boolean
541   ,p_assign_payroll_warning           out nocopy boolean
542   );
543 --
544 -- ----------------------------------------------------------------------------
545 -- |----------------------------< create_gb_employee >------------------------|
546 -- ----------------------------------------------------------------------------
547 --
548 -- {Start Of Comments}
549 /*#
550  * This API creates an employee in a United Kingdom business group.
551  *
552  * This API creates a default primary assignment and a period of service for
553  * the employee. Secure user functionality is included in this version of the
554  * API. The employee is visible to secure users in the business group. <P>HR
555  * Foundation users can use the following parameters only: p_validate,
556  * p_hire_date, p_business_group_id, p_last_name, p_previous_last_name,
557  * p_mailstop, p_office_number, p_internal_location, p_correspondence_language,
558  * p_known_as, p_sex, p_date_of_birth, p_email_address, p_employee_number,
559  * p_expense_check_send_to_addres, p_first_name, p_middle_names,
560  * p_national_identifier, p_title, p_attribute_category, and p_attribute1-30.
561  *
562  * <p><b>Licensing</b><br>
563  * This API is licensed for use with Human Resources and HR Foundation.
564  *
565  * <p><b>Prerequisites</b><br>
566  * The United Kingdom business group must exist on the effective date. If
567  * person_type_id is supplied, it must have a corresponding system person type
568  * of EMP and must be active in the same business group as the employee being
569  * created.
570  *
571  * <p><b>Post Success</b><br>
572  * The person, period of service, and default employee assignment are created.
573  *
574  * <p><b>Post Failure</b><br>
575  * The employee is not created and an error is raised.
576  * @param p_validate If true, then validation alone will be performed and the
577  * database will remain unchanged. If false and all validation checks pass,
578  * then the database will be modified.
579  * @param p_hire_date Hire Date.
580  * @param p_business_group_id Business group of the person.
581  * @param p_last_name Last name.
582  * @param p_sex Legal gender. Valid values are defined by the SEX lookup type.
583  * @param p_person_type_id Type of employee being created.
584  * @param p_comments Person comment text.
585  * @param p_date_employee_data_verified Date on which the employee data was
586  * last verified.
587  * @param p_date_of_birth Date of birth.
591  * when the calling program should pass in a value. When the API call completes
588  * @param p_email_address Email address.
589  * @param p_employee_number The business group's employee number generation
590  * method determines when the API derives and passes out an employee number or
592  * if p_validate is false then will be set to the employee number. If
593  * p_validate is true then will be set to the passed value.
594  * @param p_expense_check_send_to_addres Mailing address.
595  * @param p_first_name First name.
596  * @param p_known_as Preferred name.
597  * @param p_marital_status Marital status. Valid values are defined by the
598  * MAR_STATUS lookup type.
599  * @param p_middle_names Middle names.
600  * @param p_nationality Nationality. Valid values are defined by the
601  * NATIONALITY lookup type.
602  * @param p_ni_number Number by which a person is identified in a given
603  * legislation.
604  * @param p_previous_last_name Previous last name.
605  * @param p_registered_disabled_flag Flag indicating whether the person is
606  * classified as disabled.
607  * @param p_title Title. Valid values are defined by the TITLE lookup type.
608  * @param p_vendor_id Obsolete parameter, do not use.
609  * @param p_work_telephone Obsolete parameter, do not use.
610  * @param p_attribute_category This context value determines which flexfield
611  * structure to use with the descriptive flexfield segments.
612  * @param p_attribute1 Descriptive flexfield segment.
613  * @param p_attribute2 Descriptive flexfield segment.
614  * @param p_attribute3 Descriptive flexfield segment.
615  * @param p_attribute4 Descriptive flexfield segment.
616  * @param p_attribute5 Descriptive flexfield segment.
617  * @param p_attribute6 Descriptive flexfield segment.
618  * @param p_attribute7 Descriptive flexfield segment.
619  * @param p_attribute8 Descriptive flexfield segment.
620  * @param p_attribute9 Descriptive flexfield segment.
621  * @param p_attribute10 Descriptive flexfield segment.
622  * @param p_attribute11 Descriptive flexfield segment.
623  * @param p_attribute12 Descriptive flexfield segment.
624  * @param p_attribute13 Descriptive flexfield segment.
625  * @param p_attribute14 Descriptive flexfield segment.
626  * @param p_attribute15 Descriptive flexfield segment.
627  * @param p_attribute16 Descriptive flexfield segment.
628  * @param p_attribute17 Descriptive flexfield segment.
629  * @param p_attribute18 Descriptive flexfield segment.
630  * @param p_attribute19 Descriptive flexfield segment.
631  * @param p_attribute20 Descriptive flexfield segment.
632  * @param p_attribute21 Descriptive flexfield segment.
633  * @param p_attribute22 Descriptive flexfield segment.
634  * @param p_attribute23 Descriptive flexfield segment.
635  * @param p_attribute24 Descriptive flexfield segment.
636  * @param p_attribute25 Descriptive flexfield segment.
637  * @param p_attribute26 Descriptive flexfield segment.
638  * @param p_attribute27 Descriptive flexfield segment.
639  * @param p_attribute28 Descriptive flexfield segment.
640  * @param p_attribute29 Descriptive flexfield segment.
641  * @param p_attribute30 Descriptive flexfield segment.
642  * @param p_ethnic_origin Ethnic origin. Valid values are defined by the
643  * ETH_TYPE lookup type.
644  * @param p_director Flag indicating whether the person is a company director.
645  * @param p_pensioner Flag indicating whether the person is a pensioner.
646  * @param p_work_permit_number Work permit number.
647  * @param p_addl_pension_years Additional pension years.
648  * @param p_addl_pension_months Additional pension months.
649  * @param p_addl_pension_days Additional pension days.
650  * @param p_ni_multiple_asg Identifies whether the National Insurance should be
651  * calculated according to the Multiple Assignments rules. Valid values are
652  * defined by the YES_NO lookup type.
653  * @param p_date_of_death Date of death.
654  * @param p_background_check_status Flag indicating whether the person's
655  * background has been checked.
656  * @param p_background_date_check Date on which the background check was
657  * performed.
658  * @param p_blood_type Blood type.
659  * @param p_correspondence_language Preferred language for correspondence.
660  * @param p_fast_path_employee Obsolete parameter, do not use.
661  * @param p_fte_capacity Obsolete parameter, do not use.
662  * @param p_honors Honors awarded.
663  * @param p_internal_location Internal location of office.
664  * @param p_last_medical_test_by Name of physician who performed the last
665  * medical test.
666  * @param p_last_medical_test_date Date of last medical test.
667  * @param p_mailstop Internal mail location.
668  * @param p_office_number Office number.
669  * @param p_on_military_service Flag indicating whether the person is on
670  * military service.
671  * @param p_pre_name_adjunct First part of the last name.
672  * @param p_rehire_recommendation Obsolete parameter, do not use.
673  * @param p_projected_start_date Obsolete parameter, do not use.
674  * @param p_resume_exists Flag indicating whether the person's resume is on
675  * file.
676  * @param p_resume_last_updated Date on which the resume was last updated.
677  * @param p_second_passport_exists Flag indicating whether a person has
678  * multiple passports.
679  * @param p_student_status If this employee is a student, this field is used to
680  * capture their status. Valid values are defined by the STUDENT_STATUS lookup
681  * type.
682  * @param p_work_schedule Days on which this person will work.
683  * @param p_suffix Suffix after the person's last name e.g. Sr., Jr., III.
684  * @param p_benefit_group_id Benefit group to which this person will belong.
685  * @param p_receipt_of_death_cert_date Date death certificate was received.
689  * used for external processing.
686  * @param p_coord_ben_med_pln_no Secondary medical plan name. Column used for
687  * external processing.
688  * @param p_coord_ben_no_cvg_flag No secondary medical plan coverage. Column
690  * @param p_coord_ben_med_ext_er Secondary external medical coverage. Column
691  * used for external processing.
692  * @param p_coord_ben_med_pl_name Secondary medical coverage name. Column used
693  * for external processing.
694  * @param p_coord_ben_med_insr_crr_name Secondary medical coverage insurance
695  * carrier name. Column used for external processing.
696  * @param p_coord_ben_med_insr_crr_ident Secondary medical coverage insurance
697  * carrier identifier. Column used for external processing.
698  * @param p_coord_ben_med_cvg_strt_dt Secondary medical coverage effective
699  * start date. Column used for external processing.
700  * @param p_coord_ben_med_cvg_end_dt Secondary medical coverage effective end
701  * date. Column used for external processing.
702  * @param p_uses_tobacco_flag Flag indicating whether the person uses tobacco.
703  * @param p_dpdnt_adoption_date Date on which the dependent was adopted.
704  * @param p_dpdnt_vlntry_svce_flag Flag indicating whether the dependent is on
705  * voluntary service.
706  * @param p_original_date_of_hire Original date of hire.
707  * @param p_adjusted_svc_date Adjusted service date.
708  * @param p_town_of_birth Town or city of birth.
709  * @param p_region_of_birth Geographical region of birth.
710  * @param p_country_of_birth Country of birth.
711  * @param p_global_person_id Obsolete parameter, do not use.
712  * @param p_party_id TCA party for whom you create the person record.
713  * @param p_person_id If p_validate is false, then this uniquely identifies the
714  * person created. If p_validate is true, then set to null.
715  * @param p_assignment_id If p_validate is false, then this uniquely identifies
716  * the created assignment. If p_validate is true, then set to null.
717  * @param p_per_object_version_number If p_validate is false, then set to the
718  * version number of the created person. If p_validate is true, then set to
719  * null.
720  * @param p_asg_object_version_number If p_validate is false, then this
721  * parameter is set to the version number of the assignment created. If
722  * p_validate is true, then this parameter is null.
723  * @param p_per_effective_start_date If p_validate is false, then set to the
724  * earliest effective start date for the created person. If p_validate is true,
725  * then set to null.
726  * @param p_per_effective_end_date If p_validate is false, then set to the
727  * effective end date for the created person. If p_validate is true, then set
728  * to null.
729  * @param p_full_name If p_validate is false, then set to the complete full
730  * name of the person. If p_validate is true, then set to null.
731  * @param p_per_comment_id If p_validate is false and comment text was
732  * provided, then will be set to the identifier of the created person comment
733  * record. If p_validate is true or no comment text was provided, then will be
734  * null.
735  * @param p_assignment_sequence If p_validate is false, then set to the
736  * sequence number of the default assignment. If p_validate is true, then set
737  * to null.
738  * @param p_assignment_number If p_validate is false, then set to the
739  * assignment number of the default assignment. If p_validate is true, then set
740  * to null.
741  * @param p_name_combination_warning If set to true, then the combination of
742  * last name, first name and date of birth existed prior to calling this API.
743  * @param p_assign_payroll_warning If set to true, then the date of birth is
744  * not entered. If set to false, then the date of birth has been entered.
745  * Indicates if it will be possible to set the payroll on any of this person's
746  * assignments.
747  * @param p_orig_hire_warning Set to true if the original hire date is
748  * populated and the person type is not "Employee", "Employee and Applicant",
749  * "Ex-employee" or "Ex-employee and Applicant".
750  * @rep:displayname Create Employee for United Kingdom
751  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE
752  * @rep:category MISC_EXTENSIONS HR_DATAPUMP
753  * @rep:scope public
754  * @rep:lifecycle active
755  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
756 */
757 --
758 -- {End Of Comments}
759 --
760 procedure create_gb_employee
761   (p_validate                      in     boolean  default false
762   ,p_hire_date                     in     date
763   ,p_business_group_id             in     number
764   ,p_last_name                     in     varchar2
765   ,p_sex                           in     varchar2
766   ,p_person_type_id                in     number   default null
767   ,p_comments                      in     varchar2 default null
768   ,p_date_employee_data_verified   in     date     default null
769   ,p_date_of_birth                 in     date     default null
770   ,p_email_address                 in     varchar2 default null
771   ,p_employee_number               in out nocopy varchar2
772   ,p_expense_check_send_to_addres  in     varchar2 default null
773   ,p_first_name                    in     varchar2 default null
774   ,p_known_as                      in     varchar2 default null
775   ,p_marital_status                in     varchar2 default null
776   ,p_middle_names                  in     varchar2 default null
777   ,p_nationality                   in     varchar2 default null
778   ,p_ni_number                     in     varchar2 default null
779   ,p_previous_last_name            in     varchar2 default null
780   ,p_registered_disabled_flag      in     varchar2 default null
781   ,p_title                         in     varchar2 default null
785   ,p_attribute1                    in     varchar2 default null
782   ,p_vendor_id                     in     number   default null
783   ,p_work_telephone                in     varchar2 default null
784   ,p_attribute_category            in     varchar2 default null
786   ,p_attribute2                    in     varchar2 default null
787   ,p_attribute3                    in     varchar2 default null
788   ,p_attribute4                    in     varchar2 default null
789   ,p_attribute5                    in     varchar2 default null
790   ,p_attribute6                    in     varchar2 default null
791   ,p_attribute7                    in     varchar2 default null
792   ,p_attribute8                    in     varchar2 default null
793   ,p_attribute9                    in     varchar2 default null
794   ,p_attribute10                   in     varchar2 default null
795   ,p_attribute11                   in     varchar2 default null
796   ,p_attribute12                   in     varchar2 default null
797   ,p_attribute13                   in     varchar2 default null
798   ,p_attribute14                   in     varchar2 default null
799   ,p_attribute15                   in     varchar2 default null
800   ,p_attribute16                   in     varchar2 default null
801   ,p_attribute17                   in     varchar2 default null
802   ,p_attribute18                   in     varchar2 default null
803   ,p_attribute19                   in     varchar2 default null
804   ,p_attribute20                   in     varchar2 default null
805   ,p_attribute21                   in     varchar2 default null
806   ,p_attribute22                   in     varchar2 default null
807   ,p_attribute23                   in     varchar2 default null
808   ,p_attribute24                   in     varchar2 default null
809   ,p_attribute25                   in     varchar2 default null
810   ,p_attribute26                   in     varchar2 default null
811   ,p_attribute27                   in     varchar2 default null
812   ,p_attribute28                   in     varchar2 default null
813   ,p_attribute29                   in     varchar2 default null
814   ,p_attribute30                   in     varchar2 default null
815   ,p_ethnic_origin                 in     varchar2 default null
816   ,p_director                      in     varchar2 default 'N'
817   ,p_pensioner                     in     varchar2 default 'N'
818   ,p_work_permit_number            in     varchar2 default null
819   ,p_addl_pension_years            in     varchar2 default null
820   ,p_addl_pension_months           in     varchar2 default null
821   ,p_addl_pension_days             in     varchar2 default null
822   ,p_ni_multiple_asg               in     varchar2 default 'N'
823   ,p_date_of_death                 in     date     default null
824   ,p_background_check_status       in     varchar2 default null
825   ,p_background_date_check         in     date     default null
826   ,p_blood_type                    in     varchar2 default null
827   ,p_correspondence_language       in     varchar2 default null
828   ,p_fast_path_employee            in     varchar2 default null
829   ,p_fte_capacity                  in     number   default null
830   ,p_honors                        in     varchar2 default null
831   ,p_internal_location             in     varchar2 default null
832   ,p_last_medical_test_by          in     varchar2 default null
833   ,p_last_medical_test_date        in     date     default null
834   ,p_mailstop                      in     varchar2 default null
835   ,p_office_number                 in     varchar2 default null
836   ,p_on_military_service           in     varchar2 default null
837   ,p_pre_name_adjunct              in     varchar2 default null
838   ,p_rehire_recommendation         in     varchar2 default null  -- Bug3210500
839   ,p_projected_start_date          in     date     default null
840   ,p_resume_exists                 in     varchar2 default null
841   ,p_resume_last_updated           in     date     default null
842   ,p_second_passport_exists        in     varchar2 default null
843   ,p_student_status                in     varchar2 default null
844   ,p_work_schedule                 in     varchar2 default null
845   ,p_suffix                        in     varchar2 default null
846   ,p_benefit_group_id              in     number   default null
847   ,p_receipt_of_death_cert_date    in     date     default null
848   ,p_coord_ben_med_pln_no          in     varchar2 default null
849   ,p_coord_ben_no_cvg_flag         in     varchar2 default 'N'
850   ,p_coord_ben_med_ext_er          in     varchar2 default null
851   ,p_coord_ben_med_pl_name         in     varchar2 default null
852   ,p_coord_ben_med_insr_crr_name   in     varchar2 default null
853   ,p_coord_ben_med_insr_crr_ident  in     varchar2 default null
854   ,p_coord_ben_med_cvg_strt_dt     in     date default null
855   ,p_coord_ben_med_cvg_end_dt      in     date default null
856   ,p_uses_tobacco_flag             in     varchar2 default null
857   ,p_dpdnt_adoption_date           in     date     default null
858   ,p_dpdnt_vlntry_svce_flag        in     varchar2 default 'N'
859   ,p_original_date_of_hire         in     date     default null
860   ,p_adjusted_svc_date             in     date     default null
861   ,p_town_of_birth                 in     varchar2 default null
862   ,p_region_of_birth               in     varchar2 default null
863   ,p_country_of_birth              in     varchar2 default null
864   ,p_global_person_id              in     varchar2 default null
865   ,p_party_id                      in     number default null
866   ,p_person_id                        out nocopy number
867   ,p_assignment_id                    out nocopy number
868   ,p_per_object_version_number        out nocopy number
872   ,p_full_name                        out nocopy varchar2
869   ,p_asg_object_version_number        out nocopy number
870   ,p_per_effective_start_date         out nocopy date
871   ,p_per_effective_end_date           out nocopy date
873   ,p_per_comment_id                   out nocopy number
874   ,p_assignment_sequence              out nocopy number
875   ,p_assignment_number                out nocopy varchar2
876   ,p_name_combination_warning         out nocopy boolean
877   ,p_assign_payroll_warning           out nocopy boolean
878   ,p_orig_hire_warning                out nocopy boolean
879   );
880 --
881 -- ----------------------------------------------------------------------------
882 -- |----------------------------< create_gb_employee >------------------------|
883 -- ----------------------------------------------------------------------------
884 --
885 -- This version of the API is now out-of-date however it has been provided to
886 -- you for backward compatibility support and will be removed in the future.
887 -- Oracle recommends you to modify existing calling programs in advance of the
888 -- support being withdrawn thus avoiding any potential disruption.
889 --
890 procedure create_gb_employee
891   (p_validate                      in     boolean  default false
892   ,p_hire_date                     in     date
893   ,p_business_group_id             in     number
894   ,p_last_name                     in     varchar2
895   ,p_sex                           in     varchar2
896   ,p_person_type_id                in     number   default null
897   ,p_comments                      in     varchar2 default null
898   ,p_date_employee_data_verified   in     date     default null
899   ,p_date_of_birth                 in     date     default null
900   ,p_email_address                 in     varchar2 default null
901   ,p_employee_number               in out nocopy varchar2
902   ,p_expense_check_send_to_addres  in     varchar2 default null
903   ,p_first_name                    in     varchar2 default null
904   ,p_known_as                      in     varchar2 default null
905   ,p_marital_status                in     varchar2 default null
906   ,p_middle_names                  in     varchar2 default null
907   ,p_nationality                   in     varchar2 default null
908   ,p_ni_number                     in     varchar2 default null
909   ,p_previous_last_name            in     varchar2 default null
910   ,p_registered_disabled_flag      in     varchar2 default null
911   ,p_title                         in     varchar2 default null
912   ,p_vendor_id                     in     number   default null
913   ,p_work_telephone                in     varchar2 default null
914   ,p_attribute_category            in     varchar2 default null
915   ,p_attribute1                    in     varchar2 default null
916   ,p_attribute2                    in     varchar2 default null
917   ,p_attribute3                    in     varchar2 default null
918   ,p_attribute4                    in     varchar2 default null
919   ,p_attribute5                    in     varchar2 default null
920   ,p_attribute6                    in     varchar2 default null
921   ,p_attribute7                    in     varchar2 default null
922   ,p_attribute8                    in     varchar2 default null
923   ,p_attribute9                    in     varchar2 default null
924   ,p_attribute10                   in     varchar2 default null
925   ,p_attribute11                   in     varchar2 default null
926   ,p_attribute12                   in     varchar2 default null
927   ,p_attribute13                   in     varchar2 default null
928   ,p_attribute14                   in     varchar2 default null
929   ,p_attribute15                   in     varchar2 default null
930   ,p_attribute16                   in     varchar2 default null
931   ,p_attribute17                   in     varchar2 default null
932   ,p_attribute18                   in     varchar2 default null
933   ,p_attribute19                   in     varchar2 default null
934   ,p_attribute20                   in     varchar2 default null
935   ,p_attribute21                   in     varchar2 default null
936   ,p_attribute22                   in     varchar2 default null
937   ,p_attribute23                   in     varchar2 default null
938   ,p_attribute24                   in     varchar2 default null
939   ,p_attribute25                   in     varchar2 default null
940   ,p_attribute26                   in     varchar2 default null
941   ,p_attribute27                   in     varchar2 default null
942   ,p_attribute28                   in     varchar2 default null
943   ,p_attribute29                   in     varchar2 default null
944   ,p_attribute30                   in     varchar2 default null
945   ,p_ethnic_origin                 in     varchar2 default null
946   ,p_director                      in     varchar2 default 'N'
947   ,p_pensioner                     in     varchar2 default 'N'
948   ,p_work_permit_number            in     varchar2 default null
949   ,p_addl_pension_years            in     varchar2 default null
950   ,p_addl_pension_months           in     varchar2 default null
951   ,p_addl_pension_days             in     varchar2 default null
952   ,p_ni_multiple_asg               in     varchar2 default 'N'
953   ,p_date_of_death                 in     date     default null
954   ,p_background_check_status       in     varchar2 default null
955   ,p_background_date_check         in     date     default null
956   ,p_blood_type                    in     varchar2 default null
957   ,p_correspondence_language       in     varchar2 default null
958   ,p_fast_path_employee            in     varchar2 default null
959   ,p_fte_capacity                  in     number   default null
963   ,p_last_medical_test_date        in     date     default null
960   ,p_honors                        in     varchar2 default null
961   ,p_internal_location             in     varchar2 default null
962   ,p_last_medical_test_by          in     varchar2 default null
964   ,p_mailstop                      in     varchar2 default null
965   ,p_office_number                 in     varchar2 default null
966   ,p_on_military_service           in     varchar2 default null
967   ,p_pre_name_adjunct              in     varchar2 default null
968   ,p_rehire_recommendation         in     varchar2 default null  -- Bug3210500
969   ,p_projected_start_date          in     date     default null
970   ,p_resume_exists                 in     varchar2 default null
971   ,p_resume_last_updated           in     date     default null
972   ,p_second_passport_exists        in     varchar2 default null
973   ,p_student_status                in     varchar2 default null
974   ,p_work_schedule                 in     varchar2 default null
975   ,p_suffix                        in     varchar2 default null
976   ,p_benefit_group_id              in     number   default null
977   ,p_receipt_of_death_cert_date    in     date     default null
978   ,p_coord_ben_med_pln_no          in     varchar2 default null
979   ,p_coord_ben_no_cvg_flag         in     varchar2 default 'N'
980   ,p_coord_ben_med_ext_er          in     varchar2 default null
981   ,p_coord_ben_med_pl_name         in     varchar2 default null
982   ,p_coord_ben_med_insr_crr_name   in     varchar2 default null
983   ,p_coord_ben_med_insr_crr_ident  in     varchar2 default null
984   ,p_coord_ben_med_cvg_strt_dt     in     date default null
985   ,p_coord_ben_med_cvg_end_dt      in     date default null
986   ,p_uses_tobacco_flag             in     varchar2 default null
987   ,p_dpdnt_adoption_date           in     date     default null
988   ,p_dpdnt_vlntry_svce_flag        in     varchar2 default 'N'
989   ,p_original_date_of_hire         in     date     default null
990   ,p_adjusted_svc_date             in     date     default null
991   ,p_town_of_birth                 in     varchar2 default null
992   ,p_region_of_birth               in     varchar2 default null
993   ,p_country_of_birth              in     varchar2 default null
994   ,p_global_person_id              in     varchar2 default null
995   ,p_party_id                      in     number default null
996   ,p_person_id                        out nocopy number
997   ,p_assignment_id                    out nocopy number
998   ,p_per_object_version_number        out nocopy number
999   ,p_asg_object_version_number        out nocopy number
1000   ,p_per_effective_start_date         out nocopy date
1001   ,p_per_effective_end_date           out nocopy date
1002   ,p_full_name                        out nocopy varchar2
1003   ,p_per_comment_id                   out nocopy number
1004   ,p_assignment_sequence              out nocopy number
1005   ,p_assignment_number                out nocopy varchar2
1006   ,p_name_combination_warning         out nocopy boolean
1007   ,p_assign_payroll_warning           out nocopy boolean
1008   );
1009 --
1010 -- ----------------------------------------------------------------------------
1011 -- |----------------------------< create_us_employee >------------------------|
1012 -- ----------------------------------------------------------------------------
1013 --
1014 -- {Start Of Comments}
1015 /*#
1016  * This API creates an employee in a United States business group.
1017  *
1018  * This API creates a default primary assignment and a period of service for
1019  * the employee. Secure user functionality is included in this version of the
1020  * API. The employee is visible to secure users in the business group. <P>HR
1021  * Foundation users can use the following parameters only: p_validate,
1022  * p_hire_date, p_business_group_id, p_last_name, p_previous_last_name,
1023  * p_mailstop, p_office_number, p_internal_location, p_correspondence_language,
1024  * p_known_as, p_sex, p_date_of_birth, p_email_address, p_employee_number,
1025  * p_expense_check_send_to_addres, p_first_name, p_middle_names,
1026  * p_national_identifier, p_title, p_attribute_category, and p_attribute1-30.
1027  *
1028  * <p><b>Licensing</b><br>
1029  * This API is licensed for use with Human Resources and HR Foundation.
1030  *
1031  * <p><b>Prerequisites</b><br>
1032  * The United States business group must exist on the effective date. If
1033  * person_type_id is supplied, it must have a corresponding system person type
1034  * of EMP and be active in the same business group as the employee being
1035  * created.
1036  *
1037  * <p><b>Post Success</b><br>
1038  * The person, period of service, and default employee assignment are created.
1039  *
1040  * <p><b>Post Failure</b><br>
1041  * The employee is not created and an error is raised.
1042  * @param p_validate If true, then validation alone will be performed and the
1043  * database will remain unchanged. If false and all validation checks pass,
1044  * then the database will be modified.
1045  * @param p_hire_date Hire Date.
1046  * @param p_business_group_id Business group of the person.
1047  * @param p_last_name Last name.
1048  * @param p_sex Legal gender. Valid values are defined by the SEX lookup type.
1049  * @param p_person_type_id Type of employee being created.
1050  * @param p_comments Person comment text.
1051  * @param p_date_employee_data_verified Date on which the employee data was
1052  * last verified.
1053  * @param p_date_of_birth Date of birth.
1054  * @param p_email_address Email address.
1055  * @param p_employee_number The business group's employee number generation
1056  * method determines when the API derives and passes out an employee number or
1060  * @param p_expense_check_send_to_addres Mailing address.
1057  * when the calling program should pass in a value. When the API call completes
1058  * if p_validate is false then will be set to the employee number. If
1059  * p_validate is true then will be set to the passed value.
1061  * @param p_first_name First name.
1062  * @param p_known_as Preferred name.
1063  * @param p_marital_status Marital status. Valid values are defined by the
1064  * MAR_STATUS lookup type.
1065  * @param p_middle_names Middle names.
1066  * @param p_nationality Nationality. Valid values are defined by the
1067  * NATIONALITY lookup type.
1068  * @param p_ss_number Number by which a person is identified in a given
1069  * legislation.
1070  * @param p_previous_last_name Previous last name.
1071  * @param p_registered_disabled_flag Flag indicating whether the person is
1072  * classified as disabled.
1073  * @param p_title Title. Valid values are defined by the TITLE lookup type.
1074  * @param p_vendor_id Obsolete parameter, do not use.
1075  * @param p_work_telephone Obsolete parameter, do not use.
1076  * @param p_attribute_category This context value determines which flexfield
1077  * structure to use with the descriptive flexfield segments.
1078  * @param p_attribute1 Descriptive flexfield segment.
1079  * @param p_attribute2 Descriptive flexfield segment.
1080  * @param p_attribute3 Descriptive flexfield segment.
1081  * @param p_attribute4 Descriptive flexfield segment.
1082  * @param p_attribute5 Descriptive flexfield segment.
1083  * @param p_attribute6 Descriptive flexfield segment.
1084  * @param p_attribute7 Descriptive flexfield segment.
1085  * @param p_attribute8 Descriptive flexfield segment.
1086  * @param p_attribute9 Descriptive flexfield segment.
1087  * @param p_attribute10 Descriptive flexfield segment.
1088  * @param p_attribute11 Descriptive flexfield segment.
1089  * @param p_attribute12 Descriptive flexfield segment.
1090  * @param p_attribute13 Descriptive flexfield segment.
1091  * @param p_attribute14 Descriptive flexfield segment.
1092  * @param p_attribute15 Descriptive flexfield segment.
1093  * @param p_attribute16 Descriptive flexfield segment.
1094  * @param p_attribute17 Descriptive flexfield segment.
1095  * @param p_attribute18 Descriptive flexfield segment.
1096  * @param p_attribute19 Descriptive flexfield segment.
1097  * @param p_attribute20 Descriptive flexfield segment.
1098  * @param p_attribute21 Descriptive flexfield segment.
1099  * @param p_attribute22 Descriptive flexfield segment.
1100  * @param p_attribute23 Descriptive flexfield segment.
1101  * @param p_attribute24 Descriptive flexfield segment.
1102  * @param p_attribute25 Descriptive flexfield segment.
1103  * @param p_attribute26 Descriptive flexfield segment.
1104  * @param p_attribute27 Descriptive flexfield segment.
1105  * @param p_attribute28 Descriptive flexfield segment.
1106  * @param p_attribute29 Descriptive flexfield segment.
1107  * @param p_attribute30 Descriptive flexfield segment.
1108  * @param p_ethnic_origin Ethnic origin. Valid values are defined by the
1109  * US_ETHNIC_GROUP lookup type.
1110  * @param p_i_9 Status of I9 Visa. Valid values are defined by the
1111  * PER_US_I9_STATE lookup type.
1112  * @param p_i_9_expiration_date I9 expiration date.
1113  * @param p_veteran_status Indicates whether this person is a war veteran.
1114  * Valid values are defined by the US_VETERAN_STATUS lookup type.
1115  * @param p_new_hire Status of the new hire. Valid values are defined by the
1116  * US_NEW_HIRE_STATUS lookup type.
1117  * @param p_exception_reason New hire exception reason. Valid values are
1118  * defined by the US_NEW_HIRE_EXCEPTIONS lookup type.
1119  * @param p_child_support_obligation Flag indicating whether the person has a
1120  * child support obligation.
1121  * @param p_opted_for_medicare_flag Flag indicating whether the person has
1122  * opted for additional medicare.
1123  * @param p_date_of_death Date of death.
1124  * @param p_background_check_status Flag indicating whether the person's
1125  * background has been checked.
1126  * @param p_background_date_check Date on which the background check was
1127  * performed.
1128  * @param p_blood_type Blood type.
1129  * @param p_correspondence_language Preferred language for correspondence.
1130  * @param p_fast_path_employee Obsolete parameter, do not use.
1131  * @param p_fte_capacity Obsolete parameter, do not use.
1132  * @param p_honors Honors awarded.
1133  * @param p_internal_location Internal location of office.
1134  * @param p_last_medical_test_by Name of physician who performed the last
1135  * medical test.
1136  * @param p_last_medical_test_date Date of last medical test.
1137  * @param p_mailstop Internal mail location.
1138  * @param p_office_number Office number.
1139  * @param p_on_military_service Flag indicating whether the person is on
1140  * military service.
1141  * @param p_pre_name_adjunct First part of the last name.
1142  * @param p_rehire_recommendation Obsolete parameter, do not use.
1143  * @param p_projected_start_date Obsolete parameter, do not use.
1144  * @param p_resume_exists Flag indicating whether the person's resume is on
1145  * file.
1146  * @param p_resume_last_updated Date on which the resume was last updated.
1147  * @param p_second_passport_exists Flag indicating whether a person has
1148  * multiple passports.
1149  * @param p_student_status If this employee is a student, this field is used to
1150  * capture their status. Valid values are defined by the STUDENT_STATUS lookup
1151  * type.
1152  * @param p_work_schedule Days on which this person will work.
1153  * @param p_suffix Suffix after the person's last name e.g. Sr., Jr., III.
1154  * @param p_benefit_group_id Benefit group to which this person will belong.
1155  * @param p_receipt_of_death_cert_date Date death certificate was received.
1159  * used for external processing.
1156  * @param p_coord_ben_med_pln_no Secondary medical plan name. Column used for
1157  * external processing.
1158  * @param p_coord_ben_no_cvg_flag No secondary medical plan coverage. Column
1160  * @param p_coord_ben_med_ext_er Secondary external medical coverage. Column
1161  * used for external processing.
1162  * @param p_coord_ben_med_pl_name Secondary medical coverage name. Column used
1163  * for external processing.
1164  * @param p_coord_ben_med_insr_crr_name Secondary medical coverage insurance
1165  * carrier name. Column used for external processing.
1166  * @param p_coord_ben_med_insr_crr_ident Secondary medical coverage insurance
1167  * carrier identifier. Column used for external processing.
1168  * @param p_coord_ben_med_cvg_strt_dt Secondary medical coverage effective
1169  * start date. Column used for external processing.
1170  * @param p_coord_ben_med_cvg_end_dt Secondary medical coverage effective end
1171  * date. Column used for external processing.
1172  * @param p_uses_tobacco_flag Flag indicating whether the person uses tobacco.
1173  * @param p_dpdnt_adoption_date Date on which the dependent was adopted.
1174  * @param p_dpdnt_vlntry_svce_flag Flag indicating whether the dependent is on
1175  * voluntary service.
1176  * @param p_original_date_of_hire Original date of hire.
1177  * @param p_adjusted_svc_date Adjusted service date.
1178  * @param p_town_of_birth Town or city of birth.
1179  * @param p_region_of_birth Geographical region of birth.
1180  * @param p_country_of_birth Country of birth.
1181  * @param p_global_person_id Obsolete parameter, do not use.
1182  * @param p_party_id TCA party for whom you create the person record.
1183  * @param p_person_id If p_validate is false, then this uniquely identifies the
1184  * person created. If p_validate is true, then set to null.
1185  * @param p_assignment_id If p_validate is false, then this uniquely identifies
1186  * the created assignment. If p_validate is true, then set to null.
1187  * @param p_per_object_version_number If p_validate is false, then set to the
1188  * version number of the created person. If p_validate is true, then set to
1189  * null.
1190  * @param p_asg_object_version_number If p_validate is false, then this
1191  * parameter is set to the version number of the assignment created. If
1192  * p_validate is true, then this parameter is null.
1193  * @param p_per_effective_start_date If p_validate is false, then set to the
1194  * earliest effective start date for the created person. If p_validate is true,
1195  * then set to null.
1196  * @param p_per_effective_end_date If p_validate is false, then set to the
1197  * effective end date for the created person. If p_validate is true, then set
1198  * to null.
1199  * @param p_full_name If p_validate is false, then set to the complete full
1200  * name of the person. If p_validate is true, then set to null.
1201  * @param p_per_comment_id If p_validate is false and comment text was
1202  * provided, then will be set to the identifier of the created person comment
1203  * record. If p_validate is true or no comment text was provided, then will be
1204  * null.
1205  * @param p_assignment_sequence If p_validate is false, then set to the
1206  * sequence number of the default assignment. If p_validate is true, then set
1207  * to null.
1208  * @param p_assignment_number If p_validate is false, then set to the
1209  * assignment number of the default assignment. If p_validate is true, then set
1210  * to null.
1211  * @param p_name_combination_warning If set to true, then the combination of
1212  * last name, first name and date of birth existed prior to calling this API.
1213  * @param p_assign_payroll_warning If set to true, then the date of birth is
1214  * not entered. If set to false, then the date of birth has been entered.
1215  * Indicates if it will be possible to set the payroll on any of this person's
1216  * assignments.
1217  * @param p_orig_hire_warning Set to true if the original hire date is
1218  * populated and the person type is not "Employee", "Employee and Applicant",
1219  * "Ex-employee" or "Ex-employee and Applicant".
1220  * @rep:displayname Create Employee for United States
1221  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE
1222  * @rep:category MISC_EXTENSIONS HR_DATAPUMP
1223  * @rep:scope public
1224  * @rep:lifecycle active
1225  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
1226 */
1227 --
1228 -- {End Of Comments}
1229 --
1230 procedure create_us_employee
1231   (p_validate                      in     boolean  default false
1232   ,p_hire_date                     in     date
1233   ,p_business_group_id             in     number
1234   ,p_last_name                     in     varchar2
1235   ,p_sex                           in     varchar2
1236   ,p_person_type_id                in     number   default null
1237   ,p_comments                      in     varchar2 default null
1238   ,p_date_employee_data_verified   in     date     default null
1239   ,p_date_of_birth                 in     date     default null
1240   ,p_email_address                 in     varchar2 default null
1241   ,p_employee_number               in out nocopy varchar2
1242   ,p_expense_check_send_to_addres  in     varchar2 default null
1243   ,p_first_name                    in     varchar2 default null
1244   ,p_known_as                      in     varchar2 default null
1245   ,p_marital_status                in     varchar2 default null
1246   ,p_middle_names                  in     varchar2 default null
1247   ,p_nationality                   in     varchar2 default null
1248   ,p_ss_number                     in     varchar2 default null
1249   ,p_previous_last_name            in     varchar2 default null
1250   ,p_registered_disabled_flag      in     varchar2 default null
1251   ,p_title                         in     varchar2 default null
1255   ,p_attribute1                    in     varchar2 default null
1252   ,p_vendor_id                     in     number   default null
1253   ,p_work_telephone                in     varchar2 default null
1254   ,p_attribute_category            in     varchar2 default null
1256   ,p_attribute2                    in     varchar2 default null
1257   ,p_attribute3                    in     varchar2 default null
1258   ,p_attribute4                    in     varchar2 default null
1259   ,p_attribute5                    in     varchar2 default null
1260   ,p_attribute6                    in     varchar2 default null
1261   ,p_attribute7                    in     varchar2 default null
1262   ,p_attribute8                    in     varchar2 default null
1263   ,p_attribute9                    in     varchar2 default null
1264   ,p_attribute10                   in     varchar2 default null
1265   ,p_attribute11                   in     varchar2 default null
1266   ,p_attribute12                   in     varchar2 default null
1267   ,p_attribute13                   in     varchar2 default null
1268   ,p_attribute14                   in     varchar2 default null
1269   ,p_attribute15                   in     varchar2 default null
1270   ,p_attribute16                   in     varchar2 default null
1271   ,p_attribute17                   in     varchar2 default null
1272   ,p_attribute18                   in     varchar2 default null
1273   ,p_attribute19                   in     varchar2 default null
1274   ,p_attribute20                   in     varchar2 default null
1275   ,p_attribute21                   in     varchar2 default null
1276   ,p_attribute22                   in     varchar2 default null
1277   ,p_attribute23                   in     varchar2 default null
1278   ,p_attribute24                   in     varchar2 default null
1279   ,p_attribute25                   in     varchar2 default null
1280   ,p_attribute26                   in     varchar2 default null
1281   ,p_attribute27                   in     varchar2 default null
1282   ,p_attribute28                   in     varchar2 default null
1283   ,p_attribute29                   in     varchar2 default null
1284   ,p_attribute30                   in     varchar2 default null
1285   ,p_ethnic_origin                 in     varchar2 default null
1286   ,p_I_9                           in     varchar2 default 'N'
1287   ,p_I_9_expiration_date           in     varchar2 default null
1288 --  ,p_visa_type                     in     varchar2 default null
1289   ,p_veteran_status                in     varchar2 default null
1290   ,p_new_hire                      in     varchar2 default null
1291   ,p_exception_reason              in     varchar2 default null
1292   ,p_child_support_obligation      in     varchar2 default 'N'
1293   ,p_opted_for_medicare_flag       in     varchar2 default 'N'
1294   ,p_date_of_death                 in     date     default null
1295   ,p_background_check_status       in     varchar2 default null
1296   ,p_background_date_check         in     date     default null
1297   ,p_blood_type                    in     varchar2 default null
1298   ,p_correspondence_language       in     varchar2 default null
1299   ,p_fast_path_employee            in     varchar2 default null
1300   ,p_fte_capacity                  in     number   default null
1301   ,p_honors                        in     varchar2 default null
1302   ,p_internal_location             in     varchar2 default null
1303   ,p_last_medical_test_by          in     varchar2 default null
1304   ,p_last_medical_test_date        in     date     default null
1305   ,p_mailstop                      in     varchar2 default null
1306   ,p_office_number                 in     varchar2 default null
1307   ,p_on_military_service           in     varchar2 default null
1308   ,p_pre_name_adjunct              in     varchar2 default null
1309   ,p_rehire_recommendation         in     varchar2 default null  -- Bug3210500
1310   ,p_projected_start_date          in     date     default null
1311   ,p_resume_exists                 in     varchar2 default null
1312   ,p_resume_last_updated           in     date     default null
1313   ,p_second_passport_exists        in     varchar2 default null
1314   ,p_student_status                in     varchar2 default null
1315   ,p_work_schedule                 in     varchar2 default null
1316   ,p_suffix                        in     varchar2 default null
1317   ,p_benefit_group_id              in     number   default null
1318   ,p_receipt_of_death_cert_date    in     date     default null
1319   ,p_coord_ben_med_pln_no          in     varchar2 default null
1320   ,p_coord_ben_no_cvg_flag         in     varchar2 default 'N'
1321   ,p_coord_ben_med_ext_er          in     varchar2 default null
1322   ,p_coord_ben_med_pl_name         in     varchar2 default null
1323   ,p_coord_ben_med_insr_crr_name   in     varchar2 default null
1324   ,p_coord_ben_med_insr_crr_ident  in     varchar2 default null
1325   ,p_coord_ben_med_cvg_strt_dt     in     date default null
1326   ,p_coord_ben_med_cvg_end_dt      in     date default null
1327   ,p_uses_tobacco_flag             in     varchar2 default null
1328   ,p_dpdnt_adoption_date           in     date     default null
1329   ,p_dpdnt_vlntry_svce_flag        in     varchar2 default 'N'
1330   ,p_original_date_of_hire         in     date     default null
1331   ,p_adjusted_svc_date             in     date     default null
1332   ,p_town_of_birth                 in     varchar2 default null
1333   ,p_region_of_birth               in     varchar2 default null
1334   ,p_country_of_birth              in     varchar2 default null
1335   ,p_global_person_id              in     varchar2 default null
1336   ,p_party_id                      in     number default null
1337   ,p_person_id                        out nocopy number
1338   ,p_assignment_id                    out nocopy number
1342   ,p_per_effective_end_date           out nocopy date
1339   ,p_per_object_version_number        out nocopy number
1340   ,p_asg_object_version_number        out nocopy number
1341   ,p_per_effective_start_date         out nocopy date
1343   ,p_full_name                        out nocopy varchar2
1344   ,p_per_comment_id                   out nocopy number
1345   ,p_assignment_sequence              out nocopy number
1346   ,p_assignment_number                out nocopy varchar2
1347   ,p_name_combination_warning         out nocopy boolean
1348   ,p_assign_payroll_warning           out nocopy boolean
1349   ,p_orig_hire_warning                out nocopy boolean
1350   );
1351 --
1352 -- ----------------------------------------------------------------------------
1353 -- |----------------------------< create_us_employee >------------------------|
1354 -- ----------------------------------------------------------------------------
1355 --
1356 -- This version of the API is now out-of-date however it has been provided to
1357 -- you for backward compatibility support and will be removed in the future.
1358 -- Oracle recommends you to modify existing calling programs in advance of the
1359 -- support being withdrawn thus avoiding any potential disruption.
1360 --
1361 procedure create_us_employee
1362   (p_validate                      in     boolean  default false
1363   ,p_hire_date                     in     date
1364   ,p_business_group_id             in     number
1365   ,p_last_name                     in     varchar2
1366   ,p_sex                           in     varchar2
1367   ,p_person_type_id                in     number   default null
1368   ,p_comments                      in     varchar2 default null
1369   ,p_date_employee_data_verified   in     date     default null
1370   ,p_date_of_birth                 in     date     default null
1371   ,p_email_address                 in     varchar2 default null
1372   ,p_employee_number               in out nocopy varchar2
1373   ,p_expense_check_send_to_addres  in     varchar2 default null
1374   ,p_first_name                    in     varchar2 default null
1375   ,p_known_as                      in     varchar2 default null
1376   ,p_marital_status                in     varchar2 default null
1377   ,p_middle_names                  in     varchar2 default null
1378   ,p_nationality                   in     varchar2 default null
1379   ,p_ss_number                     in     varchar2 default null
1380   ,p_previous_last_name            in     varchar2 default null
1381   ,p_registered_disabled_flag      in     varchar2 default null
1382   ,p_title                         in     varchar2 default null
1383   ,p_vendor_id                     in     number   default null
1384   ,p_work_telephone                in     varchar2 default null
1385   ,p_attribute_category            in     varchar2 default null
1386   ,p_attribute1                    in     varchar2 default null
1387   ,p_attribute2                    in     varchar2 default null
1388   ,p_attribute3                    in     varchar2 default null
1389   ,p_attribute4                    in     varchar2 default null
1390   ,p_attribute5                    in     varchar2 default null
1391   ,p_attribute6                    in     varchar2 default null
1392   ,p_attribute7                    in     varchar2 default null
1393   ,p_attribute8                    in     varchar2 default null
1394   ,p_attribute9                    in     varchar2 default null
1395   ,p_attribute10                   in     varchar2 default null
1396   ,p_attribute11                   in     varchar2 default null
1397   ,p_attribute12                   in     varchar2 default null
1398   ,p_attribute13                   in     varchar2 default null
1399   ,p_attribute14                   in     varchar2 default null
1400   ,p_attribute15                   in     varchar2 default null
1401   ,p_attribute16                   in     varchar2 default null
1402   ,p_attribute17                   in     varchar2 default null
1403   ,p_attribute18                   in     varchar2 default null
1404   ,p_attribute19                   in     varchar2 default null
1405   ,p_attribute20                   in     varchar2 default null
1406   ,p_attribute21                   in     varchar2 default null
1407   ,p_attribute22                   in     varchar2 default null
1408   ,p_attribute23                   in     varchar2 default null
1409   ,p_attribute24                   in     varchar2 default null
1410   ,p_attribute25                   in     varchar2 default null
1411   ,p_attribute26                   in     varchar2 default null
1412   ,p_attribute27                   in     varchar2 default null
1413   ,p_attribute28                   in     varchar2 default null
1414   ,p_attribute29                   in     varchar2 default null
1415   ,p_attribute30                   in     varchar2 default null
1416   ,p_ethnic_origin                 in     varchar2 default null
1417   ,p_I_9                           in     varchar2 default 'N'
1418   ,p_I_9_expiration_date           in     varchar2 default null
1419 --  ,p_visa_type                     in     varchar2 default null
1420   ,p_veteran_status                in     varchar2 default null
1421   ,p_new_hire                      in     varchar2 default null
1422   ,p_exception_reason              in     varchar2 default null
1423   ,p_child_support_obligation      in     varchar2 default 'N'
1424   ,p_opted_for_medicare_flag       in     varchar2 default 'N'
1425   ,p_date_of_death                 in     date     default null
1426   ,p_background_check_status       in     varchar2 default null
1427   ,p_background_date_check         in     date     default null
1428   ,p_blood_type                    in     varchar2 default null
1429   ,p_correspondence_language       in     varchar2 default null
1433   ,p_internal_location             in     varchar2 default null
1430   ,p_fast_path_employee            in     varchar2 default null
1431   ,p_fte_capacity                  in     number   default null
1432   ,p_honors                        in     varchar2 default null
1434   ,p_last_medical_test_by          in     varchar2 default null
1435   ,p_last_medical_test_date        in     date     default null
1436   ,p_mailstop                      in     varchar2 default null
1437   ,p_office_number                 in     varchar2 default null
1438   ,p_on_military_service           in     varchar2 default null
1439   ,p_pre_name_adjunct              in     varchar2 default null
1440   ,p_rehire_recommendation         in     varchar2 default null  -- Bug3210500
1441   ,p_projected_start_date          in     date     default null
1442   ,p_resume_exists                 in     varchar2 default null
1443   ,p_resume_last_updated           in     date     default null
1444   ,p_second_passport_exists        in     varchar2 default null
1445   ,p_student_status                in     varchar2 default null
1446   ,p_work_schedule                 in     varchar2 default null
1447   ,p_suffix                        in     varchar2 default null
1448   ,p_benefit_group_id              in     number   default null
1449   ,p_receipt_of_death_cert_date    in     date     default null
1450   ,p_coord_ben_med_pln_no          in     varchar2 default null
1451   ,p_coord_ben_no_cvg_flag         in     varchar2 default 'N'
1452   ,p_coord_ben_med_ext_er          in     varchar2 default null
1453   ,p_coord_ben_med_pl_name         in     varchar2 default null
1454   ,p_coord_ben_med_insr_crr_name   in     varchar2 default null
1455   ,p_coord_ben_med_insr_crr_ident  in     varchar2 default null
1456   ,p_coord_ben_med_cvg_strt_dt     in     date default null
1457   ,p_coord_ben_med_cvg_end_dt      in     date default null
1458   ,p_uses_tobacco_flag             in     varchar2 default null
1459   ,p_dpdnt_adoption_date           in     date     default null
1460   ,p_dpdnt_vlntry_svce_flag        in     varchar2 default 'N'
1461   ,p_original_date_of_hire         in     date     default null
1462   ,p_adjusted_svc_date             in     date     default null
1463   ,p_town_of_birth                 in     varchar2 default null
1464   ,p_region_of_birth               in     varchar2 default null
1465   ,p_country_of_birth              in     varchar2 default null
1466   ,p_global_person_id              in     varchar2 default null
1467   ,p_party_id                      in     number default null
1468   ,p_person_id                        out nocopy number
1469   ,p_assignment_id                    out nocopy number
1470   ,p_per_object_version_number        out nocopy number
1471   ,p_asg_object_version_number        out nocopy number
1472   ,p_per_effective_start_date         out nocopy date
1473   ,p_per_effective_end_date           out nocopy date
1474   ,p_full_name                        out nocopy varchar2
1475   ,p_per_comment_id                   out nocopy number
1476   ,p_assignment_sequence              out nocopy number
1477   ,p_assignment_number                out nocopy varchar2
1478   ,p_name_combination_warning         out nocopy boolean
1479   ,p_assign_payroll_warning           out nocopy boolean
1480   );
1481 --
1482 -- ----------------------------------------------------------------------------
1483 -- |---------------------------< re_hire_ex_employee >------------------------|
1484 -- ----------------------------------------------------------------------------
1485 --
1486 -- {Start Of Comments}
1487 /*#
1488  * This API hires an ex-employee as an employee.
1489  *
1490  * A person can be re-hired only if their previous period of service has a
1491  * final process date. When an employee is re-hired, the person type is changed
1492  * to employee, a new period of service record is created, and a new primary
1493  * employee assignment record is created. All changes are effective from the
1494  * hire date. It is possible to re-hire an employee the day after they were
1495  * terminated. The new person type must have a system type of EMP. If a person
1496  * type is not specified, the API uses the default EMP type for the business
1497  * group. The security lists are updated so that this employee is visible to
1498  * secure users. HR Foundation users can use the following parameters only:
1499  * p_validate, p_hire_date, p_business_group_id, p_last_name,
1500  * p_previous_last_name, p_mailstop, p_office_number, p_internal_location,
1501  * p_correspondence_language, p_known_as, p_sex, p_date_of_birth,
1502  * p_email_address, p_employee_number, p_expense_check_send_to_addres,
1503  * p_first_name, p_middle_names, p_national_identifier, p_title,
1504  * p_attribute_category, and p_attribute1-30.
1505  *
1506  * <p><b>Licensing</b><br>
1507  * This API is licensed for use with Human Resources and HR Foundation.
1508  *
1509  * <p><b>Prerequisites</b><br>
1510  * The person must exist in the relevant business group.
1511  *
1512  * <p><b>Post Success</b><br>
1513  * The period of service and default employee assignment are created.
1514  *
1515  * <p><b>Post Failure</b><br>
1516  * The API does not convert the person to an employee and raises an error.
1517  * @param p_validate If true, then validation alone will be performed and the
1518  * database will remain unchanged. If false and all validation checks pass,
1519  * then the database will be modified.
1520  * @param p_hire_date Hire date.
1521  * @param p_person_id Person who is being hired.
1522  * @param p_per_object_version_number Pass in the current version number of the
1523  * person to be updated. When the API completes if p_validate is false, will be
1524  * set to the new version number of the updated person. If p_validate is true
1528  * @param p_assignment_id If p_validate is false, then this uniquely identifies
1525  * will be set to the same value which was passed in.
1526  * @param p_person_type_id Type of employee being created.
1527  * @param p_rehire_reason Reason the person is being rehired.
1529  * the created assignment. If p_validate is true, then set to null.
1530  * @param p_asg_object_version_number If p_validate is false, then this
1531  * parameter is set to the version number of the assignment created. If
1532  * p_validate is true, then this parameter is null.
1533  * @param p_per_effective_start_date If p_validate is false, then set to the
1534  * effective start date on the updated person row which now exists as of the
1535  * effective date. If p_validate is true, then set to null.
1536  * @param p_per_effective_end_date If p_validate is false, then set to the
1537  * effective end date on the updated person row which now exists as of the
1538  * effective date. If p_validate is true, then set to null.
1539  * @param p_assignment_sequence If p_validate is false, then set to the
1540  * sequence number of the default assignment. If p_validate is true, then set
1541  * to null.
1542  * @param p_assignment_number If p_validate is false, then set to the
1543  * assignment number of the default assignment. If p_validate is true, then set
1544  * to null.
1545  * @param p_assign_payroll_warning If set to true, then the date of birth is
1546  * not entered. If set to false, then the date of birth has been entered.
1547  * Indicates if it will be possible to set the payroll on any of this person's
1548  * assignments.
1549  * @rep:displayname Rehire Ex-Employee
1550  * @rep:category BUSINESS_ENTITY PER_EX-EMPLOYEE
1551  * @rep:category MISC_EXTENSIONS HR_DATAPUMP
1552  * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
1553  * @rep:scope public
1554  * @rep:lifecycle active
1555  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
1556 */
1557 --
1558 -- {End Of Comments}
1559 --
1560 procedure re_hire_ex_employee
1561   (p_validate                      in     boolean  default false
1562   ,p_hire_date                     in     date
1563   ,p_person_id                     in     number
1564   ,p_per_object_version_number     in out nocopy number
1565   ,p_person_type_id                in     number   default hr_api.g_number
1566   ,p_rehire_reason                 in     varchar2
1567   ,p_assignment_id                    out nocopy number
1568   ,p_asg_object_version_number        out nocopy number
1569   ,p_per_effective_start_date         out nocopy date
1570   ,p_per_effective_end_date           out nocopy date
1571   ,p_assignment_sequence              out nocopy number
1572   ,p_assignment_number                out nocopy varchar2
1573   ,p_assign_payroll_warning           out nocopy boolean
1574   );
1575 --
1576 -- ----------------------------------------------------------------------------
1577 -- |------------------------< apply_for_internal_vacancy >--------------------|
1578 -- ----------------------------------------------------------------------------
1579 --
1580 -- {Start Of Comments}
1581 /*#
1582  * This API converts an existing employee to an applicant.
1583  *
1584  * This API updates employee details and creates an application and a default
1585  * applicant assignment. The process adds the applicant to the security lists
1586  * so that secure users can see the applicant. If you do not specify a
1587  * person_type_id, the API uses the default APL type for the business group.
1588  *
1589  * <p><b>Licensing</b><br>
1590  * This API is licensed for use with Human Resources.
1591  *
1592  * <p><b>Prerequisites</b><br>
1593  * The person must exist in the relevant business group.
1594  *
1595  * <p><b>Post Success</b><br>
1596  * The application, default applicant assignment, and (if required) associated
1597  * assignment budget values and a letter request are created.
1598  *
1599  * <p><b>Post Failure</b><br>
1600  * The API does not convert the employee to an applicant and raises an error.
1601  * @param p_validate If true, then validation alone will be performed and the
1602  * database will remain unchanged. If false and all validation checks pass,
1603  * then the database will be modified.
1604  * @param p_effective_date Determines when the DateTrack operation comes into
1605  * force.
1606  * @param p_person_id Person whose record needs to be modified.
1607  * @param p_applicant_number The business group's applicant number generation
1608  * method determines when the API derives and passes out an applicant number or
1609  * when the calling program should pass in a value. When the API call completes
1610  * if p_validate is true then will be set to the applicant number. If
1611  * p_validate is true then will be set to the passed value.
1612  * @param p_per_object_version_number Pass in the current version number of the
1613  * person to be updated. When the API completes if p_validate is false, will be
1614  * set to the new version number of the updated person. If p_validate is true
1615  * will be set to the same value which was passed in.
1616  * @param p_vacancy_id Vacancy for which this person has applied.
1617  * @param p_person_type_id Type of applicant being created.
1618  * @param p_application_id If p_validate is false, then this uniquely
1619  * identifies the application created. If p_validate is true, then set to null.
1620  * @param p_assignment_id If p_validate is false, then this uniquely identifies
1621  * the created assignment. If p_validate is true, then set to null.
1622  * @param p_apl_object_version_number If p_validate is false, then set to the
1623  * version number of the created application. If p_validate is true, then set
1624  * to null.
1625  * @param p_asg_object_version_number If p_validate is false, then this
1629  * sequence number of the default assignment. If p_validate is true, then set
1626  * parameter is set to the version number of the assignment created. If
1627  * p_validate is true, then this parameter is null.
1628  * @param p_assignment_sequence If p_validate is false, then set to the
1630  * to null.
1631  * @param p_per_effective_start_date If p_validate is false, then set to the
1632  * effective start date on the updated person row which now exists as of the
1633  * effective date. If p_validate is true, then set to null.
1634  * @param p_per_effective_end_date If p_validate is false, then set to the
1635  * effective end date on the updated person row which now exists as of the
1636  * effective date. If p_validate is true, then set to null.
1637  * @rep:displayname Apply For Internal Vacancy
1638  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE
1639  * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
1640  * @rep:scope public
1641  * @rep:lifecycle active
1642  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
1643 */
1644 --
1645 -- {End Of Comments}
1646 --
1647 procedure apply_for_internal_vacancy
1648   (p_validate                      in     boolean  default false
1649   ,p_effective_date                in     date
1650   ,p_person_id                     in     number
1651   ,p_applicant_number              in out nocopy varchar2
1652   ,p_per_object_version_number     in out nocopy number
1653   ,p_vacancy_id                    in     number   default null
1654   ,p_person_type_id                in     number   default hr_api.g_number
1655   ,p_application_id                   out nocopy number
1656   ,p_assignment_id                    out nocopy number
1657   ,p_apl_object_version_number        out nocopy number
1658   ,p_asg_object_version_number        out nocopy number
1659   ,p_assignment_sequence              out nocopy number
1660   ,p_per_effective_start_date         out nocopy date
1661   ,p_per_effective_end_date           out nocopy date
1662   );
1663 -- NEW
1664 -- ----------------------------------------------------------------------------
1665 -- |-----------------< apply_for_internal_vacancy >---------------------------|
1666 -- ----------------------------------------------------------------------------
1667 --
1668 -- {Start Of Comments}
1669 --
1670 -- Description:
1671 --   This API updates an employee, system person type 'EMP'
1672 --   to an employee and applicant, system person type 'EMP_APL'.
1673 --
1674 --   A new applicant assignment is created for the employee.
1675 --   An existing application might be updated on effective date or
1676 --   a new one is added.
1677 --
1678 --   The security lists are updated.
1679 --
1680 --
1681 -- Prerequisites:
1682 --   The employee must have a system person type of 'EMP'.
1683 --
1684 -- In Parameters:
1685 --   Name                           Reqd Type     Description
1686 --   p_validate                     No   boolean  If true, the database
1687 --                                                remains unchanged. If false
1688 --                                                then the employee person type
1689 --                                                is updated to an 'EMP_APL',
1690 --                                                an application is a secondary
1691 --                                                assignment is created in
1692 --                                                the database.
1693 --   p_effective_date               Yes  date     The effective start date
1694 --                                                of the new person status,
1695 --                                                application and secondary
1696 --                                                assignment.
1697 --   p_person_id                    Yes  number.  Person ID.
1698 --   p_applicant_number             No   varchar2 Applicant number. If the
1699 --                                                number generation method is
1700 --                                                Manual then this parameter
1701 --                                                is mandatory.  If the number
1702 --                                                generation is Automatic, the
1703 --                                                the value of this parameter
1704 --                                                defaults to null.
1705 --   p_per_object_version_number    Yes  number   Object version number of
1706 --                                                person.
1707 --   p_vacancy_id                   No   number   Vacancy ID. Defaults to null.
1708 --   p_person_type_id               No   number   Person Type ID of 'EMP_APL'.
1709 --                                                Defaults to hr_api.g_number.
1710 --
1711 -- Post success:
1712 --   When the person is successfully updated, applicant assignment and
1713 --   application are successfully inserted, the following OUT parameters are
1714 --   set:
1715 --
1716 --   Name                           Type     Description
1717 --   p_per_object_version_number    number   If p_validate is false, this will
1718 --                                           be set to the new version number of
1719 --                                           the person updated. If
1720 --                                           p_validate is true this parameter
1721 --                                           will be set to the value passed in.
1722 --   p_application_id               number   If p_validate is false, this
1723 --                                           uniquely identifies the application
1724 --                                           created or updated. If p_validate
1725 --                                           is true this parameter is null.
1726 --   p_assignment_id                number   If p_validate is false, this
1730 --   p_apl_object_version_number    number   If p_validate is false, this will
1727 --                                           uniquely identifies the assignment
1728 --                                           created. If p_validate is true
1729 --                                           this parameter is set null.
1731 --                                           be set to the version number of
1732 --                                           the application created. If
1733 --                                           p_validate is true this parameter
1734 --                                           is set to null.
1735 --   p_asg_object_version_number    number   If p_validate is false, this will
1736 --                                           be set to the version number of
1737 --                                           the assignment created. If
1738 --                                           p_validate is true this
1739 --                                           parameter is set to null.
1740 --   p_assignment_sequence          number   If p_validate is false, this will
1741 --                                           be set to the assignment sequence
1742 --                                           of the assignment created.  If
1743 --                                           p_validate is true, this parameter
1744 --                                           is set to null.
1745 --   p_per_effective_start_date     date     If p_validate is false, this is
1746 --                                           set to the effective start
1747 --                                           date of the person. If
1748 --                                           p_validate is true this is
1749 --                                           null.
1750 --   p_per_effective_end_date       date     If p_validate is false, this is
1751 --                                           set to the effective end date
1752 --                                           of the person. If p_validate
1753 --                                           is true this is set null.
1754 --   p_appl_override_warning        boolean  if p_validate is false, this is
1755 --                                           set to TRUE whenever future
1756 --                                           applications have been overwritten.
1757 --
1758 -- Post Failure:
1759 --   The API does not update the person or create the applicant assignment
1760 --   or application and raises an error.
1761 --
1762 -- Access Status:
1763 --   Public.
1764 --
1765 -- {End Of Comments}
1766 --
1767 procedure apply_for_internal_vacancy
1768   (p_validate                      in     boolean  default false
1769   ,p_effective_date                in     date
1770   ,p_person_id                     in     number
1771   ,p_applicant_number              in out nocopy varchar2
1772   ,p_per_object_version_number     in out nocopy number
1773   ,p_vacancy_id                    in     number   default null
1774   ,p_person_type_id                in     number   default hr_api.g_number
1775   ,p_application_id                   out nocopy number
1776   ,p_assignment_id                    out nocopy number
1777   ,p_apl_object_version_number        out nocopy number
1778   ,p_asg_object_version_number        out nocopy number
1779   ,p_assignment_sequence              out nocopy number
1780   ,p_per_effective_start_date         out nocopy date
1781   ,p_per_effective_end_date           out nocopy date
1782   ,p_appl_override_warning            out nocopy boolean -- 3652025
1783   );
1784 --
1785 -- ----------------------------------------------------------------------------
1786 -- |------------------------------< hire_into_job >---------------------------|
1787 -- ----------------------------------------------------------------------------
1788 --
1789 -- {Start Of Comments}
1790 /*#
1791  * This API hires an applicant as an employee.
1792  *
1793  * This API converts a person of type Applicant to a person of type Employee
1794  * (EMP).
1795  *
1796  * <p><b>Licensing</b><br>
1797  * This API is licensed for use with Human Resources.
1798  *
1799  * <p><b>Prerequisites</b><br>
1800  * The applicant must exist in the relevant business group and must have an
1801  * applicant assignment with the assignment status Accepted. If person_type_id
1802  * is supplied, it must have a corresponding system person type of EMP and must
1803  * be active in the same business group as the applicant being changed to
1804  * employee.
1805  *
1806  * <p><b>Post Success</b><br>
1807  * The applicant has been successfully hired as an employee with a default
1808  * employee assignment.
1809  *
1810  * <p><b>Post Failure</b><br>
1811  * The applicant is not hired as an employee and an error is raised.
1812  * @param p_validate If true, then validation alone will be performed and the
1813  * database will remain unchanged. If false and all validation checks pass,
1814  * then the database will be modified.
1815  * @param p_effective_date Determines when the DateTrack operation comes into
1816  * force.
1817  * @param p_person_id Person who is being hired.
1818  * @param p_object_version_number Pass in the current version number of the
1819  * person to be updated. When the API completes if p_validate is false, will be
1820  * set to the new version number of the updated person. If p_validate is true
1821  * will be set to the same value which was passed in.
1822  * @param p_employee_number The business group's employee number generation
1823  * method determines when the API derives and passes out an employee number or
1824  * when the calling program should pass in a value. When the API call completes
1825  * if p_validate is false then will be set to the employee number. If
1826  * p_validate is true then will be set to the passed value.
1830  * particular record depend on the dates of previous record changes and the
1827  * @param p_datetrack_update_mode Indicates which DateTrack mode to use when
1828  * updating the record. You must set to either UPDATE, CORRECTION,
1829  * UPDATE_OVERRIDE or UPDATE_CHANGE_INSERT. Modes available for use with a
1831  * effective date of this change.
1832  * @param p_person_type_id Type of employee being created.
1833  * @param p_national_identifier Number by which a person is identified in a
1834  * given legislation.
1835  * @param p_per_information7 Developer descriptive flexfield segment.
1836  * @param p_effective_start_date If p_validate is false, then set to the
1837  * effective start date on the updated person row which now exists as of the
1838  * effective date. If p_validate is true, then set to null.
1839  * @param p_effective_end_date If p_validate is false, then set to the
1840  * effective end date on the updated person row which now exists as of the
1841  * effective date. If p_validate is true, then set to null.
1842  * @param p_assign_payroll_warning If set to true, then the date of birth is
1843  * not entered. If set to false, then the date of birth has been entered.
1844  * Indicates if it will be possible to set the payroll on any of this person's
1845  * assignments.
1846  * @param p_orig_hire_warning If set to true, an orginal date of hire exists
1847  * for an applicant who has never been an employee.
1848  * @rep:displayname Hire Into Job
1849  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE
1850  * @rep:category MISC_EXTENSIONS HR_DATAPUMP
1851  * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
1852  * @rep:scope public
1853  * @rep:lifecycle active
1854  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
1855 */
1856 --
1857 -- {End Of Comments}
1858 --
1859 PROCEDURE hire_into_job
1860   (p_validate                     IN     BOOLEAN  DEFAULT FALSE
1861   ,p_effective_date               IN     DATE
1862   ,p_person_id                    IN     NUMBER
1863   ,p_object_version_number        IN OUT NOCOPY NUMBER
1864   ,p_employee_number              IN OUT NOCOPY VARCHAR2
1865   ,p_datetrack_update_mode        IN     VARCHAR2 DEFAULT NULL
1866   ,p_person_type_id               IN     NUMBER   DEFAULT NULL
1867   ,p_national_identifier          IN     VARCHAR2 DEFAULT NULL
1868   ,p_per_information7             IN     VARCHAR2 DEFAULT NULL --3414274
1869   ,p_effective_start_date            OUT NOCOPY DATE
1870   ,p_effective_end_date              OUT NOCOPY DATE
1871   ,p_assign_payroll_warning          OUT NOCOPY BOOLEAN
1872   ,p_orig_hire_warning               OUT NOCOPY BOOLEAN
1873   );
1874 --
1875 -- -----------------------------------------------------------------------------
1876 -- |----------------------------< hire_into_job - new >------------------------|
1877 -- -----------------------------------------------------------------------------
1878 --
1879 -- {Start Of Comments}
1880 --
1881 -- Description:
1882 --   This business process converts a person of type EX_APL, EX_EMP or OTHER to
1883 --   a type of EMP.
1884 --   This is achieved by
1885 --     Setting the person type to EMP
1886 --     Creating a period of service
1887 --     Creating a default employee assignment
1888 --     Repopulating the security lists
1889 --
1890 -- In Parameters:
1891 --   Name                           Reqd Type     Description
1892 --   p_validate                     No   boolean  If true, the database remains
1893 --                                                unchanged. If false a valid
1894 --                                                assignment is updated in
1895 --                                                the database.
1896 --   p_effective_date               Yes  date     Effective date of the change
1897 --                                                of status.
1898 --   p_person_id                    Yes  number   Person to become an applicant.
1899 --   p_per_object_version_number    Yes  number   Version number of the person
1900 --                                                record.
1901 --   p_datetrack_update_mode        No   varchar2 Datetrack update mode. Only
1902 --                                                applicable if hiring a person of
1903 --                                                type OTHER, when the values of
1904 --                                                Update or Correction may be used.
1905 --                                                If not set a value of Update is
1906 --                                                used. In all other cases this
1907 --                                                value is ignored and a value of
1908 --                                                Update used.
1909 --   p_employee_number              No   varchar2 Employee number. Ignored if
1910 --                                                the person already has an
1911 --                                                employee number. Required if
1912 --                                                the number generation method
1913 --                                                is manual. Must be NULL if the
1914 --                                                number generation method is
1915 --                                                automatic.
1916 --   p_person_type_id               No   number   Person type id the person is to
1917 --                                                become. If this value is
1918 --                                                omitted the person type id
1919 --                                                of the default system person
1920 --                                                type required in the person's
1921 --                                                business group is used.
1922 --   p_national_identifier          No   varchar2 The national identifier.
1926 --                                                has to included into
1923 --   p_per_information7             No   Varchar2 Hire status of the Hired
1924 --                                                person. This is used to
1925 --                                                determine whether the person
1927 --                                                New Hire Report, PERUSHIR.
1928 --                                                This is valid for
1929 --                                                US legislation.
1930 --
1931 -- Post Success:
1932 --   The API updates the person and application and set the following out
1933 --   parameters:
1934 --
1935 --   Name                           Type     Description
1936 --   p_per_object_version_number    number   If p_validate is false, set to
1937 --                                           the new version number of the
1938 --                                           person record. If p_validate is
1939 --                                           true, set to the value passed in.
1940 --   p_employee_number              number   If p_validate is false, set to the
1941 --                                           employee number of the person. If
1942 --                                           p_validate is true, set to the
1943 --                                           value passed in.
1944 --   p_assignment_id                number   If p_validate is false, set to the
1945 --                                           assignment_id for the person.
1946 --   p_effective_start_date         date     If p_validate is false, set to
1947 --                                           the effective start date of the
1948 --                                           updated person record. If
1949 --                                           p_validate is true, set to null.
1950 --   p_effective_end_date           date     If p_validate is false, set to
1951 --                                           the effective end date of the
1952 --                                           updated person record. If
1953 --                                           p_validate is true, set to null.
1954 --   p_assign_payroll_warning       boolean  Set to true if the person's date of
1955 --                                           birth has not been set. Set to
1956 --                                           false if the date of birth has been
1957 --                                           entered. Indicates if it will be
1958 --                                           possible to set the payroll
1959 --                                           component on any of this person's
1960 --                                           assignments.
1961 --   p_orig_hire_warning            boolean  Set to true if the original date of
1962 --                                           hire is not null and the person
1963 --                                           type is not EMP, EMP_APL, EX_EMP or
1964 --                                           EX_EMP_APL.
1965 --
1966 -- Post Failure:
1967 --   The API does not update the person and period of service and raises an error.
1968 --
1969 -- Access Status:
1970 --   Public.
1971 --
1972 -- {End Of Comments}
1973 --
1974 PROCEDURE hire_into_job
1975   (p_validate                     IN     BOOLEAN  DEFAULT FALSE
1976   ,p_effective_date               IN     DATE
1977   ,p_person_id                    IN     NUMBER
1978   ,p_object_version_number        IN OUT NOCOPY NUMBER
1979   ,p_employee_number              IN OUT NOCOPY VARCHAR2
1980   ,p_datetrack_update_mode        IN     VARCHAR2 DEFAULT NULL
1981   ,p_person_type_id               IN     NUMBER   DEFAULT NULL
1982   ,p_national_identifier          IN     VARCHAR2 DEFAULT NULL
1983   ,p_per_information7             IN     VARCHAR2 DEFAULT NULL --3414274
1984   ,p_assignment_id                   OUT NOCOPY NUMBER   -- Bug#3919096
1985   ,p_effective_start_date            OUT NOCOPY DATE
1986   ,p_effective_end_date              OUT NOCOPY DATE
1987   ,p_assign_payroll_warning          OUT NOCOPY BOOLEAN
1988   ,p_orig_hire_warning               OUT NOCOPY BOOLEAN
1989   );
1990 --
1991 -- 115.30 (START)
1992 --
1993 -- ----------------------------------------------------------------------------
1994 -- |-----------------------< MANAGE_REHIRE_PRIMARY_ASGS >---------------------|
1995 -- ----------------------------------------------------------------------------
1996 -- {Start Of Comments}
1997 --
1998 -- Description:   This procedure manages the switching of the primary but
1999 --                terminated terminated assignment of an employee on the old
2000 --                period of service to a secondary assignment during rehire
2001 --                and swithcing it back should the rehire be cancelled.
2002 --
2003 -- Prerequisites: None
2004 --
2005 -- In Parameters:
2006 --   Name                       Reqd Type     Description
2007 --   P_PERSON_ID                Yes  NUMBER   Person Identifier
2008 --   P_REHIRE_DATE              Yes  DATE     Employee Re-hire date
2009 --   P_CANCEL                   Yes  VARCHAR2 Flags whether rehire or cancel
2010 --                                            rehire invocation.
2011 --
2012 -- Post Success:
2013 --   The TERM_ASSIGN assignment record will be flipped from primary to
2014 --   secondary if rehire before FPD and flipped back to primary if the
2015 --   rehire is being cancelled.
2016 --
2017 --   Name                           Type     Description
2018 --   -                              -        -
2019 -- Post Failure:
2020 --   An exception will be raised depending on the nature of failure.
2021 --
2022 -- Access Status:
2023 --   Internal Development Use Only.
2024 --
2025 -- {End Of Comments}
2026 --
2027 procedure manage_rehire_primary_asgs
2028   (p_person_id   in number
2029   ,p_rehire_date in date
2030   ,p_cancel      in varchar2
2031   );
2032 --
2033 -- 115.30 (END)
2034 --
2035 end hr_employee_api;