1 Package PAY_COST_ALLOCATION_API as
2 /* $Header: pycalapi.pkh 120.2 2005/11/11 07:06:59 adkumar noship $ */
3 /*#
4 * This package contains the Cost Allocation API.
5 * @rep:scope public
6 * @rep:product per
7 * @rep:displayname Cost Allocation
8 */
9 --
10 -- ----------------------------------------------------------------------------
11 -- |--------------------------< create_cost_allocation >----------------------|
12 -- ----------------------------------------------------------------------------
13 --
14 -- {Start Of Comments}
15 /*#
16 * This API creates new cost allocations.
17 *
18 *
19 * <p><b>Licensing</b><br>
20 * This API is licensed for use with Human Resources.
21 *
22 * <p><b>Prerequisites</b><br>
23 * Requires a valid assignment.
24 *
25 * <p><b>Post Success</b><br>
26 * The cost allocation will be successfully inserted into the database.
27 *
28 * <p><b>Post Failure</b><br>
29 * The API does not create the cost allocation and raises an error.
30 * @param p_validate If true, then validation alone will be performed and the
31 * database will remain unchanged. If false and all validation checks pass,
32 * then the database will be modified.
33 * @param p_effective_date Determines when the DateTrack operation comes into
34 * force.
35 * @param p_assignment_id {@rep:casecolumn PER_ALL_ASSIGNMENTS_F.ASSIGNMENT_ID}
36 * @param p_proportion The proportion of costs allocated for this allocation.
37 * (NB allocations should total 100 for each assignment)
38 * @param p_business_group_id The cost allocations business group id
39 * @param p_segment1 Key flexfield segment.
40 * @param p_segment2 Key flexfield segment.
41 * @param p_segment3 Key flexfield segment.
42 * @param p_segment4 Key flexfield segment.
43 * @param p_segment5 Key flexfield segment.
44 * @param p_segment6 Key flexfield segment.
45 * @param p_segment7 Key flexfield segment.
46 * @param p_segment8 Key flexfield segment.
47 * @param p_segment9 Key flexfield segment.
48 * @param p_segment10 Key flexfield segment.
49 * @param p_segment11 Key flexfield segment.
50 * @param p_segment12 Key flexfield segment.
51 * @param p_segment13 Key flexfield segment.
52 * @param p_segment14 Key flexfield segment.
53 * @param p_segment15 Key flexfield segment.
54 * @param p_segment16 Key flexfield segment.
55 * @param p_segment17 Key flexfield segment.
56 * @param p_segment18 Key flexfield segment.
57 * @param p_segment19 Key flexfield segment.
58 * @param p_segment20 Key flexfield segment.
59 * @param p_segment21 Key flexfield segment.
60 * @param p_segment22 Key flexfield segment.
61 * @param p_segment23 Key flexfield segment.
62 * @param p_segment24 Key flexfield segment.
63 * @param p_segment25 Key flexfield segment.
64 * @param p_segment26 Key flexfield segment.
65 * @param p_segment27 Key flexfield segment.
66 * @param p_segment28 Key flexfield segment.
67 * @param p_segment29 Key flexfield segment.
68 * @param p_segment30 Key flexfield segment.
69 * @param p_concat_segments The concatenated segment values 1..30.
70 * @param p_request_id concurrent request id of the program that last updated
71 * this row (foreign key to FND_CONCURRENT_REQUESTS.REQUEST_ID).
72 * @param p_program_application_id application id of the program that last
73 * updated this row (foreign key to FND_APPLICATION.APPLICATION_ID).
74 * @param p_PROGRAM_ID application id of the program that last updated this
75 * row (foreign key to FND_APPLICATION.APPLICATION_ID).
76 * @param p_PROGRAM_UPDATE_DATE DATE Concurrent Program who column -
77 * date when a program last updated this row).
78 * @param p_combination_name If p_validate is false, this uniquely identifies
79 * the cost code combination created. If p_validate is set to true, this
80 * parameter will be null.
81 * @param p_cost_allocation_id If p_validate is false, this uniquely identifies
82 * the cost allocation created. If p_validate is set to true, this parameter
83 * will be null.
84 * @param p_effective_start_date If p_validate is false, then set to the
85 * earliest effective start date for the created cost allocation. If p_validate
86 * is true, then set to null.
87 * @param p_effective_end_date If p_validate is false, then set to the
88 * effective end date for the created cost allocation. If p_validate is true,
89 * then set to null.
90 * @param p_cost_allocation_keyflex_id If p_validate is false, this uniquely
91 * identifies the Cost Allocation Keyflex created. If p_validate is set to
92 * true, this parameter will be null.
93 * @param p_object_version_number If p_validate is false, then set to the
94 * version number of the created cost allocation. If p_validate is true, then
95 * the value will be null.
96 * @rep:displayname Create Cost Allocation
97 * @rep:category BUSINESS_ENTITY PAY_COST_ALLOCATION
98 * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
99 * @rep:scope public
100 * @rep:lifecycle active
101 * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
102 */
103 --
104 -- {End Of Comments}
105 --
106 procedure CREATE_COST_ALLOCATION
107 (p_validate in boolean default false
108 ,p_effective_date in date
109 ,p_assignment_id in number
110 ,p_proportion in number
111 ,p_business_group_id in number
112 ,p_segment1 in varchar2 default null
113 ,p_segment2 in varchar2 default null
114 ,p_segment3 in varchar2 default null
115 ,p_segment4 in varchar2 default null
116 ,p_segment5 in varchar2 default null
117 ,p_segment6 in varchar2 default null
118 ,p_segment7 in varchar2 default null
119 ,p_segment8 in varchar2 default null
120 ,p_segment9 in varchar2 default null
121 ,p_segment10 in varchar2 default null
122 ,p_segment11 in varchar2 default null
123 ,p_segment12 in varchar2 default null
124 ,p_segment13 in varchar2 default null
125 ,p_segment14 in varchar2 default null
126 ,p_segment15 in varchar2 default null
127 ,p_segment16 in varchar2 default null
128 ,p_segment17 in varchar2 default null
129 ,p_segment18 in varchar2 default null
130 ,p_segment19 in varchar2 default null
131 ,p_segment20 in varchar2 default null
132 ,p_segment21 in varchar2 default null
133 ,p_segment22 in varchar2 default null
134 ,p_segment23 in varchar2 default null
135 ,p_segment24 in varchar2 default null
136 ,p_segment25 in varchar2 default null
137 ,p_segment26 in varchar2 default null
138 ,p_segment27 in varchar2 default null
139 ,p_segment28 in varchar2 default null
140 ,p_segment29 in varchar2 default null
141 ,p_segment30 in varchar2 default null
142 ,p_concat_segments in varchar2 default null
143 ,p_request_id in number default null
144 ,p_program_application_id in number default null
145 ,p_program_id in number default null
146 ,p_program_update_date in date default null
147 ,p_combination_name out nocopy varchar2
148 ,p_cost_allocation_id out nocopy number
149 ,p_effective_start_date out nocopy date
150 ,p_effective_end_date out nocopy date
151 ,p_cost_allocation_keyflex_id in out nocopy number
152 ,p_object_version_number out nocopy number
153 );
154 --
155 -- ----------------------------------------------------------------------------
156 -- |--------------------------< update_cost_allocation >----------------------|
157 -- ----------------------------------------------------------------------------
158 --
159 -- {Start Of Comments}
160 /*#
161 * This API updates cost allocations.
162 *
163 *
164 * <p><b>Licensing</b><br>
165 * This API is licensed for use with Human Resources.
166 *
167 * <p><b>Prerequisites</b><br>
168 * The cost allocation should exists.
169 *
170 * <p><b>Post Success</b><br>
171 * The cost allocation will be successfully updated in the database.
172 *
173 * <p><b>Post Failure</b><br>
174 * The API does not update the cost allocation and raises an error.
175 * @param p_validate If true, then validation alone will be performed and the
176 * database will remain unchanged. If false and all validation checks pass,
177 * then the database will be modified.
178 * @param p_effective_date Determines when the DateTrack operation comes into
179 * force.
180 * @param p_datetrack_update_mode Indicates which DateTrack mode to use when
181 * updating the record. You must set to either UPDATE, CORRECTION,
182 * UPDATE_OVERRIDE or UPDATE_CHANGE_INSERT. Modes available for use with a
183 * particular record depend on the dates of previous record changes and the
184 * effective date of this change.
185 * @param p_cost_allocation_id The identifier of the cost allocation being
186 * updated.
187 * @param p_object_version_number Pass in the current version number of the
188 * cost allocation to be updated. When the API completes if p_validate is
189 * false, will be set to the new version number of the updated cost allocation.
190 * If p_validate is true will be set to the same value which was passed in.
191 * @param p_proportion The proportion of costs allocated for this allocation.
192 * (NB allocations should total 100 for each assignment)
193 * @param p_segment1 Key flexfield segment.
194 * @param p_segment2 Key flexfield segment.
195 * @param p_segment3 Key flexfield segment.
196 * @param p_segment4 Key flexfield segment.
197 * @param p_segment5 Key flexfield segment.
198 * @param p_segment6 Key flexfield segment.
199 * @param p_segment7 Key flexfield segment.
200 * @param p_segment8 Key flexfield segment.
201 * @param p_segment9 Key flexfield segment.
202 * @param p_segment10 Key flexfield segment.
203 * @param p_segment11 Key flexfield segment.
204 * @param p_segment12 Key flexfield segment.
205 * @param p_segment13 Key flexfield segment.
206 * @param p_segment14 Key flexfield segment.
207 * @param p_segment15 Key flexfield segment.
208 * @param p_segment16 Key flexfield segment.
209 * @param p_segment17 Key flexfield segment.
210 * @param p_segment18 Key flexfield segment.
211 * @param p_segment19 Key flexfield segment.
212 * @param p_segment20 Key flexfield segment.
213 * @param p_segment21 Key flexfield segment.
214 * @param p_segment22 Key flexfield segment.
215 * @param p_segment23 Key flexfield segment.
216 * @param p_segment24 Key flexfield segment.
217 * @param p_segment25 Key flexfield segment.
218 * @param p_segment26 Key flexfield segment.
219 * @param p_segment27 Key flexfield segment.
220 * @param p_segment28 Key flexfield segment.
221 * @param p_segment29 Key flexfield segment.
222 * @param p_segment30 Key flexfield segment.
223 * @param p_concat_segments The concatenated segment values 1..30.
224 * @param p_request_id concurrent request id of the program that last updated
225 * this row (foreign key to FND_CONCURRENT_REQUESTS.REQUEST_ID).
226 * @param p_program_application_id application id of the program that last
227 * updated this row (foreign key to FND_APPLICATION.APPLICATION_ID).
228 * @param p_program_id application id of the program that last updated this
229 * row (foreign key to FND_APPLICATION.APPLICATION_ID).
230 * @param p_program_update_date date Concurrent Program who column -
231 * date when a program last updated this row).
232 * @param p_combination_name If p_validate is false, this uniquely identifies
233 * the cost code combination created. If p_validate is set to true, this
234 * parameter will be null.
235 * @param p_cost_allocation_keyflex_id If p_validate is false, this uniquely
236 * identifies the Cost Allocation Keyflex updated. If p_validate is set to
237 * true, this parameter will be null.
238 * @param p_effective_start_date If p_validate is false, then set to the
239 * effective start date on the updated cost allocation row which now exists as
240 * of the effective date. If p_validate is true, then set to null.
241 * @param p_effective_end_date If p_validate is false, then set to the
242 * effective end date on the updated cost allocation row which now exists as of
243 * the effective date. If p_validate is true, then set to null.
244 * @rep:displayname Update Cost Allocation
245 * @rep:category BUSINESS_ENTITY PAY_COST_ALLOCATION
246 * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
247 * @rep:scope public
248 * @rep:lifecycle active
249 * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
250 */
251 --
252 -- {End Of Comments}
253 --
254 procedure UPDATE_COST_ALLOCATION
255 (p_validate in boolean default false
256 ,p_effective_date in date
257 ,p_datetrack_update_mode in varchar2
258 ,p_cost_allocation_id in number
259 ,p_object_version_number in out nocopy number
260 ,p_proportion in number default hr_api.g_number
261 ,p_segment1 in varchar2 default hr_api.g_varchar2
262 ,p_segment2 in varchar2 default hr_api.g_varchar2
263 ,p_segment3 in varchar2 default hr_api.g_varchar2
264 ,p_segment4 in varchar2 default hr_api.g_varchar2
265 ,p_segment5 in varchar2 default hr_api.g_varchar2
266 ,p_segment6 in varchar2 default hr_api.g_varchar2
267 ,p_segment7 in varchar2 default hr_api.g_varchar2
268 ,p_segment8 in varchar2 default hr_api.g_varchar2
269 ,p_segment9 in varchar2 default hr_api.g_varchar2
270 ,p_segment10 in varchar2 default hr_api.g_varchar2
271 ,p_segment11 in varchar2 default hr_api.g_varchar2
272 ,p_segment12 in varchar2 default hr_api.g_varchar2
273 ,p_segment13 in varchar2 default hr_api.g_varchar2
277 ,p_segment17 in varchar2 default hr_api.g_varchar2
274 ,p_segment14 in varchar2 default hr_api.g_varchar2
275 ,p_segment15 in varchar2 default hr_api.g_varchar2
276 ,p_segment16 in varchar2 default hr_api.g_varchar2
278 ,p_segment18 in varchar2 default hr_api.g_varchar2
279 ,p_segment19 in varchar2 default hr_api.g_varchar2
280 ,p_segment20 in varchar2 default hr_api.g_varchar2
281 ,p_segment21 in varchar2 default hr_api.g_varchar2
282 ,p_segment22 in varchar2 default hr_api.g_varchar2
283 ,p_segment23 in varchar2 default hr_api.g_varchar2
284 ,p_segment24 in varchar2 default hr_api.g_varchar2
285 ,p_segment25 in varchar2 default hr_api.g_varchar2
286 ,p_segment26 in varchar2 default hr_api.g_varchar2
287 ,p_segment27 in varchar2 default hr_api.g_varchar2
288 ,p_segment28 in varchar2 default hr_api.g_varchar2
289 ,p_segment29 in varchar2 default hr_api.g_varchar2
290 ,p_segment30 in varchar2 default hr_api.g_varchar2
291 ,p_concat_segments in varchar2 default hr_api.g_varchar2
292 ,p_request_id in number default hr_api.g_number
293 ,p_program_application_id in number default hr_api.g_number
294 ,p_program_id in number default hr_api.g_number
295 ,p_program_update_date in date default hr_api.g_date
296 ,p_combination_name out nocopy varchar2
297 ,p_cost_allocation_keyflex_id in out nocopy number
298 ,p_effective_start_date out nocopy date
299 ,p_effective_end_date out nocopy date
300 );
301 --
302 -- ----------------------------------------------------------------------------
303 -- |--------------------------< delete_cost_allocation >----------------------|
304 -- ----------------------------------------------------------------------------
305 --
306 -- {Start Of Comments}
307 /*#
308 * This API deletes cost allocations.
309 *
310 *
311 * <p><b>Licensing</b><br>
312 * This API is licensed for use with Human Resources.
313 *
314 * <p><b>Prerequisites</b><br>
315 * The cost allocation should exists.
316 *
317 * <p><b>Post Success</b><br>
318 * The cost allocation will be successfully deleted from the database.
319 *
320 * <p><b>Post Failure</b><br>
321 * The API does not delete the cost allocation and raises an error.
322 * @param p_validate If true, then validation alone will be performed and the
323 * database will remain unchanged. If false and all validation checks pass,
324 * then the database will be modified.
325 * @param p_effective_date Determines when the DateTrack operation comes into
326 * force.
327 * @param p_datetrack_delete_mode Indicates which DateTrack mode to use when
328 * deleting the record. You must set to either ZAP, DELETE, FUTURE_CHANGE or
329 * DELETE_NEXT_CHANGE. Modes available for use with a particular record depend
330 * on the dates of previous record changes and the effective date of this
331 * change.
332 * @param p_cost_allocation_id The identifier of the cost allocation being
333 * deleted.
334 * @param p_object_version_number Pass in the current version number of the
335 * cost allocation to be deleted. When the API completes if p_validate is
336 * false, will be set to the new version number of the deleted cost allocation.
337 * If p_validate is true will be set to the same value which was passed in.
338 * @param p_effective_start_date If p_validate is false, then set to the
339 * effective start date for the deleted cost allocation row which now exists as
340 * of the effective date. If p_validate is true or all row instances have been
341 * deleted then set to null.
342 * @param p_effective_end_date If p_validate is false, then set to the
343 * effective end date for the deleted cost allocation row which now exists as
344 * of the effective date. If p_validate is true or all row instances have been
345 * deleted then set to null.
346 * @rep:displayname Delete Cost Allocation
347 * @rep:category BUSINESS_ENTITY PAY_COST_ALLOCATION
348 * @rep:category MISC_EXTENSIONS HR_USER_HOOKS
349 * @rep:scope public
350 * @rep:lifecycle active
351 * @rep:ihelp PER/@scalapi APIs in Oracle HRMS
352 */
353 --
354 -- {End Of Comments}
355 --
356 procedure DELETE_COST_ALLOCATION
357 (p_validate in boolean default false
358 ,p_effective_date in date
359 ,p_datetrack_delete_mode in varchar2
360 ,p_cost_allocation_id in number
361 ,p_object_version_number in out nocopy number
362 ,p_effective_start_date out nocopy date
363 ,p_effective_end_date out nocopy date
364 );
365 --
366 end PAY_COST_ALLOCATION_API;