Página 4 de 4

Consumir Webservice ( SOAP )

Enviado: 11 Abr 2019 12:43
por JoséQuintas
Ainda brigando com isso.
Só sobrou diferença na conexão, porque no SOAPUI funciona exatamente com o mesmo arquivo.
O problema só pode ser nesta parte:

Código: Selecionar todos

   oServer := win_OleCreateObject( "MSXML2.ServerXMLHTTP" )
   oServer:Open( "POST", cWebService, .F. )
   oServer:SetRequestHeader( "SOAPAction", cSoapAction )
   oServer:SetRequestHeader( "Content-Type", "XML/TEXT; charset=utf-8" )
   oServer:send( cXmlSoap )
   oServer:WaitForResponse( 1000 )
   cRetorno := oServer:responseText
nota:
no manual diz pra usar XML/TEXT
Por isso acabei testando com esse tipo não comum.

Consumir Webservice ( SOAP )

Enviado: 11 Abr 2019 13:09
por JoséQuintas
EUREKA !!!!
Foi no chute, como sempre...

SoapUI mostrando isto:
seguro.png
seguro.png (10.53 KiB) Exibido 2750 vezes
entonces....

Código: Selecionar todos

FUNCTION MicrosoftXmlSoapPost( cXmlSoap, cSoapAction, cWebService )

   LOCAL oServer, nCont, cRetorno, cXmlRetorno := ""

   oServer := win_OleCreateObject( "MSXML2.ServerXMLHTTP" )
   oServer:Open( "POST", cWebService, .F. )
   oServer:SetRequestHeader( "SOAPAction", cSoapAction )
   oServer:SetRequestHeader( "Content-Type", "text/xml;charset=UTF-8" )
   oServer:SetRequestHeader( "Content-Length", Len( cXmlSoap ) )
   oServer:SetRequestHeader( "Host", "homologaws.averba.com.br" )
   oServer:SetRequestHeader( "Connection", "Keep-Alive" )
   oServer:SetRequestHeader( "User-Agent", "Apache-HttpClient/4.1.1 (java 1.5)" )
   oServer:send( cXmlSoap )
   oServer:WaitForResponse( 1000 )
   cRetorno := oServer:responseText

Agora o erro mudou, é o mesmo do SOAPUI
XML invalido para utilizacao neste webserver
Nota: não sei quais daí de cima são opcionais, testar depois.

Consumir Webservice ( SOAP )

Enviado: 11 Abr 2019 14:03
por Daniel
Agora o erro mudou, é o mesmo do SOAPUI

XML invalido para utilizacao neste webserver
O erro pode ser hb_eol() no final das linhas.
fazer um texto em uma linha só

Código: Selecionar todos

   cXmlEnvio   := [<usuario>TESTES</usuario>] 
   cXmlEnvio   += [<senha>BASE</senha>]
   cXmlEnvio   += [<codatm>11340073</codatm>] 
   cXmlEnvio   += [<xmlCTe>] + cXmlDoc + [</xmlCTe>]

Consumir Webservice ( SOAP )

Enviado: 11 Abr 2019 14:40
por JoséQuintas
Daniel escreveu:O erro pode ser hb_eol() no final das linhas.fazer um texto em uma linha só
Já tinha feito isso.


Testei mais.
Na comunicação, de diferente do que eu já usava, só precisou isto:

Código: Selecionar todos

   oServer:SetRequestHeader( "Host", "homologaws.averba.com.br" )
agora dependo da seguradora....
o retorno atual é: CNPJ emissor nao autorizado para averbar.

Ainda organizando o fonte, depois posto o final.

Mas o ponto importante é esse acima, de indicar o HOST.

O XML.... a própria seguradora fornece um exemplo pronto, então é o menor dos problemas.

Consumir Webservice ( SOAP )

Enviado: 11 Abr 2019 17:07
por JoséQuintas
é uma seguradora do caralh.... ganha dinheiro pra caralh.... e um suporte do caralh....

resposta da seguradora
O CNPJ do documento precisa ser o mesmo da caixa da homologação.
Agora pergunto:

que porr. é essa de caixa da homologação????


ok. já respondi o email perguntando.... mas não com essas palavras...

Consumir Webservice ( SOAP )

