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;
529: PROCEDURE INSERT_PARTY_SCORE (
530: p_party_id IN NUMBER
531: ,p_record_id IN NUMBER
532: ,p_search_ctx_id IN NUMBER
533: ,p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type
534: ,p_stage_rec IN HZ_PARTY_STAGE.party_stage_rec_type
535: ,p_table_TX40 VARCHAR2
536: ,p_table_TX39 VARCHAR2
537: ,p_idx IN NUMBER) IS
578: PROCEDURE INSERT_PARTY_SITES_SCORE (
579: p_party_id IN NUMBER
580: ,p_record_id IN NUMBER
581: ,p_search_ctx_id IN NUMBER
582: ,p_search_rec IN HZ_PARTY_SEARCH.party_site_search_rec_type
583: ,p_stage_rec IN HZ_PARTY_STAGE.party_site_stage_rec_type
584: ,p_table_TX3 VARCHAR2
585: ,p_table_TX4 VARCHAR2
586: ,p_table_TX9 VARCHAR2
811: PROCEDURE INSERT_CONTACTS_SCORE (
812: p_party_id IN NUMBER
813: ,p_record_id IN NUMBER
814: ,p_search_ctx_id IN NUMBER
815: ,p_search_rec IN HZ_PARTY_SEARCH.contact_search_rec_type
816: ,p_stage_rec IN HZ_PARTY_STAGE.contact_stage_rec_type
817: ,p_table_TX22 VARCHAR2
818: ,p_idx IN NUMBER) IS
819: l_current_score NUMBER:=0;
853: PROCEDURE INSERT_CONTACT_POINTS_SCORE (
854: p_party_id IN NUMBER
855: ,p_record_id IN NUMBER
856: ,p_search_ctx_id IN NUMBER
857: ,p_search_rec IN HZ_PARTY_SEARCH.contact_point_search_rec_type
858: ,p_stage_rec IN HZ_PARTY_STAGE.contact_pt_stage_rec_type
859: ,p_table_TX1 VARCHAR2
860: ,p_table_TX6 VARCHAR2
861: ,p_table_TX5 VARCHAR2
931: for the PARTY Entity
932: ************************************************/
933:
934: PROCEDURE POP_PARTY_COND_REC(
935: p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type
936: ) IS
937: BEGIN
938: NULL ;
939: EXCEPTION
951: for the PARTY_SITES Entity
952: ************************************************/
953:
954: PROCEDURE POP_PARTY_SITES_COND_REC(
955: p_search_list IN HZ_PARTY_SEARCH.party_site_list
956: ) IS
957: BEGIN
958: ---------POPULATE THE GLOBAL WORD CONDITION REC FOR PARTY_SITES-------------
959: ------ Populate global condition record only if search list is not empty -----------
976: for the CONTACTS Entity
977: ************************************************/
978:
979: PROCEDURE POP_CONTACTS_COND_REC(
980: p_search_list IN HZ_PARTY_SEARCH.contact_list
981: ) IS
982: BEGIN
983: NULL ;
984: EXCEPTION
996: for the CONTACT_POINTS Entity
997: ************************************************/
998:
999: PROCEDURE POP_CONTACT_POINTS_COND_REC(
1000: p_search_list IN HZ_PARTY_SEARCH.contact_point_list
1001: ) IS
1002: BEGIN
1003: NULL ;
1004: EXCEPTION
1010: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1011: END;
1012:
1013: PROCEDURE init_score_context (
1014: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1015: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1016: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1017: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1018: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1011: END;
1012:
1013: PROCEDURE init_score_context (
1014: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1015: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1016: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1017: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1018: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1019: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1012:
1013: PROCEDURE init_score_context (
1014: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1015: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1016: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1017: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1018: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1019: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1020: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1013: PROCEDURE init_score_context (
1014: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1015: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1016: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1017: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1018: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1019: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1020: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1021: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
1014: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1015: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1016: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1017: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1018: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1019: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1020: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1021: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
1022: ) IS
1015: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1016: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1017: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1018: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1019: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1020: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1021: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
1022: ) IS
1023: l_dummy NUMBER;
1016: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1017: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1018: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1019: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1020: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1021: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
1022: ) IS
1023: l_dummy NUMBER;
1024: BEGIN
1017: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1018: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1019: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1020: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1021: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
1022: ) IS
1023: l_dummy NUMBER;
1024: BEGIN
1025: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
1037: MAP_CONTACT_POINT_REC(FALSE,p_contact_point_list, l_dummy, g_contact_pt_stage_list);
1038:
1039: END;
1040: FUNCTION init_search(
1041: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1042: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1043: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1044: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1045: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1038:
1039: END;
1040: FUNCTION init_search(
1041: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1042: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1043: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1044: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1045: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1046: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1039: END;
1040: FUNCTION init_search(
1041: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1042: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1043: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1044: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1045: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1046: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1047: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1040: FUNCTION init_search(
1041: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1042: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1043: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1044: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1045: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1046: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1047: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1048: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
1041: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
1042: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1043: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1044: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1045: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1046: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1047: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1048: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
1049: p_match_type IN VARCHAR2,
1042: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
1043: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1044: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1045: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1046: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1047: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1048: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
1049: p_match_type IN VARCHAR2,
1050: x_party_max_score OUT NUMBER,
1043: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
1044: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1045: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1046: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1047: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1048: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
1049: p_match_type IN VARCHAR2,
1050: x_party_max_score OUT NUMBER,
1051: x_ps_max_score OUT NUMBER,
1044: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
1045: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
1046: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
1047: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
1048: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
1049: p_match_type IN VARCHAR2,
1050: x_party_max_score OUT NUMBER,
1051: x_ps_max_score OUT NUMBER,
1052: x_contact_max_score OUT NUMBER,
1056: l_ps_entered_max_score NUMBER:=0;
1057: l_ct_entered_max_score NUMBER:=0;
1058: l_cpt_entered_max_score NUMBER:=0;
1059: vlist vlisttype;
1060: maxscore HZ_PARTY_SEARCH.IDList;
1061: l_name VARCHAR2(200);
1062: l_idx NUMBER;
1063: l_num NUMBER;
1064: total NUMBER;
2419: p_party_id NUMBER,
2420: p_party_site_id NUMBER,
2421: p_org_contact_id NUMBER,
2422: p_contact_point_id NUMBER)
2423: RETURN HZ_PARTY_SEARCH.score_rec IS
2424: l_score_rec HZ_PARTY_SEARCH.score_rec;
2425: BEGIN
2426: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2427: 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);
2420: p_party_site_id NUMBER,
2421: p_org_contact_id NUMBER,
2422: p_contact_point_id NUMBER)
2423: RETURN HZ_PARTY_SEARCH.score_rec IS
2424: l_score_rec HZ_PARTY_SEARCH.score_rec;
2425: BEGIN
2426: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2427: 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);
2428: 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);
2452: **********************************************************/
2453:
2454: PROCEDURE find_parties (
2455: p_rule_id IN NUMBER,
2456: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2457: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2458: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2459: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2460: p_restrict_sql IN VARCHAR2,
2453:
2454: PROCEDURE find_parties (
2455: p_rule_id IN NUMBER,
2456: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2457: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2458: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2459: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2460: p_restrict_sql IN VARCHAR2,
2461: p_match_type IN VARCHAR2,
2454: PROCEDURE find_parties (
2455: p_rule_id IN NUMBER,
2456: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2457: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2458: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2459: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2460: p_restrict_sql IN VARCHAR2,
2461: p_match_type IN VARCHAR2,
2462: p_search_merged IN VARCHAR2,
2455: p_rule_id IN NUMBER,
2456: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2457: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2458: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2459: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2460: p_restrict_sql IN VARCHAR2,
2461: p_match_type IN VARCHAR2,
2462: p_search_merged IN VARCHAR2,
2463: p_dup_party_id IN NUMBER,
2504: l_TX5 VARCHAR2(2000);
2505: l_TX40 VARCHAR2(2000);
2506: l_TX14 VARCHAR2(2000);
2507: l_TX6 VARCHAR2(2000);
2508: H_SCORES HZ_PARTY_SEARCH.score_list;
2509: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
2510: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
2511:
2512: l_score NUMBER;
2505: l_TX40 VARCHAR2(2000);
2506: l_TX14 VARCHAR2(2000);
2507: l_TX6 VARCHAR2(2000);
2508: H_SCORES HZ_PARTY_SEARCH.score_list;
2509: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
2510: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
2511:
2512: l_score NUMBER;
2513: l_idx NUMBER;
2506: l_TX14 VARCHAR2(2000);
2507: l_TX6 VARCHAR2(2000);
2508: H_SCORES HZ_PARTY_SEARCH.score_list;
2509: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
2510: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
2511:
2512: l_score NUMBER;
2513: l_idx NUMBER;
2514: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
2698: /** Private procedure to acquire and score at party site level ***/
2699: 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
2700: l_party_id_idx NUMBER:=1;
2701: l_ctx_id NUMBER;
2702: h_ps_id HZ_PARTY_SEARCH.IDList;
2703: h_ps_party_id HZ_PARTY_SEARCH.IDList;
2704: h_ps_score HZ_PARTY_SEARCH.IDList;
2705: detcnt NUMBER := 1;
2706: BEGIN
2699: 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
2700: l_party_id_idx NUMBER:=1;
2701: l_ctx_id NUMBER;
2702: h_ps_id HZ_PARTY_SEARCH.IDList;
2703: h_ps_party_id HZ_PARTY_SEARCH.IDList;
2704: h_ps_score HZ_PARTY_SEARCH.IDList;
2705: detcnt NUMBER := 1;
2706: BEGIN
2707: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2700: l_party_id_idx NUMBER:=1;
2701: l_ctx_id NUMBER;
2702: h_ps_id HZ_PARTY_SEARCH.IDList;
2703: h_ps_party_id HZ_PARTY_SEARCH.IDList;
2704: h_ps_score HZ_PARTY_SEARCH.IDList;
2705: detcnt NUMBER := 1;
2706: BEGIN
2707: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2708: 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);
2820: /** Private procedure to acquire and score at contact point level ***/
2821: 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
2822: l_party_id_idx NUMBER:=1;
2823: l_ctx_id NUMBER;
2824: h_ct_id HZ_PARTY_SEARCH.IDList;
2825: h_ct_party_id HZ_PARTY_SEARCH.IDList;
2826: h_ct_score HZ_PARTY_SEARCH.IDList;
2827: detcnt NUMBER := 1;
2828: BEGIN
2821: 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
2822: l_party_id_idx NUMBER:=1;
2823: l_ctx_id NUMBER;
2824: h_ct_id HZ_PARTY_SEARCH.IDList;
2825: h_ct_party_id HZ_PARTY_SEARCH.IDList;
2826: h_ct_score HZ_PARTY_SEARCH.IDList;
2827: detcnt NUMBER := 1;
2828: BEGIN
2829: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2822: l_party_id_idx NUMBER:=1;
2823: l_ctx_id NUMBER;
2824: h_ct_id HZ_PARTY_SEARCH.IDList;
2825: h_ct_party_id HZ_PARTY_SEARCH.IDList;
2826: h_ct_score HZ_PARTY_SEARCH.IDList;
2827: detcnt NUMBER := 1;
2828: BEGIN
2829: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2830: 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);
2929: /** Private procedure to acquire and score at contact point level ***/
2930: 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
2931: l_party_id_idx NUMBER:=1;
2932: l_ctx_id NUMBER;
2933: h_cpt_id HZ_PARTY_SEARCH.IDList;
2934: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
2935: h_cpt_score HZ_PARTY_SEARCH.IDList;
2936: detcnt NUMBER := 1;
2937: l_cpt_flag VARCHAR2(1) := 'N';
2930: 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
2931: l_party_id_idx NUMBER:=1;
2932: l_ctx_id NUMBER;
2933: h_cpt_id HZ_PARTY_SEARCH.IDList;
2934: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
2935: h_cpt_score HZ_PARTY_SEARCH.IDList;
2936: detcnt NUMBER := 1;
2937: l_cpt_flag VARCHAR2(1) := 'N';
2938: is_a_match VARCHAR2(1) := 'Y';
2931: l_party_id_idx NUMBER:=1;
2932: l_ctx_id NUMBER;
2933: h_cpt_id HZ_PARTY_SEARCH.IDList;
2934: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
2935: h_cpt_score HZ_PARTY_SEARCH.IDList;
2936: detcnt NUMBER := 1;
2937: l_cpt_flag VARCHAR2(1) := 'N';
2938: is_a_match VARCHAR2(1) := 'Y';
2939: BEGIN
3380: END find_parties;
3381:
3382: PROCEDURE find_persons (
3383: p_rule_id IN NUMBER,
3384: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3385: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3386: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3387: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3388: p_restrict_sql IN VARCHAR2,
3381:
3382: PROCEDURE find_persons (
3383: p_rule_id IN NUMBER,
3384: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3385: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3386: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3387: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3388: p_restrict_sql IN VARCHAR2,
3389: p_match_type IN VARCHAR2,
3382: PROCEDURE find_persons (
3383: p_rule_id IN NUMBER,
3384: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3385: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3386: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3387: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3388: p_restrict_sql IN VARCHAR2,
3389: p_match_type IN VARCHAR2,
3390: p_search_merged IN VARCHAR2,
3383: p_rule_id IN NUMBER,
3384: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3385: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3386: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3387: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3388: p_restrict_sql IN VARCHAR2,
3389: p_match_type IN VARCHAR2,
3390: p_search_merged IN VARCHAR2,
3391: p_dup_party_id IN NUMBER,
3432: l_TX5 VARCHAR2(2000);
3433: l_TX40 VARCHAR2(2000);
3434: l_TX14 VARCHAR2(2000);
3435: l_TX6 VARCHAR2(2000);
3436: H_SCORES HZ_PARTY_SEARCH.score_list;
3437: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3438: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3439:
3440: l_score NUMBER;
3433: l_TX40 VARCHAR2(2000);
3434: l_TX14 VARCHAR2(2000);
3435: l_TX6 VARCHAR2(2000);
3436: H_SCORES HZ_PARTY_SEARCH.score_list;
3437: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3438: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3439:
3440: l_score NUMBER;
3441: l_idx NUMBER;
3434: l_TX14 VARCHAR2(2000);
3435: l_TX6 VARCHAR2(2000);
3436: H_SCORES HZ_PARTY_SEARCH.score_list;
3437: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3438: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3439:
3440: l_score NUMBER;
3441: l_idx NUMBER;
3442: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
3674: /** Private procedure to acquire and score at party site level ***/
3675: 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
3676: l_party_id_idx NUMBER:=1;
3677: l_ctx_id NUMBER;
3678: h_ps_id HZ_PARTY_SEARCH.IDList;
3679: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3680: h_ps_score HZ_PARTY_SEARCH.IDList;
3681: detcnt NUMBER := 1;
3682: l_person_id NUMBER;
3675: 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
3676: l_party_id_idx NUMBER:=1;
3677: l_ctx_id NUMBER;
3678: h_ps_id HZ_PARTY_SEARCH.IDList;
3679: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3680: h_ps_score HZ_PARTY_SEARCH.IDList;
3681: detcnt NUMBER := 1;
3682: l_person_id NUMBER;
3683: BEGIN
3676: l_party_id_idx NUMBER:=1;
3677: l_ctx_id NUMBER;
3678: h_ps_id HZ_PARTY_SEARCH.IDList;
3679: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3680: h_ps_score HZ_PARTY_SEARCH.IDList;
3681: detcnt NUMBER := 1;
3682: l_person_id NUMBER;
3683: BEGIN
3684: SAVEPOINT eval_start;
3773: /** Private procedure to acquire and score at party site level ***/
3774: PROCEDURE eval_contact_level(p_contact_contains_str VARCHAR2,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3775: l_party_id_idx NUMBER:=1;
3776: l_ctx_id NUMBER;
3777: h_ct_id HZ_PARTY_SEARCH.IDList;
3778: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3779: h_ct_score HZ_PARTY_SEARCH.IDList;
3780: detcnt NUMBER := 1;
3781: l_person_id NUMBER;
3774: PROCEDURE eval_contact_level(p_contact_contains_str VARCHAR2,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3775: l_party_id_idx NUMBER:=1;
3776: l_ctx_id NUMBER;
3777: h_ct_id HZ_PARTY_SEARCH.IDList;
3778: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3779: h_ct_score HZ_PARTY_SEARCH.IDList;
3780: detcnt NUMBER := 1;
3781: l_person_id NUMBER;
3782: BEGIN
3775: l_party_id_idx NUMBER:=1;
3776: l_ctx_id NUMBER;
3777: h_ct_id HZ_PARTY_SEARCH.IDList;
3778: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3779: h_ct_score HZ_PARTY_SEARCH.IDList;
3780: detcnt NUMBER := 1;
3781: l_person_id NUMBER;
3782: BEGIN
3783: SAVEPOINT eval_start;
3831: /** Private procedure to acquire and score at contact point level ***/
3832: 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
3833: l_party_id_idx NUMBER:=1;
3834: l_ctx_id NUMBER;
3835: h_cpt_id HZ_PARTY_SEARCH.IDList;
3836: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3837: h_cpt_score HZ_PARTY_SEARCH.IDList;
3838: detcnt NUMBER := 1;
3839: l_person_id NUMBER;
3832: 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
3833: l_party_id_idx NUMBER:=1;
3834: l_ctx_id NUMBER;
3835: h_cpt_id HZ_PARTY_SEARCH.IDList;
3836: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3837: h_cpt_score HZ_PARTY_SEARCH.IDList;
3838: detcnt NUMBER := 1;
3839: l_person_id NUMBER;
3840: is_a_match VARCHAR2(1) := 'Y';
3833: l_party_id_idx NUMBER:=1;
3834: l_ctx_id NUMBER;
3835: h_cpt_id HZ_PARTY_SEARCH.IDList;
3836: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3837: h_cpt_score HZ_PARTY_SEARCH.IDList;
3838: detcnt NUMBER := 1;
3839: l_person_id NUMBER;
3840: is_a_match VARCHAR2(1) := 'Y';
3841: l_cpt_flag VARCHAR2(1) := 'N';
4175: END find_persons;
4176:
4177: PROCEDURE find_persons (
4178: p_rule_id IN NUMBER,
4179: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4180: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4181: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4182: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4183: p_restrict_sql IN VARCHAR2,
4176:
4177: PROCEDURE find_persons (
4178: p_rule_id IN NUMBER,
4179: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4180: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4181: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4182: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4183: p_restrict_sql IN VARCHAR2,
4184: p_match_type IN VARCHAR2,
4177: PROCEDURE find_persons (
4178: p_rule_id IN NUMBER,
4179: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4180: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4181: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4182: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4183: p_restrict_sql IN VARCHAR2,
4184: p_match_type IN VARCHAR2,
4185: p_search_merged IN VARCHAR2,
4178: p_rule_id IN NUMBER,
4179: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4180: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4181: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4182: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4183: p_restrict_sql IN VARCHAR2,
4184: p_match_type IN VARCHAR2,
4185: p_search_merged IN VARCHAR2,
4186: p_ins_details IN VARCHAR2,
4192: 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);
4193: END;
4194: PROCEDURE find_party_details (
4195: p_rule_id IN NUMBER,
4196: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4197: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4198: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4199: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4200: p_restrict_sql IN VARCHAR2,
4193: END;
4194: PROCEDURE find_party_details (
4195: p_rule_id IN NUMBER,
4196: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4197: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4198: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4199: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4200: p_restrict_sql IN VARCHAR2,
4201: p_match_type IN VARCHAR2,
4194: PROCEDURE find_party_details (
4195: p_rule_id IN NUMBER,
4196: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4197: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4198: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4199: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4200: p_restrict_sql IN VARCHAR2,
4201: p_match_type IN VARCHAR2,
4202: p_search_merged IN VARCHAR2,
4195: p_rule_id IN NUMBER,
4196: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4197: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4198: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4199: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4200: p_restrict_sql IN VARCHAR2,
4201: p_match_type IN VARCHAR2,
4202: p_search_merged IN VARCHAR2,
4203: x_search_ctx_id OUT NUMBER,
4252: x_dup_set_id OUT NUMBER,
4253: x_search_ctx_id OUT NUMBER,
4254: x_num_matches OUT NUMBER
4255: ) IS
4256: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4257: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4258: l_contact_list HZ_PARTY_SEARCH.contact_list;
4259: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4260: l_match_idx NUMBER;
4253: x_search_ctx_id OUT NUMBER,
4254: x_num_matches OUT NUMBER
4255: ) IS
4256: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4257: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4258: l_contact_list HZ_PARTY_SEARCH.contact_list;
4259: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4260: l_match_idx NUMBER;
4261:
4254: x_num_matches OUT NUMBER
4255: ) IS
4256: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4257: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4258: l_contact_list HZ_PARTY_SEARCH.contact_list;
4259: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4260: l_match_idx NUMBER;
4261:
4262: --Fix for bug 4417124
4255: ) IS
4256: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4257: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4258: l_contact_list HZ_PARTY_SEARCH.contact_list;
4259: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4260: l_match_idx NUMBER;
4261:
4262: --Fix for bug 4417124
4263: l_use_contact_addr_info BOOLEAN := TRUE;
4368: x_search_ctx_id OUT NUMBER,
4369: x_num_matches OUT NUMBER
4370: ) IS
4371:
4372: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4373: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4374: l_contact_list HZ_PARTY_SEARCH.contact_list;
4375: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4376: contact_point_ids HZ_PARTY_SEARCH.IDList;
4369: x_num_matches OUT NUMBER
4370: ) IS
4371:
4372: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4373: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4374: l_contact_list HZ_PARTY_SEARCH.contact_list;
4375: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4376: contact_point_ids HZ_PARTY_SEARCH.IDList;
4377: p_party_site_list HZ_PARTY_SEARCH.IDList;
4370: ) IS
4371:
4372: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4373: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4374: l_contact_list HZ_PARTY_SEARCH.contact_list;
4375: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4376: contact_point_ids HZ_PARTY_SEARCH.IDList;
4377: p_party_site_list HZ_PARTY_SEARCH.IDList;
4378: p_contact_ids HZ_PARTY_SEARCH.IDList;
4371:
4372: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4373: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4374: l_contact_list HZ_PARTY_SEARCH.contact_list;
4375: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4376: contact_point_ids HZ_PARTY_SEARCH.IDList;
4377: p_party_site_list HZ_PARTY_SEARCH.IDList;
4378: p_contact_ids HZ_PARTY_SEARCH.IDList;
4379: l_match_idx NUMBER;
4372: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4373: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4374: l_contact_list HZ_PARTY_SEARCH.contact_list;
4375: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4376: contact_point_ids HZ_PARTY_SEARCH.IDList;
4377: p_party_site_list HZ_PARTY_SEARCH.IDList;
4378: p_contact_ids HZ_PARTY_SEARCH.IDList;
4379: l_match_idx NUMBER;
4380: cursor get_cpts_for_party_sites is select contact_point_id
4373: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4374: l_contact_list HZ_PARTY_SEARCH.contact_list;
4375: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4376: contact_point_ids HZ_PARTY_SEARCH.IDList;
4377: p_party_site_list HZ_PARTY_SEARCH.IDList;
4378: p_contact_ids HZ_PARTY_SEARCH.IDList;
4379: l_match_idx NUMBER;
4380: cursor get_cpts_for_party_sites is select contact_point_id
4381: from hz_contact_points
4374: l_contact_list HZ_PARTY_SEARCH.contact_list;
4375: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4376: contact_point_ids HZ_PARTY_SEARCH.IDList;
4377: p_party_site_list HZ_PARTY_SEARCH.IDList;
4378: p_contact_ids HZ_PARTY_SEARCH.IDList;
4379: l_match_idx NUMBER;
4380: cursor get_cpts_for_party_sites is select contact_point_id
4381: from hz_contact_points
4382: where owner_table_name = 'HZ_PARTY_SITES'
4403:
4404: get_search_criteria (
4405: null,
4406: p_party_site_list,
4407: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4408: contact_point_ids,
4409: l_party_search_rec,
4410: l_party_site_list,
4411: l_contact_list,
4453: x_search_ctx_id OUT NUMBER,
4454: x_num_matches OUT NUMBER
4455: ) IS
4456:
4457: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4458: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4459: l_contact_list HZ_PARTY_SEARCH.contact_list;
4460: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4461: contact_point_ids HZ_PARTY_SEARCH.IDList;
4454: x_num_matches OUT NUMBER
4455: ) IS
4456:
4457: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4458: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4459: l_contact_list HZ_PARTY_SEARCH.contact_list;
4460: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4461: contact_point_ids HZ_PARTY_SEARCH.IDList;
4462: p_party_site_list HZ_PARTY_SEARCH.IDList;
4455: ) IS
4456:
4457: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4458: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4459: l_contact_list HZ_PARTY_SEARCH.contact_list;
4460: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4461: contact_point_ids HZ_PARTY_SEARCH.IDList;
4462: p_party_site_list HZ_PARTY_SEARCH.IDList;
4463: p_contact_ids HZ_PARTY_SEARCH.IDList;
4456:
4457: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4458: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4459: l_contact_list HZ_PARTY_SEARCH.contact_list;
4460: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4461: contact_point_ids HZ_PARTY_SEARCH.IDList;
4462: p_party_site_list HZ_PARTY_SEARCH.IDList;
4463: p_contact_ids HZ_PARTY_SEARCH.IDList;
4464: l_match_idx NUMBER;
4457: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4458: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4459: l_contact_list HZ_PARTY_SEARCH.contact_list;
4460: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4461: contact_point_ids HZ_PARTY_SEARCH.IDList;
4462: p_party_site_list HZ_PARTY_SEARCH.IDList;
4463: p_contact_ids HZ_PARTY_SEARCH.IDList;
4464: l_match_idx NUMBER;
4465: cursor get_cpt_for_contact_id is select contact_point_id
4458: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4459: l_contact_list HZ_PARTY_SEARCH.contact_list;
4460: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4461: contact_point_ids HZ_PARTY_SEARCH.IDList;
4462: p_party_site_list HZ_PARTY_SEARCH.IDList;
4463: p_contact_ids HZ_PARTY_SEARCH.IDList;
4464: l_match_idx NUMBER;
4465: cursor get_cpt_for_contact_id is select contact_point_id
4466: from hz_org_contacts a, hz_relationships b, hz_contact_points c
4459: l_contact_list HZ_PARTY_SEARCH.contact_list;
4460: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4461: contact_point_ids HZ_PARTY_SEARCH.IDList;
4462: p_party_site_list HZ_PARTY_SEARCH.IDList;
4463: p_contact_ids HZ_PARTY_SEARCH.IDList;
4464: l_match_idx NUMBER;
4465: cursor get_cpt_for_contact_id is select contact_point_id
4466: from hz_org_contacts a, hz_relationships b, hz_contact_points c
4467: where a.party_relationship_id = b.relationship_id
4490: CLOSE get_cpt_for_contact_id;
4491:
4492: get_search_criteria (
4493: null,
4494: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4495: p_contact_ids,
4496: contact_point_ids,
4497: l_party_search_rec,
4498: l_party_site_list,
4541: p_match_type IN VARCHAR2,
4542: x_search_ctx_id OUT NUMBER,
4543: x_num_matches OUT NUMBER
4544: ) IS
4545: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4546: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4547: l_contact_list HZ_PARTY_SEARCH.contact_list;
4548: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4549: contact_point_ids HZ_PARTY_SEARCH.IDList;
4542: x_search_ctx_id OUT NUMBER,
4543: x_num_matches OUT NUMBER
4544: ) IS
4545: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4546: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4547: l_contact_list HZ_PARTY_SEARCH.contact_list;
4548: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4549: contact_point_ids HZ_PARTY_SEARCH.IDList;
4550: p_party_site_list HZ_PARTY_SEARCH.IDList;
4543: x_num_matches OUT NUMBER
4544: ) IS
4545: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4546: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4547: l_contact_list HZ_PARTY_SEARCH.contact_list;
4548: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4549: contact_point_ids HZ_PARTY_SEARCH.IDList;
4550: p_party_site_list HZ_PARTY_SEARCH.IDList;
4551: p_contact_ids HZ_PARTY_SEARCH.IDList;
4544: ) IS
4545: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4546: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4547: l_contact_list HZ_PARTY_SEARCH.contact_list;
4548: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4549: contact_point_ids HZ_PARTY_SEARCH.IDList;
4550: p_party_site_list HZ_PARTY_SEARCH.IDList;
4551: p_contact_ids HZ_PARTY_SEARCH.IDList;
4552: l_match_idx NUMBER;
4545: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4546: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4547: l_contact_list HZ_PARTY_SEARCH.contact_list;
4548: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4549: contact_point_ids HZ_PARTY_SEARCH.IDList;
4550: p_party_site_list HZ_PARTY_SEARCH.IDList;
4551: p_contact_ids HZ_PARTY_SEARCH.IDList;
4552: l_match_idx NUMBER;
4553:
4546: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4547: l_contact_list HZ_PARTY_SEARCH.contact_list;
4548: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4549: contact_point_ids HZ_PARTY_SEARCH.IDList;
4550: p_party_site_list HZ_PARTY_SEARCH.IDList;
4551: p_contact_ids HZ_PARTY_SEARCH.IDList;
4552: l_match_idx NUMBER;
4553:
4554: BEGIN
4547: l_contact_list HZ_PARTY_SEARCH.contact_list;
4548: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4549: contact_point_ids HZ_PARTY_SEARCH.IDList;
4550: p_party_site_list HZ_PARTY_SEARCH.IDList;
4551: p_contact_ids HZ_PARTY_SEARCH.IDList;
4552: l_match_idx NUMBER;
4553:
4554: BEGIN
4555: IF fnd_log.level_procedure>=fnd_log.g_current_runtime_level THEN
4564: END IF;
4565: contact_point_ids(1) := p_contact_point_id;
4566: get_search_criteria (
4567: null,
4568: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4569: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4570: contact_point_ids,
4571: l_party_search_rec,
4572: l_party_site_list,
4565: contact_point_ids(1) := p_contact_point_id;
4566: get_search_criteria (
4567: null,
4568: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4569: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4570: contact_point_ids,
4571: l_party_search_rec,
4572: l_party_site_list,
4573: l_contact_list,
4718: ) IS
4719: TYPE AttrList IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER;
4720: l_match_idx NUMBER;
4721: AttrVals AttrList;
4722: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4723: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4724: l_contact_list HZ_PARTY_SEARCH.contact_list;
4725: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4726: l_dup_set_id NUMBER;
4719: TYPE AttrList IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER;
4720: l_match_idx NUMBER;
4721: AttrVals AttrList;
4722: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4723: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4724: l_contact_list HZ_PARTY_SEARCH.contact_list;
4725: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4726: l_dup_set_id NUMBER;
4727: l_idx NUMBER;
4720: l_match_idx NUMBER;
4721: AttrVals AttrList;
4722: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4723: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4724: l_contact_list HZ_PARTY_SEARCH.contact_list;
4725: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4726: l_dup_set_id NUMBER;
4727: l_idx NUMBER;
4728: l_cpt_type VARCHAR2(255);
4721: AttrVals AttrList;
4722: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4723: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4724: l_contact_list HZ_PARTY_SEARCH.contact_list;
4725: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4726: l_dup_set_id NUMBER;
4727: l_idx NUMBER;
4728: l_cpt_type VARCHAR2(255);
4729: FIRST BOOLEAN := TRUE;
4952:
4953: PROCEDURE get_matching_party_sites (
4954: p_rule_id IN NUMBER,
4955: p_party_id IN NUMBER,
4956: p_party_site_list IN HZ_PARTY_SEARCH.PARTY_SITE_LIST,
4957: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
4958: p_restrict_sql IN VARCHAR2,
4959: p_match_type IN VARCHAR2,
4960: p_dup_party_site_id IN NUMBER,
4953: PROCEDURE get_matching_party_sites (
4954: p_rule_id IN NUMBER,
4955: p_party_id IN NUMBER,
4956: p_party_site_list IN HZ_PARTY_SEARCH.PARTY_SITE_LIST,
4957: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
4958: p_restrict_sql IN VARCHAR2,
4959: p_match_type IN VARCHAR2,
4960: p_dup_party_site_id IN NUMBER,
4961: x_search_ctx_id OUT NUMBER,
4993: l_TX11 VARCHAR2(2000);
4994: l_TX5 VARCHAR2(2000);
4995: l_TX14 VARCHAR2(2000);
4996: l_TX6 VARCHAR2(2000);
4997: H_SCORES HZ_PARTY_SEARCH.score_list;
4998:
4999: l_score NUMBER;
5000: l_idx NUMBER;
5001: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
5024: defps NUMBER :=0;
5025: defct NUMBER :=0;
5026: defcpt NUMBER :=0;
5027: l_index NUMBER;
5028: l_match_ps_list HZ_PARTY_SEARCH.IDList;
5029: l_cnt NUMBER:=1;
5030:
5031:
5032: BEGIN
5048: l_match_str := ' AND ';
5049: ELSIF p_match_type = 'OR' THEN
5050: l_match_str := ' OR ';
5051: END IF;
5052: 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);
5053: g_score_until_thresh := false;
5054: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
5055:
5056: -- ************************************************************
5056: -- ************************************************************
5057: -- STEP 2. Setup of intermedia query strings for Acquisition query
5058: l_party_site_contains_str := INIT_PARTY_SITES_QUERY(l_match_str,l_tmp);
5059: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
5060: 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);
5061:
5062: -- Setup Search Context ID
5063: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
5064: x_search_ctx_id := l_search_ctx_id;
5199:
5200: PROCEDURE get_matching_contacts (
5201: p_rule_id IN NUMBER,
5202: p_party_id IN NUMBER,
5203: p_contact_list IN HZ_PARTY_SEARCH.CONTACT_LIST,
5204: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5205: p_restrict_sql IN VARCHAR2,
5206: p_match_type IN VARCHAR2,
5207: p_dup_contact_id IN NUMBER,
5200: PROCEDURE get_matching_contacts (
5201: p_rule_id IN NUMBER,
5202: p_party_id IN NUMBER,
5203: p_contact_list IN HZ_PARTY_SEARCH.CONTACT_LIST,
5204: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5205: p_restrict_sql IN VARCHAR2,
5206: p_match_type IN VARCHAR2,
5207: p_dup_contact_id IN NUMBER,
5208: x_search_ctx_id OUT NUMBER,
5229: l_TX22 VARCHAR2(2000);
5230: l_TX1 VARCHAR2(2000);
5231: l_TX5 VARCHAR2(2000);
5232: l_TX6 VARCHAR2(2000);
5233: H_SCORES HZ_PARTY_SEARCH.score_list;
5234:
5235: l_score NUMBER;
5236: l_idx NUMBER;
5237: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
5257: l_party_max_score NUMBER;
5258: l_ps_max_score NUMBER;
5259: l_contact_max_score NUMBER;
5260: l_cpt_max_score NUMBER;
5261: l_match_contact_list HZ_PARTY_SEARCH.IDList;
5262: l_cnt NUMBER:=1;
5263:
5264:
5265: BEGIN
5281: l_match_str := ' AND ';
5282: ELSIF p_match_type = 'OR' THEN
5283: l_match_str := ' OR ';
5284: END IF;
5285: 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);
5286: g_score_until_thresh := false;
5287: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
5288:
5289: -- ************************************************************
5289: -- ************************************************************
5290: -- STEP 2. Setup of intermedia query strings for Acquisition query
5291: l_contact_contains_str := INIT_CONTACTS_QUERY(l_match_str,l_tmp);
5292: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
5293: 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);
5294:
5295: -- Setup Search Context ID
5296: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
5297: x_search_ctx_id := l_search_ctx_id;
5428:
5429: PROCEDURE get_matching_contact_points (
5430: p_rule_id IN NUMBER,
5431: p_party_id IN NUMBER,
5432: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5433: p_restrict_sql IN VARCHAR2,
5434: p_match_type IN VARCHAR2,
5435: p_dup_contact_point_id IN NUMBER,
5436: x_search_ctx_id OUT NUMBER,
5460: l_cpt_ps_id NUMBER;
5461: l_cpt_contact_id NUMBER;
5462: l_contact_pt_id NUMBER;
5463: l_cpt_type VARCHAR2(100);
5464: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
5465: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
5466: H_SCORE HZ_PARTY_SEARCH.IDList;
5467:
5468: cnt NUMBER :=0;
5461: l_cpt_contact_id NUMBER;
5462: l_contact_pt_id NUMBER;
5463: l_cpt_type VARCHAR2(100);
5464: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
5465: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
5466: H_SCORE HZ_PARTY_SEARCH.IDList;
5467:
5468: cnt NUMBER :=0;
5469: l_party_max_score NUMBER;
5462: l_contact_pt_id NUMBER;
5463: l_cpt_type VARCHAR2(100);
5464: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
5465: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
5466: H_SCORE HZ_PARTY_SEARCH.IDList;
5467:
5468: cnt NUMBER :=0;
5469: l_party_max_score NUMBER;
5470: l_ps_max_score NUMBER;
5491: l_match_str := ' AND ';
5492: ELSIF p_match_type = 'OR' THEN
5493: l_match_str := ' OR ';
5494: END IF;
5495: l_entered_max_score:= init_search(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
5496: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST, HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
5497: p_contact_point_list,l_match_str, l_party_max_score, l_ps_max_score, l_contact_max_score, l_cpt_max_score);
5498: g_score_until_thresh := false;
5499: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
5492: ELSIF p_match_type = 'OR' THEN
5493: l_match_str := ' OR ';
5494: END IF;
5495: l_entered_max_score:= init_search(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
5496: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST, HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
5497: p_contact_point_list,l_match_str, l_party_max_score, l_ps_max_score, l_contact_max_score, l_cpt_max_score);
5498: g_score_until_thresh := false;
5499: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
5500:
5500:
5501: -- ************************************************************
5502: -- STEP 2. Setup of intermedia query strings for Acquisition query
5503: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
5504: 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);
5505:
5506: -- Setup Search Context ID
5507: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
5508: x_search_ctx_id := l_search_ctx_id;
5575:
5576: PROCEDURE get_score_details (
5577: p_rule_id IN NUMBER,
5578: p_party_id IN NUMBER,
5579: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5580: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5581: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5582: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5583: x_search_ctx_id IN OUT NUMBER
5576: PROCEDURE get_score_details (
5577: p_rule_id IN NUMBER,
5578: p_party_id IN NUMBER,
5579: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5580: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5581: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5582: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5583: x_search_ctx_id IN OUT NUMBER
5584: ) IS
5577: p_rule_id IN NUMBER,
5578: p_party_id IN NUMBER,
5579: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5580: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5581: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5582: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5583: x_search_ctx_id IN OUT NUMBER
5584: ) IS
5585:
5578: p_party_id IN NUMBER,
5579: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5580: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5581: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5582: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5583: x_search_ctx_id IN OUT NUMBER
5584: ) IS
5585:
5586: -- Strings to hold the generated Intermedia query strings
5631: l_TX14 VARCHAR2(2000);
5632: l_max_TX14 VARCHAR2(2000);
5633: l_TX6 VARCHAR2(2000);
5634: l_max_TX6 VARCHAR2(2000);
5635: H_SCORES HZ_PARTY_SEARCH.score_list;
5636:
5637: l_score NUMBER;
5638: l_match_idx NUMBER;
5639: l_idx NUMBER;
5813: ************************************************/
5814:
5815: PROCEDURE get_party_for_search (
5816: p_party_id IN NUMBER,
5817: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5818: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5819: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5820: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5821: ) IS
5814:
5815: PROCEDURE get_party_for_search (
5816: p_party_id IN NUMBER,
5817: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5818: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5819: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5820: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5821: ) IS
5822: l_party_id NUMBER;
5815: PROCEDURE get_party_for_search (
5816: p_party_id IN NUMBER,
5817: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5818: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5819: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5820: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5821: ) IS
5822: l_party_id NUMBER;
5823: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5816: p_party_id IN NUMBER,
5817: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5818: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5819: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5820: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5821: ) IS
5822: l_party_id NUMBER;
5823: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5824: l_contact_ids HZ_PARTY_SEARCH.IDList;
5819: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5820: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5821: ) IS
5822: l_party_id NUMBER;
5823: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5824: l_contact_ids HZ_PARTY_SEARCH.IDList;
5825: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
5826: ps NUMBER :=1;
5827: cpt NUMBER :=1;
5820: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5821: ) IS
5822: l_party_id NUMBER;
5823: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5824: l_contact_ids HZ_PARTY_SEARCH.IDList;
5825: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
5826: ps NUMBER :=1;
5827: cpt NUMBER :=1;
5828: ct NUMBER :=1;
5821: ) IS
5822: l_party_id NUMBER;
5823: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5824: l_contact_ids HZ_PARTY_SEARCH.IDList;
5825: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
5826: ps NUMBER :=1;
5827: cpt NUMBER :=1;
5828: ct NUMBER :=1;
5829: l_use_contact_info varchar2(1);
5930: END get_party_for_search;
5931:
5932: PROCEDURE get_search_criteria (
5933: p_party_id IN NUMBER,
5934: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5935: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5937: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5938: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5931:
5932: PROCEDURE get_search_criteria (
5933: p_party_id IN NUMBER,
5934: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5935: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5937: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5938: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5939: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5932: PROCEDURE get_search_criteria (
5933: p_party_id IN NUMBER,
5934: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5935: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5937: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5938: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5939: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5940: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5933: p_party_id IN NUMBER,
5934: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5935: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5937: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5938: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5939: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5940: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5941: ) IS
5934: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5935: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5937: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5938: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5939: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5940: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5941: ) IS
5942: BEGIN
5935: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5937: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5938: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5939: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5940: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5941: ) IS
5942: BEGIN
5943:
5936: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5937: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5938: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5939: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5940: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5941: ) IS
5942: BEGIN
5943:
5944: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
5988: ************************************************/
5989:
5990: PROCEDURE get_party_rec (
5991: p_party_id IN NUMBER,
5992: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type
5993: ) IS
5994: l_party_type VARCHAR2(255);
5995: BEGIN
5996:
6031: the party site search record structure
6032: ************************************************/
6033:
6034: PROCEDURE get_party_site_rec (
6035: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
6036: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list
6037: ) IS
6038: CURSOR c_party_sites(cp_party_site_id NUMBER) IS
6039: SELECT party_site_id
6032: ************************************************/
6033:
6034: PROCEDURE get_party_site_rec (
6035: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
6036: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list
6037: ) IS
6038: CURSOR c_party_sites(cp_party_site_id NUMBER) IS
6039: SELECT party_site_id
6040: ,translate(HZ_LOCATIONS.CITY, '%',' ')
6097: the contact search record structure
6098: ************************************************/
6099:
6100: PROCEDURE get_contact_rec (
6101: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
6102: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list
6103: ) IS
6104: CURSOR c_contacts(cp_org_contact_id NUMBER) IS
6105: SELECT org_contact_id
6098: ************************************************/
6099:
6100: PROCEDURE get_contact_rec (
6101: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
6102: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list
6103: ) IS
6104: CURSOR c_contacts(cp_org_contact_id NUMBER) IS
6105: SELECT org_contact_id
6106: ,translate(HZ_ORG_CONTACTS.JOB_TITLE, '%',' ')
6155: the contact point search record structure
6156: ************************************************/
6157:
6158: PROCEDURE get_contact_point_rec (
6159: p_contact_point_ids IN HZ_PARTY_SEARCH.IDList,
6160: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6161: ) IS
6162:
6163: -- Cursor to fetch primary contact points for party
6156: ************************************************/
6157:
6158: PROCEDURE get_contact_point_rec (
6159: p_contact_point_ids IN HZ_PARTY_SEARCH.IDList,
6160: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6161: ) IS
6162:
6163: -- Cursor to fetch primary contact points for party
6164: CURSOR c_cpts(cp_contact_point_id NUMBER) IS
6214: ************************************************/
6215:
6216: PROCEDURE MAP_PARTY_REC(
6217: p_search_ctx IN BOOLEAN,
6218: p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6219: x_entered_max_score OUT NUMBER,
6220: x_stage_rec IN OUT NOCOPY HZ_PARTY_STAGE.party_stage_rec_type
6221: ) IS
6222: tmp VARCHAR2(4000);
6311: ************************************************/
6312:
6313: PROCEDURE MAP_PARTY_SITE_REC(
6314: p_search_ctx IN BOOLEAN,
6315: p_search_list IN HZ_PARTY_SEARCH.party_site_list,
6316: x_entered_max_score OUT NUMBER,
6317: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.party_site_stage_list
6318: ) IS
6319: l_current_max_score NUMBER;
6581: ************************************************/
6582:
6583: PROCEDURE MAP_CONTACT_REC(
6584: p_search_ctx IN BOOLEAN,
6585: p_search_list IN HZ_PARTY_SEARCH.contact_list,
6586: x_entered_max_score OUT NUMBER,
6587: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.contact_stage_list
6588: ) IS
6589: l_current_max_score NUMBER;
6638: ************************************************/
6639:
6640: PROCEDURE MAP_CONTACT_POINT_REC(
6641: p_search_ctx IN BOOLEAN,
6642: p_search_list IN HZ_PARTY_SEARCH.contact_point_list,
6643: x_entered_max_score OUT NUMBER,
6644: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.contact_pt_stage_list
6645: ) IS
6646: l_current_max_score NUMBER;
6744: 2. Contact Point Type is not null for each condition
6745: ************************************************/
6746:
6747: FUNCTION check_prim_cond(
6748: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6749: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6750: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6751: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6752: RETURN BOOLEAN IS
6745: ************************************************/
6746:
6747: FUNCTION check_prim_cond(
6748: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6749: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6750: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6751: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6752: RETURN BOOLEAN IS
6753: BEGIN
6746:
6747: FUNCTION check_prim_cond(
6748: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6749: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6750: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6751: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6752: RETURN BOOLEAN IS
6753: BEGIN
6754: FOR I IN 1..p_contact_point_list.COUNT LOOP
6747: FUNCTION check_prim_cond(
6748: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6749: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6750: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6751: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6752: RETURN BOOLEAN IS
6753: BEGIN
6754: FOR I IN 1..p_contact_point_list.COUNT LOOP
6755: IF p_contact_point_list(I).CONTACT_POINT_TYPE IS NULL AND (
6806: has party site criteria.
6807: ************************************************/
6808:
6809: PROCEDURE check_party_site_cond(
6810: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6811: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6812: x_secondary OUT BOOLEAN,
6813: x_primary OUT BOOLEAN
6814: ) IS
6807: ************************************************/
6808:
6809: PROCEDURE check_party_site_cond(
6810: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6811: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6812: x_secondary OUT BOOLEAN,
6813: x_primary OUT BOOLEAN
6814: ) IS
6815: BEGIN
6867: has contact criteria.
6868: ************************************************/
6869:
6870: PROCEDURE check_contact_cond(
6871: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6872: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6873: x_secondary OUT BOOLEAN,
6874: x_primary OUT BOOLEAN
6875: ) IS
6868: ************************************************/
6869:
6870: PROCEDURE check_contact_cond(
6871: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6872: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6873: x_secondary OUT BOOLEAN,
6874: x_primary OUT BOOLEAN
6875: ) IS
6876: BEGIN
6922: has valid contact point criteria.
6923: ************************************************/
6924:
6925: PROCEDURE check_contact_point_cond(
6926: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6927: x_secondary OUT BOOLEAN,
6928: x_primary OUT BOOLEAN
6929: ) IS
6930: BEGIN