DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_OPM_UPD

Source


1 Package Body pay_opm_upd as
2 /* $Header: pyopmrhi.pkb 120.4 2005/11/07 01:38:13 pgongada noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  pay_opm_upd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |----------------------------< dt_update_dml >-----------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 --   This procedure controls the execution of dml from the datetrack mode
17 --   of CORRECTION only. It is important to note that the object version
18 --   number is only increment by 1 because the datetrack correction is
19 --   soley for one datetracked row.
20 --   This procedure controls the actual dml update logic. The functions of this
21 --   procedure are as follows:
22 --   1) Get the next object_version_number.
23 --   2) To set and unset the g_api_dml status as required (as we are about to
24 --      perform dml).
25 --   3) To update the specified row in the schema using the primary key in
26 --      the predicates.
27 --   4) To trap any constraint violations that may have occurred.
28 --   5) To raise any other errors.
29 --
30 -- Prerequisites:
31 --   This is an internal private procedure which must be called from the
32 --   update_dml procedure.
33 --
34 -- In Parameters:
35 --   A Pl/Sql record structure.
36 --
37 -- Post Success:
38 --   The specified row will be updated in the schema.
39 --
40 -- Post Failure:
41 --   On the update dml failure it is important to note that we always reset the
42 --   g_api_dml status to false.
43 --   If a check or unique integrity constraint violation is raised the
44 --   constraint_error procedure will be called.
45 --   If any other error is reported, the error will be raised after the
46 --   g_api_dml status is reset.
47 --
48 -- Developer Implementation Notes:
49 --   The update 'set' arguments list should be modified if any of your
50 --   attributes are not updateable.
51 --
52 -- Access Status:
53 --   Internal Row Handler Use Only.
54 --
55 -- {End Of Comments}
56 -- ----------------------------------------------------------------------------
57 Procedure dt_update_dml
58   (p_rec                   in out nocopy pay_opm_shd.g_rec_type
59   ,p_effective_date        in            date
60   ,p_datetrack_mode        in            varchar2
61   ,p_validation_start_date in            date
62   ,p_validation_end_date   in            date
63   ) is
64 --
65   l_proc	varchar2(72) := g_package||'dt_update_dml';
66 --
67 Begin
68   hr_utility.set_location('Entering:'||l_proc, 5);
69   --
70   If (p_datetrack_mode = hr_api.g_correction) then
71     hr_utility.set_location(l_proc, 10);
72     --
73     -- Because we are updating a row we must get the next object
74     -- version number.
75     --
76     p_rec.object_version_number :=
77       dt_api.get_object_version_number
78         (p_base_table_name => 'pay_org_payment_methods_f'
79         ,p_base_key_column => 'org_payment_method_id'
80         ,p_base_key_value  => p_rec.org_payment_method_id
81         );
82     --
83     pay_opm_shd.g_api_dml := true;  -- Set the api dml status
84     --
85     -- Update the pay_org_payment_methods_f Row
86     --
87     update  pay_org_payment_methods_f
88     set
89      org_payment_method_id                = p_rec.org_payment_method_id
90     ,business_group_id                    = p_rec.business_group_id
91     ,external_account_id                  = p_rec.external_account_id
92     ,currency_code                        = p_rec.currency_code
93     ,payment_type_id                      = p_rec.payment_type_id
94     ,defined_balance_id                   = p_rec.defined_balance_id
95     ,org_payment_method_name              = p_rec.org_payment_method_name
96     ,comment_id                           = p_rec.comment_id
97     ,attribute_category                   = p_rec.attribute_category
98     ,attribute1                           = p_rec.attribute1
99     ,attribute2                           = p_rec.attribute2
100     ,attribute3                           = p_rec.attribute3
101     ,attribute4                           = p_rec.attribute4
102     ,attribute5                           = p_rec.attribute5
103     ,attribute6                           = p_rec.attribute6
104     ,attribute7                           = p_rec.attribute7
105     ,attribute8                           = p_rec.attribute8
106     ,attribute9                           = p_rec.attribute9
107     ,attribute10                          = p_rec.attribute10
108     ,attribute11                          = p_rec.attribute11
109     ,attribute12                          = p_rec.attribute12
110     ,attribute13                          = p_rec.attribute13
111     ,attribute14                          = p_rec.attribute14
112     ,attribute15                          = p_rec.attribute15
113     ,attribute16                          = p_rec.attribute16
114     ,attribute17                          = p_rec.attribute17
115     ,attribute18                          = p_rec.attribute18
116     ,attribute19                          = p_rec.attribute19
117     ,attribute20                          = p_rec.attribute20
118     ,pmeth_information_category           = p_rec.pmeth_information_category
119     ,pmeth_information1                   = p_rec.pmeth_information1
120     ,pmeth_information2                   = p_rec.pmeth_information2
121     ,pmeth_information3                   = p_rec.pmeth_information3
122     ,pmeth_information4                   = p_rec.pmeth_information4
123     ,pmeth_information5                   = p_rec.pmeth_information5
124     ,pmeth_information6                   = p_rec.pmeth_information6
125     ,pmeth_information7                   = p_rec.pmeth_information7
126     ,pmeth_information8                   = p_rec.pmeth_information8
127     ,pmeth_information9                   = p_rec.pmeth_information9
128     ,pmeth_information10                  = p_rec.pmeth_information10
129     ,pmeth_information11                  = p_rec.pmeth_information11
130     ,pmeth_information12                  = p_rec.pmeth_information12
131     ,pmeth_information13                  = p_rec.pmeth_information13
132     ,pmeth_information14                  = p_rec.pmeth_information14
133     ,pmeth_information15                  = p_rec.pmeth_information15
134     ,pmeth_information16                  = p_rec.pmeth_information16
135     ,pmeth_information17                  = p_rec.pmeth_information17
136     ,pmeth_information18                  = p_rec.pmeth_information18
137     ,pmeth_information19                  = p_rec.pmeth_information19
138     ,pmeth_information20                  = p_rec.pmeth_information20
139     ,object_version_number                = p_rec.object_version_number
140     ,transfer_to_gl_flag                  = p_rec.transfer_to_gl_flag
141     ,cost_payment			  = p_rec.cost_payment
142     ,cost_cleared_payment                 = p_rec.cost_cleared_payment
143     ,cost_cleared_void_payment            = p_rec.cost_cleared_void_payment
144     ,exclude_manual_payment               = p_rec.exclude_manual_payment
145     where   org_payment_method_id = p_rec.org_payment_method_id
146     and     effective_start_date = p_validation_start_date
147     and     effective_end_date   = p_validation_end_date;
148     --
149     pay_opm_shd.g_api_dml := false;   -- Unset the api dml status
150     --
151     -- Set the effective start and end dates
152     --
153     p_rec.effective_start_date := p_validation_start_date;
154     p_rec.effective_end_date   := p_validation_end_date;
155   End If;
156 --
157 hr_utility.set_location(' Leaving:'||l_proc, 15);
158 Exception
159   When hr_api.check_integrity_violated Then
160     -- A check constraint has been violated
161     pay_opm_shd.g_api_dml := false;   -- Unset the api dml status
162     pay_opm_shd.constraint_error
163       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
164   When hr_api.unique_integrity_violated Then
165     -- Unique integrity has been violated
166     pay_opm_shd.g_api_dml := false;   -- Unset the api dml status
167     pay_opm_shd.constraint_error
168       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
169   When Others Then
170     pay_opm_shd.g_api_dml := false;   -- Unset the api dml status
171     Raise;
172 End dt_update_dml;
173 --
174 -- ----------------------------------------------------------------------------
175 -- |------------------------------< update_dml >------------------------------|
176 -- ----------------------------------------------------------------------------
177 -- {Start Of Comments}
178 --
179 -- Description:
180 --   This procedure calls the dt_update_dml control logic which handles
181 --   the actual datetrack dml.
182 --
183 -- Prerequisites:
184 --   This is an internal private procedure which must be called from the upd
185 --   procedure.
186 --
187 -- In Parameters:
188 --   A Pl/Sql record structre.
189 --
190 -- Post Success:
191 --   Processing contines.
192 --
193 -- Post Failure:
194 --   No specific error handling is required within this procedure.
195 --
196 -- Developer Implementation Notes:
197 --   The update 'set' arguments list should be modified if any of your
198 --   attributes are not updateable.
199 --
200 -- Access Status:
201 --   Internal Row Handler Use Only.
202 --
203 -- {End Of Comments}
204 -- ----------------------------------------------------------------------------
205 Procedure update_dml
206   (p_rec                      in out nocopy pay_opm_shd.g_rec_type
207   ,p_effective_date           in            date
208   ,p_datetrack_mode           in            varchar2
209   ,p_validation_start_date    in            date
210   ,p_validation_end_date      in            date
211   ) is
212 --
213   l_proc	varchar2(72) := g_package||'update_dml';
214 --
215 Begin
216   hr_utility.set_location('Entering:'||l_proc, 5);
217   --
218   pay_opm_upd.dt_update_dml
219     (p_rec                   => p_rec
220     ,p_effective_date        => p_effective_date
221     ,p_datetrack_mode        => p_datetrack_mode
222     ,p_validation_start_date => p_validation_start_date
223     ,p_validation_end_date   => p_validation_end_date
224     );
225   --
226   hr_utility.set_location(' Leaving:'||l_proc, 10);
227 End update_dml;
228 --
229 -- ----------------------------------------------------------------------------
230 -- |----------------------------< dt_pre_update >-----------------------------|
231 -- ----------------------------------------------------------------------------
232 -- {Start Of Comments}
233 --
234 -- Description:
235 --   The dt_pre_update procedure controls the execution
236 --   of dml for the datetrack modes of: UPDATE, UPDATE_OVERRIDE
237 --   and UPDATE_CHANGE_INSERT only. The execution required is as
238 --   follows:
239 --
240 --   1) Providing the datetrack update mode is not 'CORRECTION'
241 --      then set the effective end date of the current row (this
242 --      will be the validation_start_date - 1).
243 --   2) If the datetrack mode is 'UPDATE_OVERRIDE' then call the
244 --      corresponding delete_dml process to delete any future rows
245 --      where the effective_start_date is greater than or equal to
246 --	the validation_start_date.
247 --   3) Call the insert_dml process to insert the new updated row
248 --      details.
249 --
250 -- Prerequisites:
251 --   This is an internal procedure which is called from the
252 --   pre_update procedure.
253 --
254 -- In Parameters:
255 --
256 -- Post Success:
257 --   Processing continues.
258 --
259 -- Post Failure:
260 --   If an error has occurred, an error message and exception will be raised
261 --   but not handled.
262 --
263 -- Developer Implementation Notes:
264 --   This is an internal procedure which is required by Datetrack. Don't
265 --   remove or modify.
266 --
267 -- Access Status:
268 --   Internal Row Handler Use Only.
269 --
270 -- {End Of Comments}
271 -- ----------------------------------------------------------------------------
272 Procedure dt_pre_update
273   (p_rec                     in out nocopy pay_opm_shd.g_rec_type
274   ,p_effective_date          in date
275   ,p_datetrack_mode          in varchar2
276   ,p_validation_start_date   in date
277   ,p_validation_end_date     in date
278   ) is
279 --
280   l_proc	         varchar2(72) := g_package||'dt_pre_update';
281   l_dummy_version_number number;
282 --
283 Begin
284   hr_utility.set_location('Entering:'||l_proc, 5);
285   If (p_datetrack_mode <> hr_api.g_correction) then
286     --
287     -- Update the current effective end date
288     --
289     pay_opm_shd.upd_effective_end_date
290       (p_effective_date         => p_effective_date
291       ,p_base_key_value	        => p_rec.org_payment_method_id
292       ,p_new_effective_end_date => (p_validation_start_date - 1)
293       ,p_validation_start_date  => p_validation_start_date
294       ,p_validation_end_date    => p_validation_end_date
295       ,p_object_version_number  => l_dummy_version_number
296       );
297     --
298     If (p_datetrack_mode = hr_api.g_update_override) then
299       --
300       -- As the datetrack mode is 'UPDATE_OVERRIDE' then we must
301       -- delete any future rows
302       --
303       pay_opm_del.delete_dml
304         (p_rec                   => p_rec
305         ,p_effective_date        => p_effective_date
306         ,p_datetrack_mode        => p_datetrack_mode
307         ,p_validation_start_date => p_validation_start_date
308         ,p_validation_end_date   => p_validation_end_date
309         );
310     End If;
311     --
312     -- We must now insert the updated row
313     --
314     pay_opm_ins.insert_dml
315       (p_rec                    => p_rec
316       ,p_effective_date	        => p_effective_date
317       ,p_datetrack_mode	        => p_datetrack_mode
318       ,p_validation_start_date  => p_validation_start_date
319       ,p_validation_end_date    => p_validation_end_date
320       );
321   End If;
322   hr_utility.set_location(' Leaving:'||l_proc, 20);
323 End dt_pre_update;
324 --
325 -- ----------------------------------------------------------------------------
326 -- |------------------------------< pre_update >------------------------------|
327 -- ----------------------------------------------------------------------------
328 -- {Start Of Comments}
329 --
330 -- Description:
331 --   This private procedure contains any processing which is required before
332 --   the update dml.
333 --
334 -- Prerequisites:
335 --   This is an internal procedure which is called from the upd procedure.
336 --
337 -- In Parameters:
338 --   A Pl/Sql record structure.
339 --
340 -- Post Success:
341 --   Processing continues.
342 --
343 -- Post Failure:
344 --   If an error has occurred, an error message and exception will be raised
345 --   but not handled.
346 --
347 -- Developer Implementation Notes:
348 --   Any pre-processing required before the update dml is issued should be
349 --   coded within this procedure. It is important to note that any 3rd party
350 --   maintenance should be reviewed before placing in this procedure. The call
351 --   to the dt_update_dml procedure should NOT be removed.
352 --
353 -- Access Status:
354 --   Internal Row Handler Use Only.
355 --
356 -- {End Of Comments}
357 -- ----------------------------------------------------------------------------
358 Procedure pre_update
359   (p_rec                   in out nocopy pay_opm_shd.g_rec_type
360   ,p_effective_date        in            date
361   ,p_datetrack_mode        in            varchar2
362   ,p_validation_start_date in            date
363   ,p_validation_end_date   in            date
364   ) is
365 --
366   l_proc	varchar2(72) := g_package||'pre_update';
367 --
368 Begin
369   hr_utility.set_location('Entering:'||l_proc, 5);
370   --
371   --
372   -- Insert the comment text if comments exist
373   --
374   If (p_rec.comments is not null and p_rec.comment_id is null) then
375      hr_comm_api.ins(p_comment_id        => p_rec.comment_id
376                     ,p_source_table_name => 'PAY_ORG_PAYMENT_METHODS_F'
377                     ,p_comment_text      => p_rec.comments
378                     );
379   -- Update the comments if they have changed
380   ElsIf (p_rec.comment_id is not null and p_rec.comments <>
381         pay_opm_shd.g_old_rec.comments) then
382      hr_comm_api.upd(p_comment_id        => p_rec.comment_id
383                     ,p_source_table_name => 'PAY_ORG_PAYMENT_METHODS_F'
384                     ,p_comment_text      => p_rec.comments
385                     );
386   End If;
387   --
388   dt_pre_update
389     (p_rec                   => p_rec
390     ,p_effective_date	     => p_effective_date
391     ,p_datetrack_mode	     => p_datetrack_mode
392     ,p_validation_start_date => p_validation_start_date
393     ,p_validation_end_date   => p_validation_end_date
394     );
395   --
396   hr_utility.set_location(' Leaving:'||l_proc, 10);
397 End pre_update;
398 --
399 -- ----------------------------------------------------------------------------
400 -- |----------------------------< post_update >-------------------------------|
401 -- ----------------------------------------------------------------------------
402 -- {Start Of Comments}
403 --
404 -- Description:
405 --   This private procedure contains any processing which is required after the
406 --   update dml.
407 --
408 -- Prerequisites:
409 --   This is an internal procedure which is called from the upd procedure.
410 --
411 -- In Parameters:
412 --   A Pl/Sql record structure.
413 --
414 -- Post Success:
415 --   Processing continues.
416 --
417 -- Post Failure:
418 --   If an error has occurred, an error message and exception will be raised
419 --   but not handled.
420 --
421 -- Developer Implementation Notes:
422 --   Any post-processing required after the update dml is issued should be
423 --   coded within this procedure. It is important to note that any 3rd party
424 --   maintenance should be reviewed before placing in this procedure.
425 --
426 -- Access Status:
427 --   Internal Row Handler Use Only.
428 --
429 -- {End Of Comments}
430 -- ----------------------------------------------------------------------------
431 Procedure post_update
432   (p_rec                   in pay_opm_shd.g_rec_type
433   ,p_effective_date        in date
434   ,p_datetrack_mode        in varchar2
435   ,p_validation_start_date in date
436   ,p_validation_end_date   in date
437   ) is
438 --
439   l_proc	varchar2(72) := g_package||'post_update';
440 --
441 Begin
442   hr_utility.set_location('Entering:'||l_proc, 5);
443   begin
444     --
445     pay_opm_rku.after_update
446       (p_effective_date
447       => p_effective_date
448       ,p_datetrack_mode
449       => p_datetrack_mode
450       ,p_validation_start_date
451       => p_validation_start_date
452       ,p_validation_end_date
453       => p_validation_end_date
454       ,p_org_payment_method_id
455       => p_rec.org_payment_method_id
456       ,p_effective_start_date
457       => p_rec.effective_start_date
458       ,p_effective_end_date
459       => p_rec.effective_end_date
460       ,p_external_account_id
461       => p_rec.external_account_id
462       ,p_currency_code
463       => p_rec.currency_code
464       ,p_comment_id
465       => p_rec.comment_id
466       ,p_comments
467       => p_rec.comments
468       ,p_attribute_category
469       => p_rec.attribute_category
470       ,p_attribute1
471       => p_rec.attribute1
472       ,p_attribute2
473       => p_rec.attribute2
474       ,p_attribute3
475       => p_rec.attribute3
476       ,p_attribute4
477       => p_rec.attribute4
478       ,p_attribute5
479       => p_rec.attribute5
480       ,p_attribute6
481       => p_rec.attribute6
482       ,p_attribute7
483       => p_rec.attribute7
484       ,p_attribute8
485       => p_rec.attribute8
486       ,p_attribute9
487       => p_rec.attribute9
488       ,p_attribute10
489       => p_rec.attribute10
490       ,p_attribute11
491       => p_rec.attribute11
492       ,p_attribute12
493       => p_rec.attribute12
494       ,p_attribute13
495       => p_rec.attribute13
496       ,p_attribute14
497       => p_rec.attribute14
498       ,p_attribute15
499       => p_rec.attribute15
500       ,p_attribute16
501       => p_rec.attribute16
502       ,p_attribute17
503       => p_rec.attribute17
504       ,p_attribute18
505       => p_rec.attribute18
506       ,p_attribute19
507       => p_rec.attribute19
508       ,p_attribute20
509       => p_rec.attribute20
510       ,p_pmeth_information_category
511       => p_rec.pmeth_information_category
512       ,p_pmeth_information1
513       => p_rec.pmeth_information1
514       ,p_pmeth_information2
515       => p_rec.pmeth_information2
516       ,p_pmeth_information3
517       => p_rec.pmeth_information3
518       ,p_pmeth_information4
519       => p_rec.pmeth_information4
520       ,p_pmeth_information5
521       => p_rec.pmeth_information5
522       ,p_pmeth_information6
523       => p_rec.pmeth_information6
524       ,p_pmeth_information7
525       => p_rec.pmeth_information7
526       ,p_pmeth_information8
527       => p_rec.pmeth_information8
528       ,p_pmeth_information9
529       => p_rec.pmeth_information9
530       ,p_pmeth_information10
531       => p_rec.pmeth_information10
532       ,p_pmeth_information11
533       => p_rec.pmeth_information11
534       ,p_pmeth_information12
535       => p_rec.pmeth_information12
536       ,p_pmeth_information13
537       => p_rec.pmeth_information13
538       ,p_pmeth_information14
539       => p_rec.pmeth_information14
540       ,p_pmeth_information15
541       => p_rec.pmeth_information15
542       ,p_pmeth_information16
543       => p_rec.pmeth_information16
544       ,p_pmeth_information17
545       => p_rec.pmeth_information17
546       ,p_pmeth_information18
547       => p_rec.pmeth_information18
548       ,p_pmeth_information19
549       => p_rec.pmeth_information19
550       ,p_pmeth_information20
551       => p_rec.pmeth_information20
552       ,p_object_version_number
553       => p_rec.object_version_number
554       ,p_transfer_to_gl_flag
555       => p_rec.transfer_to_gl_flag
556       ,p_cost_payment
557       => p_rec.cost_payment
558       ,p_cost_cleared_payment
559       => p_rec.cost_cleared_payment
560       ,p_cost_cleared_void_payment
561       => p_rec.cost_cleared_void_payment
562       ,p_exclude_manual_payment
563       => p_rec.exclude_manual_payment
564       ,p_effective_start_date_o
565       => pay_opm_shd.g_old_rec.effective_start_date
566       ,p_effective_end_date_o
567       => pay_opm_shd.g_old_rec.effective_end_date
568       ,p_business_group_id_o
569       => pay_opm_shd.g_old_rec.business_group_id
570       ,p_external_account_id_o
571       => pay_opm_shd.g_old_rec.external_account_id
572       ,p_currency_code_o
573       => pay_opm_shd.g_old_rec.currency_code
574       ,p_payment_type_id_o
575       => pay_opm_shd.g_old_rec.payment_type_id
576       ,p_defined_balance_id_o
577       => pay_opm_shd.g_old_rec.defined_balance_id
578       ,p_org_payment_method_name_o
579       => pay_opm_shd.g_old_rec.org_payment_method_name
580       ,p_comment_id_o
581       => pay_opm_shd.g_old_rec.comment_id
582       ,p_comments_o
583       => pay_opm_shd.g_old_rec.comments
584       ,p_attribute_category_o
585       => pay_opm_shd.g_old_rec.attribute_category
586       ,p_attribute1_o
587       => pay_opm_shd.g_old_rec.attribute1
588       ,p_attribute2_o
589       => pay_opm_shd.g_old_rec.attribute2
590       ,p_attribute3_o
591       => pay_opm_shd.g_old_rec.attribute3
592       ,p_attribute4_o
593       => pay_opm_shd.g_old_rec.attribute4
594       ,p_attribute5_o
595       => pay_opm_shd.g_old_rec.attribute5
596       ,p_attribute6_o
597       => pay_opm_shd.g_old_rec.attribute6
598       ,p_attribute7_o
599       => pay_opm_shd.g_old_rec.attribute7
600       ,p_attribute8_o
601       => pay_opm_shd.g_old_rec.attribute8
602       ,p_attribute9_o
603       => pay_opm_shd.g_old_rec.attribute9
604       ,p_attribute10_o
605       => pay_opm_shd.g_old_rec.attribute10
606       ,p_attribute11_o
607       => pay_opm_shd.g_old_rec.attribute11
608       ,p_attribute12_o
609       => pay_opm_shd.g_old_rec.attribute12
610       ,p_attribute13_o
611       => pay_opm_shd.g_old_rec.attribute13
612       ,p_attribute14_o
613       => pay_opm_shd.g_old_rec.attribute14
614       ,p_attribute15_o
615       => pay_opm_shd.g_old_rec.attribute15
616       ,p_attribute16_o
617       => pay_opm_shd.g_old_rec.attribute16
618       ,p_attribute17_o
619       => pay_opm_shd.g_old_rec.attribute17
620       ,p_attribute18_o
621       => pay_opm_shd.g_old_rec.attribute18
622       ,p_attribute19_o
623       => pay_opm_shd.g_old_rec.attribute19
624       ,p_attribute20_o
625       => pay_opm_shd.g_old_rec.attribute20
626       ,p_pmeth_information_category_o
627       => pay_opm_shd.g_old_rec.pmeth_information_category
628       ,p_pmeth_information1_o
629       => pay_opm_shd.g_old_rec.pmeth_information1
630       ,p_pmeth_information2_o
631       => pay_opm_shd.g_old_rec.pmeth_information2
632       ,p_pmeth_information3_o
633       => pay_opm_shd.g_old_rec.pmeth_information3
634       ,p_pmeth_information4_o
635       => pay_opm_shd.g_old_rec.pmeth_information4
636       ,p_pmeth_information5_o
637       => pay_opm_shd.g_old_rec.pmeth_information5
638       ,p_pmeth_information6_o
639       => pay_opm_shd.g_old_rec.pmeth_information6
640       ,p_pmeth_information7_o
641       => pay_opm_shd.g_old_rec.pmeth_information7
642       ,p_pmeth_information8_o
643       => pay_opm_shd.g_old_rec.pmeth_information8
644       ,p_pmeth_information9_o
645       => pay_opm_shd.g_old_rec.pmeth_information9
646       ,p_pmeth_information10_o
647       => pay_opm_shd.g_old_rec.pmeth_information10
648       ,p_pmeth_information11_o
649       => pay_opm_shd.g_old_rec.pmeth_information11
650       ,p_pmeth_information12_o
651       => pay_opm_shd.g_old_rec.pmeth_information12
652       ,p_pmeth_information13_o
653       => pay_opm_shd.g_old_rec.pmeth_information13
654       ,p_pmeth_information14_o
655       => pay_opm_shd.g_old_rec.pmeth_information14
656       ,p_pmeth_information15_o
657       => pay_opm_shd.g_old_rec.pmeth_information15
658       ,p_pmeth_information16_o
659       => pay_opm_shd.g_old_rec.pmeth_information16
660       ,p_pmeth_information17_o
661       => pay_opm_shd.g_old_rec.pmeth_information17
662       ,p_pmeth_information18_o
663       => pay_opm_shd.g_old_rec.pmeth_information18
664       ,p_pmeth_information19_o
665       => pay_opm_shd.g_old_rec.pmeth_information19
666       ,p_pmeth_information20_o
667       => pay_opm_shd.g_old_rec.pmeth_information20
668       ,p_object_version_number_o
669       => pay_opm_shd.g_old_rec.object_version_number
670       ,p_transfer_to_gl_flag_o
671       => pay_opm_shd.g_old_rec.transfer_to_gl_flag
672       ,p_cost_payment_o
673       => pay_opm_shd.g_old_rec.cost_payment
674       ,p_cost_cleared_payment_o
675       => pay_opm_shd.g_old_rec.cost_cleared_payment
676       ,p_cost_cleared_void_payment_o
677       => pay_opm_shd.g_old_rec.cost_cleared_void_payment
678       ,p_exclude_manual_payment_o
679       => pay_opm_shd.g_old_rec.exclude_manual_payment
680       );
681     --
682   exception
683     --
684     when hr_api.cannot_find_prog_unit then
685       --
686       hr_api.cannot_find_prog_unit_error
687         (p_module_name => 'PAY_ORG_PAYMENT_METHODS_F'
688         ,p_hook_type   => 'AU');
689       --
690   end;
691   --
692   hr_utility.set_location(' Leaving:'||l_proc, 10);
693 End post_update;
694 --
695 -- ----------------------------------------------------------------------------
696 -- |-----------------------------< convert_defs >-----------------------------|
697 -- ----------------------------------------------------------------------------
698 -- {Start Of Comments}
699 --
700 -- Description:
701 --   The Convert_Defs procedure has one very important function:
702 --   It must return the record structure for the row with all system defaulted
703 --   values converted into its corresponding parameter value for update. When
704 --   we attempt to update a row through the Upd process , certain
705 --   parameters can be defaulted which enables flexibility in the calling of
706 --   the upd process (e.g. only attributes which need to be updated need to be
707 --   specified). For the upd process to determine which attributes
708 --   have NOT been specified we need to check if the parameter has a reserved
709 --   system default value. Therefore, for all parameters which have a
710 --   corresponding reserved system default mechanism specified we need to
711 --   check if a system default is being used. If a system default is being
712 --   used then we convert the defaulted value into its corresponding attribute
713 --   value held in the g_old_rec data structure.
714 --
715 -- Prerequisites:
716 --   This private function can only be called from the upd process.
717 --
718 -- In Parameters:
719 --   A Pl/Sql record structure.
720 --
721 -- Post Success:
722 --   The record structure will be returned with all system defaulted parameter
723 --   values converted into its current row attribute value.
724 --
725 -- Post Failure:
726 --   No direct error handling is required within this function. Any possible
727 --   errors within this procedure will be a PL/SQL value error due to
728 --   conversion of datatypes or data lengths.
729 --
730 -- Developer Implementation Notes:
731 --   None.
732 --
733 -- Access Status:
734 --   Internal Row Handler Use Only.
735 --
736 -- {End Of Comments}
737 -- ----------------------------------------------------------------------------
738 Procedure convert_defs
739   (p_rec in out nocopy pay_opm_shd.g_rec_type
740   ) is
741 --
742 Begin
743   --
744   -- We must now examine each argument value in the
745   -- p_rec plsql record structure
746   -- to see if a system default is being used. If a system default
747   -- is being used then we must set to the 'current' argument value.
748   --
749   If (p_rec.business_group_id = hr_api.g_number) then
750     p_rec.business_group_id :=
751     pay_opm_shd.g_old_rec.business_group_id;
752   End If;
753   If (p_rec.external_account_id = hr_api.g_number) then
754     p_rec.external_account_id :=
755     pay_opm_shd.g_old_rec.external_account_id;
756   End If;
757   If (p_rec.currency_code = hr_api.g_varchar2) then
758     p_rec.currency_code :=
759     pay_opm_shd.g_old_rec.currency_code;
760   End If;
761   If (p_rec.payment_type_id = hr_api.g_number) then
762     p_rec.payment_type_id :=
763     pay_opm_shd.g_old_rec.payment_type_id;
764   End If;
765   If (p_rec.defined_balance_id = hr_api.g_number) then
766     p_rec.defined_balance_id :=
767     pay_opm_shd.g_old_rec.defined_balance_id;
768   End If;
769   If (p_rec.org_payment_method_name = hr_api.g_varchar2) then
770     p_rec.org_payment_method_name :=
771     pay_opm_shd.g_old_rec.org_payment_method_name;
772   End If;
773   If (p_rec.comment_id = hr_api.g_number) then
774     p_rec.comment_id :=
775     pay_opm_shd.g_old_rec.comment_id;
776   End If;
777   If (p_rec.comments = hr_api.g_varchar2) then
778     p_rec.comments :=
779     pay_opm_shd.g_old_rec.comments;
780   End If;
781   If (p_rec.attribute_category = hr_api.g_varchar2) then
782     p_rec.attribute_category :=
783     pay_opm_shd.g_old_rec.attribute_category;
784   End If;
785   If (p_rec.attribute1 = hr_api.g_varchar2) then
786     p_rec.attribute1 :=
787     pay_opm_shd.g_old_rec.attribute1;
788   End If;
789   If (p_rec.attribute2 = hr_api.g_varchar2) then
790     p_rec.attribute2 :=
791     pay_opm_shd.g_old_rec.attribute2;
792   End If;
793   If (p_rec.attribute3 = hr_api.g_varchar2) then
794     p_rec.attribute3 :=
795     pay_opm_shd.g_old_rec.attribute3;
796   End If;
797   If (p_rec.attribute4 = hr_api.g_varchar2) then
798     p_rec.attribute4 :=
799     pay_opm_shd.g_old_rec.attribute4;
800   End If;
801   If (p_rec.attribute5 = hr_api.g_varchar2) then
802     p_rec.attribute5 :=
803     pay_opm_shd.g_old_rec.attribute5;
804   End If;
805   If (p_rec.attribute6 = hr_api.g_varchar2) then
806     p_rec.attribute6 :=
807     pay_opm_shd.g_old_rec.attribute6;
808   End If;
809   If (p_rec.attribute7 = hr_api.g_varchar2) then
810     p_rec.attribute7 :=
811     pay_opm_shd.g_old_rec.attribute7;
812   End If;
813   If (p_rec.attribute8 = hr_api.g_varchar2) then
814     p_rec.attribute8 :=
815     pay_opm_shd.g_old_rec.attribute8;
816   End If;
817   If (p_rec.attribute9 = hr_api.g_varchar2) then
818     p_rec.attribute9 :=
819     pay_opm_shd.g_old_rec.attribute9;
820   End If;
821   If (p_rec.attribute10 = hr_api.g_varchar2) then
822     p_rec.attribute10 :=
823     pay_opm_shd.g_old_rec.attribute10;
824   End If;
825   If (p_rec.attribute11 = hr_api.g_varchar2) then
826     p_rec.attribute11 :=
827     pay_opm_shd.g_old_rec.attribute11;
828   End If;
829   If (p_rec.attribute12 = hr_api.g_varchar2) then
830     p_rec.attribute12 :=
831     pay_opm_shd.g_old_rec.attribute12;
832   End If;
833   If (p_rec.attribute13 = hr_api.g_varchar2) then
834     p_rec.attribute13 :=
835     pay_opm_shd.g_old_rec.attribute13;
836   End If;
837   If (p_rec.attribute14 = hr_api.g_varchar2) then
838     p_rec.attribute14 :=
839     pay_opm_shd.g_old_rec.attribute14;
840   End If;
841   If (p_rec.attribute15 = hr_api.g_varchar2) then
842     p_rec.attribute15 :=
843     pay_opm_shd.g_old_rec.attribute15;
844   End If;
845   If (p_rec.attribute16 = hr_api.g_varchar2) then
846     p_rec.attribute16 :=
847     pay_opm_shd.g_old_rec.attribute16;
848   End If;
849   If (p_rec.attribute17 = hr_api.g_varchar2) then
850     p_rec.attribute17 :=
851     pay_opm_shd.g_old_rec.attribute17;
852   End If;
853   If (p_rec.attribute18 = hr_api.g_varchar2) then
854     p_rec.attribute18 :=
855     pay_opm_shd.g_old_rec.attribute18;
856   End If;
857   If (p_rec.attribute19 = hr_api.g_varchar2) then
858     p_rec.attribute19 :=
859     pay_opm_shd.g_old_rec.attribute19;
860   End If;
861   If (p_rec.attribute20 = hr_api.g_varchar2) then
862     p_rec.attribute20 :=
863     pay_opm_shd.g_old_rec.attribute20;
864   End If;
865   If (p_rec.pmeth_information_category = hr_api.g_varchar2) then
866     p_rec.pmeth_information_category :=
867     pay_opm_shd.g_old_rec.pmeth_information_category;
868   End If;
869   If (p_rec.pmeth_information1 = hr_api.g_varchar2) then
870     p_rec.pmeth_information1 :=
871     pay_opm_shd.g_old_rec.pmeth_information1;
872   End If;
873   If (p_rec.pmeth_information2 = hr_api.g_varchar2) then
874     p_rec.pmeth_information2 :=
875     pay_opm_shd.g_old_rec.pmeth_information2;
876   End If;
877   If (p_rec.pmeth_information3 = hr_api.g_varchar2) then
878     p_rec.pmeth_information3 :=
879     pay_opm_shd.g_old_rec.pmeth_information3;
880   End If;
881   If (p_rec.pmeth_information4 = hr_api.g_varchar2) then
882     p_rec.pmeth_information4 :=
883     pay_opm_shd.g_old_rec.pmeth_information4;
884   End If;
885   If (p_rec.pmeth_information5 = hr_api.g_varchar2) then
886     p_rec.pmeth_information5 :=
887     pay_opm_shd.g_old_rec.pmeth_information5;
888   End If;
889   If (p_rec.pmeth_information6 = hr_api.g_varchar2) then
890     p_rec.pmeth_information6 :=
891     pay_opm_shd.g_old_rec.pmeth_information6;
892   End If;
893   If (p_rec.pmeth_information7 = hr_api.g_varchar2) then
894     p_rec.pmeth_information7 :=
895     pay_opm_shd.g_old_rec.pmeth_information7;
896   End If;
897   If (p_rec.pmeth_information8 = hr_api.g_varchar2) then
898     p_rec.pmeth_information8 :=
899     pay_opm_shd.g_old_rec.pmeth_information8;
900   End If;
901   If (p_rec.pmeth_information9 = hr_api.g_varchar2) then
902     p_rec.pmeth_information9 :=
903     pay_opm_shd.g_old_rec.pmeth_information9;
904   End If;
905   If (p_rec.pmeth_information10 = hr_api.g_varchar2) then
906     p_rec.pmeth_information10 :=
907     pay_opm_shd.g_old_rec.pmeth_information10;
908   End If;
909   If (p_rec.pmeth_information11 = hr_api.g_varchar2) then
910     p_rec.pmeth_information11 :=
911     pay_opm_shd.g_old_rec.pmeth_information11;
912   End If;
913   If (p_rec.pmeth_information12 = hr_api.g_varchar2) then
914     p_rec.pmeth_information12 :=
915     pay_opm_shd.g_old_rec.pmeth_information12;
916   End If;
917   If (p_rec.pmeth_information13 = hr_api.g_varchar2) then
918     p_rec.pmeth_information13 :=
919     pay_opm_shd.g_old_rec.pmeth_information13;
920   End If;
921   If (p_rec.pmeth_information14 = hr_api.g_varchar2) then
922     p_rec.pmeth_information14 :=
923     pay_opm_shd.g_old_rec.pmeth_information14;
924   End If;
925   If (p_rec.pmeth_information15 = hr_api.g_varchar2) then
926     p_rec.pmeth_information15 :=
927     pay_opm_shd.g_old_rec.pmeth_information15;
928   End If;
929   If (p_rec.pmeth_information16 = hr_api.g_varchar2) then
930     p_rec.pmeth_information16 :=
931     pay_opm_shd.g_old_rec.pmeth_information16;
932   End If;
933   If (p_rec.pmeth_information17 = hr_api.g_varchar2) then
934     p_rec.pmeth_information17 :=
935     pay_opm_shd.g_old_rec.pmeth_information17;
936   End If;
937   If (p_rec.pmeth_information18 = hr_api.g_varchar2) then
938     p_rec.pmeth_information18 :=
939     pay_opm_shd.g_old_rec.pmeth_information18;
940   End If;
941   If (p_rec.pmeth_information19 = hr_api.g_varchar2) then
942     p_rec.pmeth_information19 :=
943     pay_opm_shd.g_old_rec.pmeth_information19;
944   End If;
945   If (p_rec.pmeth_information20 = hr_api.g_varchar2) then
946     p_rec.pmeth_information20 :=
947     pay_opm_shd.g_old_rec.pmeth_information20;
948   End If;
949   If (p_rec.transfer_to_gl_flag = hr_api.g_varchar2) then
950     p_rec.transfer_to_gl_flag :=
951     pay_opm_shd.g_old_rec.transfer_to_gl_flag;
952   End If;
953   If (p_rec.cost_payment = hr_api.g_varchar2) then
954     p_rec.cost_payment :=
955     pay_opm_shd.g_old_rec.cost_payment;
956   End If;
957   If (p_rec.cost_cleared_payment = hr_api.g_varchar2) then
958     p_rec.cost_cleared_payment :=
959     pay_opm_shd.g_old_rec.cost_cleared_payment;
960   End If;
961   If (p_rec.cost_cleared_void_payment = hr_api.g_varchar2) then
962     p_rec.cost_cleared_void_payment :=
963     pay_opm_shd.g_old_rec.cost_cleared_void_payment;
964   End If;
965   If (p_rec.exclude_manual_payment = hr_api.g_varchar2) then
966     p_rec.exclude_manual_payment :=
967     pay_opm_shd.g_old_rec.exclude_manual_payment;
968   End If;
969   --
970 End convert_defs;
971 --
972 -- ----------------------------------------------------------------------------
973 -- |---------------------------------< upd >----------------------------------|
974 -- ----------------------------------------------------------------------------
975 Procedure upd
976   (p_effective_date in            date
977   ,p_datetrack_mode in            varchar2
978   ,p_rec            in out nocopy pay_opm_shd.g_rec_type
979   ) is
980 --
981   l_proc			varchar2(72) := g_package||'upd';
982   l_validation_start_date	date;
983   l_validation_end_date		date;
984 --
985 Begin
986   hr_utility.set_location('Entering:'||l_proc, 5);
987   --
988   -- Ensure that the DateTrack update mode is valid
989   --
990   dt_api.validate_dt_upd_mode(p_datetrack_mode => p_datetrack_mode);
991   --
992   -- We must lock the row which we need to update.
993   --
994   pay_opm_shd.lck
995     (p_effective_date                   => p_effective_date
996     ,p_datetrack_mode                   => p_datetrack_mode
997     ,p_org_payment_method_id            => p_rec.org_payment_method_id
998     ,p_object_version_number            => p_rec.object_version_number
999     ,p_validation_start_date            => l_validation_start_date
1000     ,p_validation_end_date              => l_validation_end_date
1001     );
1002   --
1003   -- 1. During an update system defaults are used to determine if
1004   --    arguments have been defaulted or not. We must therefore
1005   --    derive the full record structure values to be updated.
1006   --
1007   -- 2. Call the supporting update validate operations.
1008   --
1009   pay_opm_upd.convert_defs(p_rec);
1010   --
1011   pay_opm_bus.update_validate
1012     (p_rec                              => p_rec
1013     ,p_effective_date                   => p_effective_date
1014     ,p_datetrack_mode                   => p_datetrack_mode
1015     ,p_validation_start_date            => l_validation_start_date
1016     ,p_validation_end_date              => l_validation_end_date
1017     );
1018   --
1019   -- Call the supporting pre-update operation
1020   --
1021   pre_update
1022     (p_rec                              => p_rec
1023     ,p_effective_date                   => p_effective_date
1024     ,p_datetrack_mode                   => p_datetrack_mode
1025     ,p_validation_start_date            => l_validation_start_date
1026     ,p_validation_end_date              => l_validation_end_date
1027     );
1028   --
1029   -- Update the row.
1030   --
1031   update_dml
1032     (p_rec                              => p_rec
1033     ,p_effective_date                   => p_effective_date
1034     ,p_datetrack_mode                   => p_datetrack_mode
1035     ,p_validation_start_date            => l_validation_start_date
1036     ,p_validation_end_date	            => l_validation_end_date
1037     );
1038   --
1039   -- Call the supporting post-update operation
1040   --
1041   post_update
1042     (p_rec                              => p_rec
1043     ,p_effective_date                   => p_effective_date
1044     ,p_datetrack_mode                   => p_datetrack_mode
1045     ,p_validation_start_date            => l_validation_start_date
1046     ,p_validation_end_date              => l_validation_end_date
1047     );
1048 End upd;
1049 --
1050 -- ----------------------------------------------------------------------------
1051 -- |------------------------------< upd >-------------------------------------|
1052 -- ----------------------------------------------------------------------------
1053 Procedure upd
1054   (p_effective_date               in     date
1055   ,p_datetrack_mode               in     varchar2
1056   ,p_org_payment_method_id        in     number
1057   ,p_object_version_number        in out nocopy number
1058   ,p_external_account_id          in     number    default hr_api.g_number
1059   ,p_currency_code                in     varchar2  default hr_api.g_varchar2
1060   ,p_comments                     in     varchar2  default hr_api.g_varchar2
1061   ,p_attribute_category           in     varchar2  default hr_api.g_varchar2
1062   ,p_attribute1                   in     varchar2  default hr_api.g_varchar2
1063   ,p_attribute2                   in     varchar2  default hr_api.g_varchar2
1064   ,p_attribute3                   in     varchar2  default hr_api.g_varchar2
1065   ,p_attribute4                   in     varchar2  default hr_api.g_varchar2
1066   ,p_attribute5                   in     varchar2  default hr_api.g_varchar2
1067   ,p_attribute6                   in     varchar2  default hr_api.g_varchar2
1068   ,p_attribute7                   in     varchar2  default hr_api.g_varchar2
1069   ,p_attribute8                   in     varchar2  default hr_api.g_varchar2
1070   ,p_attribute9                   in     varchar2  default hr_api.g_varchar2
1071   ,p_attribute10                  in     varchar2  default hr_api.g_varchar2
1072   ,p_attribute11                  in     varchar2  default hr_api.g_varchar2
1073   ,p_attribute12                  in     varchar2  default hr_api.g_varchar2
1074   ,p_attribute13                  in     varchar2  default hr_api.g_varchar2
1075   ,p_attribute14                  in     varchar2  default hr_api.g_varchar2
1076   ,p_attribute15                  in     varchar2  default hr_api.g_varchar2
1077   ,p_attribute16                  in     varchar2  default hr_api.g_varchar2
1078   ,p_attribute17                  in     varchar2  default hr_api.g_varchar2
1079   ,p_attribute18                  in     varchar2  default hr_api.g_varchar2
1080   ,p_attribute19                  in     varchar2  default hr_api.g_varchar2
1081   ,p_attribute20                  in     varchar2  default hr_api.g_varchar2
1082   ,p_pmeth_information_category   in     varchar2  default hr_api.g_varchar2
1083   ,p_pmeth_information1           in     varchar2  default hr_api.g_varchar2
1084   ,p_pmeth_information2           in     varchar2  default hr_api.g_varchar2
1085   ,p_pmeth_information3           in     varchar2  default hr_api.g_varchar2
1086   ,p_pmeth_information4           in     varchar2  default hr_api.g_varchar2
1087   ,p_pmeth_information5           in     varchar2  default hr_api.g_varchar2
1088   ,p_pmeth_information6           in     varchar2  default hr_api.g_varchar2
1089   ,p_pmeth_information7           in     varchar2  default hr_api.g_varchar2
1090   ,p_pmeth_information8           in     varchar2  default hr_api.g_varchar2
1091   ,p_pmeth_information9           in     varchar2  default hr_api.g_varchar2
1092   ,p_pmeth_information10          in     varchar2  default hr_api.g_varchar2
1093   ,p_pmeth_information11          in     varchar2  default hr_api.g_varchar2
1094   ,p_pmeth_information12          in     varchar2  default hr_api.g_varchar2
1095   ,p_pmeth_information13          in     varchar2  default hr_api.g_varchar2
1096   ,p_pmeth_information14          in     varchar2  default hr_api.g_varchar2
1097   ,p_pmeth_information15          in     varchar2  default hr_api.g_varchar2
1098   ,p_pmeth_information16          in     varchar2  default hr_api.g_varchar2
1099   ,p_pmeth_information17          in     varchar2  default hr_api.g_varchar2
1100   ,p_pmeth_information18          in     varchar2  default hr_api.g_varchar2
1101   ,p_pmeth_information19          in     varchar2  default hr_api.g_varchar2
1102   ,p_pmeth_information20          in     varchar2  default hr_api.g_varchar2
1103   ,p_transfer_to_gl_flag          in     varchar2  default hr_api.g_varchar2
1104   ,p_cost_payment                 in     varchar2  default hr_api.g_varchar2
1105   ,p_cost_cleared_payment         in     varchar2  default hr_api.g_varchar2
1106   ,p_cost_cleared_void_payment    in     varchar2  default hr_api.g_varchar2
1107   ,p_exclude_manual_payment       in     varchar2  default hr_api.g_varchar2
1108   ,p_effective_start_date            out nocopy date
1109   ,p_effective_end_date              out nocopy date
1110   ,p_comment_id                      out nocopy number
1111   ) is
1112 --
1113   l_rec		pay_opm_shd.g_rec_type;
1114   l_proc	varchar2(72) := g_package||'upd';
1115 --
1116 Begin
1117   hr_utility.set_location('Entering:'||l_proc, 5);
1118   --
1119   -- Call conversion function to turn arguments into the
1120   -- l_rec structure.
1121   --
1122   l_rec :=
1123   pay_opm_shd.convert_args
1124     (p_org_payment_method_id
1125     ,null
1126     ,null
1127     ,hr_api.g_number
1128     ,p_external_account_id
1129     ,p_currency_code
1130     ,hr_api.g_number
1131     ,hr_api.g_number
1132     ,hr_api.g_varchar2
1133     ,hr_api.g_number
1134     ,p_comments
1135     ,p_attribute_category
1136     ,p_attribute1
1137     ,p_attribute2
1138     ,p_attribute3
1139     ,p_attribute4
1140     ,p_attribute5
1141     ,p_attribute6
1142     ,p_attribute7
1143     ,p_attribute8
1144     ,p_attribute9
1145     ,p_attribute10
1146     ,p_attribute11
1147     ,p_attribute12
1148     ,p_attribute13
1149     ,p_attribute14
1150     ,p_attribute15
1151     ,p_attribute16
1152     ,p_attribute17
1153     ,p_attribute18
1154     ,p_attribute19
1155     ,p_attribute20
1156     ,p_pmeth_information_category
1157     ,p_pmeth_information1
1158     ,p_pmeth_information2
1159     ,p_pmeth_information3
1160     ,p_pmeth_information4
1161     ,p_pmeth_information5
1162     ,p_pmeth_information6
1163     ,p_pmeth_information7
1164     ,p_pmeth_information8
1165     ,p_pmeth_information9
1166     ,p_pmeth_information10
1167     ,p_pmeth_information11
1168     ,p_pmeth_information12
1169     ,p_pmeth_information13
1170     ,p_pmeth_information14
1171     ,p_pmeth_information15
1172     ,p_pmeth_information16
1173     ,p_pmeth_information17
1174     ,p_pmeth_information18
1175     ,p_pmeth_information19
1176     ,p_pmeth_information20
1177     ,p_object_version_number
1178     ,p_transfer_to_gl_flag
1179     ,p_cost_payment
1180     ,p_cost_cleared_payment
1181     ,p_cost_cleared_void_payment
1182     ,p_exclude_manual_payment
1183     );
1184   --
1185   -- Having converted the arguments into the
1186   -- plsql record structure we call the corresponding record
1187   -- business process.
1188   --
1189   pay_opm_upd.upd
1190     (p_effective_date
1191     ,p_datetrack_mode
1192     ,l_rec
1193     );
1194   --
1195   -- Set the out parameters
1196   --
1197   p_object_version_number            := l_rec.object_version_number;
1198   p_effective_start_date             := l_rec.effective_start_date;
1199   p_effective_end_date               := l_rec.effective_end_date;
1200   p_comment_id                       := l_rec.comment_id;
1201   --
1202   hr_utility.set_location(' Leaving:'||l_proc, 10);
1203 End upd;
1204 --
1205 end pay_opm_upd;