DBA Data[Home] [Help]

PACKAGE BODY: APPS.PQP_VAL_UPD

Source


1 Package Body pqp_val_upd as
2 /* $Header: pqvalrhi.pkb 120.4 2011/09/16 06:12:51 vepravee noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33) := '  pqp_val_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
21 --   this 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 pqp_val_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 => 'pqp_vehicle_allocations_f'
79         ,p_base_key_column => 'vehicle_allocation_id'
80         ,p_base_key_value  => p_rec.vehicle_allocation_id
81         );
82     --
83     --
84     --
85     -- Update the pqp_vehicle_allocations_f Row
86     --
87     update  pqp_vehicle_allocations_f
88     set
89      vehicle_allocation_id                = p_rec.vehicle_allocation_id
90     ,assignment_id                        = p_rec.assignment_id
91     ,business_group_id                    = p_rec.business_group_id
92     ,across_assignments                   = p_rec.across_assignments
93     ,vehicle_repository_id                = p_rec.vehicle_repository_id
94     ,usage_type                           = p_rec.usage_type
95     ,capital_contribution                 = p_rec.capital_contribution
96     ,private_contribution                 = p_rec.private_contribution
97     ,default_vehicle                      = p_rec.default_vehicle
98     ,fuel_card                            = p_rec.fuel_card
99     ,fuel_card_number                     = p_rec.fuel_card_number
100     ,calculation_method                   = p_rec.calculation_method
101     ,rates_table_id                       = p_rec.rates_table_id
102     ,element_type_id                      = p_rec.element_type_id
103     ,private_use_flag                     = p_rec.private_use_flag
104     ,insurance_number                     = p_rec.insurance_number
105     ,insurance_expiry_date                = p_rec.insurance_expiry_date
106     ,val_attribute_category               = p_rec.val_attribute_category
107     ,val_attribute1                       = p_rec.val_attribute1
108     ,val_attribute2                       = p_rec.val_attribute2
109     ,val_attribute3                       = p_rec.val_attribute3
110     ,val_attribute4                       = p_rec.val_attribute4
111     ,val_attribute5                       = p_rec.val_attribute5
112     ,val_attribute6                       = p_rec.val_attribute6
113     ,val_attribute7                       = p_rec.val_attribute7
114     ,val_attribute8                       = p_rec.val_attribute8
115     ,val_attribute9                       = p_rec.val_attribute9
116     ,val_attribute10                      = p_rec.val_attribute10
117     ,val_attribute11                      = p_rec.val_attribute11
118     ,val_attribute12                      = p_rec.val_attribute12
119     ,val_attribute13                      = p_rec.val_attribute13
120     ,val_attribute14                      = p_rec.val_attribute14
121     ,val_attribute15                      = p_rec.val_attribute15
122     ,val_attribute16                      = p_rec.val_attribute16
123     ,val_attribute17                      = p_rec.val_attribute17
124     ,val_attribute18                      = p_rec.val_attribute18
125     ,val_attribute19                      = p_rec.val_attribute19
126     ,val_attribute20                      = p_rec.val_attribute20
127     ,val_information_category             = p_rec.val_information_category
128     ,val_information1                     = p_rec.val_information1
129     ,val_information2                     = p_rec.val_information2
130     ,val_information3                     = p_rec.val_information3
131     ,val_information4                     = p_rec.val_information4
132     ,val_information5                     = p_rec.val_information5
133     ,val_information6                     = p_rec.val_information6
134     ,val_information7                     = p_rec.val_information7
135     ,val_information8                     = p_rec.val_information8
136     ,val_information9                     = p_rec.val_information9
137     ,val_information10                    = p_rec.val_information10
138     ,val_information11                    = p_rec.val_information11
139     ,val_information12                    = p_rec.val_information12
140     ,val_information13                    = p_rec.val_information13
141     ,val_information14                    = p_rec.val_information14
142     ,val_information15                    = p_rec.val_information15
143     ,val_information16                    = p_rec.val_information16
144     ,val_information17                    = p_rec.val_information17
145     ,val_information18                    = p_rec.val_information18
146     ,val_information19                    = p_rec.val_information19
147     ,val_information20                    = p_rec.val_information20
148     ,object_version_number                = p_rec.object_version_number
149     ,fuel_benefit                         = p_rec.fuel_benefit
150     ,sliding_rates_info                   =p_rec.sliding_rates_info
151     where   vehicle_allocation_id = p_rec.vehicle_allocation_id
152     and     effective_start_date = p_validation_start_date
153     and     effective_end_date   = p_validation_end_date;
154     --
155     --
156     --
157     -- Set the effective start and end dates
158     --
159     p_rec.effective_start_date := p_validation_start_date;
160     p_rec.effective_end_date   := p_validation_end_date;
161   End If;
162 --
163 hr_utility.set_location(' Leaving:'||l_proc, 15);
164 Exception
165   When hr_api.check_integrity_violated Then
166     -- A check constraint has been violated
167     --
168     pqp_val_shd.constraint_error
169       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
170   When hr_api.unique_integrity_violated Then
171     -- Unique integrity has been violated
172     --
173     pqp_val_shd.constraint_error
174       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
175   When Others Then
176     --
177     Raise;
178 End dt_update_dml;
179 --
180 -- ----------------------------------------------------------------------------
181 -- |------------------------------< update_dml >------------------------------|
182 -- ----------------------------------------------------------------------------
183 -- {Start Of Comments}
184 --
185 -- Description:
186 --   This procedure calls the dt_update_dml control logic which handles
187 --   the actual datetrack dml.
188 --
189 -- Prerequisites:
190 --   This is an internal private procedure which must be called from the upd
191 --   procedure.
192 --
193 -- In Parameters:
194 --   A Pl/Sql record structre.
195 --
196 -- Post Success:
197 --   Processing contines.
198 --
199 -- Post Failure:
200 --   No specific error handling is required within this procedure.
201 --
202 -- Developer Implementation Notes:
203 --   The update 'set' arguments list should be modified if any of your
204 --   attributes are not updateable.
205 --
206 -- Access Status:
207 --   Internal Row Handler Use Only.
208 --
209 -- {End Of Comments}
210 -- ----------------------------------------------------------------------------
211 Procedure update_dml
212   (p_rec                      in out nocopy pqp_val_shd.g_rec_type
213   ,p_effective_date           in date
214   ,p_datetrack_mode           in varchar2
215   ,p_validation_start_date    in date
216   ,p_validation_end_date      in date
217   ) is
218 --
219   l_proc        varchar2(72) := g_package||'update_dml';
220 --
221 Begin
222   hr_utility.set_location('Entering:'||l_proc, 5);
223   --
224   pqp_val_upd.dt_update_dml
225     (p_rec                   => p_rec
226     ,p_effective_date        => p_effective_date
227     ,p_datetrack_mode        => p_datetrack_mode
228     ,p_validation_start_date => p_validation_start_date
229     ,p_validation_end_date   => p_validation_end_date
230     );
231   --
232   hr_utility.set_location(' Leaving:'||l_proc, 10);
233 End update_dml;
234 --
235 -- ----------------------------------------------------------------------------
236 -- |----------------------------< dt_pre_update >-----------------------------|
237 -- ----------------------------------------------------------------------------
238 -- {Start Of Comments}
239 --
240 -- Description:
241 --   The dt_pre_update procedure controls the execution
242 --   of dml for the datetrack modes of: UPDATE, UPDATE_OVERRIDE
243 --   and UPDATE_CHANGE_INSERT only. The execution required is as
244 --   follows:
245 --
246 --   1) Providing the datetrack update mode is not 'CORRECTION'
247 --      then set the effective end date of the current row (this
248 --      will be the validation_start_date - 1).
249 --   2) If the datetrack mode is 'UPDATE_OVERRIDE' then call the
250 --      corresponding delete_dml process to delete any future rows
251 --      where the effective_start_date is greater than or equal to
252 --      the validation_start_date.
253 --   3) Call the insert_dml process to insert the new updated row
254 --      details.
255 --
256 -- Prerequisites:
257 --   This is an internal procedure which is called from the
258 --   pre_update procedure.
259 --
260 -- In Parameters:
261 --
262 -- Post Success:
263 --   Processing continues.
264 --
265 -- Post Failure:
266 --   If an error has occurred, an error message and exception will be raised
267 --   but not handled.
268 --
269 -- Developer Implementation Notes:
270 --   This is an internal procedure which is required by Datetrack. Don't
271 --   remove or modify.
272 --
273 -- Access Status:
274 --   Internal Row Handler Use Only.
275 --
276 -- {End Of Comments}
277 -- ----------------------------------------------------------------------------
278 Procedure dt_pre_update
279   (p_rec                     in out  nocopy   pqp_val_shd.g_rec_type
280   ,p_effective_date          in date
281   ,p_datetrack_mode          in varchar2
282   ,p_validation_start_date   in date
283   ,p_validation_end_date     in date
284   ) is
285 --
286   l_proc                 varchar2(72) := g_package||'dt_pre_update';
287   l_dummy_version_number number;
288 --
289 Begin
290   hr_utility.set_location('Entering:'||l_proc, 5);
291   If (p_datetrack_mode <> hr_api.g_correction) then
292     --
293     -- Update the current effective end date
294     --
295     pqp_val_shd.upd_effective_end_date
296       (p_effective_date         => p_effective_date
297       ,p_base_key_value         => p_rec.vehicle_allocation_id
298       ,p_new_effective_end_date => (p_validation_start_date - 1)
299       ,p_validation_start_date  => p_validation_start_date
300       ,p_validation_end_date    => p_validation_end_date
301       ,p_object_version_number  => l_dummy_version_number
302       );
303     --
304     If (p_datetrack_mode = hr_api.g_update_override) then
305       --
306       -- As the datetrack mode is 'UPDATE_OVERRIDE' then we must
307       -- delete any future rows
308       --
309       pqp_val_del.delete_dml
310         (p_rec                   => p_rec
311         ,p_effective_date        => p_effective_date
312         ,p_datetrack_mode        => p_datetrack_mode
313         ,p_validation_start_date => p_validation_start_date
314         ,p_validation_end_date   => p_validation_end_date
315         );
316     End If;
317     --
318     -- We must now insert the updated row
319     --
320     pqp_val_ins.insert_dml
321       (p_rec                    => p_rec
322       ,p_effective_date         => p_effective_date
323       ,p_datetrack_mode         => p_datetrack_mode
324       ,p_validation_start_date  => p_validation_start_date
325       ,p_validation_end_date    => p_validation_end_date
326       );
327   End If;
328   hr_utility.set_location(' Leaving:'||l_proc, 20);
329 End dt_pre_update;
330 --
331 -- ----------------------------------------------------------------------------
332 -- |------------------------------< pre_update >------------------------------|
333 -- ----------------------------------------------------------------------------
334 -- {Start Of Comments}
335 --
336 -- Description:
337 --   This private procedure contains any processing which is required before
338 --   the update dml.
339 --
340 -- Prerequisites:
341 --   This is an internal procedure which is called from the upd procedure.
342 --
343 -- In Parameters:
344 --   A Pl/Sql record structure.
345 --
346 -- Post Success:
347 --   Processing continues.
348 --
349 -- Post Failure:
350 --   If an error has occurred, an error message and exception will be raised
351 --   but not handled.
352 -- Developer Implementation Notes:
353 --   Any pre-processing required before the update dml is issued should be
354 --   coded within this procedure. It is important to note that any 3rd party
355 --   maintenance should be reviewed before placing in this procedure. The call
356 --   to the dt_update_dml procedure should NOT be removed.
357 --
358 -- Access Status:
359 --   Internal Row Handler Use Only.
360 --
361 -- {End Of Comments}
362 -- ----------------------------------------------------------------------------
363 Procedure pre_update
364   (p_rec                   in out nocopy pqp_val_shd.g_rec_type
365   ,p_effective_date        in date
366   ,p_datetrack_mode        in varchar2
367   ,p_validation_start_date in date
368   ,p_validation_end_date   in date
369   ) is
370 --
371   l_proc        varchar2(72) := g_package||'pre_update';
372 --
373 Begin
374   hr_utility.set_location('Entering:'||l_proc, 5);
375   --
376   --
377   --
378   dt_pre_update
379     (p_rec                   => p_rec
380     ,p_effective_date        => p_effective_date
381     ,p_datetrack_mode        => p_datetrack_mode
382     ,p_validation_start_date => p_validation_start_date
383     ,p_validation_end_date   => p_validation_end_date
384     );
385   --
386   hr_utility.set_location(' Leaving:'||l_proc, 10);
387 End pre_update;
388 --
389 -- ----------------------------------------------------------------------------
390 -- |----------------------------< post_update >-------------------------------|
391 -- ----------------------------------------------------------------------------
392 -- {Start Of Comments}
393 --
394 -- Description:
395 --   This private procedure contains any processing which is required after
396 --   the update dml.
397 --
398 -- Prerequisites:
399 --   This is an internal procedure which is called from the upd procedure.
400 --
401 -- In Parameters:
402 --   A Pl/Sql record structure.
403 --
404 -- Post Success:
405 --   Processing continues.
406 --
407 -- Post Failure:
408 --   If an error has occurred, an error message and exception will be raised
409 --   but not handled.
410 --
411 -- Developer Implementation Notes:
412 --   Any post-processing required after the update dml is issued should be
413 --   coded within this procedure. It is important to note that any 3rd party
414 --   maintenance should be reviewed before placing in this procedure.
415 --
416 -- Access Status:
417 --   Internal Row Handler Use Only.
418 --
419 -- {End Of Comments}
420 -- ----------------------------------------------------------------------------
421 Procedure post_update
422   (p_rec                   in pqp_val_shd.g_rec_type
423   ,p_effective_date        in date
424   ,p_datetrack_mode        in varchar2
425   ,p_validation_start_date in date
426   ,p_validation_end_date   in date
427   ) is
428 --
429   l_proc        varchar2(72) := g_package||'post_update';
430 --
431 Begin
432   hr_utility.set_location('Entering:'||l_proc, 5);
433   begin
434     --
435     pqp_val_rku.after_update
436       (p_effective_date
437       => p_effective_date
438       ,p_datetrack_mode
439       => p_datetrack_mode
440       ,p_validation_start_date
441       => p_validation_start_date
442       ,p_validation_end_date
443       => p_validation_end_date
444       ,p_vehicle_allocation_id
445       => p_rec.vehicle_allocation_id
446       ,p_effective_start_date
447       => p_rec.effective_start_date
448       ,p_effective_end_date
449       => p_rec.effective_end_date
450       ,p_assignment_id
451       => p_rec.assignment_id
452       ,p_business_group_id
453       => p_rec.business_group_id
454       ,p_across_assignments
455       => p_rec.across_assignments
456       ,p_vehicle_repository_id
457       => p_rec.vehicle_repository_id
458       ,p_usage_type
459       => p_rec.usage_type
460       ,p_capital_contribution
461       => p_rec.capital_contribution
462       ,p_private_contribution
463       => p_rec.private_contribution
464       ,p_default_vehicle
465       => p_rec.default_vehicle
466       ,p_fuel_card
467       => p_rec.fuel_card
468       ,p_fuel_card_number
469       => p_rec.fuel_card_number
470       ,p_calculation_method
471       => p_rec.calculation_method
472       ,p_rates_table_id
473       => p_rec.rates_table_id
474       ,p_element_type_id
475       => p_rec.element_type_id
476       ,p_private_use_flag
477       => p_rec.private_use_flag
478       ,p_insurance_number
479       => p_rec.insurance_number
480       ,p_insurance_expiry_date
481       => p_rec.insurance_expiry_date
482       ,p_val_attribute_category
483       => p_rec.val_attribute_category
484       ,p_val_attribute1
485       => p_rec.val_attribute1
486       ,p_val_attribute2
487       => p_rec.val_attribute2
488       ,p_val_attribute3
489       => p_rec.val_attribute3
490       ,p_val_attribute4
491       => p_rec.val_attribute4
492       ,p_val_attribute5
493       => p_rec.val_attribute5
494       ,p_val_attribute6
495       => p_rec.val_attribute6
496       ,p_val_attribute7
497       => p_rec.val_attribute7
498       ,p_val_attribute8
499       => p_rec.val_attribute8
500       ,p_val_attribute9
501       => p_rec.val_attribute9
502       ,p_val_attribute10
503       => p_rec.val_attribute10
504       ,p_val_attribute11
505       => p_rec.val_attribute11
506       ,p_val_attribute12
507       => p_rec.val_attribute12
508       ,p_val_attribute13
509       => p_rec.val_attribute13
510       ,p_val_attribute14
511       => p_rec.val_attribute14
512       ,p_val_attribute15
513       => p_rec.val_attribute15
514       ,p_val_attribute16
515       => p_rec.val_attribute16
516       ,p_val_attribute17
517       => p_rec.val_attribute17
518       ,p_val_attribute18
519       => p_rec.val_attribute18
520       ,p_val_attribute19
521       => p_rec.val_attribute19
522       ,p_val_attribute20
523       => p_rec.val_attribute20
524       ,p_val_information_category
525       => p_rec.val_information_category
526       ,p_val_information1
527       => p_rec.val_information1
528       ,p_val_information2
529       => p_rec.val_information2
530       ,p_val_information3
531       => p_rec.val_information3
532       ,p_val_information4
533       => p_rec.val_information4
534       ,p_val_information5
535       => p_rec.val_information5
536       ,p_val_information6
537       => p_rec.val_information6
538       ,p_val_information7
539       => p_rec.val_information7
540       ,p_val_information8
541       => p_rec.val_information8
542       ,p_val_information9
543       => p_rec.val_information9
544       ,p_val_information10
545       => p_rec.val_information10
546       ,p_val_information11
547       => p_rec.val_information11
548       ,p_val_information12
549       => p_rec.val_information12
550       ,p_val_information13
551       => p_rec.val_information13
552       ,p_val_information14
553       => p_rec.val_information14
554       ,p_val_information15
555       => p_rec.val_information15
556       ,p_val_information16
557       => p_rec.val_information16
558       ,p_val_information17
559       => p_rec.val_information17
560       ,p_val_information18
561       => p_rec.val_information18
562       ,p_val_information19
563       => p_rec.val_information19
564       ,p_val_information20
565       => p_rec.val_information20
566       ,p_object_version_number
567       => p_rec.object_version_number
568       ,p_fuel_benefit
569       => p_rec.fuel_benefit
570       ,p_effective_start_date_o
571       => pqp_val_shd.g_old_rec.effective_start_date
572       ,p_effective_end_date_o
573       => pqp_val_shd.g_old_rec.effective_end_date
574       ,p_assignment_id_o
575       => pqp_val_shd.g_old_rec.assignment_id
576       ,p_business_group_id_o
577       => pqp_val_shd.g_old_rec.business_group_id
578       ,p_across_assignments_o
579       => pqp_val_shd.g_old_rec.across_assignments
580       ,p_vehicle_repository_id_o
581       => pqp_val_shd.g_old_rec.vehicle_repository_id
582       ,p_usage_type_o
583       => pqp_val_shd.g_old_rec.usage_type
584       ,p_capital_contribution_o
585       => pqp_val_shd.g_old_rec.capital_contribution
586       ,p_private_contribution_o
587       => pqp_val_shd.g_old_rec.private_contribution
588       ,p_default_vehicle_o
589       => pqp_val_shd.g_old_rec.default_vehicle
590       ,p_fuel_card_o
591       => pqp_val_shd.g_old_rec.fuel_card
592       ,p_fuel_card_number_o
593       => pqp_val_shd.g_old_rec.fuel_card_number
594       ,p_calculation_method_o
595       => pqp_val_shd.g_old_rec.calculation_method
596       ,p_rates_table_id_o
597       => pqp_val_shd.g_old_rec.rates_table_id
598       ,p_element_type_id_o
599       => pqp_val_shd.g_old_rec.element_type_id
600       ,p_private_use_flag_o
601       => pqp_val_shd.g_old_rec.private_use_flag
602       ,p_insurance_number_o
603       => pqp_val_shd.g_old_rec.insurance_number
604       ,p_insurance_expiry_date_o
605       => pqp_val_shd.g_old_rec.insurance_expiry_date
606       ,p_val_attribute_category_o
607       => pqp_val_shd.g_old_rec.val_attribute_category
608       ,p_val_attribute1_o
609       => pqp_val_shd.g_old_rec.val_attribute1
610       ,p_val_attribute2_o
611       => pqp_val_shd.g_old_rec.val_attribute2
612       ,p_val_attribute3_o
613       => pqp_val_shd.g_old_rec.val_attribute3
614       ,p_val_attribute4_o
615       => pqp_val_shd.g_old_rec.val_attribute4
616       ,p_val_attribute5_o
617       => pqp_val_shd.g_old_rec.val_attribute5
618       ,p_val_attribute6_o
619       => pqp_val_shd.g_old_rec.val_attribute6
620       ,p_val_attribute7_o
621       => pqp_val_shd.g_old_rec.val_attribute7
622       ,p_val_attribute8_o
623       => pqp_val_shd.g_old_rec.val_attribute8
624       ,p_val_attribute9_o
625       => pqp_val_shd.g_old_rec.val_attribute9
626       ,p_val_attribute10_o
627       => pqp_val_shd.g_old_rec.val_attribute10
628       ,p_val_attribute11_o
629       => pqp_val_shd.g_old_rec.val_attribute11
630       ,p_val_attribute12_o
631       => pqp_val_shd.g_old_rec.val_attribute12
632       ,p_val_attribute13_o
633       => pqp_val_shd.g_old_rec.val_attribute13
634       ,p_val_attribute14_o
635       => pqp_val_shd.g_old_rec.val_attribute14
636       ,p_val_attribute15_o
637       => pqp_val_shd.g_old_rec.val_attribute15
638       ,p_val_attribute16_o
639       => pqp_val_shd.g_old_rec.val_attribute16
640       ,p_val_attribute17_o
641       => pqp_val_shd.g_old_rec.val_attribute17
642       ,p_val_attribute18_o
643       => pqp_val_shd.g_old_rec.val_attribute18
644       ,p_val_attribute19_o
645       => pqp_val_shd.g_old_rec.val_attribute19
646       ,p_val_attribute20_o
647       => pqp_val_shd.g_old_rec.val_attribute20
648       ,p_val_information_category_o
649       => pqp_val_shd.g_old_rec.val_information_category
650       ,p_val_information1_o
651       => pqp_val_shd.g_old_rec.val_information1
652       ,p_val_information2_o
653       => pqp_val_shd.g_old_rec.val_information2
654       ,p_val_information3_o
655       => pqp_val_shd.g_old_rec.val_information3
656       ,p_val_information4_o
657       => pqp_val_shd.g_old_rec.val_information4
658       ,p_val_information5_o
659       => pqp_val_shd.g_old_rec.val_information5
660       ,p_val_information6_o
661       => pqp_val_shd.g_old_rec.val_information6
662       ,p_val_information7_o
663       => pqp_val_shd.g_old_rec.val_information7
664       ,p_val_information8_o
665       => pqp_val_shd.g_old_rec.val_information8
666       ,p_val_information9_o
667       => pqp_val_shd.g_old_rec.val_information9
668       ,p_val_information10_o
669       => pqp_val_shd.g_old_rec.val_information10
670       ,p_val_information11_o
671       => pqp_val_shd.g_old_rec.val_information11
672       ,p_val_information12_o
673       => pqp_val_shd.g_old_rec.val_information12
674       ,p_val_information13_o
675       => pqp_val_shd.g_old_rec.val_information13
676       ,p_val_information14_o
677       => pqp_val_shd.g_old_rec.val_information14
678       ,p_val_information15_o
679       => pqp_val_shd.g_old_rec.val_information15
680       ,p_val_information16_o
681       => pqp_val_shd.g_old_rec.val_information16
682       ,p_val_information17_o
683       => pqp_val_shd.g_old_rec.val_information17
684       ,p_val_information18_o
685       => pqp_val_shd.g_old_rec.val_information18
686       ,p_val_information19_o
687       => pqp_val_shd.g_old_rec.val_information19
688       ,p_val_information20_o
689       => pqp_val_shd.g_old_rec.val_information20
690       ,p_object_version_number_o
691       => pqp_val_shd.g_old_rec.object_version_number
692       ,p_fuel_benefit_o
693       => pqp_val_shd.g_old_rec.fuel_benefit
694 
695       ,p_sliding_rates_info_o
696       => pqp_val_shd.g_old_rec.sliding_rates_info
697       );
698     --
699   exception
700     --
701     when hr_api.cannot_find_prog_unit then
702       --
703       hr_api.cannot_find_prog_unit_error
704         (p_module_name => 'PQP_VEHICLE_ALLOCATIONS_F'
705         ,p_hook_type   => 'AU');
706       --
707   end;
708   --
709   hr_utility.set_location(' Leaving:'||l_proc, 10);
710 End post_update;
711 --
712 -- ----------------------------------------------------------------------------
713 -- |-----------------------------< convert_defs >-----------------------------|
714 -- ----------------------------------------------------------------------------
715 -- {Start Of Comments}
716 --
717 -- Description:
718 --   The Convert_Defs procedure has one very important function:
719 --   It must return the record structure for the row with all system defaulted
720 --   values converted into its corresponding parameter value for update. When
721 --   we attempt to update a row through the Upd process , certain
722 --   parameters can be defaulted which enables flexibility in the calling of
723 --   the upd process (e.g. only attributes which need to be updated need to be
724 --   specified). For the upd process to determine which attributes
725 --   have NOT been specified we need to check if the parameter has a reserved
726 --   system default value. Therefore, for all parameters which have a
727 --   corresponding reserved system default mechanism specified we need to
728 --   check if a system default is being used. If a system default is being
729 --   used then we convert the defaulted value into its corresponding attribute
730 --   value held in the g_old_rec data structure.
731 --
732 -- Prerequisites:
733 --   This private function can only be called from the upd process.
734 --
735 -- In Parameters:
736 --   A Pl/Sql record structure.
737 --
738 -- Post Success:
739 --   The record structure will be returned with all system defaulted parameter
740 --   values converted into its current row attribute value.
741 --
742 -- Post Failure:
743 --   No direct error handling is required within this function. Any possible
744 --   errors within this procedure will be a PL/SQL value error due to
745 --   conversion of datatypes or data lengths.
746 --
747 -- Developer Implementation Notes:
748 --   None.
749 --
750 -- Access Status:
751 --   Internal Row Handler Use Only.
752 --
753 -- {End Of Comments}
754 -- ----------------------------------------------------------------------------
755 Procedure convert_defs
756   (p_rec in out nocopy pqp_val_shd.g_rec_type
757   ) is
758 --
759 Begin
760   --
761   -- We must now examine each argument value in the
762   -- p_rec plsql record structure
763   -- to see if a system default is being used. If a system default
764   -- is being used then we must set to the 'current' argument value.
765   --
766   If (p_rec.assignment_id = hr_api.g_number) then
767     p_rec.assignment_id :=
768     pqp_val_shd.g_old_rec.assignment_id;
769   End If;
770   If (p_rec.business_group_id = hr_api.g_number) then
771     p_rec.business_group_id :=
772     pqp_val_shd.g_old_rec.business_group_id;
773   End If;
774   If (p_rec.across_assignments = hr_api.g_varchar2) then
775     p_rec.across_assignments :=
776     pqp_val_shd.g_old_rec.across_assignments;
777   End If;
778   If (p_rec.vehicle_repository_id = hr_api.g_number) then
779     p_rec.vehicle_repository_id :=
780     pqp_val_shd.g_old_rec.vehicle_repository_id;
781   End If;
782   If (p_rec.usage_type = hr_api.g_varchar2) then
783     p_rec.usage_type :=
784     pqp_val_shd.g_old_rec.usage_type;
785   End If;
786   If (p_rec.capital_contribution = hr_api.g_number) then
787     p_rec.capital_contribution :=
788     pqp_val_shd.g_old_rec.capital_contribution;
789   End If;
790   If (p_rec.private_contribution = hr_api.g_number) then
791     p_rec.private_contribution :=
792     pqp_val_shd.g_old_rec.private_contribution;
793   End If;
794   If (p_rec.default_vehicle = hr_api.g_varchar2) then
795     p_rec.default_vehicle :=
796     pqp_val_shd.g_old_rec.default_vehicle;
797   End If;
798   If (p_rec.fuel_card = hr_api.g_varchar2) then
799     p_rec.fuel_card :=
800     pqp_val_shd.g_old_rec.fuel_card;
801   End If;
802   If (p_rec.fuel_card_number = hr_api.g_varchar2) then
803     p_rec.fuel_card_number :=
804     pqp_val_shd.g_old_rec.fuel_card_number;
805   End If;
806   If (p_rec.calculation_method = hr_api.g_varchar2) then
807     p_rec.calculation_method :=
808     pqp_val_shd.g_old_rec.calculation_method;
809   End If;
810   If (p_rec.rates_table_id = hr_api.g_number) then
811     p_rec.rates_table_id :=
812     pqp_val_shd.g_old_rec.rates_table_id;
813   End If;
814   If (p_rec.element_type_id = hr_api.g_number) then
815     p_rec.element_type_id :=
816     pqp_val_shd.g_old_rec.element_type_id;
817   End If;
818   If (p_rec.private_use_flag = hr_api.g_varchar2) then
819     p_rec.private_use_flag :=
820     pqp_val_shd.g_old_rec.private_use_flag;
821   End If;
822   If (p_rec.insurance_number = hr_api.g_varchar2) then
823     p_rec.insurance_number :=
824     pqp_val_shd.g_old_rec.insurance_number;
825   End If;
826   If (p_rec.insurance_expiry_date = hr_api.g_date) then
827     p_rec.insurance_expiry_date :=
828     pqp_val_shd.g_old_rec.insurance_expiry_date;
829   End If;
830   If (p_rec.val_attribute_category = hr_api.g_varchar2) then
831     p_rec.val_attribute_category :=
832     pqp_val_shd.g_old_rec.val_attribute_category;
833   End If;
834   If (p_rec.val_attribute1 = hr_api.g_varchar2) then
835     p_rec.val_attribute1 :=
836     pqp_val_shd.g_old_rec.val_attribute1;
837   End If;
838   If (p_rec.val_attribute2 = hr_api.g_varchar2) then
839     p_rec.val_attribute2 :=
840     pqp_val_shd.g_old_rec.val_attribute2;
841   End If;
842   If (p_rec.val_attribute3 = hr_api.g_varchar2) then
843     p_rec.val_attribute3 :=
844     pqp_val_shd.g_old_rec.val_attribute3;
845   End If;
846   If (p_rec.val_attribute4 = hr_api.g_varchar2) then
847     p_rec.val_attribute4 :=
848     pqp_val_shd.g_old_rec.val_attribute4;
849   End If;
850   If (p_rec.val_attribute5 = hr_api.g_varchar2) then
851     p_rec.val_attribute5 :=
852     pqp_val_shd.g_old_rec.val_attribute5;
853   End If;
854   If (p_rec.val_attribute6 = hr_api.g_varchar2) then
855     p_rec.val_attribute6 :=
856     pqp_val_shd.g_old_rec.val_attribute6;
857   End If;
858   If (p_rec.val_attribute7 = hr_api.g_varchar2) then
859     p_rec.val_attribute7 :=
860     pqp_val_shd.g_old_rec.val_attribute7;
861   End If;
862   If (p_rec.val_attribute8 = hr_api.g_varchar2) then
863     p_rec.val_attribute8 :=
864     pqp_val_shd.g_old_rec.val_attribute8;
865   End If;
866   If (p_rec.val_attribute9 = hr_api.g_varchar2) then
867     p_rec.val_attribute9 :=
868     pqp_val_shd.g_old_rec.val_attribute9;
869   End If;
870   If (p_rec.val_attribute10 = hr_api.g_varchar2) then
871     p_rec.val_attribute10 :=
872     pqp_val_shd.g_old_rec.val_attribute10;
873   End If;
874   If (p_rec.val_attribute11 = hr_api.g_varchar2) then
875     p_rec.val_attribute11 :=
876     pqp_val_shd.g_old_rec.val_attribute11;
877   End If;
878   If (p_rec.val_attribute12 = hr_api.g_varchar2) then
879     p_rec.val_attribute12 :=
880     pqp_val_shd.g_old_rec.val_attribute12;
881   End If;
882   If (p_rec.val_attribute13 = hr_api.g_varchar2) then
883     p_rec.val_attribute13 :=
884     pqp_val_shd.g_old_rec.val_attribute13;
885   End If;
886   If (p_rec.val_attribute14 = hr_api.g_varchar2) then
887     p_rec.val_attribute14 :=
888     pqp_val_shd.g_old_rec.val_attribute14;
889   End If;
890   If (p_rec.val_attribute15 = hr_api.g_varchar2) then
891     p_rec.val_attribute15 :=
892     pqp_val_shd.g_old_rec.val_attribute15;
893   End If;
894   If (p_rec.val_attribute16 = hr_api.g_varchar2) then
895     p_rec.val_attribute16 :=
896     pqp_val_shd.g_old_rec.val_attribute16;
897   End If;
898   If (p_rec.val_attribute17 = hr_api.g_varchar2) then
899     p_rec.val_attribute17 :=
900     pqp_val_shd.g_old_rec.val_attribute17;
901   End If;
902   If (p_rec.val_attribute18 = hr_api.g_varchar2) then
903     p_rec.val_attribute18 :=
904     pqp_val_shd.g_old_rec.val_attribute18;
905   End If;
906   If (p_rec.val_attribute19 = hr_api.g_varchar2) then
907     p_rec.val_attribute19 :=
908     pqp_val_shd.g_old_rec.val_attribute19;
909   End If;
910   If (p_rec.val_attribute20 = hr_api.g_varchar2) then
911     p_rec.val_attribute20 :=
912     pqp_val_shd.g_old_rec.val_attribute20;
913   End If;
914   If (p_rec.val_information_category = hr_api.g_varchar2) then
915     p_rec.val_information_category :=
916     pqp_val_shd.g_old_rec.val_information_category;
917   End If;
918   If (p_rec.val_information1 = hr_api.g_varchar2) then
919     p_rec.val_information1 :=
920     pqp_val_shd.g_old_rec.val_information1;
921   End If;
922   If (p_rec.val_information2 = hr_api.g_varchar2) then
923     p_rec.val_information2 :=
924     pqp_val_shd.g_old_rec.val_information2;
925   End If;
926   If (p_rec.val_information3 = hr_api.g_varchar2) then
927     p_rec.val_information3 :=
928     pqp_val_shd.g_old_rec.val_information3;
929   End If;
930   If (p_rec.val_information4 = hr_api.g_varchar2) then
931     p_rec.val_information4 :=
932     pqp_val_shd.g_old_rec.val_information4;
933   End If;
934   If (p_rec.val_information5 = hr_api.g_varchar2) then
935     p_rec.val_information5 :=
936     pqp_val_shd.g_old_rec.val_information5;
937   End If;
938   If (p_rec.val_information6 = hr_api.g_varchar2) then
939     p_rec.val_information6 :=
940     pqp_val_shd.g_old_rec.val_information6;
941   End If;
942   If (p_rec.val_information7 = hr_api.g_varchar2) then
943     p_rec.val_information7 :=
944     pqp_val_shd.g_old_rec.val_information7;
945   End If;
946   If (p_rec.val_information8 = hr_api.g_varchar2) then
947     p_rec.val_information8 :=
948     pqp_val_shd.g_old_rec.val_information8;
949   End If;
950   If (p_rec.val_information9 = hr_api.g_varchar2) then
951     p_rec.val_information9 :=
952     pqp_val_shd.g_old_rec.val_information9;
953   End If;
954   If (p_rec.val_information10 = hr_api.g_varchar2) then
955     p_rec.val_information10 :=
956     pqp_val_shd.g_old_rec.val_information10;
957   End If;
958   If (p_rec.val_information11 = hr_api.g_varchar2) then
959     p_rec.val_information11 :=
960     pqp_val_shd.g_old_rec.val_information11;
961   End If;
962   If (p_rec.val_information12 = hr_api.g_varchar2) then
963     p_rec.val_information12 :=
964     pqp_val_shd.g_old_rec.val_information12;
965   End If;
966   If (p_rec.val_information13 = hr_api.g_varchar2) then
967     p_rec.val_information13 :=
968     pqp_val_shd.g_old_rec.val_information13;
969   End If;
970   If (p_rec.val_information14 = hr_api.g_varchar2) then
971     p_rec.val_information14 :=
972     pqp_val_shd.g_old_rec.val_information14;
973   End If;
974   If (p_rec.val_information15 = hr_api.g_varchar2) then
975     p_rec.val_information15 :=
976     pqp_val_shd.g_old_rec.val_information15;
977   End If;
978   If (p_rec.val_information16 = hr_api.g_varchar2) then
979     p_rec.val_information16 :=
980     pqp_val_shd.g_old_rec.val_information16;
981   End If;
982   If (p_rec.val_information17 = hr_api.g_varchar2) then
983     p_rec.val_information17 :=
984     pqp_val_shd.g_old_rec.val_information17;
985   End If;
986   If (p_rec.val_information18 = hr_api.g_varchar2) then
987     p_rec.val_information18 :=
988     pqp_val_shd.g_old_rec.val_information18;
989   End If;
990   If (p_rec.val_information19 = hr_api.g_varchar2) then
991     p_rec.val_information19 :=
992     pqp_val_shd.g_old_rec.val_information19;
993   End If;
994   If (p_rec.val_information20 = hr_api.g_varchar2) then
995     p_rec.val_information20 :=
996     pqp_val_shd.g_old_rec.val_information20;
997   End If;
998   If (p_rec.fuel_benefit = hr_api.g_varchar2) then
999     p_rec.fuel_benefit :=
1000     pqp_val_shd.g_old_rec.fuel_benefit;
1001   End If;
1002   If (p_rec.sliding_rates_info = hr_api.g_varchar2) then
1003     p_rec.sliding_rates_info :=
1004     pqp_val_shd.g_old_rec.sliding_rates_info;
1005   End If;
1006   --
1007 End convert_defs;
1008 --
1009 -- ----------------------------------------------------------------------------
1010 -- |---------------------------------< upd >----------------------------------|
1011 -- ----------------------------------------------------------------------------
1012 Procedure upd
1013   (p_effective_date in     date
1014   ,p_datetrack_mode in     varchar2
1015   ,p_rec            in out nocopy pqp_val_shd.g_rec_type
1016   ) is
1017 --
1018   l_proc                        varchar2(72) := g_package||'upd';
1019   l_validation_start_date       date;
1020   l_validation_end_date         date;
1021 --
1022 Begin
1023   hr_utility.set_location('Entering:'||l_proc, 5);
1024   --
1025   -- Ensure that the DateTrack update mode is valid
1026   --
1027   dt_api.validate_dt_upd_mode(p_datetrack_mode => p_datetrack_mode);
1028   --
1029   -- We must lock the row which we need to update.
1030   --
1031   pqp_val_shd.lck
1032     (p_effective_date                   => p_effective_date
1033     ,p_datetrack_mode                   => p_datetrack_mode
1034     ,p_vehicle_allocation_id            => p_rec.vehicle_allocation_id
1035     ,p_object_version_number            => p_rec.object_version_number
1036     ,p_validation_start_date            => l_validation_start_date
1037     ,p_validation_end_date              => l_validation_end_date
1038     );
1039   --
1040   -- 1. During an update system defaults are used to determine if
1041   --    arguments have been defaulted or not. We must therefore
1042   --    derive the full record structure values to be updated.
1043   --
1044   -- 2. Call the supporting update validate operations.
1045   --
1046   pqp_val_upd.convert_defs(p_rec);
1047   --
1048   pqp_val_bus.update_validate
1049     (p_rec                              => p_rec
1050     ,p_effective_date                   => p_effective_date
1051     ,p_datetrack_mode                   => p_datetrack_mode
1052     ,p_validation_start_date            => l_validation_start_date
1053     ,p_validation_end_date              => l_validation_end_date
1054     );
1055   --
1056   -- Call to raise any errors on multi-message list
1057   hr_multi_message.end_validation_set;
1058   --
1059   -- Call the supporting pre-update operation
1060   --
1061   pre_update
1062     (p_rec                              => p_rec
1063     ,p_effective_date                   => p_effective_date
1064     ,p_datetrack_mode                   => p_datetrack_mode
1065     ,p_validation_start_date            => l_validation_start_date
1066     ,p_validation_end_date              => l_validation_end_date
1067     );
1068   --
1069   -- Update the row.
1070   --
1071   update_dml
1072     (p_rec                              => p_rec
1073     ,p_effective_date                   => p_effective_date
1074     ,p_datetrack_mode                   => p_datetrack_mode
1075     ,p_validation_start_date            => l_validation_start_date
1076     ,p_validation_end_date                  => l_validation_end_date
1077     );
1078   --
1079   -- Call the supporting post-update operation
1080   --
1081   post_update
1082     (p_rec                              => p_rec
1083     ,p_effective_date                   => p_effective_date
1084     ,p_datetrack_mode                   => p_datetrack_mode
1085     ,p_validation_start_date            => l_validation_start_date
1086     ,p_validation_end_date              => l_validation_end_date
1087     );
1088   --
1089   -- Call to raise any errors on multi-message list
1090   hr_multi_message.end_validation_set;
1091 End upd;
1092 --
1093 -- ----------------------------------------------------------------------------
1094 -- |------------------------------< upd >-------------------------------------|
1095 -- ----------------------------------------------------------------------------
1096 Procedure upd
1097   (p_effective_date               in     date
1098   ,p_datetrack_mode               in     varchar2
1099   ,p_vehicle_allocation_id        in     number
1100   ,p_object_version_number        in out nocopy number
1101   ,p_assignment_id                in     number
1102   ,p_business_group_id            in     number
1103   ,p_vehicle_repository_id        in     number
1104   ,p_across_assignments           in     varchar2
1105   ,p_usage_type                   in     varchar2
1106   ,p_capital_contribution         in     number
1107   ,p_private_contribution         in     number
1108   ,p_default_vehicle              in     varchar2
1109   ,p_fuel_card                    in     varchar2
1110   ,p_fuel_card_number             in     varchar2
1111   ,p_calculation_method           in     varchar2
1112   ,p_rates_table_id               in     number
1113   ,p_element_type_id              in     number
1114   ,p_private_use_flag             in     varchar2
1115   ,p_insurance_number             in     varchar2
1116   ,p_insurance_expiry_date        in     date
1117   ,p_val_attribute_category       in     varchar2
1118   ,p_val_attribute1               in     varchar2
1119   ,p_val_attribute2               in     varchar2
1120   ,p_val_attribute3               in     varchar2
1121   ,p_val_attribute4               in     varchar2
1122   ,p_val_attribute5               in     varchar2
1123   ,p_val_attribute6               in     varchar2
1124   ,p_val_attribute7               in     varchar2
1125   ,p_val_attribute8               in     varchar2
1126   ,p_val_attribute9               in     varchar2
1127   ,p_val_attribute10              in     varchar2
1128   ,p_val_attribute11              in     varchar2
1129   ,p_val_attribute12              in     varchar2
1130   ,p_val_attribute13              in     varchar2
1131   ,p_val_attribute14              in     varchar2
1132   ,p_val_attribute15              in     varchar2
1133   ,p_val_attribute16              in     varchar2
1134   ,p_val_attribute17              in     varchar2
1135   ,p_val_attribute18              in     varchar2
1136   ,p_val_attribute19              in     varchar2
1137   ,p_val_attribute20              in     varchar2
1138   ,p_val_information_category     in     varchar2
1139   ,p_val_information1             in     varchar2
1140   ,p_val_information2             in     varchar2
1141   ,p_val_information3             in     varchar2
1142   ,p_val_information4             in     varchar2
1143   ,p_val_information5             in     varchar2
1144   ,p_val_information6             in     varchar2
1145   ,p_val_information7             in     varchar2
1146   ,p_val_information8             in     varchar2
1147   ,p_val_information9             in     varchar2
1148   ,p_val_information10            in     varchar2
1149   ,p_val_information11            in     varchar2
1150   ,p_val_information12            in     varchar2
1151   ,p_val_information13            in     varchar2
1152   ,p_val_information14            in     varchar2
1153   ,p_val_information15            in     varchar2
1154   ,p_val_information16            in     varchar2
1155   ,p_val_information17            in     varchar2
1156   ,p_val_information18            in     varchar2
1157   ,p_val_information19            in     varchar2
1158   ,p_val_information20            in     varchar2
1159   ,p_fuel_benefit                 in     varchar2
1160   ,p_sliding_rates_info           in     varchar2
1161   ,p_effective_start_date         out nocopy date
1162   ,p_effective_end_date           out nocopy date
1163   ) is
1164 --
1165   l_rec         pqp_val_shd.g_rec_type;
1166   l_proc        varchar2(72) := g_package||'upd';
1167 --
1168 Begin
1169   hr_utility.set_location('Entering:'||l_proc, 5);
1170   --
1171   -- Call conversion function to turn arguments into the
1172   -- l_rec structure.
1173   --
1174   l_rec :=
1175   pqp_val_shd.convert_args
1176     (p_vehicle_allocation_id
1177     ,null
1178     ,null
1179     ,p_assignment_id
1180     ,p_business_group_id
1181     ,p_across_assignments
1182     ,p_vehicle_repository_id
1183     ,p_usage_type
1184     ,p_capital_contribution
1185     ,p_private_contribution
1186     ,p_default_vehicle
1187     ,p_fuel_card
1188     ,p_fuel_card_number
1189     ,p_calculation_method
1190     ,p_rates_table_id
1191     ,p_element_type_id
1192     ,p_private_use_flag
1193     ,p_insurance_number
1194     ,p_insurance_expiry_date
1195     ,p_val_attribute_category
1196     ,p_val_attribute1
1197     ,p_val_attribute2
1198     ,p_val_attribute3
1199     ,p_val_attribute4
1200     ,p_val_attribute5
1201     ,p_val_attribute6
1202     ,p_val_attribute7
1203     ,p_val_attribute8
1204     ,p_val_attribute9
1205     ,p_val_attribute10
1206     ,p_val_attribute11
1207     ,p_val_attribute12
1208     ,p_val_attribute13
1209     ,p_val_attribute14
1210     ,p_val_attribute15
1211     ,p_val_attribute16
1212     ,p_val_attribute17
1213     ,p_val_attribute18
1214     ,p_val_attribute19
1215     ,p_val_attribute20
1216     ,p_val_information_category
1217     ,p_val_information1
1218     ,p_val_information2
1219     ,p_val_information3
1220     ,p_val_information4
1221     ,p_val_information5
1222     ,p_val_information6
1223     ,p_val_information7
1224     ,p_val_information8
1225     ,p_val_information9
1226     ,p_val_information10
1227     ,p_val_information11
1228     ,p_val_information12
1229     ,p_val_information13
1230     ,p_val_information14
1231     ,p_val_information15
1232     ,p_val_information16
1233     ,p_val_information17
1234     ,p_val_information18
1235     ,p_val_information19
1236     ,p_val_information20
1237     ,p_object_version_number
1238     ,p_fuel_benefit
1239     ,p_sliding_rates_info
1240     );
1241   --
1242   -- Having converted the arguments into the
1243   -- plsql record structure we call the corresponding record
1244   -- business process.
1245   --
1246   pqp_val_upd.upd
1247     (p_effective_date
1248     ,p_datetrack_mode
1249     ,l_rec
1250     );
1251   --
1252   -- Set the out parameters
1253   --
1254   p_object_version_number            := l_rec.object_version_number;
1255   p_effective_start_date             := l_rec.effective_start_date;
1256   p_effective_end_date               := l_rec.effective_end_date;
1257   --
1258   --
1259   hr_utility.set_location(' Leaving:'||l_proc, 10);
1260 End upd;
1261 --
1262 end pqp_val_upd;