Clipper On Line • Ver Tópico - Consultar e Importar Cep da Internet para o Sistema.

Consultar e Importar Cep da Internet para o Sistema.

Projeto Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

 

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor Marcos » 27 Dez 2016 17:46

Senhores, alguém poderia nos ajudar com esta questão, preciso implementar em uma aplicação GUI utilizando Harbour com Minigui a consulta de Cep pela Internet, e importar as informações e assim gravar em um banco Mysql, se alguém nos ajudar seria de grande valia.
Atenciosamente,
_____________________________
Marcos Antonio da Silva
marcosilva90@hotmail.com
Avatar de usuário

Marcos
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 336
Data de registro: 20 Set 2003 09:16
Cidade/Estado: Cáceres/Mato Grosso
Curtiu: 6 vezes
Mens.Curtidas: 1 vez

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor fladimir » 27 Dez 2016 19:54

Tem algumas formas...

Vc pode usar o ACBr como ponte, gera o comando em um arquivo TXT na pasta q é monitorada pelo ACBr ou acessa o ACBr via TCP e manda o comando e le o retorno, se for via TXT o retorno será lido através de memoread por exemplo.

Fora isto se souber algum webservice q forneça a informação pode acessar o webservice e tratar o retorno através de métodos GET e POST (tem exemplo aqui no fórum)

Ou já tem tb banco de dados com os CEPs etc em SQL ai seria somente alterar o script para inserir no seu banco.
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar de usuário

fladimir
Colaborador

Colaborador
 
Mensagens: 2436
Data de registro: 15 Nov 2006 19:21
Curtiu: 28 vezes
Mens.Curtidas: 157 vezes

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor Fernando queiroz » 27 Dez 2016 21:05

***************************
static FUNCTION ConsultarCEP
***************************
LOCAL oHttp, cXML, cCep
LOCAL cRes, cResTxt, cUf, cCidade, cTipo, cEnde, cBairro

DO WHILE .T.
   IF M->CEP = SPACE(09)
      RETURN .F.
   ENDIF
   oHttp:= TIpClientHttp():new( "http://www.jpatecnologia.com.br/cep.asp?cep="+M->Cep+"&clipper=1" )
   IF ! oHttp:open()
      Alert( "Erro na conexů: "+ oHttp:lastErrorMessage() )
      RETURN .T.
   ENDIF
   cXML := oHttp:readAll()
   oHttp:close()

   IF Empty(cXML)
**      alert( "Ocorreu um erro inesperado. Tente outro CEP...")
      return .t.
   ENDIF

   cUf       := Substr( cXML, At("<uf>",cXML)+4, At("</uf>",cXML)-At("<uf>",cXML)-4 )
   cCidade      := Substr( cXML, At("<cidade>",cXML)+8, At("</cidade>",cXML)-At("<cidade>",cXML)-8 )
   cEnde      := Substr( cXML, At("<logradouro>",cXML)+12, At("</logradouro>",cXML)-At("<logradouro>",cXML)-12 )
   cBairro      := Substr( cXML, At("<bairro>",cXML)+8, At("</bairro>",cXML)-At("<bairro>",cXML)-8 )

   IF LEN(cEnde) # 0
      M->ENDER := cEnde+space(60-len(cEnde))
   endif
   IF LEN(cBairro) # 0
      M->BAIR  := cBairro+SPACE(50-LEN(Cbairro))
   endif   
   IF LEN(cCidade) # 0
      M->CIDADE:= cCidade+space(50-len(cCidade))
   endif
   IF LEN(cUf) # 0
      M->UF:= cUf+space(02-len(cCidade))
   endif
   return .t.
   
ENDDO
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Fernando queiroz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 737
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Porto Alegre/RS
Curtiu: 12 vezes
Mens.Curtidas: 58 vezes

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor Fernando queiroz » 28 Dez 2016 14:28

Marcos
respondendo a sua indagação se a função é clipper, ela esta funcionando em HARBOUR o parâmetro clipper nela é somente para retornar todas as letras em MAIÚSCULAS E SEM ACENTOS

#include "hbgtinfo.ch" no .PRG
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Fernando queiroz
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 737
Data de registro: 12 Nov 2014 23:41
Cidade/Estado: Porto Alegre/RS
Curtiu: 12 vezes
Mens.Curtidas: 58 vezes

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor JoséQuintas » 28 Dez 2016 17:27

Dividindo em etapas:

PROCEDURE Main

   LOCAL cCep := Space(8), cEndereco := Space(40), cBairro := Space(20), cCidade := Space(20), cUF := Space(2)
   CLS
   @ 2, 20 GET cCep PICTURE "99999-999" VALID CepOk( @cCep, @cEndereco, @cBairro, @cCidade, @cUF )
   @ 3, 20 GET cEndereco
   @ 4, 20 GET cBairro
   @ 5, 20 GET cCidade
   @ 6, 20 GET cUF
   READ

   RETURN

FUNCTION CepOk( mCep, mEndereco, mBairro, mCidade, mUf, mPesquisa )

   LOCAL mTexto

   hb_Default( @mPesquisa, .T. )
   IF Val( SoNumeros( mCep ) ) == 0 .OR. ! mPesquisa
      RETURN .T.
   ENDIF
   mTexto := WebCep( mCep )
   mUf       := Pad( XmlNode( mTexto, "UF" ), 2 )
   mCidade   := Pad( XmlNode( mTexto, "CIDADE" ), Len( mCidade ) )
   mBairro   := Pad( XmlNode( mTexto, "BAIRRO" ), Len( mBairro ) )
   mEndereco := Pad( XmlNode( mTexto, "LOGRADOURO" ), Len( mEndereco ) )

   RETURN .T.

FUNCTION WebCep( cCep )

   LOCAL cTexto

   WSave()
   Mensagem( "Consultando CEP nos correios, ESC abandona" )
   cTexto := DownloadTexto( ;
      "http://www.jpatecnologia.com.br/cep.asp" + ;
      "?cep=" + cCep + ;
      "&usuario=pctoledo"+ ;
      "&empresa=pctoledo" + ;
      "&CLIPPER=1" )
   WRestore()
   cTexto := iif( ValType( cTexto ) == "C", cTexto, "" )

   // Talvez salvar neste ponto

   RETURN cTexto

FUNCTION DownloadTexto( cUrl )

   LOCAL oSoap, cRetorno, aRetorno, nAscii

   cRetorno := ""
   BEGIN SEQUENCE WITH __BreakBlock()
      oSoap := Win_OleCreateObject( "MSXML2.ServerXMLHTTP" )
      oSoap:Open( "GET", cUrl, .F.)
      oSoap:Send()
      aRetorno := oSoap:ResponseBody()
      IF ValType( aRetorno ) == "C"
         cRetorno := aRetorno
      ELSE
         cRetorno := ""
         FOR EACH nAscii IN aRetorno
            cRetorno += Chr( nAscii )
         NEXT
      ENDIF
   END SEQUENCE

   RETURN cRetorno


As funções extras são do meu aplicativo, mas pelo nome pode fazer equivalente - SE PRECISAR.

SoNumeros() - retorna só os números
WSave(), WRestore() - salva tela/restaura
Mensagem(), MsgExclamation(), etc.... - mensagens
XmlNode() - extrair blocos de XML. Tem na SefazClass a mais nova.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18161
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor JoséQuintas » 28 Dez 2016 17:35

Nota

Está separado porque:

- A rotina de baixar algo da internet serve pra muita coisa, não só pro CEP
- A rotina de consultar CEP pode ser usada em outras formas
- Validar o CEP pra preencher automático, tem a rotina própria
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18161
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor Marcos » 30 Dez 2016 07:14

Obrigado a todos pelo retorno, mas não tenho conhecimento suficiente para portar isto tudo para harbour. Alguém teria algo pronto para harbour?
Atenciosamente,
_____________________________
Marcos Antonio da Silva
marcosilva90@hotmail.com
Avatar de usuário

Marcos
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 336
Data de registro: 20 Set 2003 09:16
Cidade/Estado: Cáceres/Mato Grosso
Curtiu: 6 vezes
Mens.Curtidas: 1 vez

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor JoséQuintas » 30 Dez 2016 07:59

Obrigado a todos pelo retorno, mas não tenho conhecimento suficiente para portar isto tudo para harbour. Alguém teria algo pronto para harbour?


Fiquei confuso, porque a rotina postada já é em Harbour.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18161
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor Marcos » 30 Dez 2016 08:13

JoséQuintas, na verdade sou Eu que fiz confusão, vou testar e reporto o resultado, desculpe a falta de experiência.
Atenciosamente,
_____________________________
Marcos Antonio da Silva
marcosilva90@hotmail.com
Avatar de usuário

Marcos
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 336
Data de registro: 20 Set 2003 09:16
Cidade/Estado: Cáceres/Mato Grosso
Curtiu: 6 vezes
Mens.Curtidas: 1 vez

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor Marcos » 30 Dez 2016 10:29

JoséQuintas, veja abaixo a rotina feita separadamente, não retornou nenhum resultado, acredito que esta faltando alguma coisa por ser GUI, pode me ajudar ?
#include 'minigui.ch'

function Consulta_Cep()
local cCep     := ''
local cEndereco:= ''
local cBairro  := ''
local cCidade  := ''
local cUF      := ''
define window form_cep;
   at 000,000;
   width 500;
   height 305;
   title 'Consultar Cep (online)';
   icon 'ICONEZED';
   modal;
   nosize
   @ 030,005 label lbl_cep;
      of form_cep;
      value 'CEP';
      autosize;
      font 'tahoma' size 010;
      bold;
      fontcolor _preto_001;
      transparent
   @ 030,070 textbox tbox_cep;
      of form_cep;
      height 027;
      width 85;
      value cCep;
      font 'tahoma' size 010;
      backcolor _fundo_get;
      fontcolor _letra_get_1;
      inputmask '99999-999'
   @ 060,005 label lbl_endereco;
      of form_dados;
      value 'Endereço';
      autosize;
      font 'tahoma' size 010;
      bold;
      fontcolor _preto_001;
      transparent
   @ 060,070 textbox tbox_endereco;
      of form_cep;
      height 027;
      width 380;
      value cEndereco;
      font 'tahoma' size 010;
      backcolor _fundo_get;
      fontcolor _letra_get_1
   @ 090,005 label lbl_bairro;
      of form_dados;
      value 'Bairro';
      autosize;
      font 'tahoma' size 010;
      bold;
      fontcolor _preto_001;
      transparent
   @ 090,070 textbox tbox_bairro;
      of form_cep;
      height 027;
      width 280;
      value cBairro;
      font 'tahoma' size 010;
      backcolor _fundo_get;
      fontcolor _letra_get_1
   @ 0120,005 label lbl_cidade;
      of form_dados;
      value 'Cidade';
      autosize;
      font 'tahoma' size 010;
      bold;
      fontcolor _preto_001;
      transparent
   @ 0120,070 textbox tbox_cidade;
      of form_cep;
      height 027;
      width 250;
      value cCidade;
      font 'tahoma' size 010;
      backcolor _fundo_get;
      fontcolor _letra_get_1
   @ 0160,005 label lbl_uf;
      of form_dados;
      value 'UF';
      autosize;
      font 'tahoma' size 010;
      bold;
      fontcolor _preto_001;
      transparent
   @ 0160,070 textbox tbox_uf;
      of form_cep;
      height 027;
      width 30;
      value cUf;
      font 'tahoma' size 010;
      backcolor _fundo_get;
      fontcolor _letra_get_1
   define label linha_rodape
      col 000
      row form_cep.height-090
      value ''
      width form_cep.width
      height 001
      backcolor _preto_001
      transparent .F.
   end label
   *  botões
   define buttonex button_ok
      picture 'IMG_BUSCA'
      col form_cep.width-225
      row form_cep.height-085
      width 120
      height 050
      caption 'Ok, buscar'
      action CepOk( @cCep, @cEndereco, @cBairro, @cCidade, @cUF )
      fontbold .T.
      tooltip 'Buscar online as informações Digitadas'
      flat .F.
      noxpstyle .T.
   end buttonex
   define buttonex button_cancela
      picture 'IMG_VOLTAR'
      col form_cep.width-100
      row form_cep.height-085
      width 090
      height 050
      caption 'Voltar'
      action form_cep.release
      fontbold .T.
      tooltip 'Sair desta tela sem gravar informações'
      flat .F.
      noxpstyle .T.
   end buttonex
end window
form_cep.center
form_cep.activate
return(nil)
*-------------------------------------------------------------------------------
static function CepOk( mCep, mEndereco, mBairro, mCidade, mUf, mPesquisa )
mTexto := WebCep( mCep )
mUf       := Pad( XmlNode( mTexto, "UF" ), 2 )
mCidade   := Pad( XmlNode( mTexto, "CIDADE" ), Len( mCidade ) )
mBairro   := Pad( XmlNode( mTexto, "BAIRRO" ), Len( mBairro ) )
mEndereco := Pad( XmlNode( mTexto, "LOGRADOURO" ), Len( mEndereco ) )
******ACRESCENTEI ESTA PARTE ****
if form_cep.tbox_endereco.Value = mEndereco
   msgstop('Esta aqui', + mEndereco)
else
   msgstop('Esta aqui')
endif
**************************************
RETURN NIL
*-------------------------------------------------------------------------------
FUNCTION WebCep( cCep )
LOCAL cTexto
*Mensagem( "Consultando CEP nos correios, ESC abandona" )
cTexto := DownloadTexto( ;
         "http://www.jpatecnologia.com.br/cep.asp" + ;
         "?cep=" + cCep + ;
         "&usuario=pctoledo"+ ;
         "&empresa=pctoledo" + ;
         "&CLIPPER=1" )

      cTexto := iif( ValType( cTexto ) == "C", cTexto, "" )

      // Talvez salvar neste ponto
