13:
14:
15: PROCEDURE Copy_Quote(
16: P_Api_Version_Number IN NUMBER,
17: P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
18: P_Commit IN VARCHAR2 := FND_API.G_FALSE,
19: P_Copy_Quote_Header_Rec IN ASO_COPY_QUOTE_PUB.Copy_Quote_Header_Rec_Type
20: := ASO_COPY_QUOTE_PUB.G_MISS_Copy_Quote_Header_Rec,
21: P_Copy_Quote_Control_Rec IN ASO_COPY_QUOTE_PUB.Copy_Quote_Control_Rec_Type
14:
15: PROCEDURE Copy_Quote(
16: P_Api_Version_Number IN NUMBER,
17: P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
18: P_Commit IN VARCHAR2 := FND_API.G_FALSE,
19: P_Copy_Quote_Header_Rec IN ASO_COPY_QUOTE_PUB.Copy_Quote_Header_Rec_Type
20: := ASO_COPY_QUOTE_PUB.G_MISS_Copy_Quote_Header_Rec,
21: P_Copy_Quote_Control_Rec IN ASO_COPY_QUOTE_PUB.Copy_Quote_Control_Rec_Type
22: := ASO_COPY_QUOTE_PUB.G_MISS_Copy_Quote_Control_Rec,
43:
44: aso_debug_pub.g_debug_flag := nvl(fnd_profile.value('ASO_ENABLE_DEBUG'),'N');
45:
46: -- Standard call to check for call compatibility.
47: IF NOT FND_API.Compatible_API_Call ( l_api_version,
48: p_api_version_number,
49: l_api_name,
50: G_PKG_NAME)
51: THEN
48: p_api_version_number,
49: l_api_name,
50: G_PKG_NAME)
51: THEN
52: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
53: END IF;
54:
55:
56: -- Initialize message list if p_init_msg_list is set to TRUE.
53: END IF;
54:
55:
56: -- Initialize message list if p_init_msg_list is set to TRUE.
57: IF FND_API.to_Boolean( p_init_msg_list )
58: THEN
59: FND_MSG_PUB.initialize;
60: END IF;
61:
59: FND_MSG_PUB.initialize;
60: END IF;
61:
62: -- Initialize API return status to SUCCESS
63: x_return_status := FND_API.G_RET_STS_SUCCESS;
64:
65: --
66: -- API body
67: --
83: X_Return_Status => X_Return_Status,
84: X_Msg_Count => X_Msg_Count,
85: X_Msg_Data => X_Msg_Data );
86:
87: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
88: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
89: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
90: RAISE FND_API.G_EXC_ERROR;
91: END IF;
84: X_Msg_Count => X_Msg_Count,
85: X_Msg_Data => X_Msg_Data );
86:
87: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
88: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
89: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
90: RAISE FND_API.G_EXC_ERROR;
91: END IF;
92:
85: X_Msg_Data => X_Msg_Data );
86:
87: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
88: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
89: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
90: RAISE FND_API.G_EXC_ERROR;
91: END IF;
92:
93: --
86:
87: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
88: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
89: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
90: RAISE FND_API.G_EXC_ERROR;
91: END IF;
92:
93: --
94: -- End of API body.
94: -- End of API body.
95: --
96:
97: -- Standard check for p_commit
98: IF FND_API.to_Boolean( p_commit )
99: THEN
100: COMMIT WORK;
101: END IF;
102:
111: p_data => x_msg_data
112: );
113:
114: EXCEPTION
115: WHEN FND_API.G_EXC_ERROR THEN
116: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
117: P_API_NAME => L_API_NAME
118: ,P_PKG_NAME => G_PKG_NAME
119: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
121: ,X_MSG_COUNT => X_MSG_COUNT
122: ,X_MSG_DATA => X_MSG_DATA
123: ,X_RETURN_STATUS => X_RETURN_STATUS);
124:
125: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
126: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
127: P_API_NAME => L_API_NAME
128: ,P_PKG_NAME => G_PKG_NAME
129: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
146:
147:
148: PROCEDURE Copy_Line(
149: P_Api_Version_Number IN NUMBER,
150: P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
151: P_Commit IN VARCHAR2 := FND_API.G_FALSE,
152: P_Qte_Header_Id IN NUMBER,
153: P_Qte_Line_Id IN NUMBER := NULL,
154: P_Copy_Quote_Control_Rec IN ASO_COPY_QUOTE_PUB.Copy_Quote_Control_Rec_Type,
147:
148: PROCEDURE Copy_Line(
149: P_Api_Version_Number IN NUMBER,
150: P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
151: P_Commit IN VARCHAR2 := FND_API.G_FALSE,
152: P_Qte_Header_Id IN NUMBER,
153: P_Qte_Line_Id IN NUMBER := NULL,
154: P_Copy_Quote_Control_Rec IN ASO_COPY_QUOTE_PUB.Copy_Quote_Control_Rec_Type,
155: P_Qte_Header_Rec IN ASO_QUOTE_PUB.Qte_Header_Rec_Type,
180:
181: aso_debug_pub.g_debug_flag := nvl(fnd_profile.value('ASO_ENABLE_DEBUG'),'N');
182:
183: -- Standard call to check for call compatibility.
184: IF NOT FND_API.Compatible_API_Call ( l_api_version,
185: p_api_version_number,
186: l_api_name,
187: G_PKG_NAME)
188: THEN
185: p_api_version_number,
186: l_api_name,
187: G_PKG_NAME)
188: THEN
189: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
190: END IF;
191:
192:
193: -- Initialize message list if p_init_msg_list is set to TRUE.
190: END IF;
191:
192:
193: -- Initialize message list if p_init_msg_list is set to TRUE.
194: IF FND_API.to_Boolean( p_init_msg_list )
195: THEN
196: FND_MSG_PUB.initialize;
197: END IF;
198:
196: FND_MSG_PUB.initialize;
197: END IF;
198:
199: -- Initialize API return status to SUCCESS
200: x_return_status := FND_API.G_RET_STS_SUCCESS;
201:
202: --
203: -- API body
204: --
202: --
203: -- API body
204: --
205:
206: IF ( P_Qte_Line_Id IS NULL OR P_Qte_Line_Id = FND_API.G_MISS_NUM ) THEN
207: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
208: FND_MESSAGE.Set_Name('ASO', 'ASO_API_MISSING_COLUMN');
209: FND_MESSAGE.Set_Token('COLUMN', 'P_Qte_Line_Id', FALSE);
210: FND_MSG_PUB.ADD;
208: FND_MESSAGE.Set_Name('ASO', 'ASO_API_MISSING_COLUMN');
209: FND_MESSAGE.Set_Token('COLUMN', 'P_Qte_Line_Id', FALSE);
210: FND_MSG_PUB.ADD;
211: END IF;
212: raise FND_API.G_EXC_ERROR;
213: End if;
214:
215: IF aso_debug_pub.g_debug_flag = 'Y' THEN
216: aso_debug_pub.ADD ( ' Calling Copy_Line_Rows API ' , 1 , 'N' );
217: END IF;
218:
219: l_qte_header_rec := P_Qte_Header_Rec;
220:
221: l_qte_header_rec.batch_price_flag := FND_API.G_TRUE;
222:
223: l_Copy_Quote_Control_Rec := P_Copy_Quote_Control_Rec;
224:
225: -- change for sales supp enhancement as per bug 2940126
222:
223: l_Copy_Quote_Control_Rec := P_Copy_Quote_Control_Rec;
224:
225: -- change for sales supp enhancement as per bug 2940126
226: l_Copy_Quote_Control_Rec.New_Version := FND_API.G_TRUE;
227:
228:
229: ASO_COPY_QUOTE_PVT.Copy_Line_Rows (
230: P_Api_Version_Number => P_Api_Version_Number,
247: END IF;
248:
249: -- ER 3177722
250:
251: if (x_return_status =FND_API.G_RET_STS_SUCCESS) then
252:
253: if l_copy_config_profile='N' then
254: IF aso_debug_pub.g_debug_flag = 'Y' THEN
255: aso_debug_pub.add('Copy_Line -before ASO_QUOTE_PUB.validate_model_configuration l_quote_header_rec: '||P_Qte_Header_Id, 1, 'N');
266:
267: ASO_QUOTE_PUB.validate_model_configuration
268: (
269: P_Api_Version_Number => 1.0,
270: P_Init_Msg_List => FND_API.G_FALSE,
271: P_Commit => FND_API.G_FALSE,
272: P_Quote_header_id =>P_Qte_Header_Id,
273: p_Quote_line_id => X_Qte_Line_Id,
274: P_UPDATE_QUOTE =>'T',
267: ASO_QUOTE_PUB.validate_model_configuration
268: (
269: P_Api_Version_Number => 1.0,
270: P_Init_Msg_List => FND_API.G_FALSE,
271: P_Commit => FND_API.G_FALSE,
272: P_Quote_header_id =>P_Qte_Header_Id,
273: p_Quote_line_id => X_Qte_Line_Id,
274: P_UPDATE_QUOTE =>'T',
275: P_CONFIG_EFFECTIVE_DATE => sysdate,
279: X_Msg_Count => x_msg_count,
280: X_Msg_Data => x_msg_data
281: );
282:
283: /*if (x_Return_Status=FND_API.G_RET_STS_SUCCESS) and (lx_config_tbl.count>0) then
284: commit work;
285: end if;
286: */
287:
293: END IF; -- MDL
294: end if; -- profile
295: end if; -- in case success
296:
297: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
298: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
299: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
300: RAISE FND_API.G_EXC_ERROR;
301: END IF;
294: end if; -- profile
295: end if; -- in case success
296:
297: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
298: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
299: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
300: RAISE FND_API.G_EXC_ERROR;
301: END IF;
302:
295: end if; -- in case success
296:
297: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
298: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
299: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
300: RAISE FND_API.G_EXC_ERROR;
301: END IF;
302:
303: --
296:
297: IF (x_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
298: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
299: ELSIF (x_return_status = FND_API.G_RET_STS_ERROR) THEN
300: RAISE FND_API.G_EXC_ERROR;
301: END IF;
302:
303: --
304: -- End of API body.
304: -- End of API body.
305: --
306:
307: -- Standard check for p_commit
308: IF FND_API.to_Boolean( p_commit )
309: THEN
310: COMMIT WORK;
311: END IF;
312:
321: p_data => x_msg_data
322: );
323:
324: EXCEPTION
325: WHEN FND_API.G_EXC_ERROR THEN
326: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
327: P_API_NAME => L_API_NAME
328: ,P_PKG_NAME => G_PKG_NAME
329: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
331: ,X_MSG_COUNT => X_MSG_COUNT
332: ,X_MSG_DATA => X_MSG_DATA
333: ,X_RETURN_STATUS => X_RETURN_STATUS);
334:
335: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
336: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
337: P_API_NAME => L_API_NAME
338: ,P_PKG_NAME => G_PKG_NAME
339: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
355: END Copy_Line;
356:
357: PROCEDURE Copy_Line(
358: P_Api_Version_Number IN NUMBER,
359: P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
360: P_Commit IN VARCHAR2 := FND_API.G_FALSE,
361: P_Qte_Header_Id IN NUMBER,
362: P_Qte_Line_Id IN NUMBER := NULL,
363: P_Copy_Quote_Control_Rec IN ASO_COPY_QUOTE_PUB.Copy_Quote_Control_Rec_Type,
356:
357: PROCEDURE Copy_Line(
358: P_Api_Version_Number IN NUMBER,
359: P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
360: P_Commit IN VARCHAR2 := FND_API.G_FALSE,
361: P_Qte_Header_Id IN NUMBER,
362: P_Qte_Line_Id IN NUMBER := NULL,
363: P_Copy_Quote_Control_Rec IN ASO_COPY_QUOTE_PUB.Copy_Quote_Control_Rec_Type,
364: P_Qte_Header_Rec IN ASO_QUOTE_PUB.Qte_Header_Rec_Type,
391: X_Return_Status => X_Return_Status,
392: X_Msg_Count => X_Msg_Count,
393: X_Msg_Data => X_Msg_Data );
394:
395: IF (x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
396: OPEN c_get_header_id(X_Qte_Line_Id);
397: Fetch c_get_header_id INTO l_header_id;
398: Close c_get_header_id;
399: