Zoho Deluge Code

Custom Function Code

Mass Update Affiliates

  1. recordsToUpdate = zoho.crm.searchRecords(modules_name,"(Referring_Party:equals:" + reffering_party + ")");
  2. for each record in recordsToUpdate
  3. {
  4.     // Collect the record ID
  5.     recordId = record.get("id");
  6.     // Check for the module type and set the URL accordingly
  7.     if(modules_name == "Leads")
  8.     {
  9.         // Retrieve the lead's name
  10.         leadName = record.get("First_Name") + " " + record.get("Last_Name");
  11.         leadURL = "https://crm.zoho.com/crm/org781691523/tab/Leads/" + recordId.toString();
  12.     }
  13.     else if(modules_name == "Deals")
  14.     {
  15.         leadURL = "https://crm.zoho.com/crm/org781691523/tab/Deals/" + recordId.toString();
  16.         // Retrieve the Deals's name
  17.         leadName = record.get("Deal_Name");
  18.     }
  19.     else
  20.     {
  21.         // Handle other modules or log an error.
  22.         leadURL = "Invalid module name provided";
  23.     }
  24.     affiliate_person = record.get('Affiliate_Person');
  25.     // Prepare the data to update
  26.     dataToUpdate = Map();
  27.     dataToUpdate.put("Affiliate_Person",affiliate_person_id);
  28.     if(affiliate_person == null)
  29.     {
  30.         // Update the record in Zoho CRM
  31.         updateResponse = zoho.crm.updateRecord(modules_name,recordId.toString(),dataToUpdate);
  32.     }
  33.     // Check if the update was successful
  34.     if(updateResponse.get("Modified_Time") != null)
  35.     {
  36.         info modules_name + " name: " + leadName + " and direct link " + leadURL;
  37.     }
  38. }

Sum Up Potential Amount

  1. response = zoho.crm.getRelatedRecords("Deals","Accounts",accountID.toLong(),1);
  2. total = 0.0;
  3. closedWonStage = "closed won";
  4. for each record in response
  5. {
  6.     probability = record.get("Probability");
  7.     if(probability.equalsIgnoreCase("100"))
  8.     {
  9.         total = total + ifnull(record.get("Amount"),"0.0").toDecimal();
  10.         closedWonStage = ifnull(record.get("Stage"),"");
  11.     }
  12. }
  13. if(total == 0.0)
  14. {
  15.     return "No " + closedWonStage + " potentials associated with this account";
  16. }
  17. else
  18. {
  19.     return total.toString();
  20. }

Update Referring party

  1. relconts = zoho.crm.getRelatedRecords("Contacts","Accounts",aid);
  2. for each cont in relconts
  3. {
  4.     zoho.crm.updateRecord("Contacts",cont.get("id"),{"Referring_Party":ref});
  5. }
  6. reldeals = zoho.crm.getRelatedRecords("Deals","Accounts",aid);
  7. for each deal in reldeals
  8. {
  9.     zoho.crm.updateRecord("Deals",deal.get("id"),{"Refering_Party":ref});
  10. }

Assigned Team Member to Original Member

  1. dealsDetails = zoho.crm.getRecordById("Deals",input.dealsID);
  2. if(!isEmpty(dealsDetails))
  3. {
  4.     track_assigned_member = dealsDetails.get("Track_Assigned_Team_Member");
  5.     if(!isEmpty(track_assigned_member))
  6.     {
  7.         zoho.crm.updateRecord("Deals",input.dealsID,{"Assigned_Team_Member":track_assigned_member});
  8.     }
  9. }

