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

Qlikview 11 EDX

There was a discussion about how to get EDX remote task execution feature in Qlikview 11.

http://community.qlik.com/docs/DOC-2650

Author did include a lot of artifacts which explained the entire new procedure. Unfortunately some of the users were not familiar with Microsoft C# projects and they were having confusion how to make use of these tools. I tried to reply there , but the thread was closed. Intension of this post is to help users who are struggling to replace their old EDX task.

In the abovementioned post you can find an attachment called_CommandLine_v1.exe. Extract this exe to any location of your choice. You will get following files after the extraction

QMSEDX.exe.config & QMSEDX.exe.

Both of these files are essential for executing the task

Following is the syntax for using the exe file

    /// Commandline call:

    ///     qmsedx -task=name [-qms=qmsaddress] [-password=pwd] [-variablename=vname] [-variablevalues=vvalues] [-timeout=timeout] [-pollinterval=interval] [-verbosity=verbosity]          

    /// Arguments:

    ///     -task [REQUIRED]: The name or id of the task to execute.

    ///     -qms [OPTIONAL]: The address of the qms. Default is the local host.

    ///     -password (-pwd) [OPTIONAL]: The password required to execute the task, if set.

    ///     -variablename (-vn) [OPTIONAL]: The name of the variable to pass on to the task, if set.

    ///     -variablevalues (-vv) [OPTIONAL]: A semicolon separated list of values of the variable to pass on to the task.

    ///     -timeout (-to) [OPTIONAL]: How many seconds to wait for the task to finish. Default value is one minute.

    ///     -pollinterval (-pi) [OPTIONAL]: How often to check the status of the task. Default value is every five seconds.

    ///     -verbosity [OPTIONAL]: The level of output, 0-5. 0 will not produce any output and 5 is the most verbose.  

Example

I copied both these files to a server and created a .bat file with following code

C:\Users\Username\Desktop\qmsedx -task="DEV SAP BW ScriptBuilder" -password=123.

(In order to create a bat file, just write your argument in the notepad and save it with extn .bat)

Then i executed it using command line and  the task executed in my publisher. Read the whitepaper that is attached in the previous post for more information

Although the EDX task execution feature went away with 11, it is still easy to execute the task from an external system.

56 Replies
Not applicable
Author

Hi All,

I missed a piece of information so adding it as well

What if I have to execute the .bat file from a button that I create on a qvw file. I have copied the exe on my QlikView Server and I am writing a small Macro to execute the exe. I keep running into an error. I have tried to execute the EXE in command Line from the server and the task was executing perfectly fine. The following is the code I am using to execute exe on the server (which should trigger the task):

sub QmsEdxCmd

          dim strTaskName

          'dim strTaskPassword

          dim strServer

          dim strCommand

          'strTaskName= ActiveDocument.Evaluate("vTask")

          strTaskName= ActiveDocument.Variables("vTask").GetContent.String

          'MsgBox(strTaskName)

          'strTaskPassword= ActiveDocument.Variables("vPassword").GetContent.String

          strServer = "http://<servername>:4799/QMS/Service"

          strCommand = "C:\ProgramData\QlikTech\QMSEDX\qmsedx.exe -task="&strTaskName&" -qms="&strServer

          'MsgBox(strCommand)

          '-password="&strTaskPassword"

          

          Set WshShell = CreateObject("WScript.Shell")

          'WshShell.Run(strCommand),0,false

          WshShell.Run "cmd /K C:\ProgramData\QlikTech\QMSEDX\QMSEDX.exe -task=TASK_APIGuide"

          WshShell.Echo "Task Executed!!!"

end sub

Following is the error message that I get when I try to click the button via Access Point:

Macro Parse Failed. Functionality was lost

QmsEdxCmd

Error: Permission Denied

I have checked my permissions and made sure that I am in the servers Admin Group as well as in the QlikView EDX group.

If I change the last part of the code from

          Set WshShell = CreateObject("WScript.Shell")

          'WshShell.Run(strCommand),0,false

          WshShell.Run "cmd /K C:\ProgramData\QlikTech\QMSEDX\QMSEDX.exe -task=TASK_APIGuide"

          WshShell.Echo "Task Executed!!!"

TO

         

          Set WshShell = CreateObject("WScript.Shell")

          WshShell.Run(strCommand,0,false)

          WshShell.Echo "Task Executed!!!"

I get the following error message via Access Point:

Macro Parse Failed. Functionality was lost

QmsEdxCmd

Error:

(Nothing mentioned in the Error)

I am not sure what wrong am I doing but seems like I am missing a very critical piece of the puzzle. Any help would be appreciated on this.

Not applicable
Author

Hi nsagar30,

as far as I know, macros are executed on the client. So you have to make sure, that the client has direct access to the QMSEDX.exe !!! You could copy QMSEDX.exe to all Clients or you use a shared folder. I solved it like this

// Reload-Parameter

