Opa, caso alguem queira testar , baixe os arquivos em anexo que baxei do site do correio
fiz alteração no cep.php
Coloque os arquivos dentro de seu servidor web; pode usar nosso servidor web que vai continuar por 30 dias
para vocês usarem . caso alguém queira utilizar fique a vontade
os arquivos em anexo tem que ser colocado dentro de seu provedor web dentro da pasta public_html
(qualquer servidor web que vc possa subir os mesmos) serve
os arquivos CEP,PHP e phpQuery-onefile.php' não subiu aqui no site se alguém quiser e só colocar o email aqui que envio na hora
//COLOQUE ESSES REDEFINE DENTRO DA SUA DIALOG
REDEFINE GET oCepcli VAR cCepcli PICTURE "99999-999" ID 103 oF oDlg;
VALID TCepweb():New(oEndcli,oBaicli,oCidcli,oEstcli,cCepcli,oNumcli) FONT oFont
oCepcli:bGotFocus := {|| oCepcli:SetPos( 1 ) }
REDEFINE GET oEndcli VAR cEndcli PICTURE "@!" ID 104 oF oDlg ;
FONT oFont
REDEFINE GET oNumcli VAR cNumcli PICTURE "@!" ID 105 oF oDlg ;
FONT oFont
REDEFINE GET oComcli VAR cComcli PICTURE "@!" ID 106 oF oDlg ;
FONT oFont
REDEFINE GET oBaicli VAR cBaicli PICTURE "@!" ID 107 oF oDlg ;
FONT oFont
REDEFINE GET oCidcli VAR cCidcli PICTURE "@!" ID 108 oF oDlg ;
FONT oFont
REDEFINE COMBOBOX oEstcli VAR cEstcli Items iEstcli ID 109 oF oDlg when lOk
oEstcli:bKeyChar:={ |nKey, nFlags| If(nKey=VK_RETURN,oDlg:GoNextCtrl( oEstcli:hWnd ),NIL) }
oEstcli:oFont:=oFont1
/////////////////////////////////////////////////////////////////////////////////////////////////
Class TCepweb
METHOD NEW
EndClass
METHOD New(oEndere1,oBairro1,oCidade1,oEstado1,cCep,oNumero) CLass TCepweb
local oPg, tmp,cBuf,cResult, error_net,oerror,nMySQL
local cUrl := "http://republicavirtual.com.br/web_cep.php?cep="//REPUBLICA VIRTUAL O CEPS ESTÃO DESATUALIZADO
local cUr2 := "http://impperio.com.br/cep.php?cep=" //DIRETO PELO SITE DO CORREIO
local cEstado,cCidade,cBairro,cEndere
local cMsgSto:="COLOQUE NOME DA SUA EMPRESA"
if!InternetGetConnectedState()
MsgStop("Não Há Coneccão com a INTERNET","SEM SINAL PARA CONECÇÃO")
TSetfocus():New(oEndere1)
Return(.T.)
endif
oPg = CreateObject("Microsoft.XMLHTTP")
oPg:Open("GET",cUr2 + cCep + "&formato=xml",.F.)
ERROR_NET:=.T.
Try
oPg:Send()
catch oError
msgstop("ERRO AO CONSULTAR C.E.P..!!! " + oError:Description + ". FAÇA MANUALMENTE",cMsgsto)
ERROR_NET:=.F.
END TRY
if ERROR_NET==.T.
cBuf = oPg:ResponseBody
cResult =substr(cBuf, at('<resultado>',cBuf)+11,1)
if left(cBuf,2) # "OK"
ERROR_NET :=.T.
endif
//?cBuf
else
oPg = CreateObject("Microsoft.XMLHTTP")
oPg:Open("GET",cUrl + cCep + "&formato=xml",.F.)
ERROR_NET:=.T.
Try
oPg:Send()
catch oError
Msgstop("ERRO AO CONSULTAR C.E.P..!!! " + oError:Description + ". FAÇA MANUALMENTE",cMsgsto)
ERROR_NET:=.F.
END TRY
if ERROR_NET==.T.
cBuf = oPg:ResponseBody
cResult =substr(cBuf, at('<resultado>',cBuf)+11,1)
if left(cBuf,2) # "OK"
ERROR_NET :=.T.
endif
endif
endif
if(cResult<>"1")
oPg = CreateObject("Microsoft.XMLHTTP")
oPg:Open("GET",cUrl + cCep + "&formato=xml",.F.)
ERROR_NET:=.T.
Try
oPg:Send()
catch oError
Msgstop("ERRO AO CONSULTAR C.E.P..!!! " + oError:Description + ". FAÇA MANUALMENTE",cMsgsto)
ERROR_NET:=.F.
END TRY
if ERROR_NET==.T.
cBuf = oPg:ResponseBody
cResult =substr(cBuf, at('<resultado>',cBuf)+11,1)
if left(cBuf,2) # "OK"
ERROR_NET :=.T.
endif
endif
if(cResult<>"1")
MsgStop("CEP Não Existe na base de Dados",cMsgsto)
TSetfocus():New(oEndere1)
return(.T.)
endif
endif
cEstado =sAcento(substr(cBuf, at('<uf>', cBuf) + 4, 2))
cCidade =sAcento(substr(cBuf, at('<cidade>', cBuf) + 8, at('</cidade>',cBuf) - (at('<cidade>', cBuf) + 8)))
cBairro =sAcento(substr(cBuf, at('<bairro>', cBuf) + 8,at('</bairro>', cBuf)- (at('<bairro>', cBuf) + 8)))
cEndere:=sAcento(substr(cBuf, at('<tipo_logradouro>', cBuf) + 17, at('</tipo_logradouro>', cBuf) - (at('<tipo_logradouro>', cBuf) + 17)))
cEndere+= " "+sAcento(substr(cBuf, at('<logradouro>', cBuf) + 12, at('</logradouro>', cBuf) - (at('<logradouro>', cBuf) + 12)))
oEstado1:Varput(substr(cEstado+space(2),1,2))
oCidade1:Varput(substr(cCidade+space(30),1,30))
oBairro1:Varput(substr(cBairro+space(30),1,30))
oEndere1:Varput(substr(cEndere+space(60),1,60))
oEstado1:Refresh()
oCidade1:Refresh()
oBairro1:Refresh()
oEndere1:Refresh()
oNumero:Setfocus()
return(.T.)
static function sAcento(cTes)
cTes =strtran(cTes,'ã','A')
cTes =strtran(cTes,'á','A')
cTes =strtran(cTes,'é','E')
cTes =strtran(cTes,'ê','E')
cTes =strtran(cTes,'õ','O')
cTes =strtran(cTes,'ó','O')
cTes =strtran(cTes,'ç','C')
cTes =sTrtran(cTes,'ú','U')
Return cTes