Update State Based on Phone

  1. contactsDetails = zoho.crm.getRecordById("Contacts",input.contactId);
  2. state_codes = {"205":"Alabama","251":"Alabama","256":"Alabama","334":"Alabama","938":"Alabama","907":"Alaska","480":"Arizona","520":"Arizona","602":"Arizona","623":"Arizona","928":"Arizona","479":"Arkansas","501":"Arkansas","870":"Arkansas","209":"California","213":"California","310":"California","323":"California","408":"California","415":"California","424":"California","442":"California","510":"California","530":"California","559":"California","562":"California","619":"California","626":"California","628":"California","650":"California","657":"California","661":"California","669":"California","707":"California","714":"California","747":"California","760":"California","805":"California","818":"California","831":"California","858":"California","909":"California","916":"California","925":"California","949":"California","951":"California","303":"Colorado","719":"Colorado","720":"Colorado","970":"Colorado","203":"Connecticut","475":"Connecticut","860":"Connecticut","959":"Connecticut","302":"Delaware","239":"Florida","305":"Florida","321":"Florida","352":"Florida","386":"Florida","407":"Florida","561":"Florida","727":"Florida","754":"Florida","772":"Florida","786":"Florida","813":"Florida","850":"Florida","863":"Florida","904":"Florida","941":"Florida","954":"Florida","229":"Georgia","404":"Georgia","470":"Georgia","478":"Georgia","678":"Georgia","706":"Georgia","762":"Georgia","770":"Georgia","912":"Georgia","808":"Hawaii","208":"Idaho","986":"Idaho","217":"Illinois","224":"Illinois","309":"Illinois","312":"Illinois","331":"Illinois","618":"Illinois","630":"Illinois","708":"Illinois","773":"Illinois","779":"Illinois","815":"Illinois","847":"Illinois","872":"Illinois","219":"Indiana","260":"Indiana","317":"Indiana","463":"Indiana","574":"Indiana","765":"Indiana","812":"Indiana","930":"Indiana","319":"Iowa","515":"Iowa","563":"Iowa","641":"Iowa","712":"Iowa","316":"Kansas","620":"Kansas","785":"Kansas","913":"Kansas","270":"Kentucky","364":"Kentucky","502":"Kentucky","606":"Kentucky","859":"Kentucky","225":"Louisiana","318":"Louisiana","337":"Louisiana","504":"Louisiana","985":"Louisiana","207":"Maine","240":"Maryland","301":"Maryland","410":"Maryland","443":"Maryland","667":"Maryland","339":"Massachusetts","351":"Massachusetts","413":"Massachusetts","508":"Massachusetts","617":"Massachusetts","774":"Massachusetts","781":"Massachusetts","857":"Massachusetts","978":"Massachusetts","231":"Michigan","248":"Michigan","269":"Michigan","313":"Michigan","517":"Michigan","586":"Michigan","616":"Michigan","734":"Michigan","810":"Michigan","906":"Michigan","947":"Michigan","989":"Michigan","218":"Minnesota","320":"Minnesota","507":"Minnesota","612":"Minnesota","651":"Minnesota","763":"Minnesota","952":"Minnesota","228":"Mississippi","601":"Mississippi","662":"Mississippi","769":"Mississippi","314":"Missouri","417":"Missouri","573":"Missouri","636":"Missouri","660":"Missouri","816":"Missouri","406":"Montana","308":"Nebraska","402":"Nebraska","531":"Nebraska","702":"Nevada","725":"Nevada","775":"Nevada","603":"New Hampshire","201":"New Jersey","551":"New Jersey","609":"New Jersey","732":"New Jersey","848":"New Jersey","856":"New Jersey","862":"New Jersey","908":"New Jersey","973":"New Jersey","505":"New Mexico","575":"New Mexico","518":"New York","585":"New York","607":"New York","631":"New York","646":"New York","680":"New York","716":"New York","718":"New York","845":"New York","914":"New York","917":"New York","929":"New York","934":"New York","252":"North Carolina","336":"North Carolina","704":"North Carolina","743":"North Carolina","828":"North Carolina","910":"North Carolina","919":"North Carolina","980":"North Carolina","984":"North Carolina","701":"North Dakota","216":"Ohio","220":"Ohio","234":"Ohio","330":"Ohio","380":"Ohio","419":"Ohio","440":"Ohio","513":"Ohio","567":"Ohio","614":"Ohio","740":"Ohio","937":"Ohio","405":"Oklahoma","539":"Oklahoma","580":"Oklahoma","918":"Oklahoma","458":"Oregon","503":"Oregon","541":"Oregon","971":"Oregon","215":"Pennsylvania","223":"Pennsylvania","267":"Pennsylvania","272":"Pennsylvania","412":"Pennsylvania","484":"Pennsylvania","570":"Pennsylvania","610":"Pennsylvania","717":"Pennsylvania","724":"Pennsylvania","814":"Pennsylvania","878":"Pennsylvania","401":"Rhode Island","803":"South Carolina","843":"South Carolina","854":"South Carolina","864":"South Carolina","605":"South Dakota","423":"Tennessee","615":"Tennessee","629":"Tennessee","731":"Tennessee","865":"Tennessee","901":"Tennessee","931":"Tennessee","210":"Texas","214":"Texas","254":"Texas","281":"Texas","325":"Texas","346":"Texas","361":"Texas","409":"Texas","430":"Texas","432":"Texas","469":"Texas","512":"Texas","682":"Texas","713":"Texas","726":"Texas","737":"Texas","806":"Texas","817":"Texas","830":"Texas","832":"Texas","903":"Texas","915":"Texas","936":"Texas","940":"Texas","956":"Texas","972":"Texas","979":"Texas","385":"Utah","435":"Utah","801":"Utah","802":"Vermont","276":"Virginia","434":"Virginia","540":"Virginia","571":"Virginia","703":"Virginia","757":"Virginia","804":"Virginia","826":"Virginia","840":"Virginia","206":"Washington","253":"Washington","360":"Washington","425":"Washington","509":"Washington","564":"Washington","304":"West Virginia","681":"West Virginia","262":"Wisconsin","414":"Wisconsin","534":"Wisconsin","608":"Wisconsin","715":"Wisconsin","920":"Wisconsin","307":"Wyoming"};
  3. if(!isEmpty(contactsDetails))
  4. {
  5.     phone_number = contactsDetails.get("Phone");
  6.     area_code = phone_number.subString(0,3);
  7.     if(!isEmpty(area_code))
  8.     {
  9.         if(state_codes.containsKey(area_code))
  10.         {
  11.             state_name = state_codes.get(area_code);
  12.             if(!isEmpty(state_name))
  13.             {
  14.                 mailing_state = contactsDetails.get("Mailing_State");
  15.                 if(mailing_state.isNull())
  16.                 {
  17.                     zoho.crm.updateRecord("Contacts",input.contactId,{"Mailing_State":state_name});
  18.                 }
  19.             }
  20.         }
  21.     }
  22. }

