We all know and love the QMSEDX reloader and it works well. The way I was using it though was getting a little annoying. Typically I would set the password on the External Event Trigger. Then I would create a .bat file that would call qmsedx.exe something like
\\server\QMSEDX_CommandLine\qmsedx -task=”Reload a Qlikview” -qms=http://server:4799/QMS/Service -password=thepassword
Then go into the qvw, create a text object and set then the action to launch the .bat file
Kind of a hassle.
So my first thoughts were I could just delegate access to the Qlikview portal and let people reload that way. But I was a little hesitant because there was no way to restrict them to reloading only. They could muck up the schedule, delete tasks, all sorts of ways to mess things up.
Anyways, I wanted a method that was easy to reload but had a low chance of people messing with it.
Enter the Qlikview reloader.
First off, I stopped using a password on the EDX task. (A user can’t reload unless they are a member of QlikView EDX anyways)
Basically it looks in the C:\ProgramData\QlikTech\ManagementService\QVPR\Trigger.xml for where the TriggerType for ‘ExternalEventTrigger’ is ‘true’. This gives you a list where EDX has been set, then it joins to the C:\ProgramData\QlikTech\ManagementService\QVPR\DocumentTask.xml to get the name of the document
Then a text object is created with a conditional show that will show when a single document is selected.
This text object has a Launch action the application is set to
This assumes you have downloaded the qmsedx.exe and created a share called QMSEDX_CommandLine
Also, need to set the vServer parameter
The Parameters are
=’-task=”‘ & only(DocumentName) &'” -qms=http://$(vServer):4799/QMS/Service -verbosity=5’
This launches the reload and passes it the document name, I also find it useful to include the verbosity=5 so that you can see some progress in the reload window.
In action it looks something like this.
Get a copy here