[Home] [Help]
PACKAGE BODY: APPS.IRC_CMM_BUS
Source
1 Package Body irc_cmm_bus as
2 /* $Header: ircmmrhi.pkb 120.2 2008/04/14 14:50:29 amikukum noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- | Private Global Definitions |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package varchar2(33) := ' irc_cmm_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_communication_message_id number default null;
15 --
16 -- ---------------------------------------------------------------------------
17 -- |----------------------< set_security_group_id >--------------------------|
18 -- ---------------------------------------------------------------------------
19 --
20 Procedure set_security_group_id
21 (p_communication_message_id in number
22 ,p_associated_column1 in varchar2 default null
23 ) is
24 --
25 -- Declare cursor
26 --
27 -- EDIT_HERE In the following cursor statement add join(s) between
28 -- irc_comm_messages and PER_BUSINESS_GROUPS_PERF
29 -- so that the security_group_id for
30 -- the current business group context can be derived.
31 -- Remove this comment when the edit has been completed.
32 cursor csr_sec_grp is
33 select pbg.security_group_id,
34 pbg.legislation_code
35 from per_business_groups_perf pbg
36 , irc_comm_messages cmm
37 -- , EDIT_HERE table_name(s) 333
38 where cmm.communication_message_id = p_communication_message_id;
39 -- and pbg.business_group_id = EDIT_HERE 333.business_group_id;
40 --
41 -- Declare local variables
42 --
43 l_security_group_id number;
44 l_proc varchar2(72) := g_package||'set_security_group_id';
45 l_legislation_code varchar2(150);
46 --
47 begin
48 --
49 hr_utility.set_location('Entering:'|| l_proc, 10);
50 --
51 -- Ensure that all the mandatory parameter are not null
52 --
53 hr_api.mandatory_arg_error
54 (p_api_name => l_proc
55 ,p_argument => 'communication_message_id'
56 ,p_argument_value => p_communication_message_id
57 );
58 --
59 open csr_sec_grp;
60 fetch csr_sec_grp into l_security_group_id
61 , l_legislation_code;
62 --
63 if csr_sec_grp%notfound then
64 --
65 close csr_sec_grp;
66 --
67 -- The primary key is invalid therefore we must error
68 --
69 fnd_message.set_name('PAY','HR_7220_INVALID_PRIMARY_KEY');
70 hr_multi_message.add
71 (p_associated_column1
72 => nvl(p_associated_column1,'COMMUNICATION_MESSAGE_ID')
73 );
74 --
75 else
76 close csr_sec_grp;
77 --
78 -- Set the security_group_id in CLIENT_INFO
79 --
80 hr_api.set_security_group_id
81 (p_security_group_id => l_security_group_id
82 );
83 --
84 -- Set the sessions legislation context in HR_SESSION_DATA
85 --
86 hr_api.set_legislation_context(l_legislation_code);
87 end if;
88 --
89 hr_utility.set_location(' Leaving:'|| l_proc, 20);
90 --
91 end set_security_group_id;
92 --
93 -- ---------------------------------------------------------------------------
94 -- |---------------------< return_legislation_code >-------------------------|
95 -- ---------------------------------------------------------------------------
96 --
97 Function return_legislation_code
98 (p_communication_message_id in number
99 )
100 Return Varchar2 Is
101 --
102 -- Declare cursor
103 --
104 -- EDIT_HERE In the following cursor statement add join(s) between
105 -- irc_comm_messages and PER_BUSINESS_GROUPS_PERF
106 -- so that the legislation_code for
107 -- the current business group context can be derived.
108 -- Remove this comment when the edit has been completed.
109 cursor csr_leg_code is
110 select pbg.legislation_code
111 from per_business_groups_perf pbg
112 , irc_comm_messages cmm
113 -- , EDIT_HERE table_name(s) 333
114 where cmm.communication_message_id = p_communication_message_id;
115 -- and pbg.business_group_id = EDIT_HERE 333.business_group_id;
116 --
117 -- Declare local variables
118 --
119 l_legislation_code varchar2(150);
120 l_proc varchar2(72) := g_package||'return_legislation_code';
121 --
122 Begin
123 --
124 hr_utility.set_location('Entering:'|| l_proc, 10);
125 --
126 -- Ensure that all the mandatory parameter are not null
127 --
128 hr_api.mandatory_arg_error
129 (p_api_name => l_proc
130 ,p_argument => 'communication_message_id'
131 ,p_argument_value => p_communication_message_id
132 );
133 --
134 if ( nvl(irc_cmm_bus.g_communication_message_id, hr_api.g_number)
135 = p_communication_message_id) then
136 --
137 -- The legislation code has already been found with a previous
138 -- call to this function. Just return the value in the global
139 -- variable.
140 --
141 l_legislation_code := irc_cmm_bus.g_legislation_code;
142 hr_utility.set_location(l_proc, 20);
143 else
144 --
145 -- The ID is different to the last call to this function
146 -- or this is the first call to this function.
147 --
148 open csr_leg_code;
149 fetch csr_leg_code into l_legislation_code;
150 --
151 if csr_leg_code%notfound then
152 --
153 -- The primary key is invalid therefore we must error
154 --
155 close csr_leg_code;
156 fnd_message.set_name('PAY','HR_7220_INVALID_PRIMARY_KEY');
157 fnd_message.raise_error;
158 end if;
159 hr_utility.set_location(l_proc,30);
160 --
161 -- Set the global variables so the values are
162 -- available for the next call to this function.
163 --
164 close csr_leg_code;
165 irc_cmm_bus.g_communication_message_id := p_communication_message_id;
166 irc_cmm_bus.g_legislation_code := l_legislation_code;
167 end if;
168 hr_utility.set_location(' Leaving:'|| l_proc, 40);
169 return l_legislation_code;
170 end return_legislation_code;
171 --
172 -- ----------------------------------------------------------------------------
173 -- |-----------------------< chk_non_updateable_args >------------------------|
174 -- ----------------------------------------------------------------------------
175 -- {Start Of Comments}
176 --
177 -- Description:
178 -- This procedure is used to ensure that non updateable attributes have
179 -- not been updated. If an attribute has been updated an error is generated.
180 --
181 -- Pre Conditions:
182 -- g_old_rec has been populated with details of the values currently in
183 -- the database.
184 --
185 -- In Arguments:
186 -- p_rec has been populated with the updated values the user would like the
187 -- record set to.
188 --
189 -- Post Success:
190 -- Processing continues if all the non updateable attributes have not
191 -- changed.
192 --
193 -- Post Failure:
194 -- An application error is raised if any of the non updatable attributes
195 -- have been altered.
196 --
197 -- {End Of Comments}
198 -- ----------------------------------------------------------------------------
199 Procedure chk_non_updateable_args
200 (p_effective_date in date
201 ,p_rec in irc_cmm_shd.g_rec_type
202 ) IS
203 --
204 l_proc varchar2(72) := g_package || 'chk_non_updateable_args';
205 l_error EXCEPTION;
206 l_argument varchar2(30);
207 --
208 Begin
209 --
210 -- Only proceed with the validation if a row exists for the current
211 -- record in the HR Schema.
212 --
213 IF NOT irc_cmm_shd.api_updating
214 (p_communication_message_id => p_rec.communication_message_id
215 ,p_object_version_number => p_rec.object_version_number
216 ) THEN
217 fnd_message.set_name('PER', 'HR_6153_ALL_PROCEDURE_FAIL');
218 fnd_message.set_token('PROCEDURE ', l_proc);
219 fnd_message.set_token('STEP ', '5');
220 fnd_message.raise_error;
221 END IF;
222 --
223 -- EDIT_HERE: Add checks to ensure non-updateable args have
224 -- not been updated.
225 --
226 --
227 -- Ensure non-updateable args have not been updated.
228 --
229 if p_rec.communication_topic_id <> irc_cmm_shd.g_old_rec.communication_topic_id
230 then
231 hr_api.argument_changed_error
232 (p_api_name => l_proc
233 ,p_argument => 'COMMUNICATION_TOPIC_ID'
234 ,p_base_table => irc_cmm_shd.g_tab_nam
235 );
236 end if;
237 if p_rec.sender_type <> irc_cmm_shd.g_old_rec.sender_type
238 then
239 hr_api.argument_changed_error
240 (p_api_name => l_proc
241 ,p_argument => 'SENDER_TYPE'
242 ,p_base_table => irc_cmm_shd.g_tab_nam
243 );
244 end if;
245 if p_rec.sender_id <> irc_cmm_shd.g_old_rec.sender_id
246 then
247 hr_api.argument_changed_error
248 (p_api_name => l_proc
249 ,p_argument => 'SENDER_ID'
250 ,p_base_table => irc_cmm_shd.g_tab_nam
251 );
252 end if;
253 if irc_cmm_shd.g_old_rec.message_subject IS NOT NULL AND
254 p_rec.message_subject <> irc_cmm_shd.g_old_rec.message_subject
255 then
256 hr_api.argument_changed_error
257 (p_api_name => l_proc
258 ,p_argument => 'MESSAGE_SUBJECT'
259 ,p_base_table => irc_cmm_shd.g_tab_nam
260 );
261 end if;
262 --
263 End chk_non_updateable_args;
264 --
265 -- ----------------------------------------------------------------------------
266 -- |--------------------------< chk_comm_topic_id >---------------------------|
267 -- ----------------------------------------------------------------------------
268 -- {Start Of Comments}
269 --
270 -- Description:
271 --
272 -- In Arguments:
273 --
274 -- Post Success:
275 --
276 -- Post Failure:
277 --
278 -- {End Of Comments}
279 -- ----------------------------------------------------------------------------
280 Procedure chk_comm_topic_id
281 (p_topic_id in number
282 ,p_communication_message_id in number
283 ) is
284 --
285 l_proc varchar2(72) := g_package||'chk_comm_topic_id';
286 --
287 l_topic_id irc_comm_messages.communication_topic_id%type;
288 --
289 l_api_updating boolean;
290 --
291 cursor csr_topic_id is
292 select 1
293 from irc_comm_topics
294 where communication_topic_id = p_topic_id;
295 --
296 --
297 Begin
298 --
299 hr_utility.set_location(' Entering:'||l_proc,10);
300 --
301 hr_api.mandatory_arg_error
302 (p_api_name => l_proc
303 ,p_argument => 'COMMUNICATION_TOPIC_ID'
304 ,p_argument_value => p_topic_id
305 );
306 --
307 open csr_topic_id;
308 fetch csr_topic_id into l_topic_id;
309 --
310 hr_utility.set_location(l_proc,20);
311 --
312 if csr_topic_id%notfound then
313 close csr_topic_id;
314 fnd_message.set_name('PER','IRC_412398_BAD_TOPIC_ID');
315 fnd_message.raise_error;
316 end if;
317 --
318 hr_utility.set_location(l_proc,30);
319 --
320 close csr_topic_id;
321 --
322 hr_utility.set_location(' Leaving:'||l_proc,40);
323 --
324 exception
325 when app_exception.application_exception then
326 if hr_multi_message.exception_add
327 (p_associated_column1 => 'IRC_COMM_MESSAGES.COMMUNICATION_TOPIC_ID'
328 ) then
329 --
330 hr_utility.set_location(' Leaving:'||l_proc,50);
331 --
332 raise;
333 end if;
334 --
335 hr_utility.set_location(' Leaving:'||l_proc,60);
336 --
337 End chk_comm_topic_id;
338 --
339 -- ----------------------------------------------------------------------------
340 -- |-------------------------< chk_message_subject >--------------------------|
341 -- ----------------------------------------------------------------------------
342 -- {Start Of Comments}
343 --
344 -- Description:
345 --
346 -- In Arguments:
347 --
348 -- Post Success:
349 --
350 -- Post Failure:
351 --
352 -- {End Of Comments}
353 -- ----------------------------------------------------------------------------
354 Procedure chk_message_subject
355 (p_message_subject in irc_comm_messages.message_subject%type
356 ) is
357 --
358 l_proc varchar2(72) := g_package||'chk_message_subject';
359 --
360 --
361 Begin
362 --
363 hr_utility.set_location(' Entering:'||l_proc,10);
364 --
365 /*
366 hr_api.mandatory_arg_error
367 (p_api_name => l_proc
368 ,p_argument => 'MESSAGE_SUBJECT'
369 ,p_argument_value => p_message_subject
370 );
371 */
372 --
373 if length(p_message_subject) > 150 then
374 fnd_message.set_name('PER','IRC_412399_LONG_MSG_SUB');
375 fnd_message.raise_error;
376 end if;
377 --
378 hr_utility.set_location(l_proc,20);
379 --
380 exception
381 when app_exception.application_exception then
382 if hr_multi_message.exception_add
383 (p_associated_column1 => 'IRC_COMM_MESSAGES.MESSAGE_SUBJECT'
384 ) then
385 --
386 hr_utility.set_location(' Leaving:'||l_proc,30);
387 --
388 raise;
389 end if;
390 --
391 hr_utility.set_location(' Leaving:'||l_proc,40);
392 --
393 End chk_message_subject;
394 --
395 -- ----------------------------------------------------------------------------
396 -- |---------------------------< chk_message_body >----------------------------|
397 -- ----------------------------------------------------------------------------
398 -- {Start Of Comments}
399 --
400 -- Description:
401 --
402 -- In Arguments:
403 --
404 -- Post Success:
405 --
406 -- Post Failure:
407 --
408 -- {End Of Comments}
409 -- ----------------------------------------------------------------------------
410 Procedure chk_message_body
411 (p_message_body in irc_comm_messages.message_body%type
412 ) is
413 --
414 l_proc varchar2(72) := g_package||'chk_message_body';
415 --
416 --
417 Begin
418 --
419 hr_utility.set_location(' Entering:'||l_proc,10);
420 --
421 if p_message_body is null or length(p_message_body) = 0 then
422 fnd_message.set_name('PER','IRC_412247_NULL_MSG_BODY');
423 fnd_message.raise_error;
424 end if;
425
426 if length(p_message_body) > 4000 then
427 fnd_message.set_name('PER','IRC_412400_LONG_MSG_BODY');
428 fnd_message.raise_error;
429 end if;
430 --
431 hr_utility.set_location(l_proc,20);
432 --
433 exception
434 when app_exception.application_exception then
435 if hr_multi_message.exception_add
436 (p_associated_column1 => 'IRC_COMM_MESSAGES.MESSAGE_BODY'
437 ) then
438 --
439 hr_utility.set_location(' Leaving:'||l_proc,30);
440 --
441 raise;
442 end if;
443 --
444 hr_utility.set_location(' Leaving:'||l_proc,40);
445 --
446 End chk_message_body;
447 --
448 -- ----------------------------------------------------------------------------
449 -- |-------------------------< chk_message_post_date >-------------------------|
450 -- ----------------------------------------------------------------------------
451 -- {Start Of Comments}
452 --
453 -- Description:
457 -- Post Success:
454 --
455 -- In Arguments:
456 --
458 --
459 -- Post Failure:
460 --
461 -- {End Of Comments}
462 -- ----------------------------------------------------------------------------
463 Procedure chk_message_post_date
464 (p_message_post_date in irc_comm_messages.message_post_date%type
465 ) is
466 --
467 l_proc varchar2(72) := g_package||'chk_message_post_date';
468 --
469 --
470 Begin
471 --
472 hr_utility.set_location(' Entering:'||l_proc,10);
473 --
474 hr_api.mandatory_arg_error
475 (p_api_name => l_proc
476 ,p_argument => 'MESSAGE_POST_DATE'
477 ,p_argument_value => p_message_post_date
478 );
479 --
480 exception
481 when app_exception.application_exception then
482 if hr_multi_message.exception_add
483 (p_associated_column1 => 'IRC_COMM_MESSAGES.MESSAGE_POST_DATE'
484 ) then
485 --
486 hr_utility.set_location(' Leaving:'||l_proc,20);
487 --
488 raise;
489 end if;
490 --
491 hr_utility.set_location(' Leaving:'||l_proc,30);
492 --
493 End chk_message_post_date;
494 --
495 -- ----------------------------------------------------------------------------
496 -- |------------------------------< chk_sender >------------------------------|
497 -- ----------------------------------------------------------------------------
498 -- {Start Of Comments}
499 --
500 -- Description:
501 --
502 -- In Arguments:
503 --
504 -- Post Success:
505 --
506 -- Post Failure:
507 --
508 -- {End Of Comments}
509 -- ----------------------------------------------------------------------------
510 Procedure chk_sender
511 (p_sender_type in irc_comm_messages.sender_type%type ,
512 p_sender_id in irc_comm_messages.sender_id%type
513 ) is
514 --
515 l_proc varchar2(72) := g_package||'chk_sender';
516 l_sender_id per_all_people_f.person_id%type;
517 --
518 cursor csr_sender is
519 select person_id
520 from per_all_people_f
521 where person_id = p_sender_id;
522 --
523 cursor csr_sender_agency is
524 select vendor_id
525 from po_vendors
526 where vendor_id = p_sender_id;
527 --
528 Begin
529 --
530 hr_utility.set_location(' Entering:'||l_proc,10);
531 --
532 hr_api.mandatory_arg_error
533 (p_api_name => l_proc
534 ,p_argument => 'SENDER_TYPE'
535 ,p_argument_value => p_sender_type
536 );
537 --
538 hr_utility.set_location(' Entering:'||l_proc,20);
539 --
540 hr_api.mandatory_arg_error
541 (p_api_name => l_proc
542 ,p_argument => 'SENDER_ID'
543 ,p_argument_value => p_sender_id
544 );
545 --
546 if p_sender_type = 'PERSON' then
547 open csr_sender;
548 fetch csr_sender into l_sender_id;
549 --
550 hr_utility.set_location(l_proc,30);
551 --
552 if csr_sender%notfound then
553 close csr_sender;
554 fnd_message.set_name('PER','IRC_412401_BAD_SENDER_ID');
555 fnd_message.raise_error;
556 end if;
557 --
558 hr_utility.set_location(l_proc,40);
559 --
560 close csr_sender;
561 end if;
562 if p_sender_type = 'VENDOR' then
563 open csr_sender_agency;
564 fetch csr_sender_agency into l_sender_id;
565 --
566 hr_utility.set_location(l_proc,50);
567 --
568 if csr_sender_agency%notfound then
569 close csr_sender_agency;
570 fnd_message.set_name('PER','IRC_412402_BAD_SENDER_ID');
571 fnd_message.raise_error;
572 end if;
573 --
574 hr_utility.set_location(l_proc,60);
575 --
576 close csr_sender_agency;
577 end if;
578
579 exception
580 when app_exception.application_exception then
581 if hr_multi_message.exception_add
582 (p_associated_column1 => 'IRC_COMM_MESSAGES.SENDER_TYPE'
583 ,p_associated_column2 => 'IRC_COMM_MESSAGES.SENDER_ID'
584 ) then
585 --
586 hr_utility.set_location(' Leaving:'||l_proc,70);
587 --
588 raise;
589 end if;
590 --
591 hr_utility.set_location(' Leaving:'||l_proc,80);
592 --
593 End chk_sender;
594 --
595 -- ----------------------------------------------------------------------------
596 -- |------------------------------< chk_document >-----------------------------|
597 -- ----------------------------------------------------------------------------
598 -- {Start Of Comments}
599 --
600 -- Description:
601 --
602 -- In Arguments:
603 --
604 -- Post Success:
605 --
606 -- Post Failure:
607 --
608 -- {End Of Comments}
609 -- ----------------------------------------------------------------------------
610 Procedure chk_document
611 (p_document_type in irc_comm_messages.document_type%type ,
612 p_document_id in irc_comm_messages.document_id%type
613 ) is
614 --
615 l_proc varchar2(72) := g_package||'chk_document';
616 l_document_id irc_documents.document_id%type;
617 --
618 cursor csr_document is
619 select document_id
620 from irc_documents
621 where document_id = p_document_id;
622 --
623 Begin
624 --
625 hr_utility.set_location(' Entering:'||l_proc,10);
626 --
627 if p_document_type = 'IRC_DOC' then
628 open csr_document;
629 fetch csr_document into l_document_id;
630 --
631 hr_utility.set_location(l_proc,20);
632 --
636 fnd_message.raise_error;
633 if csr_document%notfound then
634 close csr_document;
635 fnd_message.set_name('PER','IRC_412403_BAD_DOC_ID');
637 end if;
638 --
639 hr_utility.set_location(l_proc,30);
640 --
641 close csr_document;
642 end if;
643 if (p_document_type is null and p_document_id is null) or
644 (p_document_type is not null and p_document_id is not null) then
645 --it is okay to go ahead
646 hr_utility.set_location(l_proc,30);
647 else
648 fnd_message.set_name('PER','IRC_412404_NULL_DOC_ID');
649 fnd_message.raise_error;
650 end if;
651 exception
652 when app_exception.application_exception then
653 if hr_multi_message.exception_add
654 (p_associated_column1 => 'IRC_COMM_MESSAGES.DOCUMENT_TYPE'
655 ,p_associated_column2 => 'IRC_COMM_MESSAGES.DOCUMENT_ID'
656 ) then
657 --
658 hr_utility.set_location(' Leaving:'||l_proc,40);
659 --
660 raise;
661 end if;
662 --
663 hr_utility.set_location(' Leaving:'||l_proc,50);
664 --
665 End chk_document;
666 --
667 -- ----------------------------------------------------------------------------
668 -- |---------------------------< chk_deleted_flag >---------------------------|
669 -- ----------------------------------------------------------------------------
670 Procedure chk_deleted_flag
671 (p_deleted_flag in irc_comm_messages.deleted_flag%type
672 ) is
673 --
674 l_proc varchar2(72) := g_package||'chk_deleted_flag';
675 --
676 --
677 Begin
678 --
679 hr_utility.set_location(' Entering:'||l_proc,10);
680 --
681 if p_deleted_flag <> 'Y' and p_deleted_flag <> 'N' then
682 --
683 -- raise error
684 --
685 hr_utility.set_location('Leaving: '|| l_proc, 3);
686 hr_utility.set_message(800,'IRC_412421_INVALID_DELETED_FLAG');
687 hr_utility.raise_error;
688 end if;
689 --
690 exception
691 when app_exception.application_exception then
692 if hr_multi_message.exception_add
693 (p_associated_column1 => 'IRC_COMM_MESSAGES.DELETED_FLAG'
694 ) then
695 --
696 hr_utility.set_location(' Leaving:'||l_proc,20);
697 --
698 raise;
699 end if;
700 --
701 hr_utility.set_location(' Leaving:'||l_proc,30);
702 --
703 End chk_deleted_flag;
704 --
705 -- ----------------------------------------------------------------------------
706 -- |---------------------------< insert_validate >----------------------------|
707 -- ----------------------------------------------------------------------------
708 Procedure insert_validate
709 (p_effective_date in date
710 ,p_rec in irc_cmm_shd.g_rec_type
711 ) is
712 --
713 l_proc varchar2(72) := g_package||'insert_validate';
714 --
715 Begin
716 hr_utility.set_location('Entering:'||l_proc, 5);
717 --
718 -- Call all supporting business operations
719 --
720 --
721 -- EDIT_HERE: As this table does not have a mandatory business_group_id
722 -- column, ensure client_info is populated by calling a suitable
723 -- ???_???_bus.set_security_group_id procedure, or add one of the following
724 -- comments:
725 -- "-- No business group context. HR_STANDARD_LOOKUPS used for validation."
726 -- "-- CLIENT_INFO not set. No lookup validation or joins to HR_LOOKUPS."
727 --
728 -- Validate Dependent Attributes
729 --
730 chk_comm_topic_id(p_topic_id => p_rec.communication_topic_id
731 ,p_communication_message_id => p_rec.communication_message_id);
732 --
733 chk_message_subject(p_rec.message_subject);
734 --
735 chk_message_body(p_rec.message_body);
736 --
737 chk_message_post_date(p_rec.message_post_date);
738 --
739 chk_sender(p_sender_type => p_rec.sender_type
740 ,p_sender_id => p_rec.sender_id);
741 --
742 chk_document(p_document_type => p_rec.document_type
743 ,p_document_id => p_rec.document_id);
744 --
745 chk_deleted_flag(p_rec.deleted_flag);
746 --
747 hr_utility.set_location(' Leaving:'||l_proc, 10);
748 End insert_validate;
749 --
750 -- ----------------------------------------------------------------------------
751 -- |---------------------------< update_validate >----------------------------|
752 -- ----------------------------------------------------------------------------
753 Procedure update_validate
754 (p_effective_date in date
755 ,p_rec in irc_cmm_shd.g_rec_type
756 ) is
757 --
758 l_proc varchar2(72) := g_package||'update_validate';
759 --
760 Begin
761 hr_utility.set_location('Entering:'||l_proc, 5);
762 --
763 -- Call all supporting business operations
764 --
765 --
766 -- EDIT_HERE: As this table does not have a mandatory business_group_id
767 -- column, ensure client_info is populated by calling a suitable
768 -- ???_???_bus.set_security_group_id procedure, or add one of the following
769 -- comments:
770 -- "-- No business group context. HR_STANDARD_LOOKUPS used for validation."
771 -- "-- CLIENT_INFO not set. No lookup validation or joins to HR_LOOKUPS."
772 --
773 -- Validate Dependent Attributes
774 --
775 chk_non_updateable_args
776 (p_effective_date => p_effective_date
777 ,p_rec => p_rec
778 );
779 --
780 chk_comm_topic_id(p_topic_id => p_rec.communication_topic_id
781 ,p_communication_message_id => p_rec.communication_message_id);
782 --
786 --
783 chk_message_subject(p_rec.message_subject);
784 --
785 chk_message_body(p_rec.message_body);
787 chk_message_post_date(p_rec.message_post_date);
788 --
789 chk_sender(p_sender_type => p_rec.sender_type
790 ,p_sender_id => p_rec.sender_id);
791 --
792 chk_document(p_document_type => p_rec.document_type
793 ,p_document_id => p_rec.document_id);
794 --
795 chk_deleted_flag(p_rec.deleted_flag);
796 --
797 hr_utility.set_location(' Leaving:'||l_proc, 10);
798 End update_validate;
799 --
800 -- ----------------------------------------------------------------------------
801 -- |---------------------------< delete_validate >----------------------------|
802 -- ----------------------------------------------------------------------------
803 Procedure delete_validate
804 (p_rec in irc_cmm_shd.g_rec_type
805 ) is
806 --
807 l_proc varchar2(72) := g_package||'delete_validate';
808 --
809 Begin
810 hr_utility.set_location('Entering:'||l_proc, 5);
811 --
812 -- Call all supporting business operations
813 --
814 hr_utility.set_location(' Leaving:'||l_proc, 10);
815 End delete_validate;
816 --
817 end irc_cmm_bus;