RETURN cTexto
*-------------------------------------------------------------------------------
FUNCTION DownloadTexto( cUrl )
LOCAL oSoap, cRetorno, aRetorno, nAscii
cRetorno := ""
BEGIN SEQUENCE WITH __BreakBlock()
   oSoap := Win_OleCreateObject( "MSXML2.ServerXMLHTTP" )
   oSoap:Open( "GET", cUrl, .F.)
   oSoap:Send()
   aRetorno := oSoap:ResponseBody()
   IF ValType( aRetorno ) == "C"
      cRetorno := aRetorno
   ELSE
      cRetorno := ""
      FOR EACH nAscii IN aRetorno
         cRetorno += Chr( nAscii )
      NEXT
   ENDIF
END SEQUENCE
RETURN cRetorno
*-------------------------------------------------------------------------------
FUNCTION XmlNode( cXml, cNode, lComTag )
LOCAL nInicio, nFim, cResultado := ""
hb_Default( @lComTag, .F. )
nInicio := At( "<" + cNode, cXml )
// a linha abaixo é depois de pegar o início, senão falha
IF " " $ cNode
cNode := Substr( cNode, 1, At( " ", cNode ) - 1 )
ENDIF
IF nInicio != 0
IF ! lComTag
nInicio := nInicio + Len( cNode ) + 2
IF nInicio != 1 .AND. Substr( cXml, nInicio - 1, 1 ) != ">" // Quando tem elementos no bloco
   nInicio := hb_At( ">", cXml, nInicio ) + 1
ENDIF
ENDIF
nFim := hb_At( "</" + cNode + ">", cXml, nInicio )
IF nFim != 0
nFim -=1
IF lComTag
   nFim := nFim + Len( cNode ) + 3
ENDIF
cResultado := Substr( cXml, nInicio, nFim - nInicio + 1 )
ENDIF
ENDIF
RETURN cResultado
Atenciosamente,
_____________________________
Marcos Antonio da Silva
marcosilva90@hotmail.com
Avatar de usuário

Marcos
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 336
Data de registro: 20 Set 2003 09:16
Cidade/Estado: Cáceres/Mato Grosso
Curtiu: 6 vezes
Mens.Curtidas: 1 vez

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor Toledo » 30 Dez 2016 11:22

Amigo, tente estas modificações:

  @ 030,070 textbox tbox_cep;
         of form_cep;
         height 027;
         width 85;
         value cCep;
         font 'tahoma' size 010;
         backcolor _fundo_get;
         fontcolor _letra_get_1;
         inputmask '99999-999';
         on enter {|| CepOk(StrTran(form_cep.tbox_cep.Value,"-",""))}


static function CepOk( mCep )
mTexto := WebCep( mCep )
form_cep.tbox_uf.Value := Pad( XmlNode( mTexto, "uf" ), 2 )
form_cep.tbox_cidade.Value := Pad( XmlNode( mTexto, "cidade" ), 25 )
form_cep.tbox_bairro.Value := Pad( XmlNode( mTexto, "bairro" ), 25 )
form_cep.tbox_endereco.Value := Pad( XmlNode( mTexto, "logradouro" ), 40 )
RETURN NIL


No campo CEP digite o cep e depois pressione ENTER.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor JoséQuintas » 30 Dez 2016 12:25

A minigui não aceita algo assim?

... on enter { || CepOk( @form_cep.tbox_cep.Value, @form_cep.tbox_endereco.Value, @form_cep.tbox_bairro.value, @form_cep.tbox.cidade.value, @form_cep.tbox_uf.value ) }
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18161
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor Marcos » 30 Dez 2016 13:59

Mestres Toledo e JoséQuintas não deu certo nenhuma opção, se colocar no evento on enter não acontece nada, se colocar no evento action do botão dá erro.
Atenciosamente,
_____________________________
Marcos Antonio da Silva
marcosilva90@hotmail.com
Avatar de usuário

Marcos
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 336
Data de registro: 20 Set 2003 09:16
Cidade/Estado: Cáceres/Mato Grosso
Curtiu: 6 vezes
Mens.Curtidas: 1 vez

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor Toledo » 30 Dez 2016 15:53

Amigo, segue em anexo o seu código com as alterações que passei na minha mensagem anterior.

Abraços,
Anexos
cepdemo.rar
(512.87 KiB) Baixado 222 vezes
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Consultar e Importar Cep da Internet para o Sistema.

Mensagempor JoséQuintas » 30 Dez 2016 20:53

Fugindo um pouco do assunto principal, mas sobre o exemplo postado:
Dá pra gerar a minigui que foi usada nesse exemplo com Harbour 3.4?
Como chegar até ela?

Sei que tem pelo menos 3 versões de minigui, e geralmente com Harbour próprio, então não sei se isso é possível, ou quais os caminhos.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18161
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Próximo



Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 9 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro