53: -- End of Comments
54:
55: PROCEDURE Process_Modifiers
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: , p_control_rec IN QP_GLOBALS.Control_Rec_Type :=
61: QP_GLOBALS.G_MISS_CONTROL_REC
54:
55: PROCEDURE Process_Modifiers
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: , p_control_rec IN QP_GLOBALS.Control_Rec_Type :=
61: QP_GLOBALS.G_MISS_CONTROL_REC
62: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
55: PROCEDURE Process_Modifiers
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: , p_control_rec IN QP_GLOBALS.Control_Rec_Type :=
61: QP_GLOBALS.G_MISS_CONTROL_REC
62: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
63: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
108: --dbms_output.put_line('BEGIN process_modifiers in Public');
109:
110: -- Standard call to check for call compatibility
111:
112: IF NOT FND_API.Compatible_API_Call
113: ( l_api_version_number
114: , p_api_version_number
115: , l_api_name
116: , G_PKG_NAME
115: , l_api_name
116: , G_PKG_NAME
117: )
118: THEN
119: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
120: END IF;
121:
122: -- BOI not available for Basic Pricing when called through the Public Package
123:
125:
126: -- bug#3599792/bug#3888568/#bug4261021
127: IF p_MODIFIERS_tbl.COUNT <> 0 THEN
128: IF p_MODIFIERS_tbl(1).list_header_id IS NOT NULL AND
129: p_MODIFIERS_tbl(1).list_header_id <> FND_API.G_MISS_NUM THEN
130: BEGIN
131: select list_source_code into l_list_source_code
132: from qp_list_headers_b
133: where list_header_id = p_MODIFIERS_tbl(1).list_header_id;
134: EXCEPTION
135: WHEN OTHERS THEN
136: oe_debug_pub.add('MODIFIERS list_header_id : '||p_MODIFIERS_tbl(1).list_header_id);
137: IF p_MODIFIER_LIST_rec.list_source_code IS NOT NULL
138: AND p_MODIFIER_LIST_rec.list_source_code <> FND_API.G_MISS_CHAR
139: THEN
140: l_list_source_code := p_MODIFIER_LIST_rec.list_source_code;
141: END IF;
142: END;
140: l_list_source_code := p_MODIFIER_LIST_rec.list_source_code;
141: END IF;
142: END;
143: ELSIF p_MODIFIERS_tbl(1).list_line_id IS NOT NULL AND
144: p_MODIFIERS_tbl(1).list_line_id <> FND_API.G_MISS_NUM THEN
145: BEGIN
146: select list_source_code into l_list_source_code
147: from qp_list_headers_b
148: where list_header_id = (select list_header_id from qp_list_lines
150: EXCEPTION
151: WHEN OTHERS THEN
152: oe_debug_pub.add('MODIFIERS list_line_id : '|| p_MODIFIERS_tbl(1).list_line_id);
153: IF p_MODIFIER_LIST_rec.list_source_code IS NOT NULL
154: AND p_MODIFIER_LIST_rec.list_source_code <> FND_API.G_MISS_CHAR
155: THEN
156: l_list_source_code := p_MODIFIER_LIST_rec.list_source_code;
157: END IF;
158: END;
157: END IF;
158: END;
159: ELSE
160: IF p_MODIFIER_LIST_rec.list_source_code IS NOT NULL
161: AND p_MODIFIER_LIST_rec.list_source_code <> FND_API.G_MISS_CHAR
162: THEN
163: l_list_source_code := p_MODIFIER_LIST_rec.list_source_code;
164: END IF;
165: END IF;
164: END IF;
165: END IF;
166: ELSE
167: IF p_MODIFIER_LIST_rec.list_source_code IS NOT NULL
168: AND p_MODIFIER_LIST_rec.list_source_code <> FND_API.G_MISS_CHAR
169: THEN
170: l_list_source_code := p_MODIFIER_LIST_rec.list_source_code;
171: END IF;
172: END IF;
174: IF l_qp_status = 'S'
175: AND nvl(l_list_source_code,'NULL') <> QP_GLOBALS.G_ENTITY_BSO --bug#3385041
176: THEN
177:
178: l_return_status := FND_API.G_RET_STS_ERROR;
179: FND_MESSAGE.SET_NAME('QP','QP_BASIC_PRICING_UNAVAILABLE');
180: OE_MSG_PUB.Add;
181: RAISE FND_API.G_EXC_ERROR;
182:
177:
178: l_return_status := FND_API.G_RET_STS_ERROR;
179: FND_MESSAGE.SET_NAME('QP','QP_BASIC_PRICING_UNAVAILABLE');
180: OE_MSG_PUB.Add;
181: RAISE FND_API.G_EXC_ERROR;
182:
183: END IF;
184:
185: -- Perform Value to Id conversion
200: , x_QUALIFIERS_tbl => l_QUALIFIERS_tbl
201: , x_PRICING_ATTR_tbl => l_PRICING_ATTR_tbl
202: );
203:
204: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
205: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
206: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
207: RAISE FND_API.G_EXC_ERROR;
208: END IF;
201: , x_PRICING_ATTR_tbl => l_PRICING_ATTR_tbl
202: );
203:
204: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
205: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
206: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
207: RAISE FND_API.G_EXC_ERROR;
208: END IF;
209:
202: );
203:
204: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
205: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
206: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
207: RAISE FND_API.G_EXC_ERROR;
208: END IF;
209:
210: -- Call QP_Modifiers_PVT.Process_Modifiers
203:
204: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
205: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
206: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
207: RAISE FND_API.G_EXC_ERROR;
208: END IF;
209:
210: -- Call QP_Modifiers_PVT.Process_Modifiers
211:
217:
218: QP_Modifiers_PVT.Process_Modifiers
219: ( p_api_version_number => 1.0
220: , p_init_msg_list => p_init_msg_list
221: , p_validation_level => FND_API.G_VALID_LEVEL_FULL
222: , p_commit => p_commit
223: , x_return_status => x_return_status
224: , x_msg_count => x_msg_count
225: , x_msg_data => x_msg_data
242: x_PRICING_ATTR_tbl := l_PRICING_ATTR_tbl;
243:
244: -- If p_return_values is TRUE then convert Ids to Values.
245:
246: IF FND_API.to_Boolean(p_return_values) THEN
247:
248: Id_To_Value
249: ( p_MODIFIER_LIST_rec => l_MODIFIER_LIST_rec
250: , p_MODIFIERS_tbl => l_MODIFIERS_tbl
261: oe_debug_pub.add('END process_modifiers in Public');
262: --dbms_output.put_line('END process_modifiers in Public');
263: EXCEPTION
264:
265: WHEN FND_API.G_EXC_ERROR THEN
266:
267: x_return_status := FND_API.G_RET_STS_ERROR;
268:
269: -- Get message count and data
263: EXCEPTION
264:
265: WHEN FND_API.G_EXC_ERROR THEN
266:
267: x_return_status := FND_API.G_RET_STS_ERROR;
268:
269: -- Get message count and data
270:
271: OE_MSG_PUB.Count_And_Get
272: ( p_count => x_msg_count
273: , p_data => x_msg_data
274: );
275:
276: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
277:
278: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
279:
280: -- Get message count and data
274: );
275:
276: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
277:
278: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
279:
280: -- Get message count and data
281:
282: OE_MSG_PUB.Count_And_Get
285: );
286:
287: WHEN OTHERS THEN
288:
289: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
290:
291: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
292: THEN
293: OE_MSG_PUB.Add_Exc_Msg
322: -- End of Comments
323:
324: PROCEDURE Lock_Modifiers
325: ( p_api_version_number IN NUMBER
326: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
327: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
328: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
329: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
330: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
323:
324: PROCEDURE Lock_Modifiers
325: ( p_api_version_number IN NUMBER
326: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
327: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
328: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
329: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
330: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
331: , p_MODIFIER_LIST_rec IN QP_MODIFIERS_PUB.Modifier_List_Rec_Type :=
369:
370: oe_debug_pub.add('BEGIN lock_modifiers in Public');
371: -- Standard call to check for call compatibility
372:
373: IF NOT FND_API.Compatible_API_Call
374: ( l_api_version_number
375: , p_api_version_number
376: , l_api_name
377: , G_PKG_NAME
376: , l_api_name
377: , G_PKG_NAME
378: )
379: THEN
380: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
381: END IF;
382:
383: -- Perform Value to Id conversion
384:
397: , x_QUALIFIERS_tbl => l_QUALIFIERS_tbl
398: , x_PRICING_ATTR_tbl => l_PRICING_ATTR_tbl
399: );
400:
401: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
402: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
403: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
404: RAISE FND_API.G_EXC_ERROR;
405: END IF;
398: , x_PRICING_ATTR_tbl => l_PRICING_ATTR_tbl
399: );
400:
401: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
402: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
403: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
404: RAISE FND_API.G_EXC_ERROR;
405: END IF;
406:
399: );
400:
401: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
402: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
403: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
404: RAISE FND_API.G_EXC_ERROR;
405: END IF;
406:
407:
400:
401: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
402: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
403: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
404: RAISE FND_API.G_EXC_ERROR;
405: END IF;
406:
407:
408: -- Call QP_Modifiers_PVT.Lock_Modifiers
435: x_PRICING_ATTR_tbl := l_PRICING_ATTR_tbl;
436:
437: -- If p_return_values is TRUE then convert Ids to Values.
438:
439: IF FND_API.to_Boolean(p_return_values) THEN
440:
441: Id_To_Value
442: ( p_MODIFIER_LIST_rec => l_MODIFIER_LIST_rec
443: , p_MODIFIERS_tbl => l_MODIFIERS_tbl
452: END IF;
453:
454: EXCEPTION
455:
456: WHEN FND_API.G_EXC_ERROR THEN
457:
458: x_return_status := FND_API.G_RET_STS_ERROR;
459:
460: -- Get message count and data
454: EXCEPTION
455:
456: WHEN FND_API.G_EXC_ERROR THEN
457:
458: x_return_status := FND_API.G_RET_STS_ERROR;
459:
460: -- Get message count and data
461:
462: OE_MSG_PUB.Count_And_Get
463: ( p_count => x_msg_count
464: , p_data => x_msg_data
465: );
466:
467: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
468:
469: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
470:
471: -- Get message count and data
465: );
466:
467: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
468:
469: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
470:
471: -- Get message count and data
472:
473: OE_MSG_PUB.Count_And_Get
476: );
477:
478: WHEN OTHERS THEN
479:
480: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
481:
482: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
483: THEN
484: OE_MSG_PUB.Add_Exc_Msg
514: -- End of Comments
515:
516: PROCEDURE Get_Modifiers
517: ( p_api_version_number IN NUMBER
518: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
519: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
520: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
521: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
522: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
515:
516: PROCEDURE Get_Modifiers
517: ( p_api_version_number IN NUMBER
518: , p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
519: , p_return_values IN VARCHAR2 := FND_API.G_FALSE
520: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
521: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
522: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
523: , p_list_header_id IN NUMBER :=
520: , x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
521: , x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
522: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
523: , p_list_header_id IN NUMBER :=
524: FND_API.G_MISS_NUM
525: , p_list_header IN VARCHAR2 :=
526: FND_API.G_MISS_CHAR
527: , x_MODIFIER_LIST_rec OUT NOCOPY /* file.sql.39 change */ QP_MODIFIERS_PUB.Modifier_List_Rec_Type
528: , x_MODIFIER_LIST_val_rec OUT NOCOPY /* file.sql.39 change */ QP_MODIFIERS_PUB.Modifier_List_Val_Rec_Type
522: , x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
523: , p_list_header_id IN NUMBER :=
524: FND_API.G_MISS_NUM
525: , p_list_header IN VARCHAR2 :=
526: FND_API.G_MISS_CHAR
527: , x_MODIFIER_LIST_rec OUT NOCOPY /* file.sql.39 change */ QP_MODIFIERS_PUB.Modifier_List_Rec_Type
528: , x_MODIFIER_LIST_val_rec OUT NOCOPY /* file.sql.39 change */ QP_MODIFIERS_PUB.Modifier_List_Val_Rec_Type
529: , x_MODIFIERS_tbl OUT NOCOPY /* file.sql.39 change */ QP_MODIFIERS_PUB.Modifiers_Tbl_Type
530: , x_MODIFIERS_val_tbl OUT NOCOPY /* file.sql.39 change */ QP_MODIFIERS_PUB.Modifiers_Val_Tbl_Type
545:
546: oe_debug_pub.add('BEGIN get_modifiers in Public');
547: -- Standard call to check for call compatibility
548:
549: IF NOT FND_API.Compatible_API_Call
550: ( l_api_version_number
551: , p_api_version_number
552: , l_api_name
553: , G_PKG_NAME
552: , l_api_name
553: , G_PKG_NAME
554: )
555: THEN
556: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
557: END IF;
558:
559: -- Standard check for Val/ID conversion
560:
557: END IF;
558:
559: -- Standard check for Val/ID conversion
560:
561: IF p_list_header = FND_API.G_MISS_CHAR
562: THEN
563:
564: l_list_header_id := p_list_header_id;
565:
562: THEN
563:
564: l_list_header_id := p_list_header_id;
565:
566: ELSIF p_list_header_id <> FND_API.G_MISS_NUM THEN
567:
568: l_list_header_id := p_list_header_id;
569:
570: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
583: l_list_header_id := QP_Value_To_Id.list_header
584: ( p_list_header => p_list_header
585: );
586:
587: IF l_list_header_id = FND_API.G_MISS_NUM THEN
588: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
589: THEN
590:
591: FND_MESSAGE.SET_NAME('QP','Invalid Business Object Value');
594:
595: END IF;
596: END IF;
597:
598: RAISE FND_API.G_EXC_ERROR;
599:
600: END IF;
601:
602:
623: x_PRICING_ATTR_tbl := l_PRICING_ATTR_tbl;
624:
625: -- If p_return_values is TRUE then convert Ids to Values.
626:
627: IF FND_API.TO_BOOLEAN(p_return_values) THEN
628:
629: Id_To_Value
630: ( p_MODIFIER_LIST_rec => l_MODIFIER_LIST_rec
631: , p_MODIFIERS_tbl => l_MODIFIERS_tbl
640: END IF;
641:
642: -- Set return status
643:
644: x_return_status := FND_API.G_RET_STS_SUCCESS;
645:
646: -- Get message count and data
647:
648: OE_MSG_PUB.Count_And_Get
652:
653:
654: EXCEPTION
655:
656: WHEN FND_API.G_EXC_ERROR THEN
657:
658: x_return_status := FND_API.G_RET_STS_ERROR;
659:
660: -- Get message count and data
654: EXCEPTION
655:
656: WHEN FND_API.G_EXC_ERROR THEN
657:
658: x_return_status := FND_API.G_RET_STS_ERROR;
659:
660: -- Get message count and data
661:
662: OE_MSG_PUB.Count_And_Get
663: ( p_count => x_msg_count
664: , p_data => x_msg_data
665: );
666:
667: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
668:
669: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
670:
671: -- Get message count and data
665: );
666:
667: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
668:
669: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
670:
671: -- Get message count and data
672:
673: OE_MSG_PUB.Count_And_Get
676: );
677:
678: WHEN OTHERS THEN
679:
680: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
681:
682: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
683: THEN
684: OE_MSG_PUB.Add_Exc_Msg
749: , 'Id_To_Value'
750: );
751: END IF;
752:
753: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
754:
755: oe_debug_pub.add('END id_to_value in Public');
756: END Id_To_Value;
757:
782:
783: oe_debug_pub.add('START value_to_id in Public');
784:
785: -- Init x_return_status.
786: x_return_status := FND_API.G_RET_STS_SUCCESS;
787:
788:
789: -- Convert MODIFIER_LIST
790:
794: );
795:
796: x_MODIFIER_LIST_rec := l_MODIFIER_LIST_rec;
797:
798: IF l_MODIFIER_LIST_rec.return_status = FND_API.G_RET_STS_ERROR THEN
799: x_return_status := FND_API.G_RET_STS_ERROR;
800: END IF;
801:
802: -- Convert MODIFIERS
795:
796: x_MODIFIER_LIST_rec := l_MODIFIER_LIST_rec;
797:
798: IF l_MODIFIER_LIST_rec.return_status = FND_API.G_RET_STS_ERROR THEN
799: x_return_status := FND_API.G_RET_STS_ERROR;
800: END IF;
801:
802: -- Convert MODIFIERS
803:
813: );
814:
815: x_MODIFIERS_tbl(l_index) := l_MODIFIERS_rec;
816:
817: IF l_MODIFIERS_rec.return_status = FND_API.G_RET_STS_ERROR THEN
818: x_return_status := FND_API.G_RET_STS_ERROR;
819: END IF;
820:
821: l_index := p_MODIFIERS_val_tbl.NEXT(l_index);
814:
815: x_MODIFIERS_tbl(l_index) := l_MODIFIERS_rec;
816:
817: IF l_MODIFIERS_rec.return_status = FND_API.G_RET_STS_ERROR THEN
818: x_return_status := FND_API.G_RET_STS_ERROR;
819: END IF;
820:
821: l_index := p_MODIFIERS_val_tbl.NEXT(l_index);
822:
836: );
837:
838: x_QUALIFIERS_tbl(l_index) := l_QUALIFIERS_rec;
839:
840: IF l_QUALIFIERS_rec.return_status = FND_API.G_RET_STS_ERROR THEN
841: x_return_status := FND_API.G_RET_STS_ERROR;
842: END IF;
843:
844: l_index := p_QUALIFIERS_val_tbl.NEXT(l_index);
837:
838: x_QUALIFIERS_tbl(l_index) := l_QUALIFIERS_rec;
839:
840: IF l_QUALIFIERS_rec.return_status = FND_API.G_RET_STS_ERROR THEN
841: x_return_status := FND_API.G_RET_STS_ERROR;
842: END IF;
843:
844: l_index := p_QUALIFIERS_val_tbl.NEXT(l_index);
845:
859: );
860:
861: x_PRICING_ATTR_tbl(l_index) := l_PRICING_ATTR_rec;
862:
863: IF l_PRICING_ATTR_rec.return_status = FND_API.G_RET_STS_ERROR THEN
864: x_return_status := FND_API.G_RET_STS_ERROR;
865: END IF;
866:
867: l_index := p_PRICING_ATTR_val_tbl.NEXT(l_index);
860:
861: x_PRICING_ATTR_tbl(l_index) := l_PRICING_ATTR_rec;
862:
863: IF l_PRICING_ATTR_rec.return_status = FND_API.G_RET_STS_ERROR THEN
864: x_return_status := FND_API.G_RET_STS_ERROR;
865: END IF;
866:
867: l_index := p_PRICING_ATTR_val_tbl.NEXT(l_index);
868:
880: , 'Value_To_Id'
881: );
882: END IF;
883:
884: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
885:
886: END Value_To_Id;
887:
888: