[Home] [Help]
PACKAGE BODY: APPS.OKL_PROCESS_ACC_GROUP_PUB
Source
1 PACKAGE BODY OKL_PROCESS_ACC_GROUP_PUB AS
2 /* $Header: OKLPAGGB.pls 115.4 2002/12/18 12:09:38 kjinger noship $ */
3
4
5 PROCEDURE create_acc_group(p_api_version IN NUMBER
6 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
7 ,x_return_status OUT NOCOPY VARCHAR2
8 ,x_msg_count OUT NOCOPY NUMBER
9 ,x_msg_data OUT NOCOPY VARCHAR2
10 ,p_agcv_rec IN agcv_rec_type
11 ,p_agbv_tbl IN agbv_tbl_type
12 ,x_agcv_rec OUT NOCOPY agcv_rec_type
13 ,x_agbv_tbl OUT NOCOPY agbv_tbl_type )
14
15 IS
16
17 i NUMBER;
18 l_api_name CONSTANT VARCHAR2(30) := 'create_acc_ccid';
19 l_agcv_rec agcv_rec_type := p_agcv_rec;
20 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
21 l_agbv_tbl agbv_tbl_type := p_agbv_tbl;
22
23
24 BEGIN
25
26 SAVEPOINT create_acc_group;
27 x_return_status := FND_API.G_RET_STS_SUCCESS;
28
29 -- customer pre-processing
30
31
32
33
34
35 -- vertical industry-preprocessing
36
37
38
39
40
41 -- call complex entity API
42
43
44
45 okl_process_acc_group_pvt.create_acc_group(p_api_version => p_api_version
46 ,p_init_msg_list => p_init_msg_list
47 ,x_return_status => l_return_status
48 ,x_msg_count => x_msg_count
49 ,x_msg_data => x_msg_data
50 ,p_agcv_rec => l_agcv_rec
51 ,p_agbv_tbl => l_agbv_tbl
52 ,x_agcv_rec => x_agcv_rec
53 ,x_agbv_tbl => x_agbv_tbl);
54
55 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
56 RAISE FND_API.G_EXC_ERROR;
57 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
58 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
59 END IF;
60
61
62 l_agcv_rec := x_agcv_rec;
63 l_agbv_tbl := x_agbv_tbl;
64
65 -- vertical industry-post-processing
66
67
68
69
70
71 -- customer post-processing
72
73
74
75
76
77
78 EXCEPTION
79 WHEN FND_API.G_EXC_ERROR THEN
80 ROLLBACK TO create_acc_group;
81 x_return_status := FND_API.G_RET_STS_ERROR;
82
83 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
84 ,p_count => x_msg_count
85 ,p_data => x_msg_data);
86
87 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
88 ROLLBACK TO create_acc_group;
89 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
90 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
91 ,p_count => x_msg_count
92 ,p_data => x_msg_data);
93
94 WHEN OTHERS THEN
95 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','create_acc_group');
96 -- store SQL error message on message stack for caller
97 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
98 ,p_count => x_msg_count
99 ,p_data => x_msg_data);
100 -- notify caller of an UNEXPECTED error
101 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
102
103
104 END create_acc_group;
105
106
107
108 PROCEDURE create_acc_ccid(p_api_version IN NUMBER
109 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
110 ,x_return_status OUT NOCOPY VARCHAR2
111 ,x_msg_count OUT NOCOPY NUMBER
112 ,x_msg_data OUT NOCOPY VARCHAR2
113 ,p_agcv_rec IN agcv_rec_type
114 ,x_agcv_rec OUT NOCOPY agcv_rec_type) IS
115
116 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
117 l_api_name CONSTANT VARCHAR2(30) := 'create_acc_ccid';
118 l_agcv_rec agcv_rec_type := p_agcv_rec;
119
120
121
122 BEGIN
123
124 SAVEPOINT create_acc_ccid;
125 x_return_status := FND_API.G_RET_STS_SUCCESS;
126
127
128 -- customer pre-processing
129
130
131
132
133
134 -- vertical industry-preprocessing
135
136
137
138
139
140
141 -- call complex entity API
142
143 okl_process_acc_group_pvt.create_acc_ccid(p_api_version => p_api_version
144 ,p_init_msg_list => p_init_msg_list
145 ,x_return_status => l_return_status
146 ,x_msg_count => x_msg_count
147 ,x_msg_data => x_msg_data
148 ,p_agcv_rec => l_agcv_rec
149 ,x_agcv_rec => x_agcv_rec);
150
151
152
153 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
154 RAISE FND_API.G_EXC_ERROR;
155 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
156 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
157 END IF;
158
159 l_agcv_rec := x_agcv_rec;
160
161 -- vertical industry-post-processing
162
163
164
165
166
167
168 -- customer post-processing
169
170
171
172
173
174
175 EXCEPTION
176
177 WHEN FND_API.G_EXC_ERROR THEN
178 ROLLBACK TO create_acc_ccid;
179 x_return_status := FND_API.G_RET_STS_ERROR;
180
181 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
182 ,p_count => x_msg_count
183 ,p_data => x_msg_data);
184
185 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
186 ROLLBACK TO create_acc_ccid;
187 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
188 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
189 ,p_count => x_msg_count
190 ,p_data => x_msg_data);
191
192 WHEN OTHERS THEN
193 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','create_acc_ccid');
194 -- store SQL error message on message stack for caller
195 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
196 ,p_count => x_msg_count
197 ,p_data => x_msg_data);
198 -- notify caller of an UNEXPECTED error
199 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
200
201 END create_acc_ccid;
202
203
204
205 PROCEDURE create_acc_ccid(p_api_version IN NUMBER
206 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
207 ,x_return_status OUT NOCOPY VARCHAR2
208 ,x_msg_count OUT NOCOPY NUMBER
209 ,x_msg_data OUT NOCOPY VARCHAR2
210 ,p_agcv_tbl IN agcv_tbl_type
211 ,x_agcv_tbl OUT NOCOPY agcv_tbl_type) IS
212
213
214 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
215 l_api_name CONSTANT VARCHAR2(30) := 'create_acc_ccid';
216 i NUMBER;
217
218 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
219 l_agcv_tbl agcv_tbl_type := p_agcv_tbl;
220
221 BEGIN
222
223 --Initialize the return status
224 SAVEPOINT create_acc_ccid;
225 x_return_status := FND_API.G_RET_STS_SUCCESS;
226
227
228
229 -- customer pre-processing
230
231
232
233
234
235
236 -- vertical industry-preprocessing
237
238
239
240
241
242
243 IF (l_agcv_tbl.COUNT > 0) THEN
244
245 i := l_agcv_tbl.FIRST;
246
247 LOOP
248
249 OKL_PROCESS_ACC_GROUP_PUB.create_acc_ccid(
250 p_api_version => p_api_version
251 ,p_init_msg_list => p_init_msg_list
252 ,x_return_status => l_return_status
253 ,x_msg_count => x_msg_count
254 ,x_msg_data => x_msg_data
255 ,p_agcv_rec => l_agcv_tbl(i)
256 ,x_agcv_rec => x_agcv_tbl(i)
257 );
258
259 -- store the highest degree of error
260 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
261 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
262 l_overall_status := l_return_status;
263 END IF;
264 END IF;
265
266 EXIT WHEN (i = l_agcv_tbl.LAST);
267
268 i := l_agcv_tbl.NEXT(i);
269 END LOOP;
270
271 -- return overall status
272 l_return_status := l_overall_status;
273 END IF;
274
275 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
276 RAISE FND_API.G_EXC_ERROR;
277 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
278 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
279 END IF;
280
281 l_agcv_tbl := x_agcv_tbl;
282
283 -- vertical industry-post-processing
284
285
286
287
288
289
290 -- customer post-processing
291
292
293
294
295 EXCEPTION
296
297 WHEN FND_API.G_EXC_ERROR THEN
298 ROLLBACK TO create_acc_ccid;
299 x_return_status := FND_API.G_RET_STS_ERROR;
300
301 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
302 ,p_count => x_msg_count
303 ,p_data => x_msg_data);
304
305 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
306 ROLLBACK TO create_acc_ccid;
307 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
308 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
309 ,p_count => x_msg_count
310 ,p_data => x_msg_data);
311
312 WHEN OTHERS THEN
313 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','create_acc_ccid');
314 -- store SQL error message on message stack for caller
315 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
316 ,p_count => x_msg_count
317 ,p_data => x_msg_data);
318 -- notify caller of an UNEXPECTED error
319 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
320
321
322 END create_acc_ccid;
323
324
325
326 -- Object type procedure for update
327
328 PROCEDURE update_acc_group(p_api_version IN NUMBER,
329 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
330 x_return_status OUT NOCOPY VARCHAR2,
331 x_msg_count OUT NOCOPY NUMBER,
332 x_msg_data OUT NOCOPY VARCHAR2,
333 p_agcv_rec IN agcv_rec_type,
334 p_agbv_tbl IN agbv_tbl_type,
335 x_agcv_rec OUT NOCOPY agcv_rec_type,
336 x_agbv_tbl OUT NOCOPY agbv_tbl_type) IS
337
338 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
339 l_api_name CONSTANT VARCHAR2(30) := 'update_acc_ccid';
340 l_agcv_rec agcv_rec_type := p_agcv_rec;
341 l_agbv_tbl agbv_tbl_type := p_agbv_tbl;
342
343
344
345 BEGIN
346
347 SAVEPOINT update_acc_group;
348 x_return_status := FND_API.G_RET_STS_SUCCESS;
349
350
351
352 -- customer pre-processing
353
354
355
356
357
358
359 -- vertical industry-preprocessing
360
361
362
363
364
365 -- call complex entity API
366
367
368
369 okl_process_acc_group_pvt.update_acc_group(p_api_version => p_api_version
370 ,p_init_msg_list => p_init_msg_list
371 ,x_return_status => x_return_status
372 ,x_msg_count => x_msg_count
373 ,x_msg_data => x_msg_data
374 ,p_agcv_rec => l_agcv_rec
375 ,p_agbv_tbl => l_agbv_tbl
376 ,x_agcv_rec => x_agcv_rec
377 ,x_agbv_tbl => x_agbv_tbl);
378
379 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
380 RAISE FND_API.G_EXC_ERROR;
381 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
382 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
383 END IF;
384
385 l_agcv_rec := x_agcv_rec;
386 l_agbv_tbl := x_agbv_tbl;
387
388 -- vertical industry-post processing
389
390
391
392
393
394 -- customer post-processing
395
396
397
398
399
400
401 EXCEPTION
402
403 WHEN FND_API.G_EXC_ERROR THEN
404 ROLLBACK TO update_acc_group;
405 x_return_status := FND_API.G_RET_STS_ERROR;
406
407 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
408 ,p_count => x_msg_count
409 ,p_data => x_msg_data);
410
411 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
412 ROLLBACK TO update_acc_group;
413 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
414 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
415 ,p_count => x_msg_count
416 ,p_data => x_msg_data);
417
418 WHEN OTHERS THEN
419 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','update_acc_ccid');
420 -- store SQL error message on message stack for caller
421 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
422 ,p_count => x_msg_count
423 ,p_data => x_msg_data);
424 -- notify caller of an UNEXPECTED error
425 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
426
427 END update_acc_group;
428
429
430
431
432
433 PROCEDURE update_acc_ccid(p_api_version IN NUMBER
434 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
435 ,x_return_status OUT NOCOPY VARCHAR2
436 ,x_msg_count OUT NOCOPY NUMBER
437 ,x_msg_data OUT NOCOPY VARCHAR2
438 ,p_agcv_rec IN agcv_rec_type
439 ,x_agcv_rec OUT NOCOPY agcv_rec_type) IS
440
441 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
442 l_api_name CONSTANT VARCHAR2(30) := 'update_acc_ccid';
443 l_agcv_rec agcv_rec_type := p_agcv_rec;
444
445 BEGIN
446
447 SAVEPOINT update_acc_ccid;
448 x_return_status := FND_API.G_RET_STS_SUCCESS;
449
450
451 -- customer pre-processing
452
453
454
455
456
457
458 -- vertical industry-preprocessing
459
460
461
462
463
464 -- call complex entity API
465
466 okl_process_acc_group_pvt.update_acc_ccid(p_api_version => p_api_version
467 ,p_init_msg_list => p_init_msg_list
468 ,x_return_status => l_return_status
469 ,x_msg_count => x_msg_count
470 ,x_msg_data => x_msg_data
471 ,p_agcv_rec => l_agcv_rec
472 ,x_agcv_rec => x_agcv_rec
473 );
474
475 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
476 RAISE FND_API.G_EXC_ERROR;
477 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
478 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
479 END IF;
480
481 l_agcv_rec := x_agcv_rec;
482
483 -- vertical industry-post-processing
484
485
486
487
488
489 -- customer post-processing
490
491
492
493
494 EXCEPTION
495
496 WHEN FND_API.G_EXC_ERROR THEN
497 ROLLBACK TO update_acc_ccid;
498 x_return_status := FND_API.G_RET_STS_ERROR;
499
500 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
501 ,p_count => x_msg_count
502 ,p_data => x_msg_data);
503
504 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
505 ROLLBACK TO update_acc_ccid;
506 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
507 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
508 ,p_count => x_msg_count
509 ,p_data => x_msg_data);
510
511 WHEN OTHERS THEN
512 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','update_acc_ccid');
513 -- store SQL error message on message stack for caller
514 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
515 ,p_count => x_msg_count
516 ,p_data => x_msg_data);
517 -- notify caller of an UNEXPECTED error
518 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
519
520 END update_acc_ccid;
521
522
523
524 PROCEDURE update_acc_ccid(p_api_version IN NUMBER
525 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
526 ,x_return_status OUT NOCOPY VARCHAR2
527 ,x_msg_count OUT NOCOPY NUMBER
528 ,x_msg_data OUT NOCOPY VARCHAR2
529 ,p_agcv_tbl IN agcv_tbl_type
530 ,x_agcv_tbl OUT NOCOPY agcv_tbl_type) IS
531
532 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
533 l_api_name CONSTANT VARCHAR2(30) := 'update_acc_ccid';
534 i NUMBER;
535
536 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
537 l_agcv_tbl agcv_tbl_type := p_agcv_tbl;
538
539 BEGIN
540
541 --Initialize the return status
542
543 x_return_status := FND_API.G_RET_STS_SUCCESS;
544 SAVEPOINT update_acc_ccid;
545
546 -- customer pre-processing
547
548
549
550
551
552
553 -- vertical industry-preprocessing
554
555
556
557
558
559
560 IF (l_agcv_tbl.COUNT > 0) THEN
561
562 i := l_agcv_tbl.FIRST;
563
564 LOOP
565
566 update_acc_ccid(
567
568 p_api_version => p_api_version
569
570 ,p_init_msg_list => p_init_msg_list
571
572 ,x_return_status => l_return_status
573
574 ,x_msg_count => x_msg_count
575
576 ,x_msg_data => x_msg_data
577
578 ,p_agcv_rec => l_agcv_tbl(i)
579
580 ,x_agcv_rec => x_agcv_tbl(i)
581
582 );
583 -- store the highest degree of error
584 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
585 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
586 l_overall_status := l_return_status;
587 END IF;
588 END IF;
589
590 EXIT WHEN (i = l_agcv_tbl.LAST);
591
592 i := l_agcv_tbl.NEXT(i);
593
594 END LOOP;
595
596 -- return overall status
597 l_return_status := l_overall_status;
598 END IF;
599
600 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
601 RAISE FND_API.G_EXC_ERROR;
602 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
603 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
604 END IF;
605
606
607 l_agcv_tbl := x_agcv_tbl;
608
609 -- vertical industry-post-processing
610
611
612
613
614
615
616 -- customer post-processing
617
618
619
620
621
622
623 EXCEPTION
624
625 WHEN FND_API.G_EXC_ERROR THEN
626 ROLLBACK TO update_acc_ccid;
627 x_return_status := FND_API.G_RET_STS_ERROR;
628
629 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
630 ,p_count => x_msg_count
631 ,p_data => x_msg_data);
632
633 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
634 ROLLBACK TO update_acc_ccid;
635 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
636 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
637 ,p_count => x_msg_count
638 ,p_data => x_msg_data);
639
640 WHEN OTHERS THEN
641 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','update_acc_ccid');
642 -- store SQL error message on message stack for caller
643 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
644 ,p_count => x_msg_count
645 ,p_data => x_msg_data);
646 -- notify caller of an UNEXPECTED error
647 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
648
649
650
651 END update_acc_ccid;
652
653
654
655 --Put custom code for cascade delete by developer
656
657 PROCEDURE delete_acc_ccid(
658
659 p_api_version IN NUMBER
660
661 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
662
663 ,x_return_status OUT NOCOPY VARCHAR2
664
665 ,x_msg_count OUT NOCOPY NUMBER
666
667 ,x_msg_data OUT NOCOPY VARCHAR2
668
669 ,p_agcv_rec IN agcv_rec_type) IS
670
671 i NUMBER :=0;
672
673 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
674
675 l_api_name CONSTANT VARCHAR2(30) := 'delete_acc_ccid';
676
677 l_agcv_rec agcv_rec_type := p_agcv_rec;
678
679
680
681 BEGIN
682
683 SAVEPOINT delete_acc_ccid;
684 x_return_status := FND_API.G_RET_STS_SUCCESS;
685
686
687
688 -- customer pre-processing
689
690
691
692
693
694
695 -- vertical industry-preprocessing
696
697
698
699
700
701
702 -- call complex entity API
703
704 okl_process_acc_group_pvt.delete_acc_ccid(
705
706 p_api_version => p_api_version
707
708 ,p_init_msg_list => p_init_msg_list
709
710 ,x_return_status => l_return_status
711
712 ,x_msg_count => x_msg_count
713
714 ,x_msg_data => x_msg_data
715
716 ,p_agcv_rec => l_agcv_rec
717
718 );
719
720
721
722 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
723 RAISE FND_API.G_EXC_ERROR;
724 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
725 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
726 END IF;
727
728
729
730 -- vertical industry-post-processing
731
732
733
734
735
736
737 -- customer post-processing
738
739
740
741
742
743
744 EXCEPTION
745
746 WHEN FND_API.G_EXC_ERROR THEN
747 ROLLBACK TO delete_acc_ccid;
748 x_return_status := FND_API.G_RET_STS_ERROR;
749
750 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
751 ,p_count => x_msg_count
752 ,p_data => x_msg_data);
753
754 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
755 ROLLBACK TO delete_acc_ccid;
756 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
757 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
758 ,p_count => x_msg_count
759 ,p_data => x_msg_data);
760
761 WHEN OTHERS THEN
762 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','delete_acc_ccid');
763 -- store SQL error message on message stack for caller
764 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
765 ,p_count => x_msg_count
766 ,p_data => x_msg_data);
767 -- notify caller of an UNEXPECTED error
768 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
769
770 END delete_acc_ccid;
771
772
773
774 PROCEDURE delete_acc_ccid(
775
776 p_api_version IN NUMBER
777
778 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
779
780 ,x_return_status OUT NOCOPY VARCHAR2
781
782 ,x_msg_count OUT NOCOPY NUMBER
783
784 ,x_msg_data OUT NOCOPY VARCHAR2
785
786 ,p_agcv_tbl IN agcv_tbl_type) IS
787
788 i NUMBER :=0;
789
790 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
791
792 l_api_name CONSTANT VARCHAR2(30) := 'delete_acc_ccid';
793
794 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
795
796 l_agcv_tbl agcv_tbl_type := p_agcv_tbl;
797
798 BEGIN
799
800 --Initialize the return status
801
802 x_return_status := FND_API.G_RET_STS_SUCCESS;
803 SAVEPOINT delete_acc_ccid;
804
805 -- customer pre-processing
806
807
808
809
810
811
812 -- vertical industry-preprocessing
813
814
815
816
817
818
819 IF (l_agcv_tbl.COUNT > 0) THEN
820
821 i := l_agcv_tbl.FIRST;
822
823 LOOP
824
825 delete_acc_ccid(
826
827 p_api_version => p_api_version
828
829 ,p_init_msg_list => p_init_msg_list
830
831 ,x_return_status => l_return_status
832
833 ,x_msg_count => x_msg_count
834
835 ,x_msg_data => x_msg_data
836
837 ,p_agcv_rec => l_agcv_tbl(i)
838
839 );
840
841 -- store the highest degree of error
842 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
843 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
844 l_overall_status := l_return_status;
845 END IF;
846 END IF;
847
848 EXIT WHEN (i = l_agcv_tbl.LAST);
849
850 i := l_agcv_tbl.NEXT(i);
851
852 END LOOP;
853 -- return overall status
854 l_return_status := l_overall_status;
855
856 END IF;
857
858 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
859 RAISE FND_API.G_EXC_ERROR;
860 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
861 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
862 END IF;
863
864
865
866 -- vertical industry-post-processing
867
868
869
870
871
872
873 -- customer post-processing
874
875
876
877
878
879
880 EXCEPTION
881
882 WHEN FND_API.G_EXC_ERROR THEN
883 ROLLBACK TO delete_acc_ccid;
884 x_return_status := FND_API.G_RET_STS_ERROR;
885
886 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
887 ,p_count => x_msg_count
888 ,p_data => x_msg_data);
889
890 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
891 ROLLBACK TO delete_acc_ccid;
892 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
893 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
894 ,p_count => x_msg_count
895 ,p_data => x_msg_data);
896
897 WHEN OTHERS THEN
898 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','delete_acc_ccid');
899 -- store SQL error message on message stack for caller
900 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
901 ,p_count => x_msg_count
902 ,p_data => x_msg_data);
903 -- notify caller of an UNEXPECTED error
904 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
905
906
907
908 END delete_acc_ccid;
909
910
911
912
913 PROCEDURE create_acc_bal(
914
915 p_api_version IN NUMBER
916
917 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
918
919 ,x_return_status OUT NOCOPY VARCHAR2
920
921 ,x_msg_count OUT NOCOPY NUMBER
922
923 ,x_msg_data OUT NOCOPY VARCHAR2
924
925 ,p_agbv_rec IN agbv_rec_type
926
927 ,x_agbv_rec OUT NOCOPY agbv_rec_type) IS
928
929 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
930
931 l_api_name CONSTANT VARCHAR2(30) := 'create_acc_bal';
932
933 l_agbv_rec agbv_rec_type := p_agbv_rec;
934
935 BEGIN
936
937 SAVEPOINT create_acc_bal;
938 x_return_status := FND_API.G_RET_STS_SUCCESS;
939
940
941
942 -- customer pre-processing
943
944
945
946
947
948
949 -- vertical industry-preprocessing
950
951
952
953
954
955
956 -- call complex entity API
957
958
959
960
961
962 okl_process_acc_group_pvt.create_acc_bal(
963
964 p_api_version => p_api_version
965
966 ,p_init_msg_list => p_init_msg_list
967
968 ,x_return_status => l_return_status
969
970 ,x_msg_count => x_msg_count
971
972 ,x_msg_data => x_msg_data
973
974 ,p_agbv_rec => l_agbv_rec
975
976 ,x_agbv_rec => x_agbv_rec
977
978 );
979
980 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
981 RAISE FND_API.G_EXC_ERROR;
982 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
983 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
984 END IF;
985
986 l_agbv_rec := x_agbv_rec;
987
988 -- vertical industry-post-processing
989
990
991
992
993
994
995 -- customer post-processing
996
997
998
999
1000
1001
1002 EXCEPTION
1003
1004 WHEN FND_API.G_EXC_ERROR THEN
1005 ROLLBACK TO create_acc_bal;
1006 x_return_status := FND_API.G_RET_STS_ERROR;
1007
1008 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1009 ,p_count => x_msg_count
1010 ,p_data => x_msg_data);
1011
1012 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1013 ROLLBACK TO create_acc_bal;
1014 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1015 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1016 ,p_count => x_msg_count
1017 ,p_data => x_msg_data);
1018
1019 WHEN OTHERS THEN
1020 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','create_acc_bal');
1021 -- store SQL error message on message stack for caller
1022 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1023 ,p_count => x_msg_count
1024 ,p_data => x_msg_data);
1025 -- notify caller of an UNEXPECTED error
1026 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1027
1028 END create_acc_bal;
1029
1030
1031
1032 PROCEDURE create_acc_bal(
1033
1034 p_api_version IN NUMBER
1035
1036 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1037
1038 ,x_return_status OUT NOCOPY VARCHAR2
1039
1040 ,x_msg_count OUT NOCOPY NUMBER
1041
1042 ,x_msg_data OUT NOCOPY VARCHAR2
1043
1044 ,p_agbv_tbl IN agbv_tbl_type
1045
1046 ,x_agbv_tbl OUT NOCOPY agbv_tbl_type) IS
1047
1048 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1049
1050 l_api_name CONSTANT VARCHAR2(30) := 'create_acc_bal';
1051
1052 i NUMBER;
1053
1054 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1055
1056 l_agbv_tbl agbv_tbl_type := p_agbv_tbl;
1057
1058 BEGIN
1059
1060 --Initialize the return status
1061 SAVEPOINT create_acc_bal;
1062 x_return_status := FND_API.G_RET_STS_SUCCESS;
1063
1064
1065
1066 -- customer pre-processing
1067
1068
1069
1070
1071
1072
1073 -- vertical industry-preprocessing
1074
1075
1076
1077
1078
1079
1080 IF (l_agbv_tbl.COUNT > 0) THEN
1081
1082 i := l_agbv_tbl.FIRST;
1083
1084 LOOP
1085
1086 create_acc_bal(
1087
1088 p_api_version => p_api_version
1089
1090 ,p_init_msg_list => p_init_msg_list
1091
1092 ,x_return_status => l_return_status
1093
1094 ,x_msg_count => x_msg_count
1095
1096 ,x_msg_data => x_msg_data
1097
1098 ,p_agbv_rec => l_agbv_tbl(i)
1099
1100 ,x_agbv_rec => x_agbv_tbl(i)
1101
1102 );
1103 -- store the highest degree of error
1104 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1105 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
1106 l_overall_status := l_return_status;
1107 END IF;
1108 END IF;
1109
1110 EXIT WHEN (i = l_agbv_tbl.LAST);
1111
1112 i := l_agbv_tbl.NEXT(i);
1113
1114 END LOOP;
1115 -- return overall status
1116 l_return_status := l_overall_status;
1117
1118 END IF;
1119
1120 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1121 RAISE FND_API.G_EXC_ERROR;
1122 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1123 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1124 END IF;
1125
1126
1127 l_agbv_tbl := x_agbv_tbl;
1128
1129 -- vertical industry-post-processing
1130
1131
1132
1133
1134
1135
1136 -- customer post-processing
1137
1138
1139
1140
1141
1142
1143 EXCEPTION
1144
1145 WHEN FND_API.G_EXC_ERROR THEN
1146 ROLLBACK TO create_acc_bal;
1147 x_return_status := FND_API.G_RET_STS_ERROR;
1148
1149 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1150 ,p_count => x_msg_count
1151 ,p_data => x_msg_data);
1152
1153 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1154 ROLLBACK TO create_acc_bal;
1155 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1156 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1157 ,p_count => x_msg_count
1158 ,p_data => x_msg_data);
1159
1160 WHEN OTHERS THEN
1161 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','create_acc_bal');
1162 -- store SQL error message on message stack for caller
1163 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1164 ,p_count => x_msg_count
1165 ,p_data => x_msg_data);
1166 -- notify caller of an UNEXPECTED error
1167 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1168
1169
1170
1171 END create_acc_bal;
1172
1173
1174
1175
1176 PROCEDURE update_acc_bal(
1177
1178 p_api_version IN NUMBER
1179
1180 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1181
1182 ,x_return_status OUT NOCOPY VARCHAR2
1183
1184 ,x_msg_count OUT NOCOPY NUMBER
1185
1186 ,x_msg_data OUT NOCOPY VARCHAR2
1187
1188 ,p_agbv_rec IN agbv_rec_type
1189
1190 ,x_agbv_rec OUT NOCOPY agbv_rec_type) IS
1191
1192 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1193
1194 l_api_name CONSTANT VARCHAR2(30) := 'update_acc_bal';
1195
1196 l_agbv_rec agbv_rec_type := p_agbv_rec;
1197
1198 BEGIN
1199
1200 SAVEPOINT update_acc_bal;
1201 x_return_status := FND_API.G_RET_STS_SUCCESS;
1202
1203
1204
1205 -- customer pre-processing
1206
1207
1208
1209
1210
1211
1212 -- vertical industry-preprocessing
1213
1214
1215
1216
1217
1218
1219 -- call complex entity API
1220
1221 okl_process_acc_group_pvt.update_acc_bal(
1222
1223 p_api_version => p_api_version
1224
1225 ,p_init_msg_list => p_init_msg_list
1226
1227 ,x_return_status => l_return_status
1228
1229 ,x_msg_count => x_msg_count
1230
1231 ,x_msg_data => x_msg_data
1232
1233 ,p_agbv_rec => l_agbv_rec
1234
1235 ,x_agbv_rec => x_agbv_rec
1236
1237 );
1238
1239 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1240 RAISE FND_API.G_EXC_ERROR;
1241 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1242 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1243 END IF;
1244
1245 l_agbv_rec := x_agbv_rec;
1246
1247 -- vertical industry-post-processing
1248
1249
1250
1251
1252
1253
1254 -- customer post-processing
1255
1256
1257
1258
1259
1260
1261 EXCEPTION
1262
1263 WHEN FND_API.G_EXC_ERROR THEN
1264 ROLLBACK TO update_acc_bal;
1265 x_return_status := FND_API.G_RET_STS_ERROR;
1266
1267 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1268 ,p_count => x_msg_count
1269 ,p_data => x_msg_data);
1270
1271 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1272 ROLLBACK TO update_acc_bal;
1273 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1274 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1275 ,p_count => x_msg_count
1276 ,p_data => x_msg_data);
1277
1278 WHEN OTHERS THEN
1279 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','update_acc_bal');
1280 -- store SQL error message on message stack for caller
1281 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1282 ,p_count => x_msg_count
1283 ,p_data => x_msg_data);
1284 -- notify caller of an UNEXPECTED error
1285 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1286
1287 END update_acc_bal;
1288
1289
1290
1291 PROCEDURE update_acc_bal(
1292
1293 p_api_version IN NUMBER
1294
1295 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1296
1297 ,x_return_status OUT NOCOPY VARCHAR2
1298
1299 ,x_msg_count OUT NOCOPY NUMBER
1300
1301 ,x_msg_data OUT NOCOPY VARCHAR2
1302
1303 ,p_agbv_tbl IN agbv_tbl_type
1304
1305 ,x_agbv_tbl OUT NOCOPY agbv_tbl_type) IS
1306
1307 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1308
1309 l_api_name CONSTANT VARCHAR2(30) := 'update_acc_bal';
1310
1311 i NUMBER;
1312
1313 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1314
1315 l_agbv_tbl agbv_tbl_type := p_agbv_tbl;
1316
1317 BEGIN
1318
1319 --Initialize the return status
1320 SAVEPOINT update_acc_bal;
1321 x_return_status := FND_API.G_RET_STS_SUCCESS;
1322
1323
1324
1325 -- customer pre-processing
1326
1327
1328
1329
1330
1331
1332 -- vertical industry-preprocessing
1333
1334
1335
1336
1337
1338
1339 IF (l_agbv_tbl.COUNT > 0) THEN
1340
1341 i := l_agbv_tbl.FIRST;
1342
1343 LOOP
1344
1345 update_acc_bal(
1346
1347 p_api_version => p_api_version
1348
1349 ,p_init_msg_list => p_init_msg_list
1350
1351 ,x_return_status => l_return_status
1352
1353 ,x_msg_count => x_msg_count
1354
1355 ,x_msg_data => x_msg_data
1356
1357 ,p_agbv_rec => l_agbv_tbl(i)
1358
1359 ,x_agbv_rec => x_agbv_tbl(i)
1360
1361 );
1362 -- store the highest degree of error
1363 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1364 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
1365 l_overall_status := l_return_status;
1366 END IF;
1367 END IF;
1368
1369 EXIT WHEN (i = l_agbv_tbl.LAST);
1370
1371 i := l_agbv_tbl.NEXT(i);
1372
1373 END LOOP;
1374 -- return overall status
1375 l_return_status := l_overall_status;
1376
1377 END IF;
1378
1379 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1380 RAISE FND_API.G_EXC_ERROR;
1381 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1382 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1383 END IF;
1384
1385 l_agbv_tbl := x_agbv_tbl;
1386
1387 -- vertical industry-post-processing
1388
1389
1390
1391
1392
1393
1394 -- customer post-processing
1395
1396
1397
1398
1399
1400
1401 EXCEPTION
1402
1403 WHEN FND_API.G_EXC_ERROR THEN
1404 ROLLBACK TO update_acc_bal;
1405 x_return_status := FND_API.G_RET_STS_ERROR;
1406
1407 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1408 ,p_count => x_msg_count
1409 ,p_data => x_msg_data);
1410
1411 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1412 ROLLBACK TO update_acc_bal;
1413 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1414 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1415 ,p_count => x_msg_count
1416 ,p_data => x_msg_data);
1417
1418 WHEN OTHERS THEN
1419 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','update_acc_bal');
1420 -- store SQL error message on message stack for caller
1421 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1422 ,p_count => x_msg_count
1423 ,p_data => x_msg_data);
1424 -- notify caller of an UNEXPECTED error
1425 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1426
1427
1428
1429 END update_acc_bal;
1430
1431
1432
1433 --Put custom code for cascade delete by developer
1434
1435 PROCEDURE delete_acc_bal(
1436
1437 p_api_version IN NUMBER
1438
1439 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1440
1441 ,x_return_status OUT NOCOPY VARCHAR2
1442
1443 ,x_msg_count OUT NOCOPY NUMBER
1444
1445 ,x_msg_data OUT NOCOPY VARCHAR2
1446
1447 ,p_agbv_rec IN agbv_rec_type) IS
1448
1449 i NUMBER :=0;
1450
1451 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1452
1453 l_api_name CONSTANT VARCHAR2(30) := 'delete_acc_bal';
1454
1455 l_agbv_rec agbv_rec_type := p_agbv_rec;
1456
1457 BEGIN
1458
1459 SAVEPOINT delete_acc_bal;
1460 x_return_status := FND_API.G_RET_STS_SUCCESS;
1461
1462
1463
1464 -- customer pre-processing
1465
1466
1467
1468
1469
1470
1471 -- vertical industry-preprocessing
1472
1473
1474
1475
1476
1477
1478 -- call complex entity API
1479
1480
1481
1482 okl_process_acc_group_pvt.delete_acc_bal(
1483
1484 p_api_version => p_api_version
1485
1486 ,p_init_msg_list => p_init_msg_list
1487
1488 ,x_return_status => l_return_status
1489
1490 ,x_msg_count => x_msg_count
1491
1492 ,x_msg_data => x_msg_data
1493
1494 ,p_agbv_rec => l_agbv_rec);
1495
1496 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1497 RAISE FND_API.G_EXC_ERROR;
1498 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1499 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1500 END IF;
1501
1502
1503
1504 -- vertical industry-post-processing
1505
1506
1507
1508
1509
1510
1511 -- customer post-processing
1512
1513
1514
1515
1516
1517
1518 EXCEPTION
1519
1520 WHEN FND_API.G_EXC_ERROR THEN
1521 ROLLBACK TO delete_acc_bal;
1522 x_return_status := FND_API.G_RET_STS_ERROR;
1523
1524 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1525 ,p_count => x_msg_count
1526 ,p_data => x_msg_data);
1527
1528 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1529 ROLLBACK TO delete_acc_bal;
1530 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1531 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1532 ,p_count => x_msg_count
1533 ,p_data => x_msg_data);
1534
1535 WHEN OTHERS THEN
1536 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','delete_acc_bal');
1537 -- store SQL error message on message stack for caller
1538 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1539 ,p_count => x_msg_count
1540 ,p_data => x_msg_data);
1541 -- notify caller of an UNEXPECTED error
1542 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1543
1544 END delete_acc_bal;
1545
1546
1547
1548 PROCEDURE delete_acc_bal(
1549
1550 p_api_version IN NUMBER
1551
1552 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1553
1554 ,x_return_status OUT NOCOPY VARCHAR2
1555
1556 ,x_msg_count OUT NOCOPY NUMBER
1557
1558 ,x_msg_data OUT NOCOPY VARCHAR2
1559
1560 ,p_agbv_tbl IN agbv_tbl_type) IS
1561
1562
1563
1564 i NUMBER :=0;
1565
1566 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1567
1568 l_api_name CONSTANT VARCHAR2(30) := 'delete_acc_bal';
1569
1570 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1571
1572 l_agbv_tbl agbv_tbl_type := p_agbv_tbl;
1573
1574 BEGIN
1575
1576 --Initialize the return status
1577 SAVEPOINT delete_acc_bal;
1578 x_return_status := FND_API.G_RET_STS_SUCCESS;
1579
1580
1581
1582 -- customer pre-processing
1583
1584
1585
1586
1587
1588
1589 -- vertical industry-preprocessing
1590
1591
1592
1593
1594
1595
1596 IF (l_agbv_tbl.COUNT > 0) THEN
1597
1598 i := l_agbv_tbl.FIRST;
1599
1600 LOOP
1601
1602 delete_acc_bal(
1603
1604 p_api_version => p_api_version
1605
1606 ,p_init_msg_list => p_init_msg_list
1607
1608 ,x_return_status => l_return_status
1609
1610 ,x_msg_count => x_msg_count
1611
1612 ,x_msg_data => x_msg_data
1613
1614 ,p_agbv_rec => l_agbv_tbl(i));
1615 -- store the highest degree of error
1616 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1617 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
1618 l_overall_status := l_return_status;
1619 END IF;
1620 END IF;
1621
1622 EXIT WHEN (i = l_agbv_tbl.LAST);
1623
1624 i := l_agbv_tbl.NEXT(i);
1625
1626 END LOOP;
1627 -- return overall status
1628 l_return_status := l_overall_status;
1629
1630 END IF;
1631
1632 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1633 RAISE FND_API.G_EXC_ERROR;
1634 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1635 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1636 END IF;
1637
1638
1639
1640 -- vertical industry-post-processing
1641
1642
1643
1644
1645
1646
1647 -- customer post-processing
1648
1649
1650
1651
1652
1653
1654 EXCEPTION
1655
1656 WHEN FND_API.G_EXC_ERROR THEN
1657 ROLLBACK TO delete_acc_bal;
1658 x_return_status := FND_API.G_RET_STS_ERROR;
1659
1660 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1661 ,p_count => x_msg_count
1662 ,p_data => x_msg_data);
1663
1664 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1665 ROLLBACK TO delete_acc_bal;
1666 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1667 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1668 ,p_count => x_msg_count
1669 ,p_data => x_msg_data);
1670
1671 WHEN OTHERS THEN
1672 FND_MSG_PUB.ADD_EXC_MSG('OKL_PROCESS_ACC_GROUP_PUB','delete_acc_bal');
1673 -- store SQL error message on message stack for caller
1674 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1675 ,p_count => x_msg_count
1676 ,p_data => x_msg_data);
1677 -- notify caller of an UNEXPECTED error
1678 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1679
1680 END delete_acc_bal;
1681
1682
1683
1684
1685 END OKL_PROCESS_ACC_GROUP_PUB;
1686