Closing the Loop: Why Lookup Asymmetry is Harming Data Integrity in Creator

Closing the Loop: Why Lookup Asymmetry is Harming Data Integrity in Creator

TL;DR: Lookup fields allow users to add new related records inline via the "+" icon, but there's no equivalent ability to edit an existing related record without navigating away and losing form context. Adding a native "Edit" icon—with automatic User Input workflow re-triggering on save—would close this asymmetry and prevent the data quality issues that arise when fixing related records is too disruptive to bother with.
I've discovered a significant gap in how Zoho Creator handles related records through lookup fields, and I'm hoping the Zoho team can address this in a future update. This limitation creates a disjointed user experience that breaks natural workflow patterns.

The Issue
According to Zoho Creator's lookup field functionality, users can add new related records directly through a lookup field—both single-select and multi-select variants support this via the "+" icon. This is an excellent feature that streamlines data entry.
However, there is no equivalent ability to edit an existing related record while adding or editing the parent record. Once a related record exists, users must navigate away from their current form to make changes—breaking their workflow and context.
Example Use Case
Consider a Sales Order form with a lookup field to Clients.
Scenario: While creating a new Sales Order, the user notices the selected Client's phone number is outdated.
Desired behavior:
  • Click an "edit" icon next to the lookup field
  • Update the Client's phone number in a popup/modal
  • Save and return to the Sales Order form with context preserved
  • Continue completing the Sales Order without interruption
Current reality: The user must abandon their partially-completed Sales Order, navigate to the Clients report, find and edit the Client record, then return to create a new Sales Order from scratch—or risk losing unsaved data.
The Problem
Zoho Creator provides asymmetric functionality for related records—you can create but not edit:
Action Single-Select Lookup Multi-Select Lookup
Select existing related record ✓ Yes ✓ Yes
Add new related record ✓ Yes (via + icon) ✓ Yes (via + icon)
Edit selected related record ✗ No ✗ No
View selected record details inline ✗ No ✗ No
The openUrl() Workaround — And Why It Falls Short
Technically, you can use Deluge's openUrl() function to open a related record for editing—either from the User Input of a field or from an anchor tag in an Add Notes field. According to the documentation on editing records via Record ID:
// URL pattern to edit individual records by passing record ID:
// https://<base_url>/<account_owner_name>/<app_link_name>/#Form:<form_link_name>?recLinkID=<record_ID>&viewLinkName=<view_link_name>

// Example: Open related Client record for editing via User Input
client_id = input.Client_Lookup.ID;
edit_url = "#Form:Clients?recLinkID=" + client_id + "&viewLinkName=Clients_Report&zc_LoadIn=dialog";
openUrl(edit_url, "same window");
Critical Limitation: While openUrl() can open the related record for editing, the lookup field's User Input workflow does not re-trigger when the related record is saved. This means any field population logic that runs on record selection won't run again after an edit.
The result is a broken workflow:
  • Parent form → Can open child record for editing ✓
  • Child record → Can be edited and saved ✓
  • Parent form → User Input workflow does not re-trigger
  • Parent form → Lookup display shows stale data
  • Parent form → Dependent fields remain outdated
Workaround Approach Implementation Problems Status
openUrl() from User Input Trigger openUrl() on field change to open related record in dialog - User Input workflow doesn't re-trigger after edit
- Lookup field shows stale display data
- Dependent fields remain outdated
⚠ Partial solution
Anchor tag in Add Notes Embed clickable link using <a href="..."> in Add Notes field - Same limitations as openUrl()
- Requires visible Add Notes field
- Less discoverable for users
⚠ Partial solution
1-Row Subform Replace lookup with a subform limited to 1 entry for "inline" editing - Cannot search/select from existing records
- Designed for creating new child data, not picking existing
- Doesn't scale (can't browse 5,000+ records)
- Loses all lookup field benefits
✗ Architectural mismatch
JavaScript Widget Build custom widget with iframe and postMessage API - Requires complete UI rebuild
- Complex development effort
- Maintenance overhead
- Not native Creator experience
✗ Overkill for simple requirement
Navigate Away User leaves current form, edits related record, returns - Loses unsaved parent form data
- Destroys dynamic form state and transient variable calculations
- Breaks user workflow
- Poor user experience
✗ Not viable
The Missing Pieces
For a complete solution, Zoho Creator would need to provide:
Capability Current State Required State
Native Edit Icon Not available on lookup fields Edit icon alongside + (add) icon
Parent Form Preservation No mechanism to preserve state Parent form remains open with unsaved data intact
User Input Re-trigger Does not fire after related record edit Existing User Input workflow re-triggers on related record save
Lookup Display Refresh Display shows stale data after edit Lookup field reflects updated related record data
What Should Happen Instead
Proposed Solution 1: Native Edit Icon on Lookup Fields
Add an edit icon (pencil) alongside the existing add icon (+) on lookup fields:
[ Selected Client Name     ▼ ]  [+]  [✏️]
│ │
│ └── Edit selected record (NEW)
└──────── Add new record (existing)
Clicking the edit icon would open the selected record in a dialog/modal, preserving the parent form's state.
Note for Multi-Select Lookups: The edit icon could appear next to each individual "pill" or selected item in the list, allowing users to edit any of the selected records independently.
Proposed Solution 2: Re-trigger Existing User Input Workflow
When a record is selected in a lookup field, it already triggers the field's User Input workflow. This same behavior should occur automatically when an edited related record is saved—no separate event type needed:
// Existing User Input workflow on Client_Lookup field
// This ALREADY triggers when a record is selected
// It SHOULD also trigger when the related record is edited and saved

on user input of Client_Lookup
{
// Populate fields based on selected client
input.Contact_Phone = input.Client_Lookup.Phone;
input.Contact_Email = input.Client_Lookup.Email;
input.Billing_Address = input.Client_Lookup.Address;
}
Expected behavior: After editing the Client record via the lookup field's edit icon and saving, the User Input workflow should re-trigger automatically—without requiring the user to manually de-select and re-select the record. This seamless refresh is what makes the UX feel native. The workflow would update any dependent fields with the corrected data using existing logic, no new code required.
Proposed Solution 3: Lookup Field Property for Edit Behavior
Add a lookup field property to control edit behavior:
Lookup Field Properties:
├── Allow Add New Record: ☑ Enabled
├── Allow Edit Selected Record: ☑ Enabled ← NEW OPTION
│ └── Edit Opens In: ○ Dialog ○ Slide-in Panel ○ New Tab
└── On Related Record Save: ○ Refresh Lookup ○ Custom Script ○ No Action
Note: The Edit icon should naturally respect the user's Module Permissions. If a user does not have 'Edit' access to the related form, the icon should remain hidden or disabled—consistent with existing permission behavior for the Add (+) icon.
Real-World Impact
This limitation affects any workflow involving:
  • CRM/Sales workflows — Updating client contact info while creating quotes or orders
  • Project management — Editing task details while logging time entries
  • Inventory systems — Correcting product specifications while processing orders
  • HR applications — Updating employee details while processing leave requests
  • Support ticketing — Modifying customer information while handling tickets
  • Data integrity — When users spot typos or outdated info but can't fix it easily, they tend to ignore it. This leads to "dirty data" accumulating simply because the "cost" of fixing it (navigating away, losing context) is too high
  • Any parent-child data relationship — Where child record corrections are discovered during parent record creation

User Experience Impact: Users are forced to choose between completing their current task with stale/incorrect related data, or abandoning their work to fix the related record. This friction compounds across every data entry session, significantly impacting productivity.

The Asymmetry Problem:
The ability to add new related records directly from a lookup field is incredibly useful and demonstrates that Zoho Creator understands the value of contextual record management. The absence of an equivalent edit capability creates an inconsistent and frustrating user experience.
If users can add related records without leaving the form, they should be able to edit them too.
Setting the Standard:
Zoho Creator is marketed as the platform for building bespoke solutions—applications tailored to workflows that standard SaaS offerings cannot accommodate. Bespoke solutions shouldn't be constrained by out-of-the-box limitations like this.
Creator is the ideal place to pioneer this feature. Developers choose Creator precisely because we need workflows that are more fluid and contextual than pre-built software allows. Native inline editing for lookup fields would reinforce Creator's position as a developer-first platform.
Request to Zoho Team

Can this be addressed in a future update?

The current implementation forces users to choose between:

1. Workflow Continuity
Complete the current form with potentially outdated related data, then fix later (risking data quality issues)
2. Data Accuracy
Abandon the current form, navigate to fix the related record, then start over (losing time and unsaved work)

We shouldn't have to make this choice—lookup fields should support both adding AND editing related records.

Community Input Requested: Has anyone else encountered this limitation or developed a more elegant workaround? I'd particularly love to hear from anyone who has implemented a JavaScript Widget solution and whether the development overhead was justified.


