Every organization has a defined way of executing projects. There are clear expectations around how tasks should move, when projects should progress, and which actions require validation. When these rules are consistently followed, projects remain structured and predictable.
CodeX Scripts in Zoho Projects brings that structure directly within your projects.
CodeX Script allow users to define custom logic that runs automatically when a task or project is created, updated, or deleted. Users can validate conditions, block actions, or trigger logic based on how the process is designed.
Let’s walk through an example.
In a manufacturing quality control process, every production batch report must be validated before it is approved. One of the key tasks in the QC project is "Validate batch records and test reports." This task acts as a formal approval checkpoint.
The goal is simple:
When batch reports are rejected, they must go through proper verification before the process can move forward.
Here’s how CodeX Scripts help enforce this, supported by other Zoho Projects features:
Step 1: Create a project template
Create a Project Template to ensure every Manufacturing QC project starts with a consistent task structure.
Step 2: Create a Custom Function to associate in the Blueprint in the next step
Create a Custom Function to associate with the After transition for Rejected status to ensure whenever a task is marked as Rejected, the verification task is automatically created and linked as a predecessor.
The deluge code used in the case is attached below.
Step 3: Create a Blueprint for Approvals
Design a Blueprint with the task layout used for QC validation tasks, the project name and tag "validation required" as the criteria. When the task is rejected, a Custom Function is triggered and it creates a new task called “Verify Batch Reports” and links it as a predecessor.
The following status and transitions are used in the blueprint:
From Status - Transition - To Status
- Open - Process batch reports - In progress
- In progress - Send for approval - In Review
- In Review - Approved - Closed
- In Review - Not approved - Rejected
- Rejected - Send for approval (rework) - In Review.
Step 4: Enforce the Rule Using CodeX Script
Now comes the critical enforcement layer.
Create a CodeX Script to check whether the predecessor task (“Verify Batch Reports”) is still in an open-type status. If it is, the system blocks any updates to the validation task. The CodeX Script used in the case is attached below.
This ensures that the approval checkpoint cannot be bypassed. Only after the verification task is marked Closed, the CodeX Script allow updates to continue.
This structured approach can be applied to any approval-driven checkpoint such as finance reviews, compliance sign-offs, production clearances, or release validations. Wherever a task must wait for another to complete, CodeX script ensures the rule is respected.
Share your business scenarios in the comments, and we will help you structure and enforce them using CodeX Scripts.
Recent Topics
Creating packages according to actual shipping processes
Hi community. I would like to ask a question to see if there's a better method or workflow for the creation of packages in Zoho Inventory. There is a little confusion in some of Zoho's language relating to the use of term Packing Slip when connected to
Announcing Zoho Sheet desktop app for macOS and Windows (Beta)
Hello Sheet users, We know you’ve been waiting for this one. It has always been the top priority on our roadmap to provide a single native desktop app for macOS and Windows that works both online and offline. Today, we are excited to announce that the
Payment Card or Identity form-fill from Vault?
Hello! I'm working on replacing Bitwarden with Vault and one issue I've run into is that I can't find any option to fill address and payment forms from Payment Card or Identity info that has been saved in Vault. Is there a way to do this? Is it a planned
Introducing SlyteUI : From Idea to a Working Interface in Minutes
Hello everyone! Are you spending hours building basic UIs? Does even the smallest customization feel like a major task? CRM customization should feel intuitive and straightforward, not time consuming or exhausting. SlyteUI makes this possible by simplifying
Zoho Desk - Event Calendar View
Hi Desk team, Are there any plans to introduce a calendar or timeline view for Events in Zoho Desk? It would be very helpful if we could see Events visually in a calendar and/or timeline. This is very helpful when desk side support activities need to
Query on Tracking Visitor Activity with Zoho Forms & SalesIQ
I have a query regarding Zoho Forms, Zoho SalesIQ, and Zoho CRM. I have embedded a Zoho Forms form on my website, and I’m trying to understand if it’s possible to capture a user’s website activity (such as pages visited, visit count, etc.) when they submit
Merging Photos from Subforms into Writer
I've got a subform that contains uploadable photos. Im trying to merge them into a template but there is no option to pull them in. Is this possible? We are creating an inspection module where we can take photos and make notes and export to a report.
Bank Feeds
Since Friday my bank feeds wont work. I have refreshed feeds, deactivate and reactivate and nothing is working
Add Unified Project-Wide Development & Release GitHub Dashboard
Hi Zoho Projects Team, I am writing to submit a feature request for a Unified Development & Release GitHub Dashboard that provides centralized GitHub visibility at both the Project and Milestone levels. The Vision: We need a single "Command Center" that
Create a Custom view that displays the current signed on support reps Tickets
Is there a way to create a custom view that has criteria that says Ticket Owner = [Current Signed on Support rep]?
Standard view for every agent
Hello there, I am facing the following challenge. I would like to provide a standardised view for all agents. This view should not be editable by the user. It would be nice for the users if the tickets were divided into columns (like prio work mode).
RouteIQ user Licensefor Non–Zoho One User
Zoho RouteIQ needs to be purchased for Zoho CRM. The current setup uses the Zoho One plan, but RouteIQ is required for a different user who is not part of Zoho One. However, they need access to routes and customer details within RouteIQ for planning their
Private Contacts & Tasks
What is the timeframe for being able to filter Activities and Contacts from being viewed by the rest of my team? I sync with Outlook and the ability to create a task that is private would be of great help. I have to take my dog to the vet this morning and because I put it in my Outlook calendar, now my whole team is aware of it because I had no way to mark it "private" in zoho. A simple checkbox would be great! I would be more than happy to provide examples of how ACT does this. For each event or
Cross Module Filtering – Use Fields from Lookup modules in Custom Views criteria and Advanced Filters
Hello everyone, Zoho CRM now enables you to achieve deeper filtering of records in a module, using fields of a lookup, thereby enhancing your data management experience manifold. This filtering based on lookup module fields is now available in advanced
Super Admin Logging in as another User
How can a Super Admin login as another user. For example, I have a sales rep that is having issues with their Accounts and I want to view their Zoho Account with out having to do a GTM and sharing screens. Moderation Update (8th Aug 2025): We are working
WhatsApp Calling Integration via Zoho Desk
Dear Zoho Desk Team, I would like to request a feature that allows users to call WhatsApp numbers directly via Zoho Desk. This integration would enable sending and receiving calls to and from WhatsApp numbers over the internet, without the need for traditional
Update to CRM Custom Buttons: Collect Users' Location
Hello everyone! Buttons in Zoho CRM allow you to extend the default CRM capabilities for your bespoke business needs. It provides the flexibility to connect to any third-party application to perform necessary actions. Wouldn't it be better, if those buttons
Printing invoices using templates
Hello. I have a sales application and i need to print invoices, delivery ntoes etc and i'm trying to use the record template feature which allow you to use all of the fields from a report. My question is how do i make calculated fields which are not in
Sum over
Hi, Is there an equivalent in Zoho (Aggregated Formula) to SQL’s SUM() OVER (PARTITION BY ...)? I’m looking for a way to calculate a sum within a group (partition) without collapsing the data, so that the result is still available at the row level. Has
Api Version 2 Refresh Token invalid_code
While Refresh token i am always getting Error { "error": "invalid_code" } i am trying to pass all parameter as per this https://www.zoho.com/crm/developer/docs/api/refresh.html still non of things working any one have idea whats the reason for same ... please help due to this i stuck since last one week
Is it possible to clone my Lead module layout to Customer and Potential layouts?
I've customized all fields and their order for Leads module and I would like to know if I'm able to clone those fields into another modules, only to avoid repeated work. Awaiting.
Trying to validate user's age through DoB
We have a form where a user enters their birthdate. We'd like a rule that counts whether the user is over or under 25 years of age. This amounts to 9125 days elapsed between today and an easy way to do this would be to use conditional rule Is Before [x]
Invoice date is incorrect
I'm trying to pull a report of Sales Orders and filter by Invoice Date. (ex: all of 2025) Unfortunately, the filter still returns lots of SO's from other years including 2026 which would be impossible to have an invoice in 2025 from a 2026 order. It's
DYK 2 - Filter Columns in List View
Did You Know you could filter columns across lists in Zoho Projects ? This allows you to quickly narrow down large datasets without navigating to the filter panel from time to time, making it easier to focus on what matters right from where you are working.
Sync Enable issue Between Zoho FSM and Invoice
Hello Latha, I hope you are doing well. I am trying to enable synchronization between Zoho FSM (Org ID: 170000078905) and Zoho Invoice (Org ID: 170000079301). However, when I attempt to do so, I receive an “Internal error” message. Could you please assist
Introducing Auto-trigger for Screening Bot
Still manually sending screening tests after every application? Not anymore. With Auto-trigger for Screening Bot, screening now begins automatically. When a candidate applies for a job that has an attached assessment, Recruit checks whether the test has
Canvas templates can now be shared with different CRM organizations
Moderated on 14th February, 2023: Dear all, This feature is now open for all users in all DCs. To learn more about importing and exporting canvas templates, read our help doc -Customizing Record Detail Page Using Canvas Dear All, We hope you're well!
Zoho Mail Android app update: UI revamp
Hello everyone! We are excited to share that the first phase of the Zoho Mail Android UI revamp is now live. In this update, we have redesigned navigation bar at the bottom to quickly access the Email, Calendar, Contacts, and Settings modules. Also, the
CRM x WorkDrive: We're rolling out the WorkDrive-powered file storage experience for existing users
Release plan: Gradual rollout to customers without file storage add-ons, in this order: 1. Standalone CRM 2. CRM Plus and Zoho One DCs: All | Editions: All Available now for: - Standalone CRM accounts in Free and Standard editions without file storage
How to add a custom hyperlinked button in ZohoCRM Canvas Builder?
I am building custom views in ZohoCRM Canvas builder, with one view that will be used for a client Portal. Trying to add a custom button that when clicked opens a separate window to a ZohoForm. How do I do this?
Filtering on related module
I have a custom module (Module1) which is related to another custom module (Module 2) Module 1 can have many related records in Module 2. Module 2 has a date field. Module 1 has related list Module 2 I want to filter Module 1 to list all records where
Multi-Select Field Option Limit Inquiry
Hello FSM Team, We would like to inquire about the limitation of the Multi-Select field in Zoho FSM. Currently, the system allows a maximum of 10 selectable options, and we encountered the message: “Option count more than allowed count of 10.” Issue:
Disable Zoho Contacts
We don't want to use this app... How can we disable it?
Records Per Page
Can we get max number of records per page increased from 100 to 250 and 500 please? Or alternatively allow us to use the Zoho Sheet View for all records and not just the max 100 showing on the page? thanks.
Zoho Forms sheet prefil
I've been using zoho sheet prefill for a week and it was working perfectly, as soon as i deleted the particular sheet and replaced it with another one no matter what I do it cant find the record and i get this message. Could you please assist me to resolve
Check out in Meetings
Why there is no check out in Meetings of Zoho CRM, very difficult to track
WO Completion Status Not Updating Automatically
Hello Latha, Hope you are doing well. Over the past few days, we have been facing an issue with WO completion. When an AP is marked as complete, the work order status is not automatically updating to “Completed,” and we have to mark it manually. Could
CRM to Desk Contact Sync Issues?
Hello, I noticed none of the contact changes in CRM are being transferred over to Desk. Anyone else experiencing this? I checked the sync history in desk and it confirms it - it doesn't show "X Contacts Synced" like it normally does.
Microsoft Teams integration in Zoho Apptics
Good app monitoring is not just about collecting data. It is about making sure important updates reach the team in time to act on them. When an app crashes or a user shares feedback from within the app, teams should be able to see it promptly without
Able to change project on timelog entries
Ability to move the timesheet entry from one project to another. When a user adds a wrong entry a manager can change/update the timesheet entry to the correct project.
Next Page