Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Informações sobre o webservice dos correios
Message
De
12/03/2007 09:12:22
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Applications Internet
Versions des environnements
Visual FoxPro:
VFP 9 SP1
OS:
Windows XP SP2
Network:
Windows 2000 Server
Database:
MySQL
Divers
Thread ID:
01193891
Message ID:
01202661
Vues:
16
desde então venho testando o seu código mais o retorno é sempre "serviço não disponível".. o xml retornado é o abaixo:
<?xml version="1.0" encoding="ISO-8859-1"?><ResponsePacket revision="1" xmlns="urn:Microsoft.Search.Response">
<Response domain="{2698075D-E2F5-4254-87B2-7FC9E9AB0780}">
<QueryId>{8E823A74-053D-4434-A67B-D1CD050B3349}</QueryId>
<Range>
  <Results>
    <Content xmlns="urn:Microsoft.Search.Response.Content">
      <P>Falha ao acessar o sistema:</P>
      <HorizontalRule /><P>Mensagem:</P>
      <P><Char bold="true">O Sistema encontra-se temporariamente indisponível.</Char></P>
      <HorizontalRule />
      <P><Char bold="true">Fornecido por</Char></P>
      <Image source="http://consultacep.correios.com.br/office2003/imagens/logo.gif" />
      <P><Char bold="true">www.CORREIOS.com.br</Char></P>
      <P>Atendimento ao Cliente</P><P>0800 57 00100</P>
    </Content>
  </Results>
</Range>
<Status>SUCCESS</Status></Response></ResponsePacket>
a forma mais fácil de tratar um xml seria em convertê-lo pra cursor, que seria como no exemplo:
* lcretorno = xml recebido
* "cRetorno" = nome do cursor

XMLTOCURSOR(lcretorno, "cRetorno",4)
>
>Desculpe a demora, mas e que quase não venho aqui, se vc quiser contatar comigo mais fácil use o msn rpdbarros@hotmail.com
>
>Eu já consegui fazer o acesso via VFP e posto abaixo o código que usei. Agora, devido minha total inexperiência com XML e WebService, eu não estou sabendo tratar o que retorna. Veja se vc consegue alguma coisa por ai.
>
>Faça o seguinte:
>Crie um form e nele coloque:
>- um textbos para digitar o CEP
>- um editbox para ver o retorno
>- um botão e no click do botão coloque o código abaixo:
>
>LOCAL loQueryProcessor AS "XML Web Service"
>* LOCAL loQueryProcessor AS "MSSOAP.SoapClient30"
>* Do not remove or alter following line. It is used to support IntelliSense for your XML Web service.
>*__VFPWSDef__: loQueryProcessor = http://consultacep.correios.com.br/office2003/query.asmx?WSDL , QueryProcessor , QueryProcessorSoap
>LOCAL loException, lcErrorMsg, loWSHandler
>TRY
>	loWSHandler = NEWOBJECT("WSHandler",IIF(VERSION(2)=0,"",HOME()+"FFC\")+"_ws3client.vcx")
>	loQueryProcessor = loWSHandler.SetupClient("http://consultacep.correios.com.br/office2003/query.asmx?WSDL", "QueryProcessor", "QueryProcessorSoap")
>	* Call your XML Web service here.  ex: leResult = loQueryProcessor.SomeMethod()
>	LOCAL lcCep as String
>	lcCep = thisform.textbox1.Value
>	
>lcStringBusca = [<?xml version="1.0" encoding="utf-8"?>] + ;
>	[<QueryPacket xmlns="urn:Microsoft.Search.Query">] + ;
>	[<Query>] + ;
>	[<Context>] + ;
>	[<QueryText>&lcCep</QueryText>] + ;
>	[</Context>] + ;
>	[<OfficeContext xmlns="urn:Microsoft.Search.Query.Office.Context">] + ;
>	[<ApplicationContext>]+ ;
>	[<Name>Microsoft Office</Name>] + ;
>	[<Version>(11.0.6568)</Version>] + ;
>	[</ApplicationContext>] + ;
>	[</OfficeContext>] + ;
>	[</Query>] + ;
>	[</QueryPacket>]
>
>lcResultado = loQueryProcessor.Query(lcStringBusca)
>thisform.editbox1.Value = lcResultado
>
>CATCH TO loException
>	lcErrorMsg="Error: "+TRANSFORM(loException.Errorno)+" - "+loException.Message
>	DO CASE
>	CASE VARTYPE(loQueryProcessor)#"O"
>		* Handle SOAP error connecting to web service
>	CASE !EMPTY(loQueryProcessor.FaultCode)
>		* Handle SOAP error calling method
>		lcErrorMsg=lcErrorMsg+CHR(13)+loQueryProcessor.Detail
>	OTHERWISE
>		* Handle other error
>	ENDCASE
>	* Use for debugging purposes
>	MESSAGEBOX(lcErrorMsg)
>FINALLY
>ENDTRY
>
>
>Espero que possamos desvendar esse mistério.
>
>[]s,Roberto Barros - BH
>
>>>eu peguei um exemplo bem simples de utilização desse webservice via VS, e ele está funcionando, portanto acho que deve estar faltando alguma coisa na implementação via VFP.
>>>
>>Oi Roberto,
>>
>>Você teria como postar aqui um meio de vermos este exemplo?
>>
>>Grato
"Now to him who is able to do immeasurably more than all we ask or imagine, according to his power that is at work within us, Ephesians 3:20
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform