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

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Section Access with anonymous data?

Hi everyone,

I have an application that shows data for 5 suppliers.  Each supplier has a user ID to access the application.

I want each user to see all data, but i don't want them to see the real names of the 4 other suppliers.

For example, if the supplier names were:

Supplier

Joe Bloggs Ltd

Mary Smith plc

Terry Towel ltd

WH Smudge LLP

Fred Fox Limited

.... and the user from Joe Blogg's logs in, i'd want their view of Supplier to look like

Supplier

Joe Bloggs Ltd

Supplier A

Supplier B

Supplier C

Supplier D

..... like wise, if Terry Towel log-in......

Supplier

Supplier A

Supplier B

Terry Towel Ltd

Supplier C

Supplier D

.... it's not essential that the same supplier is always called Supplier A (and vice versa), but if this makes the answer easier that's fine.

All ideas on how best to do this (if possible) will be greatly appreciated.  Thanks.

1 Solution

Accepted Solutions
Not applicable
Author

Looks like there's a far simpler way to do this - thanks to Philip Doyne

Simply create a table with the User ID, Supplier Name and another with a random / anonymous name.

e.g.

UserID, Supplier, Anonymous

JBL, Joe Bloggs Ltd, Supplier 1

MSP, Mary Smith plc, Supplier 2

.... and so on.

Then simply add a calculated dimension to any table that reads....

If ((QVUser()=UserID , Supplier , Anonymous)

Job done!

View solution in original post

6 Replies
Nicole-Smith

See the attached .qvw file.  Make sure to look at the load script and the dimension on the chart.

The user names that will get you into the .qvw file are:

SuperUser

JBL

MSP

TTL

WSL

FFL

Not applicable
Author

Fantastic Nicole - you're a star!

I've tried replicating it this evening though and cannot get it to work.

I've spotted the variable you created, but wondered if i'm missing some other setting somewhere in Qlikview?  Any pointers would be really appreciated.

Not applicable
Author

Looks like there's a far simpler way to do this - thanks to Philip Doyne

Simply create a table with the User ID, Supplier Name and another with a random / anonymous name.

e.g.

UserID, Supplier, Anonymous

JBL, Joe Bloggs Ltd, Supplier 1

MSP, Mary Smith plc, Supplier 2

.... and so on.

Then simply add a calculated dimension to any table that reads....

If ((QVUser()=UserID , Supplier , Anonymous)

Job done!

philip_doyne
Partner - Creator II
Partner - Creator II

Thanks for the credit Mat, However you and anyone looking should be aware that this is a simple method and not 100% secure because the original name remains in the data available to the user and if they are allowed to create new objects they could display it.   If you disable this in server you are OK, otherwise you need to make sure that you have a field that you can OMIT or REDUCE using section access.  You have to be careful not to reduce all your data so you do get the comparative records.

Not applicable
Author

Thanks Philip.  Yes, the app is locked down fully (in the server and the app), so no one will be able to access the original names in the table.

philip_doyne
Partner - Creator II
Partner - Creator II

Thank Mat – I would have hated anyone to draw the conclusion that I had given you incomplete advice!

Philip

Philip Doyne

Mobile: 07930 401440

Office : 01709 300230

Email : philip.doyne@qlickit.co.uk<mailto:philip.doyne@qlickit.co.uk>

Web : www.qlickit.co.uk<http://www.qlickit.co.uk/>