Group-Level Data Access Controls

Post Reply
teletee
User
Posts: 4

Group-Level Data Access Controls

Post by teletee »

Currently, our system restricts data access such that only the user who inputs the data and their respective admin can view the information. For instance, within our sales department, we have two groups located in different cities, each comprising three users. When linking customer entry forms to a specific user ID, only the designated user and their administrator have access to this data. This setting limits the ability of other group members to access crucial shared data.

This setup poses a challenge, particularly when users from the same group need to collaborate or access shared data. The existing 'Allow view all' feature is not a viable solution, as it grants access across different groups, which could lead to unintended data sharing between Group 1 and Group 2.

To address this issue, I suggest adding a new functionality—a check box that enables data access for all members within the same group. This feature would allow users belonging to the same group to view and manage data collaboratively, without extending this access to other groups.

Implementing this feature would streamline our processes and enhance productivity by ensuring that all members within a group can easily access and work with the necessary data.

Thank you for considering this suggestion. I believe this enhancement will greatly benefit our team dynamics and data management efficiency.

Best regards,


arbei
User
Posts: 9429

Post by arbei »

You may also use UserID_Loaded server event to add all user IDs from the same user level/group.


teletee
User
Posts: 4

Post by teletee »

Thanks for your feedback.

Yes sure I can use server event, but this is will be a manual way to do that. My suggestion to be more dynamics without writing any code. In my current case may I have two groups, but in real life you have multigroup and it is hard to change/add names on each time you create a new group of people.


arbei
User
Posts: 9429

Post by arbei »

There is no need to hard code. Even you have many user levels (groups), it is simply like, e.g. (v2024)

function UserID_Loaded()
{
    $userIds = ExecuteFirstColumn("SELECT `UserId` FROM `users` WHERE `UserLevel` = ... OR `UserLevel` = ...");
    array_walk($userIds, fn($userId) => $this->addUserID($userId));
}

If the user levels are multiple and dynamic, you need server event because only you know the business logic -- what other user levels (other than that of the current user) you want to add.


Post Reply