Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
After 12 years building Qlik Apps this is a first for me. Maybe someone has an answer?
We have QlikView installed on a Terminal Server. Each user has their own license, but they are sharing the same QVW files.
I have recently changed the script to include subroutines for repeated statements.
When I log into the server and reload the script, it all works fine. When other users log into the server and reload the script, the subroutines are not executed.
Only difference I have found is that my user account is a local administrator on that server, other users are not administrators.
It seems the user had not provided all the information to me and, in fact, the subroutine had been called correctly in the first few iterations of the loop, that a completely separate issue has caused the subroutine to not be called.
Please disregard this thread!
Does the sub routines exist for the users. Have you tried creating a simple SUB just to check?
SUB helloworld
TRACE #### Hello world ####;
ENDSUB
CALL helloworld
Are your SUB routines within the QlikView script or are they located in external qvs files included by Include functionality? If external then try changing the include statement to an must_include to ensure that they are in fact loading your subs.
//$(Include=path\to\subroutine.qvs);
$(Must_Include=path\to\subroutine.qvs);
Does your sub routines do weird stuff like executing bat files or similar?
The Subroutine and the CALL statement are both in the script.
I don't understand how they could be unavailable to any user??? How do I exclude Sub routines from users???
There are no Include statements in the script.
The subroutine uses the Rest Connect, but so does other parts of the script (which work fine for ALL users)
Did you try introducing a simple SUB like my Hello World sub earlier?
The only somewhat tricky thing about SUBs as I can think of is that it can handle variables a bit differently compared to script not handled i a sub. Variables are local inside the sub.
Take a look at the SUB help page: https://help.qlik.com/en-US/qlikview/April2020/Subsystems/Client/Content/QV_QlikView/Scripting/Scrip...
Differences could be caused through the different security-settings from the users - user properties in tab security.
Also a different data-interpretation, for example caused through missing interpretation-variables (those which usually are in the sheet-tab main) because then will the system-interpretation be taken - may cause an invalid call-statement. In regard to the available data also section access could makes a difference.
Another look should go the used releases of all users and your server - it should be always the same to avoid any strange issues which are rather seldom but sometimes it happens.
- Marcus
It seems the user had not provided all the information to me and, in fact, the subroutine had been called correctly in the first few iterations of the loop, that a completely separate issue has caused the subroutine to not be called.
Please disregard this thread!