[Home] [Help]
PACKAGE BODY: APPS.VEA_TP_LAYERS_SV
Source
1 PACKAGE BODY VEA_TP_LAYERS_SV as
2 /* $Header: VEAVATLB.pls 115.5 2004/07/27 00:08:47 rvishnuv ship $ */
3 --{
4 /*====================== vea_tp_layers_sv =========================*/
5 /*========================================================================
6 PURPOSE: Table handler package for table VEA_TP_LAYERS
7
8 NOTES: To run the script:
9
10 sql> start VEAVATLB.pls
11
12 HISTORY
13 Created N PARIKH 09/09/99 10:00 AM
14
15 =========================================================================*/
16
17 G_PACKAGE_NAME CONSTANT VARCHAR2(30) := 'VEA_TP_LAYERS_SV';
18 --
19 --
20 /*========================================================================
21
22 PROCEDURE NAME: insert_row
23
24 PURPOSE: Inserts a record into VEA_TP_LAYERS table
25
26 ========================================================================*/
27 PROCEDURE
28 insert_row
29 (
30 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
31 p_tp_layer_id IN vea_tp_layers.tp_layer_id%TYPE,
32 p_name IN vea_tp_layers.name%TYPE,
33 p_description IN vea_tp_layers.description%TYPE,
34 p_active_flag IN vea_tp_layers.active_flag%TYPE
35 )
36 IS
37 --{
38 l_api_name CONSTANT VARCHAR2(30) := 'insert_row';
39 l_location VARCHAR2(32767);
40 --
41 --
42 l_user_id NUMBER := vea_tpa_util_pvt.get_user_id;
43 l_login_id NUMBER := vea_tpa_util_pvt.get_login_id;
44 --}
45 BEGIN
46 --{
47 l_location := '0010';
48 --
49 INSERT INTO vea_tp_layers
50 (
51 layer_provider_code, tp_layer_id,
52 name,
53 description,
54 active_flag,
55 created_by, creation_date,
56 last_updated_by, last_update_date,
57 last_update_login
58 )
59 VALUES
60 (
61 p_layer_provider_code, p_tp_layer_id,
62 p_name,
63 p_description,
64 'N', --p_active_flag,
65 l_user_id, SYSDATE,
66 l_user_id, SYSDATE,
67 l_login_id
68 );
69 --}
70 EXCEPTION
71 --{
72 WHEN OTHERS
73 THEN
74 --{
75 vea_tpa_util_pvt.add_exc_message_and_raise
76 (
77 p_package_name => G_PACKAGE_NAME,
78 p_api_name => l_api_name,
79 p_location => l_location
80 );
81 --}
82 --}
83 END insert_row;
84 --
85 --
86 /*========================================================================
87
88 PROCEDURE NAME: update_row
89
90 PURPOSE: Updates a record into VEA_TP_LAYERS table
91
92 ========================================================================*/
93 PROCEDURE
94 update_row
95 (
96 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
97 p_tp_layer_id IN vea_tp_layers.tp_layer_id%TYPE,
98 p_name IN vea_tp_layers.name%TYPE,
99 p_description IN vea_tp_layers.description%TYPE,
100 p_active_flag IN vea_tp_layers.active_flag%TYPE
101 )
102 IS
103 --{
104 l_api_name CONSTANT VARCHAR2(30) := 'update_row';
105 l_location VARCHAR2(32767);
106 --
107 --
108 l_user_id NUMBER := vea_tpa_util_pvt.get_user_id;
109 l_login_id NUMBER := vea_tpa_util_pvt.get_login_id;
110 --}
111 BEGIN
112 --{
113 l_location := '0010';
114 --
115 UPDATE vea_tp_layers
116 SET name = p_name,
117 description = p_description,
118 active_flag = 'N', --p_active_flag,
119 last_updated_by = l_user_id,
120 last_update_date = SYSDATE,
121 last_update_login = l_login_id
122 WHERE layer_provider_code = p_layer_provider_code
123 AND tp_layer_id = p_tp_layer_id;
124 --}
125 EXCEPTION
126 --{
127 WHEN OTHERS
128 THEN
129 --{
130 vea_tpa_util_pvt.add_exc_message_and_raise
131 (
132 p_package_name => G_PACKAGE_NAME,
133 p_api_name => l_api_name,
134 p_location => l_location
135 );
136 --}
137 --}
138 END update_row;
139 --
140 --
141 /*========================================================================
142
143 PROCEDURE NAME: delete_row
144
145 PURPOSE: Deletes the specified TP Layer
146
147 ========================================================================*/
148 PROCEDURE
149 delete_row
150 (
151 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
152 p_tp_layer_id IN vea_tp_layers.tp_layer_id%TYPE
153 )
154 IS
155 --{
156 l_api_name CONSTANT VARCHAR2(30) := 'delete_row';
157 l_location VARCHAR2(32767);
158 --
159 --
160 l_user_id NUMBER := vea_tpa_util_pvt.get_user_id;
161 l_login_id NUMBER := vea_tpa_util_pvt.get_login_id;
162 --}
163 BEGIN
164 --{
165 l_location := '0010';
166 --
167 /*
168 vea_layer_licenses_sv.delete_rows
169 (
170 p_layer_provider_code => p_layer_provider_code,
171 p_tp_layer_id => p_tp_layer_id
172 );
173 --
174 --
175 l_location := '0020';
176 */
177 --
178 DELETE vea_tp_layers
179 WHERE layer_provider_code = p_layer_provider_code
180 AND tp_layer_id = p_tp_layer_id;
181 --}
182 EXCEPTION
183 --{
184 WHEN OTHERS
185 THEN
186 --{
187 vea_tpa_util_pvt.add_exc_message_and_raise
188 (
189 p_package_name => G_PACKAGE_NAME,
190 p_api_name => l_api_name,
191 p_location => l_location
192 );
193 --}
194 --}
195 END delete_row;
196 --
197 --
198 /*========================================================================
199
200 PROCEDURE NAME: get_tp_layer_id
201
202 PURPOSE: Returns TP Layer ID for the specifed TP Layer name
203
204 ========================================================================*/
205 FUNCTION
206 get_tp_layer_id
207 (
208 p_tp_layer_name IN vea_tp_layers.name%TYPE
209 )
210 RETURN vea_tp_layers.tp_layer_id%TYPE
211 IS
212 --{
213 CURSOR tp_layer_cur
214 (
215 p_layer_provider_code IN vea_tp_layers.name%TYPE,
216 p_tp_layer_name IN vea_tp_layers.name%TYPE
217 )
218 IS
219 SELECT tp_layer_id
220 FROM vea_tp_layers
221 WHERE name = p_tp_layer_name
222 AND layer_provider_code = p_layer_provider_code;
223 --
224 --
225 --}
226 BEGIN
227 --{
228 FOR tp_layer_rec IN tp_layer_cur
229 (
230 p_layer_provider_code => vea_tpa_util_pvt.get_curr_layer_provider_code,
231 p_tp_layer_name => p_tp_layer_name
232 )
233 LOOP
234 --{
235 RETURN(tp_layer_rec.tp_layer_id);
236 --}
237 END LOOP;
238 --
239 --
240 RETURN(NULL);
241 --}
242 EXCEPTION
243 --{
244 WHEN OTHERS
245 THEN
246 --{
247 RAISE;
248 --}
249 --}
250 END get_tp_layer_id;
251 --
252 --
253 /*========================================================================
254
255 PROCEDURE NAME: getId
256
257 PURPOSE: Returns TP Layer ID for the specifed TP Layer name
258
259 ========================================================================*/
260 FUNCTION
261 getId
262 (
263 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
264 p_tp_layer_name IN vea_tp_layers.name%TYPE
265 )
266 RETURN vea_tp_layers.tp_layer_id%TYPE
267 IS
268 --{
269 CURSOR tp_layer_cur
270 (
271 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
272 p_tp_layer_name IN vea_tp_layers.name%TYPE
273 )
274 IS
275 SELECT tp_layer_id
276 FROM vea_tp_layers
277 WHERE name = p_tp_layer_name
278 AND layer_provider_code = p_layer_provider_code;
279 --
280 --
281 --}
282 BEGIN
283 --{
284 FOR tp_layer_rec IN tp_layer_cur
285 (
286 p_layer_provider_code => p_layer_provider_code,
287 p_tp_layer_name => p_tp_layer_name
288 )
289 LOOP
290 --{
291 RETURN(tp_layer_rec.tp_layer_id);
292 --}
293 END LOOP;
294 --
295 --
296 RETURN(NULL);
297 --}
298 EXCEPTION
299 --{
300 WHEN OTHERS
301 THEN
302 --{
303 RAISE;
304 --}
305 --}
306 END getId;
307 --
308 --
309 /*========================================================================
310
311 PROCEDURE NAME: delete_rows
312
313 PURPOSE: Removes all data belonging to the specified TP layer
314 and containing customizations for the specified application
315
316 ========================================================================*/
317 PROCEDURE
318 delete_rows
319 (
320 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
321 p_tp_layer_id IN vea_tp_layers.tp_layer_id%TYPE,
322 p_application_short_name IN vea_packages.application_short_name%TYPE
323 )
324 IS
325 --{
326 l_api_name CONSTANT VARCHAR2(30) := 'delete_rows';
327 l_api_version CONSTANT NUMBER := 1.0;
328 l_api_type CONSTANT VARCHAR2(3) := vea_tpa_util_pvt.G_PRIVATE_API;
329 --
330 --
331 l_location VARCHAR2(32767);
332 --
333 --
334 l_tp_layer_id vea_tp_layers.tp_layer_id%TYPE;
335 l_layer_header_count NUMBER;
336 l_package_count NUMBER;
337 --
338 --
339 --}
340 BEGIN
341 --{
342 l_location := '0010';
343 --
344 l_tp_layer_id := p_tp_layer_id;
345 --
346 --
347 l_location := '0020';
348 --
349 IF l_tp_layer_id IS NOT NULL
350 THEN
351 --{
352 l_location := '0030';
353 --
354 vea_layer_headers_sv.delete_rows
355 (
356 p_layer_provider_code => p_layer_provider_code,
357 p_tp_layer_id => l_tp_layer_id,
358 p_application_short_name => p_application_short_name,
359 x_layer_header_count => l_layer_header_count
360 );
361 --
362 --
363 l_location := '0040';
364 --
365 vea_packages_sv.delete_rows
366 (
367 p_layer_provider_code => p_layer_provider_code,
368 p_tp_layer_id => l_tp_layer_id,
369 p_application_short_name => p_application_short_name,
370 x_package_count => l_package_count
371 );
372 --
373 --
374 l_location := '0050';
375 --
376 vea_layer_licenses_sv.delete_rows
377 (
378 p_layer_provider_code => p_layer_provider_code,
379 p_tp_layer_id => l_tp_layer_id
380 );
381 --
382 --
383 l_location := '0060';
384 --
385 IF l_layer_header_count = 0
386 AND l_package_count = 0
387 THEN
388 --{
389 l_location := '0070';
390 --
391 delete_row
392 (
393 p_layer_provider_code => p_layer_provider_code,
394 p_tp_layer_id => l_tp_layer_id
395 );
396 --}
397 END IF;
398 --}
399 END IF;
400 --}
401 EXCEPTION
402 --{
403 WHEN OTHERS
404 THEN
405 --{
406 vea_tpa_util_pvt.add_exc_message_and_raise
407 (
408 p_package_name => G_PACKAGE_NAME,
409 p_api_name => l_api_name,
410 p_location => l_location
411 );
412 --}
413 --}
414 END delete_rows;
415 --
416 --
417 /*========================================================================
418
419 PROCEDURE NAME: delete_rows
420
421 PURPOSE: Removes all data belonging to the specified TP layer
422 and containing customizations for the specified application
423
424 ========================================================================*/
425 PROCEDURE
426 delete_rows
427 (
428 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
429 p_tp_layer_id IN vea_tp_layers.tp_layer_id%TYPE,
430 p_tp_layer_name IN vea_tp_layers.name%TYPE,
431 p_application_short_name IN vea_packages.application_short_name%TYPE
432 )
433 IS
434 --{
435 l_api_name CONSTANT VARCHAR2(30) := 'delete_rows';
436 l_api_version CONSTANT NUMBER := 1.0;
437 l_api_type CONSTANT VARCHAR2(3) := vea_tpa_util_pvt.G_PUBLIC_API;
438 --
439 --
440 l_location VARCHAR2(32767);
441 l_savepoint_name VARCHAR2(30);
442 l_user_id NUMBER := vea_tpa_util_pvt.get_user_id;
443 l_login_id NUMBER := vea_tpa_util_pvt.get_login_id;
444 --
445 --
446 CURSOR tp_layer_id_cur
447 (
448 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
449 p_tp_layer_id IN vea_tp_layers.tp_layer_id%TYPE
450 )
451 IS
452 SELECT tp_layer_id
453 FROM vea_tp_layers
454 WHERE layer_provider_code = p_layer_provider_code
455 AND tp_layer_id = p_tp_layer_id;
456 --
457 --
458 CURSOR tp_layer_name_cur
459 (
460 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
461 p_tp_layer_name IN vea_tp_layers.name%TYPE
462 )
463 IS
464 SELECT tp_layer_id
465 FROM vea_tp_layers
466 WHERE layer_provider_code = p_layer_provider_code
467 AND name = NVL(p_tp_layer_name,name);
468 --
469 --
470 l_tp_layer_id vea_tp_layers.tp_layer_id%TYPE;
471 --
472 --
473 --}
474 BEGIN
475 --{
476 l_location := '0010';
477 --
478 l_tp_layer_id := NULL;
479 --
480 --
481 l_location := '0020';
482 --
483 IF p_tp_layer_id IS NOT NULL
484 THEN
485 --{
486 l_location := '0030';
487 --
488 FOR tp_layer_id_rec IN tp_layer_id_cur
489 (
490 p_layer_provider_code => p_layer_provider_code,
491 p_tp_layer_id => p_tp_layer_id
492 )
493 LOOP
494 --{
495 l_location := '0040';
496 --
497 l_tp_layer_id := tp_layer_id_rec.tp_layer_id;
498 --
499 --
500 l_location := '0050';
501 --
502 delete_rows
503 (
504 p_layer_provider_code => p_layer_provider_code,
505 p_tp_layer_id => l_tp_layer_id,
506 p_application_short_name => p_application_short_name
507 );
508 --}
509 END LOOP;
510 --}
511 END IF;
512 --
513 --
514 l_location := '0060';
515 --
516 IF l_tp_layer_id IS NULL
517 THEN
518 --{
519 l_location := '0070';
520 --
521 FOR tp_layer_name_rec IN tp_layer_name_cur
522 (
523 p_layer_provider_code => p_layer_provider_code,
524 p_tp_layer_name => p_tp_layer_name
525 )
526 LOOP
527 --{
528 l_location := '0080';
529 --
530 l_tp_layer_id := tp_layer_name_rec.tp_layer_id;
531 --
532 --
533 l_location := '0090';
534 --
535 delete_rows
536 (
537 p_layer_provider_code => p_layer_provider_code,
538 p_tp_layer_id => l_tp_layer_id,
539 p_application_short_name => p_application_short_name
540 );
541 --}
542 END LOOP;
543 --}
544 END IF;
545 --}
546 EXCEPTION
547 --{
548 WHEN OTHERS
549 THEN
550 --{
551 vea_tpa_util_pvt.add_exc_message_and_raise
552 (
553 p_package_name => G_PACKAGE_NAME,
554 p_api_name => l_api_name,
555 p_location => l_location
556 );
557 --}
558 --}
559 END delete_rows;
560 --
561 --
562 /*========================================================================
563
564 PROCEDURE NAME: deleteUnlicensedLayers
565
566 PURPOSE: Deletes all TP layers which are not licensed to the current
567 customer and which does not have any packages.
568
569 ========================================================================*/
570 PROCEDURE
571 deleteUnlicensedLayers
572 (
573 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE
574 )
575 IS
576 --{
577 l_api_name CONSTANT VARCHAR2(30) := 'deleteUnlicensedLayers';
578 l_location VARCHAR2(32767);
579 --
580 --
581 l_user_id NUMBER := vea_tpa_util_pvt.get_user_id;
582 l_login_id NUMBER := vea_tpa_util_pvt.get_login_id;
583 --}
584 BEGIN
585 --{
586 l_location := '0010';
587 --
588 DELETE vea_tp_layers
589 WHERE layer_provider_code = p_layer_provider_code
590 AND tp_layer_id NOT IN (
591 SELECT tp_layer_id
592 FROM vea_packages
593 WHERE layer_provider_code = p_layer_provider_code
594 )
595 AND tp_layer_id NOT IN (
596 SELECT tp_layer_id
597 FROM vea_layer_licenses
598 WHERE layer_provider_code = p_layer_provider_code
599 );
600 --}
601 EXCEPTION
602 --{
603 WHEN OTHERS
604 THEN
605 --{
606 vea_tpa_util_pvt.add_exc_message_and_raise
607 (
608 p_package_name => G_PACKAGE_NAME,
609 p_api_name => l_api_name,
610 p_location => l_location
611 );
612 --}
613 --}
614 END deleteUnlicensedLayers;
615 --
616 --
617 /*========================================================================
618
619 PROCEDURE NAME: process
620
621 PURPOSE: Table hadndler API for VEA_TP_LAYERS table.
622
623 It inserts/updates a record in VEA_TP_LAYERS table.
624
625 ========================================================================*/
626 PROCEDURE
627 process
628 (
629 p_api_version IN NUMBER,
630 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
631 p_commit IN VARCHAR2 := FND_API.G_FALSE,
632 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
633 x_return_status OUT NOCOPY VARCHAR2,
634 x_msg_count OUT NOCOPY NUMBER,
635 x_msg_data OUT NOCOPY VARCHAR2,
636 x_id OUT NOCOPY vea_tp_layers.tp_layer_id%TYPE,
637 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
638 p_name IN vea_tp_layers.name%TYPE,
639 p_description IN vea_tp_layers.description%TYPE,
640 p_active_flag IN vea_tp_layers.active_flag%TYPE,
641 p_id IN vea_tp_layers.tp_layer_id%TYPE := NULL
642 )
643 IS
644 --{
645 l_api_name CONSTANT VARCHAR2(30) := 'process';
646 l_api_version CONSTANT NUMBER := 1.0;
647 l_api_type CONSTANT VARCHAR2(3) := vea_tpa_util_pvt.G_PUBLIC_API;
648 --
649 --
650 l_location VARCHAR2(32767);
651 l_savepoint_name VARCHAR2(30);
652 l_tp_layer_id vea_tp_layers.tp_layer_id%TYPE;
653 --
654 --
655 CURSOR tp_layer_cur
656 (
657 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
658 p_name IN vea_tp_layers.name%TYPE
659 )
660 IS
661 SELECT tp_layer_id
662 FROM vea_tp_layers
663 WHERE layer_provider_code = p_layer_provider_code
664 AND name = p_name;
665 --
666 --
667 /*
668 CURSOR tp_layer_cur
669 (
670 p_layer_provider_code IN vea_tp_layers.layer_provider_code%TYPE,
671 p_tp_layer_id IN vea_tp_layers.tp_layer_id%TYPE
672 )
673 IS
674 SELECT tp_layer_id
675 FROM vea_tp_layers
676 WHERE layer_provider_code = p_layer_provider_code
677 AND tp_layer_id = p_tp_layer_id;
678 */
679 --
680 --
681 --}
682 BEGIN
683 --{
684 l_location := '0010';
685 --
686 IF NOT( vea_tpa_util_pvt.is_vea_installed() )
687 THEN
688 RETURN;
689 END IF;
690 --
691 --
692 -- Standard API Header
693 --
694 l_location := '0020';
695 --
696 vea_tpa_util_pvt.api_header
697 (
698 p_package_name => G_PACKAGE_NAME,
699 p_api_name => l_api_name,
700 p_api_type => l_api_type,
701 p_api_current_version => l_api_version,
702 p_api_caller_version => p_api_version,
703 p_init_msg_list => p_init_msg_list,
704 x_savepoint_name => l_savepoint_name,
705 x_api_return_status => x_return_status
706 );
707 --
708 --
709 --{ API Body
710 --
711 --
712 l_location := '0030';
713 --
714 l_tp_layer_id := NULL;
715 g_tp_layer_id := NULL;
716 --
717 --
718 l_location := '0040';
719 --
720 l_tp_layer_id := getId
721 (
722 p_layer_provider_code => p_layer_provider_code,
723 p_tp_layer_name => p_name
724 );
725 --
726 --
727 l_location := '0050';
728 --
729 g_tp_layer_id := l_tp_layer_id;
730 --
731 --
732 l_location := '0060';
733 --
734 IF l_tp_layer_id IS NULL
735 THEN
736 --{
737 l_location := '0070';
738 --
739 IF p_layer_provider_code = vea_tpa_util_pvt.g_current_layer_provider_code
740 THEN
741 SELECT NVL( p_id, vea_tp_layers_s.NEXTVAL )
742 INTO l_tp_layer_id
743 FROM DUAL;
744 ELSE
745 SELECT vea_tp_layers_s.NEXTVAL
746 INTO l_tp_layer_id
747 FROM DUAL;
748 END IF;
749 --
750 --
751 l_location := '0080';
752 --
753 insert_row
754 (
755 p_layer_provider_code => p_layer_provider_code,
756 p_tp_layer_id => l_tp_layer_id,
757 p_name => p_name,
758 p_description => p_description,
759 p_active_flag => p_active_flag
760 );
761 -- This is very important because, we base the insert/update of licenses
762 --, release details and versions on this.
763 g_tp_layer_id := l_tp_layer_id;
764 --}
765 ELSE
766 --{
767 l_location := '0090';
768 --
769 update_row
770 (
771 p_layer_provider_code => p_layer_provider_code,
772 p_tp_layer_id => l_tp_layer_id,
773 p_name => p_name,
774 p_description => p_description,
775 p_active_flag => p_active_flag
776 );
777 --}
778 END IF;
779 --
780 --
781 l_location := '0100';
782 --
783 x_id := l_tp_layer_id;
784 --
785 --
786 l_location := '0110';
787 --
788 --
789 IF p_id IS NOT NULL
790 THEN
791 vea_tpa_util_pvt.put
792 (
793 p_key => p_id,
794 p_value => l_tp_layer_id,
795 x_cache_tbl => vea_tpa_util_pvt.g_tpLyr_fileId_dbId_tbl,
796 x_cache_ext_tbl => vea_tpa_util_pvt.g_tpLyr_fileId_dbId_ext_tbl
797 );
798 END IF;
799 --
800 --} API Body
801 --
802 --
803 -- Standard API Footer
804 --
805 l_location := '0110';
806 --
807 vea_tpa_util_pvt.api_footer
808 (
809 p_commit => p_commit,
810 x_msg_count => x_msg_count,
811 x_msg_data => x_msg_data
812 );
813 --}
814 EXCEPTION
815 --{
816 WHEN FND_API.G_EXC_ERROR
817 THEN
818 --{
819 --RAISE;
820 vea_tpa_util_pvt.handle_error
821 (
822 p_error_type => vea_tpa_util_pvt.G_ERROR,
823 p_savepoint_name => l_savepoint_name,
824 p_package_name => G_PACKAGE_NAME,
825 p_api_name => l_api_name,
826 p_location => l_location,
827 x_msg_count => x_msg_count,
828 x_msg_data => x_msg_data,
829 x_api_return_status => x_return_status
830 );
831 --}
832 WHEN FND_API.G_EXC_UNEXPECTED_ERROR
833 THEN
834 --{
835 --RAISE;
836 vea_tpa_util_pvt.handle_error
837 (
838 p_error_type => vea_tpa_util_pvt.G_UNEXPECTED_ERROR,
839 p_savepoint_name => l_savepoint_name,
840 p_package_name => G_PACKAGE_NAME,
841 p_api_name => l_api_name,
842 p_location => l_location,
843 x_msg_count => x_msg_count,
844 x_msg_data => x_msg_data,
845 x_api_return_status => x_return_status
846 );
847 --}
848 WHEN OTHERS
849 THEN
850 --{
851 --RAISE;
852 vea_tpa_util_pvt.handle_error
853 (
854 p_error_type => vea_tpa_util_pvt.G_OTHER_ERROR,
855 p_savepoint_name => l_savepoint_name,
856 p_package_name => G_PACKAGE_NAME,
857 p_api_name => l_api_name,
858 p_location => l_location,
859 x_msg_count => x_msg_count,
860 x_msg_data => x_msg_data,
861 x_api_return_status => x_return_status
862 );
863 --}
864 --}
865 END process;
866 --}
867 END VEA_TP_LAYERS_SV;