Array
(
)

Como utilizar WebService de CEP do meu Provedor

Pauloroger
   - 15 mai 2008

Meu provedor tem um WebService para buscar CEP, gostaria de utliza-lo em minha tela de cadastro de fornecedores, porem não tenho ideia de como utiliza-lo, utilizo RAD Studio 2007, e Firebird no provedor, segue o exemplo em ASP que eles me enviaram:



´
´ Exemplo de utilização de utilização de WebService Kinghost
´ www.kinghost.com.br
´


´ Função fix Acentuação PT-BR
function fixAcento(sDec)
dim objRE
set objRE = new RegExp
sDec = Replace(sDec, ´+´, ´ ´)
objRE.Pattern = ´¬([0-9a-fA-F]{2})´
objRE.Global = True
fixAcento = objRE.Replace(sDec, GetRef(´fixAcentoHex´))
end Function

function fixAcentoHex(sMatch, lhex_digits, lpos, ssource)
fixAcentoHex = chr(´&H´ & lhex_digits)
end Function

dim webservice_query(2)
Dim Parsed(9,9)

webservice_url = ´ http://webservice.uni5.net/web_cep.php´

webservice_query(0) = ´5d51a43a859935c43f23f0e7a55a5c0b´ ´Chave de autenticação do WebService - Consultar seu painel de controle
webservice_query(1) = ´query_string´ ´Valores possíveis: xml, query_string ou javascript
webservice_query(2) = ´90560-002´ ´CEP que será pesquisado


webservice_url = webservice_url &´?´&_
´auth=´&_
webservice_query(0)&_
´&formato=´&_
webservice_query(1)&_
´&cep=´&_
webservice_query(2)

´ Efetua requisição ao webservice
set Xml = Server.CreateObject(´Microsoft.XMLHTTP´)
Xml.open ´GET´, webservice_url, false
Xml.send()
Resultado = Xml.responseText
Resultado = split( Resultado, ´&´)

´ Montando parametros
for e = 1 To ubound( Resultado)
temporario = split( Resultado(e), ´=´)

Parsed(e,0) = temporario(0)
Parsed(e,1) = replace( temporario(1), ´+´, ´ ´)
next

´ Montando resposta
Select Case Parsed(1,1)

Case ´2´
texto = ´ ´&_
´Cidade com logradouro único ´&_
´Cidade: ´&Parsed(4,1)&´ ´&_
´UF: ´&Parsed(3,1)


Case ´1´
texto = ´ ´&_
´Cidade com logradouro completo ´&_
´Tipo de Logradouro: ´&Parsed(6,1)&´ ´&_
´Logradouro: ´&Parsed(7,1)&´ ´&_
´Bairro: ´&Parsed(5,1)&´ ´&_
´Cidade: ´&Parsed(4,1)&´ ´&_
´UF: ´&Parsed(3,1)

End Select

´ Printando resultado na tela
Response.Write fixAcento( texto )

set Xml = nothing
¬>