SQL Security Filters not working everywhere

AaronGAaronG Member Posts: 10
Using the SQL option of Navision 4.0, the security filter functionality does not function correctly on the Contact Card. Even though USER1 has the appropriate permissions, the following occurs:

1) USER1 clicks on Sales & Marketing -> Sales -> Contacts. The Contact Card loads successfully.

2) USER1 changes some text in the address - for instance "STREET" to "AVENUE" (any change to any record...)

3) USER1 presses TAB to leave the address field

4) USER1 presses PGN DWN to go to the next record.

5) A security message appears: "You do not have read access to the Contact table. Contact your system adminstrator."

6) USER1 clicks OK and the changed record is "unchanged"


I made sure that USER1 has read access to the Contact tabledata. This is not unique to this user - I was able to recreate on other users. Also, I was able to recreate this issue in a standard Cronus DB.

The issue seems to be with SQL security filters. I set a security filter on the Contact table to only show those contacts which reside in the Territory Code = "BC". But when I remove the security filter, the permissions error does not occur.

I tried to recreate the same error on the Items - by setting up the same security filter on Base Unit of Measure - but no security error resulted.

MBS says that this functionality was designed for the GL at first, and has been since expanded to various other parts of the application, but they say it's not 100% throughout the application. Also, they say that there is no plan to make this functionality 100% throughout Navision. That's pretty unfortunate - they should at least put that info in the manuals.

Any ideas/experience that may help?

Thanks

Comments

  • davmac1davmac1 Member Posts: 1,283
    It appears the user is reading the contact record - the problem is in the update. Does the user have modify rights to the contact table?
  • kinekine Member Posts: 12,562
    The sec. filters are not implemented automatically. They are used on the form, but if there is for example some C/SIDE code using the data, you need to prepare it for the Sec. filters. You need to use SETPERMISSIONFILTER command to apply sec. filters on record variable...
    Kamil Sacek
    MVP - Dynamics NAV
    My BLOG
    NAVERTICA a.s.
Sign In or Register to comment.