void automation.updateownersretrolead() { Getall = zoho.crm.getRecords("Site_Visits",1,100,{"cvid":5971686000096266822}); for each everyrecord in Getall { get_data = zoho.crm.getRecordById("Site_Visits",everyrecord.get("id")); First_Name = get_data.get("First_Name"); Last_Name = get_data.get("Last_Name"); Visitors_Mobile_Number = get_data.get("Visitors_Mobile_Number"); Visitors_Type = ifnull(get_data.get("Visitors_Type"),""); Visitors_Name = ifnull(get_data.get("Name"),""); Budget = ifnull(get_data.get("Budget"),""); Broker_Name = ifnull(get_data.get("Broker_Name"),""); Broker_Type = ifnull(get_data.get("Broker_Type"),""); Brokerage_Name = ifnull(get_data.get("Brokerage_Name"),""); Office_Site_Location = ifnull(get_data.get("Office_Site_Location"),""); Product_Interested_in = ifnull(get_data.get("Product_Interested_in"),""); Visitors_Mobile_Number = ifnull(get_data.get("Visitors_Mobile_Number"),""); Visitors_Email = ifnull(get_data.get("Email"),""); Description = ifnull(get_data.get("Description"),""); Sales_Manager = ifnull(get_data.get("Sales_Manager1"),""); //info Sales_Manager; No_of_Bedrooms = ifnull(get_data.get("No_of_Bedrooms"),""); curren_datatime = zoho.currenttime.toString("yyyy-MM-dd'T'HH:mm:ssXXX"); updatemap = Map(); samson_id = 5971686000062801060; // default owner user_id = null; if(Sales_Manager != "") { response = invokeurl [ url :"https://www.zohoapis.com/crm/v6/users?type=ActiveUsers" type :GET connection:"crmroot" ]; //info response; for each rec in response.get("users") { if(rec.get("full_name").contains(Sales_Manager)) { user_id = rec.get("id"); info "User id: " + user_id; break; } } } else { user_id = ""; } /////////Seach leads /////////////////// searchCriteria = "(Mobile:equals:" + Visitors_Mobile_Number + ") OR (Email:equals:" + Visitors_Email + ")"; leads = zoho.crm.searchRecords("Leads",searchCriteria); if(Visitors_Type == "Buyer") { if(leads.isEmpty()) { info "Inside buyer create lead condition: "; Lead_map = Map(); Lead_map.put("Budget1",Budget); Lead_map.put("Description",Description); Lead_map.put("Email",Visitors_Email); Lead_map.put("Product_Interested_In",Product_Interested_in); Lead_map.put("Mobile",Visitors_Mobile_Number); Lead_map.put("Last_Name",Visitors_Name); Lead_map.put("Lead_Type",Visitors_Type); Lead_map.put("Lead_Source","Marketing"); Lead_map.put("Sub_Source","Walk In"); Lead_map.put("No_of_Bedrooms",No_of_Bedrooms); Lead_map.put("Last_Date_and_Time",get_data.get("Check_In_Date_Time")); ///////// //////////// userList = list(); userEntry1 = Map(); userMap1 = Map(); if(user_id.isEmpty() != null) { info "inside if: "; userEntry1.put("Sales_Manager",userMap1); userMap1.put("id",user_id); Lead_map.put("Owner",user_id); userList.add(userEntry1); Lead_map.put("Sales_Manager",userList); } else { info "Inside else: "; Lead_map.put("Owner",samson_id); } ////////////// tag1 = Map(); tag1.put("name","Walk in Visitor"); tags_list = List(); tags_list.add(tag1); Lead_map.put("Tag",tags_list); ///////////// ///////////////// body_map = Map(); data_list = List(); data_list.add(Lead_map); body_map.put("data",data_list); response = invokeurl [ url :"https://www.zohoapis.com/crm/v5/Leads" type :POST parameters:body_map.toString() connection:"newzohocrm" ]; info response; if(response.containKey("data")) { response_data = response.get("data"); if(response_data.size() > 0) { record_info = response_data.get(0); if(record_info.containKey("details")) { details = record_info.get("details"); new_id = details.get("id"); } } } info "Rec id: " + new_id; //// ///////////Lookup update ////////////////// updatemap.put("Leads",ifnull(new_id,"")); } else { for each rec in leads { id = rec.get("id"); tag1 = Map(); tag1.put("name","Walk in Visitor"); tags_list = List(); tags_list.add(tag1); param = Map(); param.put("Tag",tags_list); param.put("Last_Date_and_Time",get_data.get("Check_In_Date_Time")); //////// ////////////// /////////////////////// ////////////////////////////////// userList = list(); userEntry1 = Map(); userMap1 = Map(); info userMap1; info user_id; if(user_id.isEmpty() != null) { info "inside if: "; userEntry1.put("Sales_Manager",userMap1); userMap1.put("id",user_id); param.put("Owner",user_id); userList.add(userEntry1); param.put("Sales_Manager",userList); } else { info "Inside else: "; param.put("Owner",samson_id); } dataList = list(); dataList.add(param); bodyMap = Map(); bodyMap.put("data",dataList); response = invokeurl [ url :"https://www.zohoapis.com/crm/v5/Leads/" + id + "" type :PUT parameters:bodyMap.toString() connection:"newzohocrm" ]; info "Buyer Update lead resp: " + response; /////////// /////////////////// ///////////////////////////// updatemap.put("Leads",ifnull(id,"")); //info update_lead; } } } else if(Visitors_Type == "Broker") { info "Neew lead inside: "; info "inside broker: "; default_owner = 5971686000027930041; ////Elise Habkouk if(leads.isEmpty()) { Lead_map = Map(); Lead_map.put("Description",Description); Lead_map.put("Email",Visitors_Email); Lead_map.put("Mobile",Visitors_Mobile_Number); Lead_map.put("First_Name",First_Name); Lead_map.put("Last_Name",Visitors_Name); Lead_map.put("Lead_Type",Visitors_Type); Lead_map.put("Lead_Source","Marketing"); Lead_map.put("Sub_Source","Walk In"); Lead_map.put("Lead_Status","Broker"); Lead_map.put("Brokerage_Name",Brokerage_Name); Lead_map.put("Broker_Type",Broker_Type); Lead_map.put("Last_Date_and_Time",get_data.get("Check_In_Date_Time")); //////// userList = list(); userEntry1 = Map(); userMap1 = Map(); if(user_id.isEmpty() != null) { info "inside if: "; userEntry1.put("Sales_Manager",userMap1); userMap1.put("id",user_id); Lead_map.put("Owner",user_id); userList.add(userEntry1); Lead_map.put("Sales_Manager",userList); } else { info "Inside else: "; Lead_map.put("Owner",default_owner); } /////////// tag1 = Map(); tag1.put("name","Walk in Broker"); tags_list = List(); tags_list.add(tag1); Lead_map.put("Tag",tags_list); //// body_map = Map(); data_list = List(); data_list.add(Lead_map); body_map.put("data",data_list); response = invokeurl [ url :"https://www.zohoapis.com/crm/v5/Leads" type :POST parameters:body_map.toString() connection:"newzohocrm" ]; info response; if(response.containKey("data")) { response_data = response.get("data"); if(response_data.size() > 0) { record_info = response_data.get(0); if(record_info.containKey("details")) { details = record_info.get("details"); new_id = details.get("id"); } } } info "Rec id: " + new_id; /////// /////////// updatemap.put("Leads",ifnull(new_id,"")); } else { for each rec in leads { id = rec.get("id"); tag1 = Map(); tag1.put("name","Walk in Broker"); tags_list = List(); tags_list.add(tag1); param = Map(); param.put("Tag",tags_list); param.put("Last_Date_and_Time",get_data.get("Check_In_Date_Time")); // userList = list(); userEntry1 = Map(); userMap1 = Map(); info userMap1; if(user_id.isEmpty() != null) { info "inside if: "; info user_id; userEntry1.put("Sales_Manager",userMap1); userMap1.put("id",user_id); param.put("Owner",user_id); userList.add(userEntry1); param.put("Sales_Manager",userList); } else { info "Inside else: "; param.put("Owner",default_owner); } dataList = list(); dataList.add(param); bodyMap = Map(); bodyMap.put("data",dataList); response = invokeurl [ url :"https://www.zohoapis.com/crm/v5/Leads/" + id + "" type :PUT parameters:bodyMap.toString() connection:"newzohocrm" ]; info "Buyer Update lead resp: " + response; updatemap.put("Leads",ifnull(id,"")); } } } updatemap.put("retro", true); UpdateSiteVisit = zoho.crm.updateRecord("Site_Visits",everyrecord.get("id"),updatemap); info UpdateSiteVisit; } }
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter