Validar CPF Cadastrado: Delphi

Veja nesta Quick como validar cpf já cadastrado em seu banco de dados, usando Delphi

Olá galera, nesta Quick Tips, irei mostrar como podemos validar um CPF cadastro dentro de nosso banco de dados, assim como validar um nome já cadastrado, este por sua vez, fica muito mais complexo de se validar, pois uma palavra diferente, um acento a mais ou a menos, torna complicado, mas não impossível saber se já temos este cliente cadastrado em nosso banco de dados, mas nosso exemplo se aplica, na prática, em validar CPF já cadastrado. Vamos então criar uma aplicação e salvar nosso Form como uFrmPrincipal.pas, logo em seguida vamos adicionar :

1 BitBtn(BtnValidarCPF);

1 TLabeleEdit(EdtCPF);

 

Veja abaixo como ficaria o Form

 

Agora na seção private do nosso FrmPrincipal vamos implementar uma função para validação do CPF já cadastrado, veja sua implementação logo em seguida, veja!

 

type

TFrmPrincipal = class(TForm)

BtnValidarCPF: TBitBtn;

EdtCPF: TLabeledEdit;

   procedure BtnValidarCPFClick(Sender: TObject);

private

   function ValidaCPFCadastrado(const xCPF: String): Boolean;

{ Private declarations }

public

{ Public declarations }

end;

 

{Agora vamos a implementação desta rotina}

 

function TFrmPrincipal.ValidaCPFCadastrado(const xCPF: String): Boolean;

var

xQry: TSQLQuery;

begin

   try

   xQry := TSQLQuery.Create(Self);

   xQry.SQLConnection := DM.Conexao;

   xQry.SQL.Add(' SELECT C.DESCRICAO FROM CLIENTE C ');

   xQry.SQL.Add(' WHERE C.CPF = ' + xCPF);

{ Anteção pois se seu Field CPF for VarChar, você terá que informar o mesmo entre aspas simples, usando o QuotedStr, você consegue fazer isso, ficaria assim '123.456.789-10', do contrário não precisa utilizar esta linha, pode usar a de cima!

  xQry.SQL.Add(' WHERE C.CPF = ' + QuotedStr(xCPF)); 

}

   xQry.Open;

   if not xQry.IsEmpty then

   begin

      ShowMessage('CPF já cadastrado' + ''#13'' + 'Cliente : ' +

   xQry.FieldByName('DESCRICAO').AsString);

   EdtCPF.SetFocus;

   Result := False;

   end

   else

Result := True;

   end;

   finally

   FreeAndNil(xQry);

   end;

end;

Como podemos notar, estou trabalhando com um TSQLQuery, criado dinamicamente, e o destruindo no final, observe que da mesma forma que configuramos os componentes pelo Object Inspector, devemos configurar também de forma igual via código.

Logo após fazemos um Simples select, de acordo com a nomenclatura de seus campos, você deve adequar esta parte do código, atenção !

Para finalizar, damos o Foco ao componente que contém o CPF.

 

Alguns devem estar se perguntando, mas pra que ele colocou o BtnValidar, veja a resposta :

 

procedure TFrmPrincipal.BtnValidarCPFClick(Sender: TObject);

begin

   ValidaCPFCadastrado(EdtCPF.Text)

end;

Fico por aqui ate à próxima Quick Tips.

Um abraço

Wesley Y

wyamazack@rwsolution.com.br

Artigos relacionados