126: EXECUTE IMMEDIATE 'SELECT HZ_MATCH_RULE_'||p_rule_id||'.check_staged_var from dual' INTO l_staged_var;
127:
128: IF l_staged_var='N' THEN
129: FND_MESSAGE.SET_NAME('AR', 'HZ_MATCH_RULE_TX_NOT_STAGED');
130: FND_MSG_PUB.ADD;
131: RAISE FND_API.G_EXC_ERROR;
132: END IF;
133:
134: -- End bug 4736139
262: END IF ;
263:
264:
265: -- Initialize return status and message stack
266: FND_MSG_PUB.initialize;
267:
268: IF l_rule_id IS NULL OR l_rule_id = 0 THEN
269: -- Find the match rule
270: null;
270: null;
271:
272: -- No MATCH RULE FOUND
273: FND_MESSAGE.SET_NAME('AR', 'HZ_NO_MATCH_RULE');
274: FND_MSG_PUB.ADD;
275: RAISE FND_API.G_EXC_ERROR;
276: END IF;
277:
278: IF p_batch_name IS NULL OR p_batch_name = '' THEN
276: END IF;
277:
278: IF p_batch_name IS NULL OR p_batch_name = '' THEN
279: FND_MESSAGE.SET_NAME('AR', 'HZ_INVALID_BATCH_NAME');
280: FND_MSG_PUB.ADD;
281: RAISE FND_API.G_EXC_ERROR;
282: END IF;
283:
284: --- VJN INTRODUCED CODE FOR QUICK DUPLICATE IDENTIFICATION
501: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
502: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
503: FND_MESSAGE.SET_NAME('AR', 'HZ_PARTY_ACQUIRE_ERROR');
504: FND_MESSAGE.SET_TOKEN('PARTY_ID', TO_CHAR(p_party_id));
505: FND_MSG_PUB.ADD;
506: RAISE FND_API.G_EXC_ERROR;
507: ELSE
508: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
509: END IF;
516:
517: EXCEPTION
518: WHEN FND_API.G_EXC_ERROR THEN
519: x_return_status := FND_API.G_RET_STS_ERROR;
520: FND_MSG_PUB.Count_And_Get(
521: p_encoded => FND_API.G_FALSE,
522: p_count => x_msg_count,
523: p_data => x_msg_data);
524: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
522: p_count => x_msg_count,
523: p_data => x_msg_data);
524: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
525: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
526: FND_MSG_PUB.Count_And_Get(
527: p_encoded => FND_API.G_FALSE,
528: p_count => x_msg_count,
529: p_data => x_msg_data);
530: WHEN OTHERS THEN
530: WHEN OTHERS THEN
531: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
532: FND_MESSAGE.SET_NAME('AR', 'HZ_DQM_SQL_EXCEP');
533: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
534: FND_MSG_PUB.ADD;
535:
536: FND_MSG_PUB.Count_And_Get(
537: p_encoded => FND_API.G_FALSE,
538: p_count => x_msg_count,
532: FND_MESSAGE.SET_NAME('AR', 'HZ_DQM_SQL_EXCEP');
533: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
534: FND_MSG_PUB.ADD;
535:
536: FND_MSG_PUB.Count_And_Get(
537: p_encoded => FND_API.G_FALSE,
538: p_count => x_msg_count,
539: p_data => x_msg_data);
540: END;
575: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
576: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
577: FND_MESSAGE.SET_NAME('AR', 'HZ_PARTY_ACQUIRE_ERROR');
578: FND_MESSAGE.SET_TOKEN('PARTY_ID', TO_CHAR(p_party_id));
579: FND_MSG_PUB.ADD;
580: RAISE FND_API.G_EXC_ERROR;
581: ELSE
582: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
583: END IF;
592:
593: EXCEPTION
594: WHEN FND_API.G_EXC_ERROR THEN
595: x_return_status := FND_API.G_RET_STS_ERROR;
596: FND_MSG_PUB.Count_And_Get(
597: p_encoded => FND_API.G_FALSE,
598: p_count => x_msg_count,
599: p_data => x_msg_data);
600: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
598: p_count => x_msg_count,
599: p_data => x_msg_data);
600: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
601: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
602: FND_MSG_PUB.Count_And_Get(
603: p_encoded => FND_API.G_FALSE,
604: p_count => x_msg_count,
605: p_data => x_msg_data);
606: WHEN OTHERS THEN
606: WHEN OTHERS THEN
607: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
608: FND_MESSAGE.SET_NAME('AR', 'HZ_DQM_SQL_EXCEP');
609: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
610: FND_MSG_PUB.ADD;
611:
612: FND_MSG_PUB.Count_And_Get(
613: p_encoded => FND_API.G_FALSE,
614: p_count => x_msg_count,
608: FND_MESSAGE.SET_NAME('AR', 'HZ_DQM_SQL_EXCEP');
609: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
610: FND_MSG_PUB.ADD;
611:
612: FND_MSG_PUB.Count_And_Get(
613: p_encoded => FND_API.G_FALSE,
614: p_count => x_msg_count,
615: p_data => x_msg_data);
616: END;
695: l_num_workers := to_number(p_num_workers);
696: l_worker_number := to_number(p_worker_number);
697:
698: -- Initialize return status and message stack
699: FND_MSG_PUB.initialize;
700: l_batch_id := TO_NUMBER(p_batch_id);
701: l_num_subset:=0;
702: l_num_evaluated:=0;
703: l_total_matches:=0;
898: log('--------------------------------');
899: log('Expected Error ' || l_cur_party_id);
900: log('Error: Aborting duplicate batch');
901: log('THIS WORKER ERRORED OUT');
902: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
903: log(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ));
904: END LOOP;
905: FND_MESSAGE.CLEAR;
906:
899: log('Expected Error ' || l_cur_party_id);
900: log('Error: Aborting duplicate batch');
901: log('THIS WORKER ERRORED OUT');
902: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
903: log(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ));
904: END LOOP;
905: FND_MESSAGE.CLEAR;
906:
907: retcode := 2;
911: log('--------------------------------');
912: log('Unexpected Error ' || l_cur_party_id);
913: log('Error: Aborting duplicate batch');
914: log('THIS WORKER ERRORED OUT');
915: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
916: log(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ));
917: END LOOP;
918: FND_MESSAGE.CLEAR;
919:
912: log('Unexpected Error ' || l_cur_party_id);
913: log('Error: Aborting duplicate batch');
914: log('THIS WORKER ERRORED OUT');
915: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
916: log(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ));
917: END LOOP;
918: FND_MESSAGE.CLEAR;
919:
920: errbuf := 'UnExpected Error ' || l_cur_party_id;
924: log('--------------------------------');
925: log('Unknown Error ' || l_cur_party_id || ' : ' || SQLERRM);
926: log('Error: Aborting duplicate batch');
927: log('THIS WORKER ERRORED OUT');
928: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
929: log(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ));
930: END LOOP;
931:
932: retcode := 2;
925: log('Unknown Error ' || l_cur_party_id || ' : ' || SQLERRM);
926: log('Error: Aborting duplicate batch');
927: log('THIS WORKER ERRORED OUT');
928: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
929: log(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ));
930: END LOOP;
931:
932: retcode := 2;
933: errbuf := 'UnExpected SQL Error ' || l_cur_party_id;
964: WHEN OTHERS THEN
965: FND_MESSAGE.SET_NAME('AR', 'HZ_BATCH_SQL_ERROR');
966: FND_MESSAGE.SET_TOKEN('PROC' ,'check_party_in_dupset');
967: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
968: FND_MSG_PUB.ADD;
969: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
970: END;
971:
972: -- Remove mathes that have been indicated as non-duplicates in the
1011: WHEN OTHERS THEN
1012: FND_MESSAGE.SET_NAME('AR', 'HZ_BATCH_SQL_ERROR');
1013: FND_MESSAGE.SET_TOKEN('PROC' ,'remove_non_duplicates');
1014: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
1015: FND_MSG_PUB.ADD;
1016: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1017: END remove_non_duplicates;
1018:
1019: PROCEDURE insert_match_details (
1056: WHEN OTHERS THEN
1057: FND_MESSAGE.SET_NAME('AR', 'HZ_BATCH_SQL_ERROR');
1058: FND_MESSAGE.SET_TOKEN('PROC' ,'create_dup_set');
1059: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
1060: FND_MSG_PUB.ADD;
1061: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1062: END insert_match_details;
1063:
1064: PROCEDURE get_dup_match_details (
1093: BEGIN
1094: -- Initialize return status and message stack
1095: x_return_status := FND_API.G_RET_STS_SUCCESS;
1096: IF FND_API.to_Boolean(p_init_msg_list) THEN
1097: FND_MSG_PUB.initialize;
1098: END IF;
1099:
1100: SELECT count(1)
1101: INTO l_count
1116: where match_rule_id = p_rule_id;
1117:
1118: IF l_mr_comp_flag <> 'C' OR l_mr_last_updated_date > l_dup_set_creation_date THEN
1119: FND_MESSAGE.SET_NAME('AR', 'HZ_CDL_NO_MATCH_DETAILS');
1120: FND_MSG_PUB.ADD;
1121: RAISE FND_API.G_EXC_ERROR;
1122: END IF;
1123:
1124: HZ_PARTY_SEARCH.get_party_for_search(
1128:
1129: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1130: FND_MESSAGE.SET_NAME('AR', 'HZ_PARTY_ACQUIRE_ERROR');
1131: FND_MESSAGE.SET_TOKEN('PARTY_ID', TO_CHAR(l_winner_party_id));
1132: FND_MSG_PUB.ADD;
1133: RAISE FND_API.G_EXC_ERROR;
1134: ELSE
1135:
1136: FOR DUP IN (SELECT DUP_PARTY_ID
1142: l_search_ctx_id, l_return_status, l_msg_count, l_msg_data);
1143: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1144: FND_MESSAGE.SET_NAME('AR', 'HZ_PARTY_SEARCH_ERROR');
1145: FND_MESSAGE.SET_TOKEN('PARTY_ID', TO_CHAR(DUP.DUP_PARTY_ID));
1146: FND_MSG_PUB.ADD;
1147: RAISE FND_API.G_EXC_ERROR;
1148: ELSE
1149: insert_match_details (l_search_ctx_id, p_dup_set_id, DUP.DUP_PARTY_ID);
1150: END IF;
1153:
1154: EXCEPTION
1155: WHEN FND_API.G_EXC_ERROR THEN
1156: x_return_status := FND_API.G_RET_STS_ERROR;
1157: FND_MSG_PUB.Count_And_Get(
1158: p_encoded => FND_API.G_FALSE,
1159: p_count => x_msg_count,
1160: p_data => x_msg_data);
1161: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1159: p_count => x_msg_count,
1160: p_data => x_msg_data);
1161: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1162: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1163: FND_MSG_PUB.Count_And_Get(
1164: p_encoded => FND_API.G_FALSE,
1165: p_count => x_msg_count,
1166: p_data => x_msg_data);
1167: WHEN OTHERS THEN
1167: WHEN OTHERS THEN
1168: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1169: FND_MESSAGE.SET_NAME('AR', 'HZ_DQM_SQL_EXCEP');
1170: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
1171: FND_MSG_PUB.ADD;
1172:
1173: FND_MSG_PUB.Count_And_Get(
1174: p_encoded => FND_API.G_FALSE,
1175: p_count => x_msg_count,
1169: FND_MESSAGE.SET_NAME('AR', 'HZ_DQM_SQL_EXCEP');
1170: FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
1171: FND_MSG_PUB.ADD;
1172:
1173: FND_MSG_PUB.Count_And_Get(
1174: p_encoded => FND_API.G_FALSE,
1175: p_count => x_msg_count,
1176: p_data => x_msg_data);
1177: END;
1230: **/
1231: PROCEDURE logerror IS
1232: l_msg_data VARCHAR2(2000);
1233: BEGIN
1234: FND_MSG_PUB.Reset;
1235:
1236: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
1237: log(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ));
1238: END LOOP;
1232: l_msg_data VARCHAR2(2000);
1233: BEGIN
1234: FND_MSG_PUB.Reset;
1235:
1236: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
1237: log(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ));
1238: END LOOP;
1239: FND_MSG_PUB.Delete_Msg;
1240: END logerror;
1233: BEGIN
1234: FND_MSG_PUB.Reset;
1235:
1236: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
1237: log(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ));
1238: END LOOP;
1239: FND_MSG_PUB.Delete_Msg;
1240: END logerror;
1241:
1235:
1236: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
1237: log(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ));
1238: END LOOP;
1239: FND_MSG_PUB.Delete_Msg;
1240: END logerror;
1241:
1242: FUNCTION logerror RETURN VARCHAR2 IS
1243: l_msg_data VARCHAR2(2000);
1241:
1242: FUNCTION logerror RETURN VARCHAR2 IS
1243: l_msg_data VARCHAR2(2000);
1244: BEGIN
1245: FND_MSG_PUB.Reset;
1246:
1247: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
1248: l_msg_data := l_msg_data || ' ' || FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE );
1249: END LOOP;
1243: l_msg_data VARCHAR2(2000);
1244: BEGIN
1245: FND_MSG_PUB.Reset;
1246:
1247: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
1248: l_msg_data := l_msg_data || ' ' || FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE );
1249: END LOOP;
1250: log(l_msg_data);
1251: RETURN l_msg_data;
1244: BEGIN
1245: FND_MSG_PUB.Reset;
1246:
1247: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
1248: l_msg_data := l_msg_data || ' ' || FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE );
1249: END LOOP;
1250: log(l_msg_data);
1251: RETURN l_msg_data;
1252: