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;
351: PROCEDURE INSERT_PARTY_SCORE (
352: p_party_id IN NUMBER
353: ,p_record_id IN NUMBER
354: ,p_search_ctx_id IN NUMBER
355: ,p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type
356: ,p_stage_rec IN HZ_PARTY_STAGE.party_stage_rec_type
357: ,p_table_TX40 VARCHAR2
358: ,p_table_TX39 VARCHAR2
359: ,p_idx IN NUMBER) IS
400: PROCEDURE INSERT_PARTY_SITES_SCORE (
401: p_party_id IN NUMBER
402: ,p_record_id IN NUMBER
403: ,p_search_ctx_id IN NUMBER
404: ,p_search_rec IN HZ_PARTY_SEARCH.party_site_search_rec_type
405: ,p_stage_rec IN HZ_PARTY_STAGE.party_site_stage_rec_type
406: ,p_idx IN NUMBER) IS
407: l_current_score NUMBER:=0;
408: l_score NUMBER;
416: PROCEDURE INSERT_CONTACTS_SCORE (
417: p_party_id IN NUMBER
418: ,p_record_id IN NUMBER
419: ,p_search_ctx_id IN NUMBER
420: ,p_search_rec IN HZ_PARTY_SEARCH.contact_search_rec_type
421: ,p_stage_rec IN HZ_PARTY_STAGE.contact_stage_rec_type
422: ,p_table_TX22 VARCHAR2
423: ,p_idx IN NUMBER) IS
424: l_current_score NUMBER:=0;
458: PROCEDURE INSERT_CONTACT_POINTS_SCORE (
459: p_party_id IN NUMBER
460: ,p_record_id IN NUMBER
461: ,p_search_ctx_id IN NUMBER
462: ,p_search_rec IN HZ_PARTY_SEARCH.contact_point_search_rec_type
463: ,p_stage_rec IN HZ_PARTY_STAGE.contact_pt_stage_rec_type
464: ,p_table_TX1 VARCHAR2
465: ,p_table_TX6 VARCHAR2
466: ,p_table_TX5 VARCHAR2
536: for the PARTY Entity
537: ************************************************/
538:
539: PROCEDURE POP_PARTY_COND_REC(
540: p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type
541: ) IS
542: BEGIN
543: NULL ;
544: EXCEPTION
556: for the PARTY_SITES Entity
557: ************************************************/
558:
559: PROCEDURE POP_PARTY_SITES_COND_REC(
560: p_search_list IN HZ_PARTY_SEARCH.party_site_list
561: ) IS
562: BEGIN
563: NULL ;
564: EXCEPTION
576: for the CONTACTS Entity
577: ************************************************/
578:
579: PROCEDURE POP_CONTACTS_COND_REC(
580: p_search_list IN HZ_PARTY_SEARCH.contact_list
581: ) IS
582: BEGIN
583: NULL ;
584: EXCEPTION
596: for the CONTACT_POINTS Entity
597: ************************************************/
598:
599: PROCEDURE POP_CONTACT_POINTS_COND_REC(
600: p_search_list IN HZ_PARTY_SEARCH.contact_point_list
601: ) IS
602: BEGIN
603: NULL ;
604: EXCEPTION
610: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
611: END;
612:
613: PROCEDURE init_score_context (
614: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
615: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
616: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
617: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
618: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
611: END;
612:
613: PROCEDURE init_score_context (
614: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
615: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
616: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
617: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
618: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
619: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
612:
613: PROCEDURE init_score_context (
614: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
615: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
616: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
617: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
618: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
619: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
620: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
613: PROCEDURE init_score_context (
614: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
615: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
616: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
617: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
618: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
619: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
620: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
621: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
614: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
615: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
616: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
617: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
618: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
619: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
620: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
621: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
622: ) IS
615: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
616: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
617: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
618: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
619: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
620: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
621: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
622: ) IS
623: l_dummy NUMBER;
616: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
617: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
618: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
619: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
620: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
621: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
622: ) IS
623: l_dummy NUMBER;
624: BEGIN
617: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
618: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
619: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
620: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
621: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
622: ) IS
623: l_dummy NUMBER;
624: BEGIN
625: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
637: MAP_CONTACT_POINT_REC(FALSE,p_contact_point_list, l_dummy, g_contact_pt_stage_list);
638:
639: END;
640: FUNCTION init_search(
641: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
642: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
643: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
644: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
645: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
638:
639: END;
640: FUNCTION init_search(
641: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
642: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
643: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
644: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
645: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
646: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
639: END;
640: FUNCTION init_search(
641: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
642: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
643: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
644: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
645: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
646: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
647: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
640: FUNCTION init_search(
641: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
642: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
643: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
644: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
645: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
646: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
647: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
648: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
641: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
642: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
643: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
644: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
645: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
646: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
647: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
648: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
649: p_match_type IN VARCHAR2,
642: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
643: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
644: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
645: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
646: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
647: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
648: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
649: p_match_type IN VARCHAR2,
650: x_party_max_score OUT NUMBER,
643: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
644: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
645: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
646: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
647: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
648: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
649: p_match_type IN VARCHAR2,
650: x_party_max_score OUT NUMBER,
651: x_ps_max_score OUT NUMBER,
644: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
645: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
646: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
647: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
648: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
649: p_match_type IN VARCHAR2,
650: x_party_max_score OUT NUMBER,
651: x_ps_max_score OUT NUMBER,
652: x_contact_max_score OUT NUMBER,
656: l_ps_entered_max_score NUMBER:=0;
657: l_ct_entered_max_score NUMBER:=0;
658: l_cpt_entered_max_score NUMBER:=0;
659: vlist vlisttype;
660: maxscore HZ_PARTY_SEARCH.IDList;
661: l_name VARCHAR2(200);
662: l_idx NUMBER;
663: l_num NUMBER;
664: total NUMBER;
1992: p_party_id NUMBER,
1993: p_party_site_id NUMBER,
1994: p_org_contact_id NUMBER,
1995: p_contact_point_id NUMBER)
1996: RETURN HZ_PARTY_SEARCH.score_rec IS
1997: l_score_rec HZ_PARTY_SEARCH.score_rec;
1998: BEGIN
1999: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2000: 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);
1993: p_party_site_id NUMBER,
1994: p_org_contact_id NUMBER,
1995: p_contact_point_id NUMBER)
1996: RETURN HZ_PARTY_SEARCH.score_rec IS
1997: l_score_rec HZ_PARTY_SEARCH.score_rec;
1998: BEGIN
1999: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2000: 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);
2001: 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);
2025: **********************************************************/
2026:
2027: PROCEDURE find_parties (
2028: p_rule_id IN NUMBER,
2029: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2030: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2031: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2032: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2033: p_restrict_sql IN VARCHAR2,
2026:
2027: PROCEDURE find_parties (
2028: p_rule_id IN NUMBER,
2029: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2030: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2031: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2032: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2033: p_restrict_sql IN VARCHAR2,
2034: p_match_type IN VARCHAR2,
2027: PROCEDURE find_parties (
2028: p_rule_id IN NUMBER,
2029: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2030: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2031: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2032: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2033: p_restrict_sql IN VARCHAR2,
2034: p_match_type IN VARCHAR2,
2035: p_search_merged IN VARCHAR2,
2028: p_rule_id IN NUMBER,
2029: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2030: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2031: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2032: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2033: p_restrict_sql IN VARCHAR2,
2034: p_match_type IN VARCHAR2,
2035: p_search_merged IN VARCHAR2,
2036: p_dup_party_id IN NUMBER,
2066: l_TX1 VARCHAR2(2000);
2067: l_TX5 VARCHAR2(2000);
2068: l_TX40 VARCHAR2(2000);
2069: l_TX6 VARCHAR2(2000);
2070: H_SCORES HZ_PARTY_SEARCH.score_list;
2071: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
2072: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
2073:
2074: l_score NUMBER;
2067: l_TX5 VARCHAR2(2000);
2068: l_TX40 VARCHAR2(2000);
2069: l_TX6 VARCHAR2(2000);
2070: H_SCORES HZ_PARTY_SEARCH.score_list;
2071: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
2072: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
2073:
2074: l_score NUMBER;
2075: l_idx NUMBER;
2068: l_TX40 VARCHAR2(2000);
2069: l_TX6 VARCHAR2(2000);
2070: H_SCORES HZ_PARTY_SEARCH.score_list;
2071: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
2072: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
2073:
2074: l_score NUMBER;
2075: l_idx NUMBER;
2076: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
2259: /** Private procedure to acquire and score at party site level ***/
2260: 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
2261: l_party_id_idx NUMBER:=1;
2262: l_ctx_id NUMBER;
2263: h_ps_id HZ_PARTY_SEARCH.IDList;
2264: h_ps_party_id HZ_PARTY_SEARCH.IDList;
2265: h_ps_score HZ_PARTY_SEARCH.IDList;
2266: detcnt NUMBER := 1;
2267: BEGIN
2260: 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
2261: l_party_id_idx NUMBER:=1;
2262: l_ctx_id NUMBER;
2263: h_ps_id HZ_PARTY_SEARCH.IDList;
2264: h_ps_party_id HZ_PARTY_SEARCH.IDList;
2265: h_ps_score HZ_PARTY_SEARCH.IDList;
2266: detcnt NUMBER := 1;
2267: BEGIN
2268: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2261: l_party_id_idx NUMBER:=1;
2262: l_ctx_id NUMBER;
2263: h_ps_id HZ_PARTY_SEARCH.IDList;
2264: h_ps_party_id HZ_PARTY_SEARCH.IDList;
2265: h_ps_score HZ_PARTY_SEARCH.IDList;
2266: detcnt NUMBER := 1;
2267: BEGIN
2268: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2269: 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);
2381: /** Private procedure to acquire and score at contact point level ***/
2382: 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
2383: l_party_id_idx NUMBER:=1;
2384: l_ctx_id NUMBER;
2385: h_ct_id HZ_PARTY_SEARCH.IDList;
2386: h_ct_party_id HZ_PARTY_SEARCH.IDList;
2387: h_ct_score HZ_PARTY_SEARCH.IDList;
2388: detcnt NUMBER := 1;
2389: BEGIN
2382: 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
2383: l_party_id_idx NUMBER:=1;
2384: l_ctx_id NUMBER;
2385: h_ct_id HZ_PARTY_SEARCH.IDList;
2386: h_ct_party_id HZ_PARTY_SEARCH.IDList;
2387: h_ct_score HZ_PARTY_SEARCH.IDList;
2388: detcnt NUMBER := 1;
2389: BEGIN
2390: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2383: l_party_id_idx NUMBER:=1;
2384: l_ctx_id NUMBER;
2385: h_ct_id HZ_PARTY_SEARCH.IDList;
2386: h_ct_party_id HZ_PARTY_SEARCH.IDList;
2387: h_ct_score HZ_PARTY_SEARCH.IDList;
2388: detcnt NUMBER := 1;
2389: BEGIN
2390: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2391: 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);
2490: /** Private procedure to acquire and score at contact point level ***/
2491: 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
2492: l_party_id_idx NUMBER:=1;
2493: l_ctx_id NUMBER;
2494: h_cpt_id HZ_PARTY_SEARCH.IDList;
2495: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
2496: h_cpt_score HZ_PARTY_SEARCH.IDList;
2497: detcnt NUMBER := 1;
2498: l_cpt_flag VARCHAR2(1) := 'N';
2491: 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
2492: l_party_id_idx NUMBER:=1;
2493: l_ctx_id NUMBER;
2494: h_cpt_id HZ_PARTY_SEARCH.IDList;
2495: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
2496: h_cpt_score HZ_PARTY_SEARCH.IDList;
2497: detcnt NUMBER := 1;
2498: l_cpt_flag VARCHAR2(1) := 'N';
2499: is_a_match VARCHAR2(1) := 'Y';
2492: l_party_id_idx NUMBER:=1;
2493: l_ctx_id NUMBER;
2494: h_cpt_id HZ_PARTY_SEARCH.IDList;
2495: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
2496: h_cpt_score HZ_PARTY_SEARCH.IDList;
2497: detcnt NUMBER := 1;
2498: l_cpt_flag VARCHAR2(1) := 'N';
2499: is_a_match VARCHAR2(1) := 'Y';
2500: BEGIN
2979: END find_parties;
2980:
2981: PROCEDURE find_persons (
2982: p_rule_id IN NUMBER,
2983: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2984: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2985: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2986: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2987: p_restrict_sql IN VARCHAR2,
2980:
2981: PROCEDURE find_persons (
2982: p_rule_id IN NUMBER,
2983: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2984: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2985: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2986: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2987: p_restrict_sql IN VARCHAR2,
2988: p_match_type IN VARCHAR2,
2981: PROCEDURE find_persons (
2982: p_rule_id IN NUMBER,
2983: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2984: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2985: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2986: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2987: p_restrict_sql IN VARCHAR2,
2988: p_match_type IN VARCHAR2,
2989: p_search_merged IN VARCHAR2,
2982: p_rule_id IN NUMBER,
2983: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2984: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2985: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2986: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2987: p_restrict_sql IN VARCHAR2,
2988: p_match_type IN VARCHAR2,
2989: p_search_merged IN VARCHAR2,
2990: p_dup_party_id IN NUMBER,
3020: l_TX1 VARCHAR2(2000);
3021: l_TX5 VARCHAR2(2000);
3022: l_TX40 VARCHAR2(2000);
3023: l_TX6 VARCHAR2(2000);
3024: H_SCORES HZ_PARTY_SEARCH.score_list;
3025: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3026: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3027:
3028: l_score NUMBER;
3021: l_TX5 VARCHAR2(2000);
3022: l_TX40 VARCHAR2(2000);
3023: l_TX6 VARCHAR2(2000);
3024: H_SCORES HZ_PARTY_SEARCH.score_list;
3025: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3026: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3027:
3028: l_score NUMBER;
3029: l_idx NUMBER;
3022: l_TX40 VARCHAR2(2000);
3023: l_TX6 VARCHAR2(2000);
3024: H_SCORES HZ_PARTY_SEARCH.score_list;
3025: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3026: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3027:
3028: l_score NUMBER;
3029: l_idx NUMBER;
3030: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
3261: /** Private procedure to acquire and score at party site level ***/
3262: 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
3263: l_party_id_idx NUMBER:=1;
3264: l_ctx_id NUMBER;
3265: h_ps_id HZ_PARTY_SEARCH.IDList;
3266: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3267: h_ps_score HZ_PARTY_SEARCH.IDList;
3268: detcnt NUMBER := 1;
3269: l_person_id NUMBER;
3262: 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
3263: l_party_id_idx NUMBER:=1;
3264: l_ctx_id NUMBER;
3265: h_ps_id HZ_PARTY_SEARCH.IDList;
3266: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3267: h_ps_score HZ_PARTY_SEARCH.IDList;
3268: detcnt NUMBER := 1;
3269: l_person_id NUMBER;
3270: BEGIN
3263: l_party_id_idx NUMBER:=1;
3264: l_ctx_id NUMBER;
3265: h_ps_id HZ_PARTY_SEARCH.IDList;
3266: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3267: h_ps_score HZ_PARTY_SEARCH.IDList;
3268: detcnt NUMBER := 1;
3269: l_person_id NUMBER;
3270: BEGIN
3271: SAVEPOINT eval_start;
3360: /** Private procedure to acquire and score at party site level ***/
3361: PROCEDURE eval_contact_level(p_contact_contains_str VARCHAR2,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3362: l_party_id_idx NUMBER:=1;
3363: l_ctx_id NUMBER;
3364: h_ct_id HZ_PARTY_SEARCH.IDList;
3365: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3366: h_ct_score HZ_PARTY_SEARCH.IDList;
3367: detcnt NUMBER := 1;
3368: l_person_id NUMBER;
3361: PROCEDURE eval_contact_level(p_contact_contains_str VARCHAR2,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3362: l_party_id_idx NUMBER:=1;
3363: l_ctx_id NUMBER;
3364: h_ct_id HZ_PARTY_SEARCH.IDList;
3365: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3366: h_ct_score HZ_PARTY_SEARCH.IDList;
3367: detcnt NUMBER := 1;
3368: l_person_id NUMBER;
3369: BEGIN
3362: l_party_id_idx NUMBER:=1;
3363: l_ctx_id NUMBER;
3364: h_ct_id HZ_PARTY_SEARCH.IDList;
3365: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3366: h_ct_score HZ_PARTY_SEARCH.IDList;
3367: detcnt NUMBER := 1;
3368: l_person_id NUMBER;
3369: BEGIN
3370: SAVEPOINT eval_start;
3418: /** Private procedure to acquire and score at contact point level ***/
3419: 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
3420: l_party_id_idx NUMBER:=1;
3421: l_ctx_id NUMBER;
3422: h_cpt_id HZ_PARTY_SEARCH.IDList;
3423: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3424: h_cpt_score HZ_PARTY_SEARCH.IDList;
3425: detcnt NUMBER := 1;
3426: l_person_id NUMBER;
3419: 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
3420: l_party_id_idx NUMBER:=1;
3421: l_ctx_id NUMBER;
3422: h_cpt_id HZ_PARTY_SEARCH.IDList;
3423: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3424: h_cpt_score HZ_PARTY_SEARCH.IDList;
3425: detcnt NUMBER := 1;
3426: l_person_id NUMBER;
3427: is_a_match VARCHAR2(1) := 'Y';
3420: l_party_id_idx NUMBER:=1;
3421: l_ctx_id NUMBER;
3422: h_cpt_id HZ_PARTY_SEARCH.IDList;
3423: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3424: h_cpt_score HZ_PARTY_SEARCH.IDList;
3425: detcnt NUMBER := 1;
3426: l_person_id NUMBER;
3427: is_a_match VARCHAR2(1) := 'Y';
3428: l_cpt_flag VARCHAR2(1) := 'N';
3831: END find_persons;
3832:
3833: PROCEDURE find_persons (
3834: p_rule_id IN NUMBER,
3835: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3836: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3837: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3838: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3839: p_restrict_sql IN VARCHAR2,
3832:
3833: PROCEDURE find_persons (
3834: p_rule_id IN NUMBER,
3835: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3836: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3837: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3838: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3839: p_restrict_sql IN VARCHAR2,
3840: p_match_type IN VARCHAR2,
3833: PROCEDURE find_persons (
3834: p_rule_id IN NUMBER,
3835: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3836: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3837: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3838: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3839: p_restrict_sql IN VARCHAR2,
3840: p_match_type IN VARCHAR2,
3841: p_search_merged IN VARCHAR2,
3834: p_rule_id IN NUMBER,
3835: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3836: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3837: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3838: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3839: p_restrict_sql IN VARCHAR2,
3840: p_match_type IN VARCHAR2,
3841: p_search_merged IN VARCHAR2,
3842: p_ins_details IN VARCHAR2,
3848: 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);
3849: END;
3850: PROCEDURE find_party_details (
3851: p_rule_id IN NUMBER,
3852: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3853: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3854: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3855: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3856: p_restrict_sql IN VARCHAR2,
3849: END;
3850: PROCEDURE find_party_details (
3851: p_rule_id IN NUMBER,
3852: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3853: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3854: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3855: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3856: p_restrict_sql IN VARCHAR2,
3857: p_match_type IN VARCHAR2,
3850: PROCEDURE find_party_details (
3851: p_rule_id IN NUMBER,
3852: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3853: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3854: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3855: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3856: p_restrict_sql IN VARCHAR2,
3857: p_match_type IN VARCHAR2,
3858: p_search_merged IN VARCHAR2,
3851: p_rule_id IN NUMBER,
3852: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3853: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3854: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3855: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3856: p_restrict_sql IN VARCHAR2,
3857: p_match_type IN VARCHAR2,
3858: p_search_merged IN VARCHAR2,
3859: x_search_ctx_id OUT NUMBER,
3908: x_dup_set_id OUT NUMBER,
3909: x_search_ctx_id OUT NUMBER,
3910: x_num_matches OUT NUMBER
3911: ) IS
3912: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
3913: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
3914: l_contact_list HZ_PARTY_SEARCH.contact_list;
3915: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
3916: l_match_idx NUMBER;
3909: x_search_ctx_id OUT NUMBER,
3910: x_num_matches OUT NUMBER
3911: ) IS
3912: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
3913: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
3914: l_contact_list HZ_PARTY_SEARCH.contact_list;
3915: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
3916: l_match_idx NUMBER;
3917:
3910: x_num_matches OUT NUMBER
3911: ) IS
3912: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
3913: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
3914: l_contact_list HZ_PARTY_SEARCH.contact_list;
3915: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
3916: l_match_idx NUMBER;
3917:
3918: --Fix for bug 4417124
3911: ) IS
3912: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
3913: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
3914: l_contact_list HZ_PARTY_SEARCH.contact_list;
3915: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
3916: l_match_idx NUMBER;
3917:
3918: --Fix for bug 4417124
3919: l_use_contact_addr_info BOOLEAN := TRUE;
4024: x_search_ctx_id OUT NUMBER,
4025: x_num_matches OUT NUMBER
4026: ) IS
4027:
4028: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4029: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4030: l_contact_list HZ_PARTY_SEARCH.contact_list;
4031: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4032: contact_point_ids HZ_PARTY_SEARCH.IDList;
4025: x_num_matches OUT NUMBER
4026: ) IS
4027:
4028: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4029: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4030: l_contact_list HZ_PARTY_SEARCH.contact_list;
4031: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4032: contact_point_ids HZ_PARTY_SEARCH.IDList;
4033: p_party_site_list HZ_PARTY_SEARCH.IDList;
4026: ) IS
4027:
4028: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4029: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4030: l_contact_list HZ_PARTY_SEARCH.contact_list;
4031: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4032: contact_point_ids HZ_PARTY_SEARCH.IDList;
4033: p_party_site_list HZ_PARTY_SEARCH.IDList;
4034: p_contact_ids HZ_PARTY_SEARCH.IDList;
4027:
4028: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4029: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4030: l_contact_list HZ_PARTY_SEARCH.contact_list;
4031: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4032: contact_point_ids HZ_PARTY_SEARCH.IDList;
4033: p_party_site_list HZ_PARTY_SEARCH.IDList;
4034: p_contact_ids HZ_PARTY_SEARCH.IDList;
4035: l_match_idx NUMBER;
4028: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4029: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4030: l_contact_list HZ_PARTY_SEARCH.contact_list;
4031: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4032: contact_point_ids HZ_PARTY_SEARCH.IDList;
4033: p_party_site_list HZ_PARTY_SEARCH.IDList;
4034: p_contact_ids HZ_PARTY_SEARCH.IDList;
4035: l_match_idx NUMBER;
4036: cursor get_cpts_for_party_sites is select contact_point_id
4029: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4030: l_contact_list HZ_PARTY_SEARCH.contact_list;
4031: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4032: contact_point_ids HZ_PARTY_SEARCH.IDList;
4033: p_party_site_list HZ_PARTY_SEARCH.IDList;
4034: p_contact_ids HZ_PARTY_SEARCH.IDList;
4035: l_match_idx NUMBER;
4036: cursor get_cpts_for_party_sites is select contact_point_id
4037: from hz_contact_points
4030: l_contact_list HZ_PARTY_SEARCH.contact_list;
4031: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4032: contact_point_ids HZ_PARTY_SEARCH.IDList;
4033: p_party_site_list HZ_PARTY_SEARCH.IDList;
4034: p_contact_ids HZ_PARTY_SEARCH.IDList;
4035: l_match_idx NUMBER;
4036: cursor get_cpts_for_party_sites is select contact_point_id
4037: from hz_contact_points
4038: where owner_table_name = 'HZ_PARTY_SITES'
4059:
4060: get_search_criteria (
4061: null,
4062: p_party_site_list,
4063: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4064: contact_point_ids,
4065: l_party_search_rec,
4066: l_party_site_list,
4067: l_contact_list,
4109: x_search_ctx_id OUT NUMBER,
4110: x_num_matches OUT NUMBER
4111: ) IS
4112:
4113: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4114: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4115: l_contact_list HZ_PARTY_SEARCH.contact_list;
4116: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4117: contact_point_ids HZ_PARTY_SEARCH.IDList;
4110: x_num_matches OUT NUMBER
4111: ) IS
4112:
4113: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4114: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4115: l_contact_list HZ_PARTY_SEARCH.contact_list;
4116: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4117: contact_point_ids HZ_PARTY_SEARCH.IDList;
4118: p_party_site_list HZ_PARTY_SEARCH.IDList;
4111: ) IS
4112:
4113: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4114: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4115: l_contact_list HZ_PARTY_SEARCH.contact_list;
4116: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4117: contact_point_ids HZ_PARTY_SEARCH.IDList;
4118: p_party_site_list HZ_PARTY_SEARCH.IDList;
4119: p_contact_ids HZ_PARTY_SEARCH.IDList;
4112:
4113: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4114: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4115: l_contact_list HZ_PARTY_SEARCH.contact_list;
4116: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4117: contact_point_ids HZ_PARTY_SEARCH.IDList;
4118: p_party_site_list HZ_PARTY_SEARCH.IDList;
4119: p_contact_ids HZ_PARTY_SEARCH.IDList;
4120: l_match_idx NUMBER;
4113: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4114: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4115: l_contact_list HZ_PARTY_SEARCH.contact_list;
4116: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4117: contact_point_ids HZ_PARTY_SEARCH.IDList;
4118: p_party_site_list HZ_PARTY_SEARCH.IDList;
4119: p_contact_ids HZ_PARTY_SEARCH.IDList;
4120: l_match_idx NUMBER;
4121: cursor get_cpt_for_contact_id is select contact_point_id
4114: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4115: l_contact_list HZ_PARTY_SEARCH.contact_list;
4116: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4117: contact_point_ids HZ_PARTY_SEARCH.IDList;
4118: p_party_site_list HZ_PARTY_SEARCH.IDList;
4119: p_contact_ids HZ_PARTY_SEARCH.IDList;
4120: l_match_idx NUMBER;
4121: cursor get_cpt_for_contact_id is select contact_point_id
4122: from hz_org_contacts a, hz_relationships b, hz_contact_points c
4115: l_contact_list HZ_PARTY_SEARCH.contact_list;
4116: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4117: contact_point_ids HZ_PARTY_SEARCH.IDList;
4118: p_party_site_list HZ_PARTY_SEARCH.IDList;
4119: p_contact_ids HZ_PARTY_SEARCH.IDList;
4120: l_match_idx NUMBER;
4121: cursor get_cpt_for_contact_id is select contact_point_id
4122: from hz_org_contacts a, hz_relationships b, hz_contact_points c
4123: where a.party_relationship_id = b.relationship_id
4146: CLOSE get_cpt_for_contact_id;
4147:
4148: get_search_criteria (
4149: null,
4150: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4151: p_contact_ids,
4152: contact_point_ids,
4153: l_party_search_rec,
4154: l_party_site_list,
4197: p_match_type IN VARCHAR2,
4198: x_search_ctx_id OUT NUMBER,
4199: x_num_matches OUT NUMBER
4200: ) IS
4201: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4202: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4203: l_contact_list HZ_PARTY_SEARCH.contact_list;
4204: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4205: contact_point_ids HZ_PARTY_SEARCH.IDList;
4198: x_search_ctx_id OUT NUMBER,
4199: x_num_matches OUT NUMBER
4200: ) IS
4201: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4202: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4203: l_contact_list HZ_PARTY_SEARCH.contact_list;
4204: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4205: contact_point_ids HZ_PARTY_SEARCH.IDList;
4206: p_party_site_list HZ_PARTY_SEARCH.IDList;
4199: x_num_matches OUT NUMBER
4200: ) IS
4201: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4202: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4203: l_contact_list HZ_PARTY_SEARCH.contact_list;
4204: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4205: contact_point_ids HZ_PARTY_SEARCH.IDList;
4206: p_party_site_list HZ_PARTY_SEARCH.IDList;
4207: p_contact_ids HZ_PARTY_SEARCH.IDList;
4200: ) IS
4201: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4202: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4203: l_contact_list HZ_PARTY_SEARCH.contact_list;
4204: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4205: contact_point_ids HZ_PARTY_SEARCH.IDList;
4206: p_party_site_list HZ_PARTY_SEARCH.IDList;
4207: p_contact_ids HZ_PARTY_SEARCH.IDList;
4208: l_match_idx NUMBER;
4201: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4202: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4203: l_contact_list HZ_PARTY_SEARCH.contact_list;
4204: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4205: contact_point_ids HZ_PARTY_SEARCH.IDList;
4206: p_party_site_list HZ_PARTY_SEARCH.IDList;
4207: p_contact_ids HZ_PARTY_SEARCH.IDList;
4208: l_match_idx NUMBER;
4209:
4202: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4203: l_contact_list HZ_PARTY_SEARCH.contact_list;
4204: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4205: contact_point_ids HZ_PARTY_SEARCH.IDList;
4206: p_party_site_list HZ_PARTY_SEARCH.IDList;
4207: p_contact_ids HZ_PARTY_SEARCH.IDList;
4208: l_match_idx NUMBER;
4209:
4210: BEGIN
4203: l_contact_list HZ_PARTY_SEARCH.contact_list;
4204: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4205: contact_point_ids HZ_PARTY_SEARCH.IDList;
4206: p_party_site_list HZ_PARTY_SEARCH.IDList;
4207: p_contact_ids HZ_PARTY_SEARCH.IDList;
4208: l_match_idx NUMBER;
4209:
4210: BEGIN
4211: IF fnd_log.level_procedure>=fnd_log.g_current_runtime_level THEN
4220: END IF;
4221: contact_point_ids(1) := p_contact_point_id;
4222: get_search_criteria (
4223: null,
4224: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4225: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4226: contact_point_ids,
4227: l_party_search_rec,
4228: l_party_site_list,
4221: contact_point_ids(1) := p_contact_point_id;
4222: get_search_criteria (
4223: null,
4224: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4225: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4226: contact_point_ids,
4227: l_party_search_rec,
4228: l_party_site_list,
4229: l_contact_list,
4374: ) IS
4375: TYPE AttrList IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER;
4376: l_match_idx NUMBER;
4377: AttrVals AttrList;
4378: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4379: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4380: l_contact_list HZ_PARTY_SEARCH.contact_list;
4381: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4382: l_dup_set_id NUMBER;
4375: TYPE AttrList IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER;
4376: l_match_idx NUMBER;
4377: AttrVals AttrList;
4378: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4379: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4380: l_contact_list HZ_PARTY_SEARCH.contact_list;
4381: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4382: l_dup_set_id NUMBER;
4383: l_idx NUMBER;
4376: l_match_idx NUMBER;
4377: AttrVals AttrList;
4378: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4379: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4380: l_contact_list HZ_PARTY_SEARCH.contact_list;
4381: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4382: l_dup_set_id NUMBER;
4383: l_idx NUMBER;
4384: l_cpt_type VARCHAR2(255);
4377: AttrVals AttrList;
4378: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4379: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4380: l_contact_list HZ_PARTY_SEARCH.contact_list;
4381: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4382: l_dup_set_id NUMBER;
4383: l_idx NUMBER;
4384: l_cpt_type VARCHAR2(255);
4385: FIRST BOOLEAN := TRUE;
4559:
4560: PROCEDURE get_matching_party_sites (
4561: p_rule_id IN NUMBER,
4562: p_party_id IN NUMBER,
4563: p_party_site_list IN HZ_PARTY_SEARCH.PARTY_SITE_LIST,
4564: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
4565: p_restrict_sql IN VARCHAR2,
4566: p_match_type IN VARCHAR2,
4567: p_dup_party_site_id IN NUMBER,
4560: PROCEDURE get_matching_party_sites (
4561: p_rule_id IN NUMBER,
4562: p_party_id IN NUMBER,
4563: p_party_site_list IN HZ_PARTY_SEARCH.PARTY_SITE_LIST,
4564: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
4565: p_restrict_sql IN VARCHAR2,
4566: p_match_type IN VARCHAR2,
4567: p_dup_party_site_id IN NUMBER,
4568: x_search_ctx_id OUT NUMBER,
4588:
4589: l_TX1 VARCHAR2(2000);
4590: l_TX5 VARCHAR2(2000);
4591: l_TX6 VARCHAR2(2000);
4592: H_SCORES HZ_PARTY_SEARCH.score_list;
4593:
4594: l_score NUMBER;
4595: l_idx NUMBER;
4596: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
4619: defps NUMBER :=0;
4620: defct NUMBER :=0;
4621: defcpt NUMBER :=0;
4622: l_index NUMBER;
4623: l_match_ps_list HZ_PARTY_SEARCH.IDList;
4624: l_cnt NUMBER:=1;
4625:
4626:
4627: BEGIN
4643: l_match_str := ' AND ';
4644: ELSIF p_match_type = 'OR' THEN
4645: l_match_str := ' OR ';
4646: END IF;
4647: 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);
4648: g_score_until_thresh := false;
4649: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
4650:
4651: -- ************************************************************
4651: -- ************************************************************
4652: -- STEP 2. Setup of intermedia query strings for Acquisition query
4653: l_party_site_contains_str := INIT_PARTY_SITES_QUERY(l_match_str,l_tmp);
4654: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
4655: 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);
4656:
4657: -- Setup Search Context ID
4658: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
4659: x_search_ctx_id := l_search_ctx_id;
4794:
4795: PROCEDURE get_matching_contacts (
4796: p_rule_id IN NUMBER,
4797: p_party_id IN NUMBER,
4798: p_contact_list IN HZ_PARTY_SEARCH.CONTACT_LIST,
4799: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
4800: p_restrict_sql IN VARCHAR2,
4801: p_match_type IN VARCHAR2,
4802: p_dup_contact_id IN NUMBER,
4795: PROCEDURE get_matching_contacts (
4796: p_rule_id IN NUMBER,
4797: p_party_id IN NUMBER,
4798: p_contact_list IN HZ_PARTY_SEARCH.CONTACT_LIST,
4799: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
4800: p_restrict_sql IN VARCHAR2,
4801: p_match_type IN VARCHAR2,
4802: p_dup_contact_id IN NUMBER,
4803: x_search_ctx_id OUT NUMBER,
4824: l_TX22 VARCHAR2(2000);
4825: l_TX1 VARCHAR2(2000);
4826: l_TX5 VARCHAR2(2000);
4827: l_TX6 VARCHAR2(2000);
4828: H_SCORES HZ_PARTY_SEARCH.score_list;
4829:
4830: l_score NUMBER;
4831: l_idx NUMBER;
4832: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
4852: l_party_max_score NUMBER;
4853: l_ps_max_score NUMBER;
4854: l_contact_max_score NUMBER;
4855: l_cpt_max_score NUMBER;
4856: l_match_contact_list HZ_PARTY_SEARCH.IDList;
4857: l_cnt NUMBER:=1;
4858:
4859:
4860: BEGIN
4876: l_match_str := ' AND ';
4877: ELSIF p_match_type = 'OR' THEN
4878: l_match_str := ' OR ';
4879: END IF;
4880: 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);
4881: g_score_until_thresh := false;
4882: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
4883:
4884: -- ************************************************************
4884: -- ************************************************************
4885: -- STEP 2. Setup of intermedia query strings for Acquisition query
4886: l_contact_contains_str := INIT_CONTACTS_QUERY(l_match_str,l_tmp);
4887: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
4888: 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);
4889:
4890: -- Setup Search Context ID
4891: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
4892: x_search_ctx_id := l_search_ctx_id;
5023:
5024: PROCEDURE get_matching_contact_points (
5025: p_rule_id IN NUMBER,
5026: p_party_id IN NUMBER,
5027: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5028: p_restrict_sql IN VARCHAR2,
5029: p_match_type IN VARCHAR2,
5030: p_dup_contact_point_id IN NUMBER,
5031: x_search_ctx_id OUT NUMBER,
5055: l_cpt_ps_id NUMBER;
5056: l_cpt_contact_id NUMBER;
5057: l_contact_pt_id NUMBER;
5058: l_cpt_type VARCHAR2(100);
5059: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
5060: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
5061: H_SCORE HZ_PARTY_SEARCH.IDList;
5062:
5063: cnt NUMBER :=0;
5056: l_cpt_contact_id NUMBER;
5057: l_contact_pt_id NUMBER;
5058: l_cpt_type VARCHAR2(100);
5059: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
5060: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
5061: H_SCORE HZ_PARTY_SEARCH.IDList;
5062:
5063: cnt NUMBER :=0;
5064: l_party_max_score NUMBER;
5057: l_contact_pt_id NUMBER;
5058: l_cpt_type VARCHAR2(100);
5059: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
5060: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
5061: H_SCORE HZ_PARTY_SEARCH.IDList;
5062:
5063: cnt NUMBER :=0;
5064: l_party_max_score NUMBER;
5065: l_ps_max_score NUMBER;
5086: l_match_str := ' AND ';
5087: ELSIF p_match_type = 'OR' THEN
5088: l_match_str := ' OR ';
5089: END IF;
5090: l_entered_max_score:= init_search(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
5091: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST, HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
5092: p_contact_point_list,l_match_str, l_party_max_score, l_ps_max_score, l_contact_max_score, l_cpt_max_score);
5093: g_score_until_thresh := false;
5094: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
5087: ELSIF p_match_type = 'OR' THEN
5088: l_match_str := ' OR ';
5089: END IF;
5090: l_entered_max_score:= init_search(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
5091: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST, HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
5092: p_contact_point_list,l_match_str, l_party_max_score, l_ps_max_score, l_contact_max_score, l_cpt_max_score);
5093: g_score_until_thresh := false;
5094: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
5095:
5095:
5096: -- ************************************************************
5097: -- STEP 2. Setup of intermedia query strings for Acquisition query
5098: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
5099: 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);
5100:
5101: -- Setup Search Context ID
5102: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
5103: x_search_ctx_id := l_search_ctx_id;
5170:
5171: PROCEDURE get_score_details (
5172: p_rule_id IN NUMBER,
5173: p_party_id IN NUMBER,
5174: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5175: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5176: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5177: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5178: x_search_ctx_id IN OUT NUMBER
5171: PROCEDURE get_score_details (
5172: p_rule_id IN NUMBER,
5173: p_party_id IN NUMBER,
5174: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5175: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5176: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5177: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5178: x_search_ctx_id IN OUT NUMBER
5179: ) IS
5172: p_rule_id IN NUMBER,
5173: p_party_id IN NUMBER,
5174: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5175: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5176: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5177: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5178: x_search_ctx_id IN OUT NUMBER
5179: ) IS
5180:
5173: p_party_id IN NUMBER,
5174: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5175: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5176: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5177: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5178: x_search_ctx_id IN OUT NUMBER
5179: ) IS
5180:
5181: -- Strings to hold the generated Intermedia query strings
5204: l_TX40 VARCHAR2(2000);
5205: l_max_TX40 VARCHAR2(2000);
5206: l_TX6 VARCHAR2(2000);
5207: l_max_TX6 VARCHAR2(2000);
5208: H_SCORES HZ_PARTY_SEARCH.score_list;
5209:
5210: l_score NUMBER;
5211: l_match_idx NUMBER;
5212: l_idx NUMBER;
5373: ************************************************/
5374:
5375: PROCEDURE get_party_for_search (
5376: p_party_id IN NUMBER,
5377: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5378: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5379: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5380: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5381: ) IS
5374:
5375: PROCEDURE get_party_for_search (
5376: p_party_id IN NUMBER,
5377: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5378: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5379: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5380: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5381: ) IS
5382: l_party_id NUMBER;
5375: PROCEDURE get_party_for_search (
5376: p_party_id IN NUMBER,
5377: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5378: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5379: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5380: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5381: ) IS
5382: l_party_id NUMBER;
5383: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5376: p_party_id IN NUMBER,
5377: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5378: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5379: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5380: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5381: ) IS
5382: l_party_id NUMBER;
5383: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5384: l_contact_ids HZ_PARTY_SEARCH.IDList;
5379: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5380: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5381: ) IS
5382: l_party_id NUMBER;
5383: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5384: l_contact_ids HZ_PARTY_SEARCH.IDList;
5385: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
5386: ps NUMBER :=1;
5387: cpt NUMBER :=1;
5380: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5381: ) IS
5382: l_party_id NUMBER;
5383: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5384: l_contact_ids HZ_PARTY_SEARCH.IDList;
5385: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
5386: ps NUMBER :=1;
5387: cpt NUMBER :=1;
5388: ct NUMBER :=1;
5381: ) IS
5382: l_party_id NUMBER;
5383: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5384: l_contact_ids HZ_PARTY_SEARCH.IDList;
5385: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
5386: ps NUMBER :=1;
5387: cpt NUMBER :=1;
5388: ct NUMBER :=1;
5389: l_use_contact_info varchar2(1);
5455: END get_party_for_search;
5456:
5457: PROCEDURE get_search_criteria (
5458: p_party_id IN NUMBER,
5459: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5460: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5461: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5462: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5463: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5456:
5457: PROCEDURE get_search_criteria (
5458: p_party_id IN NUMBER,
5459: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5460: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5461: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5462: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5463: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5464: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5457: PROCEDURE get_search_criteria (
5458: p_party_id IN NUMBER,
5459: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5460: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5461: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5462: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5463: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5464: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5465: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5458: p_party_id IN NUMBER,
5459: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5460: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5461: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5462: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5463: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5464: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5465: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5466: ) IS
5459: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5460: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5461: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5462: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5463: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5464: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5465: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5466: ) IS
5467: BEGIN
5460: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5461: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5462: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5463: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5464: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5465: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5466: ) IS
5467: BEGIN
5468:
5461: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5462: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5463: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5464: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5465: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5466: ) IS
5467: BEGIN
5468:
5469: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
5507: ************************************************/
5508:
5509: PROCEDURE get_party_rec (
5510: p_party_id IN NUMBER,
5511: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type
5512: ) IS
5513: l_party_type VARCHAR2(255);
5514: BEGIN
5515:
5550: the party site search record structure
5551: ************************************************/
5552:
5553: PROCEDURE get_party_site_rec (
5554: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5555: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list
5556: ) IS
5557: CURSOR c_party_sites(cp_party_site_id NUMBER) IS
5558: SELECT party_site_id
5551: ************************************************/
5552:
5553: PROCEDURE get_party_site_rec (
5554: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5555: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list
5556: ) IS
5557: CURSOR c_party_sites(cp_party_site_id NUMBER) IS
5558: SELECT party_site_id
5559: FROM HZ_PARTY_SITES, HZ_LOCATIONS
5602: the contact search record structure
5603: ************************************************/
5604:
5605: PROCEDURE get_contact_rec (
5606: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5607: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list
5608: ) IS
5609: CURSOR c_contacts(cp_org_contact_id NUMBER) IS
5610: SELECT org_contact_id
5603: ************************************************/
5604:
5605: PROCEDURE get_contact_rec (
5606: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5607: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list
5608: ) IS
5609: CURSOR c_contacts(cp_org_contact_id NUMBER) IS
5610: SELECT org_contact_id
5611: ,translate(HZ_ORG_CONTACTS.JOB_TITLE, '%',' ')
5660: the contact point search record structure
5661: ************************************************/
5662:
5663: PROCEDURE get_contact_point_rec (
5664: p_contact_point_ids IN HZ_PARTY_SEARCH.IDList,
5665: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5666: ) IS
5667:
5668: -- Cursor to fetch primary contact points for party
5661: ************************************************/
5662:
5663: PROCEDURE get_contact_point_rec (
5664: p_contact_point_ids IN HZ_PARTY_SEARCH.IDList,
5665: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5666: ) IS
5667:
5668: -- Cursor to fetch primary contact points for party
5669: CURSOR c_cpts(cp_contact_point_id NUMBER) IS
5719: ************************************************/
5720:
5721: PROCEDURE MAP_PARTY_REC(
5722: p_search_ctx IN BOOLEAN,
5723: p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5724: x_entered_max_score OUT NUMBER,
5725: x_stage_rec IN OUT NOCOPY HZ_PARTY_STAGE.party_stage_rec_type
5726: ) IS
5727: tmp VARCHAR2(4000);
5816: ************************************************/
5817:
5818: PROCEDURE MAP_PARTY_SITE_REC(
5819: p_search_ctx IN BOOLEAN,
5820: p_search_list IN HZ_PARTY_SEARCH.party_site_list,
5821: x_entered_max_score OUT NUMBER,
5822: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.party_site_stage_list
5823: ) IS
5824: l_current_max_score NUMBER;
5859: ************************************************/
5860:
5861: PROCEDURE MAP_CONTACT_REC(
5862: p_search_ctx IN BOOLEAN,
5863: p_search_list IN HZ_PARTY_SEARCH.contact_list,
5864: x_entered_max_score OUT NUMBER,
5865: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.contact_stage_list
5866: ) IS
5867: l_current_max_score NUMBER;
5916: ************************************************/
5917:
5918: PROCEDURE MAP_CONTACT_POINT_REC(
5919: p_search_ctx IN BOOLEAN,
5920: p_search_list IN HZ_PARTY_SEARCH.contact_point_list,
5921: x_entered_max_score OUT NUMBER,
5922: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.contact_pt_stage_list
5923: ) IS
5924: l_current_max_score NUMBER;
6046: 2. Contact Point Type is not null for each condition
6047: ************************************************/
6048:
6049: FUNCTION check_prim_cond(
6050: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6051: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6052: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6053: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6054: RETURN BOOLEAN IS
6047: ************************************************/
6048:
6049: FUNCTION check_prim_cond(
6050: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6051: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6052: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6053: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6054: RETURN BOOLEAN IS
6055: BEGIN
6048:
6049: FUNCTION check_prim_cond(
6050: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6051: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6052: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6053: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6054: RETURN BOOLEAN IS
6055: BEGIN
6056: FOR I IN 1..p_contact_point_list.COUNT LOOP
6049: FUNCTION check_prim_cond(
6050: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6051: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6052: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6053: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6054: RETURN BOOLEAN IS
6055: BEGIN
6056: FOR I IN 1..p_contact_point_list.COUNT LOOP
6057: IF p_contact_point_list(I).CONTACT_POINT_TYPE IS NULL AND (
6099: has party site criteria.
6100: ************************************************/
6101:
6102: PROCEDURE check_party_site_cond(
6103: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6104: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6105: x_secondary OUT BOOLEAN,
6106: x_primary OUT BOOLEAN
6107: ) IS
6100: ************************************************/
6101:
6102: PROCEDURE check_party_site_cond(
6103: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6104: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6105: x_secondary OUT BOOLEAN,
6106: x_primary OUT BOOLEAN
6107: ) IS
6108: BEGIN
6145: has contact criteria.
6146: ************************************************/
6147:
6148: PROCEDURE check_contact_cond(
6149: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6150: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6151: x_secondary OUT BOOLEAN,
6152: x_primary OUT BOOLEAN
6153: ) IS
6146: ************************************************/
6147:
6148: PROCEDURE check_contact_cond(
6149: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6150: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6151: x_secondary OUT BOOLEAN,
6152: x_primary OUT BOOLEAN
6153: ) IS
6154: BEGIN
6201: has valid contact point criteria.
6202: ************************************************/
6203:
6204: PROCEDURE check_contact_point_cond(
6205: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6206: x_secondary OUT BOOLEAN,
6207: x_primary OUT BOOLEAN
6208: ) IS
6209: BEGIN