34: ( p_request_tbl IN OUT NOCOPY OE_ORDER_PUB.request_tbl_type
35: ,p_index IN NUMBER DEFAULT 1
36: ,x_return_status OUT NOCOPY /* file.sql.39 change */ varchar2)
37: IS
38: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
39: --
40: l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
41: --
42: BEGIN
50: p_request_tbl(i).request_type NOT IN (OE_GLOBALS.G_ACCEPT_FULFILLMENT,OE_GLOBALS.G_REJECT_FULFILLMENT) THEN
51: GOTO END_LOOP;
52: END IF;
53: -- Initialize each request's return_status as 'S'. It will be set to 'E' when required.
54: p_request_tbl(i).return_status := FND_API.G_RET_STS_SUCCESS;
55: IF p_request_tbl(i).entity_code = 'HEADER' THEN
56:
57: Build_Header_Acceptance_table(p_request_rec =>p_request_tbl(i)
58: ,x_return_status => l_return_status);
60: IF l_debug_level > 0 THEN
61: oe_debug_pub.add('sasi: p_request_rec return_status after Build_Header_Acceptance_table:'||p_request_tbl(i).return_status , 3);
62: END IF;
63:
64: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
65: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
66: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
67: RAISE FND_API.G_EXC_ERROR;
68: END IF;
61: oe_debug_pub.add('sasi: p_request_rec return_status after Build_Header_Acceptance_table:'||p_request_tbl(i).return_status , 3);
62: END IF;
63:
64: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
65: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
66: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
67: RAISE FND_API.G_EXC_ERROR;
68: END IF;
69: p_request_tbl(i).processed := 'Y';
62: END IF;
63:
64: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
65: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
66: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
67: RAISE FND_API.G_EXC_ERROR;
68: END IF;
69: p_request_tbl(i).processed := 'Y';
70: ELSIF p_request_tbl(i).entity_code = 'LINE' THEN
63:
64: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
65: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
66: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
67: RAISE FND_API.G_EXC_ERROR;
68: END IF;
69: p_request_tbl(i).processed := 'Y';
70: ELSIF p_request_tbl(i).entity_code = 'LINE' THEN
71:
75: IF l_debug_level > 0 THEN
76: oe_debug_pub.add('sasi: p_request_rec return_status after Build_Line_Acceptance_table:'||p_request_tbl(i).return_status , 3);
77: END IF;
78:
79: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
80: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
81: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
82: RAISE FND_API.G_EXC_ERROR;
83: END IF;
76: oe_debug_pub.add('sasi: p_request_rec return_status after Build_Line_Acceptance_table:'||p_request_tbl(i).return_status , 3);
77: END IF;
78:
79: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
80: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
81: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
82: RAISE FND_API.G_EXC_ERROR;
83: END IF;
84: p_request_tbl(i).processed := 'Y';
77: END IF;
78:
79: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
80: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
81: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
82: RAISE FND_API.G_EXC_ERROR;
83: END IF;
84: p_request_tbl(i).processed := 'Y';
85: END IF;
78:
79: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
80: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
81: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
82: RAISE FND_API.G_EXC_ERROR;
83: END IF;
84: p_request_tbl(i).processed := 'Y';
85: END IF;
86: << END_LOOP >> -- Label for requests that do not need to be processed
123: IF l_debug_level > 0 THEN
124: oe_debug_pub.add('IN OE_ACCEPTANCE_UTIL.Process_Acceptance-progress_accepted_lines return status:'|| l_return_status , 1);
125: END IF;
126:
127: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
128: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
129: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
130: RAISE FND_API.G_EXC_ERROR;
131: END IF;
124: oe_debug_pub.add('IN OE_ACCEPTANCE_UTIL.Process_Acceptance-progress_accepted_lines return status:'|| l_return_status , 1);
125: END IF;
126:
127: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
128: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
129: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
130: RAISE FND_API.G_EXC_ERROR;
131: END IF;
132:
125: END IF;
126:
127: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
128: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
129: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
130: RAISE FND_API.G_EXC_ERROR;
131: END IF;
132:
133: Reset_global_tbls;
126:
127: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
128: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
129: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
130: RAISE FND_API.G_EXC_ERROR;
131: END IF;
132:
133: Reset_global_tbls;
134:
132:
133: Reset_global_tbls;
134:
135: EXCEPTION
136: WHEN FND_API.G_EXC_ERROR THEN
137: RAISE FND_API.G_EXC_ERROR;
138: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
139: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
140: WHEN OTHERS THEN
133: Reset_global_tbls;
134:
135: EXCEPTION
136: WHEN FND_API.G_EXC_ERROR THEN
137: RAISE FND_API.G_EXC_ERROR;
138: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
139: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
140: WHEN OTHERS THEN
141: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
134:
135: EXCEPTION
136: WHEN FND_API.G_EXC_ERROR THEN
137: RAISE FND_API.G_EXC_ERROR;
138: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
139: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
140: WHEN OTHERS THEN
141: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
142: THEN
135: EXCEPTION
136: WHEN FND_API.G_EXC_ERROR THEN
137: RAISE FND_API.G_EXC_ERROR;
138: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
139: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
140: WHEN OTHERS THEN
141: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
142: THEN
143: OE_MSG_PUB.Add_Exc_Msg
144: ( G_PKG_NAME
145: , 'Process_Acceptance'
146: );
147: END IF;
148: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
149: END Process_Acceptance;
150:
151: PROCEDURE Build_Header_Acceptance_table(p_request_rec IN OUT NOCOPY OE_ORDER_PUB.request_rec_type,
152: x_return_status OUT NOCOPY VARCHAR2)
150:
151: PROCEDURE Build_Header_Acceptance_table(p_request_rec IN OUT NOCOPY OE_ORDER_PUB.request_rec_type,
152: x_return_status OUT NOCOPY VARCHAR2)
153: IS
154: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
155: l_header_id NUMBER := p_request_rec.entity_id;
156: l_line_id NUMBER;
157: CURSOR order_lines is
158: SELECT line_id
172:
173: Build_Line_Acceptance_table(p_request_rec => p_request_rec
174: ,p_line_id => l_line_id
175: ,x_return_status => l_return_status);
176: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
177: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
178: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
179: RAISE FND_API.G_EXC_ERROR;
180: END IF;
173: Build_Line_Acceptance_table(p_request_rec => p_request_rec
174: ,p_line_id => l_line_id
175: ,x_return_status => l_return_status);
176: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
177: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
178: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
179: RAISE FND_API.G_EXC_ERROR;
180: END IF;
181:
174: ,p_line_id => l_line_id
175: ,x_return_status => l_return_status);
176: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
177: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
178: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
179: RAISE FND_API.G_EXC_ERROR;
180: END IF;
181:
182: END LOOP;
175: ,x_return_status => l_return_status);
176: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
177: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
178: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
179: RAISE FND_API.G_EXC_ERROR;
180: END IF;
181:
182: END LOOP;
183:
194: PROCEDURE Build_Line_Acceptance_table(p_request_rec IN OUT NOCOPY OE_ORDER_PUB.request_rec_type
195: ,p_line_id IN NUMBER DEFAULT NULL
196: ,x_return_status OUT NOCOPY VARCHAR2)
197: IS
198: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
199: l_line_id NUMBER := nvl(p_line_id, p_request_rec.entity_id);
200: l_header_id NUMBER;
201: l_item_type_code VARCHAR2(30);
202: l_top_model_line_id NUMBER;
261: p_line_id => l_line_id,
262: x_index => l_notify_index,
263: x_return_status => l_notify_status);
264:
265: IF (l_notify_status <> FND_API.G_RET_STS_SUCCESS) THEN
266: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
267: END IF;
268:
269: IF l_notify_index IS NOT NULL THEN
262: x_index => l_notify_index,
263: x_return_status => l_notify_status);
264:
265: IF (l_notify_status <> FND_API.G_RET_STS_SUCCESS) THEN
266: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
267: END IF;
268:
269: IF l_notify_index IS NOT NULL THEN
270: OE_ORDER_UTIL.g_line_tbl(l_notify_index) := OE_ORDER_UTIL.g_old_line_tbl(l_notify_index);
326: p_line_id => l_line_id,
327: x_index => l_notify_index,
328: x_return_status => l_notify_status);
329:
330: IF (l_notify_status <> FND_API.G_RET_STS_SUCCESS) THEN
331: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
332: END IF;
333:
334: IF l_notify_index IS NOT NULL THEN
327: x_index => l_notify_index,
328: x_return_status => l_notify_status);
329:
330: IF (l_notify_status <> FND_API.G_RET_STS_SUCCESS) THEN
331: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
332: END IF;
333:
334: IF l_notify_index IS NOT NULL THEN
335: OE_ORDER_UTIL.g_line_tbl(l_notify_index) := OE_ORDER_UTIL.g_old_line_tbl(l_notify_index);
375: p_line_id => l_line_id,
376: x_index => l_notify_index,
377: x_return_status => l_notify_status);
378:
379: IF (l_notify_status <> FND_API.G_RET_STS_SUCCESS) THEN
380: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
381: END IF;
382:
383: IF l_notify_index IS NOT NULL THEN
376: x_index => l_notify_index,
377: x_return_status => l_notify_status);
378:
379: IF (l_notify_status <> FND_API.G_RET_STS_SUCCESS) THEN
380: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
381: END IF;
382:
383: IF l_notify_index IS NOT NULL THEN
384: OE_ORDER_UTIL.g_line_tbl(l_notify_index) := OE_ORDER_UTIL.g_old_line_tbl(l_notify_index);
422: p_line_id => l_line_id,
423: x_index => l_notify_index,
424: x_return_status => l_notify_status);
425:
426: IF (l_notify_status <> FND_API.G_RET_STS_SUCCESS) THEN
427: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
428: END IF;
429:
430: IF l_notify_index IS NOT NULL THEN
423: x_index => l_notify_index,
424: x_return_status => l_notify_status);
425:
426: IF (l_notify_status <> FND_API.G_RET_STS_SUCCESS) THEN
427: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
428: END IF;
429:
430: IF l_notify_index IS NOT NULL THEN
431: OE_ORDER_UTIL.g_line_tbl(l_notify_index) := OE_ORDER_UTIL.g_old_line_tbl(l_notify_index);
472: p_line_id => l_line_id,
473: x_index => l_notify_index,
474: x_return_status => l_notify_status);
475:
476: IF (l_notify_status <> FND_API.G_RET_STS_SUCCESS) THEN
477: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
478: END IF;
479:
480: IF l_notify_index IS NOT NULL THEN
473: x_index => l_notify_index,
474: x_return_status => l_notify_status);
475:
476: IF (l_notify_status <> FND_API.G_RET_STS_SUCCESS) THEN
477: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
478: END IF;
479:
480: IF l_notify_index IS NOT NULL THEN
481: OE_ORDER_UTIL.g_line_tbl(l_notify_index) := OE_ORDER_UTIL.g_old_line_tbl(l_notify_index);
500: ELSE
501: IF l_debug_level > 0 THEN
502: OE_DEBUG_PUB.Add('Acceptance not allowed for this line. setting retun status of request_rec to E:'||l_line_id);
503: END IF;
504: p_request_rec.return_status := FND_API.G_RET_STS_ERROR;
505: END IF;
506: END IF; -- sys param check
507: END IF;
508: EXCEPTION
516:
517: PROCEDURE Progress_Accepted_lines
518: (x_return_status OUT NOCOPY Varchar2)
519: IS
520: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
521: l_msg_count NUMBER;
522: l_msg_data VARCHAR2(2000);
523: l_line_flex_rec ar_deferral_reasons_grp.line_flex_rec;
524: --
564: , x_msg_count => l_msg_count
565: , x_msg_data => l_msg_data
566: );
567:
568: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
569: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
570: -- no need to raise if the info cannot be derived. just do not call AR.
571: --ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
572: -- RAISE FND_API.G_EXC_ERROR;
565: , x_msg_data => l_msg_data
566: );
567:
568: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
569: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
570: -- no need to raise if the info cannot be derived. just do not call AR.
571: --ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
572: -- RAISE FND_API.G_EXC_ERROR;
573: END IF;
567:
568: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
569: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
570: -- no need to raise if the info cannot be derived. just do not call AR.
571: --ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
572: -- RAISE FND_API.G_EXC_ERROR;
573: END IF;
574:
575: IF l_line_flex_rec.interface_line_attribute6 IS NOT NULL THEN
568: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
569: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
570: -- no need to raise if the info cannot be derived. just do not call AR.
571: --ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
572: -- RAISE FND_API.G_EXC_ERROR;
573: END IF;
574:
575: IF l_line_flex_rec.interface_line_attribute6 IS NOT NULL THEN
576: IF l_debug_level > 0 THEN
586: IF l_debug_level > 0 THEN
587: oe_debug_pub.add('return status from AR api '||l_return_status);
588: END IF;
589:
590: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
591: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
592: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
593: RAISE FND_API.G_EXC_ERROR;
594: END IF;
587: oe_debug_pub.add('return status from AR api '||l_return_status);
588: END IF;
589:
590: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
591: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
592: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
593: RAISE FND_API.G_EXC_ERROR;
594: END IF;
595: END IF;
588: END IF;
589:
590: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
591: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
592: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
593: RAISE FND_API.G_EXC_ERROR;
594: END IF;
595: END IF;
596:
589:
590: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
591: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
592: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
593: RAISE FND_API.G_EXC_ERROR;
594: END IF;
595: END IF;
596:
597: END IF;