Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi experts,
I was wondering whether we can control the access on the fields level.
Allow me to take an example:
Year , Quantity, Amount
2007 10 $100
Users:
UserId
A
B
If A views the doc, he can could see that 3 columns, but B only could see the Year and Quantity.
How can I achieve it?
Thanks a lot.
Well, section access is meant more for row-level security, not column-level security. If you don't need to give users the right to create collaboration objects, it might be easier to just precreate different objects and hide them conditionally based on the user id...
But in general, yes, if you want to omit 2 columns, you have to add the user twice into section access. If you want to omit 100 columns, you need to have him listed 100 times. You can of course create the section access table in Excel--there's no need to read it inline. Interestingly, you only need to do this for the first user that will be removed. For example, suppose you have 2 users, UserA and UserB, who should both not be able to see FieldA and FieldB. Your section access can look as follows:
Section Access;
LOAD * INLINE [
ACCESS, USERID, PASSWORD, OMIT
USER, USERA, UA, FIELDA
USER, USERA, UA, FIELDB
USER, USERB, UB, *
];
By omitting '*' for UserB, you will omit all previously listed fields in the Omit column. Here is a good reference for section access and the various things you can do with it: http://www.google.com/url?sa=t&source=web&cd=1&ved=0CBMQFjAA&url=http%3A%2F%2Fcommunity.qlik.com%2Fc...
Regards,
Using section access, you can remove that field with the OMIT qualifier. For example (note upper case, which must be matched with the actual field name in your document):
section access;
Star is *;
load * inline [
ACCESS, USERID,OMIT
USER, A,
USER, B, AMOUNT
];
section application;
Regards,
Thanks for your reply, but I need to omit a lot of fields for B, shall I create huge rows for B in section access? Is there any good methods?
Well, section access is meant more for row-level security, not column-level security. If you don't need to give users the right to create collaboration objects, it might be easier to just precreate different objects and hide them conditionally based on the user id...
But in general, yes, if you want to omit 2 columns, you have to add the user twice into section access. If you want to omit 100 columns, you need to have him listed 100 times. You can of course create the section access table in Excel--there's no need to read it inline. Interestingly, you only need to do this for the first user that will be removed. For example, suppose you have 2 users, UserA and UserB, who should both not be able to see FieldA and FieldB. Your section access can look as follows:
Section Access;
LOAD * INLINE [
ACCESS, USERID, PASSWORD, OMIT
USER, USERA, UA, FIELDA
USER, USERA, UA, FIELDB
USER, USERB, UB, *
];
By omitting '*' for UserB, you will omit all previously listed fields in the Omit column. Here is a good reference for section access and the various things you can do with it: http://www.google.com/url?sa=t&source=web&cd=1&ved=0CBMQFjAA&url=http%3A%2F%2Fcommunity.qlik.com%2Fc...
Regards,