1 Package Body psp_poa_upd as
2 /* $Header: PSPOARHB.pls 120.5 2006/09/05 11:10:12 dpaudel noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' psp_poa_upd.'; -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------------< update_dml >------------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 -- This procedure controls the actual dml update logic. The processing of
17 -- this procedure is:
18 -- 1) Increment the object_version_number by 1 if the object_version_number
19 -- is defined as an attribute for this entity.
20 -- 2) To set and unset the g_api_dml status as required (as we are about to
21 -- perform dml).
22 -- 3) To update the specified row in the schema using the primary key in
23 -- the predicates.
24 -- 4) To trap any constraint violations that may have occurred.
25 -- 5) To raise any other errors.
26 --
27 -- Prerequisites:
28 -- This is an internal private procedure which must be called from the upd
29 -- procedure.
30 --
31 -- In Parameters:
32 -- A Pl/Sql record structre.
33 --
34 -- Post Success:
35 -- The specified row will be updated in the schema.
36 --
37 -- Post Failure:
38 -- On the update dml failure it is important to note that we always reset the
39 -- g_api_dml status to false.
40 -- If a check, unique or parent integrity constraint violation is raised the
41 -- constraint_error procedure will be called.
42 -- If any other error is reported, the error will be raised after the
43 -- g_api_dml status is reset.
44 --
45 -- Developer Implementation Notes:
46 -- The update 'set' attribute list should be modified if any of your
47 -- attributes are not updateable.
48 --
49 -- Access Status:
50 -- Internal Row Handler Use Only.
51 --
52 -- {End Of Comments}
53 -- ----------------------------------------------------------------------------
54 Procedure update_dml
55 (p_rec in out nocopy psp_poa_shd.g_rec_type
56 ) is
57 --
58 l_proc varchar2(72) := g_package||'update_dml';
59 --
60 Begin
61 hr_utility.set_location('Entering:'||l_proc, 5);
62 --
63 -- Increment the object version
64 p_rec.object_version_number := p_rec.object_version_number + 1;
65 --
66 psp_poa_shd.g_api_dml := true; -- Set the api dml status
67 --
68 -- Update the psp_organization_accounts Row
69 --
70 update psp_organization_accounts
71 set
72 organization_account_id = p_rec.organization_account_id
73 ,gl_code_combination_id = p_rec.gl_code_combination_id
74 ,project_id = p_rec.project_id
75 ,expenditure_organization_id = p_rec.expenditure_organization_id
76 ,expenditure_type = p_rec.expenditure_type
77 ,task_id = p_rec.task_id
78 ,award_id = p_rec.award_id
79 ,comments = p_rec.comments
80 ,attribute_category = p_rec.attribute_category
81 ,attribute1 = p_rec.attribute1
82 ,attribute2 = p_rec.attribute2
83 ,attribute3 = p_rec.attribute3
84 ,attribute4 = p_rec.attribute4
85 ,attribute5 = p_rec.attribute5
86 ,attribute6 = p_rec.attribute6
87 ,attribute7 = p_rec.attribute7
88 ,attribute8 = p_rec.attribute8
89 ,attribute9 = p_rec.attribute9
90 ,attribute10 = p_rec.attribute10
91 ,attribute11 = p_rec.attribute11
92 ,attribute12 = p_rec.attribute12
93 ,attribute13 = p_rec.attribute13
94 ,attribute14 = p_rec.attribute14
95 ,attribute15 = p_rec.attribute15
96 ,set_of_books_id = p_rec.set_of_books_id
97 ,account_type_code = p_rec.account_type_code
98 ,start_date_active = p_rec.start_date_active
99 ,business_group_id = p_rec.business_group_id
100 ,end_date_active = p_rec.end_date_active
101 ,organization_id = p_rec.organization_id
102 ,poeta_start_date = p_rec.poeta_start_date
103 ,poeta_end_date = p_rec.poeta_end_date
104 ,object_version_number = p_rec.object_version_number
105 ,funding_source_code = p_rec.funding_source_code
106 where organization_account_id = p_rec.organization_account_id;
107 --
108 psp_poa_shd.g_api_dml := false; -- Unset the api dml status
109 --
110 hr_utility.set_location(' Leaving:'||l_proc, 10);
111 --
112 Exception
113 When hr_api.check_integrity_violated Then
114 -- A check constraint has been violated
115 psp_poa_shd.g_api_dml := false; -- Unset the api dml status
116 psp_poa_shd.constraint_error
117 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
118 When hr_api.parent_integrity_violated Then
119 -- Parent integrity has been violated
120 psp_poa_shd.g_api_dml := false; -- Unset the api dml status
121 psp_poa_shd.constraint_error
122 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
123 When hr_api.unique_integrity_violated Then
124 -- Unique integrity has been violated
125 psp_poa_shd.g_api_dml := false; -- Unset the api dml status
126 psp_poa_shd.constraint_error
127 (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
128 When Others Then
129 psp_poa_shd.g_api_dml := false; -- Unset the api dml status
130 Raise;
131 End update_dml;
132 --
133 -- ----------------------------------------------------------------------------
134 -- |------------------------------< pre_update >------------------------------|
135 -- ----------------------------------------------------------------------------
136 -- {Start Of Comments}
137 --
138 -- Description:
139 -- This private procedure contains any processing which is required before
140 -- the update dml.
141 --
142 -- Prerequisites:
143 -- This is an internal procedure which is called from the upd procedure.
144 --
145 -- In Parameters:
146 -- A Pl/Sql record structure.
147 --
148 -- Post Success:
149 -- Processing continues.
150 --
151 -- Post Failure:
152 -- If an error has occurred, an error message and exception wil be raised
153 -- but not handled.
154 --
155 -- Developer Implementation Notes:
156 -- Any pre-processing required before the update dml is issued should be
157 -- coded within this procedure. It is important to note that any 3rd party
158 -- maintenance should be reviewed before placing in this procedure.
159 --
160 -- Access Status:
161 -- Internal Row Handler Use Only.
162 --
163 -- {End Of Comments}
164 -- ----------------------------------------------------------------------------
165 Procedure pre_update
166 (p_rec in psp_poa_shd.g_rec_type
167 ) is
168 --
169 l_proc varchar2(72) := g_package||'pre_update';
170 --
171 Begin
172 hr_utility.set_location('Entering:'||l_proc, 5);
173 --
174 hr_utility.set_location(' Leaving:'||l_proc, 10);
175 End pre_update;
176 --
177 -- ----------------------------------------------------------------------------
178 -- |-----------------------------< post_update >------------------------------|
179 -- ----------------------------------------------------------------------------
180 -- {Start Of Comments}
181 --
182 -- Description:
183 -- This private procedure contains any processing which is required after
184 -- the update dml.
185 --
186 -- Prerequisites:
187 -- This is an internal procedure which is called from the upd procedure.
188 --
189 -- In Parameters:
190 -- A Pl/Sql record structure.
191 --
192 -- Post Success:
193 -- Processing continues.
194 --
195 -- Post Failure:
196 -- If an error has occurred, an error message and exception will be raised
197 -- but not handled.
198 --
199 -- Developer Implementation Notes:
200 -- Any post-processing required after the update dml is issued should be
201 -- coded within this procedure. It is important to note that any 3rd party
202 -- maintenance should be reviewed before placing in this procedure.
203 --
204 -- Access Status:
205 -- Internal Row Handler Use Only.
206 --
207 -- {End Of Comments}
208 -- ----------------------------------------------------------------------------
209 Procedure post_update
210 (p_rec in psp_poa_shd.g_rec_type
211 ) is
212 --
213 l_proc varchar2(72) := g_package||'post_update';
214 --
215 Begin
216 hr_utility.set_location('Entering:'||l_proc, 5);
217 begin
218 --
219 psp_poa_rku.after_update
220 (p_organization_account_id
221 => p_rec.organization_account_id
222 ,p_gl_code_combination_id
223 => p_rec.gl_code_combination_id
224 ,p_project_id
225 => p_rec.project_id
226 ,p_expenditure_organization_id
227 => p_rec.expenditure_organization_id
228 ,p_expenditure_type
229 => p_rec.expenditure_type
230 ,p_task_id
231 => p_rec.task_id
232 ,p_award_id
233 => p_rec.award_id
234 ,p_comments
235 => p_rec.comments
236 ,p_attribute_category
237 => p_rec.attribute_category
238 ,p_attribute1
239 => p_rec.attribute1
240 ,p_attribute2
241 => p_rec.attribute2
242 ,p_attribute3
243 => p_rec.attribute3
244 ,p_attribute4
245 => p_rec.attribute4
246 ,p_attribute5
247 => p_rec.attribute5
248 ,p_attribute6
249 => p_rec.attribute6
250 ,p_attribute7
251 => p_rec.attribute7
252 ,p_attribute8
253 => p_rec.attribute8
254 ,p_attribute9
255 => p_rec.attribute9
256 ,p_attribute10
257 => p_rec.attribute10
258 ,p_attribute11
259 => p_rec.attribute11
260 ,p_attribute12
261 => p_rec.attribute12
262 ,p_attribute13
263 => p_rec.attribute13
264 ,p_attribute14
265 => p_rec.attribute14
266 ,p_attribute15
267 => p_rec.attribute15
268 ,p_set_of_books_id
269 => p_rec.set_of_books_id
270 ,p_account_type_code
271 => p_rec.account_type_code
272 ,p_start_date_active
273 => p_rec.start_date_active
274 ,p_business_group_id
275 => p_rec.business_group_id
276 ,p_end_date_active
277 => p_rec.end_date_active
278 ,p_organization_id
279 => p_rec.organization_id
280 ,p_poeta_start_date
281 => p_rec.poeta_start_date
282 ,p_poeta_end_date
283 => p_rec.poeta_end_date
284 ,p_object_version_number
285 => p_rec.object_version_number
286 ,p_funding_source_code
287 => p_rec.funding_source_code
288 ,p_gl_code_combination_id_o
289 => psp_poa_shd.g_old_rec.gl_code_combination_id
290 ,p_project_id_o
291 => psp_poa_shd.g_old_rec.project_id
292 ,p_expenditure_organization_i_o
293 => psp_poa_shd.g_old_rec.expenditure_organization_id
294 ,p_expenditure_type_o
295 => psp_poa_shd.g_old_rec.expenditure_type
296 ,p_task_id_o
297 => psp_poa_shd.g_old_rec.task_id
298 ,p_award_id_o
299 => psp_poa_shd.g_old_rec.award_id
300 ,p_comments_o
301 => psp_poa_shd.g_old_rec.comments
302 ,p_attribute_category_o
303 => psp_poa_shd.g_old_rec.attribute_category
304 ,p_attribute1_o
305 => psp_poa_shd.g_old_rec.attribute1
306 ,p_attribute2_o
307 => psp_poa_shd.g_old_rec.attribute2
308 ,p_attribute3_o
309 => psp_poa_shd.g_old_rec.attribute3
310 ,p_attribute4_o
311 => psp_poa_shd.g_old_rec.attribute4
312 ,p_attribute5_o
313 => psp_poa_shd.g_old_rec.attribute5
314 ,p_attribute6_o
315 => psp_poa_shd.g_old_rec.attribute6
316 ,p_attribute7_o
317 => psp_poa_shd.g_old_rec.attribute7
318 ,p_attribute8_o
319 => psp_poa_shd.g_old_rec.attribute8
320 ,p_attribute9_o
321 => psp_poa_shd.g_old_rec.attribute9
322 ,p_attribute10_o
323 => psp_poa_shd.g_old_rec.attribute10
324 ,p_attribute11_o
325 => psp_poa_shd.g_old_rec.attribute11
326 ,p_attribute12_o
327 => psp_poa_shd.g_old_rec.attribute12
328 ,p_attribute13_o
329 => psp_poa_shd.g_old_rec.attribute13
330 ,p_attribute14_o
331 => psp_poa_shd.g_old_rec.attribute14
332 ,p_attribute15_o
333 => psp_poa_shd.g_old_rec.attribute15
334 ,p_set_of_books_id_o
335 => psp_poa_shd.g_old_rec.set_of_books_id
336 ,p_account_type_code_o
337 => psp_poa_shd.g_old_rec.account_type_code
338 ,p_start_date_active_o
339 => psp_poa_shd.g_old_rec.start_date_active
340 ,p_business_group_id_o
341 => psp_poa_shd.g_old_rec.business_group_id
342 ,p_end_date_active_o
343 => psp_poa_shd.g_old_rec.end_date_active
344 ,p_organization_id_o
345 => psp_poa_shd.g_old_rec.organization_id
346 ,p_poeta_start_date_o
347 => psp_poa_shd.g_old_rec.poeta_start_date
348 ,p_poeta_end_date_o
349 => psp_poa_shd.g_old_rec.poeta_end_date
350 ,p_object_version_number_o
351 => psp_poa_shd.g_old_rec.object_version_number
352 ,p_funding_source_code_o
353 => psp_poa_shd.g_old_rec.funding_source_code
354 );
355 --
356 exception
357 --
358 when hr_api.cannot_find_prog_unit then
359 --
360 hr_api.cannot_find_prog_unit_error
361 (p_module_name => 'PSP_ORGANIZATION_ACCOUNTS'
362 ,p_hook_type => 'AU');
363 --
364 end;
365 --
366 hr_utility.set_location(' Leaving:'||l_proc, 10);
367 End post_update;
368 --
369 -- ----------------------------------------------------------------------------
370 -- |-----------------------------< convert_defs >-----------------------------|
371 -- ----------------------------------------------------------------------------
372 -- {Start Of Comments}
373 --
374 -- Description:
375 -- The Convert_Defs procedure has one very important function:
376 -- It must return the record structure for the row with all system defaulted
377 -- values converted into its corresponding parameter value for update. When
378 -- we attempt to update a row through the Upd process , certain
379 -- parameters can be defaulted which enables flexibility in the calling of
380 -- the upd process (e.g. only attributes which need to be updated need to be
381 -- specified). For the upd process to determine which attributes
382 -- have NOT been specified we need to check if the parameter has a reserved
383 -- system default value. Therefore, for all parameters which have a
384 -- corresponding reserved system default mechanism specified we need to
385 -- check if a system default is being used. If a system default is being
386 -- used then we convert the defaulted value into its corresponding attribute
387 -- value held in the g_old_rec data structure.
388 --
389 -- Prerequisites:
390 -- This private function can only be called from the upd process.
391 --
392 -- In Parameters:
393 -- A Pl/Sql record structure.
394 --
395 -- Post Success:
396 -- The record structure will be returned with all system defaulted parameter
397 -- values converted into its current row attribute value.
398 --
399 -- Post Failure:
400 -- No direct error handling is required within this function. Any possible
401 -- errors within this procedure will be a PL/SQL value error due to
402 -- conversion of datatypes or data lengths.
403 --
404 -- Developer Implementation Notes:
405 -- None.
406 --
407 -- Access Status:
408 -- Internal Row Handler Use Only.
409 --
410 -- {End Of Comments}
411 -- ----------------------------------------------------------------------------
412 Procedure convert_defs
413 (p_rec in out nocopy psp_poa_shd.g_rec_type
414 ) is
415 --
416 Begin
417 --
418 -- We must now examine each argument value in the
419 -- p_rec plsql record structure
420 -- to see if a system default is being used. If a system default
421 -- is being used then we must set to the 'current' argument value.
422 --
423 If (p_rec.gl_code_combination_id = hr_api.g_number) then
424 p_rec.gl_code_combination_id :=
425 psp_poa_shd.g_old_rec.gl_code_combination_id;
426 End If;
427 If (p_rec.project_id = hr_api.g_number) then
428 p_rec.project_id :=
429 psp_poa_shd.g_old_rec.project_id;
430 End If;
431 If (p_rec.expenditure_organization_id = hr_api.g_number) then
432 p_rec.expenditure_organization_id :=
433 psp_poa_shd.g_old_rec.expenditure_organization_id;
434 End If;
435 If (p_rec.expenditure_type = hr_api.g_varchar2) then
436 p_rec.expenditure_type :=
437 psp_poa_shd.g_old_rec.expenditure_type;
438 End If;
439 If (p_rec.task_id = hr_api.g_number) then
440 p_rec.task_id :=
441 psp_poa_shd.g_old_rec.task_id;
442 End If;
443 If (p_rec.award_id = hr_api.g_number) then
444 p_rec.award_id :=
445 psp_poa_shd.g_old_rec.award_id;
446 End If;
447 If (p_rec.comments = hr_api.g_varchar2) then
448 p_rec.comments :=
449 psp_poa_shd.g_old_rec.comments;
450 End If;
451 If (p_rec.attribute_category = hr_api.g_varchar2) then
452 p_rec.attribute_category :=
453 psp_poa_shd.g_old_rec.attribute_category;
454 End If;
455 If (p_rec.attribute1 = hr_api.g_varchar2) then
456 p_rec.attribute1 :=
457 psp_poa_shd.g_old_rec.attribute1;
458 End If;
459 If (p_rec.attribute2 = hr_api.g_varchar2) then
460 p_rec.attribute2 :=
461 psp_poa_shd.g_old_rec.attribute2;
462 End If;
463 If (p_rec.attribute3 = hr_api.g_varchar2) then
464 p_rec.attribute3 :=
465 psp_poa_shd.g_old_rec.attribute3;
466 End If;
467 If (p_rec.attribute4 = hr_api.g_varchar2) then
468 p_rec.attribute4 :=
469 psp_poa_shd.g_old_rec.attribute4;
470 End If;
471 If (p_rec.attribute5 = hr_api.g_varchar2) then
472 p_rec.attribute5 :=
473 psp_poa_shd.g_old_rec.attribute5;
474 End If;
475 If (p_rec.attribute6 = hr_api.g_varchar2) then
476 p_rec.attribute6 :=
477 psp_poa_shd.g_old_rec.attribute6;
478 End If;
479 If (p_rec.attribute7 = hr_api.g_varchar2) then
480 p_rec.attribute7 :=
481 psp_poa_shd.g_old_rec.attribute7;
482 End If;
483 If (p_rec.attribute8 = hr_api.g_varchar2) then
484 p_rec.attribute8 :=
485 psp_poa_shd.g_old_rec.attribute8;
486 End If;
487 If (p_rec.attribute9 = hr_api.g_varchar2) then
488 p_rec.attribute9 :=
489 psp_poa_shd.g_old_rec.attribute9;
490 End If;
491 If (p_rec.attribute10 = hr_api.g_varchar2) then
492 p_rec.attribute10 :=
493 psp_poa_shd.g_old_rec.attribute10;
494 End If;
495 If (p_rec.attribute11 = hr_api.g_varchar2) then
496 p_rec.attribute11 :=
497 psp_poa_shd.g_old_rec.attribute11;
498 End If;
499 If (p_rec.attribute12 = hr_api.g_varchar2) then
500 p_rec.attribute12 :=
501 psp_poa_shd.g_old_rec.attribute12;
502 End If;
503 If (p_rec.attribute13 = hr_api.g_varchar2) then
504 p_rec.attribute13 :=
505 psp_poa_shd.g_old_rec.attribute13;
506 End If;
507 If (p_rec.attribute14 = hr_api.g_varchar2) then
508 p_rec.attribute14 :=
509 psp_poa_shd.g_old_rec.attribute14;
510 End If;
511 If (p_rec.attribute15 = hr_api.g_varchar2) then
512 p_rec.attribute15 :=
513 psp_poa_shd.g_old_rec.attribute15;
514 End If;
515 If (p_rec.set_of_books_id = hr_api.g_number) then
516 p_rec.set_of_books_id :=
517 psp_poa_shd.g_old_rec.set_of_books_id;
518 End If;
519 If (p_rec.account_type_code = hr_api.g_varchar2) then
520 p_rec.account_type_code :=
521 psp_poa_shd.g_old_rec.account_type_code;
522 End If;
523 If (p_rec.start_date_active = hr_api.g_date) then
524 p_rec.start_date_active :=
525 psp_poa_shd.g_old_rec.start_date_active;
526 End If;
527 If (p_rec.business_group_id = hr_api.g_number) then
528 p_rec.business_group_id :=
529 psp_poa_shd.g_old_rec.business_group_id;
530 End If;
531 If (p_rec.end_date_active = hr_api.g_date) then
532 p_rec.end_date_active :=
533 psp_poa_shd.g_old_rec.end_date_active;
534 End If;
535 If (p_rec.organization_id = hr_api.g_number) then
536 p_rec.organization_id :=
537 psp_poa_shd.g_old_rec.organization_id;
538 End If;
539 If (p_rec.poeta_start_date = hr_api.g_date) then
540 p_rec.poeta_start_date :=
541 psp_poa_shd.g_old_rec.poeta_start_date;
542 End If;
543 If (p_rec.poeta_end_date = hr_api.g_date) then
544 p_rec.poeta_end_date :=
545 psp_poa_shd.g_old_rec.poeta_end_date;
546 End If;
547 If (p_rec.funding_source_code = hr_api.g_varchar2) then
548 p_rec.funding_source_code :=
549 psp_poa_shd.g_old_rec.funding_source_code;
550 End If;
551 --
552 End convert_defs;
553 --
554 -- ----------------------------------------------------------------------------
555 -- |---------------------------------< upd >----------------------------------|
556 -- ----------------------------------------------------------------------------
557 Procedure upd
558 (p_rec in out nocopy psp_poa_shd.g_rec_type
559 ) is
560 --
561 l_proc varchar2(72) := g_package||'upd';
562 --
563 Begin
564 hr_utility.set_location('Entering:'||l_proc, 5);
565 --
566 -- We must lock the row which we need to update.
567 --
568 psp_poa_shd.lck
569 (p_rec.organization_account_id
570 ,p_rec.object_version_number
571 );
572 --
573 -- 1. During an update system defaults are used to determine if
574 -- arguments have been defaulted or not. We must therefore
575 -- derive the full record structure values to be updated.
576 --
577 -- 2. Call the supporting update validate operations.
578 --
579 convert_defs(p_rec);
580 psp_poa_bus.update_validate
581 (p_rec
582 );
583 --
584 -- Call to raise any errors on multi-message list
585 hr_multi_message.end_validation_set;
586 --
587 -- Call the supporting pre-update operation
588 --
589 psp_poa_upd.pre_update(p_rec);
590 --
591 -- Update the row.
592 --
593 psp_poa_upd.update_dml(p_rec);
594 --
595 -- Call the supporting post-update operation
596 --
597 psp_poa_upd.post_update
598 (p_rec
599 );
600 --
601 -- Call to raise any errors on multi-message list
602 hr_multi_message.end_validation_set;
603 End upd;
604 --
605 -- ----------------------------------------------------------------------------
606 -- |---------------------------------< upd >----------------------------------|
607 -- ----------------------------------------------------------------------------
608 Procedure upd
609 (p_organization_account_id in number
610 ,p_object_version_number in out nocopy number
611 ,p_set_of_books_id in number default hr_api.g_number
612 ,p_account_type_code in varchar2 default hr_api.g_varchar2
613 ,p_start_date_active in date default hr_api.g_date
614 ,p_business_group_id in number default hr_api.g_number
615 ,p_organization_id in number default hr_api.g_number
616 ,p_gl_code_combination_id in number default hr_api.g_number
617 ,p_project_id in number default hr_api.g_number
618 ,p_expenditure_organization_id in number default hr_api.g_number
619 ,p_expenditure_type in varchar2 default hr_api.g_varchar2
620 ,p_task_id in number default hr_api.g_number
621 ,p_award_id in number default hr_api.g_number
622 ,p_comments in varchar2 default hr_api.g_varchar2
623 ,p_attribute_category in varchar2 default hr_api.g_varchar2
624 ,p_attribute1 in varchar2 default hr_api.g_varchar2
625 ,p_attribute2 in varchar2 default hr_api.g_varchar2
626 ,p_attribute3 in varchar2 default hr_api.g_varchar2
627 ,p_attribute4 in varchar2 default hr_api.g_varchar2
628 ,p_attribute5 in varchar2 default hr_api.g_varchar2
629 ,p_attribute6 in varchar2 default hr_api.g_varchar2
630 ,p_attribute7 in varchar2 default hr_api.g_varchar2
631 ,p_attribute8 in varchar2 default hr_api.g_varchar2
632 ,p_attribute9 in varchar2 default hr_api.g_varchar2
633 ,p_attribute10 in varchar2 default hr_api.g_varchar2
634 ,p_attribute11 in varchar2 default hr_api.g_varchar2
635 ,p_attribute12 in varchar2 default hr_api.g_varchar2
636 ,p_attribute13 in varchar2 default hr_api.g_varchar2
637 ,p_attribute14 in varchar2 default hr_api.g_varchar2
638 ,p_attribute15 in varchar2 default hr_api.g_varchar2
639 ,p_end_date_active in date default hr_api.g_date
640 ,p_poeta_start_date in date default hr_api.g_date
641 ,p_poeta_end_date in date default hr_api.g_date
642 ,p_funding_source_code in varchar2 default hr_api.g_varchar2
643 ) is
644 --
645 l_rec psp_poa_shd.g_rec_type;
646 l_proc varchar2(72) := g_package||'upd';
647 --
648 Begin
649 hr_utility.set_location('Entering:'||l_proc, 5);
650 --
651 -- Call conversion function to turn arguments into the
652 -- l_rec structure.
653 --
654 l_rec :=
655 psp_poa_shd.convert_args
656 (p_organization_account_id
657 ,p_gl_code_combination_id
658 ,p_project_id
659 ,p_expenditure_organization_id
660 ,p_expenditure_type
661 ,p_task_id
662 ,p_award_id
663 ,p_comments
664 ,p_attribute_category
665 ,p_attribute1
666 ,p_attribute2
667 ,p_attribute3
668 ,p_attribute4
669 ,p_attribute5
670 ,p_attribute6
671 ,p_attribute7
672 ,p_attribute8
673 ,p_attribute9
674 ,p_attribute10
675 ,p_attribute11
676 ,p_attribute12
677 ,p_attribute13
678 ,p_attribute14
679 ,p_attribute15
680 ,p_set_of_books_id
681 ,p_account_type_code
682 ,p_start_date_active
683 ,p_business_group_id
684 ,p_end_date_active
685 ,p_organization_id
686 ,p_poeta_start_date
687 ,p_poeta_end_date
688 ,p_object_version_number
689 ,p_funding_source_code
690 );
691 --
692 -- Having converted the arguments into the
693 -- plsql record structure we call the corresponding record
694 -- business process.
695 --
696 psp_poa_upd.upd
697 (l_rec
698 );
699 p_object_version_number := l_rec.object_version_number;
700 --
701 hr_utility.set_location(' Leaving:'||l_proc, 10);
702 End upd;
703 --
704 end psp_poa_upd;