Client Script | Update - Introducing Subform Events and Actions

Client Script | Update - Introducing Subform Events and Actions

Are you making the most of your subforms in Zoho CRM? Do you wish you could automate subform interactions and enhance user experience effortlessly? What if you had Client APIs and events specifically designed for subforms?

We are thrilled to introduce one of the most anticipated Client Script Updates: Subform Events and Subform-specific Client APIs in Client Script!

 Subform events are triggered from user actions, such as adding or deleting rows or updating data in subform. These events allow you to run Client scripts for validation, automation, or dynamic updates. By leveraging Subform Events, you gain precise control over subform behavior.  

This empowers you to achieve advanced interactivity, streamline workflows, enhance user interactions, and deliver exceptional user experiences.

Subform Events

  • onCellChange 

  • onRowAdd

  • onRowDelete

  • beforeRowDelete

  • beforeRowUpdate (Applicable only for Detail Pages)

Supported Pages

  • Standard - Create/Edit/Clone Pages, Detail page

  • Canvas - Create/Edit/Clone Pages, Detail page

  • Wizard - Create/Edit Pages

 

Available Client APIs


Notes  Note :   The setValue method for a subform row and cell on the Detail Pages will only work when the row is in edit mode.
 

Scenario 1 : Apply row value based dynamic filters and display error and clear a cell in subform for invalid input

Organization: Zylker, a manufacturing company using Zoho CRM.

Subform Filtering: In the Quotes module, products in the subform are filtered based on the selected Product Category.

Stock Validation: When the quantity in the Quoted Items subform exceeds available Stock, an error message is displayed. The field is reset to null.

 

Click here to view the source code.

Scenario 2 : Secure subform rows with beforeRowDelete

  • Organization: Zylker ensures data integrity during key Deal stages in Zoho CRM.

  • Restricted Stages: Subform item deletion is restricted in the following stages:

    • Proposal/Price Quote

    • Negotiation/Review

    • Closed Won

    • Closed Lost

  • Enforcement: The beforeRowDelete event verifies the Deal stage and returns false to prevent deletion.

 

Click here to view the source code.

Scenario 3 : Auto-Fill values for new rows and clear subform based on custom conditionI

  • Module: Campaign module in Zoho CRM.

  • Auto-Population: When a new row is added to the subform:

    • The onRowAdd event uses setValue() to auto-populate:

      • "Status" field with "Planning".

      • "Allocated Budget" with $3000.

  • Region Change: When the "Region" field changes:

    • The onChange event triggers clear() to reset campaign details for region-specific data.

 

Click here to view the source code.

Scenario 4 : Tailor cell, row and column locks in subforms and manage field visibility with ease.

  • Module: Campaign subform in Zoho CRM.

  • Allocated Budget Field:

    • Editable only by admins.

    • Read-only for all other users.

  • Row Locking:

    • The setReadOnly() method, triggered by onLoad and onCellChange:

      • Locks the entire row when the Status is "Complete."

      • Restricts the Allocated Budget field unless the Status is "Planning."

  • Field Visibility:

    • The Type of Campaign column is managed with setVisibility():

      • Visible only when Parent Type is "others."

 

 

Click here to view the source code.

Scenario 5 : Dynamic data check on subform cell update

  • Validation: Ensure the Allocated Budget of all campaigns does not exceed the Total Budget Allocated.

  • Restriction:

    • If the budget exceeds the limit:

      • Prevent the row from being saved.

      • Display an error message.

 



Click here to view source the code.

Limitations :

1. The onRowAdd event is not supported during bulk row addition.

2. Subform methods and events do not work in line-item subforms present in Blueprint transition.
3. Row added in subforms using Guided selling  do not trigger the onRowAdd event
for now.
4. This update is not supported on mobile devices.

  

We hope you find this update useful!

