AJUDA FARMACIA POPULAR CONEXAO COM SOAP

R3DSKULL 04/09/2009 17:48:58
#322003
Estou tendo problemas para realizar a conexao do web service com o farmacia popular
alguem já realizou conexao do webservice com conexao segura e utilizando o soap?

webservice: https://200.214.130.41:9443/farmaciahomologa/services/ServicoSolicitacaoWS?wsdl
estou tentando desenvolver em vb 6

Obrigado

JWCELYO 04/09/2009 18:43:55
#322014
eu posso criar uma dll que fais tudo isso para vc porem não serar de graça
[S24]
TECLA 04/09/2009 19:00:35
#322016
Antes de mais nada, baixe o SOAP ToolKit 3.0 para conseguir consumir o WEB SERVICE.

Baixar SOAP ToolKit 3.0

Rotina de exemplo
Private Sub Command1_Click()
Dim clnt As New SoapClient30
Dim strsvc As String
clnt.MSSoapInit [Ô]http://localhost/CF_WebSvc/justFunction.cfc?wsdl[Ô]
strsvc = clnt.WelcomeMsg(Text1.Text)
MsgBox (strsvc)
End Sub


Este é um bom começo.
TECLA 04/09/2009 19:11:37
#322020
Se ainda assim tiver dúvidas, baixe um exemplo comentado daqui do site.

CONSUMIR WEB SERVICE COM VB6
JESUEL.OLIVEIRA 04/09/2009 22:20:58
#322044
Amigo, sei que você quer desenvolver, mas a vezes reinventar a roda fica mais caro, veja o site abaixo.

BITSHOP Informática
R3DSKULL 05/09/2009 11:52:02
#322088
Pois é galera, se for para comprar ae eu desenvolvo em .Net....

Minha situação é a seguinte.... o webservice : https://200.214.130.41:9443/farmaciahomologa/services/ServicoSolicitacaoWS?wsdl
Nele contem um certificado que é para outro site(instalando o certificado ele ainda me apresenta o erro que o certificado nao foi instalado)

Bom em .Net eu resolvi este problema com o seguinte codigo:

Dim ws As New WebReference.ServicoSolicitacaoWSService
Dim solicitacao As New WebReference.SolicitacaoDTO
Dim senha As New WebReference.UsuarioFarmaciaDTO
Dim autorizacao As New WebReference.AutorizacaoDTO
Dim MedicamentoDTO As New WebReference.MedicamentoDTO

senha.senha = [Ô]XXXXXXXX[Ô]
senha.usuario = [Ô]77394436[Ô]

MedicamentoDTO.coCodigoBarra = [Ô]7896523206646[Ô]
MedicamentoDTO.qtPrescrita = 1
MedicamentoDTO.qtSolicitada = 1
MedicamentoDTO.vlPrecoVenda = 40


ReDim solicitacao.arrMedicamentoDTO(0)
solicitacao.arrMedicamentoDTO(0) = MedicamentoDTO
solicitacao.coSolicitacaoFarmacia = [Ô]12345678[Ô]
solicitacao.dtEmissaoReceita = [Ô]01/09/2009[Ô]
solicitacao.nuCnpj = [Ô]65.462.905/0001-29[Ô]
solicitacao.nuCpf = [Ô]001.063.791-51[Ô]
solicitacao.nuCrm = [Ô]032042093[Ô]
solicitacao.sgUfCrm = [Ô]RS[Ô]


[ô]Aqui eu chamo esta função para não dar problema com a ssl do web service

System.Net.ServicePointManager.CertificatePolicy = New MyPolicy() [ô]Migue dos grande

******************* Dentro da classe *********************************

Imports System.Net
Imports System.Security.Cryptography.X509Certificates
Public Class MyPolicy
Implements ICertificatePolicy

Public Function CheckValidationResult(ByVal srvPoint As ServicePoint, _
ByVal cert As X509Certificate, ByVal request As WebRequest, _
ByVal certificateProblem As Integer) _
As Boolean Implements ICertificatePolicy.CheckValidationResult
Return True
End Function
End Class

**************************************************************************

autorizacao = ws.executarSolicitacao(solicitacao, senha)

TextBox1.Text = autorizacao.inAutorizacaoSolicitacao
TextBox2.Text = autorizacao.descMensagemErro
TextBox3.Text = autorizacao.coSolicitacaoFarmacia
TextBox4.Text = autorizacao.nuAutorizacao
TextBox5.Text = autorizacao.noPessoa






agora em vb6 está assim:


Dim ws As New MSSOAPLib30.SoapClient30

Abrindo a conexão assim me dá logo erro com a ssl
ws.MSSoapInit([Ô]https://200.214.130.41:9443/farmaciahomologa/services/ServicoSolicitacaoWS?wsdl[Ô])

Abrindo a conexão assim ela conecta, porem quando eu tento pegar um retorno de uma função me da erro na ssl tambem
ws.MSSoapInit2([Ô]c:\bruno.wsdl[Ô], [Ô][Ô], [Ô]ServicoSolicitacaoWSService[Ô], [Ô]ServicoSolicitacaoWS[Ô], [Ô]http://service.datasus.org/[Ô])
ws.ConnectorProperty([Ô]EndPointURL[Ô]) = [Ô]https://200.214.130.41:9443/farmaciahomologa/services/ServicoSolicitacaoWS?wsdl[Ô]


Dim senha As String
Dim solicitacao As String
Dim Retorno As String


[ô]senha = [Ô]<UsuarioFarmaciaDTO>[Ô]
[ô]senha = senha & [Ô]<UsuarioDTO>[Ô]
[ô]senha = senha & [Ô]<senha>12345678</senha>[Ô]
[ô]senha = senha & [Ô]<usuario>77394436</usuario>[Ô]
[ô]senha = senha & [Ô]</UsuarioDTO>[Ô]
[ô]senha = senha & [Ô]</UsuarioFarmaciaDTO>[Ô]

[ô]solicitacao = [Ô]<SolicitacaoDTO>[Ô]
[ô]solicitacao = solicitacao & [Ô]<arrMedicamentoDTO>[Ô]
[ô]solicitacao = solicitacao & [Ô]<MedicamentoDTO>[Ô]
[ô]solicitacao = solicitacao & [Ô]<coCodigoBarra>7896523206646</coCodigoBarra>[Ô]
[ô]solicitacao = solicitacao & [Ô]<qtPrescrita>1</qtPrescrita>[Ô]
[ô]solicitacao = solicitacao & [Ô]<qtSolicitada>1</qtSolicitada>[Ô]
[ô]solicitacao = solicitacao & [Ô]<vlPrecoVenda>40</vlPrecoVenda>[Ô]
[ô]solicitacao = solicitacao & [Ô]</MedicamentoDTO>[Ô]
[ô]solicitacao = solicitacao & [Ô]</arrMedicamentoDTO>[Ô]
[ô]solicitacao = solicitacao & [Ô]<coSolicitacaoFarmacia>12345678</coSolicitacaoFarmacia>[Ô]
[ô]solicitacao = solicitacao & [Ô]<dtEmissaoReceita>01/09/2009</dtEmissaoReceita>[Ô]
[ô]solicitacao = solicitacao & [Ô]<nuCnpj>65.462.905/0001-29</nuCnpj>[Ô]
[ô]solicitacao = solicitacao & [Ô]<nuCpf>001.063.791-51</nuCpf>[Ô]
[ô]solicitacao = solicitacao & [Ô]<nuCrm>8434783487</nuCrm>[Ô]
[ô]solicitacao = solicitacao & [Ô]<sgUfCrm>RS</sgUfCrm>[Ô]
[ô]solicitacao = solicitacao & [Ô]</SolicitacaoDTO>[Ô]



Retorno = ws.executarSolicitacao(solicitacao, senha)





eu precisaria transformar a função abaio para o vb6 alguem pode me ajudar?


System.Net.ServicePointManager.CertificatePolicy = New MyPolicy() [ô]Migue dos grande

******************* Dentro da classe *********************************

Imports System.Net
Imports System.Security.Cryptography.X509Certificates
Public Class MyPolicy
Implements ICertificatePolicy

Public Function CheckValidationResult(ByVal srvPoint As ServicePoint, _
ByVal cert As X509Certificate, ByVal request As WebRequest, _
ByVal certificateProblem As Integer) _
As Boolean Implements ICertificatePolicy.CheckValidationResult
Return True
End Function
End Class
NATH4N 05/09/2009 18:54:54
#322119
haha!
Citação:

JWCELYO escreveu:
eu posso criar uma dll que fais tudo isso para vc porem não serar de graça
[S24]

[S23]
JWCELYO 06/09/2009 15:27:50
#322158
?
[S26]
HUBMANIA 23/03/2015 17:24:06
#445436
Tem alguma forma de testar minha aplicação sem uma farmácia habilitada?
Tópico encerrado , respostas não são mais permitidas