33: );
34:
35: -- Set record return status.
36:
37: l_Sourcing_Rule_rec.return_status := FND_API.G_RET_STS_SUCCESS;
38:
39: -- Prepare record.
40:
41: IF l_Sourcing_Rule_rec.operation = MRP_Globals.G_OPR_CREATE THEN
39: -- Prepare record.
40:
41: IF l_Sourcing_Rule_rec.operation = MRP_Globals.G_OPR_CREATE THEN
42:
43: l_Sourcing_Rule_rec.db_flag := FND_API.G_FALSE;
44:
45: -- Set missing old record elements to NULL.
46:
47: l_old_Sourcing_Rule_rec :=
51: ELSIF l_Sourcing_Rule_rec.operation = MRP_Globals.G_OPR_UPDATE
52: OR l_Sourcing_Rule_rec.operation = MRP_Globals.G_OPR_DELETE
53: THEN
54:
55: l_Sourcing_Rule_rec.db_flag := FND_API.G_TRUE;
56:
57: -- Query Old if missing
58:
59: IF l_old_Sourcing_Rule_rec.Sourcing_Rule_Id = FND_API.G_MISS_NUM
55: l_Sourcing_Rule_rec.db_flag := FND_API.G_TRUE;
56:
57: -- Query Old if missing
58:
59: IF l_old_Sourcing_Rule_rec.Sourcing_Rule_Id = FND_API.G_MISS_NUM
60: THEN
61:
62: l_old_Sourcing_Rule_rec := MRP_Sourcing_Rule_Handlers.Query_Row
63: ( p_Sourcing_Rule_Id => l_Sourcing_Rule_rec.Sourcing_Rule_Id
86: IF l_control_rec.default_attributes
87: OR l_control_rec.change_attributes
88: THEN
89:
90: IF p_validation_level > FND_API.G_VALID_LEVEL_NONE THEN
91:
92: MRP_Validate_Sourcing_Rule.Attributes
93: ( x_return_status => l_return_status
94: , p_Sourcing_Rule_rec => l_Sourcing_Rule_rec
96: );
97:
98: -- dbms_output.put_line('after attributes : ' || l_return_status);
99:
100: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
101: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
102: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
103: RAISE FND_API.G_EXC_ERROR;
104: END IF;
97:
98: -- dbms_output.put_line('after attributes : ' || l_return_status);
99:
100: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
101: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
102: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
103: RAISE FND_API.G_EXC_ERROR;
104: END IF;
105:
98: -- dbms_output.put_line('after attributes : ' || l_return_status);
99:
100: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
101: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
102: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
103: RAISE FND_API.G_EXC_ERROR;
104: END IF;
105:
106: END IF;
99:
100: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
101: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
102: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
103: RAISE FND_API.G_EXC_ERROR;
104: END IF;
105:
106: END IF;
107:
169: );
170:
171: END IF;
172:
173: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
174: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
175: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
176: RAISE FND_API.G_EXC_ERROR;
177: END IF;
170:
171: END IF;
172:
173: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
174: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
175: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
176: RAISE FND_API.G_EXC_ERROR;
177: END IF;
178:
171: END IF;
172:
173: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
174: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
175: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
176: RAISE FND_API.G_EXC_ERROR;
177: END IF;
178:
179: END IF;
172:
173: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
174: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
175: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
176: RAISE FND_API.G_EXC_ERROR;
177: END IF;
178:
179: END IF;
180:
219: x_old_Sourcing_Rule_rec := l_old_Sourcing_Rule_rec;
220:
221: EXCEPTION
222:
223: WHEN FND_API.G_EXC_ERROR THEN
224:
225: l_Sourcing_Rule_rec.return_status := FND_API.G_RET_STS_ERROR;
226: x_Sourcing_Rule_rec := l_Sourcing_Rule_rec;
227: x_old_Sourcing_Rule_rec := l_old_Sourcing_Rule_rec;
221: EXCEPTION
222:
223: WHEN FND_API.G_EXC_ERROR THEN
224:
225: l_Sourcing_Rule_rec.return_status := FND_API.G_RET_STS_ERROR;
226: x_Sourcing_Rule_rec := l_Sourcing_Rule_rec;
227: x_old_Sourcing_Rule_rec := l_old_Sourcing_Rule_rec;
228: RAISE;
229:
226: x_Sourcing_Rule_rec := l_Sourcing_Rule_rec;
227: x_old_Sourcing_Rule_rec := l_old_Sourcing_Rule_rec;
228: RAISE;
229:
230: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
231:
232: l_Sourcing_Rule_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
233: x_Sourcing_Rule_rec := l_Sourcing_Rule_rec;
234: x_old_Sourcing_Rule_rec := l_old_Sourcing_Rule_rec;
228: RAISE;
229:
230: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
231:
232: l_Sourcing_Rule_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
233: x_Sourcing_Rule_rec := l_Sourcing_Rule_rec;
234: x_old_Sourcing_Rule_rec := l_old_Sourcing_Rule_rec;
235:
236: RAISE;
244: , 'Sourcing_Rule'
245: );
246: END IF;
247:
248: l_Sourcing_Rule_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
249: x_Sourcing_Rule_rec := l_Sourcing_Rule_rec;
250: x_old_Sourcing_Rule_rec := l_old_Sourcing_Rule_rec;
251:
252: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
248: l_Sourcing_Rule_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
249: x_Sourcing_Rule_rec := l_Sourcing_Rule_rec;
250: x_old_Sourcing_Rule_rec := l_old_Sourcing_Rule_rec;
251:
252: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
253:
254: END Sourcing_Rule;
255:
256: -- Receiving_Orgs
299: );
300:
301: -- Set record return status.
302:
303: l_Receiving_Org_rec.return_status := FND_API.G_RET_STS_SUCCESS;
304:
305: -- Prepare record.
306:
307: IF l_Receiving_Org_rec.operation = MRP_Globals.G_OPR_CREATE THEN
305: -- Prepare record.
306:
307: IF l_Receiving_Org_rec.operation = MRP_Globals.G_OPR_CREATE THEN
308:
309: l_Receiving_Org_rec.db_flag := FND_API.G_FALSE;
310:
311: -- Set missing old record elements to NULL.
312:
313: l_old_Receiving_Org_rec :=
316: ELSIF l_Receiving_Org_rec.operation = MRP_Globals.G_OPR_UPDATE
317: OR l_Receiving_Org_rec.operation = MRP_Globals.G_OPR_DELETE
318: THEN
319:
320: l_Receiving_Org_rec.db_flag := FND_API.G_TRUE;
321:
322: -- Query Old if missing
323:
324: IF l_old_Receiving_Org_rec.Sr_Receipt_Id = FND_API.G_MISS_NUM
320: l_Receiving_Org_rec.db_flag := FND_API.G_TRUE;
321:
322: -- Query Old if missing
323:
324: IF l_old_Receiving_Org_rec.Sr_Receipt_Id = FND_API.G_MISS_NUM
325: THEN
326:
327: l_old_Receiving_Org_rec := MRP_Receiving_Org_Handlers.Query_Row
328: ( p_Sr_Receipt_Id => l_Receiving_Org_rec.Sr_Receipt_Id
351: IF l_control_rec.default_attributes
352: OR l_control_rec.change_attributes
353: THEN
354:
355: IF p_validation_level > FND_API.G_VALID_LEVEL_NONE THEN
356:
357: MRP_Validate_Receiving_Org.Attributes
358: ( x_return_status => l_return_status
359: , p_Receiving_Org_rec => l_Receiving_Org_rec
359: , p_Receiving_Org_rec => l_Receiving_Org_rec
360: , p_old_Receiving_Org_rec => l_old_Receiving_Org_rec
361: );
362:
363: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
365: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
366: RAISE FND_API.G_EXC_ERROR;
367: END IF;
360: , p_old_Receiving_Org_rec => l_old_Receiving_Org_rec
361: );
362:
363: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
365: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
366: RAISE FND_API.G_EXC_ERROR;
367: END IF;
368:
361: );
362:
363: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
365: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
366: RAISE FND_API.G_EXC_ERROR;
367: END IF;
368:
369: END IF;
362:
363: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
364: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
365: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
366: RAISE FND_API.G_EXC_ERROR;
367: END IF;
368:
369: END IF;
370:
432: );
433:
434: END IF;
435:
436: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
437: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
438: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
439: RAISE FND_API.G_EXC_ERROR;
440: END IF;
433:
434: END IF;
435:
436: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
437: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
438: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
439: RAISE FND_API.G_EXC_ERROR;
440: END IF;
441:
434: END IF;
435:
436: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
437: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
438: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
439: RAISE FND_API.G_EXC_ERROR;
440: END IF;
441:
442: END IF;
435:
436: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
437: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
438: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
439: RAISE FND_API.G_EXC_ERROR;
440: END IF;
441:
442: END IF;
443:
486:
487:
488: EXCEPTION
489:
490: WHEN FND_API.G_EXC_ERROR THEN
491:
492: l_Receiving_Org_rec.return_status := FND_API.G_RET_STS_ERROR;
493: l_Receiving_Org_tbl(I) := l_Receiving_Org_rec;
494: l_old_Receiving_Org_tbl(I) := l_old_Receiving_Org_rec;
488: EXCEPTION
489:
490: WHEN FND_API.G_EXC_ERROR THEN
491:
492: l_Receiving_Org_rec.return_status := FND_API.G_RET_STS_ERROR;
493: l_Receiving_Org_tbl(I) := l_Receiving_Org_rec;
494: l_old_Receiving_Org_tbl(I) := l_old_Receiving_Org_rec;
495:
496: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
492: l_Receiving_Org_rec.return_status := FND_API.G_RET_STS_ERROR;
493: l_Receiving_Org_tbl(I) := l_Receiving_Org_rec;
494: l_old_Receiving_Org_tbl(I) := l_old_Receiving_Org_rec;
495:
496: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
497:
498: l_Receiving_Org_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
499: l_Receiving_Org_tbl(I) := l_Receiving_Org_rec;
500: l_old_Receiving_Org_tbl(I) := l_old_Receiving_Org_rec;
494: l_old_Receiving_Org_tbl(I) := l_old_Receiving_Org_rec;
495:
496: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
497:
498: l_Receiving_Org_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
499: l_Receiving_Org_tbl(I) := l_Receiving_Org_rec;
500: l_old_Receiving_Org_tbl(I) := l_old_Receiving_Org_rec;
501: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
502:
497:
498: l_Receiving_Org_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
499: l_Receiving_Org_tbl(I) := l_Receiving_Org_rec;
500: l_old_Receiving_Org_tbl(I) := l_old_Receiving_Org_rec;
501: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
502:
503: WHEN OTHERS THEN
504:
505: l_Receiving_Org_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
501: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
502:
503: WHEN OTHERS THEN
504:
505: l_Receiving_Org_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
506: l_Receiving_Org_tbl(I) := l_Receiving_Org_rec;
507: l_old_Receiving_Org_tbl(I) := l_old_Receiving_Org_rec;
508:
509: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
513: , 'Receiving_Orgs'
514: );
515: END IF;
516:
517: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
518:
519: END;
520: END LOOP;
521:
525: x_old_Receiving_Org_tbl := l_old_Receiving_Org_tbl;
526:
527: EXCEPTION
528:
529: WHEN FND_API.G_EXC_ERROR THEN
530:
531: RAISE;
532:
533: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
529: WHEN FND_API.G_EXC_ERROR THEN
530:
531: RAISE;
532:
533: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
534:
535:
536: RAISE;
537:
545: );
546: END IF;
547:
548:
549: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
550:
551: END Receiving_Orgs;
552:
553: -- Shipping_Orgs
596: );
597:
598: -- Set record return status.
599:
600: l_Shipping_Org_rec.return_status := FND_API.G_RET_STS_SUCCESS;
601:
602: -- Prepare record.
603:
604: IF l_Shipping_Org_rec.operation = MRP_Globals.G_OPR_CREATE THEN
602: -- Prepare record.
603:
604: IF l_Shipping_Org_rec.operation = MRP_Globals.G_OPR_CREATE THEN
605:
606: l_Shipping_Org_rec.db_flag := FND_API.G_FALSE;
607:
608: -- Set missing old record elements to NULL.
609:
610: l_old_Shipping_Org_rec :=
613: ELSIF l_Shipping_Org_rec.operation = MRP_Globals.G_OPR_UPDATE
614: OR l_Shipping_Org_rec.operation = MRP_Globals.G_OPR_DELETE
615: THEN
616:
617: l_Shipping_Org_rec.db_flag := FND_API.G_TRUE;
618:
619: -- Query Old if missing
620:
621: IF l_old_Shipping_Org_rec.Sr_Source_Id = FND_API.G_MISS_NUM
617: l_Shipping_Org_rec.db_flag := FND_API.G_TRUE;
618:
619: -- Query Old if missing
620:
621: IF l_old_Shipping_Org_rec.Sr_Source_Id = FND_API.G_MISS_NUM
622: THEN
623:
624: l_old_Shipping_Org_rec := MRP_Shipping_Org_Handlers.Query_Row
625: ( p_Sr_Source_Id => l_Shipping_Org_rec.Sr_Source_Id
648: IF l_control_rec.default_attributes
649: OR l_control_rec.change_attributes
650: THEN
651:
652: IF p_validation_level > FND_API.G_VALID_LEVEL_NONE THEN
653:
654: MRP_Validate_Shipping_Org.Attributes
655: ( x_return_status => l_return_status
656: , p_Shipping_Org_rec => l_Shipping_Org_rec
656: , p_Shipping_Org_rec => l_Shipping_Org_rec
657: , p_old_Shipping_Org_rec => l_old_Shipping_Org_rec
658: );
659:
660: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
661: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
662: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
663: RAISE FND_API.G_EXC_ERROR;
664: END IF;
657: , p_old_Shipping_Org_rec => l_old_Shipping_Org_rec
658: );
659:
660: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
661: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
662: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
663: RAISE FND_API.G_EXC_ERROR;
664: END IF;
665:
658: );
659:
660: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
661: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
662: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
663: RAISE FND_API.G_EXC_ERROR;
664: END IF;
665:
666: END IF;
659:
660: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
661: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
662: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
663: RAISE FND_API.G_EXC_ERROR;
664: END IF;
665:
666: END IF;
667:
729: );
730:
731: END IF;
732:
733: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
734: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
735: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
736: RAISE FND_API.G_EXC_ERROR;
737: END IF;
730:
731: END IF;
732:
733: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
734: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
735: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
736: RAISE FND_API.G_EXC_ERROR;
737: END IF;
738:
731: END IF;
732:
733: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
734: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
735: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
736: RAISE FND_API.G_EXC_ERROR;
737: END IF;
738:
739: END IF;
732:
733: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
734: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
735: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
736: RAISE FND_API.G_EXC_ERROR;
737: END IF;
738:
739: END IF;
740:
782:
783:
784: EXCEPTION
785:
786: WHEN FND_API.G_EXC_ERROR THEN
787:
788: l_Shipping_Org_rec.return_status := FND_API.G_RET_STS_ERROR;
789: l_Shipping_Org_tbl(I) := l_Shipping_Org_rec;
790: l_old_Shipping_Org_tbl(I) := l_old_Shipping_Org_rec;
784: EXCEPTION
785:
786: WHEN FND_API.G_EXC_ERROR THEN
787:
788: l_Shipping_Org_rec.return_status := FND_API.G_RET_STS_ERROR;
789: l_Shipping_Org_tbl(I) := l_Shipping_Org_rec;
790: l_old_Shipping_Org_tbl(I) := l_old_Shipping_Org_rec;
791:
792: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
788: l_Shipping_Org_rec.return_status := FND_API.G_RET_STS_ERROR;
789: l_Shipping_Org_tbl(I) := l_Shipping_Org_rec;
790: l_old_Shipping_Org_tbl(I) := l_old_Shipping_Org_rec;
791:
792: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
793:
794: l_Shipping_Org_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
795: l_Shipping_Org_tbl(I) := l_Shipping_Org_rec;
796: l_old_Shipping_Org_tbl(I) := l_old_Shipping_Org_rec;
790: l_old_Shipping_Org_tbl(I) := l_old_Shipping_Org_rec;
791:
792: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
793:
794: l_Shipping_Org_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
795: l_Shipping_Org_tbl(I) := l_Shipping_Org_rec;
796: l_old_Shipping_Org_tbl(I) := l_old_Shipping_Org_rec;
797: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
798:
793:
794: l_Shipping_Org_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
795: l_Shipping_Org_tbl(I) := l_Shipping_Org_rec;
796: l_old_Shipping_Org_tbl(I) := l_old_Shipping_Org_rec;
797: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
798:
799: WHEN OTHERS THEN
800:
801: l_Shipping_Org_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
797: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
798:
799: WHEN OTHERS THEN
800:
801: l_Shipping_Org_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
802: l_Shipping_Org_tbl(I) := l_Shipping_Org_rec;
803: l_old_Shipping_Org_tbl(I) := l_old_Shipping_Org_rec;
804:
805: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
809: , 'Shipping_Orgs'
810: );
811: END IF;
812:
813: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
814:
815: END;
816: END LOOP;
817:
821: x_old_Shipping_Org_tbl := l_old_Shipping_Org_tbl;
822:
823: EXCEPTION
824:
825: WHEN FND_API.G_EXC_ERROR THEN
826:
827: RAISE;
828:
829: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
825: WHEN FND_API.G_EXC_ERROR THEN
826:
827: RAISE;
828:
829: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
830:
831:
832: RAISE;
833:
841: );
842: END IF;
843:
844:
845: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
846:
847: END Shipping_Orgs;
848:
849: -- Start of Comments
863: -- End of Comments
864:
865: PROCEDURE Process_Sourcing_Rule
866: ( p_api_version_number IN NUMBER
867: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
868: , p_commit IN VARCHAR2 := FND_API.G_FALSE
869: , p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
870: , p_control_rec IN MRP_GLOBALS.Control_Rec_Type :=
871: MRP_GLOBALS.G_MISS_CONTROL_REC
864:
865: PROCEDURE Process_Sourcing_Rule
866: ( p_api_version_number IN NUMBER
867: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
868: , p_commit IN VARCHAR2 := FND_API.G_FALSE
869: , p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
870: , p_control_rec IN MRP_GLOBALS.Control_Rec_Type :=
871: MRP_GLOBALS.G_MISS_CONTROL_REC
872: , x_return_status OUT NOCOPY VARCHAR2
865: PROCEDURE Process_Sourcing_Rule
866: ( p_api_version_number IN NUMBER
867: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
868: , p_commit IN VARCHAR2 := FND_API.G_FALSE
869: , p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
870: , p_control_rec IN MRP_GLOBALS.Control_Rec_Type :=
871: MRP_GLOBALS.G_MISS_CONTROL_REC
872: , x_return_status OUT NOCOPY VARCHAR2
873: , x_msg_count OUT NOCOPY NUMBER
913: l_tot_alloc_percent NUMBER;
914: l_curr_rco_index NUMBER;
915: l_curr_rank NUMBER;
916: l_count NUMBER;
917: l_organization_id NUMBER := FND_API.G_MISS_NUM;
918: org_exists NUMBER;
919:
920: BEGIN
921:
921:
922: --dbms_output.put_line ('Oper : ' || l_Sourcing_Rule_rec.operation);
923: -- Standard call to check for call compatibility
924:
925: IF NOT FND_API.Compatible_API_Call
926: ( l_api_version_number
927: , p_api_version_number
928: , l_api_name
929: , G_PKG_NAME
928: , l_api_name
929: , G_PKG_NAME
930: )
931: THEN
932: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
933: END IF;
934:
935: -- Set Save point.
936: SAVEPOINT Process_Sourcing_Rule_PVT;
936: SAVEPOINT Process_Sourcing_Rule_PVT;
937:
938: -- Initialize message list.
939:
940: IF FND_API.to_Boolean(p_init_msg_list) THEN
941: FND_MSG_PUB.initialize;
942: END IF;
943:
944: -- Init local table variables.
982: l_Receiving_Org_rec := l_Receiving_Org_tbl(I);
983:
984: IF l_Receiving_Org_rec.operation = MRP_Globals.G_OPR_CREATE
985: AND (l_Receiving_Org_rec.Sourcing_Rule_Id IS NULL OR
986: l_Receiving_Org_rec.Sourcing_Rule_Id = FND_API.G_MISS_NUM)
987: THEN
988:
989: -- Copy parent_id.
990: -- dbms_output.put_line ('Parent SR id is : ' || to_char (l_Sourcing_Rule_rec.Sourcing_Rule_Id));
1032: FND_MESSAGE.SET_NAME('MRP','MRP_ATTRIBUTE_VALUE_ERROR');
1033: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Receiving_Organization');
1034: FND_MESSAGE.SET_TOKEN('DETAILS', 'Mismatch between SR Organization and Receiving Organization');
1035: FND_MSG_PUB.Add;
1036: l_Receiving_Org_tbl(I).return_status := FND_API.G_RET_STS_ERROR;
1037:
1038: END IF;
1039:
1040: -- The sourcing rule should not have receiving orgs with
1069: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Effective_Date');
1070: FND_MESSAGE.SET_TOKEN('DETAILS', 'Overlapping Effective ' ||
1071: 'Dates not allowed for Receiving Organizations');
1072: FND_MSG_PUB.Add;
1073: l_Receiving_Org_tbl(I).return_status := FND_API.G_RET_STS_ERROR;
1074: END IF;
1075:
1076: END LOOP;
1077:
1084: l_Shipping_Org_rec := l_Shipping_Org_tbl(I);
1085:
1086: IF l_Shipping_Org_rec.operation = MRP_Globals.G_OPR_CREATE
1087: AND (l_Shipping_Org_rec.Sr_Receipt_Id IS NULL OR
1088: l_Shipping_Org_rec.Sr_Receipt_Id = FND_API.G_MISS_NUM)
1089: THEN
1090:
1091: -- Check If parent exists.
1092:
1192: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Source_Organization_Id');
1193: FND_MESSAGE.SET_TOKEN('DETAILS', 'Source Organization ' ||
1194: 'should be different from Receiving Organization');
1195: FND_MSG_PUB.Add;
1196: l_Shipping_Org_tbl(I).return_status := FND_API.G_RET_STS_ERROR;
1197:
1198: ELSE /* Bug 2263575 */
1199: BEGIN
1200: SELECT 1 INTO org_exists
1207: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Source_Organization_Id');
1208: FND_MESSAGE.SET_TOKEN('DETAILS', 'Shipping Network ' ||
1209: 'not defined between source org and receiving org');
1210: FND_MSG_PUB.Add;
1211: l_Shipping_Org_tbl(I).return_status := FND_API.G_RET_STS_ERROR;
1212: END;
1213: END IF;
1214: END IF;
1215:
1221: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Source_Type');
1222: FND_MESSAGE.SET_TOKEN('DETAILS', 'Cannot have source type of Make At for Global SR');
1223: FND_MSG_PUB.Add;
1224: l_Shipping_Org_tbl(I).return_status :=
1225: FND_API.G_RET_STS_ERROR;
1226: END IF;
1227:
1228: IF l_Shipping_Org_rec.source_type = 2 AND
1229: /** Bug 2263575 l_sourcing_rule_rec.organization_id IS NOT NULL **/
1238: FND_MESSAGE.SET_TOKEN('DETAILS', 'Source Organization ' ||
1239: 'should be same as Receiving Organization');
1240: FND_MSG_PUB.Add;
1241: l_Shipping_Org_tbl(I).return_status :=
1242: FND_API.G_RET_STS_ERROR;
1243: END IF;
1244: END IF;
1245:
1246: IF l_Shipping_Org_rec.source_type = 3 AND
1250: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Source_Organization_Id');
1251: FND_MESSAGE.SET_TOKEN('DETAILS',
1252: 'Source Organization should be NULL');
1253: FND_MSG_PUB.Add;
1254: l_Shipping_Org_tbl(I).return_status := FND_API.G_RET_STS_ERROR;
1255: END IF;
1256:
1257: -- We cannot have two shipping orgs with the same rank
1258:
1274: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Rank');
1275: FND_MESSAGE.SET_TOKEN('DETAILS',
1276: 'Cannot have Duplicate Ranks on Shipping Organizations');
1277: FND_MSG_PUB.Add;
1278: l_Shipping_Org_tbl(I).return_status := FND_API.G_RET_STS_ERROR;
1279: END IF;
1280:
1281: ***/
1282:
1286: -- if supplier and supplier site are passed in and there is
1287: -- an organization modelled as this supplier at this site,
1288: -- populate the source_organization_id
1289:
1290: l_organization_id := FND_API.G_MISS_NUM;
1291:
1292: /* 2448893 - Add to_char to the vendor_id and vendor_site_id in
1293: l_shipping_org_rec since supplier_id and supplier_site_id in
1294: mrp_cust_sup_org_v are varchar2 */
1300: WHERE supplier_id = to_char(l_Shipping_Org_rec.vendor_id)
1301: AND supplier_site_id = to_char(l_Shipping_Org_rec.vendor_site_id);
1302:
1303: IF l_organization_id IS NOT NULL AND
1304: l_organization_id <> FND_API.G_MISS_NUM THEN
1305: UPDATE mrp_sr_source_org
1306: SET source_organization_id = l_organization_id
1307: WHERE sr_source_id = l_Shipping_Org_rec.sr_source_id;
1308:
1318: FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Rank');
1319: FND_MESSAGE.SET_TOKEN('DETAILS',
1320: 'Total Allocation Percent cannot be greater than 100');
1321: FND_MSG_PUB.Add;
1322: l_Shipping_Org_tbl(I).return_status := FND_API.G_RET_STS_ERROR;
1323: END IF;
1324:
1325: END LOOP;
1326:
1355: FND_MESSAGE.SET_TOKEN('OBJECT','Sourcing_Rule');
1356: FND_MESSAGE.SET_TOKEN('DETAILS',
1357: 'At least one receiving organization is required');
1358: FND_MSG_PUB.Add;
1359: l_sourcing_rule_rec.return_status := FND_API.G_RET_STS_ERROR;
1360: END IF;
1361:
1362: FOR I IN 1..l_Receiving_Org_tbl.COUNT LOOP
1363: SELECT count(*)
1371: FND_MESSAGE.SET_TOKEN('ENTITY','Receiving_Org');
1372: FND_MESSAGE.SET_TOKEN('DETAILS',
1373: 'At least one source organization is required');
1374: FND_MSG_PUB.Add;
1375: l_Receiving_Org_tbl(I).return_status := FND_API.G_RET_STS_ERROR;
1376: END IF;
1377: END LOOP;
1378:
1379: END IF;
1401: END IF;
1402:
1403: -- Derive return status.
1404:
1405: x_return_status := FND_API.G_RET_STS_SUCCESS;
1406:
1407: IF l_Sourcing_Rule_rec.return_status = FND_API.G_RET_STS_ERROR THEN
1408: ROLLBACK TO Process_Sourcing_Rule_PVT;
1409: x_return_status := FND_API.G_RET_STS_ERROR;
1403: -- Derive return status.
1404:
1405: x_return_status := FND_API.G_RET_STS_SUCCESS;
1406:
1407: IF l_Sourcing_Rule_rec.return_status = FND_API.G_RET_STS_ERROR THEN
1408: ROLLBACK TO Process_Sourcing_Rule_PVT;
1409: x_return_status := FND_API.G_RET_STS_ERROR;
1410: END IF;
1411:
1405: x_return_status := FND_API.G_RET_STS_SUCCESS;
1406:
1407: IF l_Sourcing_Rule_rec.return_status = FND_API.G_RET_STS_ERROR THEN
1408: ROLLBACK TO Process_Sourcing_Rule_PVT;
1409: x_return_status := FND_API.G_RET_STS_ERROR;
1410: END IF;
1411:
1412: FOR I IN 1..l_Receiving_Org_tbl.COUNT LOOP
1413:
1410: END IF;
1411:
1412: FOR I IN 1..l_Receiving_Org_tbl.COUNT LOOP
1413:
1414: IF l_Receiving_Org_tbl(I).return_status = FND_API.G_RET_STS_ERROR THEN
1415: ROLLBACK TO Process_Sourcing_Rule_PVT;
1416: x_return_status := FND_API.G_RET_STS_ERROR;
1417: END IF;
1418:
1412: FOR I IN 1..l_Receiving_Org_tbl.COUNT LOOP
1413:
1414: IF l_Receiving_Org_tbl(I).return_status = FND_API.G_RET_STS_ERROR THEN
1415: ROLLBACK TO Process_Sourcing_Rule_PVT;
1416: x_return_status := FND_API.G_RET_STS_ERROR;
1417: END IF;
1418:
1419: END LOOP;
1420:
1419: END LOOP;
1420:
1421: FOR I IN 1..l_Shipping_Org_tbl.COUNT LOOP
1422:
1423: IF l_Shipping_Org_tbl(I).return_status = FND_API.G_RET_STS_ERROR THEN
1424: ROLLBACK TO Process_Sourcing_Rule_PVT;
1425: x_return_status := FND_API.G_RET_STS_ERROR;
1426: END IF;
1427:
1421: FOR I IN 1..l_Shipping_Org_tbl.COUNT LOOP
1422:
1423: IF l_Shipping_Org_tbl(I).return_status = FND_API.G_RET_STS_ERROR THEN
1424: ROLLBACK TO Process_Sourcing_Rule_PVT;
1425: x_return_status := FND_API.G_RET_STS_ERROR;
1426: END IF;
1427:
1428: END LOOP;
1429:
1436:
1437:
1438: EXCEPTION
1439:
1440: WHEN FND_API.G_EXC_ERROR THEN
1441:
1442: x_return_status := FND_API.G_RET_STS_ERROR;
1443:
1444: -- Get message count and data
1438: EXCEPTION
1439:
1440: WHEN FND_API.G_EXC_ERROR THEN
1441:
1442: x_return_status := FND_API.G_RET_STS_ERROR;
1443:
1444: -- Get message count and data
1445:
1446: FND_MSG_PUB.Count_And_Get
1447: ( p_count => x_msg_count
1448: , p_data => x_msg_data
1449: );
1450:
1451: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1452:
1453: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1454:
1455: -- Get message count and data
1449: );
1450:
1451: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1452:
1453: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1454:
1455: -- Get message count and data
1456:
1457: FND_MSG_PUB.Count_And_Get
1460: );
1461:
1462: WHEN OTHERS THEN
1463:
1464: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1465:
1466: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1467: THEN
1468: FND_MSG_PUB.Add_Exc_Msg
1497: -- End of Comments
1498:
1499: PROCEDURE Lock_Sourcing_Rule
1500: ( p_api_version_number IN NUMBER
1501: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1502: , x_return_status OUT NOCOPY VARCHAR2
1503: , x_msg_count OUT NOCOPY NUMBER
1504: , x_msg_data OUT NOCOPY VARCHAR2
1505: , p_Sourcing_Rule_rec IN MRP_Sourcing_Rule_PUB.Sourcing_Rule_Rec_Type :=
1514: )
1515: IS
1516: l_api_version_number CONSTANT NUMBER := 1.0;
1517: l_api_name CONSTANT VARCHAR2(30):= 'Lock_Sourcing_Rule';
1518: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1519: l_Receiving_Org_rec MRP_Sourcing_Rule_PUB.Receiving_Org_Rec_Type;
1520: l_Shipping_Org_rec MRP_Sourcing_Rule_PUB.Shipping_Org_Rec_Type;
1521: BEGIN
1522:
1521: BEGIN
1522:
1523: -- Standard call to check for call compatibility
1524:
1525: IF NOT FND_API.Compatible_API_Call
1526: ( l_api_version_number
1527: , p_api_version_number
1528: , l_api_name
1529: , G_PKG_NAME
1528: , l_api_name
1529: , G_PKG_NAME
1530: )
1531: THEN
1532: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1533: END IF;
1534:
1535: -- Initialize message list.
1536:
1533: END IF;
1534:
1535: -- Initialize message list.
1536:
1537: IF FND_API.to_Boolean(p_init_msg_list) THEN
1538: FND_MSG_PUB.initialize;
1539: END IF;
1540:
1541: -- Set Savepoint
1551: , x_Sourcing_Rule_rec => x_Sourcing_Rule_rec
1552: , x_return_status => l_return_status
1553: );
1554:
1555: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1556: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1557: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1558: RAISE FND_API.G_EXC_ERROR;
1559: END IF;
1552: , x_return_status => l_return_status
1553: );
1554:
1555: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1556: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1557: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1558: RAISE FND_API.G_EXC_ERROR;
1559: END IF;
1560:
1553: );
1554:
1555: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1556: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1557: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1558: RAISE FND_API.G_EXC_ERROR;
1559: END IF;
1560:
1561:
1554:
1555: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1556: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1557: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1558: RAISE FND_API.G_EXC_ERROR;
1559: END IF;
1560:
1561:
1562: END IF;
1572: , x_Receiving_Org_rec => l_Receiving_Org_rec
1573: , x_return_status => l_return_status
1574: );
1575:
1576: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1577: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1578: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1579: RAISE FND_API.G_EXC_ERROR;
1580: END IF;
1573: , x_return_status => l_return_status
1574: );
1575:
1576: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1577: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1578: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1579: RAISE FND_API.G_EXC_ERROR;
1580: END IF;
1581:
1574: );
1575:
1576: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1577: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1578: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1579: RAISE FND_API.G_EXC_ERROR;
1580: END IF;
1581:
1582: x_Receiving_Org_tbl(I) := l_Receiving_Org_rec;
1575:
1576: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1577: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1578: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1579: RAISE FND_API.G_EXC_ERROR;
1580: END IF;
1581:
1582: x_Receiving_Org_tbl(I) := l_Receiving_Org_rec;
1583:
1596: , x_Shipping_Org_rec => l_Shipping_Org_rec
1597: , x_return_status => l_return_status
1598: );
1599:
1600: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1602: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1603: RAISE FND_API.G_EXC_ERROR;
1604: END IF;
1597: , x_return_status => l_return_status
1598: );
1599:
1600: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1602: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1603: RAISE FND_API.G_EXC_ERROR;
1604: END IF;
1605:
1598: );
1599:
1600: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1602: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1603: RAISE FND_API.G_EXC_ERROR;
1604: END IF;
1605:
1606: x_Shipping_Org_tbl(I) := l_Shipping_Org_rec;
1599:
1600: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1601: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1602: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1603: RAISE FND_API.G_EXC_ERROR;
1604: END IF;
1605:
1606: x_Shipping_Org_tbl(I) := l_Shipping_Org_rec;
1607:
1610: END LOOP;
1611:
1612: -- Set return status
1613:
1614: x_return_status := FND_API.G_RET_STS_SUCCESS;
1615:
1616: -- Get message count and data
1617:
1618: FND_MSG_PUB.Count_And_Get
1622:
1623:
1624: EXCEPTION
1625:
1626: WHEN FND_API.G_EXC_ERROR THEN
1627:
1628: x_return_status := FND_API.G_RET_STS_ERROR;
1629:
1630: -- Get message count and data
1624: EXCEPTION
1625:
1626: WHEN FND_API.G_EXC_ERROR THEN
1627:
1628: x_return_status := FND_API.G_RET_STS_ERROR;
1629:
1630: -- Get message count and data
1631:
1632: FND_MSG_PUB.Count_And_Get
1637: -- Rollback
1638:
1639: ROLLBACK TO Lock_Sourcing_Rule_PVT;
1640:
1641: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1642:
1643: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1644:
1645: -- Get message count and data
1639: ROLLBACK TO Lock_Sourcing_Rule_PVT;
1640:
1641: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1642:
1643: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1644:
1645: -- Get message count and data
1646:
1647: FND_MSG_PUB.Count_And_Get
1654: ROLLBACK TO Lock_Sourcing_Rule_PVT;
1655:
1656: WHEN OTHERS THEN
1657:
1658: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1659:
1660: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1661: THEN
1662: FND_MSG_PUB.Add_Exc_Msg
1695: -- End of Comments
1696:
1697: PROCEDURE Get_Sourcing_Rule
1698: ( p_api_version_number IN NUMBER
1699: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1700: , x_return_status OUT NOCOPY VARCHAR2
1701: , x_msg_count OUT NOCOPY NUMBER
1702: , x_msg_data OUT NOCOPY VARCHAR2
1703: , p_Sourcing_Rule_Id IN NUMBER
1715: BEGIN
1716:
1717: -- Standard call to check for call compatibility
1718:
1719: IF NOT FND_API.Compatible_API_Call
1720: ( l_api_version_number
1721: , p_api_version_number
1722: , l_api_name
1723: , G_PKG_NAME
1722: , l_api_name
1723: , G_PKG_NAME
1724: )
1725: THEN
1726: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1727: END IF;
1728:
1729: -- Initialize message list.
1730:
1727: END IF;
1728:
1729: -- Initialize message list.
1730:
1731: IF FND_API.to_Boolean(p_init_msg_list) THEN
1732: FND_MSG_PUB.initialize;
1733: END IF;
1734:
1735: -- Get Sourcing_Rule
1770: x_Shipping_Org_tbl := l_x_Shipping_Org_tbl;
1771:
1772: -- Set return status
1773:
1774: x_return_status := FND_API.G_RET_STS_SUCCESS;
1775:
1776: -- Get message count and data
1777:
1778: FND_MSG_PUB.Count_And_Get
1782:
1783:
1784: EXCEPTION
1785:
1786: WHEN FND_API.G_EXC_ERROR THEN
1787:
1788: x_return_status := FND_API.G_RET_STS_ERROR;
1789:
1790: -- Get message count and data
1784: EXCEPTION
1785:
1786: WHEN FND_API.G_EXC_ERROR THEN
1787:
1788: x_return_status := FND_API.G_RET_STS_ERROR;
1789:
1790: -- Get message count and data
1791:
1792: FND_MSG_PUB.Count_And_Get
1793: ( p_count => x_msg_count
1794: , p_data => x_msg_data
1795: );
1796:
1797: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1798:
1799: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1800:
1801: -- Get message count and data
1795: );
1796:
1797: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1798:
1799: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1800:
1801: -- Get message count and data
1802:
1803: FND_MSG_PUB.Count_And_Get
1806: );
1807:
1808: WHEN OTHERS THEN
1809:
1810: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1811:
1812: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1813: THEN
1814: FND_MSG_PUB.Add_Exc_Msg