QuoteRelease Plan : We have begun rolling out the feature and will provide updates here as it becomes available in each DC.

 

 





    • Sticky Posts

    • Kaizen #226: Using ZRC in Client Script

      Hello everyone! Welcome to another week of Kaizen. In today's post, lets see what is ZRC (Zoho Request Client) and how we can use ZRC methods in Client Script to get inputs from a Salesperson and update the Lead status with a single button click. In this
    • Kaizen #222 - Client Script Support for Notes Related List

      Hello everyone! Welcome to another week of Kaizen. The final Kaizen post of the year 2025 is here! With the new Client Script support for the Notes Related List, you can validate, enrich, and manage notes across modules. In this post, we’ll explore how
    • Kaizen #217 - Actions APIs : Tasks

      Welcome to another week of Kaizen! In last week's post we discussed Email Notifications APIs which act as the link between your Workflow automations and you. We have discussed how Zylker Cloud Services uses Email Notifications API in their custom dashboard.
    • Kaizen #216 - Actions APIs : Email Notifications

      Welcome to another week of Kaizen! For the last three weeks, we have been discussing Zylker's workflows. We successfully updated a dormant workflow, built a new one from the ground up and more. But our work is not finished—these automated processes are
    • Kaizen #152 - Client Script Support for the new Canvas Record Forms

      Hello everyone! Have you ever wanted to trigger actions on click of a canvas button, icon, or text mandatory forms in Create/Edit and Clone Pages? Have you ever wanted to control how elements behave on the new Canvas Record Forms? This can be achieved
    • Recent Topics

    • Bulk bank rule creatioin

      Hi team, I am exploring Option to create a multiple bank rule. Could please suggest the option to implement this?
    • Marketer's Space: Plan smarter with Zoho Campaigns' Calendar

      Hello Marketers, Welcome to another post! Today, we'll talk about a discreet yet significant feature that's neatly tucked inside Zoho Campaigns: the calendar. It might look like an optional but somewhat unnecessary feature that you can use occasionally,
    • User

      If user is already part of manage engine endpoint central , what hapens when i try to add them to another Zoho org / directory? Are these users added as external users?
    • Add an background image to an email template in CRM

      Hi all, We wants to put an background image behind all our email templates. Is there a way to import this thru html. If i put the option background image in <body style="background-image:...</body> and i look to the preview it shows our background, but
    • Create static subforms in Zoho CRM: streamline data entry with pre-defined values

      Last modified on (9 July, 2025): This feature was available in early access and is currently being rolled out to customers in phases. Currently available for users in the the AU, CA, and SA DCs. It will be enabled for the remaining DCs in the next couple
    • Outlook - Zoho CRM Calendar Integration

      I'm facing an issue integrating Outlook with Zoho CRM. Has anyone successfully connected their Outlook to Zoho, and are all your meetings and emails being captured correctly in the CRM? Any insights or troubleshooting tips would be appreciated
    • Can 1 Zoho CRM instance sync with 2 Zoho Marketing Automation instances?

      Can 1 Zoho CRM instance sync with 2 Zoho Marketing Automation instances?
    • 【Zoho CRM】ポータル機能のアップデート

      ユーザーの皆さま、こんにちは。コミュニティチームの藤澤です。 今回は「Zoho CRM アップデート情報」の中から、ポータル機能のアップデートをご紹介します。 ポータル管理の新機能「自動招待」により、Zoho CRMからポータルへの招待を自動化できるようになりました。これまで必要だった、ユーザーごとの手動設定は不要になります。設定した条件に基づいて、対象ユーザーに自動で招待が送信されます。 ポータルの新機能 条件に基づく自動招待:指定した条件を満たすユーザーに、自動で招待を送信 招待設定:招待メールの言語を選択し、言語ごとに条件を設定可能
    • Contact data removes Account data when creating a quote

      Hi, Our customer has address fields in their quote layout which should be the address of the Account. They prefill the information, adding the account name - the address data is populated as per what is in the account - great. However when they then add
    • I need to know the IP address of ZOHO CRM.

      The link below is the IP address for Analytics, do you have CRM's? IP address for Analytics I would like to know the IP address of ZOHO CRM to allow communication as the API server I am developing is also run from CRM. Moderation Update: The post below
    • Email was sent out without our permission

      Hi there, One customer just reached out to us about this email that we were not aware was being sent to our customers. Can you please check on your end?
    • Export all of our manuals from Zoho Learn in one go

      Hi, I know there's a way to export manuals in Zoho Learn, but I want to export everything in one go so it won't take so long. I can't see a way to do this, can I get some assistance or is this a feature in the pipeline? Thanks, Hannah
    • Automation#31: Automate Splitting Names for New Contact Records

      Hello Everyone, This week, we present to you a custom function, which allows you to split the first and last names from the user's email ID based on the separator used in the ID. Having grown into a large firm, Zylker Techfix aims to optimize its processes,
    • Automatically remove commas

      Team, Please be consistent in Zoho Books. In Payments, you have commas here: But when we copy and paste the amount in the Payments Made field, it does not accept it because the default setting is no commas. Please have Zoho Books remove commas autom
    • Can not add m365 outlook account to zohomail.

      I am attempting to use zoho mail as an imap client to add my outlook.com m365 account. In the m365 exchange admin center i have made sure the imap is enabled. In zoho mail i go to settings, mail accounts, add account, add imap account, i select "outlook",
    • 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.
    • Transfer ownership of files and folders in My Folders

      People work together as a team to achieve organizational goals and objectives. In an organization, there may be situations when someone leaves unexpectedly or is no longer available. This can put their team in a difficult position, especially if there
    • Project Change Orders and Additions

      We are in the process of migrating from QuickBooks Online to Zoho Books. We have Zoho One and like the ability to sync all of our data across everything. And I like that projects work in a way that's less dumb than QuickBooks. I'm trying to figure out
    • ZOHO Desk - Description of slave ticket disappeared after Merge

      Dear Support, On Zoho Desk the description of a ticket disappeared after merging two ticket. The one which was the slave one completely disappeared. The problem that in this description there was an image which i had only on Desk in that ticket. Could
    • How do I insert a cross-reference link to a different section within one Knowledge Base article using Zoho Desk?

      I would like to insert a link within a Knowledge Base article to a different section of that same article. The section I want to link to is formatted with the Heading 3 style and is displayed within my TOC. However, I do not see any way to add a link
    • Problem Adding Facebook Account

      Hi, I'm new here, I'm having trouble setting up my Facebook account as a social channel. I think the issue is down to how my Facebook is set up, which is pretty confusing. I have a personal Facebook account (let’s called it A) which is my main Facebook
    • Zoho Desk Teams App is not loading

      Hi Zoho Desk support. Need an assistance on the Zoho Desk Teams app. Once I click View Ticket, it isn't showing anything. Kindly refer to attached: ZohoDesk Teams App_View Ticket Error.jpg For our Dashboard, we are still experiencing the same issue. Kindly
    • About Meetings (Events module)

      I was working on an automation to cancel appointments in zoho flow , and in our case, we're using the Meetings module (which is called Events in API terms). But while working with it, I'm wondering what information I can display in the image where the
    • Cliq iOS can't see shared screen

      Hello, I had this morning a video call with a colleague. She is using Cliq Desktop MacOS and wanted to share her screen with me. I'm on iPad. I noticed, while she shared her screen, I could only see her video, but not the shared screen... Does Cliq iOS is able to display shared screen, or is it somewhere else to be found ? Regards
    • Zoho People - Retrieve the Leave Details - get("LeaveCount")

      Hi, Zoho People I need to collect all of an employee's leave requests for the calendar year and check how many half-days they have taken. If I run the script on the query he just modified, I can retrieve the information related to that query and use the
    • Mapping a new Ticket in Zoho Desk to an Account or Deal in Zoho CRM manually

      Is there any way for me to map an existing ticket in Zoho desk to an account or Deal within Zoho CRM? Sometimes people use different email to put in a ticket than the one that we have in the CRM, but it's still the same person. We would like to be able
    • Which WhatsApp API works seamlessly with Zoho CRM?

      I’m exploring WhatsApp API solutions that integrate seamlessly with Zoho CRM for customer communication, lead nurturing, and automation. I would love to hear insights from those who have successfully implemented WhatsApp within Zoho CRM. My Requirements:
    • Allow people to sign a zoho form by using esign or scanned signature

      Allow people to sign a zoho form by using esign or scanned signature
    • Button to Reapply Filters on Sheet(s)

      I wrote a macro that I attached to a button to reapply the filters on all my sheets and it says it works, but it doesn't actually do anything. What is wrong with it? Is there another way? Or even make it work for one sheet? Sub UniversalFilterRefresh()
    • Integrate Multiple ZohoBooks organization with zoho projects

      We have successfully connected our Zoho Books with Zoho Projects for synronizing timesheet data. Our Business specialty is, that the staff of the Main company (A) is working on several projects, but the Clients are sometimes contracted and paying to a
    • Zoho OAuth Connector Deprecation and Its Impact on Zoho Desk

      Hello everyone, Zoho believes in continuously refining its integrations to uphold the highest standards of security, reliability, and compliance. As part of this ongoing improvement, the Zoho OAuth default connector will be deprecated for all Zoho services
    • How to drag row(s) or column(s)?

      Hi. Selecting a row or column and then dragging it to a new position does not seem to work. Am i missing something or this is just not possible in Zoho Sheet? Cheers, Jay
    • Flexible Partial-Use Coupons (Stored Value Credits)

      Subject: Feature Request: Ability for users to apply partial coupon balances per transaction Problem Statement Currently, our coupons are "one-and-done." If a user has a $50 coupon but only spends $30, they either lose the remaining $20 or are forced
    • Unable to Assign Multiple Categories to a Single Product in Zoho Commerce

      Hello Zoho Commerce Support Team, I am facing an issue while assigning categories to products in Zoho Commerce. I want to assign multiple categories to a single product, but in the Item edit page, the Category field allows selecting only one category
    • How do I add todays date to merge field

      I don't see any selection of todays date when creating a letter. Surely the date option of printing is standard? John
    • Polish signer experience to compete with docusign

      I would like to suggest that someone spend the little bit of time to polish the signer experience, and the email templates to more of a modern professional feel. They are currently very early 2000s and with some simple changes could vastly improve the
    • Add RTL and Hebrew Support for Candidate Portal (and Other Zoho Recruit Portals)

      Dear Zoho Recruit Team, I hope you're doing well. We would like to request the ability to set the Candidate Portal to be Right-to-Left (RTL) and in Hebrew, similar to the existing functionality for the Career Site. Currently, when we set the Career Site
    • Uplifted homepage experience

      Hello everyone, Creating your homepage is now much easier, more visual, and more impactful. Until now, your homepage allowed you to display custom views, widgets, analytic components, and Kiosk. With the following improvements, the homepage is now a smarter,
    • Tracking Emails sent through Outlook

      All of our sales team have their Outlook 365 accounts setup with IMAP integration. We're trying to track their email activity that occurs outside the CRM. I can see the email exchanges between the sales people and the clients in the contact module. But
    • Whats that

      Price?
    • Next Page