Implementing global variables...sort of

Implementing global variables...sort of

One of the big gaps in Creator is the lack of support for global variables, i.e. variables with a scope extending outside a given bit of script. The usual workaround suggested by Zoho - creating hidden fields on forms just to store temporary data - is really ugly. Three reasons it's a bad idea: a) Even if you hide the fields from all but admins, admins do have to see them (it's a pain to issue hide statements in script all the time, too); b) they aren't truly global, but are scoped to that instance of a form; c) there is no support for multiuser contention, in that the "temporary" variable values in a hidden field are actually stored in the database, so one user can stomp on another's values.

In an effort to create a simple solution to this, I created a form and two functions (a "set" and a "get") that can be cleanly and easily called whenever you need to work on a global variable. The "variables" are not stored in memory, but in a simple persistent table that can be accessed throughout the application. This approach has been suggested before, but I tried to make it cleaner by wrapping some set/get functions around it to reduce redundant coding.

This is not a perfect solution by any means, but it gets me most of the way there. Just sharing it in case useful to others. I am attaching all the code in a file.

High-level, these are the steps to implement it:

1. Create a form called globalvar per the attached source code.

2. Hide the form in your app by moving it to a "dummy" section and hiding that section.

3. In a namespace of your choosing, create a user function called setvar, copying the attached source code. This function will be globally available to your Zoho apps, so you only have to create it once. 

What this function does is c reate or update an entry in the globalvar table that associates a user-supplied variable value with a user-supplied key and the user's login identity. It is up to the developer to ensure a unique key; I usually use a prefix indicating the relevant context (e.g. a form name), with a variable name and the relevant record ID appended. You could add a timestamp if you want to be REALLY sure it's unique, but then you'd have to remember that timestamp when you go to retrieve the value again. The way I do it seems to suffice. There is an example in the attached source file.

4. Create a corresponding getvar function per the source code attached. It includes a boolean parameter that allows you to decide whether to "free" the global variable after reading its value. If you don't free it, it will persist beyond your session, which could actually be useful and in any case doesn't harm much.

5. When you need to store a global variable value in a script, simply call setvar(), When you need to get that value back, use getvar(). These can be used to hit the same variables throughout your application—i.e., they have truly global scope. So you could set a value inside the OnUpdate handler of one form and retrieve it in the OnLoad of a different form. Handy.

LIMITATIONS:

Just some I can think of....

- My sample code handles only string variables. You could create similar functions for other data types, but for my purposes this is fine; I can convert the type after retrieving the value if I need to.

- There is no automatic garbage collection upon application termination, as you might expect in a real programming language. The getvar function allows you to free a variable (= delete the record from the globalvar table), but if you forget to do it you will slowly accumulate outdated records. If Zoho exposed a session_id we'd be easily able to control this, but they don't. Overall, the effect of leaving stray records behind you is pretty benign IMHO. Note that depending on your key-naming conventions, a dangling record will simply be reused the next time the same user wants to operate on that form.

- It's up to you to make sure the lookup key you feed to setvar() is unique enough to avoid accidental overwrites by other processes, since you're storing your stuff in the database rather than in memory. This is a double-edged sword, though. By being clever in your key-naming you could decide which variables to persist session to session, across users, and there might sometimes be a good reason to do that architecturally.

