DBA Data[Home] [Help]

PACKAGE BODY: APPS.BEN_LRI_BUS

Source


1 Package Body ben_lri_bus as
2 /* $Header: belrirhi.pkb 115.0 2003/09/23 10:18:35 hmani noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  ben_lri_bus.';  -- Global package name
9 --
10 -- The following two global variables are only to be
11 -- used by the return_legislation_code function.
12 --
13 g_legislation_code            varchar2(150)  default null;
14 g_ler_extra_info_id           number         default null;
15 --
16 --  ---------------------------------------------------------------------------
17 --  |---------------------< return_legislation_code >-------------------------|
18 --  ---------------------------------------------------------------------------
19 --
20 Function return_legislation_code
21   (p_ler_extra_info_id                    in     number
22   )
23   Return Varchar2 Is
24   --
25   -- Declare cursor
26   --
27   -- In the following cursor statement add join(s) between
28   -- ben_ler_extra_info and ben_BUSINESS_GROUPS
29   -- so that the legislation_code for
30   -- the current business group context can be derived.
31   -- Remove this comment when the edit has been completed.
32   cursor csr_leg_code is
33     select pbg.legislation_code
34       from per_business_groups     pbg
35          , ben_ler_extra_info lri
36          , ben_ler_f ler
37      where lri.ler_extra_info_id = p_ler_extra_info_id
38 	and ler.ler_id = lri.ler_id
39        and pbg.business_group_id = ler.business_group_id;
40   --
41   -- Declare local variables
42   --
43   l_legislation_code  varchar2(150);
44   l_proc              varchar2(72)  :=  g_package||'return_legislation_code';
45   --
46 Begin
47   --
48   hr_utility.set_location('Entering:'|| l_proc, 10);
49   --
50   -- Ensure that all the mandatory parameter are not null
51   --
52   hr_api.mandatory_arg_error
53     (p_api_name           => l_proc
54     ,p_argument           => 'ler_extra_info_id'
55     ,p_argument_value     => p_ler_extra_info_id
56     );
57   --
58   if ( nvl(ben_lri_bus.g_ler_extra_info_id, hr_api.g_number)
59        = p_ler_extra_info_id) then
60     --
61     -- The legislation code has already been found with a previous
62     -- call to this function. Just return the value in the global
63     -- variable.
64     --
65     l_legislation_code := ben_lri_bus.g_legislation_code;
66     hr_utility.set_location(l_proc, 20);
67   else
68     --
69     -- The ID is different to the last call to this function
70     -- or this is the first call to this function.
71     --
72     open csr_leg_code;
73     fetch csr_leg_code into l_legislation_code;
74     --
75     if csr_leg_code%notfound then
76       --
77       -- The primary key is invalid therefore we must error
78       --
79       close csr_leg_code;
80       fnd_message.set_name('PAY','HR_7220_INVALID_PRIMARY_KEY');
81       fnd_message.raise_error;
82     end if;
83     hr_utility.set_location(l_proc,30);
84     --
85     --
86     -- Set the global variables so the values are
87     -- available for the next call to this function.
88     --
89     close csr_leg_code;
90     ben_lri_bus.g_ler_extra_info_id := p_ler_extra_info_id;
91     ben_lri_bus.g_legislation_code  := l_legislation_code;
92   end if;
93   hr_utility.set_location(' Leaving:'|| l_proc, 40);
94   return l_legislation_code;
95 end return_legislation_code;
96 --
97 
98 --
99 -- ----------------------------------------------------------------------------
100 -- |--------------------------<chk_ler_info_type >-----------------------|
101 -- ----------------------------------------------------------------------------
102 -- {Start Of Comments}
103 --
104 -- Description:
105 --   Validates that the ler information type exists in table
106 --   ben_ler_info_types where active_inactive_flag is 'Y'.
107 --
108 -- Pre Conditions:
109 --   Data must be existed in table ben_ler_info_types.
110 --
111 -- In Parameters:
112 --   p_information_type
113 --
114 -- Post Success:
115 --   Processing continues.
116 --
117 -- Post Failure:
118 --   An application error will be raised and processing is terminated.
119 --
120 -- Developer Implementation Notes:
121 --   For insert, your business rules should be executed from this procedure and
122 --   should ideally (unless really necessary) just be straight procedure or
123 --   function calls. Try and avoid using conditional branching logic.
124 --
125 -- Access Status:
126 --   Internal Table Handler Use Only.
127 --
128 -- {End Of Comments}
129 -- ----------------------------------------------------------------------------
130 
131 Procedure chk_ler_info_type
132   (p_information_type   in    ben_ler_info_types.information_type%type
133   ) is
134 --
135   l_proc  varchar2(72) := g_package||'chk_ler_info_type';
136   l_flag  ben_ler_info_types.active_inactive_flag%type;
137 --
138   cursor c_ler_info_type (code varchar2) is
139       select ler.active_inactive_flag
140         from ben_ler_info_types ler
141        where ler.information_type = code;
142 --
143 Begin
144   hr_utility.set_location('Entering:'||l_proc, 1);
145   --
146   -- Check mandatory parameters have been set
147   --
148   hr_api.mandatory_arg_error
149     (
150      p_api_name         => l_proc,
151      p_argument         => 'information_type',
152      p_argument_value   => p_information_type
153     );
154   --
155   hr_utility.set_location(l_proc, 2);
156   --
157   -- Check that the ACTIVE_INACTIVE_FLAG of ler
158   -- Information type is active.
159   --
160   open c_ler_info_type (p_information_type);
161   fetch c_ler_info_type into l_flag;
162   if c_ler_info_type%notfound then
163     close c_ler_info_type;
164     hr_utility.set_message(800, 'HR_INV_INFO_TYPE');
165     hr_utility.raise_error;
166   end if;
167   close c_ler_info_type;
168   --
169   if l_flag = 'N' then
170     hr_utility.set_message(800, 'HR_INACTIVE_INFO_TYPE');
171     hr_utility.raise_error;
172   end if;
173   --
174   hr_utility.set_location(' Leaving:'||l_proc, 3);
175   --
176 End chk_ler_info_type;
177 --
178 -- ----------------------------------------------------------------------------
179 -- |---------------------------< Chk_ler_id >----------------------------|
180 -- ----------------------------------------------------------------------------
181 -- {Start Of Comments}
182 --
183 -- Description:
184 --   Verify that the value in ler_ID is in the ben_ler Table.
185 --
186 -- Pre Conditions:
187 --
188 --
189 -- In Parameters:
190 --   p_ler_id
191 --
192 -- Post Success:
193 --   Processing continues.
194 --
195 -- Post Failure:
196 --   An application error will be raised and processing is terminated.
197 --
198 -- Developer Implementation Notes:
199 --   For insert, your business rules should be executed from this procedure and
200 --   should ideally (unless really necessary) just be straight procedure or
201 --   function calls. Try and avoid using conditional branching logic.
202 --
203 -- Access Status:
204 --   Internal Table Handler Use Only.
205 --
206 -- {End Of Comments}
207 -- ----------------------------------------------------------------------------
208 
209 Procedure chk_ler_id
210   (
211    p_ler_id        in      ben_ler_extra_info.ler_id%type
212   ) is
213 --
214   l_proc        varchar2(72) := g_package||'chk_ler_id';
215   l_dummy       varchar2(1);
216 --
217 
218       cursor c_valid_ler (id number) is
219       select 'x'
220       from ben_ler_f
221       where ler_id = id;
222 
223 
224 --
225 Begin
226   hr_utility.set_location('Entering:'||l_proc, 1);
227   --
228   -- Check mandatory parameters have been set
229   --
230   hr_api.mandatory_arg_error
231     (
232      p_api_name         => l_proc,
233      p_argument         => 'ler_id',
234      p_argument_value   => p_ler_id
235     );
236   hr_utility.set_location(l_proc, 2);
237   --
238   -- Check that the ler_id is in the ben_ler table.
239   --
240   open c_valid_ler (p_ler_id);
241   fetch c_valid_ler into l_dummy;
242   if c_valid_ler%notfound then
243     close c_valid_ler;
244     hr_utility.set_message(800, 'HR_INV_LER_ID');
245     hr_utility.raise_error;
246   end if;
247   close c_valid_ler;
248   --
249   hr_utility.set_location(' Leaving:'||l_proc, 3);
250   --
251 End chk_ler_id;
252 --
253 -- ----------------------------------------------------------------------------
254 -- |--------------------< chk_multiple_occurences_flag >----------------------|
255 -- ----------------------------------------------------------------------------
256 -- {Start Of Comments)
257 --
258 -- Description:
259 --   Verify that the number of rows should not exceed one when
260 --   multiple_occurences_flag = 'N'.
261 --
262 -- Pre Conditions:
263 --   This procedure should execute after procedure chk_information_type.
264 --
265 -- In Parameters:
266 --   p_information_type
267 --   p_ler_id
268 --
269 -- Post Success:
270 --   Processing continues.
271 --
272 -- Post Failure:
273 --   An application error will be raised and processing is terminated.
274 --
275 -- Developer Implementation Notes:
276 --   For insert, your business rules should be executed from this procedure and
277 --   should ideally (unless really necessary) just be straight procedure or
278 --   function calls. Try and avoid using conditional branching logic.
279 --
280 -- Access Status:
281 --   Internal Table Handler Use Only.
282 --
283 -- {End Of Comments}
284 -- ----------------------------------------------------------------------------
285 Procedure chk_multiple_occurences_flag
286   (p_information_type   in ben_ler_extra_info.information_type%type
287   ,p_ler_id        in ben_ler_extra_info.ler_id%type
288   ) is
289 --
290   l_proc                varchar2(72) := g_package||'chk_multiple_occurences_flag';
291   l_multi_occur_flag    ben_ler_info_types.multiple_occurences_flag%type;
292   l_dummy               varchar2(1);
293   l_found_ler           boolean;
294 --
295   cursor c_multi_occur_flag (code varchar2) is
296      select multiple_occurences_flag
297        from ben_ler_info_types
298       where information_type = code;
299 --
300   cursor c_get_row (code varchar2, id number) is
301      select 'x'
302        from ben_ler_extra_info
303       where information_type = code
304         and ler_id = id;
305 --
306 Begin
307   hr_utility.set_location('Entering:'||l_proc, 5);
308   --
309   open c_multi_occur_flag (p_information_type);
310   fetch c_multi_occur_flag into l_multi_occur_flag;
311   --
312   -- The following case should not happen since procedure
313   -- chk_information_type should capture this error.
314   --
315   if c_multi_occur_flag%notfound then
316     close c_multi_occur_flag;
317     hr_utility.set_message(800, 'HR_INV_INFO_TYPE');
318     hr_utility.raise_error;
319   end if;
320   --
321   close c_multi_occur_flag;
322   --
323   hr_utility.set_location(l_proc, 10);
324   --
325   open c_get_row(p_information_type, p_ler_id);
326   fetch c_get_row into l_dummy;
327   if c_get_row%notfound then
328     l_found_ler := FALSE;
329   else
330     l_found_ler := TRUE;
331   end if;
332   close c_get_row;
333   --
334   if l_found_ler and l_multi_occur_flag = 'N' then
335     hr_utility.set_message(800, 'HR_MORE_THAN_1_EXTRA_INFO');
336     hr_utility.raise_error;
337   end if;
338   --
339   hr_utility.set_location(' Leaving:'||l_proc, 15);
340 --
341 End chk_multiple_occurences_flag;
342 --
343 -- ----------------------------------------------------------------------------
344 -- |-----------------------< chk_non_updateable_args >------------------------|
345 -- ----------------------------------------------------------------------------
346 -- {Start Of Comments}
347 --
348 -- Description:
349 --   Verify that the non updateable arguments not changed.
350 --
351 -- Pre Conditions:
352 --
353 --
354 -- In Parameters:
355 --   p_rec
356 --
357 -- Post Success:
358 --   Processing continues.
359 --
360 -- Post Failure:
361 --   An application error will be raised and processing is terminated.
362 --
363 -- Developer Implementation Notes:
364 --   For insert, your business rules should be executed from this procedure and
365 --   should ideally (unless really necessary) just be straight procedure or
366 --   function calls. Try and avoid using conditional branching logic.
367 --
368 -- Access Status:
369 --   Internal Table Handler Use Only.
370 --
371 -- {End Of Comments}
372 -- ----------------------------------------------------------------------------
373 Procedure chk_non_updateable_args (p_rec in ben_lri_shd.g_rec_type) is
374 --
375   l_proc		varchar2(72) := g_package||'chk_non_updateable_args';
376   l_error		exception;
377   l_argument            varchar2(30);
378 --
379 Begin
380   hr_utility.set_location('Entering:'||l_proc, 10);
381   --
382   -- Only proceed with validation if a row exists for
383   -- the current record in the HR Schema
384   --
385   if not ben_lri_shd.api_updating
386         (p_ler_extra_info_id       => p_rec.ler_extra_info_id
387 	,p_object_version_number	=> p_rec.object_version_number) then
388     hr_utility.set_message(801, 'HR_6153_ALL_PROCEDURE_FAIL');
389     hr_utility.set_message_token('PROCEDURE', l_proc);
390     hr_utility.set_message_token('STEP', '20');
391   end if;
392   --
393   hr_utility.set_location(l_proc, 30);
394   --
395   if nvl(p_rec.information_type, hr_api.g_varchar2) <>
396      nvl(ben_lri_shd.g_old_rec.information_type, hr_api.g_varchar2) then
397     l_argument := 'information_type';
398     raise l_error;
399   end if;
400   --
401   hr_utility.set_location(l_proc, 40);
402   --
403   if nvl(p_rec.ler_id, hr_api.g_number) <>
404      nvl(ben_lri_shd.g_old_rec.ler_id, hr_api.g_number) then
405     l_argument := 'ler_id';
406     raise l_error;
407   end if;
408   --
409   hr_utility.set_location(' Leaving:'||l_proc, 50);
410 exception
411   when l_error then
412     hr_api.argument_changed_error
413 	(p_api_name => l_proc
414 	,p_argument => l_argument
415 	);
416     hr_utility.set_location(l_proc, 60);
417   when others then
418     hr_utility.set_location(l_proc, 70);
419     raise;
420 end chk_non_updateable_args;
421 
422 -- |---------------------------< insert_validate >----------------------------|
423 -- ----------------------------------------------------------------------------
424 Procedure insert_validate(p_rec in ben_lri_shd.g_rec_type) is
425 --- ----------------------------------------------------------------------------
426 --
427   l_proc  varchar2(72) := g_package||'insert_validate';
428 --
429 Begin
430   hr_utility.set_location('Entering:'||l_proc, 5);
431   --
432   -- Validate ler ID
433   --
434   chk_ler_id
435         (p_ler_id                  => p_rec.ler_id
436 	);
437   --
438   -- Validate ler Info Type
439   --
440   chk_ler_info_type
441         (p_information_type     => p_rec.information_type);
442   --
443   -- Validate Multiple Occurence Flag
444   --
445   chk_multiple_occurences_flag
446         (p_information_type             => p_rec.information_type
447      	  ,p_ler_id				    => p_rec.ler_id
448         );
449   --
450   -- Call df procedure to validation Descriptive Flexfields
451   --
452 /*
453   ben_lri_flex.df(p_rec);
454 */
455   hr_dflex_utility.ins_or_upd_descflex_attribs
456       (p_appl_short_name    => 'BEN'
457       ,p_descflex_name      => 'Extra Life Event Information'
458       ,p_attribute_category => p_rec.lri_attribute_category
459       ,p_attribute1_name    => 'lRI_ATTRIBUTE1'
460       ,p_attribute1_value   => p_rec.lri_attribute1
461       ,p_attribute2_name    => 'LRI_ATTRIBUTE2'
462       ,p_attribute2_value   => p_rec.lri_attribute2
466       ,p_attribute4_value   => p_rec.lri_attribute4
463       ,p_attribute3_name    => 'LRI_ATTRIBUTE3'
464       ,p_attribute3_value   => p_rec.lri_attribute3
465       ,p_attribute4_name    => 'LRI_ATTRIBUTE4'
467       ,p_attribute5_name    => 'LRI_ATTRIBUTE5'
468       ,p_attribute5_value   => p_rec.lri_attribute5
469       ,p_attribute6_name    => 'LRI_ATTRIBUTE6'
470       ,p_attribute6_value   => p_rec.lri_attribute6
471       ,p_attribute7_name    => 'LRI_ATTRIBUTE7'
472       ,p_attribute7_value   => p_rec.lri_attribute7
473       ,p_attribute8_name    => 'LRI_ATTRIBUTE8'
474       ,p_attribute8_value   => p_rec.lri_attribute8
475       ,p_attribute9_name    => 'LRI_ATTRIBUTE9'
476       ,p_attribute9_value   => p_rec.lri_attribute9
477       ,p_attribute10_name    => 'LRI_ATTRIBUTE10'
478       ,p_attribute10_value   => p_rec.lri_attribute10
479       ,p_attribute11_name    => 'LRI_ATTRIBUTE11'
480       ,p_attribute11_value   => p_rec.lri_attribute11
481       ,p_attribute12_name    => 'LRI_ATTRIBUTE12'
482       ,p_attribute12_value   => p_rec.lri_attribute12
483       ,p_attribute13_name    => 'LRI_ATTRIBUTE13'
484       ,p_attribute13_value   => p_rec.lri_attribute13
485       ,p_attribute14_name    => 'LRI_ATTRIBUTE14'
486       ,p_attribute14_value   => p_rec.lri_attribute14
487       ,p_attribute15_name    => 'LRI_ATTRIBUTE15'
488       ,p_attribute15_value   => p_rec.lri_attribute15
489       ,p_attribute16_name    => 'LRI_ATTRIBUTE16'
490       ,p_attribute16_value   => p_rec.lri_attribute16
491       ,p_attribute17_name    => 'LRI_ATTRIBUTE17'
492       ,p_attribute17_value   => p_rec.lri_attribute17
493       ,p_attribute18_name    => 'LRI_ATTRIBUTE18'
494       ,p_attribute18_value   => p_rec.lri_attribute18
495       ,p_attribute19_name    => 'LRI_ATTRIBUTE19'
496       ,p_attribute19_value   => p_rec.lri_attribute19
497       ,p_attribute20_name    => 'LRI_ATTRIBUTE20'
498       ,p_attribute20_value   => p_rec.lri_attribute20
499       );
500 
501   --
502   -- Call ddf procedure to validation Developer Descriptive Flexfields
503   --
504 /*
505   ben_lri_flex_ddf.ddf(p_rec);
506 */
507   --
508   hr_dflex_utility.ins_or_upd_descflex_attribs
509       (p_appl_short_name    => 'BEN'
510       ,p_descflex_name      => 'Extra Life Event Info DDF'
511       ,p_attribute_category => p_rec.lri_information_category
512       ,p_attribute1_name    => 'LRI_INFORMATION1'
513       ,p_attribute1_value   => p_rec.lri_information1
514       ,p_attribute2_name    => 'LRI_INFORMATION2'
515       ,p_attribute2_value   => p_rec.lri_information2
516       ,p_attribute3_name    => 'LRI_INFORMATION3'
517       ,p_attribute3_value   => p_rec.lri_information3
518       ,p_attribute4_name    => 'LRI_INFORMATION4'
519       ,p_attribute4_value   => p_rec.lri_information4
520       ,p_attribute5_name    => 'LRI_INFORMATION5'
521       ,p_attribute5_value   => p_rec.lri_information5
522       ,p_attribute6_name    => 'LRI_INFORMATION6'
523       ,p_attribute6_value   => p_rec.lri_information6
524       ,p_attribute7_name    => 'LRI_INFORMATION7'
525       ,p_attribute7_value   => p_rec.lri_information7
526       ,p_attribute8_name    => 'LRI_INFORMATION8'
527       ,p_attribute8_value   => p_rec.lri_information8
528       ,p_attribute9_name    => 'LRI_INFORMATION9'
529       ,p_attribute9_value   => p_rec.lri_information9
530       ,p_attribute10_name    => 'LRI_INFORMATION10'
531       ,p_attribute10_value   => p_rec.lri_information10
532       ,p_attribute11_name    => 'LRI_INFORMATION11'
533       ,p_attribute11_value   => p_rec.lri_information11
534       ,p_attribute12_name    => 'LRI_INFORMATION12'
535       ,p_attribute12_value   => p_rec.lri_information12
536       ,p_attribute13_name    => 'LRI_INFORMATION13'
537       ,p_attribute13_value   => p_rec.lri_information13
538       ,p_attribute14_name    => 'LRI_INFORMATION14'
539       ,p_attribute14_value   => p_rec.lri_information14
540       ,p_attribute15_name    => 'LRI_INFORMATION15'
541       ,p_attribute15_value   => p_rec.lri_information15
542       ,p_attribute16_name    => 'LRI_INFORMATION16'
543       ,p_attribute16_value   => p_rec.lri_information16
544       ,p_attribute17_name    => 'LRI_INFORMATION17'
545       ,p_attribute17_value   => p_rec.lri_information17
546       ,p_attribute18_name    => 'LRI_INFORMATION18'
547       ,p_attribute18_value   => p_rec.lri_information18
548       ,p_attribute19_name    => 'LRI_INFORMATION19'
549       ,p_attribute19_value   => p_rec.lri_information19
550       ,p_attribute20_name    => 'LRI_INFORMATION20'
551       ,p_attribute20_value   => p_rec.lri_information20
552       ,p_attribute21_name    => 'LRI_INFORMATION21'
553       ,p_attribute21_value   => p_rec.lri_information21
554       ,p_attribute22_name    => 'LRI_INFORMATION22'
555       ,p_attribute22_value   => p_rec.lri_information22
556       ,p_attribute23_name    => 'LRI_INFORMATION23'
557       ,p_attribute23_value   => p_rec.lri_information23
558       ,p_attribute24_name    => 'LRI_INFORMATION24'
559       ,p_attribute24_value   => p_rec.lri_information24
560       ,p_attribute25_name    => 'LRI_INFORMATION25'
561       ,p_attribute25_value   => p_rec.lri_information25
562       ,p_attribute26_name    => 'LRI_INFORMATION26'
563       ,p_attribute26_value   => p_rec.lri_information26
564       ,p_attribute27_name    => 'LRI_INFORMATION27'
565       ,p_attribute27_value   => p_rec.lri_information27
566       ,p_attribute28_name    => 'LRI_INFORMATION28'
567       ,p_attribute28_value   => p_rec.lri_information28
568       ,p_attribute29_name    => 'LRI_INFORMATION29'
569       ,p_attribute29_value   => p_rec.lri_information29
570       ,p_attribute30_name    => 'LRI_INFORMATION30'
571       ,p_attribute30_value   => p_rec.lri_information30
572       );
573     --
574 
575   --
576   hr_utility.set_location(' Leaving:'||l_proc, 30);
577   --
578 End insert_validate;
579 --
583 Procedure update_validate(p_rec in ben_lri_shd.g_rec_type) is
580 -- ----------------------------------------------------------------------------
581 -- |---------------------------< update_validate >----------------------------|
582 -- ----------------------------------------------------------------------------
584 --
585   l_proc  varchar2(72) := g_package||'update_validate';
586 --
587 Begin
588   hr_utility.set_location('Entering:'||l_proc, 5);
589   --
590   -- Validate Non-Updateable Fields
591   --
592   chk_non_updateable_args (p_rec => p_rec);
593   hr_utility.set_location(' Leaving:'||l_proc, 10);
594   --
595       hr_dflex_utility.ins_or_upd_descflex_attribs
596       (p_appl_short_name    => 'BEN'
597       ,p_descflex_name      => 'Extra Life Event Information'
598       ,p_attribute_category => p_rec.lri_attribute_category
599       ,p_attribute1_name    => 'LRI_ATTRIBUTE1'
600       ,p_attribute1_value   => p_rec.lri_attribute1
601       ,p_attribute2_name    => 'LRI_ATTRIBUTE2'
602       ,p_attribute2_value   => p_rec.lri_attribute2
603       ,p_attribute3_name    => 'LRI_ATTRIBUTE3'
604       ,p_attribute3_value   => p_rec.lri_attribute3
605       ,p_attribute4_name    => 'LRI_ATTRIBUTE4'
606       ,p_attribute4_value   => p_rec.lri_attribute4
607       ,p_attribute5_name    => 'LRI_ATTRIBUTE5'
608       ,p_attribute5_value   => p_rec.lri_attribute5
609       ,p_attribute6_name    => 'LRI_ATTRIBUTE6'
610       ,p_attribute6_value   => p_rec.lri_attribute6
611       ,p_attribute7_name    => 'LRI_ATTRIBUTE7'
612       ,p_attribute7_value   => p_rec.lri_attribute7
613       ,p_attribute8_name    => 'LRI_ATTRIBUTE8'
614       ,p_attribute8_value   => p_rec.lri_attribute8
615       ,p_attribute9_name    => 'LRI_ATTRIBUTE9'
616       ,p_attribute9_value   => p_rec.lri_attribute9
617       ,p_attribute10_name    => 'LRI_ATTRIBUTE10'
618       ,p_attribute10_value   => p_rec.lri_attribute10
619       ,p_attribute11_name    => 'LRI_ATTRIBUTE11'
620       ,p_attribute11_value   => p_rec.lri_attribute11
621       ,p_attribute12_name    => 'LRI_ATTRIBUTE12'
622       ,p_attribute12_value   => p_rec.lri_attribute12
623       ,p_attribute13_name    => 'LRI_ATTRIBUTE13'
624       ,p_attribute13_value   => p_rec.lri_attribute13
625       ,p_attribute14_name    => 'LRI_ATTRIBUTE14'
626       ,p_attribute14_value   => p_rec.lri_attribute14
627       ,p_attribute15_name    => 'LRI_ATTRIBUTE15'
628       ,p_attribute15_value   => p_rec.lri_attribute15
629       ,p_attribute16_name    => 'LRI_ATTRIBUTE16'
630       ,p_attribute16_value   => p_rec.lri_attribute16
631       ,p_attribute17_name    => 'LRI_ATTRIBUTE17'
632       ,p_attribute17_value   => p_rec.lri_attribute17
633       ,p_attribute18_name    => 'LRI_ATTRIBUTE18'
634       ,p_attribute18_value   => p_rec.lri_attribute18
635       ,p_attribute19_name    => 'LRI_ATTRIBUTE19'
636       ,p_attribute19_value   => p_rec.lri_attribute19
637       ,p_attribute20_name    => 'LRI_ATTRIBUTE20'
638       ,p_attribute20_value   => p_rec.lri_attribute20
639       );
640 
641   --
642 
643   hr_dflex_utility.ins_or_upd_descflex_attribs
644       (p_appl_short_name    => 'BEN'
645       ,p_descflex_name      => 'Extra Life Event Info DDF'
646       ,p_attribute_category => p_rec.lri_information_category
647       ,p_attribute1_name    => 'LRI_INFORMATION1'
648       ,p_attribute1_value   => p_rec.lri_information1
649       ,p_attribute2_name    => 'LRI_INFORMATION2'
650       ,p_attribute2_value   => p_rec.lri_information2
651       ,p_attribute3_name    => 'LRI_INFORMATION3'
652       ,p_attribute3_value   => p_rec.lri_information3
653       ,p_attribute4_name    => 'LRI_INFORMATION4'
654       ,p_attribute4_value   => p_rec.lri_information4
655       ,p_attribute5_name    => 'LRI_INFORMATION5'
656       ,p_attribute5_value   => p_rec.lri_information5
657       ,p_attribute6_name    => 'LRI_INFORMATION6'
658       ,p_attribute6_value   => p_rec.lri_information6
659       ,p_attribute7_name    => 'LRI_INFORMATION7'
660       ,p_attribute7_value   => p_rec.lri_information7
661       ,p_attribute8_name    => 'LRI_INFORMATION8'
662       ,p_attribute8_value   => p_rec.lri_information8
663       ,p_attribute9_name    => 'LRI_INFORMATION9'
664       ,p_attribute9_value   => p_rec.lri_information9
665       ,p_attribute10_name    => 'LRI_INFORMATION10'
666       ,p_attribute10_value   => p_rec.lri_information10
667       ,p_attribute11_name    => 'LRI_INFORMATION11'
668       ,p_attribute11_value   => p_rec.lri_information11
669       ,p_attribute12_name    => 'LRI_INFORMATION12'
670       ,p_attribute12_value   => p_rec.lri_information12
671       ,p_attribute13_name    => 'LRI_INFORMATION13'
672       ,p_attribute13_value   => p_rec.lri_information13
673       ,p_attribute14_name    => 'LRI_INFORMATION14'
674       ,p_attribute14_value   => p_rec.lri_information14
675       ,p_attribute15_name    => 'LRI_INFORMATION15'
676       ,p_attribute15_value   => p_rec.lri_information15
677       ,p_attribute16_name    => 'LRI_INFORMATION16'
678       ,p_attribute16_value   => p_rec.lri_information16
679       ,p_attribute17_name    => 'LRI_INFORMATION17'
680       ,p_attribute17_value   => p_rec.lri_information17
681       ,p_attribute18_name    => 'LRI_INFORMATION18'
682       ,p_attribute18_value   => p_rec.lri_information18
683       ,p_attribute19_name    => 'LRI_INFORMATION19'
684       ,p_attribute19_value   => p_rec.lri_information19
685       ,p_attribute20_name    => 'LRI_INFORMATION20'
686       ,p_attribute20_value   => p_rec.lri_information20
687       ,p_attribute21_name    => 'LRI_INFORMATION21'
688       ,p_attribute21_value   => p_rec.lri_information21
689       ,p_attribute22_name    => 'LRI_INFORMATION22'
690       ,p_attribute22_value   => p_rec.lri_information22
691       ,p_attribute23_name    => 'LRI_INFORMATION23'
692       ,p_attribute23_value   => p_rec.lri_information23
693       ,p_attribute24_name    => 'LRI_INFORMATION24'
697       ,p_attribute26_name    => 'LRI_INFORMATION26'
694       ,p_attribute24_value   => p_rec.lri_information24
695       ,p_attribute25_name    => 'LRI_INFORMATION25'
696       ,p_attribute25_value   => p_rec.lri_information25
698       ,p_attribute26_value   => p_rec.lri_information26
699       ,p_attribute27_name    => 'LRI_INFORMATION27'
700       ,p_attribute27_value   => p_rec.lri_information27
701       ,p_attribute28_name    => 'LRI_INFORMATION28'
702       ,p_attribute28_value   => p_rec.lri_information28
703       ,p_attribute29_name    => 'LRI_INFORMATION29'
704       ,p_attribute29_value   => p_rec.lri_information29
705       ,p_attribute30_name    => 'LRI_INFORMATION30'
706       ,p_attribute30_value   => p_rec.lri_information30
707       );
708 
709   --
710   hr_utility.set_location(' Leaving:'||l_proc, 30);
711   --
712 End update_validate;
713 --
714 -- ----------------------------------------------------------------------------
715 -- |---------------------------< delete_validate >----------------------------|
716 -- ----------------------------------------------------------------------------
717 Procedure delete_validate(p_rec in ben_lri_shd.g_rec_type) is
718 --
719   l_proc  varchar2(72) := g_package||'delete_validate';
720 --
721 Begin
722   hr_utility.set_location('Entering:'||l_proc, 5);
723   --
724   -- Call all supporting business operations
725   --
726   hr_utility.set_location(' Leaving:'||l_proc, 10);
727 End delete_validate;
728 --
729 end ben_lri_bus;