DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_TRX_QUOTES_PUB

Source


1 PACKAGE BODY okl_trx_quotes_pub AS
2 /* $Header: OKLPQTEB.pls 120.3 2007/12/17 11:23:59 ansethur ship $ */
3 
4 -- GLOBAL VARIABLES
5   G_LEVEL_PROCEDURE             CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
6   G_LEVEL_STATEMENT             CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
7   G_LEVEL_EXCEPTION		CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
8   G_MODULE_NAME                 CONSTANT VARCHAR2(500) := 'okl.am.plsql.okl_trx_quotes_pub.';
9 
10 PROCEDURE insert_trx_quotes(
11      p_api_version                  IN   NUMBER
12     ,p_init_msg_list                IN   VARCHAR2 DEFAULT FND_API.G_FALSE
13     ,x_return_status                OUT  NOCOPY VARCHAR2
14     ,x_msg_count                    OUT  NOCOPY NUMBER
15     ,x_msg_data                     OUT  NOCOPY VARCHAR2
16     ,p_qtev_rec                     IN   qtev_rec_type
17     ,x_qtev_rec                     OUT  NOCOPY qtev_rec_type) IS
18 
19 
20 l_api_version NUMBER ;
21 l_init_msg_list VARCHAR2(1) ;
22 l_return_status VARCHAR2(1);
23 l_msg_count NUMBER ;
24 l_msg_data VARCHAR2(2000);
25 lp_qtev_rec  qtev_rec_type;
26 lx_qtev_rec  qtev_rec_type;
27 
28 -- for debug logging
29     L_MODULE_NAME         VARCHAR2(500) := G_MODULE_NAME||'insert_trx_quotes';
30     is_debug_exception_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_EXCEPTION);
31     is_debug_procedure_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_PROCEDURE);
32     is_debug_statement_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_STATEMENT);
33 
34 BEGIN
35 
36 
37    IF (is_debug_procedure_on) THEN
38        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'Begin(+)');
39    END IF;
40 
41 
42 SAVEPOINT trx_quotes_insert;
43 
44 
45 l_api_version := p_api_version ;
46 l_init_msg_list := p_init_msg_list ;
47 l_return_status := x_return_status ;
48 l_msg_count := x_msg_count ;
49 l_msg_data := x_msg_data ;
50 lp_qtev_rec :=  p_qtev_rec;
51 lx_qtev_rec :=  x_qtev_rec;
52 
53 
54 
55    IF (is_debug_statement_on) THEN
56        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
57        'before call to okl_qte_pvt.insert_row :'||l_return_status);
58    END IF;
59 
60 
61 okl_qte_pvt.insert_row(
62                           l_api_version
63                          ,l_init_msg_list
64                          ,l_return_status
65                          ,l_msg_count
66                          ,l_msg_data
67                          ,lp_qtev_rec
68                          ,lx_qtev_rec);
69 
70    IF (is_debug_statement_on) THEN
71        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
72        'after call to okl_qte_pvt.insert_row :'||l_return_status);
73    END IF;
74 
75 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
76 	RAISE FND_API.G_EXC_ERROR;
77 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
78 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
79 END IF;
80 
81 --Copy value of OUT variable in the IN record type
82 lp_qtev_rec := lx_qtev_rec;
83 
84 
85 
86 
87 
88 --Assign value to OUT variables
89 x_qtev_rec  := lx_qtev_rec;
90 x_return_status := l_return_status ;
91 x_msg_count := l_msg_count ;
92 x_msg_data := l_msg_data ;
93 
94    IF (is_debug_procedure_on) THEN
95        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'End(-)');
96    END IF;
97 
98 EXCEPTION
99 
100     WHEN FND_API.G_EXC_ERROR THEN
101       ROLLBACK TO trx_quotes_insert;
102       x_return_status := FND_API.G_RET_STS_ERROR;
103       x_msg_count := l_msg_count ;
104       x_msg_data := l_msg_data ;
105       FND_MSG_PUB.count_and_get(
106              p_count   => x_msg_count
107             ,p_data    => x_msg_data);
108     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
109       ROLLBACK TO trx_quotes_insert;
110       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
111       x_msg_count := l_msg_count ;
112       x_msg_data := l_msg_data ;
113       FND_MSG_PUB.count_and_get(
114              p_count   => x_msg_count
115             ,p_data    => x_msg_data);
116     WHEN OTHERS THEN
117 
118       	IF (is_debug_exception_on) THEN
119 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'OTHERS, SQLCODE: '
120 		   || sqlcode || ' , SQLERRM : ' || sqlerrm);
121 	END IF;
122       ROLLBACK TO trx_quotes_insert;
123       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
124       x_msg_count := l_msg_count ;
125       x_msg_data := l_msg_data ;
126       FND_MSG_PUB.ADD_EXC_MSG('OKL_TRX_QUOTES_PUB','insert_trx_quotes');
127       FND_MSG_PUB.count_and_get(
128              p_count   => x_msg_count
129             ,p_data    => x_msg_data);
130 END insert_trx_quotes;
131 
132 PROCEDURE insert_trx_quotes(
133      p_api_version                  IN   NUMBER
134     ,p_init_msg_list                IN   VARCHAR2 DEFAULT FND_API.G_FALSE
135     ,x_return_status                OUT  NOCOPY VARCHAR2
136     ,x_msg_count                    OUT  NOCOPY NUMBER
137     ,x_msg_data                     OUT  NOCOPY VARCHAR2
138     ,p_qtev_tbl                     IN   qtev_tbl_type
139     ,x_qtev_tbl                     OUT  NOCOPY qtev_tbl_type) IS
140 
141 l_api_version NUMBER;
142 l_init_msg_list VARCHAR2(1) ;
143 l_msg_data VARCHAR2(2000);
144 l_msg_count NUMBER ;
145 l_return_status VARCHAR2(1);
146 lp_qtev_tbl  qtev_tbl_type;
147 lx_qtev_tbl  qtev_tbl_type;
148 
149 -- for debug logging
150     L_MODULE_NAME VARCHAR2(500) := G_MODULE_NAME||'insert_trx_quotes';
151     is_debug_exception_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_EXCEPTION);
152     is_debug_procedure_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_PROCEDURE);
153     is_debug_statement_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_STATEMENT);
154 
155 BEGIN
156 
157 
158    IF (is_debug_procedure_on) THEN
159        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'Begin(+)');
160    END IF;
161 
162 
163 SAVEPOINT trx_quotes_insert;
164 
165 
166 l_api_version := p_api_version ;
167 l_init_msg_list := p_init_msg_list ;
168 l_return_status := x_return_status ;
169 l_msg_count := x_msg_count ;
170 l_msg_data := x_msg_data ;
171 lp_qtev_tbl :=  p_qtev_tbl;
172 lx_qtev_tbl :=  x_qtev_tbl;
173 
174 
175    IF (is_debug_statement_on) THEN
176        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
177        'before call to okl_qte_pvt.insert_row :'||l_return_status);
178    END IF;
179 
180 okl_qte_pvt.insert_row(
181                           l_api_version
182                          ,l_init_msg_list
183                          ,l_return_status
184                          ,l_msg_count
185                          ,l_msg_data
186                          ,lp_qtev_tbl
187                          ,lx_qtev_tbl);
188 
189    IF (is_debug_statement_on) THEN
190        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
191        'after call to okl_qte_pvt.insert_row :'||l_return_status);
192    END IF;
193 
194 
195 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
196 	RAISE FND_API.G_EXC_ERROR;
197 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
198 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
199 END IF;
200 
201 --Copy value of OUT variable in the IN record type
202 lp_qtev_tbl := lx_qtev_tbl;
203 
204 
205 
206 --Assign value to OUT variables
207 x_qtev_tbl  := lx_qtev_tbl;
208 x_return_status := l_return_status ;
209 x_msg_count := l_msg_count ;
210 x_msg_data := l_msg_data ;
211 
212  IF (is_debug_procedure_on) THEN
213        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'End(-)');
214    END IF;
215 
216 
217 EXCEPTION
218 
219     WHEN FND_API.G_EXC_ERROR THEN
220       ROLLBACK TO trx_quotes_insert;
221       x_return_status := FND_API.G_RET_STS_ERROR;
222       x_msg_count := l_msg_count ;
223       x_msg_data := l_msg_data ;
224       FND_MSG_PUB.count_and_get(
225              p_count   => x_msg_count
226             ,p_data    => x_msg_data);
227     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
228       ROLLBACK TO trx_quotes_insert;
229       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
230       x_msg_count := l_msg_count ;
231       x_msg_data := l_msg_data ;
232       FND_MSG_PUB.count_and_get(
233              p_count   => x_msg_count
234             ,p_data    => x_msg_data);
235     WHEN OTHERS THEN
236         IF (is_debug_exception_on) THEN
237 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'OTHERS, SQLCODE: '
238 		   || sqlcode || ' , SQLERRM : ' || sqlerrm);
239 	END IF;
240       ROLLBACK TO trx_quotes_insert;
241       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
242       x_msg_count := l_msg_count ;
243       x_msg_data := l_msg_data ;
244       FND_MSG_PUB.ADD_EXC_MSG('OKL_TRX_QUOTES_PUB','insert_trx_quotes');
245       FND_MSG_PUB.count_and_get(
246              p_count   => x_msg_count
247             ,p_data    => x_msg_data);
248 END insert_trx_quotes;
249 
250 PROCEDURE lock_trx_quotes(
251      p_api_version                  IN   NUMBER
252     ,p_init_msg_list                IN   VARCHAR2 DEFAULT FND_API.G_FALSE
253     ,x_return_status                OUT  NOCOPY VARCHAR2
254     ,x_msg_count                    OUT  NOCOPY NUMBER
255     ,x_msg_data                     OUT  NOCOPY VARCHAR2
256     ,p_qtev_rec                     IN   qtev_rec_type) IS
257 
258 -- for debug logging
259     L_MODULE_NAME VARCHAR2(500) := G_MODULE_NAME||'lock_trx_quotes';
260     is_debug_exception_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_EXCEPTION);
261     is_debug_procedure_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_PROCEDURE);
262     is_debug_statement_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_STATEMENT);
263 
264 BEGIN
265 
266 
267    IF (is_debug_procedure_on) THEN
268        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'Begin(+)');
269    END IF;
270 
271      IF (is_debug_statement_on) THEN
272        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
273        'before call to okl_qte_pvt.lock_row :'||x_return_status);
274    END IF;
275     okl_qte_pvt.lock_row(
276 		    p_api_version,
277 		    p_init_msg_list,
278 		    x_return_status,
279 		    x_msg_count,
280 		    x_msg_data,
281 		    p_qtev_rec);
282 
283    IF (is_debug_statement_on) THEN
284        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
285        'after call to okl_qte_pvt.lock_row :'||x_return_status);
286    END IF;
287 
288 
289 IF ( x_return_status = FND_API.G_RET_STS_ERROR )  THEN
290 	RAISE FND_API.G_EXC_ERROR;
291 ELSIF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
292 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
293 END IF;
294 
295    IF (is_debug_procedure_on) THEN
296        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'End(-)');
297    END IF;
298 
299 EXCEPTION
300 
301     WHEN FND_API.G_EXC_ERROR THEN
302       FND_MSG_PUB.count_and_get(
303              p_count   => x_msg_count
304             ,p_data    => x_msg_data);
305     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
306       FND_MSG_PUB.count_and_get(
307              p_count   => x_msg_count
308             ,p_data    => x_msg_data);
309     WHEN OTHERS THEN
310         IF (is_debug_exception_on) THEN
311 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'OTHERS, SQLCODE: '
312 		   || sqlcode || ' , SQLERRM : ' || sqlerrm);
313 	END IF;
314       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
315       FND_MSG_PUB.ADD_EXC_MSG('OKL_TRX_QUOTES_PUB','lock_trx_quotes');
316       FND_MSG_PUB.count_and_get(
317              p_count   => x_msg_count
318             ,p_data    => x_msg_data);
319 END lock_trx_quotes;
320 
321 PROCEDURE lock_trx_quotes(
322      p_api_version                  IN   NUMBER
323     ,p_init_msg_list                IN   VARCHAR2 DEFAULT FND_API.G_FALSE
324     ,x_return_status                OUT  NOCOPY VARCHAR2
325     ,x_msg_count                    OUT  NOCOPY NUMBER
326     ,x_msg_data                     OUT  NOCOPY VARCHAR2
327     ,p_qtev_tbl                     IN   qtev_tbl_type) IS
328 
329 -- for debug logging
330     L_MODULE_NAME VARCHAR2(500) := G_MODULE_NAME||'lock_trx_quotes';
331     is_debug_exception_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_EXCEPTION);
332     is_debug_procedure_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_PROCEDURE);
333     is_debug_statement_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_STATEMENT);
334 
335 BEGIN
336 
337 
338    IF (is_debug_procedure_on) THEN
339        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'Begin(+)');
340    END IF;
341 
342    IF (is_debug_statement_on) THEN
343        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
344        'before call to okl_qte_pvt.lock_row :'||x_return_status);
345    END IF;
346 
347     okl_qte_pvt.lock_row(
348 		    p_api_version,
349 		    p_init_msg_list,
350 		    x_return_status,
351 		    x_msg_count,
352 		    x_msg_data,
353 		    p_qtev_tbl);
354    IF (is_debug_statement_on) THEN
355        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
356        'after call to okl_qte_pvt.lock_row :'||x_return_status);
357    END IF;
358 
359 
360 IF ( x_return_status = FND_API.G_RET_STS_ERROR )  THEN
361 	RAISE FND_API.G_EXC_ERROR;
362 ELSIF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
363 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
364 END IF;
365 
366 
367 EXCEPTION
368 
369     WHEN FND_API.G_EXC_ERROR THEN
370         IF (is_debug_exception_on) THEN
371 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'USER DEFINED');
372 	END IF;
373       FND_MSG_PUB.count_and_get(
374              p_count   => x_msg_count
375             ,p_data    => x_msg_data);
376     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
377          IF (is_debug_exception_on) THEN
378 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'UNEXPECTED');
379 	END IF;
380 
381       FND_MSG_PUB.count_and_get(
382              p_count   => x_msg_count
383             ,p_data    => x_msg_data);
384     WHEN OTHERS THEN
385 
386 	IF (is_debug_exception_on) THEN
387 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'OTHERS, SQLCODE: '
388 		   || sqlcode || ' , SQLERRM : ' || sqlerrm);
389 	END IF;
390 
391       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
392       FND_MSG_PUB.ADD_EXC_MSG('OKL_TRX_QUOTES_PUB','lock_trx_quotes');
393       FND_MSG_PUB.count_and_get(
394              p_count   => x_msg_count
395             ,p_data    => x_msg_data);
396 END lock_trx_quotes;
397 
398 PROCEDURE update_trx_quotes(
399      p_api_version                  IN   NUMBER
400     ,p_init_msg_list                IN   VARCHAR2 DEFAULT FND_API.G_FALSE
401     ,x_return_status                OUT  NOCOPY VARCHAR2
402     ,x_msg_count                    OUT  NOCOPY NUMBER
403     ,x_msg_data                     OUT  NOCOPY VARCHAR2
404     ,p_qtev_rec                     IN   qtev_rec_type
405     ,x_qtev_rec                     OUT  NOCOPY qtev_rec_type) IS
406 
407 l_api_version NUMBER ;
408 l_init_msg_list VARCHAR2(1) ;
409 l_return_status VARCHAR2(1);
410 l_msg_count NUMBER ;
411 l_msg_data VARCHAR2(2000);
412 lp_qtev_rec  qtev_rec_type;
413 lx_qtev_rec  qtev_rec_type;
414 
415 -- for debug logging
416     L_MODULE_NAME VARCHAR2(500) := G_MODULE_NAME||'update_trx_quotes';
417     is_debug_exception_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_EXCEPTION);
418     is_debug_procedure_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_PROCEDURE);
419     is_debug_statement_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_STATEMENT);
420 
421 
422 BEGIN
423 
424    IF (is_debug_procedure_on) THEN
425        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'Begin(+)');
426    END IF;
427 
428 
429 SAVEPOINT trx_quotes_update;
430 
431 
432 l_api_version := p_api_version ;
433 l_init_msg_list := p_init_msg_list ;
434 l_return_status := x_return_status ;
435 l_msg_count := x_msg_count ;
436 l_msg_data := x_msg_data ;
437 lp_qtev_rec :=  p_qtev_rec;
438 lx_qtev_rec :=  x_qtev_rec;
439 
440 
441 
442    IF (is_debug_statement_on) THEN
443        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
444        'before call to okl_qte_pvt.update_row :'||l_return_status);
445    END IF;
446 
447     okl_qte_pvt.update_row(
448                               l_api_version
449                              ,l_init_msg_list
450                              ,l_return_status
451                              ,l_msg_count
452                              ,l_msg_data
453                              ,lp_qtev_rec
454                              ,lx_qtev_rec);
455    IF (is_debug_statement_on) THEN
456        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
457        'after call to okl_qte_pvt.update_row :'||l_return_status);
458    END IF;
459 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
460 	RAISE FND_API.G_EXC_ERROR;
461 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
462 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
463 END IF;
464 
465 --Copy value of OUT variable in the IN record type
466 lp_qtev_rec := lx_qtev_rec;
467 
468 
469 
470 
471 --Assign value to OUT variables
472 x_qtev_rec  := lx_qtev_rec;
473 x_return_status := l_return_status ;
474 x_msg_count := l_msg_count ;
475 x_msg_data := l_msg_data ;
476 
477    IF (is_debug_procedure_on) THEN
478        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'End(-)');
479    END IF;
480 
481 EXCEPTION
482 
483     WHEN FND_API.G_EXC_ERROR THEN
484         IF (is_debug_exception_on) THEN
485 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'USER DEFINED');
486 	END IF;
487 
488       ROLLBACK TO trx_quotes_update;
489       x_return_status := FND_API.G_RET_STS_ERROR;
490       x_msg_count := l_msg_count ;
491       x_msg_data := l_msg_data ;
492       FND_MSG_PUB.count_and_get(
493              p_count   => x_msg_count
494             ,p_data    => x_msg_data);
495     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
496        IF (is_debug_exception_on) THEN
497 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'UNEXPECTED');
498 	END IF;
499 
500       ROLLBACK TO trx_quotes_update;
501       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
502       x_msg_count := l_msg_count ;
503       x_msg_data := l_msg_data ;
504       FND_MSG_PUB.count_and_get(
505              p_count   => x_msg_count
506             ,p_data    => x_msg_data);
507     WHEN OTHERS THEN
508 
509 	IF (is_debug_exception_on) THEN
510 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'OTHERS, SQLCODE: '
511 		   || sqlcode || ' , SQLERRM : ' || sqlerrm);
512 	END IF;
513 
514       ROLLBACK TO trx_quotes_update;
515       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
516       x_msg_count := l_msg_count ;
517       x_msg_data := l_msg_data ;
518       FND_MSG_PUB.ADD_EXC_MSG('OKL_TRX_QUOTES_PUB','update_trx_quotes');
519       FND_MSG_PUB.count_and_get(
520              p_count   => x_msg_count
521             ,p_data    => x_msg_data);
522 END update_trx_quotes;
523 
524 PROCEDURE update_trx_quotes(
525      p_api_version                  IN   NUMBER
526     ,p_init_msg_list                IN   VARCHAR2 DEFAULT FND_API.G_FALSE
527     ,x_return_status                OUT  NOCOPY VARCHAR2
528     ,x_msg_count                    OUT  NOCOPY NUMBER
529     ,x_msg_data                     OUT  NOCOPY VARCHAR2
530     ,p_qtev_tbl                     IN   qtev_tbl_type
531     ,x_qtev_tbl                     OUT  NOCOPY qtev_tbl_type) IS
532 
533 l_api_version NUMBER;
534 l_init_msg_list VARCHAR2(200);
535 l_msg_data VARCHAR2(100);
536 l_msg_count NUMBER ;
537 l_return_status VARCHAR2(1);
538 lp_qtev_tbl  qtev_tbl_type;
539 lx_qtev_tbl  qtev_tbl_type;
540 
541 -- for debug logging
542     L_MODULE_NAME VARCHAR2(500) := G_MODULE_NAME||'update_trx_quotes';
543     is_debug_exception_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_EXCEPTION);
544     is_debug_procedure_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_PROCEDURE);
545     is_debug_statement_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_STATEMENT);
546 
547 BEGIN
548 
549    IF (is_debug_procedure_on) THEN
550        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'Begin(+)');
551    END IF;
552 
553 SAVEPOINT trx_quotes_update;
554 
555 
556 lp_qtev_tbl :=  p_qtev_tbl;
557 lx_qtev_tbl :=  x_qtev_tbl;
558 l_api_version := p_api_version ;
559 l_init_msg_list := p_init_msg_list ;
560 l_msg_data := x_msg_data ;
561 l_msg_count := x_msg_count ;
562 
563 
564 
565    IF (is_debug_statement_on) THEN
566        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
567        'after call to okl_qte_pvt.update_row :'||l_return_status);
568    END IF;
569 
570     okl_qte_pvt.update_row(
571                               l_api_version
572                              ,l_init_msg_list
573                              ,l_return_status
574                              ,l_msg_count
575                              ,l_msg_data
576                              ,lp_qtev_tbl
577                              ,lx_qtev_tbl);
578 
579    IF (is_debug_statement_on) THEN
580        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
581        'after call to okl_qte_pvt.update_row :'||l_return_status);
582    END IF;
583 
584 
585 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
586 	RAISE FND_API.G_EXC_ERROR;
587 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
588 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
589 END IF;
590 
591 --Copy value of OUT variable in the IN record type
592 lp_qtev_tbl := lx_qtev_tbl;
593 
594 
595 
596 --Assign value to OUT variables
597 x_qtev_tbl  := lx_qtev_tbl;
598 x_return_status := l_return_status ;
599 x_msg_count := l_msg_count ;
600 x_msg_data := l_msg_data ;
601 
602    IF (is_debug_procedure_on) THEN
603        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'End(-)');
604    END IF;
605 
606 
607 EXCEPTION
608 
609     WHEN FND_API.G_EXC_ERROR THEN
610 
611         IF (is_debug_exception_on) THEN
612 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'USER DEFINED');
613 	END IF;
614 
615       ROLLBACK TO trx_quotes_update;
616       x_return_status := FND_API.G_RET_STS_ERROR;
617       x_msg_count := l_msg_count ;
618       x_msg_data := l_msg_data ;
619       FND_MSG_PUB.count_and_get(
620              p_count   => x_msg_count
621             ,p_data    => x_msg_data);
622     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
623 
624 	IF (is_debug_exception_on) THEN
625 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'UNEXPECTED');
626 	END IF;
627       ROLLBACK TO trx_quotes_update;
628       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
629       x_msg_count := l_msg_count ;
630       x_msg_data := l_msg_data ;
631       FND_MSG_PUB.count_and_get(
632              p_count   => x_msg_count
633             ,p_data    => x_msg_data);
634     WHEN OTHERS THEN
635 
636 	IF (is_debug_exception_on) THEN
637 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'OTHERS, SQLCODE: '
638 		   || sqlcode || ' , SQLERRM : ' || sqlerrm);
639 	END IF;
640 
641       ROLLBACK TO trx_quotes_update;
642       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
643       x_msg_count := l_msg_count ;
644       x_msg_data := l_msg_data ;
645       FND_MSG_PUB.ADD_EXC_MSG('OKL_TRX_QUOTES_PUB','update_trx_quotes');
646       FND_MSG_PUB.count_and_get(
647              p_count   => x_msg_count
648             ,p_data    => x_msg_data);
649 END update_trx_quotes;
650 
651 --Put custom code for cascade delete by developer
652 PROCEDURE delete_trx_quotes(
653      p_api_version                  IN   NUMBER
654     ,p_init_msg_list                IN   VARCHAR2 DEFAULT FND_API.G_FALSE
655     ,x_return_status                OUT  NOCOPY VARCHAR2
656     ,x_msg_count                    OUT  NOCOPY NUMBER
657     ,x_msg_data                     OUT  NOCOPY VARCHAR2
658     ,p_qtev_rec                     IN   qtev_rec_type) IS
659 
660 i	                    NUMBER :=0;
661 l_return_status 	    VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
662 l_api_version NUMBER ;
663 l_init_msg_list    VARCHAR2(1) ;
664 l_msg_data VARCHAR2(2000);
665 l_msg_count NUMBER ;
666 lp_qtev_rec  qtev_rec_type;
667 lx_qtev_rec  qtev_rec_type;
668 
669 -- for debug logging
670     L_MODULE_NAME VARCHAR2(500) := G_MODULE_NAME||'delete_trx_quotes';
671     is_debug_exception_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_EXCEPTION);
672     is_debug_procedure_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_PROCEDURE);
673     is_debug_statement_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_STATEMENT);
674 
675 BEGIN
676 
677    IF (is_debug_procedure_on) THEN
678        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'Begin(+)');
679    END IF;
680 
681 SAVEPOINT trx_quotes_delete_rec;
682 
683 
684 l_api_version := p_api_version ;
685 l_init_msg_list := p_init_msg_list ;
686 l_msg_data :=  x_msg_data;
687 l_msg_count := x_msg_count ;
688 lp_qtev_rec :=  p_qtev_rec;
689 lx_qtev_rec :=  p_qtev_rec;
690 
691 
692  IF (is_debug_statement_on) THEN
693        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
694        'before call to okl_qte_pvt.delete_row :'||l_return_status);
695    END IF;
696 
697 --Delete the Master
698 okl_qte_pvt.delete_row(
699                           l_api_version
700                          ,l_init_msg_list
701                          ,l_return_status
702                          ,l_msg_count
703                          ,l_msg_data
704                          ,lp_qtev_rec);
705 
706    IF (is_debug_statement_on) THEN
707        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
708        'after call to okl_qte_pvt.delete_row :'||l_return_status);
709    END IF;
710 
711 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
712 	RAISE FND_API.G_EXC_ERROR;
713 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
714 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
715 END IF;
716 
717 
718 
719 
720 
721 --Assign value to OUT variables
722 x_msg_count := l_msg_count ;
723 x_msg_data := l_msg_data ;
724 x_return_status := l_return_status ;
725 
726    IF (is_debug_procedure_on) THEN
727        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'End(-)');
728    END IF;
729 
730 EXCEPTION
731 
732     WHEN FND_API.G_EXC_ERROR THEN
733           IF (is_debug_exception_on) THEN
734 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'USER DEFINED');
735 	END IF;
736 
737       ROLLBACK TO trx_quotes_delete_rec;
738       x_return_status := FND_API.G_RET_STS_ERROR;
739       x_msg_count := l_msg_count ;
740       x_msg_data := l_msg_data ;
741       FND_MSG_PUB.count_and_get(
742              p_count   => x_msg_count
743             ,p_data    => x_msg_data);
744     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
745 
746         IF (is_debug_exception_on) THEN
747 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'UNEXPECTED');
748 	END IF;
749       ROLLBACK TO trx_quotes_delete_rec;
750       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
751       x_msg_count := l_msg_count ;
752       x_msg_data := l_msg_data ;
753       FND_MSG_PUB.count_and_get(
754              p_count   => x_msg_count
755             ,p_data    => x_msg_data);
756     WHEN OTHERS THEN
757     	IF (is_debug_exception_on) THEN
758 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'OTHERS, SQLCODE: '
759 		   || sqlcode || ' , SQLERRM : ' || sqlerrm);
760 	END IF;
761 
762       ROLLBACK TO trx_quotes_delete_rec;
763       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
764       x_msg_count := l_msg_count ;
765       x_msg_data := l_msg_data ;
766       FND_MSG_PUB.ADD_EXC_MSG('OKL_TRX_QUOTES_PUB','delete_trx_quotes');
767       FND_MSG_PUB.count_and_get(
768              p_count   => x_msg_count
769             ,p_data    => x_msg_data);
770 END delete_trx_quotes;
771 
772 PROCEDURE delete_trx_quotes(
773      p_api_version                  IN   NUMBER
774     ,p_init_msg_list                IN   VARCHAR2 DEFAULT FND_API.G_FALSE
775     ,x_return_status                OUT  NOCOPY VARCHAR2
776     ,x_msg_count                    OUT  NOCOPY NUMBER
777     ,x_msg_data                     OUT  NOCOPY VARCHAR2
778     ,p_qtev_tbl                     IN   qtev_tbl_type) IS
779 
780 i NUMBER := 0;
781 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
782 l_api_version NUMBER := p_api_version ;
783 l_init_msg_list VARCHAR2(1) := p_init_msg_list  ;
784 l_msg_data VARCHAR2(2000);
785 l_msg_count NUMBER ;
786 lp_qtev_tbl  qtev_tbl_type;
787 lx_qtev_tbl  qtev_tbl_type;
788 
789 -- for debug logging
790     L_MODULE_NAME VARCHAR2(500) := G_MODULE_NAME||'delete_trx_quotes';
791     is_debug_exception_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_EXCEPTION);
792     is_debug_procedure_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_PROCEDURE);
793     is_debug_statement_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_STATEMENT);
794 
795 BEGIN
796 
797    IF (is_debug_procedure_on) THEN
798        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'Begin(+)');
799    END IF;
800 
801 SAVEPOINT trx_quotes_delete_tbl;
802 
803 
804 l_api_version := p_api_version ;
805 l_init_msg_list := p_init_msg_list ;
806 l_msg_data :=  x_msg_data;
807 l_msg_count := x_msg_count ;
808 lp_qtev_tbl :=  p_qtev_tbl;
809 lx_qtev_tbl :=  p_qtev_tbl;
810 
811 
812 
813 
814 BEGIN
815       --Initialize the return status
816       l_return_status := OKC_API.G_RET_STS_SUCCESS;
817 
818       IF (lp_qtev_tbl.COUNT > 0) THEN
819        	  i := p_qtev_tbl.FIRST;
820        LOOP
821           delete_trx_quotes(
822                                l_api_version
823                               ,l_init_msg_list
824                               ,l_return_status
825                               ,l_msg_count
826                               ,l_msg_data
827                               ,lp_qtev_tbl(i));
828 
829    IF (is_debug_statement_on) THEN
830        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
831        'after call to delete_trx_quotes :'||l_return_status);
832    END IF;
833           EXIT WHEN (i = lp_qtev_tbl.LAST);
834           i := p_qtev_tbl.NEXT(i);
835        END LOOP;
836       END IF;
837 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
838 	RAISE FND_API.G_EXC_ERROR;
839 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
840 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
841 END IF;
842 
843 END;
844 
845 
846 
847 
848 
849 --Assign value to OUT variables
850 x_msg_count := l_msg_count ;
851 x_msg_data := l_msg_data ;
852 
853 x_return_status := l_return_status ;
854 
855    IF (is_debug_procedure_on) THEN
856        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'End(-)');
857    END IF;
858 
859 EXCEPTION
860 
861     WHEN FND_API.G_EXC_ERROR THEN
862 
863         IF (is_debug_exception_on) THEN
864 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'USER DEFINED');
865 	END IF;
866 
867       ROLLBACK TO trx_quotes_delete_tbl;
868       x_return_status := FND_API.G_RET_STS_ERROR;
869       x_msg_count := l_msg_count ;
870       x_msg_data := l_msg_data ;
871       FND_MSG_PUB.count_and_get(
872              p_count   => x_msg_count
873             ,p_data    => x_msg_data);
874     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
875         IF (is_debug_exception_on) THEN
876 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'UNEXPECTED');
877 	END IF;
878 
879       ROLLBACK TO trx_quotes_delete_tbl;
880       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
881       x_msg_count := l_msg_count ;
882       x_msg_data := l_msg_data ;
883       FND_MSG_PUB.count_and_get(
884              p_count   => x_msg_count
885             ,p_data    => x_msg_data);
886     WHEN OTHERS THEN
887 
888     	IF (is_debug_exception_on) THEN
889 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'OTHERS, SQLCODE: '
890 		   || sqlcode || ' , SQLERRM : ' || sqlerrm);
891 	END IF;
892 
893       ROLLBACK TO trx_quotes_delete_tbl;
894       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
895       x_msg_count := l_msg_count ;
896       x_msg_data := l_msg_data ;
897       FND_MSG_PUB.ADD_EXC_MSG('OKL_TRX_QUOTES_PUB','delete_trx_quotes');
898       FND_MSG_PUB.count_and_get(
899              p_count   => x_msg_count
900             ,p_data    => x_msg_data);
901 END delete_trx_quotes;
902 
903 PROCEDURE validate_trx_quotes(
904      p_api_version                  IN   NUMBER
905     ,p_init_msg_list                IN   VARCHAR2 DEFAULT FND_API.G_FALSE
906     ,x_return_status                OUT  NOCOPY VARCHAR2
907     ,x_msg_count                    OUT  NOCOPY NUMBER
908     ,x_msg_data                     OUT  NOCOPY VARCHAR2
909     ,p_qtev_rec                     IN   qtev_rec_type) IS
910 
911 l_api_version NUMBER ;
912 l_init_msg_list    VARCHAR2(1) ;
913 l_msg_data VARCHAR2(2000);
914 l_msg_count NUMBER ;
915 lp_qtev_rec  qtev_rec_type;
916 lx_qtev_rec  qtev_rec_type;
917 l_return_status VARCHAR2(1);
918 
919 -- for debug logging
920     L_MODULE_NAME VARCHAR2(500) := G_MODULE_NAME||'validate_trx_quotes';
921     is_debug_exception_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_EXCEPTION);
922     is_debug_procedure_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_PROCEDURE);
923     is_debug_statement_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_STATEMENT);
924 
925 BEGIN
926 
927 
928    IF (is_debug_procedure_on) THEN
929        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'Begin(+)');
930    END IF;
931 
932 SAVEPOINT trx_quotes_validate;
933 
934 
935 l_api_version := p_api_version ;
936 l_init_msg_list := p_init_msg_list ;
937 l_msg_data :=  x_msg_data;
938 l_msg_count := x_msg_count ;
939 lp_qtev_rec :=  p_qtev_rec;
940 lx_qtev_rec :=  p_qtev_rec;
941 
942 
943    IF (is_debug_statement_on) THEN
944        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
945        'before call to okl_qte_pvt.validate_row :'||l_return_status);
946    END IF;
947 
948 okl_qte_pvt.validate_row(
949                             l_api_version
950                            ,l_init_msg_list
951                            ,l_return_status
952                            ,l_msg_count
953                            ,l_msg_data
954                            ,lp_qtev_rec);
955 
956    IF (is_debug_statement_on) THEN
957        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
958        'after call to okl_qte_pvt.validate_row :'||l_return_status);
959    END IF;
960 
961 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
962 	RAISE FND_API.G_EXC_ERROR;
963 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
964 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
965 END IF;
966 
967 --Copy value of OUT variable in the IN record type
968 lp_qtev_rec := lx_qtev_rec;
969 
970 --Assign value to OUT variables
971 x_msg_count := l_msg_count ;
972 x_msg_data := l_msg_data ;
973 
974 x_return_status := l_return_status ;
975 
976    IF (is_debug_procedure_on) THEN
977        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'End(-)');
978    END IF;
979 
980 
981 EXCEPTION
982 
983     WHEN FND_API.G_EXC_ERROR THEN
984         IF (is_debug_exception_on) THEN
985 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'USER DEFINED');
986 	END IF;
987       ROLLBACK TO trx_quotes_validate;
988       x_return_status := FND_API.G_RET_STS_ERROR;
989       x_msg_count := l_msg_count ;
990       x_msg_data := l_msg_data ;
991       FND_MSG_PUB.count_and_get(
992              p_count   => x_msg_count
993             ,p_data    => x_msg_data);
994     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
995 
996         IF (is_debug_exception_on) THEN
997 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'UNEXPECTED');
998 	END IF;
999 
1000       ROLLBACK TO trx_quotes_validate;
1001       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1002       x_msg_count := l_msg_count ;
1003       x_msg_data := l_msg_data ;
1004       FND_MSG_PUB.count_and_get(
1005              p_count   => x_msg_count
1006             ,p_data    => x_msg_data);
1007     WHEN OTHERS THEN
1008 	IF (is_debug_exception_on) THEN
1009 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'OTHERS, SQLCODE: '
1010 		   || sqlcode || ' , SQLERRM : ' || sqlerrm);
1011 	END IF;
1012       ROLLBACK TO trx_quotes_validate;
1013       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1014       x_msg_count := l_msg_count ;
1015       x_msg_data := l_msg_data ;
1016       FND_MSG_PUB.ADD_EXC_MSG('OKL_TRX_QUOTES_PUB','validate_trx_quotes');
1017       FND_MSG_PUB.count_and_get(
1018              p_count   => x_msg_count
1019             ,p_data    => x_msg_data);
1020 END validate_trx_quotes;
1021 
1022 PROCEDURE validate_trx_quotes(
1023      p_api_version                  IN   NUMBER
1024     ,p_init_msg_list                IN   VARCHAR2 DEFAULT FND_API.G_FALSE
1025     ,x_return_status                OUT  NOCOPY VARCHAR2
1026     ,x_msg_count                    OUT  NOCOPY NUMBER
1027     ,x_msg_data                     OUT  NOCOPY VARCHAR2
1028     ,p_qtev_tbl                     IN   qtev_tbl_type) IS
1029 l_api_version NUMBER ;
1030 l_init_msg_list    VARCHAR2(1) ;
1031 l_msg_data VARCHAR2(2000);
1032 l_msg_count NUMBER ;
1033 lp_qtev_tbl  qtev_tbl_type;
1034 lx_qtev_tbl  qtev_tbl_type;
1035 l_return_status VARCHAR2(1);
1036 
1037 -- for debug logging
1038     L_MODULE_NAME VARCHAR2(500) := G_MODULE_NAME||'validate_trx_quotes';
1039     is_debug_exception_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_EXCEPTION);
1040     is_debug_procedure_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_PROCEDURE);
1041     is_debug_statement_on boolean := OKL_DEBUG_PUB.Check_Log_On (l_module_name, G_LEVEL_STATEMENT);
1042 
1043 BEGIN
1044 
1045 
1046    IF (is_debug_procedure_on) THEN
1047        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'Begin(+)');
1048    END IF;
1049 
1050 SAVEPOINT trx_quotes_validate;
1051 
1052 
1053 l_api_version := p_api_version ;
1054 l_init_msg_list := p_init_msg_list ;
1055 l_msg_data :=  x_msg_data;
1056 l_msg_count := x_msg_count ;
1057 lp_qtev_tbl :=  p_qtev_tbl;
1058 lx_qtev_tbl :=  p_qtev_tbl;
1059 
1060    IF (is_debug_statement_on) THEN
1061        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
1062        'before call to okl_qte_pvt.validate_row :'||l_return_status);
1063    END IF;
1064 
1065 
1066 okl_qte_pvt.validate_row(
1067                             p_api_version
1068                            ,p_init_msg_list
1069                            ,x_return_status
1070                            ,x_msg_count
1071                            ,x_msg_data
1072                            ,lp_qtev_tbl);
1073 
1074    IF (is_debug_statement_on) THEN
1075        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_STATEMENT,L_MODULE_NAME,
1076        'after call to okl_qte_pvt.validate_row :'||l_return_status);
1077    END IF;
1078 
1079 IF ( l_return_status = FND_API.G_RET_STS_ERROR )  THEN
1080 	RAISE FND_API.G_EXC_ERROR;
1081 ELSIF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR ) THEN
1082 	RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1083 END IF;
1084 
1085 --Copy value of OUT variable in the IN record type
1086 lp_qtev_tbl := lx_qtev_tbl;
1087 
1088 --Assign value to OUT variables
1089 x_msg_count := l_msg_count ;
1090 x_msg_data := l_msg_data ;
1091 
1092 x_return_status := l_return_status ;
1093 
1094    IF (is_debug_procedure_on) THEN
1095        OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_PROCEDURE,L_MODULE_NAME,'End(-)');
1096    END IF;
1097 
1098 EXCEPTION
1099 
1100     WHEN FND_API.G_EXC_ERROR THEN
1101         IF (is_debug_exception_on) THEN
1102 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'USER DEFINED');
1103 	END IF;
1104       ROLLBACK TO trx_quotes_validate;
1105       x_return_status := FND_API.G_RET_STS_ERROR;
1106       x_msg_count := l_msg_count ;
1107       x_msg_data := l_msg_data ;
1108       FND_MSG_PUB.count_and_get(
1109              p_count   => x_msg_count
1110             ,p_data    => x_msg_data);
1111     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1112 
1113 	IF (is_debug_exception_on) THEN
1114 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'UNEXPECTED');
1115 	END IF;
1116 
1117       ROLLBACK TO trx_quotes_validate;
1118       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1119       x_msg_count := l_msg_count ;
1120       x_msg_data := l_msg_data ;
1121       FND_MSG_PUB.count_and_get(
1122              p_count   => x_msg_count
1123             ,p_data    => x_msg_data);
1124     WHEN OTHERS THEN
1125     	IF (is_debug_exception_on) THEN
1126 	    OKL_DEBUG_PUB.LOG_DEBUG(G_LEVEL_EXCEPTION,L_MODULE_NAME, 'EXCEPTION :'||'OTHERS, SQLCODE: '
1127 		   || sqlcode || ' , SQLERRM : ' || sqlerrm);
1128 	END IF;
1129       ROLLBACK TO trx_quotes_validate;
1130       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1131       x_msg_count := l_msg_count ;
1132       x_msg_data := l_msg_data ;
1133       FND_MSG_PUB.ADD_EXC_MSG('OKL_TRX_QUOTES_PUB','validate_trx_quotes');
1134       FND_MSG_PUB.count_and_get(
1135              p_count   => x_msg_count
1136             ,p_data    => x_msg_data);
1137 END validate_trx_quotes;
1138 
1139 END OKL_TRX_QUOTES_PUB;