Процедура ApplyRangeпозволяет установить фильтр, который ограничивает диапазон просматриваемых записей. Например, в таблице Customers, поле CustNo имеет диапазон от 1,000 до 10,000. Если пользователь желает получить доступ к идентификаторам в диапазоне 2000 – 3000, то он должен использовать метод ApplyRange, и еще два связанных с ним метода. Данные методы работают только с индексированным полем.
Приведенные ниже процедуры наиболее часто используются для установки фильтров:
· procedure SetRangeStart;
· procedure SetRangeEnd;
· procedure ApplyRange;
· procedure CancelRange.
Кроме того, объект TTableсодержит дополнительные методы для управления фильтрами:
· procedure EditRangeStart;
· procedure EditRangeEnd;
· procedure SetRange.
Для создания фильтра с использованием указанных процедур необходимо:
· Вызвать метод SetRangeStart и посредством свойства Fields определит начало диапазона.
· Вызвать метод SetRangeEndи посредством свойства Fieldsуказать конец диапазона.
· Для активизации фильтра достаточно вызвать метод ApplyRange.
· Чтобы отказаться от действия фильтра необходимо вызвать метод CancelRange.
Рассмотрим пример использования приведенных методов для создания фильтра. Для этого необходимо поместить компоненты Table, DataSource и DbGrid в форму и соединить их поля таким образом, чтобы обеспечить доступ к таблице CUSTOMERS базы данных DEMOS. Затем поместить в форму два объекта Label и назовить их Start Range и End Range. Затем включить в форму два объекта Edit и две кнопки ApplyRange и CancelRange (рис.7).
Расположение компонентов в форме
Рис.7
В примере 17 приведены процедуры, реализующие фильтр указанными методами.