1 PACKAGE hr_cn_applicant_api AS
2 /* $Header: hrcnwraa.pkh 120.3 2005/11/04 05:36:22 jcolman noship $ */
3 /*#
4 * This package contains applicant API for China.
5 * @rep:scope public
6 * @rep:product per
7 * @rep:displayname Applicant for China
8 */
9 g_trace boolean := FALSE;
10 --
11 -- ----------------------------------------------------------------------------
12 -- |---------------------------< create_cn_applicant >------------------------|
13 -- ----------------------------------------------------------------------------
14 --
15 -- {Start Of Comments}
16 /*#
17 * This API creates a new applicant for business groups using the legislation
18 * for China.
19 *
20 * This API calls the generic create_applicant API.It maps certain columns to
21 * user-friendly names appropriate for China so as to ensure easy
22 * identification. As this API is an alternative API, see the generic
23 * create_applicant API for further explanation.
24 *
25 * <p><b>Licensing</b><br>
26 * This API is licensed for use with Human Resources.
27 *
28 * <p><b>Prerequisites</b><br>
29 * A business group for the legislation in China must be present as on the
30 * effective date. See the corresponding generic API for further details
31 *
32 * <p><b>Post Success</b><br>
33 * The person, application, default applicant assignment and if required
34 * associated assignment budget values and a letter request are created.
35 *
36 * <p><b>Post Failure</b><br>
37 * The API does not create the applicant and raises an error.
38 * @param p_validate If true, then validation alone will be performed and the
39 * database will remain unchanged. If false and all validation checks pass,
40 * then the database will be modified.
41 * @param p_date_received The applicant hire date and thus the effective start
42 * date of the person, primary assignment and application.
43 * @param p_business_group_id {@rep:casecolumn
44 * PER_ALL_PEOPLE_F.BUSINESS_GROUP_ID}
45 * @param p_family_or_last_name {@rep:casecolumn PER_ALL_PEOPLE_F.LAST_NAME}
46 * @param p_person_type_id {@rep:casecolumn PER_ALL_PEOPLE_F.PERSON_TYPE_ID}
47 * @param p_applicant_number The business group's applicant number generation
48 * method determines when the API derives and passes out an applicant number or
49 * when the calling program should pass in a value. When the API call completes
50 * if p_validate is false then it will be set to the generated applicant number
51 * or passed value. If p_validate is true then it will be set to null.
52 * @param p_per_comments Applicant Comment Text
53 * @param p_date_employee_data_verified {@rep:casecolumn
54 * PER_ALL_PEOPLE_F.DATE_EMPLOYEE_DATA_VERIFIED}
55 * @param p_date_of_birth {@rep:casecolumn PER_ALL_PEOPLE_F.DATE_OF_BIRTH}
56 * @param p_email_address {@rep:casecolumn PER_ALL_PEOPLE_F.EMAIL_ADDRESS}
57 * @param p_expense_check_send_to_addres Mailing address. Valid values are
58 * defined by the 'HOME_OFFICE' lookup type.
59 * @param p_given_or_first_name {@rep:casecolumn PER_ALL_PEOPLE_F.FIRST_NAME}
60 * @param p_known_as {@rep:casecolumn PER_ALL_PEOPLE_F.KNOWN_AS}
61 * @param p_marital_status Marital status. Valid values are defined by the
62 * 'MAR_STATUS' lookup type.
63 * @param p_middle_names {@rep:casecolumn PER_ALL_PEOPLE_F.MIDDLE_NAMES}
64 * @param p_nationality Nationality. Valid values are defined by the
65 * 'NATIONALITY' lookup type
66 * @param p_citizen_identification_num {@rep:casecolumn
67 * PER_ALL_PEOPLE_F.NATIONAL_IDENTIFIER}
68 * @param p_previous_last_name {@rep:casecolumn
69 * PER_ALL_PEOPLE_F.PREVIOUS_LAST_NAME}
70 * @param p_registered_disabled_flag Indicates whether the person is classified
71 * as disabled. Valid values are defined by the 'REGISTERED_DISABLED' lookup
72 * type.
73 * @param p_sex Legal gender. Valid values are defined by the 'SEX' lookup
74 * type.
75 * @param p_title Title e.g. Mr, Mrs, Dr. Valid values are defined by the
76 * 'TITLE' lookup type
77 * @param p_work_telephone {@rep:casecolumn PER_ALL_PEOPLE_F.WORK_TELEPHONE}
78 * @param p_attribute_category This context value determines which flexfield
79 * structure to use with the descriptive flexfield segments.
80 * @param p_attribute1 Descriptive flexfield segment.
81 * @param p_attribute2 Descriptive flexfield segment.
82 * @param p_attribute3 Descriptive flexfield segment.
83 * @param p_attribute4 Descriptive flexfield segment.
84 * @param p_attribute5 Descriptive flexfield segment.
85 * @param p_attribute6 Descriptive flexfield segment.
86 * @param p_attribute7 Descriptive flexfield segment.
87 * @param p_attribute8 Descriptive flexfield segment.
88 * @param p_attribute9 Descriptive flexfield segment.
89 * @param p_attribute10 Descriptive flexfield segment.
90 * @param p_attribute11 Descriptive flexfield segment.
91 * @param p_attribute12 Descriptive flexfield segment.
92 * @param p_attribute13 Descriptive flexfield segment.
93 * @param p_attribute14 Descriptive flexfield segment.
94 * @param p_attribute15 Descriptive flexfield segment.
95 * @param p_attribute16 Descriptive flexfield segment.
96 * @param p_attribute17 Descriptive flexfield segment.
97 * @param p_attribute18 Descriptive flexfield segment.
98 * @param p_attribute19 Descriptive flexfield segment.
99 * @param p_attribute20 Descriptive flexfield segment.
100 * @param p_attribute21 Descriptive flexfield segment.
101 * @param p_attribute22 Descriptive flexfield segment.
102 * @param p_attribute23 Descriptive flexfield segment.
103 * @param p_attribute24 Descriptive flexfield segment.
104 * @param p_attribute25 Descriptive flexfield segment.
105 * @param p_attribute26 Descriptive flexfield segment.
106 * @param p_attribute27 Descriptive flexfield segment.
107 * @param p_attribute28 Descriptive flexfield segment.
108 * @param p_attribute29 Descriptive flexfield segment.
109 * @param p_attribute30 Descriptive flexfield segment.
110 * @param p_hukou_type Hukou Type. Valid values are defined by the
111 * 'CN_HUKOU_TYPE' lookup type.
112 * @param p_hukou_location Hukou Location. Valid values are defined by the
113 * 'CN_HUKOU_LOCN' lookup type.
114 * @param p_highest_education_level Highest education level. Valid values are
115 * defined by the 'CN_HIGH_EDU_LEVEL' lookup type.
116 * @param p_number_of_children Number of children. This fields stores the
117 * number of children of the applicant. Valid values are whole numbers.
118 * @param p_expatriate_indicator Expatriate Indicator. Valid values are defined
119 * by the 'YES_NO' lookup type.
120 * @param p_health_status Health status. Valid values are defined by the
121 * 'CN_HEALTH_STATUS' lookup type.
122 * @param p_tax_exemption_indicator Tax exemption indicator.Valid values are
123 * defined by the 'YES_NO' lookup type.
124 * @param p_percentage Tax exemption percentage. Determines the percentage of
125 * Special Tax Exemption based on the Tax Exemption Indicator. If left blank
126 * this defaults to a global value defined by MOLSS as per the current tax
127 * regulations
128 * @param p_family_han_yu_pin_yin_name Han Yu Pin Yin Last Name as specified on
129 * the Passport for Chinese residents.
130 * @param p_given_han_yu_pin_yin_name Han Yu Pin Yin First Name as specified on
131 * the Passport for Chinese residents.
132 * @param p_previous_name Previous Name of the Applicant in case of change in
133 * name.
134 * @param p_race_ethnic_orgin Race ethnic origin. Valid values are defined by
135 * the 'CN_RACE' lookup type.
136 * @param p_social_security_ic_number Social Security Identification Number.
137 * @param p_background_check_status Background check status. Valid values are
138 * defined by the 'YES_NO' lookup type.
139 * @param p_background_date_check {@rep:casecolumn
140 * PER_ALL_PEOPLE_F.BACKGROUND_DATE_CHECK}
141 * @param p_correspondence_language {@rep:casecolumn
142 * PER_ALL_PEOPLE_F.CORRESPONDENCE_LANGUAGE}
143 * @param p_fte_capacity {@rep:casecolumn PER_ALL_PEOPLE_F.FTE_CAPACITY}
144 * @param p_hold_applicant_date_until {@rep:casecolumn
145 * PER_ALL_PEOPLE_F.HOLD_APPLICANT_DATE_UNTIL}
146 * @param p_honors {@rep:casecolumn PER_ALL_PEOPLE_F.HONORS}
147 * @param p_mailstop {@rep:casecolumn PER_ALL_PEOPLE_F.MAILSTOP}
148 * @param p_office_number {@rep:casecolumn PER_ALL_PEOPLE_F.OFFICE_NUMBER}
149 * @param p_on_military_service Indicates if the applicant is on military
150 * service. Valid values are defined by 'YES_NO' lookup type.
151 * @param p_pre_name_adjunct Prefix for the applicant name
152 * @param p_projected_start_date {@rep:casecolumn
153 * PER_ALL_PEOPLE_F.PROJECTED_START_DATE}
154 * @param p_resume_exists Indicates if a resume for the applicant exists. Valid
155 * values are defined by 'YES_NO' lookup type.
156 * @param p_resume_last_updated {@rep:casecolumn
157 * PER_ALL_PEOPLE_F.RESUME_LAST_UPDATED}
158 * @param p_student_status Indicates the student status of the applicant. Valid
159 * values are defined by the 'STUDENT_STATUS' lookup type.
160 * @param p_work_schedule {@rep:casecolumn PER_ALL_PEOPLE_F.WORK_SCHEDULE}
161 * @param p_suffix Suffix for the applicant name
162 * @param p_date_of_death {@rep:casecolumn PER_ALL_PEOPLE_F.DATE_OF_DEATH}
163 * @param p_benefit_group_id {@rep:casecolumn
164 * PER_ALL_PEOPLE_F.BENEFIT_GROUP_ID}
165 * @param p_receipt_of_death_cert_date {@rep:casecolumn
166 * PER_ALL_PEOPLE_F.RECEIPT_OF_DEATH_CERT_DATE}
167 * @param p_coord_ben_med_pln_no {@rep:casecolumn
168 * PER_ALL_PEOPLE_F.COORD_BEN_MED_PLN_NO}
169 * @param p_coord_ben_no_cvg_flag Coordination of benefits no other coverage
170 * flag. Valid values are defined by the 'YES_NO' lookup type.
171 * @param p_uses_tobacco_flag Indicates if the applicant uses tabacco. Valid
172 * values are defined by the 'YES_NO' lookup type.
173 * @param p_dpdnt_adoption_date {@rep:casecolumn
174 * PER_ALL_PEOPLE_F.DPDNT_ADOPTION_DATE}
175 * @param p_dpdnt_vlntry_svce_flag Indicates if the applicant's dependent is in
176 * voluntary service. Valid values are defined by the 'YES_NO' lookup type.
177 * @param p_original_date_of_hire {@rep:casecolumn
178 * PER_ALL_PEOPLE_F.ORIGINAL_DATE_OF_HIRE}
179 * @param p_place_of_birth Indicates town of birth
180 * @param p_original_hometown Indicates region of birth
181 * @param p_country_of_birth Indicates the country of birth of applicant. Valid
182 * values are defined by the view FND_TERRITORIES_VL
183 * @param p_global_person_id Global Person Id
184 * @param p_party_id Party for whom the address applies.
185 * @param p_person_id f p_validate is false, then this uniquely identifies the
186 * person created. If p_validate is true, then set to null.
187 * @param p_assignment_id If p_validate is false, then this uniquely identifies
188 * the created assignment. If p_validate is true, then set to null.
189 * @param p_application_id If p_validate is false, then this uniquely
190 * identifies the created applicant. If p_validate is true, then set to null.
191 * @param p_per_object_version_number If p_validate is false, then set to the
192 * version number of the created person. If p_validate is true, then the value
193 * will be null.
194 * @param p_asg_object_version_number If p_validate is false, then this
195 * parameter is set to the version number of the assignment created. If
196 * p_validate is true, then this parameter is null.
197 * @param p_apl_object_version_number If p_validate is false, then set to the
198 * version number of the created applicant. If p_validate is true, then the
199 * value will be null.
200 * @param p_per_effective_start_date If p_validate is false, then set to the
201 * earliest effective start date for the created person. If p_validate is true,
202 * then set to null.
203 * @param p_per_effective_end_date If p_validate is false, then set to the
204 * effective end date for the created person. If p_validate is true, then set
205 * to null.
206 * @param p_full_name If p_validate is false, this will be set to the complete
207 * full name of the person. If p_validate is true this will be null.
208 * @param p_per_comment_id If p_validate is false, this will be set to the
209 * corresponding person comment row, if any comment text exists. If p_validate
210 * is true this will be null.
211 * @param p_assignment_sequence If p_validate is false, this will be set to the
212 * sequence number of the default assignment. If p_validate is true this will
213 * be null.
214 * @param p_name_combination_warning If set to true, then the combination of
215 * last name, first name and date of birth existed prior to calling this API.
216 * @param p_orig_hire_warning If the original date of hire is not null and the
217 * person type is not EMP,EMP_APL, EX_EMP or EX_EMP_APL, then this value is set
218 * to true.
219 * @rep:displayname Create Applicant for China
220 * @rep:category BUSINESS_ENTITY PER_APPLICANT
221 * @rep:category MISC_EXTENSIONS HR_DATAPUMP
222 * @rep:scope public
223 * @rep:lifecycle active
224 * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
225 */
226 --
227 -- {End Of Comments}
228 --
229 PROCEDURE create_cn_applicant
230 (p_validate in boolean default false
231 ,p_date_received in date
232 ,p_business_group_id in number
233 ,p_family_or_last_name in varchar2
234 ,p_person_type_id in number default null
235 ,p_applicant_number in out nocopy varchar2
236 ,p_per_comments in varchar2 default null
237 ,p_date_employee_data_verified in date default null
238 ,p_date_of_birth in date default null
239 ,p_email_address in varchar2 default null
240 ,p_expense_check_send_to_addres in varchar2 default null
241 ,p_given_or_first_name in varchar2 default null
242 ,p_known_as in varchar2 default null
243 ,p_marital_status in varchar2 default null
244 ,p_middle_names in varchar2 default null
245 ,p_nationality in varchar2 default null
246 ,p_citizen_identification_num in varchar2 default null
247 ,p_previous_last_name in varchar2 default null
248 ,p_registered_disabled_flag in varchar2 default null
249 ,p_sex in varchar2 default null
250 ,p_title in varchar2 default null
251 ,p_work_telephone in varchar2 default null
252 ,p_attribute_category in varchar2 default null
253 ,p_attribute1 in varchar2 default null
257 ,p_attribute5 in varchar2 default null
254 ,p_attribute2 in varchar2 default null
255 ,p_attribute3 in varchar2 default null
256 ,p_attribute4 in varchar2 default null
258 ,p_attribute6 in varchar2 default null
259 ,p_attribute7 in varchar2 default null
260 ,p_attribute8 in varchar2 default null
261 ,p_attribute9 in varchar2 default null
262 ,p_attribute10 in varchar2 default null
263 ,p_attribute11 in varchar2 default null
264 ,p_attribute12 in varchar2 default null
265 ,p_attribute13 in varchar2 default null
266 ,p_attribute14 in varchar2 default null
267 ,p_attribute15 in varchar2 default null
268 ,p_attribute16 in varchar2 default null
269 ,p_attribute17 in varchar2 default null
270 ,p_attribute18 in varchar2 default null
271 ,p_attribute19 in varchar2 default null
272 ,p_attribute20 in varchar2 default null
273 ,p_attribute21 in varchar2 default null
274 ,p_attribute22 in varchar2 default null
275 ,p_attribute23 in varchar2 default null
276 ,p_attribute24 in varchar2 default null
277 ,p_attribute25 in varchar2 default null
278 ,p_attribute26 in varchar2 default null
279 ,p_attribute27 in varchar2 default null
280 ,p_attribute28 in varchar2 default null
281 ,p_attribute29 in varchar2 default null
282 ,p_attribute30 in varchar2 default null
283 ,p_hukou_type in varchar2
284 ,p_hukou_location in varchar2
285 ,p_highest_education_level in varchar2 default null
286 ,p_number_of_children in varchar2 default null
287 ,p_expatriate_indicator in varchar2 default 'N' -- Bug 2782045
288 ,p_health_status in varchar2 default null
289 ,p_tax_exemption_indicator in varchar2 default null
290 ,p_percentage in varchar2 default null
291 ,p_family_han_yu_pin_yin_name in varchar2 default null
292 ,p_given_han_yu_pin_yin_name in varchar2 default null
293 ,p_previous_name in varchar2 default null
294 ,p_race_ethnic_orgin in varchar2 default null
295 ,p_social_security_ic_number in varchar2 default null
296 ,p_background_check_status in varchar2 default null
297 ,p_background_date_check in date default null
298 ,p_correspondence_language in varchar2 default null
302 ,p_mailstop in varchar2 default null
299 ,p_fte_capacity in number default null
300 ,p_hold_applicant_date_until in date default null
301 ,p_honors in varchar2 default null
303 ,p_office_number in varchar2 default null
304 ,p_on_military_service in varchar2 default null
305 ,p_pre_name_adjunct in varchar2 default null
306 ,p_projected_start_date in date default null
307 ,p_resume_exists in varchar2 default null
308 ,p_resume_last_updated in date default null
309 ,p_student_status in varchar2 default null
310 ,p_work_schedule in varchar2 default null
311 ,p_suffix in varchar2 default null
312 ,p_date_of_death in date default null
313 ,p_benefit_group_id in number default null
314 ,p_receipt_of_death_cert_date in date default null
315 ,p_coord_ben_med_pln_no in varchar2 default null
316 ,p_coord_ben_no_cvg_flag in varchar2 default 'N'
317 ,p_uses_tobacco_flag in varchar2 default null
318 ,p_dpdnt_adoption_date in date default null
319 ,p_dpdnt_vlntry_svce_flag in varchar2 default 'N'
320 ,p_original_date_of_hire in date default null
321 ,p_place_of_birth in varchar2 default null
322 ,p_original_hometown in varchar2 default null
323 ,p_country_of_birth in varchar2 default null
324 ,p_global_person_id in varchar2 default null
325 ,p_party_id in number default null
326 --
327 ,p_person_id out nocopy number
328 ,p_assignment_id out nocopy number
329 ,p_application_id out nocopy number
330 ,p_per_object_version_number out nocopy number
331 ,p_asg_object_version_number out nocopy number
332 ,p_apl_object_version_number out nocopy number
333 ,p_per_effective_start_date out nocopy date
334 ,p_per_effective_end_date out nocopy date
335 ,p_full_name out nocopy varchar2
336 ,p_per_comment_id out nocopy number
337 ,p_assignment_sequence out nocopy number
338 ,p_name_combination_warning out nocopy boolean
339 ,p_orig_hire_warning out nocopy boolean);
340 --
341 END hr_cn_applicant_api;