Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
rikrdodata
Partner - Contributor III
Partner - Contributor III

EDX on QV11

Recently I found how to run an EDX on QV11 via ASP or via .EXE

Is it possible execute an EDX through macro in QV11 with button? (our customers are accustomed to use a button to run an EDX )

I tried to use "launch" in action of button, this, to launch a .bat with qmsedx -qms=path_server -task=task_name -password=task_pwd. in local this works fine, in remote client this doesn't work

how can I launch an EDX from Button in Qlikview?

Thank you in advance

Ricardo

1 Solution

Accepted Solutions
Anonymous
Not applicable

I cannot make much sense of this info.  I better tell what I had to do to make it work:

1. Created task in QMC.  Obviously you've done it.

2. Created a bat file with the command line for EDX task.  I assume you've done it as well.  You're saying that "in local this works fine, in remote client this doesn't work".

3. Created a user group "QlikView EDX" on the QVS machine, and added QV users (who are allowed to use EDX) into this group.  (You can use "QlikView Administrators" group instead - but in this case you give to much rights to the users.)  I assume this is the step you missed.

If you've done all the above, the users should be able to run EDX task by running the bat file on network location.  After you make sure it works, hte last step is:

4. Create a button in QV document with action "Launch" and application  <full UNC path>/<your bat file>

Works for me, hope it will work for you too.

Regards,

Michael

View solution in original post

7 Replies
Anonymous
Not applicable

Ricardo,

No macro needed, just abutton with action.  I did the same and it worked.  The .bat file must be on a network location available for all users.

Regards,

Michael

rikrdodata
Partner - Contributor III
Partner - Contributor III
Author

I Put the .bat accessible for remote user; in IE Plugin says me something like "fail to run the external program" if I try to double Click with remote user in .bat, this error appears in CMD

Failed to create a client to the specified Uri. La solicitud HTTP no está autorizada con el esquema de autenticación de cliente 'Ntlm'. El encabezado de autenticación recibido del servidor era 'NTLM'.

Excepción no controlada: System.ServiceModel.Security.MessageSecurityException: La solicitud HTTP no está autorizada con el esquema de autenticación de cliente 'Ntlm'. El encabezado de autenticación recibido del servidor era 'NTLM'. ---> System.Net.WebException: Error en el servidor remoto: (401) No autorizado.   en System.Net.HttpWebRequest.GetResponse()   en System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)

   --- Fin del seguimiento de la pila de la excepción interna ---

Server stack trace:

   en System.ServiceModel.Channels.HttpChannelUtilities.ValidateAuthentication(HttpWebRequest request, HttpWebResponse response, WebException responseException, HttpChannelFactory factory)

   en System.ServiceModel.Channels.HttpChannelUtilities.ValidateRequestReplyResponse(HttpWebRequest request, HttpWebResponse response, HttpChannelFactory factory, WebException responseException, ChannelBinding channelBinding)

   en System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)

   en System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)

   en System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)

   en System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)

   en System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)

   en System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]:

   en System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)

   en System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)

   en QMSEDX.QMSAPI.IQMS.TriggerEDXTask(Guid qdsID, String taskNameOrID, String password, String variableName, List`1 variableValues)

   en QMSEDX.QMSAPI.QMSClient.TriggerEDXTask(Guid qdsID, String taskNameOrID, String password, String variableName, List`1 variableValues)

   en QMSEDX.Program.TriggerTask(IQMS qms, String task, String password, String variableName, List`1 variableValues)

   en QMSEDX.Program.TriggerAndMonitorTask()

   en QMSEDX.Program.Main(String[] args)

Anonymous
Not applicable

I cannot make much sense of this info.  I better tell what I had to do to make it work:

1. Created task in QMC.  Obviously you've done it.

2. Created a bat file with the command line for EDX task.  I assume you've done it as well.  You're saying that "in local this works fine, in remote client this doesn't work".

3. Created a user group "QlikView EDX" on the QVS machine, and added QV users (who are allowed to use EDX) into this group.  (You can use "QlikView Administrators" group instead - but in this case you give to much rights to the users.)  I assume this is the step you missed.

If you've done all the above, the users should be able to run EDX task by running the bat file on network location.  After you make sure it works, hte last step is:

4. Create a button in QV document with action "Launch" and application  <full UNC path>/<your bat file>

Works for me, hope it will work for you too.

Regards,

Michael

rikrdodata
Partner - Contributor III
Partner - Contributor III
Author

Thank you, it works.

the Step that I missed was -Created a user group "QlikView EDX"

Ricardo.

Anonymous
Not applicable

I did step #1 through #4.

the bat file, QMSEDX.exe, QMSEDX.exe.config files are all at the same QV server box.

I can run 'click button' from Qlikview desktop version to trigger a "reload" task without any problem.

However, when I ran same qvw from Qlikview Accesspoint, system treated .bat file path as a http:// URL and failed to continue.(<full UNC path>/<bat file> is used )

Is there any people know what I did wrong and what is the fix?

Thanks

John Shui

Anonymous
Not applicable

I used "Run Macro" (see the macro in this discussion)  instead of  a bat file in "Launch Application".

It works now from both desktop client and Accesspoint web.

The only thing not quite satisfy is cannot see the task status after the button is clicked. If more than one click on the button will get a failed error due to another session of same task is currently running.

Any suggestion?

Thanks

John Shui

Not applicable

error.pngmy line give me the follow error can you please help me.. see atach.