DBA Data[Home] [Help]

PACKAGE: APPS.HR_PERSON_DEPLOYMENT_API

Source


1 Package HR_PERSON_DEPLOYMENT_API AUTHID CURRENT_USER as
2 /* $Header: hrpdtapi.pkh 120.5 2007/10/01 10:00:52 ghshanka noship $ */
3 /*#
4  * This package contains global deployment APIs.
5  * @rep:scope public
6  * @rep:product per
7  * @rep:displayname Person Deployment
8 */
9 --
10 -- ----------------------------------------------------------------------------
11 -- |-------------------------< create_person_deployment >---------------------|
12 -- ----------------------------------------------------------------------------
13 --
14 -- {Start Of Comments}
15 /*#
16  * This API creates a new employee deployment record.
17  *
18  * The API creates a record that tracks a proposed period when an employee will
19  * work in a different business group from the one the employee works in
20  * presently. The status of the record will automatically be marked as DRAFT.
21  * It will hold details that will be used in the assignment record in
22  * the destination business group.
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  * The employee must already exist in the specified business group. The
29  * specified destination business group must already exist, and the assignment
30  * information provided must be valid on the specified start date.
31  *
32  * <p><b>Post Success</b><br>
33  * The deployment proposal is successfully created with a status of DRAFT.
34  *
35  * <p><b>Post Failure</b><br>
36  * The deployment proposal is not inserted into the database and an error will
37  * be raised
38  *
39  * @param p_validate If true, then validation alone will be performed and the
40  * database will remain unchanged. If false and all validation checks pass,
41  * then the database will be modified.
42  * @param p_from_business_group_id Business group from which the employee is
43  * coming. The employee must have an active period of service in this business
44  * group.
45  * @param p_to_business_group_id Business group in which the employee will be
46  * working for this deployment.
47  * @param p_from_person_id Identifies the person record in the source business
48  * group.
49  * @param p_to_person_id If specified, identifies the person record in the
50  * destination business group which will track the deployment. If not
51  * specified, indicated that a new person record will be created when the
52  * deployment is initiated.
53  * @param p_person_type_id The person type to be used for the person in the
54  * destination business group when the deployment is initiated.
55  * @param p_start_date The start date of the deployment.
56  * @param p_end_date The end date of the deployment. Should be null for a
57  * permanent deployment.
58  * @param p_deployment_reason The reason for this deployment. Valid values must
59  * exist in the HR_DEPLOYMENT_REASONS lookup type.
60  * @param p_employee_number The employee number to be used for the person
61  * record in the destination business group when the deployment is initiated.
62  * @param p_leaving_reason The leaving reason to be used in the destination
63  * business group when a temporary deployment is being ended. Should not be
64  * entered for permanent deployments. Valid values must exist in the LEAV_REAS
65  * lookup type.
66  * @param p_leaving_person_type_id The person type of ex-employee to be used
67  * in the destination business group when a temporary deployment is being
68  * ended. Should not be entered for permanent deployments.
69  * @param p_permanent Flag indicating whether the deployment is to be permanent
70  * or temporary.
71  * @param p_deplymt_policy_id This parameter is reserved for future releases.
72  * Do not specify a value for this parameter.
73  * @param p_organization_id The organization of the assignment to be created
74  * in the destination business group when the deployment is initiated.
75  * @param p_location_id The location of the assignment to be created
76  * in the destination business group when the deployment is initiated.
77  * @param p_job_id The job of the assignment to be created
78  * in the destination business group when the deployment is initiated.
79  * @param p_position_id The position of the assignment to be created
80  * in the destination business group when the deployment is initiated.
81  * @param p_grade_id The grade of the assignment to be created
82  * in the destination business group when the deployment is initiated.
83  * @param p_supervisor_id The supervisor of the assignment to be created
84  * in the destination business group when the deployment is initiated.
85  * @param p_supervisor_assignment_id The supervisor's assignment of the
86  * assignment to be created in the destination business group
87  * when the deployment is initiated.
88  * @param p_retain_direct_reports Flag indicating whether the employee's
89  * direct reports in the source business group need to be updated to the same
90  * employee's record but in the destination business group. For permanent
91  * deployments only.
92  * @param p_payroll_id The payroll of the assignment to be created
93  * in the destination business group when the deployment is initiated.
94  * @param p_pay_basis_id The salary basis of the assignment to be created
95  * in the destination business group when the deployment is initiated.
96  * Do not enter a value for temporary deployments.
97  * @param p_proposed_salary The salary of the assignment to be created
98  * in the destination business group when the deployment is initiated.
99  * Do not enter a value for temporary deployments.
100  * @param p_people_group_id People Group key flexfield identifier for the
101  * assignment to be created in the destination business group when the
102  * deployment is initiated.
103  * @param p_soft_coding_keyflex_id Soft Coded key flexfield identifier for the
104  * assignment to be created in the destination business group when the
105  * deployment is initiated.
106  * @param p_assignment_status_type_id Assignment status of the assignment
107  * to be created in the destination business group when the deployment
108  * is initiated.
109  * @param p_ass_status_change_reason Change reason to be recorded on the
110  * assignment to be created in the destination business group when the
111  * deployment is initiated. Valid values must exist in the EMP_ASSIGN_REASON
112  * lookup type.
113  * @param p_assignment_category Assignment category of the assignment
114  * to be created in the destination business group when the deployment
115  * is initiated.
116  * @param p_per_information1 Developer descriptive flexfield segment.
117  * @param p_per_information2 Developer descriptive flexfield segment.
118  * @param p_per_information3 Developer descriptive flexfield segment.
119  * @param p_per_information4 Developer descriptive flexfield segment.
120  * @param p_per_information5 Developer descriptive flexfield segment.
121  * @param p_per_information6 Developer descriptive flexfield segment.
122  * @param p_per_information7 Developer descriptive flexfield segment.
123  * @param p_per_information8 Developer descriptive flexfield segment.
124  * @param p_per_information9 Developer descriptive flexfield segment.
125  * @param p_per_information10 Developer descriptive flexfield segment.
126  * @param p_per_information11 Developer descriptive flexfield segment.
127  * @param p_per_information12 Developer descriptive flexfield segment.
128  * @param p_per_information13 Developer descriptive flexfield segment.
129  * @param p_per_information14 Developer descriptive flexfield segment.
130  * @param p_per_information15 Developer descriptive flexfield segment.
131  * @param p_per_information16 Developer descriptive flexfield segment.
132  * @param p_per_information17 Developer descriptive flexfield segment.
133  * @param p_per_information18 Developer descriptive flexfield segment.
134  * @param p_per_information19 Developer descriptive flexfield segment.
135  * @param p_per_information20 Developer descriptive flexfield segment.
136  * @param p_per_information21 Developer descriptive flexfield segment.
137  * @param p_per_information22 Developer descriptive flexfield segment.
138  * @param p_per_information23 Developer descriptive flexfield segment.
139  * @param p_per_information24 Developer descriptive flexfield segment.
140  * @param p_per_information25 Developer descriptive flexfield segment.
141  * @param p_per_information26 Developer descriptive flexfield segment.
142  * @param p_per_information27 Developer descriptive flexfield segment.
143  * @param p_per_information28 Developer descriptive flexfield segment.
144  * @param p_per_information29 Developer descriptive flexfield segment.
145  * @param p_per_information30 Developer descriptive flexfield segment.
146  * @param p_person_deployment_id If p_validate is false, then this
147  * uniquely identifies the deployment record created. If p_validate is true
148  * then set to null.
149  * @param p_object_version_number If p_validate is false, then set to
150  * the version number of the created deployment. If p_validate is true,
151  * then the value will be null.
152  * @param p_policy_duration_warning In this release, always set to null.
153  * @rep:displayname Create Person Deployment Proposal
154  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE_ASG
155  * @rep:lifecycle active
156  * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
157  * @rep:scope public
158  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
159 */
160 --
161 -- {End Of Comments}
162 --
163 --
164 procedure create_person_deployment
165   (p_validate                      in     boolean    default false
166   ,p_from_business_group_id        in     number
167   ,p_to_business_group_id          in     number
168   ,p_from_person_id                in     number
169   ,p_to_person_id                  in     number     default null
170   ,p_person_type_id                in     number     default null
171   ,p_start_date                    in     date
172   ,p_end_date                      in     date       default null
173   ,p_deployment_reason             in     varchar2   default null
174   ,p_employee_number               in     varchar2   default null
175   ,p_leaving_reason                in     varchar2   default null
176   ,p_leaving_person_type_id        in     number     default null
177   ,p_permanent                     in     varchar2   default null
178   ,p_deplymt_policy_id             in     number     default null
179   ,p_organization_id               in     number
180   ,p_location_id                   in     number     default null
181   ,p_job_id                        in     number     default null
182   ,p_position_id                   in     number     default null
183   ,p_grade_id                      in     number     default null
184   ,p_supervisor_id                 in     number     default null
185   ,p_supervisor_assignment_id      in     number     default null
186   ,p_retain_direct_reports         in     varchar2   default null
187   ,p_payroll_id                    in     number     default null
188   ,p_pay_basis_id                  in     number     default null
189   ,p_proposed_salary               in     varchar2   default null
190   ,p_people_group_id               in     number     default null
191   ,p_soft_coding_keyflex_id        in     number     default null
192   ,p_assignment_status_type_id     in     number     default null
193   ,p_ass_status_change_reason      in     varchar2   default null
194   ,p_assignment_category           in     varchar2   default null
195   ,p_per_information1              in     varchar2   default null
196   ,p_per_information2              in     varchar2   default null
197   ,p_per_information3              in     varchar2   default null
198   ,p_per_information4              in     varchar2   default null
199   ,p_per_information5              in     varchar2   default null
200   ,p_per_information6              in     varchar2   default null
201   ,p_per_information7              in     varchar2   default null
202   ,p_per_information8              in     varchar2   default null
203   ,p_per_information9              in     varchar2   default null
204   ,p_per_information10             in     varchar2   default null
205   ,p_per_information11             in     varchar2   default null
206   ,p_per_information12             in     varchar2   default null
207   ,p_per_information13             in     varchar2   default null
208   ,p_per_information14             in     varchar2   default null
209   ,p_per_information15             in     varchar2   default null
210   ,p_per_information16             in     varchar2   default null
211   ,p_per_information17             in     varchar2   default null
212   ,p_per_information18             in     varchar2   default null
213   ,p_per_information19             in     varchar2   default null
214   ,p_per_information20             in     varchar2   default null
215   ,p_per_information21             in     varchar2   default null
216   ,p_per_information22             in     varchar2   default null
217   ,p_per_information23             in     varchar2   default null
218   ,p_per_information24             in     varchar2   default null
219   ,p_per_information25             in     varchar2   default null
220   ,p_per_information26             in     varchar2   default null
221   ,p_per_information27             in     varchar2   default null
222   ,p_per_information28             in     varchar2   default null
223   ,p_per_information29             in     varchar2   default null
224   ,p_per_information30             in     varchar2   default null
225   ,p_person_deployment_id             out nocopy number
226   ,p_object_version_number            out nocopy number
227   ,p_policy_duration_warning          out nocopy boolean
228   );
229 --
230 -- ----------------------------------------------------------------------------
231 -- |-------------------------< update_person_deployment >---------------------|
232 -- ----------------------------------------------------------------------------
233 --
234 -- {Start Of Comments}
235 /*#
236  * This API updates an existing employee deployment record.
237  *
238  * The API cannot be used to update the type of deployment or the source and
239  * destination business groups.
240  *
241  * <p><b>Licensing</b><br>
242  * This API is licensed for use with Human Resources
243  *
244  * <p><b>Prerequisites</b><br>
245  * The deployment record must already exist. The assignment information
246  * provided must be valid on the deployment start date.
247  *
248  * <p><b>Post Success</b><br>
249  * The deployment record will have been updated.
250  *
251  * <p><b>Post Failure</b><br>
252  * The deployment record will not have been updated, and an error will
253  * be raised.
254  *
255  * @param p_validate If true, then validation alone will be performed and the
256  * database will remain unchanged. If false and all validation checks pass,
257  * then the database will be modified.
258  * @param p_person_deployment_id Identifies the deployment record to update.
259  * @param p_object_version_number Pass in the current version number of the
260  * deployment to be updated. When the API completes if p_validate is false,
261  * will be set to the new version number of the updated deployment.
262  * If p_validate is true will be set to the same value which was passed in.
263  * @param p_to_person_id If specified, identifies the person record in the
264  * destination business group which will track the deployment. If not
265  * specified, indicated that a new person record will be created when the
266  * deployment is initiated.
267  * @param p_person_type_id The person type to be used for the person in the
268  * destination business group when the deployment is initiated.
269  * @param p_start_date The start date of the deployment.
270  * @param p_end_date The end date of the deployment. Should be null for a
271  * permanent deployment.
272  * @param p_deployment_reason The reason for this deployment. Valid values must
273  * exist in the HR_DEPLOYMENT_REASONS lookup type.
274  * @param p_employee_number The employee number to be used for the person
275  * record in the destination business group when the deployment is initiated.
276  * @param p_leaving_reason The leaving reason to be used in the destination
277  * business group when a temporary deployment is being ended. Should not be
278  * entered for permanent deployments. Valid values must exist in the LEAV_REAS
279  * lookup type.
280  * @param p_leaving_person_type_id The person type of ex-employee to be used
281  * in the destination business group when a temporary deployment is being
282  * ended. Should not be entered for permanent deployments.
283  * @param p_status This parameter is reserved for future releases.
284  * Do not specify a value for this parameter.
285  * @param p_status_change_reason This parameter is reserved for future
286  * releases.Do not specify a value for this parameter.
287  * @param p_deplymt_policy_id This parameter is reserved for future releases.
288  * Do not specify a value for this parameter.
289  * @param p_organization_id The organization of the assignment to be created
290  * in the destination business group when the deployment is initiated.
291  * @param p_location_id The location of the assignment to be created
292  * in the destination business group when the deployment is initiated.
293  * @param p_job_id The job of the assignment to be created
294  * in the destination business group when the deployment is initiated.
295  * @param p_position_id The position of the assignment to be created
296  * in the destination business group when the deployment is initiated.
297  * @param p_grade_id The grade of the assignment to be created
298  * in the destination business group when the deployment is initiated.
299  * @param p_supervisor_id The supervisor of the assignment to be created
300  * in the destination business group when the deployment is initiated.
301  * @param p_supervisor_assignment_id The supervisor's assignment of the
302  * assignment to be created in the destination business group
303  * when the deployment is initiated.
304  * @param p_retain_direct_reports Flag indicating whether the employee's
305  * direct reports in the source business group need to be updated to the same
306  * employee's record but in the destination business group. For permanent
307  * deployments only.
308  * @param p_payroll_id The payroll of the assignment to be created
309  * in the destination business group when the deployment is initiated.
310  * @param p_pay_basis_id The salary basis of the assignment to be created
311  * in the destination business group when the deployment is initiated.
312  * @param p_proposed_salary The salary of the assignment to be created
313  * in the destination business group when the deployment is initiated.
314  * Do not enter a value for temporary deployments.
315  * @param p_people_group_id People Group key flexfield identifier for the
316  * assignment to be created in the destination business group when the
317  * deployment is initiated.
318  * @param p_soft_coding_keyflex_id Soft Coded key flexfield identifier for the
319  * assignment to be created in the destination business group when the
320  * deployment is initiated.
321  * @param p_assignment_status_type_id Assignment status of the assignment
322  * to be created in the destination business group when the deployment
323  * is initiated.
324  * @param p_ass_status_change_reason Change reason to be recorded on the
325  * assignment to be created in the destination business group when the
326  * deployment is initiated. Valid values must exist in the EMP_ASSIGN_REASON
327  * lookup type.
328  * @param p_assignment_category Assignment category of the assignment
329  * to be created in the destination business group when the deployment
330  * is initiated.
331  * @param p_per_information1 Developer descriptive flexfield segment.
332  * @param p_per_information2 Developer descriptive flexfield segment.
333  * @param p_per_information3 Developer descriptive flexfield segment.
334  * @param p_per_information4 Developer descriptive flexfield segment.
335  * @param p_per_information5 Developer descriptive flexfield segment.
336  * @param p_per_information6 Developer descriptive flexfield segment.
337  * @param p_per_information7 Developer descriptive flexfield segment.
338  * @param p_per_information8 Developer descriptive flexfield segment.
339  * @param p_per_information9 Developer descriptive flexfield segment.
340  * @param p_per_information10 Developer descriptive flexfield segment.
341  * @param p_per_information11 Developer descriptive flexfield segment.
342  * @param p_per_information12 Developer descriptive flexfield segment.
343  * @param p_per_information13 Developer descriptive flexfield segment.
344  * @param p_per_information14 Developer descriptive flexfield segment.
345  * @param p_per_information15 Developer descriptive flexfield segment.
346  * @param p_per_information16 Developer descriptive flexfield segment.
347  * @param p_per_information17 Developer descriptive flexfield segment.
348  * @param p_per_information18 Developer descriptive flexfield segment.
349  * @param p_per_information19 Developer descriptive flexfield segment.
350  * @param p_per_information20 Developer descriptive flexfield segment.
351  * @param p_per_information21 Developer descriptive flexfield segment.
352  * @param p_per_information22 Developer descriptive flexfield segment.
353  * @param p_per_information23 Developer descriptive flexfield segment.
354  * @param p_per_information24 Developer descriptive flexfield segment.
355  * @param p_per_information25 Developer descriptive flexfield segment.
356  * @param p_per_information26 Developer descriptive flexfield segment.
357  * @param p_per_information27 Developer descriptive flexfield segment.
358  * @param p_per_information28 Developer descriptive flexfield segment.
359  * @param p_per_information29 Developer descriptive flexfield segment.
360  * @param p_per_information30 Developer descriptive flexfield segment.
361  * @param p_policy_duration_warning In this release, always set to null.
362  * @rep:displayname Update Person Deployment.
363  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE_ASG
364  * @rep:lifecycle active
365  * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
366  * @rep:scope public
367  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
368 */
369 --
370 -- {End Of Comments}
371 --
372 procedure update_person_deployment
373   (p_validate                      in     boolean    default false
374   ,p_person_deployment_id          in     number
375   ,p_object_version_number         in out nocopy number
376   ,p_to_person_id                  in     number     default hr_api.g_number
377   ,p_person_type_id                in     number     default hr_api.g_number
378   ,p_start_date                    in     date       default hr_api.g_date
379   ,p_end_date                      in     date       default hr_api.g_date
380   ,p_deployment_reason             in     varchar2   default hr_api.g_varchar2
381   ,p_employee_number               in     varchar2   default hr_api.g_varchar2
382   ,p_leaving_reason                in     varchar2   default hr_api.g_varchar2
383   ,p_leaving_person_type_id        in     number     default hr_api.g_number
384   ,p_status                        in     varchar2   default hr_api.g_varchar2
385   ,p_status_change_reason          in     varchar2   default hr_api.g_varchar2
386   ,p_deplymt_policy_id             in     number     default hr_api.g_number
387   ,p_organization_id               in     number     default hr_api.g_number
388   ,p_location_id                   in     number     default hr_api.g_number
389   ,p_job_id                        in     number     default hr_api.g_number
390   ,p_position_id                   in     number     default hr_api.g_number
391   ,p_grade_id                      in     number     default hr_api.g_number
392   ,p_supervisor_id                 in     number     default hr_api.g_number
393   ,p_supervisor_assignment_id      in     number     default hr_api.g_number
394   ,p_retain_direct_reports         in     varchar2   default hr_api.g_varchar2
395   ,p_payroll_id                    in     number     default hr_api.g_number
396   ,p_pay_basis_id                  in     number     default hr_api.g_number
397   ,p_proposed_salary               in     varchar2   default hr_api.g_varchar2
398   ,p_people_group_id               in     number     default hr_api.g_number
399   ,p_soft_coding_keyflex_id        in     number     default hr_api.g_number
400   ,p_assignment_status_type_id     in     number     default hr_api.g_number
401   ,p_ass_status_change_reason      in     varchar2   default hr_api.g_varchar2
402   ,p_assignment_category           in     varchar2   default hr_api.g_varchar2
403   ,p_per_information1              in     varchar2   default hr_api.g_varchar2
404   ,p_per_information2              in     varchar2   default hr_api.g_varchar2
405   ,p_per_information3              in     varchar2   default hr_api.g_varchar2
406   ,p_per_information4              in     varchar2   default hr_api.g_varchar2
407   ,p_per_information5              in     varchar2   default hr_api.g_varchar2
408   ,p_per_information6              in     varchar2   default hr_api.g_varchar2
409   ,p_per_information7              in     varchar2   default hr_api.g_varchar2
410   ,p_per_information8              in     varchar2   default hr_api.g_varchar2
411   ,p_per_information9              in     varchar2   default hr_api.g_varchar2
412   ,p_per_information10             in     varchar2   default hr_api.g_varchar2
413   ,p_per_information11             in     varchar2   default hr_api.g_varchar2
414   ,p_per_information12             in     varchar2   default hr_api.g_varchar2
415   ,p_per_information13             in     varchar2   default hr_api.g_varchar2
416   ,p_per_information14             in     varchar2   default hr_api.g_varchar2
417   ,p_per_information15             in     varchar2   default hr_api.g_varchar2
418   ,p_per_information16             in     varchar2   default hr_api.g_varchar2
419   ,p_per_information17             in     varchar2   default hr_api.g_varchar2
420   ,p_per_information18             in     varchar2   default hr_api.g_varchar2
421   ,p_per_information19             in     varchar2   default hr_api.g_varchar2
422   ,p_per_information20             in     varchar2   default hr_api.g_varchar2
423   ,p_per_information21             in     varchar2   default hr_api.g_varchar2
424   ,p_per_information22             in     varchar2   default hr_api.g_varchar2
425   ,p_per_information23             in     varchar2   default hr_api.g_varchar2
426   ,p_per_information24             in     varchar2   default hr_api.g_varchar2
427   ,p_per_information25             in     varchar2   default hr_api.g_varchar2
428   ,p_per_information26             in     varchar2   default hr_api.g_varchar2
429   ,p_per_information27             in     varchar2   default hr_api.g_varchar2
430   ,p_per_information28             in     varchar2   default hr_api.g_varchar2
431   ,p_per_information29             in     varchar2   default hr_api.g_varchar2
432   ,p_per_information30             in     varchar2   default hr_api.g_varchar2
433   ,p_policy_duration_warning          out nocopy boolean
434   );
435 --
436 -- ----------------------------------------------------------------------------
437 -- |-------------------------< delete_person_deployment >---------------------|
438 -- ----------------------------------------------------------------------------
439 --
440 -- {Start Of Comments}
441 /*#
442  * This API deletes a deployment record.
443  *
444  * <p><b>Licensing</b><br>
445  * This API is licensed for use with Human Resources.
446  *
447  * <p><b>Prerequisites</b><br>
448  * The deployment record already exists and is in DRAFT or COMPLETE status.
449  * If the deployment status is ACTIVE, the record cannot be deleted.
450  *
451  * <p><b>Post Success</b><br>
452  * The deployment record is successfully removed from the database.
453  *
454  * <p><b>Post Failure</b><br>
455  * The deployment is not deleted and an error is raised.
456  *
457  * @param p_validate If true, then validation alone will be performed and the
458  * database will remain unchanged. If false and all validation checks pass,
459  * then the database will be modified.
460  * @param p_person_deployment_id Identifies the deployment record to be
461  * deleted.
462  * @param p_object_version_number Current version number of the deployment
463  * to be deleted.
464  * @rep:displayname Delete Person Deployment
465  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE_ASG
466  * @rep:lifecycle active
467  * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
468  * @rep:scope public
469  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
470 */
471 --
472 -- {End Of Comments}
473 --
474 procedure delete_person_deployment
475   (p_validate                      in     boolean    default false
476   ,p_person_deployment_id          in     number
477   ,p_object_version_number         in     number
478   );
479 --
480 -- ----------------------------------------------------------------------------
481 -- |---------------------------< initiate_deployment >------------------------|
482 -- ----------------------------------------------------------------------------
483 --
484 -- {Start Of Comments}
485 /*#
486  * This API initiates a deployment for an employee.
487  *
488  * If the person already exists in the destination business group, the API
489  * converts the person to an employee. If the person does not exists, a new
490  * employee is created. If the deployment is permanent, the employee record
491  * in the source business group is terminated. If the deployment is temporary,
492  * the assignments are suspended but the employee is not terminated.
493  * If they exists, deployment EIT and deployment contact records are used to
494  * create EITs and contacts in the destination business group.
495  *
496  * <p><b>Licensing</b><br>
497  * This API is licensed for use with Human Resources.
498  *
499  * <p><b>Prerequisites</b><br>
500  * The deployment record specified exists, and there does not exists another
501  * deployment of ACTIVE status that overlaps the start or end dates.
502  *
503  * <p><b>Post Success</b><br>
504  * The employee is created, or person converted to an employee, and assignment
505  * is created in the destination business group. The employment is terminated
506  * or assignmemts suspended in the source business group.
507  *
508  * <p><b>Post Failure</b><br>
509  * The person and assignment records are not processed and an error is raised.
510  *
511  * @param p_validate If true, then validation alone will be performed and the
512  * database will remain unchanged. If false and all validation checks pass,
513  * then the database will be modified.
514  * @param p_person_deployment_id Identifies the deployment record to process.
515  * @param p_object_version_number Pass in the current version number of the
516  * deployment to be initiated. When the API completes if p_validate is false,
517  * will be set to the new version number of the updated deployment.
518  * If p_validate is true will be set to the same value which was passed in.
519  * @param p_host_person_id Identifes the person record created or updated
520  * in the destination business group.
521  * @param p_host_per_ovn If p_validate is false, then set to the version
522  * number of the person created or updated in the destination business group.
523  * If p_validate is true, then set to null.
524  * @param p_host_assignment_id Identifies the assignment record that was
525  * created in the destination business group for this deployment.
526  * @param p_host_asg_ovn If p_validate is false, then set to the version
527  * number of the assignment created or updated in the destination
528  * business group. If p_validate is true, then set to null.
529  * @param p_already_applicant_warning If set to true, then the person already
530  * exists in the destination business group and has applicant records.
531  * @rep:displayname Initiate Deployment
532  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE_ASG
533  * @rep:lifecycle active
534  * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
535  * @rep:scope public
536  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
537 */
538 --
539 -- {End Of Comments}
540 --
541 procedure initiate_deployment
542   (p_validate                      in     boolean    default false
543   ,p_person_deployment_id          in     number
544   ,p_object_version_number         in out   nocopy number
545   ,p_host_person_id                     out nocopy number
546   ,p_host_per_ovn                       out nocopy number
547   ,p_host_assignment_id                 out nocopy number
548   ,p_host_asg_ovn                       out nocopy number
549   ,p_already_applicant_warning          out nocopy boolean
550   );
551 --
552 -- ----------------------------------------------------------------------------
553 -- |-------------------------< change_deployment_dates >----------------------|
554 -- ----------------------------------------------------------------------------
555 --
556 -- {Start Of Comments}
557 /*#
558  * This API updates the start or end date of an active deployment.
559  *
560  * The API is used to keep synchronization between the start of the person
561  * and assignment records in the destination business group and the suspension
562  * of the assignments in the source business group.
563  *
564  * <p><b>Licensing</b><br>
565  * This API is licensed for use with Human Resources.
566  *
567  * <p><b>Prerequisites</b><br>
568  * The deployment exists, with status ACTIVE, and is a temporary deployment.
569  *
570  * <p><b>Post Success</b><br>
571  * The person and assignment start dates in the destination business group are
572  * changed and the date the source business group assignments are suspended
573  * is changed.
574  *
575  * <p><b>Post Failure</b><br>
576  * No changes are made to person or assignment records and an error is raised.
577  *
578  * @param p_validate If true, then validation alone will be performed and the
579  * database will remain unchanged. If false and all validation checks pass,
580  * then the database will be modified.
581  * @param p_person_deployment_id Identifies the deployment record to update.
582  * @param p_object_version_number Pass in the current version number of the
583  * deployment to be updated. When the API completes if p_validate is false,
584  * will be set to the new version number of the updated deployment.
585  * @param p_start_date The new start date of the deployment.
586  * @param p_end_date The new end date of the deployment.
587  * @param p_deplymt_policy_id This parameter is reserved for future releases.
588  * Do not specify a value for this parameter.
589  * @rep:displayname Update Active Deployment Dates
590  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE_ASG
591  * @rep:lifecycle active
592  * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
593  * @rep:scope public
594  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
595 */
596 --
597 -- {End Of Comments}
598 --
599 procedure change_deployment_dates
600   (p_validate                      in     boolean    default false
601   ,p_person_deployment_id          in     number
602   ,p_object_version_number         in out nocopy     number
603   ,p_start_date                    in     date       default hr_api.g_date
604   ,p_end_date                      in     date       default hr_api.g_date
605   ,p_deplymt_policy_id             in     number     default hr_api.g_number
606   );
607 --
608 -- ----------------------------------------------------------------------------
609 -- |--------------------------< return_from_deployment >----------------------|
610 -- ----------------------------------------------------------------------------
611 --
612 -- {Start Of Comments}
613 /*#
614  * This API processes the return of an employee from a temporary deployment.
615  *
616  * The API terminates the employment in the destination business group and
617  * activates the assignments in the source busineess group.
618  *
619  * <p><b>Licensing</b><br>
620  * This API is licensed for use with Human Resources.
621  *
622  * <p><b>Prerequisites</b><br>
623  * The deployment exists, is temporary, and has status of ACTIVE.
624  *
625  * <p><b>Post Success</b><br>
626  * The employment is the destination business group is terminated successfully,
627  * and the assignments in the source business group are activated.
628  *
629  * <p><b>Post Failure</b><br>
630  * The database records are not updated and an error is raised.
631  *
632  * @param p_validate If true, then validation alone will be performed and the
633  * database will remain unchanged. If false and all validation checks pass,
634  * then the database will be modified.
635  * @param p_person_deployment_id Identifies the deployment record to initiate
636  * the return.
637  * @param p_object_version_number Pass in the current version number of the
638  * deployment to be updated. When the API completes if p_validate is false,
639  * will be set to the new version number of the updated deployment.
640  * @param p_end_date The end date of the deployment.
641  * @param p_leaving_reason The leaving reason to use in the termination of the
642  * employment in the destination business group.
643  * Valid values must exist in the LEAV_REAS lookup type.
644  * @param p_leaving_person_type_id The person type of ex-employee to be used
645  * in the destination business group.
646  * @rep:displayname Initiate Return from Deployment
647  * @rep:category BUSINESS_ENTITY PER_EMPLOYEE_ASG
648  * @rep:lifecycle active
649  * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
650  * @rep:scope public
651  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
652 */
653 --
654 -- {End Of Comments}
655 --
656 procedure return_from_deployment
657   (p_validate                      in     boolean    default false
658   ,p_person_deployment_id          in     number
659   ,p_object_version_number         in out nocopy     number
660   ,p_end_date                      in     date       default hr_api.g_date
661   ,p_leaving_reason                in     varchar2   default hr_api.g_varchar2
662   ,p_leaving_person_type_id        in     number     default hr_api.g_number
663   );
664 --
665 end HR_PERSON_DEPLOYMENT_API;