Rodger's helpful scripting tips #1 - Variable naming convention

Rodger's helpful scripting tips #1 - Variable naming convention

Hi everyone. I see many posts about scripting (deluge) issues and automation issues. At our business, we have developed many simple code snippets which I would like to share with you in the hopes that it helps you automate your businesses more to save you time and money.

But first, a bug bear of mine is variable naming convention. When we started, we struggled with a naming convention in our functions which was based on the horrible Zoho default naming convention.... "response" anyone? We picked up these tips from Joel Lipmann(?) who I have no affiliation with.

We have 5 major categories of variables/objects in Deluge 

Records
Maps
Lists
Collections
Variables

The naming convention we use is "x_name" where "x" is the first letter of the category. i.e

r_contact would be a Contact Record
m_contact would be a Map for a contact record
l_contacts would be a list of contacts
c_contacts would be a collection of contact records (you can also use l_contacts for a collection unless you're using lists and collections in the same function)
v_error would be a variable for an error message

You see the pattern? In this way, if you need to get information from a record, you type "r" and only the record objects come up in the list pop-up

It also makes loops easier to declare and read. i.e instead of 

  1. for each ele in contacts
  2. {
  3. }

it would read

  1. for each contact in l_contacts
  2. {
  3. }

Standard Zoho naming convention would use "contact" as the name for the contact record, so we can't use "contact" in the for each loop. However we can use the above naming convention because our contact record would be named r_contact, so our for each loop reads much more naturally as "For each contact in the list of contacts"

Finally, we don't use "response" in anything really. Give your tasks a descriptive name that allows you to understand what the task is doing. i.e

response = invokeURL tells you nothing unless you read the subsequent code, whereas

renameFile = invokeURL tells you exactly what that code block is doing. It also makes it much easier to use in subsequent code if you need to get information out of the response message for the task. i.e renameFile.get("data").get....etc

Hope this helps! This naming convention only has a minor effect on simple scripts, but when you start dealing with multiple records, multiple lists and when your scripts get up into the hundreds of lines or more, a good naming convention makes it much easier to code and debug.

    Access your files securely from anywhere







                            Zoho Developer Community




                                                  • Desk Community Learning Series


                                                  • Digest


                                                  • Functions


                                                  • Meetups


                                                  • Kbase


                                                  • Resources


                                                  • Glossary


                                                  • Desk Marketplace


                                                  • MVP Corner


                                                  • Word of the Day


                                                  • Ask the Experts



                                                            • Sticky Posts

                                                            • Function #46: Auto-Calculate Sales Margin on a Quote

                                                              Welcome back everyone! Last week's function was about displaying the discount amount in words. This week, it's going to be about automatically calculating the sales margin for a particular quote, sales order or an invoice. Business scenario Where there is sales, there's also evaluation and competition between sales reps. A healthy rivalry helps to better motivate your employees to do smart work and close deals faster and more efficiently. But how does a sales rep get evaluated? 90% of the time, it's
                                                            • 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
                                                            • User Tips: Auto-Create Opportunity/Deal upon Quote Save (PART 1)

                                                              Problem: We use quotes which convert to sales orders but Users / Sales Reps do not create opportunities / deals and go straight to creating a quote. This leads to poor reporting. Implementing this solution improves reporting and makes it easier for users.
                                                            • 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


                                                            Manage your brands on social media



                                                                  Zoho TeamInbox Resources



                                                                      Zoho CRM Plus Resources

                                                                        Zoho Books Resources


                                                                          Zoho Subscriptions Resources

                                                                            Zoho Projects Resources


                                                                              Zoho Sprints Resources


                                                                                Qntrl Resources


                                                                                  Zoho Creator Resources



                                                                                      Zoho CRM Resources

                                                                                      • CRM Community Learning Series

                                                                                        CRM Community Learning Series


                                                                                      • Kaizen

                                                                                        Kaizen

                                                                                      • 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


                                                                                            Zoho Show Resources

                                                                                              Zoho Writer

                                                                                              Get Started. Write Away!

                                                                                              Writer is a powerful online word processor, designed for collaborative work.

                                                                                                Zoho CRM コンテンツ



                                                                                                  Nederlandse Hulpbronnen


                                                                                                      ご検討中の方




                                                                                                              • Recent Topics

                                                                                                              • Hotmail is blocking the zoho mail IP

                                                                                                                Greetings, Since last Tuesday (5 days ago today) I wrote to Zoho support and I still haven't received a single response (Ticket ID: 2056917). Is this how you treat people who pay for your email service? I am making this public so that those who want to
                                                                                                              • Desk DMARC forwarding failure for some senders

                                                                                                                I am not receiving important emails into Desk, because of DMARC errors. Here's what's happening: 1. email is sent from customer e.g. john@doe.com, to my email address, e.g info@acme.com 2. email is delivered successfully to info@acme.com (a shared inbox
                                                                                                              • Creator Simplified #11: Create a custom button to download files

                                                                                                                Hey there! This time, let's see how to create custom buttons to download the files uploaded in the file upload field. Sample use-case A training app has a module that provides the materials for all the available courses. Students can click on the corresponding
                                                                                                              • Hide horizontal lines at bottom of form

                                                                                                                Hi I have a page with 3 forms embedded in html snippets. On each of the forms I can hide the submit button easily but I am left with the horizontal lines that bound that section and I cannot figure out to remove them (see below for the two sets of horizontal
                                                                                                              • Autosaving of Form Field

                                                                                                                HI can anyone suggest a way of autosaving or simulating an autosave function for a specific field in a form. The story is as follows. I have a bunch of technicians who write notes on how they do a repair. Sometimes they write for a couple of hours the troubleshooting process. If they click incorrectly, press ESC, Cancel or the browser crashes the information is lost which can be heartbreaking so my guys use notepad and then copy the information in. The only way around this is to click submit on the
                                                                                                              • Zoho Tracking Image location

                                                                                                                So we've been having an issue with tracking email opens. Specifically in Gmail. Our emails are not that long either, maybe 4 sections of image/250 characters of text/button per section.  But all my test accounts I used via Gmail we're showing opens. But then come to find out the tracking image is at the very bottom of the email. So If the message is clipped (It always just clips our social icons on the bottom) and the user doesn't click the show more button it never tracks the open.  Looking at other
                                                                                                              • AI Interview Insights: Turn Recorded Interviews into Quick Transcripts & Summaries

                                                                                                                Evaluating interviews shouldn’t require replaying long recordings or taking manual notes. With AI Interview Insights, you can now review complete transcripts and AI-generated summaries of your One-way (Recorded) interviews right inside Zoho Recruit. This
                                                                                                              • How do I associate pricebooks to a customer?

                                                                                                                I setup a few pricebooks, that worked fine. But now the only thing I can do with it, when I enter a quote or sales order, I can select which pricebook to use, but I have to do this product by product every time I add one. Is there a way to connect a pricebook
                                                                                                              • Employee Appraisal Applicability - Why is Date of Joining Hard-Coded?

                                                                                                                In the new (to me, at least) Performance Appraisal Cycle wizard, it's possible to set criteria to determine for whom the appraisal process should apply. This makes sense on its face. However, one MUST use the Date of Joining criterion as a filter. Why
                                                                                                              • Spotlight series #6: The Show app for Android TV has a new look!

                                                                                                                Hello everyone! We are delighted to introduce our revamped and redesigned Show app for Android TV.  Smart TVs are exploding in popularity. Android TV alone has over 110 million active monthly devices. Zoho Show, as part of a constant effort to improve
                                                                                                              • Ask the Experts 26: Brighten every customer interaction with Zoho Desk all year long

                                                                                                                Hello everyone, Greetings and welcome to Ask the Experts 26. As we wrap up 2025, we are excited to invite you to the 26th episode of our Ask the Expert series. 🎄The Merry Metrics Edition = Best of Zoho Desk [Best Practices + Holiday Automation + Year-End
                                                                                                              • Pricing calculator

                                                                                                                Alright, so I'm trying to create a pricing calculator/pricing report generator to use in a cabinet shop. I did all the logic and such, and the calculator works. I have a few other things that I would need it to be able to do though, I'll do my best to
                                                                                                              • Bug Details

                                                                                                                In the Bug detail the milestoneid is missing
                                                                                                              • Stop completed task lists from disappearing?

                                                                                                                Is there any way to stop projects from making tasks lists disappear when all the tasks in the list are completed? That's one of those little things where we're constantly fighting the product. For instance we have some projects which are ongoing - no start and end date. We use Kanban view to show the various task lists. We don't want the kanban list to disappear every time the items on it happen to be closed out. Thanks
                                                                                                              • Change of Blog Author

                                                                                                                Hi, I am creating the blog post on behalf of my colleague. When I publish the post, it is showing my name as author of the post which is not intended and needs to be changed to my colleague's name. How can I change the name of the author in the blogs?? Thanks, Ramanan
                                                                                                              • Allow customers to choose meeting venue and meeting duration on booking page

                                                                                                                My business primarily involves one-to-one meetings with my clients. Given the hybrid-work world we now find ourselves in, these meetings can take several forms (which I think of as the meeting "venue"): In-person Zoom Phone call I currently handle these
                                                                                                              • Booking outside of scheduled availability

                                                                                                                Is there a way for staff (such as the secretary) to book appointments outside of the scheduled availability? Right now to do this special hours must be set each time. There should be a quicker way. Am I missing something?
                                                                                                              • Operation Questions.

                                                                                                                Hello, I hope you are well. To explain a little, we are a company that sells services and products with a technical team responsible for installation and maintenance. Zoho FSM can be useful for the technical team, namely for the technical coordinator
                                                                                                              • Direct Access and Better Search for Zoho Quartz Recordings

                                                                                                                Hi Zoho Team, We would like to request a few enhancements to improve how Zoho Quartz recordings are accessed and managed after being submitted to Zoho Support. Current Limitation: After submitting a Quartz recording, the related Zoho Support ticket displays
                                                                                                              • Update date & time when a cell is edited

                                                                                                                Hi All, I am desiring to have a cell update with the current date and time when another cell is edited. Any ideas?  Thank you
                                                                                                              • Add "Groups" to "Share With" on Reports & All Entries

                                                                                                                Hi, On Forms we can share Publicly, with Specific Users And/Or Specific Groups or All Users. With Reports and All Entries we lack the "Groups" option, please add this as with many users this saves a lot of work. Thanks Dan
                                                                                                              • Add Pause / Resume Option to Zoho Quartz Recordings

                                                                                                                Hi Zoho Team, We would like to request an enhancement to Zoho Quartz recordings: the ability to pause and resume an ongoing recording. Current Limitation: At the moment, when recording an issue with Zoho Quartz, the recording continues even when we are
                                                                                                              • Custom Fields Not Showing Up in Invoice PDF Template Document Information

                                                                                                                I have added 2 custom fields under Sales > Invoices > Manage Custom Fields. They are set to show in all PDFs. However when I am editing my Invoice PDF template, i do not see the custom fields under Document Information.
                                                                                                              • Tracking Non-Inventory Items

                                                                                                                We have several business locations and currently use zoho inventory to track retail items (sales and purchase orders). We were hoping to use zoho inventory to track our non-inventory items as well (toilet paper, paper towels, etc). I understand that we
                                                                                                              • Can I use a Standalone CRM Function as the Callback URL For Async Export Data API?

                                                                                                                I am creating an export job using this API https://www.zoho.com/analytics/api/v2/bulk-api/export-data-async/create-export/view-id.html There is a "callbackUrl" key in the CONFIG object. I tried copying the URL for a standalone function in CRM which can
                                                                                                              • ZOHO Books

                                                                                                                Hi there, Why after I upgrade my Zoho invoice > Books then i wanted to add plugin which i cannot do. Please advise.
                                                                                                              • How is Your eCommerce Experience w/Zoho Inventory?

                                                                                                                First off, I'm SUPER grateful for the advent of Zoho Inventory and now the Zoho Commerce Suite. Overall, Inventory is a great product, especially for customers without an eCommerce presence. For eCommerce companies (especially those shipping more than ~10 packages/day), however, there are certain drawbacks that keep my clients from moving over to Zoho Inventory: Cons: 1. Invoice + Package Creation from Shopify/Other eCommerce Integrations: Zoho Inventory makes the somewhat perplexing decision to
                                                                                                              • Error AS101 when adding new email alias

                                                                                                                Hi, I am trying to add apple@(mydomain).com The error AS101 is shown while I try to add the alias.
                                                                                                              • Simplify Mass Replies with Predefined Templates and Snippets

                                                                                                                Hello everyone, We are happy to introduce a new enhancement to Mass Reply that helps agents respond to customers quickly and consistently. With the addition of Email Templates and Snippets in the reply window, agents can use predefined messages while
                                                                                                              • Mapping custom fields from one module to another

                                                                                                                I have a custom field, "Subscription Period" that appears as a required field in every Opportunity (Potential). I want that field to appear on any Quotes derived from that Opportunity (and have created a custom field of the same name in Quotes for that
                                                                                                              • Passing the CRM

                                                                                                                Hi, I am hoping someone can help. I have a zoho form that has a CRM lookup field. I was hoping to send this to my publicly to clients via a text message and the form then attaches the signed form back to the custom module. This work absolutely fine when
                                                                                                              • The Social Wall: November 2025

                                                                                                                We’re nearing the end of the year, and the holiday season is officially kicking in! It’s that time when sales peak and your social media game needs to be stronger than ever. We’re back with exciting new updates across AI, analytics, and the mobile app
                                                                                                              • Item name special charaters <>

                                                                                                                Im trying to input speical characters such as < and > into item name and item description but comes up with following error: Invalid value passed for Item Name and Invalid value passed for Item Description How do i allow speical characters?
                                                                                                              • How to update Multi File upload field

                                                                                                                Assume that i have a multi file upload field,how can i update the same field again?
                                                                                                              • Customer Address Not on Standard Invoice when Address is on Contact Record

                                                                                                                Hi,  I entered the customer billing and shipping address in Zoho CRM. I created an invoice in Zoho Books with the same customer contact. The contact is correctly in Zoho Books with the billing and shipping address. The invoice for the customer does not
                                                                                                              • Apply partial payments to invoices from the Banking Module

                                                                                                                We need this! Why is this not possible?
                                                                                                              • Welcome to the Zoho Show Community Forums page!

                                                                                                                Hello everyone, The Zoho Show community is a place for you to discuss and share anything and everything related to Zoho Show Presentations, our online presentation software. It includes users from all over the globe and all walks of life. Our community helps answer your Zoho Show questions with responses from other knowledgeable community members to give you the best experience creating and designing exciting presentations. Along the way, you'll meet recognized experts from our software team and
                                                                                                              • How can I convert an existing contact into a lead?

                                                                                                                I imported many contacts into ZOHO CRM. In order to select a few of them as leads, I want to mark or convert a few hundred as Leads. Who can I do that?
                                                                                                              • Introducing Dedicated Modules for Plans, Addons, and Coupons in Zoho Billing

                                                                                                                We’ve enhanced the way you manage Plans, Addons, and Coupons in Zoho Billing. Previously, all three grouped together under Subscription Items. Now, each one has its own dedicated module, giving you a cleaner and more intuitive experience. This update
                                                                                                              • Price book functionality enhancement

                                                                                                                A common use of price books is to create a price book for a given customer level or contract with a specific company. Given that this is done at a company/customer level it would be great to see a way to associate a price book to a given customer and
                                                                                                              • Next Page