Consumir Webservice ( SOAP )

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Consumir Webservice ( SOAP )

Mensagem 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.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Consumir Webservice ( SOAP )

Mensagem por JoséQuintas »

EUREKA !!!!
Foi no chute, como sempre...

SoapUI mostrando isto:
seguro.png
seguro.png (10.53 KiB) Exibido 2748 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.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Daniel
Usuário Nível 3
Usuário Nível 3
Mensagens: 373
Registrado em: 13 Ago 2003 22:42
Localização: Apucarana - PR

Consumir Webservice ( SOAP )

Mensagem 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>]
Daniel

Harbour + Minigui + dbfcdx
Marinas-Gui Pena que parou o suporte
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Consumir Webservice ( SOAP )

Mensagem 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.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Consumir Webservice ( SOAP )

Mensagem 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...
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Consumir Webservice ( SOAP )

Mensagem 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.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
MSDN
Usuário Nível 4
Usuário Nível 4
Mensagens: 741
Registrado em: 28 Nov 2003 15:55
Localização: CWB
Contato:

Consumir Webservice ( SOAP )

Mensagem por MSDN »

Um dia esse país aprende a fazer as coisas direito, muita burocracia e burrocracia !
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Consumir Webservice ( SOAP )

Mensagem 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.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
NiltonGM
Usuário Nível 3
Usuário Nível 3
Mensagens: 397
Registrado em: 05 Jun 2014 23:47
Localização: Caieiras/SP

Consumir Webservice ( SOAP )

Mensagem 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!
Nilton Medeiros
nilton@sistrom.com.br
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Consumir Webservice ( SOAP )

Mensagem 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
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Consumir Webservice ( SOAP )

Mensagem 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.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
NiltonGM
Usuário Nível 3
Usuário Nível 3
Mensagens: 397
Registrado em: 05 Jun 2014 23:47
Localização: Caieiras/SP

Consumir Webservice ( SOAP )

Mensagem 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
Nilton Medeiros
nilton@sistrom.com.br
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Consumir Webservice ( SOAP )

Mensagem 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
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Consumir Webservice ( SOAP )

Mensagem 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
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Responder