Update Leads Affiliates Person

  1. leadDetails = zoho.crm.getRecordById("Leads",input.lead_id);
  2. affiliateId = leadDetails.get("Affiliates_Id");
  3. if(affiliateId != null)
  4. {
  5.     // Prepare the data to update
  6.     dataToUpdate = Map();
  7.     dataToUpdate.put("Affiliate_Person",affiliateId);
  8.     // Update the record in Zoho CRM
  9.     zoho.crm.updateRecord("Leads",input.lead_id,dataToUpdate);
  10. }

Add Notes on Modules

  1. a = zoho.crm.getRecordById("Calls",id);
  2. // info a ;
  3. desc = a.get("Description");
  4. name = a.get("Subject");
  5. who_id = ifnull(a.get("Who_Id"),"");
  6. if(who_id.get("id").size() > 0)
  7. {
  8.     c_id = who_id.get("id");
  9.     note1 = Map();
  10.     note1.put("Note_Title",name);
  11.     note1.put("Note_Content",desc);
  12.     note1.put("Parent_Id",c_id);
  13.     note1.put("se_module","Contacts");
  14.     dataList = List();
  15.     dataList.add(note1);
  16.     params = Map();
  17.     params.put("data",dataList);
  18.     response = invokeurl
  19.     [
  20.         url :"https://www.zohoapis.in/crm/v2/Notes"
  21.         type :POST
  22.         parameters:params.toString()
  23.         connection:"crm_oauth_connection"
  24.     ];
  25.     //info response;
  26. }
  27. if(a.get("$se_module") == "Accounts")
  28. {
  29.     acc_id = ifnull(a.get("What_Id"),Map()).get("id");
  30.     //info acc_id ;
  31.     note1 = Map();
  32.     note1.put("Note_Title",name);
  33.     note1.put("Note_Content",desc);
  34.     note1.put("Parent_Id",acc_id);
  35.     note1.put("se_module","Accounts");
  36.     dataList = List();
  37.     dataList.add(note1);
  38.     params = Map();
  39.     params.put("data",dataList);
  40.     response = invokeurl
  41.     [
  42.         url :"https://www.zohoapis.in/crm/v2/Notes"
  43.         type :POST
  44.         parameters:params.toString()
  45.         connection:"crm_oauth_connection"
  46.     ];
  47.     //info response;
  48. }
  49. if(a.get("$se_module") == "Leads")
  50. {
  51.     l_id = ifnull(a.get("What_Id"),Map()).get("id");
  52.     note1 = Map();
  53.     note1.put("Note_Title",name);
  54.     note1.put("Note_Content",desc);
  55.     note1.put("Parent_Id",l_id);
  56.     note1.put("se_module","Leads");
  57.     dataList = List();
  58.     dataList.add(note1);
  59.     params = Map();
  60.     params.put("data",dataList);
  61.     response = invokeurl
  62.     [
  63.         url :"https://www.zohoapis.in/crm/v2/Notes"
  64.         type :POST
  65.         parameters:params.toString()
  66.         connection:"crm_oauth_connection"
  67.     ];
  68.     //info response;    
  69. }

