Если тебе нужно проверить Edit1.Text, не изменяя исходный пример, то можно так:
try begin
Table1.Filtered := False;
Table1.Filter := 'Id = ' + QuotedStr(IntToStr(StrToInt(Edit1.Text))); --> На этой строке останавливается и рапортует об ошибке....
Table1.Filtered := True;
end;
except
begin
MessageDlg('Error', mtError, [mbOK], 0);
exit;
end;
end;
StrToInt сгенерирует исключение, если не сможет перевести строку в число. Хотя смотрится все это не очень-то красиво.
Добавлено через 16 минут:
Вот чего получилось:
Код:
try
Table1.Filtered := False;
Table1.Filter := 'Id = ''' + IntToStr(StrToInt(Edit1.Text) + '''';
Table1.Filtered := True;
except
MessageDlg('Error', mtError, [mbOK], 0);
exit;
end;