📚 Documentation References:
🔗 Related Community Discussions:
    • Recent Topics

    • Quote PDF – Header image stopped rendering suddenly

      Hello Zoho Support Team, We are facing an issue with Quote PDF templates in Zoho Books. Previously, images added inside the Quote header HTML were rendering correctly. However, recently the header image is no longer appearing, while header text still
    • Changing Default PDF Name

      Is it possible to change the default name of a PDF? As of right now, all of my quotes are named 'QT_$QuoteNumber' (i,e: 'QT_19803471298374) - would it be possible to change this to: '$CompanyName - $AccountName - $QuoteNumber' for instance?
    • Tip 2: Recursive functions in Deluge: How to dynamically run a function for a specified number of times.

      Hi folks, As part of the Zoho Creator - Tips and Tricks series every fortnight, we are back today with a new tip on Recursive functions.  Let us first quickly understand what Recursive functions are: A function that calls itself one or more times is known as a Recursive function. That is, you can execute a function to perform a particular action a specific number of times. And, at the end of each iteration, a new output is generated. Recursive functions are commonly used by programmers as it enables
    • Function #48: Manage fixed installment payments using Zoho Books

      Hello everyone, and welcome back to our series! Businesses offer installment payment options to their customers, particularly for expensive purchases, to ease the financial burden on them. By breaking down the total cost into smaller, more manageable
    • 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
    • Can’t create alias “Email alias already exists”

      Hi, I’m trying to create the following alias for my domain email. contact@ personal@ private@ But I get a email alias already exists. I had a soho account previously which I deleted which I suspect is causing the issue. Can someone assist? Kind Rega
    • Appraisals - Order of Previous Reviews Should Be Newest to Oldest

      The new Zoho People layout generally does a decent job at providing the necessary information for performing appraisals of employee performance. One example of this is the Previous Reviews section: This information is helpful when conducting a review.
    • Paging through API results. a major gap in your documentation.

      There is no way for me. to get all of my data through a single API call. Typically REST APis have mechanisms for paging through API results. But the documentation for the API I am using: https://desk.zoho.com/DeskAPIDocument#Introduction Has no mention
    • Recurring invoices were generated with old template...

      I have recurring invoices setup. Ones generated on 10.20.2025 used the modified template I had used. But for some reason, on the ones created on 11/20/2025, it seems the invoices created reverted to the previous version of the invoice template. Notably,
    • Tip #54- Exploring the Files Icon in Zoho Assist- 'Insider Insights'

      As we’re already in mid-December, it’s a good time to take a closer look at one of the most useful options in the Zoho Assist remote support dashboard—the Files icon. To get started, log in to Zoho Assist using your credentials. Once you’re in, navigate
    • Tip#47: Estimation planner

      Sprint planning becomes easier, smoother, more collaborative and more accurate with the Estimation Planner extension. Most work items involve multiple users, and each user's role and effort vary. To provide an unbiased and fair estimation point to the
    • Time Tracking on Iphone doesn't stop

      When I start a time tracking session the timer starts as expected. However when I hit stop, the timer remains on that project. The only buttons available are discard and start. Start runs the timer more and discard says it will throw away the data from
    • Zoho Sign - Zoho CRM extension upgrade

      Hi everyone, We've updated Zoho Sign extension for Zoho CRM with significant internal changes. Impact on existing Zoho Sign extension users Users using the extension without customization If you are using the integration without implementing Zoho Sign's
    • Group by Owner/ Owner Kanban /Group by Custom Field

      Hi, We are missing the option of viewing Tasks grouped by their owner, as it is an essential function for us to manage our employees' working tasks. We find it hard to inspect what are the tasks that our employees are working on.  We are seeking an option
    • Flow using way too many tasks

      I built a flow that is using way too many tasks for what it is doing. I reached out to support a week ago but never heard back so hoping the community can help. Does a filter count as a task? I am seeing tons of records filtered with < 1 Sec Time Taken
    • 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
    • Start Workflow from Deluge Script

      I have developed a customized process from our CRM that leverages a deluge script to create a statement of work document. Once the document has been created via the merge and store function, I would like the ability to start a workdrive review & approve
    • Saved Sections?

      In sites editor, the + button reveals options to add a section, element, etc. It includes Saved Sections, but I can find no way to save a section I've already created. Otherwise, is there a way to copy a section from one page to another?
    • Marketer's Space: Unable to select a sender address? Here's the fix

      Hello Marketers, Welcome back to yet another post! So you've added a sender address in Zoho Campaigns and later found that you're not able to select it while creating an email campaign. Has this ever happened to you? If so, don't worry—you're not alone.
    • Loading Project Balances in ZOHO Books for each project

      Hello, What is the best method for loading project balances actual and budget into ZOHO books to provide tracking to our project managers. We have projects and federal awards (also treated as projects) which span multiple years. We are converting from
    • Scale up your writing style with content analysis tool in Knowledge Base

      Hello everyone, Sometimes writers may have strong knowledge about the subject but may find it challenging to articulate clearly or produce comprehensible, jargon free content. To make the process easier and to ensure consistent, high-quality articles,
    • Zoho Books "Update" Trigger for Zapier?

      Hi Zoho Team, I've been in talks with Zapier about using their services to connect my Zoho Books account to various apps, but I require an additional trigger beyond the "New" trigger. I require an "Update" trigger, which will allow me to filter and create Zaps only when certain conditions are fulfilled on the Zoho Books end before I automate a separate app. Specifically this will help me create invoices in QuickBooks Online only when payments are recorded in Zoho Books, rather than when a new invoice
    • How to prevent editing of closed tickets in Zoho Desk?

      I would like to confirm whether it is possible to completely prevent agents from editing tickets once their status is set to Closed. Is there any configuration, permission, or best practice in Zoho Desk to ensure that closed tickets remain read-only and
    • Zoho Desk Limitations

      Good day, all, I would like to know whether others share my frustration with some of Zoho's limitations. Don't get me wrong, I like Desk (and I also have a subscription for Analytics), I have been with them for close to 10 years, and unfortunately, I
    • New Mandatory One-Click Unsubscribe Link Overshadowing Custom Unsubscribe Link

      I was recently informed by Zoho CRM Support that they are now mandated by the large email service providers like Google and Yahoo to provide a one-click unsubscribe option in the header (not the body) of all mass emails. I have a custom unsubscribe link
    • how to undoreconciled transaction

      how to undo reconciled transaction
    • Exciting Updates to the Kiosk Studio Feature in Zoho CRM!

      Hello Everyone, We are here again with a series of new enhancements to Kiosk Studio, designed to elevate your experience and bring even greater efficiency to your business processes. These updates build upon our ongoing commitment to making Kiosk a powerful
    • Change eMail Template for Event-Invitations

      Hello ZOHO-CRM Team How I can change the eMail Template for Event-Invitations? I work with the German Version of the Free Version. I know how I can modify eMail alerts or Signature Templates, but where I can other eMails modify you send out? Thank you for your answer. Regards, Juerg
    • Service Title in Service Report Template Builder

      I am currently working on the Service Report Template Builder in Zoho FSM. I have created three separate service report templates for different workflows: Preventive Maintenance Report Requested Service Report Installation Report My issue is that I cannot
    • Zoho Sign for Zoho Projects

      Documents authorization and validation with signature is now easier in project management with Zoho Projects' Zoho Sign extension. Sign documents or send them for signatures directly from tasks and issues using Zoho Sign extension in Zoho Projects. Extension
    • Deluge Learning Series – Best Practices in Deluge | December 2025

      We’re excited to bring you the next session of the Deluge Learning Series, focused entirely on writing cleaner, faster, and more reliable Deluge code. In this edition, we’ll dive deep into the essential best practices every Deluge developer should follow
    • Associate a Contact to a Campaign using deluge?

      If I want to add one record to another related list, which zoho function do I use? zoho.updateRelatedRecord is not it I don't think.  I simply want to take a "Contact" and associate it to a "Campaign" using deluge.  Can anyone help? contactId = 5122008000000796037;
    • Add "Groups" above "Users" in the Zoho Forms Left Menu

      Hi, We have Groups but you have to go to a Form and Share or use the Directory App to manage them, please add "Groups" above "Users" in the Zoho Forms Left Menu so you can manage them in 1 place within Zoho Forms too. Thanks Dan
    • Zoho Books | Product updates | October 2025

      Hello users, We’ve rolled out new features and enhancements in Zoho Books. From iOS 26 updates to viewing reports as charts, explore the updates designed to enhance your bookkeeping experience. Zoho Books Updates for Apple Devices At WWDC 2025, Apple
    • Adding Taxes to paid consultations in Zoho Bookings

      I created a 'paid' consultation under Zoho Booking and integrated it with payment gateways for online/instant payment before a booking is done. How can I add 'taxes' to the price of consultation? I can add taxes to other Zoho apps (liks Books, Checkout,
    • Zoho CRM Reports Module on Mobil App

      I have the mobile app and the reports module doesn't appear in the sidebar for some reason. I saw a Youtube video where the user had the Reports module on mobile. Is there a setting to show it on mobile? Thanks.
    • Inquiry on Help Centre Tab Customisation

      Hi Zoho team, I’m wondering if it’s possible to further customise the Help Center tabs, specifically the descriptions under Knowledge Base, Community, and Tickets. While the current setup allows customising tab names, being able to tailor the descriptions
    • Passing a form object to a function

      Suppose I have a sort_order field in multiple tables and I want to increment it by +1 onCreate of a new record. Is there a way to pass the form object as an argument into the function to keep things DRY? The following function from Zia works, but I'd
    • Can you copy and paste a page within a form?

      I have been looking at trying to copy/duplicate a whole page within a form. I can't see how I can do this without having to add all the data in again. This is very time consuming. Any help would be great.
    • Unable to sort as Descending order

      Trying to change the sort order for a lookup field (checkboxes) from Ascending to Descending and keep getting an error in Deluge that the order must be Ascending Did anyone ran into this? Thanks Eyal
    • Next Page