A custom function is a software code that can be used to automate a process and this allows you to automate a notification, call a webhook, or perform logic immediately after a workflow rule is triggered. This feature helps to automate complex tasks and calculations.
Lets take the below User Requirement -
When the completion percentage of a Milestone reaches 100%, automatically an email should be sent to the project owner.
tomailaddress = projectOwnerDetails.get(0).get("email");
endPointV3 = "https://projects.zoho.com/api/v3/portal/";
// Get Task Details
taskResponse = zoho.projects.getRecordById(portalId,projectId,"Tasks",taskId,"connectionprojects");
milestoneId = taskResponse.get("tasks").get(0).get("milestone_id");
// Get All Tasks
taskParameter = Map();
taskParameter.put("milestone_id",milestoneId);
taskParameter.put("status","notcompleted");
allTaskResponse = zoho.projects.getRecords(portalId,projectId,"tasks",taskParameter,0,"connectionprojects");
if(!allTaskResponse.containKey("tasks"))
{
sendmail
[
from :zoho.loginuserid
to :tomailaddress
subject :"Hi, "+ milestoneName + " is completed"
message :"I am a sample message."
]
}
return "success";
Creating custom functions in Zoho Projects is straightforward and well-documented. Zoho provides a range of built-in functions that you can use as a starting point, and you can also easily define your own functions using Zoho's scripting language, Deluge. Give it a try and see how it can save your time and boost your productivity!
Watch this space for more such custom function codes.