So - not perfect, but anything to get rid of the clunky "hidden field" hack! I hope this is useful to someone out there until Zoho gets their act together and implements true variable scoping. (Hey, it's Christmas time, Zoho - what a nice gift that would be!)





    Access your files securely from anywhere

        All-in-one knowledge management and training platform for your employees and customers.






                              Zoho Developer Community




                                                    • Desk Community Learning Series


                                                    • Digest


                                                    • Functions


                                                    • Meetups


                                                    • Kbase


                                                    • Resources


                                                    • Glossary


                                                    • Desk Marketplace


                                                    • MVP Corner


                                                    • Word of the Day


                                                    • Ask the Experts





                                                              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

                                                                                                                • Add Support for Authenticator App MFA in Zoho Desk Help Center

                                                                                                                  Hello Zoho Desk Team, We hope you are doing well. We would like to request an enhancement related to security for the Zoho Desk Help Center (customer portal). Currently, the Help Center supports MFA for portal users via SAML, JWT, SMS authentication,
                                                                                                                • Resubscribe with Zoho Campaigns

                                                                                                                  Hi, I am new to Zoho Campaigns and sent a campaign to a contact list with only my email address. I wanted to see what the footer links did, so clicked unsubscribe and now can't include my email address into any more campaigns. I don't have a sign up form on my website to resubscribe and can't find how to resubscribe anywhere else. Can you help?
                                                                                                                • Add a way to connect Log360 Cloud logs with Zoho analytics

                                                                                                                  Hi, Several month ago Log360 Cloud was added to zoho one - and this is great. But as far as I see there is no prebuilt way to connect Zoho analytics to the logs we have in Log360 Cloud. Please add a prebuilt connection like we have for so many other zoho
                                                                                                                • Dynamic Multi-Staff Selection for Ad-Hoc Bookings

                                                                                                                  Summary Allow customers or internal schedulers to select specific staff members at the time of booking, with Zoho Bookings automatically surfacing only the time slots where all selected members are simultaneously available. Current Behaviour Zoho Bookings
                                                                                                                • Share Edit while in Workflow

                                                                                                                  There are times that while a writer document is in the middle of a workflow the user that's responsible for that stage of the workflow needs to bring in other people to work on the document. Currently there is no way for the user to be able to allow other's
                                                                                                                • How can I use the API to add a drop-shipping address to a sales order for one-time use?

                                                                                                                  I need to be able to add a drop-shipping address for one-time use to a sales order via the API. Adding every such address to the contact (customer), then feeding the shippingaddress_id into the sales order, is not an acceptable approach; we have some
                                                                                                                • Auto sync Photo storage

                                                                                                                  Hello I am new to Zoho Workdrive and was wondering if the is a way of automatically syncing photos on my Android phone to my workdrive as want to move away from Google? Thanks
                                                                                                                • Major journey crash and not loading. Zoho Marketing Automation

                                                                                                                  Hi all. Last night (19MAR, 2026) Marketing Automation for a specific journey completely crashed, and since the crash the specific journey has failed to load at all (blank journey canvas, no journey appears, no menu accessible) but other separate journey's
                                                                                                                • Izettle or Sumup Integration for Zoho Books.

                                                                                                                  The Stripe & Square clearing works great in Zoho Books. Any further integrations planned in the future for Izettle or Sumup? These card processors are very common for taking payments with a card reader.
                                                                                                                • Is anyone experience missing functions in the new UI until hard refresh?

                                                                                                                  The set of functions including search is almost always missing upon loading an app in the new UI. If you refresh, the functions return. (see second screenshot) Anyone else experiencing this?
                                                                                                                • Mail Search should allow grouping by conversation like Gmail.

                                                                                                                  Having switched from gmail I have found the search function hard to use. Mostly because mail is not grouped by conversation in search. If I search for a word when looking for a conversation had with someone then sometimes 10 emails will come up from the
                                                                                                                • Server-based Appication API access for Social, Sites, Flow, Pages.

                                                                                                                  Hello, I am trying to hook up API access for a number of apps and I have hit a wall trying to add these scopes to the API feed. We cannot find the correct way to list the scope for these Zoho apps; Social, Sites, Flow, Writer. Error on web-page comes
                                                                                                                • Zoho Landing Page "Something went wrong" Error

                                                                                                                  Hello, Every time I try to create a new landing page, I receive a "Something went wrong" error with no explanation. I cannot create any new pages, which means we cannot use this application. I did create one landing page successfully over a month ago,
                                                                                                                • Zoho → ShipStation Integration – Sales Order–Driven Fulfilment Workflow

                                                                                                                  Hello All, I’m reaching out to explore the best way to integrate a shipping tool into our inventory which will speed our process up. We are looking to integrate ShipStation into our existing order-to-fulfilment workflow, as we’re keen to standardise on
                                                                                                                • Newby Questions - Vendors, Customers, and Income vs. Other Income Clarifications

                                                                                                                  Q1. For Deposits, there does not seem to be an option for "Income". "Other Income" is an option however. What is the process to add the option to assign a deposit to type "Income"? Q2. In many cases Vendors and Customer are the same. Vendors may purchase
                                                                                                                • Bank Feed shows redacted description numbers (xxxx)

                                                                                                                  Hi All, Is there any way to change this behaviour? Either Zoho or Yodlee is redacting important numbers from the transaction description, preventing us from being able to easily recognise and reconcile transactions. For example, a transaction with a description
                                                                                                                • Handling large product migrations in Zoho?

                                                                                                                  Hi everyone, How do you usually manage large product catalog migrations (10K+ SKUs) into Zoho One? Main concerns I’m thinking about: Avoiding downtime Preventing data loss Keeping supplier and product relationships intact Do you prefer bulk imports or
                                                                                                                • Reassign Partially Saved Entries

                                                                                                                  Hi, I would like to be able to go to Partially Saved Entries and like the option to delete them I would like the option to multi-select and be able to reassign them to another user to complete (Such as when a user has left the company). Thanks Dan
                                                                                                                • Preventing auto-redirect to Parent Record on Save...

                                                                                                                  Our users often create records from the related list on th left side of the screen. They click the blue "plus" button to create the record. This is handy, but for some modules, or situations, they would like to remain on the record AFTER clicking "Save",
                                                                                                                • Introducing Version-3 APIs - Explore New APIs & Enhancements

                                                                                                                  New Update - The end of life timeline for V2 APIs has now been extended to 30th June, 2026 Happy to announce the release of Version 3 (V3) APIs with an easy to use interface, new APIs, and more examples to help you understand and access the APIs better.
                                                                                                                • Correlated subqueries not supported in Zoho Analytics. This creates huge limitations

                                                                                                                  Running into a major limitation in Zoho Analytics: correlated subqueries simply don’t work, even in completely standard SQL patterns inside a JOIN. Example: LEFT JOIN "Bills" b ON d."Id" = b."Deal ID" AND EXISTS ( SELECT 1 FROM "Bill
                                                                                                                • Unknown table or alias 'A1'

                                                                                                                  I would like to create a subquery but i am getting the following error: Unknown table or alias 'A1' used in select query. This is the sql statement:  SELECT A1.active_paying_customers, A1.active_trial_customers, A1.new_paying_signup, date(A1.date_active_customers), 
                                                                                                                • Feature announcement - Introducing recipient authentication via Didit in Zoho Sign

                                                                                                                  Hi everyone! Zoho Sign already integrates with trusted providers like IDology (US), eID Easy (EU), and Stripe Identity. Today, we're excited to add another powerful option: Didit. Some benefits of using Didit: Unified ID verification Streamlined eKYC
                                                                                                                • CRM x WorkDrive: File storage for new CRM signups is now powered by WorkDrive

                                                                                                                  Availability Editions: All DCs: All Release plan: Released for new signups in all DCs. It will be enabled for existing users in a phased manner in the upcoming months. Help documentation: Documents in Zoho CRM Manage folders in Documents tab Manage files
                                                                                                                • Super Admin Logging in as another User

                                                                                                                  How can a Super Admin login as another user. For example, I have a sales rep that is having issues with their Accounts and I want to view their Zoho Account with out having to do a GTM and sharing screens. Moderation Update (8th Aug 2025): We are working
                                                                                                                • Regarding the integration of Apollo.io with Zoho crm.

                                                                                                                  I have been seeing for the last 3 months that your Apollo.io beta version is available in Zoho Flow, and this application has not gone live yet. We requested this 2 months ago, but you guys said that 'we are working on it,' and when we search on Google
                                                                                                                • Message as bot

                                                                                                                  I would like to be able to send a Cliq message truly as a bot. the current implementation of this function, while it sends the message as a bot it sends that message inside a chat from the user how authenticated the flow cliq connection instead of directly
                                                                                                                • Using a custom single line External ID form as merge fields in templates

                                                                                                                  Hey everyone, We're looking to integrate a few external systems better with our Zoho CRM, and we had hoped to use external fields for this purpose. In this case, it would mean being able to use our own inoice system's invoice numbers are a direct id compatible
                                                                                                                • Build an approval management system with Custom Modules

                                                                                                                  Dear users, Task management is at the heart of project management. But not all tasks are created equal. You can have your tasks reviewed before any work begins, to improve transparency or stay within budget or as part of your process. Zoho Projects allows
                                                                                                                • CRM's sandbox now supports the Zoho Desk integration

                                                                                                                  Hello everyone, Sales and customer support teams often collaborate to solve tickets and identify pain points. In Zoho's suite of products, sales teams primarily use Zoho CRM while customer support teams work in Zoho Desk. These two tools are often integrated
                                                                                                                • Countries List Global Set- Complete with Phone Country Code and Continent.

                                                                                                                  Dear Zoho Team I saw your recent addition to the Global Sets regarding the Countries list and states. While working on it, why didn't you also add things like Continent and Phone Country Code? Also, some ISO codes from some Countries/regions are mis
                                                                                                                • mask Customer phone number and agents cant see customer phone number

                                                                                                                  Is there any way we can integrate Zoom Phone with Zoho CRM while ensuring that customer phone numbers remain masked? We need a solution where agents can make outbound calls but cannot see customer phone numbers. Please let us know if there is any solution
                                                                                                                • Zoho Community Digest — Marzo 2026

                                                                                                                  ¡Hola, comunidad! Un mes más os traemos las novedades más interesantes de Zoho para marzo de 2026, incluyendo actualizaciones de producto publicadas oficialmente, cambios de políticas y noticias del ecosistema. ¡Gracias por venir a los Workshops de Madrid!
                                                                                                                • Files Uploaded to Zoho WorkDrive Not Being Indexed by Search Engines

                                                                                                                  Hello, I have noticed that the files I upload to Zoho WorkDrive are not being indexed by search engines, including Google. I’d like to understand why this might be happening and what steps I can take to resolve it. Here are the details of my issue: File
                                                                                                                • How can we get payment status updates for payment links in Zoho Books using webhooks?

                                                                                                                  When we create and share a payment link in Zoho Books, is there a way to know when the payment is updated? Can we use webhooks to get real-time updates for payment link status instead of checking manually?
                                                                                                                • Uplifted homepage experience

                                                                                                                  Editions: All editions. Availability update: 17th February 2026: All editions in the CA and SA DC | JP DC (Free, Standard and Professional editions) 23 February 2026: JP (All Editions) | AU, CN (Free, Standard, Professional editions) 27 February 2026:
                                                                                                                • 【Zoho CRM】住所項目のアップデート:構造化された正確な住所入力を実現

                                                                                                                  ユーザーの皆さん、こんにちは。Zoho コミュニティグループの中野です。 今回は「Zoho CRM アップデート情報」の中から、住所項目に関するアップデートをご紹介します。 アップデートの概要 これまでの住所項目は、自由入力形式のテキスト欄が中心でした。 そのため、入力者によって書き方がバラバラになりやすく、データの検索やレポート集計が難しいという課題がありました。 今回追加された新しい住所項目では、住所を構造化されたフォーマットで管理できるようになりました。 以下の要素をそれぞれ個別の項目として分割して管理します。
                                                                                                                • Edit a previous reconciliation

                                                                                                                  I realized that during my March bank reconciliation, I chose the wrong check to reconcile (they were for the same amount on the same date, I just chose the wrong check to reconcile). So now, the incorrect check is showing as un-reconciled. Is there any way I can edit a previous reconciliation (this is 7 months ago) so I can adjust the check that was reconciled? The amounts are exactly the same and it won't change my ending balance.
                                                                                                                • Choose Component for User Filter

                                                                                                                  This filter in the Choose Component for User Filter would be better if had an Order or Group by function. Also, the Specify the default filter values: is very confusing and limiting.
                                                                                                                • Zoho Desk - Event Calendar View

                                                                                                                  Hi Desk team, Are there any plans to introduce a calendar or timeline view for Events in Zoho Desk? It would be very helpful if we could see Events visually in a calendar and/or timeline. This is very helpful when desk side support activities need to
                                                                                                                • Next Page