1 Reply Latest reply: Dec 28, 2014 12:03 PM by Joe Warbington RSS

    SOAP Web Service through AccessPoint

      I am currently trying to integrate a web service call into a Qlik application.  I have successfully done this with a Macro that is triggered by a button.  The xml response from the web service is saved to a temporary file, a partial reload is done, and the temporary file is deleted.  I found a few helpful posts on the Qlik community to set it up.  Here is the relevant portion of the macro code:

       

      Set xmlhttp = CreateObject("Microsoft.XMLHTTP")
      xmlhttp.open "POST",<endpoint>,false
      xmlhttp.send xmlToSend
      Path = ActiveDocument.Evaluate("left(DocumentPath(), index(DocumentPath(), '\', -1))")
      FileName = Path & "response.xml"
      set fso = CreateObject("Scripting.FileSystemObject")
      set s = fso.CreateTextFile(FileName, True)
      s.writeline(result)
      s.Close()
      ActiveDocument.DoReload 2, true
      fso.DeleteFile(FileName)


      My question is how would I get this to work outside of the Desktop application so that any user accessing the .qvw through AccessPoint is also able to use web service data?  I have not found a way to trigger any sort of reload from within the .qvw on AccessPoioint (DoReload or any of the other Reload functions for ActiveDocument and the Reload action for a button).  I am able to call the web service from AccessPoint and can set the return value into a variable but I am not able to get the xml response to be reloaded into the appropriate tables for my visualizations.  Most of the data can be a day old but we are trying to use a web service to provide a real-time option for the user.  I think there may be a way to do this by manually parsing the xml within the macro and using the DynamicUpdateCommand but I am looking for something that feels a little less "hacky".  Any tips or examples would be greatly appreciated.