Custom Function : Updating Lead Score.

Custom Function : Updating Lead Score.

Scenario: Updating Lead Score.


You may want to rank the leads in your CRM account in order to determine their sales-readiness. The scoring can be based on certain predefined values. This lead scoring can be done with custom functions.

You can have a
custom field for the Score and use custom functions to update the Lead Score based on certain values. When you update the fields in leads, the score will be updated automatically.

 

This custom function can also be used for other modules by making small changes in the custom function.

Please follow these steps:

  1. Log in to Zoho CRM with administrative privileges.
  2. Click Setup > Automation > Workflow > Create Rule.
  3. In the New Rule page, choose Leads module from the drop-down list and provide other rule details.
  4. Under Execute On, choose Create or Edit and then click Next.
  5. Specify the Rule Criteria. The rule will triggered only when a record meets the criteria mentioned here.
  6. In the Actions section, click on the Add button for Call Custom Functions.
  7. In the Configure Custom Function popup, click Write your own.
  8. Specify a name for the function.
  9. Build the Deluge Script based on the code given below.
void workflowspace.LeadsScoring(int Leadid,string Scorefield)
{
leadIDStr=input.Leadid.toString();
resp = zoho.crm.getRecordById("Leads",input.Leadid);
respStr=resp.toString();
respMap=respStr.toMap();
phone=ifnull(respMap.get("Phone"),"0"); 
email=ifnull(respMap.get("Email"),"0");
title=ifnull(respMap.get("Title"),"0");
website=ifnull(respMap.get("Website"),"0");
industry=ifnull(respMap.get("Industry"),"0");
point=0;
if(phone.length()  >  9)
{
point=2;
}
if(!((email.contains("gmail")  ||  email.contains("yahoo"))  ||  email.contains("outlook")))
{
point=(point  +  2);
}
if((website  !=  null)  ||  (website  !=  ""))
{
point=(point  +  2);
}
if(((title.contains("CEO")  ||  title.contains("manager"))  ||  title.contains("dir"))  ||  title.contains("VP"))
{
point=(point  +  2);
}
if(industry.contains("ERP"))
{
point=(point  +  2);
}
/////////////////////////////////////
info point;
if(point  >=  9)
{
Score="*****";
}
else if(point  >=  7)
{
Score="****";
}
else if(point  >=  5)
{
Score="***";
}
else
{
Score="";
}
info Score;
upresp = zoho.crm.updateRecord("Leads",leadIDStr,{ input.Scorefield : Score });
//info upresp;
}
Note: This custom is for the leads module and you can change the custom function for other modules also.

Please refer to the following link to know more about this feature:

Sincerely,
Prakash