Customize List views using Client Script

Customize List views using Client Script

Hello everyone! 

Welcome back to another interesting Kaizen post. In this post, we can discuss how to customize List Views using Client Script. This post will answer the questions Ability to remove public views by the super admin in the Zoho CRM and Is it possible to restrict ZCRM user to see only custom views created by administrator?



In this post,
  1. What is a List View?
  2. Use Case - To hide all public views except one
  3. Solution using Client Script
  4. Other ZDKs available to customize List Views
  5. Summary
  6. Related Links



1. What is a List View?

      A List View is grouping of records based on a defined set of criteria. List Views are beneficial for displaying customer specific data according to your business requirements. For example, you may be interested in following-up on the leads created during the last week or reviewing overdue tasks. The best way to handle these scenarios is to filter the records using the list views. Click here for more details on List Views.There are two types of List Views in Zoho CRM -
  • Standard List Views : You can modify the standard views and sort the order of the columns in the list. 
  • Custom List Views : You can create, modify, and delete custom views, and you can also sort the order of the columns in the list.
Often, there are business requirements where you need to customize these views, like hiding a view from certain users or masking a particular column in the view. Let us see how to control the list views visible to a user, using Client Script.

2. Use Case - To hide all public views except one

      Zylker is a manufacturing company that uses Zoho CRM. A Salesman creates records in the custom module named "Orders".The name of the profile assigned to a Salesman is "Sales".  The Admin does not want the "Sales" profile users to view the standard public views except the "My Orders" public view.

3. Solution using Client Script 

      Admin should remove the visibility to all public views for the profile "Sales" and permit only the "My Orders" view. Here are the list of steps to be followed.
  • Create a Client Script for List Page (Standard) of Orders module and specify the event as onCustomViewLoad.  To know more about how to create a Client Script, click here.





    log(ZDK.Page.getComponent("list-custom-view").getOptions());


  •  Then,  getOptions() will return the options in the component of List Page. Here the component is 'list-custom-view'.
  • Now with  the copied id of "My Orders" view , use  "getComponent.setOptions()" and add the only option on list-custom-view as "My Orders" view, if the profile is "Sales".

var user = ZDK.Apps.CRM.Users.fetchById($Crm.user.id);
if (user.profile.name != 'Sales') {
    ZDK.Page.getComponent("list-custom-view").setOptions([{ id: "5575270000000876021" }]);
}
  • Save the Script.

  • You can now see that only "My Orders" view is visible for the "Sales" profile, and all other public views are hidden.

  • For other profiles like Manager and Admin, all public views will be visible as shown below.

We are working on the other components in the List Page, and will let you know once they are live.

4. Other ZDKs available to customize List Views

Client Script enables you  to customize List Views using the following list of ZDKs and Client Script functions.
  • freezeColumns(option) - You can freeze list view and disable modifying columns.
  • maskField(field_name, (length,character,reverse)) - You can mask fields in the List View
  • sortByField(field_name, option) - You can sort field in the List View
  • getRecords() - You can get Records in the List View
  • selectRecords(criteria) - You can select Records in the List view by criteria
  • selectRecordsByID(ids) - You can select Records in the List view by record ID
  • clearSelection() - You can clear selected Records in the List view
  • style(style_config, criteria) - You can style Records in the List View. Click here to view the related Kaizen post.
  • setValue(value) - You can set the component value in the Page
  • getValue() - You can Get the component value in the Page
  • setVisibility(value) - You can set visibility of the component in the Page
5. Summary:

In this post, we have discussed,
  • About standard and custom List Views.
  • How to control the visibility of List Views using Client Script.
  • How to fetch the list of views available for a module using Client Script.
  • How to set your desired views for users using Client Script.
  • ZDK methods available in Client Script to customize List views

6. Related Links

Notes
Kaizen Collection : 
Click here to view our Kaizen Collection. 
We hope you found this post useful. We will meet you next week with another interesting topic!
If you have any questions, let us know in the comment section.


