Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Salvar Arquivo em XML - Urgente!

Bom Dia Pessoal,

fiz uma macro para consumir um web service e está funcionando corretamente só que o XML que eu recebo fica guardado em uma variável,

agora eu preciso salvar esse xml que me retorna do web service, segue abaixo código que eu montei para consumir o web service.

já tentei fazer uma função para salvar o xml mas sem sucesso.

Se alguém poder me ajudar agradeço!

sub wsSOAP

  set val=ActiveDocument.Fields("USUARIO").GetPossibleValues

  sUsuario = val.Item(0).Text

  set valsenha=ActiveDocument.Fields("SENHA").GetPossibleValues

  sSenha = valsenha.Item(0).Text

  set val2=ActiveDocument.Fields("QUANTIDADE").GetPossibleValues

  sQuantidade = val2.Item(0).Text

   

  xmlToSend = ""

  xmlToSend = xmlToSend & "<?xml version='1.0' encoding='utf-8'?>"

  xmlToSend = xmlToSend & "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/' xmlns:ws='http://ws.integra.sascar.com.br/'>"

  xmlToSend = xmlToSend & "<soapenv:Header/>"

  xmlToSend = xmlToSend & "<soapenv:Body>"

  xmlToSend = xmlToSend & "<ws:obterPacotePosicoes>"

  xmlToSend = xmlToSend & "<usuario>" & sUsuario & "</usuario>"

  xmlToSend = xmlToSend & "<senha>" & sSenha & "</senha>"

  xmlToSend = xmlToSend & "<quantidade>" & sQuantidade & "</quantidade>"

  xmlToSend = xmlToSend & "</ws:obterPacotePosicoes>"

  xmlToSend = xmlToSend & "</soapenv:Body>"

  xmlToSend = xmlToSend & "</soapenv:Envelope>"

  set txt1 = ActiveDocument.Variables("vXMLSent")

  txt1.setContent xmlToSend, true

  'Create xmlhttp opject

  Set xmlhttp = CreateObject("Microsoft.XMLHTTP")

  xmlhttp.open "POST", "http://201.94.137.12/SasIntegra/SasIntegraWSService?wsdl", false

  xmlhttp.setRequestHeader "Content-Type", "text/xml"

  xmlhttp.setRequestHeader "SOAPAction", "http://201.94.137.12/SasIntegra/SasIntegraWSService?wsdl"

  xmlhttp.send xmlToSend

  result = xmlhttp.responseText

  result = replace(result, "&gt;", ">")

  result = replace(result, "&lt;", "<")

  set txt2 = ActiveDocument.Variables("vXMLReceived")

  txt2.setContent result, true

end sub

1 Solution

Accepted Solutions
aderlanrm
Partner - Specialist
Partner - Specialist

Boa tarde João,

Se puder postar um QVW de exemplo, facilita a ajuda.

Mas tente colocar um evento que executa essa macro antes da carga em um QVW, e no seu script, faça um load do arquivo salvo com os devidos parametros.

Para salva o arquivo em disco, você vai precisar criar um objeto que receberá a variável e usar a opção EXPORT, porém, talvez esse objeto que você criou que recebe o XML já tenha essa opção, não tenho certeza, dá uma olhada.

Para criar o objeto, é algo assim:

set obj = ActiveDocument.GetSheetObject("TB02")

obj.Export "C:\arquivo.csv",","

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)

View solution in original post

3 Replies
aderlanrm
Partner - Specialist
Partner - Specialist

Boa tarde João,

Se puder postar um QVW de exemplo, facilita a ajuda.

Mas tente colocar um evento que executa essa macro antes da carga em um QVW, e no seu script, faça um load do arquivo salvo com os devidos parametros.

Para salva o arquivo em disco, você vai precisar criar um objeto que receberá a variável e usar a opção EXPORT, porém, talvez esse objeto que você criou que recebe o XML já tenha essa opção, não tenho certeza, dá uma olhada.

Para criar o objeto, é algo assim:

set obj = ActiveDocument.GetSheetObject("TB02")

obj.Export "C:\arquivo.csv",","

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
Anonymous
Not applicable
Author

Olá João,

Da uma olhada se isso te ajuda.

abs

Not applicable
Author

Obrigado Pessoal!