Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Disable Functions ???

Hi All;

I would like to disable "Reload" and "Edit Script" functions according to documents or domain users?

I can disable these functions for all users except admin as you know...

Which one is possible and how can i do?

Thanks in advance...

1 Solution

Accepted Solutions
Miguel_Angel_Baeyens

Hello,

I'd do groups for users in a field out of the section access, and apply those fields to the conditional view of the sheet, in the sheet properties, General, Show Sheet, Conditional:

Section Access; LOAD * INLINE [ACCESS, NTNAME, NTDOMAINSIDADMIN, ADMINISTRATOR, S-1-5-21-4098164516-3443508128-318809462USER, SAKYUZ, S-1-5-21-4098164516-3443508128-318809462 ]; Section Application; UsersGroupsMap: // loaded manually, you can load from database or excel sheet for exampleLOAD * INLINE [ USERNAME, GROUPDOMAIN\ADMINISTRATOR, ADMINSDOMAIN\SAKYUZ, HRDOMAIN\USER1, SALES]; Groups:LOAD OSUser() AS User, ApplyMap('UsersGroupsMap', OSUser()) AS GroupAUTOGENERATE 1;


Now Sheet1 has conditional

Match(Group, 'HR', 'ADMINS')


Meaning that the sheet will be visible for users in group HR or ADMINS according to the sample above.

Note that NTNAME must match what OSUser() returns (usually in the form of DOMAIN\UserName) otherwise you will be locked out, so backup your document before reloading.

Hope that helps.

View solution in original post

7 Replies
Miguel_Angel_Baeyens

Hello,

You need to create a section access, so QlikView can distinguish between user access and admin access. Note that if your deployment uses clients (AJAX or IE Plugin) all users are granted USER privileges, even if you have set them as ADMIN in the ACCESS field of section access. In other words, opening on server in Desktop, using IE Plugin and AJAX will not allow users to save or edit script or macro.

Besides, make sure that in the Settings menu, Document Properties, Open tab, "Initial Data Reduction..." and "Strict Exclusion" are unchecked.

// Sample Section AccessSECTION ACCESS;// Fields below are mandatoryLOAD * INLINE [ ACCESS, USERID, PASSWORDADMIN, ADMIN, ADMINUSER, USER1, USER1]; SECTION APPLICATION;// You script starts here


Hope that helps.

ashfaq_haseeb
Champion III
Champion III

Hi Selsuck

Addition to what Mrigun Says

You have to define what all the users can access and admin can access

for that go to Document Prooerties--> Security --> and removes the checks that you want to disable for the users.

and also make sure to check on Admin Override Security. It will be uncheck by default.

Save your application Close your Desktop.

Then Start Playing with it after opening again

Hope this is what you are looking for.

Regards

ASHFAQ

Not applicable
Author


Hi Miguel,

Thanks for replay.

i use like that below here:

Section Access;



LOAD

* INLINE

[

ACCESS, NTNAME, NTDOMAINSID

ADMIN, ADMINISTRATOR, S-1-5-21-4098164516-3443508128-318809462

USER, SAKYUZ, S-1-5-21-4098164516-3443508128-318809462









]

;





Section

Application;

I would like to do specific user access.
EX: HR Department have to see only sheet1 and sheet2, Accounting Department have to see only sheet3 and sheet4 in the same doc....

How can i do ?

Thanks in advance...

ashfaq_haseeb
Champion III
Champion III

Hi

For this I suggest you to go through Basic Section access attached to this document.

Hope thats help you

Regards

ASHFAQ

Miguel_Angel_Baeyens

Hello,

I'd do groups for users in a field out of the section access, and apply those fields to the conditional view of the sheet, in the sheet properties, General, Show Sheet, Conditional:

Section Access; LOAD * INLINE [ACCESS, NTNAME, NTDOMAINSIDADMIN, ADMINISTRATOR, S-1-5-21-4098164516-3443508128-318809462USER, SAKYUZ, S-1-5-21-4098164516-3443508128-318809462 ]; Section Application; UsersGroupsMap: // loaded manually, you can load from database or excel sheet for exampleLOAD * INLINE [ USERNAME, GROUPDOMAIN\ADMINISTRATOR, ADMINSDOMAIN\SAKYUZ, HRDOMAIN\USER1, SALES]; Groups:LOAD OSUser() AS User, ApplyMap('UsersGroupsMap', OSUser()) AS GroupAUTOGENERATE 1;


Now Sheet1 has conditional

Match(Group, 'HR', 'ADMINS')


Meaning that the sheet will be visible for users in group HR or ADMINS according to the sample above.

Note that NTNAME must match what OSUser() returns (usually in the form of DOMAIN\UserName) otherwise you will be locked out, so backup your document before reloading.

Hope that helps.

Not applicable
Author

Hi Miguel;

Thank you for your solution,

if we do not write ADMINS in Match function, Admins will not see the Sheet... right?

Or Admins see all Sheets in every case ?

Miguel_Angel_Baeyens

Hi,

If you don'r write admins, they will not see the sheet, as any other user.

Regards.