Function-18: Update the lead records with Notes and Activities count.

Function-18: Update the lead records with Notes and Activities count.



Welcome back everyone!

Last week, we learnt how to auto-update tasks from other modules. This week, let's look at a custom function that helps you get the total count of Activities and Note right inside your lead records.

Business scenario:

On an average how many times should I call a lead before moving on? I’m sure most of you would have faced this dilemma at one point or the other. Effective prospecting takes time and effort. Notes and Activities are important CRM utilities that helps keep a tab of your client interactions. Zoho CRM provides a list of all the activities related to a lead like Tasks, Calls and Events right within your lead records. Keeping a count of the Activities related your lead records does come in handy. What if you want to qualify the lead as Lost after a specific number of calls? However, such data is not readily available inside the lead records. That is where this week’s custom function comes to the picture. It updates the total count of Notes, Events, Tasks and Calls in corresponding custom fields inside the lead records. Include these fields in your Lead views, sort accordingly to take necessary action.

So, if you are looking for options to sort lead records based on the count of Calls or Events, look no further. This custom function is tailor-made for you.

Pre-requisites:

  • Add the required custom fields in the Leads Layouts. Go to Setup > Customization > Module and Fields > Leads > Layouts, drag and drop the required custom fields. The names of the custom fields are case sensitive. So, names should be 'Notes Count', Task Count', 'Event Count', 'Call Count' and 'Activity Count'. The details fetched from the respective record modules gets updated in these custom fields.
  • In the Leads module, click Add Columns and select the created custom field to display in the module. Click the Field name and select Asc or Desc, to sort the leads based on the interaction count.

Getting started with the custom function:

  • Go to Setup > Customization > Modules > Select the required module > Links and Buttons > +Create new button.
  • Provide a name for the button. For example: “Activity Count”. Add a description(optional).
  • Choose View page from the drop-down list.
  • Select Writing custom function from the subsequent drop-down.
  • Provide a name for the custom function. Add a description(optional).
  • Click “Free flow scripting”.
  • Copy the code given below.
  • Click “Edit arguments”.
  • Enter the name as “contactId” and select the value as “Contact Id”.
  • Save the changes.
  • Click Save to create the button.

The script:

Code for Version 2.0 API:
 
RelatedTasks = zoho.crm.getRelatedRecords("Tasks", "Leads", leadId.toLong());
RelatedEvents = zoho.crm.getRelatedRecords("Events", "Leads", leadId.toLong());
RelatedCalls = zoho.crm.getRelatedRecords("Calls", "Leads", leadId.toLong());
RelatedNotes = zoho.crm.getRelatedRecords("Notes", "Leads", leadId.toLong());
total = RelatedTasks.size() + RelatedEvents.size() + RelatedCalls.size();
mp = map();
mp.put("Task_Count", RelatedTasks.size());
mp.put("Event_Count", RelatedEvents.size());
mp.put("Call_Count", RelatedCalls.size());
mp.put("Notes_Count", RelatedNotes.size());
mp.put("Activity_Count",total);
update = zoho.crm.update("Leads", leadId.toLong(), mp);
info mp;
info update;
return "success";

Code for Version 1.0 API:

leadIdStr = input.leadId.toString();
RelatedTasks = zoho.crm.getRelatedRecords("Tasks", "Leads", leadIdStr);
RelatedEvents = zoho.crm.getRelatedRecords("Events", "Leads", leadIdStr);
RelatedCalls = zoho.crm.getRelatedRecords("Calls", "Leads", leadIdStr);
RelatedNotes = zoho.crm.getRelatedRecords("Notes", "Leads", leadIdStr);
total = RelatedTasks.size() + RelatedEvents.size() + RelatedCalls.size();
mp = map();
mp.put("Task Count", RelatedTasks.size());
mp.put("Event Count", RelatedEvents.size());
mp.put("Call Count", RelatedCalls.size());
mp.put("Activity Count",total);
mp.put("Notes Count", RelatedNotes.size());
update = zoho.crm.updateRecord("Leads", leadIdStr, mp);
info mp;
info update;
return "success";



Found this useful? Try it out and let me know how it works! If you have questions, do not hesitate to ask! Share this with your team if you find it useful.

