Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Row Level Access QlikView

Hi!

I´ve a problem with my QlikView report. I´m starting to apply a row level security.

I have a simple COUNTRY list and I want to filter the information that each User can see. Also I want to load all the users data and access from an external Excel file called "rowlevel". I have created that with the following table:

 

ACCESSUSERIDCOUNTRY
ADMINA*
USERBBrazil
USERCFinland
USERDGreece
USEREArgentina

My idea is that User A can see all countries and the other users can see only a specific country.

I load this script but it does not work

LOAD * INLINE [

COUNTRY

    Argentina

    Brazil

    Chile

    Spain

    Greece

    Ireland

    UK

    Bolivia

    USA

    Australia

    New Zeland

    Canada

    South Africa

    Morocco

];

Section Access;

LOAD upper([USERID]) as [USERID],

ACCESS as ACCESS,

COUNTRY

FROM

rowlevel.xlsx

(ooxml, embedded labels, table is Sheet1);

Section Application;

SheetAccessMatrix:

LOAD upper([USERID]) as [USERID],

ACCESS as ACCESS

FROM

rowlevel.xlsx

(ooxml, embedded labels, table is Sheet1);

Could you help me?

Thanks!!

Message was edited by: Raul Alberto Dip

1 Solution

Accepted Solutions
olivierrobin
Specialist III
Specialist III

so you have to use

star is *;

View solution in original post

8 Replies
Anonymous
Not applicable
Author

I´ve changed the script as this:

LOAD * INLINE [

COUNTRY

    Argentina

    Brazil

    Chile

    Spain

    Greece

    Ireland

    UK

    Bolivia

    USA

    Australia

    New Zeland

    Canada

    South Africa

    Morocco

];

Section Access;

LOAD upper([USERID]) as [USERID],

ACCESS as ACCESS

FROM

rowlevel.xlsx

(ooxml, embedded labels, table is Sheet1);

Section Application;

SheetAccessMatrix:

LOAD upper([USERID]) as [USERID],

ACCESS as ACCESS,

COUNTRY

FROM

rowlevel.xlsx

(ooxml, embedded labels, table is Sheet1);

The problem is that the "all countries" USER A doesn´t work! It add a "*" country instead of allow to see all countries!

olivierrobin
Specialist III
Specialist III

hello

what do you mean when you say : it doesn't work , what happens ?

did you enable reduction and/or exclusion in document properties ?

olivierrobin
Specialist III
Specialist III

you mav have to add

star is *;

Anonymous
Not applicable
Author

Sorry I ve upload an old version of "rowlevel" file on the post, in which USER A has a "Argentina" in the COUNTRY Column. The file that i´m trying to use actually has a * on COUNTRY column for that USER A. I will update the post.

Anonymous
Not applicable
Author

How could I enable a Reduction/Exclusion option?

with this script, when i log in with the USER B I can only see "Brazil", that is right. But when I try to log in with User A I see a "*" country instead of all countries.

LOAD * INLINE [

COUNTRY

    Argentina

    Brazil

    Chile

    Spain

    Greece

    Ireland

    UK

    Bolivia

    USA

    Australia

    New Zeland

    Canada

    South Africa

    Morocco

];

Section Access;

LOAD upper([USERID]) as [USERID],

ACCESS as ACCESS

FROM

rowlevel.xlsx

(ooxml, embedded labels, table is Sheet1);

Section Application;

SheetAccessMatrix:

LOAD upper([USERID]) as [USERID],

ACCESS as ACCESS,

COUNTRY

FROM

rowlevel.xlsx

(ooxml, embedded labels, table is Sheet1);

olivierrobin
Specialist III
Specialist III

so you have to use

star is *;

olivierrobin
Specialist III
Specialist III

before loading SheetAccessMatrix

Anonymous
Not applicable
Author

Yes!!! That works!!!

Thanks!!