Kaizen #121 : Customize List Views using Client Script

Kaizen #121 : 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!



    • Recent Topics

    • Enable Locations for Expense

      Hi, please enable Locations (ex Branches) for Zoho Expense so that there is consistency between this app and Zoho Books. Thanks in advance.
    • Currency abbreviations

      Hello, Im stuck, and need help. I need the currency fields for example, opportunity value, or total revenue, to be abbreviated, lets say for 1,000 - 1K, 1,000,000 - 1M, and so on, how should I do this?
    • in the Zoho Creator i have File Upload field get the file on submission of the form Get the File and upload to Zoho Books

      in the Zoho Creator i have File Upload field get the file on submission of the form Get the File and upload to Zoho Books . how I get the file From zoho creator and upload to Zoho Books . using Api response = invokeUrl [ url: "https://www.zohoapis.com/creator/v2.1/data/hh/l130/report/All_Customer_Payments/"+input.ID
    • Generate a link for Zoho Sign we can copy and use in a separate email

      Please consider adding functionality that would all a user to copy a reminder link so that we can include it in a personalized email instead of sending a Zoho reminder. Or, allow us to customize the reminder email. Use Case: We have clients we need to
    • Syntax for URLs in HTML Snippets

      What are some best practices for inserting a URL in an HTML snippet? I've looked at Zoho Help articles on navigation-based and functional-based URLs, but I'm still unclear on how to incorporate them in an HTML snippet. For example, 1. How do I link to
    • Rate Limiting in Zoho Flow (OpenAI API)

      Hi Everyone, We are facing some issues when using Zoho Flow as we have a deluge script running which is making external calls to OpenAI endpoint. Sometimes the response takes more than 30 seconds meaning the script will timeout. We want to implement a
    • Placing a condition before converting the LEAD

      Hi,  I need some assistance with Lead conversion. I need to place certain conditions before allowing the user to convert the lead.  For example: up until the certain status's doesn't equal "green" don't allow to convert lead.  I tried creating this using
    • it is possible to open a widget via deluge script function

      I have one function that is workflow action I call my fucntion I need to call the internal widget it is possible to open or it have to please tell me the solution
    • Creator - Portal Custom Domain

      I will pay $100 in crypto to anyone who can actually get my Creator Custom Domain to function (actually tell me how you got yours to).  Domain verifies, Nothing. I've been fighting it a week, multiple chats to customer service. Clearly I'm doing something wrong.  Some datapoints Domain name itself unimportant, can be a string of numbers.  I need to know what registrars are working for you because GoDaddy does NOT.  Do I need hosting? I've tried both ways and nothing works.  I pushed through Cloudflare
    • steps and options to change Domain DNS/Nameservers settings

      Please share the options or steps to change  Domain DNS/Nameservers settings 
    • Employees in Leave Policy exceptions

      In the Leave Policies we should be able to add specific employees to the exception list So it will be like All Employees except A,B,C in the exception list, currently we can only add departments etc
    • How I set default email addresses for Sales Orders and Invoices

      I have customers that have different departments that handle Sales Orders and Invoices. How can i set a default email for Sales Orders that's different than the default email for Invoices? Is there a way I can automate this using the Contact Persons Departments
    • Modular Permission Levels

      We need more modular Permissions per module in Books we have 2 use cases that are creating problems We need per module export permission we have a use case where users should be able to view the sales orders but not export it, but they can export other
    • Kaizen #157: Flyouts in Client Script

      Hello everyone! Welcome back to another exciting edition of our Kaizen series, where we explore fresh insights and innovative ideas to help you discover more and expand your knowledge!In this post, we'll walk through how to display Flyouts in Client Script
    • How get stock name from other column ?

      How get stock name from other column ? e.g. =STOCK(C12;"price") where C12 is the code of the stock
    • 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
    • Download an email template in html code

      Hello everyone, I have created an email template and I want to download it as html. How can i do that? I know you can do it via the campaigns-first create a campaign add the template and download it as html from there. But what if i don't want to create
    • Attachment is not included in e-mails sent through Wordpress

      I have a Wordpress site with Zeptomail Wordpress plugin installed and configured. E-mails are sent ok through Zeptomail but without the included attachment (.pdf file) Zeptomail is used to send tickets to customers through Zeptomail. E-Mails are generated
    • Upcoming Changes to the Timesheet Module

      The Timesheet module will undergo a significant change in the upcoming weeks. To start with, we will be renaming Timesheet module to Time Logs. This update will go live early next week. Significance of this change This change will facilitate our next
    • Best way to schedule bill payments to vendors

      I've integrated Forte so that I can convert POs to bills and make payments to my vendors all through Books. Is there a way to schedule the bill payments as some of my vendors are net 30, net 60 and even net 90 days. If I can't get this to work, I'll have
    • Cant update image field after uploading image to ZFS

      Hello i recently made an application in zoho creator for customer service where customers could upload their complaints every field has been mapped from creator into crm and works fine except for the image upload field i have tried every method to make
    • Billing Management: #4 Negate Risk Free with Advances

      In the last post, we explored how unbilled charges accumulate before being invoiced. But what happens when businesses need money before service begins? Picture this: A construction company takes on a $500,000 commercial building project expected to last
    • Is there an equivalent to the radius search in RECRUIT available in the CRM

      We have a need to find all Leads and/or Contacts within a given radius of a given location (most likely postcode) but also possibly an address. I was wondering whether anyone has found a way to achieve this in the CRM much as the radius search in RECRUIT
    • Zoho CRM Inventory Management

      What’s the difference between Zoho CRM’s inventory management features and Zoho Inventory? When is it better to use each one?
    • Cannot Enable Picklist Field Dependency in Products or Custom Modules – Real Estate Setup

      Hello Zoho Support, I am configuring Zoho CRM for real estate property management and need picklist field dependency: What I’ve tried: I started by customizing the Products module (Setup > Modules & Fields) to create “Property Type” (Housing, Land, Commercial)
    • Get Workflow Metadata via API

      Is there a way to get metadata on workflows and/or custom functions via API? I would like to automatically pull this information. I couldn't find it in the documentations, but I'm curious if there is an undocumented endpoint that could do this. Moderation
    • Zoho Projects - Q2 Updates | 2025

      Hello Users, With this year's second quarter behind us, Zoho Projects is marching towards expanding its usability with a user-centered, more collaborative, customizable, and automated attribute. But before we chart out plans for what’s next, it’s worth
    • FSM setup

      So we have been tinkering with FSM to see if it is going to be for us. Now is the time to bite the bullet and link it to our zoho books and zoho crm. The help guides are good but it would really help if they were a bit more in depth on the intergrations.
    • Upcoming Updates to the Employees Module in Zoho Payroll (US)

      We've made a couple of updates to the Employees module in Zoho Payroll (latest version of the US edition). These changes will go live today. While creating an employee Currently, the Compensation Details section is part of the Basic Details step, where
    • Possible to Turn Off Automatic Notifications for Approvals?

      Hello, This is another question regarding the approval process. First a bit of background: Each of our accounts is assigned a rank based on potential sales. In Zoho, the account rank field is a drop-down with the 5 rank levels and is located on the account
    • ZOHO Creator subform link

      Dear Community Support, I am looking for some guidance on how to add a clickable link within a Zoho Creator subform. The goal is for this link to redirect users to another Creator form where they can edit the data related to the specific row they clicked
    • Allow Resource to Accept or Reject an Appointment

      I have heard that this can be done, is there any documentation on how?
    • Create new Account with contact

      Hi I can create a new Account and, as part of that process, add a primary contact (First name, last name) and Email. But THIS contact does NOT appear in Contacts. How can I make sure the Contact added when creating an Account is also listed as a Contact?
    • Custom Fonts in Zoho CRM Template Builder

      Hi, I am currently creating a new template for our quotes using the Zoho CRM template builder. However, I noticed that there is no option to add custom fonts to the template builder. It would greatly enhance the flexibility and branding capabilities if
    • Python - code studio

      Hi, I see the code studio is "coming soon". We have some files that will require some more complex transformation, is this feature far off? It appears to have been released in Zoho Analytics already
    • Sync desktop folders instantly with WorkDrive TrueSync (Beta)

      Keeping your important files backed up and accessible has never been easier! With WorkDrive desktop app (TrueSync), you can now automatically sync specific desktop folders to WorkDrive Web, ensuring seamless, real-time updates across devices. Important:
    • How To Insert Data into Zoho CRM Organization

      Hi Team I have this organization - https://crm.zoho.com/crm/org83259xxxx/tab/Leads I want to insert data into this Leads module, what is the correct endpoint for doing so ? Also I have using ZohoCRM.modules.ALL scope and generated necessary tokens.
    • Where can I get Equation Editor por Zoho Writer?

      I need to use Math Formulas in my document. Thank you.
    • How can I get base64 string from filecontent in widget

      Hi, I have a react js widget which has the signature pad. Now, I am saving the signature in signature field in zoho creator form. If I open the edit report record in widget then I want to display the Signature back in signature field. I am using readFile
    • Creator roadmap for the rest of 2022

      Hi everyone, Hope you're all good! Thanks for continuing to make this community engaging and informative. Today we'd like to share with you our plans for the near future of Creator. We always strive to strike a good balance of features and enhancements
    • Next Page