Webservice PharmaLink
Enviado: 25 Mar 2012 23:56
ola a todos, alguem aqui ja conseguiu comunicacao com o pharmalink via webservice, usando xharbour.
abaixo esta o codigo que estou usando nao consigo resposta de forma alguma se alguem puder me ajudar agradeço muito.
tentei conforme esse post viewtopic.php?f=4&t=12175&p=69993&hilit=webservice#p69993 sem sucesso, se alguem tiver um exemplo de montagem e envio seja ele eme harbour/xharbour ja serve, pois preciso urgente.
abaixo esta o codigo que estou usando nao consigo resposta de forma alguma se alguem puder me ajudar agradeço muito.
tentei conforme esse post viewtopic.php?f=4&t=12175&p=69993&hilit=webservice#p69993 sem sucesso, se alguem tiver um exemplo de montagem e envio seja ele eme harbour/xharbour ja serve, pois preciso urgente.
Código: Selecionar todos
#include "fivewin.ch"
#include "common.ch"
#include "hbclass.ch"
#include "hbcompat.ch"
FUNCTION main()
LOCAL xmldom, url, xmldoc, Texto, lcErrorMsg
local cCnpj := "03541829000190"
local cTerminal := "001"
local cAutentica := "1296019554"
local cProjeto := "SAN001"
local cTimestamp := STRTRAN(DTOC(date()),"/","") + STRTRAN(time(),":","")
local cNcartao := "4846230717600087"
local cCpf := "0"
local cNsu := "01"
LOCAL cCanal :="''"
LOCAL nArq:=0 //-- numero da transacao
xmldom = CREATEOBJECT("MSXML2.DOMDocument")
xmldom:async = .T.
xmldom:validateOnParse = .T.
xmldom:resolveExternals := .T.
xmldom:preserveWhiteSpace = .T.
url := "http://www.conectapdv.com.br/concentrador/concentrador.asmx"
xmldoc = CREATEOBJECT("MSXML2.XMLHTTP")
xmldoc:open("POST", url, .F.)
xmldoc:SetRequestHeader( "Host" , "www.conectapdv.com.br" )
xmldoc:SetRequestHeader( "Content-Type" , 'text/xml; charset="windows-1252"' )
xmldoc:SetRequestHeader( "SOAPAction" , "http://tempuri.org/WS_Eleg_Portador" )
Texto := '<?xml version="1.0" encoding="windows-1252"?>' +;
'<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">' +;
' <soap12:Body>' +;
' <WS_Eleg_Portador xmlns="http://tempuri.org/">' +;
' <cIdentifica><identifica><cnpj>' + cCnpj + '</cnpj><terminal>' + cTerminal + '</terminal><autentica>' + cAutentica + '</autentica></identifica></cIdentifica>'+;
' <cProjeto>' + cProjeto + '</cProjeto>' +;
' <cTimestamp>' + cTimestamp + '</cTimestamp>' +;
' <cCartao>' + cNcartao + '</cCartao>' +;
' <nCPF>' + cCpf + '</nCPF>' +;
' <cCanal>' + cCanal + '</cCanal>' +;
' </WS_Eleg_Portador>' +;
' </soap12:Body>' +;
'</soap12:Envelope>'
xmldom:LoadXML(Texto)
IF xmldom:parseError:errorCode = 0
? "XML Carregado"
ELSE
lcErrorMsg = "Não foi possível carregar o documento pois ele não corresponde ao seu Schema"
lcErrorMsg = lcErrorMsg + " Linha: " + STR(xmldom:parseError:line)
lcErrorMsg = lcErrorMsg + " Caractere na linha: " + STR(xmldom:parseError:linepos)
lcErrorMsg = lcErrorMsg + " Causa do erro: " + xmldom:parseError:reason;
+"code: "+STR(xmldom:parseError:errorCode)
? lcErrorMsg
ENDIF
? "text "+xmldom:text
? "XML1 "+xmldom:xml
xmldoc:send(xmldom:xml)
?
do while xmldoc:readyState <> 4
? ALLTRIM(STR(xmldoc:readyState))
millisec(50)
enddo
? "Resposta "+xmldoc:responseText
? "XML "+ xmldoc:responseXML:xml
nArq := fcreate("c:\xml.xml")
fwrite(nArq, xmldoc:responseXML:xml )
fclose(nArq)
return( .t. )