Qlik Community

QlikView Security & Governance

Discussion Board for collaboration on QlikView Security and Governance.

Highlighted
Not applicable

section access at sheet level

I implemented section access on tables. But I have a doubt in implementing it on sheets. The question is as follows:

Suppose I have 10 sheets in a QlikView application. How can you give access to user to view sheets 3,6, and 8 only ?

Can anybody please help me with implementing this.

9 Replies
Highlighted
oknotsen
Honored Contributor III

Re: section access at sheet level

Add a PROFILE column to your section access table.

Add a separate table in which you link the PROFILE column to a bunch of flag fields (like for example Sheet3, Sheet6 and Sheet8) that you set to either 0 or 1, depending on if someone is allowed access to the sheets or not.

Add a "conditional show" to the sheets in which you add an expression like "Sheet3 = 1".

May you live in interesting times!
Highlighted
ecolomer
Honored Contributor II

Re: section access at sheet level

Highlighted
Not applicable

Re: section access at sheet level

Thanks Enrique!!

Could you please provide a link where I can view the text in ENGLISH and understand the content.

Thanks,

Laxmaiah Chowdary

Highlighted
ecolomer
Honored Contributor II

Re: section access at sheet level

Highlighted
laxmikuber
Contributor II

Re: section access at sheet level

I had the similar requirement and I did something like this...

I had 3 sheets in my case and created flags for each one of them Flag1,Flag2 and Flag3.

My Section access table would look something like this

SECTION Access;

LOAD

ACCESS,

NTNAME,

BU,

ROLE     

FROM [..\QVD\users.qvd](qvd);

And my section application part would looks something like this..

SHEET_ACCESS:

LOAD * INLINE [

ROLE,Flag1,Flag2,Flag3

R1,1,1,1

R2,1,1,1

R3,0,1,0

R4,1,1,1

];

Hope this helps you to build your section application table.

Regards,

Laxmi

Highlighted
krishna20
Valued Contributor II

Re: section access at sheet level

Hi,

Please find the below script as well as attached Excel. Hope it helps.

Section Access;

Star is *;

LOAD ACCESS,

    NTNAME,

    COMP_CODE,

    DEPT_CODE,

    SH01,

    SH02,

    SH03,

    SH04,

    SH05

FROM

(ooxml, embedded labels, table is Sheet1);

SECTION Application;

LOAD //ACCESS,

    NTNAME,

    //COMP_CODE,

    //DEPT_CODE,

    SH01,

    SH02,

    SH03,

    SH04,

    SH05

FROM

(ooxml, embedded labels, table is Sheet1);

Not applicable

Re: section access at sheet level

Thanks Laxmi Kuber and Krishna20 for answers.

I got an understanding from other posts that Conditional option at Setttings -> sheet properties -> General needs to be enabled.

https://community.qlik.com/docs/DOC-4435

https://community.qlik.com/docs/DOC-6078

Can you please suggest that what is to be written in Conditional option in order make it work

Thanks in advance.

Highlighted
laxmikuber
Contributor II

Re: section access at sheet level

Hi,

In the above Section Application table example I gave...

SHEET_ACCESS:

LOAD * INLINE [

ROLE,Flag1,Flag2,Flag3

R1,1,1,1

R2,1,1,1

R3,0,1,0

R4,1,1,1

];

Lets assume Flag1,Flag2 and Flag3 are flags for 3 Sheets Sheet1,Sheet2 and Sheet3 respectively.

Then you can write if(Flag1=1,0) in Conditional option under Settings->Sheet Properties->General for Sheet1.

This will enable that Sheet1 whenever Flag1=1 else the sheet will not be enabled for that particular user i.e when Flag1=0.

Hope this helps.

Regards,

Laxmi

Highlighted
qlikviewwizard
Honored Contributor II

Re: section access at sheet level

Hi Check this thread - Section Access