Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
raadwiptec
Creator II
Creator II

access

for section access Can we implement a file as below?

     

ACCESSREPORT NUMBERACCESS COLUMNFIELD VALUEUSERS
USER200Department115domain\test1
USER201ProvinceLiegedomain\test2
USER202CountryAmericasdomain\test3

ANY SUGGESTIONS?

9 Replies
Peter_Cammaert
Partner - Champion III
Partner - Champion III

Of course you can. This is just data.

But what behavior do you want to obtain? Can you describe your security requirements?

raadwiptec
Creator II
Creator II
Author

Hi peter,

as the same above. iam confused how to implement in the section access load statement.

for ex: the data has be seperated based on the column -- ACCESS COLUMN so here for Report number 200 -->user Test1 should be able to see only department '115'

for Report number 201 -->user Test2 should be able to see only province 'liege'

how to achive this in the load statement of the section accesss ?

Peter_Cammaert
Partner - Champion III
Partner - Champion III

Based on your data sample (expand this to include every other field you plan to include sometime in the future), if and only if your Province-Department-Country fields are all located in different Section Application tables, a LOAD like this will work just fine to reduce the data:

ACCESSREPORT NUMBERDEPARTMENTPROVINCECOUNTRYUSERS
USER200115**domain\test1
USER201*Liège*domain\test2
USER202**Americasdomain\test3

Note that the stars will only map to all values present in the current SA table column. Field values available in the corresponding Section Application tables will not be included.

raadwiptec
Creator II
Creator II
Author

hi peter,

as per it looks like we need to cross tab the columns,.. but is it possible to refer certain columns from another file

for ex: Department can i link to another column from the script. as far my testing the section application drops everything? or is it internally linked

Peter_Cammaert
Partner - Champion III
Partner - Champion III

I'm sorry but I don't understand your question.

What do you mean by "from another file"? You can only refer to columns in the current QVW.

Section Access internally links to the Data Model during opening of your document, initiates a Data Reduction if you enable those options in Document Settings, and is then removed/hidden from your Data Model.

raadwiptec
Creator II
Creator II
Author

Hi Peter,

as you mentioned -- Note that the stars will only map to all values present in the current SA table column. Field values available in the corresponding Section Application tables will not be included.

Is there a way for me to refer this '*' column to another table or file? for ex:

USER201*Liège*domain\test2

now currently user 201 can only see 115.. but that should not be th case.. he should be able to see all the departments under the liege province..

Peter_Cammaert
Partner - Champion III
Partner - Champion III

Not that I am aware of.

But there is a solution/workaround for this (isn't there always?)

In your Section Access; code, add a dummy user definition to your SA table that includes - on different rows - all possible Departments, Countries and Provinces. With this trick, * will now expand to all possible values in each column.

Note that nobody blocks you from loading these values from your actual data sources, so that these values stay synchronised with whatever your Database may contain at a particular point in time.

Best,

Peter

raadwiptec
Creator II
Creator II
Author

hi peter,

There are more than 50- 70 columns we need to add as dummy as per in my case. Is there a way i can refer this to the existing data..for example. i already have  department in my fact table.. I tried to link it ..but it does not work...

Peter_Cammaert
Partner - Champion III
Partner - Champion III

Of course there is a workaround (or we wouldn't call it QlikView anymore )

For each link field in your Section Access table, you can create a mapping table in Section Application. The only thing this mapping table does is map for instance SA DEPARTMENT to Facts Department in a 1:1 fashion. As a final element, you add DEPARTMENT 'ALL' to this table and add each and every real Department as a mapping value. Imagine that we have three departments 115, 220 and 300, then your mapping table would contain:

LOAD * INLINE [

DEPARTMENT, Department

115, 115

220, 220

300, 300

ALL, 300

ALL, 220

ALL, 300

];

I used DEPARTMENT as the Section Access field and Department to conect to Department in your Facts table. Since this LOAD does nothing special and relies entirely on the data present in your source table, the actual code is easy to contruct. The INLINE LOAD is just to demonstrate the idea.

One final thing you have to do to make this work: in the SA table column DEPARTMENT? replace all stars with text value ALL. This will perform in one stroke a full mapping of a single SA value to all Section Application values that may get loaded from your data source.

The number of columns for reduction seems to be a bit overkill. Can't you simplify your data model?