Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi Community,
I would like to share with you something which I thing can be very useful.
Few month back i work on Complex Authorization in QlikView for very complex Row Level security. During implementation it was too difficult to create various possible combinations if we have more number of columns.
For example see below security combination where for user TEST2, we you want to reduce the data as per below logic i.e. ([Dim 1]=’A’ AND [Dim 2]=’C’) OR ([Dim 1]=’B’ AND [Dim 2]=’F’)
In order to archived this we need to create all possible combinations into the Security Bridge table which connect Section Access table & Main data-set on which security need to apply.
But if you have too lot of fields then creating those combinations is too hard. In order to overcome this situation i have written script in QVW which generate this all combinations based on # of fields you supply in configuration.
In Configuration Details, need to specify the parameters values. Once all parameters are pass then you need to Reload the QVW, which will automatically generate script and you can copy the script from Generated Section Access Script section. In Configuration Details all parameters are required
After copying the script, go to STEP 5 where you need to modify the details as per your details & for STEP 6 you need to enable SECTION ACCESS & SECTION APPLICATION lines.
If you have any doubts feel free to ask.
Thanks,
Akshaye
I like it!
Can you share your file C:\Akshay Work Place\Data Consumer Document\4_QVD\Transactions.qvd" ??
Gab
Hey @nboccassini ,
Tool don't require physical QVD file for creating script of various combinations. In tool you just need to configure the variable in configuration section. You can use your QVD file path and update above path with your QVD file path.
Thanks,
Akshaye
Where are we passing parameter values? I mean where we have Configuration Details?
Where we have v_Section_Access_CSV_Headers?
Also I can see below
SET vScript = '// STEP 1 - Create combine data key in table on which section access needs to apply
[MainDataSetForSectionAccess]:
LOAD *
, UPPER(''|'' & $(SourceColumnKey) & ''|'' ) AS [SECTIONACCESS_DATA_KEY]
RESIDENT [$(v_Resident_Table_Name)];
DROP TABLE [$(v_Resident_Table_Name)];
Do we need to remove comments? As I don't see $(vScript) used anywhere..
Sorry but little confusing here.