DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_PRF_UPD

Source


1 Package Body pay_prf_upd as
2 /* $Header: pyprfrhi.pkb 120.0 2005/05/29 07:49 appldev noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33) := '  pay_prf_upd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------------< update_dml >------------------------------|
12 -- ----------------------------------------------------------------------------
13 -- {Start Of Comments}
14 --
15 -- Description:
16 --   This procedure controls the actual dml update logic. The processing of
17 --   this procedure is:
18 --   1) Increment the object_version_number by 1 if the object_version_number
19 --      is defined as an attribute for this entity.
20 --   2) To set and unset the g_api_dml status as required (as we are about to
21 --      perform dml).
22 --   3) To update the specified row in the schema using the primary key in
23 --      the predicates.
24 --   4) To trap any constraint violations that may have occurred.
25 --   5) To raise any other errors.
26 --
27 -- Prerequisites:
28 --   This is an internal private procedure which must be called from the upd
29 --   procedure.
30 --
31 -- In Parameters:
32 --   A Pl/Sql record structre.
33 --
34 -- Post Success:
35 --   The specified row will be updated in the schema.
36 --
37 -- Post Failure:
38 --   On the update dml failure it is important to note that we always reset the
39 --   g_api_dml status to false.
40 --   If a check, unique or parent integrity constraint violation is raised the
41 --   constraint_error procedure will be called.
42 --   If any other error is reported, the error will be raised after the
43 --   g_api_dml status is reset.
44 --
45 -- Developer Implementation Notes:
46 --   The update 'set' attribute list should be modified if any of your
47 --   attributes are not updateable.
48 --
49 -- Access Status:
50 --   Internal Row Handler Use Only.
51 --
52 -- {End Of Comments}
53 -- ----------------------------------------------------------------------------
54 Procedure update_dml
55   (p_rec in out nocopy pay_prf_shd.g_rec_type
56   ) is
57 --
58   l_proc  varchar2(72) := g_package||'update_dml';
59 --
60 Begin
61   hr_utility.set_location('Entering:'||l_proc, 5);
62   --
63   -- Increment the object version
64   p_rec.object_version_number := p_rec.object_version_number + 1;
65   --
66   --
67   --
68   -- Update the pay_range_tables_f Row
69   --
70   update pay_range_tables_f
71     set
72      range_table_id                  = p_rec.range_table_id
73     ,effective_start_date            = p_rec.effective_start_date
74     ,effective_end_date              = p_rec.effective_end_date
75     ,range_table_number              = p_rec.range_table_number
76     ,row_value_uom                   = p_rec.row_value_uom
77     ,period_frequency                = p_rec.period_frequency
78     ,earnings_type                   = p_rec.earnings_type
79     ,business_group_id               = p_rec.business_group_id
80     ,legislation_code                = p_rec.legislation_code
81     ,last_updated_login              = p_rec.last_updated_login
82     ,created_date                    = p_rec.created_date
83     ,object_version_number           = p_rec.object_version_number
84     ,attribute_category              = p_rec.attribute_category
85     ,attribute1                      = p_rec.attribute1
86     ,attribute2                      = p_rec.attribute2
87     ,attribute3                      = p_rec.attribute3
88     ,attribute4                      = p_rec.attribute4
89     ,attribute5                      = p_rec.attribute5
90     ,attribute6                      = p_rec.attribute6
91     ,attribute7                      = p_rec.attribute7
92     ,attribute8                      = p_rec.attribute8
93     ,attribute9                      = p_rec.attribute9
94     ,attribute10                     = p_rec.attribute10
95     ,attribute11                     = p_rec.attribute11
96     ,attribute12                     = p_rec.attribute12
97     ,attribute13                     = p_rec.attribute13
98     ,attribute14                     = p_rec.attribute14
99     ,attribute15                     = p_rec.attribute15
100     ,attribute16                     = p_rec.attribute16
101     ,attribute17                     = p_rec.attribute17
102     ,attribute18                     = p_rec.attribute18
103     ,attribute19                     = p_rec.attribute19
104     ,attribute20                     = p_rec.attribute20
105     ,attribute21                     = p_rec.attribute21
106     ,attribute22                     = p_rec.attribute22
107     ,attribute23                     = p_rec.attribute23
108     ,attribute24                     = p_rec.attribute24
109     ,attribute25                     = p_rec.attribute25
110     ,attribute26                     = p_rec.attribute26
111     ,attribute27                     = p_rec.attribute27
112     ,attribute28                     = p_rec.attribute28
113     ,attribute29                     = p_rec.attribute29
114     ,attribute30                     = p_rec.attribute30
115     ,ran_information_category        = p_rec.ran_information_category
116     ,ran_information1                = p_rec.ran_information1
117     ,ran_information2                = p_rec.ran_information2
118     ,ran_information3                = p_rec.ran_information3
119     ,ran_information4                = p_rec.ran_information4
120     ,ran_information5                = p_rec.ran_information5
121     ,ran_information6                = p_rec.ran_information6
122     ,ran_information7                = p_rec.ran_information7
123     ,ran_information8                = p_rec.ran_information8
124     ,ran_information9                = p_rec.ran_information9
125     ,ran_information10               = p_rec.ran_information10
126     ,ran_information11               = p_rec.ran_information11
127     ,ran_information12               = p_rec.ran_information12
128     ,ran_information13               = p_rec.ran_information13
129     ,ran_information14               = p_rec.ran_information14
130     ,ran_information15               = p_rec.ran_information15
131     ,ran_information16               = p_rec.ran_information16
132     ,ran_information17               = p_rec.ran_information17
133     ,ran_information18               = p_rec.ran_information18
134     ,ran_information19               = p_rec.ran_information19
135     ,ran_information20               = p_rec.ran_information20
136     ,ran_information21               = p_rec.ran_information21
137     ,ran_information22               = p_rec.ran_information22
138     ,ran_information23               = p_rec.ran_information23
139     ,ran_information24               = p_rec.ran_information24
140     ,ran_information25               = p_rec.ran_information25
141     ,ran_information26               = p_rec.ran_information26
142     ,ran_information27               = p_rec.ran_information27
143     ,ran_information28               = p_rec.ran_information28
144     ,ran_information29               = p_rec.ran_information29
145     ,ran_information30               = p_rec.ran_information30
146     where range_table_id = p_rec.range_table_id;
147   --
148   --
149   --
150   hr_utility.set_location(' Leaving:'||l_proc, 10);
151 --
152 Exception
153   When hr_api.check_integrity_violated Then
154     -- A check constraint has been violated
155     --
156     pay_prf_shd.constraint_error
157       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
158   When hr_api.parent_integrity_violated Then
159     -- Parent integrity has been violated
160     --
161     pay_prf_shd.constraint_error
162       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
163   When hr_api.unique_integrity_violated Then
164     -- Unique integrity has been violated
165     --
166     pay_prf_shd.constraint_error
167       (p_constraint_name => hr_api.strip_constraint_name(SQLERRM));
168   When Others Then
169     --
170     Raise;
171 End update_dml;
172 --
173 -- ----------------------------------------------------------------------------
174 -- |------------------------------< pre_update >------------------------------|
175 -- ----------------------------------------------------------------------------
176 -- {Start Of Comments}
177 --
178 -- Description:
179 --   This private procedure contains any processing which is required before
180 --   the update dml.
181 --
182 -- Prerequisites:
183 --   This is an internal procedure which is called from the upd procedure.
184 --
185 -- In Parameters:
186 --   A Pl/Sql record structure.
187 --
188 -- Post Success:
189 --   Processing continues.
190 --
191 -- Post Failure:
192 --   If an error has occurred, an error message and exception wil be raised
193 --   but not handled.
194 --
195 -- Developer Implementation Notes:
196 --   Any pre-processing required before the update dml is issued should be
197 --   coded within this procedure. It is important to note that any 3rd party
198 --   maintenance should be reviewed before placing in this procedure.
199 --
200 -- Access Status:
201 --   Internal Row Handler Use Only.
202 --
203 -- {End Of Comments}
204 -- ----------------------------------------------------------------------------
205 Procedure pre_update
206   (p_rec in pay_prf_shd.g_rec_type
207   ) is
208 --
209   l_proc  varchar2(72) := g_package||'pre_update';
210 --
211 Begin
212   hr_utility.set_location('Entering:'||l_proc, 5);
213   --
214   hr_utility.set_location(' Leaving:'||l_proc, 10);
215 End pre_update;
216 --
217 -- ----------------------------------------------------------------------------
218 -- |-----------------------------< post_update >------------------------------|
219 -- ----------------------------------------------------------------------------
220 -- {Start Of Comments}
221 --
222 -- Description:
223 --   This private procedure contains any processing which is required after
224 --   the update dml.
225 --
226 -- Prerequisites:
227 --   This is an internal procedure which is called from the upd procedure.
228 --
229 -- In Parameters:
230 --   A Pl/Sql record structure.
231 --
232 -- Post Success:
233 --   Processing continues.
234 --
235 -- Post Failure:
236 --   If an error has occurred, an error message and exception will be raised
237 --   but not handled.
238 --
239 -- Developer Implementation Notes:
240 --   Any post-processing required after the update dml is issued should be
241 --   coded within this procedure. It is important to note that any 3rd party
242 --   maintenance should be reviewed before placing in this procedure.
243 --
244 -- Access Status:
245 --   Internal Row Handler Use Only.
246 --
247 -- {End Of Comments}
248 -- ----------------------------------------------------------------------------
249 Procedure post_update
250   (p_rec                          in pay_prf_shd.g_rec_type
251   ) is
252 --
253   l_proc  varchar2(72) := g_package||'post_update';
254 --
255 Begin
256   hr_utility.set_location('Entering:'||l_proc, 5);
257   begin
258     --
259     pay_prf_rku.after_update
260       (p_range_table_id
261       => p_rec.range_table_id
262       ,p_effective_start_date
263       => p_rec.effective_start_date
264       ,p_effective_end_date
265       => p_rec.effective_end_date
266       ,p_range_table_number
267       => p_rec.range_table_number
268       ,p_row_value_uom
269       => p_rec.row_value_uom
270       ,p_period_frequency
271       => p_rec.period_frequency
272       ,p_earnings_type
273       => p_rec.earnings_type
274       ,p_business_group_id
275       => p_rec.business_group_id
276       ,p_legislation_code
277       => p_rec.legislation_code
278       ,p_last_updated_login
279       => p_rec.last_updated_login
280       ,p_created_date
281       => p_rec.created_date
282       ,p_object_version_number
283       => p_rec.object_version_number
284       ,p_attribute_category
285       => p_rec.attribute_category
286       ,p_attribute1
287       => p_rec.attribute1
288       ,p_attribute2
289       => p_rec.attribute2
290       ,p_attribute3
291       => p_rec.attribute3
292       ,p_attribute4
293       => p_rec.attribute4
294       ,p_attribute5
295       => p_rec.attribute5
296       ,p_attribute6
297       => p_rec.attribute6
298       ,p_attribute7
299       => p_rec.attribute7
300       ,p_attribute8
301       => p_rec.attribute8
302       ,p_attribute9
303       => p_rec.attribute9
304       ,p_attribute10
305       => p_rec.attribute10
306       ,p_attribute11
307       => p_rec.attribute11
308       ,p_attribute12
309       => p_rec.attribute12
310       ,p_attribute13
311       => p_rec.attribute13
312       ,p_attribute14
313       => p_rec.attribute14
314       ,p_attribute15
315       => p_rec.attribute15
316       ,p_attribute16
317       => p_rec.attribute16
318       ,p_attribute17
319       => p_rec.attribute17
320       ,p_attribute18
321       => p_rec.attribute18
322       ,p_attribute19
323       => p_rec.attribute19
324       ,p_attribute20
325       => p_rec.attribute20
326       ,p_attribute21
327       => p_rec.attribute21
328       ,p_attribute22
329       => p_rec.attribute22
330       ,p_attribute23
331       => p_rec.attribute23
332       ,p_attribute24
333       => p_rec.attribute24
334       ,p_attribute25
335       => p_rec.attribute25
336       ,p_attribute26
337       => p_rec.attribute26
338       ,p_attribute27
339       => p_rec.attribute27
340       ,p_attribute28
341       => p_rec.attribute28
342       ,p_attribute29
343       => p_rec.attribute29
344       ,p_attribute30
345       => p_rec.attribute30
346       ,p_ran_information_category
347       => p_rec.ran_information_category
348       ,p_ran_information1
349       => p_rec.ran_information1
350       ,p_ran_information2
351       => p_rec.ran_information2
352       ,p_ran_information3
353       => p_rec.ran_information3
354       ,p_ran_information4
355       => p_rec.ran_information4
356       ,p_ran_information5
357       => p_rec.ran_information5
358       ,p_ran_information6
359       => p_rec.ran_information6
360       ,p_ran_information7
361       => p_rec.ran_information7
362       ,p_ran_information8
363       => p_rec.ran_information8
364       ,p_ran_information9
365       => p_rec.ran_information9
366       ,p_ran_information10
367       => p_rec.ran_information10
368       ,p_ran_information11
369       => p_rec.ran_information11
370       ,p_ran_information12
371       => p_rec.ran_information12
372       ,p_ran_information13
373       => p_rec.ran_information13
374       ,p_ran_information14
375       => p_rec.ran_information14
376       ,p_ran_information15
377       => p_rec.ran_information15
378       ,p_ran_information16
379       => p_rec.ran_information16
380       ,p_ran_information17
381       => p_rec.ran_information17
382       ,p_ran_information18
383       => p_rec.ran_information18
384       ,p_ran_information19
385       => p_rec.ran_information19
386       ,p_ran_information20
387       => p_rec.ran_information20
388       ,p_ran_information21
389       => p_rec.ran_information21
390       ,p_ran_information22
391       => p_rec.ran_information22
392       ,p_ran_information23
393       => p_rec.ran_information23
394       ,p_ran_information24
395       => p_rec.ran_information24
396       ,p_ran_information25
397       => p_rec.ran_information25
398       ,p_ran_information26
399       => p_rec.ran_information26
400       ,p_ran_information27
401       => p_rec.ran_information27
402       ,p_ran_information28
403       => p_rec.ran_information28
404       ,p_ran_information29
405       => p_rec.ran_information29
406       ,p_ran_information30
407       => p_rec.ran_information30
408       ,p_effective_start_date_o
409       => pay_prf_shd.g_old_rec.effective_start_date
410       ,p_effective_end_date_o
411       => pay_prf_shd.g_old_rec.effective_end_date
412       ,p_range_table_number_o
413       => pay_prf_shd.g_old_rec.range_table_number
414       ,p_row_value_uom_o
415       => pay_prf_shd.g_old_rec.row_value_uom
416       ,p_period_frequency_o
417       => pay_prf_shd.g_old_rec.period_frequency
418       ,p_earnings_type_o
419       => pay_prf_shd.g_old_rec.earnings_type
420       ,p_business_group_id_o
421       => pay_prf_shd.g_old_rec.business_group_id
422       ,p_legislation_code_o
423       => pay_prf_shd.g_old_rec.legislation_code
424       ,p_last_updated_login_o
425       => pay_prf_shd.g_old_rec.last_updated_login
426       ,p_created_date_o
427       => pay_prf_shd.g_old_rec.created_date
428       ,p_object_version_number_o
429       => pay_prf_shd.g_old_rec.object_version_number
430       ,p_attribute_category_o
431       => pay_prf_shd.g_old_rec.attribute_category
432       ,p_attribute1_o
433       => pay_prf_shd.g_old_rec.attribute1
434       ,p_attribute2_o
435       => pay_prf_shd.g_old_rec.attribute2
436       ,p_attribute3_o
437       => pay_prf_shd.g_old_rec.attribute3
438       ,p_attribute4_o
439       => pay_prf_shd.g_old_rec.attribute4
440       ,p_attribute5_o
441       => pay_prf_shd.g_old_rec.attribute5
442       ,p_attribute6_o
443       => pay_prf_shd.g_old_rec.attribute6
444       ,p_attribute7_o
445       => pay_prf_shd.g_old_rec.attribute7
446       ,p_attribute8_o
447       => pay_prf_shd.g_old_rec.attribute8
448       ,p_attribute9_o
449       => pay_prf_shd.g_old_rec.attribute9
450       ,p_attribute10_o
451       => pay_prf_shd.g_old_rec.attribute10
452       ,p_attribute11_o
453       => pay_prf_shd.g_old_rec.attribute11
454       ,p_attribute12_o
455       => pay_prf_shd.g_old_rec.attribute12
456       ,p_attribute13_o
457       => pay_prf_shd.g_old_rec.attribute13
458       ,p_attribute14_o
459       => pay_prf_shd.g_old_rec.attribute14
460       ,p_attribute15_o
461       => pay_prf_shd.g_old_rec.attribute15
462       ,p_attribute16_o
463       => pay_prf_shd.g_old_rec.attribute16
464       ,p_attribute17_o
465       => pay_prf_shd.g_old_rec.attribute17
466       ,p_attribute18_o
467       => pay_prf_shd.g_old_rec.attribute18
468       ,p_attribute19_o
469       => pay_prf_shd.g_old_rec.attribute19
470       ,p_attribute20_o
471       => pay_prf_shd.g_old_rec.attribute20
472       ,p_attribute21_o
473       => pay_prf_shd.g_old_rec.attribute21
474       ,p_attribute22_o
475       => pay_prf_shd.g_old_rec.attribute22
476       ,p_attribute23_o
477       => pay_prf_shd.g_old_rec.attribute23
478       ,p_attribute24_o
479       => pay_prf_shd.g_old_rec.attribute24
480       ,p_attribute25_o
481       => pay_prf_shd.g_old_rec.attribute25
482       ,p_attribute26_o
483       => pay_prf_shd.g_old_rec.attribute26
484       ,p_attribute27_o
485       => pay_prf_shd.g_old_rec.attribute27
486       ,p_attribute28_o
487       => pay_prf_shd.g_old_rec.attribute28
488       ,p_attribute29_o
489       => pay_prf_shd.g_old_rec.attribute29
490       ,p_attribute30_o
491       => pay_prf_shd.g_old_rec.attribute30
492       ,p_ran_information_category_o
493       => pay_prf_shd.g_old_rec.ran_information_category
494       ,p_ran_information1_o
495       => pay_prf_shd.g_old_rec.ran_information1
496       ,p_ran_information2_o
497       => pay_prf_shd.g_old_rec.ran_information2
498       ,p_ran_information3_o
499       => pay_prf_shd.g_old_rec.ran_information3
500       ,p_ran_information4_o
501       => pay_prf_shd.g_old_rec.ran_information4
502       ,p_ran_information5_o
503       => pay_prf_shd.g_old_rec.ran_information5
504       ,p_ran_information6_o
505       => pay_prf_shd.g_old_rec.ran_information6
506       ,p_ran_information7_o
507       => pay_prf_shd.g_old_rec.ran_information7
508       ,p_ran_information8_o
509       => pay_prf_shd.g_old_rec.ran_information8
510       ,p_ran_information9_o
511       => pay_prf_shd.g_old_rec.ran_information9
512       ,p_ran_information10_o
513       => pay_prf_shd.g_old_rec.ran_information10
514       ,p_ran_information11_o
515       => pay_prf_shd.g_old_rec.ran_information11
516       ,p_ran_information12_o
517       => pay_prf_shd.g_old_rec.ran_information12
518       ,p_ran_information13_o
519       => pay_prf_shd.g_old_rec.ran_information13
520       ,p_ran_information14_o
521       => pay_prf_shd.g_old_rec.ran_information14
522       ,p_ran_information15_o
523       => pay_prf_shd.g_old_rec.ran_information15
524       ,p_ran_information16_o
525       => pay_prf_shd.g_old_rec.ran_information16
526       ,p_ran_information17_o
527       => pay_prf_shd.g_old_rec.ran_information17
528       ,p_ran_information18_o
529       => pay_prf_shd.g_old_rec.ran_information18
530       ,p_ran_information19_o
531       => pay_prf_shd.g_old_rec.ran_information19
532       ,p_ran_information20_o
533       => pay_prf_shd.g_old_rec.ran_information20
534       ,p_ran_information21_o
535       => pay_prf_shd.g_old_rec.ran_information21
536       ,p_ran_information22_o
537       => pay_prf_shd.g_old_rec.ran_information22
538       ,p_ran_information23_o
539       => pay_prf_shd.g_old_rec.ran_information23
540       ,p_ran_information24_o
541       => pay_prf_shd.g_old_rec.ran_information24
542       ,p_ran_information25_o
543       => pay_prf_shd.g_old_rec.ran_information25
544       ,p_ran_information26_o
545       => pay_prf_shd.g_old_rec.ran_information26
546       ,p_ran_information27_o
547       => pay_prf_shd.g_old_rec.ran_information27
548       ,p_ran_information28_o
549       => pay_prf_shd.g_old_rec.ran_information28
550       ,p_ran_information29_o
551       => pay_prf_shd.g_old_rec.ran_information29
552       ,p_ran_information30_o
553       => pay_prf_shd.g_old_rec.ran_information30
554       );
555     --
556   exception
557     --
558     when hr_api.cannot_find_prog_unit then
559       --
560       hr_api.cannot_find_prog_unit_error
561         (p_module_name => 'PAY_RANGE_TABLES_F'
562         ,p_hook_type   => 'AU');
563       --
564   end;
565   --
566   hr_utility.set_location(' Leaving:'||l_proc, 10);
567 End post_update;
568 --
569 -- ----------------------------------------------------------------------------
570 -- |-----------------------------< convert_defs >-----------------------------|
571 -- ----------------------------------------------------------------------------
572 -- {Start Of Comments}
573 --
574 -- Description:
575 --   The Convert_Defs procedure has one very important function:
576 --   It must return the record structure for the row with all system defaulted
577 --   values converted into its corresponding parameter value for update. When
578 --   we attempt to update a row through the Upd process , certain
579 --   parameters can be defaulted which enables flexibility in the calling of
580 --   the upd process (e.g. only attributes which need to be updated need to be
581 --   specified). For the upd process to determine which attributes
582 --   have NOT been specified we need to check if the parameter has a reserved
583 --   system default value. Therefore, for all parameters which have a
584 --   corresponding reserved system default mechanism specified we need to
585 --   check if a system default is being used. If a system default is being
586 --   used then we convert the defaulted value into its corresponding attribute
587 --   value held in the g_old_rec data structure.
588 --
589 -- Prerequisites:
590 --   This private function can only be called from the upd process.
591 --
592 -- In Parameters:
593 --   A Pl/Sql record structure.
594 --
595 -- Post Success:
596 --   The record structure will be returned with all system defaulted parameter
597 --   values converted into its current row attribute value.
598 --
599 -- Post Failure:
600 --   No direct error handling is required within this function. Any possible
601 --   errors within this procedure will be a PL/SQL value error due to
602 --   conversion of datatypes or data lengths.
603 --
604 -- Developer Implementation Notes:
605 --   None.
606 --
607 -- Access Status:
608 --   Internal Row Handler Use Only.
609 --
610 -- {End Of Comments}
611 -- ----------------------------------------------------------------------------
612 Procedure convert_defs
613   (p_rec in out nocopy pay_prf_shd.g_rec_type
614   ) is
615 --
616 Begin
617   --
618   -- We must now examine each argument value in the
619   -- p_rec plsql record structure
620   -- to see if a system default is being used. If a system default
621   -- is being used then we must set to the 'current' argument value.
622   --
623   If (p_rec.effective_start_date = hr_api.g_date) then
624     p_rec.effective_start_date :=
625     pay_prf_shd.g_old_rec.effective_start_date;
626   End If;
627   If (p_rec.effective_end_date = hr_api.g_date) then
628     p_rec.effective_end_date :=
629     pay_prf_shd.g_old_rec.effective_end_date;
630   End If;
631   If (p_rec.range_table_number = hr_api.g_number) then
632     p_rec.range_table_number :=
633     pay_prf_shd.g_old_rec.range_table_number;
634   End If;
635   If (p_rec.row_value_uom = hr_api.g_varchar2) then
636     p_rec.row_value_uom :=
637     pay_prf_shd.g_old_rec.row_value_uom;
638   End If;
639   If (p_rec.period_frequency = hr_api.g_varchar2) then
640     p_rec.period_frequency :=
641     pay_prf_shd.g_old_rec.period_frequency;
642   End If;
643   If (p_rec.earnings_type = hr_api.g_varchar2) then
644     p_rec.earnings_type :=
645     pay_prf_shd.g_old_rec.earnings_type;
646   End If;
647   If (p_rec.business_group_id = hr_api.g_number) then
648     p_rec.business_group_id :=
649     pay_prf_shd.g_old_rec.business_group_id;
650   End If;
651   If (p_rec.legislation_code = hr_api.g_varchar2) then
652     p_rec.legislation_code :=
653     pay_prf_shd.g_old_rec.legislation_code;
654   End If;
655   If (p_rec.last_updated_login = hr_api.g_number) then
656     p_rec.last_updated_login :=
657     pay_prf_shd.g_old_rec.last_updated_login;
658   End If;
659   If (p_rec.created_date = hr_api.g_date) then
660     p_rec.created_date :=
661     pay_prf_shd.g_old_rec.created_date;
662   End If;
663   If (p_rec.attribute_category = hr_api.g_varchar2) then
664     p_rec.attribute_category :=
665     pay_prf_shd.g_old_rec.attribute_category;
666   End If;
667   If (p_rec.attribute1 = hr_api.g_varchar2) then
668     p_rec.attribute1 :=
669     pay_prf_shd.g_old_rec.attribute1;
670   End If;
671   If (p_rec.attribute2 = hr_api.g_varchar2) then
672     p_rec.attribute2 :=
673     pay_prf_shd.g_old_rec.attribute2;
674   End If;
675   If (p_rec.attribute3 = hr_api.g_varchar2) then
676     p_rec.attribute3 :=
677     pay_prf_shd.g_old_rec.attribute3;
678   End If;
679   If (p_rec.attribute4 = hr_api.g_varchar2) then
680     p_rec.attribute4 :=
681     pay_prf_shd.g_old_rec.attribute4;
682   End If;
683   If (p_rec.attribute5 = hr_api.g_varchar2) then
684     p_rec.attribute5 :=
685     pay_prf_shd.g_old_rec.attribute5;
686   End If;
687   If (p_rec.attribute6 = hr_api.g_varchar2) then
688     p_rec.attribute6 :=
689     pay_prf_shd.g_old_rec.attribute6;
690   End If;
691   If (p_rec.attribute7 = hr_api.g_varchar2) then
692     p_rec.attribute7 :=
693     pay_prf_shd.g_old_rec.attribute7;
694   End If;
695   If (p_rec.attribute8 = hr_api.g_varchar2) then
696     p_rec.attribute8 :=
697     pay_prf_shd.g_old_rec.attribute8;
698   End If;
699   If (p_rec.attribute9 = hr_api.g_varchar2) then
700     p_rec.attribute9 :=
701     pay_prf_shd.g_old_rec.attribute9;
702   End If;
703   If (p_rec.attribute10 = hr_api.g_varchar2) then
704     p_rec.attribute10 :=
705     pay_prf_shd.g_old_rec.attribute10;
706   End If;
707   If (p_rec.attribute11 = hr_api.g_varchar2) then
708     p_rec.attribute11 :=
709     pay_prf_shd.g_old_rec.attribute11;
710   End If;
711   If (p_rec.attribute12 = hr_api.g_varchar2) then
712     p_rec.attribute12 :=
713     pay_prf_shd.g_old_rec.attribute12;
714   End If;
715   If (p_rec.attribute13 = hr_api.g_varchar2) then
716     p_rec.attribute13 :=
717     pay_prf_shd.g_old_rec.attribute13;
718   End If;
719   If (p_rec.attribute14 = hr_api.g_varchar2) then
720     p_rec.attribute14 :=
721     pay_prf_shd.g_old_rec.attribute14;
722   End If;
723   If (p_rec.attribute15 = hr_api.g_varchar2) then
724     p_rec.attribute15 :=
725     pay_prf_shd.g_old_rec.attribute15;
726   End If;
727   If (p_rec.attribute16 = hr_api.g_varchar2) then
728     p_rec.attribute16 :=
729     pay_prf_shd.g_old_rec.attribute16;
730   End If;
731   If (p_rec.attribute17 = hr_api.g_varchar2) then
732     p_rec.attribute17 :=
733     pay_prf_shd.g_old_rec.attribute17;
734   End If;
735   If (p_rec.attribute18 = hr_api.g_varchar2) then
736     p_rec.attribute18 :=
737     pay_prf_shd.g_old_rec.attribute18;
738   End If;
739   If (p_rec.attribute19 = hr_api.g_varchar2) then
740     p_rec.attribute19 :=
741     pay_prf_shd.g_old_rec.attribute19;
742   End If;
743   If (p_rec.attribute20 = hr_api.g_varchar2) then
744     p_rec.attribute20 :=
745     pay_prf_shd.g_old_rec.attribute20;
746   End If;
747   If (p_rec.attribute21 = hr_api.g_varchar2) then
748     p_rec.attribute21 :=
749     pay_prf_shd.g_old_rec.attribute21;
750   End If;
751   If (p_rec.attribute22 = hr_api.g_varchar2) then
752     p_rec.attribute22 :=
753     pay_prf_shd.g_old_rec.attribute22;
754   End If;
755   If (p_rec.attribute23 = hr_api.g_varchar2) then
756     p_rec.attribute23 :=
757     pay_prf_shd.g_old_rec.attribute23;
758   End If;
759   If (p_rec.attribute24 = hr_api.g_varchar2) then
760     p_rec.attribute24 :=
761     pay_prf_shd.g_old_rec.attribute24;
762   End If;
763   If (p_rec.attribute25 = hr_api.g_varchar2) then
764     p_rec.attribute25 :=
765     pay_prf_shd.g_old_rec.attribute25;
766   End If;
767   If (p_rec.attribute26 = hr_api.g_varchar2) then
768     p_rec.attribute26 :=
769     pay_prf_shd.g_old_rec.attribute26;
770   End If;
771   If (p_rec.attribute27 = hr_api.g_varchar2) then
772     p_rec.attribute27 :=
773     pay_prf_shd.g_old_rec.attribute27;
774   End If;
775   If (p_rec.attribute28 = hr_api.g_varchar2) then
776     p_rec.attribute28 :=
777     pay_prf_shd.g_old_rec.attribute28;
778   End If;
779   If (p_rec.attribute29 = hr_api.g_varchar2) then
780     p_rec.attribute29 :=
781     pay_prf_shd.g_old_rec.attribute29;
782   End If;
783   If (p_rec.attribute30 = hr_api.g_varchar2) then
784     p_rec.attribute30 :=
785     pay_prf_shd.g_old_rec.attribute30;
786   End If;
787   If (p_rec.ran_information_category = hr_api.g_varchar2) then
788     p_rec.ran_information_category :=
789     pay_prf_shd.g_old_rec.ran_information_category;
790   End If;
791   If (p_rec.ran_information1 = hr_api.g_varchar2) then
792     p_rec.ran_information1 :=
793     pay_prf_shd.g_old_rec.ran_information1;
794   End If;
795   If (p_rec.ran_information2 = hr_api.g_varchar2) then
796     p_rec.ran_information2 :=
797     pay_prf_shd.g_old_rec.ran_information2;
798   End If;
799   If (p_rec.ran_information3 = hr_api.g_varchar2) then
800     p_rec.ran_information3 :=
801     pay_prf_shd.g_old_rec.ran_information3;
802   End If;
803   If (p_rec.ran_information4 = hr_api.g_varchar2) then
804     p_rec.ran_information4 :=
805     pay_prf_shd.g_old_rec.ran_information4;
806   End If;
807   If (p_rec.ran_information5 = hr_api.g_varchar2) then
808     p_rec.ran_information5 :=
809     pay_prf_shd.g_old_rec.ran_information5;
810   End If;
811   If (p_rec.ran_information6 = hr_api.g_varchar2) then
812     p_rec.ran_information6 :=
813     pay_prf_shd.g_old_rec.ran_information6;
814   End If;
815   If (p_rec.ran_information7 = hr_api.g_varchar2) then
816     p_rec.ran_information7 :=
817     pay_prf_shd.g_old_rec.ran_information7;
818   End If;
819   If (p_rec.ran_information8 = hr_api.g_varchar2) then
820     p_rec.ran_information8 :=
821     pay_prf_shd.g_old_rec.ran_information8;
822   End If;
823   If (p_rec.ran_information9 = hr_api.g_varchar2) then
824     p_rec.ran_information9 :=
825     pay_prf_shd.g_old_rec.ran_information9;
826   End If;
827   If (p_rec.ran_information10 = hr_api.g_varchar2) then
828     p_rec.ran_information10 :=
829     pay_prf_shd.g_old_rec.ran_information10;
830   End If;
831   If (p_rec.ran_information11 = hr_api.g_varchar2) then
832     p_rec.ran_information11 :=
833     pay_prf_shd.g_old_rec.ran_information11;
834   End If;
835   If (p_rec.ran_information12 = hr_api.g_varchar2) then
836     p_rec.ran_information12 :=
837     pay_prf_shd.g_old_rec.ran_information12;
838   End If;
839   If (p_rec.ran_information13 = hr_api.g_varchar2) then
840     p_rec.ran_information13 :=
841     pay_prf_shd.g_old_rec.ran_information13;
842   End If;
843   If (p_rec.ran_information14 = hr_api.g_varchar2) then
844     p_rec.ran_information14 :=
845     pay_prf_shd.g_old_rec.ran_information14;
846   End If;
847   If (p_rec.ran_information15 = hr_api.g_varchar2) then
848     p_rec.ran_information15 :=
849     pay_prf_shd.g_old_rec.ran_information15;
850   End If;
851   If (p_rec.ran_information16 = hr_api.g_varchar2) then
852     p_rec.ran_information16 :=
853     pay_prf_shd.g_old_rec.ran_information16;
854   End If;
855   If (p_rec.ran_information17 = hr_api.g_varchar2) then
856     p_rec.ran_information17 :=
857     pay_prf_shd.g_old_rec.ran_information17;
858   End If;
859   If (p_rec.ran_information18 = hr_api.g_varchar2) then
860     p_rec.ran_information18 :=
861     pay_prf_shd.g_old_rec.ran_information18;
862   End If;
863   If (p_rec.ran_information19 = hr_api.g_varchar2) then
864     p_rec.ran_information19 :=
865     pay_prf_shd.g_old_rec.ran_information19;
866   End If;
867   If (p_rec.ran_information20 = hr_api.g_varchar2) then
868     p_rec.ran_information20 :=
869     pay_prf_shd.g_old_rec.ran_information20;
870   End If;
871   If (p_rec.ran_information21 = hr_api.g_varchar2) then
872     p_rec.ran_information21 :=
873     pay_prf_shd.g_old_rec.ran_information21;
874   End If;
875   If (p_rec.ran_information22 = hr_api.g_varchar2) then
876     p_rec.ran_information22 :=
877     pay_prf_shd.g_old_rec.ran_information22;
878   End If;
879   If (p_rec.ran_information23 = hr_api.g_varchar2) then
880     p_rec.ran_information23 :=
881     pay_prf_shd.g_old_rec.ran_information23;
882   End If;
883   If (p_rec.ran_information24 = hr_api.g_varchar2) then
884     p_rec.ran_information24 :=
885     pay_prf_shd.g_old_rec.ran_information24;
886   End If;
887   If (p_rec.ran_information25 = hr_api.g_varchar2) then
888     p_rec.ran_information25 :=
889     pay_prf_shd.g_old_rec.ran_information25;
890   End If;
891   If (p_rec.ran_information26 = hr_api.g_varchar2) then
892     p_rec.ran_information26 :=
893     pay_prf_shd.g_old_rec.ran_information26;
894   End If;
895   If (p_rec.ran_information27 = hr_api.g_varchar2) then
896     p_rec.ran_information27 :=
897     pay_prf_shd.g_old_rec.ran_information27;
898   End If;
899   If (p_rec.ran_information28 = hr_api.g_varchar2) then
900     p_rec.ran_information28 :=
901     pay_prf_shd.g_old_rec.ran_information28;
902   End If;
903   If (p_rec.ran_information29 = hr_api.g_varchar2) then
904     p_rec.ran_information29 :=
905     pay_prf_shd.g_old_rec.ran_information29;
906   End If;
907   If (p_rec.ran_information30 = hr_api.g_varchar2) then
908     p_rec.ran_information30 :=
909     pay_prf_shd.g_old_rec.ran_information30;
910   End If;
911   --
912 End convert_defs;
913 --
914 -- ----------------------------------------------------------------------------
915 -- |---------------------------------< upd >----------------------------------|
916 -- ----------------------------------------------------------------------------
917 Procedure upd
918   (p_rec                          in out nocopy pay_prf_shd.g_rec_type
919   ) is
920 --
921   l_proc  varchar2(72) := g_package||'upd';
922 --
923 Begin
924   hr_utility.set_location('Entering:'||l_proc, 5);
925   --
926   -- We must lock the row which we need to update.
927   --
928   pay_prf_shd.lck
929     (p_rec.range_table_id
930     ,p_rec.object_version_number
931     );
932   --
933   -- 1. During an update system defaults are used to determine if
934   --    arguments have been defaulted or not. We must therefore
935   --    derive the full record structure values to be updated.
936   --
937   -- 2. Call the supporting update validate operations.
938   --
939   convert_defs(p_rec);
940   pay_prf_bus.update_validate
941      (p_rec
942      );
943   --
944   -- Call to raise any errors on multi-message list
945   hr_multi_message.end_validation_set;
946   --
947   -- Call the supporting pre-update operation
948   --
949   pay_prf_upd.pre_update(p_rec);
950   --
951   -- Update the row.
952   --
953   pay_prf_upd.update_dml(p_rec);
954   --
955   -- Call the supporting post-update operation
956   --
957 
958   -- Commented Because User Hook not Supported as of now.
959   /*
960    pay_prf_upd.post_update
961      (p_rec
962      );
963   */
964   --
965   -- Call to raise any errors on multi-message list
966   hr_multi_message.end_validation_set;
967 End upd;
968 --
969 -- ----------------------------------------------------------------------------
970 -- |---------------------------------< upd >----------------------------------|
971 -- ----------------------------------------------------------------------------
972 Procedure upd
973   (p_range_table_id               in     number
974   ,p_object_version_number        in out nocopy number
975   ,p_range_table_number           in     number    default hr_api.g_number
976   ,p_period_frequency             in     varchar2  default hr_api.g_varchar2
977   ,p_effective_start_date         in     date      default hr_api.g_date
978   ,p_effective_end_date           in     date      default hr_api.g_date
979   ,p_row_value_uom                in     varchar2  default hr_api.g_varchar2
980   ,p_earnings_type                in     varchar2  default hr_api.g_varchar2
981   ,p_business_group_id            in     number    default hr_api.g_number
982   ,p_legislation_code             in     varchar2  default hr_api.g_varchar2
983   ,p_last_updated_login           in     number    default hr_api.g_number
984   ,p_created_date                 in     date      default hr_api.g_date
985   ,p_attribute_category           in     varchar2  default hr_api.g_varchar2
986   ,p_attribute1                   in     varchar2  default hr_api.g_varchar2
987   ,p_attribute2                   in     varchar2  default hr_api.g_varchar2
988   ,p_attribute3                   in     varchar2  default hr_api.g_varchar2
989   ,p_attribute4                   in     varchar2  default hr_api.g_varchar2
990   ,p_attribute5                   in     varchar2  default hr_api.g_varchar2
991   ,p_attribute6                   in     varchar2  default hr_api.g_varchar2
992   ,p_attribute7                   in     varchar2  default hr_api.g_varchar2
993   ,p_attribute8                   in     varchar2  default hr_api.g_varchar2
994   ,p_attribute9                   in     varchar2  default hr_api.g_varchar2
995   ,p_attribute10                  in     varchar2  default hr_api.g_varchar2
996   ,p_attribute11                  in     varchar2  default hr_api.g_varchar2
997   ,p_attribute12                  in     varchar2  default hr_api.g_varchar2
998   ,p_attribute13                  in     varchar2  default hr_api.g_varchar2
999   ,p_attribute14                  in     varchar2  default hr_api.g_varchar2
1000   ,p_attribute15                  in     varchar2  default hr_api.g_varchar2
1001   ,p_attribute16                  in     varchar2  default hr_api.g_varchar2
1002   ,p_attribute17                  in     varchar2  default hr_api.g_varchar2
1003   ,p_attribute18                  in     varchar2  default hr_api.g_varchar2
1004   ,p_attribute19                  in     varchar2  default hr_api.g_varchar2
1005   ,p_attribute20                  in     varchar2  default hr_api.g_varchar2
1006   ,p_attribute21                  in     varchar2  default hr_api.g_varchar2
1007   ,p_attribute22                  in     varchar2  default hr_api.g_varchar2
1008   ,p_attribute23                  in     varchar2  default hr_api.g_varchar2
1009   ,p_attribute24                  in     varchar2  default hr_api.g_varchar2
1010   ,p_attribute25                  in     varchar2  default hr_api.g_varchar2
1011   ,p_attribute26                  in     varchar2  default hr_api.g_varchar2
1012   ,p_attribute27                  in     varchar2  default hr_api.g_varchar2
1013   ,p_attribute28                  in     varchar2  default hr_api.g_varchar2
1014   ,p_attribute29                  in     varchar2  default hr_api.g_varchar2
1015   ,p_attribute30                  in     varchar2  default hr_api.g_varchar2
1016   ,p_ran_information_category     in     varchar2  default hr_api.g_varchar2
1017   ,p_ran_information1             in     varchar2  default hr_api.g_varchar2
1018   ,p_ran_information2             in     varchar2  default hr_api.g_varchar2
1019   ,p_ran_information3             in     varchar2  default hr_api.g_varchar2
1020   ,p_ran_information4             in     varchar2  default hr_api.g_varchar2
1021   ,p_ran_information5             in     varchar2  default hr_api.g_varchar2
1022   ,p_ran_information6             in     varchar2  default hr_api.g_varchar2
1023   ,p_ran_information7             in     varchar2  default hr_api.g_varchar2
1024   ,p_ran_information8             in     varchar2  default hr_api.g_varchar2
1025   ,p_ran_information9             in     varchar2  default hr_api.g_varchar2
1026   ,p_ran_information10            in     varchar2  default hr_api.g_varchar2
1027   ,p_ran_information11            in     varchar2  default hr_api.g_varchar2
1028   ,p_ran_information12            in     varchar2  default hr_api.g_varchar2
1029   ,p_ran_information13            in     varchar2  default hr_api.g_varchar2
1030   ,p_ran_information14            in     varchar2  default hr_api.g_varchar2
1031   ,p_ran_information15            in     varchar2  default hr_api.g_varchar2
1032   ,p_ran_information16            in     varchar2  default hr_api.g_varchar2
1033   ,p_ran_information17            in     varchar2  default hr_api.g_varchar2
1034   ,p_ran_information18            in     varchar2  default hr_api.g_varchar2
1035   ,p_ran_information19            in     varchar2  default hr_api.g_varchar2
1036   ,p_ran_information20            in     varchar2  default hr_api.g_varchar2
1037   ,p_ran_information21            in     varchar2  default hr_api.g_varchar2
1038   ,p_ran_information22            in     varchar2  default hr_api.g_varchar2
1039   ,p_ran_information23            in     varchar2  default hr_api.g_varchar2
1040   ,p_ran_information24            in     varchar2  default hr_api.g_varchar2
1041   ,p_ran_information25            in     varchar2  default hr_api.g_varchar2
1042   ,p_ran_information26            in     varchar2  default hr_api.g_varchar2
1043   ,p_ran_information27            in     varchar2  default hr_api.g_varchar2
1044   ,p_ran_information28            in     varchar2  default hr_api.g_varchar2
1045   ,p_ran_information29            in     varchar2  default hr_api.g_varchar2
1046   ,p_ran_information30            in     varchar2  default hr_api.g_varchar2
1047   ) is
1048 --
1049   l_rec   pay_prf_shd.g_rec_type;
1050   l_proc  varchar2(72) := g_package||'upd';
1051 --
1052 Begin
1053   hr_utility.set_location('Entering:'||l_proc, 5);
1054   --
1055   -- Call conversion function to turn arguments into the
1056   -- l_rec structure.
1057   --
1058   l_rec :=
1059   pay_prf_shd.convert_args
1060   (p_range_table_id
1061   ,p_effective_start_date
1062   ,p_effective_end_date
1063   ,p_range_table_number
1064   ,p_row_value_uom
1065   ,p_period_frequency
1066   ,p_earnings_type
1067   ,p_business_group_id
1068   ,p_legislation_code
1069   ,p_last_updated_login
1070   ,p_created_date
1071   ,p_object_version_number
1072   ,p_attribute_category
1073   ,p_attribute1
1074   ,p_attribute2
1075   ,p_attribute3
1076   ,p_attribute4
1077   ,p_attribute5
1078   ,p_attribute6
1079   ,p_attribute7
1080   ,p_attribute8
1081   ,p_attribute9
1082   ,p_attribute10
1083   ,p_attribute11
1084   ,p_attribute12
1085   ,p_attribute13
1086   ,p_attribute14
1087   ,p_attribute15
1088   ,p_attribute16
1089   ,p_attribute17
1090   ,p_attribute18
1091   ,p_attribute19
1092   ,p_attribute20
1093   ,p_attribute21
1094   ,p_attribute22
1095   ,p_attribute23
1096   ,p_attribute24
1097   ,p_attribute25
1098   ,p_attribute26
1099   ,p_attribute27
1100   ,p_attribute28
1101   ,p_attribute29
1102   ,p_attribute30
1103   ,p_ran_information_category
1104   ,p_ran_information1
1105   ,p_ran_information2
1106   ,p_ran_information3
1107   ,p_ran_information4
1108   ,p_ran_information5
1109   ,p_ran_information6
1110   ,p_ran_information7
1111   ,p_ran_information8
1112   ,p_ran_information9
1113   ,p_ran_information10
1114   ,p_ran_information11
1115   ,p_ran_information12
1116   ,p_ran_information13
1117   ,p_ran_information14
1118   ,p_ran_information15
1119   ,p_ran_information16
1120   ,p_ran_information17
1121   ,p_ran_information18
1122   ,p_ran_information19
1123   ,p_ran_information20
1124   ,p_ran_information21
1125   ,p_ran_information22
1126   ,p_ran_information23
1127   ,p_ran_information24
1128   ,p_ran_information25
1129   ,p_ran_information26
1130   ,p_ran_information27
1131   ,p_ran_information28
1132   ,p_ran_information29
1133   ,p_ran_information30
1134   );
1135   --
1136   -- Having converted the arguments into the
1137   -- plsql record structure we call the corresponding record
1138   -- business process.
1139   --
1140   pay_prf_upd.upd
1141      (l_rec
1142      );
1143   p_object_version_number := l_rec.object_version_number;
1144   --
1145   hr_utility.set_location(' Leaving:'||l_proc, 10);
1146 End upd;
1147 --
1148 end pay_prf_upd;