none
consumo de web service RRS feed

  • Pergunta

  • local cCnpj      := "28763118000190"
        local cTerminal  := "003"
        local cAutentica := "51131212"
        local cProjeto   := "SAN001"
        local cTimestamp := STRTRAN(DTOC(date()),"/","") + STRTRAN(time(),":","")
        local cNcartao   := "4116680730400158"
        local cCpf       := "0"
        local cNsu       := "60"                                     //-- numero da transacao

        //-- verifica se ha conexão com a internet

        IF(!IsInternet())
          MsgInfo("Necessário conexão com internet."+CRLF+"Operação cancelada","Informação")
          RETURN(.f.)
        ENDIF

        //-- Abertura das funções para WebService do xharbour - objeto HTTP

        try
          http := CreateObject( "MSXML2.XMLHTTP" )
        catch
          try
            http := CreateObject( "MSXML2.XMLHTTP" )
          catch
            Msginfo("Erro na criação do objeto MSXML2.XMLHTTP : " + Ole2TxtError())
          end
        end

        //-- cria objeto xml

        try
          doc := CreateObject( "MSXML2.DOMDocument" )
        catch
          try
            doc := CreateObject( "MSXML2.DOMDocument" )
          catch
            Msginfo("Erro na criacao do objeto MSXML2.DOMDocument : " + Ole2TxtError())
            return NIL
          end
        end

        //-- XML request

        cXMlBody := '<?xml version="1.0" encoding="utf-8"?>'         +;
                   '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://tempuri.org/">'+;
                   ' <SOAP-ENV: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>'                           +;
                   ' </SOAP-ENV:Body>'                              +;
                   '</SOAP-ENV:Envelope>'

        //-- endereço WebService

        http:Open( "POST" , "http://www.conectapdv.com.br/concentrador/concentrador.asmx?wsdl" , .f. )
        http:SetRequestHeader( "Host"         , "www.conectapdv.com.br" )
        http:SetRequestHeader( "Content-Type" , "text/xml; charset=utf-8" )
        http:SetRequestHeader( "SOAPAction"   , "http://tempuri.org/WS_Anul_Transac" )

        //-- Funções do WebService

        doc:LoadXML( cXmlBody )       //-- Carrega o request
        http:Send( doc:xml )          //-- Envia o request
        response = http:responseText  //-- Recebe o response

    estou fazendo desta forma , e retorna branco , desenvolvo em xharbour , nao tenho experiencia com web service , alguem poderia me ajudar. onde esta o erro.

    Obrigado

     

    domingo, 17 de julho de 2011 16:09

Respostas