Kaizen #54 - Subforms vs. Related Lists

Kaizen #54 - Subforms vs. Related Lists

Hello everyone!
Welcome back to another week of Kaizen.
In this post, we will analyze how to choose between a subform and a related list based on your business case.

What will you learn from this post? 
  1. When to choose a subform?
  2. When to choose a related list?
  3. Comparing subforms and related lists
1. When to choose a subform?
Subforms are used to organize details in a record based on your business needs. Every line item is a subform record. To know more about subforms, refer to Kaizen #31 - Subforms #API.

1a. Business case
For instance, consider a scenario where you want to view all the necessary details of the stakeholders of an account, such as email ID, phone number, and so on while viewing an account record. 


For this, go to Setup > Modules and Fields > Accounts > Choose the desired layout and add a subform named "Stakeholders". In this subform, you can have a lookup field that points to Contacts (Stakeholders). You can further choose to add new fields or add fields from the Contacts module to the subform.

Adding fields from the Contact module to the subform:


Adding new/additional fields to the subform (it can be any of any field-type including aggregate/formula):


The system auto-populates the details of the stakeholder, based on the stakeholder name. Thus, allowing you to view all the necessary details of a stakeholder in a single glance. If needed, you can even add aggregate/formula fields to the subform.

Note:
The system automatically populates the values only if the value is present in that field in the child record.

For other sample business use cases, click here.

1b. Retrieving subform records along with parent record.
You can retrieve subform records only when you retrieve records with their unique ID. The system does not retrieve subform records when you retrieve all the records in a module, or perform a search operation.

Request URL: {{api-domain}}/crm/v2/Accounts/4150868000003247001
Request Method: GET

Sample Response:


You can also choose to retrieve just the subform records using Get Subforms API.

Note:
  • To know how to add aggregate fields to a subform, click here.
  • You can add formula fields to the subform. However, you can choose only the fields in the subform in your formula expression. Click here to know more about the formula fields.
  • You can create 2 subforms per module in the Enterprise edition and 5 subforms per module in Ultimate edition.
    • The maximum number of subform fields you can add in a layout is 8.
    • The maximum number of entries across all subforms on an aggregate is 200.
2. When to choose a related list?
A record usually contains extra information such as notes, attachments, and data related to other modules (linked via lookup/multi-select lookup fields) such as related tasks, calls, products etc.These modules are categorized as related lists, and the records in each of these related lists are called related records. To know more about related lists, refer to Kaizen #48 - Related Lists and Related Records #API.

Let us try to solve the same business scenario as above using related lists.

The system lists all the related records (child) under a record (parent) based on the value in the lookup/multi-select lookup fields in the child records.

When you link an account while adding a contact, it will be directly displayed in the respective account's related list. You can show/hide the fields that are displayed in the related list based on your business needs. However, you cannot add additional fields as in subforms.

2a. Reasons why related list is not the best choice for this case:
  • You cannot add an aggregate field that calculates the stakeholder share.
  • You cannot add any formula field.
  • The related list data is auto-populated based on the value in the lookup/multi-select lookup field. 
2b. Business case for a related list
Consider a scenario where you need to view all the products that a contact is interested in. You can have a contact multi-select lookup in the products module. As and when you add product records with related contacts, it will be listed as related records in the respective contacts. This way you need not switch between modules to view the related records.


3. Comparing subforms and related lists

Here is a comparison between the subforms and related lists. 
Subforms
Related lists
Primarily used to organize data in a record based on your business needs.
Primarily used to perceive parent-child/one-to-many relationships between records. 
Allows you to add new fields (both normal and aggregate).
You can only display/hide the fields of the child record. 
You cannot configure workflow rules based on subform fields (except aggregate fields)
You can configure workflow rules based on related lists.
Subforms are layout-specific.
Related lists remain the same for all the layouts in a module. 
Subforms not available in Activities, Pricebooks and Purchase Orders, Sales Orders, Invoices and Quotes
The system creates related records when you add values to lookup/multi-select lookup fields. It is available in all the modules except Activities.
While converting a lead or a quote, fields used in a subform will not be converted.
While converting a lead or a quote, the related list data will be retained in the converted record. 

We hope you found this post useful. Let us know your thoughts in the comment section or reach us out at support@zohocrm.com.

