Navigate between pages

Navigate between pages

 
Hello everyone!

Welcome back to another exciting Kaizen post. In this post, let us see how you can you navigate to different Pages using Client Script. 


In this Kaizen post,
  1. Need to Navigate to different Pages
  2. Client Script ZDKs related to navigation
         A. navigateTo()
         B. navigation_data
  3. Use Case
  4. Solution
  5. Summary
  6. Related Links


1. Need to Navigate to different Module's Pages in Zoho CRM

Often navigation between Module pages is required for improved user experience and streamlined workflows. Seamless transitions between related modules ensure quick access to relevant data and actions, enhancing productivity. For example, whenever the status of Account is updated to "Deal Creation", you can open the Deal Create Page. 

2. ZDKs to navigate to different pages

A. navigateTo()

Using this ZDK method, you can open any modules' detail/create/clone/edit page in a new tab or in same tab. Here is the syntax.



Click here to know more details.

B. navigation_data

Using The Constant , $Page.navigation_data, you can get the data passed from navigateTo() method.



Click here to know more details.

3. Use Case

Zylker is a manufacturing organisation uses Zoho CRM. The admin wants to automatically open the Deal Create Page whenever the status in the Detail Page of Account is "Deal Creation". Also Deal Create Page should have the "Account Name"  prefilled from the Detail Page of Account record."

4. Solution

If the user updates the status to "Deal Creation" in Accounts module you need get confirmation from the user and  open a new Deal Create Page automatically with Account Name prefilled. 

To accomplish this using Client Script, you need to create two Client Scripts. 

A. Client Script for Accounts Module
B. Client Script for Deals Module

A. Client Script for Accounts Module

Create a Client Script for Detail Page of "Accounts" module with the following details and click "Next". To know more about Creating Client Script, click here.


  • In the Client Script IDE, enter the below script and click Save.
  1. var a_name = ZDK.Page.getField("Account_Name").getValue();
  2. var rec_id = $Page.record_id;
  3. if (value == "Deal Creation")
  4. {
  5.     var resp=ZDK.Client.showConfirmation("Do you want to update the status as Deal Creation?");
  6.     if (resp)
  7.     {
  8.         var rec = $Page.record;
  9.         var rec_id = $Page.record_id;
  10.         rec.status = "Deal Creation";
  11.         var response = ZDK.Apps.CRM.Accounts.updateById(rec, rec_id);
  12.         log(response);
  13.  ZDK.Client.navigateTo('record_create', { module: 'Deals', custom_data: {data: a_name,data_id :$Page.record_id}}, '_blank')
  14.     }
  15. }

  • Whenever the status is updated to "Deal Creation" , you can show a Confirmation box using showConfirmation() asking whether the user wants to update the status as "Deal Creation"
  • Then, update the current record's status using updateById(). You can use the $Page, to get the current record id.
  • Then using  navigateTo() method you can open the Deal Create Page from Account Detail Page.
  • As per the following syntax, you should pass the required parameters, which includes the data needed for the Client Script on Deal Page. In this case the data being passed is the Account Name and Id.
  • Syntax : navigateTo(page, params, data, target)
    • page :  record_create denotes that you want to open Create Page.
    • params :  You need to mention the name of the module for which the Create Page has to be opened. In this case it is "Deals". You can also mention the layout_id and record_id in params. For more details, click here.
    • data : "custom_data" hold the data that you want to pass to the Deals Page.
    • target: You can open the page in same tab or in a different tab using "_self" and "_blank" respectively.
B. Client Script for Deals Module

Now, create another Client Script for "Deals" module with the following details and click "Next".



In the Client Script IDE, add the following script and click "Save"

  1. var a = $Page.navigation_data;
  2. if (a!=null);
  3. {
  4. var field_obj1 = ZDK.Page.getField('Account_Name');
  5. field_obj1.setValue({ "id":a.data_id , "name":a.data });
  6. }

To get the data passed in Account Detail Page, you need to use "$Page.navigation_data". In this script you can use setValue() and mention the id and name of "Account Name". As Account Name is a lookup field, you should mention the Id of the Account along with the Account Name.

Here is how the Client Script Works.


Click here to know more details.

Note:

You can open any external URL using Client Script in a new tab using openURL().



Click here to know more details.

5. Summary :

In this post we have discussed,
  • How to pass data from one page to the other using Client Script.
  • How to perform actions after a record is updated.
  • How to update a record using Client Script without clicking on Save button.
  • How to open external URLs using Client Script.
-------------------------------------------------------------------------------------------------------------------

6. Related Links :


-------------------------------------------------------------------------------------------------------------------

Previous Post: Kaizen #141 - Zoho CRM's API Collection in Postman     |     Kaizen Collection: Home
Join us for our upcoming Zoho CRM Developer Series: Zoho CRM APIs, where you can explore more about Zoho CRM APIs. Register Now!  




        • Recent Topics

        • Can it change the language ?

          Hello ! The question is in the title ;)
        • Create Tasklist with Tasklist Template using API v3

          In the old API, we could mention the parameter 'task_template_id' when creating a tasklist via API to apply a tasklist template: https://www.zoho.com/projects/help/rest-api/tasklists-api.html#create-tasklist In API v3 there does not seem to be a way to
        • Kaizen #183 - COQL API's Enhancements in Zoho CRM API Version 7

          Hello everybody! Welcome back to another post in our Kaizen series. In this post, we will discuss the latest COQL API enhancements introduced in Zoho CRM Version 7. COQL API Query API lets you query for records based on queries using the CRM Object Query
        • Sales Returns - Repairand Return

          Hi Inventory Team, I'm working with a client on an Inventory implementation project and they have shared this use case with me. Some items may be returned by the customer, then returned to the vendor for repairs, received from the vendor and shipped back
        • How to merge duplicate products?

          merge duplicate products
        • Inventory valuation

          Inventory valuation in case of sales return makes some error in getting proper value of inventory. Cost price considered for accommodating the goods returned is not the price at which cost of good sold where recorded, last purchase of the same item is
        • Getting error "invalid warehouse_id" when trying to update any transaction in Zoho books

          I got a message from Zoho saying that the Warehouse and Branch has been merged into one category "Locations" Once I migrated to this setup I was no longer able to edit any invoice / create creadit notes - got an error saying "invalid warehouse_id" I never
        • Access invoice custom modules data from API

          Hi, I am using $url = "https://www.zohoapis.eu/invoice/v3/invoices"; $opts = ["http" => [method" => "GET",header" => [ "Authorization: Zoho-oauthtoken $accessToken", "X-com-zoho-invoice-organizationid: $orgId" ] ] ]; From my app to retrieve the invoices,
        • It would be very helpful to be able to use variables in the formula columns

          Currently, variables can be used only in aggregated formulas. It would be great to be able to use them in regular formulas as well
        • Bulk Update API

          I’m reaching out to see if anyone has updates on the bulk records feature release. We’re eager to leverage this functionality for our operations, but until it becomes available, our current API call limits are proving to be a bottleneck—even after upgrading
        • Proper syntax for filtering Added_Time in the URL using functionality-based URLs

          I haver intermediate knowledge of functionality-based URLs. I say that because when I use them, it is never straight forward with me. Sometimes it works first try, and sometimes I spend hours exploring to find the proper syntax. link to operators: https://help.zoho.com/portal/en/kb/creator/developer-guide/others/url-patterns/articles/functionality-based-urls#List_of_operators_and_their_constants
        • AI that checks text content quality and for plagiarism

          Hello, A client has a requirement where the users will be typing in content consisting of multiple paragraphs in Creator. The text box will be checked for plagiarism and also for its quality. What would be the best approach for that?
        • 404 Error When Using record_cursor in ZOHO.CREATOR.DATA.getRecords (js api)

          Iam working on fetching all records from a Zoho Creator report using the Get Records API (V2.1) with the following recursive function: js CopyEdit // Recursive function to fetch records using record_cursor from the response function fetchAllRecords(recordCursor
        • Reusable Variables

          I’d like to know if there’s a way to store variables in Zoho Analytics that I can use in metrics or calculations. For example, I have a Currencies table that stores the value of different currencies over time. I’d like to use the value of the US dollar
        • Linking Purchase Orders to Task budgets

          Hi, We are a construction company within the mining industry. Our projects usually have fixed budgets (Cost budgets per task). Is it possible to link Purchase Orders to task budgets? I know you can link the Purchase order to a project, but this is not
        • Introducing prompt builder in Zoho CRM

          We’ve introduced a new way to put Zia’s generative AI to work—right where your teams need it most. With the all new prompt builder for custom buttons, you can create your own AI instructions to generate tailored content, suggestions, or summaries across
        • Facing issue in getting data through api calls

          I have send data of users and want to get the data oof users but facing issue with one field for that I want help
        • invokeURL to change custom field

          I have a deluge script that currently runs as a Schedule. It works exactly as intended, however I've recently been informed by Zoho that there's some mechanism in place to block changes made by a script when it runs on a schedule from being detected by
        • How to stop workflow running twice on a record

          Hi I have a workflow as below Trigger: Lead record is created/edited - Repeat this workflow whenever a lead is edited is NOT TICKED Condition: When Lead Stage is MQL Action: Reassign Lead, Create Task If the Lead goes into stage MQL, and then it changes
        • Customize the ticket ID for enhanced ticket tracking

          Hello everyone, Ticket IDs in Zoho Desk are the unique reference numbers that are assigned to tickets when they're created. Agents generally use the ticket ID to locate a particular ticket and to reference a ticket in conversations and feeds. When customers
        • FSM Function not executing

          Good Afternoon, all I am working on a workflow function in FSM and yesterday it was working fine. Now today when I select "Save & Execute" it does nothing. I even tested it with just a info statement and it is not executing. Any help would be greatly
        • DKIM cannot be enabled for the domain as no verified default selector present

          Can't get the DKIM working. May you please check my account (nksy.us) to see what's wrong?
        • Boost collaboration in your sales process with Team Selling and Deal revenue's Split—empowering your Zoho CRM for smarter teamwork!

          This feature is currently available for the AU and SA DCs. It is being rolled out in a phased manner and will be available to all users shortly. Hello everyone, As you may all know, closing a deal is rarely a one-person effort. It often involves multiple
        • Create modules using natural language prompts

          Hello all, We’ve introduced a new enhancement to Zia that allows you to create custom and team modules in Zoho CRM using plain language prompts. Why this enhancement? Creating a custom module traditionally involves multiple steps—choosing field types,
        • Suggesting enhance for criteria based data-sharing rules

          I suggest that, for user fields, the logged-user system variable could be used. This would allow the user, for example, to access records in which he/she is mentioned in a specific field, other than the owner. Thanks! Eduardo
        • How to sync read mails to GMail?

          Hello I am testing Zoho TeamInbox but I have an issue with my connected GMail account. Whenever I read a mail in TeamInbox or even reply to it, the email stays as "unread" in GMail. Is this normal behaviour? I thought that with the 2-way sync of IMAP
        • Look up field and show or hide section based upon selection

          Hi there, I am looking to show or hide a section within the opportunities module based on the value of the selection in the look-up field. This feature does not seem to be there Is there a workaround, and is this option coming in a future release? Thanks
        • eway Bill - Import (Good / Material)

          As we Importer of goods , for That first we Generate PO then , Payment, then after We create Bill of Entry  After Bill of Entry Anywhere (99%) cases material that arrived to port that comes to warehouse / factory for that Eway bill , we have to create
        • Import of Bank Statement DO NOT work - Date Mapping issue - Basic Feature Issue Becoming Serious Pain

          Hello, Yes, This is True. Importing Bank Statement feature is Not working as Intended. Facing few issues. Specially regarding the Mapping of Date field format. No matter how many times, we create a Case with Support team, they are NOT supporting in proper
        • Approval Workflow for Purchase Orders Abrir

          The requirement is , that all purchase orders greater than or equal to 5000 go through an approval process from certain people, but within books I only see that the approvers can be by levels or any approver but we cannot enter a rule like these. Can
        • How to see and amend Primary Clients easily

          Hi, i'm trying to make some reports on the clients we do projects for. However, i'm seeing a lot of "unknown" clients in the Zoho Analytics report. I suspect that these projects have not been assigned well and this needs to be corrected. Where can i easily
        • ZOHO NEEDS TO CREATE AN OPTION TO PASS CREDIT NOTE AGAINST SALES RECEIPT

          Zoho needs to find a way to pass credit note on sales receiptS. Creating a dummy invoice is causing major issues in tallying our sales figures and compliance with tax authorities.My system is tied to tax agencies and trying these options causes major
        • INTERGRATION OF ZOHO BOOKS PREMIUM PLAN AND ZOHO INVENTORY STANDARD PLAN

          Hello. I was using Zoho Books premium plan with 3 branches and has been working well until I purchased Zoho Inventory Standard plan. Now my 3rd branch location has been deactivate din Zoho Premium. how can I solve this please since I use all the locations
        • Exporting Templates

          I have just spent 2 hours creating a project template for a Netsuite configuration, and want to share it with other Zoho Projects users - who have a different account. Is there any way to do this?
        • It's time to say goodbye to Zoho Recruit for me.

          Hello, I have been a Zoho Recruit user since 2013. The tool has evolved, with a better UI, new features and so on. The pricing is still a great asset too. BUT, that being said, important features are not coming fast enough. I tried to share my point of
        • Automation#34: Schedule Guided Conversations (GC) Based on Business Hours

          Hello Everyone, Welcome to this episode on configuring your Guided Conversations (GC) based on your business hours. In our previous episode on Guided Conversations, we covered how to set up GC to enable offline support. This time, we'll guide you through
        • Download PDF from File Field with the name in another single line field

          Hi I am storing a PDF file in a File Field of a Form using Zapier automatically. now i need to download that file and set its file name as per the value stored in a single line field in that form. ANy turnout for that Thanks
        • Custom Module missing SDK function fetchRelatedRecords(...) in a Client Script

          Good day, We have added a new module with a Multi-Lookup relation to Contacts.  When we tried to use the fetchRelatedRecords(id, related_list_api_name) function to get Related Records it is missing for our new custom module. https://js.zohocdn.com/crm/5124797/documentation/DotSDK/Modules.html
        • TeamInbox and Desk Integration is Broken

          I use the TI -> Desk integration a lot. Today, it broke, again. When I go to create a Ticket from TI, an error message on a red background is shown "oops something went wrong". Checking the developers console on my browser, there are many 500 errors relating
        • Couldn't connect to host, port: wordpress2224249.home.pl, 143; timeout 10000

          Hey, i get a error up "Couldn't connect to host, port: wordpress2224249.home.pl, 143; timeout 10000" But i tried same passwords and info. to make imap on hotmail. and it works flawlessly. Has to be something with zoho....
        • Next Page