DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_INS_EXCLUSIONS_PUB

Source


1 PACKAGE BODY OKL_INS_EXCLUSIONS_PUB AS
2 /* $Header: OKLPIENB.pls 115.8 2004/04/13 10:48:09 rnaik noship $ */
3 PROCEDURE insert_ins_exclusions(
4      p_api_version           IN  NUMBER
5     ,p_init_msg_list         IN  VARCHAR2 DEFAULT FND_API.G_FALSE
6     ,x_return_status         OUT  NOCOPY VARCHAR2
7     ,x_msg_count             OUT  NOCOPY NUMBER
8     ,x_msg_data              OUT  NOCOPY VARCHAR2
9     ,p_ienv_rec              IN  ienv_rec_type
10     ,x_ienv_rec              OUT  NOCOPY ienv_rec_type) IS
11 l_api_version NUMBER ;
12 l_init_msg_list VARCHAR2(1) ;
13 l_return_status VARCHAR2(1);
14 l_msg_count NUMBER ;
15 l_msg_data VARCHAR2(2000);
16 lp_ienv_rec  ienv_rec_type;
17 lrp_ienv_rec  ienv_rec_type;
18 lx_ienv_rec  ienv_rec_type;
19 BEGIN
20 SAVEPOINT ins_exclusions_insert;
21 l_api_version := p_api_version ;
22 l_init_msg_list := p_init_msg_list ;
23 l_return_status := x_return_status ;
24 l_msg_count := x_msg_count ;
25 l_msg_data := x_msg_data ;
26 lp_ienv_rec :=  p_ienv_rec;
27 lx_ienv_rec :=  p_ienv_rec;
28 
29 
30 
31 
32 okl_ien_pvt.insert_row(
33                           l_api_version
34                          ,l_init_msg_list
35                          ,l_return_status
36                          ,l_msg_count
37                          ,l_msg_data
38                          ,lp_ienv_rec
39                          ,lx_ienv_rec);
40 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
41 	RAISE FND_API.G_EXC_ERROR;
42 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
43 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
44 END IF;
45 
46 
47 
48 
49 
50 --Assign value to OUT variables
51 x_ienv_rec  := lp_ienv_rec;
52 x_return_status := l_return_status ;
53 x_msg_count := l_msg_count ;
54 x_msg_data := l_msg_data ;
55 
56 EXCEPTION
57     WHEN FND_API.G_EXC_ERROR THEN
58 
59       ROLLBACK TO ins_exclusions_insert;
60       x_return_status := FND_API.G_RET_STS_ERROR;
61       x_msg_count := l_msg_count ;
62       x_msg_data := l_msg_data ;
63       FND_MSG_PUB.count_and_get(
64              p_count   => x_msg_count
65             ,p_data    => x_msg_data);
66     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
67 
68       ROLLBACK TO ins_exclusions_insert;
69       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
70       x_msg_count := l_msg_count ;
71       x_msg_data := l_msg_data ;
72       FND_MSG_PUB.count_and_get(
73              p_count   => x_msg_count
74             ,p_data    => x_msg_data);
75     WHEN OTHERS THEN
76       ROLLBACK TO ins_exclusions_insert;
77       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
78       x_msg_count := l_msg_count ;
79       x_msg_data := l_msg_data ;
80       FND_MSG_PUB.ADD_EXC_MSG('OKL_INS_EXCLUSIONS_PUB','insert_ins_exclusions');
81       FND_MSG_PUB.count_and_get(
82              p_count   => x_msg_count
83             ,p_data    => x_msg_data);
84 END insert_ins_exclusions;
85 PROCEDURE insert_ins_exclusions(
86      p_api_version           IN  NUMBER
87     ,p_init_msg_list         IN  VARCHAR2 DEFAULT FND_API.G_FALSE
88     ,x_return_status         OUT  NOCOPY VARCHAR2
89     ,x_msg_count             OUT  NOCOPY NUMBER
90     ,x_msg_data              OUT  NOCOPY VARCHAR2
91     ,p_ienv_tbl              IN  ienv_tbl_type
92     ,x_ienv_tbl              OUT  NOCOPY ienv_tbl_type) IS
93 l_api_version NUMBER;
94 l_init_msg_list VARCHAR2(1) ;
95 l_msg_data VARCHAR2(2000);
96 l_msg_count NUMBER ;
97 l_return_status VARCHAR2(1);
98 lp_ienv_tbl  ienv_tbl_type;
99 lx_ienv_tbl  ienv_tbl_type;
100 BEGIN
101 SAVEPOINT ins_exclusions_insert;
102 l_api_version := p_api_version ;
103 l_init_msg_list := p_init_msg_list ;
104 l_return_status := x_return_status ;
105 l_msg_count := x_msg_count ;
106 l_msg_data := x_msg_data ;
107 lp_ienv_tbl :=  p_ienv_tbl;
108 lx_ienv_tbl :=  x_ienv_tbl;
109 okl_ien_pvt.insert_row(
110                           l_api_version
111                          ,l_init_msg_list
112                          ,l_return_status
113                          ,l_msg_count
114                          ,l_msg_data
115                          ,lp_ienv_tbl
116                          ,lx_ienv_tbl);
117 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
118 	RAISE FND_API.G_EXC_ERROR;
119 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
120 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
121 END IF;
122 --Assign value to OUT variables
123 x_ienv_tbl  := lx_ienv_tbl;
124 x_return_status := l_return_status ;
125 x_msg_count := l_msg_count ;
126 x_msg_data := l_msg_data ;
127 
128 EXCEPTION
129     WHEN FND_API.G_EXC_ERROR THEN
130 
131       ROLLBACK TO ins_exclusions_insert;
132       x_return_status := FND_API.G_RET_STS_ERROR;
133       x_msg_count := l_msg_count ;
134       x_msg_data := l_msg_data ;
135       FND_MSG_PUB.count_and_get(
136              p_count   => x_msg_count
137             ,p_data    => x_msg_data);
138     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
139       ROLLBACK TO ins_exclusions_insert;
140       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
141       x_msg_count := l_msg_count ;
142       x_msg_data := l_msg_data ;
143       FND_MSG_PUB.count_and_get(
144              p_count   => x_msg_count
145             ,p_data    => x_msg_data);
146     WHEN OTHERS THEN
147       ROLLBACK TO ins_exclusions_insert;
148       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
149       x_msg_count := l_msg_count ;
150       x_msg_data := l_msg_data ;
151       FND_MSG_PUB.ADD_EXC_MSG('OKL_INS_EXCLUSIONS_PUB','insert_ins_exclusions');
152       FND_MSG_PUB.count_and_get(
153              p_count   => x_msg_count
154             ,p_data    => x_msg_data);
155 END insert_ins_exclusions;
156 PROCEDURE lock_ins_exclusions(
157      p_api_version           IN NUMBER
158     ,p_init_msg_list         IN VARCHAR2 DEFAULT FND_API.G_FALSE
159     ,x_return_status         OUT NOCOPY VARCHAR2
160     ,x_msg_count             OUT NOCOPY NUMBER
161     ,x_msg_data              OUT NOCOPY VARCHAR2
162     ,p_ienv_rec              IN ienv_rec_type) IS
163 BEGIN
164     okl_ien_pvt.lock_row(
165 		    p_api_version,
166 		    p_init_msg_list,
167 		    x_return_status,
168 		    x_msg_count,
169 		    x_msg_data,
170 		    p_ienv_rec);
171 IF ( x_return_status = FND_API.G_RET_STS_ERROR )  THEN
172 	RAISE FND_API.G_EXC_ERROR;
173 ELSIF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
174 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
175 END IF;
176 END lock_ins_exclusions;
177 PROCEDURE lock_ins_exclusions(
178      p_api_version           IN  NUMBER
179     ,p_init_msg_list         IN  VARCHAR2 DEFAULT FND_API.G_FALSE
180     ,x_return_status         OUT  NOCOPY VARCHAR2
181     ,x_msg_count             OUT  NOCOPY NUMBER
182     ,x_msg_data              OUT  NOCOPY VARCHAR2
183     ,p_ienv_tbl              IN  ienv_tbl_type) IS
184 BEGIN
185     okl_ien_pvt.lock_row(
186 		    p_api_version,
187 		    p_init_msg_list,
188 		    x_return_status,
189 		    x_msg_count,
190 		    x_msg_data,
191 		    p_ienv_tbl);
192 IF ( x_return_status = FND_API.G_RET_STS_ERROR )  THEN
193 	RAISE FND_API.G_EXC_ERROR;
194 ELSIF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
195 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
196 END IF;
197 END lock_ins_exclusions;
198 PROCEDURE update_ins_exclusions(
199      p_api_version           IN  NUMBER
200     ,p_init_msg_list         IN  VARCHAR2 DEFAULT FND_API.G_FALSE
201     ,x_return_status         OUT  NOCOPY VARCHAR2
202     ,x_msg_count             OUT  NOCOPY NUMBER
203     ,x_msg_data              OUT  NOCOPY VARCHAR2
204     ,p_ienv_rec              IN  ienv_rec_type
205     ,x_ienv_rec              OUT  NOCOPY ienv_rec_type) IS
206 l_api_version NUMBER ;
207 l_init_msg_list VARCHAR2(1) ;
208 l_return_status VARCHAR2(1);
209 l_msg_count NUMBER ;
210 l_msg_data VARCHAR2(2000);
211 lp_ienv_rec  ienv_rec_type;
212 lx_ienv_rec  ienv_rec_type;
213 BEGIN
214 SAVEPOINT ins_exclusions_update;
215 l_api_version := p_api_version ;
216 l_init_msg_list := p_init_msg_list ;
217 l_return_status := x_return_status ;
218 l_msg_count := x_msg_count ;
219 l_msg_data := x_msg_data ;
220 lp_ienv_rec :=  p_ienv_rec;
221 lx_ienv_rec :=  x_ienv_rec;
222 
223 
224     okl_ien_pvt.update_row(
225                               l_api_version
226                              ,l_init_msg_list
227                              ,l_return_status
228                              ,l_msg_count
229                              ,l_msg_data
230                              ,lp_ienv_rec
231                              ,lx_ienv_rec);
232 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
233 	RAISE FND_API.G_EXC_ERROR;
234 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
235 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
236 END IF;
237 --Assign value to OUT variables
238 x_ienv_rec  := lx_ienv_rec;
239 x_return_status := l_return_status ;
240 x_msg_count := l_msg_count ;
241 x_msg_data := l_msg_data ;
242 EXCEPTION
243     WHEN FND_API.G_EXC_ERROR THEN
244       ROLLBACK TO ins_exclusions_update;
245       x_return_status := FND_API.G_RET_STS_ERROR;
246       x_msg_count := l_msg_count ;
247       x_msg_data := l_msg_data ;
248       FND_MSG_PUB.count_and_get(
249              p_count   => x_msg_count
250             ,p_data    => x_msg_data);
251     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
252       ROLLBACK TO ins_exclusions_update;
253       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
254       x_msg_count := l_msg_count ;
255       x_msg_data := l_msg_data ;
256       FND_MSG_PUB.count_and_get(
257              p_count   => x_msg_count
258             ,p_data    => x_msg_data);
259     WHEN OTHERS THEN
260       ROLLBACK TO ins_exclusions_update;
261       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
262       x_msg_count := l_msg_count ;
263       x_msg_data := l_msg_data ;
264       FND_MSG_PUB.ADD_EXC_MSG('OKL_INS_EXCLUSIONS_PUB','update_ins_exclusions');
265       FND_MSG_PUB.count_and_get(
266              p_count   => x_msg_count
267             ,p_data    => x_msg_data);
268 END update_ins_exclusions;
269 PROCEDURE update_ins_exclusions(
270      p_api_version           IN  NUMBER
271     ,p_init_msg_list         IN  VARCHAR2 DEFAULT FND_API.G_FALSE
272     ,x_return_status         OUT  NOCOPY VARCHAR2
273     ,x_msg_count             OUT  NOCOPY NUMBER
274     ,x_msg_data              OUT  NOCOPY VARCHAR2
275     ,p_ienv_tbl              IN  ienv_tbl_type
276     ,x_ienv_tbl              OUT  NOCOPY ienv_tbl_type) IS
277 l_api_version NUMBER;
278 l_init_msg_list VARCHAR2(200);
279 l_msg_data VARCHAR2(100);
280 l_msg_count NUMBER ;
281 l_return_status VARCHAR2(1);
282 lp_ienv_tbl  ienv_tbl_type;
283 lx_ienv_tbl  ienv_tbl_type;
284 BEGIN
285 SAVEPOINT ins_exclusions_update;
286 lp_ienv_tbl :=  p_ienv_tbl;
287 lx_ienv_tbl :=  x_ienv_tbl;
288 l_api_version := p_api_version ;
289 l_init_msg_list := p_init_msg_list ;
290 l_msg_data := x_msg_data ;
291 l_msg_count := x_msg_count ;
292     okl_ien_pvt.update_row(
293                               l_api_version
294                              ,l_init_msg_list
295                              ,l_return_status
296                              ,l_msg_count
297                              ,l_msg_data
298                              ,lp_ienv_tbl
299                              ,lx_ienv_tbl);
300 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
301 	RAISE FND_API.G_EXC_ERROR;
302 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
303 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
304 END IF;
305 --Assign value to OUT variables
306 x_ienv_tbl  := lx_ienv_tbl;
307 x_return_status := l_return_status ;
308 x_msg_count := l_msg_count ;
309 x_msg_data := l_msg_data ;
310 EXCEPTION
311     WHEN FND_API.G_EXC_ERROR THEN
312       ROLLBACK TO ins_exclusions_update;
313       x_return_status := FND_API.G_RET_STS_ERROR;
314       x_msg_count := l_msg_count ;
315       x_msg_data := l_msg_data ;
316       FND_MSG_PUB.count_and_get(
317              p_count   => x_msg_count
318             ,p_data    => x_msg_data);
319     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
320       ROLLBACK TO ins_exclusions_update;
321       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
322       x_msg_count := l_msg_count ;
323       x_msg_data := l_msg_data ;
324       FND_MSG_PUB.count_and_get(
325              p_count   => x_msg_count
326             ,p_data    => x_msg_data);
327     WHEN OTHERS THEN
328       ROLLBACK TO ins_exclusions_update;
329       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
330       x_msg_count := l_msg_count ;
331       x_msg_data := l_msg_data ;
332       FND_MSG_PUB.ADD_EXC_MSG('OKL_INS_EXCLUSIONS_PUB','update_ins_exclusions');
333       FND_MSG_PUB.count_and_get(
334              p_count   => x_msg_count
335             ,p_data    => x_msg_data);
336 END update_ins_exclusions;
337 --Put custom code for cascade delete by developer
338 PROCEDURE delete_ins_exclusions(
339      p_api_version           IN  NUMBER
340     ,p_init_msg_list         IN  VARCHAR2 DEFAULT FND_API.G_FALSE
341     ,x_return_status         OUT  NOCOPY VARCHAR2
342     ,x_msg_count             OUT  NOCOPY NUMBER
343     ,x_msg_data              OUT  NOCOPY VARCHAR2
344     ,p_ienv_rec              IN ienv_rec_type) IS
345 i	                    NUMBER :=0;
346 l_return_status 	    VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
347 l_api_version NUMBER ;
348 l_init_msg_list    VARCHAR2(1) ;
349 l_msg_data VARCHAR2(2000);
350 l_msg_count NUMBER ;
351 lp_ienv_rec  ienv_rec_type;
352 BEGIN
353 SAVEPOINT ins_exclusions_delete;
354 l_api_version := p_api_version ;
355 l_init_msg_list := p_init_msg_list ;
356 l_msg_data :=  x_msg_data;
357 l_msg_count := x_msg_count ;
358 lp_ienv_rec :=  p_ienv_rec;
359 
360 
361 
362 
363 --Delete the Master
364 okl_ien_pvt.delete_row(
365                           l_api_version
366                          ,l_init_msg_list
367                          ,l_return_status
368                          ,l_msg_count
369                          ,l_msg_data
370                          ,lp_ienv_rec);
371 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
372 	RAISE FND_API.G_EXC_ERROR;
373 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
374 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
375 END IF;
376 
377 
378 
379 
380 --Assign value to OUT variables
381 x_msg_count := l_msg_count ;
382 x_msg_data := l_msg_data ;
383 x_return_status := l_return_status ;
384 EXCEPTION
385     WHEN FND_API.G_EXC_ERROR THEN
386       ROLLBACK TO ins_exclusions_delete;
387       x_return_status := FND_API.G_RET_STS_ERROR;
388       x_msg_count := l_msg_count ;
389       x_msg_data := l_msg_data ;
390       FND_MSG_PUB.count_and_get(
391              p_count   => x_msg_count
392             ,p_data    => x_msg_data);
393     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
394       ROLLBACK TO ins_exclusions_delete;
395       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
396       x_msg_count := l_msg_count ;
397       x_msg_data := l_msg_data ;
398       FND_MSG_PUB.count_and_get(
399              p_count   => x_msg_count
400             ,p_data    => x_msg_data);
401     WHEN OTHERS THEN
402       ROLLBACK TO ins_exclusions_delete;
403       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
404       x_msg_count := l_msg_count ;
405       x_msg_data := l_msg_data ;
406       FND_MSG_PUB.ADD_EXC_MSG('OKL_INS_EXCLUSIONS_PUB','delete_ins_exclusions');
407       FND_MSG_PUB.count_and_get(
408              p_count   => x_msg_count
409             ,p_data    => x_msg_data);
410 END delete_ins_exclusions;
411 PROCEDURE delete_ins_exclusions(
412      p_api_version        IN NUMBER
413     ,p_init_msg_list      IN VARCHAR2 DEFAULT FND_API.G_FALSE
414     ,x_return_status      OUT NOCOPY VARCHAR2
415     ,x_msg_count          OUT NOCOPY NUMBER
416     ,x_msg_data           OUT NOCOPY VARCHAR2
417     ,p_ienv_tbl           IN ienv_tbl_type) IS
418 i NUMBER := 0;
419 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
420 l_api_version NUMBER := p_api_version ;
421 l_init_msg_list VARCHAR2(1) := p_init_msg_list  ;
422 l_msg_data VARCHAR2(2000);
423 l_msg_count NUMBER ;
424 lp_ienv_tbl  ienv_tbl_type;
425 BEGIN
426 SAVEPOINT ins_exclusions_delete;
427 l_api_version := p_api_version ;
428 l_init_msg_list := p_init_msg_list ;
429 l_msg_data :=  x_msg_data;
430 l_msg_count := x_msg_count ;
431 lp_ienv_tbl :=  p_ienv_tbl;
432 BEGIN
433       --Initialize the return status
434       l_return_status := OKC_API.G_RET_STS_SUCCESS;
435       IF (lp_ienv_tbl.COUNT > 0) THEN
436        	  i := p_ienv_tbl.FIRST;
437        LOOP
438           delete_ins_exclusions(
439                                l_api_version
440                               ,l_init_msg_list
441                               ,l_return_status
442                               ,l_msg_count
443                               ,l_msg_data
444                               ,lp_ienv_tbl(i));
445           EXIT WHEN (i = lp_ienv_tbl.LAST);
446           i := p_ienv_tbl.NEXT(i);
447        END LOOP;
448       END IF;
449 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
450 	RAISE FND_API.G_EXC_ERROR;
451 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
452 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
453 END IF;
454 END;
455 --Assign value to OUT variables
456 x_msg_count := l_msg_count ;
457 x_msg_data := l_msg_data ;
458 l_return_status := OKC_API.G_RET_STS_SUCCESS;
459 x_return_status := l_return_status ;
460 EXCEPTION
461     WHEN FND_API.G_EXC_ERROR THEN
462       ROLLBACK TO ins_exclusions_delete;
463       x_return_status := FND_API.G_RET_STS_ERROR;
464       x_msg_count := l_msg_count ;
465       x_msg_data := l_msg_data ;
466       FND_MSG_PUB.count_and_get(
467              p_count   => x_msg_count
468             ,p_data    => x_msg_data);
469     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
470       ROLLBACK TO ins_exclusions_delete;
471       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
472       x_msg_count := l_msg_count ;
473       x_msg_data := l_msg_data ;
474       FND_MSG_PUB.count_and_get(
475              p_count   => x_msg_count
476             ,p_data    => x_msg_data);
477     WHEN OTHERS THEN
478       ROLLBACK TO ins_exclusions_delete;
479       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
480       x_msg_count := l_msg_count ;
481       x_msg_data := l_msg_data ;
482       FND_MSG_PUB.ADD_EXC_MSG('OKL_INS_EXCLUSIONS_PUB','delete_ins_exclusions');
483       FND_MSG_PUB.count_and_get(
484              p_count   => x_msg_count
485             ,p_data    => x_msg_data);
486 END delete_ins_exclusions;
487 PROCEDURE validate_ins_exclusions(
488      p_api_version      IN  NUMBER
489     ,p_init_msg_list    IN  VARCHAR2 DEFAULT FND_API.G_FALSE
490     ,x_return_status    OUT  NOCOPY VARCHAR2
491     ,x_msg_count        OUT  NOCOPY NUMBER
492     ,x_msg_data         OUT  NOCOPY VARCHAR2
493     ,p_ienv_rec         IN  ienv_rec_type) IS
494 l_api_version NUMBER ;
495 l_init_msg_list    VARCHAR2(1) ;
496 l_msg_data VARCHAR2(2000);
497 l_msg_count NUMBER ;
498 lp_ienv_rec  ienv_rec_type;
499 l_return_status VARCHAR2(1);
500 BEGIN
501 SAVEPOINT ins_exclusions_validate;
502 l_api_version := p_api_version ;
503 l_init_msg_list := p_init_msg_list ;
504 l_msg_data :=  x_msg_data;
505 l_msg_count := x_msg_count ;
506 lp_ienv_rec :=  p_ienv_rec;
507 okl_ien_pvt.validate_row(
508                             l_api_version
509                            ,l_init_msg_list
510                            ,l_return_status
511                            ,l_msg_count
512                            ,l_msg_data
513                            ,lp_ienv_rec);
514 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
515 	RAISE FND_API.G_EXC_ERROR;
516 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
517 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
518 END IF;
519 --Assign value to OUT variables
520 x_msg_count := l_msg_count ;
521 x_msg_data := l_msg_data ;
522 x_return_status := l_return_status ;
523 EXCEPTION
524     WHEN FND_API.G_EXC_ERROR THEN
525       ROLLBACK TO ins_exclusions_validate;
526       x_return_status := FND_API.G_RET_STS_ERROR;
527       x_msg_count := l_msg_count ;
528       x_msg_data := l_msg_data ;
529       FND_MSG_PUB.count_and_get(
530              p_count   => x_msg_count
531             ,p_data    => x_msg_data);
532     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
533       ROLLBACK TO ins_exclusions_validate;
534       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
535       x_msg_count := l_msg_count ;
536       x_msg_data := l_msg_data ;
537       FND_MSG_PUB.count_and_get(
538              p_count   => x_msg_count
539             ,p_data    => x_msg_data);
540     WHEN OTHERS THEN
541       ROLLBACK TO ins_exclusions_validate;
542       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
543       x_msg_count := l_msg_count ;
544       x_msg_data := l_msg_data ;
545       FND_MSG_PUB.ADD_EXC_MSG('OKL_INS_EXCLUSIONS_PUB','validate_ins_exclusions');
546       FND_MSG_PUB.count_and_get(
547              p_count   => x_msg_count
548             ,p_data    => x_msg_data);
549 END validate_ins_exclusions;
550 PROCEDURE validate_ins_exclusions(
551     p_api_version       IN  NUMBER,
552     p_init_msg_list     IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
553     x_return_status     OUT  NOCOPY VARCHAR2,
554     x_msg_count         OUT  NOCOPY NUMBER,
555     x_msg_data          OUT  NOCOPY VARCHAR2,
556     p_ienv_tbl          IN  ienv_tbl_type) IS
557 l_api_version NUMBER ;
558 l_init_msg_list    VARCHAR2(1) ;
559 l_msg_data VARCHAR2(2000);
560 l_msg_count NUMBER ;
561 lp_ienv_tbl  ienv_tbl_type;
562 l_return_status VARCHAR2(1);
563 BEGIN
564 SAVEPOINT ins_exclusions_validate;
565 l_api_version := p_api_version ;
566 l_init_msg_list := p_init_msg_list ;
567 l_msg_data :=  x_msg_data;
568 l_msg_count := x_msg_count ;
569 lp_ienv_tbl :=  p_ienv_tbl;
570 okl_ien_pvt.validate_row(
571                             p_api_version
572                            ,p_init_msg_list
573                            ,x_return_status
574                            ,x_msg_count
575                            ,x_msg_data
576                            ,lp_ienv_tbl);
577 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
578 	RAISE FND_API.G_EXC_ERROR;
579 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
580 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
581 END IF;
582 --Assign value to OUT variables
583 x_msg_count := l_msg_count ;
584 x_msg_data := l_msg_data ;
585 x_return_status := l_return_status ;
586 EXCEPTION
587     WHEN FND_API.G_EXC_ERROR THEN
588       ROLLBACK TO ins_exclusions_validate;
589       x_return_status := FND_API.G_RET_STS_ERROR;
590       x_msg_count := l_msg_count ;
591       x_msg_data := l_msg_data ;
592       FND_MSG_PUB.count_and_get(
593              p_count   => x_msg_count
594             ,p_data    => x_msg_data);
595     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
596       ROLLBACK TO ins_exclusions_validate;
597       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
598       x_msg_count := l_msg_count ;
599       x_msg_data := l_msg_data ;
600       FND_MSG_PUB.count_and_get(
601              p_count   => x_msg_count
602             ,p_data    => x_msg_data);
603     WHEN OTHERS THEN
604       ROLLBACK TO ins_exclusions_validate;
605       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
606       x_msg_count := l_msg_count ;
607       x_msg_data := l_msg_data ;
608       FND_MSG_PUB.ADD_EXC_MSG('OKL_INS_EXCLUSIONS_PUB','validate_ins_exclusions');
609       FND_MSG_PUB.count_and_get(
610              p_count   => x_msg_count
611             ,p_data    => x_msg_data);
612 END validate_ins_exclusions;
613 END OKL_INS_EXCLUSIONS_PUB;