Enviado: 11 Abr 2019 17:11
por JoséQuintas
e a saga continua....
Para o Sr. ter acesso ao ambiente de teste de homologação, é necessário criar um codigo atm para isso.
Então o CNPJ do codigo atm deve ser o mesmo do documento averbado.
Se pra enviar a porr. do documento...
Se pra acessar a porr. do webservice...
eu preciso de um código ATM pro CNPJ em uso...

Se eu tenho o código ATM.... que porr... de código ATM vou precisar?

E o cara ganha pra isso.

Consumir Webservice ( SOAP )

Enviado: 11 Abr 2019 21:27
por MSDN
Um dia esse país aprende a fazer as coisas direito, muita burocracia e burrocracia !

Consumir Webservice ( SOAP )

Enviado: 12 Abr 2019 12:44
por JoséQuintas
Eles não cadastraram a empresa, por isso não funcionava.

Tudo certo.
Agora fazer os outros eventos: cancelamento de CTE, envio de MDFE, e todos os eventos do MDFE.

Consumir Webservice ( SOAP )

Enviado: 28 Mai 2019 13:09
por NiltonGM
Oi José e companhia do CTE, sempre usei terceiros para autorizar e gerar o PDF da DACTE/MDFE, mas gostaria de fazer isso pelo Harbour e economizar a mensalidade que está cada vez mais alta. Alguém poderia me orientar por onde começo para conseguir transmitir CTe & MDFe pelo Harbour?
Preciso executar as rotinas:
- Gerar o XML do CTE
- Assinar o XML com o certificado Digital para transmitir
- Transmitir XML e pegar retorno (oi Zeh! Parece que vc estava desenvolvendo uma classe para isso, a SefazClass, correto?)
- Gerar DACTE & DAMDFE em PDF
- Cancelar CTE/MDFE

Conto com a orientação de vocês.

Abraços!

Consumir Webservice ( SOAP )

Enviado: 28 Mai 2019 14:10
por JoséQuintas
NiltonGM escreveu:Oi José e companhia do CTE, sempre usei terceiros para autorizar e gerar o PDF da DACTE/MDFE, mas gostaria de fazer isso pelo Harbour e economizar a mensalidade que está cada vez mais alta.
Alguém poderia me orientar por onde começo para conseguir transmitir CTe & MDFe pelo Harbour?
De tudo isso, a Sefazclass só não gera o XML.
Você precisa gerar o XML de emissão dos documentos.
(oi Zeh! Parece que vc estava desenvolvendo uma classe para isso, a SefazClass, correto?)
A classe SEMPRE fez isso, desde o começo.
Eu uso pra São Paulo todos.
O que aconteceu depois com a classe foi entrar PDF, NFCE, e ajustes pras UFs diferentes de São Paulo.

Então vamos lá:
- gerar o XML, talvez até possa usar o XML nos terceiros, assim testa com o que já está usando
- os demais, só ir substituindo

o que precisa:
- capicom instalado
- msxml5 instalado
- sefazclass
- certificado válido

Consumir Webservice ( SOAP )

Enviado: 28 Mai 2019 14:15
por JoséQuintas
Faltou dizer:

Quer testar?
Baixe a Sefazclass e compile o test.prg
Tem praticamente tudo nele.
Depois disso, só fazer igual no aplicativo.

Consumir Webservice ( SOAP )

Enviado: 28 Mai 2019 16:29
por NiltonGM
Valeu Zeh, vou baixar a classe e testar...
Da lista q vc passou

"o que precisa:
- capicom instalado
- msxml5 instalado
- sefazclass
- certificado válido"

Só tenho o Certificado digital kkkk
A SefazClass deve estar disponível no Forum em downloads... vou pesquisar
Os demais o Google informa ou vcs tem os links deles para baixar?

Abraços

Consumir Webservice ( SOAP )

Enviado: 28 Mai 2019 21:06
por JoséQuintas
NiltonGM escreveu:A SefazClass deve estar disponível no Forum em downloads... vou pesquisar
olhe que bacana... tá mais fácil que muitas outras coisas.
no google, pesquisa por sefazclass, é o primeiro da lista
google.png

Consumir Webservice ( SOAP )

Enviado: 28 Mai 2019 21:08
por JoséQuintas
E ao abrir o link, outra coisa bacana, uma pasta dlls
Então... é só baixar.
sefazclass.png
E antes que pergunte como fazer download....
É clicar em download kkkkk