Cheers!




      Zoho Campaigns Resources


        • 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

          Zoho CRM Plus Resources

            Zoho Books Resources


              Zoho Subscriptions Resources

                Zoho Projects Resources


                  Zoho Sprints Resources


                    Zoho Orchestly Resources


                      Zoho Creator Resources


                        Zoho WorkDrive Resources



                          Zoho CRM Resources

                          • CRM Community Learning Series

                            CRM Community Learning Series


                          • Tips

                            Tips

                          • Functions

                            Functions

                          • Meetups

                            Meetups

                          • Kbase

                            Kbase

                          • Resources

                            Resources

                          • Digest

                            Digest

                          • CRM Marketplace

                            CRM Marketplace

                          • MVP Corner

                            MVP Corner




                            Zoho Writer Writer

                            Get Started. Write Away!

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

                              Zoho CRM コンテンツ






                                ご検討中の方

                                  • Recent Topics

                                  • Prevent stripping of custom CSS when creating an email template?

                                    Anyone have a workaround for this? Zoho really needs to hire new designers - templates are terrible. A custom template has been created, but every time we try to use it, it strips out all the CSS from the head.  IE, we'll define the styles right in the <head> (simple example below) and everything gets stripped (initially, it saves fine, but when you browse away and come back to the template, all the custom css is removed). <style type="text/css"> .footerContent a{display:block !important;} </style>
                                  • 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
                                  • 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
                                  • How to keep track of bags, cans, drums of inventory?

                                    We buy and sell products that are packaged in bags 🛍️, cans🥫, drums🛢️, etc. with batch numbers. When we get a shipment of one of the products, how do we track we received (say) 10 cans each of 5L of a product and maybe we received 10 cans of another
                                  • Zoho Error: This Operation has been restricted. Please contact support-as@zohocorp.com for further details

                                    Hello There, l tried to verify my domain (florindagoreti.com.br) and its shows this error: This Operation has been restricted. Please contact support-as@zohocorp.com for further details. Screenshot Given Below -  please check what went wrong. Thanks
                                  • 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?
                                  • Replace Lookup fields ID value with their actual name and adding inormation from subforms

                                    Hi everyone,  I wanted to see if someone smarter than me has managed to find any solutions to two problems we have. I will explain both below.  To start we are syncing data from Zoho CRM to Zoho Analytics and I will use the Sales Order module when giving
                                  • Having Trouble Opening The Candidate Portal

                                    Recently am having trouble opening the Candidate Portal. It keeps loading but cannot display any widgets. Tried Safari, Chrome and Edge. Non of them work. Please solve the problem ASAP.
                                  • 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
                                  • Transition from Sole Proprietorship to GmbH (Limited Liability Company) – Best Approach in Zoho Books / Zoho One

                                    Hello everyone, I am currently operating under a Zoho One plan with a sole proprietorship in Switzerland. As of January 1st, 2026, I will be incorporating a new legal entity – a GmbH (Swiss equivalent of a Limited Liability Company). While the business
                                  • Presenting ABM for Zoho CRM: Expand and retain your customers with precision

                                    Picture this scenario: You're a growing SaaS company ready to launch a powerful business suite, and are looking to gain traction and momentum. But as a business with a tight budget, you know acquiring new customers is slow, expensive, and often delivers
                                  • Best way to display complex Bookings Consultation Descriptions on Zoho Site?

                                    I am a new user so apologies if this has been asked before. I couldn't find any answers in the forum. We offer 18 complex Consultations to our subscribers. Our current platform lets me put detail on these Consultations thoroughly (200-300 words) during
                                  • DKIM cannot be enabled for the domain as no verified default selector present

                                    Hi Support Team, For Domain DKIM record trying to enable status. but showing error "DKIM cannot be enabled for the domain as no verified default selector present" So, please resolve the issue. Thank you.
                                  • Issue Connecting My Domain to Zoho Sites Despite Purchasing It from Zoho

                                    Hello, I am facing an issue connecting my domain to my website on Zoho Sites. Details of the issue: I purchased the domain directly from Zoho. I am already using the same domain successfully with Zoho Mail. However, when I try to assign this domain to
                                  • Insert auto number from main form into subform rows

                                    Hello. I'm trying to take from my main form "order number" which i have setup as an auto generated number into every line created in my subform. So when a row is created in my subform i want the "order number " from the main form to be inserted automatically.
                                  • Dark Mode - Font Colors Don't Work

                                    When editing a document in Dark Mode and selecting font colors, they don't show up on screen.  Viewing/editing the same document in Light Mode shows them just fine.
                                  • Integrate Bunq with ZOHO Bookes

                                    We are new users of ZOHO Books, and our bank (BUNQ, in the Netherlands) isn't listed on the bank integrations. Is there a way to handle this?
                                  • Cliq iOS can't see shared screen

                                    Hello, I had this morning a video call with a colleague. She is using Cliq Desktop MacOS and wanted to share her screen with me. I'm on iPad. I noticed, while she shared her screen, I could only see her video, but not the shared screen... Does Cliq iOS is able to display shared screen, or is it somewhere else to be found ? Regards
                                  • 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
                                  • Access Denied

                                    I am iOS Developer and updating our clients project and shifted ZohoDeskPortalCore SDKs from cocoapods to SPM and changed few lines of code but now i am get access denied, the help center app is unavailable. please contact administrator.
                                  • Using Zoho Desk to support ISMS process

                                    Hi, I am evaluating using Zoho Desk for security incident management. This seems to be aligned with Zoho Desk purpose as its just another type of incident. However in security incident management, ideally I can link incidents (tickets) with a risk from
                                  • Bin Locations

                                    Dear all, I am wondering if someone has the ability to develop the bin locations option for zoho inventory (integrated with zoho books) Regards, Ryan
                                  • TaxJar vs Avalara

                                    Hi, I'm evaluating adoption of a sales-tax service for US based business. Anyone else have experience with TaxJar and Zoho Books? I am a Zoho One subscriber so anticipate needing to use Flow to make this work. It seems like Avalara are simply too expensive
                                  • How to check Leads with no Task (open activity)

                                    Hi everyone, I was wondering if there’s a way to view leads that don’t have any tasks assigned or open activities linked to them.
                                  • What can we do on our end to improve the Answer bot answers?

                                    Hi, I'm using the Answer bot card in the Codeless bot builder. I've input several questions and their answers in the FAQ section to feed the Answer bot. The text is all in French, as this is the language our customers communicate in. I've tried testing
                                  • Zoho Books Sandbox environment

                                    Hello. Is there a free sandbox environment for the developers using Zoho Books API? I am working on the Zoho Books add-on and currently not ready to buy a premium service - maybe later when my add-on will start to bring money. Right now I just need a
                                  • Taxes for EU B2B Transactions

                                    Currently, ZC doesn't seem to have a procedure for validating VAT numbers of businesses purchasing in another EU state, and removing local VAT is valid.  This is essential for all inter EU B2B trade.
                                  • How to upload file to Connect using API?

                                    Hi there. I looked at the API documentation and nowhere did it mention how to use the API method to upload a file even though it is mentioned that it is possible to be done so. Please help.
                                  • Items Landed Cost and Profit?

                                    Hello, we recently went live with Zoho Inventory, and I have a question about the Landed Cost feature. The FAQ reads: "Tracking the landed cost helps determine the overall cost incurred in procuring the product. This, in turn, helps you to decide the
                                  • How can I setup Zoho MCP with Chat GPT

                                    I can set up custom connections with Chat GPT but I cat an error when I try to set it up. The error is: "This MCP server can't be used by ChatGPT to search information because it doesn't implement our specification: search action not found" Thoughts?
                                  • 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,
                                  • Group Tax in Service Line Items

                                    Hi FSM Team! I noticed that when you update a tax in the service line item the group tax is not showing up as an option. Let me know what can be done thank you!
                                  • Zoho Campaigns - Why do contacts have owners?

                                    When searching for contacts in Zoho Campaigns I am sometimes caught out when I don't select the filter option "Inactive users". So it appears that I have some contacts missing, until I realise that I need to select that option. Campaigns Support have
                                  • FSM Improvement Idea - Show an Import button when there is no data

                                    I am setting up FSM for a client and I noticed that there is no option to import data, see screenshot below. Even when you click Create Contact there is only an option to Import from Zoho Invoice. It is only after you add at lease 1 record that the Import
                                  • Zoho FSM API Delete Record

                                    Hi FSM Team, It would be great if you could delete a record via API. Thank you,
                                  • OAUTH_SCOPE_MISMATCH Error for Marketing Automation APIs with CRM Plus Account

                                    I'm trying to integrate Marketing Automation journey triggering via API but getting OAUTH_SCOPE_MISMATCH errors. I need clarification on API access for CRM Plus users.
                                  • Access token generate from the refresh token not working for API

                                    Dear Sir/Madam, When I use my refresh token to obtain new access_token, that token return INVALID_TOKEN when the same API is called. I made sure that my api site is correct and match the auth web site. However the original access_token work fine.
                                  • Adding a developer for editing the client application with a single user license

                                    Hi, I want to know that I as a developer I developed one application and handed over to the customer who is using the application on a single user license. Now after6 months customer came back to me and needs some changes in the application. Can a customer
                                  • Function #4: Schedule Customer Statements

                                    Regularly sending statements to customers is an imperative part of many business processes as it helps foster strong customer relationships and provides timely guidance on payments. While you can generate the statement of accounts and have it sent over
                                  • Limiting search or dependencies with an asterisk "*".

                                    I have a form with several dependency fields with options still developing for each field. Since these options were developing and not yet ready to be a selection in the field, I placed a filter for the dropdown field. In this filter, I selected fields
                                  • Next Page