DBA Data[Home] [Help]

PACKAGE: APPS.GHR_POSNDT_API

Source


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;