92: G_USER_ID NUMBER := FND_GLOBAL.USER_ID;
93: G_LOGIN_ID NUMBER := FND_GLOBAL.CONC_LOGIN_ID;
94:
95: BEGIN
96: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
97: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: Start of Config_Callback_Pricing_Order.....',1,'Y');
98: END IF;
99: -- Standard Start of API savepoint
100: SAVEPOINT ASO_PRICING_CALLBACK_PVT;
93: G_LOGIN_ID NUMBER := FND_GLOBAL.CONC_LOGIN_ID;
94:
95: BEGIN
96: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
97: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: Start of Config_Callback_Pricing_Order.....',1,'Y');
98: END IF;
99: -- Standard Start of API savepoint
100: SAVEPOINT ASO_PRICING_CALLBACK_PVT;
101:
110:
111: -- Initialize message list if p_init_msg_list is set to TRUE.
112: IF FND_API.to_Boolean( p_init_msg_list )
113: THEN
114: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
115: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin FND_API.to_Boolean'||p_init_msg_list, 1, 'Y');
116: END IF;
117: FND_MSG_PUB.initialize;
118: END IF;
111: -- Initialize message list if p_init_msg_list is set to TRUE.
112: IF FND_API.to_Boolean( p_init_msg_list )
113: THEN
114: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
115: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin FND_API.to_Boolean'||p_init_msg_list, 1, 'Y');
116: END IF;
117: FND_MSG_PUB.initialize;
118: END IF;
119:
118: END IF;
119:
120: x_return_status := FND_API.G_RET_STS_SUCCESS;
121:
122: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
123: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_control_rec.request_type:'||p_control_rec.request_type,1,'N');
124: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_control_rec.pricing_event:'||p_control_rec.pricing_event,1,'N');
125: END IF;
126: l_request_type := p_control_rec.request_type;
119:
120: x_return_status := FND_API.G_RET_STS_SUCCESS;
121:
122: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
123: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_control_rec.request_type:'||p_control_rec.request_type,1,'N');
124: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_control_rec.pricing_event:'||p_control_rec.pricing_event,1,'N');
125: END IF;
126: l_request_type := p_control_rec.request_type;
127: l_pricing_event := p_control_rec.pricing_event;
120: x_return_status := FND_API.G_RET_STS_SUCCESS;
121:
122: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
123: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_control_rec.request_type:'||p_control_rec.request_type,1,'N');
124: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_control_rec.pricing_event:'||p_control_rec.pricing_event,1,'N');
125: END IF;
126: l_request_type := p_control_rec.request_type;
127: l_pricing_event := p_control_rec.pricing_event;
128:
129: ASO_PRICING_INT.G_HEADER_REC := ASO_PRICING_CORE_PVT.Set_Global_Rec (
130: p_qte_header_rec => p_qte_header_rec,
131: p_shipment_rec => p_hd_shipment_rec);
132:
133: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
134: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:QP_ATTR_MAPPING_PUB.Build_Contexts Starts',1,'Y');
135: END IF;
136: QP_ATTR_MAPPING_PUB.Build_Contexts (
137: P_REQUEST_TYPE_CODE => l_request_type,
130: p_qte_header_rec => p_qte_header_rec,
131: p_shipment_rec => p_hd_shipment_rec);
132:
133: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
134: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:QP_ATTR_MAPPING_PUB.Build_Contexts Starts',1,'Y');
135: END IF;
136: QP_ATTR_MAPPING_PUB.Build_Contexts (
137: P_REQUEST_TYPE_CODE => l_request_type,
138: P_PRICING_TYPE => 'H',
137: P_REQUEST_TYPE_CODE => l_request_type,
138: P_PRICING_TYPE => 'H',
139: X_PRICE_CONTEXTS_RESULT_TBL => l_hd_pricing_contexts_tbl,
140: X_QUAL_CONTEXTS_RESULT_TBL => l_hd_qual_contexts_tbl);
141: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
142: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:QP_ATTR_MAPPING_PUB.Build_Contexts Ends',1,'Y');
143: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Attribs_To_Req Starts',1,'Y');
144: END IF;
145:
138: P_PRICING_TYPE => 'H',
139: X_PRICE_CONTEXTS_RESULT_TBL => l_hd_pricing_contexts_tbl,
140: X_QUAL_CONTEXTS_RESULT_TBL => l_hd_qual_contexts_tbl);
141: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
142: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:QP_ATTR_MAPPING_PUB.Build_Contexts Ends',1,'Y');
143: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Attribs_To_Req Starts',1,'Y');
144: END IF;
145:
146: Copy_Attribs_To_Req (
139: X_PRICE_CONTEXTS_RESULT_TBL => l_hd_pricing_contexts_tbl,
140: X_QUAL_CONTEXTS_RESULT_TBL => l_hd_qual_contexts_tbl);
141: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
142: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:QP_ATTR_MAPPING_PUB.Build_Contexts Ends',1,'Y');
143: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Attribs_To_Req Starts',1,'Y');
144: END IF;
145:
146: Copy_Attribs_To_Req (
147: p_line_index => 1,
148: p_pricing_contexts_tbl => l_hd_pricing_contexts_tbl,
149: p_qualifier_contexts_tbl => l_hd_qual_contexts_tbl,
150: px_req_line_attr_tbl => l_req_line_attr_tbl,
151: px_req_qual_tbl => l_req_qual_tbl);
152: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
153: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Attribs_To_Req Ends',1,'Y');
154: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Append_asked_for Starts',1,'Y');
155: END IF;
156:
149: p_qualifier_contexts_tbl => l_hd_qual_contexts_tbl,
150: px_req_line_attr_tbl => l_req_line_attr_tbl,
151: px_req_qual_tbl => l_req_qual_tbl);
152: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
153: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Attribs_To_Req Ends',1,'Y');
154: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Append_asked_for Starts',1,'Y');
155: END IF;
156:
157: Append_asked_for(
150: px_req_line_attr_tbl => l_req_line_attr_tbl,
151: px_req_qual_tbl => l_req_qual_tbl);
152: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
153: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Attribs_To_Req Ends',1,'Y');
154: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Append_asked_for Starts',1,'Y');
155: END IF;
156:
157: Append_asked_for(
158: p_header_id => p_qte_header_rec.quote_header_id
158: p_header_id => p_qte_header_rec.quote_header_id
159: ,p_line_index => 1
160: ,px_Req_line_attr_tbl => l_Req_line_attr_tbl
161: ,px_Req_qual_tbl => l_Req_qual_tbl);
162: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
163: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Append_asked_for Ends',1,'Y');
164: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Header_To_Request Starts',1,'Y');
165: END IF;
166:
159: ,p_line_index => 1
160: ,px_Req_line_attr_tbl => l_Req_line_attr_tbl
161: ,px_Req_qual_tbl => l_Req_qual_tbl);
162: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
163: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Append_asked_for Ends',1,'Y');
164: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Header_To_Request Starts',1,'Y');
165: END IF;
166:
167: Copy_Header_To_Request(
160: ,px_Req_line_attr_tbl => l_Req_line_attr_tbl
161: ,px_Req_qual_tbl => l_Req_qual_tbl);
162: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
163: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Append_asked_for Ends',1,'Y');
164: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Header_To_Request Starts',1,'Y');
165: END IF;
166:
167: Copy_Header_To_Request(
168: p_Request_Type => l_request_type,
168: p_Request_Type => l_request_type,
169: p_pricing_event => l_pricing_event,
170: p_header_rec => p_qte_header_rec,
171: px_req_line_tbl => l_Req_line_tbl);
172: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
173: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Header_To_Request Ends',1,'Y');
174: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_qte_header_rec.quote_header_id:'||p_qte_header_rec.quote_header_id,1,'N');
175: END IF;
176:
169: p_pricing_event => l_pricing_event,
170: p_header_rec => p_qte_header_rec,
171: px_req_line_tbl => l_Req_line_tbl);
172: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
173: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Header_To_Request Ends',1,'Y');
174: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_qte_header_rec.quote_header_id:'||p_qte_header_rec.quote_header_id,1,'N');
175: END IF;
176:
177: l_qte_line_tbl := p_qte_line_tbl;
170: p_header_rec => p_qte_header_rec,
171: px_req_line_tbl => l_Req_line_tbl);
172: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
173: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Header_To_Request Ends',1,'Y');
174: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_qte_header_rec.quote_header_id:'||p_qte_header_rec.quote_header_id,1,'N');
175: END IF;
176:
177: l_qte_line_tbl := p_qte_line_tbl;
178:
175: END IF;
176:
177: l_qte_line_tbl := p_qte_line_tbl;
178:
179: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
180: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: l_qte_line_tbl.count'|| l_qte_line_tbl.count, 1, 'N');
181: END IF;
182: If l_qte_line_tbl.count > 0 Then
183:
176:
177: l_qte_line_tbl := p_qte_line_tbl;
178:
179: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
180: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: l_qte_line_tbl.count'|| l_qte_line_tbl.count, 1, 'N');
181: END IF;
182: If l_qte_line_tbl.count > 0 Then
183:
184: FOR i IN 1..l_qte_line_tbl.count LOOP/*Main Loop for preparing Lines from Quote in the Price Req Strcture*/
193: IF l_qte_line_dtl_tbl.count = 1 THEN
194: l_qte_line_dtl_rec := l_qte_line_dtl_tbl(1);
195: END IF;
196:
197: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
198: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the G_LINE_REC', 1, 'Y');
199: END IF;
200: ASO_PRICING_INT.G_LINE_REC := ASO_PRICING_CORE_PVT.Set_Global_Rec (
201: p_qte_line_rec => l_qte_line_tbl(i),
194: l_qte_line_dtl_rec := l_qte_line_dtl_tbl(1);
195: END IF;
196:
197: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
198: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the G_LINE_REC', 1, 'Y');
199: END IF;
200: ASO_PRICING_INT.G_LINE_REC := ASO_PRICING_CORE_PVT.Set_Global_Rec (
201: p_qte_line_rec => l_qte_line_tbl(i),
202: p_qte_line_dtl_rec => l_qte_line_dtl_rec,
200: ASO_PRICING_INT.G_LINE_REC := ASO_PRICING_CORE_PVT.Set_Global_Rec (
201: p_qte_line_rec => l_qte_line_tbl(i),
202: p_qte_line_dtl_rec => l_qte_line_dtl_rec,
203: p_shipment_rec => l_shipment_rec);
204: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
205: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the G_LINE_REC', 1, 'Y');
206: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Build_Contexts', 1, 'Y');
207: END IF;
208: QP_ATTR_MAPPING_PUB.Build_Contexts (
201: p_qte_line_rec => l_qte_line_tbl(i),
202: p_qte_line_dtl_rec => l_qte_line_dtl_rec,
203: p_shipment_rec => l_shipment_rec);
204: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
205: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the G_LINE_REC', 1, 'Y');
206: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Build_Contexts', 1, 'Y');
207: END IF;
208: QP_ATTR_MAPPING_PUB.Build_Contexts (
209: P_REQUEST_TYPE_CODE => l_request_type,
202: p_qte_line_dtl_rec => l_qte_line_dtl_rec,
203: p_shipment_rec => l_shipment_rec);
204: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
205: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the G_LINE_REC', 1, 'Y');
206: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Build_Contexts', 1, 'Y');
207: END IF;
208: QP_ATTR_MAPPING_PUB.Build_Contexts (
209: P_REQUEST_TYPE_CODE => l_request_type,
210: P_PRICING_TYPE => 'L',
209: P_REQUEST_TYPE_CODE => l_request_type,
210: P_PRICING_TYPE => 'L',
211: X_PRICE_CONTEXTS_RESULT_TBL => l_pricing_contexts_tbl,
212: X_QUAL_CONTEXTS_RESULT_TBL => l_qual_contexts_tbl);
213: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
214: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Build_Contexts', 1, 'Y');
215: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Copy_Attribs_To_Req', 1, 'Y');
216: END IF;
217: Copy_Attribs_To_Req (
210: P_PRICING_TYPE => 'L',
211: X_PRICE_CONTEXTS_RESULT_TBL => l_pricing_contexts_tbl,
212: X_QUAL_CONTEXTS_RESULT_TBL => l_qual_contexts_tbl);
213: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
214: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Build_Contexts', 1, 'Y');
215: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Copy_Attribs_To_Req', 1, 'Y');
216: END IF;
217: Copy_Attribs_To_Req (
218: p_line_index => i+1,
211: X_PRICE_CONTEXTS_RESULT_TBL => l_pricing_contexts_tbl,
212: X_QUAL_CONTEXTS_RESULT_TBL => l_qual_contexts_tbl);
213: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
214: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Build_Contexts', 1, 'Y');
215: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Copy_Attribs_To_Req', 1, 'Y');
216: END IF;
217: Copy_Attribs_To_Req (
218: p_line_index => i+1,
219: p_pricing_contexts_tbl => l_pricing_contexts_tbl,
219: p_pricing_contexts_tbl => l_pricing_contexts_tbl,
220: p_qualifier_contexts_tbl => l_qual_contexts_tbl,
221: px_req_line_attr_tbl => l_req_line_attr_tbl,
222: px_req_qual_tbl => l_req_qual_tbl);
223: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
224: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Copy_Attribs_To_Req', 1, 'Y');
225: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Copy_hdr_attr_to_line', 1, 'Y');
226: END IF;
227: Copy_hdr_attr_to_line (
220: p_qualifier_contexts_tbl => l_qual_contexts_tbl,
221: px_req_line_attr_tbl => l_req_line_attr_tbl,
222: px_req_qual_tbl => l_req_qual_tbl);
223: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
224: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Copy_Attribs_To_Req', 1, 'Y');
225: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Copy_hdr_attr_to_line', 1, 'Y');
226: END IF;
227: Copy_hdr_attr_to_line (
228: p_line_index => i+1,
221: px_req_line_attr_tbl => l_req_line_attr_tbl,
222: px_req_qual_tbl => l_req_qual_tbl);
223: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
224: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Copy_Attribs_To_Req', 1, 'Y');
225: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Copy_hdr_attr_to_line', 1, 'Y');
226: END IF;
227: Copy_hdr_attr_to_line (
228: p_line_index => i+1,
229: p_pricing_contexts_tbl => l_hd_pricing_contexts_tbl,
229: p_pricing_contexts_tbl => l_hd_pricing_contexts_tbl,
230: p_qualifier_contexts_tbl => l_hd_qual_contexts_tbl,
231: px_req_line_attr_tbl => l_req_line_attr_tbl,
232: px_req_qual_tbl => l_req_qual_tbl);
233: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
234: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Copy_hdr_attr_to_line', 1, 'Y');
235: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Append_asked_for', 1, 'Y');
236: END IF;
237: Append_asked_for(
230: p_qualifier_contexts_tbl => l_hd_qual_contexts_tbl,
231: px_req_line_attr_tbl => l_req_line_attr_tbl,
232: px_req_qual_tbl => l_req_qual_tbl);
233: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
234: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Copy_hdr_attr_to_line', 1, 'Y');
235: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Append_asked_for', 1, 'Y');
236: END IF;
237: Append_asked_for(
238: p_header_id => p_qte_header_rec.quote_header_id
231: px_req_line_attr_tbl => l_req_line_attr_tbl,
232: px_req_qual_tbl => l_req_qual_tbl);
233: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
234: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Copy_hdr_attr_to_line', 1, 'Y');
235: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Append_asked_for', 1, 'Y');
236: END IF;
237: Append_asked_for(
238: p_header_id => p_qte_header_rec.quote_header_id
239: ,p_line_id => l_qte_line_tbl(i).quote_line_id
239: ,p_line_id => l_qte_line_tbl(i).quote_line_id
240: ,p_line_index => i+1
241: ,px_Req_line_attr_tbl => l_Req_line_attr_tbl
242: ,px_Req_qual_tbl => l_Req_qual_tbl);
243: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
244: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Append_asked_for', 1, 'Y');
245: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Copy_Line_To_Request', 1, 'Y');
246: END IF;
247: Copy_Line_To_Request(
240: ,p_line_index => i+1
241: ,px_Req_line_attr_tbl => l_Req_line_attr_tbl
242: ,px_Req_qual_tbl => l_Req_qual_tbl);
243: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
244: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Append_asked_for', 1, 'Y');
245: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Copy_Line_To_Request', 1, 'Y');
246: END IF;
247: Copy_Line_To_Request(
248: p_Request_Type => l_request_type,
241: ,px_Req_line_attr_tbl => l_Req_line_attr_tbl
242: ,px_Req_qual_tbl => l_Req_qual_tbl);
243: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
244: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Append_asked_for', 1, 'Y');
245: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin Setting up the Copy_Line_To_Request', 1, 'Y');
246: END IF;
247: Copy_Line_To_Request(
248: p_Request_Type => l_request_type,
249: p_pricing_event => l_pricing_event,
250: p_line_rec => l_qte_line_tbl(i),
251: p_line_dtl_rec => l_qte_line_dtl_rec,
252: p_control_rec => p_control_rec,
253: px_req_line_tbl => l_Req_line_tbl);
254: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
255: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Copy_Line_To_Request', 1, 'Y');
256: END IF;
257: END LOOP; --main End loop FOR i IN 1..l_qte_line_tbl.count
258:
251: p_line_dtl_rec => l_qte_line_dtl_rec,
252: p_control_rec => p_control_rec,
253: px_req_line_tbl => l_Req_line_tbl);
254: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
255: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End Setting up the Copy_Line_To_Request', 1, 'Y');
256: END IF;
257: END LOOP; --main End loop FOR i IN 1..l_qte_line_tbl.count
258:
259: l_control_rec.pricing_event := p_control_rec.pricing_event;
263: l_control_rec.source_order_amount_flag := 'Y';
264: l_control_rec.GSA_CHECK_FLAG := 'Y';
265: l_control_rec.GSA_DUP_CHECK_FLAG := 'Y';
266:
267: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
268: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Start of QP_PREQ_PUB.PRICE_REQUEST', 1, 'Y');
269: END IF;
270: /* Change for populating QP_PREQ_GRP.CONTROL_RECORD_TYPE.ORG_ID Yogeshwar (MOAC) */
271:
264: l_control_rec.GSA_CHECK_FLAG := 'Y';
265: l_control_rec.GSA_DUP_CHECK_FLAG := 'Y';
266:
267: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
268: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Start of QP_PREQ_PUB.PRICE_REQUEST', 1, 'Y');
269: END IF;
270: /* Change for populating QP_PREQ_GRP.CONTROL_RECORD_TYPE.ORG_ID Yogeshwar (MOAC) */
271:
272: l_control_rec.ORG_ID := p_qte_header_rec.org_id;
291: x_line_detail_attr_tbl => lx_req_line_detail_attr_tbl,
292: x_related_lines_tbl => lx_req_related_lines_tbl,
293: x_return_status => l_return_status,
294: x_return_status_text => l_return_status_text);
295: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
296: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End of QP_PREQ_PUB.PRICE_REQUEST', 1, 'Y');
297: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After PRICE_REQUEST l_return_status:'||l_return_status, 1, 'N');
298: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After PRICE_REQUEST l_return_status_text '||l_return_status_text,1,'N');
299: END IF;
292: x_related_lines_tbl => lx_req_related_lines_tbl,
293: x_return_status => l_return_status,
294: x_return_status_text => l_return_status_text);
295: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
296: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End of QP_PREQ_PUB.PRICE_REQUEST', 1, 'Y');
297: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After PRICE_REQUEST l_return_status:'||l_return_status, 1, 'N');
298: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After PRICE_REQUEST l_return_status_text '||l_return_status_text,1,'N');
299: END IF;
300:
293: x_return_status => l_return_status,
294: x_return_status_text => l_return_status_text);
295: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
296: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End of QP_PREQ_PUB.PRICE_REQUEST', 1, 'Y');
297: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After PRICE_REQUEST l_return_status:'||l_return_status, 1, 'N');
298: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After PRICE_REQUEST l_return_status_text '||l_return_status_text,1,'N');
299: END IF;
300:
301: ASO_PRICING_INT.G_LINE_REC := NULL;
294: x_return_status_text => l_return_status_text);
295: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
296: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:End of QP_PREQ_PUB.PRICE_REQUEST', 1, 'Y');
297: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After PRICE_REQUEST l_return_status:'||l_return_status, 1, 'N');
298: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After PRICE_REQUEST l_return_status_text '||l_return_status_text,1,'N');
299: END IF;
300:
301: ASO_PRICING_INT.G_LINE_REC := NULL;
302: ASO_PRICING_INT.G_HEADER_REC := NULL;
340: END IF;
341: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
342: ELSE
343: l_message_text := lx_req_line_rec.status_code || ': '||lx_req_line_rec.status_text;
344: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
345: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After GSA Violation QP ERROR '||l_message_text, 1, 'Y');
346: END IF;
347: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
348: FND_MESSAGE.Set_Name('ASO', 'ASO_OM_ERROR');
341: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
342: ELSE
343: l_message_text := lx_req_line_rec.status_code || ': '||lx_req_line_rec.status_text;
344: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
345: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After GSA Violation QP ERROR '||l_message_text, 1, 'Y');
346: END IF;
347: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
348: FND_MESSAGE.Set_Name('ASO', 'ASO_OM_ERROR');
349: FND_MESSAGE.Set_Token('MSG_TXT', substr(l_message_text, 1,255), FALSE);
355: END If;
356: i := lx_req_line_tbl.NEXT(i);
357: END LOOP; -- End loop WHILE i IS NOT NULL LOOP
358:
359: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
360: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Before Copy_Request_To_Quote', 1, 'Y');
361: END IF;
362: Copy_Request_To_Quote(
363: p_req_line_tbl => lx_req_line_tbl,
356: i := lx_req_line_tbl.NEXT(i);
357: END LOOP; -- End loop WHILE i IS NOT NULL LOOP
358:
359: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
360: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Before Copy_Request_To_Quote', 1, 'Y');
361: END IF;
362: Copy_Request_To_Quote(
363: p_req_line_tbl => lx_req_line_tbl,
364: p_req_line_qual => lx_Req_qual_tbl,
375: x_qte_line_dtl_tbl => lx_qte_line_dtl_tbl,
376: x_price_adj_tbl => lx_price_adj_tbl,
377: x_price_adj_attr_tbl => lx_price_adj_attr_tbl,
378: x_price_adj_rltship_tbl => lx_price_adj_rltship_tbl);
379: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
380: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:after Copy_Request_To_Quote', 1, 'Y');
381: END IF;
382:
383: x_qte_line_tbl := lx_qte_line_tbl;
376: x_price_adj_tbl => lx_price_adj_tbl,
377: x_price_adj_attr_tbl => lx_price_adj_attr_tbl,
378: x_price_adj_rltship_tbl => lx_price_adj_rltship_tbl);
379: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
380: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:after Copy_Request_To_Quote', 1, 'Y');
381: END IF;
382:
383: x_qte_line_tbl := lx_qte_line_tbl;
384:
402: );
403:
404: for l in 1 .. x_msg_count loop
405: x_msg_data := fnd_msg_pub.get( p_msg_index => l, p_encoded => 'F');
406: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
407: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Messge count and get '||x_msg_data, 1, 'Y');
408: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Messge count and get '||x_msg_count, 1, 'Y');
409: END IF;
410: end loop;
403:
404: for l in 1 .. x_msg_count loop
405: x_msg_data := fnd_msg_pub.get( p_msg_index => l, p_encoded => 'F');
406: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
407: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Messge count and get '||x_msg_data, 1, 'Y');
408: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Messge count and get '||x_msg_count, 1, 'Y');
409: END IF;
410: end loop;
411:
404: for l in 1 .. x_msg_count loop
405: x_msg_data := fnd_msg_pub.get( p_msg_index => l, p_encoded => 'F');
406: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
407: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Messge count and get '||x_msg_data, 1, 'Y');
408: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Messge count and get '||x_msg_count, 1, 'Y');
409: END IF;
410: end loop;
411:
412: EXCEPTION
410: end loop;
411:
412: EXCEPTION
413: WHEN FND_API.G_EXC_ERROR THEN
414: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
415: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After inside EXCEPTION return status'||x_return_status, 1, 'N');
416: END IF;
417: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
418: P_API_NAME => L_API_NAME
411:
412: EXCEPTION
413: WHEN FND_API.G_EXC_ERROR THEN
414: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
415: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:After inside EXCEPTION return status'||x_return_status, 1, 'N');
416: END IF;
417: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
418: P_API_NAME => L_API_NAME
419: ,P_PKG_NAME => G_PKG_NAME
517: lx_msg_count NUMBER;
518: lx_msg_data VARCHAR2(2000);
519:
520: BEGIN
521: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
522: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: In Config_Callback_Pricing_Order with HDR Id CALL', 1, 'Y');
523: END IF;
524: -- Standard Start of API savepoint
525: SAVEPOINT ASO_PRICING_CALLBACK_PVT;
518: lx_msg_data VARCHAR2(2000);
519:
520: BEGIN
521: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
522: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: In Config_Callback_Pricing_Order with HDR Id CALL', 1, 'Y');
523: END IF;
524: -- Standard Start of API savepoint
525: SAVEPOINT ASO_PRICING_CALLBACK_PVT;
526:
633: IS
634: l_attr_index number := nvl(px_Req_line_attr_tbl.last,0);
635: l_qual_index number := nvl(px_Req_qual_tbl.last,0);
636: BEGIN
637: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
638: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: In copy attribs to req - Global Header Rec quote_status_id'
639: ||ASO_PRICING_INT.G_HEADER_REC.quote_status_id,1,'N');
640: END IF;
641: for i in 1..p_pricing_contexts_Tbl.count loop
634: l_attr_index number := nvl(px_Req_line_attr_tbl.last,0);
635: l_qual_index number := nvl(px_Req_qual_tbl.last,0);
636: BEGIN
637: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
638: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: In copy attribs to req - Global Header Rec quote_status_id'
639: ||ASO_PRICING_INT.G_HEADER_REC.quote_status_id,1,'N');
640: END IF;
641: for i in 1..p_pricing_contexts_Tbl.count loop
642: l_attr_index := l_attr_index +1;
682: l_attr_index number := nvl(px_Req_line_attr_tbl.last,0);
683: l_qual_index number := nvl(px_Req_qual_tbl.last,0);
684: copy_hdr_rec_to_line_flag boolean := TRUE;
685: BEGIN
686: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
687: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: copy_hdr_attribs_to_line - Global Header Rec quote_status_id:'
688: ||ASO_PRICING_INT.G_HEADER_REC.quote_status_id,1,'N');
689: END IF;
690: for i in 1..p_pricing_contexts_Tbl.count loop
683: l_qual_index number := nvl(px_Req_qual_tbl.last,0);
684: copy_hdr_rec_to_line_flag boolean := TRUE;
685: BEGIN
686: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
687: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: copy_hdr_attribs_to_line - Global Header Rec quote_status_id:'
688: ||ASO_PRICING_INT.G_HEADER_REC.quote_status_id,1,'N');
689: END IF;
690: for i in 1..p_pricing_contexts_Tbl.count loop
691: l_attr_index := l_attr_index +1;
810: where ( a.QUOTE_line_id = p_line_id )
811: and (p_line_id is not null and p_line_id <> FND_API.G_MISS_NUM);
812:
813: begin
814: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
815: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: In PL/SQL tbl,append_asked_for - Global_Header_Rec quote_status_id'
816: ||ASO_PRICING_INT.G_HEADER_REC.quote_status_id,1,'N');
817: END IF;
818: for asked_for_rec in asked_for_cur loop
811: and (p_line_id is not null and p_line_id <> FND_API.G_MISS_NUM);
812:
813: begin
814: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
815: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: In PL/SQL tbl,append_asked_for - Global_Header_Rec quote_status_id'
816: ||ASO_PRICING_INT.G_HEADER_REC.quote_status_id,1,'N');
817: END IF;
818: for asked_for_rec in asked_for_cur loop
819: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
815: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT: In PL/SQL tbl,append_asked_for - Global_Header_Rec quote_status_id'
816: ||ASO_PRICING_INT.G_HEADER_REC.quote_status_id,1,'N');
817: END IF;
818: for asked_for_rec in asked_for_cur loop
819: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
820: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In append_asked_for asked_for_rec.PRICING_ATTRIBUTE1'
821: ||asked_for_rec.PRICING_ATTRIBUTE1,1,'Y');
822: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In append_asked_for asked_for_rec.flex_title'
823: ||asked_for_rec.flex_title,1,'Y');
816: ||ASO_PRICING_INT.G_HEADER_REC.quote_status_id,1,'N');
817: END IF;
818: for asked_for_rec in asked_for_cur loop
819: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
820: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In append_asked_for asked_for_rec.PRICING_ATTRIBUTE1'
821: ||asked_for_rec.PRICING_ATTRIBUTE1,1,'Y');
822: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In append_asked_for asked_for_rec.flex_title'
823: ||asked_for_rec.flex_title,1,'Y');
824: END IF;
818: for asked_for_rec in asked_for_cur loop
819: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
820: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In append_asked_for asked_for_rec.PRICING_ATTRIBUTE1'
821: ||asked_for_rec.PRICING_ATTRIBUTE1,1,'Y');
822: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In append_asked_for asked_for_rec.flex_title'
823: ||asked_for_rec.flex_title,1,'Y');
824: END IF;
825: If asked_for_rec.flex_title = 'QP_ATTR_DEFNS_PRICING' then
826: if asked_for_rec.PRICING_ATTRIBUTE1 is not null then
2540: px_req_line_tbl(1).LINE_INDEX := 1;
2541: px_req_line_tbl(1).LINE_TYPE_CODE := 'ORDER';
2542: px_req_line_tbl(1).CURRENCY_CODE := p_Header_rec.currency_code;
2543: px_req_line_tbl(1).PRICE_FLAG := 'Y';
2544: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2545: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:g_header_rec.PRICE_FROZEN_DATE '||ASO_PRICING_INT.G_HEADER_REC.PRICE_FROZEN_DATE,1,'N');
2546: END IF;
2547: /*FastTrak: Price effective date is assigned to the price frozen unless the price frozen date is null*/
2548: if ASO_PRICING_INT.g_header_rec.PRICE_FROZEN_DATE = FND_API.G_MISS_DATE
2541: px_req_line_tbl(1).LINE_TYPE_CODE := 'ORDER';
2542: px_req_line_tbl(1).CURRENCY_CODE := p_Header_rec.currency_code;
2543: px_req_line_tbl(1).PRICE_FLAG := 'Y';
2544: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2545: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:g_header_rec.PRICE_FROZEN_DATE '||ASO_PRICING_INT.G_HEADER_REC.PRICE_FROZEN_DATE,1,'N');
2546: END IF;
2547: /*FastTrak: Price effective date is assigned to the price frozen unless the price frozen date is null*/
2548: if ASO_PRICING_INT.g_header_rec.PRICE_FROZEN_DATE = FND_API.G_MISS_DATE
2549: OR ASO_PRICING_INT.g_header_rec.PRICE_FROZEN_DATE is NULL then
2549: OR ASO_PRICING_INT.g_header_rec.PRICE_FROZEN_DATE is NULL then
2550: px_req_line_tbl(1).PRICING_EFFECTIVE_DATE := trunc(sysdate);
2551: else
2552: px_req_line_tbl(1).PRICING_EFFECTIVE_DATE := trunc(ASO_PRICING_INT.g_header_rec.PRICE_FROZEN_DATE);
2553: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2554: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Header Request copy In else: px_req_line_tbl(1).PRICING_EFFECTIVE_DATE '
2555: ||px_req_line_tbl(1).PRICING_EFFECTIVE_DATE,1,'N');
2556: END IF;
2557: end if;
2550: px_req_line_tbl(1).PRICING_EFFECTIVE_DATE := trunc(sysdate);
2551: else
2552: px_req_line_tbl(1).PRICING_EFFECTIVE_DATE := trunc(ASO_PRICING_INT.g_header_rec.PRICE_FROZEN_DATE);
2553: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2554: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Header Request copy In else: px_req_line_tbl(1).PRICING_EFFECTIVE_DATE '
2555: ||px_req_line_tbl(1).PRICING_EFFECTIVE_DATE,1,'N');
2556: END IF;
2557: end if;
2558: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2554: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Header Request copy In else: px_req_line_tbl(1).PRICING_EFFECTIVE_DATE '
2555: ||px_req_line_tbl(1).PRICING_EFFECTIVE_DATE,1,'N');
2556: END IF;
2557: end if;
2558: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2559: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Header Request copy: px_req_line_tbl(1).PRICING_EFFECTIVE_DATE '
2560: ||px_req_line_tbl(1).PRICING_EFFECTIVE_DATE,1,'N');
2561: END IF;
2562: end Copy_Header_To_Request;
2555: ||px_req_line_tbl(1).PRICING_EFFECTIVE_DATE,1,'N');
2556: END IF;
2557: end if;
2558: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2559: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Header Request copy: px_req_line_tbl(1).PRICING_EFFECTIVE_DATE '
2560: ||px_req_line_tbl(1).PRICING_EFFECTIVE_DATE,1,'N');
2561: END IF;
2562: end Copy_Header_To_Request;
2563:
2602: l_req_line_rec.UOM_QUANTITY := p_line_dtl_rec.service_duration * l_uom_rate;
2603: End If;
2604: End If;
2605: -- Change for manual discount updating UPDATED_ADJUSTED_UNIT_PRICE
2606: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2607: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Copy line to req p_Line_rec.SELLING_PRICE_CHANGE '
2608: ||p_Line_rec.SELLING_PRICE_CHANGE,1,'Y');
2609: END IF;
2610: If p_Line_rec.SELLING_PRICE_CHANGE = 'Y' then
2603: End If;
2604: End If;
2605: -- Change for manual discount updating UPDATED_ADJUSTED_UNIT_PRICE
2606: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2607: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Copy line to req p_Line_rec.SELLING_PRICE_CHANGE '
2608: ||p_Line_rec.SELLING_PRICE_CHANGE,1,'Y');
2609: END IF;
2610: If p_Line_rec.SELLING_PRICE_CHANGE = 'Y' then
2611: l_req_line_rec.UPDATED_ADJUSTED_UNIT_PRICE := p_Line_rec.line_quote_price;
2613:
2614: -- Bug 2430534.Should set this flag only for child service line, normal line to 'Y'
2615: -- If the line is from order or customer product set it to 'N'.
2616:
2617: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2618: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Copy line to req p_Line_rec.LINE_CATEGORY_CODE :'
2619: ||p_Line_rec.LINE_CATEGORY_CODE,1,'Y');
2620: END IF;
2621: IF p_Line_rec.LINE_CATEGORY_CODE IN ('SERVICE_REF_ORDER_LINE','SERVICE_REF_CUSTOMER_LINE') THEN
2614: -- Bug 2430534.Should set this flag only for child service line, normal line to 'Y'
2615: -- If the line is from order or customer product set it to 'N'.
2616:
2617: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2618: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Copy line to req p_Line_rec.LINE_CATEGORY_CODE :'
2619: ||p_Line_rec.LINE_CATEGORY_CODE,1,'Y');
2620: END IF;
2621: IF p_Line_rec.LINE_CATEGORY_CODE IN ('SERVICE_REF_ORDER_LINE','SERVICE_REF_CUSTOMER_LINE') THEN
2622: l_req_line_rec.PRICE_FLAG := 'N';
2628: OR ASO_PRICING_INT.g_header_rec.PRICE_FROZEN_DATE is NULL then
2629: l_req_line_rec.PRICING_EFFECTIVE_DATE := trunc(sysdate);
2630: else
2631: l_req_line_rec.PRICING_EFFECTIVE_DATE := trunc(ASO_PRICING_INT.g_header_rec.PRICE_FROZEN_DATE);
2632: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2633: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Line Request copy in Else: l_req_line_rec.PRICING_EFFECTIVE_DATE '
2634: ||l_req_line_rec.PRICING_EFFECTIVE_DATE,1,'N');
2635: END IF;
2636: end if;
2629: l_req_line_rec.PRICING_EFFECTIVE_DATE := trunc(sysdate);
2630: else
2631: l_req_line_rec.PRICING_EFFECTIVE_DATE := trunc(ASO_PRICING_INT.g_header_rec.PRICE_FROZEN_DATE);
2632: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2633: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Line Request copy in Else: l_req_line_rec.PRICING_EFFECTIVE_DATE '
2634: ||l_req_line_rec.PRICING_EFFECTIVE_DATE,1,'N');
2635: END IF;
2636: end if;
2637: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2633: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Line Request copy in Else: l_req_line_rec.PRICING_EFFECTIVE_DATE '
2634: ||l_req_line_rec.PRICING_EFFECTIVE_DATE,1,'N');
2635: END IF;
2636: end if;
2637: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2638: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Line Request copy: l_req_line_rec.PRICING_EFFECTIVE_DATE '
2639: ||l_req_line_rec.PRICING_EFFECTIVE_DATE,1,'N');
2640: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:copy line request: p_Line_rec.CHARGE_PERIODICITY_CODE '
2641: ||p_Line_rec.CHARGE_PERIODICITY_CODE,1,'N');
2634: ||l_req_line_rec.PRICING_EFFECTIVE_DATE,1,'N');
2635: END IF;
2636: end if;
2637: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2638: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Line Request copy: l_req_line_rec.PRICING_EFFECTIVE_DATE '
2639: ||l_req_line_rec.PRICING_EFFECTIVE_DATE,1,'N');
2640: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:copy line request: p_Line_rec.CHARGE_PERIODICITY_CODE '
2641: ||p_Line_rec.CHARGE_PERIODICITY_CODE,1,'N');
2642: END IF;
2636: end if;
2637: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2638: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Line Request copy: l_req_line_rec.PRICING_EFFECTIVE_DATE '
2639: ||l_req_line_rec.PRICING_EFFECTIVE_DATE,1,'N');
2640: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:copy line request: p_Line_rec.CHARGE_PERIODICITY_CODE '
2641: ||p_Line_rec.CHARGE_PERIODICITY_CODE,1,'N');
2642: END IF;
2643: l_req_line_rec.CHARGE_PERIODICITY_CODE := p_Line_rec.CHARGE_PERIODICITY_CODE;
2644:
2678: l_count1 NUMBER;
2679: l_my_index NUMBER;
2680:
2681: BEGIN
2682: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2683: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin In Copy_Request_To_Quote', 1, 'Y');
2684: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Building the qte line table.....'||p_req_line_tbl.count,1,'N');
2685: END IF;
2686: i := p_req_line_tbl.FIRST;
2679: l_my_index NUMBER;
2680:
2681: BEGIN
2682: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2683: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin In Copy_Request_To_Quote', 1, 'Y');
2684: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Building the qte line table.....'||p_req_line_tbl.count,1,'N');
2685: END IF;
2686: i := p_req_line_tbl.FIRST;
2687: WHILE i IS NOT NULL LOOP
2680:
2681: BEGIN
2682: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2683: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Begin In Copy_Request_To_Quote', 1, 'Y');
2684: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Building the qte line table.....'||p_req_line_tbl.count,1,'N');
2685: END IF;
2686: i := p_req_line_tbl.FIRST;
2687: WHILE i IS NOT NULL LOOP
2688: l_req_line_rec := p_req_line_tbl(i);
2685: END IF;
2686: i := p_req_line_tbl.FIRST;
2687: WHILE i IS NOT NULL LOOP
2688: l_req_line_rec := p_req_line_tbl(i);
2689: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2690: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Request_To_Quote:line_type_code - '
2691: ||l_req_line_rec.line_type_code, 1, 'N');
2692: END IF;
2693: IF l_req_line_rec.line_type_code = 'LINE' then
2686: i := p_req_line_tbl.FIRST;
2687: WHILE i IS NOT NULL LOOP
2688: l_req_line_rec := p_req_line_tbl(i);
2689: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2690: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Copy_Request_To_Quote:line_type_code - '
2691: ||l_req_line_rec.line_type_code, 1, 'N');
2692: END IF;
2693: IF l_req_line_rec.line_type_code = 'LINE' then
2694: IF p_qte_line_tbl.EXISTS(l_req_line_rec.line_index-1) THEN
2700: l_qte_line_rec.line_list_price := l_req_line_rec.unit_price ;
2701: l_qte_line_rec.line_adjusted_amount := l_qte_line_rec.line_quote_price
2702: - l_qte_line_rec.line_list_price;
2703:
2704: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2705: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Copy Req to Quote line_list_price: '
2706: ||l_qte_line_rec.line_list_price,1,'N');
2707: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Copy Req to Quote line_adjusted_amount: '
2708: ||l_qte_line_rec.line_adjusted_amount,1,'N');
2701: l_qte_line_rec.line_adjusted_amount := l_qte_line_rec.line_quote_price
2702: - l_qte_line_rec.line_list_price;
2703:
2704: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2705: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Copy Req to Quote line_list_price: '
2706: ||l_qte_line_rec.line_list_price,1,'N');
2707: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Copy Req to Quote line_adjusted_amount: '
2708: ||l_qte_line_rec.line_adjusted_amount,1,'N');
2709: END IF;
2703:
2704: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2705: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Copy Req to Quote line_list_price: '
2706: ||l_qte_line_rec.line_list_price,1,'N');
2707: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Copy Req to Quote line_adjusted_amount: '
2708: ||l_qte_line_rec.line_adjusted_amount,1,'N');
2709: END IF;
2710:
2711: IF l_qte_line_rec.line_list_price <> 0 THEN
2719: l_qte_line_prcd(i) := x_qte_line_tbl.count;
2720: ELSE
2721: NULL;
2722: END IF;
2723: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2724: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:*********************NEXT LINE********************************',1,'N');
2725: END IF;
2726: i := p_req_line_tbl.NEXT(i);
2727: END LOOP;
2720: ELSE
2721: NULL;
2722: END IF;
2723: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2724: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:*********************NEXT LINE********************************',1,'N');
2725: END IF;
2726: i := p_req_line_tbl.NEXT(i);
2727: END LOOP;
2728:
2725: END IF;
2726: i := p_req_line_tbl.NEXT(i);
2727: END LOOP;
2728:
2729: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2730: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Building the detail line tbl.....',1,'N');
2731: END IF;
2732: i := p_req_line_detail_tbl.FIRST;
2733: l_my_index := 1;
2726: i := p_req_line_tbl.NEXT(i);
2727: END LOOP;
2728:
2729: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2730: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Building the detail line tbl.....',1,'N');
2731: END IF;
2732: i := p_req_line_detail_tbl.FIRST;
2733: l_my_index := 1;
2734: WHILE I IS NOT NULL LOOP
2732: i := p_req_line_detail_tbl.FIRST;
2733: l_my_index := 1;
2734: WHILE I IS NOT NULL LOOP
2735: l_index := p_req_line_detail_Tbl(i).line_index;
2736: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2737: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Status_code for line_detail_tbl: '
2738: ||p_req_line_tbl(l_index).status_code,1,'N');
2739: END IF;
2740: IF p_req_line_tbl(l_index).status_code in (
2733: l_my_index := 1;
2734: WHILE I IS NOT NULL LOOP
2735: l_index := p_req_line_detail_Tbl(i).line_index;
2736: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2737: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Status_code for line_detail_tbl: '
2738: ||p_req_line_tbl(l_index).status_code,1,'N');
2739: END IF;
2740: IF p_req_line_tbl(l_index).status_code in (
2741: QP_PREQ_GRP.G_STATUS_UPDATED,
2742: QP_PREQ_GRP.G_STATUS_GSA_VIOLATION,
2743: QP_PREQ_GRP.G_STATUS_UNCHANGED)
2744: THEN
2745: l_req_line_dtl_rec := p_req_line_detail_Tbl(i);
2746: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2747: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Req_Line_dtl_rec.created_from_list_type_code:'
2748: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2749: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Req_Line_dtl_rec.list_line_type_code:'
2750: ||l_req_line_dtl_rec.list_line_type_code, 1, 'N');
2743: QP_PREQ_GRP.G_STATUS_UNCHANGED)
2744: THEN
2745: l_req_line_dtl_rec := p_req_line_detail_Tbl(i);
2746: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2747: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Req_Line_dtl_rec.created_from_list_type_code:'
2748: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2749: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Req_Line_dtl_rec.list_line_type_code:'
2750: ||l_req_line_dtl_rec.list_line_type_code, 1, 'N');
2751: END IF;
2745: l_req_line_dtl_rec := p_req_line_detail_Tbl(i);
2746: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2747: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Req_Line_dtl_rec.created_from_list_type_code:'
2748: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2749: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Req_Line_dtl_rec.list_line_type_code:'
2750: ||l_req_line_dtl_rec.list_line_type_code, 1, 'N');
2751: END IF;
2752: IF l_req_line_dtl_rec.created_from_list_type_code in ('PRL','AGR')
2753: AND l_req_line_dtl_rec.list_line_type_code in ( 'PLL','PBH') THEN
2754: --education change: changed to priced_price_list_id instead of price_list_id
2755: x_qte_line_tbl(l_qte_line_prcd(l_index)).priced_price_list_id :=
2756: l_req_line_dtl_rec.list_header_id;
2757: End IF;
2758: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2759: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_line_tbl(l_index).line_type_code:'
2760: ||p_req_line_tbl(l_index).line_type_code, 1, 'N');
2761: END IF;
2762: IF l_req_line_dtl_rec.created_from_list_type_code in ('PRL','AGR') AND
2755: x_qte_line_tbl(l_qte_line_prcd(l_index)).priced_price_list_id :=
2756: l_req_line_dtl_rec.list_header_id;
2757: End IF;
2758: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2759: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_line_tbl(l_index).line_type_code:'
2760: ||p_req_line_tbl(l_index).line_type_code, 1, 'N');
2761: END IF;
2762: IF l_req_line_dtl_rec.created_from_list_type_code in ('PRL','AGR') AND
2763: l_req_line_dtl_rec.list_line_type_code in( 'PLL') THEN
2762: IF l_req_line_dtl_rec.created_from_list_type_code in ('PRL','AGR') AND
2763: l_req_line_dtl_rec.list_line_type_code in( 'PLL') THEN
2764: NULL;
2765: ELSIF p_req_line_tbl(l_index).line_type_code = 'ORDER' THEN
2766: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2767: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.created_from_list_type_code:'
2768: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2769: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.LIST_LINE_ID:'
2770: ||l_req_line_dtl_rec.LIST_LINE_ID, 1, 'N');
2763: l_req_line_dtl_rec.list_line_type_code in( 'PLL') THEN
2764: NULL;
2765: ELSIF p_req_line_tbl(l_index).line_type_code = 'ORDER' THEN
2766: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2767: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.created_from_list_type_code:'
2768: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2769: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.LIST_LINE_ID:'
2770: ||l_req_line_dtl_rec.LIST_LINE_ID, 1, 'N');
2771: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:IF p_req_line_tbl(l_index).line_type_code is ORDER:'
2765: ELSIF p_req_line_tbl(l_index).line_type_code = 'ORDER' THEN
2766: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2767: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.created_from_list_type_code:'
2768: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2769: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.LIST_LINE_ID:'
2770: ||l_req_line_dtl_rec.LIST_LINE_ID, 1, 'N');
2771: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:IF p_req_line_tbl(l_index).line_type_code is ORDER:'
2772: ||p_req_line_tbl(l_index).line_type_code,1, 'N');
2773: END IF;
2767: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.created_from_list_type_code:'
2768: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2769: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.LIST_LINE_ID:'
2770: ||l_req_line_dtl_rec.LIST_LINE_ID, 1, 'N');
2771: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:IF p_req_line_tbl(l_index).line_type_code is ORDER:'
2772: ||p_req_line_tbl(l_index).line_type_code,1, 'N');
2773: END IF;
2774: Copy_Req_Dtl_To_Price_Adj(
2775: p_qte_header_rec => p_qte_header_rec,
2780: px_price_adj_tbl => x_price_adj_tbl,
2781: px_price_adj_attr_tbl => x_price_adj_attr_tbl,
2782: px_price_adj_prcd => l_price_adj_prcd);
2783: ELSE
2784: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2785: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Else Req_Line_dtl_rec.created_from_list_type_code:'
2786: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2787: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.LIST_LINE_ID:'
2788: ||l_req_line_dtl_rec.LIST_LINE_ID, 1, 'N');
2781: px_price_adj_attr_tbl => x_price_adj_attr_tbl,
2782: px_price_adj_prcd => l_price_adj_prcd);
2783: ELSE
2784: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2785: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Else Req_Line_dtl_rec.created_from_list_type_code:'
2786: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2787: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.LIST_LINE_ID:'
2788: ||l_req_line_dtl_rec.LIST_LINE_ID, 1, 'N');
2789: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Else If p_req_line_tbl(l_index).line_type_code is not Order:'
2783: ELSE
2784: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2785: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Else Req_Line_dtl_rec.created_from_list_type_code:'
2786: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2787: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.LIST_LINE_ID:'
2788: ||l_req_line_dtl_rec.LIST_LINE_ID, 1, 'N');
2789: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Else If p_req_line_tbl(l_index).line_type_code is not Order:'
2790: ||p_req_line_tbl(l_index).line_type_code,1,'N');
2791: END IF;
2785: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Else Req_Line_dtl_rec.created_from_list_type_code:'
2786: ||l_req_line_dtl_rec.created_from_list_type_code, 1, 'N');
2787: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In elseif Req_Line_dtl_rec.LIST_LINE_ID:'
2788: ||l_req_line_dtl_rec.LIST_LINE_ID, 1, 'N');
2789: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:In Else If p_req_line_tbl(l_index).line_type_code is not Order:'
2790: ||p_req_line_tbl(l_index).line_type_code,1,'N');
2791: END IF;
2792: Copy_Req_Dtl_To_Price_Adj(
2793: p_qte_line_index => l_index-1,
2800: px_price_adj_attr_tbl => x_price_adj_attr_tbl,
2801: px_price_adj_prcd => l_price_adj_prcd);
2802: END IF;
2803: lx_price_adj_prcd(i):= x_price_adj_tbl.count;
2804: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2805: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:i: lx_price_adj_prcd(i): '||i||': '||lx_price_adj_prcd(i),1,'N');
2806: END IF;
2807: END IF;
2808: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2801: px_price_adj_prcd => l_price_adj_prcd);
2802: END IF;
2803: lx_price_adj_prcd(i):= x_price_adj_tbl.count;
2804: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2805: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:i: lx_price_adj_prcd(i): '||i||': '||lx_price_adj_prcd(i),1,'N');
2806: END IF;
2807: END IF;
2808: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2809: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:***************************NEXT ADJUST***************************',1,'N');
2804: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2805: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:i: lx_price_adj_prcd(i): '||i||': '||lx_price_adj_prcd(i),1,'N');
2806: END IF;
2807: END IF;
2808: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2809: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:***************************NEXT ADJUST***************************',1,'N');
2810: END IF;
2811: i := p_req_line_detail_tbl.NEXT(i);
2812: END LOOP;
2805: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:i: lx_price_adj_prcd(i): '||i||': '||lx_price_adj_prcd(i),1,'N');
2806: END IF;
2807: END IF;
2808: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2809: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:***************************NEXT ADJUST***************************',1,'N');
2810: END IF;
2811: i := p_req_line_detail_tbl.NEXT(i);
2812: END LOOP;
2813:
2811: i := p_req_line_detail_tbl.NEXT(i);
2812: END LOOP;
2813:
2814: /*Building the related adjustment record*/
2815: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2816: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Building the p_req_related_lines_tbl with no of rec:'
2817: ||p_req_related_lines_tbl.count,1,'N');
2818: END IF;
2819: i := p_req_related_lines_tbl.FIRST;
2812: END LOOP;
2813:
2814: /*Building the related adjustment record*/
2815: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2816: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Building the p_req_related_lines_tbl with no of rec:'
2817: ||p_req_related_lines_tbl.count,1,'N');
2818: END IF;
2819: i := p_req_related_lines_tbl.FIRST;
2820: WHILE i IS NOT NULL LOOP
2817: ||p_req_related_lines_tbl.count,1,'N');
2818: END IF;
2819: i := p_req_related_lines_tbl.FIRST;
2820: WHILE i IS NOT NULL LOOP
2821: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2822: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Req_Line_dtl_rec.Relationship_Type_Code:'
2823: ||p_Req_Related_Lines_Tbl(i).Relationship_Type_Code, 1, 'N');
2824: END IF;
2825: IF p_Req_Related_Lines_Tbl(i).Relationship_Type_Code
2818: END IF;
2819: i := p_req_related_lines_tbl.FIRST;
2820: WHILE i IS NOT NULL LOOP
2821: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2822: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Req_Line_dtl_rec.Relationship_Type_Code:'
2823: ||p_Req_Related_Lines_Tbl(i).Relationship_Type_Code, 1, 'N');
2824: END IF;
2825: IF p_Req_Related_Lines_Tbl(i).Relationship_Type_Code
2826: IN (QP_PREQ_GRP.G_PBH_LINE ,QP_PREQ_GRP.G_GENERATED_LINE )
2828: AND p_req_related_lines_tbl(i).RELATED_LINE_DETAIL_INDEX is not null
2829: AND lx_price_adj_prcd.EXISTS(p_req_related_lines_tbl(i).LINE_DETAIL_INDEX)
2830: AND lx_price_adj_prcd.EXISTS(p_req_related_lines_tbl(i).RELATED_LINE_DETAIL_INDEX)
2831: THEN
2832: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2833: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).line_index:'
2834: ||p_req_related_lines_tbl(i).line_index,1,'N');
2835: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).line_detail_index:'
2836: ||p_req_related_lines_tbl(i).line_detail_index,1,'N');
2829: AND lx_price_adj_prcd.EXISTS(p_req_related_lines_tbl(i).LINE_DETAIL_INDEX)
2830: AND lx_price_adj_prcd.EXISTS(p_req_related_lines_tbl(i).RELATED_LINE_DETAIL_INDEX)
2831: THEN
2832: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2833: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).line_index:'
2834: ||p_req_related_lines_tbl(i).line_index,1,'N');
2835: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).line_detail_index:'
2836: ||p_req_related_lines_tbl(i).line_detail_index,1,'N');
2837: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).related_line_detail_index:'
2831: THEN
2832: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2833: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).line_index:'
2834: ||p_req_related_lines_tbl(i).line_index,1,'N');
2835: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).line_detail_index:'
2836: ||p_req_related_lines_tbl(i).line_detail_index,1,'N');
2837: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).related_line_detail_index:'
2838: ||p_req_related_lines_tbl(i).related_line_detail_index,1,'N');
2839: END IF;
2833: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).line_index:'
2834: ||p_req_related_lines_tbl(i).line_index,1,'N');
2835: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).line_detail_index:'
2836: ||p_req_related_lines_tbl(i).line_detail_index,1,'N');
2837: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_req_related_lines_tbl(i).related_line_detail_index:'
2838: ||p_req_related_lines_tbl(i).related_line_detail_index,1,'N');
2839: END IF;
2840: If l_qte_line_prcd.EXISTS(p_req_related_lines_tbl(i).line_index) Then
2841: l_price_adj_rltship_rec.QTE_LINE_INDEX :=
2844:
2845: IF p_qte_line_tbl.exists((p_req_related_lines_tbl(i).line_index-1)) THEN
2846: l_price_adj_rltship_rec.quote_line_id :=
2847: p_qte_line_tbl((p_req_related_lines_tbl(i).line_index-1)).quote_line_id;
2848: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2849: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_qte_line_tbl((p_req_related_lines_tbl(i).line_index-1)).quote_line_id: '
2850: ||p_qte_line_tbl((p_req_related_lines_tbl(i).line_index-1)).quote_line_id,1,'N');
2851: END IF;
2852: END IF;
2845: IF p_qte_line_tbl.exists((p_req_related_lines_tbl(i).line_index-1)) THEN
2846: l_price_adj_rltship_rec.quote_line_id :=
2847: p_qte_line_tbl((p_req_related_lines_tbl(i).line_index-1)).quote_line_id;
2848: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2849: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_qte_line_tbl((p_req_related_lines_tbl(i).line_index-1)).quote_line_id: '
2850: ||p_qte_line_tbl((p_req_related_lines_tbl(i).line_index-1)).quote_line_id,1,'N');
2851: END IF;
2852: END IF;
2853: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2849: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:p_qte_line_tbl((p_req_related_lines_tbl(i).line_index-1)).quote_line_id: '
2850: ||p_qte_line_tbl((p_req_related_lines_tbl(i).line_index-1)).quote_line_id,1,'N');
2851: END IF;
2852: END IF;
2853: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2854: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Quote Line id '||l_price_adj_rltship_rec.quote_line_id, 1, 'N');
2855: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Before assigning LINE_DETAIL_INDEX(=>PRICE_ADJ_INDEX) '
2856: ||lx_price_adj_prcd(p_req_related_lines_tbl(i).LINE_DETAIL_INDEX), 1, 'N');
2857: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Before assigning RELATED_LINE_DETAIL_INDEX(=>RLTD_PRICE_ADJ_INDEX) '
2850: ||p_qte_line_tbl((p_req_related_lines_tbl(i).line_index-1)).quote_line_id,1,'N');
2851: END IF;
2852: END IF;
2853: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2854: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Quote Line id '||l_price_adj_rltship_rec.quote_line_id, 1, 'N');
2855: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Before assigning LINE_DETAIL_INDEX(=>PRICE_ADJ_INDEX) '
2856: ||lx_price_adj_prcd(p_req_related_lines_tbl(i).LINE_DETAIL_INDEX), 1, 'N');
2857: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Before assigning RELATED_LINE_DETAIL_INDEX(=>RLTD_PRICE_ADJ_INDEX) '
2858: ||lx_price_adj_prcd(p_req_related_lines_tbl(i).RELATED_LINE_DETAIL_INDEX), 1, 'N');
2851: END IF;
2852: END IF;
2853: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2854: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Quote Line id '||l_price_adj_rltship_rec.quote_line_id, 1, 'N');
2855: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Before assigning LINE_DETAIL_INDEX(=>PRICE_ADJ_INDEX) '
2856: ||lx_price_adj_prcd(p_req_related_lines_tbl(i).LINE_DETAIL_INDEX), 1, 'N');
2857: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Before assigning RELATED_LINE_DETAIL_INDEX(=>RLTD_PRICE_ADJ_INDEX) '
2858: ||lx_price_adj_prcd(p_req_related_lines_tbl(i).RELATED_LINE_DETAIL_INDEX), 1, 'N');
2859: END IF;
2853: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2854: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Quote Line id '||l_price_adj_rltship_rec.quote_line_id, 1, 'N');
2855: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Before assigning LINE_DETAIL_INDEX(=>PRICE_ADJ_INDEX) '
2856: ||lx_price_adj_prcd(p_req_related_lines_tbl(i).LINE_DETAIL_INDEX), 1, 'N');
2857: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Before assigning RELATED_LINE_DETAIL_INDEX(=>RLTD_PRICE_ADJ_INDEX) '
2858: ||lx_price_adj_prcd(p_req_related_lines_tbl(i).RELATED_LINE_DETAIL_INDEX), 1, 'N');
2859: END IF;
2860: l_price_adj_rltship_rec.PRICE_ADJ_INDEX :=
2861: lx_price_adj_prcd(p_req_related_lines_tbl(i).LINE_DETAIL_INDEX);
2861: lx_price_adj_prcd(p_req_related_lines_tbl(i).LINE_DETAIL_INDEX);
2862: l_price_adj_rltship_rec.RLTD_PRICE_ADJ_INDEX :=
2863: lx_price_adj_prcd(p_req_related_lines_tbl(i).RELATED_LINE_DETAIL_INDEX);
2864: l_count1 := x_price_adj_rltship_tbl.count;
2865: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2866: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Count x_price_adj_rltship_tbl.count before assigning the record: '
2867: ||l_count1,1,'N');
2868: END IF;
2869: x_price_adj_rltship_tbl(x_price_adj_rltship_tbl.count+1) := l_price_adj_rltship_rec;
2862: l_price_adj_rltship_rec.RLTD_PRICE_ADJ_INDEX :=
2863: lx_price_adj_prcd(p_req_related_lines_tbl(i).RELATED_LINE_DETAIL_INDEX);
2864: l_count1 := x_price_adj_rltship_tbl.count;
2865: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2866: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:Count x_price_adj_rltship_tbl.count before assigning the record: '
2867: ||l_count1,1,'N');
2868: END IF;
2869: x_price_adj_rltship_tbl(x_price_adj_rltship_tbl.count+1) := l_price_adj_rltship_rec;
2870: END IF;--p_Req_Related_Lines_Tbl(i).Relationship_Type_Code
2867: ||l_count1,1,'N');
2868: END IF;
2869: x_price_adj_rltship_tbl(x_price_adj_rltship_tbl.count+1) := l_price_adj_rltship_rec;
2870: END IF;--p_Req_Related_Lines_Tbl(i).Relationship_Type_Code
2871: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2872: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:**************************NEXT RLTD ADJ********************************',1,'N');
2873: END IF;
2874: i := p_req_related_lines_tbl.next(i);
2875: END LOOP;
2868: END IF;
2869: x_price_adj_rltship_tbl(x_price_adj_rltship_tbl.count+1) := l_price_adj_rltship_rec;
2870: END IF;--p_Req_Related_Lines_Tbl(i).Relationship_Type_Code
2871: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
2872: aso_debug_pub.add('ASO_PRICING_CALLBACK_PVT:**************************NEXT RLTD ADJ********************************',1,'N');
2873: END IF;
2874: i := p_req_related_lines_tbl.next(i);
2875: END LOOP;
2876:
3121: l_qte_line_prcd Index_Link_Tbl_Type;
3122: l_price_adj_prcd Index_Link_Tbl_Type;
3123: l_message_text VARCHAR2(2000);
3124: BEGIN
3125: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3126: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line ',1,'Y');
3127: END IF;
3128: i := p_req_line_tbl.FIRST;
3129: WHILE i IS NOT NULL LOOP
3122: l_price_adj_prcd Index_Link_Tbl_Type;
3123: l_message_text VARCHAR2(2000);
3124: BEGIN
3125: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3126: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line ',1,'Y');
3127: END IF;
3128: i := p_req_line_tbl.FIRST;
3129: WHILE i IS NOT NULL LOOP
3130: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3126: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line ',1,'Y');
3127: END IF;
3128: i := p_req_line_tbl.FIRST;
3129: WHILE i IS NOT NULL LOOP
3130: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3131: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line in while',1,'Y');
3132: END IF;
3133: l_req_line_rec := p_req_line_tbl(i);
3134: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3127: END IF;
3128: i := p_req_line_tbl.FIRST;
3129: WHILE i IS NOT NULL LOOP
3130: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3131: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line in while',1,'Y');
3132: END IF;
3133: l_req_line_rec := p_req_line_tbl(i);
3134: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3135: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line l_req_line_rec.line_type_code'
3130: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3131: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line in while',1,'Y');
3132: END IF;
3133: l_req_line_rec := p_req_line_tbl(i);
3134: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3135: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line l_req_line_rec.line_type_code'
3136: ||l_req_line_rec.line_type_code,1,'Y');
3137: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line l_req_line_rec.status_code'
3138: ||l_req_line_rec.status_code,1,'Y');
3131: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line in while',1,'Y');
3132: END IF;
3133: l_req_line_rec := p_req_line_tbl(i);
3134: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3135: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line l_req_line_rec.line_type_code'
3136: ||l_req_line_rec.line_type_code,1,'Y');
3137: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line l_req_line_rec.status_code'
3138: ||l_req_line_rec.status_code,1,'Y');
3139: END IF;
3133: l_req_line_rec := p_req_line_tbl(i);
3134: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3135: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line l_req_line_rec.line_type_code'
3136: ||l_req_line_rec.line_type_code,1,'Y');
3137: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line l_req_line_rec.status_code'
3138: ||l_req_line_rec.status_code,1,'Y');
3139: END IF;
3140:
3141: IF l_req_line_rec.line_type_code = 'LINE' AND
3143: QP_PREQ_GRP.G_STATUS_GSA_VIOLATION,
3144: QP_PREQ_GRP.G_STATUS_UNCHANGED)
3145:
3146: Then
3147: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3148: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line in ELSEIF',1,'Y');
3149: END IF;
3150: --IF l_req_line_rec.line_index = 1 THEN
3151: --l_qte_line_rec := p_qte_line_rec;
3144: QP_PREQ_GRP.G_STATUS_UNCHANGED)
3145:
3146: Then
3147: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3148: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line in ELSEIF',1,'Y');
3149: END IF;
3150: --IF l_req_line_rec.line_index = 1 THEN
3151: --l_qte_line_rec := p_qte_line_rec;
3152: --END IF;
3153: l_qte_line_rec.operation_code := 'UPDATE';
3154: l_qte_line_rec.line_quote_price :=
3155: NVL(l_req_line_rec.adjusted_unit_price, l_req_line_rec.unit_price);
3156: l_qte_line_rec.line_list_price := l_req_line_rec.unit_price ;
3157: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3158: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line line_list_price '
3159: ||l_qte_line_rec.line_list_price,1,'Y');
3160: END IF;
3161: l_qte_line_rec.line_adjusted_amount :=
3154: l_qte_line_rec.line_quote_price :=
3155: NVL(l_req_line_rec.adjusted_unit_price, l_req_line_rec.unit_price);
3156: l_qte_line_rec.line_list_price := l_req_line_rec.unit_price ;
3157: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3158: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line line_list_price '
3159: ||l_qte_line_rec.line_list_price,1,'Y');
3160: END IF;
3161: l_qte_line_rec.line_adjusted_amount :=
3162: l_qte_line_rec.line_quote_price-l_qte_line_rec.line_list_price;
3163: IF l_qte_line_rec.line_list_price <> 0 THEN
3164: l_qte_line_rec.line_adjusted_percent :=
3165: (l_qte_line_rec.line_adjusted_amount/l_qte_line_rec.line_list_price)*100;
3166: END IF;
3167: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3168: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line before price_list_id ',1,'Y');
3169: END IF;
3170: l_qte_line_rec.quantity := l_req_line_rec.priced_quantity ;
3171: l_qte_line_rec.uom_code := l_req_line_rec.priced_uom_code ;
3164: l_qte_line_rec.line_adjusted_percent :=
3165: (l_qte_line_rec.line_adjusted_amount/l_qte_line_rec.line_list_price)*100;
3166: END IF;
3167: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3168: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line before price_list_id ',1,'Y');
3169: END IF;
3170: l_qte_line_rec.quantity := l_req_line_rec.priced_quantity ;
3171: l_qte_line_rec.uom_code := l_req_line_rec.priced_uom_code ;
3172: --l_qte_line_rec.price_list_id := p_req_line_detail_tbl(1).list_header_id ;
3169: END IF;
3170: l_qte_line_rec.quantity := l_req_line_rec.priced_quantity ;
3171: l_qte_line_rec.uom_code := l_req_line_rec.priced_uom_code ;
3172: --l_qte_line_rec.price_list_id := p_req_line_detail_tbl(1).list_header_id ;
3173: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3174: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line after price_list_id ',1,'Y');
3175: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line 11 ',1,'Y');
3176: END IF;
3177: --aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line : Price List Id'||l_qte_line_rec.price_list_id,1,'Y');
3170: l_qte_line_rec.quantity := l_req_line_rec.priced_quantity ;
3171: l_qte_line_rec.uom_code := l_req_line_rec.priced_uom_code ;
3172: --l_qte_line_rec.price_list_id := p_req_line_detail_tbl(1).list_header_id ;
3173: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3174: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line after price_list_id ',1,'Y');
3175: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line 11 ',1,'Y');
3176: END IF;
3177: --aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line : Price List Id'||l_qte_line_rec.price_list_id,1,'Y');
3178: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3171: l_qte_line_rec.uom_code := l_req_line_rec.priced_uom_code ;
3172: --l_qte_line_rec.price_list_id := p_req_line_detail_tbl(1).list_header_id ;
3173: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3174: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line after price_list_id ',1,'Y');
3175: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line 11 ',1,'Y');
3176: END IF;
3177: --aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line : Price List Id'||l_qte_line_rec.price_list_id,1,'Y');
3178: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3179: aso_debug_pub.add('ASO_PRICING_CORE_PVT:after Copy Req to line ',1,'Y');
3173: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3174: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line after price_list_id ',1,'Y');
3175: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line 11 ',1,'Y');
3176: END IF;
3177: --aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line : Price List Id'||l_qte_line_rec.price_list_id,1,'Y');
3178: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3179: aso_debug_pub.add('ASO_PRICING_CORE_PVT:after Copy Req to line ',1,'Y');
3180: END IF;
3181: -- handle the percent price
3174: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line after price_list_id ',1,'Y');
3175: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line 11 ',1,'Y');
3176: END IF;
3177: --aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line : Price List Id'||l_qte_line_rec.price_list_id,1,'Y');
3178: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3179: aso_debug_pub.add('ASO_PRICING_CORE_PVT:after Copy Req to line ',1,'Y');
3180: END IF;
3181: -- handle the percent price
3182: IF NVL(l_req_line_rec.percent_price, 0) <> 0 OR
3175: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line 11 ',1,'Y');
3176: END IF;
3177: --aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line : Price List Id'||l_qte_line_rec.price_list_id,1,'Y');
3178: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3179: aso_debug_pub.add('ASO_PRICING_CORE_PVT:after Copy Req to line ',1,'Y');
3180: END IF;
3181: -- handle the percent price
3182: IF NVL(l_req_line_rec.percent_price, 0) <> 0 OR
3183: l_req_line_rec.percent_price <> FND_API.G_MISS_NUM THEN
3197: l_qte_line_prcd(i) := x_qte_line_tbl.count;
3198:
3199:
3200: ELSE
3201: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3202: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line In ELSE1',1,'Y');
3203: END IF;
3204: -- should be later assigned to a pricing error
3205: l_message_text := substr(l_req_line_rec.status_code || ': '||l_req_line_rec.status_text,1,200);
3198:
3199:
3200: ELSE
3201: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3202: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line In ELSE1',1,'Y');
3203: END IF;
3204: -- should be later assigned to a pricing error
3205: l_message_text := substr(l_req_line_rec.status_code || ': '||l_req_line_rec.status_text,1,200);
3206: /*
3210: FND_MSG_PUB.ADD;
3211: END IF;
3212: */
3213: END IF;
3214: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3215: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line In ELSE2',1,'Y');
3216: END IF;
3217: i := p_req_line_tbl.NEXT(i);
3218: END LOOP;
3211: END IF;
3212: */
3213: END IF;
3214: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3215: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Copy Req to line In ELSE2',1,'Y');
3216: END IF;
3217: i := p_req_line_tbl.NEXT(i);
3218: END LOOP;
3219:
3246: l_Price_Adj_Rltship_rec ASO_QUOTE_PUB.Price_Adj_Rltship_Rec_Type;
3247: l_quote_line_id NUMBER;
3248: l_price_adjustment_id NUMBER;
3249: BEGIN
3250: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3251: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Update_Quote_Rows', 1, 'Y');
3252: END IF;
3253: FOR i IN 1..P_Qte_Line_Tbl.count LOOP
3254: l_qte_line_rec := p_qte_line_tbl(i);
3247: l_quote_line_id NUMBER;
3248: l_price_adjustment_id NUMBER;
3249: BEGIN
3250: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3251: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Update_Quote_Rows', 1, 'Y');
3252: END IF;
3253: FOR i IN 1..P_Qte_Line_Tbl.count LOOP
3254: l_qte_line_rec := p_qte_line_tbl(i);
3255: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3251: aso_debug_pub.add('ASO_PRICING_CORE_PVT:In Update_Quote_Rows', 1, 'Y');
3252: END IF;
3253: FOR i IN 1..P_Qte_Line_Tbl.count LOOP
3254: l_qte_line_rec := p_qte_line_tbl(i);
3255: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3256: aso_debug_pub.add('ASO_PRICING_CORE_PVT:l_qte_line_rec.operation_code in Update Quote Rows is '
3257: ||l_qte_line_rec.operation_code,1,'N');
3258: END IF;
3259: IF l_qte_line_rec.operation_code = 'UPDATE' THEN
3252: END IF;
3253: FOR i IN 1..P_Qte_Line_Tbl.count LOOP
3254: l_qte_line_rec := p_qte_line_tbl(i);
3255: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3256: aso_debug_pub.add('ASO_PRICING_CORE_PVT:l_qte_line_rec.operation_code in Update Quote Rows is '
3257: ||l_qte_line_rec.operation_code,1,'N');
3258: END IF;
3259: IF l_qte_line_rec.operation_code = 'UPDATE' THEN
3260: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3256: aso_debug_pub.add('ASO_PRICING_CORE_PVT:l_qte_line_rec.operation_code in Update Quote Rows is '
3257: ||l_qte_line_rec.operation_code,1,'N');
3258: END IF;
3259: IF l_qte_line_rec.operation_code = 'UPDATE' THEN
3260: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3261: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_QUOTE_LINES_PKG.Update_Row QUOTE_HEADER_ID'
3262: ||l_qte_line_rec.QUOTE_HEADER_ID, 1, 'N');
3263: END IF;
3264: ASO_QUOTE_LINES_PKG.Update_Row(
3257: ||l_qte_line_rec.operation_code,1,'N');
3258: END IF;
3259: IF l_qte_line_rec.operation_code = 'UPDATE' THEN
3260: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3261: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_QUOTE_LINES_PKG.Update_Row QUOTE_HEADER_ID'
3262: ||l_qte_line_rec.QUOTE_HEADER_ID, 1, 'N');
3263: END IF;
3264: ASO_QUOTE_LINES_PKG.Update_Row(
3265: p_QUOTE_LINE_ID => l_qte_line_rec.QUOTE_LINE_ID,
3349: p_PRICING_QUANTITY => l_qte_line_rec.PRICING_QUANTITY,
3350: p_CONFIG_MODEL_TYPE => l_qte_line_rec.CONFIG_MODEL_TYPE
3351: );
3352:
3353: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3354: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_QUOTE_LINES_PKG.Update_Row with UPDATE', 1, 'N');
3355: END IF;
3356:
3357: FOR j IN 1..l_Price_Adj_Tbl.count LOOP
3350: p_CONFIG_MODEL_TYPE => l_qte_line_rec.CONFIG_MODEL_TYPE
3351: );
3352:
3353: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3354: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_QUOTE_LINES_PKG.Update_Row with UPDATE', 1, 'N');
3355: END IF;
3356:
3357: FOR j IN 1..l_Price_Adj_Tbl.count LOOP
3358: IF l_Price_Adj_Tbl(j).qte_line_index = i THEN
3357: FOR j IN 1..l_Price_Adj_Tbl.count LOOP
3358: IF l_Price_Adj_Tbl(j).qte_line_index = i THEN
3359: l_Price_Adj_Tbl(j).quote_line_id := l_qte_line_rec.QUOTE_LINE_ID;
3360: END IF;
3361: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3362: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Update The quote line in l_Price_Adj_Tbl is '
3363: ||l_Price_Adj_Tbl(j).quote_line_id,1,'N');
3364: END IF;
3365: END LOOP;
3358: IF l_Price_Adj_Tbl(j).qte_line_index = i THEN
3359: l_Price_Adj_Tbl(j).quote_line_id := l_qte_line_rec.QUOTE_LINE_ID;
3360: END IF;
3361: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3362: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Update The quote line in l_Price_Adj_Tbl is '
3363: ||l_Price_Adj_Tbl(j).quote_line_id,1,'N');
3364: END IF;
3365: END LOOP;
3366: FOR j IN 1..l_Price_Adj_Rltship_Tbl.count LOOP
3366: FOR j IN 1..l_Price_Adj_Rltship_Tbl.count LOOP
3367: IF l_Price_Adj_Rltship_Tbl(j).qte_line_index = i THEN
3368: l_Price_Adj_Rltship_Tbl(j).quote_line_id := l_qte_line_rec.QUOTE_LINE_ID;
3369: END IF;
3370: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3371: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Update The quote line in l_Price_Adj_Rltship_Tbl is '
3372: ||l_Price_Adj_Rltship_Tbl(j).quote_line_id,1,'N');
3373: END IF;
3374: END LOOP;
3367: IF l_Price_Adj_Rltship_Tbl(j).qte_line_index = i THEN
3368: l_Price_Adj_Rltship_Tbl(j).quote_line_id := l_qte_line_rec.QUOTE_LINE_ID;
3369: END IF;
3370: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3371: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Update The quote line in l_Price_Adj_Rltship_Tbl is '
3372: ||l_Price_Adj_Rltship_Tbl(j).quote_line_id,1,'N');
3373: END IF;
3374: END LOOP;
3375: ELSIF l_qte_line_rec.operation_code = 'CREATE' THEN
3372: ||l_Price_Adj_Rltship_Tbl(j).quote_line_id,1,'N');
3373: END IF;
3374: END LOOP;
3375: ELSIF l_qte_line_rec.operation_code = 'CREATE' THEN
3376: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3377: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_QUOTE_LINES_PKG.Insert_Row QUOTE_HEADER_ID'
3378: ||l_qte_line_rec.QUOTE_HEADER_ID, 1, 'N');
3379: END IF;
3380: ASO_QUOTE_LINES_PKG.Insert_Row(
3373: END IF;
3374: END LOOP;
3375: ELSIF l_qte_line_rec.operation_code = 'CREATE' THEN
3376: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3377: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_QUOTE_LINES_PKG.Insert_Row QUOTE_HEADER_ID'
3378: ||l_qte_line_rec.QUOTE_HEADER_ID, 1, 'N');
3379: END IF;
3380: ASO_QUOTE_LINES_PKG.Insert_Row(
3381: px_QUOTE_LINE_ID => l_QUOTE_LINE_ID,
3465: p_PRICING_QUANTITY => l_qte_line_rec.PRICING_QUANTITY,
3466: p_CONFIG_MODEL_TYPE => l_qte_line_rec.CONFIG_MODEL_TYPE
3467: );
3468:
3469: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3470: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_QUOTE_LINES_PKG.Insert_row with CREATE', 1, 'N');
3471: END IF;
3472:
3473: FOR j IN 1..l_Price_Adj_Tbl.count LOOP
3466: p_CONFIG_MODEL_TYPE => l_qte_line_rec.CONFIG_MODEL_TYPE
3467: );
3468:
3469: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3470: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_QUOTE_LINES_PKG.Insert_row with CREATE', 1, 'N');
3471: END IF;
3472:
3473: FOR j IN 1..l_Price_Adj_Tbl.count LOOP
3474: IF l_Price_Adj_Tbl(j).qte_line_index = i THEN
3473: FOR j IN 1..l_Price_Adj_Tbl.count LOOP
3474: IF l_Price_Adj_Tbl(j).qte_line_index = i THEN
3475: l_Price_Adj_Tbl(j).quote_line_id := l_QUOTE_LINE_ID;
3476: END IF;
3477: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3478: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The quote line in l_Price_Adj_Tbl is '
3479: ||l_Price_Adj_Tbl(j).quote_line_id,1,'N');
3480: END IF;
3481: END LOOP;
3474: IF l_Price_Adj_Tbl(j).qte_line_index = i THEN
3475: l_Price_Adj_Tbl(j).quote_line_id := l_QUOTE_LINE_ID;
3476: END IF;
3477: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3478: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The quote line in l_Price_Adj_Tbl is '
3479: ||l_Price_Adj_Tbl(j).quote_line_id,1,'N');
3480: END IF;
3481: END LOOP;
3482: FOR j IN 1..l_Price_Adj_Rltship_Tbl.count LOOP
3482: FOR j IN 1..l_Price_Adj_Rltship_Tbl.count LOOP
3483: IF l_Price_Adj_Rltship_Tbl(j).qte_line_index = i THEN
3484: l_Price_Adj_Rltship_Tbl(j).quote_line_id := l_QUOTE_LINE_ID;
3485: END IF;
3486: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3487: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The quote line in l_Price_Adj_Rltship_Tbl is '
3488: ||l_Price_Adj_Rltship_Tbl(j).quote_line_id,1,'N');
3489: END IF;
3490: END LOOP;
3483: IF l_Price_Adj_Rltship_Tbl(j).qte_line_index = i THEN
3484: l_Price_Adj_Rltship_Tbl(j).quote_line_id := l_QUOTE_LINE_ID;
3485: END IF;
3486: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3487: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The quote line in l_Price_Adj_Rltship_Tbl is '
3488: ||l_Price_Adj_Rltship_Tbl(j).quote_line_id,1,'N');
3489: END IF;
3490: END LOOP;
3491: END IF;
3494:
3495: FOR i IN 1..l_Price_Adj_Tbl.count LOOP
3496: l_price_adj_rec := l_Price_Adj_Tbl(i);
3497: l_PRICE_ADJUSTMENT_ID := NULL;
3498: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3499: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_PRICE_ADJUSTMENTS_PKG.Insert_Row', 1, 'N');
3500: END IF;
3501: ASO_PRICE_ADJUSTMENTS_PKG.Insert_Row(
3502: px_PRICE_ADJUSTMENT_ID => l_PRICE_ADJUSTMENT_ID,
3495: FOR i IN 1..l_Price_Adj_Tbl.count LOOP
3496: l_price_adj_rec := l_Price_Adj_Tbl(i);
3497: l_PRICE_ADJUSTMENT_ID := NULL;
3498: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3499: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_PRICE_ADJUSTMENTS_PKG.Insert_Row', 1, 'N');
3500: END IF;
3501: ASO_PRICE_ADJUSTMENTS_PKG.Insert_Row(
3502: px_PRICE_ADJUSTMENT_ID => l_PRICE_ADJUSTMENT_ID,
3503: p_CREATION_DATE => SYSDATE,
3589: p_OPERAND_PER_PQTY => l_price_adj_rec.OPERAND_PER_PQTY,
3590: p_ADJUSTED_AMOUNT_PER_PQTY => l_price_adj_rec.ADJUSTED_AMOUNT_PER_PQTY,
3591: p_OBJECT_VERSION_NUMBER => l_price_adj_rec.OBJECT_VERSION_NUMBER
3592: );
3593: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3594: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_PRICE_ADJUSTMENTS_PKG.Insert_Row PRICE_ADJUSTMENT_ID'
3595: ||l_PRICE_ADJUSTMENT_ID, 1, 'N');
3596: END IF;
3597: FOR j in 1..l_price_adj_attr_tbl.count LOOP
3590: p_ADJUSTED_AMOUNT_PER_PQTY => l_price_adj_rec.ADJUSTED_AMOUNT_PER_PQTY,
3591: p_OBJECT_VERSION_NUMBER => l_price_adj_rec.OBJECT_VERSION_NUMBER
3592: );
3593: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3594: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_PRICE_ADJUSTMENTS_PKG.Insert_Row PRICE_ADJUSTMENT_ID'
3595: ||l_PRICE_ADJUSTMENT_ID, 1, 'N');
3596: END IF;
3597: FOR j in 1..l_price_adj_attr_tbl.count LOOP
3598: IF l_price_adj_attr_tbl(j).price_adj_index = i THEN
3603: FOR j IN 1..l_price_adj_rltship_tbl.count LOOP
3604: IF l_price_adj_rltship_tbl(j).price_adj_index = i THEN
3605: l_price_adj_rltship_tbl(j).price_adjustment_id := l_price_adjustment_id;
3606: END IF;
3607: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3608: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After price_adj_index Loop l_price_adj_rltship_tbl', 1, 'N');
3609: END IF;
3610: IF l_price_adj_rltship_tbl(j).rltd_price_adj_index = i THEN
3611: l_price_adj_rltship_tbl(j).rltd_price_adj_id := l_price_adjustment_id;
3604: IF l_price_adj_rltship_tbl(j).price_adj_index = i THEN
3605: l_price_adj_rltship_tbl(j).price_adjustment_id := l_price_adjustment_id;
3606: END IF;
3607: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3608: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After price_adj_index Loop l_price_adj_rltship_tbl', 1, 'N');
3609: END IF;
3610: IF l_price_adj_rltship_tbl(j).rltd_price_adj_index = i THEN
3611: l_price_adj_rltship_tbl(j).rltd_price_adj_id := l_price_adjustment_id;
3612: END IF;
3611: l_price_adj_rltship_tbl(j).rltd_price_adj_id := l_price_adjustment_id;
3612: END IF;
3613: END LOOP;
3614: END LOOP;
3615: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3616: aso_debug_pub.add('ASO_PRICING_CORE_PVT:xxxxxxxxxxStart inserting into ASO_PRICE_ADJ_ATTRIBSxxxxxxx', 1, 'N');
3617: END IF;
3618: FOR i in 1..l_price_adj_attr_tbl.count LOOP
3619: l_price_adj_attr_rec := l_price_adj_attr_tbl(i);
3612: END IF;
3613: END LOOP;
3614: END LOOP;
3615: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3616: aso_debug_pub.add('ASO_PRICING_CORE_PVT:xxxxxxxxxxStart inserting into ASO_PRICE_ADJ_ATTRIBSxxxxxxx', 1, 'N');
3617: END IF;
3618: FOR i in 1..l_price_adj_attr_tbl.count LOOP
3619: l_price_adj_attr_rec := l_price_adj_attr_tbl(i);
3620: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3616: aso_debug_pub.add('ASO_PRICING_CORE_PVT:xxxxxxxxxxStart inserting into ASO_PRICE_ADJ_ATTRIBSxxxxxxx', 1, 'N');
3617: END IF;
3618: FOR i in 1..l_price_adj_attr_tbl.count LOOP
3619: l_price_adj_attr_rec := l_price_adj_attr_tbl(i);
3620: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3621: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_PRICE_ADJ_ATTRIBS_PKG.Insert_Row', 1, 'N');
3622: END IF;
3623: ASO_PRICE_ADJ_ATTRIBS_PKG.Insert_Row(
3624: px_PRICE_ADJ_ATTRIB_ID => l_price_adj_attr_rec.PRICE_ADJ_ATTRIB_ID,
3617: END IF;
3618: FOR i in 1..l_price_adj_attr_tbl.count LOOP
3619: l_price_adj_attr_rec := l_price_adj_attr_tbl(i);
3620: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3621: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_PRICE_ADJ_ATTRIBS_PKG.Insert_Row', 1, 'N');
3622: END IF;
3623: ASO_PRICE_ADJ_ATTRIBS_PKG.Insert_Row(
3624: px_PRICE_ADJ_ATTRIB_ID => l_price_adj_attr_rec.PRICE_ADJ_ATTRIB_ID,
3625: p_CREATION_DATE => SYSDATE,
3638: p_PRICING_ATTR_VALUE_TO => l_price_adj_attr_rec.PRICING_ATTR_VALUE_TO,
3639: p_COMPARISON_OPERATOR => l_price_adj_attr_rec.COMPARISON_OPERATOR,
3640: p_FLEX_TITLE => l_price_adj_attr_rec.FLEX_TITLE,
3641: p_OBJECT_VERSION_NUMBER => l_price_adj_attr_rec.OBJECT_VERSION_NUMBER);
3642: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3643: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_PRICE_ADJ_ATTRIBS_PKG.Insert_Row', 1, 'N');
3644: END IF;
3645: END LOOP;
3646: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3639: p_COMPARISON_OPERATOR => l_price_adj_attr_rec.COMPARISON_OPERATOR,
3640: p_FLEX_TITLE => l_price_adj_attr_rec.FLEX_TITLE,
3641: p_OBJECT_VERSION_NUMBER => l_price_adj_attr_rec.OBJECT_VERSION_NUMBER);
3642: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3643: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_PRICE_ADJ_ATTRIBS_PKG.Insert_Row', 1, 'N');
3644: END IF;
3645: END LOOP;
3646: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3647: aso_debug_pub.add('ASO_PRICING_CORE_PVT:xxxxxxxxxxFinish inserting into ASO_PRICE_ADJ_ATTRIBSxxxxxx', 1, 'N');
3642: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3643: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_PRICE_ADJ_ATTRIBS_PKG.Insert_Row', 1, 'N');
3644: END IF;
3645: END LOOP;
3646: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3647: aso_debug_pub.add('ASO_PRICING_CORE_PVT:xxxxxxxxxxFinish inserting into ASO_PRICE_ADJ_ATTRIBSxxxxxx', 1, 'N');
3648: END IF;
3649:
3650: FOR i IN 1..l_price_adj_rltship_tbl.count LOOP
3643: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_PRICE_ADJ_ATTRIBS_PKG.Insert_Row', 1, 'N');
3644: END IF;
3645: END LOOP;
3646: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3647: aso_debug_pub.add('ASO_PRICING_CORE_PVT:xxxxxxxxxxFinish inserting into ASO_PRICE_ADJ_ATTRIBSxxxxxx', 1, 'N');
3648: END IF;
3649:
3650: FOR i IN 1..l_price_adj_rltship_tbl.count LOOP
3651: l_price_adj_rltship_rec := l_price_adj_rltship_tbl(i);
3648: END IF;
3649:
3650: FOR i IN 1..l_price_adj_rltship_tbl.count LOOP
3651: l_price_adj_rltship_rec := l_price_adj_rltship_tbl(i);
3652: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3653: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_PRICE_RLTSHIPS_PKG.Insert_Row', 1, 'N');
3654: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The quote line id is '
3655: ||l_price_adj_rltship_rec.quote_line_id, 1, 'N');
3656: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The price adjustment id is '
3649:
3650: FOR i IN 1..l_price_adj_rltship_tbl.count LOOP
3651: l_price_adj_rltship_rec := l_price_adj_rltship_tbl(i);
3652: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3653: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_PRICE_RLTSHIPS_PKG.Insert_Row', 1, 'N');
3654: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The quote line id is '
3655: ||l_price_adj_rltship_rec.quote_line_id, 1, 'N');
3656: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The price adjustment id is '
3657: ||l_price_adj_rltship_rec.price_adjustment_id,1,'N');
3650: FOR i IN 1..l_price_adj_rltship_tbl.count LOOP
3651: l_price_adj_rltship_rec := l_price_adj_rltship_tbl(i);
3652: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3653: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_PRICE_RLTSHIPS_PKG.Insert_Row', 1, 'N');
3654: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The quote line id is '
3655: ||l_price_adj_rltship_rec.quote_line_id, 1, 'N');
3656: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The price adjustment id is '
3657: ||l_price_adj_rltship_rec.price_adjustment_id,1,'N');
3658: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The rltd price adj id is '
3652: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3653: aso_debug_pub.add('ASO_PRICING_CORE_PVT:Before ASO_PRICE_RLTSHIPS_PKG.Insert_Row', 1, 'N');
3654: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The quote line id is '
3655: ||l_price_adj_rltship_rec.quote_line_id, 1, 'N');
3656: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The price adjustment id is '
3657: ||l_price_adj_rltship_rec.price_adjustment_id,1,'N');
3658: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The rltd price adj id is '
3659: ||l_price_adj_rltship_rec.rltd_price_adj_id,1,'N');
3660: END IF;
3654: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The quote line id is '
3655: ||l_price_adj_rltship_rec.quote_line_id, 1, 'N');
3656: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The price adjustment id is '
3657: ||l_price_adj_rltship_rec.price_adjustment_id,1,'N');
3658: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The rltd price adj id is '
3659: ||l_price_adj_rltship_rec.rltd_price_adj_id,1,'N');
3660: END IF;
3661: ASO_PRICE_RLTSHIPS_PKG.Insert_Row(
3662: px_ADJ_RELATIONSHIP_ID => l_price_adj_rltship_rec.ADJ_RELATIONSHIP_ID,
3674: p_RLTD_PRICE_ADJ_ID => l_price_adj_rltship_rec.rltd_price_adj_id,
3675: p_quote_shipment_id => l_price_adj_rltship_rec.quote_shipment_id,
3676: p_OBJECT_VERSION_NUMBER => l_price_adj_rltship_rec.OBJECT_VERSION_NUMBER
3677: );
3678: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3679: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_PRICE_RLTSHIPS_PKG.Insert_Row', 1, 'N');
3680: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The adj relationship id is '
3681: ||l_price_adj_rltship_rec.ADJ_RELATIONSHIP_ID,1,'N');
3682: aso_debug_pub.add('ASO_PRICING_CORE_PVT:IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII', 1, 'N');
3675: p_quote_shipment_id => l_price_adj_rltship_rec.quote_shipment_id,
3676: p_OBJECT_VERSION_NUMBER => l_price_adj_rltship_rec.OBJECT_VERSION_NUMBER
3677: );
3678: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3679: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_PRICE_RLTSHIPS_PKG.Insert_Row', 1, 'N');
3680: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The adj relationship id is '
3681: ||l_price_adj_rltship_rec.ADJ_RELATIONSHIP_ID,1,'N');
3682: aso_debug_pub.add('ASO_PRICING_CORE_PVT:IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII', 1, 'N');
3683: END IF;
3676: p_OBJECT_VERSION_NUMBER => l_price_adj_rltship_rec.OBJECT_VERSION_NUMBER
3677: );
3678: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3679: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_PRICE_RLTSHIPS_PKG.Insert_Row', 1, 'N');
3680: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The adj relationship id is '
3681: ||l_price_adj_rltship_rec.ADJ_RELATIONSHIP_ID,1,'N');
3682: aso_debug_pub.add('ASO_PRICING_CORE_PVT:IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII', 1, 'N');
3683: END IF;
3684: END LOOP;
3678: IF ASO_DEBUG_PUB.G_Debug_Flag = 'Y' THEN
3679: aso_debug_pub.add('ASO_PRICING_CORE_PVT:After ASO_PRICE_RLTSHIPS_PKG.Insert_Row', 1, 'N');
3680: aso_debug_pub.add('ASO_PRICING_CORE_PVT:The adj relationship id is '
3681: ||l_price_adj_rltship_rec.ADJ_RELATIONSHIP_ID,1,'N');
3682: aso_debug_pub.add('ASO_PRICING_CORE_PVT:IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII', 1, 'N');
3683: END IF;
3684: END LOOP;
3685: END Update_Quote_Rows;
3686: