Desenvolvimento - Visual Fox Pro

Calculando valor do SEDEX on-line com Microsoft Visual FoxPro

Nesta coluna irei apresentar uma forma bem interessante de calcular on-line o valor do SEDEX dos correios, ou seja, utilizando os dados fornecidos pelo próprio Correio.

por Rodrigo Duarte Bruscain



Olá pessoal, nesta coluna irei apresentar uma forma bem interessante de calcular on-line o valor do SEDEX dos correios, ou seja, utilizando os dados fornecidos pelo próprio Correio. Esse serviço é gratuito, mas não é divulgado e o melhor de tudo é que funciona muito bem.

Para este recurso obviamente precisaremos de acesso à internet, não iremos usar qualquer componente de terceiros, não iremos registrar nenhum XML WebServices, não iremos se conectar a nenhum banco de dados remoto e não vamos usar tabela local.

Para demonstrar o calculo do SEDEX desenvolvi o form abaixo:


Figura 1 - Tela para inserir os dados para calcular o valor do SEDEX

Na figura 1 digitaremos o CEP de origem, CEP de Destino, o Peso em Gramas e clicaremos em "Calcular SEDEX". Feito isso é só aguardar alguns segundos e os campos serão preenchidos conforme figura abaixo:


Figura2 - Calculo efetuado

Caso as informações digitadas forem inválidas ou ocorrer qualquer falha, será retornado um erro e poderemos saber qual é conforme figura abaixo:


Figura3 - Falha ao calcular

Funcionamento

O Correio tem uma página a qual passamos como parâmetro o CEP de Origem, CEP de Destino, o Peso em Gramas e forma em que os resultados serão apresentados. Podemos fazer isso no próprio Navegador Web. O site irá apresentar o resultado em formato XML no próprio navegador, veja figura abaixo:


Figura4 - XML da página de resultados dos Correios

Após o resultado, capturamos o conteúdo da pagina do navegador e salvamos em um arquivo XML fisicamente. Aí ficou fácil, transformamos o arquivo XML em Cursor e tratamos à apresentação dos dados. Logicamente, no nosso form de exemplo não vamos visualizar a pagina do navegador conforme figura 4, pois a mesma ficará invisível.

Para entendermos melhor, vamos analisar o código que roda no evento Click do botão "Calcular":
Veja abaixo:


Conclusão

Muito bem! É isso aí raposada!

Nesta coluna minha intenção foi apresentar uma forma bem interessante de como podemos obter dados via web. Achei bem funcional esse tipo de serviço dos correios e espero que surjam outros.

Clique aqui para fazer o download do exemplo

Visão geral do produto:
http://www.microsoft.com/brasil/msdn/produtos/visualfox/Visaogeral.mspx

Informações da Microsoft atualizadas mensalmente sobre o produto:
http://msdn.microsoft.com/vfoxpro/

Até a próxima coluna.

Grande abraço!

Rodrigo Duarte Bruscain

Rodrigo Duarte Bruscain - Coordenador de Sistemas e Desenvolvimento de Projetos da Clone©, atua com desenvolvimento e customizações de aplicações ERP desenvolvidas em Microsoft Visual FoxPro há 10 anos. Membro ativo da comunidade FoxBrasil no yahoo groups. Foi Consultor Técnico da StarSoft© atendendo diversas empresas de pequeno, médio e grande porte em segmentos diferenciados. Atualmente dedica-se em soluções corporativas de acesso remoto desenvolvidas em VFP9 com MS-SQL Server e XML Web services interligando Brasil, China, Taiwan e Indonésia.