Troubleshooting in Creator #3: Deluge execution limit optimization

Troubleshooting in Creator #3: Deluge execution limit optimization



Dear developers,

A Deluge statement execution corresponds to each line of code executed within a certain script. The total number of lines executed to complete a certain task on an action like on success is associated with a Deluge execution limit in Creator. To ensure good performance and usability, the number of lines of code executed at a time should be optimized.

Apart from each line of code written under an action, Deluge executions depends on factors such as the use of certain tasks, loops, and functions.

For example, if you're running a for each statement for a form which has 100 records in it, and you have 5 lines of code within the for each, the total number of Deluge statements executed will be 500.

If you have a function call inside the workflow, the number of lines of code in the function will also add up to the Deluge execution limit.

In this post, we'll discuss some simple scripting practices and ways to optimize code executions in Deluge:

Case 1: Using for each tasks
Case 2: Reducing variable definition to store fetched data
Case 3: Avoiding multiple IF statements and using ELSE IF
Case 4: Using built-in functions instead of counter variables



Ways to optimize execution

Case 1: Using for each task

While using for each tasks, we can utilize criteria to control the records through which it iterates.

Example:
  1. for each rec in Form_Name[ID!=0 ] // this will iterate all the records in the form
  2. {
  3. ....
  4. }

Instead, try the below script:

  1. for each rec in Form_Name[field_name=value && field_name2=value2] // this will only be executed for records that satisfy the given criteria
  2. {
  3. ....
  4. }

To iterate through records within a specified range, which meet a criteria, follow the below syntax:
  1. for each rec in Form_Name[<criteria>] range from <start_index> to <end_index>;


Case 2: Reducing variable definition to store fetched data

In some cases, we assign fetched values to a variable and use that variable within the script. If this assignment is done within a for each task, it can increase the Deluge execution. Therefore, instead of this assignment, we can directly use the fetched data in the workflow.

For example:

  1. fet=form[criteria];
  2. a=fet.field1;
  3. b=fet.field2;
  4. input.total=a+b;

Instead, try:

  1. fet=form[criteria];
  2. input.total=fet.field1+fet.field2;




Case 3: Avoiding multiple IF statements and using ELSE IF

When you need to execute a task based on multiple conditional statements, using else if statements can help avoid extra lines of code execution.


For example:

  1. if(a==1)
  2. {
  3. ...
  4. ....
  5. }
  6. if(a==2)
  7. {
  8. ..
  9. ...
  10. }
  11. if(a==3)
  12. {
  13. ..
  14. ...
  15. }

Instead, use:

  1. if(a==1)
  2. {
  3. ..
  4. ...
  5. }
  6. else if(a==2)
  7. {
  8. ..
  9. }
  10. else
  11. {
  12. ..
  13. ...
  14. }


Case 4: Using built-in functions instead of counter variables

Suppose we need to get a sum/count of data for a particular field for a set of records. It's usually done by using a counter variable, as shown below:

  1. ctr=0;
  2. for each rec in Form_name[criteria]
  3. {
  4. ctr=ctr+1;
  5. }
  6. info ctr;


Instead of the above script, we can use our built-in function, count(), as shown below:
  1. 1.fet=form_name[criteria].count(ID);info fet;


Note: The count function in the aggregate records Deluge task returns the count of values (including empty strings) a specified field holds, from records fetched using a criteria.

Now imagine we have to use the record count inside an if statement to execute a particular task, then usually the script used would look something like this:

  1. var=Formname[x=y && z=t];
  2. Var2=var.count(ID);
  3. if(var2>0)
  4. {
  5. ..
  6. ...
  7. }

This can be optimized to:

  1. If (Formname[x=y && z=t].count(ID)>0)
  2. {
  3. ..
  4. ...
  5. }

And we hope that helped! You can find more information about our built-in functions in this help article.


Please let us know how you like this article in the comments below, as well as any other topics you'd like to see us work on. Contact support@zohocreator.com for any further questions.

    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

                                                                                                                • New in Zoho Chat : Search for contacts, files, links & conversations with the all new powerful 'Smart Search' bar.

                                                                                                                  With the newly revamped 'Smart Search' bar in Zoho Chat, we have made your search for contacts, chats, files and links super quick and easy using Search Quantifiers.   Search for a contact or specific conversations using quantifiers, such as, from: @user_name - to find chats or channel conversations received from a specific user. to: @user_name - to find chats or channel conversations sent to a specific user. in: #channel_name - to find a particular instance in a channel. in: #chat_name - to find
                                                                                                                • Template modifiactions

                                                                                                                  Hello, I am struggling with the templates in ZOHO Books. Especially with the placement of some items, like company address, ship to, bill to etc.  For example: One item I like from template X (placement of ship to and bill to next to each other in the
                                                                                                                • Aggregating the First Value in the Group By of a dataset

                                                                                                                  Hi I am trying to get the following Aggregate Formula to work in my chart, but cannot seem to get the right format. I have a series of data that I am running an include_groupby and want to SUM only a column in the first row of each group. So for example.
                                                                                                                • Track Zoho Campaign and Workflow sales impact

                                                                                                                  I am attempting to measure the performance of our marketing workflows and campaigns by comparing the date each campaign was sent to a contact with the purchase date of the contact. For example, if Contact A was sent Email A on 9/1 and made a purchase
                                                                                                                • What is a line break code for zoho?

                                                                                                                  Hi, I am archiving data by adding values from a single line field from one form to a multi-line field in another form. So I need a code/function that starts a new line on that multi-line field so it does not just keep adding it on the same line. Example, doing something like this means that it will be on a same line. archive.field1 = archive.field1 + input.Field1 I need a code so the input.Field1 can just start on the next line. Instead of "value 1, 2,3,4,5" It will be: "1 2 3 4 etc.".  something
                                                                                                                • Automatic Project Owner change

                                                                                                                  Is there a way to change Project Owner automatically once a specific Milestone in a project is marked as completed. Different Teams are working on projects in our Org, they have their own Milestones to complete and so we transfer the project from team
                                                                                                                • Button to add product to cart

                                                                                                                  Is there a way to have a button on a page, that when clicked, will add Qty 1 of a product to the cart?
                                                                                                                • Problem with Submit Button Design

                                                                                                                  I have made a template to apply to my forms and under the button controls, I have it set to "standard" and yet it's still filling the container. This is super frustrating and looks weird. Why do we not have full control over button size? How can I fix
                                                                                                                • Zoho CRM- Authorize your Microsoft Teams account issue

                                                                                                                  Hi, I tried to link Zoho CRM with Teams and I got the following message: Clicking "Authorize now" sent me to the following page, Microsoft tried to start a session but, after 3 seconds the page closed and nothing happened. I get the same message each
                                                                                                                • Is there a way to associate an email in ZOHO Main to a Vendor record in ZOHO CRM

                                                                                                                  My situation is as below, I have a vendor in ZOHO CRM lets say "Vend A" and an associated contact, "Cont A" If Cont A sends me an email using the email I've registered in the contact record the standard OOTB email sync will work. But the vendor has some
                                                                                                                • Kaizen #207 - Answering your Questions | Advanced Queries using COQL API

                                                                                                                  Hi everyone, and welcome to another Kaizen week! As part of Kaizen #200 milestone, many of you shared topics you would like us to cover, and we have been addressing them one by one over the past few weeks. Today, we are picking up one of those requests
                                                                                                                • Présentation de SecureForms dans Zoho Vault

                                                                                                                  Soyons francs : demander à quelqu’un de transmettre un mot de passe ou des informations sensibles n’est jamais une tâche facile. On attend, on relance, parfois de nombreuses fois. Et quand l’information arrive, elle se retrouve souvent dispersée dans
                                                                                                                • Granular Email Forwarding Controls in Zoho Mail (Admin Console and Zoho One)

                                                                                                                  Hello Zoho Mail Team, How are you? At present, the Zoho Mail Admin Console allows administrators to configure email forwarding for an entire mailbox, forwarding all incoming emails to another address. This is helpful for delegation or backup purposes,
                                                                                                                • Kaizen #190 - Queries in Custom Related Lists

                                                                                                                  Hello everyone! Welcome back to another week of Kaizen! This week, we will discuss yet another interesting enhancement to Queries. As you all know, Queries allow you to dynamically retrieve data from CRM as well as third-party services directly within
                                                                                                                • Need the ability to have read only fields on a form.

                                                                                                                  There needs to be functionality in Creator that allows a field on a form to be read only. Most screen building software applications have this capability. I know you can hide certain fields from specific users and that you can also make the whole form read only but that's not the functionality I need. I want to be able to create a form where certain fields are editable and other are for display purposes only (read only). For example if the form was displaying information on an item that the user
                                                                                                                • Reverse payment on accidentally closed invoice.

                                                                                                                  An invoice was closed accidentally with the full payment added. However, only partial payment was paid. How can I reopen the invoice and reverse this to update it to show partial payment?
                                                                                                                • New integration: Track booking page appointments in Google Analytics 4

                                                                                                                  Hello all, Greetings from the Zoho Bookings team! We’re excited to introduce our new Google Analytics 4 (GA4) integration designed to help you track booking activity, understand customer behavior, and measure marketing performance, all in one place. What
                                                                                                                • How to list emails in a folder, e.g. Inbox, on multiple pages when using Zoho mail webpage?

                                                                                                                  Something as shown in the figure. There are totally 50 emails in Sent folder. If "Mail per page" equals 20, then the Sent folder is split into 3 pages. When I wander through Sent folder, I can just select a specific page to jump to. BTW, it seems that
                                                                                                                • Zoho Calendar soft bounce on @hotmail.com and @yahoo.com email addresses

                                                                                                                  Hello, our Zoho calendar recently does not send the calendar invites to emails with hotmail and yahoo domains and comes back with a "soft bounce". other domains like Gmail works fine. Also sending "email" to the same emails to the above domains work well
                                                                                                                • ERROR CODE :512 - 5.4.4 DNS error:NXDOMAIN.

                                                                                                                  Suddenly we cant send mail, we are getting this error for all outbound mail to multiple domains.
                                                                                                                • Unveiling Cadences: Redefining CRM interactions with automated sequential follow-ups

                                                                                                                  Last modified on 01/04/2024: Cadences is now available for all Zoho CRM users in all data centres (DCs). Note that it was previously an early access feature, available only upon request, and was also known as Cadences Studio. As of April 1, 2024, it's
                                                                                                                • customer data security

                                                                                                                  We are exploring ways to enhance our within Zoho CRM. Our Goal: We want to fully integrate RingCentral with Zoho CRM to enable click-to-call functionality for our sales team. However, to comply with data privacy regulations and protect customer contact
                                                                                                                • Sync CRM inventory data with Zoho Books

                                                                                                                  I just switched everything over to ZoHo books, but I am trying to find out why the CRM Estimates, Invoices, and Sales Orders created in ZoHo CRM are not then duplicated in ZoHo Books? I had Quickbooks before, and had to do everything twice, I thought
                                                                                                                • 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
                                                                                                                • Email Reminders on Shared Calendars

                                                                                                                  How do we turn off the setting that emails reminders to everyone who has accepted or declined a calendar invite? If 8 of us have been invited to the same meeting, we receive 8 notifications for every step of the process, from invitation to decision.
                                                                                                                • How to refresh a ticket view ?

                                                                                                                  I am doing a widget where I send a rest api call to make a new draft to the ticket I am viewing. The issue is sometimes it refresh a ticket view and I can see inserted draft right away, but sometimes I do not see it even if it is inserted correctly and
                                                                                                                • Ugh! - Text Box (Single Line) Not Enough - Text Box (Multi-line) Unavailable in PDF!

                                                                                                                  I provide services, I do not sell items. In each estimate I send I provide a customized job description. A two or three sentence summary of the job to be performed. I need to be able to include this job description on each estimate I send as it's a critical
                                                                                                                • Supervisor Rules - Zoho Desk

                                                                                                                  Hi, I have set up a Supervisor Rule in Zoho Desk to send an email alert when a ticket has been on hold for 48 hours. Is there a way to change it so that the alert only sends once and not on an hourly basis? Thank you Laura
                                                                                                                • ResponseCode 421, 4.7.0 [TSS04] Messages from 136.143.188.51 temporarily deferred due to user complaints

                                                                                                                  Had email bounce. Let me know if you can fix this. Thanks. Michael
                                                                                                                • New Zoho triggers Google Dangerous flag due toabnormal charcters

                                                                                                                  Just signed up and doing my first email test. I sent it to my google email account but it got flagged as Dangerous" due abnormal characters. My DNS setup looks ok. Page snips attached Help Please Thanks, Rick DC PowerWorld
                                                                                                                • Is there a API to fetch tasks in a Board/Section

                                                                                                                  I am writing a scheduled function that retrieves all the tasks and send an reminder on cliq. I cannot seem to find a API to fetch tasks (by user / board / section) What are the way to fetch tasks?
                                                                                                                • Having trouble fetching contents of Zoho Connect Feeds using the API, requesting alternative API documentation.

                                                                                                                  I'm trying to retrieve feed/post data from Zoho Connect using the API but facing challenges with the current documentation. What I've tried: OAuth authentication is working correctly (getting 200 OK responses) Tested multiple endpoints: /pulse/nativeapi/v2/feeds,
                                                                                                                • Adding an Account Name to Tasks/Reminders

                                                                                                                  Does anyone know how to add the related account name to a task?  When we look at the list of activities and when the reminders pop up, there is no way of quickly seeing who the account is. 
                                                                                                                • Triggering Zoho Flow on Workdrive File Label

                                                                                                                  Right now Im trying to have a zoho flow trigger on the labeling/classification of a file in a folder. Looking at the trigger options they arent great for something like this. File event occurred is probably the most applicable, but the events it has arent
                                                                                                                • SendMail to multiple recipients

                                                                                                                  Hi, I'm trying to send an email to a list of recipients.  Right now the "to" field is directed to a string variable. (List variables won't work here). In the string variable, how can I make it work? trying "user@app.com;user2@app.com" or "user@app.com; user2@app.com" just failed to send the emails. Ravid
                                                                                                                • Populate drop down field from another form's subform

                                                                                                                  Hello, I found how to do that, but not in case of a subform. I have a Product form that has a subform for unit and prices. A product might have more than one unit. For example, the product "Brocoli" can be sold in unit at 3$ or in box of 10 at 25 $. Both
                                                                                                                • Usar o Inventory ou módulo customizado no CRM para Gestão de Estoque ?

                                                                                                                  Minha maior dor hoje em usar o zoho é a gestão do meu estoque. Sou uma empresa de varejo e essa gestão é fundamental pra mim. Obviamente preciso que esse estoque seja visível no CRM, Inicialmente fiz através de módulos personalizados no próprio Zoho CRM,
                                                                                                                • Signup forms behaviour : Same email & multiple submissions

                                                                                                                  My use case is that I have a signup form (FormA) that I use in several places on my website, with a hidden field so I can see where the contact has been made from. I also have a couple of other signup forms (FormB and FormC) that slight differences. All
                                                                                                                • getting error in project users api

                                                                                                                  Hello, I'm getting a "Given URL is wrong" error when trying to use the Zoho Projects V3 API endpoint for adding users to a project. The URL I'm using is https://projectsapi.zoho.com/api/v3/portal/{portalid}/projects/{projectid}/projectusers/ and it's
                                                                                                                • Change total display format in weekly time logs

                                                                                                                  Hi! Would it be possible to display the total of the value entered in the weekly time log in the same format that the user input? This could be an option in the general settings -> display daily timesheet total in XX.XX format or XX:XX.
                                                                                                                • Next Page