Automation#33: Automate Splitting Names for Existing Contact Records

Automation#33: Automate Splitting Names for Existing Contact Records



An organized directory – who doesn't love one?
Previously, we explored how to split contact names into First Name and Last Name for new contacts in Zoho Desk. But what about existing contacts already in your database? This week, we bring you a custom function that automates this process, ensuring a well-structured and easily searchable contact list.

Handling Existing Contacts
  • On ticket creation for an existing contact, this custom function will scan the email and split the name stored in the "Last Name" field into "First Name" and "Last Name."
  • To avoid unnecessary modifications, we introduce a checkbox in the contact layout. This allows you to mark contacts that have already been split, preventing duplicate actions.
Let's walk through the steps needed to ensure a smooth and error-free execution. 

I. Create a Checkbox Field in the Contacts Layout

a. Go to Setup >> Customization >> Layouts and Fields >> Select the Contacts module >> Select the layout >> Drag the checkbox field >> Give a desired name for the checkbox (e.g., Name Split).
b. Click on the gear icon of the checkbox field, select Edit Properties, and note the API name. This API name must be pasted into the custom function on line 4.
c. Uncheck the Enable by Default checkbox if it is marked.

II. Configure Custom Function within the Workflow Rule

Prerequisites
1. Create a connection
  1.1 Go to Setup(S) and choose Connections under Developer Space.
  1.2 Click Create Connection.
  1.3 Select Zoho OAuth under Default Connection.
  1.4 Set the connection name as deskcontact.
  1.5 Under Scope, choose the below scope values:
Desk.contacts.UPDATE
Desk.contacts.READ
  1.6 Click Create and Connect.
  1.7 Click Connect and click Accept.
Connection is created successfully.

2. Create a Workflow Rule
 2.1. Go to Setup, choose Workflows under Automation. 
 2.2 Under Workflows, click Rules >> Create Rule.

In the Basic Information section,
2.3. Select Tickets from the drop-down menu under Module.
2.4. Enter a Rule Name and Description for the rule.
2.5. If you want to activate the rule right away, select the Active checkbox. Else, create the rule and activate it later.
2.6. Click Next.
 
In the Execute on section, follow these steps:
2.7. Select Create.   
2.8. Click Next.
 
2.9. In the Criteria section, add criteria if required. click Next. 
2.10. In the Actions section, click the + icon and select New next to Custom Functions.
2.11. Enter a Name and Description for the custom function. Choose Tickets under Module.
2.12 Under Argument Mapping, give a desired Method Name. Map the arguments as below:       
         2.12.1 In the Argument Name field, type contactId and select Contact ID under the Contacts Section.                                     
2.13. In the script window, insert the Custom Function given below:
  1. //------------- User Input ----------
  2. orgId = "60xxxxxxxx0"; //replace with your Org ID
  3. operator = "."; 
  4. checkBoxFieldAPIName = "enter_the_field_api_name"; //Enter API name of the checkbox
  5. //---------------------------------
  6. logs = Map();
  7. try {
  8. contacts = zoho.desk.getRecordById(orgId,"contacts",contactId, "deskcontact");
  9. firstName = contacts.get("firstName");
  10. lastName = contacts.get("lastName");
  11. if(lastName.contains(operator))
  12. {
  13.        if(operator.contains(".")){
  14.          lastName = lastName.subString(0,lastName.indexOf("@"));
  15.        }
  16.        firstName = lastName.subString(0,lastName.indexOf(operator)).trim();
  17.        lastName = lastName.subString(lastName.indexOf(operator) + 1);
  18.        updateContact = zoho.desk.update(orgId,"contacts",contactId,{"firstName":firstName,"lastName":lastName,"cf":{checkBoxFieldAPIName:true}},"deskcontact");
  19.    }
  20. }
  21. catch (errorInfo)
  22. {
  23. logs.insert("errorInfo":errorInfo);
  24. }
  25. info "logs: \n" + logs;

  26. if(logs.containKey("errorInfo"))
  27. {
  28. throws "Error happen in the CF execution";
  29. }
