DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_AM_TERMNT_QUOTE_PUB

Source


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