71:
72:
73:
74: -- Initializing Global Debug Variable.
75: aso_debug_pub.g_debug_flag := NVL(FND_PROFILE.VALUE('ASO_ENABLE_DEBUG'),'N');
76:
77: -- Initialize API return status to SUCCESS
78: x_return_status := FND_API.G_RET_STS_SUCCESS;
79:
76:
77: -- Initialize API return status to SUCCESS
78: x_return_status := FND_API.G_RET_STS_SUCCESS;
79:
80: IF aso_debug_pub.g_debug_flag = 'Y' THEN
81: aso_debug_pub.add('Credit Check - Begin...', 1, 'Y');
82: END IF;
83:
84:
77: -- Initialize API return status to SUCCESS
78: x_return_status := FND_API.G_RET_STS_SUCCESS;
79:
80: IF aso_debug_pub.g_debug_flag = 'Y' THEN
81: aso_debug_pub.add('Credit Check - Begin...', 1, 'Y');
82: END IF;
83:
84:
85: --
106: -- ******************************************************************
107:
108: l_credit_check_rule_id := NVL(FND_PROFILE.VALUE('ASO_CREDIT_CHECK_RULE'),0);
109:
110: IF aso_debug_pub.g_debug_flag = 'Y' THEN
111: aso_debug_pub.add('Credit Check Rule Profile Value : '||NVL(to_char(l_credit_check_rule_id),'null'), 1, 'Y');
112: END IF;
113:
114: IF NVL(l_credit_check_rule_id,0) > 0 THEN
107:
108: l_credit_check_rule_id := NVL(FND_PROFILE.VALUE('ASO_CREDIT_CHECK_RULE'),0);
109:
110: IF aso_debug_pub.g_debug_flag = 'Y' THEN
111: aso_debug_pub.add('Credit Check Rule Profile Value : '||NVL(to_char(l_credit_check_rule_id),'null'), 1, 'Y');
112: END IF;
113:
114: IF NVL(l_credit_check_rule_id,0) > 0 THEN
115:
115:
116: -- ******************************************************************
117: -- Validate Required Information
118: -- ******************************************************************
119: IF aso_debug_pub.g_debug_flag = 'Y' THEN
120: aso_debug_pub.add('Quote Header Id : '||NVL(to_char(p_qte_header_rec.quote_header_id),'null'), 1, 'Y');
121: END IF;
122:
123: IF p_qte_header_rec.quote_header_id IS NOT NULL AND
116: -- ******************************************************************
117: -- Validate Required Information
118: -- ******************************************************************
119: IF aso_debug_pub.g_debug_flag = 'Y' THEN
120: aso_debug_pub.add('Quote Header Id : '||NVL(to_char(p_qte_header_rec.quote_header_id),'null'), 1, 'Y');
121: END IF;
122:
123: IF p_qte_header_rec.quote_header_id IS NOT NULL AND
124: p_qte_header_rec.quote_header_id <> FND_API.G_MISS_NUM
122:
123: IF p_qte_header_rec.quote_header_id IS NOT NULL AND
124: p_qte_header_rec.quote_header_id <> FND_API.G_MISS_NUM
125: THEN
126: IF aso_debug_pub.g_debug_flag = 'Y' THEN
127: aso_debug_pub.add(' Credit Check Lock Exists or not... ', 1, 'Y');
128: END IF;
129:
130: -- ******************************************************************
123: IF p_qte_header_rec.quote_header_id IS NOT NULL AND
124: p_qte_header_rec.quote_header_id <> FND_API.G_MISS_NUM
125: THEN
126: IF aso_debug_pub.g_debug_flag = 'Y' THEN
127: aso_debug_pub.add(' Credit Check Lock Exists or not... ', 1, 'Y');
128: END IF;
129:
130: -- ******************************************************************
131: -- Validate For any locks on the quote.
133:
134: ASO_CONC_REQ_INT.Lock_Exists(
135: p_quote_header_id => p_qte_header_rec.quote_header_id,
136: x_status => x_status);
137: IF aso_debug_pub.g_debug_flag = 'Y' THEN
138: aso_debug_pub.add(' Credit Check Lock Exists : x_status '||NVL(x_status,'null'), 1, 'Y');
139: END IF;
140:
141: IF (x_status = FND_API.G_TRUE) THEN
134: ASO_CONC_REQ_INT.Lock_Exists(
135: p_quote_header_id => p_qte_header_rec.quote_header_id,
136: x_status => x_status);
137: IF aso_debug_pub.g_debug_flag = 'Y' THEN
138: aso_debug_pub.add(' Credit Check Lock Exists : x_status '||NVL(x_status,'null'), 1, 'Y');
139: END IF;
140:
141: IF (x_status = FND_API.G_TRUE) THEN
142: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
148:
149: -- get quote information
150:
151: BEGIN
152: IF aso_debug_pub.g_debug_flag = 'Y' THEN
153: aso_debug_pub.add('Before ASO_UTILITY_PVT.Query_Header_Row... ', 1, 'Y');
154: END IF;
155:
156: l_qte_header_rec := ASO_UTILITY_PVT.Query_Header_Row(p_qte_header_rec.quote_header_id);
149: -- get quote information
150:
151: BEGIN
152: IF aso_debug_pub.g_debug_flag = 'Y' THEN
153: aso_debug_pub.add('Before ASO_UTILITY_PVT.Query_Header_Row... ', 1, 'Y');
154: END IF;
155:
156: l_qte_header_rec := ASO_UTILITY_PVT.Query_Header_Row(p_qte_header_rec.quote_header_id);
157: IF aso_debug_pub.g_debug_flag = 'Y' THEN
153: aso_debug_pub.add('Before ASO_UTILITY_PVT.Query_Header_Row... ', 1, 'Y');
154: END IF;
155:
156: l_qte_header_rec := ASO_UTILITY_PVT.Query_Header_Row(p_qte_header_rec.quote_header_id);
157: IF aso_debug_pub.g_debug_flag = 'Y' THEN
158: aso_debug_pub.add('After ASO_UTILITY_PVT.Query_Header_Row... ', 1, 'Y');
159: END IF;
160: EXCEPTION
161: WHEN OTHERS THEN
154: END IF;
155:
156: l_qte_header_rec := ASO_UTILITY_PVT.Query_Header_Row(p_qte_header_rec.quote_header_id);
157: IF aso_debug_pub.g_debug_flag = 'Y' THEN
158: aso_debug_pub.add('After ASO_UTILITY_PVT.Query_Header_Row... ', 1, 'Y');
159: END IF;
160: EXCEPTION
161: WHEN OTHERS THEN
162: IF aso_debug_pub.g_debug_flag = 'Y' THEN
158: aso_debug_pub.add('After ASO_UTILITY_PVT.Query_Header_Row... ', 1, 'Y');
159: END IF;
160: EXCEPTION
161: WHEN OTHERS THEN
162: IF aso_debug_pub.g_debug_flag = 'Y' THEN
163: aso_debug_pub.add('Exception ASO_UTILITY_PVT.Query_Header_Row... ', 1, 'Y');
164: END IF;
165: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
166: FND_MESSAGE.Set_Name('ASO', 'ASO_API_INVALID_ID');
159: END IF;
160: EXCEPTION
161: WHEN OTHERS THEN
162: IF aso_debug_pub.g_debug_flag = 'Y' THEN
163: aso_debug_pub.add('Exception ASO_UTILITY_PVT.Query_Header_Row... ', 1, 'Y');
164: END IF;
165: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
166: FND_MESSAGE.Set_Name('ASO', 'ASO_API_INVALID_ID');
167: FND_MESSAGE.Set_Token('COLUMN', 'Quote_header_id', FALSE);
170: END IF;
171: raise FND_API.G_EXC_ERROR;
172: END;
173: ELSE
174: IF aso_debug_pub.g_debug_flag = 'Y' THEN
175: aso_debug_pub.add('before - p_qte_header_rec is NULL... ', 1, 'Y');
176: END IF;
177:
178: l_qte_header_rec := p_qte_header_rec;
171: raise FND_API.G_EXC_ERROR;
172: END;
173: ELSE
174: IF aso_debug_pub.g_debug_flag = 'Y' THEN
175: aso_debug_pub.add('before - p_qte_header_rec is NULL... ', 1, 'Y');
176: END IF;
177:
178: l_qte_header_rec := p_qte_header_rec;
179:
176: END IF;
177:
178: l_qte_header_rec := p_qte_header_rec;
179:
180: IF aso_debug_pub.g_debug_flag = 'Y' THEN
181: aso_debug_pub.add('After - p_qte_header_rec is NULL... ', 1, 'Y');
182: END IF;
183: END IF;
184:
177:
178: l_qte_header_rec := p_qte_header_rec;
179:
180: IF aso_debug_pub.g_debug_flag = 'Y' THEN
181: aso_debug_pub.add('After - p_qte_header_rec is NULL... ', 1, 'Y');
182: END IF;
183: END IF;
184:
185: IF aso_debug_pub.g_debug_flag = 'Y' THEN
181: aso_debug_pub.add('After - p_qte_header_rec is NULL... ', 1, 'Y');
182: END IF;
183: END IF;
184:
185: IF aso_debug_pub.g_debug_flag = 'Y' THEN
186: aso_debug_pub.add('Checking for all the required values... ', 1, 'Y');
187: aso_debug_pub.add('Org Id :'||NVL(to_char(l_qte_header_rec.org_id),'null'), 1, 'Y');
188: aso_debug_pub.add('Currency Code:'||NVL(l_qte_header_rec.currency_code,'null'), 1, 'Y');
189: aso_debug_pub.add('Invoice To Party Site Id :'||NVL(to_char(l_qte_header_rec.invoice_to_party_site_id),'null'), 1, 'Y');
182: END IF;
183: END IF;
184:
185: IF aso_debug_pub.g_debug_flag = 'Y' THEN
186: aso_debug_pub.add('Checking for all the required values... ', 1, 'Y');
187: aso_debug_pub.add('Org Id :'||NVL(to_char(l_qte_header_rec.org_id),'null'), 1, 'Y');
188: aso_debug_pub.add('Currency Code:'||NVL(l_qte_header_rec.currency_code,'null'), 1, 'Y');
189: aso_debug_pub.add('Invoice To Party Site Id :'||NVL(to_char(l_qte_header_rec.invoice_to_party_site_id),'null'), 1, 'Y');
190: aso_debug_pub.add('Invoice To Cust Account Id :'||NVL(to_char(l_qte_header_rec.invoice_to_cust_account_id),'null'), 1, 'Y');
183: END IF;
184:
185: IF aso_debug_pub.g_debug_flag = 'Y' THEN
186: aso_debug_pub.add('Checking for all the required values... ', 1, 'Y');
187: aso_debug_pub.add('Org Id :'||NVL(to_char(l_qte_header_rec.org_id),'null'), 1, 'Y');
188: aso_debug_pub.add('Currency Code:'||NVL(l_qte_header_rec.currency_code,'null'), 1, 'Y');
189: aso_debug_pub.add('Invoice To Party Site Id :'||NVL(to_char(l_qte_header_rec.invoice_to_party_site_id),'null'), 1, 'Y');
190: aso_debug_pub.add('Invoice To Cust Account Id :'||NVL(to_char(l_qte_header_rec.invoice_to_cust_account_id),'null'), 1, 'Y');
191: END IF;
184:
185: IF aso_debug_pub.g_debug_flag = 'Y' THEN
186: aso_debug_pub.add('Checking for all the required values... ', 1, 'Y');
187: aso_debug_pub.add('Org Id :'||NVL(to_char(l_qte_header_rec.org_id),'null'), 1, 'Y');
188: aso_debug_pub.add('Currency Code:'||NVL(l_qte_header_rec.currency_code,'null'), 1, 'Y');
189: aso_debug_pub.add('Invoice To Party Site Id :'||NVL(to_char(l_qte_header_rec.invoice_to_party_site_id),'null'), 1, 'Y');
190: aso_debug_pub.add('Invoice To Cust Account Id :'||NVL(to_char(l_qte_header_rec.invoice_to_cust_account_id),'null'), 1, 'Y');
191: END IF;
192:
185: IF aso_debug_pub.g_debug_flag = 'Y' THEN
186: aso_debug_pub.add('Checking for all the required values... ', 1, 'Y');
187: aso_debug_pub.add('Org Id :'||NVL(to_char(l_qte_header_rec.org_id),'null'), 1, 'Y');
188: aso_debug_pub.add('Currency Code:'||NVL(l_qte_header_rec.currency_code,'null'), 1, 'Y');
189: aso_debug_pub.add('Invoice To Party Site Id :'||NVL(to_char(l_qte_header_rec.invoice_to_party_site_id),'null'), 1, 'Y');
190: aso_debug_pub.add('Invoice To Cust Account Id :'||NVL(to_char(l_qte_header_rec.invoice_to_cust_account_id),'null'), 1, 'Y');
191: END IF;
192:
193: -- Check if all the required values are available.
186: aso_debug_pub.add('Checking for all the required values... ', 1, 'Y');
187: aso_debug_pub.add('Org Id :'||NVL(to_char(l_qte_header_rec.org_id),'null'), 1, 'Y');
188: aso_debug_pub.add('Currency Code:'||NVL(l_qte_header_rec.currency_code,'null'), 1, 'Y');
189: aso_debug_pub.add('Invoice To Party Site Id :'||NVL(to_char(l_qte_header_rec.invoice_to_party_site_id),'null'), 1, 'Y');
190: aso_debug_pub.add('Invoice To Cust Account Id :'||NVL(to_char(l_qte_header_rec.invoice_to_cust_account_id),'null'), 1, 'Y');
191: END IF;
192:
193: -- Check if all the required values are available.
194:
202: NVL(l_qte_header_rec.invoice_to_cust_account_id,l_qte_header_rec.cust_account_id) <> FND_API.G_MISS_NUM
203: THEN
204: l_set_of_books_id := OE_PROFILE.VALUE('OE_SET_OF_BOOKS_ID',l_qte_header_rec.org_id);
205:
206: IF aso_debug_pub.g_debug_flag = 'Y' THEN
207: aso_debug_pub.add('Set Of books ID:'||NVL(to_char(l_set_of_books_id),'null'), 1, 'Y');
208: END IF;
209:
210: IF l_set_of_books_id IS NOT NULL THEN
203: THEN
204: l_set_of_books_id := OE_PROFILE.VALUE('OE_SET_OF_BOOKS_ID',l_qte_header_rec.org_id);
205:
206: IF aso_debug_pub.g_debug_flag = 'Y' THEN
207: aso_debug_pub.add('Set Of books ID:'||NVL(to_char(l_set_of_books_id),'null'), 1, 'Y');
208: END IF;
209:
210: IF l_set_of_books_id IS NOT NULL THEN
211:
210: IF l_set_of_books_id IS NOT NULL THEN
211:
212: -- get functional currency
213:
214: IF aso_debug_pub.g_debug_flag = 'Y' THEN
215: aso_debug_pub.add('Before Fetching Functional Currency', 1, 'Y');
216: END IF;
217:
218: OPEN C_functional_currency(l_set_of_books_id);
211:
212: -- get functional currency
213:
214: IF aso_debug_pub.g_debug_flag = 'Y' THEN
215: aso_debug_pub.add('Before Fetching Functional Currency', 1, 'Y');
216: END IF;
217:
218: OPEN C_functional_currency(l_set_of_books_id);
219: FETCH C_functional_currency INTO l_functional_currency;
217:
218: OPEN C_functional_currency(l_set_of_books_id);
219: FETCH C_functional_currency INTO l_functional_currency;
220:
221: IF aso_debug_pub.g_debug_flag = 'Y' THEN
222: aso_debug_pub.add('After Fetching Functional Currency :'||NVL(l_functional_currency,'null'), 1, 'Y');
223: END IF;
224:
225:
218: OPEN C_functional_currency(l_set_of_books_id);
219: FETCH C_functional_currency INTO l_functional_currency;
220:
221: IF aso_debug_pub.g_debug_flag = 'Y' THEN
222: aso_debug_pub.add('After Fetching Functional Currency :'||NVL(l_functional_currency,'null'), 1, 'Y');
223: END IF;
224:
225:
226: IF ( C_functional_currency%NOTFOUND) Then
241: END IF;
242:
243: -- Get Bill to Site Use Id.
244:
245: IF aso_debug_pub.g_debug_flag = 'Y' THEN
246: aso_debug_pub.add('Before Bill To Site Use Id Fetch', 1, 'Y');
247: END IF;
248:
249:
242:
243: -- Get Bill to Site Use Id.
244:
245: IF aso_debug_pub.g_debug_flag = 'Y' THEN
246: aso_debug_pub.add('Before Bill To Site Use Id Fetch', 1, 'Y');
247: END IF;
248:
249:
250: ASO_MAP_QUOTE_ORDER_INT.GET_ACCT_SITE_USES (
254: ,x_return_status => l_return_status
255: ,x_site_use_id => l_site_use_id
256: );
257:
258: IF aso_debug_pub.g_debug_flag = 'Y' THEN
259: aso_debug_pub.add('After Bill To Site Use Id Fetch :'||NVL(to_char(l_site_use_id),'null'), 1, 'Y');
260: aso_debug_pub.add('After Bill To Site Use Id Fetch l_return_status :'||NVL(l_return_status,' '), 1, 'Y');
261: END IF;
262:
255: ,x_site_use_id => l_site_use_id
256: );
257:
258: IF aso_debug_pub.g_debug_flag = 'Y' THEN
259: aso_debug_pub.add('After Bill To Site Use Id Fetch :'||NVL(to_char(l_site_use_id),'null'), 1, 'Y');
260: aso_debug_pub.add('After Bill To Site Use Id Fetch l_return_status :'||NVL(l_return_status,' '), 1, 'Y');
261: END IF;
262:
263: IF l_return_status <> FND_API.G_RET_STS_SUCCESS OR
256: );
257:
258: IF aso_debug_pub.g_debug_flag = 'Y' THEN
259: aso_debug_pub.add('After Bill To Site Use Id Fetch :'||NVL(to_char(l_site_use_id),'null'), 1, 'Y');
260: aso_debug_pub.add('After Bill To Site Use Id Fetch l_return_status :'||NVL(l_return_status,' '), 1, 'Y');
261: END IF;
262:
263: IF l_return_status <> FND_API.G_RET_STS_SUCCESS OR
264: NVL(l_site_use_id ,FND_API.G_MISS_NUM) = FND_API.G_MISS_NUM
271: END IF;
272:
273: -- Transaction Amount Calculation.
274:
275: IF aso_debug_pub.g_debug_flag = 'Y' THEN
276: aso_debug_pub.add('Before Credit Check Flags Fetch', 1, 'Y');
277: END IF;
278:
279: OPEN C_credit_check_flag(l_credit_check_rule_id);
272:
273: -- Transaction Amount Calculation.
274:
275: IF aso_debug_pub.g_debug_flag = 'Y' THEN
276: aso_debug_pub.add('Before Credit Check Flags Fetch', 1, 'Y');
277: END IF;
278:
279: OPEN C_credit_check_flag(l_credit_check_rule_id);
280: FETCH C_credit_check_flag INTO l_incl_freight_charges_flag,l_include_tax_flag;
278:
279: OPEN C_credit_check_flag(l_credit_check_rule_id);
280: FETCH C_credit_check_flag INTO l_incl_freight_charges_flag,l_include_tax_flag;
281:
282: IF aso_debug_pub.g_debug_flag = 'Y' THEN
283: aso_debug_pub.add('After Credit Check Flag Fetch... ', 1, 'Y');
284: aso_debug_pub.add('Include Tax Flag : '||NVL(l_include_tax_flag,'null'), 1, 'Y');
285: aso_debug_pub.add('Include Freight Charges Flag : '||NVL(l_incl_freight_charges_flag,'null'), 1, 'Y');
286: END IF;
279: OPEN C_credit_check_flag(l_credit_check_rule_id);
280: FETCH C_credit_check_flag INTO l_incl_freight_charges_flag,l_include_tax_flag;
281:
282: IF aso_debug_pub.g_debug_flag = 'Y' THEN
283: aso_debug_pub.add('After Credit Check Flag Fetch... ', 1, 'Y');
284: aso_debug_pub.add('Include Tax Flag : '||NVL(l_include_tax_flag,'null'), 1, 'Y');
285: aso_debug_pub.add('Include Freight Charges Flag : '||NVL(l_incl_freight_charges_flag,'null'), 1, 'Y');
286: END IF;
287:
280: FETCH C_credit_check_flag INTO l_incl_freight_charges_flag,l_include_tax_flag;
281:
282: IF aso_debug_pub.g_debug_flag = 'Y' THEN
283: aso_debug_pub.add('After Credit Check Flag Fetch... ', 1, 'Y');
284: aso_debug_pub.add('Include Tax Flag : '||NVL(l_include_tax_flag,'null'), 1, 'Y');
285: aso_debug_pub.add('Include Freight Charges Flag : '||NVL(l_incl_freight_charges_flag,'null'), 1, 'Y');
286: END IF;
287:
288: IF ( C_credit_check_flag%NOTFOUND) Then
281:
282: IF aso_debug_pub.g_debug_flag = 'Y' THEN
283: aso_debug_pub.add('After Credit Check Flag Fetch... ', 1, 'Y');
284: aso_debug_pub.add('Include Tax Flag : '||NVL(l_include_tax_flag,'null'), 1, 'Y');
285: aso_debug_pub.add('Include Freight Charges Flag : '||NVL(l_incl_freight_charges_flag,'null'), 1, 'Y');
286: END IF;
287:
288: IF ( C_credit_check_flag%NOTFOUND) Then
289: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
294: END IF;
295:
296: CLOSE C_credit_check_flag;
297:
298: IF aso_debug_pub.g_debug_flag = 'Y' THEN
299: aso_debug_pub.add('Before Transactional Amount Calulation', 1, 'Y');
300: aso_debug_pub.add('Total Quote Price :'||NVL(to_char(l_qte_header_rec.total_quote_price),'null'), 1, 'Y');
301: aso_debug_pub.add('Total Tax :'||NVL(to_char(l_qte_header_rec.total_tax),'null'), 1, 'Y');
302: aso_debug_pub.add('Total Freight Charges :'||NVL(to_char(l_qte_header_rec.total_shipping_charge),'null'), 1, 'Y');
295:
296: CLOSE C_credit_check_flag;
297:
298: IF aso_debug_pub.g_debug_flag = 'Y' THEN
299: aso_debug_pub.add('Before Transactional Amount Calulation', 1, 'Y');
300: aso_debug_pub.add('Total Quote Price :'||NVL(to_char(l_qte_header_rec.total_quote_price),'null'), 1, 'Y');
301: aso_debug_pub.add('Total Tax :'||NVL(to_char(l_qte_header_rec.total_tax),'null'), 1, 'Y');
302: aso_debug_pub.add('Total Freight Charges :'||NVL(to_char(l_qte_header_rec.total_shipping_charge),'null'), 1, 'Y');
303: END IF;
296: CLOSE C_credit_check_flag;
297:
298: IF aso_debug_pub.g_debug_flag = 'Y' THEN
299: aso_debug_pub.add('Before Transactional Amount Calulation', 1, 'Y');
300: aso_debug_pub.add('Total Quote Price :'||NVL(to_char(l_qte_header_rec.total_quote_price),'null'), 1, 'Y');
301: aso_debug_pub.add('Total Tax :'||NVL(to_char(l_qte_header_rec.total_tax),'null'), 1, 'Y');
302: aso_debug_pub.add('Total Freight Charges :'||NVL(to_char(l_qte_header_rec.total_shipping_charge),'null'), 1, 'Y');
303: END IF;
304:
297:
298: IF aso_debug_pub.g_debug_flag = 'Y' THEN
299: aso_debug_pub.add('Before Transactional Amount Calulation', 1, 'Y');
300: aso_debug_pub.add('Total Quote Price :'||NVL(to_char(l_qte_header_rec.total_quote_price),'null'), 1, 'Y');
301: aso_debug_pub.add('Total Tax :'||NVL(to_char(l_qte_header_rec.total_tax),'null'), 1, 'Y');
302: aso_debug_pub.add('Total Freight Charges :'||NVL(to_char(l_qte_header_rec.total_shipping_charge),'null'), 1, 'Y');
303: END IF;
304:
305: IF NVL(l_include_tax_flag,'N') = 'N' THEN
298: IF aso_debug_pub.g_debug_flag = 'Y' THEN
299: aso_debug_pub.add('Before Transactional Amount Calulation', 1, 'Y');
300: aso_debug_pub.add('Total Quote Price :'||NVL(to_char(l_qte_header_rec.total_quote_price),'null'), 1, 'Y');
301: aso_debug_pub.add('Total Tax :'||NVL(to_char(l_qte_header_rec.total_tax),'null'), 1, 'Y');
302: aso_debug_pub.add('Total Freight Charges :'||NVL(to_char(l_qte_header_rec.total_shipping_charge),'null'), 1, 'Y');
303: END IF;
304:
305: IF NVL(l_include_tax_flag,'N') = 'N' THEN
306: l_transactional_amount := NVL(l_qte_header_rec.total_quote_price,0) - NVL(l_qte_header_rec.total_tax,0);
310:
311: IF NVL(l_incl_freight_charges_flag,'N') = 'N' THEN
312: l_transactional_amount := NVL(l_transactional_amount,0) - NVL(l_qte_header_rec.total_shipping_charge,0);
313: END IF;
314: IF aso_debug_pub.g_debug_flag = 'Y' THEN
315: aso_debug_pub.add('After Transactional Amount Calulation : '||NVL(to_char(l_transactional_amount),'null'), 1, 'Y');
316:
317: aso_debug_pub.add('Before OM Public API call', 1, 'Y');
318: END IF;
311: IF NVL(l_incl_freight_charges_flag,'N') = 'N' THEN
312: l_transactional_amount := NVL(l_transactional_amount,0) - NVL(l_qte_header_rec.total_shipping_charge,0);
313: END IF;
314: IF aso_debug_pub.g_debug_flag = 'Y' THEN
315: aso_debug_pub.add('After Transactional Amount Calulation : '||NVL(to_char(l_transactional_amount),'null'), 1, 'Y');
316:
317: aso_debug_pub.add('Before OM Public API call', 1, 'Y');
318: END IF;
319:
313: END IF;
314: IF aso_debug_pub.g_debug_flag = 'Y' THEN
315: aso_debug_pub.add('After Transactional Amount Calulation : '||NVL(to_char(l_transactional_amount),'null'), 1, 'Y');
316:
317: aso_debug_pub.add('Before OM Public API call', 1, 'Y');
318: END IF;
319:
320: -- calling the om api to do internal credit check.
321: OE_EXTERNAL_CREDIT_PUB.CHECK_EXTERNAL_CREDIT
334: p_credit_check_rule_id => l_credit_check_rule_id,
335: p_org_id => l_qte_header_rec.org_id
336: );
337:
338: IF aso_debug_pub.g_debug_flag = 'Y' THEN
339: aso_debug_pub.add('After OM Public API call - return status :'||x_return_status, 1, 'Y');
340: aso_debug_pub.add('After OM Public API call - msg count :'||nvl(to_char(x_msg_count),'0'), 1, 'Y');
341: aso_debug_pub.add('After OM Public API call - msg data :'||nvl(x_msg_data,'null'), 1, 'Y');
342: END IF;
335: p_org_id => l_qte_header_rec.org_id
336: );
337:
338: IF aso_debug_pub.g_debug_flag = 'Y' THEN
339: aso_debug_pub.add('After OM Public API call - return status :'||x_return_status, 1, 'Y');
340: aso_debug_pub.add('After OM Public API call - msg count :'||nvl(to_char(x_msg_count),'0'), 1, 'Y');
341: aso_debug_pub.add('After OM Public API call - msg data :'||nvl(x_msg_data,'null'), 1, 'Y');
342: END IF;
343: -- Check return status from the above procedure call
336: );
337:
338: IF aso_debug_pub.g_debug_flag = 'Y' THEN
339: aso_debug_pub.add('After OM Public API call - return status :'||x_return_status, 1, 'Y');
340: aso_debug_pub.add('After OM Public API call - msg count :'||nvl(to_char(x_msg_count),'0'), 1, 'Y');
341: aso_debug_pub.add('After OM Public API call - msg data :'||nvl(x_msg_data,'null'), 1, 'Y');
342: END IF;
343: -- Check return status from the above procedure call
344: IF x_return_status = FND_API.G_RET_STS_ERROR then
337:
338: IF aso_debug_pub.g_debug_flag = 'Y' THEN
339: aso_debug_pub.add('After OM Public API call - return status :'||x_return_status, 1, 'Y');
340: aso_debug_pub.add('After OM Public API call - msg count :'||nvl(to_char(x_msg_count),'0'), 1, 'Y');
341: aso_debug_pub.add('After OM Public API call - msg data :'||nvl(x_msg_data,'null'), 1, 'Y');
342: END IF;
343: -- Check return status from the above procedure call
344: IF x_return_status = FND_API.G_RET_STS_ERROR then
345: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
348: , p_data => x_msg_data);
349: for k in 1 .. x_msg_count loop
350: x_msg_data := oe_msg_pub.get( p_msg_index => k,
351: p_encoded => 'F');
352: IF aso_debug_pub.g_debug_flag = 'Y' THEN
353: aso_debug_pub.add('k='||k||'.OM error Message :'||nvl(x_msg_data,'null'), 1, 'Y');
354: END IF;
355: FND_MESSAGE.Set_Name('ASO', 'ASO_OM_ERROR');
356: FND_MESSAGE.Set_Token('MSG_TXT', x_msg_data, FALSE);
349: for k in 1 .. x_msg_count loop
350: x_msg_data := oe_msg_pub.get( p_msg_index => k,
351: p_encoded => 'F');
352: IF aso_debug_pub.g_debug_flag = 'Y' THEN
353: aso_debug_pub.add('k='||k||'.OM error Message :'||nvl(x_msg_data,'null'), 1, 'Y');
354: END IF;
355: FND_MESSAGE.Set_Name('ASO', 'ASO_OM_ERROR');
356: FND_MESSAGE.Set_Token('MSG_TXT', x_msg_data, FALSE);
357: FND_MSG_PUB.ADD;