28: -- ==========================================================================================
29:
30: TYPE vlisttype IS TABLE of VARCHAR2(255) INDEX BY BINARY_INTEGER ;
31: call_order vlisttype;
32: call_max_score HZ_PARTY_SEARCH.IDList;
33: call_type vlisttype;
34: g_party_stage_rec HZ_PARTY_STAGE.party_stage_rec_type;
35: g_party_site_stage_list HZ_PARTY_STAGE.party_site_stage_list;
36: g_contact_stage_list HZ_PARTY_STAGE.contact_stage_list;
34: g_party_stage_rec HZ_PARTY_STAGE.party_stage_rec_type;
35: g_party_site_stage_list HZ_PARTY_STAGE.party_site_stage_list;
36: g_contact_stage_list HZ_PARTY_STAGE.contact_stage_list;
37: g_contact_pt_stage_list HZ_PARTY_STAGE.contact_pt_stage_list;
38: g_mappings HZ_PARTY_SEARCH.IDList;
39: g_max_id NUMBER:=2000000000;
40: g_other_party_level_attribs BOOLEAN;
41:
42: g_debug_count NUMBER := 0;
765: PROCEDURE INSERT_PARTY_SCORE (
766: p_party_id IN NUMBER
767: ,p_record_id IN NUMBER
768: ,p_search_ctx_id IN NUMBER
769: ,p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type
770: ,p_stage_rec IN HZ_PARTY_STAGE.party_stage_rec_type
771: ,p_table_TX32 VARCHAR2
772: ,p_table_TX34 VARCHAR2
773: ,p_table_TX35 VARCHAR2
1088: PROCEDURE INSERT_PARTY_SITES_SCORE (
1089: p_party_id IN NUMBER
1090: ,p_record_id IN NUMBER
1091: ,p_search_ctx_id IN NUMBER
1092: ,p_search_rec IN HZ_PARTY_SEARCH.party_site_search_rec_type
1093: ,p_stage_rec IN HZ_PARTY_STAGE.party_site_stage_rec_type
1094: ,p_table_TX9 VARCHAR2
1095: ,p_table_TX10 VARCHAR2
1096: ,p_table_TX11 VARCHAR2
1281: PROCEDURE INSERT_CONTACTS_SCORE (
1282: p_party_id IN NUMBER
1283: ,p_record_id IN NUMBER
1284: ,p_search_ctx_id IN NUMBER
1285: ,p_search_rec IN HZ_PARTY_SEARCH.contact_search_rec_type
1286: ,p_stage_rec IN HZ_PARTY_STAGE.contact_stage_rec_type
1287: ,p_idx IN NUMBER) IS
1288: l_current_score NUMBER:=0;
1289: l_score NUMBER;
1297: PROCEDURE INSERT_CONTACT_POINTS_SCORE (
1298: p_party_id IN NUMBER
1299: ,p_record_id IN NUMBER
1300: ,p_search_ctx_id IN NUMBER
1301: ,p_search_rec IN HZ_PARTY_SEARCH.contact_point_search_rec_type
1302: ,p_stage_rec IN HZ_PARTY_STAGE.contact_pt_stage_rec_type
1303: ,p_table_TX1 VARCHAR2
1304: ,p_table_TX3 VARCHAR2
1305: ,p_table_TX4 VARCHAR2
1394: for the PARTY Entity
1395: ************************************************/
1396:
1397: PROCEDURE POP_PARTY_COND_REC(
1398: p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type
1399: ) IS
1400: BEGIN
1401: NULL ;
1402: EXCEPTION
1414: for the PARTY_SITES Entity
1415: ************************************************/
1416:
1417: PROCEDURE POP_PARTY_SITES_COND_REC(
1418: p_search_list IN HZ_PARTY_SEARCH.party_site_list
1419: ) IS
1420: BEGIN
1421: ---------POPULATE THE GLOBAL WORD CONDITION REC FOR PARTY_SITES-------------
1422: ------ Populate global condition record only if search list is not empty -----------
1439: for the CONTACTS Entity
1440: ************************************************/
1441:
1442: PROCEDURE POP_CONTACTS_COND_REC(
1443: p_search_list IN HZ_PARTY_SEARCH.contact_list
1444: ) IS
1445: BEGIN
1446: NULL ;
1447: EXCEPTION
1459: for the CONTACT_POINTS Entity
1460: ************************************************/
1461:
1462: PROCEDURE POP_CONTACT_POINTS_COND_REC(
1463: p_search_list IN HZ_PARTY_SEARCH.contact_point_list
1464: ) IS
1465: BEGIN
1466: NULL ;
1467: EXCEPTION
1473: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1474: END;
1475:
1476: PROCEDURE init_score_context (
1477: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1478: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1479: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1480: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1481: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1474: END;
1475:
1476: PROCEDURE init_score_context (
1477: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1478: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1479: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1480: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1481: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1482: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1475:
1476: PROCEDURE init_score_context (
1477: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1478: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1479: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1480: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1481: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1482: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1483: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1476: PROCEDURE init_score_context (
1477: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1478: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1479: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1480: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1481: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1482: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1483: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1484: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
1477: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1478: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1479: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1480: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1481: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1482: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1483: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1484: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
1485: ) IS
1478: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1479: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1480: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1481: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1482: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1483: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1484: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
1485: ) IS
1486: l_dummy NUMBER;
1479: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1480: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1481: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1482: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1483: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1484: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
1485: ) IS
1486: l_dummy NUMBER;
1487: BEGIN
1480: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1481: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1482: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1483: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1484: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
1485: ) IS
1486: l_dummy NUMBER;
1487: BEGIN
1488: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
1500: MAP_CONTACT_POINT_REC(FALSE,p_contact_point_list, l_dummy, g_contact_pt_stage_list);
1501:
1502: END;
1503: FUNCTION init_search(
1504: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1505: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1506: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1507: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1508: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1501:
1502: END;
1503: FUNCTION init_search(
1504: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1505: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1506: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1507: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1508: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1509: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1502: END;
1503: FUNCTION init_search(
1504: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1505: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1506: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1507: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1508: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1509: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1510: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1503: FUNCTION init_search(
1504: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1505: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1506: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1507: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1508: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1509: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1510: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1511: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
1504: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1505: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1506: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1507: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1508: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1509: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1510: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1511: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
1512: p_match_type IN VARCHAR2,
1505: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1506: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1507: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1508: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1509: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1510: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1511: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
1512: p_match_type IN VARCHAR2,
1513: x_party_max_score OUT NUMBER,
1506: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1507: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1508: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1509: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1510: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1511: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
1512: p_match_type IN VARCHAR2,
1513: x_party_max_score OUT NUMBER,
1514: x_ps_max_score OUT NUMBER,
1507: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1508: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1509: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1510: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1511: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
1512: p_match_type IN VARCHAR2,
1513: x_party_max_score OUT NUMBER,
1514: x_ps_max_score OUT NUMBER,
1515: x_contact_max_score OUT NUMBER,
1519: l_ps_entered_max_score NUMBER:=0;
1520: l_ct_entered_max_score NUMBER:=0;
1521: l_cpt_entered_max_score NUMBER:=0;
1522: vlist vlisttype;
1523: maxscore HZ_PARTY_SEARCH.IDList;
1524: l_name VARCHAR2(200);
1525: l_idx NUMBER;
1526: l_num NUMBER;
1527: total NUMBER;
3191: p_party_id NUMBER,
3192: p_party_site_id NUMBER,
3193: p_org_contact_id NUMBER,
3194: p_contact_point_id NUMBER)
3195: RETURN HZ_PARTY_SEARCH.score_rec IS
3196: l_score_rec HZ_PARTY_SEARCH.score_rec;
3197: BEGIN
3198: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
3199: hz_utility_v2pub.debug(p_message=>'-----------------',p_module_prefix=>'dqm',p_module=>'hz_match_rule_xxx',p_prefix=>NULL,p_msg_level=>fnd_log.level_statement);
3192: p_party_site_id NUMBER,
3193: p_org_contact_id NUMBER,
3194: p_contact_point_id NUMBER)
3195: RETURN HZ_PARTY_SEARCH.score_rec IS
3196: l_score_rec HZ_PARTY_SEARCH.score_rec;
3197: BEGIN
3198: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
3199: hz_utility_v2pub.debug(p_message=>'-----------------',p_module_prefix=>'dqm',p_module=>'hz_match_rule_xxx',p_prefix=>NULL,p_msg_level=>fnd_log.level_statement);
3200: hz_utility_v2pub.debug(p_message=>'calling the function get_new_score_rec to set the l_score_rec structure',p_module_prefix=>'dqm',p_module=>'hz_match_rule_xxx',p_prefix=>NULL,p_msg_level=>fnd_log.level_statement);
3224: **********************************************************/
3225:
3226: PROCEDURE find_parties (
3227: p_rule_id IN NUMBER,
3228: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3229: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3230: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3231: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3232: p_restrict_sql IN VARCHAR2,
3225:
3226: PROCEDURE find_parties (
3227: p_rule_id IN NUMBER,
3228: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3229: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3230: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3231: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3232: p_restrict_sql IN VARCHAR2,
3233: p_match_type IN VARCHAR2,
3226: PROCEDURE find_parties (
3227: p_rule_id IN NUMBER,
3228: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3229: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3230: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3231: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3232: p_restrict_sql IN VARCHAR2,
3233: p_match_type IN VARCHAR2,
3234: p_search_merged IN VARCHAR2,
3227: p_rule_id IN NUMBER,
3228: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3229: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3230: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3231: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3232: p_restrict_sql IN VARCHAR2,
3233: p_match_type IN VARCHAR2,
3234: p_search_merged IN VARCHAR2,
3235: p_dup_party_id IN NUMBER,
3285: l_TX34 VARCHAR2(2000);
3286: l_TX48 VARCHAR2(2000);
3287: l_TX156 VARCHAR2(2000);
3288: l_TX14 VARCHAR2(2000);
3289: H_SCORES HZ_PARTY_SEARCH.score_list;
3290: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3291: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3292:
3293: l_score NUMBER;
3286: l_TX48 VARCHAR2(2000);
3287: l_TX156 VARCHAR2(2000);
3288: l_TX14 VARCHAR2(2000);
3289: H_SCORES HZ_PARTY_SEARCH.score_list;
3290: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3291: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3292:
3293: l_score NUMBER;
3294: l_idx NUMBER;
3287: l_TX156 VARCHAR2(2000);
3288: l_TX14 VARCHAR2(2000);
3289: H_SCORES HZ_PARTY_SEARCH.score_list;
3290: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3291: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3292:
3293: l_score NUMBER;
3294: l_idx NUMBER;
3295: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
3478: /** Private procedure to acquire and score at party site level ***/
3479: PROCEDURE eval_party_site_level(p_party_site_contains_str VARCHAR2,p_call_type VARCHAR2, p_index NUMBER,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3480: l_party_id_idx NUMBER:=1;
3481: l_ctx_id NUMBER;
3482: h_ps_id HZ_PARTY_SEARCH.IDList;
3483: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3484: h_ps_score HZ_PARTY_SEARCH.IDList;
3485: detcnt NUMBER := 1;
3486: BEGIN
3479: PROCEDURE eval_party_site_level(p_party_site_contains_str VARCHAR2,p_call_type VARCHAR2, p_index NUMBER,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3480: l_party_id_idx NUMBER:=1;
3481: l_ctx_id NUMBER;
3482: h_ps_id HZ_PARTY_SEARCH.IDList;
3483: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3484: h_ps_score HZ_PARTY_SEARCH.IDList;
3485: detcnt NUMBER := 1;
3486: BEGIN
3487: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
3480: l_party_id_idx NUMBER:=1;
3481: l_ctx_id NUMBER;
3482: h_ps_id HZ_PARTY_SEARCH.IDList;
3483: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3484: h_ps_score HZ_PARTY_SEARCH.IDList;
3485: detcnt NUMBER := 1;
3486: BEGIN
3487: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
3488: hz_utility_v2pub.debug(p_message=>'-----------------',p_module_prefix=>'dqm',p_module=>'hz_match_rule_xxx',p_prefix=>NULL,p_msg_level=>fnd_log.level_statement);
3600: /** Private procedure to acquire and score at contact point level ***/
3601: PROCEDURE eval_contact_level(p_contact_contains_str VARCHAR2,p_call_type VARCHAR2, p_index NUMBER,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3602: l_party_id_idx NUMBER:=1;
3603: l_ctx_id NUMBER;
3604: h_ct_id HZ_PARTY_SEARCH.IDList;
3605: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3606: h_ct_score HZ_PARTY_SEARCH.IDList;
3607: detcnt NUMBER := 1;
3608: BEGIN
3601: PROCEDURE eval_contact_level(p_contact_contains_str VARCHAR2,p_call_type VARCHAR2, p_index NUMBER,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3602: l_party_id_idx NUMBER:=1;
3603: l_ctx_id NUMBER;
3604: h_ct_id HZ_PARTY_SEARCH.IDList;
3605: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3606: h_ct_score HZ_PARTY_SEARCH.IDList;
3607: detcnt NUMBER := 1;
3608: BEGIN
3609: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
3602: l_party_id_idx NUMBER:=1;
3603: l_ctx_id NUMBER;
3604: h_ct_id HZ_PARTY_SEARCH.IDList;
3605: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3606: h_ct_score HZ_PARTY_SEARCH.IDList;
3607: detcnt NUMBER := 1;
3608: BEGIN
3609: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
3610: hz_utility_v2pub.debug(p_message=>'-----------------',p_module_prefix=>'dqm',p_module=>'hz_match_rule_xxx',p_prefix=>NULL,p_msg_level=>fnd_log.level_statement);
3709: /** Private procedure to acquire and score at contact point level ***/
3710: PROCEDURE eval_cpt_level(p_contact_pt_contains_str VARCHAR2,p_call_type VARCHAR2, p_index NUMBER, p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3711: l_party_id_idx NUMBER:=1;
3712: l_ctx_id NUMBER;
3713: h_cpt_id HZ_PARTY_SEARCH.IDList;
3714: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3715: h_cpt_score HZ_PARTY_SEARCH.IDList;
3716: detcnt NUMBER := 1;
3717: l_cpt_flag VARCHAR2(1) := 'N';
3710: PROCEDURE eval_cpt_level(p_contact_pt_contains_str VARCHAR2,p_call_type VARCHAR2, p_index NUMBER, p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3711: l_party_id_idx NUMBER:=1;
3712: l_ctx_id NUMBER;
3713: h_cpt_id HZ_PARTY_SEARCH.IDList;
3714: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3715: h_cpt_score HZ_PARTY_SEARCH.IDList;
3716: detcnt NUMBER := 1;
3717: l_cpt_flag VARCHAR2(1) := 'N';
3718: is_a_match VARCHAR2(1) := 'Y';
3711: l_party_id_idx NUMBER:=1;
3712: l_ctx_id NUMBER;
3713: h_cpt_id HZ_PARTY_SEARCH.IDList;
3714: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3715: h_cpt_score HZ_PARTY_SEARCH.IDList;
3716: detcnt NUMBER := 1;
3717: l_cpt_flag VARCHAR2(1) := 'N';
3718: is_a_match VARCHAR2(1) := 'Y';
3719: BEGIN
4198: END find_parties;
4199:
4200: PROCEDURE find_persons (
4201: p_rule_id IN NUMBER,
4202: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4203: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4204: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4205: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4206: p_restrict_sql IN VARCHAR2,
4199:
4200: PROCEDURE find_persons (
4201: p_rule_id IN NUMBER,
4202: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4203: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4204: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4205: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4206: p_restrict_sql IN VARCHAR2,
4207: p_match_type IN VARCHAR2,
4200: PROCEDURE find_persons (
4201: p_rule_id IN NUMBER,
4202: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4203: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4204: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4205: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4206: p_restrict_sql IN VARCHAR2,
4207: p_match_type IN VARCHAR2,
4208: p_search_merged IN VARCHAR2,
4201: p_rule_id IN NUMBER,
4202: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4203: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4204: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4205: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4206: p_restrict_sql IN VARCHAR2,
4207: p_match_type IN VARCHAR2,
4208: p_search_merged IN VARCHAR2,
4209: p_dup_party_id IN NUMBER,
4259: l_TX34 VARCHAR2(2000);
4260: l_TX48 VARCHAR2(2000);
4261: l_TX156 VARCHAR2(2000);
4262: l_TX14 VARCHAR2(2000);
4263: H_SCORES HZ_PARTY_SEARCH.score_list;
4264: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
4265: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
4266:
4267: l_score NUMBER;
4260: l_TX48 VARCHAR2(2000);
4261: l_TX156 VARCHAR2(2000);
4262: l_TX14 VARCHAR2(2000);
4263: H_SCORES HZ_PARTY_SEARCH.score_list;
4264: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
4265: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
4266:
4267: l_score NUMBER;
4268: l_idx NUMBER;
4261: l_TX156 VARCHAR2(2000);
4262: l_TX14 VARCHAR2(2000);
4263: H_SCORES HZ_PARTY_SEARCH.score_list;
4264: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
4265: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
4266:
4267: l_score NUMBER;
4268: l_idx NUMBER;
4269: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
4500: /** Private procedure to acquire and score at party site level ***/
4501: PROCEDURE eval_party_site_level(p_party_site_contains_str VARCHAR2,p_call_type VARCHAR2, p_index NUMBER,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
4502: l_party_id_idx NUMBER:=1;
4503: l_ctx_id NUMBER;
4504: h_ps_id HZ_PARTY_SEARCH.IDList;
4505: h_ps_party_id HZ_PARTY_SEARCH.IDList;
4506: h_ps_score HZ_PARTY_SEARCH.IDList;
4507: detcnt NUMBER := 1;
4508: l_person_id NUMBER;
4501: PROCEDURE eval_party_site_level(p_party_site_contains_str VARCHAR2,p_call_type VARCHAR2, p_index NUMBER,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
4502: l_party_id_idx NUMBER:=1;
4503: l_ctx_id NUMBER;
4504: h_ps_id HZ_PARTY_SEARCH.IDList;
4505: h_ps_party_id HZ_PARTY_SEARCH.IDList;
4506: h_ps_score HZ_PARTY_SEARCH.IDList;
4507: detcnt NUMBER := 1;
4508: l_person_id NUMBER;
4509: BEGIN
4502: l_party_id_idx NUMBER:=1;
4503: l_ctx_id NUMBER;
4504: h_ps_id HZ_PARTY_SEARCH.IDList;
4505: h_ps_party_id HZ_PARTY_SEARCH.IDList;
4506: h_ps_score HZ_PARTY_SEARCH.IDList;
4507: detcnt NUMBER := 1;
4508: l_person_id NUMBER;
4509: BEGIN
4510: SAVEPOINT eval_start;
4599: /** Private procedure to acquire and score at party site level ***/
4600: PROCEDURE eval_contact_level(p_contact_contains_str VARCHAR2,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
4601: l_party_id_idx NUMBER:=1;
4602: l_ctx_id NUMBER;
4603: h_ct_id HZ_PARTY_SEARCH.IDList;
4604: h_ct_party_id HZ_PARTY_SEARCH.IDList;
4605: h_ct_score HZ_PARTY_SEARCH.IDList;
4606: detcnt NUMBER := 1;
4607: l_person_id NUMBER;
4600: PROCEDURE eval_contact_level(p_contact_contains_str VARCHAR2,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
4601: l_party_id_idx NUMBER:=1;
4602: l_ctx_id NUMBER;
4603: h_ct_id HZ_PARTY_SEARCH.IDList;
4604: h_ct_party_id HZ_PARTY_SEARCH.IDList;
4605: h_ct_score HZ_PARTY_SEARCH.IDList;
4606: detcnt NUMBER := 1;
4607: l_person_id NUMBER;
4608: BEGIN
4601: l_party_id_idx NUMBER:=1;
4602: l_ctx_id NUMBER;
4603: h_ct_id HZ_PARTY_SEARCH.IDList;
4604: h_ct_party_id HZ_PARTY_SEARCH.IDList;
4605: h_ct_score HZ_PARTY_SEARCH.IDList;
4606: detcnt NUMBER := 1;
4607: l_person_id NUMBER;
4608: BEGIN
4609: SAVEPOINT eval_start;
4657: /** Private procedure to acquire and score at contact point level ***/
4658: PROCEDURE eval_cpt_level(p_contact_pt_contains_str VARCHAR2,p_call_type VARCHAR2, p_index NUMBER, p_ins_details VARCHAR2,p_emax_score NUMBER) IS
4659: l_party_id_idx NUMBER:=1;
4660: l_ctx_id NUMBER;
4661: h_cpt_id HZ_PARTY_SEARCH.IDList;
4662: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
4663: h_cpt_score HZ_PARTY_SEARCH.IDList;
4664: detcnt NUMBER := 1;
4665: l_person_id NUMBER;
4658: PROCEDURE eval_cpt_level(p_contact_pt_contains_str VARCHAR2,p_call_type VARCHAR2, p_index NUMBER, p_ins_details VARCHAR2,p_emax_score NUMBER) IS
4659: l_party_id_idx NUMBER:=1;
4660: l_ctx_id NUMBER;
4661: h_cpt_id HZ_PARTY_SEARCH.IDList;
4662: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
4663: h_cpt_score HZ_PARTY_SEARCH.IDList;
4664: detcnt NUMBER := 1;
4665: l_person_id NUMBER;
4666: is_a_match VARCHAR2(1) := 'Y';
4659: l_party_id_idx NUMBER:=1;
4660: l_ctx_id NUMBER;
4661: h_cpt_id HZ_PARTY_SEARCH.IDList;
4662: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
4663: h_cpt_score HZ_PARTY_SEARCH.IDList;
4664: detcnt NUMBER := 1;
4665: l_person_id NUMBER;
4666: is_a_match VARCHAR2(1) := 'Y';
4667: l_cpt_flag VARCHAR2(1) := 'N';
5070: END find_persons;
5071:
5072: PROCEDURE find_persons (
5073: p_rule_id IN NUMBER,
5074: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5075: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5076: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5077: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5078: p_restrict_sql IN VARCHAR2,
5071:
5072: PROCEDURE find_persons (
5073: p_rule_id IN NUMBER,
5074: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5075: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5076: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5077: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5078: p_restrict_sql IN VARCHAR2,
5079: p_match_type IN VARCHAR2,
5072: PROCEDURE find_persons (
5073: p_rule_id IN NUMBER,
5074: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5075: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5076: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5077: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5078: p_restrict_sql IN VARCHAR2,
5079: p_match_type IN VARCHAR2,
5080: p_search_merged IN VARCHAR2,
5073: p_rule_id IN NUMBER,
5074: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5075: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5076: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5077: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5078: p_restrict_sql IN VARCHAR2,
5079: p_match_type IN VARCHAR2,
5080: p_search_merged IN VARCHAR2,
5081: p_ins_details IN VARCHAR2,
5087: find_persons(p_rule_id,p_party_search_rec,p_party_site_list,p_contact_list,p_contact_point_list,p_restrict_sql,p_match_type,p_search_merged,null,null,null,p_ins_details,x_search_ctx_id,x_num_matches);
5088: END;
5089: PROCEDURE find_party_details (
5090: p_rule_id IN NUMBER,
5091: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5092: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5093: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5094: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5095: p_restrict_sql IN VARCHAR2,
5088: END;
5089: PROCEDURE find_party_details (
5090: p_rule_id IN NUMBER,
5091: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5092: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5093: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5094: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5095: p_restrict_sql IN VARCHAR2,
5096: p_match_type IN VARCHAR2,
5089: PROCEDURE find_party_details (
5090: p_rule_id IN NUMBER,
5091: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5092: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5093: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5094: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5095: p_restrict_sql IN VARCHAR2,
5096: p_match_type IN VARCHAR2,
5097: p_search_merged IN VARCHAR2,
5090: p_rule_id IN NUMBER,
5091: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5092: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5093: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5094: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5095: p_restrict_sql IN VARCHAR2,
5096: p_match_type IN VARCHAR2,
5097: p_search_merged IN VARCHAR2,
5098: x_search_ctx_id OUT NUMBER,
5147: x_dup_set_id OUT NUMBER,
5148: x_search_ctx_id OUT NUMBER,
5149: x_num_matches OUT NUMBER
5150: ) IS
5151: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
5152: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5153: l_contact_list HZ_PARTY_SEARCH.contact_list;
5154: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
5155: l_match_idx NUMBER;
5148: x_search_ctx_id OUT NUMBER,
5149: x_num_matches OUT NUMBER
5150: ) IS
5151: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
5152: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5153: l_contact_list HZ_PARTY_SEARCH.contact_list;
5154: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
5155: l_match_idx NUMBER;
5156:
5149: x_num_matches OUT NUMBER
5150: ) IS
5151: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
5152: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5153: l_contact_list HZ_PARTY_SEARCH.contact_list;
5154: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
5155: l_match_idx NUMBER;
5156:
5157: --Fix for bug 4417124
5150: ) IS
5151: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
5152: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5153: l_contact_list HZ_PARTY_SEARCH.contact_list;
5154: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
5155: l_match_idx NUMBER;
5156:
5157: --Fix for bug 4417124
5158: l_use_contact_addr_info BOOLEAN := TRUE;
5263: x_search_ctx_id OUT NUMBER,
5264: x_num_matches OUT NUMBER
5265: ) IS
5266:
5267: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5268: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5269: l_contact_list HZ_PARTY_SEARCH.contact_list;
5270: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5271: contact_point_ids HZ_PARTY_SEARCH.IDList;
5264: x_num_matches OUT NUMBER
5265: ) IS
5266:
5267: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5268: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5269: l_contact_list HZ_PARTY_SEARCH.contact_list;
5270: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5271: contact_point_ids HZ_PARTY_SEARCH.IDList;
5272: p_party_site_list HZ_PARTY_SEARCH.IDList;
5265: ) IS
5266:
5267: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5268: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5269: l_contact_list HZ_PARTY_SEARCH.contact_list;
5270: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5271: contact_point_ids HZ_PARTY_SEARCH.IDList;
5272: p_party_site_list HZ_PARTY_SEARCH.IDList;
5273: p_contact_ids HZ_PARTY_SEARCH.IDList;
5266:
5267: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5268: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5269: l_contact_list HZ_PARTY_SEARCH.contact_list;
5270: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5271: contact_point_ids HZ_PARTY_SEARCH.IDList;
5272: p_party_site_list HZ_PARTY_SEARCH.IDList;
5273: p_contact_ids HZ_PARTY_SEARCH.IDList;
5274: l_match_idx NUMBER;
5267: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5268: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5269: l_contact_list HZ_PARTY_SEARCH.contact_list;
5270: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5271: contact_point_ids HZ_PARTY_SEARCH.IDList;
5272: p_party_site_list HZ_PARTY_SEARCH.IDList;
5273: p_contact_ids HZ_PARTY_SEARCH.IDList;
5274: l_match_idx NUMBER;
5275: cursor get_cpts_for_party_sites is select contact_point_id
5268: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5269: l_contact_list HZ_PARTY_SEARCH.contact_list;
5270: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5271: contact_point_ids HZ_PARTY_SEARCH.IDList;
5272: p_party_site_list HZ_PARTY_SEARCH.IDList;
5273: p_contact_ids HZ_PARTY_SEARCH.IDList;
5274: l_match_idx NUMBER;
5275: cursor get_cpts_for_party_sites is select contact_point_id
5276: from hz_contact_points
5269: l_contact_list HZ_PARTY_SEARCH.contact_list;
5270: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5271: contact_point_ids HZ_PARTY_SEARCH.IDList;
5272: p_party_site_list HZ_PARTY_SEARCH.IDList;
5273: p_contact_ids HZ_PARTY_SEARCH.IDList;
5274: l_match_idx NUMBER;
5275: cursor get_cpts_for_party_sites is select contact_point_id
5276: from hz_contact_points
5277: where owner_table_name = 'HZ_PARTY_SITES'
5298:
5299: get_search_criteria (
5300: null,
5301: p_party_site_list,
5302: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
5303: contact_point_ids,
5304: l_party_search_rec,
5305: l_party_site_list,
5306: l_contact_list,
5348: x_search_ctx_id OUT NUMBER,
5349: x_num_matches OUT NUMBER
5350: ) IS
5351:
5352: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5353: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5354: l_contact_list HZ_PARTY_SEARCH.contact_list;
5355: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5356: contact_point_ids HZ_PARTY_SEARCH.IDList;
5349: x_num_matches OUT NUMBER
5350: ) IS
5351:
5352: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5353: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5354: l_contact_list HZ_PARTY_SEARCH.contact_list;
5355: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5356: contact_point_ids HZ_PARTY_SEARCH.IDList;
5357: p_party_site_list HZ_PARTY_SEARCH.IDList;
5350: ) IS
5351:
5352: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5353: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5354: l_contact_list HZ_PARTY_SEARCH.contact_list;
5355: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5356: contact_point_ids HZ_PARTY_SEARCH.IDList;
5357: p_party_site_list HZ_PARTY_SEARCH.IDList;
5358: p_contact_ids HZ_PARTY_SEARCH.IDList;
5351:
5352: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5353: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5354: l_contact_list HZ_PARTY_SEARCH.contact_list;
5355: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5356: contact_point_ids HZ_PARTY_SEARCH.IDList;
5357: p_party_site_list HZ_PARTY_SEARCH.IDList;
5358: p_contact_ids HZ_PARTY_SEARCH.IDList;
5359: l_match_idx NUMBER;
5352: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5353: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5354: l_contact_list HZ_PARTY_SEARCH.contact_list;
5355: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5356: contact_point_ids HZ_PARTY_SEARCH.IDList;
5357: p_party_site_list HZ_PARTY_SEARCH.IDList;
5358: p_contact_ids HZ_PARTY_SEARCH.IDList;
5359: l_match_idx NUMBER;
5360: cursor get_cpt_for_contact_id is select contact_point_id
5353: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5354: l_contact_list HZ_PARTY_SEARCH.contact_list;
5355: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5356: contact_point_ids HZ_PARTY_SEARCH.IDList;
5357: p_party_site_list HZ_PARTY_SEARCH.IDList;
5358: p_contact_ids HZ_PARTY_SEARCH.IDList;
5359: l_match_idx NUMBER;
5360: cursor get_cpt_for_contact_id is select contact_point_id
5361: from hz_org_contacts a, hz_relationships b, hz_contact_points c
5354: l_contact_list HZ_PARTY_SEARCH.contact_list;
5355: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5356: contact_point_ids HZ_PARTY_SEARCH.IDList;
5357: p_party_site_list HZ_PARTY_SEARCH.IDList;
5358: p_contact_ids HZ_PARTY_SEARCH.IDList;
5359: l_match_idx NUMBER;
5360: cursor get_cpt_for_contact_id is select contact_point_id
5361: from hz_org_contacts a, hz_relationships b, hz_contact_points c
5362: where a.party_relationship_id = b.relationship_id
5385: CLOSE get_cpt_for_contact_id;
5386:
5387: get_search_criteria (
5388: null,
5389: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
5390: p_contact_ids,
5391: contact_point_ids,
5392: l_party_search_rec,
5393: l_party_site_list,
5436: p_match_type IN VARCHAR2,
5437: x_search_ctx_id OUT NUMBER,
5438: x_num_matches OUT NUMBER
5439: ) IS
5440: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5441: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5442: l_contact_list HZ_PARTY_SEARCH.contact_list;
5443: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5444: contact_point_ids HZ_PARTY_SEARCH.IDList;
5437: x_search_ctx_id OUT NUMBER,
5438: x_num_matches OUT NUMBER
5439: ) IS
5440: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5441: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5442: l_contact_list HZ_PARTY_SEARCH.contact_list;
5443: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5444: contact_point_ids HZ_PARTY_SEARCH.IDList;
5445: p_party_site_list HZ_PARTY_SEARCH.IDList;
5438: x_num_matches OUT NUMBER
5439: ) IS
5440: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5441: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5442: l_contact_list HZ_PARTY_SEARCH.contact_list;
5443: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5444: contact_point_ids HZ_PARTY_SEARCH.IDList;
5445: p_party_site_list HZ_PARTY_SEARCH.IDList;
5446: p_contact_ids HZ_PARTY_SEARCH.IDList;
5439: ) IS
5440: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5441: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5442: l_contact_list HZ_PARTY_SEARCH.contact_list;
5443: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5444: contact_point_ids HZ_PARTY_SEARCH.IDList;
5445: p_party_site_list HZ_PARTY_SEARCH.IDList;
5446: p_contact_ids HZ_PARTY_SEARCH.IDList;
5447: l_match_idx NUMBER;
5440: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
5441: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5442: l_contact_list HZ_PARTY_SEARCH.contact_list;
5443: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5444: contact_point_ids HZ_PARTY_SEARCH.IDList;
5445: p_party_site_list HZ_PARTY_SEARCH.IDList;
5446: p_contact_ids HZ_PARTY_SEARCH.IDList;
5447: l_match_idx NUMBER;
5448:
5441: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5442: l_contact_list HZ_PARTY_SEARCH.contact_list;
5443: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5444: contact_point_ids HZ_PARTY_SEARCH.IDList;
5445: p_party_site_list HZ_PARTY_SEARCH.IDList;
5446: p_contact_ids HZ_PARTY_SEARCH.IDList;
5447: l_match_idx NUMBER;
5448:
5449: BEGIN
5442: l_contact_list HZ_PARTY_SEARCH.contact_list;
5443: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
5444: contact_point_ids HZ_PARTY_SEARCH.IDList;
5445: p_party_site_list HZ_PARTY_SEARCH.IDList;
5446: p_contact_ids HZ_PARTY_SEARCH.IDList;
5447: l_match_idx NUMBER;
5448:
5449: BEGIN
5450: IF fnd_log.level_procedure>=fnd_log.g_current_runtime_level THEN
5459: END IF;
5460: contact_point_ids(1) := p_contact_point_id;
5461: get_search_criteria (
5462: null,
5463: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
5464: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
5465: contact_point_ids,
5466: l_party_search_rec,
5467: l_party_site_list,
5460: contact_point_ids(1) := p_contact_point_id;
5461: get_search_criteria (
5462: null,
5463: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
5464: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
5465: contact_point_ids,
5466: l_party_search_rec,
5467: l_party_site_list,
5468: l_contact_list,
5613: ) IS
5614: TYPE AttrList IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER;
5615: l_match_idx NUMBER;
5616: AttrVals AttrList;
5617: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
5618: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5619: l_contact_list HZ_PARTY_SEARCH.contact_list;
5620: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
5621: l_dup_set_id NUMBER;
5614: TYPE AttrList IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER;
5615: l_match_idx NUMBER;
5616: AttrVals AttrList;
5617: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
5618: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5619: l_contact_list HZ_PARTY_SEARCH.contact_list;
5620: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
5621: l_dup_set_id NUMBER;
5622: l_idx NUMBER;
5615: l_match_idx NUMBER;
5616: AttrVals AttrList;
5617: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
5618: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5619: l_contact_list HZ_PARTY_SEARCH.contact_list;
5620: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
5621: l_dup_set_id NUMBER;
5622: l_idx NUMBER;
5623: l_cpt_type VARCHAR2(255);
5616: AttrVals AttrList;
5617: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
5618: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
5619: l_contact_list HZ_PARTY_SEARCH.contact_list;
5620: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
5621: l_dup_set_id NUMBER;
5622: l_idx NUMBER;
5623: l_cpt_type VARCHAR2(255);
5624: FIRST BOOLEAN := TRUE;
5934:
5935: PROCEDURE get_matching_party_sites (
5936: p_rule_id IN NUMBER,
5937: p_party_id IN NUMBER,
5938: p_party_site_list IN HZ_PARTY_SEARCH.PARTY_SITE_LIST,
5939: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5940: p_restrict_sql IN VARCHAR2,
5941: p_match_type IN VARCHAR2,
5942: p_dup_party_site_id IN NUMBER,
5935: PROCEDURE get_matching_party_sites (
5936: p_rule_id IN NUMBER,
5937: p_party_id IN NUMBER,
5938: p_party_site_list IN HZ_PARTY_SEARCH.PARTY_SITE_LIST,
5939: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5940: p_restrict_sql IN VARCHAR2,
5941: p_match_type IN VARCHAR2,
5942: p_dup_party_site_id IN NUMBER,
5943: x_search_ctx_id OUT NUMBER,
5972: l_TX10 VARCHAR2(2000);
5973: l_TX11 VARCHAR2(2000);
5974: l_TX4 VARCHAR2(2000);
5975: l_TX14 VARCHAR2(2000);
5976: H_SCORES HZ_PARTY_SEARCH.score_list;
5977:
5978: l_score NUMBER;
5979: l_idx NUMBER;
5980: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
6003: defps NUMBER :=0;
6004: defct NUMBER :=0;
6005: defcpt NUMBER :=0;
6006: l_index NUMBER;
6007: l_match_ps_list HZ_PARTY_SEARCH.IDList;
6008: l_cnt NUMBER:=1;
6009:
6010:
6011: BEGIN
6027: l_match_str := ' AND ';
6028: ELSIF p_match_type = 'OR' THEN
6029: l_match_str := ' OR ';
6030: END IF;
6031: l_entered_max_score:= init_search( HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC, p_party_site_list, HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST, p_contact_point_list,l_match_str, l_party_max_score, l_ps_max_score, l_contact_max_score, l_cpt_max_score);
6032: g_score_until_thresh := false;
6033: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
6034:
6035: -- ************************************************************
6035: -- ************************************************************
6036: -- STEP 2. Setup of intermedia query strings for Acquisition query
6037: l_party_site_contains_str := INIT_PARTY_SITES_QUERY(l_match_str,l_tmp);
6038: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
6039: init_score_context(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,p_party_site_list,HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,p_contact_point_list);
6040:
6041: -- Setup Search Context ID
6042: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
6043: x_search_ctx_id := l_search_ctx_id;
6178:
6179: PROCEDURE get_matching_contacts (
6180: p_rule_id IN NUMBER,
6181: p_party_id IN NUMBER,
6182: p_contact_list IN HZ_PARTY_SEARCH.CONTACT_LIST,
6183: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
6184: p_restrict_sql IN VARCHAR2,
6185: p_match_type IN VARCHAR2,
6186: p_dup_contact_id IN NUMBER,
6179: PROCEDURE get_matching_contacts (
6180: p_rule_id IN NUMBER,
6181: p_party_id IN NUMBER,
6182: p_contact_list IN HZ_PARTY_SEARCH.CONTACT_LIST,
6183: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
6184: p_restrict_sql IN VARCHAR2,
6185: p_match_type IN VARCHAR2,
6186: p_dup_contact_id IN NUMBER,
6187: x_search_ctx_id OUT NUMBER,
6207:
6208: l_TX1 VARCHAR2(2000);
6209: l_TX3 VARCHAR2(2000);
6210: l_TX4 VARCHAR2(2000);
6211: H_SCORES HZ_PARTY_SEARCH.score_list;
6212:
6213: l_score NUMBER;
6214: l_idx NUMBER;
6215: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
6235: l_party_max_score NUMBER;
6236: l_ps_max_score NUMBER;
6237: l_contact_max_score NUMBER;
6238: l_cpt_max_score NUMBER;
6239: l_match_contact_list HZ_PARTY_SEARCH.IDList;
6240: l_cnt NUMBER:=1;
6241:
6242:
6243: BEGIN
6259: l_match_str := ' AND ';
6260: ELSIF p_match_type = 'OR' THEN
6261: l_match_str := ' OR ';
6262: END IF;
6263: l_entered_max_score:= init_search( HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC, HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST, p_contact_list, p_contact_point_list,l_match_str, l_party_max_score, l_ps_max_score, l_contact_max_score, l_cpt_max_score);
6264: g_score_until_thresh := false;
6265: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
6266:
6267: -- ************************************************************
6267: -- ************************************************************
6268: -- STEP 2. Setup of intermedia query strings for Acquisition query
6269: l_contact_contains_str := INIT_CONTACTS_QUERY(l_match_str,l_tmp);
6270: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
6271: init_score_context(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,p_contact_list,p_contact_point_list);
6272:
6273: -- Setup Search Context ID
6274: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
6275: x_search_ctx_id := l_search_ctx_id;
6406:
6407: PROCEDURE get_matching_contact_points (
6408: p_rule_id IN NUMBER,
6409: p_party_id IN NUMBER,
6410: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
6411: p_restrict_sql IN VARCHAR2,
6412: p_match_type IN VARCHAR2,
6413: p_dup_contact_point_id IN NUMBER,
6414: x_search_ctx_id OUT NUMBER,
6438: l_cpt_ps_id NUMBER;
6439: l_cpt_contact_id NUMBER;
6440: l_contact_pt_id NUMBER;
6441: l_cpt_type VARCHAR2(100);
6442: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
6443: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
6444: H_SCORE HZ_PARTY_SEARCH.IDList;
6445:
6446: cnt NUMBER :=0;
6439: l_cpt_contact_id NUMBER;
6440: l_contact_pt_id NUMBER;
6441: l_cpt_type VARCHAR2(100);
6442: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
6443: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
6444: H_SCORE HZ_PARTY_SEARCH.IDList;
6445:
6446: cnt NUMBER :=0;
6447: l_party_max_score NUMBER;
6440: l_contact_pt_id NUMBER;
6441: l_cpt_type VARCHAR2(100);
6442: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
6443: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
6444: H_SCORE HZ_PARTY_SEARCH.IDList;
6445:
6446: cnt NUMBER :=0;
6447: l_party_max_score NUMBER;
6448: l_ps_max_score NUMBER;
6469: l_match_str := ' AND ';
6470: ELSIF p_match_type = 'OR' THEN
6471: l_match_str := ' OR ';
6472: END IF;
6473: l_entered_max_score:= init_search(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
6474: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST, HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
6475: p_contact_point_list,l_match_str, l_party_max_score, l_ps_max_score, l_contact_max_score, l_cpt_max_score);
6476: g_score_until_thresh := false;
6477: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
6470: ELSIF p_match_type = 'OR' THEN
6471: l_match_str := ' OR ';
6472: END IF;
6473: l_entered_max_score:= init_search(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
6474: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST, HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
6475: p_contact_point_list,l_match_str, l_party_max_score, l_ps_max_score, l_contact_max_score, l_cpt_max_score);
6476: g_score_until_thresh := false;
6477: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
6478:
6478:
6479: -- ************************************************************
6480: -- STEP 2. Setup of intermedia query strings for Acquisition query
6481: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
6482: init_score_context(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,p_contact_point_list);
6483:
6484: -- Setup Search Context ID
6485: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
6486: x_search_ctx_id := l_search_ctx_id;
6553:
6554: PROCEDURE get_score_details (
6555: p_rule_id IN NUMBER,
6556: p_party_id IN NUMBER,
6557: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6558: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6559: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6560: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6561: x_search_ctx_id IN OUT NUMBER
6554: PROCEDURE get_score_details (
6555: p_rule_id IN NUMBER,
6556: p_party_id IN NUMBER,
6557: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6558: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6559: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6560: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6561: x_search_ctx_id IN OUT NUMBER
6562: ) IS
6555: p_rule_id IN NUMBER,
6556: p_party_id IN NUMBER,
6557: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6558: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6559: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6560: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6561: x_search_ctx_id IN OUT NUMBER
6562: ) IS
6563:
6556: p_party_id IN NUMBER,
6557: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6558: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6559: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6560: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6561: x_search_ctx_id IN OUT NUMBER
6562: ) IS
6563:
6564: -- Strings to hold the generated Intermedia query strings
6627: l_TX156 VARCHAR2(2000);
6628: l_max_TX156 VARCHAR2(2000);
6629: l_TX14 VARCHAR2(2000);
6630: l_max_TX14 VARCHAR2(2000);
6631: H_SCORES HZ_PARTY_SEARCH.score_list;
6632:
6633: l_score NUMBER;
6634: l_match_idx NUMBER;
6635: l_idx NUMBER;
6804: ************************************************/
6805:
6806: PROCEDURE get_party_for_search (
6807: p_party_id IN NUMBER,
6808: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6809: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6810: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6811: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6812: ) IS
6805:
6806: PROCEDURE get_party_for_search (
6807: p_party_id IN NUMBER,
6808: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6809: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6810: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6811: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6812: ) IS
6813: l_party_id NUMBER;
6806: PROCEDURE get_party_for_search (
6807: p_party_id IN NUMBER,
6808: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6809: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6810: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6811: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6812: ) IS
6813: l_party_id NUMBER;
6814: l_party_site_ids HZ_PARTY_SEARCH.IDList;
6807: p_party_id IN NUMBER,
6808: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6809: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6810: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6811: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6812: ) IS
6813: l_party_id NUMBER;
6814: l_party_site_ids HZ_PARTY_SEARCH.IDList;
6815: l_contact_ids HZ_PARTY_SEARCH.IDList;
6810: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6811: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6812: ) IS
6813: l_party_id NUMBER;
6814: l_party_site_ids HZ_PARTY_SEARCH.IDList;
6815: l_contact_ids HZ_PARTY_SEARCH.IDList;
6816: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
6817: ps NUMBER :=1;
6818: cpt NUMBER :=1;
6811: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6812: ) IS
6813: l_party_id NUMBER;
6814: l_party_site_ids HZ_PARTY_SEARCH.IDList;
6815: l_contact_ids HZ_PARTY_SEARCH.IDList;
6816: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
6817: ps NUMBER :=1;
6818: cpt NUMBER :=1;
6819: ct NUMBER :=1;
6812: ) IS
6813: l_party_id NUMBER;
6814: l_party_site_ids HZ_PARTY_SEARCH.IDList;
6815: l_contact_ids HZ_PARTY_SEARCH.IDList;
6816: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
6817: ps NUMBER :=1;
6818: cpt NUMBER :=1;
6819: ct NUMBER :=1;
6820: l_use_contact_info varchar2(1);
6908: END get_party_for_search;
6909:
6910: PROCEDURE get_search_criteria (
6911: p_party_id IN NUMBER,
6912: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
6913: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
6914: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
6915: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6916: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6909:
6910: PROCEDURE get_search_criteria (
6911: p_party_id IN NUMBER,
6912: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
6913: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
6914: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
6915: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6916: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6917: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6910: PROCEDURE get_search_criteria (
6911: p_party_id IN NUMBER,
6912: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
6913: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
6914: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
6915: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6916: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6917: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6918: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6911: p_party_id IN NUMBER,
6912: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
6913: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
6914: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
6915: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6916: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6917: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6918: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6919: ) IS
6912: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
6913: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
6914: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
6915: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6916: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6917: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6918: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6919: ) IS
6920: BEGIN
6913: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
6914: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
6915: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6916: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6917: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6918: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6919: ) IS
6920: BEGIN
6921:
6914: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
6915: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
6916: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
6917: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
6918: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6919: ) IS
6920: BEGIN
6921:
6922: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
6960: ************************************************/
6961:
6962: PROCEDURE get_party_rec (
6963: p_party_id IN NUMBER,
6964: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type
6965: ) IS
6966: l_party_type VARCHAR2(255);
6967: BEGIN
6968:
7047: the party site search record structure
7048: ************************************************/
7049:
7050: PROCEDURE get_party_site_rec (
7051: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
7052: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list
7053: ) IS
7054: CURSOR c_party_sites(cp_party_site_id NUMBER) IS
7055: SELECT party_site_id
7048: ************************************************/
7049:
7050: PROCEDURE get_party_site_rec (
7051: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
7052: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list
7053: ) IS
7054: CURSOR c_party_sites(cp_party_site_id NUMBER) IS
7055: SELECT party_site_id
7056: ,translate(HZ_LOCATIONS.CITY, '%',' ')
7111: the contact search record structure
7112: ************************************************/
7113:
7114: PROCEDURE get_contact_rec (
7115: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
7116: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list
7117: ) IS
7118: CURSOR c_contacts(cp_org_contact_id NUMBER) IS
7119: SELECT org_contact_id
7112: ************************************************/
7113:
7114: PROCEDURE get_contact_rec (
7115: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
7116: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list
7117: ) IS
7118: CURSOR c_contacts(cp_org_contact_id NUMBER) IS
7119: SELECT org_contact_id
7120: FROM HZ_ORG_CONTACTS, HZ_RELATIONSHIPS, HZ_PERSON_PROFILES
7167: the contact point search record structure
7168: ************************************************/
7169:
7170: PROCEDURE get_contact_point_rec (
7171: p_contact_point_ids IN HZ_PARTY_SEARCH.IDList,
7172: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
7173: ) IS
7174:
7175: -- Cursor to fetch primary contact points for party
7168: ************************************************/
7169:
7170: PROCEDURE get_contact_point_rec (
7171: p_contact_point_ids IN HZ_PARTY_SEARCH.IDList,
7172: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
7173: ) IS
7174:
7175: -- Cursor to fetch primary contact points for party
7176: CURSOR c_cpts(cp_contact_point_id NUMBER) IS
7228: ************************************************/
7229:
7230: PROCEDURE MAP_PARTY_REC(
7231: p_search_ctx IN BOOLEAN,
7232: p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
7233: x_entered_max_score OUT NUMBER,
7234: x_stage_rec IN OUT NOCOPY HZ_PARTY_STAGE.party_stage_rec_type
7235: ) IS
7236: tmp VARCHAR2(4000);
7559: ************************************************/
7560:
7561: PROCEDURE MAP_PARTY_SITE_REC(
7562: p_search_ctx IN BOOLEAN,
7563: p_search_list IN HZ_PARTY_SEARCH.party_site_list,
7564: x_entered_max_score OUT NUMBER,
7565: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.party_site_stage_list
7566: ) IS
7567: l_current_max_score NUMBER;
7766: ************************************************/
7767:
7768: PROCEDURE MAP_CONTACT_REC(
7769: p_search_ctx IN BOOLEAN,
7770: p_search_list IN HZ_PARTY_SEARCH.contact_list,
7771: x_entered_max_score OUT NUMBER,
7772: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.contact_stage_list
7773: ) IS
7774: l_current_max_score NUMBER;
7808: ************************************************/
7809:
7810: PROCEDURE MAP_CONTACT_POINT_REC(
7811: p_search_ctx IN BOOLEAN,
7812: p_search_list IN HZ_PARTY_SEARCH.contact_point_list,
7813: x_entered_max_score OUT NUMBER,
7814: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.contact_pt_stage_list
7815: ) IS
7816: l_current_max_score NUMBER;
7951: 2. Contact Point Type is not null for each condition
7952: ************************************************/
7953:
7954: FUNCTION check_prim_cond(
7955: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
7956: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
7957: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
7958: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
7959: RETURN BOOLEAN IS
7952: ************************************************/
7953:
7954: FUNCTION check_prim_cond(
7955: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
7956: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
7957: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
7958: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
7959: RETURN BOOLEAN IS
7960: BEGIN
7953:
7954: FUNCTION check_prim_cond(
7955: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
7956: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
7957: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
7958: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
7959: RETURN BOOLEAN IS
7960: BEGIN
7961: FOR I IN 1..p_contact_point_list.COUNT LOOP
7954: FUNCTION check_prim_cond(
7955: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
7956: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
7957: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
7958: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
7959: RETURN BOOLEAN IS
7960: BEGIN
7961: FOR I IN 1..p_contact_point_list.COUNT LOOP
7962: IF p_contact_point_list(I).CONTACT_POINT_TYPE IS NULL AND (
8053: has party site criteria.
8054: ************************************************/
8055:
8056: PROCEDURE check_party_site_cond(
8057: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
8058: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
8059: x_secondary OUT BOOLEAN,
8060: x_primary OUT BOOLEAN
8061: ) IS
8054: ************************************************/
8055:
8056: PROCEDURE check_party_site_cond(
8057: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
8058: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
8059: x_secondary OUT BOOLEAN,
8060: x_primary OUT BOOLEAN
8061: ) IS
8062: BEGIN
8117: has contact criteria.
8118: ************************************************/
8119:
8120: PROCEDURE check_contact_cond(
8121: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
8122: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
8123: x_secondary OUT BOOLEAN,
8124: x_primary OUT BOOLEAN
8125: ) IS
8118: ************************************************/
8119:
8120: PROCEDURE check_contact_cond(
8121: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
8122: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
8123: x_secondary OUT BOOLEAN,
8124: x_primary OUT BOOLEAN
8125: ) IS
8126: BEGIN
8165: has valid contact point criteria.
8166: ************************************************/
8167:
8168: PROCEDURE check_contact_point_cond(
8169: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
8170: x_secondary OUT BOOLEAN,
8171: x_primary OUT BOOLEAN
8172: ) IS
8173: BEGIN