Fórum delphi X Interbase #163592

30/05/2003

0

preciso que o usuario entre com o codigo da empresa.
ao entrar o codigo que ele teste para evitar violação de chave.
meu codigo
no evento onposterror da tabela empresa

if e.message = ´Key violation.´ then
begin
showmessage(´Codigo ja existe!´);
end;

problema ele não executa este teste por que ??? tem haver com meu banco de dados por ser Interbase ?
qual seria a saida ?


Midas

Midas

Responder

Posts

30/05/2003

Akpjunior

oi...nao sei mas parece q vc está fazendo confusão...

colocando código no evento onposterror, ele só será executado depois que você tentar salvar a tabela...

para saber se o código já existe depois q o usuário digitar o código vc pode fazer o seguinte:

procedure TForm1.IBQuery1CD_BAIRROValidate(Sender: TField);
begin
With IBQueryConsulta do
begin
SQL.Clear;
SQL.Add(´Select Count(*) As Contador from BAIRRO where CD_BAIRRO = :P_CD_BAIRRO´);
ParamByName(´P_CD_BAIRRO´).AsInteger:=Sender.AsInteger;
Open;
If FieldByName(´Contador´).AsInteger <> 0 then
DatabaseError(´Erro: O Código Chave digitado já existe´);
end;
end;

na tabela bairro no campo CD_BAIRRO evento onValidate

espero ter ajudado.....


Responder

Gostei + 0

30/05/2003

Midas

valeu cara vou tentar ...


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar