Power of Automation :: Auto-update Project status based on Tasklist completion

Power of Automation :: Auto-update Project status based on Tasklist completion

 Hello Everyone,
 
A Custom function is a user-written set of code to achieve a specific requirement. Set the required conditions needed as when to trigger using the Workflow rules (be it Tasks / Project) and associate the custom function to it.
 
Requirement:
 
One of our customers have structured their project with Tasklist names representing different project stages — such as Initiation, Execution, and Closure
 
These same names have been configured as custom statuses within the Project layout.
 
When all tasks under a specific Tasklist (e.g., Initiation) are marked as closed, the Project Status should automatically update to reflect that stage (i.e., Initiation).
 
This process should repeat as each Tasklist is completed, ensuring that the Project Status always reflects the latest completed stage.  The functionality was achieved by leveraging Task Custom Functions along with Workflow Rules
 
 
Custom function code:
 
taskParam = Map();
taskParam.put("status","notcompleted");
taskParam.put("tasklist_id",tasklistId);
taskResponse = zoho.projects.getRecords(portalId,projectId,"tasks",taskParam,1,"'xxxxxxxxx'");
// info "taskResponse:" + taskResponse;
// info "------------------------------------";
if(!tasklistId.isNull() && taskResponse.isEmpty())
{
updateStatusName = tasklistName;
projectDetails = invokeurl
[
url :projectsAPIEndPoint + "/portal/" + portalId + "/projects/" + projectId + "/"
type :GET
connection:"'xxxxxxxxx'"
];
info projectDetails;
info "-------------------------------------";
statusMap = Map();
if(projectDetails != null && projectDetails.get("projects") != null)
{
projectDetail = projectDetails.get("projects").get(0);
layoutDetails = projectDetail.get("layout_details");
projectLayoutId = layoutDetails.get("project").get("id");
info "projectLayoutId: " + projectLayoutId;
projectLayoutDetail = invokeurl
[
url :projectsAPIEndPoint + "/portal/" + portalId + "/module/projects/layouts/" + projectLayoutId + "/"
type :GET
connection:"'xxxxxxxxx'"
];
if(projectLayoutDetail != null && projectLayoutDetail.get("customstatus") != null)
{
projectStatus = projectLayoutDetail.get("customstatus");
for each  status in projectStatus
{
statusMap.put(status.get("status_name"),status.get("status_id"));
}
}
info "statusMap : " + statusMap;
info "------------------------";
if(statusMap.containKey(updateStatusName))
{
updateProjectParamMap = Map();
updateProjectParamMap.put("custom_status",statusMap.get(updateStatusName));
projectDetail = invokeurl
[
url :projectsAPIEndPoint + "/portal/" + portalId + "/projects/" + projectId + "/"
type :POST
parameters:updateProjectParamMap
connection:"'xxxxxxxxx'"
];
info projectDetail;
info "-------------------------------------";
}
}
}
return "success";
 
Make sure to replace xxxxxxxxx with Zoho Projects connection link name along with scopes: ZohoProjects.portals.READ, ZohoProjects.projects.ALL, ZohoProjects.tasks.READ. Please find the screenshot of the parameters to be mapped and a sample workflow rule attached for reference. 
 
We hope you found this post useful. If you have any questions, feel free to share them in the comments below.


      • Sticky Posts

      • Introducing Version-3 APIs - Explore New APIs & Enhancements

        Happy to announce the release of Version 3 (V3) APIs with an easy to use interface, new APIs, and more examples to help you understand and access the APIs better. V3 APIs can be accessed through our new link, where you can explore our complete documentation,
      • Schedule Exports for Regular Project Updates

        Tracking project data often means exporting data at regular intervals. Instead of manually exporting data every time, users can schedule exports for Phases, Tasks, and Tasks in Zoho Projects. These exports can be set to run once, daily, weekly, or monthly
      • Set Custom Business Calendars and Holidays for Global Teams

        Managing a project across diverse teams means accounting for more than just tasks and deadlines; it means acknowledging how and when each team actually works. Users might follow different working days or observe region-specific holidays that cannot be
      • Restore Trashed Records Anytime Within 30 Days

        Access the recycle bin from the Data Administration tab under the settings page in Zoho Projects, which gives better control over the trashed data. When records like projects, phases, task lists, tasks, issues, or project templates are trashed, they are
      • Organize and Clone Task Custom Views

        We have rolled out two new enhancements to task custom views: Custom View Groups and Custom View Clone. Custom View Groups Similar to predefined view groups, we have introduced groups for custom views to help organize and categorize them. My Custom Views:

        • Recent Topics

        • Multiple barcodes and sku aliases

          Hi, It would be great if you could add the following features: Allocating multiple barcodes to a product as sometimes different barcodes are in circulation in a particular market. As well as different barcodes, sometimes, different SKUs are used by different
        • Video Interview features

          I tested the video interview feature. It's supported only on desktop version of chrome/firefox. Most of the times, the candidates are available on their cellphone. Need to have this for mobile devices too.
        • Different Domain Name Sync AD Password to Zoho Mail

          Hello, may I ask if how to configure or is possible to sync AD password to Zoho mail? Example AD domain name is xaxis.net and zoho mail domain name is yaxis.net.
        • Announcing New Features in Trident for macOS (v.1.19.0)

          Hello everyone! Trident for macOS is here with interesting features and enhancements to elevate your workplace communication. Let's take a quick look at them. View and manage .pst files. A .pst (Personal Storage Table) file is an Outlook Data Storage
        • Creating Email template that attaches file uploaded in specific field.

          If there's a way to do this using Zoho CRM's built-in features, then this has eluded me! I'm looking to create a workflow that automatically sends an email upon execution, and that email includes an attachment uploaded in a specific field. Email templates
        • User manual as PDF

          Hi, on the User Manual pages (for CRM, Support and other Zoho Apps) is a print button, but mostly the pages contain only links to other pages. So, printing the manual is of no use. Is there any PDF version of the FULL manual? Or any other source where
        • Custom Field for Subscription

          Hi, I can't find a way to add a custom field (to contain a license key generated from our software) against a subscription? Is the only place to add this information in the Invoice module (as custom field for invoice)? When a customer views his subscription via the customer portal, there appears no way to display a license key for them? The invoice is not the natural place to store a license key for a particular subscription, so where else can this be stored and displayed?
        • Disable fields in multiple subform rows

          Hello everybody! I have an odd one here. I have a subform that collects hours of operation. It contains these fields: Days, Type, Open, and Closed. On load of the form I add 7 rows with Mon - Sun in the Days field. I then disable that field and the add/delete
        • Deal Product reference

          Hello All, I'm trying to use Zoho Writer to dynamically create a statement of work document. Our statement of work is heavily dependent on what products are included in the deal. As such, I need to be able to add or remove sections of text depending on
        • How to record the Customer Payment received against previous year invoice

          Hi . How to adjust the receipt of this payment in customer account statement received for previous year invoices, which are not there in the statement with us. Because it is showing as prepaid expenses or unearned revenue Advise Thanks radha
        • Discripency in inventory adjustment value and FIFO cost lot tracking report report

          In zohobooks, I have added 200 bag of itemA with unit rate is Rs.1408 as opening stock on Apr01/2025, after that i make a inventory adjustment for 100 bag that I transfer to stock in process account, after that I make a purchase bill for the same item
        • How do I add todays date to merge field

          I don't see any selection of todays date when creating a letter.  Surely the date option of printing is standard? John
        • Zoho FSM API to search Zoho FSM Assets by Asset_Number?

          How can I search or otherwise retrieve an Asset from the Assets module in Zoho FSM using the Asset_Number? The API docs seem to say that the only field that can be searched is the Asset Name. Is this true? https://www.zoho.com/fsm/developer/help/api/search-records.html
        • Sync Creator form submissions to WorkDrive folder

          I've made 10 Creator applications, and need to sync my each application's submissions into a WorkDrive folder. I need the form submissions to be PDF file type and sync to a specific folder for documentation purposes. I have tried to use a workflow, but
        • Add Voting Polls Feature Similar to WhatsApp to Zoho Cliq

          Hi Zoho Cliq Team, Hope you're doing well. We are using the Voting Polls feature in WhatsApp (see: WhatsApp Voting Polls FAQ), and we believe a similar functionality would be extremely valuable in Zoho Cliq. Currently, when our teams want to quickly gather
        • ZML Snippet: Auto Refresh Section

          Is there a way that I can set an auto refresh on each of the ZML snippet only and not the entire page? Just wondering..
        • Availability of the Custom Sort Order feature for Windows and Mac platforms??

          Notebook Team, I hope this message finds you well. I am reaching out to inquire about the current status and planned updates for the Custom sort order feature within your application. A year ago, it was mentioned that this feature is supported on iOS,
        • Have you checked your Email headers for DKIM Failure?

          Have you taken a look at your email headers for DKIM failures even with DKIM set up properly? I've had DKIM successfully set up for many months. My account currently shows Email Verified and Authenticated. Big green check marks. Email Relay is also showing
        • Wizard Form

          I would like the option to create a wizard that works when you create a record and contacts that are already in the CRM captured with a web 2 lead form (field data inserted in to the wizard).  Having the option to create up to 3/4 segments per screen
        • Pivot Table - Zoho Analytics

          I'm creating a Profit and Loss chart in Zoho Analytics using the Pivot Chart feature. While Net Profit can be calculated using the total value, I also need to calculate and display the Gross Profit/Loss directly within the chart. To do this, I need to
        • Fetch function not working for CRM Contacts

          I've created a flow that checks if a contact exists in CRM (based on form input), and if it does, then it updates one of the fields for the contact. In my test, the fetch function correctly identifies that a contact exists (based on email address), but
        • Clone a project

          To whom it may concern, I did a quick search of the forum and found nothing relating to this idea, so am posting fresh. The service that our company provides means that we follow an essentially identical process for each new job, and this includes the time frames for each stage. Ideally we would have a complete "template" project, with all the task lists and tasks in place with associated start dates, due dates (and by extension, duration) and - most importantly - the dependencies between tasks so
        • Add Sequential Processing Option in Zoho Flow

          Hi Zoho Team, I hope you're doing well. We would like to request a new feature for Zoho Flow: the ability to configure a flow to run in Sequential Processing mode — meaning, each instance of the flow waits until the previous execution is fully completed
        • Zoho Sign URL cannot be embedded in an iframe on the React side.

          The Zoho Sign URL cannot be embedded inside an iframe within a React application (or any web application) because Zoho enforces a Content Security Policy (CSP) that explicitly prevents iframe embedding from external origins. When attempting to load the
        • Zoho CRM Developer Series - Queries

          Hey everyone! We’re excited to invite you to our next Zoho CRM Developer Series focused on Zoho CRM Queries, happening on June 5, 2025 and June 26, 2025. Whether you're working on CRM customizations, integrating with third-party services, or just curious
        • Can Clients have Access to their record Attachments in Client Portal

          Is there a way to have allow clients access to attachments in their client portal? Attachments is currently hidden in the client portal and I cannot find a way to allow client access. Thank you!
        • Canvas: how can I edit theme?

          This says "Theme Colours", and I would like to edit theme colors (and styles ala CSS). How can I edit these "Theme Colours"? I'm a software developer, so just point me in a direction where I can alter code if needed.
        • CRM For Everyone - Bring Back Settings Tile View

          I've been using CRM for Everyone since it was in early access and I just can't stand the single list settings menu down the left-hand side. It takes so much longer to find the setting I need. Please give users the option to make the old sytle tile view
        • Mass Update of Lookup Fields not possible

          Hello List I've created a custom field for Leads and Contacts 'Current Campaign'. This is very Handy as I can filter leads and then related them to a campaign. Everything ready, but then I realized that mass update doesn't work for lookup fields... a
        • are Zoho Meeting and Zoho Webinar two separate products?

          hey all, i'm new to Zoho One and I'm trying to figure out what's the best platrofrm to do a Webinar for my subscribers. I see that Meeting have a Webinar option, but i see there's also a separate product (?) called Zoho Webinar. Are these two actually
        • Very Worst Experience = Screen sharing was Awful. There is a huge lag. I switched to Google meet, with same network speed, there is no lag at all.

          Very Worst Experience = Screen sharing was Awful. There is a huge lag. I switched to Google meet, with same network speed, there is no lag at all. Requesting you to work on your improvements. Otherwise this will give a very poor experience. Thanks,
        • Enable Native Zia Integration in Zoho Mail Without Requiring OpenAI API Key

          Hello Zoho Team, We hope you're doing well. We would like to request a feature enhancement for Zoho Mail's integration with Zia, specifically concerning the AI-powered capabilities like: Auto-complete sentences Generate email content Summarize email Currently,
        • Email policy not working?

          Hi, I created an email policy called "default", under which I created a "default" entry for the access items (the third icon with the key). I've set everything to "ON" (POP, IMAP, ActiveSync, etc.). But then when I create a new user and check it in Mail
        • One notebook is on my Android phone app, but not on Web or PC app.

          This problem started in stages. At first my phone was occasionally failing to sync. Then I noticed two things added to my Phone App. One was an existing notebook had a new cover, and the other was a new Note Card with an odd text in it. These were only
        • Admin Training

          Hello, I would like to get admin training on Zoho Projects. Has anyone had success in finding a class or resource for something like this? Are there any partners out there that offer this kind of training?
        • Why can't we change or delete the first page of a Zoho PDF?

          I've noticed that it's not possible to move or delete the first page of a Zoho PDF, why is that?
        • Latência

          Estou com bastante latência 200ms em São Paulo Brasil para o endereço mail.zoho.com, e email demora para carregar as vezes trava como está por ai ? segue print sabem se é normal ? ping
        • How to change the module for contact sync from Accounts to Accounts & their Contacts?

          Hi, My ZOHO CRM integration is broken and pushing the errors for sales orders and invoices, the error message is: "The customer associated to this record is not linked to module chosen in the current contact sync configuration." So, Now I'm trying to
        • Top Menu Disappeared from Blog Page

          Hi, Our top menu disappeared at Blog Posts page. However, it's still visible any other page on the website. I attached two screenshots, so it can be understood clearly. How can we bring back top menu? Thanks, K.
        • VOIP integration

          I emailed this question to rishi but never got a response. I notice when I mouse over phone number it has a link to launch into SKYPE. We dont use SKYPE we use Xlite SIP client. Is it possible to change that link to launch our client API? If so how? If not any plans to make that VOIP integration customizable?
        • Next Page