18c0693f

Фильтрация по частичному соответствию


Для случаев сортировки по символьным полям полезно делать фильтрацию по частичному соответствию индексного поля (полей) условиям фильтрации.

Пример.

Пусть рассматривавшаяся выше ТБД отсортирована п( наименованию товара 'Tovar' (рис.8.32):

Обработчик отметки CheckBox1 ("Фильтровать"):

procedure TForm1.CheckBoxIClick(Sender: TObject);

begin

IF CheckBoxl.Checked THEN

begin

{————фильтрация записей в НД————}

WITH Tablel do begin

CancelRange;

SetRange([Editl.Text],['яя']);

END; {with}

end {then}

ELSE

{———отмена фильтрации ——————}

Tablel.CancelRange;

end;

В этом случае в НД будут показаны все записи с названием товара, равны или большим указанного в Edit1 (рис.8.33):

Сменим вызов метода SetRange на следующий:

SetRange([Edit1.Text],[Edit1.Text + 'яя']);

Тогда в результате фильтрации в отфильтрованный НД попадут только записи, начинающиеся с введенного в Editi фрагмента названия товара, т.е. с буквы М (рис.8.34):





Все публикации раздела