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

Announcements
Join us to spark ideas for how to put the latest capabilities into action. Register here!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Data Restriction Problem

Hi All,

I am trying to use section access / section application to limit users accessing an application & to apply a sales organization structure on the data so that people can only see data reporting to their teams below them in the structure. I have tried many variations of the following but I am struggling to get the * to be a wildcard.

My Section Access/Application looks something like the following.

Binary





"qvd generator.qvw";

Section Access;

Access;

star is *;

LOAD

* INLINE

[ACCESS, NTNAME,PROFILE



ADMIN,NT1,RH

USER,NT2,OR

USER,NT3,EP]



Section

Application;



Application:

load

* inline

[PROFILE,ACCESSLEVEL1","ACCESSLEVEL2","ACCESSLEVEL3"



RH,"Topseller",*,*

OR,*,"Midseller",*

EP,*,*,"Lowseller"];



my data section then contains something like







data:

unqualify

*;

LOAD

* INLINE

[

"Sales Manager",ACCESSLEVEL1,ACCESSLEVEL2,ACCESSLEVEL3

"Direct","Topseller","NONE","NONE"

"InDirect","Topseller","Middleseller","NONE"

"Other","Topseller","Middleseller","Lowseller"]

What I am trying to achieve is that when NT1 logs in they see everything where accesslevel1 is Topseller - e.g. in this example everything. NT2 can only everything in their part of the organization e.g. Indirect & Other. NT3 can only see "Other"

Any help much appreciated[;)]





3 Replies
Not applicable
Author

I am not sure about this but you could try removing the binary load, see if that works.

Not applicable
Author

I don't think the * wil work as you want in your table.

The start should work in the section access table not in your application table.

You should run a LEFT JOIN on your first application data table in order to add all possible values which are setup with a star. Something like that...

LEFT JOIN (TABLE)

LOAD PROFILE, '*' as PROFILE_NAME resident table2;

Rgds,

Sébastien

Not applicable
Author

Hi All

thanks for the suggestions. I think I need to build in some knd of conversion of * as suggested by spastor. However in the end I have decided to change the report structure & not use *.

my section access is the same. My application secion now just says "Profile" EP, OR, etc. I have changed the data section into an extended hierarchy table where EP & OR etc have many entries to pick up all of their teams.

This solution works for me because there are only 10 managers - if there were more It would be difficult.