57: BEGIN
58: IF G_debug_flag = 'Y' THEN
59: oe_debug_pub.add('In Release_Order_CC_Hold');
60: END IF;
61: l_return_status := FND_API.G_RET_STS_SUCCESS;
62: IF G_debug_flag = 'Y' THEN
63: oe_debug_pub.add('Check if Holds exist to release ');
64: END IF;
65:
84: oe_debug_pub.add('Out Check_Holds ');
85: oe_debug_pub.add('l_return_status = '|| l_return_status );
86: oe_debug_pub.add('l_hold_result = '|| l_hold_result );
87: END IF;
88: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
89: RAISE FND_API.G_EXC_ERROR;
90: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
91: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
92: END IF;
85: oe_debug_pub.add('l_return_status = '|| l_return_status );
86: oe_debug_pub.add('l_hold_result = '|| l_hold_result );
87: END IF;
88: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
89: RAISE FND_API.G_EXC_ERROR;
90: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
91: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
92: END IF;
93: -- releasing the Hold
86: oe_debug_pub.add('l_hold_result = '|| l_hold_result );
87: END IF;
88: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
89: RAISE FND_API.G_EXC_ERROR;
90: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
91: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
92: END IF;
93: -- releasing the Hold
94: IF l_hold_result = FND_API.G_TRUE THEN
87: END IF;
88: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
89: RAISE FND_API.G_EXC_ERROR;
90: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
91: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
92: END IF;
93: -- releasing the Hold
94: IF l_hold_result = FND_API.G_TRUE THEN
95: l_hold_source_rec.hold_id := 1; -- Credit Checking hold
90: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
91: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
92: END IF;
93: -- releasing the Hold
94: IF l_hold_result = FND_API.G_TRUE THEN
95: l_hold_source_rec.hold_id := 1; -- Credit Checking hold
96: l_hold_source_rec.HOLD_ENTITY_CODE := 'O';
97: l_hold_source_rec.HOLD_ENTITY_ID := p_header_id;
98: --9865613 l_hold_release_rec.release_reason_code := 'AR_APPROVE';
109: x_msg_count => l_msg_count ,
110: x_msg_data => l_msg_data ,
111: x_return_status => l_return_status
112: );
113: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
114: RAISE FND_API.G_EXC_ERROR;
115: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
116: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
117: ELSIF l_return_status =FND_API.G_RET_STS_SUCCESS THEN
110: x_msg_data => l_msg_data ,
111: x_return_status => l_return_status
112: );
113: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
114: RAISE FND_API.G_EXC_ERROR;
115: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
116: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
117: ELSIF l_return_status =FND_API.G_RET_STS_SUCCESS THEN
118: IF G_debug_flag = 'Y' THEN
111: x_return_status => l_return_status
112: );
113: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
114: RAISE FND_API.G_EXC_ERROR;
115: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
116: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
117: ELSIF l_return_status =FND_API.G_RET_STS_SUCCESS THEN
118: IF G_debug_flag = 'Y' THEN
119: oe_debug_pub.add('Released credit check hold on Header ID:'|| p_header_id);
112: );
113: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
114: RAISE FND_API.G_EXC_ERROR;
115: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
116: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
117: ELSIF l_return_status =FND_API.G_RET_STS_SUCCESS THEN
118: IF G_debug_flag = 'Y' THEN
119: oe_debug_pub.add('Released credit check hold on Header ID:'|| p_header_id);
120: END IF;
113: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
114: RAISE FND_API.G_EXC_ERROR;
115: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
116: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
117: ELSIF l_return_status =FND_API.G_RET_STS_SUCCESS THEN
118: IF G_debug_flag = 'Y' THEN
119: oe_debug_pub.add('Released credit check hold on Header ID:'|| p_header_id);
120: END IF;
121: END IF;
173: oe_debug_pub.add(' In Release_Line_CC_Hold');
174: oe_debug_pub.add('Processing line ID = '|| p_line_id );
175: END IF;
176:
177: l_return_status := FND_API.G_RET_STS_SUCCESS;
178:
179:
180: --checking whether HOLD exists
181: IF G_debug_flag = 'Y'
204: OE_DEBUG_PUB.ADD('l_return_status :'||l_return_status);
205: OE_DEBUG_PUB.ADD('l_hold_result :'||l_hold_result);
206: END IF;
207:
208: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
209: RAISE FND_API.G_EXC_ERROR;
210: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
211: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
212: END IF;
205: OE_DEBUG_PUB.ADD('l_hold_result :'||l_hold_result);
206: END IF;
207:
208: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
209: RAISE FND_API.G_EXC_ERROR;
210: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
211: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
212: END IF;
213: --end check hold exits
206: END IF;
207:
208: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
209: RAISE FND_API.G_EXC_ERROR;
210: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
211: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
212: END IF;
213: --end check hold exits
214:
207:
208: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
209: RAISE FND_API.G_EXC_ERROR;
210: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
211: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
212: END IF;
213: --end check hold exits
214:
215: IF l_hold_result = FND_API.G_TRUE THEN
211: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
212: END IF;
213: --end check hold exits
214:
215: IF l_hold_result = FND_API.G_TRUE THEN
216: IF NVL(p_calling_action,'BOOKING') <> 'AUTO HOLD' THEN
217: l_hold_source_rec.hold_id := 1; -- Credit Checking hold
218: l_hold_source_rec.HOLD_ENTITY_CODE := 'O';
219: l_hold_source_rec.HOLD_ENTITY_ID := p_header_id;
232: , x_msg_data => l_msg_data
233: , x_return_status => l_return_status
234: );
235:
236: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
237: IF NVL(G_hdr_hold_released,'N') = 'N'
238: THEN
239: l_cc_result_out := 'HDR_HOLD' ;
240: ELSE
237: IF NVL(G_hdr_hold_released,'N') = 'N'
238: THEN
239: l_cc_result_out := 'HDR_HOLD' ;
240: ELSE
241: RAISE FND_API.G_EXC_ERROR;
242: END IF;
243: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
244: IF NVL(G_hdr_hold_released,'N') = 'N'
245: THEN
239: l_cc_result_out := 'HDR_HOLD' ;
240: ELSE
241: RAISE FND_API.G_EXC_ERROR;
242: END IF;
243: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
244: IF NVL(G_hdr_hold_released,'N') = 'N'
245: THEN
246: l_cc_result_out := 'HDR_HOLD' ;
247: ELSE
244: IF NVL(G_hdr_hold_released,'N') = 'N'
245: THEN
246: l_cc_result_out := 'HDR_HOLD' ;
247: ELSE
248: RAISE FND_API.G_EXC_ERROR;
249: END IF;
250: ELSIF l_return_status =FND_API.G_RET_STS_SUCCESS THEN
251: l_cc_result_out := 'PASS_REL';
252: END IF;
246: l_cc_result_out := 'HDR_HOLD' ;
247: ELSE
248: RAISE FND_API.G_EXC_ERROR;
249: END IF;
250: ELSIF l_return_status =FND_API.G_RET_STS_SUCCESS THEN
251: l_cc_result_out := 'PASS_REL';
252: END IF;
253: END IF; -- check calling action
254: ELSE
440: FROM ar_cmgt_credit_requests
441: WHERE credit_request_id = l_credit_request_id;
442: EXCEPTION
443: WHEN NO_DATA_FOUND THEN
444: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
445: END;
446:
447: -- set security context
448: FND_GLOBAL.apps_initialize
487: , x_conversion_status => l_conversion_status
488: , x_return_status => l_return_status
489: );
490:
491: IF l_return_status = FND_API.G_RET_STS_ERROR
492: THEN
493: RAISE FND_API.G_EXC_ERROR;
494: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
495: THEN
489: );
490:
491: IF l_return_status = FND_API.G_RET_STS_ERROR
492: THEN
493: RAISE FND_API.G_EXC_ERROR;
494: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
495: THEN
496: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
497: END IF;
490:
491: IF l_return_status = FND_API.G_RET_STS_ERROR
492: THEN
493: RAISE FND_API.G_EXC_ERROR;
494: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
495: THEN
496: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
497: END IF;
498:
492: THEN
493: RAISE FND_API.G_EXC_ERROR;
494: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
495: THEN
496: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
497: END IF;
498:
499: --check if the order_amount has been changed
500: --if amount has not been changed, release the hold
541: , x_amount => l_new_amount
542: , x_conversion_status => l_conversion_status
543: , x_return_status => l_return_status
544: );
545: IF l_return_status = FND_API.G_RET_STS_ERROR
546: THEN
547: RAISE FND_API.G_EXC_ERROR;
548: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
549: THEN
543: , x_return_status => l_return_status
544: );
545: IF l_return_status = FND_API.G_RET_STS_ERROR
546: THEN
547: RAISE FND_API.G_EXC_ERROR;
548: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
549: THEN
550: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
551: END IF;
544: );
545: IF l_return_status = FND_API.G_RET_STS_ERROR
546: THEN
547: RAISE FND_API.G_EXC_ERROR;
548: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
549: THEN
550: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
551: END IF;
552: --Check if amount per bill-to site has been changed
546: THEN
547: RAISE FND_API.G_EXC_ERROR;
548: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
549: THEN
550: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
551: END IF;
552: --Check if amount per bill-to site has been changed
553: --if amount has not been changed, release holds for bill_to site
554: IF l_new_amount = l_trx_amount THEN
593: , x_amount => l_new_amount
594: , x_conversion_status => l_conversion_status
595: , x_return_status => l_return_status
596: );
597: IF l_return_status = FND_API.G_RET_STS_ERROR
598: THEN
599: RAISE FND_API.G_EXC_ERROR;
600: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
601: THEN
595: , x_return_status => l_return_status
596: );
597: IF l_return_status = FND_API.G_RET_STS_ERROR
598: THEN
599: RAISE FND_API.G_EXC_ERROR;
600: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
601: THEN
602: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
603: END IF;
596: );
597: IF l_return_status = FND_API.G_RET_STS_ERROR
598: THEN
599: RAISE FND_API.G_EXC_ERROR;
600: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
601: THEN
602: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
603: END IF;
604: IF l_new_amount = l_trx_amount THEN
598: THEN
599: RAISE FND_API.G_EXC_ERROR;
600: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
601: THEN
602: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
603: END IF;
604: IF l_new_amount = l_trx_amount THEN
605: --OPEN the cursor for all lines
606: FOR c_line IN lines_csr(p_header_id =>l_source_column1)
645: , x_amount => l_new_amount
646: , x_conversion_status => l_conversion_status
647: , x_return_status => l_return_status
648: );
649: IF l_return_status = FND_API.G_RET_STS_ERROR
650: THEN
651: RAISE FND_API.G_EXC_ERROR;
652: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
653: THEN
647: , x_return_status => l_return_status
648: );
649: IF l_return_status = FND_API.G_RET_STS_ERROR
650: THEN
651: RAISE FND_API.G_EXC_ERROR;
652: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
653: THEN
654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
655: END IF;
648: );
649: IF l_return_status = FND_API.G_RET_STS_ERROR
650: THEN
651: RAISE FND_API.G_EXC_ERROR;
652: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
653: THEN
654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
655: END IF;
656: IF l_new_amount = l_trx_amount THEN
650: THEN
651: RAISE FND_API.G_EXC_ERROR;
652: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
653: THEN
654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
655: END IF;
656: IF l_new_amount = l_trx_amount THEN
657: --OPEN the cursor for all lines
658: FOR c_line IN lines_csr(p_header_id =>l_source_column1)