Cheers!

    Access your files securely from anywhere







                          Zoho Developer Community






                                                • Desk Community Learning Series


                                                • Digest


                                                • Functions


                                                • Meetups


                                                • Kbase


                                                • Resources


                                                • Glossary


                                                • Desk Marketplace


                                                • MVP Corner


                                                • Word of the Day


                                                • Ask the Experts



                                                          • Sticky Posts

                                                          • Kaizen #197: Frequently Asked Questions on GraphQL APIs

                                                            🎊 Nearing 200th Kaizen Post – We want to hear from you! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
                                                          • Kaizen #198: Using Client Script for Custom Validation in Blueprint

                                                            Nearing 200th Kaizen Post – 1 More to the Big Two-Oh-Oh! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
                                                          • Celebrating 200 posts of Kaizen! Share your ideas for the milestone post

                                                            Hello Developers, We launched the Kaizen series in 2019 to share helpful content to support your Zoho CRM development journey. Staying true to its spirit—Kaizen Series: Continuous Improvement for Developer Experience—we've shared everything from FAQs
                                                          • Kaizen #193: Creating different fields in Zoho CRM through API

                                                            🎊 Nearing 200th Kaizen Post – We want to hear from you! Do you have any questions, suggestions, or topics you would like us to cover in future posts? Your insights and suggestions help us shape future content and make this series better for everyone.
                                                          • Client Script | Update - Introducing Commands in Client Script!

                                                            Have you ever wished you could trigger Client Script from contexts other than just the supported pages and events? Have you ever wanted to leverage the advantage of Client Script at your finger tip? Discover the power of Client Script - Commands! Commands


                                                          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 Writer

                                                                                            Get Started. Write Away!

                                                                                            Writer is a powerful online word processor, designed for collaborative work.

                                                                                              Zoho CRM コンテンツ




                                                                                                Nederlandse Hulpbronnen


                                                                                                    ご検討中の方




                                                                                                          • Recent Topics

                                                                                                          • Two currencies

                                                                                                            More and more I am finding that internattional payments' fees are unpredictable. I would like, on my invoices that are in a foreign currency (eg. USD$ or EUR€) for there to be a GBP£ TOTAL display alongside the invoice's currency total. This would make
                                                                                                          • Automatic Matching from Bank Statements / Feeds

                                                                                                            Is it possible to have transactions from a feed or bank statement automatically match when certain criteria are met? My use case, which is pretty broadly applicable, is e-commerce transactions for merchant services accounts (clearing accounts). In these
                                                                                                          • Generate leads from instagram

                                                                                                            hello i have question. If connect instagram using zoho social, it is possible to get lead from instagram? example if someone send me direct message or comment on my post and then they generate to lead
                                                                                                          • Kaizen #71 - Client Script ZDKs for Detail (Canvas) Page

                                                                                                            Hello everyone! Welcome back to another interesting Kaizen post. In this post, we can discuss Client Script ZDKs support for Detail (Canvas) Page. What is Detail (Canvas) Page? A Detail(Canvas) Page allows you to customize the record detail page to your
                                                                                                          • Where is the desktop app for Zoho Projects???

                                                                                                            As a project manager, I need a desktop app for the projects I manage. Yes, there's the web app, which is AWESOME for cross browser and platform compatibility... but I need a real desktop app for Projects that allow me to enter offline information where
                                                                                                          • Prevent duplicate with custom fields?

                                                                                                            I was wondering something about custom field/custom modules in Zoho Desk. For some reason you can make a custom field mandatory but not unique? For example, if I create a custom module to manage equipment and renewal and make a field serial number no
                                                                                                          • How to Automate Monthly PDF Reports with Filters in Zoho Creator

                                                                                                            Hi everyone, I’m trying to build an automated monthly reporting process in Zoho Creator and would appreciate suggestions or best practices from anyone who has done something similar. What I’m trying to do: I have a form called New_Customer with fields
                                                                                                          • Feedback: Streamlining Note Management in Zoho Notebook

                                                                                                            Dear Team/Support, I would like to share some feedback regarding the note management system that could help improve usability and accessibility for users like myself. Notebook 1 (screenshot attached): Currently, the system does not allow selecting and
                                                                                                          • showing Limit exceeded

                                                                                                            Good afternoon...trust you're good. I've been having issues working with but it's not responding. it's showing Limit exceeded, sorry it seems like too many people are working on the sheet right now please try again later. meanwhile no one is working on
                                                                                                          • Converting Sales Order to Invoice via API; Problem with decimal places tax

                                                                                                            We are having problems converting a Sales Order to an Invoice via API Call. The cause of the issue is, that the Tax value in a Sales Order is sometimes calculated with up to 16 decimal places (e.g. 0.8730000000000001). The max decimal places allowed in
                                                                                                          • Sorting columns in Zoho Projects

                                                                                                            Hi, In project management best practice, sorting columns (ascending, descending) is an important tool. Sorting dates to see the order of tasks starting, sorting on priority or even on planned hours is a must for an efficient project control. Currently,
                                                                                                          • CRM : Function to add user name to text field

                                                                                                            I have a lookup field in a module that is linked to the CRM users so we can assign a Project Lead to the customer. Sadly Zoho Marketing Automation doesn't sync Lookup fields so I need to extract information from the lookup to text fields: Lookup field
                                                                                                          • Upload API

                                                                                                            I'm trying to use the Upload API to upload some images and attach them to comments (https://desk.zoho.com/DeskAPIDocument#Uploads#Uploads_Uploadfile) - however I can only ever get a 401 or bad request back. I'm using an OAuth token with the Desk.tickets.ALL
                                                                                                          • Losing description after merging tickets

                                                                                                            Hello, We merge tickets when they are about the same topic from the same client. It happens sometimes. We recently noticed that after the merger only the description from the master ticket is left in a thread. And the slave-ticket description is erased.
                                                                                                          • Option to Empty Entire Mailbox or Folder in Zoho Mail

                                                                                                            Hello Zoho Mail Team, How are you? We would like to request an enhancement to Zoho Mail that would allow administrators and users to quickly clear out entire folders or mailboxes, including shared mailboxes. Current Limitation: At present, Zoho Mail only
                                                                                                          • update linked contacts when update happens in account

                                                                                                            Hi, I have a custom field called Licence in the Accounts module. When someone buys a licence, I’d like to update a custom field in the related Contacts. How can I achieve this? I noticed that workflows triggered on Accounts only allow me to update fields
                                                                                                          • Problem Management Module

                                                                                                            I am looking for a Problem Management module within Zoho Desk. I saw in some training videos that this is available, and some even provided an annual price for it. I want an official confirmation on whether this is indeed available. This is not a particularly
                                                                                                          • Deluge sendmail in Zoho Desk schedule can't send email from a verified email address

                                                                                                            I am trying to add a scheduled action with ZDesk using a Deluge function that sends a weekly email to specific ticket client contacts I've already verified the email address for use in ZDesk, but sendmail won't allow it in its "from:" clause. I've attached
                                                                                                          • Unable to explore desk.zoho.com

                                                                                                            Greetings, I have an account with zoho which already has a survey subscription. I would like to explore desk.zoho.com, but when I visit it while logged in (https://desk.zoho.com/agent?action=CreatePortal) I just get a blank page. I have tried different
                                                                                                          • Offline support for mobile app

                                                                                                            Accessing your files and folders from your mobile devices is now quicker and simpler, thanks to the power of offline support. Whether on an Android or iOS device, you can use the Offline function to save files and folders, so you can review them even
                                                                                                          • Zoho Desk KB article embedded on another site.

                                                                                                            We embed KB articles from Zoho Desk on another site (our application). When opening the article in a new tab, there is no issue, but if we choose lightbox, we are getting an error "To protect your security, help.ourdomain.com will not allow Firefox to
                                                                                                          • Transitioning to API Credits in Zoho Desk

                                                                                                            At Zoho Desk, we’re always looking for ways to help keep your business operations running smoothly. This includes empowering teams that rely on APIs for essential integrations, functions and extensions. We’ve reimagined how API usage is measured to give
                                                                                                          • List of packaged components and if they are upgradable

                                                                                                            Hello, In reference to the article Components and Packaging in Zoho Vertical Studio, can you provide an overview of what these are. Can you also please provide a list of of components that are considered Packaged and also whether they are Upgradable?
                                                                                                          • Does Attari Messaging app have Bot option and APIB

                                                                                                            Hi, Does Attari also have Bot and API as we use in WhatsApp??
                                                                                                          • how to use validation rules in subform

                                                                                                            Is it possible to use validation rules for subforms? I tried the following code: entityMap = crmAPIRequest.toMap().get("record"); sum = 0; direct_billing = entityMap.get("direct_billing_details"); response = Map(); for each i in direct_billing { if(i.get("type")
                                                                                                          • How to add application logo

                                                                                                            I'm creating an application which i do not want it to show my organization logo so i have changed the setting but i cannot find where to upload/select the logo i wish to use for my application. I have seen something online about using Deluge and writing
                                                                                                          • Introducing Keyboard Shortcuts for Zoho CRM

                                                                                                            Dear Customers, We're happy to introduce keyboard shortcuts for Zoho CRM features! Until now, you might have been navigating to modules manually using the mouse, and at times, it could be tedious, especially when you had to search for specific modules
                                                                                                          • Empowered Custom Views: Cross-Module Criteria Now Supported in Zoho CRM

                                                                                                            Hello everyone, We’re excited to introduce cross-module criteria support in custom views! Custom views provide personalized perspectives on your data and that you can save for future use. You can share these views with all users or specific individuals
                                                                                                          • Send Automated WhatsApp Messages and Leverage the Improved WhatsApp Templates

                                                                                                            Greetings, I hope all of you are doing well. We're excited to announce a major upgrade to Bigin's WhatsApp integration that brings more flexibility, interactivity, and automation to your customer messaging. WhatsApp message automation You can now use
                                                                                                          • Verifying Zoho Mail Functionality After Switching DNS from Cloudflare to Hosting Provider

                                                                                                            I initially configured my domain's (https://roblaxmod.com/) email with Zoho Mail while using Cloudflare to manage my DNS records (MX, SPF, etc.). All services were working correctly. Recently, I have removed my site from Cloudflare and switched my domain's
                                                                                                          • Zoho Analytics Regex Support

                                                                                                            When can we expect full regex support in Zoho Analytics SQL such as REGEXP_REPLACE? Sometimes I need to clean the data and using regex functions is the easiest way to achieve this.
                                                                                                          • Change of Blog Author

                                                                                                            Hi, I am creating the blog post on behalf of my colleague. When I publish the post, it is showing my name as author of the post which is not intended and needs to be changed to my colleague's name. How can I change the name of the author in the blogs?? Thanks, Ramanan
                                                                                                          • Show Attachments in the customer portal

                                                                                                            Hi, is it possible to show the Attachments list in the portal for the particular module? Bests.
                                                                                                          • Does Zoho Docs have a Line Number function ?

                                                                                                            Hi, when collaborating with coding tasks, I need an online real time share document that shows line numbers. Does Zoho's docs offer this feature ? If yes, how can I show them ? Regards, Frank
                                                                                                          • Please make it easier to Pause syncing

                                                                                                            right now it takes 3 clicks to get there. sounds silly, but can you make it just 2 clicks to get it done instead? thats how dropbox does it, 2 clicks to pause instead of 3.
                                                                                                          • Feature Request - Insert URL Links in Folders

                                                                                                            I would love to see the ability to create simple URL links with titles in WorkDrive. or perhaps a WorkDrive extension to allow it. Example use case: A team is working on a project and there is project folder in WordDrive. The team uses LucidChart to create
                                                                                                          • Organization Emails in Email History

                                                                                                            How can I make received Org Emails to show up here?
                                                                                                          • how to differentiate if whatsapp comes from certain landing page?

                                                                                                            I create a Zobot in SalesIQ to create a Whatsapp bot to capture the lead. I have 2 landing pages, one is SEO optimized and the other want is optimized for leads comes from Google Ads. I want to know from which landing page this lead came through WhatsApp
                                                                                                          • How to sync from Zoho Projects into an existing Sprint in Zoho Sprints?

                                                                                                            Hi I have managed to integrate Zoho Projects with Zoho Sprints and I can see that the integration works as a project was created in Zoho Sprints. But, what I would like to do is to sync into an existing Zoho Sprints project. Is there a way to make that
                                                                                                          • How to record company set up fees?

                                                                                                            Hi all, We are starting out our company in Australia and would appreciate any help with setting up Books accounts. We paid an accountant to do company registration, TFN, company constitution, etc. I heard these all can be recorded as Incorporation Costs, which is an intangible asset account, and amortised over 5 years. Is this the correct way to do it under the current Australian tax regulations? How and when exactly should I record the initial entry and each year's amortasation in Books? Generally
                                                                                                          • Next Page