39: l_api_name CONSTANT VARCHAR2(30) := 'FindServiceRate';
40:
41:
42: -- standard variable for calling subroutines
43: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
44: l_msg_count NUMBER := 0;
45: l_msg_data VARCHAR2(2000) := NULL;
46: l_msg_summary VARCHAR2(2000) := NULL;
47: l_msg_details VARCHAR2(4000) := NULL;
127: END IF;
128: --
129: l_output.delete;
130: -- Standard call to check for call compatibility.
131: IF NOT FND_API.compatible_api_call
132: ( l_api_version
133: , p_api_version
134: , l_api_name
135: , G_PKG_NAME)
137: IF l_debug_on
138: THEN
139: WSH_DEBUG_SV.log(l_module_name,'Not Compatible');
140: END IF;
141: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
142: END IF;
143:
144: -- Check p_init_msg_list
145: IF FND_API.to_boolean(p_init_msg_list)
141: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
142: END IF;
143:
144: -- Check p_init_msg_list
145: IF FND_API.to_boolean(p_init_msg_list)
146: THEN
147: FND_MSG_PUB.initialize;
148: END IF;
149:
147: FND_MSG_PUB.initialize;
148: END IF;
149:
150: -- initialize API return status to success
151: x_return_status := FND_API.G_RET_STS_SUCCESS;
152:
153: x_msg_count := 0;
154: x_msg_data := NULL;
155:
174: , x_msg_count => l_msg_count
175: , x_msg_data => l_msg_data
176: , x_return_status => l_return_status);
177:
178: IF l_return_status = FND_API.G_RET_STS_SUCCESS
179: THEN
180: WSH_DEBUG_SV.log(l_module_name,' Inside RETURN status :'||l_return_status);
181: ELSE
182: WSH_DEBUG_SV.log(l_module_name,' Inside RETURN status :'||l_return_status);
187:
188: /* -- Commented for Carrier Services Integration with Shipping project Bug 16095594
189: L_UPS_URL := WSH_U_UTIL.Get_Carrier_API_URL(
190: p_api_version => 1.0,
191: p_init_msg_list => FND_API.G_TRUE,
192: x_return_status => l_return_status,
193: x_msg_count => l_msg_count,
194: x_msg_data => l_msg_data,
195: p_Carrier_Name => 'UPS',
193: x_msg_count => l_msg_count,
194: x_msg_data => l_msg_data,
195: p_Carrier_Name => 'UPS',
196: p_API_Name => 'RATING_AND_SERVICE_SELECTION');
197: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
198: raise WSH_U_CAR_URL;
199: end if;
200:
201: -- constructing the request sent to UPS API
444: WSH_DEBUG_SV.log(l_module_name,'Input',SUBSTR(L_INPUT_STR,651,50));
445: WSH_DEBUG_SV.log(l_module_name,'Input',SUBSTR(L_INPUT_STR,701,50));
446: END IF;
447: -- clear variables before calling subroutine
448: l_return_status := FND_API.G_RET_STS_SUCCESS;
449: l_msg_count := 0;
450: l_msg_data := NULL;
451:
452: -- get proxy server URL
452: -- get proxy server URL
453: --
454: L_INTERNET_PROXY := WSH_U_UTIL.Get_PROXY(
455: p_api_version => 1.0,
456: p_init_msg_list => FND_API.G_TRUE,
457: x_return_status => l_return_status,
458: x_msg_count => l_msg_count,
459: x_msg_data => l_msg_data);
460:
457: x_return_status => l_return_status,
458: x_msg_count => l_msg_count,
459: x_msg_data => l_msg_data);
460:
461: if l_return_status <> FND_API.G_RET_STS_SUCCESS then
462: raise WSH_U_PROXY;
463: end if;
464:
465: -- send request to UPS site
572: FND_MESSAGE.SET_NAME('WSH',L_OUTPUT(l_outrec_index).MessageText);
573: WSH_UTIL_CORE.Add_Message('E',l_module_name);
574:
575: -- Bug #2993856 : Adding the error message to the message stack
576: x_return_status := FND_API.G_RET_STS_ERROR;
577: FND_MESSAGE.SET_NAME('WSH','WSH_UTIL_MESSAGE_E');
578: FND_MESSAGE.SET_TOKEN('MSG_TEXT',L_OUTPUT(l_outrec_index).MessageText);
579: WSH_UTIL_CORE.Add_Message(p_message_type);
580: L_OUTPUT(l_outrec_index).ActionCode := NULL;
596: EXIT WHEN L_Locate_Begin = 0;
597:
598: END LOOP;
599: -- Bug 2993856: Handling the error message returned by the HOST. This exception sends the error text returned from the HOST
600: IF ( x_return_status = FND_API.G_RET_STS_ERROR ) THEN
601: raise WSH_U_HOST_FAILED;
602: END IF;
603:
604: FND_MSG_PUB.count_and_get ( p_count => x_msg_count, p_data => x_msg_data);
616: THEN
617: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_SHIPFROMTO');
618: FND_MESSAGE.SET_TOKEN('MSG_TEXT','Ship to/from Location Id IS null');
619: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
620: x_RETURN_status := FND_API.G_RET_STS_ERROR;
621:
622: WSH_UTIL_CORE.get_messages
623: ( 'Y'
624: , l_msg_summary
643: /* Commented for Carrier Services Integration with Shipping project Bug 16095594
644: WHEN WSH_U_CAR_URL THEN
645: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_CAR_URL');
646: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
647: x_return_status := FND_API.G_RET_STS_ERROR;
648: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
649: if x_msg_count > 1 then
650: x_msg_data := l_msg_summary || l_msg_details;
651: else
661: return L_OUTPUT;
662: WHEN WSH_U_PROXY THEN
663: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_PROXY');
664: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
665: x_return_status := FND_API.G_RET_STS_ERROR;
666: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
667: if x_msg_count > 1 then
668: x_msg_data := l_msg_summary || l_msg_details;
669: else
684: -- as a URL because it is NULL or has non-HTTP syntax)
685: WHEN REQUEST_FAILED THEN
686: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_REQ_FAILED');
687: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
688: x_return_status := FND_API.G_RET_STS_ERROR;
689: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
690: if x_msg_count > 1 then
691: x_msg_data := l_msg_summary || l_msg_details;
692: else
706: -- for invironmental reasons such as lack of available memory
707: WHEN INIT_FAILED THEN
708: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_INIT_FAILED');
709: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
710: x_return_status := FND_API.G_RET_STS_ERROR;
711: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
712: if x_msg_count > 1 then
713: x_msg_data := l_msg_summary || l_msg_details;
714: else
724: return L_OUTPUT;
725: WHEN WSH_U_NO_HOST THEN
726: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_NO_HOST');
727: WSH_UTIL_CORE.ADD_MESSAGE('E',l_module_name);
728: x_return_status := FND_API.G_RET_STS_ERROR;
729: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
730: if x_msg_count > 1 then
731: x_msg_data := l_msg_summary || l_msg_details;
732: else
742: return L_OUTPUT;
743: WHEN WSH_U_APPVER THEN
744: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_APPVER');
745: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
746: x_return_status := FND_API.G_RET_STS_ERROR;
747: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
748: if x_msg_count > 1 then
749: x_msg_data := l_msg_summary || l_msg_details;
750: else
760: return L_OUTPUT;
761: WHEN WSH_U_LICAGRE THEN
762: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_LICAGRE');
763: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
764: x_return_status := FND_API.G_RET_STS_ERROR;
765: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
766: if x_msg_count > 1 then
767: x_msg_data := l_msg_summary || l_msg_details;
768: else
778: return L_OUTPUT;
779: WHEN WSH_U_RESTYP THEN
780: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_RESTYP');
781: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
782: x_return_status := FND_API.G_RET_STS_ERROR;
783: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
784: if x_msg_count > 1 then
785: x_msg_data := l_msg_summary || l_msg_details;
786: else
796: return L_OUTPUT;
797: WHEN WSH_U_ACTIONCODE THEN
798: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_ACTIONCODE');
799: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
800: x_return_status := FND_API.G_RET_STS_ERROR;
801: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
802: if x_msg_count > 1 then
803: x_msg_data := l_msg_summary || l_msg_details;
804: else
814: return L_OUTPUT;
815: WHEN WSH_U_SRVLEVCODE THEN
816: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_SRVLEVCODE');
817: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
818: x_return_status := FND_API.G_RET_STS_ERROR;
819: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
820: if x_msg_count > 1 then
821: x_msg_data := l_msg_summary || l_msg_details;
822: else
832: return L_OUTPUT;
833: WHEN WSH_U_RATECHART THEN
834: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_RATECHART');
835: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
836: x_return_status := FND_API.G_RET_STS_ERROR;
837: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
838: if x_msg_count > 1 then
839: x_msg_data := l_msg_summary || l_msg_details;
840: else
850: return L_OUTPUT;
851: WHEN WSH_U_SPOSTALCODE THEN
852: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_SPOSTALCODE');
853: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
854: x_return_status := FND_API.G_RET_STS_ERROR;
855: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
856: if x_msg_count > 1 then
857: x_msg_data := l_msg_summary || l_msg_details;
858: else
868: return L_OUTPUT;
869: WHEN WSH_U_CPOSTALCODE THEN
870: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_CPOSTALCODE');
871: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
872: x_return_status := FND_API.G_RET_STS_ERROR;
873: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
874: if x_msg_count > 1 then
875: x_msg_data := l_msg_summary || l_msg_details;
876: else
886: return L_OUTPUT;
887: WHEN WSH_U_CCOUNTRY THEN
888: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_CCOUNTRY');
889: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
890: x_return_status := FND_API.G_RET_STS_ERROR;
891: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
892: if x_msg_count > 1 then
893: x_msg_data := l_msg_summary || l_msg_details;
894: else
904: return L_OUTPUT;
905: WHEN WSH_U_PKGACTWT THEN
906: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_PKGACTWT');
907: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
908: x_return_status := FND_API.G_RET_STS_ERROR;
909: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
910: if x_msg_count > 1 then
911: x_msg_data := l_msg_summary || l_msg_details;
912: else
922: return L_OUTPUT;
923: WHEN WSH_U_RESDIND THEN
924: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_RESDIND');
925: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
926: x_return_status := FND_API.G_RET_STS_ERROR;
927: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
928: if x_msg_count > 1 then
929: x_msg_data := l_msg_summary || l_msg_details;
930: else
940: return L_OUTPUT;
941: WHEN WSH_U_PKGTYPE THEN
942: FND_MESSAGE.SET_NAME('WSH', 'WSH_U_PKGTYPE');
943: WSH_UTIL_CORE.ADD_MESSAGE(p_message_type,l_module_name);
944: x_return_status := FND_API.G_RET_STS_ERROR;
945: WSH_UTIL_CORE.get_messages( 'Y', l_msg_summary, l_msg_details, x_msg_count);
946: if x_msg_count > 1 then
947: x_msg_data := l_msg_summary || l_msg_details;
948: else
975: END IF;
976: --
977: return L_OUTPUT;
978: End of Comment for Carrier Services Integration with Shipping project Bug 16095594 */
979: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
980: THEN
981: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
982: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
983: THEN
977: return L_OUTPUT;
978: End of Comment for Carrier Services Integration with Shipping project Bug 16095594 */
979: WHEN FND_API.G_EXC_UNEXPECTED_ERROR
980: THEN
981: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
982: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
983: THEN
984: FND_MSG_PUB.Add_Exc_Msg
985: ( G_PKG_NAME
990: , p_data => x_msg_data);
991: --
992: IF l_debug_on
993: THEN
994: WSH_DEBUG_SV.logmsg(l_module_name,'FND_API.G_EXC_UNEXPECTED_ERROR exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
995: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:FND_API.G_EXC_UNEXPECTED_ERROR');
996: END IF;
997: --
998: RETURN L_OUTPUT;
991: --
992: IF l_debug_on
993: THEN
994: WSH_DEBUG_SV.logmsg(l_module_name,'FND_API.G_EXC_UNEXPECTED_ERROR exception has occured.',WSH_DEBUG_SV.C_EXCEP_LEVEL);
995: WSH_DEBUG_SV.pop(l_module_name,'EXCEPTION:FND_API.G_EXC_UNEXPECTED_ERROR');
996: END IF;
997: --
998: RETURN L_OUTPUT;
999: WHEN OTHERS
997: --
998: RETURN L_OUTPUT;
999: WHEN OTHERS
1000: THEN
1001: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1002: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1003: THEN
1004: FND_MSG_PUB.Add_Exc_Msg
1005: ( G_PKG_NAME