Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Error while reloading from accesspoint using Macro

Hi Guru's,

iam using following Macro to Reload By EDX Trigger

iam getting Attached Error. please find the attachment

please help me to solve the issue.Any help would be greatly appreciated.

Macro:

Sub CargoEDX()

url = "http://SERVIDOR _QLIKVIEW:4720/qtxs.asmx" 'QV Server Address and URL EDX's service

userID = "LOGIN" 'User login in target system. It must belongs to "QlikView Administrators"

pass = "PASSWORD" 'User Password

doc = "Aplicaciones/Monitoreo Servidor/WebServerPerformance.qvw" 'Task name that it wants execute

MsgBox "The reload starts. Please press "Accept" and wait for a minute"

MsgBox ReloadEDX(url, doc, userID, pass) 'Call to the EDX execution

End Sub

Function ReloadEDX(dsURL, document, userID, pass)

  ' Here get a ticket to call the EDX. It's because a security scheme based in double request

  Dim requestKey, xmlhttp, requestData, httpResult

  Set xmlhttp = CreateObject("msxml2.xmlhttp.3.0")

  xmlhttp.Open "post", dsURL, False, userID, pass

  requestData = "<Global method=""GetTimeLimitedRequestKey"" />" '& vbCrLf

  xmlhttp.send requestData

  Set oDOM = CreateObject("MSXML2.DOMDocument.3.0")

  oDOM.LoadXML xmlhttp.responseText

  ' Takes ticket hash from the response

  requestKey = oDOM.SelectSingleNode("//GetTimeLimitedRequestKeyResult").Text

  ' Call task (EDX) for execute

  rtaExec = CallTask(requestKey, document, dsURL, userID, pass)

  If rtaExec = Null Then

  ReloadEDX = httpResult

  Else

  If rtaExec = "Success" Then

  ReloadEDX = "The reload has finished."

  Else

  ReloadEDX = httpResult

  End If

  End If

End Function

'EDX call thru a HTTP POST

Function CallTask(key,task,url, usr, pasw)

  Set xmlhttp2 = CreateObject("msxml2.xmlhttp.3.0")

  requestData = "<Global method=""RequestEDX"" key=""" & key& """><i_TaskIDOrTaskName>" & task& "</i_TaskIDOrTaskName><i_Password /><i_VariableName /><i_VariableValueList /></Global>" & vbCrLf

  xmlhttp2.Open "post", url, False, usr, pasw

  xmlhttp2.send requestData ' Send XML with service qtxs.asmx required data

  Set oDOM2 = CreateObject("MSXML2.DOMDocument.3.0")

  oDOM2.LoadXML xmlhttp2.responseText

  set CallTask2 = oDOM2.SelectSingleNode("//TaskStartResult")

  CallTask = "Success"

End Function

8 Replies
simospa
Partner - Specialist
Partner - Specialist

Hi Are,

tyr to use the attached EDX script, it works and it gives you the possibility to monitor the reloading in your qvw.

Pay attention to the const declarations.

The macro to launch is fnStartEDXandMonitorAllClient

Let me know.

S.

Anonymous
Not applicable
Author

hi,

1.Task name:

path with qvw name or only taskname?

2.Const sSoapNameSpace="http://ws.qliktech.com/QMS/11/IQMS/"

whee i need to find the Path for Above Const in Server

3.error while running please find the attached screen shot

simospa
Partner - Specialist
Partner - Specialist

Are,

did it solve your issue?

S.

Anonymous
Not applicable
Author

Hi Simone,

thanks for your time.

can you look bellow Cont:

Const sSoapNameSpace="http://ws.qliktech.com/QMS/11/IQMS/

is this QMC Url or from where i need to get it

Task name: only task name or full path with qvw name

simospa
Partner - Specialist
Partner - Specialist

Hi,

Const sSoapNameSpace: don't touch


Task name: it migth be only task name.


S.

Anonymous
Not applicable
Author

please find the Attached error while running button

Thanks in advance

simospa
Partner - Specialist
Partner - Specialist

Did you use the entire code I gave you or did you change (cut) it?

S.

Anonymous
Not applicable
Author

i used entire code which you given in Text File