SET vEDXApplicationPath='\\SERVER\Documents\Applikation\Produktiv\QMSEDX.exe';
SET vEDXTaskname='Produktiv/Cockpit.qvw';
SET vEDXServer='http://SERVER:4799/QMS/Service';
SET vEDXVerbosity=5;
SET vEDXpi=2;
SET vEDXTimeout=60;
SET vEDXParameters=' -task="$(vEDXTaskname)" -qms=$(vEDXServer) -verbosity=$(vEDXVerbosity) -pi=$(vEDXpi) -timeout=$(vEDXTimeout)';

19-12-2012 17-38-28.png

Regards

Matthias

Not applicable
Author

I am out of the office until 12/24/2012.

I am out of the office I will respond to your matter on my return.

For urgent matters please contact the following

For Historical FX Settlement monthly Report - Please contact Rene Gornig

For RMF Weekly Report - Please contact George Fernandez

For escalation Jannette Lobemeier & Nick-RCM Price

Thanks

Note: This is an automated response to your message "[Deployment and

Management (Server/Publisher/AJAX/IE/Web Parts)] - Re: Qlikview 11 EDX"

sent on 19.12.2012 17:42:32.

This is the only notification you will receive while this person is away.--

Informationen (einschließlich Pflichtangaben) zu einzelnen, innerhalb der EU tätigen Gesellschaften und Zweigniederlassungen des Konzerns Deutsche Bank finden Sie unter http://www.deutsche-bank.de/de/content/pflichtangaben.htm. Diese E-Mail enthält vertrauliche und/ oder rechtlich geschützte Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese E-Mail. Das unerlaubte Kopieren sowie die unbefugte Weitergabe dieser E-Mail ist nicht gestattet.

Please refer to http://www.db.com/en/content/eu_disclosures.htm for information (including mandatory corporate particulars) on selected Deutsche Bank branches and group companies registered or incorporated in the European Union. This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and delete this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.rs) on selected Deutsche Bank branches and group companies registered or incorporated in the European Union. This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and delete this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.

Not applicable
Author

Hi,

I am trying to do the same thing on QV11; however I get an error message when I click the button in my qvw file, the following is my code, it'll be great if you can take a look and let me know what's wrong with it or probably share your code.

sub QmsEdxCmd

          dim strTaskName

          'dim strTaskPassword

          dim strServer

          dim strCommand

          strTaskName= ActiveDocument.Variables("vTask").GetContent.String

          'strTaskPassword= ActiveDocument.Variables("vPassword").GetContent.String

          strServer = "http://win-q5gscfalk54:4799/QMS/Service"

          strCommand = "\\win-q5gscfalk54\C:\ProgramData\QlikTech\QMSEDX\qmsedx.exe -task="&strTaskName

          '-qms="&strServer

          '-password="&strTaskPassword"

          

          Set WshShell = CreateObject("WScript.Shell")

          WshShell.Run(strCommand),0,false

end sub

adrian_gonzalez
Partner - Contributor II
Partner - Contributor II

Hello Matthias! I have to centralize QMSEDX.exe to be called by clients from the AccessPoint.

Your example works for me when everything is local. Now when I call QMSEDX.exe another server (PC) in the same domain throws error. The QMSEDX.exe is shared.

For this test I have turned off the firewall and antivirus.

Any idea what might be happening?

Any help is useful.

Thank you very much for your time!

error.png

Not applicable
Author

Hi All,

I was able to execute the .exe from my machine while the .exe is hosted on the server. Please make sure:

1) Share the folder where .exe is hosted.

2) For QlikView 11 please ensure port 4799 is open and you are able to do a telnet to it as that's where I saw issues at my end and once the port was opened I was successfully able to make a connection and execute the executable.

Thanks,

Nitin

adrian_gonzalez
Partner - Contributor II
Partner - Contributor II

solution:

Matthias option worked! My problem was that the test was making on a server outside the domain.

Now I get a new problem is that the edx recharge works with Plugin but Ajax says "Access Denied."

I'll be watching this issue but I think it should come for a security issue on port 80.

Thank you all! Especially Matthias!

Not applicable
Author

Hi Adrian,

I guess Ajax won't let you execute any external programs (QMSEDX.exe) as it does only support limited macro functionality. I'm not sure so please check the limitations of Ajax compared to Full Client / PlugIn.

Regards

Matthias

Bill_Britt
Former Employee
Former Employee

That is correct. You could write a VB script and give to the people that needs it.

Bill

Bill - Principal Technical Support Engineer at Qlik
To help users find verified answers, please don't forget to use the "Accept as Solution" button on any posts that helped you resolve your problem or question.
Not applicable
Author

Hi,

I got it working in Dev Box where App Server and Publisher server is in the same Box, I changed the config file correctly. I am using http://community.qlik.com/docs/DOC-2650 code for the setup.

In Stage we have diff servers for App and Publisher. I am asked to set EDX in Publisher server. But I am getting the Error "There was no endpoint listening at http://localhost:4799/QMS/Service that could accept the message.". I am able to ping the App Server from Publisher server properly. And I am using the full App Server path with the correct Port Number in the config file. BTW, the port # I have given in the config file is a diif one than 4799 according to the Port # in our Server.

What could be the issue?

Bestin