Hello Everyone!
I wanted to share a custom function that we recently implemented to address a specific customer requirement.
Here is the requirement
The customer would like to get a field to capture the last modified time of the task. He created a custom date field in Task layout and whenever the task is updated, the date and time should be captured to that custom field.
This can be accomplished via Custom Function and associating it to Task Workflow rule
// TODO: Please create a connection for the Zoho Projects service with the scopes "ZohoProjects.tasks.ALL
Replace 'xxxxxxxxx' with the connection name. Click this link below to learn how to create the connection.
timeZone = "Asia/Calcutta";
taskdetails = invokeurl
[
url :"https://projectsapi.zoho.com/restapi/portal/" + portalId + "/projects/" + projectId + "/tasks/" + taskId + "/"
type :get
connection:"********"
];
modifiedtime=taskdetails.get("tasks").get(0).get("last_updated_time_format");
formatted_date = toString(toDateTime(modifiedtime,"MM-dd-yyyy hh:mm:ss a"),"MM-dd-YYYY HH:mm:ss");
data = Map();
custom_fields = Map();
custom_fields.put("UDF_DATE13",formatted_date);
data.put("custom_fields",custom_fields);
response = invokeurl
[
url :"https://projectsapi.zoho.com/restapi/portal/" + portalId + "/projects/" + projectId + "/tasks/" + taskId + "/"
type :post
parameters:data
connection:"*********"
];
info response;
return "success";
Implementing this custom function in Zoho Projects has allowed our customer to automatically capture the last modified time of the task. It's important to note that this is just one example of how custom functions can be utilised. With a touch of creativity, you can develop custom functions that cater to your project's unique needs.
If you'd like to explore custom functions further, check out the Zoho Projects documentation on how to establish connections and leverage custom functions
Stay tuned for more custom function codes and exciting updates! If you have any questions or want to share your own custom function use cases, feel free to join the discussion.