[Home] [Help]
PACKAGE BODY: APPS.PER_BBA_BUS
Source
1 Package Body per_bba_bus as
2 /* $Header: pebbarhi.pkb 115.8 2002/12/02 13:03:45 apholt noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' per_bba_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_balance_amount_id number default null;
15 --
16 -- ---------------------------------------------------------------------------
17 -- |----------------------< set_security_group_id >--------------------------|
18 -- ---------------------------------------------------------------------------
19 --
20 procedure set_security_group_id
21 (p_balance_amount_id in number
22 ) is
23 --
24 -- Declare cursor
25 --
26 cursor csr_sec_grp is
27 select inf.org_information14
28 from hr_organization_information inf
29 , per_bf_balance_amounts bba
30 where bba.balance_amount_id = p_balance_amount_id
31 and inf.organization_id = bba.business_group_id
32 and inf.org_information_context || '' = 'Business Group Information';
33 --
34 -- Declare local variables
35 --
36 l_security_group_id number;
37 l_proc varchar2(72) := g_package||'set_security_group_id';
38 --
39 begin
40 --
41 hr_utility.set_location('Entering:'|| l_proc, 10);
42 --
43 -- Ensure that all the mandatory parameter are not null
44 --
45 hr_api.mandatory_arg_error(p_api_name => l_proc,
46 p_argument => 'BALANCE_AMOUNT_ID',
47 p_argument_value => p_balance_amount_id);
48 --
49 open csr_sec_grp;
50 fetch csr_sec_grp into l_security_group_id;
51 --
52 if csr_sec_grp%notfound then
53 --
54 close csr_sec_grp;
55 --
56 -- The primary key is invalid therefore we must error
57 --
58 fnd_message.set_name('PER','HR_7220_INVALID_PRIMARY_KEY');
59 fnd_message.raise_error;
60 --
61 end if;
62 close csr_sec_grp;
63 --
64 -- Set the security_group_id in CLIENT_INFO
65 --
66 hr_api.set_security_group_id
67 (p_security_group_id => l_security_group_id
68 );
69 --
70 hr_utility.set_location(' Leaving:'|| l_proc, 20);
71 --
72 end set_security_group_id;
73 --
74 -- ---------------------------------------------------------------------------
75 -- |---------------------< return_legislation_code >-------------------------|
76 -- ---------------------------------------------------------------------------
77 --
78 function return_legislation_code
79 (p_balance_amount_id in number) return varchar2 is
80 --
81 -- Declare cursor
82 --
83 cursor csr_leg_code is
84 select pbg.legislation_code
85 from per_business_groups pbg
86 , per_bf_balance_amounts bba
87 where bba.balance_amount_id = p_balance_amount_id
88 and pbg.business_group_id = bba.business_group_id;
89 --
90 -- Declare local variables
91 --
92 l_legislation_code varchar2(150);
93 l_proc varchar2(72) := g_package||'return_legislation_code';
94 --
95 begin
96 --
97 hr_utility.set_location('Entering:'|| l_proc, 10);
98 --
99 -- Ensure that all the mandatory parameter are not null
100 --
101 hr_api.mandatory_arg_error(p_api_name => l_proc,
102 p_argument => 'BALANCE_AMOUNT_ID',
103 p_argument_value => p_balance_amount_id);
104 --
105 if ( nvl(g_balance_amount_id, hr_api.g_number) = p_balance_amount_id) then
106 --
107 -- The legislation code has already been found with a previous
108 -- call to this function. Just return the value in the global
109 -- variable.
110 --
111 l_legislation_code := g_legislation_code;
112 hr_utility.set_location(l_proc, 20);
113 else
114 --
115 -- The ID is different to the last call to this function
116 -- or this is the first call to this function.
117 --
118 open csr_leg_code;
119 fetch csr_leg_code into l_legislation_code;
120 --
121 if csr_leg_code%notfound then
122 --
123 -- The primary key is invalid therefore we must error
124 --
125 close csr_leg_code;
126 fnd_message.set_name('PER','HR_7220_INVALID_PRIMARY_KEY');
127 fnd_message.raise_error;
128 end if;
129 hr_utility.set_location(l_proc,30);
130 --
131 -- Set the global variables so the values are
132 -- available for the next call to this function.
133 --
134 close csr_leg_code;
135 g_balance_amount_id := p_balance_amount_id;
136 g_legislation_code := l_legislation_code;
137 end if;
138 hr_utility.set_location(' Leaving:'|| l_proc, 40);
139 return l_legislation_code;
140 end return_legislation_code;
141 --
142 -- ----------------------------------------------------------------------------
143 -- |------------------------------< chk_df >----------------------------------|
144 -- ----------------------------------------------------------------------------
145 --
146 -- Description:
147 -- Validates all the Descriptive Flexfield values.
148 --
149 -- Prerequisites:
150 -- All other columns have been validated. Must be called as the
151 -- last step from insert_validate and update_validate.
152 --
153 -- In Arguments:
154 -- p_rec
155 --
156 -- Post Success:
157 -- If the Descriptive Flexfield structure column and data values are
158 -- all valid this procedure will end normally and processing will
159 -- continue.
160 --
161 -- Post Failure:
162 -- If the Descriptive Flexfield structure column value or any of
163 -- the data values are invalid then an application error is raised as
164 -- a PL/SQL exception.
165 --
166 -- Access Status:
167 -- Internal Row Handler Use Only.
168 --
169 -- ----------------------------------------------------------------------------
170 procedure chk_df
171 (p_rec in per_bba_shd.g_rec_type
172 ) is
173 --
174 l_proc varchar2(72) := g_package || 'chk_df';
175 --
176 begin
177 hr_utility.set_location('Entering:'||l_proc,10);
178 --
179 if ((p_rec.balance_amount_id is not null) and (
180 nvl(per_bba_shd.g_old_rec.bba_attribute_category, hr_api.g_varchar2) <>
181 nvl(p_rec.bba_attribute_category, hr_api.g_varchar2) or
182 nvl(per_bba_shd.g_old_rec.bba_attribute1, hr_api.g_varchar2) <>
183 nvl(p_rec.bba_attribute1, hr_api.g_varchar2) or
184 nvl(per_bba_shd.g_old_rec.bba_attribute2, hr_api.g_varchar2) <>
185 nvl(p_rec.bba_attribute2, hr_api.g_varchar2) or
186 nvl(per_bba_shd.g_old_rec.bba_attribute3, hr_api.g_varchar2) <>
187 nvl(p_rec.bba_attribute3, hr_api.g_varchar2) or
188 nvl(per_bba_shd.g_old_rec.bba_attribute4, hr_api.g_varchar2) <>
189 nvl(p_rec.bba_attribute4, hr_api.g_varchar2) or
190 nvl(per_bba_shd.g_old_rec.bba_attribute5, hr_api.g_varchar2) <>
191 nvl(p_rec.bba_attribute5, hr_api.g_varchar2) or
192 nvl(per_bba_shd.g_old_rec.bba_attribute6, hr_api.g_varchar2) <>
193 nvl(p_rec.bba_attribute6, hr_api.g_varchar2) or
194 nvl(per_bba_shd.g_old_rec.bba_attribute7, hr_api.g_varchar2) <>
195 nvl(p_rec.bba_attribute7, hr_api.g_varchar2) or
196 nvl(per_bba_shd.g_old_rec.bba_attribute8, hr_api.g_varchar2) <>
197 nvl(p_rec.bba_attribute8, hr_api.g_varchar2) or
198 nvl(per_bba_shd.g_old_rec.bba_attribute9, hr_api.g_varchar2) <>
199 nvl(p_rec.bba_attribute9, hr_api.g_varchar2) or
200 nvl(per_bba_shd.g_old_rec.bba_attribute10, hr_api.g_varchar2) <>
201 nvl(p_rec.bba_attribute10, hr_api.g_varchar2) or
202 nvl(per_bba_shd.g_old_rec.bba_attribute11, hr_api.g_varchar2) <>
203 nvl(p_rec.bba_attribute11, hr_api.g_varchar2) or
204 nvl(per_bba_shd.g_old_rec.bba_attribute12, hr_api.g_varchar2) <>
205 nvl(p_rec.bba_attribute12, hr_api.g_varchar2) or
206 nvl(per_bba_shd.g_old_rec.bba_attribute13, hr_api.g_varchar2) <>
207 nvl(p_rec.bba_attribute13, hr_api.g_varchar2) or
208 nvl(per_bba_shd.g_old_rec.bba_attribute14, hr_api.g_varchar2) <>
209 nvl(p_rec.bba_attribute14, hr_api.g_varchar2) or
210 nvl(per_bba_shd.g_old_rec.bba_attribute15, hr_api.g_varchar2) <>
211 nvl(p_rec.bba_attribute15, hr_api.g_varchar2) or
212 nvl(per_bba_shd.g_old_rec.bba_attribute16, hr_api.g_varchar2) <>
213 nvl(p_rec.bba_attribute16, hr_api.g_varchar2) or
214 nvl(per_bba_shd.g_old_rec.bba_attribute17, hr_api.g_varchar2) <>
215 nvl(p_rec.bba_attribute17, hr_api.g_varchar2) or
216 nvl(per_bba_shd.g_old_rec.bba_attribute18, hr_api.g_varchar2) <>
217 nvl(p_rec.bba_attribute18, hr_api.g_varchar2) or
218 nvl(per_bba_shd.g_old_rec.bba_attribute19, hr_api.g_varchar2) <>
219 nvl(p_rec.bba_attribute19, hr_api.g_varchar2) or
220 nvl(per_bba_shd.g_old_rec.bba_attribute20, hr_api.g_varchar2) <>
221 nvl(p_rec.bba_attribute20, hr_api.g_varchar2) or
222 nvl(per_bba_shd.g_old_rec.bba_attribute21, hr_api.g_varchar2) <>
223 nvl(p_rec.bba_attribute21, hr_api.g_varchar2) or
224 nvl(per_bba_shd.g_old_rec.bba_attribute22, hr_api.g_varchar2) <>
225 nvl(p_rec.bba_attribute22, hr_api.g_varchar2) or
226 nvl(per_bba_shd.g_old_rec.bba_attribute23, hr_api.g_varchar2) <>
227 nvl(p_rec.bba_attribute23, hr_api.g_varchar2) or
228 nvl(per_bba_shd.g_old_rec.bba_attribute24, hr_api.g_varchar2) <>
229 nvl(p_rec.bba_attribute24, hr_api.g_varchar2) or
230 nvl(per_bba_shd.g_old_rec.bba_attribute25, hr_api.g_varchar2) <>
231 nvl(p_rec.bba_attribute25, hr_api.g_varchar2) or
232 nvl(per_bba_shd.g_old_rec.bba_attribute26, hr_api.g_varchar2) <>
233 nvl(p_rec.bba_attribute26, hr_api.g_varchar2) or
234 nvl(per_bba_shd.g_old_rec.bba_attribute27, hr_api.g_varchar2) <>
235 nvl(p_rec.bba_attribute27, hr_api.g_varchar2) or
236 nvl(per_bba_shd.g_old_rec.bba_attribute28, hr_api.g_varchar2) <>
237 nvl(p_rec.bba_attribute28, hr_api.g_varchar2) or
238 nvl(per_bba_shd.g_old_rec.bba_attribute29, hr_api.g_varchar2) <>
239 nvl(p_rec.bba_attribute29, hr_api.g_varchar2) or
240 nvl(per_bba_shd.g_old_rec.bba_attribute30, hr_api.g_varchar2) <>
241 nvl(p_rec.bba_attribute30, hr_api.g_varchar2) ))
242 or (p_rec.balance_amount_id is null) then
243 --
244 -- Only execute the validation if absolutely necessary:
245 -- a) During update, the structure column value or any
246 -- of the attribute values have actually changed.
247 -- b) During insert.
248 --
249 hr_dflex_utility.ins_or_upd_descflex_attribs
250 (p_appl_short_name => 'PER'
251 ,p_descflex_name => 'PER_BF_BALANCE_AMOUNTS'
252 ,p_attribute_category => p_rec.bba_attribute_category
253 ,p_attribute1_name => 'BBA_ATTRIBUTE1'
254 ,p_attribute1_value => p_rec.bba_attribute1
255 ,p_attribute2_name => 'BBA_ATTRIBUTE2'
256 ,p_attribute2_value => p_rec.bba_attribute2
257 ,p_attribute3_name => 'BBA_ATTRIBUTE3'
258 ,p_attribute3_value => p_rec.bba_attribute3
259 ,p_attribute4_name => 'BBA_ATTRIBUTE4'
260 ,p_attribute4_value => p_rec.bba_attribute4
261 ,p_attribute5_name => 'BBA_ATTRIBUTE5'
262 ,p_attribute5_value => p_rec.bba_attribute5
263 ,p_attribute6_name => 'BBA_ATTRIBUTE6'
264 ,p_attribute6_value => p_rec.bba_attribute6
265 ,p_attribute7_name => 'BBA_ATTRIBUTE7'
266 ,p_attribute7_value => p_rec.bba_attribute7
267 ,p_attribute8_name => 'BBA_ATTRIBUTE8'
268 ,p_attribute8_value => p_rec.bba_attribute8
269 ,p_attribute9_name => 'BBA_ATTRIBUTE9'
270 ,p_attribute9_value => p_rec.bba_attribute9
271 ,p_attribute10_name => 'BBA_ATTRIBUTE10'
272 ,p_attribute10_value => p_rec.bba_attribute10
273 ,p_attribute11_name => 'BBA_ATTRIBUTE11'
274 ,p_attribute11_value => p_rec.bba_attribute11
275 ,p_attribute12_name => 'BBA_ATTRIBUTE12'
276 ,p_attribute12_value => p_rec.bba_attribute12
277 ,p_attribute13_name => 'BBA_ATTRIBUTE13'
278 ,p_attribute13_value => p_rec.bba_attribute13
279 ,p_attribute14_name => 'BBA_ATTRIBUTE14'
280 ,p_attribute14_value => p_rec.bba_attribute14
281 ,p_attribute15_name => 'BBA_ATTRIBUTE15'
282 ,p_attribute15_value => p_rec.bba_attribute15
283 ,p_attribute16_name => 'BBA_ATTRIBUTE16'
284 ,p_attribute16_value => p_rec.bba_attribute16
285 ,p_attribute17_name => 'BBA_ATTRIBUTE17'
286 ,p_attribute17_value => p_rec.bba_attribute17
287 ,p_attribute18_name => 'BBA_ATTRIBUTE18'
288 ,p_attribute18_value => p_rec.bba_attribute18
289 ,p_attribute19_name => 'BBA_ATTRIBUTE19'
290 ,p_attribute19_value => p_rec.bba_attribute19
291 ,p_attribute20_name => 'BBA_ATTRIBUTE20'
292 ,p_attribute20_value => p_rec.bba_attribute20
293 ,p_attribute21_name => 'BBA_ATTRIBUTE21'
294 ,p_attribute21_value => p_rec.bba_attribute21
295 ,p_attribute22_name => 'BBA_ATTRIBUTE22'
296 ,p_attribute22_value => p_rec.bba_attribute22
297 ,p_attribute23_name => 'BBA_ATTRIBUTE23'
298 ,p_attribute23_value => p_rec.bba_attribute23
299 ,p_attribute24_name => 'BBA_ATTRIBUTE24'
300 ,p_attribute24_value => p_rec.bba_attribute24
301 ,p_attribute25_name => 'BBA_ATTRIBUTE25'
302 ,p_attribute25_value => p_rec.bba_attribute25
303 ,p_attribute26_name => 'BBA_ATTRIBUTE26'
304 ,p_attribute26_value => p_rec.bba_attribute26
305 ,p_attribute27_name => 'BBA_ATTRIBUTE27'
306 ,p_attribute27_value => p_rec.bba_attribute27
307 ,p_attribute28_name => 'BBA_ATTRIBUTE28'
311 ,p_attribute30_name => 'BBA_ATTRIBUTE30'
308 ,p_attribute28_value => p_rec.bba_attribute28
309 ,p_attribute29_name => 'BBA_ATTRIBUTE29'
310 ,p_attribute29_value => p_rec.bba_attribute29
312 ,p_attribute30_value => p_rec.bba_attribute30
313 );
314 end if;
315 --
316 hr_utility.set_location(' Leaving:'||l_proc,20);
317 end chk_df;
318 --
319 -- ----------------------------------------------------------------------------
320 -- |----------------------< check_non_updateable_args >-----------------------|
321 -- ----------------------------------------------------------------------------
322 -- {Start Of Comments}
323 --
324 -- Description:
325 -- This procedure is used to ensure that non updateable attributes have
326 -- not been updated. If an attribute has been updated an error is generated.
327 --
328 -- Pre Conditions:
329 -- g_old_rec has been populated with details of the values currently in
330 -- the database.
331 --
332 -- In Arguments:
333 -- p_rec has been populated with the updated values the user would like the
334 -- record set to.
335 --
336 -- Post Success:
337 -- Processing continues if all the non updateable attributes have not
338 -- changed.
339 --
340 -- Post Failure:
341 -- An application error is raised if any of the non updatable attributes
342 -- have been altered.
343 --
344 -- {End Of Comments}
345 -- ----------------------------------------------------------------------------
346 Procedure chk_non_updateable_args(p_rec in per_bba_shd.g_rec_type) IS
347 --
348 l_proc varchar2(72) := g_package || 'check_non_updateable_args';
349 l_error EXCEPTION;
350 l_argument varchar2(30);
351 --
352 Begin
353 hr_utility.set_location('Entering:'||l_proc,5);
354 --
355 -- Only proceed with the validation if a row exists for the current
356 -- record in the HR Schema.
357 --
358 IF NOT per_bba_shd.api_updating
359 (p_balance_amount_id => p_rec.balance_amount_id
360 ,p_object_version_number => p_rec.object_version_number
361 ) THEN
362 hr_utility.set_message(800, 'HR_6153_ALL_PROCEDURE_FAIL');
363 hr_utility.set_message_token('PROCEDURE ', l_proc);
364 hr_utility.set_message_token('STEP ', '5');
365 END IF;
366 --
367 hr_utility.set_location(l_proc,10);
368 --
369 IF nvl(p_rec.balance_type_id, hr_api.g_number) <>
370 per_bba_shd.g_old_rec.balance_type_id then
371 l_argument:='balance_type_id';
372 raise l_error;
373 END IF;
374 hr_utility.set_location(l_proc,20);
375 --
376 IF nvl(p_rec.processed_assignment_id, hr_api.g_number) <>
377 per_bba_shd.g_old_rec.processed_assignment_id then
378 l_argument:='processed_assignment_id';
379 raise l_error;
380 END IF;
381 hr_utility.set_location(l_proc,30);
382 --
383 IF nvl(p_rec.business_group_id, hr_api.g_number) <>
384 per_bba_shd.g_old_rec.business_group_id then
385 l_argument:='business_group_id';
386 raise l_error;
387 END IF;
388 hr_utility.set_location(l_proc,40);
389 --
390 EXCEPTION
391 WHEN l_error THEN
392 hr_api.argument_changed_error
393 (p_api_name => l_proc
394 ,p_argument => l_argument);
395 WHEN OTHERS THEN
396 RAISE;
397 hr_utility.set_location(' Leaving:'||l_proc,20);
398 End chk_non_updateable_args;
399 --
400 -- ----------------------------------------------------------------------------
401 -- |----------------------< chk_processed_asg_id >----------------------------|
402 -- ----------------------------------------------------------------------------
403 -- {Start Of Comments}
404 --
405 -- Description:
406 -- Check that the processed_asg_idexists in the table
407 -- PER_BF_PROCESSED_ASSIGNMENTS
408 --
409 -- Pre Conditions:
410 --
411 -- In Arguments:
412 -- p_processed_assignment_id
413 -- Post Success:
414 -- Processing continues.
415 --
416 -- Post Failure:
417 -- An application error is raised.
418 --
419 -- {End Of Comments}
420 -- ----------------------------------------------------------------------------
421 PROCEDURE chk_processed_asg_id
422 (p_processed_assignment_id IN NUMBER)
423 IS
424 --
425 CURSOR csr_chk_processed_asg_id IS
426 SELECT 1
427 FROM PER_BF_PROCESSED_ASSIGNMENTS
428 WHERE processed_assignment_id = p_processed_assignment_id;
429 --
430 l_temp VARCHAR2(1);
431 l_proc varchar2(72) := g_package || 'chk_processed_asg_id';
432 BEGIN
433 hr_utility.set_location('Entering:'||l_proc,5);
434 --
435 OPEN csr_chk_processed_asg_id ;
436 FETCH csr_chk_processed_asg_id INTO l_temp;
437 --
438 IF csr_chk_processed_asg_id%NOTFOUND THEN
439 --
440 CLOSE csr_chk_processed_asg_id;
441 --
442 -- The ID hasn't been found, so error
443 --
444 per_bba_shd.constraint_error
445 (p_constraint_name => 'PER_BF_BALANCE_AMOUNTS_FK3');
446 --
447 END IF;
448 CLOSE csr_chk_processed_asg_id;
449 --
450 hr_utility.set_location(' Leaving:'||l_proc,20);
451 END chk_processed_asg_id;
452 --
453 -- ----------------------------------------------------------------------------
457 --
454 -- |----------------------< chk_balance_type_id >-----------------------------|
455 -- ----------------------------------------------------------------------------
456 -- {Start Of Comments}
458 -- Description:
459 -- Check that the balance_type_id exists in the table
460 -- PER_BF_BALANCE_AMOUNTS
461 --
462 -- Pre Conditions:
463 --
464 -- In Arguments:
465 -- p_balance_type_id
466 -- p_business_group_id
467 -- Post Success:
468 -- Processing continues.
469 --
470 -- Post Failure:
471 -- An application error is raised.
472 --
473 -- {End Of Comments}
474 -- ----------------------------------------------------------------------------
475 PROCEDURE CHK_BALANCE_TYPE_ID
476 (p_balance_type_id IN NUMBER
477 ,p_business_group_id IN NUMBER
478 )
479 IS
480 CURSOR csr_chk_balance_type_id IS
481 SELECT 1
482 FROM per_bf_balance_types
483 WHERE balance_type_id = p_balance_type_id
484 AND business_group_id = p_business_group_id;
485 --
486 l_temp VARCHAR2(1);
487 --
488 BEGIN
489 OPEN csr_chk_balance_type_id;
490 FETCH csr_chk_balance_type_id INTO l_temp;
491 IF csr_chk_balance_type_id%NOTFOUND THEN
492 --
493 CLOSE csr_chk_balance_type_id;
494 --
495 -- The balance type either doesn't exist or is in a different BG
496 -- so error.
497 --
498 per_bba_shd.constraint_error
499 (p_constraint_name => 'PER_BF_BALANCE_AMOUNTS_FK2');
500 --
501 END IF;
502 --
503 CLOSE csr_chk_balance_type_id;
504 --
505 --
506 END CHK_BALANCE_TYPE_ID;
507 -- ----------------------------------------------------------------------------
508 -- |---------------------------< insert_validate >----------------------------|
509 -- ----------------------------------------------------------------------------
510 Procedure insert_validate(p_effective_date in date,
511 p_rec in per_bba_shd.g_rec_type
512 ) is
513 --
514 l_proc varchar2(72) := g_package||'insert_validate';
515 --
516 Begin
517 hr_utility.set_location('Entering:'||l_proc, 5);
518 --
519 -- Call all supporting business operations
520 --
521 hr_api.validate_bus_grp_id(p_rec.business_group_id); -- Validate Bus Grp
522 --
523 CHK_PROCESSED_ASG_ID
524 (p_processed_assignment_id => p_rec.processed_assignment_id);
525 --
526 CHK_BALANCE_TYPE_ID
527 (p_balance_type_id => p_rec.balance_type_id
528 ,p_business_group_id => p_rec.business_group_id
529 );
530 -- Validate flexfields
531 -- ===================
532 chk_df(p_rec => p_rec);
533 --
534 hr_utility.set_location(' Leaving:'||l_proc, 10);
535 End insert_validate;
536 --
537 -- ----------------------------------------------------------------------------
538 -- |---------------------------< update_validate >----------------------------|
539 -- ----------------------------------------------------------------------------
540 Procedure update_validate(p_effective_date in date,
541 p_rec in per_bba_shd.g_rec_type
542 ) is
543 --
544 l_proc varchar2(72) := g_package||'update_validate';
545 --
546 Begin
547 hr_utility.set_location('Entering:'||l_proc, 5);
548 --
549 -- Call all supporting business operations
550 --
551 hr_api.validate_bus_grp_id(p_rec.business_group_id); -- Validate Bus Grp
552 --
553 chk_non_updateable_args(p_rec => p_rec);
554 --
555 -- Validate flexfields
556 -- ===================
557 chk_df(p_rec => p_rec);
558 --
559 --
560 hr_utility.set_location(' Leaving:'||l_proc, 10);
561 End update_validate;
562 --
563 -- ----------------------------------------------------------------------------
564 -- |---------------------------< delete_validate >----------------------------|
565 -- ----------------------------------------------------------------------------
566 Procedure delete_validate(p_rec in per_bba_shd.g_rec_type) is
567 --
568 l_proc varchar2(72) := g_package||'delete_validate';
569 --
570 Begin
571 hr_utility.set_location('Entering:'||l_proc, 5);
572 --
573 -- Call all supporting business operations
574 --
575 hr_utility.set_location(' Leaving:'||l_proc, 10);
576 End delete_validate;
577 --
578 end per_bba_bus;