Hi All,
There are Basic/Major Objects: Table, Pages, Report, Query, MenuSuite, XMLPort, Codeunit, but while setting Permissions there is another Object Type that you see which is called TableData.
Now, what exactly are they? How are they different from Table? A basic, but relevant discussion in my point of view. There is always confusion between the two while assigning Permissions.
Let's understand it better. I will try to put it as simply as I can.
Table is a Cup and TableData is the Tea in it. I read this on a forum and it is the most beautiful and precise definition.
To elaborate the statement further, take the same example as metaphor, then we can go into technical details.
- The structure of the Cup is what holds the Tea.
- If no Cup exists, where will you store the Tea? You cannot.
- You drink the Tea from a Cup, you do not eat the Cup.
- Table data is data container. Table is object (Trigers, func.) container.
- Table - This is the Table Objects themselves, the definition of the tables, the keys, and the trigger codes. TableData - This refers to the data stored in the tables. This is what gives you permission to read or write the data in the database.
- So you set Read, Insert, Modify, Delete Permission for a TableData and Execute for Table in a Permission Set. Now it makes sense right?
- You can just assign TableData Permissions as required (Read/Insert/Modify/Delete) and avoid giving access to run the Table directly (Execute Permission)
I hope there's no confusion anymore. It isn't a fancy blog, but I hope it helps :D
Reach out to me if you have any questions or suggestions.
Check out other blogs, if you haven't already.
No comments:
Post a Comment