1 Package ghr_posndt_api as
2 /* $Header: ghposndt.pkh 120.7 2006/10/26 09:08:46 utokachi noship $ */
3 /*#
4 * This package contains the procedures for Creating Federal HR Position
5 * records.
6 * @rep:scope public
7 * @rep:product per
8 * @rep:displayname Position DateTrack
9 */
10 --
11 -- ----------------------------------------------------------------------------
12 -- |-----------------------------< create_position >--------------------------|
13 -- ----------------------------------------------------------------------------
14 --
15 -- {Start Of Comments}
16 /*#
17 * This API creates a position, a specific occurrence of a job within an
18 * organization.
19 *
20 * This wrapper for the US Federal HR Product creates positions for version 11i
21 * and beyond. The Delete wrapper is not included at this time.
22 * For further information about parameters, see peposapi.pkh.
23 *
24 * <p><b>Licensing</b><br>
25 * This API is licensed for use with Human Resources.
26 *
27 * <p><b>Prerequisites</b><br>
28 * A valid organization and job is passed to the API, and and at least three
29 * segments for position definition must have a value. Federal HR Requires
30 * Segment values for Position Title, Position Description Number and
31 * Agency/Subelement Code. Segment Sequence Number is optional.
32 *
33 * <p><b>Post Success</b><br>
34 * The position will be created successfully in the database.
35 *
36 * <p><b>Post Failure</b><br>
37 * The API does not create the position and an error is raised.
38 * @param p_position_id If p_validate is false, this parameter uniquely
39 * identifies the position created. If p_validate is true, sets null.
40 * @param p_effective_start_date If p_validate is false, then set to the
41 * earliest effective start date for the created position. If p_validate is
42 * true, then set to null.
43 * @param p_effective_end_date If p_validate is false, then set to the
44 * effective end date for the created position. If p_validate is true, then set
45 * to null.
46 * @param p_position_definition_id If p_validate is false, this parameter
47 * uniquely identifies the combination of segments passed. If p_validate is
48 * true, sets null.
49 * @param p_name If p_validate is false, concatenate all segments. If
50 * p_validate is true, set to null.
51 * @param p_object_version_number If p_validate is false will be set to the
52 * version number of the created Position. If p_validate is true, then the
53 * value will be null.
54 * @param p_job_id The Job for the position.
55 * @param p_organization_id The Organization to which the position belongs.
56 * @param p_effective_date Determines when the DateTrack operation begins.
57 * @param p_date_effective The date on which the position becomes active.
58 * @param p_validate If true, then validation alone will be performed and the
59 * database will remain unchanged. If false and all validation checks pass,
60 * then the database will be modified.
61 * @param p_availability_status_id Current Status of the Position. Refers to
62 * PER_SHARED_TYPES.
63 * @param p_business_group_id {@rep:casecolumn
64 * HR_ALL_POSITIONS_F.BUSINESS_GROUP_ID}
65 * @param p_entry_step_id {@rep:casecolumn HR_ALL_POSITIONS_F.ENTRY_STEP_ID}
66 * @param p_entry_grade_rule_id {@rep:casecolumn
67 * HR_ALL_POSITIONS_F.ENTRY_GRADE_RULE_ID}
68 * @param p_location_id {@rep:casecolumn HR_ALL_POSITIONS_F.LOCATION_ID}
69 * @param p_pay_freq_payroll_id {@rep:casecolumn
70 * HR_ALL_POSITIONS_F.PAY_FREQ_PAYROLL_ID}
71 * @param p_position_transaction_id {@rep:casecolumn
72 * HR_ALL_POSITIONS_F.POSITION_TRANSACTION_ID}
73 * @param p_prior_position_id {@rep:casecolumn
74 * HR_ALL_POSITIONS_F.PRIOR_POSITION_ID}
75 * @param p_relief_position_id {@rep:casecolumn
76 * HR_ALL_POSITIONS_F.RELIEF_POSITION_ID}
77 * @param p_entry_grade_id {@rep:casecolumn HR_ALL_POSITIONS_F.ENTRY_GRADE_ID}
78 * @param p_successor_position_id {@rep:casecolumn
79 * HR_ALL_POSITIONS_F.SUCCESSOR_POSITION_ID}
80 * @param p_supervisor_position_id {@rep:casecolumn
81 * HR_ALL_POSITIONS_F.SUPERVISOR_POSITION_ID}
82 * @param p_amendment_date {@rep:casecolumn HR_ALL_POSITIONS_F.AMENDMENT_DATE}
83 * @param p_amendment_recommendation {@rep:casecolumn
84 * HR_ALL_POSITIONS_F.AMENDMENT_RECOMMENDATION}
85 * @param p_amendment_ref_number {@rep:casecolumn
86 * HR_ALL_POSITIONS_F.AMENDMENT_REF_NUMBER}
87 * @param p_bargaining_unit_cd Identifies the bargaining unit. Valid values are
88 * defined by 'BARGAINING_UNIT_CODE' lookup_type
89 * @param p_comments Comment text.
90 * @param p_current_job_prop_end_date {@rep:casecolumn
91 * HR_ALL_POSITIONS_F.CURRENT_JOB_PROP_END_DATE}
92 * @param p_current_org_prop_end_date {@rep:casecolumn
93 * HR_ALL_POSITIONS_F.CURRENT_ORG_PROP_END_DATE}
94 * @param p_avail_status_prop_end_date {@rep:casecolumn
95 * HR_ALL_POSITIONS_F.AVAIL_STATUS_PROP_END_DATE}
96 * @param p_date_end {@rep:casecolumn HR_ALL_POSITIONS_F.DATE_END}
97 * @param p_earliest_hire_date {@rep:casecolumn
98 * HR_ALL_POSITIONS_F.EARLIEST_HIRE_DATE}
99 * @param p_fill_by_date {@rep:casecolumn HR_ALL_POSITIONS_F.FILL_BY_DATE}
100 * @param p_frequency Frequency of working hours. Valid values are defined by
101 * 'FREQUENCY' lookup_type.
102 * @param p_fte {@rep:casecolumn HR_ALL_POSITIONS_F.FTE}
103 * @param p_max_persons {@rep:casecolumn HR_ALL_POSITIONS_F.MAX_PERSONS}
104 * @param p_overlap_period {@rep:casecolumn HR_ALL_POSITIONS_F.OVERLAP_PERIOD}
105 * @param p_overlap_unit_cd Valid values are defined by 'QUALIFYING_UNITS'
106 * lookup_type.
107 * @param p_pay_term_end_day_cd Valid values are defined by 'DAY_CODE'
108 * lookup_type.
109 * @param p_pay_term_end_month_cd Valid values are defined by 'MONTH_CODE'
110 * lookup_type.
111 * @param p_permanent_temporary_flag Valid values are defined by 'YES_NO'
112 * lookup_type
113 * @param p_permit_recruitment_flag Valid values are defined by 'YES_NO'
114 * lookup_type
115 * @param p_position_type Valid values are defined by 'POSITION_TYPE'
116 * lookup_type
117 * @param p_posting_description Posting description
118 * @param p_probation_period Length of probation period.
119 * @param p_probation_period_unit_cd Valid values are defined by
120 * 'QUALIFYING_UNITS' lookup_type.
121 * @param p_replacement_required_flag Is a replacement required when person
122 * assigned is absent. 'YES_NO'
123 * @param p_review_flag Valid values are defined by 'YES_NO' lookup_type
124 * @param p_seasonal_flag Valid values are defined by 'YES_NO' lookup_type
125 * @param p_security_requirements Security Requirements
126 * @param p_status Valid values are defined by 'POSITION_STATUS' lookup_type.
127 * @param p_term_start_day_cd Valid values are defined by 'DAY_CODE'
128 * lookup_type.
129 * @param p_term_start_month_cd Valid values are defined by 'MONTH_CODE'
130 * lookup_type.
131 * @param p_time_normal_finish Normal end time.
132 * @param p_time_normal_start Normal start time.
133 * @param p_update_source_cd Valid values are defined by 'YES_NO' lookup_type
134 * @param p_working_hours Number of normal working hours.
135 * @param p_works_council_approval_flag Valid values are defined by 'YES_NO'
136 * lookup_type
137 * @param p_work_period_type_cd Valid values are defined by 'YES_NO'
138 * lookup_type
139 * @param p_work_term_end_day_cd Valid values are defined by 'DAY_CODE'
140 * lookup_type.
141 * @param p_work_term_end_month_cd Valid values are defined by 'MONTH_CODE'
142 * lookup_type.
143 * @param p_proposed_fte_for_layoff Proposed FTE for layoff
144 * @param p_proposed_date_for_layoff Proposed date for layoff
145 * @param p_pay_basis_id {@rep:casecolumn PER_PAY_BASES.PAY_BASIS_ID}
146 * @param p_supervisor_id {@rep:casecolumn PER_ALL_PEOPLE_F.PERSON_ID}
147 * @param p_information1 Developer descriptive flexfield segment.
148 * @param p_information2 Developer descriptive flexfield segment.
149 * @param p_information3 Developer descriptive flexfield segment.
150 * @param p_information4 Developer descriptive flexfield segment.
151 * @param p_information5 Developer descriptive flexfield segment.
152 * @param p_information6 Developer descriptive flexfield segment.
153 * @param p_information7 Developer descriptive flexfield segment.
154 * @param p_information8 Developer descriptive flexfield segment.
155 * @param p_information9 Developer descriptive flexfield segment.
156 * @param p_information10 Developer descriptive flexfield segment.
157 * @param p_information11 Developer descriptive flexfield segment.
158 * @param p_information12 Developer descriptive flexfield segment.
159 * @param p_information13 Developer descriptive flexfield segment.
160 * @param p_information14 Developer descriptive flexfield segment.
161 * @param p_information15 Developer descriptive flexfield segment.
162 * @param p_information16 Developer descriptive flexfield segment.
163 * @param p_information17 Developer descriptive flexfield segment.
164 * @param p_information18 Developer descriptive flexfield segment.
165 * @param p_information19 Developer descriptive flexfield segment.
166 * @param p_information20 Developer descriptive flexfield segment.
167 * @param p_information21 Developer descriptive flexfield segment.
168 * @param p_information22 Developer descriptive flexfield segment.
169 * @param p_information23 Developer descriptive flexfield segment.
170 * @param p_information24 Developer descriptive flexfield segment.
171 * @param p_information25 Developer descriptive flexfield segment.
172 * @param p_information26 Developer descriptive flexfield segment.
173 * @param p_information27 Developer descriptive flexfield segment.
174 * @param p_information28 Developer descriptive flexfield segment.
175 * @param p_information29 Developer descriptive flexfield segment.
176 * @param p_information30 Developer descriptive flexfield segment.
177 * @param p_information_category This context value determines which flexfield
178 * structure to use with the developer descriptive flexfield segments.
179 * @param p_attribute1 Descriptive flexfield segment.
180 * @param p_attribute2 Descriptive flexfield segment.
181 * @param p_attribute3 Descriptive flexfield segment.
182 * @param p_attribute4 Descriptive flexfield segment.
183 * @param p_attribute5 Descriptive flexfield segment.
184 * @param p_attribute6 Descriptive flexfield segment.
185 * @param p_attribute7 Descriptive flexfield segment.
186 * @param p_attribute8 Descriptive flexfield segment.
187 * @param p_attribute9 Descriptive flexfield segment.
188 * @param p_attribute10 Descriptive flexfield segment.
189 * @param p_attribute11 Descriptive flexfield segment.
190 * @param p_attribute12 Descriptive flexfield segment.
191 * @param p_attribute13 Descriptive flexfield segment.
192 * @param p_attribute14 Descriptive flexfield segment.
193 * @param p_attribute15 Descriptive flexfield segment.
194 * @param p_attribute16 Descriptive flexfield segment.
195 * @param p_attribute17 Descriptive flexfield segment.
196 * @param p_attribute18 Descriptive flexfield segment.
197 * @param p_attribute19 Descriptive flexfield segment.
198 * @param p_attribute20 Descriptive flexfield segment.
199 * @param p_attribute21 Descriptive flexfield segment.
200 * @param p_attribute22 Descriptive flexfield segment.
201 * @param p_attribute23 Descriptive flexfield segment.
202 * @param p_attribute24 Descriptive flexfield segment.
203 * @param p_attribute25 Descriptive flexfield segment.
204 * @param p_attribute26 Descriptive flexfield segment.
205 * @param p_attribute27 Descriptive flexfield segment.
206 * @param p_attribute28 Descriptive flexfield segment.
207 * @param p_attribute29 Descriptive flexfield segment.
208 * @param p_attribute30 Descriptive flexfield segment.
209 * @param p_attribute_category This context value determines which flexfield
210 * structure to use with the descriptive flexfield segments.
211 * @param p_segment1 Component of the Position Key Flexfield for the Position
212 * @param p_segment2 Component of the Position Key Flexfield for the Position
213 * @param p_segment3 Component of the Position Key Flexfield for the Position
214 * @param p_segment4 Component of the Position Key Flexfield for the Position
215 * @param p_segment5 Component of the Position Key Flexfield for the Position
216 * @param p_segment6 Component of the Position Key Flexfield for the Position
217 * @param p_segment7 Component of the Position Key Flexfield for the Position
218 * @param p_segment8 Component of the Position Key Flexfield for the Position
219 * @param p_segment9 Component of the Position Key Flexfield for the Position
220 * @param p_segment10 Component of the Position Key Flexfield for the Position
221 * @param p_segment11 Component of the Position Key Flexfield for the Position
222 * @param p_segment12 Component of the Position Key Flexfield for the Position
223 * @param p_segment13 Component of the Position Key Flexfield for the Position
224 * @param p_segment14 Component of the Position Key Flexfield for the Position
225 * @param p_segment15 Component of the Position Key Flexfield for the Position
226 * @param p_segment16 Component of the Position Key Flexfield for the Position
227 * @param p_segment17 Component of the Position Key Flexfield for the Position
228 * @param p_segment18 Component of the Position Key Flexfield for the Position
229 * @param p_segment19 Component of the Position Key Flexfield for the Position
230 * @param p_segment20 Component of the Position Key Flexfield for the Position
231 * @param p_segment21 Component of the Position Key Flexfield for the Position
232 * @param p_segment22 Component of the Position Key Flexfield for the Position
233 * @param p_segment23 Component of the Position Key Flexfield for the Position
234 * @param p_segment24 Component of the Position Key Flexfield for the Position
235 * @param p_segment25 Component of the Position Key Flexfield for the Position
236 * @param p_segment26 Component of the Position Key Flexfield for the Position
237 * @param p_segment27 Component of the Position Key Flexfield for the Position
238 * @param p_segment28 Component of the Position Key Flexfield for the Position
239 * @param p_segment29 Component of the Position Key Flexfield for the Position
240 * @param p_segment30 Component of the Position Key Flexfield for the Position
241 * @param p_concat_segments Varchar2 concatenated string of segment values
242 * @param p_request_id When the API is executed from a concurrent program set
243 * to the concurrent request identifier.
244 * @param p_program_application_id When the API is executed from a concurrent
245 * program set to the program's Application.
246 * @param p_program_id When the API is executed from a concurrent program set
247 * to the program's identifier.
248 * @param p_program_update_date When the API is executed from a concurrent
249 * program set to when the program was ran.
250 * @rep:displayname Create Position
251 * @rep:category BUSINESS_ENTITY PER_POSITION
252 * @rep:category MISC_EXTENSIONS HR_DATAPUMP
253 * @rep:scope public
254 * @rep:lifecycle active
255 * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
256 */
257 --
258 -- {End Of Comments}
259 --
260 procedure create_position
261 (p_position_id out nocopy number
262 ,p_effective_start_date out nocopy date
263 ,p_effective_end_date out nocopy date
264 ,p_position_definition_id out nocopy number
265 ,p_name out nocopy varchar2
266 ,p_object_version_number out nocopy number
267 ,p_job_id in number
268 ,p_organization_id in number
269 ,p_effective_date in date
270 ,p_date_effective in date
271 ,p_validate in boolean default false
272 ,p_availability_status_id in number default null
273 ,p_business_group_id in number default null
274 ,p_entry_step_id in number default null
275 ,p_entry_grade_rule_id in number default null
276 ,p_location_id in number default null
277 ,p_pay_freq_payroll_id in number default null
278 ,p_position_transaction_id in number default null
279 ,p_prior_position_id in number default null
280 ,p_relief_position_id in number default null
281 ,p_entry_grade_id in number default null
282 ,p_successor_position_id in number default null
283 ,p_supervisor_position_id in number default null
284 ,p_amendment_date in date default null
285 ,p_amendment_recommendation in varchar2 default null
286 ,p_amendment_ref_number in varchar2 default null
287 ,p_bargaining_unit_cd in varchar2 default null
288 ,p_comments in long default null
289 ,p_current_job_prop_end_date in date default null
290 ,p_current_org_prop_end_date in date default null
291 ,p_avail_status_prop_end_date in date default null
292 ,p_date_end in date default null
293 ,p_earliest_hire_date in date default null
294 ,p_fill_by_date in date default null
295 ,p_frequency in varchar2 default null
296 ,p_fte in number default null
297 ,p_max_persons in number default null
298 ,p_overlap_period in number default null
299 ,p_overlap_unit_cd in varchar2 default null
300 ,p_pay_term_end_day_cd in varchar2 default null
301 ,p_pay_term_end_month_cd in varchar2 default null
302 ,p_permanent_temporary_flag in varchar2 default null
303 ,p_permit_recruitment_flag in varchar2 default null
304 ,p_position_type in varchar2 default 'NONE'
305 ,p_posting_description in varchar2 default null
306 ,p_probation_period in number default null
307 ,p_probation_period_unit_cd in varchar2 default null
308 ,p_replacement_required_flag in varchar2 default null
309 ,p_review_flag in varchar2 default null
310 ,p_seasonal_flag in varchar2 default null
311 ,p_security_requirements in varchar2 default null
312 ,p_status in varchar2 default null
313 ,p_term_start_day_cd in varchar2 default null
314 ,p_term_start_month_cd in varchar2 default null
315 ,p_time_normal_finish in varchar2 default null
316 ,p_time_normal_start in varchar2 default null
317 ,p_update_source_cd in varchar2 default null
318 ,p_working_hours in number default null
319 ,p_works_council_approval_flag in varchar2 default null
320 ,p_work_period_type_cd in varchar2 default null
321 ,p_work_term_end_day_cd in varchar2 default null
322 ,p_work_term_end_month_cd in varchar2 default null
323 ,p_proposed_fte_for_layoff in number default null
324 ,p_proposed_date_for_layoff in date default null
325 ,p_pay_basis_id in number default null
326 ,p_supervisor_id in number default null
327 ,p_information1 in varchar2 default null
328 ,p_information2 in varchar2 default null
329 ,p_information3 in varchar2 default null
330 ,p_information4 in varchar2 default null
331 ,p_information5 in varchar2 default null
332 ,p_information6 in varchar2 default null
333 ,p_information7 in varchar2 default null
334 ,p_information8 in varchar2 default null
335 ,p_information9 in varchar2 default null
336 ,p_information10 in varchar2 default null
337 ,p_information11 in varchar2 default null
338 ,p_information12 in varchar2 default null
339 ,p_information13 in varchar2 default null
340 ,p_information14 in varchar2 default null
341 ,p_information15 in varchar2 default null
342 ,p_information16 in varchar2 default null
343 ,p_information17 in varchar2 default null
347 ,p_information21 in varchar2 default null
344 ,p_information18 in varchar2 default null
345 ,p_information19 in varchar2 default null
346 ,p_information20 in varchar2 default null
348 ,p_information22 in varchar2 default null
349 ,p_information23 in varchar2 default null
350 ,p_information24 in varchar2 default null
351 ,p_information25 in varchar2 default null
352 ,p_information26 in varchar2 default null
353 ,p_information27 in varchar2 default null
354 ,p_information28 in varchar2 default null
355 ,p_information29 in varchar2 default null
356 ,p_information30 in varchar2 default null
357 ,p_information_category in varchar2 default null
358 ,p_attribute1 in varchar2 default null
359 ,p_attribute2 in varchar2 default null
360 ,p_attribute3 in varchar2 default null
361 ,p_attribute4 in varchar2 default null
362 ,p_attribute5 in varchar2 default null
363 ,p_attribute6 in varchar2 default null
364 ,p_attribute7 in varchar2 default null
365 ,p_attribute8 in varchar2 default null
366 ,p_attribute9 in varchar2 default null
367 ,p_attribute10 in varchar2 default null
368 ,p_attribute11 in varchar2 default null
369 ,p_attribute12 in varchar2 default null
370 ,p_attribute13 in varchar2 default null
371 ,p_attribute14 in varchar2 default null
372 ,p_attribute15 in varchar2 default null
373 ,p_attribute16 in varchar2 default null
374 ,p_attribute17 in varchar2 default null
375 ,p_attribute18 in varchar2 default null
376 ,p_attribute19 in varchar2 default null
377 ,p_attribute20 in varchar2 default null
378 ,p_attribute21 in varchar2 default null
379 ,p_attribute22 in varchar2 default null
380 ,p_attribute23 in varchar2 default null
381 ,p_attribute24 in varchar2 default null
382 ,p_attribute25 in varchar2 default null
383 ,p_attribute26 in varchar2 default null
384 ,p_attribute27 in varchar2 default null
385 ,p_attribute28 in varchar2 default null
386 ,p_attribute29 in varchar2 default null
387 ,p_attribute30 in varchar2 default null
388 ,p_attribute_category in varchar2 default null
389 ,p_segment1 in varchar2 default null
390 ,p_segment2 in varchar2 default null
391 ,p_segment3 in varchar2 default null
392 ,p_segment4 in varchar2 default null
393 ,p_segment5 in varchar2 default null
394 ,p_segment6 in varchar2 default null
395 ,p_segment7 in varchar2 default null
396 ,p_segment8 in varchar2 default null
397 ,p_segment9 in varchar2 default null
401 ,p_segment13 in varchar2 default null
398 ,p_segment10 in varchar2 default null
399 ,p_segment11 in varchar2 default null
400 ,p_segment12 in varchar2 default null
402 ,p_segment14 in varchar2 default null
403 ,p_segment15 in varchar2 default null
404 ,p_segment16 in varchar2 default null
405 ,p_segment17 in varchar2 default null
406 ,p_segment18 in varchar2 default null
407 ,p_segment19 in varchar2 default null
408 ,p_segment20 in varchar2 default null
409 ,p_segment21 in varchar2 default null
410 ,p_segment22 in varchar2 default null
411 ,p_segment23 in varchar2 default null
412 ,p_segment24 in varchar2 default null
413 ,p_segment25 in varchar2 default null
414 ,p_segment26 in varchar2 default null
415 ,p_segment27 in varchar2 default null
416 ,p_segment28 in varchar2 default null
417 ,p_segment29 in varchar2 default null
418 ,p_segment30 in varchar2 default null
419 ,p_concat_segments in varchar2 default null
420 ,p_request_id in number default null
421 ,p_program_application_id in number default null
422 ,p_program_id in number default null
423 ,p_program_update_date in date default null
424 ) ;
425 --
426
427 --
428 -- ----------------------------------------------------------------------------
429 -- |-----------------------------< update_position >--------------------------|
430 -- ----------------------------------------------------------------------------
431 --
432 -- {Start Of Comments}
433 /*#
434 * This API updates a position, a specific occurrence of a job within an
435 * organization.
436 *
437 * This wrapper for the US Federal HR Product updates positions for version 11i
438 * and beyond.
439 * For further information about parameters, see peposapi.pkh.
440 *
441 * <p><b>Licensing</b><br>
442 * This API is licensed for use with Human Resources.
443 *
444 * <p><b>Prerequisites</b><br>
445 * A valid organization and job is passed to the API, and and at least three
446 * segments for position definition must have a value. Federal HR Requires
447 * Segment values for Position Title, Position Description Number and
448 * Agency/Subelement Code. Segment Sequence Number is optional.
449 *
450 * <p><b>Post Success</b><br>
451 * The position will be updated successfully in the database.
452 *
453 * <p><b>Post Failure</b><br>
454 * The API does not update the position and an error is raised.
455 * @param p_position_id If p_validate is false, this parameter uniquely
456 * identifies the position updated. If p_validate is true, sets null.
457 * @param p_effective_start_date If p_validate is false, then set to the
458 * earliest effective start date for the updated position. If p_validate is
459 * true, then set to null.
463 * @param p_position_definition_id If p_validate is false, this parameter
460 * @param p_effective_end_date If p_validate is false, then set to the
461 * effective end date for the updated position. If p_validate is true, then set
462 * to null.
464 * uniquely identifies the combination of segments passed. If p_validate is
465 * true, sets null.
466 * @param p_name If p_validate is false, concatenate all segments. If
467 * p_validate is true, set to null.
468 * @param p_object_version_number If p_validate is false will be set to the
469 * version number of the updated Position. If p_validate is true, then the
470 * value will be null.
471 * @param p_effective_date Determines when the DateTrack operation begins.
472 * @param p_date_effective The date on which the position becomes active.
473 * @param p_validate If true, then validation alone will be performed and the
474 * database will remain unchanged. If false and all validation checks pass,
475 * then the database will be modified.
476 * @param p_availability_status_id Current Status of the Position. Refers to
477 * PER_SHARED_TYPES.
478 * HR_ALL_POSITIONS_F.BUSINESS_GROUP_ID}
479 * @param p_entry_step_id {@rep:casecolumn HR_ALL_POSITIONS_F.ENTRY_STEP_ID}
480 * @param p_entry_grade_rule_id {@rep:casecolumn
481 * HR_ALL_POSITIONS_F.ENTRY_GRADE_RULE_ID}
482 * @param p_location_id {@rep:casecolumn HR_ALL_POSITIONS_F.LOCATION_ID}
483 * @param p_pay_freq_payroll_id {@rep:casecolumn
484 * HR_ALL_POSITIONS_F.PAY_FREQ_PAYROLL_ID}
485 * @param p_position_transaction_id {@rep:casecolumn
486 * HR_ALL_POSITIONS_F.POSITION_TRANSACTION_ID}
487 * @param p_prior_position_id {@rep:casecolumn
488 * HR_ALL_POSITIONS_F.PRIOR_POSITION_ID}
489 * @param p_relief_position_id {@rep:casecolumn
490 * HR_ALL_POSITIONS_F.RELIEF_POSITION_ID}
491 * @param p_entry_grade_id {@rep:casecolumn HR_ALL_POSITIONS_F.ENTRY_GRADE_ID}
492 * @param p_successor_position_id {@rep:casecolumn
493 * HR_ALL_POSITIONS_F.SUCCESSOR_POSITION_ID}
494 * @param p_supervisor_position_id {@rep:casecolumn
495 * HR_ALL_POSITIONS_F.SUPERVISOR_POSITION_ID}
496 * @param p_amendment_date {@rep:casecolumn HR_ALL_POSITIONS_F.AMENDMENT_DATE}
497 * @param p_amendment_recommendation {@rep:casecolumn
498 * HR_ALL_POSITIONS_F.AMENDMENT_RECOMMENDATION}
499 * @param p_amendment_ref_number {@rep:casecolumn
500 * HR_ALL_POSITIONS_F.AMENDMENT_REF_NUMBER}
501 * @param p_bargaining_unit_cd Identifies the bargaining unit. Valid values are
502 * defined by 'BARGAINING_UNIT_CODE' lookup_type
503 * @param p_comments Comment text.
504 * @param p_current_job_prop_end_date {@rep:casecolumn
505 * HR_ALL_POSITIONS_F.CURRENT_JOB_PROP_END_DATE}
506 * @param p_current_org_prop_end_date {@rep:casecolumn
507 * HR_ALL_POSITIONS_F.CURRENT_ORG_PROP_END_DATE}
508 * @param p_avail_status_prop_end_date {@rep:casecolumn
509 * HR_ALL_POSITIONS_F.AVAIL_STATUS_PROP_END_DATE}
510 * @param p_date_end {@rep:casecolumn HR_ALL_POSITIONS_F.DATE_END}
511 * @param p_earliest_hire_date {@rep:casecolumn
512 * HR_ALL_POSITIONS_F.EARLIEST_HIRE_DATE}
513 * @param p_fill_by_date {@rep:casecolumn HR_ALL_POSITIONS_F.FILL_BY_DATE}
514 * @param p_frequency Frequency of working hours. Valid values are defined by
515 * 'FREQUENCY' lookup_type.
516 * @param p_fte {@rep:casecolumn HR_ALL_POSITIONS_F.FTE}
517 * @param p_max_persons {@rep:casecolumn HR_ALL_POSITIONS_F.MAX_PERSONS}
518 * @param p_overlap_period {@rep:casecolumn HR_ALL_POSITIONS_F.OVERLAP_PERIOD}
519 * @param p_overlap_unit_cd Valid values are defined by 'QUALIFYING_UNITS'
520 * lookup_type.
521 * @param p_pay_term_end_day_cd Valid values are defined by 'DAY_CODE'
522 * lookup_type.
523 * @param p_pay_term_end_month_cd Valid values are defined by 'MONTH_CODE'
527 * @param p_permit_recruitment_flag Valid values are defined by 'YES_NO'
524 * lookup_type.
525 * @param p_permanent_temporary_flag Valid values are defined by 'YES_NO'
526 * lookup_type
528 * lookup_type
529 * @param p_position_type Valid values are defined by 'POSITION_TYPE'
530 * lookup_type
531 * @param p_posting_description Posting description
532 * @param p_probation_period Length of probation period.
533 * @param p_probation_period_unit_cd Valid values are defined by
534 * 'QUALIFYING_UNITS' lookup_type.
535 * @param p_replacement_required_flag Is a replacement required when person
536 * assigned is absent. 'YES_NO'
537 * @param p_review_flag Valid values are defined by 'YES_NO' lookup_type
538 * @param p_seasonal_flag Valid values are defined by 'YES_NO' lookup_type
539 * @param p_security_requirements Security Requirements
540 * @param p_status Valid values are defined by 'POSITION_STATUS' lookup_type.
541 * @param p_term_start_day_cd Valid values are defined by 'DAY_CODE'
542 * lookup_type.
543 * @param p_term_start_month_cd Valid values are defined by 'MONTH_CODE'
544 * lookup_type.
545 * @param p_time_normal_finish Normal end time.
546 * @param p_time_normal_start Normal start time.
547 * @param p_update_source_cd Valid values are defined by 'YES_NO' lookup_type
548 * @param p_working_hours Number of normal working hours.
549 * @param p_works_council_approval_flag Valid values are defined by 'YES_NO'
550 * lookup_type
551 * @param p_work_period_type_cd Valid values are defined by 'YES_NO'
552 * lookup_type
553 * @param p_work_term_end_day_cd Valid values are defined by 'DAY_CODE'
554 * lookup_type.
555 * @param p_work_term_end_month_cd Valid values are defined by 'MONTH_CODE'
556 * lookup_type.
557 * @param p_proposed_fte_for_layoff Proposed FTE for layoff
558 * @param p_proposed_date_for_layoff Proposed date for layoff
559 * @param p_pay_basis_id {@rep:casecolumn PER_PAY_BASES.PAY_BASIS_ID}
560 * @param p_supervisor_id {@rep:casecolumn PER_ALL_PEOPLE_F.PERSON_ID}
561 * @param p_information1 Developer descriptive flexfield segment.
562 * @param p_information2 Developer descriptive flexfield segment.
563 * @param p_information3 Developer descriptive flexfield segment.
564 * @param p_information4 Developer descriptive flexfield segment.
565 * @param p_information5 Developer descriptive flexfield segment.
566 * @param p_information6 Developer descriptive flexfield segment.
567 * @param p_information7 Developer descriptive flexfield segment.
568 * @param p_information8 Developer descriptive flexfield segment.
569 * @param p_information9 Developer descriptive flexfield segment.
570 * @param p_information10 Developer descriptive flexfield segment.
571 * @param p_information11 Developer descriptive flexfield segment.
572 * @param p_information12 Developer descriptive flexfield segment.
573 * @param p_information13 Developer descriptive flexfield segment.
574 * @param p_information14 Developer descriptive flexfield segment.
575 * @param p_information15 Developer descriptive flexfield segment.
576 * @param p_information16 Developer descriptive flexfield segment.
577 * @param p_information17 Developer descriptive flexfield segment.
578 * @param p_information18 Developer descriptive flexfield segment.
579 * @param p_information19 Developer descriptive flexfield segment.
580 * @param p_information20 Developer descriptive flexfield segment.
581 * @param p_information21 Developer descriptive flexfield segment.
582 * @param p_information22 Developer descriptive flexfield segment.
583 * @param p_information23 Developer descriptive flexfield segment.
584 * @param p_information24 Developer descriptive flexfield segment.
585 * @param p_information25 Developer descriptive flexfield segment.
586 * @param p_information26 Developer descriptive flexfield segment.
587 * @param p_information27 Developer descriptive flexfield segment.
588 * @param p_information28 Developer descriptive flexfield segment.
589 * @param p_information29 Developer descriptive flexfield segment.
590 * @param p_information30 Developer descriptive flexfield segment.
591 * @param p_information_category This context value determines which flexfield
592 * structure to use with the developer descriptive flexfield segments.
593 * @param p_attribute1 Descriptive flexfield segment.
594 * @param p_attribute2 Descriptive flexfield segment.
595 * @param p_attribute3 Descriptive flexfield segment.
596 * @param p_attribute4 Descriptive flexfield segment.
597 * @param p_attribute5 Descriptive flexfield segment.
598 * @param p_attribute6 Descriptive flexfield segment.
599 * @param p_attribute7 Descriptive flexfield segment.
600 * @param p_attribute8 Descriptive flexfield segment.
604 * @param p_attribute12 Descriptive flexfield segment.
601 * @param p_attribute9 Descriptive flexfield segment.
602 * @param p_attribute10 Descriptive flexfield segment.
603 * @param p_attribute11 Descriptive flexfield segment.
605 * @param p_attribute13 Descriptive flexfield segment.
606 * @param p_attribute14 Descriptive flexfield segment.
607 * @param p_attribute15 Descriptive flexfield segment.
608 * @param p_attribute16 Descriptive flexfield segment.
609 * @param p_attribute17 Descriptive flexfield segment.
610 * @param p_attribute18 Descriptive flexfield segment.
611 * @param p_attribute19 Descriptive flexfield segment.
612 * @param p_attribute20 Descriptive flexfield segment.
613 * @param p_attribute21 Descriptive flexfield segment.
614 * @param p_attribute22 Descriptive flexfield segment.
615 * @param p_attribute23 Descriptive flexfield segment.
616 * @param p_attribute24 Descriptive flexfield segment.
617 * @param p_attribute25 Descriptive flexfield segment.
618 * @param p_attribute26 Descriptive flexfield segment.
619 * @param p_attribute27 Descriptive flexfield segment.
620 * @param p_attribute28 Descriptive flexfield segment.
621 * @param p_attribute29 Descriptive flexfield segment.
622 * @param p_attribute30 Descriptive flexfield segment.
623 * @param p_attribute_category This context value determines which flexfield
624 * structure to use with the descriptive flexfield segments.
625 * @param p_segment1 Component of the Position Key Flexfield for the Position
626 * @param p_segment2 Component of the Position Key Flexfield for the Position
627 * @param p_segment3 Component of the Position Key Flexfield for the Position
628 * @param p_segment4 Component of the Position Key Flexfield for the Position
629 * @param p_segment5 Component of the Position Key Flexfield for the Position
630 * @param p_segment6 Component of the Position Key Flexfield for the Position
631 * @param p_segment7 Component of the Position Key Flexfield for the Position
632 * @param p_segment8 Component of the Position Key Flexfield for the Position
633 * @param p_segment9 Component of the Position Key Flexfield for the Position
634 * @param p_segment10 Component of the Position Key Flexfield for the Position
635 * @param p_segment11 Component of the Position Key Flexfield for the Position
636 * @param p_segment12 Component of the Position Key Flexfield for the Position
637 * @param p_segment13 Component of the Position Key Flexfield for the Position
638 * @param p_segment14 Component of the Position Key Flexfield for the Position
639 * @param p_segment15 Component of the Position Key Flexfield for the Position
640 * @param p_segment16 Component of the Position Key Flexfield for the Position
641 * @param p_segment17 Component of the Position Key Flexfield for the Position
642 * @param p_segment18 Component of the Position Key Flexfield for the Position
643 * @param p_segment19 Component of the Position Key Flexfield for the Position
644 * @param p_segment20 Component of the Position Key Flexfield for the Position
645 * @param p_segment21 Component of the Position Key Flexfield for the Position
646 * @param p_segment22 Component of the Position Key Flexfield for the Position
647 * @param p_segment23 Component of the Position Key Flexfield for the Position
648 * @param p_segment24 Component of the Position Key Flexfield for the Position
649 * @param p_segment25 Component of the Position Key Flexfield for the Position
650 * @param p_segment26 Component of the Position Key Flexfield for the Position
651 * @param p_segment27 Component of the Position Key Flexfield for the Position
652 * @param p_segment28 Component of the Position Key Flexfield for the Position
653 * @param p_segment29 Component of the Position Key Flexfield for the Position
654 * @param p_segment30 Component of the Position Key Flexfield for the Position
655 * @param p_concat_segments Varchar2 concatenated string of segment values
656 * @param p_request_id When the API is executed from a concurrent program set
657 * to the concurrent request identifier.
658 * @param p_program_application_id When the API is executed from a concurrent
659 * program set to the program's Application.
660 * @param p_program_id When the API is executed from a concurrent program set
661 * to the program's identifier.
662 * @param p_program_update_date When the API is executed from a concurrent
663 * program set to when the program was ran.
664 * @param p_datetrack_mode Datetract mode Indicates which DateTrack mode to use when updating
665 * the record.
666 * @param p_valid_grades_changed_warning Set to true when either the position
667 * date effective or date end have been modified and at least one valid grade
668 * has been updated or deleted. Set to false when no valid grades were altered.
672 * @rep:scope public
669 * @rep:displayname Update Position
670 * @rep:category BUSINESS_ENTITY PER_POSITION
671 * @rep:category MISC_EXTENSIONS HR_DATAPUMP
673 * @rep:lifecycle active
674 * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
675 */
676 --
677 -- {End Of Comments}
678
679 procedure update_position
680 (p_position_id in number
681 ,p_effective_start_date out nocopy date
682 ,p_effective_end_date out nocopy date
683 ,p_position_definition_id in out nocopy number
684 ,p_name in out nocopy varchar2
685 ,p_object_version_number in out nocopy number
686 ,p_effective_date in date
687 ,p_date_effective in date
688 ,p_validate in boolean default false
689 ,p_availability_status_id in number default null
690 ,p_entry_step_id in number default null
691 ,p_entry_grade_rule_id in number default null
692 ,p_location_id in number default null
693 ,p_pay_freq_payroll_id in number default null
694 ,p_position_transaction_id in number default null
695 ,p_prior_position_id in number default null
696 ,p_relief_position_id in number default null
697 ,p_entry_grade_id in number default null
698 ,p_successor_position_id in number default null
699 ,p_supervisor_position_id in number default null
700 ,p_amendment_date in date default null
701 ,p_amendment_recommendation in varchar2 default null
702 ,p_amendment_ref_number in varchar2 default null
703 ,p_bargaining_unit_cd in varchar2 default null
704 ,p_comments in long default null
705 ,p_current_job_prop_end_date in date default null
706 ,p_current_org_prop_end_date in date default null
707 ,p_avail_status_prop_end_date in date default null
708 ,p_date_end in date default null
709 ,p_earliest_hire_date in date default null
710 ,p_fill_by_date in date default null
711 ,p_frequency in varchar2 default null
712 ,p_fte in number default null
713 ,p_max_persons in number default null
714 ,p_overlap_period in number default null
715 ,p_overlap_unit_cd in varchar2 default null
716 ,p_pay_term_end_day_cd in varchar2 default null
717 ,p_pay_term_end_month_cd in varchar2 default null
718 ,p_permanent_temporary_flag in varchar2 default null
719 ,p_permit_recruitment_flag in varchar2 default null
720 ,p_position_type in varchar2 default 'NONE'
721 ,p_posting_description in varchar2 default null
722 ,p_probation_period in number default null
723 ,p_probation_period_unit_cd in varchar2 default null
724 ,p_replacement_required_flag in varchar2 default null
725 ,p_review_flag in varchar2 default null
726 ,p_seasonal_flag in varchar2 default null
727 ,p_security_requirements in varchar2 default null
728 ,p_status in varchar2 default null
729 ,p_term_start_day_cd in varchar2 default null
730 ,p_term_start_month_cd in varchar2 default null
731 ,p_time_normal_finish in varchar2 default null
732 ,p_time_normal_start in varchar2 default null
733 ,p_update_source_cd in varchar2 default null
734 ,p_working_hours in number default null
735 ,p_works_council_approval_flag in varchar2 default null
736 ,p_work_period_type_cd in varchar2 default null
737 ,p_work_term_end_day_cd in varchar2 default null
738 ,p_work_term_end_month_cd in varchar2 default null
739 ,p_proposed_fte_for_layoff in number default null
740 ,p_proposed_date_for_layoff in date default null
741 ,p_pay_basis_id in number default null
742 ,p_supervisor_id in number default null
743 ,p_information1 in varchar2 default null
744 ,p_information2 in varchar2 default null
745 ,p_information3 in varchar2 default null
746 ,p_information4 in varchar2 default null
747 ,p_information5 in varchar2 default null
748 ,p_information6 in varchar2 default null
749 ,p_information7 in varchar2 default null
750 ,p_information8 in varchar2 default null
751 ,p_information9 in varchar2 default null
752 ,p_information10 in varchar2 default null
756 ,p_information14 in varchar2 default null
753 ,p_information11 in varchar2 default null
754 ,p_information12 in varchar2 default null
755 ,p_information13 in varchar2 default null
757 ,p_information15 in varchar2 default null
758 ,p_information16 in varchar2 default null
759 ,p_information17 in varchar2 default null
760 ,p_information18 in varchar2 default null
761 ,p_information19 in varchar2 default null
762 ,p_information20 in varchar2 default null
763 ,p_information21 in varchar2 default null
764 ,p_information22 in varchar2 default null
765 ,p_information23 in varchar2 default null
766 ,p_information24 in varchar2 default null
767 ,p_information25 in varchar2 default null
768 ,p_information26 in varchar2 default null
769 ,p_information27 in varchar2 default null
770 ,p_information28 in varchar2 default null
771 ,p_information29 in varchar2 default null
772 ,p_information30 in varchar2 default null
773 ,p_information_category in varchar2 default null
774 ,p_attribute1 in varchar2 default null
775 ,p_attribute2 in varchar2 default null
776 ,p_attribute3 in varchar2 default null
777 ,p_attribute4 in varchar2 default null
778 ,p_attribute5 in varchar2 default null
779 ,p_attribute6 in varchar2 default null
780 ,p_attribute7 in varchar2 default null
781 ,p_attribute8 in varchar2 default null
782 ,p_attribute9 in varchar2 default null
783 ,p_attribute10 in varchar2 default null
784 ,p_attribute11 in varchar2 default null
785 ,p_attribute12 in varchar2 default null
786 ,p_attribute13 in varchar2 default null
787 ,p_attribute14 in varchar2 default null
788 ,p_attribute15 in varchar2 default null
789 ,p_attribute16 in varchar2 default null
790 ,p_attribute17 in varchar2 default null
791 ,p_attribute18 in varchar2 default null
792 ,p_attribute19 in varchar2 default null
793 ,p_attribute20 in varchar2 default null
794 ,p_attribute21 in varchar2 default null
795 ,p_attribute22 in varchar2 default null
796 ,p_attribute23 in varchar2 default null
797 ,p_attribute24 in varchar2 default null
798 ,p_attribute25 in varchar2 default null
799 ,p_attribute26 in varchar2 default null
800 ,p_attribute27 in varchar2 default null
801 ,p_attribute28 in varchar2 default null
802 ,p_attribute29 in varchar2 default null
803 ,p_attribute30 in varchar2 default null
804 ,p_attribute_category in varchar2 default null
805 ,p_segment1 in varchar2 default null
806 ,p_segment2 in varchar2 default null
807 ,p_segment3 in varchar2 default null
808 ,p_segment4 in varchar2 default null
809 ,p_segment5 in varchar2 default null
810 ,p_segment6 in varchar2 default null
811 ,p_segment7 in varchar2 default null
812 ,p_segment8 in varchar2 default null
813 ,p_segment9 in varchar2 default null
814 ,p_segment10 in varchar2 default null
815 ,p_segment11 in varchar2 default null
816 ,p_segment12 in varchar2 default null
817 ,p_segment13 in varchar2 default null
818 ,p_segment14 in varchar2 default null
819 ,p_segment15 in varchar2 default null
820 ,p_segment16 in varchar2 default null
821 ,p_segment17 in varchar2 default null
822 ,p_segment18 in varchar2 default null
823 ,p_segment19 in varchar2 default null
824 ,p_segment20 in varchar2 default null
825 ,p_segment21 in varchar2 default null
826 ,p_segment22 in varchar2 default null
827 ,p_segment23 in varchar2 default null
828 ,p_segment24 in varchar2 default null
829 ,p_segment25 in varchar2 default null
830 ,p_segment26 in varchar2 default null
831 ,p_segment27 in varchar2 default null
832 ,p_segment28 in varchar2 default null
833 ,p_segment29 in varchar2 default null
834 ,p_segment30 in varchar2 default null
835 ,p_concat_segments in varchar2 default null
836 ,p_request_id in number default null
837 ,p_program_application_id in number default null
838 ,p_program_id in number default null
839 ,p_program_update_date in date default null
840 ,p_datetrack_mode in varchar2
841 ,p_valid_grades_changed_warning out nocopy boolean
842 ) ;
843
844 END ghr_posndt_api;