Nome duplicado como tratar?

23/08/2004

Criei uma tabela que não permite nomes duplicados, ao tentar incluir um nome igual para teste o banco (interbase) retorna um erro para o delphi, pergunto:

Como faço para tratar esse erro e mostrar uma mensagem mais amigável para o usuário?

Onde devo colocar o código para tratar o erro?

Agradeço a ajuda de todos.


Silviomorelo

Respostas

23/08/2004

Aroldo Zanela

Colega,

Uma solução, é inserir o tratamento de erro no manipulador de evento OnPostError, conforme exemplo no fragmento abaixo:

  if Pos(´violation of PRIMARY or UNIQUE KEY´, Mensagem)>0 then
  begin
    MessageDlg(´Código ou referência já cadastrado.´, mtError, [mbCancel&93;,0);
  end;

  dm.Transaction.RollbackRetaining;
  Result := daAbort;



Responder Citar