28:
29:
30: PROCEDURE Autocreate_systems(
31: p_api_version_number IN NUMBER,
32: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
33: p_commit IN VARCHAR2 := FND_API.G_FALSE,
34: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
35: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
36: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
29:
30: PROCEDURE Autocreate_systems(
31: p_api_version_number IN NUMBER,
32: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
33: p_commit IN VARCHAR2 := FND_API.G_FALSE,
34: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
35: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
36: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
37: -- p_system_tbl IN OUT NOCOPY /* file.sql.39 change */ System_Tbl_Type
52: -- Standard Start of API savepoint
53: SAVEPOINT Autocreate_systems_PUB;
54:
55: -- Standard call to check for call compatibility.
56: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
57: p_api_version_number,
58: l_api_name,
59: G_PKG_NAME)
60: THEN
57: p_api_version_number,
58: l_api_name,
59: G_PKG_NAME)
60: THEN
61: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
62: END IF;
63:
64:
65: -- Initialize message list if p_init_msg_list is set to TRUE.
62: END IF;
63:
64:
65: -- Initialize message list if p_init_msg_list is set to TRUE.
66: IF FND_API.to_Boolean( p_init_msg_list )
67: THEN
68: FND_MSG_PUB.initialize;
69: END IF;
70:
71: -- Debug Message
72: ASO_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Private API: ' || l_api_name || 'start');
73:
74: -- Initialize API return status to SUCCESS
75: x_return_status := FND_API.G_RET_STS_SUCCESS;
76:
77: -- dbms_output.put_line('before service API');
78:
79: -- FOR i in 1..p_system_tbl.count LOOP
151: x_name_tbl => l_name_tbl
152: );
153:
154: null;
155: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
156: RAISE FND_API.G_EXC_ERROR;
157: END IF;
158:
159: --p_system_tbl(i).name := l_name;
152: );
153:
154: null;
155: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
156: RAISE FND_API.G_EXC_ERROR;
157: END IF;
158:
159: --p_system_tbl(i).name := l_name;
160:
168: -- End of API body.
169: --
170:
171: -- Standard check for p_commit
172: IF FND_API.to_Boolean( p_commit )
173: THEN
174: COMMIT WORK;
175: END IF;
176:
185: p_data => x_msg_data
186: );
187:
188: EXCEPTION
189: WHEN FND_API.G_EXC_ERROR THEN
190: x_return_status := FND_API.G_RET_STS_ERROR;
191: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
192: P_API_NAME => L_API_NAME
193: ,P_PKG_NAME => G_PKG_NAME
186: );
187:
188: EXCEPTION
189: WHEN FND_API.G_EXC_ERROR THEN
190: x_return_status := FND_API.G_RET_STS_ERROR;
191: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
192: P_API_NAME => L_API_NAME
193: ,P_PKG_NAME => G_PKG_NAME
194: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
196: ,X_MSG_COUNT => X_MSG_COUNT
197: ,X_MSG_DATA => X_MSG_DATA
198: ,X_RETURN_STATUS => X_RETURN_STATUS);
199:
200: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
201: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
202: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
203: P_API_NAME => L_API_NAME
204: ,P_PKG_NAME => G_PKG_NAME
197: ,X_MSG_DATA => X_MSG_DATA
198: ,X_RETURN_STATUS => X_RETURN_STATUS);
199:
200: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
201: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
202: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
203: P_API_NAME => L_API_NAME
204: ,P_PKG_NAME => G_PKG_NAME
205: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
208: ,X_MSG_DATA => X_MSG_DATA
209: ,X_RETURN_STATUS => X_RETURN_STATUS);
210:
211: WHEN OTHERS THEN
212: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
213: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
214: P_API_NAME => L_API_NAME
215: ,P_PKG_NAME => G_PKG_NAME
216: ,P_SQLERRM => sqlerrm
296:
297:
298: PROCEDURE Modify_Contacts(
299: p_api_version IN NUMBER,
300: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
301: p_commit IN VARCHAR2 := FND_API.G_FALSE,
302: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
303: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
304: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
297:
298: PROCEDURE Modify_Contacts(
299: p_api_version IN NUMBER,
300: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
301: p_commit IN VARCHAR2 := FND_API.G_FALSE,
302: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
303: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
304: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
305: p_line_dtl_id IN NUMBER := FND_API.G_MISS_NUM,
301: p_commit IN VARCHAR2 := FND_API.G_FALSE,
302: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
303: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
304: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
305: p_line_dtl_id IN NUMBER := FND_API.G_MISS_NUM,
306: --default for delete
307: p_contact_tbl IN contact_tbl_type := G_MISS_Contact_Tbl
308: )
309: IS
339:
340:
341: CS_Installedbase_PUB.specify_contact(
342: p_api_version => 2.0,
343: p_init_msg_list => FND_API.G_FALSE ,
344: p_commit => FND_API.G_FALSE ,
345: x_return_status => x_return_status,
346: x_msg_count => x_msg_count,
347: x_msg_data => x_msg_data,
340:
341: CS_Installedbase_PUB.specify_contact(
342: p_api_version => 2.0,
343: p_init_msg_list => FND_API.G_FALSE ,
344: p_commit => FND_API.G_FALSE ,
345: x_return_status => x_return_status,
346: x_msg_count => x_msg_count,
347: x_msg_data => x_msg_data,
348: p_contact_rec => l_cp_contact_rec ,
394: -- calls service core's create_installation_details and specify_contacts
395:
396: PROCEDURE Create_Inst_Details(
397: p_api_version IN NUMBER,
398: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
399: p_commit IN VARCHAR2 := FND_API.G_FALSE,
400: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
401: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
402: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
395:
396: PROCEDURE Create_Inst_Details(
397: p_api_version IN NUMBER,
398: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
399: p_commit IN VARCHAR2 := FND_API.G_FALSE,
400: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
401: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
402: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
403: p_line_inst_dtl_tbl IN Inst_Detail_tbl_Type,
435: x_line_inst_dtl_id := l_dtl_id ;
436:
437:
438: IF (p_contact_tbl.count > 0
439: and x_return_status = FND_API.G_RET_STS_SUCCESS ) THEN
440: -- dbms_output.put_line('after modify contacts');
441: Modify_contacts
442: ( 1.0 ,
443: p_init_msg_list ,
454: -- make an entry in the temp table. this is needed to prevent going to the
455: -- database each time.
456:
457: IF p_line_inst_dtl_tbl(1).order_line_id is not NULL
458: AND p_line_inst_dtl_tbl(1).order_line_id <> FND_API.G_MISS_NUM THEN
459: l_line_inst_tbl(l_inst_count).line_id
460: := p_line_inst_dtl_tbl(1).order_line_id;
461: ELSE
462: l_line_inst_tbl(l_inst_count).line_id
480: -- installation details. If it has then the parent's details are cascaded.
481:
482: PROCEDURE CASCADE_DETAILS_YN(
483: p_api_version IN NUMBER,
484: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
485: p_commit IN VARCHAR2 := FND_API.G_FALSE,
486: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
487: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
488: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
481:
482: PROCEDURE CASCADE_DETAILS_YN(
483: p_api_version IN NUMBER,
484: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
485: p_commit IN VARCHAR2 := FND_API.G_FALSE,
486: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
487: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
488: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
489: p_object_version_number IN NUMBER,
530: -- Standard Start of API savepoint
531: SAVEPOINT CASCADE_DETAILS_YN_PUB;
532:
533: -- Standard call to check for call compatibility.
534: IF NOT FND_API.Compatible_API_Call ( l_api_version,
535: p_api_version,
536: l_api_name,
537: G_PKG_NAME)
538: THEN
535: p_api_version,
536: l_api_name,
537: G_PKG_NAME)
538: THEN
539: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
540: END IF;
541:
542:
543: -- Initialize message list if p_init_msg_list is set to TRUE.
540: END IF;
541:
542:
543: -- Initialize message list if p_init_msg_list is set to TRUE.
544: IF FND_API.to_Boolean( p_init_msg_list )
545: THEN
546: FND_MSG_PUB.initialize;
547: END IF;
548:
549: -- Debug Message
550: ASO_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Private API: ' || l_api_name || 'start');
551:
552: -- Initialize API return status to SUCCESS
553: x_return_status := FND_API.G_RET_STS_SUCCESS;
554:
555: --
556: -- API body
557: --
566: FND_MESSAGE.Set_Name(' + appShortName +', 'UT_CANNOT_GET_PROFILE_VALUE');
567: FND_MESSAGE.Set_Token('PROFILE', 'USER_ID', FALSE);
568: FND_MSG_PUB.ADD;
569: END IF;
570: RAISE FND_API.G_EXC_ERROR;
571: END IF;
572:
573:
574: l_line_inst_dtl_rec.quote_line_shipment_id
613:
614: l_line_inst_dtl_tbl(1) := l_line_inst_dtl_rec;
615: Create_Inst_Details(
616: p_api_version => 1.0 ,
617: p_init_msg_list => FND_API.G_FALSE ,
618: p_commit => FND_API.G_FALSE ,
619: x_return_status => x_return_status ,
620: x_msg_count => x_msg_count ,
621: x_msg_data => x_msg_data ,
614: l_line_inst_dtl_tbl(1) := l_line_inst_dtl_rec;
615: Create_Inst_Details(
616: p_api_version => 1.0 ,
617: p_init_msg_list => FND_API.G_FALSE ,
618: p_commit => FND_API.G_FALSE ,
619: x_return_status => x_return_status ,
620: x_msg_count => x_msg_count ,
621: x_msg_data => x_msg_data ,
622: p_line_inst_dtl_tbl => l_line_inst_dtl_tbl ,
626: );
627:
628: END IF;
629:
630: IF x_return_status = FND_API.G_RET_STS_ERROR then
631: raise FND_API.G_EXC_ERROR;
632: elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
633: raise FND_API.G_EXC_UNEXPECTED_ERROR;
634: END IF;
627:
628: END IF;
629:
630: IF x_return_status = FND_API.G_RET_STS_ERROR then
631: raise FND_API.G_EXC_ERROR;
632: elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
633: raise FND_API.G_EXC_UNEXPECTED_ERROR;
634: END IF;
635:
628: END IF;
629:
630: IF x_return_status = FND_API.G_RET_STS_ERROR then
631: raise FND_API.G_EXC_ERROR;
632: elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
633: raise FND_API.G_EXC_UNEXPECTED_ERROR;
634: END IF;
635:
636: --
629:
630: IF x_return_status = FND_API.G_RET_STS_ERROR then
631: raise FND_API.G_EXC_ERROR;
632: elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
633: raise FND_API.G_EXC_UNEXPECTED_ERROR;
634: END IF;
635:
636: --
637: -- End of API body.
637: -- End of API body.
638: --
639:
640: -- Standard check for p_commit
641: IF FND_API.to_Boolean( p_commit )
642: THEN
643: COMMIT WORK;
644: END IF;
645:
654: p_data => x_msg_data
655: );
656:
657: EXCEPTION
658: WHEN FND_API.G_EXC_ERROR THEN
659: x_return_status := FND_API.G_RET_STS_ERROR;
660: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
661: P_API_NAME => L_API_NAME
662: ,P_PKG_NAME => G_PKG_NAME
655: );
656:
657: EXCEPTION
658: WHEN FND_API.G_EXC_ERROR THEN
659: x_return_status := FND_API.G_RET_STS_ERROR;
660: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
661: P_API_NAME => L_API_NAME
662: ,P_PKG_NAME => G_PKG_NAME
663: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
665: ,X_MSG_COUNT => X_MSG_COUNT
666: ,X_MSG_DATA => X_MSG_DATA
667: ,X_RETURN_STATUS => X_RETURN_STATUS);
668:
669: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
670: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
671: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
672: P_API_NAME => L_API_NAME
673: ,P_PKG_NAME => G_PKG_NAME
666: ,X_MSG_DATA => X_MSG_DATA
667: ,X_RETURN_STATUS => X_RETURN_STATUS);
668:
669: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
670: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
671: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
672: P_API_NAME => L_API_NAME
673: ,P_PKG_NAME => G_PKG_NAME
674: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
677: ,X_MSG_DATA => X_MSG_DATA
678: ,X_RETURN_STATUS => X_RETURN_STATUS);
679:
680: WHEN OTHERS THEN
681: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
682: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
683: P_API_NAME => L_API_NAME
684: ,P_PKG_NAME => G_PKG_NAME
685: ,P_SQLERRM => sqlerrm
700:
701:
702: PROCEDURE Cascade_Delete_Inst_Details(
703: p_api_version IN NUMBER,
704: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
705: p_commit IN VARCHAR2 := FND_API.G_FALSE,
706: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
707: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
708: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
701:
702: PROCEDURE Cascade_Delete_Inst_Details(
703: p_api_version IN NUMBER,
704: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
705: p_commit IN VARCHAR2 := FND_API.G_FALSE,
706: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
707: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
708: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
709: p_line_inst_dtl_id IN NUMBER
738:
739:
740: PROCEDURE Cascade_Update_Inst_Details(
741: p_api_version IN NUMBER,
742: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
743: p_commit IN VARCHAR2 := FND_API.G_FALSE,
744: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
745: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
746: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
739:
740: PROCEDURE Cascade_Update_Inst_Details(
741: p_api_version IN NUMBER,
742: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
743: p_commit IN VARCHAR2 := FND_API.G_FALSE,
744: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
745: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
746: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
747: p_object_version_number IN NUMBER,
786: -- the values here.
787:
788: -- Bug 2965402 : changed "<> NULL" to "IS NOT NULL"
789: IF l_line_inst_dtl_tbl(1).quantity IS NOT NULL AND
790: l_line_inst_dtl_tbl(1).quantity <> FND_API.G_MISS_NUM THEN
791:
792: -- quantity = quantity * new_quantity/old_quantity
793: l_line_inst_dtl_tbl(1).quantity :=
794: l_line_inst_dtl_tbl(1).quantity * i.quantity/p_old_quantity;
819: x_msg_data ,
820: p_object_version_number => l_object_version_number,
821: p_line_inst_dtl_tbl => l_line_inst_dtl_tbl,
822: p_contact_tbl => l_contact_tbl ,
823: p_cascade_flag => FND_API.G_FALSE
824: );
825: -- i think we need the following so that the loop can start with the initial values again.
826: l_contact_tbl := p_contact_tbl;
827: END LOOP;
843: --
844: -- Standard IN Parameters:
845: -- p_api_version IN NUMBER Required
846: -- p_init_msg_list IN VARCHAR2 Optional
847: -- := FND_API.G_FALSE
848: --
849: -- Standard OUT NOCOPY /* file.sql.39 change */ Parameters:
850: -- x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2(1)
851: -- x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
866:
867: PROCEDURE Create_Installation_Detail
868: (
869: p_api_version_number IN NUMBER,
870: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
871: p_commit IN VARCHAR2 := FND_API.G_FALSE,
872: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
873: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
874: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
867: PROCEDURE Create_Installation_Detail
868: (
869: p_api_version_number IN NUMBER,
870: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
871: p_commit IN VARCHAR2 := FND_API.G_FALSE,
872: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
873: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
874: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
875: -- p_object_version_number IN NUMBER,
900: -- Standard Start of API savepoint
901: SAVEPOINT CREATE_installation_detail_PUB;
902:
903: -- Standard call to check for call compatibility.
904: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
905: p_api_version_number,
906: l_api_name,
907: G_PKG_NAME)
908: THEN
905: p_api_version_number,
906: l_api_name,
907: G_PKG_NAME)
908: THEN
909: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
910: END IF;
911:
912:
913: -- Initialize message list if p_init_msg_list is set to TRUE.
910: END IF;
911:
912:
913: -- Initialize message list if p_init_msg_list is set to TRUE.
914: IF FND_API.to_Boolean( p_init_msg_list )
915: THEN
916: FND_MSG_PUB.initialize;
917: END IF;
918:
919: -- Debug Message
920: ASO_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Private API: ' || l_api_name || 'start');
921:
922: -- Initialize API return status to SUCCESS
923: x_return_status := FND_API.G_RET_STS_SUCCESS;
924:
925: --
926: -- API body
927: --
936: FND_MESSAGE.Set_Name(' + appShortName +', 'UT_CANNOT_GET_PROFILE_VALUE');
937: FND_MESSAGE.Set_Token('PROFILE', 'USER_ID', FALSE);
938: FND_MSG_PUB.ADD;
939: END IF;
940: RAISE FND_API.G_EXC_ERROR;
941: END IF;
942:
943:
944: -- dbms_output.put_line('before create inst details');
946: -- create installation details for the header or model item.
947: Create_Inst_Details
948: (
949: p_api_version => 1.0 ,
950: p_init_msg_list => FND_API.G_FALSE ,
951: p_commit => FND_API.G_FALSE ,
952: x_return_status => x_return_status ,
953: x_msg_count => x_msg_count ,
954: x_msg_data => x_msg_data ,
947: Create_Inst_Details
948: (
949: p_api_version => 1.0 ,
950: p_init_msg_list => FND_API.G_FALSE ,
951: p_commit => FND_API.G_FALSE ,
952: x_return_status => x_return_status ,
953: x_msg_count => x_msg_count ,
954: x_msg_data => x_msg_data ,
955: p_line_inst_dtl_tbl => p_line_inst_dtl_tbl ,
957: p_contact_tbl => p_contact_tbl ,
958: x_line_inst_dtl_id => x_line_inst_dtl_id
959: );
960:
961: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
962: RAISE FND_API.G_EXC_ERROR;
963: END IF;
964:
965:
958: x_line_inst_dtl_id => x_line_inst_dtl_id
959: );
960:
961: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
962: RAISE FND_API.G_EXC_ERROR;
963: END IF;
964:
965:
966: -- check to see how many installation details need to be created.
977: -- check if parent installation detail has already been created
978: IF l_line_inst_tbl(j).line_id
979: = l_p_cascade_line_tbl(i).parent_line_id
980: AND l_p_cascade_line_tbl(i).INST_DETAIL_CREATED
981: = FND_API.G_FALSE THEN
982:
983: l_cascade_line_tbl(1).source_line_inst_detail_id
984: := l_line_inst_tbl(j).inst_detail_id ;
985:
983: l_cascade_line_tbl(1).source_line_inst_detail_id
984: := l_line_inst_tbl(j).inst_detail_id ;
985:
986: -- determine whether it is an order line or a quote line
987: IF l_cascade_line_tbl(1).order_line_id <> FND_API.G_MISS_NUM
988: AND l_cascade_line_tbl(1).order_line_id is not NULL THEN
989: l_cascade_line_tbl(1).order_line_id
990: := l_p_cascade_line_tbl(i).line_id ;
991: ELSE
999: -- dbms_output.put_line('quantity '||l_cascade_line_tbl(1).quantity);
1000:
1001: Create_Inst_Details(
1002: p_api_version => 1.0 ,
1003: p_init_msg_list => FND_API.G_FALSE ,
1004: p_commit => FND_API.G_FALSE ,
1005: x_return_status => x_return_status ,
1006: x_msg_count => x_msg_count ,
1007: x_msg_data => x_msg_data ,
1000:
1001: Create_Inst_Details(
1002: p_api_version => 1.0 ,
1003: p_init_msg_list => FND_API.G_FALSE ,
1004: p_commit => FND_API.G_FALSE ,
1005: x_return_status => x_return_status ,
1006: x_msg_count => x_msg_count ,
1007: x_msg_data => x_msg_data ,
1008: p_line_inst_dtl_tbl => l_cascade_line_tbl ,
1010: p_contact_tbl => p_contact_tbl ,
1011: x_line_inst_dtl_id => x_line_inst_dtl_id
1012: );
1013:
1014: l_p_cascade_line_tbl(i).INST_DETAIL_CREATED := FND_API.G_TRUE;
1015: l_cascade_count := l_cascade_count - 1;
1016: END IF;
1017:
1018: END LOOP; -- cascade line tbl
1024:
1025: --
1026: -- End of API body
1027: --
1028: IF x_return_status = FND_API.G_RET_STS_ERROR then
1029: raise FND_API.G_EXC_ERROR;
1030: elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1031: raise FND_API.G_EXC_UNEXPECTED_ERROR;
1032: END IF;
1025: --
1026: -- End of API body
1027: --
1028: IF x_return_status = FND_API.G_RET_STS_ERROR then
1029: raise FND_API.G_EXC_ERROR;
1030: elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1031: raise FND_API.G_EXC_UNEXPECTED_ERROR;
1032: END IF;
1033:
1026: -- End of API body
1027: --
1028: IF x_return_status = FND_API.G_RET_STS_ERROR then
1029: raise FND_API.G_EXC_ERROR;
1030: elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1031: raise FND_API.G_EXC_UNEXPECTED_ERROR;
1032: END IF;
1033:
1034: --
1027: --
1028: IF x_return_status = FND_API.G_RET_STS_ERROR then
1029: raise FND_API.G_EXC_ERROR;
1030: elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1031: raise FND_API.G_EXC_UNEXPECTED_ERROR;
1032: END IF;
1033:
1034: --
1035: -- End of API body.
1035: -- End of API body.
1036: --
1037:
1038: -- Standard check for p_commit
1039: IF FND_API.to_Boolean( p_commit )
1040: THEN
1041: COMMIT WORK;
1042: END IF;
1043:
1052: p_data => x_msg_data
1053: );
1054:
1055: EXCEPTION
1056: WHEN FND_API.G_EXC_ERROR THEN
1057: x_return_status := FND_API.G_RET_STS_ERROR;
1058: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1059: P_API_NAME => L_API_NAME
1060: ,P_PKG_NAME => G_PKG_NAME
1053: );
1054:
1055: EXCEPTION
1056: WHEN FND_API.G_EXC_ERROR THEN
1057: x_return_status := FND_API.G_RET_STS_ERROR;
1058: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1059: P_API_NAME => L_API_NAME
1060: ,P_PKG_NAME => G_PKG_NAME
1061: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
1063: ,X_MSG_COUNT => X_MSG_COUNT
1064: ,X_MSG_DATA => X_MSG_DATA
1065: ,X_RETURN_STATUS => X_RETURN_STATUS);
1066:
1067: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1068: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1069: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1070: P_API_NAME => L_API_NAME
1071: ,P_PKG_NAME => G_PKG_NAME
1064: ,X_MSG_DATA => X_MSG_DATA
1065: ,X_RETURN_STATUS => X_RETURN_STATUS);
1066:
1067: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1068: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1069: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1070: P_API_NAME => L_API_NAME
1071: ,P_PKG_NAME => G_PKG_NAME
1072: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
1075: ,X_MSG_DATA => X_MSG_DATA
1076: ,X_RETURN_STATUS => X_RETURN_STATUS);
1077:
1078: WHEN OTHERS THEN
1079: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1080: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1081: P_API_NAME => L_API_NAME
1082: ,P_PKG_NAME => G_PKG_NAME
1083: ,P_SQLERRM => sqlerrm
1102: --
1103: -- Standard IN Parameters:
1104: -- p_api_version IN NUMBER Required
1105: -- p_init_msg_list IN VARCHAR2 Optional
1106: -- Default = FND_API.G_FALSE
1107: --
1108: -- Standard OUT NOCOPY /* file.sql.39 change */ Parameters:
1109: -- x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2(1)
1110: -- x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
1125:
1126: PROCEDURE Update_Installation_Detail
1127: (
1128: p_api_version_number IN NUMBER,
1129: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1130: p_commit IN VARCHAR2 := FND_API.G_FALSE,
1131: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1132: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
1133: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1126: PROCEDURE Update_Installation_Detail
1127: (
1128: p_api_version_number IN NUMBER,
1129: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1130: p_commit IN VARCHAR2 := FND_API.G_FALSE,
1131: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1132: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
1133: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1134: p_object_version_number IN NUMBER,
1133: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1134: p_object_version_number IN NUMBER,
1135: p_line_inst_dtl_tbl IN Inst_Detail_tbl_Type,
1136: p_contact_tbl IN contact_tbl_type := G_MISS_Contact_Tbl,
1137: p_cascade_flag IN VARCHAR2 := FND_API.G_TRUE)
1138: IS
1139: /* CURSOR C_old_contact(l_cs_contact_id NUMBER) IS
1140: SELECT contact_id
1141: FROM cs_inst_contact_dtls_v -- Bug 1554869 shegde
1153: -- Standard Start of API savepoint
1154: SAVEPOINT Update_Installation_detail_PUB;
1155:
1156: -- Standard call to check for call compatibility.
1157: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
1158: p_api_version_number,
1159: l_api_name,
1160: G_PKG_NAME)
1161: THEN
1158: p_api_version_number,
1159: l_api_name,
1160: G_PKG_NAME)
1161: THEN
1162: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1163: END IF;
1164:
1165:
1166: -- Initialize message list if p_init_msg_list is set to TRUE.
1163: END IF;
1164:
1165:
1166: -- Initialize message list if p_init_msg_list is set to TRUE.
1167: IF FND_API.to_Boolean( p_init_msg_list )
1168: THEN
1169: FND_MSG_PUB.initialize;
1170: END IF;
1171:
1172: -- Debug Message
1173: ASO_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Private API: ' || l_api_name || 'start');
1174:
1175: -- Initialize API return status to SUCCESS
1176: x_return_status := FND_API.G_RET_STS_SUCCESS;
1177:
1178: --
1179: -- API body
1180: --
1189: FND_MESSAGE.Set_Name(' + appShortName +', 'UT_CANNOT_GET_PROFILE_VALUE');
1190: FND_MESSAGE.Set_Token('PROFILE', 'USER_ID', FALSE);
1191: FND_MSG_PUB.ADD;
1192: END IF;
1193: RAISE FND_API.G_EXC_ERROR;
1194: END IF;
1195:
1196:
1197:
1205: -- then the source line will not change because of the update. by explicity
1206: -- setting it to null we make sure that this line has no relationship with the
1207: -- parent.
1208:
1209: IF l_line_inst_dtl_rec.source_line_inst_detail_id = FND_API.G_MISS_NUM THEN
1210: l_line_inst_dtl_rec.source_line_inst_detail_id := null;
1211: END IF;
1212:
1213: -- old quantity is needed if updates have to be cascaded
1211: END IF;
1212:
1213: -- old quantity is needed if updates have to be cascaded
1214: IF l_line_inst_dtl_rec.quantity is not NULL
1215: OR l_line_inst_dtl_rec.quantity <> FND_API.G_MISS_NUM THEN
1216:
1217: SELECT customer_product_quantity INTO l_old_quantity
1218: FROM cs_line_inst_details
1219: where line_inst_detail_id = l_line_inst_dtl_rec.line_inst_detail_id;
1225:
1226: CS_Inst_detail_PUB.Update_installation_details
1227: (
1228: p_api_version => 1.0 ,
1229: p_init_msg_list => FND_API.G_FALSE ,
1230: p_commit => FND_API.G_FALSE ,
1231: x_return_status => x_return_status ,
1232: x_msg_count => x_msg_count ,
1233: x_msg_data => x_msg_data ,
1226: CS_Inst_detail_PUB.Update_installation_details
1227: (
1228: p_api_version => 1.0 ,
1229: p_init_msg_list => FND_API.G_FALSE ,
1230: p_commit => FND_API.G_FALSE ,
1231: x_return_status => x_return_status ,
1232: x_msg_count => x_msg_count ,
1233: x_msg_data => x_msg_data ,
1234: p_line_inst_dtl_rec => l_line_inst_dtl_rec ,
1236: P_OBJECT_VERSION_NUMBER => p_object_version_number,
1237: X_OBJECT_VERSION_NUMBER => l_object_version_number
1238: );
1239:
1240: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1241: RAISE FND_API.G_EXC_ERROR;
1242: END IF;
1243:
1244: -- dbms_output.put_line('before modify contacts in update');
1237: X_OBJECT_VERSION_NUMBER => l_object_version_number
1238: );
1239:
1240: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1241: RAISE FND_API.G_EXC_ERROR;
1242: END IF;
1243:
1244: -- dbms_output.put_line('before modify contacts in update');
1245:
1248: -- for cascading.
1249:
1250: l_p_contact_tbl := p_contact_tbl;
1251: FOR i in 1..p_contact_tbl.count LOOP
1252: IF p_contact_tbl(i).old_contact_id = FND_API.G_MISS_NUM
1253: AND p_contact_tbl(i).operation_code <> 'CREATE' THEN
1254:
1255: OPEN C_old_contact( p_contact_tbl(i).cs_contact_id);
1256: FETCH C_old_contact INTO l_p_contact_tbl(i).old_contact_id;
1254:
1255: OPEN C_old_contact( p_contact_tbl(i).cs_contact_id);
1256: FETCH C_old_contact INTO l_p_contact_tbl(i).old_contact_id;
1257: IF(C_old_contact%NOTFOUND) THEN
1258: RAISE FND_API.G_EXC_ERROR;
1259: END IF;
1260: CLOSE C_old_contact;
1261:
1262: END IF;
1263: END LOOP;
1264:
1265: Modify_contacts
1266: ( p_api_version => 1.0 ,
1267: p_init_msg_list => FND_API.G_FALSE ,
1268: p_commit => FND_API.G_FALSE ,
1269: x_return_status => x_return_status ,
1270: x_msg_count => x_msg_count ,
1271: x_msg_data => x_msg_data ,
1264:
1265: Modify_contacts
1266: ( p_api_version => 1.0 ,
1267: p_init_msg_list => FND_API.G_FALSE ,
1268: p_commit => FND_API.G_FALSE ,
1269: x_return_status => x_return_status ,
1270: x_msg_count => x_msg_count ,
1271: x_msg_data => x_msg_data ,
1272: p_line_dtl_id => l_line_inst_dtl_rec.line_inst_detail_id ,
1272: p_line_dtl_id => l_line_inst_dtl_rec.line_inst_detail_id ,
1273: p_contact_tbl => p_contact_tbl);
1274:
1275:
1276: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1277: RAISE FND_API.G_EXC_ERROR;
1278: END IF;
1279: END IF;
1280:
1273: p_contact_tbl => p_contact_tbl);
1274:
1275:
1276: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1277: RAISE FND_API.G_EXC_ERROR;
1278: END IF;
1279: END IF;
1280:
1281:
1291: p_contact_tbl ,
1292: l_old_quantity );
1293:
1294:
1295: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1296: RAISE FND_API.G_EXC_ERROR;
1297: END IF;
1298:
1299:
1292: l_old_quantity );
1293:
1294:
1295: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1296: RAISE FND_API.G_EXC_ERROR;
1297: END IF;
1298:
1299:
1300:
1302: -- End of API body.
1303: --
1304:
1305: -- Standard check for p_commit
1306: IF FND_API.to_Boolean( p_commit )
1307: THEN
1308: COMMIT WORK;
1309: END IF;
1310:
1319: p_data => x_msg_data
1320: );
1321:
1322: EXCEPTION
1323: WHEN FND_API.G_EXC_ERROR THEN
1324: x_return_status := FND_API.G_RET_STS_ERROR;
1325: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1326: P_API_NAME => L_API_NAME
1327: ,P_PKG_NAME => G_PKG_NAME
1320: );
1321:
1322: EXCEPTION
1323: WHEN FND_API.G_EXC_ERROR THEN
1324: x_return_status := FND_API.G_RET_STS_ERROR;
1325: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1326: P_API_NAME => L_API_NAME
1327: ,P_PKG_NAME => G_PKG_NAME
1328: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
1331: ,X_MSG_DATA => X_MSG_DATA
1332: ,X_RETURN_STATUS => X_RETURN_STATUS);
1333: null;
1334:
1335: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1336: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1337: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1338: P_API_NAME => L_API_NAME
1339: ,P_PKG_NAME => G_PKG_NAME
1332: ,X_RETURN_STATUS => X_RETURN_STATUS);
1333: null;
1334:
1335: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1336: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1337: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1338: P_API_NAME => L_API_NAME
1339: ,P_PKG_NAME => G_PKG_NAME
1340: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
1344: ,X_RETURN_STATUS => X_RETURN_STATUS);
1345: null;
1346:
1347: WHEN OTHERS THEN
1348: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1349: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1350: P_API_NAME => L_API_NAME
1351: ,P_PKG_NAME => G_PKG_NAME
1352: ,P_SQLERRM => sqlerrm
1373: --
1374: -- Standard IN Parameters:
1375: -- p_api_version IN NUMBER Required
1376: -- p_init_msg_list IN VARCHAR2 Optional
1377: -- Default = FND_API.G_FALSE
1378: --
1379: -- Standard OUT NOCOPY /* file.sql.39 change */ Parameters:
1380: -- x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2(1)
1381: -- x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
1395:
1396: PROCEDURE Delete_Installation_Detail
1397: (
1398: p_api_version_number IN NUMBER,
1399: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1400: p_commit IN VARCHAR2 := FND_API.G_FALSE,
1401: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1402: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
1403: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1396: PROCEDURE Delete_Installation_Detail
1397: (
1398: p_api_version_number IN NUMBER,
1399: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1400: p_commit IN VARCHAR2 := FND_API.G_FALSE,
1401: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1402: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
1403: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1404: p_line_inst_dtl_id IN NUMBER
1421: -- Standard Start of API savepoint
1422: SAVEPOINT Delete_Installation_detail_PUB;
1423:
1424: -- Standard call to check for call compatibility.
1425: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
1426: p_api_version_number,
1427: l_api_name,
1428: G_PKG_NAME)
1429: THEN
1426: p_api_version_number,
1427: l_api_name,
1428: G_PKG_NAME)
1429: THEN
1430: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1431: END IF;
1432:
1433:
1434: -- Initialize message list if p_init_msg_list is set to TRUE.
1431: END IF;
1432:
1433:
1434: -- Initialize message list if p_init_msg_list is set to TRUE.
1435: IF FND_API.to_Boolean( p_init_msg_list )
1436: THEN
1437: FND_MSG_PUB.initialize;
1438: END IF;
1439:
1440: -- Debug Message
1441: ASO_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Private API: ' || l_api_name || 'start');
1442:
1443: -- Initialize API return status to SUCCESS
1444: x_return_status := FND_API.G_RET_STS_SUCCESS;
1445:
1446:
1447: Cascade_delete_inst_details(
1448: 1.0 ,
1453: x_msg_data ,
1454: p_line_inst_dtl_id
1455: );
1456:
1457: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1458: RAISE FND_API.G_EXC_ERROR;
1459: END IF;
1460:
1461:
1454: p_line_inst_dtl_id
1455: );
1456:
1457: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1458: RAISE FND_API.G_EXC_ERROR;
1459: END IF;
1460:
1461:
1462: FOR i in C_Contact_Info(p_line_inst_dtl_id) LOOP
1476: p_line_dtl_id => p_line_inst_dtl_id ,
1477: p_contact_tbl => l_contact_tbl);
1478: END IF;
1479:
1480: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1481: RAISE FND_API.G_EXC_ERROR;
1482: END IF;
1483:
1484:
1477: p_contact_tbl => l_contact_tbl);
1478: END IF;
1479:
1480: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1481: RAISE FND_API.G_EXC_ERROR;
1482: END IF;
1483:
1484:
1485: CS_Inst_detail_PUB.Delete_installation_details(
1491: x_msg_data ,
1492: p_line_inst_dtl_id
1493: );
1494:
1495: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1496: RAISE FND_API.G_EXC_ERROR;
1497: END IF;
1498:
1499:
1492: p_line_inst_dtl_id
1493: );
1494:
1495: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1496: RAISE FND_API.G_EXC_ERROR;
1497: END IF;
1498:
1499:
1500: --
1501: -- End of API body.
1502: --
1503:
1504: -- Standard check for p_commit
1505: IF FND_API.to_Boolean( p_commit )
1506: THEN
1507: COMMIT WORK;
1508: END IF;
1509:
1518: p_data => x_msg_data
1519: );
1520:
1521: EXCEPTION
1522: WHEN FND_API.G_EXC_ERROR THEN
1523: x_return_status := FND_API.G_RET_STS_ERROR;
1524: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1525: P_API_NAME => L_API_NAME
1526: ,P_PKG_NAME => G_PKG_NAME
1519: );
1520:
1521: EXCEPTION
1522: WHEN FND_API.G_EXC_ERROR THEN
1523: x_return_status := FND_API.G_RET_STS_ERROR;
1524: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1525: P_API_NAME => L_API_NAME
1526: ,P_PKG_NAME => G_PKG_NAME
1527: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
1529: ,X_MSG_COUNT => X_MSG_COUNT
1530: ,X_MSG_DATA => X_MSG_DATA
1531: ,X_RETURN_STATUS => X_RETURN_STATUS);
1532:
1533: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1534: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1535: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1536: P_API_NAME => L_API_NAME
1537: ,P_PKG_NAME => G_PKG_NAME
1530: ,X_MSG_DATA => X_MSG_DATA
1531: ,X_RETURN_STATUS => X_RETURN_STATUS);
1532:
1533: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1534: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1535: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1536: P_API_NAME => L_API_NAME
1537: ,P_PKG_NAME => G_PKG_NAME
1538: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
1541: ,X_MSG_DATA => X_MSG_DATA
1542: ,X_RETURN_STATUS => X_RETURN_STATUS);
1543:
1544: WHEN OTHERS THEN
1545: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1546: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1547: P_API_NAME => L_API_NAME
1548: ,P_PKG_NAME => G_PKG_NAME
1549: ,P_SQLERRM => sqlerrm
1568:
1569: PROCEDURE Update_Inst_Details_ORDER
1570: (
1571: p_api_version_number IN NUMBER,
1572: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1573: p_commit IN VARCHAR2 := FND_API.G_FALSE,
1574: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1575: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
1576: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1569: PROCEDURE Update_Inst_Details_ORDER
1570: (
1571: p_api_version_number IN NUMBER,
1572: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1573: p_commit IN VARCHAR2 := FND_API.G_FALSE,
1574: x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1575: x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
1576: x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
1577: p_quote_line_shipment_id IN NUMBER,
1594: -- Standard Start of API savepoint
1595: SAVEPOINT Update_Inst_details_ORder_PUB;
1596:
1597: -- Standard call to check for call compatibility.
1598: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
1599: p_api_version_number,
1600: l_api_name,
1601: G_PKG_NAME)
1602: THEN
1599: p_api_version_number,
1600: l_api_name,
1601: G_PKG_NAME)
1602: THEN
1603: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1604: END IF;
1605:
1606:
1607: -- Initialize message list if p_init_msg_list is set to TRUE.
1604: END IF;
1605:
1606:
1607: -- Initialize message list if p_init_msg_list is set to TRUE.
1608: IF FND_API.to_Boolean( p_init_msg_list )
1609: THEN
1610: FND_MSG_PUB.initialize;
1611: END IF;
1612:
1613: -- Debug Message
1614: ASO_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Private API: ' || l_api_name || 'start');
1615:
1616: -- Initialize API return status to SUCCESS
1617: x_return_status := FND_API.G_RET_STS_SUCCESS;
1618:
1619: OPEN C_inst_details;
1620: FETCH C_inst_details INTO l_count;
1621: CLOSE C_inst_details;
1632: );
1633:
1634: END IF;
1635:
1636: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1637: RAISE FND_API.G_EXC_ERROR;
1638: END IF;
1639:
1640: -- Standard check for p_commit
1633:
1634: END IF;
1635:
1636: IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
1637: RAISE FND_API.G_EXC_ERROR;
1638: END IF;
1639:
1640: -- Standard check for p_commit
1641: IF FND_API.to_Boolean( p_commit )
1637: RAISE FND_API.G_EXC_ERROR;
1638: END IF;
1639:
1640: -- Standard check for p_commit
1641: IF FND_API.to_Boolean( p_commit )
1642: THEN
1643: COMMIT WORK;
1644: END IF;
1645:
1654: p_data => x_msg_data
1655: );
1656:
1657: EXCEPTION
1658: WHEN FND_API.G_EXC_ERROR THEN
1659: x_return_status := FND_API.G_RET_STS_ERROR;
1660: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1661: P_API_NAME => L_API_NAME
1662: ,P_PKG_NAME => G_PKG_NAME
1655: );
1656:
1657: EXCEPTION
1658: WHEN FND_API.G_EXC_ERROR THEN
1659: x_return_status := FND_API.G_RET_STS_ERROR;
1660: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1661: P_API_NAME => L_API_NAME
1662: ,P_PKG_NAME => G_PKG_NAME
1663: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
1665: ,X_MSG_COUNT => X_MSG_COUNT
1666: ,X_MSG_DATA => X_MSG_DATA
1667: ,X_RETURN_STATUS => X_RETURN_STATUS);
1668:
1669: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1670: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1671: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1672: P_API_NAME => L_API_NAME
1673: ,P_PKG_NAME => G_PKG_NAME
1666: ,X_MSG_DATA => X_MSG_DATA
1667: ,X_RETURN_STATUS => X_RETURN_STATUS);
1668:
1669: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1670: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1671: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1672: P_API_NAME => L_API_NAME
1673: ,P_PKG_NAME => G_PKG_NAME
1674: ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
1677: ,X_MSG_DATA => X_MSG_DATA
1678: ,X_RETURN_STATUS => X_RETURN_STATUS);
1679:
1680: WHEN OTHERS THEN
1681: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1682: ASO_UTILITY_PVT.HANDLE_EXCEPTIONS(
1683: P_API_NAME => L_API_NAME
1684: ,P_PKG_NAME => G_PKG_NAME
1685: ,P_SQLERRM => sqlerrm