Send Email To Affiliate

  1. dealsDetails = zoho.crm.getRecordById("Deals",input.dealsID);
  2. affiliatePerson = dealsDetails.get("Affiliate_Person2");
  3. affiliateId = affiliatePerson.get("id");
  4. affiliateDetails = zoho.crm.getRecordById("Affiliate_DB",affiliateId);
  5. // Define the email details
  6. fromEmail = "The Refund Consultants <ops@therefundconsultants.com>";
  7. subject = "Deal Assignment Notification";
  8. if(!isEmpty(dealsDetails) && !isEmpty(affiliateDetails))
  9. {
  10.     affiliateEmail = affiliateDetails.get("Email");
  11.     if(!isEmpty(affiliateEmail))
  12.     {
  13.         sendmail
  14.         [
  15.             from :fromEmail
  16.             to :affiliateEmail
  17.             subject :subject
  18.             message :"Hi " + dealsDetails.get('Assigned_Team_Member') + ",<br><br>You have been assigned a client to work on.<br><br>Deal Name: <b>" + dealsDetails.get('Deal_Name') + "</b><br>Deal Stage: <b>" + dealsDetails.get('Stage') + "</b><br><br>To visit this Deal: <a href='https://crm.zoho.com/crm/org781691523/tab/Potentials/" + input.dealsID + "'>Click Here</a>"
  19.         ]
  20.     }
  21. }

Send Email to Assigned Team Member

  1. dealsDetails = zoho.crm.getRecordById("Deals",input.dealsID);
  2. // Define the email details
  3. fromEmail = "The Refund Consultants <ops@therefundconsultants.com>";
  4. toEmail = "";
  5. subject = "Deal Assignment Notification";
  6. if(!isEmpty(dealsDetails))
  7. {
  8.     assigned_member = dealsDetails.get("Assigned_Team_Member");
  9.     if(!isEmpty(assigned_member) && assigned_member == 'Ataullah')
  10.     {
  11.         toEmail = "ataullah@therefundconsultants.com";
  12.     }
  13.     else if(!isEmpty(assigned_member) && assigned_member == 'Mashruh')
  14.     {
  15.         toEmail = "mashruh@telecrestusa.com";
  16.     }
  17.     else if(!isEmpty(assigned_member) && assigned_member == 'Shafi')
  18.     {
  19.         toEmail = "shafi@therefundconsultants.com";
  20.     }
  21.     else if(!isEmpty(assigned_member) && assigned_member == 'Yunus')
  22.     {
  23.         toEmail = "yunus@therefundconsultants.com";
  24.     }
  25.     sendmail
  26.     [
  27.         from :fromEmail
  28.         to :toEmail
  29.         subject :subject
  30.         message :"Hi " + dealsDetails.get('Assigned_Team_Member') + ",<br><br>You have been assigned a client to work on.<br><br>Deal Name: <b>" + dealsDetails.get('Deal_Name') + "</b><br>Deal Stage: <b>" + dealsDetails.get('Stage') + "</b><br><br>To visit this Deal: <a href='https://crm.zoho.com/crm/org781691523/tab/Potentials/" + input.dealsID + "'>Click Here</a>"
  31.     ]
  32. }