30.Поиск записей в наборах данных
Помимо
навигации и фильтрации, для работы с
источниками данных применяется поиск.
Подобно фильтрации, поиск заключается
в нахождении полей, соответствующих
заданным критериям. А при совпадении
условий поиска с данными, может происходить
перемещение курсора на первое подходящее
поле - подобно навигации.
Для
поиска по любым полям используют функции
Locate и Lookup. При этом для поиска с переходом
курсора на совпавшую запись используют
функцию Locate, а для простого считывания
данных из совпавшей записи - Lookup.
Функция
Locate производит поиск записи с
удовлетворяющими условия поиска
значениями полей. Если такая запись
будет найдена, то курсор будет переведен
на нее, а функция возвратит истину. Если
же совпадений не найдется, то функция
возвратит ложь. Определена эта функция
следующим образом:
function
Locate(const KeyFields: string; const KeyValues: Variant; Options:
TLocateOptions): Boolean
Второй
метод нахождения записей - Lookup -
предназначен для нахождения искомого
в источнике данных и возвращения нужных
данных. Объявлена она следующим образом:
function
Lookup(const KeyFields: string; const KeyValues: Variant; const
ResultFields: string): Variant
Функции
Locate и Lookup хороши тем, что могут
использоваться для поиска по любым
полям набора данных.