Bom dia,  Problema resolvido.  Deve utilizar o método onbeforepost no meu caso do ADOTable que está gravando os registros.   ADOQuery3.Close; ADOQuery3.SQL.Clear; ADOQuery3.SQL.Add('SELECT * FROM pessoa_fisica WHERE cpf = (:cpf2)'); ADOQuery3.Parameters.ParamByName('cpf2').Value := DBEdit4.Text; ADOQuery3.Open;  if (not ADOQuery3.eof) then begin  MessageDlg('CPF já existe.', mtWarning, [mbOk], 0);  Abort; end;