Página 1 de 1

Consulta CEP em Linux

Enviado: 14 Nov 2011 14:59
por prodac
Boa tarde !!! Alguém conhece alguma rotina de consulta de endereço pelo CEP em ambiente linux ?

Consulta CEP em Linux

Enviado: 14 Mai 2012 23:37
por sygecom
Pode usar a consulta do byjg. com:

Código: Selecionar todos

cURL := "http://www.byjg.com.br/site/webservice.php/ws/cep?httpmethod=obterlogradouroauth&cep="+vCEP_TEMP+"&usuario=seu_usuario&senha=sua_senha"

   oHttp:=TipClientHttp():new( cURL )
   oHttp:open()
   cHtml := oHttp:readAll()
   oHttp:close()

Consulta CEP em Linux

Enviado: 15 Mai 2012 11:13
por alxsts
Olá!

- Essa consulta é gratuita? (pelo jeito não, está pedindo usuário e senha)
- Consegue retornar CEPs a partir de um nome de logradouro?
- Funciona em Windows?

Grato

Consulta CEP em Linux

Enviado: 15 Mai 2012 11:22
por vailton
alxsts escreveu:- Essa consulta é gratuita? (pelo jeito não, está pedindo usuário e senha)
Se esta nao for, existe também a http://www.republicavirtual.com.br/cep/exemplos.php que fornece esta consulta senao me engano.
alxsts escreveu:- Consegue retornar CEPs a partir de um nome de logradouro?
Sim, um exemplo do retorno pode ser consultado em http://www.republicavirtual.com.br/cep/ ... .php#exXML
alxsts escreveu:- Funciona em Windows?
O codigo acima utiliza a TIP.lib e com isto torna-se multiplataforma (win,linux,mac,etc.)

Consulta CEP em Linux

Enviado: 15 Mai 2012 11:46
por sygecom
Fala Alexandre,
alxsts escreveu: - Essa consulta é gratuita? (pelo jeito não, está pedindo usuário e senha)
É gratuita sim, uso a anos, requer apenas um cadastro rápido, para usar se próprio usuário e senha.
- Consegue retornar CEPs a partir de um nome de logradouro?
Sim, uso dos dois modo, tanto informando o Cep e pegando retorno do endereço, como enviando o endereço para obter o CEP
- Funciona em Windows?
Multi-plataforma

Parte o código do de busca CEP:

Código: Selecionar todos

IF STR(nR1_CEP,1)="1" // busca o endereço enviando o CEP por parametro
  cURL := "http://www.byjg.com.br/site/webservice.php/ws/cep?httpmethod=obterlogradouroauth&cep="+vCEP_TEMP+"&usuario=seu_usuario&senha=sua_senha"

   oHttp:=TipClientHttp():new( cURL )
   oHttp:open()
   cHtml := oHttp:readAll()
   oHttp:close()

   IF !EMPTY(cHtml)
      IF SUBSTR(UPPER(ALLTRIM(hb_UTF8ToStr(cHtml))),17) = "NÃO ENCONTRADO"
         ShowMsg("CEP não encontrado, favor revisar")
         Return aRet
      ENDIF
      AADD( aRet, vCEP_TEMP )
      aTokens := HB_ATokens( SUBSTR(cHtml,4), ",", .F., .F. )
      FOR i := 1 TO Len( aTokens )
         AADD( aRet, TIRAACENTO(UPPER(ALLTRIM(hb_UTF8ToStr(aTokens[i])))) )
      NEXT
   ENDIF

ELSE // busca o cep enviando o endereço por parametro
   cURL := STRTRAN("http://www.byjg.com.br/site/webservice.php/ws/cep?httpmethod=obtercepauth&logradouro="+LOWER(ALLTRIM(vEND_TEMP))+"&localidade="+LOWER(ALLTRIM(vCID_TEMP))+"&UF="+ALLTRIM(vUF_TEMP)+"&usuario=seu_usuario&senha=sua_senha"," ","%20")

   oHttp:=TipClientHttp():new( cURL )
   oHttp:open()
   cHtml := oHttp:readAll()
   oHttp:close()

   IF VALTYPE(cHtml)='C'
      IF LEN(cHtml) > 0
         IF SUBSTR(Upper(alltrim(hb_UTF8ToStr(cHtml))),6) # "LOGRADOURO NÃO ENCONTRADO"
            IF LEN(cHtml) > 0
               aRet3=HB_ATokens( SUBSTR(hb_UTF8ToStr(cHtml),6), "|")

               IF LEN(aRet3) > 0
                  IF aRET3[1,1] = ""
                     ADEL(aRET3,1,.T.)
                  ENDIF
                  AEVAL(aRet3, {|cV,nV| IF( LEN( aRet3[nV] ) > nMAXLEN,nMAXLEN := LEN( aRet3[nV] ), NIL ) })
                  vESCOLA := MY_WChoice( aret3, "Seleciona Endereço", 15+LEN(aret3), nMAXLEN,HFont():Add( '',0,-12,400,,,) ,,,,,,)
                  IF vESCOLA > 0
                     aTokens := HB_ATokens( aret3[vESCOLA], ",", .F., .F. )
                     FOR i := 1 TO Len( aTokens )
                        AADD( aRet, UPPER(ALLTRIM(TiraAcento(aTokens[i]))) )
                     NEXT
                  ENDIF
               ENDIF
            ENDIF
         ELSE
            ShowMsg("Logradouro Não Localizado, Favor não informar abreviaturas como (AV.),(TRAV.) ou (ROD.)" + HB_OsNewLine() + ;
                    "ou tente buscar pelo nome apenas sem (AVENIDA), (RUA), (RODOVIA) e etc..., Favor Revisar")
         ENDIF
      ENDIF
   ENDIF
ENDIF

Consulta CEP em Linux

Enviado: 15 Mai 2012 12:11
por alxsts
Olá!

Obrigado Vailton e Leonardo. Muito gentis.

O República Virtual eu já conhecia. Apenas ouvi dizer que a base deles não é muito atual. Não sei se é verdade.

Acabo de ver o ByJG. A base é de Nov/2009. Creio que o método para obter o CEP pelo logradouro seja o obterLogradouroAuth(). Vou testar.

Consulta CEP em Linux

Enviado: 24 Mai 2012 12:14
por andersoncamilo
Leonardo

Compilei o exemplo seu que tem no site da www.byjg.com.br, mas sempre me retorna a mensagem ERRO! Ao tentar acessar o webservice, pelo que percebi é quando ele tenta criar o objeto, teria alguma lib para linkar junto.

Utilizo xharbour 1.21 Windows 7


Um abraço


Anderson Camilo

Consulta CEP em Linux

Enviado: 24 Mai 2012 12:31
por sygecom
Olá Anderson,
Aquela opção lá está desatualizada, vou atualizar e mandar para eles novamente.

Consulta CEP em Linux

Enviado: 24 Mai 2012 12:34
por andersoncamilo
Leonardo

Boa tarde se puder envia-lá para mim também, te agradeço.

andersoncamilo@ulbrajp.com.br
Nota de Moderação:
por [url=https://pctoledo.org/forum/memberlist.php?mode=viewprofile&u=100899][color=#00AA00]Pablo César[/color][/url]: (de acordo a sua ultima citação) 
 
Enviar por email, resolver através de meios privados são práticas não aceitas aqui no fórum. Desestimulamos este tipo de procedimento, já que o objetivo do fórum é para servir como fonte centralizadora de informações, onde os usuários possam compartilhar de forma pública e não exclusiva. Favor ler a Regra Geral do Fórum (itens 10,11,12 e 13).
Anderson Camilo