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;
502: PROCEDURE INSERT_PARTY_SCORE (
503: p_party_id IN NUMBER
504: ,p_record_id IN NUMBER
505: ,p_search_ctx_id IN NUMBER
506: ,p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type
507: ,p_stage_rec IN HZ_PARTY_STAGE.party_stage_rec_type
508: ,p_table_TX32 VARCHAR2
509: ,p_table_TX33 VARCHAR2
510: ,p_table_TX34 VARCHAR2
662: PROCEDURE INSERT_PARTY_SITES_SCORE (
663: p_party_id IN NUMBER
664: ,p_record_id IN NUMBER
665: ,p_search_ctx_id IN NUMBER
666: ,p_search_rec IN HZ_PARTY_SEARCH.party_site_search_rec_type
667: ,p_stage_rec IN HZ_PARTY_STAGE.party_site_stage_rec_type
668: ,p_table_TX3 VARCHAR2
669: ,p_table_TX4 VARCHAR2
670: ,p_table_TX9 VARCHAR2
829: PROCEDURE INSERT_CONTACTS_SCORE (
830: p_party_id IN NUMBER
831: ,p_record_id IN NUMBER
832: ,p_search_ctx_id IN NUMBER
833: ,p_search_rec IN HZ_PARTY_SEARCH.contact_search_rec_type
834: ,p_stage_rec IN HZ_PARTY_STAGE.contact_stage_rec_type
835: ,p_idx IN NUMBER) IS
836: l_current_score NUMBER:=0;
837: l_score NUMBER;
845: PROCEDURE INSERT_CONTACT_POINTS_SCORE (
846: p_party_id IN NUMBER
847: ,p_record_id IN NUMBER
848: ,p_search_ctx_id IN NUMBER
849: ,p_search_rec IN HZ_PARTY_SEARCH.contact_point_search_rec_type
850: ,p_stage_rec IN HZ_PARTY_STAGE.contact_pt_stage_rec_type
851: ,p_idx IN NUMBER) IS
852: l_current_score NUMBER:=0;
853: l_score NUMBER;
864: for the PARTY Entity
865: ************************************************/
866:
867: PROCEDURE POP_PARTY_COND_REC(
868: p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type
869: ) IS
870: BEGIN
871: NULL ;
872: EXCEPTION
884: for the PARTY_SITES Entity
885: ************************************************/
886:
887: PROCEDURE POP_PARTY_SITES_COND_REC(
888: p_search_list IN HZ_PARTY_SEARCH.party_site_list
889: ) IS
890: BEGIN
891: ---------POPULATE THE GLOBAL WORD CONDITION REC FOR PARTY_SITES-------------
892: ------ Populate global condition record only if search list is not empty -----------
909: for the CONTACTS Entity
910: ************************************************/
911:
912: PROCEDURE POP_CONTACTS_COND_REC(
913: p_search_list IN HZ_PARTY_SEARCH.contact_list
914: ) IS
915: BEGIN
916: NULL ;
917: EXCEPTION
929: for the CONTACT_POINTS Entity
930: ************************************************/
931:
932: PROCEDURE POP_CONTACT_POINTS_COND_REC(
933: p_search_list IN HZ_PARTY_SEARCH.contact_point_list
934: ) IS
935: BEGIN
936: NULL ;
937: EXCEPTION
943: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
944: END;
945:
946: PROCEDURE init_score_context (
947: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
948: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
949: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
950: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
951: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
944: END;
945:
946: PROCEDURE init_score_context (
947: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
948: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
949: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
950: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
951: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
952: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
945:
946: PROCEDURE init_score_context (
947: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
948: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
949: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
950: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
951: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
952: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
953: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
946: PROCEDURE init_score_context (
947: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
948: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
949: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
950: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
951: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
952: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
953: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
954: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
947: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
948: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
949: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
950: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
951: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
952: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
953: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
954: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
955: ) IS
948: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
949: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
950: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
951: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
952: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
953: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
954: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
955: ) IS
956: l_dummy NUMBER;
949: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
950: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
951: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
952: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
953: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
954: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
955: ) IS
956: l_dummy NUMBER;
957: BEGIN
950: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
951: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
952: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
953: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
954: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST
955: ) IS
956: l_dummy NUMBER;
957: BEGIN
958: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
970: MAP_CONTACT_POINT_REC(FALSE,p_contact_point_list, l_dummy, g_contact_pt_stage_list);
971:
972: END;
973: FUNCTION init_search(
974: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
975: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
976: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
977: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
978: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
971:
972: END;
973: FUNCTION init_search(
974: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
975: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
976: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
977: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
978: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
979: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
972: END;
973: FUNCTION init_search(
974: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
975: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
976: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
977: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
978: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
979: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
980: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
973: FUNCTION init_search(
974: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
975: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
976: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
977: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
978: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
979: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
980: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
981: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
974: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type:=
975: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
976: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
977: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
978: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
979: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
980: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
981: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
982: p_match_type IN VARCHAR2,
975: HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
976: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
977: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
978: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
979: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
980: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
981: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
982: p_match_type IN VARCHAR2,
983: x_party_max_score OUT NUMBER,
976: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list:=
977: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
978: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
979: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
980: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
981: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
982: p_match_type IN VARCHAR2,
983: x_party_max_score OUT NUMBER,
984: x_ps_max_score OUT NUMBER,
977: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST,
978: p_contact_list IN HZ_PARTY_SEARCH.contact_list:=
979: HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
980: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list:=
981: HZ_PARTY_SEARCH.G_MISS_CONTACT_POINT_LIST,
982: p_match_type IN VARCHAR2,
983: x_party_max_score OUT NUMBER,
984: x_ps_max_score OUT NUMBER,
985: x_contact_max_score OUT NUMBER,
989: l_ps_entered_max_score NUMBER:=0;
990: l_ct_entered_max_score NUMBER:=0;
991: l_cpt_entered_max_score NUMBER:=0;
992: vlist vlisttype;
993: maxscore HZ_PARTY_SEARCH.IDList;
994: l_name VARCHAR2(200);
995: l_idx NUMBER;
996: l_num NUMBER;
997: total NUMBER;
2432: p_party_id NUMBER,
2433: p_party_site_id NUMBER,
2434: p_org_contact_id NUMBER,
2435: p_contact_point_id NUMBER)
2436: RETURN HZ_PARTY_SEARCH.score_rec IS
2437: l_score_rec HZ_PARTY_SEARCH.score_rec;
2438: BEGIN
2439: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2440: 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);
2433: p_party_site_id NUMBER,
2434: p_org_contact_id NUMBER,
2435: p_contact_point_id NUMBER)
2436: RETURN HZ_PARTY_SEARCH.score_rec IS
2437: l_score_rec HZ_PARTY_SEARCH.score_rec;
2438: BEGIN
2439: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2440: 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);
2441: 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);
2465: **********************************************************/
2466:
2467: PROCEDURE find_parties (
2468: p_rule_id IN NUMBER,
2469: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2470: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2471: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2472: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2473: p_restrict_sql IN VARCHAR2,
2466:
2467: PROCEDURE find_parties (
2468: p_rule_id IN NUMBER,
2469: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2470: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2471: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2472: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2473: p_restrict_sql IN VARCHAR2,
2474: p_match_type IN VARCHAR2,
2467: PROCEDURE find_parties (
2468: p_rule_id IN NUMBER,
2469: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2470: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2471: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2472: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2473: p_restrict_sql IN VARCHAR2,
2474: p_match_type IN VARCHAR2,
2475: p_search_merged IN VARCHAR2,
2468: p_rule_id IN NUMBER,
2469: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
2470: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
2471: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
2472: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
2473: p_restrict_sql IN VARCHAR2,
2474: p_match_type IN VARCHAR2,
2475: p_search_merged IN VARCHAR2,
2476: p_dup_party_id IN NUMBER,
2515: l_TX11 VARCHAR2(2000);
2516: l_TX40 VARCHAR2(2000);
2517: l_TX34 VARCHAR2(2000);
2518: l_TX14 VARCHAR2(2000);
2519: H_SCORES HZ_PARTY_SEARCH.score_list;
2520: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
2521: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
2522:
2523: l_score NUMBER;
2516: l_TX40 VARCHAR2(2000);
2517: l_TX34 VARCHAR2(2000);
2518: l_TX14 VARCHAR2(2000);
2519: H_SCORES HZ_PARTY_SEARCH.score_list;
2520: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
2521: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
2522:
2523: l_score NUMBER;
2524: l_idx NUMBER;
2517: l_TX34 VARCHAR2(2000);
2518: l_TX14 VARCHAR2(2000);
2519: H_SCORES HZ_PARTY_SEARCH.score_list;
2520: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
2521: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
2522:
2523: l_score NUMBER;
2524: l_idx NUMBER;
2525: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
2708: /** Private procedure to acquire and score at party site level ***/
2709: 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
2710: l_party_id_idx NUMBER:=1;
2711: l_ctx_id NUMBER;
2712: h_ps_id HZ_PARTY_SEARCH.IDList;
2713: h_ps_party_id HZ_PARTY_SEARCH.IDList;
2714: h_ps_score HZ_PARTY_SEARCH.IDList;
2715: detcnt NUMBER := 1;
2716: BEGIN
2709: 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
2710: l_party_id_idx NUMBER:=1;
2711: l_ctx_id NUMBER;
2712: h_ps_id HZ_PARTY_SEARCH.IDList;
2713: h_ps_party_id HZ_PARTY_SEARCH.IDList;
2714: h_ps_score HZ_PARTY_SEARCH.IDList;
2715: detcnt NUMBER := 1;
2716: BEGIN
2717: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2710: l_party_id_idx NUMBER:=1;
2711: l_ctx_id NUMBER;
2712: h_ps_id HZ_PARTY_SEARCH.IDList;
2713: h_ps_party_id HZ_PARTY_SEARCH.IDList;
2714: h_ps_score HZ_PARTY_SEARCH.IDList;
2715: detcnt NUMBER := 1;
2716: BEGIN
2717: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2718: 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);
2830: /** Private procedure to acquire and score at contact point level ***/
2831: 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
2832: l_party_id_idx NUMBER:=1;
2833: l_ctx_id NUMBER;
2834: h_ct_id HZ_PARTY_SEARCH.IDList;
2835: h_ct_party_id HZ_PARTY_SEARCH.IDList;
2836: h_ct_score HZ_PARTY_SEARCH.IDList;
2837: detcnt NUMBER := 1;
2838: BEGIN
2831: 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
2832: l_party_id_idx NUMBER:=1;
2833: l_ctx_id NUMBER;
2834: h_ct_id HZ_PARTY_SEARCH.IDList;
2835: h_ct_party_id HZ_PARTY_SEARCH.IDList;
2836: h_ct_score HZ_PARTY_SEARCH.IDList;
2837: detcnt NUMBER := 1;
2838: BEGIN
2839: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2832: l_party_id_idx NUMBER:=1;
2833: l_ctx_id NUMBER;
2834: h_ct_id HZ_PARTY_SEARCH.IDList;
2835: h_ct_party_id HZ_PARTY_SEARCH.IDList;
2836: h_ct_score HZ_PARTY_SEARCH.IDList;
2837: detcnt NUMBER := 1;
2838: BEGIN
2839: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
2840: 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);
2939: /** Private procedure to acquire and score at contact point level ***/
2940: 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
2941: l_party_id_idx NUMBER:=1;
2942: l_ctx_id NUMBER;
2943: h_cpt_id HZ_PARTY_SEARCH.IDList;
2944: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
2945: h_cpt_score HZ_PARTY_SEARCH.IDList;
2946: detcnt NUMBER := 1;
2947: l_cpt_flag VARCHAR2(1) := 'N';
2940: 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
2941: l_party_id_idx NUMBER:=1;
2942: l_ctx_id NUMBER;
2943: h_cpt_id HZ_PARTY_SEARCH.IDList;
2944: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
2945: h_cpt_score HZ_PARTY_SEARCH.IDList;
2946: detcnt NUMBER := 1;
2947: l_cpt_flag VARCHAR2(1) := 'N';
2948: is_a_match VARCHAR2(1) := 'Y';
2941: l_party_id_idx NUMBER:=1;
2942: l_ctx_id NUMBER;
2943: h_cpt_id HZ_PARTY_SEARCH.IDList;
2944: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
2945: h_cpt_score HZ_PARTY_SEARCH.IDList;
2946: detcnt NUMBER := 1;
2947: l_cpt_flag VARCHAR2(1) := 'N';
2948: is_a_match VARCHAR2(1) := 'Y';
2949: BEGIN
3428: END find_parties;
3429:
3430: PROCEDURE find_persons (
3431: p_rule_id IN NUMBER,
3432: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3433: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3434: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3435: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3436: p_restrict_sql IN VARCHAR2,
3429:
3430: PROCEDURE find_persons (
3431: p_rule_id IN NUMBER,
3432: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3433: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3434: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3435: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3436: p_restrict_sql IN VARCHAR2,
3437: p_match_type IN VARCHAR2,
3430: PROCEDURE find_persons (
3431: p_rule_id IN NUMBER,
3432: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3433: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3434: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3435: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3436: p_restrict_sql IN VARCHAR2,
3437: p_match_type IN VARCHAR2,
3438: p_search_merged IN VARCHAR2,
3431: p_rule_id IN NUMBER,
3432: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
3433: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
3434: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
3435: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
3436: p_restrict_sql IN VARCHAR2,
3437: p_match_type IN VARCHAR2,
3438: p_search_merged IN VARCHAR2,
3439: p_dup_party_id IN NUMBER,
3478: l_TX11 VARCHAR2(2000);
3479: l_TX40 VARCHAR2(2000);
3480: l_TX34 VARCHAR2(2000);
3481: l_TX14 VARCHAR2(2000);
3482: H_SCORES HZ_PARTY_SEARCH.score_list;
3483: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3484: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3485:
3486: l_score NUMBER;
3479: l_TX40 VARCHAR2(2000);
3480: l_TX34 VARCHAR2(2000);
3481: l_TX14 VARCHAR2(2000);
3482: H_SCORES HZ_PARTY_SEARCH.score_list;
3483: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3484: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3485:
3486: l_score NUMBER;
3487: l_idx NUMBER;
3480: l_TX34 VARCHAR2(2000);
3481: l_TX14 VARCHAR2(2000);
3482: H_SCORES HZ_PARTY_SEARCH.score_list;
3483: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
3484: H_PARTY_ID_LIST HZ_PARTY_SEARCH.IDList;
3485:
3486: l_score NUMBER;
3487: l_idx NUMBER;
3488: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
3719: /** Private procedure to acquire and score at party site level ***/
3720: 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
3721: l_party_id_idx NUMBER:=1;
3722: l_ctx_id NUMBER;
3723: h_ps_id HZ_PARTY_SEARCH.IDList;
3724: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3725: h_ps_score HZ_PARTY_SEARCH.IDList;
3726: detcnt NUMBER := 1;
3727: l_person_id NUMBER;
3720: 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
3721: l_party_id_idx NUMBER:=1;
3722: l_ctx_id NUMBER;
3723: h_ps_id HZ_PARTY_SEARCH.IDList;
3724: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3725: h_ps_score HZ_PARTY_SEARCH.IDList;
3726: detcnt NUMBER := 1;
3727: l_person_id NUMBER;
3728: BEGIN
3721: l_party_id_idx NUMBER:=1;
3722: l_ctx_id NUMBER;
3723: h_ps_id HZ_PARTY_SEARCH.IDList;
3724: h_ps_party_id HZ_PARTY_SEARCH.IDList;
3725: h_ps_score HZ_PARTY_SEARCH.IDList;
3726: detcnt NUMBER := 1;
3727: l_person_id NUMBER;
3728: BEGIN
3729: SAVEPOINT eval_start;
3818: /** Private procedure to acquire and score at party site level ***/
3819: PROCEDURE eval_contact_level(p_contact_contains_str VARCHAR2,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3820: l_party_id_idx NUMBER:=1;
3821: l_ctx_id NUMBER;
3822: h_ct_id HZ_PARTY_SEARCH.IDList;
3823: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3824: h_ct_score HZ_PARTY_SEARCH.IDList;
3825: detcnt NUMBER := 1;
3826: l_person_id NUMBER;
3819: PROCEDURE eval_contact_level(p_contact_contains_str VARCHAR2,p_ins_details VARCHAR2,p_emax_score NUMBER) IS
3820: l_party_id_idx NUMBER:=1;
3821: l_ctx_id NUMBER;
3822: h_ct_id HZ_PARTY_SEARCH.IDList;
3823: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3824: h_ct_score HZ_PARTY_SEARCH.IDList;
3825: detcnt NUMBER := 1;
3826: l_person_id NUMBER;
3827: BEGIN
3820: l_party_id_idx NUMBER:=1;
3821: l_ctx_id NUMBER;
3822: h_ct_id HZ_PARTY_SEARCH.IDList;
3823: h_ct_party_id HZ_PARTY_SEARCH.IDList;
3824: h_ct_score HZ_PARTY_SEARCH.IDList;
3825: detcnt NUMBER := 1;
3826: l_person_id NUMBER;
3827: BEGIN
3828: SAVEPOINT eval_start;
3876: /** Private procedure to acquire and score at contact point level ***/
3877: 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
3878: l_party_id_idx NUMBER:=1;
3879: l_ctx_id NUMBER;
3880: h_cpt_id HZ_PARTY_SEARCH.IDList;
3881: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3882: h_cpt_score HZ_PARTY_SEARCH.IDList;
3883: detcnt NUMBER := 1;
3884: l_person_id NUMBER;
3877: 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
3878: l_party_id_idx NUMBER:=1;
3879: l_ctx_id NUMBER;
3880: h_cpt_id HZ_PARTY_SEARCH.IDList;
3881: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3882: h_cpt_score HZ_PARTY_SEARCH.IDList;
3883: detcnt NUMBER := 1;
3884: l_person_id NUMBER;
3885: is_a_match VARCHAR2(1) := 'Y';
3878: l_party_id_idx NUMBER:=1;
3879: l_ctx_id NUMBER;
3880: h_cpt_id HZ_PARTY_SEARCH.IDList;
3881: h_cpt_party_id HZ_PARTY_SEARCH.IDList;
3882: h_cpt_score HZ_PARTY_SEARCH.IDList;
3883: detcnt NUMBER := 1;
3884: l_person_id NUMBER;
3885: is_a_match VARCHAR2(1) := 'Y';
3886: l_cpt_flag VARCHAR2(1) := 'N';
4289: END find_persons;
4290:
4291: PROCEDURE find_persons (
4292: p_rule_id IN NUMBER,
4293: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4294: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4295: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4296: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4297: p_restrict_sql IN VARCHAR2,
4290:
4291: PROCEDURE find_persons (
4292: p_rule_id IN NUMBER,
4293: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4294: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4295: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4296: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4297: p_restrict_sql IN VARCHAR2,
4298: p_match_type IN VARCHAR2,
4291: PROCEDURE find_persons (
4292: p_rule_id IN NUMBER,
4293: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4294: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4295: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4296: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4297: p_restrict_sql IN VARCHAR2,
4298: p_match_type IN VARCHAR2,
4299: p_search_merged IN VARCHAR2,
4292: p_rule_id IN NUMBER,
4293: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4294: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4295: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4296: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4297: p_restrict_sql IN VARCHAR2,
4298: p_match_type IN VARCHAR2,
4299: p_search_merged IN VARCHAR2,
4300: p_ins_details IN VARCHAR2,
4306: 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);
4307: END;
4308: PROCEDURE find_party_details (
4309: p_rule_id IN NUMBER,
4310: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4311: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4312: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4313: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4314: p_restrict_sql IN VARCHAR2,
4307: END;
4308: PROCEDURE find_party_details (
4309: p_rule_id IN NUMBER,
4310: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4311: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4312: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4313: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4314: p_restrict_sql IN VARCHAR2,
4315: p_match_type IN VARCHAR2,
4308: PROCEDURE find_party_details (
4309: p_rule_id IN NUMBER,
4310: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4311: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4312: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4313: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4314: p_restrict_sql IN VARCHAR2,
4315: p_match_type IN VARCHAR2,
4316: p_search_merged IN VARCHAR2,
4309: p_rule_id IN NUMBER,
4310: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
4311: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
4312: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
4313: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
4314: p_restrict_sql IN VARCHAR2,
4315: p_match_type IN VARCHAR2,
4316: p_search_merged IN VARCHAR2,
4317: x_search_ctx_id OUT NUMBER,
4366: x_dup_set_id OUT NUMBER,
4367: x_search_ctx_id OUT NUMBER,
4368: x_num_matches OUT NUMBER
4369: ) IS
4370: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4371: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4372: l_contact_list HZ_PARTY_SEARCH.contact_list;
4373: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4374: l_match_idx NUMBER;
4367: x_search_ctx_id OUT NUMBER,
4368: x_num_matches OUT NUMBER
4369: ) IS
4370: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4371: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4372: l_contact_list HZ_PARTY_SEARCH.contact_list;
4373: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4374: l_match_idx NUMBER;
4375:
4368: x_num_matches OUT NUMBER
4369: ) IS
4370: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4371: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4372: l_contact_list HZ_PARTY_SEARCH.contact_list;
4373: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4374: l_match_idx NUMBER;
4375:
4376: --Fix for bug 4417124
4369: ) IS
4370: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4371: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4372: l_contact_list HZ_PARTY_SEARCH.contact_list;
4373: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4374: l_match_idx NUMBER;
4375:
4376: --Fix for bug 4417124
4377: l_use_contact_addr_info BOOLEAN := TRUE;
4482: x_search_ctx_id OUT NUMBER,
4483: x_num_matches OUT NUMBER
4484: ) IS
4485:
4486: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4487: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4488: l_contact_list HZ_PARTY_SEARCH.contact_list;
4489: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4490: contact_point_ids HZ_PARTY_SEARCH.IDList;
4483: x_num_matches OUT NUMBER
4484: ) IS
4485:
4486: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4487: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4488: l_contact_list HZ_PARTY_SEARCH.contact_list;
4489: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4490: contact_point_ids HZ_PARTY_SEARCH.IDList;
4491: p_party_site_list HZ_PARTY_SEARCH.IDList;
4484: ) IS
4485:
4486: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4487: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4488: l_contact_list HZ_PARTY_SEARCH.contact_list;
4489: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4490: contact_point_ids HZ_PARTY_SEARCH.IDList;
4491: p_party_site_list HZ_PARTY_SEARCH.IDList;
4492: p_contact_ids HZ_PARTY_SEARCH.IDList;
4485:
4486: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4487: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4488: l_contact_list HZ_PARTY_SEARCH.contact_list;
4489: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4490: contact_point_ids HZ_PARTY_SEARCH.IDList;
4491: p_party_site_list HZ_PARTY_SEARCH.IDList;
4492: p_contact_ids HZ_PARTY_SEARCH.IDList;
4493: l_match_idx NUMBER;
4486: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4487: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4488: l_contact_list HZ_PARTY_SEARCH.contact_list;
4489: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4490: contact_point_ids HZ_PARTY_SEARCH.IDList;
4491: p_party_site_list HZ_PARTY_SEARCH.IDList;
4492: p_contact_ids HZ_PARTY_SEARCH.IDList;
4493: l_match_idx NUMBER;
4494: cursor get_cpts_for_party_sites is select contact_point_id
4487: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4488: l_contact_list HZ_PARTY_SEARCH.contact_list;
4489: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4490: contact_point_ids HZ_PARTY_SEARCH.IDList;
4491: p_party_site_list HZ_PARTY_SEARCH.IDList;
4492: p_contact_ids HZ_PARTY_SEARCH.IDList;
4493: l_match_idx NUMBER;
4494: cursor get_cpts_for_party_sites is select contact_point_id
4495: from hz_contact_points
4488: l_contact_list HZ_PARTY_SEARCH.contact_list;
4489: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4490: contact_point_ids HZ_PARTY_SEARCH.IDList;
4491: p_party_site_list HZ_PARTY_SEARCH.IDList;
4492: p_contact_ids HZ_PARTY_SEARCH.IDList;
4493: l_match_idx NUMBER;
4494: cursor get_cpts_for_party_sites is select contact_point_id
4495: from hz_contact_points
4496: where owner_table_name = 'HZ_PARTY_SITES'
4517:
4518: get_search_criteria (
4519: null,
4520: p_party_site_list,
4521: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4522: contact_point_ids,
4523: l_party_search_rec,
4524: l_party_site_list,
4525: l_contact_list,
4567: x_search_ctx_id OUT NUMBER,
4568: x_num_matches OUT NUMBER
4569: ) IS
4570:
4571: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4572: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4573: l_contact_list HZ_PARTY_SEARCH.contact_list;
4574: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4575: contact_point_ids HZ_PARTY_SEARCH.IDList;
4568: x_num_matches OUT NUMBER
4569: ) IS
4570:
4571: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4572: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4573: l_contact_list HZ_PARTY_SEARCH.contact_list;
4574: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4575: contact_point_ids HZ_PARTY_SEARCH.IDList;
4576: p_party_site_list HZ_PARTY_SEARCH.IDList;
4569: ) IS
4570:
4571: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4572: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4573: l_contact_list HZ_PARTY_SEARCH.contact_list;
4574: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4575: contact_point_ids HZ_PARTY_SEARCH.IDList;
4576: p_party_site_list HZ_PARTY_SEARCH.IDList;
4577: p_contact_ids HZ_PARTY_SEARCH.IDList;
4570:
4571: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4572: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4573: l_contact_list HZ_PARTY_SEARCH.contact_list;
4574: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4575: contact_point_ids HZ_PARTY_SEARCH.IDList;
4576: p_party_site_list HZ_PARTY_SEARCH.IDList;
4577: p_contact_ids HZ_PARTY_SEARCH.IDList;
4578: l_match_idx NUMBER;
4571: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4572: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4573: l_contact_list HZ_PARTY_SEARCH.contact_list;
4574: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4575: contact_point_ids HZ_PARTY_SEARCH.IDList;
4576: p_party_site_list HZ_PARTY_SEARCH.IDList;
4577: p_contact_ids HZ_PARTY_SEARCH.IDList;
4578: l_match_idx NUMBER;
4579: cursor get_cpt_for_contact_id is select contact_point_id
4572: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4573: l_contact_list HZ_PARTY_SEARCH.contact_list;
4574: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4575: contact_point_ids HZ_PARTY_SEARCH.IDList;
4576: p_party_site_list HZ_PARTY_SEARCH.IDList;
4577: p_contact_ids HZ_PARTY_SEARCH.IDList;
4578: l_match_idx NUMBER;
4579: cursor get_cpt_for_contact_id is select contact_point_id
4580: from hz_org_contacts a, hz_relationships b, hz_contact_points c
4573: l_contact_list HZ_PARTY_SEARCH.contact_list;
4574: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4575: contact_point_ids HZ_PARTY_SEARCH.IDList;
4576: p_party_site_list HZ_PARTY_SEARCH.IDList;
4577: p_contact_ids HZ_PARTY_SEARCH.IDList;
4578: l_match_idx NUMBER;
4579: cursor get_cpt_for_contact_id is select contact_point_id
4580: from hz_org_contacts a, hz_relationships b, hz_contact_points c
4581: where a.party_relationship_id = b.relationship_id
4604: CLOSE get_cpt_for_contact_id;
4605:
4606: get_search_criteria (
4607: null,
4608: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4609: p_contact_ids,
4610: contact_point_ids,
4611: l_party_search_rec,
4612: l_party_site_list,
4655: p_match_type IN VARCHAR2,
4656: x_search_ctx_id OUT NUMBER,
4657: x_num_matches OUT NUMBER
4658: ) IS
4659: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4660: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4661: l_contact_list HZ_PARTY_SEARCH.contact_list;
4662: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4663: contact_point_ids HZ_PARTY_SEARCH.IDList;
4656: x_search_ctx_id OUT NUMBER,
4657: x_num_matches OUT NUMBER
4658: ) IS
4659: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4660: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4661: l_contact_list HZ_PARTY_SEARCH.contact_list;
4662: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4663: contact_point_ids HZ_PARTY_SEARCH.IDList;
4664: p_party_site_list HZ_PARTY_SEARCH.IDList;
4657: x_num_matches OUT NUMBER
4658: ) IS
4659: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4660: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4661: l_contact_list HZ_PARTY_SEARCH.contact_list;
4662: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4663: contact_point_ids HZ_PARTY_SEARCH.IDList;
4664: p_party_site_list HZ_PARTY_SEARCH.IDList;
4665: p_contact_ids HZ_PARTY_SEARCH.IDList;
4658: ) IS
4659: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4660: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4661: l_contact_list HZ_PARTY_SEARCH.contact_list;
4662: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4663: contact_point_ids HZ_PARTY_SEARCH.IDList;
4664: p_party_site_list HZ_PARTY_SEARCH.IDList;
4665: p_contact_ids HZ_PARTY_SEARCH.IDList;
4666: l_match_idx NUMBER;
4659: l_party_search_rec HZ_PARTY_SEARCH.party_search_rec_type;
4660: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4661: l_contact_list HZ_PARTY_SEARCH.contact_list;
4662: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4663: contact_point_ids HZ_PARTY_SEARCH.IDList;
4664: p_party_site_list HZ_PARTY_SEARCH.IDList;
4665: p_contact_ids HZ_PARTY_SEARCH.IDList;
4666: l_match_idx NUMBER;
4667:
4660: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4661: l_contact_list HZ_PARTY_SEARCH.contact_list;
4662: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4663: contact_point_ids HZ_PARTY_SEARCH.IDList;
4664: p_party_site_list HZ_PARTY_SEARCH.IDList;
4665: p_contact_ids HZ_PARTY_SEARCH.IDList;
4666: l_match_idx NUMBER;
4667:
4668: BEGIN
4661: l_contact_list HZ_PARTY_SEARCH.contact_list;
4662: l_contact_point_list HZ_PARTY_SEARCH.contact_point_list;
4663: contact_point_ids HZ_PARTY_SEARCH.IDList;
4664: p_party_site_list HZ_PARTY_SEARCH.IDList;
4665: p_contact_ids HZ_PARTY_SEARCH.IDList;
4666: l_match_idx NUMBER;
4667:
4668: BEGIN
4669: IF fnd_log.level_procedure>=fnd_log.g_current_runtime_level THEN
4678: END IF;
4679: contact_point_ids(1) := p_contact_point_id;
4680: get_search_criteria (
4681: null,
4682: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4683: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4684: contact_point_ids,
4685: l_party_search_rec,
4686: l_party_site_list,
4679: contact_point_ids(1) := p_contact_point_id;
4680: get_search_criteria (
4681: null,
4682: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4683: HZ_PARTY_SEARCH.G_MISS_ID_LIST,
4684: contact_point_ids,
4685: l_party_search_rec,
4686: l_party_site_list,
4687: l_contact_list,
4832: ) IS
4833: TYPE AttrList IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER;
4834: l_match_idx NUMBER;
4835: AttrVals AttrList;
4836: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4837: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4838: l_contact_list HZ_PARTY_SEARCH.contact_list;
4839: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4840: l_dup_set_id NUMBER;
4833: TYPE AttrList IS TABLE OF VARCHAR2(2000) INDEX BY BINARY_INTEGER;
4834: l_match_idx NUMBER;
4835: AttrVals AttrList;
4836: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4837: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4838: l_contact_list HZ_PARTY_SEARCH.contact_list;
4839: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4840: l_dup_set_id NUMBER;
4841: l_idx NUMBER;
4834: l_match_idx NUMBER;
4835: AttrVals AttrList;
4836: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4837: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4838: l_contact_list HZ_PARTY_SEARCH.contact_list;
4839: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4840: l_dup_set_id NUMBER;
4841: l_idx NUMBER;
4842: l_cpt_type VARCHAR2(255);
4835: AttrVals AttrList;
4836: l_party_rec HZ_PARTY_SEARCH.party_search_rec_type;
4837: l_party_site_list HZ_PARTY_SEARCH.party_site_list;
4838: l_contact_list HZ_PARTY_SEARCH.contact_list;
4839: l_cpt_list HZ_PARTY_SEARCH.contact_point_list;
4840: l_dup_set_id NUMBER;
4841: l_idx NUMBER;
4842: l_cpt_type VARCHAR2(255);
4843: FIRST BOOLEAN := TRUE;
5025:
5026: PROCEDURE get_matching_party_sites (
5027: p_rule_id IN NUMBER,
5028: p_party_id IN NUMBER,
5029: p_party_site_list IN HZ_PARTY_SEARCH.PARTY_SITE_LIST,
5030: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5031: p_restrict_sql IN VARCHAR2,
5032: p_match_type IN VARCHAR2,
5033: p_dup_party_site_id IN NUMBER,
5026: PROCEDURE get_matching_party_sites (
5027: p_rule_id IN NUMBER,
5028: p_party_id IN NUMBER,
5029: p_party_site_list IN HZ_PARTY_SEARCH.PARTY_SITE_LIST,
5030: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5031: p_restrict_sql IN VARCHAR2,
5032: p_match_type IN VARCHAR2,
5033: p_dup_party_site_id IN NUMBER,
5034: x_search_ctx_id OUT NUMBER,
5059: l_TX4 VARCHAR2(2000);
5060: l_TX10 VARCHAR2(2000);
5061: l_TX11 VARCHAR2(2000);
5062: l_TX14 VARCHAR2(2000);
5063: H_SCORES HZ_PARTY_SEARCH.score_list;
5064:
5065: l_score NUMBER;
5066: l_idx NUMBER;
5067: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
5090: defps NUMBER :=0;
5091: defct NUMBER :=0;
5092: defcpt NUMBER :=0;
5093: l_index NUMBER;
5094: l_match_ps_list HZ_PARTY_SEARCH.IDList;
5095: l_cnt NUMBER:=1;
5096:
5097:
5098: BEGIN
5114: l_match_str := ' AND ';
5115: ELSIF p_match_type = 'OR' THEN
5116: l_match_str := ' OR ';
5117: END IF;
5118: 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);
5119: g_score_until_thresh := false;
5120: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
5121:
5122: -- ************************************************************
5122: -- ************************************************************
5123: -- STEP 2. Setup of intermedia query strings for Acquisition query
5124: l_party_site_contains_str := INIT_PARTY_SITES_QUERY(l_match_str,l_tmp);
5125: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
5126: 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);
5127:
5128: -- Setup Search Context ID
5129: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
5130: x_search_ctx_id := l_search_ctx_id;
5265:
5266: PROCEDURE get_matching_contacts (
5267: p_rule_id IN NUMBER,
5268: p_party_id IN NUMBER,
5269: p_contact_list IN HZ_PARTY_SEARCH.CONTACT_LIST,
5270: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5271: p_restrict_sql IN VARCHAR2,
5272: p_match_type IN VARCHAR2,
5273: p_dup_contact_id IN NUMBER,
5266: PROCEDURE get_matching_contacts (
5267: p_rule_id IN NUMBER,
5268: p_party_id IN NUMBER,
5269: p_contact_list IN HZ_PARTY_SEARCH.CONTACT_LIST,
5270: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5271: p_restrict_sql IN VARCHAR2,
5272: p_match_type IN VARCHAR2,
5273: p_dup_contact_id IN NUMBER,
5274: x_search_ctx_id OUT NUMBER,
5291: l_entered_max_score NUMBER;
5292: FIRST BOOLEAN;
5293: l_search_ctx_id NUMBER; -- Generated Search Context ID
5294:
5295: H_SCORES HZ_PARTY_SEARCH.score_list;
5296:
5297: l_score NUMBER;
5298: l_idx NUMBER;
5299: l_party_cur HZ_PARTY_STAGE.StageCurTyp;
5319: l_party_max_score NUMBER;
5320: l_ps_max_score NUMBER;
5321: l_contact_max_score NUMBER;
5322: l_cpt_max_score NUMBER;
5323: l_match_contact_list HZ_PARTY_SEARCH.IDList;
5324: l_cnt NUMBER:=1;
5325:
5326:
5327: BEGIN
5343: l_match_str := ' AND ';
5344: ELSIF p_match_type = 'OR' THEN
5345: l_match_str := ' OR ';
5346: END IF;
5347: 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);
5348: g_score_until_thresh := false;
5349: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
5350:
5351: -- ************************************************************
5351: -- ************************************************************
5352: -- STEP 2. Setup of intermedia query strings for Acquisition query
5353: l_contact_contains_str := INIT_CONTACTS_QUERY(l_match_str,l_tmp);
5354: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
5355: 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);
5356:
5357: -- Setup Search Context ID
5358: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
5359: x_search_ctx_id := l_search_ctx_id;
5490:
5491: PROCEDURE get_matching_contact_points (
5492: p_rule_id IN NUMBER,
5493: p_party_id IN NUMBER,
5494: p_contact_point_list IN HZ_PARTY_SEARCH.CONTACT_POINT_LIST,
5495: p_restrict_sql IN VARCHAR2,
5496: p_match_type IN VARCHAR2,
5497: p_dup_contact_point_id IN NUMBER,
5498: x_search_ctx_id OUT NUMBER,
5519: l_cpt_ps_id NUMBER;
5520: l_cpt_contact_id NUMBER;
5521: l_contact_pt_id NUMBER;
5522: l_cpt_type VARCHAR2(100);
5523: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
5524: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
5525: H_SCORE HZ_PARTY_SEARCH.IDList;
5526:
5527: cnt NUMBER :=0;
5520: l_cpt_contact_id NUMBER;
5521: l_contact_pt_id NUMBER;
5522: l_cpt_type VARCHAR2(100);
5523: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
5524: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
5525: H_SCORE HZ_PARTY_SEARCH.IDList;
5526:
5527: cnt NUMBER :=0;
5528: l_party_max_score NUMBER;
5521: l_contact_pt_id NUMBER;
5522: l_cpt_type VARCHAR2(100);
5523: H_PARTY_ID HZ_PARTY_SEARCH.IDList;
5524: H_CONTACT_POINT_ID HZ_PARTY_SEARCH.IDList;
5525: H_SCORE HZ_PARTY_SEARCH.IDList;
5526:
5527: cnt NUMBER :=0;
5528: l_party_max_score NUMBER;
5529: l_ps_max_score NUMBER;
5550: l_match_str := ' AND ';
5551: ELSIF p_match_type = 'OR' THEN
5552: l_match_str := ' OR ';
5553: END IF;
5554: l_entered_max_score:= init_search(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
5555: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST, HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
5556: p_contact_point_list,l_match_str, l_party_max_score, l_ps_max_score, l_contact_max_score, l_cpt_max_score);
5557: g_score_until_thresh := false;
5558: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
5551: ELSIF p_match_type = 'OR' THEN
5552: l_match_str := ' OR ';
5553: END IF;
5554: l_entered_max_score:= init_search(HZ_PARTY_SEARCH.G_MISS_PARTY_SEARCH_REC,
5555: HZ_PARTY_SEARCH.G_MISS_PARTY_SITE_LIST, HZ_PARTY_SEARCH.G_MISS_CONTACT_LIST,
5556: p_contact_point_list,l_match_str, l_party_max_score, l_ps_max_score, l_contact_max_score, l_cpt_max_score);
5557: g_score_until_thresh := false;
5558: IF l_entered_max_score = 0 THEN l_entered_max_score:=1; END IF;
5559:
5559:
5560: -- ************************************************************
5561: -- STEP 2. Setup of intermedia query strings for Acquisition query
5562: l_contact_pt_contains_str := INIT_CONTACT_POINTS_QUERY(l_match_str,l_tmp);
5563: 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);
5564:
5565: -- Setup Search Context ID
5566: SELECT hz_search_ctx_s.nextval INTO l_search_ctx_id FROM dual;
5567: x_search_ctx_id := l_search_ctx_id;
5634:
5635: PROCEDURE get_score_details (
5636: p_rule_id IN NUMBER,
5637: p_party_id IN NUMBER,
5638: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5639: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5640: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5641: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5642: x_search_ctx_id IN OUT NUMBER
5635: PROCEDURE get_score_details (
5636: p_rule_id IN NUMBER,
5637: p_party_id IN NUMBER,
5638: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5639: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5640: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5641: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5642: x_search_ctx_id IN OUT NUMBER
5643: ) IS
5636: p_rule_id IN NUMBER,
5637: p_party_id IN NUMBER,
5638: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5639: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5640: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5641: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5642: x_search_ctx_id IN OUT NUMBER
5643: ) IS
5644:
5637: p_party_id IN NUMBER,
5638: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
5639: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
5640: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
5641: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
5642: x_search_ctx_id IN OUT NUMBER
5643: ) IS
5644:
5645: -- Strings to hold the generated Intermedia query strings
5686: l_TX34 VARCHAR2(2000);
5687: l_max_TX34 VARCHAR2(2000);
5688: l_TX14 VARCHAR2(2000);
5689: l_max_TX14 VARCHAR2(2000);
5690: H_SCORES HZ_PARTY_SEARCH.score_list;
5691:
5692: l_score NUMBER;
5693: l_match_idx NUMBER;
5694: l_idx NUMBER;
5859: ************************************************/
5860:
5861: PROCEDURE get_party_for_search (
5862: p_party_id IN NUMBER,
5863: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5864: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5865: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5866: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5867: ) IS
5860:
5861: PROCEDURE get_party_for_search (
5862: p_party_id IN NUMBER,
5863: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5864: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5865: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5866: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5867: ) IS
5868: l_party_id NUMBER;
5861: PROCEDURE get_party_for_search (
5862: p_party_id IN NUMBER,
5863: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5864: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5865: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5866: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5867: ) IS
5868: l_party_id NUMBER;
5869: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5862: p_party_id IN NUMBER,
5863: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5864: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5865: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5866: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5867: ) IS
5868: l_party_id NUMBER;
5869: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5870: l_contact_ids HZ_PARTY_SEARCH.IDList;
5865: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5866: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5867: ) IS
5868: l_party_id NUMBER;
5869: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5870: l_contact_ids HZ_PARTY_SEARCH.IDList;
5871: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
5872: ps NUMBER :=1;
5873: cpt NUMBER :=1;
5866: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5867: ) IS
5868: l_party_id NUMBER;
5869: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5870: l_contact_ids HZ_PARTY_SEARCH.IDList;
5871: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
5872: ps NUMBER :=1;
5873: cpt NUMBER :=1;
5874: ct NUMBER :=1;
5867: ) IS
5868: l_party_id NUMBER;
5869: l_party_site_ids HZ_PARTY_SEARCH.IDList;
5870: l_contact_ids HZ_PARTY_SEARCH.IDList;
5871: l_contact_pt_ids HZ_PARTY_SEARCH.IDList;
5872: ps NUMBER :=1;
5873: cpt NUMBER :=1;
5874: ct NUMBER :=1;
5875: l_use_contact_info varchar2(1);
5931: END get_party_for_search;
5932:
5933: PROCEDURE get_search_criteria (
5934: p_party_id IN NUMBER,
5935: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5937: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5938: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5939: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5932:
5933: PROCEDURE get_search_criteria (
5934: p_party_id IN NUMBER,
5935: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5937: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5938: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5939: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5940: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5933: PROCEDURE get_search_criteria (
5934: p_party_id IN NUMBER,
5935: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5937: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5938: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5939: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5940: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5941: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5934: p_party_id IN NUMBER,
5935: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5937: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5938: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5939: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5940: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5941: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5942: ) IS
5935: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
5936: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5937: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5938: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5939: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5940: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5941: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5942: ) IS
5943: BEGIN
5936: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
5937: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5938: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5939: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5940: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5941: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5942: ) IS
5943: BEGIN
5944:
5937: p_contact_pt_ids IN HZ_PARTY_SEARCH.IDList,
5938: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type,
5939: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list,
5940: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list,
5941: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
5942: ) IS
5943: BEGIN
5944:
5945: IF fnd_log.level_statement>=fnd_log.g_current_runtime_level THEN
5977: ************************************************/
5978:
5979: PROCEDURE get_party_rec (
5980: p_party_id IN NUMBER,
5981: x_party_search_rec OUT NOCOPY HZ_PARTY_SEARCH.party_search_rec_type
5982: ) IS
5983: l_party_type VARCHAR2(255);
5984: BEGIN
5985:
6040: the party site search record structure
6041: ************************************************/
6042:
6043: PROCEDURE get_party_site_rec (
6044: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
6045: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list
6046: ) IS
6047: CURSOR c_party_sites(cp_party_site_id NUMBER) IS
6048: SELECT party_site_id
6041: ************************************************/
6042:
6043: PROCEDURE get_party_site_rec (
6044: p_party_site_ids IN HZ_PARTY_SEARCH.IDList,
6045: x_party_site_list OUT NOCOPY HZ_PARTY_SEARCH.party_site_list
6046: ) IS
6047: CURSOR c_party_sites(cp_party_site_id NUMBER) IS
6048: SELECT party_site_id
6049: ,translate(HZ_LOCATIONS.CITY, '%',' ')
6102: the contact search record structure
6103: ************************************************/
6104:
6105: PROCEDURE get_contact_rec (
6106: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
6107: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list
6108: ) IS
6109: CURSOR c_contacts(cp_org_contact_id NUMBER) IS
6110: SELECT org_contact_id
6103: ************************************************/
6104:
6105: PROCEDURE get_contact_rec (
6106: p_contact_ids IN HZ_PARTY_SEARCH.IDList,
6107: x_contact_list OUT NOCOPY HZ_PARTY_SEARCH.contact_list
6108: ) IS
6109: CURSOR c_contacts(cp_org_contact_id NUMBER) IS
6110: SELECT org_contact_id
6111: FROM HZ_ORG_CONTACTS, HZ_RELATIONSHIPS, HZ_PERSON_PROFILES
6158: the contact point search record structure
6159: ************************************************/
6160:
6161: PROCEDURE get_contact_point_rec (
6162: p_contact_point_ids IN HZ_PARTY_SEARCH.IDList,
6163: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6164: ) IS
6165:
6166: -- Cursor to fetch primary contact points for party
6159: ************************************************/
6160:
6161: PROCEDURE get_contact_point_rec (
6162: p_contact_point_ids IN HZ_PARTY_SEARCH.IDList,
6163: x_contact_point_list OUT NOCOPY HZ_PARTY_SEARCH.contact_point_list
6164: ) IS
6165:
6166: -- Cursor to fetch primary contact points for party
6167: CURSOR c_cpts(cp_contact_point_id NUMBER) IS
6213: ************************************************/
6214:
6215: PROCEDURE MAP_PARTY_REC(
6216: p_search_ctx IN BOOLEAN,
6217: p_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6218: x_entered_max_score OUT NUMBER,
6219: x_stage_rec IN OUT NOCOPY HZ_PARTY_STAGE.party_stage_rec_type
6220: ) IS
6221: tmp VARCHAR2(4000);
6428: ************************************************/
6429:
6430: PROCEDURE MAP_PARTY_SITE_REC(
6431: p_search_ctx IN BOOLEAN,
6432: p_search_list IN HZ_PARTY_SEARCH.party_site_list,
6433: x_entered_max_score OUT NUMBER,
6434: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.party_site_stage_list
6435: ) IS
6436: l_current_max_score NUMBER;
6640: ************************************************/
6641:
6642: PROCEDURE MAP_CONTACT_REC(
6643: p_search_ctx IN BOOLEAN,
6644: p_search_list IN HZ_PARTY_SEARCH.contact_list,
6645: x_entered_max_score OUT NUMBER,
6646: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.contact_stage_list
6647: ) IS
6648: l_current_max_score NUMBER;
6682: ************************************************/
6683:
6684: PROCEDURE MAP_CONTACT_POINT_REC(
6685: p_search_ctx IN BOOLEAN,
6686: p_search_list IN HZ_PARTY_SEARCH.contact_point_list,
6687: x_entered_max_score OUT NUMBER,
6688: x_stage_list IN OUT NOCOPY HZ_PARTY_STAGE.contact_pt_stage_list
6689: ) IS
6690: l_current_max_score NUMBER;
6748: 2. Contact Point Type is not null for each condition
6749: ************************************************/
6750:
6751: FUNCTION check_prim_cond(
6752: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6753: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6754: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6755: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6756: RETURN BOOLEAN IS
6749: ************************************************/
6750:
6751: FUNCTION check_prim_cond(
6752: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6753: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6754: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6755: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6756: RETURN BOOLEAN IS
6757: BEGIN
6750:
6751: FUNCTION check_prim_cond(
6752: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6753: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6754: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6755: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6756: RETURN BOOLEAN IS
6757: BEGIN
6758: IF p_party_search_rec.ALL_ACCOUNT_NAMES IS NOT NULL THEN
6751: FUNCTION check_prim_cond(
6752: p_party_search_rec IN HZ_PARTY_SEARCH.party_search_rec_type,
6753: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6754: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6755: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list)
6756: RETURN BOOLEAN IS
6757: BEGIN
6758: IF p_party_search_rec.ALL_ACCOUNT_NAMES IS NOT NULL THEN
6759: RETURN TRUE;
6812: has party site criteria.
6813: ************************************************/
6814:
6815: PROCEDURE check_party_site_cond(
6816: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6817: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6818: x_secondary OUT BOOLEAN,
6819: x_primary OUT BOOLEAN
6820: ) IS
6813: ************************************************/
6814:
6815: PROCEDURE check_party_site_cond(
6816: p_party_site_list IN HZ_PARTY_SEARCH.party_site_list,
6817: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6818: x_secondary OUT BOOLEAN,
6819: x_primary OUT BOOLEAN
6820: ) IS
6821: BEGIN
6864: has contact criteria.
6865: ************************************************/
6866:
6867: PROCEDURE check_contact_cond(
6868: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6869: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6870: x_secondary OUT BOOLEAN,
6871: x_primary OUT BOOLEAN
6872: ) IS
6865: ************************************************/
6866:
6867: PROCEDURE check_contact_cond(
6868: p_contact_list IN HZ_PARTY_SEARCH.contact_list,
6869: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6870: x_secondary OUT BOOLEAN,
6871: x_primary OUT BOOLEAN
6872: ) IS
6873: BEGIN
6902: has valid contact point criteria.
6903: ************************************************/
6904:
6905: PROCEDURE check_contact_point_cond(
6906: p_contact_point_list IN HZ_PARTY_SEARCH.contact_point_list,
6907: x_secondary OUT BOOLEAN,
6908: x_primary OUT BOOLEAN
6909: ) IS
6910: BEGIN