NOTE
a. In Line 2, Enter your OrgId with  "  ". To access OrgId, go to Setup (S) >> Developer Space >> APIs >> API Authentication.
b. In Line 4, enter the API name of the check box created within the Contacts layout.  
Information
This custom function will split the contact name as First Name and Last Name based on the "." operator between the names in the email. 
2.14. Click Save to save the custom function.
2.15. Click Save again to save the workflow.
By implementing this custom function and workflow rule, you can automate the process of splitting contact names within Zoho Desk, ensuring a clean and organized database, which will enhance searchability. 
We hope this guide helps streamline your contact management! If you have any questions or need further assistance, feel free to share in the comments. Happy Organizing!
Best regards, 
Lydia |Zoho Desk

    • Sticky Posts

    • Register for Zoho Desk Beta Community

      With the start of the year, we have decided to take a small step in making the life of our customers a little easier. We now have easy access to all our upcoming features and a faster way to request for beta access. We open betas for some of our features
    • Share your Zoho Desk story with us!

      Tell us how you use Zoho Desk for your business and inspire others with your story. Be it a simple workflow rule that helps you navigate complex processes or a macro that saves your team a lot of time; share it here and help the community learn and grow with shared knowledge. 
    • Tip #1: Learn to pick the right channels

      Mail, live chat, telephony, social media, web forms—there are so many support channels out there. Trying to pick the right channels to offer your customers can get pretty confusing. Emails are most useful when the customer wants to put things on record. However, escalated or complicated issues should not be resolved over email because it's slow and impersonal.  When you need immediate responses, live chat is more suitable. It's also quick and convenient, so it's the go-to channel for small issues. 
    • Welcome to Zoho Desk Community - Say hello here!

      Hello everyone! Though we have been here for a while, it’s time to formally establish the Zoho Desk Community; we’re really happy to have you all here! This can be the place where you take a moment to introduce yourself to the rest of the community. We’d love to hear all about you, what you do, what company or industry you work for, how you use Zoho Desk and anything else that you will like to share! Here’s a little about me. I am Chinmayee. I have been associated with Zoho since 2014. I joined here
    • Webinar 1: Blueprint for Customer Service

      With the launch of a host of new features in Zoho Desk, we thought it’ll be great to have a few webinars to help our customers make the most of them. We’re starting off with our most talked about feature, Blueprint in Zoho Desk. You can register for the Blueprint webinar here: The webinar will be delivered by our in-house product experts. This is a good opportunity to ask questions to our experts and understand how Blueprint can help you automate your service processes. We look forward to seeing
    • Recent Topics

    • Why hybrid project management might be the best fit for you?

      Project management techniques are designed to equip teams with proven methods for easy and efficient project execution. While management teams may have apprehensions about adopting the hybrid method of project management, we’ve compiled the top reasons
    • Page - Gauge - Target Values

      Is there a way to make the Target and Maximum values say a formula or query?  For example, total sales for the month = 109 and I want to make my gauge today's percentage.
    • Multiple Organizations w/Books

      Does Zoho One allow for more than 1 organization in Zoho Books? I see my default company says "Zoho One Enterprise"next to it but another company says "Trial". We have one company, but multiple lines of business that we keep separate for various financial
    • LOST ALL NOTES AFTER SIGNING IN AGAIN

      I lost all my notes which I prepared from long time after sigingout and signing in again
    • Outgoing Email Being Blocked

      Hi, I have an email ID wherein the outgoing mail are being blocked the user get an email which is as follows: ----------------- Dear User, Mail Outgoing blocked. Reason :Mail rate exceeded limit However, we realize that this might have been unintentional.
    • Sending Email With SMTP python

      Hi, I am trying to send email with stmplib python lib.  Code... server = smtplib.SMTP_SSL('smtp.zoho.com', 465) server.login('username','password') server.sendmail('from_mail','to_mail', 'message') server.quit() Log  send: 'ehlo [127.0.1.1]\r\n' reply:
    • Duplicating Forms doesn't duplicate Forms attachment path to workdrive

      Hi, I have this user, who uses one forms and duplicates it when needed and update the content. For him, it's important to have the submission forms saved in a specific folder inside Workdrive (as this PDF is transmitted later to another team). However,
    • Company with ZohoOne, notebook ask to upgrade to collaborate in notecards.

      Hello, we as a company have ZohoOne as our Zoho choice, but Zoho Notebook asks us to upgrade in order to collaborate in notecards, is this correct? Acording to what I've read in Zoho Notebook help, it should be included in ZohoOne, can you please clarify
    • Reason:554 5.1.8 Email Outgoing Blocked

      I have been struggling to set up my email address for some time now; it's difficult to locate what I need. Additionally, I cannot send or receive any emails. I keep receiving the "Reason: 554 5.1.8 Email Outgoing Blocked" error. There doesn't seem to
    • How to reach the official Zoho Support channels and avoid fake ones.

      Dear Customers, Thanks a lot for choosing Zoho! Our applications are built to help achieve your day-to-day business goals. We are committed to engaging with you, to understand and develop solutions that enhance your productivity.  We are happy and ready to help you use our services effectively. Understanding and avoiding fake support Just like using popular bank names and financial applications for phishing purposes, using Zoho and claiming to be providing Zoho Support or services with false numbers
    • Lost my notes

      Hi while re installing the notebook app, I have lost 2 most important notes and I am not able to find them anywhere. Can you help. Those were very important for my businesses, it had all the important transaction info, and the other were my log ins. I
    • Unable to connect to smt servers.

      Unable to connect to smtp.zoho.eu servers. Therefore, I cannot send emails via smtp.
    • Problem Pasting Into Notes

      Occasionally I want to create a note by copying and pasting a few paragraphs from an article on line. When I create a new note and paste in the section the newly created note winds up with each paragraph in white text on a dark background rather than
    • Not receive mail

      I just made my Zoho mail but I cannot receive any mail at all. What happen
    • Possible to reorder Pipelines position?

      I have multiple Pipelines and want to reorder their positions, so that in the Deals module record for the Pipeline field, I have them ordered in a certain way. Is there a way to reorder the position of the Pipelines without deleting existing Pipelines
    • How do you pre-fill Form fields using URL parameters, for embedded forms?

      Is this possible? This is something that can be done on most major Form platforms (JotForm, TypeForm etc). Currently if pre-filled fields are a necessity for your business, you cannot use embedded forms.
    • Unable to delete Attachment on Modules/Record

      Hi Team, Could you please check the backend. Looks like today, CRM decided not to allow deletion of Attachment on Modules or Records. No error message but when you click Delete > Move to recycle bin, nothing happens. Please fix ASAP.
    • Filter Multi-Line Properties with Plain Large Text

      To be able to filter fields that feature Plain large text, I am only able to filter on plain small text when you offer 3 separate options.
    • Zoho Mail : Email Outgoing Blocked

      I suddenly received the following message yesterday. I cannot send any mail. Please resolve as soon as possible, I cannot work without sending email. Dear User, We regret to inform you that your email outgoing has been blocked and you will not be able
    • Update date field from one module to the another

      Hi, I have a module called "Cargo". In this module there is a date field called "Fecha ETA". Api name = Fecha_ETA I have another module called "Deals". In this module there is a date field called "ETA 2". Api name = Fecha_Madrid I need to create a function
    • Delete completed tasks

      My completed tasks will not delete. I have tried deleted them all together and one by one. It says they are deleted but they are still showing on my list. Help
    • One user multiple access?

      Hi, I want to know if t is possible to have just one Zoho account for the business and have multiple users access this at the same time?
    • Notebook not working on Windows 11/Atlas OS

      Hello, I jave bought gamer laptop in used condition to make some AI application. I installed Atlas OS to improved performanceds and it is working very well. I have Avast Secutiy as firewall. The whole system is really fast and all my apps work well....but
    • Why are you taking functionality out of notebook?

      We were able to choose a custom sort, in free version. Now it seems that feature is only available if I upgrade. Not a nice trick, shame.
    • Is Zoho Notebook available in any other languge besides english?

      There seems to be no option to change the language of the UI in the web browser version of Notebook, is this the case for all other versions? iOS Android Windows App MacOS
    • Completely blank window

      When I open my notebook application on Windows 10 I get a completely blank window, see the attached .png file. There is no notebook or any hint that notebooks exist. Furthermore, the application always asks me to sign in again *every* time I start it.
    • To be able to create a report sub folder

      Hello Can we request the ability to create subfolders in report folders.
    • Default Lookup Field Value based on Picklist

      How do I change a lookup field value based on another field's value, while creating/editing a record using form? I have a picklist of different types of Loans. For example: PPP, EDIL, Term, etc. When I create a record using the form, if I choose PPP from
    • Unable to create a Zoho Desk ticket from a call in Zoho CRM

      I want to create a Zoho Desk ticket when a new record is created in the Calls module in Zoho CRM. However, I get the following error message when trying to test & debug: We are unable to setup Zoho CRM. Please try again or contact us for further help
    • How to add a discount (percent %) field?

      My particular case it’s regarding the “Opportunities” module. I’ve created a subform to calculate the value of the opportunity, and now I’d like to include a discount field in the form of a percentage. However, no matter how or where I add the "percent"
    • Page HTML to PDF

      Hello everyone, I have a pdf template, but because zoho has limitations in the builder. I made the template in aPages. The question is, how to export the pages as PDF? Thank you very much.
    • Issues with certain CRM, Desk & webhook blocks in Guided Conversations

      Good day I have been attempting to add a block on our guided conversations, which give our customers relavent information based on their queries. The issue is that when I attempt to use a block that fetches data I get the following error popup: Cannot
    • Zoho Sign API lacking clarity

      I'm trying to use Zoho Sign to embed a document for signing into a web application, and the documentation is proving to to be lacking something. Some issues... 1) No clarity if the API only works with a document uploaded through the API -- it would be
    • 【Zoho CRM】キャンバス機能のアップデート

      ユーザーの皆さま、こんにちは。コミュニティチームの藤澤です。 今回は「Zoho CRM アップデート情報」の中からキャンバス機能のアップデートをご紹介します。 新たに追加された「可変式ボックス」では、データの表示方法を柔軟にカスタマイズ可能です。画面サイズやデバイスに応じてレイアウトが自動調整されるため、より快適なユーザー体験が実現します。 【目次】 可変式ボックスとは 主要機能の詳細 より高度な可変式ツール 1.可変式ボックスとは 可変式ボックスをレイアウトに組み込むことで、高いカスタマイズ性と柔軟なデザインが可能になり、データの視覚化やユーザーインタラクションがより効果的に行うことができます。以下が可変式ボックスが備える主要な機能の概要です。
    • Notebook for watch no longer in Play store.

      I had to reinstall Notebook on my Galaxy Watch 7. Alas: the app is no longer available in the Play store. What now?
    • move notebooks to another notebook?

      Do I have the ability to add one or more existing notebooks to another notebook? For example, I have an existing notebook named Dog, with several articles in it, and I would like to move it to another notebook called animals?
    • Import from OneNote

      Is there a way to import notes from OneNote? 
    • Add export option that only export one or selected notebooks

      Currently the export function will export ALL data every time, this not only wastes user bandwidth, disk I/O and local storage space, but also consumes more resources on the server. Partial export should be a very basic and easy-to-implement feature.
    • Zoho Creator Mobile app no Default Workspace

      When I use the Zoho Creator mobile app I do not get a default workspace. This is occurring for me and another new user. I believe this is an issue with Zoho One / Zoho Creator. I have tried working with support and it's been over a week of no solution
    • Kaizen #189: Manipulating Multi-Module Lookup (MML) Field using Zoho CRM APIs

      Hello everyone! Welcome back to another week of Kaizen. In this post, we explore the Multi-Module Lookup (MML) field in the Appointments module of Zoho CRM. You learn what an MML field is, how it works, and how to use it with Zoho CRM APIs. Table of Contents:
    • Next Page