DBA Data[Home] [Help]

PACKAGE: APPS.PAY_PAYROLL_API

Source


1 package pay_payroll_api as
2 /* $Header: pyprlapi.pkh 120.13 2007/11/20 06:17:36 pgongada noship $ */
3 /*#
4  * This package contains Payroll APIs.
5  * @rep:scope public
6  * @rep:product pay
7  * @rep:displayname Payroll
8 */
9 --
10 g_api_dml  boolean;                               -- Global api dml status
11 g_package  varchar2(33) := '  pay_payroll_api.';
12 --
13 
14 --
15 -- ----------------------------------------------------------------------------
16 -- |------------------------------< create_payroll >--------------------------|
17 -- ----------------------------------------------------------------------------
18 --
19 -- {Start Of Comments}
20 /*#
21  * This API creates a payroll.
22  *
23  * It creates the payroll and associated time periods.
24  *
25  *
26  * <P> This version of the API is now out-of-date however it has been provided
27  * to you for backward compatibility support and will be removed in the future.
28  * Oracle recommends you to modify existing calling programs in advance of the
29  * support being withdrawn thus avoiding any potential disruption.
30  *
31  * <p><b>Licensing</b><br>
32  * This API is licensed for use with Human Resources.
33  *
34  * <p><b>Prerequisites</b><br>
35  * Relevant payment methods and consolidation sets must be defined
36  *
37  * <p><b>Post Success</b><br>
38  * The payroll and time periods will be successfully inserted into the
39  * database.
40  *
41  * <p><b>Post Failure</b><br>
42  * The payroll will not be created and an error will be raised
43  * @param p_validate If true, then validation alone will be performed and the
44  * database will remain unchanged. If false and all validation checks pass,
45  * then the database will be modified.
46  * @param p_effective_date Determines when the DateTrack operation comes into
47  * force.
48  * @param p_payroll_name Name of payroll to be created
49  * @param p_payroll_type Type of payroll to be created. (PAYROLL_TYPE lookup
50  * type of the HR_LOOKUPS)
51  * @param p_period_type Type of periods to be created for this payroll. Foreign
52  * key to PER_TIME_PERIOD_TYPE.
53  * @param p_first_period_end_date End date for first period in this payroll
54  * @param p_number_of_years Number of years to create payroll time periods for
55  * @param p_pay_date_offset Number of days allowed for pay date offset
56  * @param p_direct_deposit_date_offset Number of days allowed for direct
57  * deposit offset
58  * @param p_pay_advice_date_offset Number of days allowed for pay advice date
59  * offset
60  * @param p_cut_off_date_offset Number of days allowed for cut off date offset
61  * @param p_midpoint_offset Number of days allowed for midpoint offset
62  * @param p_default_payment_method_id Identifier for default payment method for
63  * this payroll
64  * @param p_consolidation_set_id Consolidation set identifier for this payroll
65  * @param p_cost_allocation_keyflex_id Identifier for Cost allocation key
66  * flexfield for this payroll
67  * @param p_suspense_account_keyflex_id Identifier of Suspense account key
68  * flexfield for this payroll
69  * @param p_negative_pay_allowed_flag Flag to indicate if negative pay allowed
70  * @param p_gl_set_of_books_id Identifier of General ledger set of books for
71  * this payroll
72  * @param p_soft_coding_keyflex_id Identifier for soft coding key flexfield for
73  * this payroll
74  * @param p_comments Payroll comment text
75  * @param p_attribute_category This context value determines which flexfield
76  * structure to use with the descriptive flexfield segments.
77  * @param p_attribute1 Descriptive flexfield segment.
78  * @param p_attribute2 Descriptive flexfield segment.
79  * @param p_attribute3 Descriptive flexfield segment.
80  * @param p_attribute4 Descriptive flexfield segment.
81  * @param p_attribute5 Descriptive flexfield segment.
82  * @param p_attribute6 Descriptive flexfield segment.
83  * @param p_attribute7 Descriptive flexfield segment.
84  * @param p_attribute8 Descriptive flexfield segment.
85  * @param p_attribute9 Descriptive flexfield segment.
86  * @param p_attribute10 Descriptive flexfield segment.
87  * @param p_attribute11 Descriptive flexfield segment.
88  * @param p_attribute12 Descriptive flexfield segment.
89  * @param p_attribute13 Descriptive flexfield segment.
90  * @param p_attribute14 Descriptive flexfield segment.
91  * @param p_attribute15 Descriptive flexfield segment.
92  * @param p_attribute16 Descriptive flexfield segment.
93  * @param p_attribute17 Descriptive flexfield segment.
94  * @param p_attribute18 Descriptive flexfield segment.
95  * @param p_attribute19 Descriptive flexfield segment.
96  * @param p_attribute20 Descriptive flexfield segment.
97  * @param p_arrears_flag Flag to indicate if arrears payroll
98  * @param p_period_reset_years Number of years after which the period start of
99  * the next corresponding year is reset.
100  * @param p_multi_assignments_flag Flag to indicate if multi Assignment payroll
101  * @param p_organization_id Organization ID
102  * @param p_prl_information_category This context value determines which
103  * Flexfield Structure to use with the Developer Descriptive flexfield
104  * segments.
105  * @param p_prl_information1 Developer Descriptive flexfield segment.
106  * @param p_prl_information2 Developer Descriptive flexfield segment.
107  * @param p_prl_information3 Developer Descriptive flexfield segment.
108  * @param p_prl_information4 Developer Descriptive flexfield segment.
109  * @param p_prl_information5 Developer Descriptive flexfield segment.
110  * @param p_prl_information6 Developer Descriptive flexfield segment.
111  * @param p_prl_information7 Developer Descriptive flexfield segment.
112  * @param p_prl_information8 Developer Descriptive flexfield segment.
113  * @param p_prl_information9 Developer Descriptive flexfield segment.
114  * @param p_prl_information10 Developer Descriptive flexfield segment.
115  * @param p_prl_information11 Developer Descriptive flexfield segment.
116  * @param p_prl_information12 Developer Descriptive flexfield segment.
117  * @param p_prl_information13 Developer Descriptive flexfield segment.
118  * @param p_prl_information14 Developer Descriptive flexfield segment.
119  * @param p_prl_information15 Developer Descriptive flexfield segment.
120  * @param p_prl_information16 Developer Descriptive flexfield segment.
121  * @param p_prl_information17 Developer Descriptive flexfield segment.
122  * @param p_prl_information18 Developer Descriptive flexfield segment.
123  * @param p_prl_information19 Developer Descriptive flexfield segment.
124  * @param p_prl_information20 Developer Descriptive flexfield segment.
125  * @param p_prl_information21 Developer Descriptive flexfield segment.
126  * @param p_prl_information22 Developer Descriptive flexfield segment.
127  * @param p_prl_information23 Developer Descriptive flexfield segment.
128  * @param p_prl_information24 Developer Descriptive flexfield segment.
129  * @param p_prl_information25 Developer Descriptive flexfield segment.
130  * @param p_prl_information26 Developer Descriptive flexfield segment.
131  * @param p_prl_information27 Developer Descriptive flexfield segment.
132  * @param p_prl_information28 Developer Descriptive flexfield segment.
133  * @param p_prl_information29 Developer Descriptive flexfield segment.
134  * @param p_prl_information30 Developer Descriptive flexfield segment.
135  * @param p_payroll_id If p_validate is false, this uniquely identifies the
136  * Payroll created. If p_validate is set to true, this parameter will be null.
137  * @param p_org_pay_method_usage_id If p_validate is false, this uniquely
138  * identifies the Organization Payment Method Usage created. If p_validate is
139  * set to true, this parameter will be null.
140  * @param p_prl_object_version_number If p_validate is false, then set to the
141  * version number of the created payroll. If p_validate is true, then the value
142  * will be null.
143  * @param p_opm_object_version_number If p_validate is false, then set to the
144  * version number of the organisation payment method. If p_validate is true,
145  * then the value will be null.
146  * @param p_prl_effective_start_date If p_validate is false, then set to the
147  * earliest effective
148  * @param p_prl_effective_end_date If p_validate is false, then set to the
149  * effective end date for the created payroll. If p_validate is true, then set
150  * to null.
151  * @param p_opm_effective_start_date If p_validate is false, then set to the
152  * earliest effective
153  * @param p_opm_effective_end_date If p_validate is false, then set to the
154  * effective end date for the organisation payment methods. If p_validate is
155  * true, then set to null.
156  * @param p_comment_id If p_validate is false and comment text was provided,
157  * then will be set to the identifier of the created payroll comment record. If
158  * p_validate is true or no comment text was provided, then will be null.
159  * @rep:displayname Create Payroll
160  * @rep:category BUSINESS_ENTITY PAY_PAYROLL_DEFINITION
161  * @rep:scope public
162  * @rep:lifecycle deprecated
163  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
164 */
165 --
166 -- {End Of Comments}
167 --
168 procedure create_payroll
169 (
170    p_validate                     in   boolean   default false,
171    p_effective_date               in   date,
172    p_payroll_name                 in   varchar2,
173    p_payroll_type                 in   varchar2  default null,
174    p_period_type                  in   varchar2,
175    p_first_period_end_date        in   date,
176    p_number_of_years              in   number,
177    p_pay_date_offset              in   number    default 0,
178    p_direct_deposit_date_offset   in   number    default 0,
179    p_pay_advice_date_offset       in   number    default 0,
180    p_cut_off_date_offset          in   number    default 0,
181    p_midpoint_offset              in   number    default null,
182    p_default_payment_method_id    in   number    default null,
183    p_consolidation_set_id         in   number,
184    p_cost_allocation_keyflex_id   in   number    default null,
185    p_suspense_account_keyflex_id  in   number    default null,
186    p_negative_pay_allowed_flag    in   varchar2  default 'N',
187    p_gl_set_of_books_id           in   number    default null,
188    p_soft_coding_keyflex_id       in   number    default null,
189    p_comments                     in   varchar2  default null,
190    p_attribute_category           in   varchar2  default null,
191    p_attribute1                   in   varchar2  default null,
192    p_attribute2                   in   varchar2  default null,
193    p_attribute3                   in   varchar2  default null,
194    p_attribute4                   in   varchar2  default null,
195    p_attribute5                   in   varchar2  default null,
196    p_attribute6                   in   varchar2  default null,
197    p_attribute7                   in   varchar2  default null,
198    p_attribute8                   in   varchar2  default null,
199    p_attribute9                   in   varchar2  default null,
200    p_attribute10                  in   varchar2  default null,
201    p_attribute11                  in   varchar2  default null,
202    p_attribute12                  in   varchar2  default null,
203    p_attribute13                  in   varchar2  default null,
204    p_attribute14                  in   varchar2  default null,
205    p_attribute15                  in   varchar2  default null,
206    p_attribute16                  in   varchar2  default null,
207    p_attribute17                  in   varchar2  default null,
208    p_attribute18                  in   varchar2  default null,
209    p_attribute19                  in   varchar2  default null,
210    p_attribute20                  in   varchar2  default null,
211    p_arrears_flag                 in   varchar2  default 'N',
212    p_period_reset_years           in   varchar2  default null,
213    p_multi_assignments_flag       in   varchar2  default null,
214    p_organization_id              in   number    default null,
215    p_prl_information_category     in   varchar2  default null,
216    p_prl_information1         	  in   varchar2  default null,
217    p_prl_information2         	  in   varchar2  default null,
218    p_prl_information3         	  in   varchar2  default null,
219    p_prl_information4         	  in   varchar2  default null,
220    p_prl_information5         	  in   varchar2  default null,
221    p_prl_information6         	  in   varchar2  default null,
222    p_prl_information7         	  in   varchar2  default null,
223    p_prl_information8         	  in   varchar2  default null,
224    p_prl_information9         	  in   varchar2  default null,
225    p_prl_information10        	  in   varchar2  default null,
226    p_prl_information11            in   varchar2  default null,
227    p_prl_information12        	  in   varchar2  default null,
228    p_prl_information13        	  in   varchar2  default null,
229    p_prl_information14        	  in   varchar2  default null,
230    p_prl_information15        	  in   varchar2  default null,
231    p_prl_information16        	  in   varchar2  default null,
232    p_prl_information17        	  in   varchar2  default null,
233    p_prl_information18        	  in   varchar2  default null,
234    p_prl_information19        	  in   varchar2  default null,
235    p_prl_information20        	  in   varchar2  default null,
236    p_prl_information21        	  in   varchar2  default null,
237    p_prl_information22            in   varchar2  default null,
238    p_prl_information23        	  in   varchar2  default null,
239    p_prl_information24        	  in   varchar2  default null,
240    p_prl_information25        	  in   varchar2  default null,
241    p_prl_information26        	  in   varchar2  default null,
242    p_prl_information27        	  in   varchar2  default null,
243    p_prl_information28        	  in   varchar2  default null,
244    p_prl_information29        	  in   varchar2  default null,
245    p_prl_information30            in   varchar2  default null,
246    p_payroll_id                   out  nocopy number,
247    p_org_pay_method_usage_id      out  nocopy number,
248    p_prl_object_version_number    out  nocopy number,
249    p_opm_object_version_number    out  nocopy number,
250    p_prl_effective_start_date     out  nocopy date,
251    p_prl_effective_end_date       out  nocopy date,
252    p_opm_effective_start_date     out  nocopy date,
253    p_opm_effective_end_date       out  nocopy date,
254    p_comment_id                   out  nocopy number
255 );
256 --
257 -- ----------------------------------------------------------------------------
258 -- |------------------------------< update_payroll >--------------------------|
259 -- ----------------------------------------------------------------------------
260 --
261 -- {Start Of Comments}
262 /*#
263  * This API updates a payroll.
264  *
265  * This make the changes to the definition of the payroll as specified by
266  * parameter values passed to this API.
267  *
268  * <P> This version of the API is now out-of-date however it has been provided
269  * to you for backward compatibility support and will be removed in the future.
270  * Oracle recommends you to modify existing calling programs in advance of the
271  * support being withdrawn thus avoiding any potential disruption.
272  *
273  * <p><b>Licensing</b><br>
274  * This API is licensed for use with Human Resources.
275  *
276  * <p><b>Prerequisites</b><br>
277  * Relevant payment methods and consolidation sets must be defined
278  *
279  * <p><b>Post Success</b><br>
280  * Payroll data will be updated.
281  *
282  * <p><b>Post Failure</b><br>
283  * Payroll data will not be updated and an error will be raised
284  * @param p_validate If true, then validation alone will be performed and the
285  * database will remain unchanged. If false and all validation checks pass,
286  * then the database will be modified.
287  * @param p_effective_date Determines when the DateTrack operation comes into
288  * force.
289  * @param p_datetrack_mode Indicates which DateTrack mode to use when updating
290  * the record. You must set to either UPDATE, CORRECTION, UPDATE_OVERRIDE or
291  * UPDATE_CHANGE_INSERT. Modes available for use with a particular record
292  * depend on the dates of previous record changes and the effective date of
293  * this change.
294  * @param p_payroll_id If p_validate is false, this uniquely identifies the
295  * Payroll updated. If p_validate is set to true, this parameter will be null.
296  * @param p_object_version_number Pass in the current version number of the
297  * payroll to be updated. When the API completes if p_validate is false, will
298  * be set to the new version number of the updated payroll. If p_validate is
302  * @param p_default_payment_method_id Identifier of Default payment method to
299  * true will be set to the same value which was passed in.
300  * @param p_payroll_name Payroll Name
301  * @param p_number_of_years Number of years to create time periods for
303  * be used by this payroll
304  * @param p_consolidation_set_id Consolidation set identifier for this payroll
305  * @param p_cost_allocation_keyflex_id Identifier for Cost allocation key
306  * flexfield for this payroll
307  * @param p_suspense_account_keyflex_id Identifier of Suspense account key
308  * flexfield for this payroll
309  * @param p_negative_pay_allowed_flag Flag to indicate in negative pay allowed
310  * @param p_soft_coding_keyflex_id Identifier of soft coding key flexfield for
311  * this payroll
312  * @param p_comments Payroll comment text.
313  * @param p_attribute_category This context value determines which flexfield
314  * structure to use with the descriptive flexfield segments.
315  * @param p_attribute1 Descriptive flexfield segment.
316  * @param p_attribute2 Descriptive flexfield segment.
317  * @param p_attribute3 Descriptive flexfield segment.
318  * @param p_attribute4 Descriptive flexfield segment.
319  * @param p_attribute5 Descriptive flexfield segment.
320  * @param p_attribute6 Descriptive flexfield segment.
321  * @param p_attribute7 Descriptive flexfield segment.
322  * @param p_attribute8 Descriptive flexfield segment.
323  * @param p_attribute9 Descriptive flexfield segment.
324  * @param p_attribute10 Descriptive flexfield segment.
325  * @param p_attribute11 Descriptive flexfield segment.
326  * @param p_attribute12 Descriptive flexfield segment.
327  * @param p_attribute13 Descriptive flexfield segment.
328  * @param p_attribute14 Descriptive flexfield segment.
329  * @param p_attribute15 Descriptive flexfield segment.
330  * @param p_attribute16 Descriptive flexfield segment.
331  * @param p_attribute17 Descriptive flexfield segment.
332  * @param p_attribute18 Descriptive flexfield segment.
333  * @param p_attribute19 Descriptive flexfield segment.
334  * @param p_attribute20 Descriptive flexfield segment.
335  * @param p_arrears_flag Flag to indicate if arrears payroll
336  * @param p_multi_assignments_flag Flag to indicate if multi Assignment payroll
337  * @param p_prl_information_category This context value determines which
338  * Flexfield Structure to use with the Developer Descriptive flexfield
339  * segments.
340  * @param p_prl_information1 Developer Descriptive flexfield segment.
341  * @param p_prl_information2 Developer Descriptive flexfield segment.
342  * @param p_prl_information3 Developer Descriptive flexfield segment.
343  * @param p_prl_information4 Developer Descriptive flexfield segment.
344  * @param p_prl_information5 Developer Descriptive flexfield segment.
345  * @param p_prl_information6 Developer Descriptive flexfield segment.
346  * @param p_prl_information7 Developer Descriptive flexfield segment.
347  * @param p_prl_information8 Developer Descriptive flexfield segment.
348  * @param p_prl_information9 Developer Descriptive flexfield segment.
349  * @param p_prl_information10 Developer Descriptive flexfield segment.
350  * @param p_prl_information11 Developer Descriptive flexfield segment.
351  * @param p_prl_information12 Developer Descriptive flexfield segment.
352  * @param p_prl_information13 Developer Descriptive flexfield segment.
353  * @param p_prl_information14 Developer Descriptive flexfield segment.
354  * @param p_prl_information15 Developer Descriptive flexfield segment.
355  * @param p_prl_information16 Developer Descriptive flexfield segment.
356  * @param p_prl_information17 Developer Descriptive flexfield segment.
357  * @param p_prl_information18 Developer Descriptive flexfield segment.
358  * @param p_prl_information19 Developer Descriptive flexfield segment.
359  * @param p_prl_information20 Developer Descriptive flexfield segment.
360  * @param p_prl_information21 Developer Descriptive flexfield segment.
361  * @param p_prl_information22 Developer Descriptive flexfield segment.
362  * @param p_prl_information23 Developer Descriptive flexfield segment.
363  * @param p_prl_information24 Developer Descriptive flexfield segment.
364  * @param p_prl_information25 Developer Descriptive flexfield segment.
365  * @param p_prl_information26 Developer Descriptive flexfield segment.
366  * @param p_prl_information27 Developer Descriptive flexfield segment.
367  * @param p_prl_information28 Developer Descriptive flexfield segment.
368  * @param p_prl_information29 Developer Descriptive flexfield segment.
369  * @param p_prl_information30 Developer Descriptive flexfield segment.
370  * @param p_prl_effective_start_date If p_validate is false, then set to the
371  * effective start date on the updated payroll row which now exists as of the
372  * effective date. If p_validate is true, then set to null.
373  * @param p_prl_effective_end_date If p_validate is false, then set to the
374  * effective end date on the updated payroll row which now exists as of the
375  * effective date. If p_validate is true, then set to null.
376  * @param p_comment_id If p_validate is false and comment text was provided,
377  * then will be set to the identifier of the created payroll comment record. If
378  * p_validate is true or no comment text was provided, then will be null.
379  * @rep:displayname Update Payroll
380  * @rep:category BUSINESS_ENTITY PAY_PAYROLL_DEFINITION
381  * @rep:scope public
382  * @rep:lifecycle deprecated
383  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
384 */
385 --
386 -- {End Of Comments}
387 --
388 procedure update_payroll
389 (
390    p_validate                     in   boolean   default false,
391    p_effective_date               in   date,
392    p_datetrack_mode               in   varchar2,
396    p_number_of_years              in   number    default hr_api.g_number,
393    p_payroll_id                   in out nocopy number,
394    p_object_version_number        in out nocopy number,
395    p_payroll_name                 in   varchar2  default hr_api.g_varchar2,
397    p_default_payment_method_id    in   number    default hr_api.g_number,
398    p_consolidation_set_id         in   number    default hr_api.g_number,
399    p_cost_allocation_keyflex_id   in   number    default hr_api.g_number,
400    p_suspense_account_keyflex_id  in   number    default hr_api.g_number,
401    p_negative_pay_allowed_flag    in   varchar2  default hr_api.g_varchar2,
402    p_soft_coding_keyflex_id       in   number    default hr_api.g_number,
403    p_comments                     in   varchar2  default hr_api.g_varchar2,
404    p_attribute_category           in   varchar2  default hr_api.g_varchar2,
405    p_attribute1                   in   varchar2  default hr_api.g_varchar2,
406    p_attribute2                   in   varchar2  default hr_api.g_varchar2,
407    p_attribute3                   in   varchar2  default hr_api.g_varchar2,
408    p_attribute4                   in   varchar2  default hr_api.g_varchar2,
409    p_attribute5                   in   varchar2  default hr_api.g_varchar2,
410    p_attribute6                   in   varchar2  default hr_api.g_varchar2,
411    p_attribute7                   in   varchar2  default hr_api.g_varchar2,
412    p_attribute8                   in   varchar2  default hr_api.g_varchar2,
413    p_attribute9                   in   varchar2  default hr_api.g_varchar2,
414    p_attribute10                  in   varchar2  default hr_api.g_varchar2,
415    p_attribute11                  in   varchar2  default hr_api.g_varchar2,
416    p_attribute12                  in   varchar2  default hr_api.g_varchar2,
417    p_attribute13                  in   varchar2  default hr_api.g_varchar2,
418    p_attribute14                  in   varchar2  default hr_api.g_varchar2,
419    p_attribute15                  in   varchar2  default hr_api.g_varchar2,
420    p_attribute16                  in   varchar2  default hr_api.g_varchar2,
421    p_attribute17                  in   varchar2  default hr_api.g_varchar2,
422    p_attribute18                  in   varchar2  default hr_api.g_varchar2,
423    p_attribute19                  in   varchar2  default hr_api.g_varchar2,
424    p_attribute20                  in   varchar2  default hr_api.g_varchar2,
425    p_arrears_flag                 in   varchar2  default hr_api.g_varchar2,
426    p_multi_assignments_flag       in   varchar2  default hr_api.g_varchar2,
427    p_prl_information_category     in   varchar2  default hr_api.g_varchar2,
428    p_prl_information1         	  in   varchar2  default hr_api.g_varchar2,
429    p_prl_information2         	  in   varchar2  default hr_api.g_varchar2,
430    p_prl_information3         	  in   varchar2  default hr_api.g_varchar2,
431    p_prl_information4         	  in   varchar2  default hr_api.g_varchar2,
432    p_prl_information5         	  in   varchar2  default hr_api.g_varchar2,
433    p_prl_information6         	  in   varchar2  default hr_api.g_varchar2,
434    p_prl_information7         	  in   varchar2  default hr_api.g_varchar2,
435    p_prl_information8         	  in   varchar2  default hr_api.g_varchar2,
436    p_prl_information9         	  in   varchar2  default hr_api.g_varchar2,
440    p_prl_information13        	  in   varchar2  default hr_api.g_varchar2,
437    p_prl_information10        	  in   varchar2  default hr_api.g_varchar2,
438    p_prl_information11            in   varchar2  default hr_api.g_varchar2,
439    p_prl_information12        	  in   varchar2  default hr_api.g_varchar2,
441    p_prl_information14        	  in   varchar2  default hr_api.g_varchar2,
442    p_prl_information15        	  in   varchar2  default hr_api.g_varchar2,
443    p_prl_information16        	  in   varchar2  default hr_api.g_varchar2,
444    p_prl_information17        	  in   varchar2  default hr_api.g_varchar2,
445    p_prl_information18        	  in   varchar2  default hr_api.g_varchar2,
446    p_prl_information19        	  in   varchar2  default hr_api.g_varchar2,
447    p_prl_information20        	  in   varchar2  default hr_api.g_varchar2,
448    p_prl_information21        	  in   varchar2  default hr_api.g_varchar2,
449    p_prl_information22            in   varchar2  default hr_api.g_varchar2,
450    p_prl_information23        	  in   varchar2  default hr_api.g_varchar2,
451    p_prl_information24        	  in   varchar2  default hr_api.g_varchar2,
452    p_prl_information25        	  in   varchar2  default hr_api.g_varchar2,
453    p_prl_information26        	  in   varchar2  default hr_api.g_varchar2,
454    p_prl_information27        	  in   varchar2  default hr_api.g_varchar2,
455    p_prl_information28        	  in   varchar2  default hr_api.g_varchar2,
456    p_prl_information29        	  in   varchar2  default hr_api.g_varchar2,
457    p_prl_information30            in   varchar2  default hr_api.g_varchar2,
458    p_prl_effective_start_date     out  nocopy date,
459    p_prl_effective_end_date       out  nocopy date,
460    p_comment_id                   out  nocopy number
461 );
462 --
463 -- ----------------------------------------------------------------------------
464 -- |--------------------------< lock_payroll >--------------------------------|
465 -- ----------------------------------------------------------------------------
466 Procedure lock_payroll
467   (p_effective_date                   in date
468   ,p_datetrack_mode                   in varchar2
469   ,p_payroll_id                       in number
470   ,p_object_version_number            in number
471   ,p_validation_start_date            out nocopy date
472   ,p_validation_end_date              out nocopy date
473   );
474 --
475 -- ----------------------------------------------------------------------------
476 -- |------------------------------< delete_payroll >--------------------------|
477 -- ----------------------------------------------------------------------------
478 --
479 -- {Start Of Comments}
480 /*#
481  * This API deletes a payroll.
482  *
483  * Deleted the payroll and associated time periods according to datetrack mode.
484  *
485  * <p><b>Licensing</b><br>
486  * This API is licensed for use with Human Resources.
487  *
488  * <p><b>Prerequisites</b><br>
489  * Ensure payroll is valid for deleting
490  *
491  * <p><b>Post Success</b><br>
492  * Relevant payroll and time period details have been deleted.
493  *
494  * <p><b>Post Failure</b><br>
495  * Payroll and time periods have not been deleted and an error raised
496  * @param p_validate If true, then validation alone will be performed and the
497  * database will remain unchanged. If false and all validation checks pass,
498  * then the database will be modified.
499  * @param p_effective_date Determines when the DateTrack operation comes into
500  * force.
501  * @param p_datetrack_mode Indicates which DateTrack mode to use when updating
502  * the record. You must set to either DELETE, FUTURE_CHANGE, DELETE_NEXT_CHANGE
503  * or ZAP. Modes available for use with a particular record
504  * depend on the dates of previous record changes and the effective date of
505  * this change.
506  * @param p_payroll_id Payroll identifier of payroll to be deleted
507  * @param p_object_version_number Pass in the current version number of the
508  * payroll to be deleted. When the API completes if p_validate is false, will
509  * be set to the new version number of the deleted payroll. If p_validate is
510  * true will be set to the same value which was passed in.
511  * @param p_effective_start_date If p_validate is false, then set to the
512  * effective start date for the deleted payroll row which now exists as of the
513  * effective date. If p_validate is true or all row instances have been deleted
514  * then set to null.
515  * @param p_effective_end_date If p_validate is false, then set to the
516  * effective end date for the deleted payroll row which now exists as of the
517  * effective date. If p_validate is true or all row instances have been deleted
518  * then set to null.
519  * @rep:displayname Delete Payroll
520  * @rep:category BUSINESS_ENTITY PAY_PAYROLL_DEFINITION
521  * @rep:scope public
522  * @rep:lifecycle active
523  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
524 */
525 --
526 -- {End Of Comments}
527 --
528 Procedure delete_payroll
529   (p_validate                     in  boolean   default false
530   ,p_effective_date               in  date
531   ,p_datetrack_mode               in  varchar2
532   ,p_payroll_id                   in  number
533   ,p_object_version_number        in out nocopy number
534   ,p_effective_start_date            out nocopy date
535   ,p_effective_end_date              out nocopy date
536   );
537 -- ----------------------------------------------------------------------------
538 -- |------------------------< set_base_key_value >----------------------------|
542 --   This procedure is called to register the next ID value from the database
539 -- ----------------------------------------------------------------------------
540 --
541 -- Description:
543 --   sequence.
544 -- ----------------------------------------------------------------------------
545 procedure set_base_key_value
546   (p_payroll_id  in  number);
547 --
548 Function return_api_dml_status Return Boolean;
549 --
550 -- ----------------------------------------------------------------------------
551 -- |------------------------------< create_payroll >--------------------------|
552 -- ----------------------------------------------------------------------------
553 --
554 -- {Start Of Comments}
555 /*#
556  * This Business Process creates a payroll.
557  *
558  * It creates the payroll and associated time periods.
559  *
560  * <p><b>Licensing</b><br>
561  * This API is licensed for use with Human Resources.
562  *
563  * <p><b>Prerequisites</b><br>
564  * Relevant payment methods and consolidation sets must be defined
565  *
566  * <p><b>Post Success</b><br>
567  * The payroll and time periods will be successfully inserted into the
568  * database.
569  *
570  * <p><b>Post Failure</b><br>
571  * The payroll will not be created and an error will be raised
572  * @param p_validate If true, then validation alone will be performed and the
573  * database will remain unchanged. If false and all validation checks pass,
574  * then the database will be modified.
575  * @param p_effective_date Determines when the DateTrack operation comes into
576  * force.
577  * @param p_payroll_name Name of payroll to be created
578  * @param p_payroll_type Type of payroll to be created. (PAYROLL_TYPE lookup
579  * type of the HR_LOOKUPS)
580  * @param p_period_type Type of periods to be created for this payroll. Foreign
581  * key to PER_TIME_PERIOD_TYPE.
582  * @param p_first_period_end_date End date for first period in this payroll
583  * @param p_number_of_years Number of years to create payroll time periods for
584  * @param p_pay_date_offset Number of days allowed for pay date offset
585  * @param p_direct_deposit_date_offset Number of days allowed for direct
586  * deposit offset
587  * @param p_pay_advice_date_offset Number of days allowed for pay advice date
588  * offset
589  * @param p_cut_off_date_offset Number of days allowed for cut off date offset
590  * @param p_midpoint_offset Number of days allowed for midpoint offset
591  * @param p_default_payment_method_id Identifier for default payment method for
592  * this payroll
593  * @param p_consolidation_set_id Consolidation set identifier for this payroll
594  * @param p_cost_alloc_keyflex_id_in Identifier for Cost allocation key
595  * flexfield for this payroll
596  * @param p_susp_account_keyflex_id_in Identifier of Suspense account key
597  * flexfield for this payroll
598  * @param p_negative_pay_allowed_flag Flag to indicate if negative pay allowed
599  * @param p_gl_set_of_books_id Identifier of General ledger set of books for
600  * this payroll
601  * @param p_soft_coding_keyflex_id_in Identifier for soft coding key flexfield for
602  * this payroll
603  * @param p_comments Payroll comment text
604  * @param p_attribute_category This context value determines which flexfield
605  * structure to use with the descriptive flexfield segments.
606  * @param p_attribute1 Descriptive flexfield segment.
607  * @param p_attribute2 Descriptive flexfield segment.
608  * @param p_attribute3 Descriptive flexfield segment.
609  * @param p_attribute4 Descriptive flexfield segment.
610  * @param p_attribute5 Descriptive flexfield segment.
611  * @param p_attribute6 Descriptive flexfield segment.
612  * @param p_attribute7 Descriptive flexfield segment.
613  * @param p_attribute8 Descriptive flexfield segment.
614  * @param p_attribute9 Descriptive flexfield segment.
615  * @param p_attribute10 Descriptive flexfield segment.
616  * @param p_attribute11 Descriptive flexfield segment.
617  * @param p_attribute12 Descriptive flexfield segment.
618  * @param p_attribute13 Descriptive flexfield segment.
619  * @param p_attribute14 Descriptive flexfield segment.
620  * @param p_attribute15 Descriptive flexfield segment.
621  * @param p_attribute16 Descriptive flexfield segment.
622  * @param p_attribute17 Descriptive flexfield segment.
623  * @param p_attribute18 Descriptive flexfield segment.
624  * @param p_attribute19 Descriptive flexfield segment.
625  * @param p_attribute20 Descriptive flexfield segment.
626  * @param p_arrears_flag Flag to indicate if arrears payroll
627  * @param p_period_reset_years Number of years after which the period start of
628  * the next corresponding year is reset.
629  * @param p_multi_assignments_flag Flag to indicate if multi Assignment payroll
630  * @param p_organization_id Organization ID
631  * @param p_prl_information1 Developer Descriptive flexfield segment.
632  * @param p_prl_information2 Developer Descriptive flexfield segment.
633  * @param p_prl_information3 Developer Descriptive flexfield segment.
634  * @param p_prl_information4 Developer Descriptive flexfield segment.
635  * @param p_prl_information5 Developer Descriptive flexfield segment.
636  * @param p_prl_information6 Developer Descriptive flexfield segment.
637  * @param p_prl_information7 Developer Descriptive flexfield segment.
638  * @param p_prl_information8 Developer Descriptive flexfield segment.
639  * @param p_prl_information9 Developer Descriptive flexfield segment.
640  * @param p_prl_information10 Developer Descriptive flexfield segment.
641  * @param p_prl_information11 Developer Descriptive flexfield segment.
645  * @param p_prl_information15 Developer Descriptive flexfield segment.
642  * @param p_prl_information12 Developer Descriptive flexfield segment.
643  * @param p_prl_information13 Developer Descriptive flexfield segment.
644  * @param p_prl_information14 Developer Descriptive flexfield segment.
646  * @param p_prl_information16 Developer Descriptive flexfield segment.
647  * @param p_prl_information17 Developer Descriptive flexfield segment.
648  * @param p_prl_information18 Developer Descriptive flexfield segment.
649  * @param p_prl_information19 Developer Descriptive flexfield segment.
650  * @param p_prl_information20 Developer Descriptive flexfield segment.
651  * @param p_prl_information21 Developer Descriptive flexfield segment.
652  * @param p_prl_information22 Developer Descriptive flexfield segment.
653  * @param p_prl_information23 Developer Descriptive flexfield segment.
654  * @param p_prl_information24 Developer Descriptive flexfield segment.
655  * @param p_prl_information25 Developer Descriptive flexfield segment.
656  * @param p_prl_information26 Developer Descriptive flexfield segment.
657  * @param p_prl_information27 Developer Descriptive flexfield segment.
658  * @param p_prl_information28 Developer Descriptive flexfield segment.
659  * @param p_prl_information29 Developer Descriptive flexfield segment.
660  * @param p_prl_information30 Developer Descriptive flexfield segment.
661  * @param p_cost_segment1 Cost Allocation Keyflex field segment.
662  * @param p_cost_segment2 Cost Allocation Keyflex field segment.
663  * @param p_cost_segment3 Cost Allocation Keyflex field segment.
664  * @param p_cost_segment4 Cost Allocation Keyflex field segment.
665  * @param p_cost_segment5 Cost Allocation Keyflex field segment.
666  * @param p_cost_segment6 Cost Allocation Keyflex field segment.
667  * @param p_cost_segment7 Cost Allocation Keyflex field segment.
668  * @param p_cost_segment8 Cost Allocation Keyflex field segment.
669  * @param p_cost_segment9 Cost Allocation Keyflex field segment.
670  * @param p_cost_segment10 Cost Allocation Keyflex field segment.
671  * @param p_cost_segment11 Cost Allocation Keyflex field segment.
672  * @param p_cost_segment12 Cost Allocation Keyflex field segment.
673  * @param p_cost_segment13 Cost Allocation Keyflex field segment.
674  * @param p_cost_segment14 Cost Allocation Keyflex field segment.
675  * @param p_cost_segment15 Cost Allocation Keyflex field segment.
676  * @param p_cost_segment16 Cost Allocation Keyflex field segment.
677  * @param p_cost_segment17 Cost Allocation Keyflex field segment.
678  * @param p_cost_segment18 Cost Allocation Keyflex field segment.
679  * @param p_cost_segment19 Cost Allocation Keyflex field segment.
680  * @param p_cost_segment20 Cost Allocation Keyflex field segment.
681  * @param p_cost_segment21 Cost Allocation Keyflex field segment.
682  * @param p_cost_segment22 Cost Allocation Keyflex field segment.
683  * @param p_cost_segment23 Cost Allocation Keyflex field segment.
684  * @param p_cost_segment24 Cost Allocation Keyflex field segment.
685  * @param p_cost_segment25 Cost Allocation Keyflex field segment.
686  * @param p_cost_segment26 Cost Allocation Keyflex field segment.
687  * @param p_cost_segment27 Cost Allocation Keyflex field segment.
688  * @param p_cost_segment28 Cost Allocation Keyflex field segment.
689  * @param p_cost_segment29 Cost Allocation Keyflex field segment.
690  * @param p_cost_segment30 Cost Allocation Keyflex field segment.
691  * @param p_cost_concat_segments_in Concatenated segments of the Cost
692  * Allocation Key FlexField.
693  * @param p_susp_segment1 Suspense Account Keyflex field segment.
694  * @param p_susp_segment2 Suspense Account Keyflex field segment.
695  * @param p_susp_segment3 Suspense Account Keyflex field segment.
696  * @param p_susp_segment4 Suspense Account Keyflex field segment.
697  * @param p_susp_segment5 Suspense Account Keyflex field segment.
698  * @param p_susp_segment6 Suspense Account Keyflex field segment.
699  * @param p_susp_segment7 Suspense Account Keyflex field segment.
700  * @param p_susp_segment8 Suspense Account Keyflex field segment.
701  * @param p_susp_segment9 Suspense Account Keyflex field segment.
702  * @param p_susp_segment10 Suspense Account Keyflex field segment.
703  * @param p_susp_segment11 Suspense Account Keyflex field segment.
704  * @param p_susp_segment12 Suspense Account Keyflex field segment.
705  * @param p_susp_segment13 Suspense Account Keyflex field segment.
706  * @param p_susp_segment14 Suspense Account Keyflex field segment.
707  * @param p_susp_segment15 Suspense Account Keyflex field segment.
708  * @param p_susp_segment16 Suspense Account Keyflex field segment.
709  * @param p_susp_segment17 Suspense Account Keyflex field segment.
710  * @param p_susp_segment18 Suspense Account Keyflex field segment.
711  * @param p_susp_segment19 Suspense Account Keyflex field segment.
712  * @param p_susp_segment20 Suspense Account Keyflex field segment.
713  * @param p_susp_segment21 Suspense Account Keyflex field segment.
714  * @param p_susp_segment22 Suspense Account Keyflex field segment.
715  * @param p_susp_segment23 Suspense Account Keyflex field segment.
716  * @param p_susp_segment24 Suspense Account Keyflex field segment.
717  * @param p_susp_segment25 Suspense Account Keyflex field segment.
718  * @param p_susp_segment26 Suspense Account Keyflex field segment.
719  * @param p_susp_segment27 Suspense Account Keyflex field segment.
720  * @param p_susp_segment28 Suspense Account Keyflex field segment.
721  * @param p_susp_segment29 Suspense Account Keyflex field segment.
722  * @param p_susp_segment30 Suspense Account Keyflex field segment.
723  * @param p_susp_concat_segments_in Concatenated segments of the Suspense
724  * Account Key FlexField.
725  * @param p_scl_segment1 Soft Coding Keyflex field segment.
729  * @param p_scl_segment5 Soft Coding Keyflex field segment.
726  * @param p_scl_segment2 Soft Coding Keyflex field segment.
727  * @param p_scl_segment3 Soft Coding Keyflex field segment.
728  * @param p_scl_segment4 Soft Coding Keyflex field segment.
730  * @param p_scl_segment6 Soft Coding Keyflex field segment.
731  * @param p_scl_segment7 Soft Coding Keyflex field segment.
732  * @param p_scl_segment8 Soft Coding Keyflex field segment.
733  * @param p_scl_segment9 Soft Coding Keyflex field segment.
734  * @param p_scl_segment10 Soft Coding Keyflex field segment.
735  * @param p_scl_segment11 Soft Coding Keyflex field segment.
736  * @param p_scl_segment12 Soft Coding Keyflex field segment.
737  * @param p_scl_segment13 Soft Coding Keyflex field segment.
738  * @param p_scl_segment14 Soft Coding Keyflex field segment.
739  * @param p_scl_segment15 Soft Coding Keyflex field segment.
740  * @param p_scl_segment16 Soft Coding Keyflex field segment.
741  * @param p_scl_segment17 Soft Coding Keyflex field segment.
742  * @param p_scl_segment18 Soft Coding Keyflex field segment.
743  * @param p_scl_segment19 Soft Coding Keyflex field segment.
744  * @param p_scl_segment20 Soft Coding Keyflex field segment.
745  * @param p_scl_segment21 Soft Coding Keyflex field segment.
746  * @param p_scl_segment22 Soft Coding Keyflex field segment.
747  * @param p_scl_segment23 Soft Coding Keyflex field segment.
748  * @param p_scl_segment24 Soft Coding Keyflex field segment.
749  * @param p_scl_segment25 Soft Coding Keyflex field segment.
750  * @param p_scl_segment26 Soft Coding Keyflex field segment.
751  * @param p_scl_segment27 Soft Coding Keyflex field segment.
752  * @param p_scl_segment28 Soft Coding Keyflex field segment.
753  * @param p_scl_segment29 Soft Coding Keyflex field segment.
754  * @param p_scl_segment30 Soft Coding Keyflex field segment.
755  * @param p_scl_concat_segments_in Concatenated segments of the Soft
756  * Coding Key FlexField.
757  * @param p_workload_shifting_level Work load shifting level.
758  * @param p_payslip_view_date_offset Payslip view date offset.
759  * @param p_payroll_id If p_validate is false, this uniquely identifies the
760  * Payroll created. If p_validate is set to true, this parameter will be null.
761  * @param p_org_pay_method_usage_id If p_validate is false, this uniquely
762  * identifies the Organization Payment Method Usage created. If p_validate is
763  * set to true, this parameter will be null.
764  * @param p_prl_object_version_number If p_validate is false, then set to the
765  * version number of the created payroll. If p_validate is true, then the value
766  * will be null.
767  * @param p_opm_object_version_number If p_validate is false, then set to the
768  * version number of the organisation payment method. If p_validate is true,
769  * then the value will be null.
770  * @param p_prl_effective_start_date If p_validate is false, then set to the
771  * earliest effective
772  * @param p_prl_effective_end_date If p_validate is false, then set to the
773  * effective end date for the created payroll. If p_validate is true, then set
774  * to null.
775  * @param p_opm_effective_start_date If p_validate is false, then set to the
776  * earliest effective
777  * @param p_opm_effective_end_date If p_validate is false, then set to the
778  * effective end date for the organisation payment methods. If p_validate is
779  * true, then set to null.
780  * @param p_comment_id If p_validate is false and comment text was provided,
781  * then will be set to the identifier of the created payroll comment record. If
782  * p_validate is true or no comment text was provided, then will be null.
783  * @param p_cost_alloc_keyflex_id_out If p_validate is false, If a value is
787  * the parameter p_cost_alloc_keyflex_id_in then this will be set to the value
784  * provided to any of the cost allocation segments or p_cost_concat_segments_in
785  * then it will be set to the id that is uniquely identifies the specified
786  * segments in the PAY_ALLOCATION_KEYFLEX table. If any value is provided to
788  * specified. If p_validate is true, then will be null.
789  * @param p_susp_account_keyflex_id_out If p_validate is false, If a value
790  * is provided to any of the suspense account segments or
791  * p_susp_concat_segments_in then it will be set to the id that is uniquely
792  * identifies the specified segments in the PAY_ALLOCATION_KEYFLEX table.If any
793  * value is provided to the parameter p_susp_account_keyflex_id_in then this
794  * will be set to the value specified. If p_validate is true, then will be
795  * null.
796  * @param p_soft_coding_keyflex_id_out If p_validate is false, If a value is
797  * provided to any of the soft coding segments or p_soft_concat_segments_in
798  * then it will be set to the id that is uniquely identifies the specified
799  * segments in the HR_SOFT_CODING_KEYFLEX table. If any value is provided to
800  * the parameter p_cost_alloc_keyflex_id_in then this will be set to the value
801  * specified. If p_validate is true, then will be null.
802  * @param p_cost_concat_segments_out If p_validate is false, If a value is
803  * provided to any of the cost allocation segments then it will be set to the
804  * concatinated string of the specified segments. If any value is provided to
805  * the parameter p_cost_alloc_keyflex_id_in then this will be set to null.
806  * If p_validate is true, then will be null.
807  * @param p_susp_concat_segments_out If p_validate is false, If a value is
808  * provided to any of the suspense account segments then it will be set to the
809  * concatinated string of the specified segments. If any value is provided to
810  * the parameter p_susp_account_keyflex_id_in then this will be set to null. If
811  * p_validate is true, then will be null.
812  * @param p_scl_concat_segments_out If p_validate is false, If a value
813  * is provided to any of the soft coding segments then it will be set to the
814  * concatinated string of the specified segments. If any value is provided to
815  * the parameter p_soft_coding_keyflex_id_in then this will be set to null.
816  * If p_validate is true, then will be null.
817  * @rep:displayname Create Payroll
818  * @rep:category BUSINESS_ENTITY PAY_PAYROLL_DEFINITION
819  * @rep:primaryinstance
820  * @rep:scope public
821  * @rep:lifecycle active
822  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
823 */
824 --
825 -- {End Of Comments}
826 --
827 procedure create_payroll
828 (
829    p_validate                     in   boolean   default false,
830    p_effective_date               in   date,
831    p_payroll_name                 in   varchar2,
832    p_consolidation_set_id         in   number,
833    p_period_type                  in   varchar2,
834    p_first_period_end_date        in   date,
835    p_number_of_years              in   number,
836    p_payroll_type                 in   varchar2  default null,
837    p_pay_date_offset              in   number    default 0,
838    p_direct_deposit_date_offset   in   number    default 0,
839    p_pay_advice_date_offset       in   number    default 0,
840    p_cut_off_date_offset          in   number    default 0,
841    p_midpoint_offset              in   number    default null,
842    p_default_payment_method_id    in   number    default null,
843    p_cost_alloc_keyflex_id_in     in   number    default null,
844    p_susp_account_keyflex_id_in   in   number    default null,
845    p_negative_pay_allowed_flag    in   varchar2  default 'N',
846    p_gl_set_of_books_id           in   number    default null,
847    p_soft_coding_keyflex_id_in    in   number    default null,
848    p_comments                     in   varchar2  default null,
849    p_attribute_category           in   varchar2  default null,
850    p_attribute1                   in   varchar2  default null,
851    p_attribute2                   in   varchar2  default null,
852    p_attribute3                   in   varchar2  default null,
853    p_attribute4                   in   varchar2  default null,
854    p_attribute5                   in   varchar2  default null,
855    p_attribute6                   in   varchar2  default null,
856    p_attribute7                   in   varchar2  default null,
857    p_attribute8                   in   varchar2  default null,
858    p_attribute9                   in   varchar2  default null,
859    p_attribute10                  in   varchar2  default null,
860    p_attribute11                  in   varchar2  default null,
861    p_attribute12                  in   varchar2  default null,
862    p_attribute13                  in   varchar2  default null,
863    p_attribute14                  in   varchar2  default null,
864    p_attribute15                  in   varchar2  default null,
865    p_attribute16                  in   varchar2  default null,
866    p_attribute17                  in   varchar2  default null,
867    p_attribute18                  in   varchar2  default null,
868    p_attribute19                  in   varchar2  default null,
869    p_attribute20                  in   varchar2  default null,
870    p_arrears_flag                 in   varchar2  default 'N',
871    p_period_reset_years           in   varchar2  default null,
872    p_multi_assignments_flag       in   varchar2  default null,
873    p_organization_id              in   number    default null,
874    p_prl_information1         	  in   varchar2  default null,
875    p_prl_information2         	  in   varchar2  default null,
876    p_prl_information3         	  in   varchar2  default null,
880    p_prl_information7         	  in   varchar2  default null,
877    p_prl_information4         	  in   varchar2  default null,
878    p_prl_information5         	  in   varchar2  default null,
879    p_prl_information6         	  in   varchar2  default null,
881    p_prl_information8         	  in   varchar2  default null,
882    p_prl_information9         	  in   varchar2  default null,
883    p_prl_information10        	  in   varchar2  default null,
884    p_prl_information11            in   varchar2  default null,
885    p_prl_information12        	  in   varchar2  default null,
886    p_prl_information13        	  in   varchar2  default null,
887    p_prl_information14        	  in   varchar2  default null,
888    p_prl_information15        	  in   varchar2  default null,
889    p_prl_information16        	  in   varchar2  default null,
890    p_prl_information17        	  in   varchar2  default null,
891    p_prl_information18        	  in   varchar2  default null,
892    p_prl_information19        	  in   varchar2  default null,
893    p_prl_information20        	  in   varchar2  default null,
894    p_prl_information21        	  in   varchar2  default null,
895    p_prl_information22            in   varchar2  default null,
896    p_prl_information23        	  in   varchar2  default null,
897    p_prl_information24        	  in   varchar2  default null,
898    p_prl_information25        	  in   varchar2  default null,
899    p_prl_information26        	  in   varchar2  default null,
900    p_prl_information27        	  in   varchar2  default null,
901    p_prl_information28        	  in   varchar2  default null,
902    p_prl_information29        	  in   varchar2  default null,
903    p_prl_information30            in   varchar2  default null,
904 
905    p_cost_segment1                 in  varchar2 default null,
906    p_cost_segment2                 in  varchar2 default null,
907    p_cost_segment3                 in  varchar2 default null,
908    p_cost_segment4                 in  varchar2 default null,
909    p_cost_segment5                 in  varchar2 default null,
910    p_cost_segment6                 in  varchar2 default null,
911    p_cost_segment7                 in  varchar2 default null,
912    p_cost_segment8                 in  varchar2 default null,
913    p_cost_segment9                 in  varchar2 default null,
914    p_cost_segment10                in  varchar2 default null,
915    p_cost_segment11                in  varchar2 default null,
916    p_cost_segment12                in  varchar2 default null,
917    p_cost_segment13                in  varchar2 default null,
918    p_cost_segment14                in  varchar2 default null,
919    p_cost_segment15                in  varchar2 default null,
920    p_cost_segment16                in  varchar2 default null,
921    p_cost_segment17                in  varchar2 default null,
922    p_cost_segment18                in  varchar2 default null,
923    p_cost_segment19                in  varchar2 default null,
924    p_cost_segment20                in  varchar2 default null,
925    p_cost_segment21                in  varchar2 default null,
926    p_cost_segment22                in  varchar2 default null,
927    p_cost_segment23                in  varchar2 default null,
928    p_cost_segment24                in  varchar2 default null,
929    p_cost_segment25                in  varchar2 default null,
930    p_cost_segment26                in  varchar2 default null,
931    p_cost_segment27                in  varchar2 default null,
932    p_cost_segment28                in  varchar2 default null,
933    p_cost_segment29                in  varchar2 default null,
934    p_cost_segment30                in  varchar2 default null,
935    p_cost_concat_segments_in       in  varchar2 default null,
936 
937    p_susp_segment1                 in  varchar2 default null,
938    p_susp_segment2                 in  varchar2 default null,
939    p_susp_segment3                 in  varchar2 default null,
940    p_susp_segment4                 in  varchar2 default null,
941    p_susp_segment5                 in  varchar2 default null,
945    p_susp_segment9                 in  varchar2 default null,
942    p_susp_segment6                 in  varchar2 default null,
943    p_susp_segment7                 in  varchar2 default null,
944    p_susp_segment8                 in  varchar2 default null,
946    p_susp_segment10                in  varchar2 default null,
947    p_susp_segment11                in  varchar2 default null,
948    p_susp_segment12                in  varchar2 default null,
949    p_susp_segment13                in  varchar2 default null,
950    p_susp_segment14                in  varchar2 default null,
951    p_susp_segment15                in  varchar2 default null,
952    p_susp_segment16                in  varchar2 default null,
953    p_susp_segment17                in  varchar2 default null,
954    p_susp_segment18                in  varchar2 default null,
955    p_susp_segment19                in  varchar2 default null,
956    p_susp_segment20                in  varchar2 default null,
957    p_susp_segment21                in  varchar2 default null,
958    p_susp_segment22                in  varchar2 default null,
959    p_susp_segment23                in  varchar2 default null,
960    p_susp_segment24                in  varchar2 default null,
961    p_susp_segment25                in  varchar2 default null,
962    p_susp_segment26                in  varchar2 default null,
963    p_susp_segment27                in  varchar2 default null,
964    p_susp_segment28                in  varchar2 default null,
965    p_susp_segment29                in  varchar2 default null,
966    p_susp_segment30                in  varchar2 default null,
967    p_susp_concat_segments_in       in  varchar2 default null,
968 
969    p_scl_segment1                 in  varchar2 default null,
970    p_scl_segment2                 in  varchar2 default null,
971    p_scl_segment3                 in  varchar2 default null,
972    p_scl_segment4                 in  varchar2 default null,
973    p_scl_segment5                 in  varchar2 default null,
974    p_scl_segment6                 in  varchar2 default null,
975    p_scl_segment7                 in  varchar2 default null,
976    p_scl_segment8                 in  varchar2 default null,
977    p_scl_segment9                 in  varchar2 default null,
978    p_scl_segment10                in  varchar2 default null,
979    p_scl_segment11                in  varchar2 default null,
980    p_scl_segment12                in  varchar2 default null,
981    p_scl_segment13                in  varchar2 default null,
982    p_scl_segment14                in  varchar2 default null,
983    p_scl_segment15                in  varchar2 default null,
984    p_scl_segment16                in  varchar2 default null,
985    p_scl_segment17                in  varchar2 default null,
986    p_scl_segment18                in  varchar2 default null,
987    p_scl_segment19                in  varchar2 default null,
988    p_scl_segment20                in  varchar2 default null,
989    p_scl_segment21                in  varchar2 default null,
990    p_scl_segment22                in  varchar2 default null,
991    p_scl_segment23                in  varchar2 default null,
992    p_scl_segment24                in  varchar2 default null,
993    p_scl_segment25                in  varchar2 default null,
994    p_scl_segment26                in  varchar2 default null,
995    p_scl_segment27                in  varchar2 default null,
996    p_scl_segment28                in  varchar2 default null,
997    p_scl_segment29                in  varchar2 default null,
998    p_scl_segment30                in  varchar2 default null,
999    p_scl_concat_segments_in       in  varchar2 default null,
1000 
1001    p_workload_shifting_level      in  varchar2 default 'N',
1002    p_payslip_view_date_offset     in  number   default null,
1003 
1004    p_payroll_id                   out  nocopy number,
1005    p_org_pay_method_usage_id      out  nocopy number,
1006    p_prl_object_version_number    out  nocopy number,
1007    p_opm_object_version_number    out  nocopy number,
1008    p_prl_effective_start_date     out  nocopy date,
1009    p_prl_effective_end_date       out  nocopy date,
1010    p_opm_effective_start_date     out  nocopy date,
1011    p_opm_effective_end_date       out  nocopy date,
1012    p_comment_id                   out  nocopy number,
1013 
1014    p_cost_alloc_keyflex_id_out    out  nocopy number,
1015    p_susp_account_keyflex_id_out  out  nocopy number,
1016    p_soft_coding_keyflex_id_out   out  nocopy number,
1017 
1018    p_cost_concat_segments_out     out nocopy varchar2,
1019    p_susp_concat_segments_out     out nocopy varchar2,
1020    p_scl_concat_segments_out      out nocopy varchar2
1021 
1022    );
1023 
1024 --
1025 -- ----------------------------------------------------------------------------
1026 -- |------------------------------< update_payroll >--------------------------|
1027 -- ----------------------------------------------------------------------------
1028 --
1029 -- {Start Of Comments}
1030 /*#
1031  * This Business Process make changes to the definition of the payroll as
1032  * specified by parameter values passed to it.
1033  *
1034  *
1035  * <p><b>Licensing</b><br>
1039  * Relevant Payroll, payment methods and consolidation sets must be defined
1036  * This API is licensed for use with Human Resources.
1037  *
1038  * <p><b>Prerequisites</b><br>
1040  *
1041  * <p><b>Post Success</b><br>
1042  * The payroll and time periods will be successfully updated into the
1043  * database.
1044  *
1045  * <p><b>Post Failure</b><br>
1046  * The payroll will not be updated and an error will be raised
1047  * @param p_validate If true, then validation alone will be performed and the
1048  * database will remain unchanged. If false and all validation checks pass,
1049  * then the database will be modified.
1050  * @param p_effective_date Determines when the DateTrack operation comes into
1051  * force.
1052  * @param p_datetrack_mode Indicates which DateTrack mode to use when updating
1053  * the record. You must set to either UPDATE, CORRECTION, UPDATE_OVERRIDE or
1054  * UPDATE_CHANGE_INSERT. Modes available for use with a particular record
1055  * depend on the dates of previous record changes and the effective date of
1056  * this change.
1057  * @param p_payroll_name New payroll name.
1058  * @param p_number_of_years Number of years. It is used to create time
1059  * periods for the payroll.
1060  * @param p_default_payment_method_id Identifier for default payment method for
1061  * this payroll
1062  * @param p_consolidation_set_id Consolidation set identifier for this payroll
1063  * @param p_cost_alloc_keyflex_id_in Identifier for Cost allocation key
1064  * flexfield for this payroll
1065  * @param p_susp_account_keyflex_id_in Identifier of Suspense account key
1066  * flexfield for this payroll
1067  * @param p_negative_pay_allowed_flag Flag to indicate if negative pay allowed
1068  * @param p_soft_coding_keyflex_id_in Identifier for soft coding key flexfield for
1069  * this payroll
1070  * @param p_comments Payroll comment text
1071  * @param p_attribute_category This context value determines which flexfield
1072  * structure to use with the descriptive flexfield segments.
1073  * @param p_attribute1 Descriptive flexfield segment.
1074  * @param p_attribute2 Descriptive flexfield segment.
1075  * @param p_attribute3 Descriptive flexfield segment.
1076  * @param p_attribute4 Descriptive flexfield segment.
1077  * @param p_attribute5 Descriptive flexfield segment.
1078  * @param p_attribute6 Descriptive flexfield segment.
1079  * @param p_attribute7 Descriptive flexfield segment.
1080  * @param p_attribute8 Descriptive flexfield segment.
1081  * @param p_attribute9 Descriptive flexfield segment.
1082  * @param p_attribute10 Descriptive flexfield segment.
1083  * @param p_attribute11 Descriptive flexfield segment.
1084  * @param p_attribute12 Descriptive flexfield segment.
1085  * @param p_attribute13 Descriptive flexfield segment.
1086  * @param p_attribute14 Descriptive flexfield segment.
1087  * @param p_attribute15 Descriptive flexfield segment.
1088  * @param p_attribute16 Descriptive flexfield segment.
1089  * @param p_attribute17 Descriptive flexfield segment.
1090  * @param p_attribute18 Descriptive flexfield segment.
1091  * @param p_attribute19 Descriptive flexfield segment.
1092  * @param p_attribute20 Descriptive flexfield segment.
1093  * @param p_arrears_flag Flag to indicate if arrears payroll
1094  * @param p_multi_assignments_flag Flag to indicate if multi Assignment payroll
1095  * @param p_prl_information1 Developer Descriptive flexfield segment.
1096  * @param p_prl_information2 Developer Descriptive flexfield segment.
1097  * @param p_prl_information3 Developer Descriptive flexfield segment.
1098  * @param p_prl_information4 Developer Descriptive flexfield segment.
1099  * @param p_prl_information5 Developer Descriptive flexfield segment.
1100  * @param p_prl_information6 Developer Descriptive flexfield segment.
1101  * @param p_prl_information7 Developer Descriptive flexfield segment.
1102  * @param p_prl_information8 Developer Descriptive flexfield segment.
1103  * @param p_prl_information9 Developer Descriptive flexfield segment.
1104  * @param p_prl_information10 Developer Descriptive flexfield segment.
1105  * @param p_prl_information11 Developer Descriptive flexfield segment.
1106  * @param p_prl_information12 Developer Descriptive flexfield segment.
1107  * @param p_prl_information13 Developer Descriptive flexfield segment.
1108  * @param p_prl_information14 Developer Descriptive flexfield segment.
1109  * @param p_prl_information15 Developer Descriptive flexfield segment.
1110  * @param p_prl_information16 Developer Descriptive flexfield segment.
1111  * @param p_prl_information17 Developer Descriptive flexfield segment.
1112  * @param p_prl_information18 Developer Descriptive flexfield segment.
1113  * @param p_prl_information19 Developer Descriptive flexfield segment.
1114  * @param p_prl_information20 Developer Descriptive flexfield segment.
1115  * @param p_prl_information21 Developer Descriptive flexfield segment.
1116  * @param p_prl_information22 Developer Descriptive flexfield segment.
1117  * @param p_prl_information23 Developer Descriptive flexfield segment.
1118  * @param p_prl_information24 Developer Descriptive flexfield segment.
1119  * @param p_prl_information25 Developer Descriptive flexfield segment.
1120  * @param p_prl_information26 Developer Descriptive flexfield segment.
1121  * @param p_prl_information27 Developer Descriptive flexfield segment.
1122  * @param p_prl_information28 Developer Descriptive flexfield segment.
1123  * @param p_prl_information29 Developer Descriptive flexfield segment.
1124  * @param p_prl_information30 Developer Descriptive flexfield segment.
1125  * @param p_cost_segment1 Cost Allocation Keyflex field segment.
1126  * @param p_cost_segment2 Cost Allocation Keyflex field segment.
1127  * @param p_cost_segment3 Cost Allocation Keyflex field segment.
1128  * @param p_cost_segment4 Cost Allocation Keyflex field segment.
1129  * @param p_cost_segment5 Cost Allocation Keyflex field segment.
1130  * @param p_cost_segment6 Cost Allocation Keyflex field segment.
1131  * @param p_cost_segment7 Cost Allocation Keyflex field segment.
1132  * @param p_cost_segment8 Cost Allocation Keyflex field segment.
1133  * @param p_cost_segment9 Cost Allocation Keyflex field segment.
1134  * @param p_cost_segment10 Cost Allocation Keyflex field segment.
1135  * @param p_cost_segment11 Cost Allocation Keyflex field segment.
1136  * @param p_cost_segment12 Cost Allocation Keyflex field segment.
1137  * @param p_cost_segment13 Cost Allocation Keyflex field segment.
1138  * @param p_cost_segment14 Cost Allocation Keyflex field segment.
1139  * @param p_cost_segment15 Cost Allocation Keyflex field segment.
1140  * @param p_cost_segment16 Cost Allocation Keyflex field segment.
1141  * @param p_cost_segment17 Cost Allocation Keyflex field segment.
1142  * @param p_cost_segment18 Cost Allocation Keyflex field segment.
1143  * @param p_cost_segment19 Cost Allocation Keyflex field segment.
1144  * @param p_cost_segment20 Cost Allocation Keyflex field segment.
1145  * @param p_cost_segment21 Cost Allocation Keyflex field segment.
1146  * @param p_cost_segment22 Cost Allocation Keyflex field segment.
1147  * @param p_cost_segment23 Cost Allocation Keyflex field segment.
1148  * @param p_cost_segment24 Cost Allocation Keyflex field segment.
1149  * @param p_cost_segment25 Cost Allocation Keyflex field segment.
1150  * @param p_cost_segment26 Cost Allocation Keyflex field segment.
1151  * @param p_cost_segment27 Cost Allocation Keyflex field segment.
1152  * @param p_cost_segment28 Cost Allocation Keyflex field segment.
1153  * @param p_cost_segment29 Cost Allocation Keyflex field segment.
1154  * @param p_cost_segment30 Cost Allocation Keyflex field segment.
1155  * @param p_cost_concat_segments_in Concatenated segments of the Cost
1156  * Allocation Key FlexField.
1157  * @param p_susp_segment1 Suspense Account Keyflex field segment.
1158  * @param p_susp_segment2 Suspense Account Keyflex field segment.
1159  * @param p_susp_segment3 Suspense Account Keyflex field segment.
1160  * @param p_susp_segment4 Suspense Account Keyflex field segment.
1161  * @param p_susp_segment5 Suspense Account Keyflex field segment.
1162  * @param p_susp_segment6 Suspense Account Keyflex field segment.
1163  * @param p_susp_segment7 Suspense Account Keyflex field segment.
1164  * @param p_susp_segment8 Suspense Account Keyflex field segment.
1165  * @param p_susp_segment9 Suspense Account Keyflex field segment.
1169  * @param p_susp_segment13 Suspense Account Keyflex field segment.
1166  * @param p_susp_segment10 Suspense Account Keyflex field segment.
1167  * @param p_susp_segment11 Suspense Account Keyflex field segment.
1168  * @param p_susp_segment12 Suspense Account Keyflex field segment.
1170  * @param p_susp_segment14 Suspense Account Keyflex field segment.
1171  * @param p_susp_segment15 Suspense Account Keyflex field segment.
1172  * @param p_susp_segment16 Suspense Account Keyflex field segment.
1173  * @param p_susp_segment17 Suspense Account Keyflex field segment.
1174  * @param p_susp_segment18 Suspense Account Keyflex field segment.
1175  * @param p_susp_segment19 Suspense Account Keyflex field segment.
1176  * @param p_susp_segment20 Suspense Account Keyflex field segment.
1177  * @param p_susp_segment21 Suspense Account Keyflex field segment.
1178  * @param p_susp_segment22 Suspense Account Keyflex field segment.
1179  * @param p_susp_segment23 Suspense Account Keyflex field segment.
1180  * @param p_susp_segment24 Suspense Account Keyflex field segment.
1181  * @param p_susp_segment25 Suspense Account Keyflex field segment.
1182  * @param p_susp_segment26 Suspense Account Keyflex field segment.
1183  * @param p_susp_segment27 Suspense Account Keyflex field segment.
1184  * @param p_susp_segment28 Suspense Account Keyflex field segment.
1185  * @param p_susp_segment29 Suspense Account Keyflex field segment.
1186  * @param p_susp_segment30 Suspense Account Keyflex field segment.
1187  * @param p_susp_concat_segments_in Concatenated segments of the Suspense
1188  * Account Key FlexField.
1189  * @param p_scl_segment1 Soft Coding Keyflex field segment.
1190  * @param p_scl_segment2 Soft Coding Keyflex field segment.
1191  * @param p_scl_segment3 Soft Coding Keyflex field segment.
1192  * @param p_scl_segment4 Soft Coding Keyflex field segment.
1193  * @param p_scl_segment5 Soft Coding Keyflex field segment.
1194  * @param p_scl_segment6 Soft Coding Keyflex field segment.
1195  * @param p_scl_segment7 Soft Coding Keyflex field segment.
1196  * @param p_scl_segment8 Soft Coding Keyflex field segment.
1197  * @param p_scl_segment9 Soft Coding Keyflex field segment.
1198  * @param p_scl_segment10 Soft Coding Keyflex field segment.
1199  * @param p_scl_segment11 Soft Coding Keyflex field segment.
1200  * @param p_scl_segment12 Soft Coding Keyflex field segment.
1201  * @param p_scl_segment13 Soft Coding Keyflex field segment.
1202  * @param p_scl_segment14 Soft Coding Keyflex field segment.
1203  * @param p_scl_segment15 Soft Coding Keyflex field segment.
1204  * @param p_scl_segment16 Soft Coding Keyflex field segment.
1205  * @param p_scl_segment17 Soft Coding Keyflex field segment.
1206  * @param p_scl_segment18 Soft Coding Keyflex field segment.
1207  * @param p_scl_segment19 Soft Coding Keyflex field segment.
1208  * @param p_scl_segment20 Soft Coding Keyflex field segment.
1209  * @param p_scl_segment21 Soft Coding Keyflex field segment.
1210  * @param p_scl_segment22 Soft Coding Keyflex field segment.
1211  * @param p_scl_segment23 Soft Coding Keyflex field segment.
1212  * @param p_scl_segment24 Soft Coding Keyflex field segment.
1213  * @param p_scl_segment25 Soft Coding Keyflex field segment.
1214  * @param p_scl_segment26 Soft Coding Keyflex field segment.
1215  * @param p_scl_segment27 Soft Coding Keyflex field segment.
1216  * @param p_scl_segment28 Soft Coding Keyflex field segment.
1217  * @param p_scl_segment29 Soft Coding Keyflex field segment.
1218  * @param p_scl_segment30 Soft Coding Keyflex field segment.
1219  * @param p_scl_concat_segments_in Concatenated segments of the Soft
1220  * Coding Key FlexField.
1221  * @param p_workload_shifting_level Work load shifting level.
1222  * @param p_payslip_view_date_offset Payslip view date offset.
1223  * @param p_payroll_id If p_validate is false, this uniquely identifies the
1224  * Payroll to be updated. If p_validate is set to true, this parameter will be
1225  * null.
1226  * @param p_object_version_number If p_validate is false, then set to the
1227  * version number of the updated payroll if the payroll is updated.
1228  * If p_validate is true, then the value will be null.
1229  * @param p_effective_start_date If p_validate is false, then set to the
1230  * earliest effective
1231  * @param p_effective_end_date If p_validate is false, then set to the
1232  * effective end date for the created payroll. If p_validate is true, then set
1233  * to null.
1234  * @param p_comment_id If p_validate is false and comment text was provided,
1235  * then will be set to the identifier of the created payroll comment record. If
1236  * p_validate is true or no comment text was provided, then will be null.
1237  * @param p_cost_alloc_keyflex_id_out If p_validate is false, If a value is
1238  * provided to any of the cost allocation segments or p_cost_concat_segments_in
1239  * then it will be set to the id that is uniquely identifies the specified
1240  * segments in the PAY_ALLOCATION_KEYFLEX table. If any value is provided to
1241  * the parameter p_cost_alloc_keyflex_id_in then this will be set to the value
1242  * specified. If p_validate is true, then will be null.
1243  * @param p_susp_account_keyflex_id_out If p_validate is false, If a value
1244  * is provided to any of the suspense account segments or
1245  * p_susp_concat_segments_in then it will be set to the id that is uniquely
1246  * identifies the specified segments in the PAY_ALLOCATION_KEYFLEX table.If any
1247  * value is provided to the parameter p_susp_account_keyflex_id_in then this
1248  * will be set to the value specified. If p_validate is true, then will be
1249  * null.
1250  * @param p_soft_coding_keyflex_id_out If p_validate is false, If a value is
1251  * provided to any of the soft coding segments or p_soft_concat_segments_in
1252  * then it will be set to the id that is uniquely identifies the specified
1253  * segments in the HR_SOFT_CODING_KEYFLEX table. If any value is provided to
1257  * provided to any of the cost allocation segments then it will be set to the
1254  * the parameter p_cost_alloc_keyflex_id_in then this will be set to the value
1255  * specified. If p_validate is true, then will be null.
1256  * @param p_cost_concat_segments_out If p_validate is false, If a value is
1258  * concatinated string of the specified segments. If any value is provided to
1259  * the parameter p_cost_alloc_keyflex_id_in then this will be set to null.
1260  * If p_validate is true, then will be null.
1261  * @param p_susp_concat_segments_out If p_validate is false, If a value is
1262  * provided to any of the suspense account segments then it will be set to the
1263  * concatinated string of the specified segments. If any value is provided to
1264  * the parameter p_susp_account_keyflex_id_in then this will be set to null. If
1265  * p_validate is true, then will be null.
1266  * @param p_scl_concat_segments_out If p_validate is false, If a value
1267  * is provided to any of the soft coding segments then it will be set to the
1268  * concatinated string of the specified segments. If any value is provided to
1269  * the parameter p_soft_coding_keyflex_id_in then this will be set to null.
1270  * If p_validate is true, then will be null.
1271  * @rep:displayname Update Payroll
1272  * @rep:category BUSINESS_ENTITY PAY_PAYROLL_DEFINITION
1273  * @rep:primaryinstance
1274  * @rep:scope public
1275  * @rep:lifecycle active
1276  * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
1277 */
1278 --
1279 -- {End Of Comments}
1280 --
1281    procedure update_payroll
1282    (
1283    p_validate                       in     boolean   default false,
1284    p_effective_date                 in     date,
1285    p_datetrack_mode                 in     varchar2,
1286    p_payroll_name                   in     varchar2  default hr_api.g_varchar2,
1287    p_number_of_years                in     number    default hr_api.g_number,
1288    p_default_payment_method_id      in     number    default hr_api.g_number,
1289    p_consolidation_set_id           in     number    default hr_api.g_number,
1290    p_cost_alloc_keyflex_id_in       in    number    default hr_api.g_number,
1291    p_susp_account_keyflex_id_in     in    number    default hr_api.g_number,
1292    p_negative_pay_allowed_flag      in     varchar2  default hr_api.g_varchar2,
1293    p_soft_coding_keyflex_id_in      in     number    default hr_api.g_number,
1294    p_comments                       in     varchar2  default hr_api.g_varchar2,
1295    p_attribute_category           in     varchar2  default hr_api.g_varchar2,
1296    p_attribute1                   in     varchar2  default hr_api.g_varchar2,
1297    p_attribute2                   in     varchar2  default hr_api.g_varchar2,
1298    p_attribute3                   in     varchar2  default hr_api.g_varchar2,
1299    p_attribute4                   in     varchar2  default hr_api.g_varchar2,
1300    p_attribute5                   in     varchar2  default hr_api.g_varchar2,
1301    p_attribute6                   in     varchar2  default hr_api.g_varchar2,
1302    p_attribute7                   in     varchar2  default hr_api.g_varchar2,
1303    p_attribute8                   in     varchar2  default hr_api.g_varchar2,
1304    p_attribute9                   in     varchar2  default hr_api.g_varchar2,
1305    p_attribute10                  in     varchar2  default hr_api.g_varchar2,
1306    p_attribute11                  in     varchar2  default hr_api.g_varchar2,
1307    p_attribute12                  in     varchar2  default hr_api.g_varchar2,
1308    p_attribute13                  in     varchar2  default hr_api.g_varchar2,
1309    p_attribute14                  in     varchar2  default hr_api.g_varchar2,
1310    p_attribute15                  in     varchar2  default hr_api.g_varchar2,
1311    p_attribute16                  in     varchar2  default hr_api.g_varchar2,
1312    p_attribute17                  in     varchar2  default hr_api.g_varchar2,
1313    p_attribute18                  in     varchar2  default hr_api.g_varchar2,
1314    p_attribute19                  in     varchar2  default hr_api.g_varchar2,
1315    p_attribute20                  in     varchar2  default hr_api.g_varchar2,
1316    p_arrears_flag                 in     varchar2  default hr_api.g_varchar2,
1317    p_multi_assignments_flag       in     varchar2  default hr_api.g_varchar2,
1318    p_prl_information1         	  in     varchar2  default hr_api.g_varchar2,
1319    p_prl_information2         	  in     varchar2  default hr_api.g_varchar2,
1320    p_prl_information3         	  in     varchar2  default hr_api.g_varchar2,
1321    p_prl_information4         	  in     varchar2  default hr_api.g_varchar2,
1322    p_prl_information5         	  in     varchar2  default hr_api.g_varchar2,
1323    p_prl_information6         	  in     varchar2  default hr_api.g_varchar2,
1324    p_prl_information7         	  in     varchar2  default hr_api.g_varchar2,
1325    p_prl_information8         	  in     varchar2  default hr_api.g_varchar2,
1326    p_prl_information9         	  in     varchar2  default hr_api.g_varchar2,
1327    p_prl_information10        	  in     varchar2  default hr_api.g_varchar2,
1328    p_prl_information11            in     varchar2  default hr_api.g_varchar2,
1329    p_prl_information12        	  in     varchar2  default hr_api.g_varchar2,
1330    p_prl_information13        	  in     varchar2  default hr_api.g_varchar2,
1331    p_prl_information14        	  in     varchar2  default hr_api.g_varchar2,
1332    p_prl_information15        	  in     varchar2  default hr_api.g_varchar2,
1333    p_prl_information16        	  in     varchar2  default hr_api.g_varchar2,
1334    p_prl_information17        	  in     varchar2  default hr_api.g_varchar2,
1335    p_prl_information18        	  in     varchar2  default hr_api.g_varchar2,
1336    p_prl_information19        	  in     varchar2  default hr_api.g_varchar2,
1340    p_prl_information23        	  in     varchar2  default hr_api.g_varchar2,
1337    p_prl_information20        	  in     varchar2  default hr_api.g_varchar2,
1338    p_prl_information21        	  in     varchar2  default hr_api.g_varchar2,
1339    p_prl_information22            in     varchar2  default hr_api.g_varchar2,
1341    p_prl_information24        	  in     varchar2  default hr_api.g_varchar2,
1342    p_prl_information25        	  in     varchar2  default hr_api.g_varchar2,
1343    p_prl_information26        	  in     varchar2  default hr_api.g_varchar2,
1344    p_prl_information27        	  in     varchar2  default hr_api.g_varchar2,
1345    p_prl_information28        	  in     varchar2  default hr_api.g_varchar2,
1346    p_prl_information29        	  in     varchar2  default hr_api.g_varchar2,
1347    p_prl_information30            in     varchar2  default hr_api.g_varchar2,
1348 
1349    p_cost_segment1                 in  varchar2 default hr_api.g_varchar2,
1350    p_cost_segment2                 in  varchar2 default hr_api.g_varchar2,
1351    p_cost_segment3                 in  varchar2 default hr_api.g_varchar2,
1352    p_cost_segment4                 in  varchar2 default hr_api.g_varchar2,
1353    p_cost_segment5                 in  varchar2 default hr_api.g_varchar2,
1354    p_cost_segment6                 in  varchar2 default hr_api.g_varchar2,
1355    p_cost_segment7                 in  varchar2 default hr_api.g_varchar2,
1356    p_cost_segment8                 in  varchar2 default hr_api.g_varchar2,
1357    p_cost_segment9                 in  varchar2 default hr_api.g_varchar2,
1358    p_cost_segment10                in  varchar2 default hr_api.g_varchar2,
1359    p_cost_segment11                in  varchar2 default hr_api.g_varchar2,
1360    p_cost_segment12                in  varchar2 default hr_api.g_varchar2,
1361    p_cost_segment13                in  varchar2 default hr_api.g_varchar2,
1362    p_cost_segment14                in  varchar2 default hr_api.g_varchar2,
1363    p_cost_segment15                in  varchar2 default hr_api.g_varchar2,
1364    p_cost_segment16                in  varchar2 default hr_api.g_varchar2,
1365    p_cost_segment17                in  varchar2 default hr_api.g_varchar2,
1366    p_cost_segment18                in  varchar2 default hr_api.g_varchar2,
1367    p_cost_segment19                in  varchar2 default hr_api.g_varchar2,
1368    p_cost_segment20                in  varchar2 default hr_api.g_varchar2,
1369    p_cost_segment21                in  varchar2 default hr_api.g_varchar2,
1370    p_cost_segment22                in  varchar2 default hr_api.g_varchar2,
1371    p_cost_segment23                in  varchar2 default hr_api.g_varchar2,
1372    p_cost_segment24                in  varchar2 default hr_api.g_varchar2,
1373    p_cost_segment25                in  varchar2 default hr_api.g_varchar2,
1374    p_cost_segment26                in  varchar2 default hr_api.g_varchar2,
1375    p_cost_segment27                in  varchar2 default hr_api.g_varchar2,
1376    p_cost_segment28                in  varchar2 default hr_api.g_varchar2,
1377    p_cost_segment29                in  varchar2 default hr_api.g_varchar2,
1378    p_cost_segment30                in  varchar2 default hr_api.g_varchar2,
1379    p_cost_concat_segments_in       in  varchar2 default hr_api.g_varchar2,
1380 
1381    p_susp_segment1                 in  varchar2 default hr_api.g_varchar2,
1382    p_susp_segment2                 in  varchar2 default hr_api.g_varchar2,
1383    p_susp_segment3                 in  varchar2 default hr_api.g_varchar2,
1384    p_susp_segment4                 in  varchar2 default hr_api.g_varchar2,
1385    p_susp_segment5                 in  varchar2 default hr_api.g_varchar2,
1386    p_susp_segment6                 in  varchar2 default hr_api.g_varchar2,
1387    p_susp_segment7                 in  varchar2 default hr_api.g_varchar2,
1388    p_susp_segment8                 in  varchar2 default hr_api.g_varchar2,
1389    p_susp_segment9                 in  varchar2 default hr_api.g_varchar2,
1390    p_susp_segment10                in  varchar2 default hr_api.g_varchar2,
1391    p_susp_segment11                in  varchar2 default hr_api.g_varchar2,
1392    p_susp_segment12                in  varchar2 default hr_api.g_varchar2,
1393    p_susp_segment13                in  varchar2 default hr_api.g_varchar2,
1394    p_susp_segment14                in  varchar2 default hr_api.g_varchar2,
1395    p_susp_segment15                in  varchar2 default hr_api.g_varchar2,
1396    p_susp_segment16                in  varchar2 default hr_api.g_varchar2,
1397    p_susp_segment17                in  varchar2 default hr_api.g_varchar2,
1398    p_susp_segment18                in  varchar2 default hr_api.g_varchar2,
1399    p_susp_segment19                in  varchar2 default hr_api.g_varchar2,
1400    p_susp_segment20                in  varchar2 default hr_api.g_varchar2,
1401    p_susp_segment21                in  varchar2 default hr_api.g_varchar2,
1402    p_susp_segment22                in  varchar2 default hr_api.g_varchar2,
1403    p_susp_segment23                in  varchar2 default hr_api.g_varchar2,
1404    p_susp_segment24                in  varchar2 default hr_api.g_varchar2,
1405    p_susp_segment25                in  varchar2 default hr_api.g_varchar2,
1406    p_susp_segment26                in  varchar2 default hr_api.g_varchar2,
1407    p_susp_segment27                in  varchar2 default hr_api.g_varchar2,
1408    p_susp_segment28                in  varchar2 default hr_api.g_varchar2,
1409    p_susp_segment29                in  varchar2 default hr_api.g_varchar2,
1410    p_susp_segment30                in  varchar2 default hr_api.g_varchar2,
1411    p_susp_concat_segments_in       in  varchar2 default hr_api.g_varchar2,
1412 
1413    p_scl_segment1                 in  varchar2 default hr_api.g_varchar2,
1414    p_scl_segment2                 in  varchar2 default hr_api.g_varchar2,
1418    p_scl_segment6                 in  varchar2 default hr_api.g_varchar2,
1415    p_scl_segment3                 in  varchar2 default hr_api.g_varchar2,
1416    p_scl_segment4                 in  varchar2 default hr_api.g_varchar2,
1417    p_scl_segment5                 in  varchar2 default hr_api.g_varchar2,
1419    p_scl_segment7                 in  varchar2 default hr_api.g_varchar2,
1420    p_scl_segment8                 in  varchar2 default hr_api.g_varchar2,
1421    p_scl_segment9                 in  varchar2 default hr_api.g_varchar2,
1422    p_scl_segment10                in  varchar2 default hr_api.g_varchar2,
1423    p_scl_segment11                in  varchar2 default hr_api.g_varchar2,
1424    p_scl_segment12                in  varchar2 default hr_api.g_varchar2,
1425    p_scl_segment13                in  varchar2 default hr_api.g_varchar2,
1426    p_scl_segment14                in  varchar2 default hr_api.g_varchar2,
1427    p_scl_segment15                in  varchar2 default hr_api.g_varchar2,
1428    p_scl_segment16                in  varchar2 default hr_api.g_varchar2,
1429    p_scl_segment17                in  varchar2 default hr_api.g_varchar2,
1430    p_scl_segment18                in  varchar2 default hr_api.g_varchar2,
1431    p_scl_segment19                in  varchar2 default hr_api.g_varchar2,
1432    p_scl_segment20                in  varchar2 default hr_api.g_varchar2,
1433    p_scl_segment21                in  varchar2 default hr_api.g_varchar2,
1434    p_scl_segment22                in  varchar2 default hr_api.g_varchar2,
1435    p_scl_segment23                in  varchar2 default hr_api.g_varchar2,
1436    p_scl_segment24                in  varchar2 default hr_api.g_varchar2,
1437    p_scl_segment25                in  varchar2 default hr_api.g_varchar2,
1438    p_scl_segment26                in  varchar2 default hr_api.g_varchar2,
1439    p_scl_segment27                in  varchar2 default hr_api.g_varchar2,
1440    p_scl_segment28                in  varchar2 default hr_api.g_varchar2,
1441    p_scl_segment29                in  varchar2 default hr_api.g_varchar2,
1442    p_scl_segment30                in  varchar2 default hr_api.g_varchar2,
1443    p_scl_concat_segments_in       in  varchar2 default hr_api.g_varchar2,
1444 
1445    p_workload_shifting_level      in  varchar2 default hr_api.g_varchar2,
1446    p_payslip_view_date_offset     in  number   default hr_api.g_number,
1447 
1448    p_payroll_id                   in out nocopy number,
1449    p_object_version_number        in out nocopy number,
1450 
1451    p_effective_start_date         out  nocopy date,
1452    p_effective_end_date           out  nocopy date,
1453    p_cost_alloc_keyflex_id_out    out  nocopy number,
1454    p_susp_account_keyflex_id_out  out  nocopy number,
1455    p_soft_coding_keyflex_id_out   out  nocopy number,
1456 
1457    p_comment_id                   out  nocopy number,
1458    p_cost_concat_segments_out     out  nocopy varchar2,
1459    p_susp_concat_segments_out     out  nocopy varchar2,
1460    p_scl_concat_segments_out      out  nocopy varchar2
1461 
1462    );
1463 end pay_payroll_api;