53: -- End of Comments
54:
55: PROCEDURE Process_Price_List
56: ( p_api_version_number IN NUMBER
57: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
58: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
59: , p_commit IN VARCHAR2 := FND_API.G_FALSE
60: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
61: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
54:
55: PROCEDURE Process_Price_List
56: ( p_api_version_number IN NUMBER
57: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
58: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
59: , p_commit IN VARCHAR2 := FND_API.G_FALSE
60: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
61: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
62: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
55: PROCEDURE Process_Price_List
56: ( p_api_version_number IN NUMBER
57: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
58: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
59: , p_commit IN VARCHAR2 := FND_API.G_FALSE
60: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
61: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
62: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
63: , p_PRICE_LIST_rec IN QP_Price_List_PUB.Price_List_Rec_Type :=
103: BEGIN
104:
105: -- Standard call to check for call compatibility
106:
107: IF NOT FND_API.Compatible_API_Call
108: ( l_api_version_number
109: , p_api_version_number
110: , l_api_name
111: , G_PKG_NAME
110: , l_api_name
111: , G_PKG_NAME
112: )
113: THEN
114: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
115: END IF;
116:
117: /* check for installation status ; if it's basic then this api
118: is not available */
128:
129: IF p_PRICE_LIST_rec.rounding_factor IS NULL THEN
130: FND_MESSAGE.SET_NAME('QP','SO_PR_NO_ROUNDING_FACTOR');
131: OE_MSG_PUB.Add;
132: RAISE FND_API.G_EXC_ERROR;
133: END IF;
134:
135:
136:
152: , x_QUALIFIERS_tbl => l_QUALIFIERS_tbl
153: , x_PRICING_ATTR_tbl => l_PRICING_ATTR_tbl
154: );
155:
156: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
157: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
158: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
159: RAISE FND_API.G_EXC_ERROR;
160: END IF;
153: , x_PRICING_ATTR_tbl => l_PRICING_ATTR_tbl
154: );
155:
156: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
157: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
158: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
159: RAISE FND_API.G_EXC_ERROR;
160: END IF;
161:
154: );
155:
156: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
157: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
158: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
159: RAISE FND_API.G_EXC_ERROR;
160: END IF;
161:
162:
155:
156: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
157: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
158: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
159: RAISE FND_API.G_EXC_ERROR;
160: END IF;
161:
162:
163: -- Call QP_LIST_HEADERS_PVT.Process_Price_List
172:
173: QP_LIST_HEADERS_PVT.Process_Price_List
174: ( p_api_version_number => 1.0
175: , p_init_msg_list => p_init_msg_list
176: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
177: , p_commit => p_commit
178: , x_return_status => x_return_status
179: , x_msg_count => x_msg_count
180: , x_msg_data => x_msg_data
197: x_PRICING_ATTR_tbl := l_PRICING_ATTR_tbl;
198:
199: -- If p_return_values is TRUE then convert Ids to Values.
200:
201: IF FND_API.to_Boolean(p_return_values) THEN
202:
203: Id_To_Value
204: ( p_PRICE_LIST_rec => l_PRICE_LIST_rec
205: , p_PRICE_LIST_LINE_tbl => l_PRICE_LIST_LINE_tbl
214: END IF;
215:
216: EXCEPTION
217:
218: WHEN FND_API.G_EXC_ERROR THEN
219:
220: x_return_status := FND_API.G_RET_STS_ERROR;
221:
222: -- Get message count and data
216: EXCEPTION
217:
218: WHEN FND_API.G_EXC_ERROR THEN
219:
220: x_return_status := FND_API.G_RET_STS_ERROR;
221:
222: -- Get message count and data
223:
224: oe_msg_pub.Count_And_Get
225: ( p_count => x_msg_count
226: , p_data => x_msg_data
227: );
228:
229: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
230:
231: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
232:
233: -- Get message count and data
227: );
228:
229: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
230:
231: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
232:
233: -- Get message count and data
234:
235: oe_msg_pub.Count_And_Get
238: );
239:
240: WHEN OTHERS THEN
241:
242: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
243:
244: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_UNEXP_ERROR)
245: THEN
246: oe_msg_pub.Add_Exc_Msg
275: -- End of Comments
276:
277: PROCEDURE Lock_Price_List
278: ( p_api_version_number IN NUMBER
279: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
280: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
281: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
282: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
283: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
276:
277: PROCEDURE Lock_Price_List
278: ( p_api_version_number IN NUMBER
279: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
280: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
281: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
282: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
283: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
284: , p_PRICE_LIST_rec IN QP_Price_List_PUB.Price_List_Rec_Type :=
321: BEGIN
322:
323: -- Standard call to check for call compatibility
324:
325: IF NOT FND_API.Compatible_API_Call
326: ( l_api_version_number
327: , p_api_version_number
328: , l_api_name
329: , G_PKG_NAME
328: , l_api_name
329: , G_PKG_NAME
330: )
331: THEN
332: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
333: END IF;
334:
335: -- Perform Value to Id conversion
336:
349: , x_QUALIFIERS_tbl => l_QUALIFIERS_tbl
350: , x_PRICING_ATTR_tbl => l_PRICING_ATTR_tbl
351: );
352:
353: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
354: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
355: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
356: RAISE FND_API.G_EXC_ERROR;
357: END IF;
350: , x_PRICING_ATTR_tbl => l_PRICING_ATTR_tbl
351: );
352:
353: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
354: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
355: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
356: RAISE FND_API.G_EXC_ERROR;
357: END IF;
358:
351: );
352:
353: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
354: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
355: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
356: RAISE FND_API.G_EXC_ERROR;
357: END IF;
358:
359:
352:
353: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
354: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
355: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
356: RAISE FND_API.G_EXC_ERROR;
357: END IF;
358:
359:
360: -- Call QP_LIST_HEADERS_PVT.Lock_Price_List
387: x_PRICING_ATTR_tbl := l_PRICING_ATTR_tbl;
388:
389: -- If p_return_values is TRUE then convert Ids to Values.
390:
391: IF FND_API.to_Boolean(p_return_values) THEN
392:
393: Id_To_Value
394: ( p_PRICE_LIST_rec => l_PRICE_LIST_rec
395: , p_PRICE_LIST_LINE_tbl => l_PRICE_LIST_LINE_tbl
404: END IF;
405:
406: EXCEPTION
407:
408: WHEN FND_API.G_EXC_ERROR THEN
409:
410: x_return_status := FND_API.G_RET_STS_ERROR;
411:
412: -- Get message count and data
406: EXCEPTION
407:
408: WHEN FND_API.G_EXC_ERROR THEN
409:
410: x_return_status := FND_API.G_RET_STS_ERROR;
411:
412: -- Get message count and data
413:
414: oe_msg_pub.Count_And_Get
415: ( p_count => x_msg_count
416: , p_data => x_msg_data
417: );
418:
419: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
420:
421: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
422:
423: -- Get message count and data
417: );
418:
419: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
420:
421: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
422:
423: -- Get message count and data
424:
425: oe_msg_pub.Count_And_Get
428: );
429:
430: WHEN OTHERS THEN
431:
432: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
433:
434: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_UNEXP_ERROR)
435: THEN
436: oe_msg_pub.Add_Exc_Msg
465: -- End of Comments
466:
467: PROCEDURE Get_Price_List
468: ( p_api_version_number IN NUMBER
469: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
470: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
471: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
472: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
473: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
466:
467: PROCEDURE Get_Price_List
468: ( p_api_version_number IN NUMBER
469: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
470: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
471: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
472: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
473: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
474: , p_list_header_id IN NUMBER :=
471: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
472: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
473: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
474: , p_list_header_id IN NUMBER :=
475: FND_API.G_MISS_NUM
476: , p_list_header IN VARCHAR2 :=
477: FND_API.G_MISS_CHAR
478: , x_PRICE_LIST_rec OUT NOCOPY /* file.sql.39 change */ QP_Price_List_PUB.Price_List_Rec_Type
479: , x_PRICE_LIST_val_rec OUT NOCOPY /* file.sql.39 change */ QP_Price_List_PUB.Price_List_Val_Rec_Type
473: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
474: , p_list_header_id IN NUMBER :=
475: FND_API.G_MISS_NUM
476: , p_list_header IN VARCHAR2 :=
477: FND_API.G_MISS_CHAR
478: , x_PRICE_LIST_rec OUT NOCOPY /* file.sql.39 change */ QP_Price_List_PUB.Price_List_Rec_Type
479: , x_PRICE_LIST_val_rec OUT NOCOPY /* file.sql.39 change */ QP_Price_List_PUB.Price_List_Val_Rec_Type
480: , x_PRICE_LIST_LINE_tbl OUT NOCOPY /* file.sql.39 change */ QP_Price_List_PUB.Price_List_Line_Tbl_Type
481: , x_PRICE_LIST_LINE_val_tbl OUT NOCOPY /* file.sql.39 change */ QP_Price_List_PUB.Price_List_Line_Val_Tbl_Type
495: BEGIN
496:
497: -- Standard call to check for call compatibility
498:
499: IF NOT FND_API.Compatible_API_Call
500: ( l_api_version_number
501: , p_api_version_number
502: , l_api_name
503: , G_PKG_NAME
502: , l_api_name
503: , G_PKG_NAME
504: )
505: THEN
506: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
507: END IF;
508:
509: -- Standard check for Val/ID conversion
510:
507: END IF;
508:
509: -- Standard check for Val/ID conversion
510:
511: IF p_list_header = FND_API.G_MISS_CHAR
512: THEN
513:
514: l_list_header_id := p_list_header_id;
515:
512: THEN
513:
514: l_list_header_id := p_list_header_id;
515:
516: ELSIF p_list_header_id <> FND_API.G_MISS_NUM THEN
517:
518: l_list_header_id := p_list_header_id;
519:
520: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_SUCCESS)
533: l_list_header_id := QP_Value_To_Id.list_header
534: ( p_list_header => p_list_header
535: );
536:
537: IF l_list_header_id = FND_API.G_MISS_NUM THEN
538: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_ERROR)
539: THEN
540:
541: FND_MESSAGE.SET_NAME('QP','Invalid Business Object Value');
544:
545: END IF;
546: END IF;
547:
548: RAISE FND_API.G_EXC_ERROR;
549:
550: END IF;
551:
552:
573: x_PRICING_ATTR_tbl := l_PRICING_ATTR_tbl;
574:
575: -- If p_return_values is TRUE then convert Ids to Values.
576:
577: IF FND_API.TO_BOOLEAN(p_return_values) THEN
578:
579: Id_To_Value
580: ( p_PRICE_LIST_rec => l_PRICE_LIST_rec
581: , p_PRICE_LIST_LINE_tbl => l_PRICE_LIST_LINE_tbl
590: END IF;
591:
592: -- Set return status
593:
594: x_return_status := FND_API.G_RET_STS_SUCCESS;
595:
596: -- Get message count and data
597:
598: oe_msg_pub.Count_And_Get
602:
603:
604: EXCEPTION
605:
606: WHEN FND_API.G_EXC_ERROR THEN
607:
608: x_return_status := FND_API.G_RET_STS_ERROR;
609:
610: -- Get message count and data
604: EXCEPTION
605:
606: WHEN FND_API.G_EXC_ERROR THEN
607:
608: x_return_status := FND_API.G_RET_STS_ERROR;
609:
610: -- Get message count and data
611:
612: oe_msg_pub.Count_And_Get
613: ( p_count => x_msg_count
614: , p_data => x_msg_data
615: );
616:
617: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
618:
619: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
620:
621: -- Get message count and data
615: );
616:
617: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
618:
619: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
620:
621: -- Get message count and data
622:
623: oe_msg_pub.Count_And_Get
626: );
627:
628: WHEN OTHERS THEN
629:
630: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
631:
632: IF oe_msg_pub.Check_Msg_Level(oe_msg_pub.G_MSG_LVL_UNEXP_ERROR)
633: THEN
634: oe_msg_pub.Add_Exc_Msg
698: , 'Id_To_Value'
699: );
700: END IF;
701:
702: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
703:
704: END Id_To_Value;
705:
706: -- Procedure Value_To_Id
729: BEGIN
730:
731: -- Init x_return_status.
732:
733: x_return_status := FND_API.G_RET_STS_SUCCESS;
734:
735: -- Convert PRICE_LIST
736:
737: l_PRICE_LIST_rec := QP_Price_List_Util.Get_Ids
740: );
741:
742: x_PRICE_LIST_rec := l_PRICE_LIST_rec;
743:
744: IF l_PRICE_LIST_rec.return_status = FND_API.G_RET_STS_ERROR THEN
745: x_return_status := FND_API.G_RET_STS_ERROR;
746: END IF;
747:
748: -- Convert PRICE_LIST_LINE
741:
742: x_PRICE_LIST_rec := l_PRICE_LIST_rec;
743:
744: IF l_PRICE_LIST_rec.return_status = FND_API.G_RET_STS_ERROR THEN
745: x_return_status := FND_API.G_RET_STS_ERROR;
746: END IF;
747:
748: -- Convert PRICE_LIST_LINE
749:
759: );
760:
761: x_PRICE_LIST_LINE_tbl(l_index) := l_PRICE_LIST_LINE_rec;
762:
763: IF l_PRICE_LIST_LINE_rec.return_status = FND_API.G_RET_STS_ERROR THEN
764: x_return_status := FND_API.G_RET_STS_ERROR;
765: END IF;
766:
767: l_index := p_PRICE_LIST_LINE_val_tbl.NEXT(l_index);
760:
761: x_PRICE_LIST_LINE_tbl(l_index) := l_PRICE_LIST_LINE_rec;
762:
763: IF l_PRICE_LIST_LINE_rec.return_status = FND_API.G_RET_STS_ERROR THEN
764: x_return_status := FND_API.G_RET_STS_ERROR;
765: END IF;
766:
767: l_index := p_PRICE_LIST_LINE_val_tbl.NEXT(l_index);
768:
783: );
784:
785: x_QUALIFIERS_tbl(l_index) := l_QUALIFIERS_rec;
786:
787: IF l_QUALIFIERS_rec.return_status = FND_API.G_RET_STS_ERROR THEN
788: x_return_status := FND_API.G_RET_STS_ERROR;
789: END IF;
790:
791: l_index := p_QUALIFIERS_val_tbl.NEXT(l_index);
784:
785: x_QUALIFIERS_tbl(l_index) := l_QUALIFIERS_rec;
786:
787: IF l_QUALIFIERS_rec.return_status = FND_API.G_RET_STS_ERROR THEN
788: x_return_status := FND_API.G_RET_STS_ERROR;
789: END IF;
790:
791: l_index := p_QUALIFIERS_val_tbl.NEXT(l_index);
792:
807: );
808:
809: x_PRICING_ATTR_tbl(l_index) := l_PRICING_ATTR_rec;
810:
811: IF l_PRICING_ATTR_rec.return_status = FND_API.G_RET_STS_ERROR THEN
812: x_return_status := FND_API.G_RET_STS_ERROR;
813: END IF;
814:
815: l_index := p_PRICING_ATTR_val_tbl.NEXT(l_index);
808:
809: x_PRICING_ATTR_tbl(l_index) := l_PRICING_ATTR_rec;
810:
811: IF l_PRICING_ATTR_rec.return_status = FND_API.G_RET_STS_ERROR THEN
812: x_return_status := FND_API.G_RET_STS_ERROR;
813: END IF;
814:
815: l_index := p_PRICING_ATTR_val_tbl.NEXT(l_index);
816:
827: , 'Value_To_Id'
828: );
829: END IF;
830:
831: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
832:
833: END Value_To_Id;
834:
835: END QP_Price_List_GRP;