Do check out other custom functions shared in this series here.

See you all next week with another interesting custom function. Ciao!

Update: As you must be aware, API V1.0 will be deprecated and support for version 1.0 API will be available only till Dec 31, 2018. Version 1.0 compatible Functions will continue to work until Dec 31, 2019. You're advised to migrated to API Version 2.0 at the earliest. Check this announcement for more. We've updated the post to include the Version 2.0 compatible Function.




                            Zoho Desk Resources

                            • Desk Community Learning Series


                            • Digest


                            • Functions


                            • Meetups


                            • Kbase


                            • Resources


                            • Glossary


                            • Desk Marketplace


                            • MVP Corner


                            • Word of the Day



                                Zoho Marketing Automation
                                        • Sticky Posts

                                        • Zoho CRM Functions 53: Automatically name your Deals during lead conversion.

                                          Welcome back everyone! Last week's function was about automatically updating the recent Event date in the Accounts module. This week, it's going to be about automatically giving a custom Deal name whenever a lead is converted. Business scenario Deals are the most important records in CRM. After successful prospecting, the sales cycle is followed by deal creation, follow-up, and its subsequent closure. Being a critical function of your sales cycle, it's good to follow certain best practices. One such
                                        • Custom Function : Automatically send the Quote to the related contact

                                          Scenario: Automatically send the Quote to the related contact.  We create Quotes for customers regularly and when we want to send the quote to the customer, we have to send it manually. We can automate this, using Custom Functions. Based on a criteria, you can trigger a workflow rule and the custom function associated to the rule and automatically send the quote to customer through an email. Please note that the quote will be sent as an inline email content and not as a PDF attachment. Please follow
                                        • Function #50: Schedule Calls to records

                                          Welcome back everyone! Last week's function was about changing ownership of multiple records concurrently. This week, it's going to be about scheduling calls for records in various modules. Business scenario Calls are an integral part of most sales routines.. Sales, Management, Support, all the branches of the business structure would work in cohesion only through calls. You could say they are akin to engine oil, which is required by the engine to make all of it's components function perfectly. CRM
                                        • Function #37: Create a Purchase Order from a Quote

                                          Welcome back everyone! Last week, we learnt how to calculate the total number of activities for a lead and further take note of the activity count for particular dates. For instance, from the period of Demo to Negotiation. This week, let's look at a function that lets you create a Purchase Order instantly from a Quote. Business scenario: In any form of business, one of the most important things to do is to document the transactions. Naturally, negotiation, signing an agreement, placing an order,
                                        • Function-2: Round-Robin assignment of records

                                          Welcome back folks! Last week, we saw how to update sales commission in quotes using a custom function. This week, let's see an interesting use case asked by many of you - auto-assignment records by round-robin method. Business scenario: Right now, the solution allows you to auto-assign leads from web form and imported lists. Let us look at a need where you want to auto-assign leads from in-bound calls in a round-robin method, across modules. Prerequisite: You must create a permanent record in the


                                        Manage your brands on social media



                                              Zoho TeamInbox Resources

                                                Zoho DataPrep Resources



                                                  Zoho CRM Plus Resources

                                                    Zoho Books Resources


                                                      Zoho Subscriptions Resources

                                                        Zoho Projects Resources


                                                          Zoho Sprints Resources


                                                            Qntrl Resources


                                                              Zoho Creator Resources


                                                                Zoho WorkDrive Resources



                                                                  Zoho Campaigns Resources

                                                                    Zoho CRM Resources

                                                                    • CRM Community Learning Series

                                                                      CRM Community Learning Series


                                                                    • Tips

                                                                      Tips

                                                                    • Functions

                                                                      Functions

                                                                    • Meetups

                                                                      Meetups

                                                                    • Kbase

                                                                      Kbase

                                                                    • Resources

                                                                      Resources

                                                                    • Digest

                                                                      Digest

                                                                    • CRM Marketplace

                                                                      CRM Marketplace

                                                                    • MVP Corner

                                                                      MVP Corner

                                                                    





                                                                    




                                                                        Design. Discuss. Deliver.

                                                                        Create visually engaging stories with Zoho Show.

                                                                        Get Started Now