Redlion do like to make things a bit obscure
. You don't set the rights on the button, but instead you set it for the Tag that the button is calling. Which is great if you are calling a Tag. The attached shows how you can do it if you aren't calling a Tag, I have done it in Crimson 3.0 so that you can simulate it, rather than having to load it in to a HMI. I created:
User1 with User Rights 1, 2 & 3 Password 111,
User2 with User Rights 1, 2, 3, & 4 Password 222,
OK, not the strongest passwords
. Also created an internal Data Tag called UserLevel. You can use a System Function called GetCurrentUserRights() which will return an integer value depending on which User Rights boxes you ticked on the Security tab.
User1 User Rights as set up here give a value of 7
User2 User Rights as set up here give a value of 15
So the Next button on screen one has a User Defined action that first reads the current user access rights and loads it in to UserLevel Tag, and then checks to see if the value is greater than 7. If not then the next screen isn't called, if yes then screen 2 shows.
One wrinkle I like to use. If there is a button there and it doesn't work for them, operators tend to just press harder and harder assuming that there is a fault. So I use the UserLevel value in the 'Show' section of a button so that the button only shows if the user is logged in at sufficient security level.