Фильтрацию можно отнести к одному из методов поиска. Потому что фильтрация – выбор из набора данных только тех записей, которые удовлетворяют конкретным условиям. Например, можно указать отображение только записей, в которых поле «Фамилия» содержит значение «Иванов». Применение фильтра к набору данных определяется свойством Filtered логического типа. Значение True определяет применение в качестве фильтра выражения, указанного в свойстве Filter:
Поле [Оператор сравнения] ‘Значение’
Например, если отобразить все записи, в которых поле «Фамилия» равно значению «Сидоров», то нужно указать:
Table1.Filter:=’Фамилия=’’Сидоров’’’;
Фильтрация записей:
1. Открыть приложение.
2. Добавить на форму компоненту TEdit.
3. Текст процедуры для события OnChange:
begin
Table1.Filtered:=true; // включение
фильтрации
Table1.Filter:='SNom = ‘+Edit2.Text;
// задает
критерий
фильтрации
end;
4. Этот способ фильтрации пригоден только для числовых полей.
5. При применении фильтра можно указать свойства:
a. foCaseInsensitive – нечувствительность к регистру букв;
b. foNoPartialCompare – поиск на точное соответствие.
6. Для фильтрации текстовых полей, например по полю «Фамилия» необходимо изменить текст процедуры.
procedure TForm1.Edit2Change(Sender: TObject);
begin
Table1.Filtered:=true;
Table1.Filter:='SFio='+#39+Edit2.Text+'*'+#39;
end;
7. В этом случае фильтрация проходит по текстовому полю. Знак «#39» означает знак апострофа, так как ввод фамилии при использовании фильтра происходит в апострофах. А символ «*» означает любые символы, то есть при вводе только одной буквы на экране появятся все фамилии начинающиеся на букву.
Лабораторная работа № 5
Цели:
1. Усвоить возможность связи таблицам.
Установка связи между таблицами:
Для демонстрации связи между таблицами необходимо создать еще одну таблицу. Создайте таблицу успеваемости студентов. В нее войдут поля: учебный год, сессия (зима или лето), предмет, ФИО преподавателя, дата аттестации по предмету, дата сдачи, оценка.
1. Эта таблица будет дочерней для таблицы Студенты. В таблице Успеваемость надо ввести дополнительно числовое поле и определить его вторичным ключом.
2. Разместите таблицу успеваемости на форме Студенты.
3. В свойстве компоненты Table 2 Master
Source написать Data
Source 1.Это означает, что вторая таблица станет дочерней для первой.
4. Двойным щелчком по свойству Master
Fields вызовем окно Field Link Designer (Дизайнер поля связи):
4. Выбрать в списке Available Index (Доступные
индексы )изокна Field Link Designer индекс IDGod(это вторичный индекс второй таблицы).
5. В левом списке Detail
Field выделить IdU, а в правом списке Master
Field
(Основа) выделить Ind.
6. Нажать на кнопку Add (Добавить) и закрыть окно.
7. Таким образом между таблицами установилась связь. Она называется связь один ко многим.
8. К дочерней таблице добавить кнопки для ввода и редактирования данных также как и для таблицы Студенты.