Cannot Access Subform Display Order in Deluge

Cannot Access Subform Display Order in Deluge

As highlighted in this community post, we still have to deal with the significant limitation of not being able to access the user-sorted order of subform rows through Deluge. This creates a major disconnect between the UI capabilities and backend automation, and I'm hoping the Zoho team can address this in a future update.

The Issue
Zoho Creator now offers two distinct subform sorting methods:
  • Drag and drop: Manual, user-controlled sorting where users reorder rows by dragging them into their preferred sequence. The sort order is arbitrary and based on user preference, not field values.
  • By predefined column: Automatic, system-controlled sorting based on a specified column that happens whenever the record is created or updated. The sort order is predictable and based on field values.
However, these sorted orders are completely invisible to Deluge scripts. When you iterate through subform rows using for each loops, you get the records in their original creation order—regardless of whether the subform uses drag-and-drop sorting or automatic column-based sorting.

The Problem
Regardless of which sorting method is configured, the display order is trapped in the UI layer—Deluge has no way to access it.
Sorting Method What User Sees What Deluge Sees Result
Drag and Drop
User drags Row 5 to position 1
Row 5 appears at the top of the subform Row 5 is still in position 5 (creation order) ✗ Custom order completely ignored
Predefined Column
Subform set to sort by "Priority" (High to Low)
Rows automatically displayed in priority order after save Original creation order (Row 1, Row 2, Row 3...) ✗ Automatic sorting not reflected
Either Method
User clicks "Generate Report" button
Expects report to match displayed order Report generated in creation order ✗ Output doesn't match user's view
Current Limitations
Regardless of which sorting method is enabled, you cannot:
  • Loop through subform rows in the display order (whether drag-and-drop or predefined column)
  • Access any "sort order" or "display position" field
  • Determine which column is used for automatic sorting
  • Detect if drag-and-drop sorting is enabled
  • Update a field (like "Sequence Number") to reflect the sorted order
  • Generate custom reports in Pages or Deluge that respect the subform's display order
Important Note: Record Templates do preserve the re-sorted order when generating PDFs or documents. This means basic reporting through record templates works correctly. However, for any advanced reporting—such as custom HTML in Deluge, Pages, or programmatic data processing—the sorted order is completely inaccessible, making it impossible to replicate what record templates can do.
Example: The Disconnect
Here's a real-world scenario that demonstrates the problem:
// SCENARIO: Task subform is configured to sort by "Priority" column (High to Low)
// This is automatic sorting - happens when record is created/updated
// User clicks a button to "Generate Prioritized Task List"

// What the developer writes:
for each task in input.Task_Subform
{
    task_list = task_list + task.Task_Name + "\n";
}

// EXPECTED OUTPUT (what user sees on screen after save):
// 1. Fix critical bug (High)
// 2. Review code (High)  
// 3. Update documentation (Medium)
// 4. Refactor old code (Low)

// ACTUAL OUTPUT (what Deluge produces):
// 1. Update documentation (Medium)     ← Created first
// 2. Fix critical bug (High)           ← Created second  
// 3. Refactor old code (Low)           ← Created third
// 4. Review code (High)                ← Created fourth

// Result: User confusion and loss of trust in the system
// Note: The same problem occurs with drag-and-drop sorting!
Impact: The generated output doesn't match what the user sees on screen, creating confusion and undermining user confidence. This affects both automatic sorting (by predefined column) and manual sorting (drag-and-drop).
Attempted Workarounds (All Inadequate)
Workaround Approach Implementation Problems Status
Manual Sequence Field Add a "Sequence" number field that users manually update - Requires users to manually type numbers
- Defeats purpose of drag-and-drop sorting
- Doesn't work with predefined column sorting
- Prone to errors and gaps
- Poor user experience
✗ Not viable for real-world use
Sort in Deluge Instead Use Deluge's .sort() function on subform collection - Only works if you know the predefined sort column
- Cannot replicate custom drag-and-drop order at all
- Assumes single-column sorting
- Doesn't help if user needs multi-column sort
- Still a workaround for what should be automatic
⚠ Partial solution for predefined column only
JavaScript Widget Build custom UI using JavaScript Widget instead of native form - Requires abandoning native form entirely
- Must rebuild entire subform interface from scratch
- Significant development and maintenance overhead
- Loses all native form features and functionality
- Defeats the purpose of using Creator's built-in forms
✗ Not viable - abandons native functionality
What Should Happen Instead
Proposed Solution 1: Display Order Field Add a system-generated field that reflects the current display order:
for each task in input.Task_Subform.sortBy("display_order")
{
    // Process tasks in the order the user sees them
    info task.Task_Name;
}
Proposed Solution 2: Sort State Information Provide access to the current sort configuration and type:
sort_info = input.Task_Subform.getSortState();
// Returns: 
// {"type": "predefined_column", "column": "Priority", "direction": "desc"}
// or {"type": "drag_and_drop"}

if(sort_info.get("type") == "drag_and_drop")
{
    // Drag-and-drop enabled, access via display_order
    sorted_tasks = input.Task_Subform.sortBy("display_order");
}
else if(sort_info.get("type") == "predefined_column")
{
    // Predefined column sorting, replicate that sort
    sorted_tasks = input.Task_Subform.sortBy(sort_info.get("column"), sort_info.get("direction"));
}
else
{
    // No sorting configured, use creation order
    sorted_tasks = input.Task_Subform;
}
Proposed Solution 3: Built-in Sort Preservation Automatically update a hidden "display_sequence" field whenever the display order changes (whether through predefined column sorting or drag-and-drop), making it accessible to Deluge:
// System automatically maintains display_sequence field for both sorting methods
for each task in input.Task_Subform.sortBy("display_sequence")
{
    // Always iterates in display order
    // Works regardless of sorting method (predefined column or drag-and-drop)
    info task.Task_Name;
}
Any of these solutions would bridge the gap between UI capabilities and backend automation for both sorting methods.
Real-World Impact
This limitation affects critical business processes:
  • Project Management (Predefined Column): Subform automatically sorts tasks by priority, but automated status reports generate in creation order, not priority order
  • Meeting Agendas (Drag and Drop): Users arrange agenda items manually via drag-and-drop, but generated PDF shows items in original entry order
  • Invoice Line Items (Drag and Drop): Users reorder line items for presentation purposes, but printed invoices ignore the arrangement
  • Course Curriculum (Predefined Column or Drag and Drop): Instructors order lessons logically (either by lesson number or manual arrangement), but student-facing materials display in database order
  • Checklist Applications (Predefined Column): Subform automatically sorts by due date or priority, but automated reminders follow original creation order
  • Product Catalogs (Drag and Drop): Users arrange products by preference or featured status, but exports and integrations ignore the curation

User Experience Impact: Whether using predefined column sorting (automatic) or drag-and-drop sorting (manual), when users see data in a particular order on screen and the system's automation ignores it, it creates frustration and erodes trust. Users expect that if they can see data in a certain order, the system should be able to work with it in that order.

Request to Zoho Team

Can this be addressed in a future update?

This is a fundamental disconnect between what users see in the UI and what developers can access in code. Both sorting methods (predefined column and drag-and-drop) suffer from this limitation. The current implementation forces developers to choose between:

1. Disable Sorting
Remove sorting capabilities (both predefined column and drag-and-drop) to avoid user confusion when automation doesn't respect display order
2. Accept Mismatch
Allow users to sort but acknowledge that automation will produce unexpected results

Neither option is acceptable for professional applications.

Community Input Requested: Has anyone else encountered this limitation or found a reliable workaround? This affects any application where subform ordering matters to end users.




        • Recent Topics

        • Office 365 and CRM mail integration: permission required

          Has anyone run into this weird problem? My email server is Office 365. When I try to configure Zoho CRM to use this server, a Microsoft popup window opens requesting user and password. After entering that, I get a message in the Microsoft window saying
        • Deluge - Can't get phone number SalesIQ

          Hey folks, I’m building a custom plug for SalesIQ that’s supposed to register leads into Zoho CRM. The SalesIQ chat is being implemented on WhatsApp, and in my plug I’m using this line: mobile_clean = session.get("phone").get("value"); From what I understand,
        • Zoho Desk - Community

          As a regular user of Zoho Cares Community I would really love to see the publish date of articles. For example, when I look at Announcements, it would be very beneficial to see which ones were posted recently, over those which have just and a recent comment.
        • access to quartz for my customers

          Hi how can I have access to the application quartz you use for us to send you screen rocording, this feature would be immensely useful for our customers support https://quartz.zoho.com/
        • Issue with Inline Images in Email Reply via Zoho Desk API

          Hi, I am attempting to send inline images in an email reply using the Zoho Desk API, but the images are not being displayed inline for the recipient. I have followed this documentation: https://desk.zoho.com/DeskAPIDocument#Uploads https://desk.zoho.com/DeskAPIDocument#Threads#Threads_SendEmailReply
        • How to search a value stored in a subform?

          Hello, We store serial numbers in subforms but now we would like to be able to search the values to be able to easily find the record with the serial number. I saw that it's not possible to search such values through global search but is it possible to do it an other way? Thank you,
        • Field Dependency Not Working on Detail Page in Zoho Desk

          Hi Support Team, I’ve created field dependencies between two fields in Zoho Desk, and they are working correctly on the Create and Edit layouts. However, on the Detail page, the fields are not displaying according to the dependencies I’ve set — they appear
        • How do the keyword critera work?

          Hi, I'm working on automated assignment of tickets based on keywords. How does this feature work? Where does this criteria look for keywords - email address, subject, email body? Can you please clarify this as I want to avoid overlapping with criteria
        • Error: Unsupported content type: text/html;charset=UTF-8 after tryeing to get the token for n8n automation

          I am working on ZOHO Desk automation and need to get the ZOHO auth token for n8n I have created the app in ZOHO Desk API, got client id and client secret. Added all data required to get a token in n8n. After I sign in with my ZOHO credentials in ZOHO
        • Improving Collaboration Features in Zoho Portal

          Hello Zoho Community, I’ve recently started exploring Zoho services and I’m really impressed with the wide range of features. However, I feel there is still room for improvement in the collaboration area. For example, it would be really helpful if we
        • Automated Shopify Emails Not Being Delivered

          I have an ecommerce store with Shopify. I recently set up my email to be served through Zoho. Since doing this, customers are not receiving some of our automated emails from Shopify itself. Our initial email that confirms their purchase goes through but our Shipping Notification that is automatically sent out upon fulfillment is not going through. Sometimes we get a notice that it's been classified as spam, sometimes nothing. I can send/receive email via Outlook on my desktop and I can send/receive
        • Send a campaign to one recipient.

          Very often I speak to a customer and they say they didn't see my email (maybe it went in Junk, maybe they deleted it). Anyway, I just want to go into the Campaign and send it to one person. You already have a feature very close to this - when sending a Test. While developing a campaign, I can send tests to anyone. Why can't we have this AFTER  the campaign has been sent? I know, there's a caveat, and that's in the use of merge tags. Most of the time I only use FNAME, but maybe you could check if
        • Try FSM again for our business

          We already have our customers individual equipment in CRM with serial numbers, install dates, warranty length and importantly next service which is generally 2 years. a month before the service date is due we get get a report and send out service reminders.
        • Get Cliq Meetings in my O365 calendar

          Hi, we are currently evaluating to replace the Teams Messaging and Meetings with Cliq. We currently still have all our email and calendars in O365. What i want to achieve is, to create a (ZOHO) meeting from Cliq and have this meeting added to my Outlook/O365
        • Issue with Zoho Help Portal – Tickets Missing or Not Answered

          Hi, How are you? I think there may be an issue with the Zoho Help Portal. I opened a few tickets directly in the help portal a some time ago but never received any response I also opened ticket 148356451 by email. I did receive a reply to it, but the
        • DUNS & Bradstreet and Credit risk monitoring integration with Zoho books

          Small businesses not being paid by bigger clients and clients of all sizes is a huge problem. It will be nice if Zoho develops integration with DUNS & Bradstreet(D&B) and Credit risk monitoring integration with Zoho books. That have small businesses can
        • Zoho Forms - Form Rules based on attachment fields

          Many businesses use forms to collect documents and images from customers. In many cases, you may want to trigger a notification or other automation based on whether or not an attachment was added. I've noticed that attachment fields do not appear in Rules
        • Can't open draft email for editing

          Last night I started composing an email and I let it save in drafts. This morning I want to continue working on the email. It is in my Drafts folder but it will not open. The only option there is to delete it. This is not the first time it has happened. On previous occasions I have just deleted the draft and started afresh, but I really want this one back. Windows 10 with Pale Moon 28.10.0 browser.
        • Open filtered deals from campaign

          Do you think a feature like this would be feasible? Say you are seeing campaign "XYZ" in CRM. The campaign has a related list of deals. If you want to see the related deals in a deal view, you should navigate to the Deals module, open the campaign filter,
        • Change scheduling emails time

          When sending an individual email there is a great feature to schedule them to send later. I could only use the one time that is suggested. Is there a way to select another time? Regards, Glenn
        • Zoho CRM: how can I control which contacts to sync with Outlook?

          I was just playing around syncing contacts from Zoho to MS Outlook (MS365 account.) The problem is our firm has hundreds of thousands of contacts and I don't want to bury my contacts list in outlook. Any help with this is greatly appreciated.
        • How to overcome limitations in meetings

          As a company, one of our deliverables is a meeting between two other companies, where we act as facilitators. So, if we recorded this meeting  in Zoho CRM, it should be connected to 2 accounts, 2 contacts, and 1 campaign (a campaign, in our use, is the
        • Add a 'Log a Call' link to three dot icon in Canvas

          Hi, There's a three dot element when creating a canvas called 'More'. I would like to modify this to add a link that says 'Log a Call' in order to quickly record the details of a cellphone call. I'd also like this to be a simple 'contact' selection and
        • Syncing Zoho Forms with Bigin - Embedding issue?

          Hello everyone, I created a Zoho Form for a page on my GoDaddy website to collect leads, which then transfers the data to Bigin. However, I'm facing an issue where it doesn't seem to work properly. I've integrated Zoho Forms with Bigin and tried embedding
        • Can not add fields to a Section

          I feel like I'm missing something obvious: I can add new Sections to my form but I can not add fields to the Sections. I've tried fields already on the form as well as dragging and dropping new fields into the Section but nothing will go into it. What
        • Record Logged in User while using CRM lookup field

          Is it possible, while using the Zoho CRM lookup field, to automatically use the user account logged into Zoho CRM in a hidden field? I was hoping to add employee accounts to my current plan. But would like a record on the Form submission of who submitted
        • Form Rules for Suburb Categories to alternate landing pages or Making a Fields Contents ALL CAPS

          I need to send differentform submissions to two to three different thank-you URLs (for Meta/Google pixels) depending on which suburb a user selects in a form. I have ~400 suburbs split into two categories (A and B, based on business value). Current challenges:
        • Collaps Notes

          There are times when long/large notes are added to a record i.e. Accounts or Deals etc. Currently, the full note is displayed in the notes related list section. It would be great if by default only 5 to 10 rows of the note are displayed when the note
        • Zoho Down

          I have a drop in my Zoho One services.
        • Runing RPA Agents on Headless Windows 11 Machines

          Has anyone tried this? Anything to be aware of regarding screen resolution?
        • Problem for EU users connecting Zoho CRM through Google Ads for Enhanced conversions

          Has anyone else experienced this problem when trying to connect Zoho CRM through Google Ads interface to setup enhanced conversions? Did you guys get it fixed somehow? The Problem: The current Google Ads integration is hardcoded to use Zoho's US authentication
        • Why am I getting event Pop-up Notification for events that have been cancelled?

          Why is Calendar Notification still popping up for events that have been cancelled or changed? Each time events are cancelled or changed, I have observed that I am still getting notifications for them. Below is a sample pop-up notification for one of the
        • Create a draft in reply to an email via Emails API

          Hi, I’d like to use the outgoing webhook to automatically create a draft reply to incoming mail. How can I use the Emails API to create a draft reply that is linked to an existing email thread? I couldn’t find the relevant method in the documentation.
        • India Tech Support

          Is there no phone tech support number for India? And no chat facility either?
        • Billing Management: #1 Billing a Universal Business Routine

          Hello, As the saying goes, "Do the hardest job first." We started with the complex subject of finance and revenue management, which is considered the backbone of any business. Now, let's shift our focus and take a deep dive into this Billing Management,
        • What is a a valid JavaScript Domain URI when creating a client-based application using the Zoho API console?

          No idea what this is. Can't see what it is explained anywhere.
        • 5名限定 課題解決型ワークショップイベント Zoho ワークアウト開催のお知らせ (9/25)

          ユーザーの皆さま、こんにちは。Zoho ユーザーコミュニティチームの藤澤です。 9月開催のZoho ワークアウトについてお知らせします。 今回はZoomにて、オンライン開催します。 諸事情につき、今月の開催回は中止となりました。 次回は10/31(金)14時からの開催を予定しています。 ━━━━━━━━━━━━━━━━━━━━━━━━ Zoho ワークアウトとは? Zoho ユーザー同士で交流しながら、サービスに関する疑問や不明点の解消を目的とした「Zoho ワークアウト」を開催します。 Zoho
        • Workdrive 5.0 / API Documentation Workflows

          Hi Zoho, When will the API documentation of the workflows be published? We are interested in using it to trigger manual workflows from an external application. Greetings, Justin
        • How many ZOHO-Sites does the ZOHO-One Suite allow for?

          The free version of ZOHO-Sites allows for two sites, but it seems that the professional version (which is included in the ZOHO-One Suite) only allows for two websites. Is that correct? How many sites can I have within one ZOHO-One account?
        • Webhook from Zobot to Zoho Flow fails

          I'm trying to connect from zobot to zoho flow. When testing in zflow, I am receiving all entered data from the connector correctly. The SalesIQ connector's "outputreaction" is {} (is this normal or is there a problem?). But as soon as I try my chat bot
        • Next Page