Показать сообщение отдельно
  #1  
Старый 07.05.2011, 11:25
Rail Rail вне форума
Прохожий
 
Регистрация: 07.05.2011
Адрес: Казань
Сообщения: 2
Версия Delphi: 7
Репутация: 10
Восклицание Вопрос по фильтрации

(BDE, Paradox, Delphi7)

Уважаемые форумчане!

Не могу понять ошибку.

В таблице есть два строковых поля: kls (Класс) и liter (Литера).
Из этих двух полей формируется значение для поля Klass:

Код:
table1.FieldByName('klass').AsString:=table1.FieldByName('kls').AsString+table1.FieldByName('liter').AsString;

К примеру, получим 5а (или просто без литеры).

Отфильтровываю таблицу (В Edit2 вводится значение типа 5а):
Код:
if (Length(Edit2.Text) > 0) then table1.Filter:= 'klass = ' + edit2.Text;
Table1.Filtered:=true;


Если ввожу только номер класса, то проблем нет, если ввожу с литерой или только фильтрую по литере, выдает ошибку:
Цитата:
Table1: Field 'a' not found

Пробовал по полям отдельно:
Код:
table1.Filter:= '(kls = ' + edit2.Text+') and ('+'liter = ' + edit3.Text+')';
Ошибка такая же. Может проблема с кодировкой? Где и что не так?
Ответить с цитированием