I have bound a business object to a ComponentOne grid through an instance of the BusinessBindingSource object. When I attached security keys to some of the business object's fields, it didn't seem to have any affect on the grid - users who do not have access to a field will be able to see it on the grid. Does field level security not work with the BusinessBindingSource object or am I doing something wrong? Thanks for your help.
Fran Parker
MaxQ Technologies, Inc.
I will add an enhancement request to retrieve the DeniedAction from the database when a user is denied by default rather than explicitly denied.
As for the CheckFieldSecurity event, you have to set the CheckFieldSecurity property on the business object so that the event will be raised. Otherwise, the event never gets raised for you to handle it. Sorry I left that out earlier.
Thanks for the info. Now I understand why I wasn't getting the denied action I expected.
Unfortunately, however, I'm still having trouble with my grid screen. I changed the CheckSecurityOnFields property of my object to Always (it had been set to WhenPermissionKeySet) and still the CheckFieldSecurity event is not being fired. On my non-grid test screen, the event does get fired. So, it seems as though having the object bound to the grid is preventing the event from being raised. Any thoughts? Thanks for your help.
Fran.
The BBS at the moment is not respecting the security fields as it relates to binding to a grid and having the same native functionality as bound to any other type of control. This is due to the nature of the IBindindList interface and how it interacts with the grid. This is going to take some time to work through and as soon as we have a solution we will let you know. Sorry for any trouble.
No trouble - I just wanted to make sure that I wasn't doing something wrong. Thanks for the update!