[Home] [Help]
PACKAGE BODY: APPS.OKL_STREAMS_PUB
Source
1 PACKAGE BODY Okl_Streams_Pub AS
2 /* $Header: OKLPSTMB.pls 120.1 2005/05/30 12:27:21 kthiruva noship $ */
3
4
5
6 PROCEDURE create_streams(
7
8 p_api_version IN NUMBER
9
10 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
11
12 ,x_return_status OUT NOCOPY VARCHAR2
13
14 ,x_msg_count OUT NOCOPY NUMBER
15
16 ,x_msg_data OUT NOCOPY VARCHAR2
17
18 ,p_stmv_rec IN stmv_rec_type
19
20 ,p_selv_tbl IN selv_tbl_type
21
22 ,x_stmv_rec OUT NOCOPY stmv_rec_type
23
24 ,x_selv_tbl OUT NOCOPY selv_tbl_type
25
26 ) IS
27
28
29
30 i NUMBER;
31
32 l_api_name CONSTANT VARCHAR2(30) := 'create_streams';
33
34 l_stmv_rec stmv_rec_type := p_stmv_rec;
35
36 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
37
38 l_selv_tbl selv_tbl_type := p_selv_tbl;
39
40
41
42 BEGIN
43
44 SAVEPOINT create_streams;
45 x_return_status := FND_API.G_RET_STS_SUCCESS;
46
47 -- customer pre-processing
48
49
50
51
52
53
54 -- vertical industry-preprocessing
55
56
57
58
59
60
61 -- call complex entity API
62
63
64
65 Okl_Streams_Pvt.create_streams(
66
67 p_api_version => p_api_version
68
69 ,p_init_msg_list => p_init_msg_list
70
71 ,x_return_status => l_return_status
72
73 ,x_msg_count => x_msg_count
74
75 ,x_msg_data => x_msg_data
76
77 ,p_stmv_rec => l_stmv_rec
78
79 ,p_selv_tbl => l_selv_tbl
80
81 ,x_stmv_rec => x_stmv_rec
82
83 ,x_selv_tbl => x_selv_tbl);
84
85 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
86 RAISE FND_API.G_EXC_ERROR;
87 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
88 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
89 END IF;
90
91
92 l_stmv_rec := x_stmv_rec;
93 l_selv_tbl := x_selv_tbl;
94
95 -- vertical industry-post-processing
96
97
98
99
100
101
102 -- customer post-processing
103
104
105
106
107
108
109 EXCEPTION
110 WHEN FND_API.G_EXC_ERROR THEN
111 ROLLBACK TO create_streams;
112 x_return_status := FND_API.G_RET_STS_ERROR;
113
114 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
115 ,p_count => x_msg_count
116 ,p_data => x_msg_data);
117
118 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
119 ROLLBACK TO create_streams;
120 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
121 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
122 ,p_count => x_msg_count
123 ,p_data => x_msg_data);
124
125 WHEN OTHERS THEN
126 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','create_streams');
127 -- store SQL error message on message stack for caller
128 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
129 ,p_count => x_msg_count
130 ,p_data => x_msg_data);
131 -- notify caller of an UNEXPECTED error
132 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
133
134
135 END create_streams;
136
137
138 --Object type procedure for insert(master-table,detail-table)
139 PROCEDURE create_streams(
140 p_api_version IN NUMBER
141 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
142 ,x_return_status OUT NOCOPY VARCHAR2
143 ,x_msg_count OUT NOCOPY NUMBER
144 ,x_msg_data OUT NOCOPY VARCHAR2
145 ,p_stmv_tbl IN stmv_tbl_type
146 ,p_selv_tbl IN selv_tbl_type
147 ,x_stmv_tbl OUT NOCOPY stmv_tbl_type
148 ,x_selv_tbl OUT NOCOPY selv_tbl_type
149 ) IS
150
151 i NUMBER;
152
153 l_api_name CONSTANT VARCHAR2(30) := 'create_streams';
154 l_stmv_tbl stmv_tbl_type := p_stmv_tbl;
155 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
156 l_selv_tbl selv_tbl_type := p_selv_tbl;
157
158
159 BEGIN
160
161 SAVEPOINT create_streams;
162 x_return_status := FND_API.G_RET_STS_SUCCESS;
163
164 -- customer pre-processing
165
166
167
168
169
170
171 -- vertical industry-preprocessing
172
173
174
175
176 -- call complex entity API
177
178 Okl_Streams_Pvt.create_streams(
179
180 p_api_version => p_api_version
181 ,p_init_msg_list => p_init_msg_list
182 ,x_return_status => l_return_status
183 ,x_msg_count => x_msg_count
184 ,x_msg_data => x_msg_data
185 ,p_stmv_tbl => l_stmv_tbl
186 ,p_selv_tbl => l_selv_tbl
187 ,x_stmv_tbl => x_stmv_tbl
188 ,x_selv_tbl => x_selv_tbl);
189
190 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
191 RAISE FND_API.G_EXC_ERROR;
192 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
193 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
194 END IF;
195
196
197 l_stmv_tbl := x_stmv_tbl;
198 l_selv_tbl := x_selv_tbl;
199
200 -- vertical industry-post-processing
201
202
203
204
205
206 -- customer post-processing
207
208
209
210
211
212
213 EXCEPTION
214 WHEN FND_API.G_EXC_ERROR THEN
215 ROLLBACK TO create_streams;
216 x_return_status := FND_API.G_RET_STS_ERROR;
217
218 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
219 ,p_count => x_msg_count
220 ,p_data => x_msg_data);
221
222 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
223 ROLLBACK TO create_streams;
224 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
225 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
226 ,p_count => x_msg_count
227 ,p_data => x_msg_data);
228
229 WHEN OTHERS THEN
230 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','create_streams');
231 -- store SQL error message on message stack for caller
232 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
233 ,p_count => x_msg_count
234 ,p_data => x_msg_data);
235 -- notify caller of an UNEXPECTED error
236 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
237
238
239 END create_streams;
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265 PROCEDURE create_streams(
266
267 p_api_version IN NUMBER
268
269 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
270
271 ,x_return_status OUT NOCOPY VARCHAR2
272
273 ,x_msg_count OUT NOCOPY NUMBER
274
275 ,x_msg_data OUT NOCOPY VARCHAR2
276
277 ,p_stmv_rec IN stmv_rec_type
278
279 ,x_stmv_rec OUT NOCOPY stmv_rec_type) IS
280
281 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
282
283 l_api_name CONSTANT VARCHAR2(30) := 'create_streams';
284
285 l_stmv_rec stmv_rec_type := p_stmv_rec;
286
287
288
289 BEGIN
290
291 SAVEPOINT create_streams;
292 x_return_status := FND_API.G_RET_STS_SUCCESS;
293
294
295
296 -- customer pre-processing
297
298
299
300
301
302
303 -- vertical industry-preprocessing
304
305
306
307
308
309
310 -- call complex entity API
311
312 Okl_Streams_Pvt.create_streams(
313
314 p_api_version => p_api_version
315
316 ,p_init_msg_list => p_init_msg_list
317
318 ,x_return_status => l_return_status
319
320 ,x_msg_count => x_msg_count
321
322 ,x_msg_data => x_msg_data
323
324 ,p_stmv_rec => l_stmv_rec
325
326 ,x_stmv_rec => x_stmv_rec
327
328 );
329
330
331
332 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
333 RAISE FND_API.G_EXC_ERROR;
334 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
335 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
336 END IF;
337
338 l_stmv_rec := x_stmv_rec;
339
340 -- vertical industry-post-processing
341
342
343
344
345
346
347 -- customer post-processing
348
349
350
351
352
353
354 EXCEPTION
355
356 WHEN FND_API.G_EXC_ERROR THEN
357 ROLLBACK TO create_streams;
358 x_return_status := FND_API.G_RET_STS_ERROR;
359
360 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
361 ,p_count => x_msg_count
362 ,p_data => x_msg_data);
363
364 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
365 ROLLBACK TO create_streams;
366 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
367 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
368 ,p_count => x_msg_count
369 ,p_data => x_msg_data);
370
371 WHEN OTHERS THEN
372 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','create_streams');
373 -- store SQL error message on message stack for caller
374 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
375 ,p_count => x_msg_count
376 ,p_data => x_msg_data);
377 -- notify caller of an UNEXPECTED error
378 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
379
380 END create_streams;
381
382
383
384 PROCEDURE create_streams(
385
386 p_api_version IN NUMBER
387
388 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
389
390 ,x_return_status OUT NOCOPY VARCHAR2
391
392 ,x_msg_count OUT NOCOPY NUMBER
393
394 ,x_msg_data OUT NOCOPY VARCHAR2
395
396 ,p_stmv_tbl IN stmv_tbl_type
397
398 ,x_stmv_tbl OUT NOCOPY stmv_tbl_type) IS
399
400 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
401
402 l_api_name CONSTANT VARCHAR2(30) := 'create_streams';
403
404 i NUMBER;
405
406 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
407
408 l_stmv_tbl stmv_tbl_type := p_stmv_tbl;
409
410 BEGIN
411
412 --Initialize the return status
413 SAVEPOINT create_streams;
414 x_return_status := FND_API.G_RET_STS_SUCCESS;
415
416
417
418 -- customer pre-processing
419
420
421
422
423
424
425 -- vertical industry-preprocessing
426
427
428
429
430
431
432 IF (l_stmv_tbl.COUNT > 0) THEN
433
434 i := l_stmv_tbl.FIRST;
435
436 LOOP
437
438 Okl_Streams_Pub.create_streams(
439
440 p_api_version => p_api_version
441
442 ,p_init_msg_list => p_init_msg_list
443
444 ,x_return_status => l_return_status
445
446 ,x_msg_count => x_msg_count
447
448 ,x_msg_data => x_msg_data
449
450 ,p_stmv_rec => l_stmv_tbl(i)
451
452 ,x_stmv_rec => x_stmv_tbl(i)
453
454 );
455
456 -- store the highest degree of error
457 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
458 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
459 l_overall_status := x_return_status;
460 END IF;
461 END IF;
462
463 EXIT WHEN (i = l_stmv_tbl.LAST);
464
465 i := l_stmv_tbl.NEXT(i);
466 END LOOP;
467
468 -- return overall status
469 l_return_status := l_overall_status;
470 END IF;
471
472 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
473 RAISE FND_API.G_EXC_ERROR;
474 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
475 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
476 END IF;
477
478 l_stmv_tbl := x_stmv_tbl;
479
480
481 -- vertical industry-post-processing
482
483
484
485
486
487
488 -- customer post-processing
489
490
491
492
493
494
495 EXCEPTION
496
497 WHEN FND_API.G_EXC_ERROR THEN
498 ROLLBACK TO create_streams;
499 x_return_status := FND_API.G_RET_STS_ERROR;
500
501 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
502 ,p_count => x_msg_count
503 ,p_data => x_msg_data);
504
505 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
506 ROLLBACK TO create_streams;
507 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
508 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
509 ,p_count => x_msg_count
510 ,p_data => x_msg_data);
511
512 WHEN OTHERS THEN
513 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','create_streams');
514 -- store SQL error message on message stack for caller
515 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
516 ,p_count => x_msg_count
517 ,p_data => x_msg_data);
518 -- notify caller of an UNEXPECTED error
519 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
520
521
522 END create_streams;
523
524
525 --Added by kthiruva on 12-May-2005 for streams perf
526 --Bug 4346646-Start of Changes
527
528 PROCEDURE create_streams_perf(
529 p_api_version IN NUMBER
530 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
531 ,x_return_status OUT NOCOPY VARCHAR2
532 ,x_msg_count OUT NOCOPY NUMBER
533 ,x_msg_data OUT NOCOPY VARCHAR2
534 ,p_stmv_tbl IN stmv_tbl_type
535 ,p_selv_tbl IN selv_tbl_type
536 ,x_stmv_tbl OUT NOCOPY stmv_tbl_type
537 ,x_selv_tbl OUT NOCOPY selv_tbl_type
538 ) IS
539
540 i NUMBER;
541
542 l_api_name CONSTANT VARCHAR2(30) := 'create_streams_perf';
543 l_stmv_tbl stmv_tbl_type := p_stmv_tbl;
544 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
545 l_selv_tbl selv_tbl_type := p_selv_tbl;
546
547
548 BEGIN
549
550 SAVEPOINT create_streams;
551 x_return_status := FND_API.G_RET_STS_SUCCESS;
552
553 -- call complex entity API
554
555 Okl_Streams_Pvt.create_streams_perf(
556
557 p_api_version => p_api_version
558 ,p_init_msg_list => p_init_msg_list
559 ,x_return_status => l_return_status
560 ,x_msg_count => x_msg_count
561 ,x_msg_data => x_msg_data
562 ,p_stmv_tbl => l_stmv_tbl
563 ,p_selv_tbl => l_selv_tbl
564 ,x_stmv_tbl => x_stmv_tbl
565 ,x_selv_tbl => x_selv_tbl);
566
567 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
568 RAISE FND_API.G_EXC_ERROR;
569 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
570 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
571 END IF;
572
573
574 l_stmv_tbl := x_stmv_tbl;
575 l_selv_tbl := x_selv_tbl;
576
577 EXCEPTION
578 WHEN FND_API.G_EXC_ERROR THEN
579 ROLLBACK TO create_streams;
580 x_return_status := FND_API.G_RET_STS_ERROR;
581
582 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
583 ,p_count => x_msg_count
584 ,p_data => x_msg_data);
585
586 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
587 ROLLBACK TO create_streams;
588 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
589 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
590 ,p_count => x_msg_count
591 ,p_data => x_msg_data);
592
593 WHEN OTHERS THEN
594 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','create_streams_perf');
595 -- store SQL error message on message stack for caller
596 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
597 ,p_count => x_msg_count
598 ,p_data => x_msg_data);
599 -- notify caller of an UNEXPECTED error
600 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
601
602
603 END create_streams_perf;
604 --Bug 4346646-End of Changes
605
606 -- Object type procedure for update
607
608 PROCEDURE update_streams(
609
610 p_api_version IN NUMBER,
611
612 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
613
614 x_return_status OUT NOCOPY VARCHAR2,
615
616 x_msg_count OUT NOCOPY NUMBER,
617
618 x_msg_data OUT NOCOPY VARCHAR2,
619
620 p_stmv_rec IN stmv_rec_type,
621
622 p_selv_tbl IN selv_tbl_type,
623
624 x_stmv_rec OUT NOCOPY stmv_rec_type,
625
626 x_selv_tbl OUT NOCOPY selv_tbl_type) IS
627
628 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
629
630 l_api_name CONSTANT VARCHAR2(30) := 'update_streams';
631
632 l_stmv_rec stmv_rec_type := p_stmv_rec;
633
634 l_selv_tbl selv_tbl_type := p_selv_tbl;
635
636
637
638 BEGIN
639
640 SAVEPOINT update_streams;
641 x_return_status := FND_API.G_RET_STS_SUCCESS;
642
643
644
645 -- customer pre-processing
646
647
648
649
650
651
652 -- vertical industry-preprocessing
653
654
655
656
657
658
659 -- call complex entity API
660
661
662
663 Okl_Streams_Pvt.update_streams(
664
665 p_api_version => p_api_version
666
667 ,p_init_msg_list => p_init_msg_list
668
669 ,x_return_status => x_return_status
670
671 ,x_msg_count => x_msg_count
672
673 ,x_msg_data => x_msg_data
674
675 ,p_stmv_rec => l_stmv_rec
676
677 ,p_selv_tbl => l_selv_tbl
678
679 ,x_stmv_rec => x_stmv_rec
680
681 ,x_selv_tbl => x_selv_tbl
682
683 );
684
685 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
686 RAISE FND_API.G_EXC_ERROR;
687 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
688 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
689 END IF;
690
691 l_stmv_rec := x_stmv_rec;
692 l_selv_tbl := x_selv_tbl;
693
694 -- vertical industry-post processing
695
696
697
698
699
700
701 -- customer post-processing
702
703
704
705
706
707
708 EXCEPTION
709
710 WHEN FND_API.G_EXC_ERROR THEN
711 ROLLBACK TO update_streams;
712 x_return_status := FND_API.G_RET_STS_ERROR;
713
714 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
715 ,p_count => x_msg_count
716 ,p_data => x_msg_data);
717
718 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
719 ROLLBACK TO update_streams;
720 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
721 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
722 ,p_count => x_msg_count
723 ,p_data => x_msg_data);
724
725 WHEN OTHERS THEN
726 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','update_streams');
727 -- store SQL error message on message stack for caller
728 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
729 ,p_count => x_msg_count
730 ,p_data => x_msg_data);
731 -- notify caller of an UNEXPECTED error
732 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
733
734 END update_streams;
735
736
737
738 PROCEDURE validate_streams(
739
740 p_api_version IN NUMBER
741
742 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
743
744 ,x_return_status OUT NOCOPY VARCHAR2
745
746 ,x_msg_count OUT NOCOPY NUMBER
747
748 ,x_msg_data OUT NOCOPY VARCHAR2
749
750 ,p_stmv_rec IN stmv_rec_type
751
752 ,p_selv_tbl IN selv_tbl_type) IS
753
754
755
756 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
757
758 l_api_name CONSTANT VARCHAR2(30) := 'validate_streams';
759
760 l_stmv_rec stmv_rec_type := p_stmv_rec;
761
762 l_selv_tbl selv_tbl_type := p_selv_tbl;
763
764
765
766 BEGIN
767
768 SAVEPOINT validate_streams;
769 x_return_status := FND_API.G_RET_STS_SUCCESS;
770
771
772
773 -- customer pre-processing
774
775
776
777
778
779
780 -- vertical industry-preprocessing
781
782
783
784
785
786
787 -- call complex entity API
788
789 Okl_Streams_Pvt.validate_streams(
790
791 p_api_version => p_api_version
792
793 ,p_init_msg_list => p_init_msg_list
794
795 ,x_return_status => l_return_status
796
797 ,x_msg_count => x_msg_count
798
799 ,x_msg_data => x_msg_data
800
801 ,p_stmv_rec => l_stmv_rec
802
803 ,p_selv_tbl => l_selv_tbl
804
805 );
806
807
808
809 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
810 RAISE FND_API.G_EXC_ERROR;
811 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
812 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
813 END IF;
814
815
816
817 -- vertical industry-post processing
818
819
820
821
822
823
824 -- customer post-processing
825
826
827
828
829
830
831 EXCEPTION
832
833 WHEN FND_API.G_EXC_ERROR THEN
834 ROLLBACK TO validate_streams;
835 x_return_status := FND_API.G_RET_STS_ERROR;
836
837 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
838 ,p_count => x_msg_count
839 ,p_data => x_msg_data);
840
841 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
842 ROLLBACK TO validate_streams;
843 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
844 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
845 ,p_count => x_msg_count
846 ,p_data => x_msg_data);
847
848 WHEN OTHERS THEN
849 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','validate_streams');
850 -- store SQL error message on message stack for caller
851 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
852 ,p_count => x_msg_count
853 ,p_data => x_msg_data);
854 -- notify caller of an UNEXPECTED error
855 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
856
857 END validate_streams;
858
859
860
861 PROCEDURE lock_streams(
862
863 p_api_version IN NUMBER
864
865 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
866
867 ,x_return_status OUT NOCOPY VARCHAR2
868
869 ,x_msg_count OUT NOCOPY NUMBER
870
871 ,x_msg_data OUT NOCOPY VARCHAR2
872
873 ,p_stmv_rec IN stmv_rec_type) IS
874
875 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
876
877 l_api_name CONSTANT VARCHAR2(30) := 'lock_streams';
878
879
880
881
882
883 BEGIN
884
885 x_return_status := FND_API.G_RET_STS_SUCCESS;
886 SAVEPOINT lock_streams;
887
888
889 Okl_Streams_Pvt.lock_streams(
890
891 p_api_version => p_api_version
892
893 ,p_init_msg_list => p_init_msg_list
894
895 ,x_return_status => l_return_status
896
897 ,x_msg_count => x_msg_count
898
899 ,x_msg_data => x_msg_data
900
901 ,p_stmv_rec => p_stmv_rec
902
903 );
904
905 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
906 RAISE FND_API.G_EXC_ERROR;
907 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
908 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
909 END IF;
910
911 EXCEPTION
912 WHEN FND_API.G_EXC_ERROR THEN
913 ROLLBACK TO lock_streams;
914 x_return_status := FND_API.G_RET_STS_ERROR;
915
916 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
917 ,p_count => x_msg_count
918 ,p_data => x_msg_data);
919
920 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
921 ROLLBACK TO lock_streams;
922 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
923 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
924 ,p_count => x_msg_count
925 ,p_data => x_msg_data);
926
927 WHEN OTHERS THEN
928 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','lock_streams');
929 -- store SQL error message on message stack for caller
930 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
931 ,p_count => x_msg_count
932 ,p_data => x_msg_data);
933 -- notify caller of an UNEXPECTED error
934 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
935
936 END lock_streams;
937
938
939
940 PROCEDURE lock_streams(
941
942 p_api_version IN NUMBER
943
944 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
945
946 ,x_return_status OUT NOCOPY VARCHAR2
947
948 ,x_msg_count OUT NOCOPY NUMBER
949
950 ,x_msg_data OUT NOCOPY VARCHAR2
951
952 ,p_stmv_tbl IN stmv_tbl_type) IS
953
954 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
955
956 l_api_name CONSTANT VARCHAR2(30) := 'lock_streams';
957
958 i NUMBER;
959
960 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
961
962
963
964 BEGIN
965
966 --Initialize the return status
967
968 x_return_status := FND_API.G_RET_STS_SUCCESS;
969 SAVEPOINT lock_streams;
970
971 IF (p_stmv_tbl.COUNT > 0) THEN
972
973 i := p_stmv_tbl.FIRST;
974
975 LOOP
976
977 Okl_Streams_Pub.lock_streams(
978
979 p_api_version => p_api_version
980
981 ,p_init_msg_list => p_init_msg_list
982
983 ,x_return_status => l_return_status
984
985 ,x_msg_count => x_msg_count
986
987 ,x_msg_data => x_msg_data
988
989 ,p_stmv_rec => p_stmv_tbl(i)
990
991 );
992
993 -- store the highest degree of error
994 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
995 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
996 l_overall_status := x_return_status;
997 END IF;
998 END IF;
999
1000 EXIT WHEN (i = p_stmv_tbl.LAST);
1001
1002 i := p_stmv_tbl.NEXT(i);
1003
1004 END LOOP;
1005
1006 -- return overall status
1007 l_return_status := l_overall_status;
1008
1009 END IF;
1010
1011 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1012 RAISE FND_API.G_EXC_ERROR;
1013 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1014 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1015 END IF;
1016
1017 EXCEPTION
1018 WHEN FND_API.G_EXC_ERROR THEN
1019 ROLLBACK TO lock_streams;
1020 x_return_status := FND_API.G_RET_STS_ERROR;
1021
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
1026 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1027 ROLLBACK TO lock_streams;
1028 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1029 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1030 ,p_count => x_msg_count
1031 ,p_data => x_msg_data);
1032
1033 WHEN OTHERS THEN
1034 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAM_TYPE_PUB','lock_streams');
1035 -- store SQL error message on message stack for caller
1036 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1037 ,p_count => x_msg_count
1038 ,p_data => x_msg_data);
1039 -- notify caller of an UNEXPECTED error
1040 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1041
1042 END lock_streams;
1043
1044
1045
1046 PROCEDURE update_streams(
1047
1048 p_api_version IN NUMBER
1049
1050 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1051
1052 ,x_return_status OUT NOCOPY VARCHAR2
1053
1054 ,x_msg_count OUT NOCOPY NUMBER
1055
1056 ,x_msg_data OUT NOCOPY VARCHAR2
1057
1058 ,p_stmv_rec IN stmv_rec_type
1059
1060 ,x_stmv_rec OUT NOCOPY stmv_rec_type) IS
1061
1062 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1063
1064 l_api_name CONSTANT VARCHAR2(30) := 'update_streams';
1065
1066 l_stmv_rec stmv_rec_type := p_stmv_rec;
1067
1068 BEGIN
1069
1070 SAVEPOINT update_streams;
1071 x_return_status := FND_API.G_RET_STS_SUCCESS;
1072
1073
1074
1075 -- customer pre-processing
1076
1077
1078
1079
1080
1081
1082 -- vertical industry-preprocessing
1083
1084
1085
1086
1087
1088
1089 -- call complex entity API
1090
1091 Okl_Streams_Pvt.update_streams(
1092
1093 p_api_version => p_api_version
1094
1095 ,p_init_msg_list => p_init_msg_list
1096
1097 ,x_return_status => l_return_status
1098
1099 ,x_msg_count => x_msg_count
1100
1101 ,x_msg_data => x_msg_data
1102
1103 ,p_stmv_rec => l_stmv_rec
1104
1105 ,x_stmv_rec => x_stmv_rec
1106
1107 );
1108
1109 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1110 RAISE FND_API.G_EXC_ERROR;
1111 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1112 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1113 END IF;
1114
1115 l_stmv_rec := x_stmv_rec;
1116
1117 -- vertical industry-post-processing
1118
1119
1120
1121
1122
1123
1124 -- customer post-processing
1125
1126
1127
1128
1129
1130
1131 EXCEPTION
1132
1133 WHEN FND_API.G_EXC_ERROR THEN
1134 ROLLBACK TO update_streams;
1135 x_return_status := FND_API.G_RET_STS_ERROR;
1136
1137 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1138 ,p_count => x_msg_count
1139 ,p_data => x_msg_data);
1140
1141 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1142 ROLLBACK TO update_streams;
1143 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1144 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1145 ,p_count => x_msg_count
1146 ,p_data => x_msg_data);
1147
1148 WHEN OTHERS THEN
1149 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','update_streams');
1150 -- store SQL error message on message stack for caller
1151 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1152 ,p_count => x_msg_count
1153 ,p_data => x_msg_data);
1154 -- notify caller of an UNEXPECTED error
1155 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1156
1157 END update_streams;
1158
1159
1160
1161 PROCEDURE update_streams(
1162
1163 p_api_version IN NUMBER
1164
1165 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1166
1167 ,x_return_status OUT NOCOPY VARCHAR2
1168
1169 ,x_msg_count OUT NOCOPY NUMBER
1170
1171 ,x_msg_data OUT NOCOPY VARCHAR2
1172
1173 ,p_stmv_tbl IN stmv_tbl_type
1174
1175 ,x_stmv_tbl OUT NOCOPY stmv_tbl_type) IS
1176
1177 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1178
1179 l_api_name CONSTANT VARCHAR2(30) := 'update_streams';
1180
1181 i NUMBER;
1182
1183 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1184
1185 l_stmv_tbl stmv_tbl_type := p_stmv_tbl;
1186
1187 BEGIN
1188
1189 --Initialize the return status
1190
1191 x_return_status := FND_API.G_RET_STS_SUCCESS;
1192 SAVEPOINT update_streams;
1193
1194 -- customer pre-processing
1195
1196
1197
1198
1199
1200
1201 -- vertical industry-preprocessing
1202
1203
1204
1205
1206
1207
1208 IF (l_stmv_tbl.COUNT > 0) THEN
1209
1210 i := l_stmv_tbl.FIRST;
1211
1212 LOOP
1213
1214 update_streams(
1215
1216 p_api_version => p_api_version
1217
1218 ,p_init_msg_list => p_init_msg_list
1219
1220 ,x_return_status => l_return_status
1221
1222 ,x_msg_count => x_msg_count
1223
1224 ,x_msg_data => x_msg_data
1225
1226 ,p_stmv_rec => l_stmv_tbl(i)
1227
1228 ,x_stmv_rec => x_stmv_tbl(i)
1229
1230 );
1231 -- store the highest degree of error
1232 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1233 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
1234 l_overall_status := x_return_status;
1235 END IF;
1236 END IF;
1237
1238 EXIT WHEN (i = l_stmv_tbl.LAST);
1239
1240 i := l_stmv_tbl.NEXT(i);
1241
1242 END LOOP;
1243
1244 -- return overall status
1245 l_return_status := l_overall_status;
1246 END IF;
1247
1248 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1249 RAISE FND_API.G_EXC_ERROR;
1250 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1251 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1252 END IF;
1253
1254
1255 l_stmv_tbl := x_stmv_tbl;
1256
1257 -- vertical industry-post-processing
1258
1259
1260
1261
1262
1263
1264 -- customer post-processing
1265
1266
1267
1268
1269
1270
1271 EXCEPTION
1272
1273 WHEN FND_API.G_EXC_ERROR THEN
1274 ROLLBACK TO update_streams;
1275 x_return_status := FND_API.G_RET_STS_ERROR;
1276
1277 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1278 ,p_count => x_msg_count
1279 ,p_data => x_msg_data);
1280
1281 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1282 ROLLBACK TO update_streams;
1283 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1284 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1285 ,p_count => x_msg_count
1286 ,p_data => x_msg_data);
1287
1288 WHEN OTHERS THEN
1289 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','update_streams');
1290 -- store SQL error message on message stack for caller
1291 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1292 ,p_count => x_msg_count
1293 ,p_data => x_msg_data);
1294 -- notify caller of an UNEXPECTED error
1295 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1296
1297
1298
1299 END update_streams;
1300
1301
1302
1303 --Put custom code for cascade delete by developer
1304
1305 PROCEDURE delete_streams(
1306
1307 p_api_version IN NUMBER
1308
1309 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1310
1311 ,x_return_status OUT NOCOPY VARCHAR2
1312
1313 ,x_msg_count OUT NOCOPY NUMBER
1314
1315 ,x_msg_data OUT NOCOPY VARCHAR2
1316
1317 ,p_stmv_rec IN stmv_rec_type) IS
1318
1319 i NUMBER :=0;
1320
1321 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1322
1323 l_api_name CONSTANT VARCHAR2(30) := 'delete_streams';
1324
1325 l_stmv_rec stmv_rec_type := p_stmv_rec;
1326
1327
1328
1329 BEGIN
1330
1331 SAVEPOINT delete_streams;
1332 x_return_status := FND_API.G_RET_STS_SUCCESS;
1333
1334
1335
1336 -- customer pre-processing
1337
1338
1339
1340
1341
1342
1343 -- vertical industry-preprocessing
1344
1345
1346
1347
1348
1349
1350 -- call complex entity API
1351
1352 Okl_Streams_Pvt.delete_streams(
1353
1354 p_api_version => p_api_version
1355
1356 ,p_init_msg_list => p_init_msg_list
1357
1358 ,x_return_status => l_return_status
1359
1360 ,x_msg_count => x_msg_count
1361
1362 ,x_msg_data => x_msg_data
1363
1364 ,p_stmv_rec => l_stmv_rec
1365
1366 );
1367
1368
1369
1370 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1371 RAISE FND_API.G_EXC_ERROR;
1372 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1373 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1374 END IF;
1375
1376
1377
1378 -- vertical industry-post-processing
1379
1380
1381
1382
1383
1384
1385 -- customer post-processing
1386
1387
1388
1389
1390
1391
1392 EXCEPTION
1393
1394 WHEN FND_API.G_EXC_ERROR THEN
1395 ROLLBACK TO delete_streams;
1396 x_return_status := FND_API.G_RET_STS_ERROR;
1397
1398 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1399 ,p_count => x_msg_count
1400 ,p_data => x_msg_data);
1401
1402 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1403 ROLLBACK TO delete_streams;
1404 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1405 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1406 ,p_count => x_msg_count
1407 ,p_data => x_msg_data);
1408
1409 WHEN OTHERS THEN
1410 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','delete_streams');
1411 -- store SQL error message on message stack for caller
1412 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1413 ,p_count => x_msg_count
1414 ,p_data => x_msg_data);
1415 -- notify caller of an UNEXPECTED error
1416 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1417
1418 END delete_streams;
1419
1420
1421
1422 PROCEDURE delete_streams(
1423
1424 p_api_version IN NUMBER
1425
1426 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1427
1428 ,x_return_status OUT NOCOPY VARCHAR2
1429
1430 ,x_msg_count OUT NOCOPY NUMBER
1431
1432 ,x_msg_data OUT NOCOPY VARCHAR2
1433
1434 ,p_stmv_tbl IN stmv_tbl_type) IS
1435
1436 i NUMBER :=0;
1437
1438 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1439
1440 l_api_name CONSTANT VARCHAR2(30) := 'delete_streams';
1441
1442 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1443
1444 l_stmv_tbl stmv_tbl_type := p_stmv_tbl;
1445
1446 BEGIN
1447
1448 --Initialize the return status
1449
1450 x_return_status := FND_API.G_RET_STS_SUCCESS;
1451 SAVEPOINT delete_streams;
1452
1453 -- customer pre-processing
1454
1455
1456
1457
1458
1459
1460 -- vertical industry-preprocessing
1461
1462
1463
1464
1465
1466
1467 IF (l_stmv_tbl.COUNT > 0) THEN
1468
1469 i := l_stmv_tbl.FIRST;
1470
1471 LOOP
1472
1473 delete_streams(
1474
1475 p_api_version => p_api_version
1476
1477 ,p_init_msg_list => p_init_msg_list
1478
1479 ,x_return_status => l_return_status
1480
1481 ,x_msg_count => x_msg_count
1482
1483 ,x_msg_data => x_msg_data
1484
1485 ,p_stmv_rec => l_stmv_tbl(i)
1486
1487 );
1488
1489 -- store the highest degree of error
1490 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1491 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
1492 l_overall_status := x_return_status;
1493 END IF;
1494 END IF;
1495
1496 EXIT WHEN (i = l_stmv_tbl.LAST);
1497
1498 i := l_stmv_tbl.NEXT(i);
1499
1500 END LOOP;
1501 -- return overall status
1502 l_return_status := l_overall_status;
1503
1504 END IF;
1505
1506 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1507 RAISE FND_API.G_EXC_ERROR;
1508 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1509 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1510 END IF;
1511
1512
1513
1514 -- vertical industry-post-processing
1515
1516
1517
1518
1519
1520
1521 -- customer post-processing
1522
1523
1524
1525
1526
1527
1528 EXCEPTION
1529
1530 WHEN FND_API.G_EXC_ERROR THEN
1531 ROLLBACK TO delete_streams;
1532 x_return_status := FND_API.G_RET_STS_ERROR;
1533
1534 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1535 ,p_count => x_msg_count
1536 ,p_data => x_msg_data);
1537
1538 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1539 ROLLBACK TO delete_streams;
1540 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1541 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1542 ,p_count => x_msg_count
1543 ,p_data => x_msg_data);
1544
1545 WHEN OTHERS THEN
1546 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','delete_streams');
1547 -- store SQL error message on message stack for caller
1548 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1549 ,p_count => x_msg_count
1550 ,p_data => x_msg_data);
1551 -- notify caller of an UNEXPECTED error
1552 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1553
1554
1555
1556 END delete_streams;
1557
1558
1559
1560 PROCEDURE validate_streams(
1561
1562 p_api_version IN NUMBER
1563
1564 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1565
1566 ,x_return_status OUT NOCOPY VARCHAR2
1567
1568 ,x_msg_count OUT NOCOPY NUMBER
1569
1570 ,x_msg_data OUT NOCOPY VARCHAR2
1571
1572 ,p_stmv_rec IN stmv_rec_type) IS
1573
1574 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1575
1576 l_api_name CONSTANT VARCHAR2(30) := 'validate_streams';
1577
1578 l_stmv_rec stmv_rec_type := p_stmv_rec;
1579
1580
1581
1582 BEGIN
1583
1584 SAVEPOINT validate_streams;
1585 x_return_status := FND_API.G_RET_STS_SUCCESS;
1586
1587
1588
1589 -- customer pre-processing
1590
1591
1592
1593
1594
1595
1596 -- vertical industry-preprocessing
1597
1598
1599
1600
1601
1602
1603 -- call complex entity API
1604
1605
1606
1607 Okl_Streams_Pvt.validate_streams(
1608
1609 p_api_version => p_api_version
1610
1611 ,p_init_msg_list => p_init_msg_list
1612
1613 ,x_return_status => l_return_status
1614
1615 ,x_msg_count => x_msg_count
1616
1617 ,x_msg_data => x_msg_data
1618
1619 ,p_stmv_rec => l_stmv_rec
1620
1621 );
1622
1623 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1624 RAISE FND_API.G_EXC_ERROR;
1625 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1626 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1627 END IF;
1628
1629
1630
1631 -- vertical industry-post-processing
1632
1633
1634
1635
1636
1637
1638 -- customer post-processing
1639
1640
1641
1642
1643
1644
1645 EXCEPTION
1646
1647 WHEN FND_API.G_EXC_ERROR THEN
1648 ROLLBACK TO validate_streams;
1649 x_return_status := FND_API.G_RET_STS_ERROR;
1650
1651 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1652 ,p_count => x_msg_count
1653 ,p_data => x_msg_data);
1654
1655 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1656 ROLLBACK TO validate_streams;
1657 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1658 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1659 ,p_count => x_msg_count
1660 ,p_data => x_msg_data);
1661
1662 WHEN OTHERS THEN
1663 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','validate_streams');
1664 -- store SQL error message on message stack for caller
1665 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1666 ,p_count => x_msg_count
1667 ,p_data => x_msg_data);
1668 -- notify caller of an UNEXPECTED error
1669 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1670
1671 END validate_streams;
1672
1673
1674
1675 PROCEDURE validate_streams(
1676
1677 p_api_version IN NUMBER,
1678
1679 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
1680
1681 x_return_status OUT NOCOPY VARCHAR2,
1682
1683 x_msg_count OUT NOCOPY NUMBER,
1684
1685 x_msg_data OUT NOCOPY VARCHAR2,
1686
1687 p_stmv_tbl IN stmv_tbl_type) IS
1688
1689 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1690
1691 l_api_name CONSTANT VARCHAR2(30) := 'validate_streams';
1692
1693 i NUMBER;
1694
1695 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1696
1697 l_stmv_tbl stmv_tbl_type := p_stmv_tbl;
1698
1699 BEGIN
1700
1701 --Initialize the return status
1702
1703 x_return_status := FND_API.G_RET_STS_SUCCESS;
1704 SAVEPOINT validate_streams;
1705
1706 -- customer pre-processing
1707
1708
1709
1710
1711
1712
1713 -- vertical industry-preprocessing
1714
1715
1716
1717
1718
1719 IF (l_stmv_tbl.COUNT > 0) THEN
1720
1721 i := l_stmv_tbl.FIRST;
1722
1723 LOOP
1724
1725 validate_streams(
1726
1727 p_api_version => p_api_version
1728
1729 ,p_init_msg_list => p_init_msg_list
1730
1731 ,x_return_status => l_return_status
1732
1733 ,x_msg_count => x_msg_count
1734
1735 ,x_msg_data => x_msg_data
1736
1737 ,p_stmv_rec => l_stmv_tbl(i)
1738
1739 );
1740 -- store the highest degree of error
1741 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1742 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
1743 l_overall_status := x_return_status;
1744 END IF;
1745 END IF;
1746
1747 EXIT WHEN (i = l_stmv_tbl.LAST);
1748
1749 i := l_stmv_tbl.NEXT(i);
1750
1751 END LOOP;
1752 -- return overall status
1753 l_return_status := l_overall_status;
1754
1755 END IF;
1756
1757 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1758 RAISE FND_API.G_EXC_ERROR;
1759 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1760 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1761 END IF;
1762
1763
1764
1765 -- vertical industry-post-processing
1766
1767
1768
1769
1770
1771
1772 -- customer post-processing
1773
1774
1775
1776
1777
1778
1779 EXCEPTION
1780
1781 WHEN FND_API.G_EXC_ERROR THEN
1782 ROLLBACK TO validate_streams;
1783 x_return_status := FND_API.G_RET_STS_ERROR;
1784
1785 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1786 ,p_count => x_msg_count
1787 ,p_data => x_msg_data);
1788
1789 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1790 ROLLBACK TO validate_streams;
1791 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1792 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1793 ,p_count => x_msg_count
1794 ,p_data => x_msg_data);
1795
1796 WHEN OTHERS THEN
1797 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','validate_streams');
1798 -- store SQL error message on message stack for caller
1799 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1800 ,p_count => x_msg_count
1801 ,p_data => x_msg_data);
1802 -- notify caller of an UNEXPECTED error
1803 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1804
1805
1806 END validate_streams;
1807
1808
1809
1810 PROCEDURE create_stream_elements(
1811
1812 p_api_version IN NUMBER
1813
1814 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1815
1816 ,x_return_status OUT NOCOPY VARCHAR2
1817
1818 ,x_msg_count OUT NOCOPY NUMBER
1819
1820 ,x_msg_data OUT NOCOPY VARCHAR2
1821
1822 ,p_selv_rec IN selv_rec_type
1823
1824 ,x_selv_rec OUT NOCOPY selv_rec_type) IS
1825
1826 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1827
1828 l_api_name CONSTANT VARCHAR2(30) := 'create_stream_elements';
1829
1830 l_selv_rec selv_rec_type := p_selv_rec;
1831
1832 BEGIN
1833
1834 SAVEPOINT create_stream_elements;
1835 x_return_status := FND_API.G_RET_STS_SUCCESS;
1836
1837
1838
1839 -- customer pre-processing
1840
1841
1842
1843
1844
1845
1846 -- vertical industry-preprocessing
1847
1848
1849
1850
1851
1852
1853 -- call complex entity API
1854
1855
1856
1857
1858
1859 Okl_Streams_Pvt.create_stream_elements(
1860
1861 p_api_version => p_api_version
1862
1863 ,p_init_msg_list => p_init_msg_list
1864
1865 ,x_return_status => l_return_status
1866
1867 ,x_msg_count => x_msg_count
1868
1869 ,x_msg_data => x_msg_data
1870
1871 ,p_selv_rec => l_selv_rec
1872
1873 ,x_selv_rec => x_selv_rec
1874
1875 );
1876
1877 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1878 RAISE FND_API.G_EXC_ERROR;
1879 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1880 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1881 END IF;
1882
1883 l_selv_rec := x_selv_rec;
1884
1885 -- vertical industry-post-processing
1886
1887
1888
1889
1890
1891
1892 -- customer post-processing
1893
1894
1895
1896
1897
1898
1899 EXCEPTION
1900
1901 WHEN FND_API.G_EXC_ERROR THEN
1902 ROLLBACK TO create_stream_elements;
1903 x_return_status := FND_API.G_RET_STS_ERROR;
1904
1905 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1906 ,p_count => x_msg_count
1907 ,p_data => x_msg_data);
1908
1909 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1910 ROLLBACK TO create_stream_elements;
1911 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1912 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1913 ,p_count => x_msg_count
1914 ,p_data => x_msg_data);
1915
1916 WHEN OTHERS THEN
1917 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','create_stream_elements');
1918 -- store SQL error message on message stack for caller
1919 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
1920 ,p_count => x_msg_count
1921 ,p_data => x_msg_data);
1922 -- notify caller of an UNEXPECTED error
1923 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1924
1925 END create_stream_elements;
1926
1927
1928
1929 PROCEDURE create_stream_elements(
1930
1931 p_api_version IN NUMBER
1932
1933 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
1934
1935 ,x_return_status OUT NOCOPY VARCHAR2
1936
1937 ,x_msg_count OUT NOCOPY NUMBER
1938
1939 ,x_msg_data OUT NOCOPY VARCHAR2
1940
1941 ,p_selv_tbl IN selv_tbl_type
1942
1943 ,x_selv_tbl OUT NOCOPY selv_tbl_type) IS
1944
1945 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1946
1947 l_api_name CONSTANT VARCHAR2(30) := 'create_stream_elements';
1948
1949 i NUMBER;
1950
1951 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1952
1953 l_selv_tbl selv_tbl_type := p_selv_tbl;
1954
1955 BEGIN
1956
1957 --Initialize the return status
1958 SAVEPOINT create_stream_elements;
1959 x_return_status := FND_API.G_RET_STS_SUCCESS;
1960
1961
1962
1963 -- customer pre-processing
1964
1965
1966
1967
1968
1969
1970 -- vertical industry-preprocessing
1971
1972
1973
1974
1975
1976
1977 IF (l_selv_tbl.COUNT > 0) THEN
1978
1979 i := l_selv_tbl.FIRST;
1980
1981 LOOP
1982
1983 create_stream_elements(
1984
1985 p_api_version => p_api_version
1986
1987 ,p_init_msg_list => p_init_msg_list
1988
1989 ,x_return_status => l_return_status
1990
1991 ,x_msg_count => x_msg_count
1992
1993 ,x_msg_data => x_msg_data
1994
1995 ,p_selv_rec => l_selv_tbl(i)
1996
1997 ,x_selv_rec => x_selv_tbl(i)
1998
1999 );
2000 -- store the highest degree of error
2001 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
2002 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
2003 l_overall_status := x_return_status;
2004 END IF;
2005 END IF;
2006
2007 EXIT WHEN (i = l_selv_tbl.LAST);
2008
2009 i := l_selv_tbl.NEXT(i);
2010
2011 END LOOP;
2012 -- return overall status
2013 l_return_status := l_overall_status;
2014
2015 END IF;
2016
2017 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2018 RAISE FND_API.G_EXC_ERROR;
2019 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2020 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2021 END IF;
2022
2023
2024 l_selv_tbl := x_selv_tbl;
2025
2026 -- vertical industry-post-processing
2027
2028
2029
2030
2031
2032
2033 -- customer post-processing
2034
2035
2036
2037
2038
2039
2040 EXCEPTION
2041
2042 WHEN FND_API.G_EXC_ERROR THEN
2043 ROLLBACK TO create_stream_elements;
2044 x_return_status := FND_API.G_RET_STS_ERROR;
2045
2046 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2047 ,p_count => x_msg_count
2048 ,p_data => x_msg_data);
2049
2050 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2051 ROLLBACK TO create_stream_elements;
2052 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2053 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2054 ,p_count => x_msg_count
2055 ,p_data => x_msg_data);
2056
2057 WHEN OTHERS THEN
2058 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','create_stream_elements');
2059 -- store SQL error message on message stack for caller
2060 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2061 ,p_count => x_msg_count
2062 ,p_data => x_msg_data);
2063 -- notify caller of an UNEXPECTED error
2064 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2065
2066
2067
2068 END create_stream_elements;
2069
2070
2071
2072 PROCEDURE lock_stream_elements(
2073
2074 p_api_version IN NUMBER
2075
2076 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
2077
2078 ,x_return_status OUT NOCOPY VARCHAR2
2079
2080 ,x_msg_count OUT NOCOPY NUMBER
2081
2082 ,x_msg_data OUT NOCOPY VARCHAR2
2083
2084 ,p_selv_rec IN selv_rec_type) IS
2085
2086 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2087
2088 l_api_name CONSTANT VARCHAR2(30) := 'lock_stream_elements';
2089
2090 BEGIN
2091
2092 x_return_status := FND_API.G_RET_STS_SUCCESS;
2093 SAVEPOINT lock_stream_elements;
2094
2095 Okl_Streams_Pvt.lock_stream_elements(
2096
2097 p_api_version => p_api_version
2098
2099 ,p_init_msg_list => p_init_msg_list
2100
2101 ,x_return_status => l_return_status
2102
2103 ,x_msg_count => x_msg_count
2104
2105 ,x_msg_data => x_msg_data
2106
2107 ,p_selv_rec => p_selv_rec
2108
2109 );
2110
2111 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2112 RAISE FND_API.G_EXC_ERROR;
2113 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2114 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2115 END IF;
2116
2117 EXCEPTION
2118 WHEN FND_API.G_EXC_ERROR THEN
2119 ROLLBACK TO lock_stream_elements;
2120 x_return_status := FND_API.G_RET_STS_ERROR;
2121
2122 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2123 ,p_count => x_msg_count
2124 ,p_data => x_msg_data);
2125
2126 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2127 ROLLBACK TO lock_stream_elements;
2128 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2129 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2130 ,p_count => x_msg_count
2131 ,p_data => x_msg_data);
2132
2133 WHEN OTHERS THEN
2134 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','lock_stream_elements');
2135 -- store SQL error message on message stack for caller
2136 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2137 ,p_count => x_msg_count
2138 ,p_data => x_msg_data);
2139 -- notify caller of an UNEXPECTED error
2140 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2141
2142 END lock_stream_elements;
2143
2144
2145
2146 PROCEDURE lock_stream_elements(
2147
2148 p_api_version IN NUMBER
2149
2150 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
2151
2152 ,x_return_status OUT NOCOPY VARCHAR2
2153
2154 ,x_msg_count OUT NOCOPY NUMBER
2155
2156 ,x_msg_data OUT NOCOPY VARCHAR2
2157
2158 ,p_selv_tbl IN selv_tbl_type) IS
2159
2160 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2161
2162 l_api_name CONSTANT VARCHAR2(30) := 'lock_stream_elements';
2163
2164 i NUMBER;
2165
2166 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2167
2168
2169 BEGIN
2170
2171 --Initialize the return status
2172
2173 x_return_status := FND_API.G_RET_STS_SUCCESS;
2174 SAVEPOINT lock_stream_elements;
2175
2176 IF (p_selv_tbl.COUNT > 0) THEN
2177
2178 i := p_selv_tbl.FIRST;
2179
2180 LOOP
2181
2182 lock_stream_elements(
2183
2184 p_api_version => p_api_version
2185
2186 ,p_init_msg_list => p_init_msg_list
2187
2188 ,x_return_status => l_return_status
2189
2190 ,x_msg_count => x_msg_count
2191
2192 ,x_msg_data => x_msg_data
2193
2194 ,p_selv_rec => p_selv_tbl(i)
2195
2196 );
2197 -- store the highest degree of error
2198 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
2199 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
2200 l_overall_status := x_return_status;
2201 END IF;
2202 END IF;
2203
2204 EXIT WHEN (i = p_selv_tbl.LAST);
2205
2206 i := p_selv_tbl.NEXT(i);
2207
2208 END LOOP;
2209
2210 -- return overall status
2211 l_return_status := l_overall_status;
2212
2213 END IF;
2214
2215 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2216 RAISE FND_API.G_EXC_ERROR;
2217 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2218 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2219 END IF;
2220
2221 EXCEPTION
2222 WHEN FND_API.G_EXC_ERROR THEN
2223 ROLLBACK TO lock_stream_elements;
2224 x_return_status := FND_API.G_RET_STS_ERROR;
2225
2226 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2227 ,p_count => x_msg_count
2228 ,p_data => x_msg_data);
2229
2230 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2231 ROLLBACK TO lock_stream_elements;
2232 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2233 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2234 ,p_count => x_msg_count
2235 ,p_data => x_msg_data);
2236
2237 WHEN OTHERS THEN
2238 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','lock_stream_elements');
2239 -- store SQL error message on message stack for caller
2240 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2241 ,p_count => x_msg_count
2242 ,p_data => x_msg_data);
2243 -- notify caller of an UNEXPECTED error
2244 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2245
2246 END lock_stream_elements;
2247
2248
2249
2250 PROCEDURE update_stream_elements(
2251
2252 p_api_version IN NUMBER
2253
2254 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
2255
2256 ,x_return_status OUT NOCOPY VARCHAR2
2257
2258 ,x_msg_count OUT NOCOPY NUMBER
2259
2260 ,x_msg_data OUT NOCOPY VARCHAR2
2261
2262 ,p_selv_rec IN selv_rec_type
2263
2264 ,x_selv_rec OUT NOCOPY selv_rec_type) IS
2265
2266 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2267
2268 l_api_name CONSTANT VARCHAR2(30) := 'update_stream_elements';
2269
2270 l_selv_rec selv_rec_type := p_selv_rec;
2271
2272 BEGIN
2273
2274 SAVEPOINT update_stream_elements;
2275 x_return_status := FND_API.G_RET_STS_SUCCESS;
2276
2277
2278
2279 -- customer pre-processing
2280
2281
2282
2283
2284
2285
2286 -- vertical industry-preprocessing
2287
2288
2289
2290
2291
2292
2293 -- call complex entity API
2294
2295 Okl_Streams_Pvt.update_stream_elements(
2296
2297 p_api_version => p_api_version
2298
2299 ,p_init_msg_list => p_init_msg_list
2300
2301 ,x_return_status => l_return_status
2302
2303 ,x_msg_count => x_msg_count
2304
2305 ,x_msg_data => x_msg_data
2306
2307 ,p_selv_rec => l_selv_rec
2308
2309 ,x_selv_rec => x_selv_rec
2310
2311 );
2312
2313 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2314 RAISE FND_API.G_EXC_ERROR;
2315 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2316 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2317 END IF;
2318
2319 l_selv_rec := x_selv_rec;
2320
2321 -- vertical industry-post-processing
2322
2323
2324
2325
2326
2327
2328 -- customer post-processing
2329
2330
2331
2332
2333
2334
2335 EXCEPTION
2336
2337 WHEN FND_API.G_EXC_ERROR THEN
2338 ROLLBACK TO update_stream_elements;
2339 x_return_status := FND_API.G_RET_STS_ERROR;
2340
2341 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2342 ,p_count => x_msg_count
2343 ,p_data => x_msg_data);
2344
2345 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2346 ROLLBACK TO update_stream_elements;
2347 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2348 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2349 ,p_count => x_msg_count
2350 ,p_data => x_msg_data);
2351
2352 WHEN OTHERS THEN
2353 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','update_stream_elements');
2354 -- store SQL error message on message stack for caller
2355 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2356 ,p_count => x_msg_count
2357 ,p_data => x_msg_data);
2358 -- notify caller of an UNEXPECTED error
2359 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2360
2361 END update_stream_elements;
2362
2363
2364
2365 PROCEDURE update_stream_elements(
2366
2367 p_api_version IN NUMBER
2368
2369 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
2370
2371 ,x_return_status OUT NOCOPY VARCHAR2
2372
2373 ,x_msg_count OUT NOCOPY NUMBER
2374
2375 ,x_msg_data OUT NOCOPY VARCHAR2
2376
2377 ,p_selv_tbl IN selv_tbl_type
2378
2379 ,x_selv_tbl OUT NOCOPY selv_tbl_type) IS
2380
2381 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2382
2383 l_api_name CONSTANT VARCHAR2(30) := 'update_stream_elements';
2384
2385 i NUMBER;
2386
2387 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2388
2389 l_selv_tbl selv_tbl_type := p_selv_tbl;
2390
2391 BEGIN
2392
2393 --Initialize the return status
2394 SAVEPOINT update_stream_elements;
2395 x_return_status := FND_API.G_RET_STS_SUCCESS;
2396
2397
2398
2399 -- customer pre-processing
2400
2401
2402
2403
2404
2405
2406 -- vertical industry-preprocessing
2407
2408
2409
2410
2411
2412
2413 IF (l_selv_tbl.COUNT > 0) THEN
2414
2415 i := l_selv_tbl.FIRST;
2416
2417 LOOP
2418
2419 update_stream_elements(
2420
2421 p_api_version => p_api_version
2422
2423 ,p_init_msg_list => p_init_msg_list
2424
2425 ,x_return_status => l_return_status
2426
2427 ,x_msg_count => x_msg_count
2428
2429 ,x_msg_data => x_msg_data
2430
2431 ,p_selv_rec => l_selv_tbl(i)
2432
2433 ,x_selv_rec => x_selv_tbl(i)
2434
2435 );
2436 -- store the highest degree of error
2437 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
2438 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
2439 l_overall_status := x_return_status;
2440 END IF;
2441 END IF;
2442
2443 EXIT WHEN (i = l_selv_tbl.LAST);
2444
2445 i := l_selv_tbl.NEXT(i);
2446
2447 END LOOP;
2448 -- return overall status
2449 l_return_status := l_overall_status;
2450
2451 END IF;
2452
2453 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2454 RAISE FND_API.G_EXC_ERROR;
2455 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2456 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2457 END IF;
2458
2459 l_selv_tbl := x_selv_tbl;
2460
2461 -- vertical industry-post-processing
2462
2463
2464
2465
2466
2467
2468 -- customer post-processing
2469
2470
2471
2472
2473
2474
2475 EXCEPTION
2476
2477 WHEN FND_API.G_EXC_ERROR THEN
2478 ROLLBACK TO update_stream_elements;
2479 x_return_status := FND_API.G_RET_STS_ERROR;
2480
2481 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2482 ,p_count => x_msg_count
2483 ,p_data => x_msg_data);
2484
2485 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2486 ROLLBACK TO update_stream_elements;
2487 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2488 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2489 ,p_count => x_msg_count
2490 ,p_data => x_msg_data);
2491
2492 WHEN OTHERS THEN
2493 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','update_stream_elements');
2494 -- store SQL error message on message stack for caller
2495 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2496 ,p_count => x_msg_count
2497 ,p_data => x_msg_data);
2498 -- notify caller of an UNEXPECTED error
2499 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2500
2501
2502
2503 END update_stream_elements;
2504
2505
2506
2507 --Put custom code for cascade delete by developer
2508
2509 PROCEDURE delete_stream_elements(
2510
2511 p_api_version IN NUMBER
2512
2513 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
2514
2515 ,x_return_status OUT NOCOPY VARCHAR2
2516
2517 ,x_msg_count OUT NOCOPY NUMBER
2518
2519 ,x_msg_data OUT NOCOPY VARCHAR2
2520
2521 ,p_selv_rec IN selv_rec_type) IS
2522
2523 i NUMBER :=0;
2524
2525 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2526
2527 l_api_name CONSTANT VARCHAR2(30) := 'delete_stream_elements';
2528
2529 l_selv_rec selv_rec_type := p_selv_rec;
2530
2531 BEGIN
2532
2533 SAVEPOINT delete_stream_elements;
2534 x_return_status := FND_API.G_RET_STS_SUCCESS;
2535
2536
2537
2538 -- customer pre-processing
2539
2540
2541
2542
2543
2544
2545 -- vertical industry-preprocessing
2546
2547
2548
2549
2550
2551
2552 -- call complex entity API
2553
2554
2555
2556 Okl_Streams_Pvt.delete_stream_elements(
2557
2558 p_api_version => p_api_version
2559
2560 ,p_init_msg_list => p_init_msg_list
2561
2562 ,x_return_status => l_return_status
2563
2564 ,x_msg_count => x_msg_count
2565
2566 ,x_msg_data => x_msg_data
2567
2568 ,p_selv_rec => l_selv_rec);
2569
2570 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2571 RAISE FND_API.G_EXC_ERROR;
2572 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2573 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2574 END IF;
2575
2576
2577
2578 -- vertical industry-post-processing
2579
2580
2581
2582
2583
2584
2585 -- customer post-processing
2586
2587
2588
2589
2590
2591
2592 EXCEPTION
2593
2594 WHEN FND_API.G_EXC_ERROR THEN
2595 ROLLBACK TO delete_stream_elements;
2596 x_return_status := FND_API.G_RET_STS_ERROR;
2597
2598 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2599 ,p_count => x_msg_count
2600 ,p_data => x_msg_data);
2601
2602 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2603 ROLLBACK TO delete_stream_elements;
2604 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2605 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2606 ,p_count => x_msg_count
2607 ,p_data => x_msg_data);
2608
2609 WHEN OTHERS THEN
2610 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','delete_stream_elements');
2611 -- store SQL error message on message stack for caller
2612 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2613 ,p_count => x_msg_count
2614 ,p_data => x_msg_data);
2615 -- notify caller of an UNEXPECTED error
2616 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2617
2618 END delete_stream_elements;
2619
2620
2621
2622 PROCEDURE delete_stream_elements(
2623
2624 p_api_version IN NUMBER
2625
2626 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
2627
2628 ,x_return_status OUT NOCOPY VARCHAR2
2629
2630 ,x_msg_count OUT NOCOPY NUMBER
2631
2632 ,x_msg_data OUT NOCOPY VARCHAR2
2633
2634 ,p_selv_tbl IN selv_tbl_type) IS
2635
2636
2637
2638 i NUMBER :=0;
2639
2640 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2641
2642 l_api_name CONSTANT VARCHAR2(30) := 'delete_stream_elements';
2643
2644 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2645
2646 l_selv_tbl selv_tbl_type := p_selv_tbl;
2647
2648 BEGIN
2649
2650 --Initialize the return status
2651 SAVEPOINT delete_stream_elements;
2652 x_return_status := FND_API.G_RET_STS_SUCCESS;
2653
2654
2655
2656 -- customer pre-processing
2657
2658
2659
2660
2661
2662
2663 -- vertical industry-preprocessing
2664
2665
2666
2667
2668
2669
2670 IF (l_selv_tbl.COUNT > 0) THEN
2671
2672 i := l_selv_tbl.FIRST;
2673
2674 LOOP
2675
2676 delete_stream_elements(
2677
2678 p_api_version => p_api_version
2679
2680 ,p_init_msg_list => p_init_msg_list
2681
2682 ,x_return_status => l_return_status
2683
2684 ,x_msg_count => x_msg_count
2685
2686 ,x_msg_data => x_msg_data
2687
2688 ,p_selv_rec => l_selv_tbl(i));
2689 -- store the highest degree of error
2690 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
2691 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
2692 l_overall_status := x_return_status;
2693 END IF;
2694 END IF;
2695
2696 EXIT WHEN (i = l_selv_tbl.LAST);
2697
2698 i := l_selv_tbl.NEXT(i);
2699
2700 END LOOP;
2701 -- return overall status
2702 l_return_status := l_overall_status;
2703
2704 END IF;
2705
2706 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2707 RAISE FND_API.G_EXC_ERROR;
2708 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2709 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2710 END IF;
2711
2712
2713
2714 -- vertical industry-post-processing
2715
2716
2717
2718
2719
2720
2721 -- customer post-processing
2722
2723
2724
2725
2726
2727
2728 EXCEPTION
2729
2730 WHEN FND_API.G_EXC_ERROR THEN
2731 ROLLBACK TO delete_stream_elements;
2732 x_return_status := FND_API.G_RET_STS_ERROR;
2733
2734 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2735 ,p_count => x_msg_count
2736 ,p_data => x_msg_data);
2737
2738 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2739 ROLLBACK TO delete_stream_elements;
2740 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2741 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2742 ,p_count => x_msg_count
2743 ,p_data => x_msg_data);
2744
2745 WHEN OTHERS THEN
2746 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','delete_stream_elements');
2747 -- store SQL error message on message stack for caller
2748 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2749 ,p_count => x_msg_count
2750 ,p_data => x_msg_data);
2751 -- notify caller of an UNEXPECTED error
2752 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2753
2754 END delete_stream_elements;
2755
2756
2757
2758 PROCEDURE validate_stream_elements(
2759
2760 p_api_version IN NUMBER
2761
2762 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
2763
2764 ,x_return_status OUT NOCOPY VARCHAR2
2765
2766 ,x_msg_count OUT NOCOPY NUMBER
2767
2768 ,x_msg_data OUT NOCOPY VARCHAR2
2769
2770 ,p_selv_rec IN selv_rec_type) IS
2771
2772 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2773
2774 l_api_name CONSTANT VARCHAR2(30) := 'validate_stream_elements';
2775
2776 l_selv_rec selv_rec_type := p_selv_rec;
2777
2778 BEGIN
2779
2780 SAVEPOINT validate_stream_elements;
2781 x_return_status := FND_API.G_RET_STS_SUCCESS;
2782
2783
2784
2785 -- customer pre-processing
2786
2787
2788
2789
2790
2791
2792 -- vertical industry-preprocessing
2793
2794
2795
2796
2797
2798
2799 -- call complex entity API
2800
2801
2802
2803 Okl_Streams_Pvt.validate_stream_elements(
2804
2805 p_api_version => p_api_version
2806
2807 ,p_init_msg_list => p_init_msg_list
2808
2809 ,x_return_status => l_return_status
2810
2811 ,x_msg_count => x_msg_count
2812
2813 ,x_msg_data => x_msg_data
2814
2815 ,p_selv_rec => l_selv_rec
2816
2817 );
2818
2819 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2820 RAISE FND_API.G_EXC_ERROR;
2821 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2822 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2823 END IF;
2824
2825
2826
2827 -- vertical industry-post-processing
2828
2829
2830
2831
2832
2833
2834 -- customer post-processing
2835
2836
2837
2838
2839
2840
2841 EXCEPTION
2842
2843 WHEN FND_API.G_EXC_ERROR THEN
2844 ROLLBACK TO validate_stream_elements;
2845 x_return_status := FND_API.G_RET_STS_ERROR;
2846
2847 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2848 ,p_count => x_msg_count
2849 ,p_data => x_msg_data);
2850
2851 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2852 ROLLBACK TO validate_stream_elements;
2853 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2854 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2855 ,p_count => x_msg_count
2856 ,p_data => x_msg_data);
2857
2858 WHEN OTHERS THEN
2859 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','validate_stream_elements');
2860 -- store SQL error message on message stack for caller
2861 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2862 ,p_count => x_msg_count
2863 ,p_data => x_msg_data);
2864 -- notify caller of an UNEXPECTED error
2865 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2866
2867 END validate_stream_elements;
2868
2869
2870
2871 PROCEDURE validate_stream_elements(
2872
2873 p_api_version IN NUMBER
2874
2875 ,p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE
2876
2877 ,x_return_status OUT NOCOPY VARCHAR2
2878
2879 ,x_msg_count OUT NOCOPY NUMBER
2880
2881 ,x_msg_data OUT NOCOPY VARCHAR2
2882
2883 ,p_selv_tbl IN selv_tbl_type) IS
2884
2885 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2886
2887 l_api_name CONSTANT VARCHAR2(30) := 'validate_stream_elements';
2888
2889 i NUMBER;
2890
2891 l_overall_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
2892
2893 l_selv_tbl selv_tbl_type := p_selv_tbl;
2894
2895 BEGIN
2896
2897 --Initialize the return status
2898 SAVEPOINT validate_stream_elements;
2899 x_return_status := FND_API.G_RET_STS_SUCCESS;
2900
2901
2902
2903 -- customer pre-processing
2904
2905
2906
2907
2908
2909
2910 -- vertical industry-preprocessing
2911
2912
2913
2914
2915
2916
2917 IF (l_selv_tbl.COUNT > 0) THEN
2918
2919 i := l_selv_tbl.FIRST;
2920
2921 LOOP
2922
2923 validate_stream_elements(
2924
2925 p_api_version => p_api_version
2926
2927 ,p_init_msg_list => p_init_msg_list
2928
2929 ,x_return_status => l_return_status
2930
2931 ,x_msg_count => x_msg_count
2932
2933 ,x_msg_data => x_msg_data
2934
2935 ,p_selv_rec => l_selv_tbl(i)
2936
2937 );
2938 -- store the highest degree of error
2939 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
2940 IF l_overall_status <> FND_API.G_RET_STS_UNEXP_ERROR THEN
2941 l_overall_status := x_return_status;
2942 END IF;
2943 END IF;
2944
2945 EXIT WHEN (i = l_selv_tbl.LAST);
2946
2947 i := l_selv_tbl.NEXT(i);
2948
2949 END LOOP;
2950 -- return overall status
2951 l_return_status := l_overall_status;
2952
2953 END IF;
2954
2955 IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2956 RAISE FND_API.G_EXC_ERROR;
2957 ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2958 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2959 END IF;
2960
2961
2962 -- vertical industry-post-processing
2963
2964
2965
2966
2967
2968
2969 -- customer post-processing
2970
2971
2972
2973
2974
2975
2976 EXCEPTION
2977
2978 WHEN FND_API.G_EXC_ERROR THEN
2979 ROLLBACK TO validate_stream_elements;
2980 x_return_status := FND_API.G_RET_STS_ERROR;
2981
2982 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2983 ,p_count => x_msg_count
2984 ,p_data => x_msg_data);
2985
2986 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2987 ROLLBACK TO validate_stream_elements;
2988 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2989 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2990 ,p_count => x_msg_count
2991 ,p_data => x_msg_data);
2992
2993 WHEN OTHERS THEN
2994 FND_MSG_PUB.ADD_EXC_MSG('OKL_STREAMS_PUB','validate_stream_elements');
2995 -- store SQL error message on message stack for caller
2996 FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE
2997 ,p_count => x_msg_count
2998 ,p_data => x_msg_data);
2999 -- notify caller of an UNEXPECTED error
3000 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3001
3002 END validate_stream_elements;
3003
3004
3005
3006 END Okl_Streams_Pub;