Preview:
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;
}
}
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