Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
l_wassler
Contributor III
Contributor III

problem with the data restriction

hi,

first to the structure of our company: we have one sales manager which is responsible for a number of sales agents in a certain country. but one sales agent is active in one or more countries.

I would like that the sales manager can see only the data of the sales agents who are active in 'his' country. and that the sales agents can see only their own data, but for all countries in which they are active.

I tried to solve this problem with the * (star is), but it seems, that this is the wrong method.

I've attached a example file (including 2 xls. files). We have two countries: Italy and Germany! And we have four sales agents: A, B, C, D! Sales Agent A is active in Italy, B in Italy and Germany, C in Italy and Germany and D in Germany! John Doe is sales manager of Italy and sales agent B is Jane Doa! So John Doe should see every data for Italy (including the sales agents data that refers to italy) and Jane Doa should see every data that refers to her, but for every country where she's active!:

star is *;

section access;
Load * inline
[ACCESS, USERID, NAME
ADMIN, ME, ME
USER, JOHN, DOE
USER, JANE, DOA];


section application;
Load * inline [
NAME, COUNTRY, SALESAGENT
DOE, Italy, *
DOA, *, B];


Is there a way to solve this problem? or is this kind of restriction not possible in qlikview?

thanks a lot

PS. the excel file with the data is in the next post

1 Solution

Accepted Solutions
eric_dielessen
Partner - Contributor III
Partner - Contributor III

It works when using two seperate authorization tables; one for COUNTRY and one for SALESAGENT.
See the example below.

star is *;

section access;

Load * inline [
ACCESS, USERID, COUNTRY_ACCESS, SALESAGENT_ACCESS
ADMIN, ME, ,
USER, JOHN, DOE, DOE
USER, JANE, DOA, DOA];

section application;

Load * inline [
COUNTRY_ACCESS, COUNTRY
DOE, Italy
DOA, *];

Load * inline
[ SALESAGENT_ACCESS, SALESAGENT
DOE, *
DOA, B];

Directory;
LOAD
AMOUNT,
COUNTRY,
SALESAGENT FROM .\example_data.xls (biff, embedded labels, table is table1$);

View solution in original post

4 Replies
l_wassler
Contributor III
Contributor III
Author

here is the .xls file with the data...

l_wassler
Contributor III
Contributor III
Author

any idea...?

eric_dielessen
Partner - Contributor III
Partner - Contributor III

It works when using two seperate authorization tables; one for COUNTRY and one for SALESAGENT.
See the example below.

star is *;

section access;

Load * inline [
ACCESS, USERID, COUNTRY_ACCESS, SALESAGENT_ACCESS
ADMIN, ME, ,
USER, JOHN, DOE, DOE
USER, JANE, DOA, DOA];

section application;

Load * inline [
COUNTRY_ACCESS, COUNTRY
DOE, Italy
DOA, *];

Load * inline
[ SALESAGENT_ACCESS, SALESAGENT
DOE, *
DOA, B];

Directory;
LOAD
AMOUNT,
COUNTRY,
SALESAGENT FROM .\example_data.xls (biff, embedded labels, table is table1$);

l_wassler
Contributor III
Contributor III
Author

thank you very much!

with kind regards

leonhard