Ajuda - Busca - Membros - Calendário
Versão Completa: [resolvido] Pesquisa No Cadastro
Fórum Script Brasil > Programação & Desenvolvimento > Delphi, Kylix
Eder
Ola..pessoal

Tenho um cadastro simples de veiculos cadastrado por placa.
coloquei este codigo aqui no BeforePosto da Table
Ele funciona legal..porem quando tenho que editar este cadastro...ai ele diz que a placa já esta cadastrada.

QUOTE
procedure TForm2.Table1BeforePost(DataSet: TDataSet);
begin
If Query1.Locate('placa',DBEdit2.text,[]) then
begin
ShowMessage('Esta Placa já foi Cadastrada!!');
SysUtils.Abort;
End;
end;


Tenho uma maneira de contornar este probleminha??

Grato
Micheus
QUOTE(Eder @ 11/05/2007 - 14:54) *
coloquei este codigo aqui no BeforePosto da Table
Ele funciona legal..porem quando tenho que editar este cadastro...ai ele diz que a placa já esta cadastrada.

CODE
procedure TForm2.Table1BeforePost(DataSet: TDataSet);
begin
  If Query1.Locate('placa',DBEdit2.text,[]) then
  begin
    ShowMessage('Esta Placa já foi Cadastrada!!');
    SysUtils.Abort;
  end;
end;


Tenho uma maneira de contornar este probleminha??
Eder, você mesmo respondeu a pergunta quando colocou esta frase: "porem quando tenho que editar este cadastro...ai ele diz que a placa já esta cadastrada"
Percebeu?! Logo, quando estiver em modo edição, você não precisa fazer a verificação, apenas na inclusão - pelo menos, o lógico é que você não possa alterar a placa depois de cadastrada, apenas os outros campos.

Altere seu teste para:
CODE
If (DataSet.State = dsInsert) and Query1.Locate('placa',DBEdit2.text,[]) then

Eder
beleza...Micheus
Valeu a dica..muito Grato
biggrin.gif
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor clique aqui.
Invision Power Board © 2001-2012 Invision Power Services, Inc.