Amedeo Posted September 13, 2022 Posted September 13, 2022 I have a question about how to solve this ... I have a group of employees who create their own clients (viewed also like list) and which other employees cannot access with security level filters and privilege set customization (based on created by and then Get(AccountName)...but I would like to do this: if a record is "flagged" public the other employees can also view that record, while if I want to make it private I do not apply the flag and only the owner can view the record ... what can I do? Thanks
comment Posted September 14, 2022 Posted September 14, 2022 (edited) Change the users View privilege to: CreatedBy = Get ( AccountName ) or IsPublic where IsPublic is a Number field containing 1 for public, zero or empty for private. Edited September 14, 2022 by comment
Amedeo Posted September 14, 2022 Author Posted September 14, 2022 (edited) Yeah that could be a part of the solution and seems to be great... but i have an other problem... there are the supervisors (with their own privilege) that need to view all clients created by the employees but they may create also their own ones. So how i may give the possibility to the supervisor to make public/private record but to view all the records created by the employees? the 2 priviledge sets are: - employees: create their clients and may share the clients with the other. No employee can view an other emploee's client if not public - supervisor: must view all clients of employee but they may private/public their own client to all and other supervisors i know that is something strange. Thanks Edited September 14, 2022 by Amedeo
comment Posted September 14, 2022 Posted September 14, 2022 (edited) Before getting into the public/private distinction: if a supervisor is allowed to view any record created by any employee, but not any record created by another supervisor, then a record must have a field indicating it was created by a supervisor. The CreatedBy field, storing the creator's account name, is not sufficient for this. Consider also what should happen if a user is promoted from employee to supervisor, or vice versa. Edited September 14, 2022 by comment
Amedeo Posted September 14, 2022 Author Posted September 14, 2022 I think it'll be something very very complicated because i don't know how to create it with all this variables for supervisors (because only them have this problem)
Solution comment Posted September 14, 2022 Solution Posted September 14, 2022 (edited) 8 hours ago, Amedeo said: I think it'll be something very very complicated I don't think so. All you need is a text field that auto-enters a calculated value of: Get ( AccountPrivilegeSetName ) Then allow supervisors to view records when: CreatedBy = Get ( AccountName ) or CreatorPrivSet = "Employees" or IsPublic For good measure, do not allow employees or supervisors to modify the CreatorPrivSet field. Edited September 14, 2022 by comment
Amedeo Posted September 15, 2022 Author Posted September 15, 2022 Yeah seems to work great! Thanks. So now i need to find a solution to escape from a record and return dashboard if i set to private a record but another user is viewing that record changed to private.. to avoid user see <<no access>>
comment Posted September 15, 2022 Posted September 15, 2022 I am afraid I don't fully understand the scenario you describe. In general, performing ANY find - even a bogus find for * in a field that cannot be empty - will automatically omit records which the user is not allowed to view.
Recommended Posts
This topic is 891 days old. Please don't post here. Open a new topic instead.
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now