SQL vs. Proprietary License Permission Checking

I have searched the forum, the SQL install guide the Application Designers Guide and the new 4.0 Installation and Configuration training manual but I can’t seem to find this behavior documented. The Environment: Navision Finsql version 4.0 Update 1 (build 20942) MS SQL 2000 SP3a Win2K Server (latest service pack) WinXP Pro SP2 client The issue: When entering a sale line for any Resource, the user receives the error ‘You do not have read permission to the Resource Cost table.’ However, when using a local copy of the data in a proprietary database to troubleshoot this issue, the error only fires if you choose one specific Resource No. It turns out that one record was inadvertently inserted in Table 202 Resource Cost. The client did not license any granule that contains this object. This error was resolved by removing the erroneous data from the unlicensed object. The Question: Is there a difference in the License Permission checking behavior between proprietary and SQL? It appears as if the proprietary client is checking only in the filtered set of records (hence the error when using the one specific Resource) while SQL is checking for any records in the table. If this is documented and I missed it, I would appreciate a nudge in the right direction. If I have gone over the cliff then I will quickly find out by the lack of responses. However, if this is not documented and I have not wandered over the edge, I would be grateful for any insight on this apparent difference in behavior. Thank you.

I think that it is problem of access type of the servers - Navision Native DB is taking exactly the record you want… (it goes through index and take the record) - it is why the permission is problem only in situation, when the target record exists (because only in this situation is there reading of the record). But MS SQL can take all data from table, do filtering and return you the set of records (or empty set) - it is why there is problem, if you do not have permission and any record exists - because there is reading every time. But it is only my analysis of the situations… :slight_smile:

There is a difference between the two - not in the license permissions checking but in the table permission checking. Without going into details, the bottom line is that SQL is more strict than native with data permission checking in version 4.0. The error you are receicing is correct however, since there is a read operation being attempted against the Recource Cost table.

Thank you very much for the clarification.