Power of Automation :: Automatic creation of the team in a project based on the selected project group.

Power of Automation :: Automatic creation of the team in a project based on the selected project group.

Hello Everyone,


A custom function is a software code that can be used to automate a process and this allow 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 - 


A customer requested that a team should be added to the project automatically in accordance with the selected project group. They have teams like the 'Development team' and the 'Marketing team'.

In a similar manner, project groups have been established. Now, the Marketing team needs to be added to that project automatically if they select the Project Group as Marketing.


A custom function can be used to fulfil this need. You can fulfil the aforementioned condition with the aid of the code below.


Establishing a connection with the scopes "ZohoProjects.portals.ALL ZohoProjects.projects.READ" is all that is required. Below link will let you know on how to establish a connection. Also I have attached the screenshot of Arguments that we have used.


https://help.zoho.com/portal/en/kb/projects/integration/connections/articles/connections-23-5-2022#How_to_establish_a_Connection


groupTeamMapping = {“Marketing” : “Marketing Team”, “Developement : “Development team”};


getProjectDetail = invokeurl

[

url :endPoint + "/restapi/portal/" + portalId + "/projects/" + projectId + "/"

type :GET

connection:"*****"

];

projGroupName = getProjectDetail.get("projects").get(0).get("group_name");

info projGroupName;

getTeams = invokeurl

[

url :endPoint + "/restapi/portal/" + portalId + "/usergroups/"

type :GET

connection:”*****”

];

for each groups in getTeams.get("userGroups")

{

if(groupTeamMapping.get(projGroupName.toString())){

teamId =  groups.get("groupObj").get("group_id");

break;

}

}


addTeamParam = Map();

addTeamParam.put("groupids",{teamId.toString()});

addTeamParam.put("projid",projectId);

addTeam = invokeurl

[

url :endPoint + "/restapi/portal/" + portalId + "/usergroups/associategroups/"

type :POST

parameters : addTeamParam

connection:”******”

];

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.