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

    • Create & Update Zoho Vault Passwords via Zoho Flow

      Hi Zoho Flow / Zoho Vault Team, We’d like to request an enhancement to the Zoho Vault integration in Zoho Flow. Current Limitation: At the moment, Zoho Flow supports only the following selected Zoho Vault actions, such as: Fetch passwords, Share passwords
    • Custom Related List Inside Zoho Books

      Hello, We can create the Related list inside the zoho books by the deluge code, I am sharing the reference code Please have a look may be it will help you. //..........Get Org Details organizationID = organization.get("organization_id"); Recordid = cm_g_a_data.get("module_record_id");
    • Migrate different zoho subscription to zoho one

      Dear We have different zoho subscription we need to migrate it to zoho one. Currently we are paying for zoho email, zoho expense, zoho payroll etc under different admin We need to move it too zoho one flexlible plan for all my employees
    • Features, Feedback and Votes

      We’re launching the Feedback Forum for our customers. This is 'THE' place where you can add everything you’d like to see in Zoho Books. If you don't find the specific feature you need, simply add it so others can also vote for it. While we cannot promise
    • Payment system for donations management

      I manage an organization where we receive donations from payers. Hence, there is no need to first create invoices and then create payments received against the invoices. What are the recommended best practices to do this in ZohoBooks?
    • There Might Be A Glitch in Determining If A String Represents A URL

      I suspect there might be a glitch in determining if a string represents a URL or not. For example, I cannot embed the following URL. Perhaps the exclamation mark or parentheses are the culprit? https://en.wikipedia.org/wiki/How_the_Grinch_Stole_Chri
    • Customer Management: #4 Enhance Customer Journey

      When Neha started DefineOps, a growing IT support and consulting firm, most of her work was straightforward. A client would sign up for a free version, decide whether the service works for them, and then either continue or discontinue. Billing was simple,
    • Android app sync problem - multiple devices have same problem

      Hello, I am having a problem with synchronization in the Android app. When I create a drawing, the data does not sync correctly—only a blank note is created without the drawing. I tested this on multiple devices, including phones and tablets, and the
    • Marketing Tip #1: Optimize item titles for SEO

      Your item title is the first thing both Google and shoppers notice. Instead of a generic “Leather Bag,” go for something detailed like “Handcrafted Leather Laptop Bag – Durable & Stylish.” This helps your items rank better in search results and instantly
    • Territory Assignment Issues (Lead to Account + Contact)

      1. Lead → Account & Contact Territory Assignment on Conversion A Lead is automatically assigned one or more territories using a workflow and Lead Assignment Rules. This works as expected, and we are able to assign multiple territories to a Lead automatically.
    • Marketer's Space: Proven tips to improve open rates – Part II

      Hello Marketers! Welcome back to another post in Marketer's Space! We're continuing from where we left off a fortnight ago. We ended the previous post discussing the subject line, and we'll continue from there. Let's dive right in. Pre-header Pre-header
    • SQL Table slowed to a crawl

      Hi all - I seem to have noticed an update. Now whenever I am typing in the script field for the SQL tables there is a huge delay and it is all very slow. This has never been the case for me in over 5 years of using Analytics - I really hope it's fixed
    • Deluge Events/search API works in user environment but not in sandbox – why?

      I am creating an Extension for Zoho CRM using Zoho Sigma Platform I’m using the following Deluge code to search Events in Zoho CRM based on Start_DateTime: criteria = "(Start_DateTime:greater_than:2025-12-20T00:00:00+00:00)"; url = "crm/v8/Events/search?criteria="
    • Ensure Consistent Service Delivery with Comprehensive Job Sheets

      We are elated to announce that one of the most requested features is now live: Job Sheets. They are customizable, reusable forms that serve as a checklist for the services that technicians need to carry out and as a tool for data collection. While on
    • What are Zoho Meeting capabilities included in Zoho Workplace Standard?

      I am evaluating using Zoho Meeting for my organization, but it is not clear what Zoho Meeting capabilities are already included in Zoho Workplace Standard. - Are meeting recordings included in Workplace Standard? - Can we invite external meeting participants
    • How can I get the participant list of a reoccurring meeting afterwards?

      I'm trying to use the Meeting Participant Report from the API docs but when I call it on a reoccurring meeting it returns that there are no participants because it thinks I'm talking about the meeting in the future. Is there a way to use webhooks or some
    • Function #50: Send Mass emails to your customers

      Hello everyone, and welcome back to our series! We have reached a milestone of 50 Functions, which means that we have automated 50 different tasks in Zoho Books. Every Friday, we have shared a nifty function aimed at either automating a task or streamlining
    • Full Hebrew Language Support for Client-Side Zoho Assist Interface

      Dear Zoho Assist Team, We would like to request an enhancement to Zoho Assist's client-side interface to support full Hebrew language customization, including all popups, notifications, and session-related messages. Current Limitation The Join page allows
    • Add Hebrew & RTL Support to Feedback Widget

      Hello Zoho Desk Team, How are you? We are using Zoho Desk and would like to utilize the Feedback Widget. While Zoho Desk itself supports Hebrew and RTL, the Feedback Widget unfortunately does not. We kindly request that Hebrew and full RTL support be
    • Merge Tickets Directly from Contact Page in Zoho Desk

      Dear Zoho Desk Support Team, We are writing to request a new feature that would allow users to easily merge tickets directly from the contact page in Zoho Desk. Currently, the only option to merge tickets is from the Tickets list view page, which can
    • Different languages for users

      Hello, Do you plan to enable individual users to select their languages for interface? Currently language can be changed for everyone - it looks like a settings for a whole portal, which is not good when you are working internationally. Best regards,
    • 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
    • 2025年 Zoho コミュニティ 活動の振り返り 🎉

      ユーザーの皆さん、こんにちは!コミュニティチームの中野です。 2025年も多くの学びと出会いがあったZoho コミュニティ。 本記事では今年の活動を振り返りながら、フォーラムの投稿・参加者の皆さん・イベントのハイライトをご紹介していきます。 目次 フォーラム:注目の投稿 フォーラム:多くの貢献をしてくださった方々 ユーザー交流会振り返り ワークアウト振り返り その他のトピックス 1. フォーラム:注目の投稿 本フォーラムでは様々な議論と知識の共有が行われました。 ユーザーの皆さんが日々の業務で直面する課題を投稿し、経験豊富なユーザーさん達が実践的な解決策を提供してくださいました。
    • Customer Management: #3 Giving Customers Control & Privilege

      Rio, the founder of RenoTech Solutions, a fast-growing digital service company, found itself juggling a dozen different services for its clients. They handled one-time setup fees, recurring monthly invoices, and custom milestone-based billing for projects.
    • Can I use a Standalone CRM Function as the Callback URL For Async Export Data API?

      I am creating an export job using this API https://www.zoho.com/analytics/api/v2/bulk-api/export-data-async/create-export/view-id.html There is a "callbackUrl" key in the CONFIG object. I tried copying the URL for a standalone function in CRM which can
    • Add RTL (Right-to-Left) Text Direction Support Across All Zoho Learn Editing Interfaces

      Hi Zoho Learn Team, Hope you're doing well. We would like to request an important enhancement to Zoho Learn regarding support for right-to-left (RTL) languages such as Hebrew and Arabic. 🔹 Current Issue While the Knowledge Base Article editor provides
    • Add Hebrew Support for Meeting Transcripts Provided by ZIA in Zoho Cliq

      Hi Zoho Cliq Team, Hope you're doing well. We would like to request the addition of Hebrew language support for the Meeting Transcript and Summary feature in Zoho Cliq. Currently the transcript and summary feature is available for recorded meetings and
    • Remote Control Functionality During Screen Sharing in Zoho Cliq

      Hello Zoho Cliq Team, We would like to request the addition of remote control functionality during screen sharing sessions in Zoho Cliq. Currently, while screen sharing in Cliq is very useful, it lacks the ability for another participant to take control
    • Centralized Organization Information Management in Zoho One

      Dear Zoho One Support, I'm writing to propose a feature that would significantly improve the user experience and streamline data management within Zoho One. Current Challenge: Currently, managing organization information across various Zoho One apps requires
    • Enhance Zoho One Conditional Assignment to Fully Reassign App Settings When Changing Departments

      Hi Zoho Team, We’d like to submit a feature request regarding the current behavior of Zoho One’s conditional assignment logic when moving a user between departments. 🔧 Current Limitation As it stands, Zoho One’s conditional assignment does not remove
    • Ability to Filter Alias Mailboxes in Zoho Recruit

      Dear Zoho Recruit Team, I hope you are doing well. We would like to request a feature enhancement regarding the handling of alias mailboxes in Zoho Recruit. Currently, when we connect an alias mailbox (e.g., jobs@domain.com) from our Zoho One account
    • Automatic Department and Employee Sync Between Zoho One and Zoho People

      Dear Zoho Support, I'm writing to propose a valuable feature request that would streamline data management and improve user experience within the Zoho ecosystem: automatic synchronization between departments and employees in Zoho One and Zoho People.
    • Prefered Bin Missing in android APP

      Andoroid app dosent show preferred bin in the picklist. The workaround support reccomend is to use the computre to create the picklist. it shuld be information to be shown aas basic for the pciker.
    • Open Sans Font in Zoho Books is not Open Sans.

      Font choice in customising PDF Templates is very limited, we cannot upload custom fonts, and to make things worse, the font names are not accurate. I selected Open Sans, and thought the system was bugging, but no, Open Sans is not Open Sans. The real
    • Function #1: Convert an accepted Estimate to Sales Order automatically in Zoho Books

      As you’re aware, Zoho Books provides a default option to have the estimates automatically converted to invoices once your customer accepts them. Many of you wanted a similar option for sales orders, so here’s a workflow that converts accepted estimates
    • Reusable Jira Connection for Multiple Zoho Projects Imports

      Hello Zoho Projects Team, We would like to raise a concern and submit a feature request regarding the Jira → Zoho Projects migration process, specifically around how Jira connections are handled. Current Behavior: When setting up a Jira connection for
    • Zoho invoice doesn't support Arabic language

      I added a clause in the terms & conditions section in Arabic but it doesn't appear when I sent or print it.
    • Recurring Invoice Placeholder Not Updating Billing Period

      Hi, I’m using Zoho Invoice Free and want the billing period to update automatically in recurring invoices. In Item Description I tried: Billing Period: %(m-6)% %(y)% to %(m-1)% %(y)% but even if the invoice date is in 2026, it still shows the period based
    • Related list Mobile Device

      Hello, We use an the Zoho creator application to make reports linked to Accounts. On the computer: it's easy to go the Account and see all the created reports in the related list below On iPad/Phone ZOHO CRM APP: we cannot see the reports on those accounts
    • Can't update the company address in zoho invoice

      Dear Sir/Madam, I want to update the company address in Zoho Invoice but failed. It popped out a sentence "Invalid value passed for Website". Please advice how to solve this problem. Thank you.
    • Next Page