[Home] [Help]
PACKAGE BODY: APPS.AMS_LISTHEADER_PUB
Source
1 Package Body AMS_LISTHEADER_PUB AS
2 /* $Header: amsplshb.pls 115.18 2002/11/22 08:54:16 jieli ship $ */
3
4
5 g_pkg_name CONSTANT VARCHAR2(30):='AMS_LISTHEADER_PUB';
6
7 -- Start of Comments
8 --
9 -- NAME
10 -- Create_ListHeader
11 --
12 -- PURPOSE
13 -- This procedure creates a list header record that satisfy caller needs
14 --
15 -- NOTES
16 --
17 --
18 -- HISTORY
19 -- 05/12/1999 tdonohoe created
20 -- End of Comments
21 AMS_DEBUG_HIGH_ON boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_HIGH);
22 AMS_DEBUG_LOW_ON boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
23 AMS_DEBUG_MEDIUM_ON boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM);
24
25 PROCEDURE Create_ListHeader
26 ( p_api_version IN NUMBER,
27 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
28 p_commit IN VARCHAR2 := FND_API.G_FALSE,
29 p_validation_level IN NUMBER := FND_API.g_valid_level_full,
30 x_return_status OUT NOCOPY VARCHAR2,
31 x_msg_count OUT NOCOPY NUMBER,
32 x_msg_data OUT NOCOPY VARCHAR2,
33 p_listheader_rec IN AMS_LISTHEADER_PVT.list_header_rec_type,
34 x_listheader_id OUT NOCOPY NUMBER
35 ) IS
36
37 l_api_name CONSTANT VARCHAR2(30) := 'Create_ListHeader';
38 l_api_version CONSTANT NUMBER := 1.0;
39 l_return_status VARCHAR2(1);
40 l_listheader_rec AMS_LISTHEADER_PVT.list_header_rec_type := p_listheader_rec;
41
42 BEGIN
43
44 SAVEPOINT create_listheader_pub;
45 -- initialize the message list;
46 -- won't do it again when calling private API
47 IF FND_API.to_boolean(p_init_msg_list) THEN
48 FND_MSG_PUB.initialize;
49 END IF;
50
51 --call private API procedure.
52 AMS_LISTHEADER_PVT.Create_ListHeader
53 ( p_api_version => p_api_version,
54 p_init_msg_list => FND_API.G_FALSE,
55 p_commit => FND_API.G_FALSE,
56 p_validation_level => FND_API.g_valid_level_full,
57 x_return_status => l_return_status,
58 x_msg_count => x_msg_count,
59 x_msg_data => x_msg_data,
60 p_listheader_rec => l_listheader_rec,
61 x_listheader_id => x_listheader_id);
62
63
64 IF l_return_status = FND_API.g_ret_sts_error THEN
65 RAISE FND_API.g_exc_error;
66 ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
67 RAISE FND_API.g_exc_unexpected_error;
68 END IF;
69
70 IF FND_API.to_boolean(p_commit) THEN
71 COMMIT;
72 END IF;
73 x_return_status := FND_API.g_ret_sts_success;
74 FND_MSG_PUB.count_and_get(
75 p_encoded => FND_API.g_false,
76 p_count => x_msg_count,
77 p_data => x_msg_data
78 );
79
80 EXCEPTION
81
82 WHEN FND_API.g_exc_error THEN
83 ROLLBACK TO create_listheader_pub;
84 x_return_status := FND_API.g_ret_sts_error;
85 FND_MSG_PUB.count_and_get(
86 p_encoded => FND_API.g_false,
87 p_count => x_msg_count,
88 p_data => x_msg_data
89 );
90
91 WHEN FND_API.g_exc_unexpected_error THEN
92 ROLLBACK TO create_listheader_pub;
93 x_return_status := FND_API.g_ret_sts_unexp_error ;
94 FND_MSG_PUB.count_and_get(
95 p_encoded => FND_API.g_false,
96 p_count => x_msg_count,
97 p_data => x_msg_data
98 );
99
100
101 WHEN OTHERS THEN
102 ROLLBACK TO create_listheader_pub;
103 x_return_status := FND_API.g_ret_sts_unexp_error ;
104
105 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error) THEN
106 FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
107 END IF;
108
109 FND_MSG_PUB.count_and_get(
110 p_encoded => FND_API.g_false,
111 p_count => x_msg_count,
112 p_data => x_msg_data
113 );
114 End Create_ListHeader;
115
116
117
118
119 -- Start of Comments
120 --
121 -- NAME
122 -- Update_listheader
123 --
124 -- PURPOSE
125 -- This procedure is to update a List Header record that satisfy caller needs
126 --
127 -- NOTES
128 --
129 --
130 -- HISTORY
131 -- 05/12/1999 tdonohoe created
132 -- End of Comments
133
134 PROCEDURE Update_ListHeader
135 ( p_api_version IN NUMBER,
136 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
137 p_commit IN VARCHAR2 := FND_API.G_FALSE,
138 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
139 x_return_status OUT NOCOPY VARCHAR2,
140 x_msg_count OUT NOCOPY NUMBER,
141 x_msg_data OUT NOCOPY VARCHAR2,
142 p_listheader_rec IN AMS_LISTHEADER_PVT.list_header_rec_type
143 ) IS
144
145 l_api_name CONSTANT VARCHAR2(30) := 'Update_ListHeader';
146 l_api_version CONSTANT NUMBER := 1.0;
147
148 -- Status Local Variables
149 l_return_status VARCHAR2(1); -- Return value from procedures
150 l_listheader_rec AMS_LISTHEADER_PVT.list_header_rec_type := p_listheader_rec;
151
152 Begin
153
154 SAVEPOINT update_listheader_pub;
155 -- initialize the message list;
156 -- won't do it again when calling private API
157 IF FND_API.to_boolean(p_init_msg_list) THEN
158 FND_MSG_PUB.initialize;
159 END IF;
160
161 AMS_LISTHEADER_PVT.Update_ListHeader
162 ( p_api_version => p_api_version ,
163 p_init_msg_list => FND_API.G_FALSE,
164 p_commit => FND_API.G_FALSE,
165 p_validation_level => FND_API.G_VALID_LEVEL_FULL,
166 x_return_status => l_return_status,
167 x_msg_count => x_msg_count,
168 x_msg_data => x_msg_data,
169 p_listheader_rec => l_listheader_rec );
170
171
172 IF l_return_status = FND_API.g_ret_sts_error THEN
173 RAISE FND_API.g_exc_error;
174 ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
175 RAISE FND_API.g_exc_unexpected_error;
176 END IF;
177
178
179 IF FND_API.to_boolean(p_commit) THEN
180 COMMIT;
181 END IF;
182
183
184 x_return_status := FND_API.g_ret_sts_success;
185 FND_MSG_PUB.count_and_get(
186 p_encoded => FND_API.g_false,
187 p_count => x_msg_count,
188 p_data => x_msg_data
189 );
190
191 EXCEPTION
192
193 WHEN FND_API.g_exc_error THEN
194 ROLLBACK TO update_listheader_pub;
195 x_return_status := FND_API.g_ret_sts_error;
196 FND_MSG_PUB.count_and_get
197 (
198 p_encoded => FND_API.g_false,
199 p_count => x_msg_count,
200 p_data => x_msg_data
201 );
202
203 WHEN FND_API.g_exc_unexpected_error THEN
204 ROLLBACK TO update_listheader_pub;
205 x_return_status := FND_API.g_ret_sts_unexp_error ;
206 FND_MSG_PUB.count_and_get(
207 p_encoded => FND_API.g_false,
208 p_count => x_msg_count,
209 p_data => x_msg_data
210 );
211
212
213 WHEN OTHERS THEN
214 ROLLBACK TO update_listheader_pub;
215 x_return_status := FND_API.g_ret_sts_unexp_error ;
216 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
217 THEN
218 FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
219 END IF;
220
221 FND_MSG_PUB.count_and_get(
222 p_encoded => FND_API.g_false,
223 p_count => x_msg_count,
224 p_data => x_msg_data
225 );
226 End Update_ListHeader;
227
228 -- Start of Comments
229 --
230 -- NAME
231 -- Delete_listheader
232 --
233 -- PURPOSE
234 -- This procedure deletes a list header record that satisfy caller needs
235 --
236 -- NOTES
237 -- Deletes from The following tables Ams_List_Src_Type_Usages,
238 -- Ams_List_Rule_Usages,
239 -- Ams_List_Entries,
240 -- Ams_List_Select_Actions
241 -- Ams_List_Headers_All.
242 --
243 -- HISTORY
244 -- 05/12/1999 tdonohoe created
245 -- End of Comments
246 PROCEDURE Delete_ListHeader
247 ( p_api_version IN NUMBER,
248 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
249 p_commit IN VARCHAR2 := FND_API.G_FALSE,
250 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
251 x_return_status OUT NOCOPY VARCHAR2,
252 x_msg_count OUT NOCOPY NUMBER,
253 x_msg_data OUT NOCOPY VARCHAR2,
254 p_listheader_id IN number) IS
255
256 l_api_name CONSTANT VARCHAR2(30) := 'Delete_ListHeader';
257 l_api_version CONSTANT NUMBER := 1.0;
258
259 -- Status Local Variables
260 l_return_status VARCHAR2(1); -- Return value from procedures
261 l_listheader_id NUMBER := p_listheader_id;
262 l_return_val VARCHAR2(1);
263
264 BEGIN
265
266 SAVEPOINT delete_listheader_pub;
267
268 -- initialize the message list;
269 -- won't do it again when calling private API
270 IF FND_API.to_boolean(p_init_msg_list) THEN
271 FND_MSG_PUB.initialize;
272 END IF;
273
274 AMS_LISTHEADER_PVT.Delete_ListHeader
275 ( p_api_version => p_api_version,
276 p_init_msg_list => FND_API.G_FALSE,
277 p_commit => FND_API.G_FALSE,
278 p_validation_level => FND_API.G_VALID_LEVEL_FULL,
279 x_return_status => l_return_status,
280 x_msg_count => x_msg_count,
281 x_msg_data => x_msg_data ,
282 p_listheader_id => l_listheader_id);
283
284 IF l_return_status = FND_API.g_ret_sts_error THEN
285 RAISE FND_API.g_exc_error;
286 ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
287 RAISE FND_API.g_exc_unexpected_error;
288 END IF;
289
290 IF FND_API.to_boolean(p_commit) THEN
291 COMMIT;
292 END IF;
293
294 x_return_status := FND_API.g_ret_sts_success;
295 FND_MSG_PUB.count_and_get(
296 p_encoded => FND_API.g_false,
297 p_count => x_msg_count,
298 p_data => x_msg_data);
299
300
301 EXCEPTION
302
303 WHEN FND_API.g_exc_error THEN
304 ROLLBACK TO delete_listheader_pub;
305 x_return_status := FND_API.g_ret_sts_error;
306 FND_MSG_PUB.count_and_get(
307 p_encoded => FND_API.g_false,
308 p_count => x_msg_count,
309 p_data => x_msg_data
310 );
311
312 WHEN FND_API.g_exc_unexpected_error THEN
313 ROLLBACK TO delete_listheader_pub;
314 x_return_status := FND_API.g_ret_sts_unexp_error ;
315 FND_MSG_PUB.count_and_get(
316 p_encoded => FND_API.g_false,
317 p_count => x_msg_count,
318 p_data => x_msg_data
319 );
320
321
322 WHEN OTHERS THEN
323 ROLLBACK TO delete_listheader_pub;
324 x_return_status := FND_API.g_ret_sts_unexp_error ;
325
326 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
327 THEN
328 FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
329 END IF;
330
331 FND_MSG_PUB.count_and_get(
332 p_encoded => FND_API.g_false,
333 p_count => x_msg_count,
334 p_data => x_msg_data
335 );
336
337 END delete_listheader;
338
339 -- Start of Comments
340 --
341 -- NAME
342 -- Lock_listheader
343 --
344 -- PURPOSE
345 -- This procedure is to lock a list header record that satisfy caller needs
346 --
347 -- NOTES
348 --
349 --
350 -- HISTORY
351 -- 05/13/1999 tdonohoe created
352 -- End of Comments
353
354
355 PROCEDURE Lock_ListHeader
356 ( p_api_version IN NUMBER,
357 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
358 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
359 x_return_status OUT NOCOPY VARCHAR2,
360 x_msg_count OUT NOCOPY NUMBER,
361 x_msg_data OUT NOCOPY VARCHAR2,
362 p_listheader_id IN NUMBER,
363 p_object_version IN NUMBER
364 ) IS
365
366 l_api_name CONSTANT VARCHAR2(30) := 'Lock_ListHeader';
367 l_api_version CONSTANT NUMBER := 1.0;
368 l_full_name CONSTANT VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
369
370 l_return_status VARCHAR2(1);
371 l_listheader_id NUMBER := p_listheader_id;
372 l_object_version NUMBER := p_object_version;
373
374
375 Begin
376
377 SAVEPOINT lock_listheader_pub;
378
379 -- initialize the message list;
380 -- won't do it again when calling private API
381 IF FND_API.to_boolean(p_init_msg_list) THEN
382 FND_MSG_PUB.initialize;
383 END IF;
384
385 AMS_LISTHEADER_PVT.Lock_ListHeader
386 ( p_api_version => p_api_version,
387 p_init_msg_list => FND_API.G_FALSE,
388 p_validation_level => FND_API.G_VALID_LEVEL_FULL,
389 x_return_status => l_return_status,
390 x_msg_count => x_msg_count ,
391 x_msg_data => x_msg_data,
392 p_listheader_id => l_listheader_id ,
393 p_object_version => l_object_version);
394
395 IF l_return_status = FND_API.g_ret_sts_error THEN
396 RAISE FND_API.g_exc_error;
397 ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
398 RAISE FND_API.g_exc_unexpected_error;
399 END IF;
400
401 x_return_status := FND_API.g_ret_sts_success;
402 FND_MSG_PUB.count_and_get(
403 p_encoded => FND_API.g_false,
404 p_count => x_msg_count,
405 p_data => x_msg_data
406 );
407
408 EXCEPTION
409
410 WHEN FND_API.g_exc_error THEN
411 ROLLBACK TO lock_ListHeader_pub;
412 x_return_status := FND_API.g_ret_sts_error;
413 FND_MSG_PUB.count_and_get(
414 p_encoded => FND_API.g_false,
415 p_count => x_msg_count,
416 p_data => x_msg_data
417 );
418
419 WHEN FND_API.g_exc_unexpected_error THEN
420 ROLLBACK TO lock_ListHeader_pub;
421 x_return_status := FND_API.g_ret_sts_unexp_error ;
422 FND_MSG_PUB.count_and_get(
423 p_encoded => FND_API.g_false,
424 p_count => x_msg_count,
425 p_data => x_msg_data
426 );
427
428
429 WHEN OTHERS THEN
430 ROLLBACK TO lock_ListHeader_pub;
431 x_return_status := FND_API.g_ret_sts_unexp_error ;
432
433 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error) THEN
434 FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
435 END IF;
436
437 FND_MSG_PUB.count_and_get(
438 p_encoded => FND_API.g_false,
442 End Lock_ListHeader;
439 p_count => x_msg_count,
440 p_data => x_msg_data
441 );
443
444 -- Start of Comments
445 ---------------------------------------------------------------------
446 -- PROCEDURE
447 -- Validate_ListHeader
448 --
449 -- PURPOSE
450 -- Validate a List Header Record.
451 --
452 -- PARAMETERS
453 -- p_listheader_rec: the list header record to be validated
454 --
455 -- NOTES
456 -- 1. p_listheader_rec_rec should be the complete list header record. There
457 -- should not be any FND_API.g_miss_char/num/date in it.
458 ----------------------------------------------------------------------
459 -- End Of Comments
460
461
462 PROCEDURE Validate_ListHeader
463 ( p_api_version IN NUMBER,
464 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
465 p_validation_level IN NUMBER := FND_API.g_valid_level_full,
466 x_return_status OUT NOCOPY VARCHAR2,
467 x_msg_count OUT NOCOPY NUMBER,
468 x_msg_data OUT NOCOPY VARCHAR2,
469 p_listheader_rec IN ams_listheader_pvt.list_header_rec_type
470 ) IS
471
472 l_api_name CONSTANT VARCHAR2(30) := 'Validate_ListHeader';
473 l_api_version CONSTANT NUMBER := 1.0;
474
475 -- Status Local Variables
476 l_return_status VARCHAR2(1); -- Return value from procedures
477 l_listheader_rec ams_listheader_pvt.list_header_rec_type := p_listheader_rec;
478 l_listheader_id number;
479 BEGIN
480
481 SAVEPOINT validate_listheader_pub;
482
483 -- initialize the message list;
484 -- won't do it again when calling private API
485 IF FND_API.to_boolean(p_init_msg_list) THEN
486 FND_MSG_PUB.initialize;
487 END IF;
488
489 AMS_LISTHEADER_PVT.Validate_ListHeader
490 ( p_api_version => p_api_version,
491 p_init_msg_list => FND_API.G_FALSE,
492 p_validation_level => FND_API.g_valid_level_full,
493 x_return_status => l_return_status,
494 x_msg_count => x_msg_count,
495 x_msg_data => x_msg_data,
496 p_listheader_rec => l_listheader_rec);
497
498 IF l_return_status = FND_API.g_ret_sts_error THEN
499 RAISE FND_API.g_exc_error;
500 ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
501 RAISE FND_API.g_exc_unexpected_error;
502 END IF;
503
504 x_return_status := FND_API.g_ret_sts_success;
505 FND_MSG_PUB.count_and_get(
506 p_encoded => FND_API.g_false,
507 p_count => x_msg_count,
508 p_data => x_msg_data
509 );
510
511 EXCEPTION
512
513 WHEN FND_API.g_exc_error THEN
514 ROLLBACK TO validate_listheader_pub;
515 x_return_status := FND_API.g_ret_sts_error;
516 FND_MSG_PUB.count_and_get(
517 p_encoded => FND_API.g_false,
518 p_count => x_msg_count,
519 p_data => x_msg_data
520 );
521
522 WHEN FND_API.g_exc_unexpected_error THEN
523 ROLLBACK TO validate_listheader_pub;
524 x_return_status := FND_API.g_ret_sts_unexp_error ;
525 FND_MSG_PUB.count_and_get(
526 p_encoded => FND_API.g_false,
527 p_count => x_msg_count,
528 p_data => x_msg_data
529 );
530
531
532 WHEN OTHERS THEN
533 ROLLBACK TO validate_listheader_pub;
534 x_return_status := FND_API.g_ret_sts_unexp_error ;
535
536 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
537 THEN
538 FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
539 END IF;
540
541 FND_MSG_PUB.count_and_get(
542 p_encoded => FND_API.g_false,
543 p_count => x_msg_count,
544 p_data => x_msg_data
545 );
546
547 END validate_listheader;
548
549 PROCEDURE Copy_List
550 ( p_api_version IN NUMBER,
551 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
552 p_commit IN VARCHAR2 := FND_API.G_FALSE,
553 p_validation_level IN NUMBER := FND_API.g_valid_level_full,
554 x_return_status OUT NOCOPY VARCHAR2,
555 x_msg_count OUT NOCOPY NUMBER,
556 x_msg_data OUT NOCOPY VARCHAR2,
557 p_source_listheader_id IN NUMBER,
558 p_listheader_rec IN AMS_LISTHEADER_PVT.list_header_rec_type,
559 p_copy_select_actions IN VARCHAR2 := 'Y',
560 p_copy_list_queries IN VARCHAR2 := 'Y',
561 p_copy_list_entries IN VARCHAR2 := 'Y',
562
563 x_listheader_id OUT NOCOPY NUMBER
564 )IS
565
566 l_api_name CONSTANT VARCHAR2(30) := 'Copy_List';
567 l_api_version CONSTANT NUMBER := 1.0;
568 l_return_status VARCHAR2(1);
569 l_listheader_rec AMS_LISTHEADER_PVT.list_header_rec_type := p_listheader_rec;
570
571 BEGIN
572
573 SAVEPOINT copy_list_pub;
574 -- initialize the message list;
575 -- won't do it again when calling private API
576 IF FND_API.to_boolean(p_init_msg_list) THEN
577 FND_MSG_PUB.initialize;
578 END IF;
579
580 --call private API procedure.
581 AMS_LISTHEADER_PVT.Copy_List
582 ( p_api_version => p_api_version,
583 p_init_msg_list => FND_API.G_FALSE,
584 p_commit => FND_API.G_FALSE,
585 p_validation_level => FND_API.g_valid_level_full,
586 x_return_status => l_return_status,
587 x_msg_count => x_msg_count,
588 x_msg_data => x_msg_data,
589 p_source_listheader_id =>p_source_listheader_id,
590 p_listheader_rec => l_listheader_rec,
591 p_copy_select_actions =>p_copy_select_actions,
592 p_copy_list_queries =>p_copy_list_queries,
593 p_copy_list_entries =>p_copy_list_entries,
594 x_listheader_id => x_listheader_id);
595
596
597 IF l_return_status = FND_API.g_ret_sts_error THEN
598 RAISE FND_API.g_exc_error;
599 ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
600 RAISE FND_API.g_exc_unexpected_error;
601 END IF;
602
603 IF FND_API.to_boolean(p_commit) THEN
604 COMMIT;
605 END IF;
606 x_return_status := FND_API.g_ret_sts_success;
607 FND_MSG_PUB.count_and_get(
608 p_encoded => FND_API.g_false,
609 p_count => x_msg_count,
610 p_data => x_msg_data
611 );
612
613 EXCEPTION
614
615 WHEN FND_API.g_exc_error THEN
616 ROLLBACK TO copy_list_pub;
617 x_return_status := FND_API.g_ret_sts_error;
618 FND_MSG_PUB.count_and_get(
619 p_encoded => FND_API.g_false,
620 p_count => x_msg_count,
621 p_data => x_msg_data
622 );
623
624 WHEN FND_API.g_exc_unexpected_error THEN
625 ROLLBACK TO copy_list_pub;
626 x_return_status := FND_API.g_ret_sts_unexp_error ;
627 FND_MSG_PUB.count_and_get(
628 p_encoded => FND_API.g_false,
629 p_count => x_msg_count,
630 p_data => x_msg_data
631 );
632
633
634 WHEN OTHERS THEN
635 ROLLBACK TO copy_list_pub;
636 x_return_status := FND_API.g_ret_sts_unexp_error ;
637
638 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error) THEN
639 FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
640 END IF;
641
642 FND_MSG_PUB.count_and_get(
643 p_encoded => FND_API.g_false,
644 p_count => x_msg_count,
645 p_data => x_msg_data
646 );
647 End copy_list;
648
649 END ;--package body