We need to relate request with request in some cases. So, due to system oganization we have two collections (child and parents) and two action must be allowed to relate objects with each other (for instance, "Relate parent request" and "Relate child request").

When we're trying to hide child collection action, system doesn't give to complete parent action and print system message about that.

Actually, it's not great for our customer and we have to find some solution.

Maybe someone has ever had the same problem? How we can hide one of the actions without losing the required functionality? Is it possible?

I came across a similar case previoulsy and I used a pre-condition with calculation to hide the action based on a user's group membership. Below is an example about this calculation used in the Incident Management:

In fact, your metho really can help to hide aсtions for specific groups. But we also already use that method and both of actions are allowed only for "Service Desk" group.

So, we need to hide one of that actions excactly for members of the group "Service Desk", because our customer is a big company with more than 15000 requests per month and they do not want to be able to see action "Relate child request" in every status. They just want to have one action "Relate Parent request" in the first status and be able relate every exisist request without any other visible actions.

If that's the case, why don't you take off that action from each status? This can be done by highlighting the required status in the Process Designer, Go to Properties > Optional Actions and move it away.

Because we need to use "Relate Parent requst" in the first status of the request object and be able to relate any existing requests. It's mean that we should activate the action "Relate Child request" in every request's status for users, who have access to do "Relate Parent action" action.