Qlik Community

New to QlikView

Discussion board where members can get started with QlikView.

Announcements
QlikWorld 2020: Join us May 11 - 14, 2020 in Phoenix, AZ. Register early and save $400. Learn More
rauldip22
New Contributor II

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
Valued Contributor II

Re: Row Level Access QlikView

so you have to use

star is *;

View solution in original post

8 Replies
rauldip22
New Contributor II

Re: Row Level Access QlikView

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
Valued Contributor II

Re: Row Level Access QlikView

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
Valued Contributor II

Re: Row Level Access QlikView

you mav have to add

star is *;

rauldip22
New Contributor II

Re: Row Level Access QlikView

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.

Highlighted
rauldip22
New Contributor II

Re: Row Level Access QlikView

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
Valued Contributor II

Re: Row Level Access QlikView

so you have to use

star is *;

View solution in original post

olivierrobin
Valued Contributor II

Re: Row Level Access QlikView

before loading SheetAccessMatrix

rauldip22
New Contributor II

Re: Row Level Access QlikView

Yes!!! That works!!!

Thanks!!