Is this realiable? I have an application with a frameset but the content of both frames will be displayed based on a user role. The left frame is the menu system which will display one of 3 different outlines based on the role and the right frame will display a corresponding view based on the role.
Initial testing on local replicas has been very unpredictable and unreliable, however, it would seem for the documentation that this should work fine.
Subject: Displaying Different Outlines Based on Roles
I have never experienced any difficulties with this - It should work fine.
Make sure, if you are using local replicas, that you “Enforce a consistent ACL across all replicas”. Otherwise, roles do not work as expected.
Subject: RE: Displaying Different Outlines Based on Roles
… and keep in mind that any role you assign yourself in testing will be cached – you’ll need to get completely out of the application in all three clients (or as many as you have installed). That means that you can’t have any tab references in Designer (no design notes open, and no window tab for the database design outline), that the application must be closed and the workspace icon deselected in the Notes client, and the file should not be selected in Administrator. It may be simpler to log out (press F5) and log back in after making the ACL change.
Subject: RE: Displaying Different Outlines Based on Roles
Great advice.
I have used outlines successfully for several years too.
My advice would be to integrate the three outlines into one, using hide when formulas.
I know that I get pesky when I use the hide-when formula, however, if I only have one outline, I only have one code base to support.
Marcus
Subject: RE: Displaying Different Outlines Based on Roles
This is exactly how I do it.
For example in our problem ticket database, the client and IT selections are both in a single outline that is embedded in a page that forms the left frame.
The client selections are hide when:
@IsMember(@UserRoles;“[ITStaff]”)
And the IT selections are hide when:
@IsNotMember(@UserRoles;“[ITStaff]”)
This works great, everyone sees what they need to.