423: END LOOP;
424:
425: -- No matching ID was found in the array: report on this.
426: x_return_status := fnd_api.g_ret_sts_error;
427: fnd_message.set_name('AR', 'HZ_NO_LOCATION_FOUND');
428: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
429: fnd_msg_pub.add;
430: IF fnd_log.level_error>=fnd_log.g_current_runtime_level THEN
431: hz_utility_v2pub.debug(p_message=>'Location record not found',
424:
425: -- No matching ID was found in the array: report on this.
426: x_return_status := fnd_api.g_ret_sts_error;
427: fnd_message.set_name('AR', 'HZ_NO_LOCATION_FOUND');
428: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
429: fnd_msg_pub.add;
430: IF fnd_log.level_error>=fnd_log.g_current_runtime_level THEN
431: hz_utility_v2pub.debug(p_message=>'Location record not found',
432: p_prefix=>'ERROR',
567: p_msg_level=>fnd_log.level_statement);
568: END IF;
569: ELSE
570: l_return_status := fnd_api.g_ret_sts_error;
571: fnd_message.set_name('AR', 'HZ_ZIP_OR_CITY_AND_STATE');
572: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
573: fnd_msg_pub.add;
574: IF fnd_log.level_error>=fnd_log.g_current_runtime_level THEN
575: hz_utility_v2pub.debug(p_message=>'City, state and postal code are null : Error',
568: END IF;
569: ELSE
570: l_return_status := fnd_api.g_ret_sts_error;
571: fnd_message.set_name('AR', 'HZ_ZIP_OR_CITY_AND_STATE');
572: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
573: fnd_msg_pub.add;
574: IF fnd_log.level_error>=fnd_log.g_current_runtime_level THEN
575: hz_utility_v2pub.debug(p_message=>'City, state and postal code are null : Error',
576: p_prefix=>'ERROR',
602: p_msg_level=>fnd_log.level_statement);
603: END IF;
604: ELSE
605: l_return_status := fnd_api.g_ret_sts_error;
606: fnd_message.set_name('AR', 'HZ_ADDRESS_LINE_MANDATORY');
607: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
608: fnd_msg_pub.add;
609: IF fnd_log.level_error>=fnd_log.g_current_runtime_level THEN
610: hz_utility_v2pub.debug(p_message=>'Address is not null : Error ',
603: END IF;
604: ELSE
605: l_return_status := fnd_api.g_ret_sts_error;
606: fnd_message.set_name('AR', 'HZ_ADDRESS_LINE_MANDATORY');
607: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
608: fnd_msg_pub.add;
609: IF fnd_log.level_error>=fnd_log.g_current_runtime_level THEN
610: hz_utility_v2pub.debug(p_message=>'Address is not null : Error ',
611: p_prefix=>'ERROR',
635: p_prefix=>'ERROR',
636: p_msg_level=>fnd_log.level_error);
637: END IF;
638: l_return_status := fnd_api.g_ret_sts_error;
639: fnd_message.set_name('AR', 'HZ_SPATIAL_INVALID_COUNTRY');
640: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
641: fnd_message.set_token('COUNTRY', l_country);
642: fnd_msg_pub.add;
643: END IF;
636: p_msg_level=>fnd_log.level_error);
637: END IF;
638: l_return_status := fnd_api.g_ret_sts_error;
639: fnd_message.set_name('AR', 'HZ_SPATIAL_INVALID_COUNTRY');
640: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
641: fnd_message.set_token('COUNTRY', l_country);
642: fnd_msg_pub.add;
643: END IF;
644:
637: END IF;
638: l_return_status := fnd_api.g_ret_sts_error;
639: fnd_message.set_name('AR', 'HZ_SPATIAL_INVALID_COUNTRY');
640: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
641: fnd_message.set_token('COUNTRY', l_country);
642: fnd_msg_pub.add;
643: END IF;
644:
645: us_form_str := us_form_str || '/>';
773: p_prefix=>'ERROR',
774: p_msg_level=>fnd_log.level_error);
775: END IF;
776: l_return_status := fnd_api.g_ret_sts_error;
777: fnd_message.set_name('AR', 'HZ_SPATIAL_INVALID_COUNTRY');
778: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
779: fnd_message.set_token('COUNTRY', l_country);
780: fnd_msg_pub.add;
781: -- raise the error immediately and forget about processing the rest.
774: p_msg_level=>fnd_log.level_error);
775: END IF;
776: l_return_status := fnd_api.g_ret_sts_error;
777: fnd_message.set_name('AR', 'HZ_SPATIAL_INVALID_COUNTRY');
778: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
779: fnd_message.set_token('COUNTRY', l_country);
780: fnd_msg_pub.add;
781: -- raise the error immediately and forget about processing the rest.
782: RAISE notcorrectaddress;
775: END IF;
776: l_return_status := fnd_api.g_ret_sts_error;
777: fnd_message.set_name('AR', 'HZ_SPATIAL_INVALID_COUNTRY');
778: fnd_message.set_token('LOC_ID', TO_CHAR(p_location_id));
779: fnd_message.set_token('COUNTRY', l_country);
780: fnd_msg_pub.add;
781: -- raise the error immediately and forget about processing the rest.
782: RAISE notcorrectaddress;
783: END IF;
1055: x_msg_data IN OUT NOCOPY VARCHAR2)
1056: IS
1057: BEGIN
1058: x_return_status := fnd_api.g_ret_sts_error;
1059: fnd_message.set_name('AR', 'HZ_NUMBER_MANDATORY');
1060: fnd_message.set_token('VALUE',Elt_value);
1061: fnd_message.set_token('ELT',Elt_name);
1062: fnd_message.set_token('LOC_ID',TO_CHAR(p_location_id));
1063: fnd_msg_pub.add;
1056: IS
1057: BEGIN
1058: x_return_status := fnd_api.g_ret_sts_error;
1059: fnd_message.set_name('AR', 'HZ_NUMBER_MANDATORY');
1060: fnd_message.set_token('VALUE',Elt_value);
1061: fnd_message.set_token('ELT',Elt_name);
1062: fnd_message.set_token('LOC_ID',TO_CHAR(p_location_id));
1063: fnd_msg_pub.add;
1064: END non_num_handle;
1057: BEGIN
1058: x_return_status := fnd_api.g_ret_sts_error;
1059: fnd_message.set_name('AR', 'HZ_NUMBER_MANDATORY');
1060: fnd_message.set_token('VALUE',Elt_value);
1061: fnd_message.set_token('ELT',Elt_name);
1062: fnd_message.set_token('LOC_ID',TO_CHAR(p_location_id));
1063: fnd_msg_pub.add;
1064: END non_num_handle;
1065:
1058: x_return_status := fnd_api.g_ret_sts_error;
1059: fnd_message.set_name('AR', 'HZ_NUMBER_MANDATORY');
1060: fnd_message.set_token('VALUE',Elt_value);
1061: fnd_message.set_token('ELT',Elt_name);
1062: fnd_message.set_token('LOC_ID',TO_CHAR(p_location_id));
1063: fnd_msg_pub.add;
1064: END non_num_handle;
1065:
1066: --
1137:
1138: l_recep := elt_value(p_str, 'GEOCODE ID');
1139: IF l_recep IS NULL THEN
1140: l_return_status := fnd_api.g_ret_sts_error;
1141: fnd_message.set_name('AR', 'HZ_MISSING_GEOCODE_ID');
1142: fnd_msg_pub.add;
1143: status_handler(l_return_status, x_return_status);
1144: IF fnd_log.level_error>=fnd_log.g_current_runtime_level THEN
1145: hz_utility_v2pub.debug(p_message=>'No Geocode Id Found : Error',
1171: -- J. del Callar: report this error to the user only if a row was
1172: -- returned. if a row was not returned, the error gets reported in a
1173: -- more meaningful way later on.
1174: IF l_match_count_temp <> '0' THEN
1175: fnd_message.set_name('AR', 'HZ_MISSING_LATITUDE');
1176: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1177: fnd_msg_pub.add;
1178: -- Debug info.
1179: END IF;
1172: -- returned. if a row was not returned, the error gets reported in a
1173: -- more meaningful way later on.
1174: IF l_match_count_temp <> '0' THEN
1175: fnd_message.set_name('AR', 'HZ_MISSING_LATITUDE');
1176: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1177: fnd_msg_pub.add;
1178: -- Debug info.
1179: END IF;
1180: status_handler(l_return_status, x_return_status);
1207: -- J. del Callar: report this error to the user only if a row was
1208: -- returned. if a row was not returned, the error gets reported in a
1209: -- more meaningful way later on.
1210: IF l_match_count_temp <> '0' THEN
1211: fnd_message.set_name('AR', 'HZ_MISSING_LONGITUDE');
1212: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1213: fnd_msg_pub.add;
1214:
1215: END IF;
1208: -- returned. if a row was not returned, the error gets reported in a
1209: -- more meaningful way later on.
1210: IF l_match_count_temp <> '0' THEN
1211: fnd_message.set_name('AR', 'HZ_MISSING_LONGITUDE');
1212: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1213: fnd_msg_pub.add;
1214:
1215: END IF;
1216: status_handler(l_return_status, x_return_status);
1267: -- spatial data provider. The message should only occur if the street is
1268: -- not found, but the latitude and longitude were found.
1269: IF l_street IS NULL AND l_lat_found AND l_long_found THEN
1270: /*--l_return_status := g_warning;
1271: fnd_message.set_name('AR','HZ_MISSING_STREET');
1272: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1273: fnd_msg_pub.add;
1274: status_handler(l_return_status, x_return_status);
1275:
1268: -- not found, but the latitude and longitude were found.
1269: IF l_street IS NULL AND l_lat_found AND l_long_found THEN
1270: /*--l_return_status := g_warning;
1271: fnd_message.set_name('AR','HZ_MISSING_STREET');
1272: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1273: fnd_msg_pub.add;
1274: status_handler(l_return_status, x_return_status);
1275:
1276: -- J. del Callar: set the status reported in
1300: l_match_count := TO_NUMBER(l_match_count_temp);
1301:
1302: IF l_match_count > 1 THEN
1303: /*--l_return_status := g_warning;
1304: fnd_message.set_name('AR','HZ_NB_MATCHES');
1305: fnd_message.set_token('NB', l_match_count_temp);
1306: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1307: fnd_msg_pub.add;
1308:
1301:
1302: IF l_match_count > 1 THEN
1303: /*--l_return_status := g_warning;
1304: fnd_message.set_name('AR','HZ_NB_MATCHES');
1305: fnd_message.set_token('NB', l_match_count_temp);
1306: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1307: fnd_msg_pub.add;
1308:
1309: -- J. del Callar: set the status reported in
1302: IF l_match_count > 1 THEN
1303: /*--l_return_status := g_warning;
1304: fnd_message.set_name('AR','HZ_NB_MATCHES');
1305: fnd_message.set_token('NB', l_match_count_temp);
1306: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1307: fnd_msg_pub.add;
1308:
1309: -- J. del Callar: set the status reported in
1310: -- HZ_LOCATIONS.GEOMETRY_STATUS_CODE to MULTIMATCH to reflect that
1318: p_msg_level=>fnd_log.level_exception);
1319: END IF;
1320: ELSIF l_match_count = 0 THEN
1321: /* l_return_status := fnd_api.g_ret_sts_error;
1322: fnd_message.set_name('AR','HZ_NB_MATCHES');
1323: fnd_message.set_token('NB', l_match_count_temp);
1324: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1325: fnd_msg_pub.add;
1326:
1319: END IF;
1320: ELSIF l_match_count = 0 THEN
1321: /* l_return_status := fnd_api.g_ret_sts_error;
1322: fnd_message.set_name('AR','HZ_NB_MATCHES');
1323: fnd_message.set_token('NB', l_match_count_temp);
1324: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1325: fnd_msg_pub.add;
1326:
1327: -- J. del Callar: no rows were returned by location service
1320: ELSIF l_match_count = 0 THEN
1321: /* l_return_status := fnd_api.g_ret_sts_error;
1322: fnd_message.set_name('AR','HZ_NB_MATCHES');
1323: fnd_message.set_token('NB', l_match_count_temp);
1324: fnd_message.set_token('LOC_ID', TO_CHAR(x_loc_id));
1325: fnd_msg_pub.add;
1326:
1327: -- J. del Callar: no rows were returned by location service
1328: -- mark this as an error.
1866: END IF;
1867: -- The post did not succeed, even after several retries. This is an
1868: -- unrecoverable error.
1869: l_return_status := fnd_api.g_ret_sts_unexp_error;
1870: fnd_message.set_name('AR','HZ_HTTP_POST_FAILED');
1871: fnd_message.set_token('RETRY', p_retry);
1872: -- limit the size of token to 200 characters, otherwise if lresp is too
1873: -- long, will get buffer too small error
1874: fnd_message.set_token('LASTMSG', NVL(substrb(l_err_resp,1,200), '
1867: -- The post did not succeed, even after several retries. This is an
1868: -- unrecoverable error.
1869: l_return_status := fnd_api.g_ret_sts_unexp_error;
1870: fnd_message.set_name('AR','HZ_HTTP_POST_FAILED');
1871: fnd_message.set_token('RETRY', p_retry);
1872: -- limit the size of token to 200 characters, otherwise if lresp is too
1873: -- long, will get buffer too small error
1874: fnd_message.set_token('LASTMSG', NVL(substrb(l_err_resp,1,200), '
1875: fnd_msg_pub.add;
1870: fnd_message.set_name('AR','HZ_HTTP_POST_FAILED');
1871: fnd_message.set_token('RETRY', p_retry);
1872: -- limit the size of token to 200 characters, otherwise if lresp is too
1873: -- long, will get buffer too small error
1874: fnd_message.set_token('LASTMSG', NVL(substrb(l_err_resp,1,200), '
1876:
1877: -- Set the error status for all records in this batch
1878: FOR i IN 1..p_loc_array.COUNT LOOP
1915: p_module =>'HZ');
1916: END IF;
1917: -- Spatial response was not parseable. This is an unrecoverable error.
1918: -- l_return_status := fnd_api.g_ret_sts_unexp_error;
1919: -- fnd_message.set_name('AR','HZ_MALFORMED_SPATIAL_RESPONSE');
1920: -- if the response is some special char that must be handled.
1921: BEGIN
1922: IF (LENGTH(lresp) >2) THEN
1923: -- limit the size of token to 200 characters, otherwise if lresp is too
1921: BEGIN
1922: IF (LENGTH(lresp) >2) THEN
1923: -- limit the size of token to 200 characters, otherwise if lresp is too
1924: -- long, will get buffer too small error
1925: fnd_message.set_token('RESP', substrb(lresp,1,200));
1926: ELSE
1927: fnd_message.set_token('RESP', 'Malformed response');
1928: END IF;
1929: EXCEPTION
1923: -- limit the size of token to 200 characters, otherwise if lresp is too
1924: -- long, will get buffer too small error
1925: fnd_message.set_token('RESP', substrb(lresp,1,200));
1926: ELSE
1927: fnd_message.set_token('RESP', 'Malformed response');
1928: END IF;
1929: EXCEPTION
1930: WHEN OTHERS THEN
1931: IF fnd_log.level_procedure>=fnd_log.g_current_runtime_level THEN
1941: p_msg_level=>fnd_log.level_error,
1942: p_module_prefix => 'HZ_GEOCODE_PKG',
1943: p_module =>'HZ');
1944: END IF;
1945: fnd_message.set_token('RESP', 'Malformed response');
1946: END; -- end of anonymous block
1947: fnd_msg_pub.add;
1948: /*
1949: If the lresp - response from the post() is not null and not a
1956: "unexpected error occured" mesg from update_geometry() method.
1957: */
1958:
1959: IF LTRIM(RTRIM(l_err_resp)) IS NOT NULL THEN
1960: fnd_message.set_name('AR','HZ_MALFORMED_SPATIAL_RESPONSE');
1961: fnd_message.set_token('RESP', nvl(substrb(l_err_resp,1,400), '
1962: fnd_msg_pub.add;
1963: END IF;
1964:
1957: */
1958:
1959: IF LTRIM(RTRIM(l_err_resp)) IS NOT NULL THEN
1960: fnd_message.set_name('AR','HZ_MALFORMED_SPATIAL_RESPONSE');
1961: fnd_message.set_token('RESP', nvl(substrb(l_err_resp,1,400), '
1963: END IF;
1964:
1965: -- Set the error status for all records in this batch