security2There are two types of data reduction methods normally used in QlikView.

Section Access — used for dynamic data reduction

Loop and Reduce — used for static data reduction

Both methods work well based on your goal for the data reduction. However, recently, I was asked if there is a way to hide a table from a group of users vs another group of users who need to see that table with sensitive data.

There are always many ways to skin a cat when it comes to possible solutions in QlikView so I devised one that may interest you. And, I would love to know if you can think of a  better approach for this specific requirement.

Assume that products table has sensitive data and you want to hide it from users so you have two AD groups — one that can see all tables including products table and another that can see all tables but products table.

partial reloadPartial Reload:

This command executes only Load and Select statements preceded by a Replace or Add prefix. Other data tables remain unaffected by the command.

Now the trick is to add only argument to the replace prefix since only is an  optional qualifier denoting that the statement should be disregarded during normal (non-partial) reloads.

replace only

 

 

 

 

 

 

 

 

 

Add an island inline table just to perform loop and reduce using same source document.

It can be something like this:

loop

 

 

 

 

 

Next, create two tasks in QMC:

A partial reload task along with loop and reduce using the field Loop so that same source document can be used to create a user document with products table(sensitive data).

task1  task1-1

 

 

 

 

Another task for the normal load so that the load will ignore products table due to only argument along with replace prefix.

Partial reload is normally a handy feature while you develop an application since it will allow you to reload changes to smaller tables without reloading a large fact table but I found this trick useful to hide table with sensitive data.

I am ceaselessly amazed at many ways to skin a cat when it comes to finding creative solutions in QlikView and Qlik Sense!