Qlik Community

QlikView Scripting

Discussion Board for collaboration on QlikView Scripting.

Announcements

Breathe easy -- you now have more time to plan your next steps with Qlik!
QlikView 11.2 Extended Support is now valid through December 31, 2020. Click here for more information.

Not applicable

Hide a key field from users

I'm working with some sensitive data where the primary key is shared between 4 different tables. This primary key is a personal identifier number that needs to be hidden from the users, but still needs to be used for some calculations and as the key to maintain table links.

What is the best way to use this field in the backend as a key and for calculations, but hide it from users so they can't see the actual identification number?  I tried using the HidePrefix in the script, but it's still possible for users to view it if they enable system fields. Would it be best to scramble the field, or is there another preferred method?

6 Replies
Not applicable

Re: Hide a key field from users

You can use the Autonumber functions. You will get a different number for every value, not similar to the original values, thus hidding them to the users.

Not applicable

Re: Hide a key field from users

Thanks. I understand how to use the autonumber for one table, but how do I do it with 4 tables and so that it maintains the primary key?

If I were to use the Autonumber function and one table is missing a record, wouldn't it throw off the link?

nagaiank
Valued Contributor III

Re: Hide a key field from users

You may use AutoNumber(Expression, AutoID)

Employee
Employee

Re: Hide a key field from users

tag yourfileld $hidden

MVP & Luminary
MVP & Luminary

Re: Hide a key field from users

You can use autonumber across all the tables and you will get consistent translation. For the same input key value, you will get the same return from autonumber(). It doesn't matter if one table is missing some values.

-Rob

http://robwunderlich.com

carlos_reyes_qv
Valued Contributor

Re: Hide a key field from users

If you use Autonumber() during the same script execution it should work ok. This is because Autonumber() will give a different/unique number for each different value and not depends on the number or order of the records