ВУЗ:
Составители:
Рубрика:
29
function Lookup(const KeyFields: String; const KeyValues: Variant; const ResultFields: String):
Variant;
В отличие от Locate, Lookup осуществляет поиск только на точное соответствие
критерия поиска и значения полей записи. В KeyFields указывается список полей, по
которым необходимо осуществить поиск. При наличии в этом списке более чем одного поля
соседние поля разделяются точкой с запятой. KeyValues указывает поисковые значения
полей, список которых содержится в KeyFields.
Если имеется несколько поисковых полей, каждому i-му полю в списке KeyFields
ставится в соответствие i-ое значение в списке KeyValues. При наличии одного поля его
поисковое значение можно указывать в качестве KeyValues непосредственно; в случае
нескольких полей - их необходимо приводить к типу вариантного массива при помощи
VarArrayOf.
В качестве поисковых полей можно указывать поля как входящие в какой-либо индекс,
так и не входящие в него; тип текущего индекса не имеет значения. Если поисковые поля
входят в какие-либо индексы, их использование производится автоматически; в противном
случае используются фильтры BDE.
Результат можно проверить с помощью функции VarType, которая возвращает одно из
следующихзначений:
Значение, возвращаемое VarType Содержимое
varEmpty пустое (неназначенное) значение
varNull значение Null
varSmallint тип Smallint
varInteger тип Integer
varSingle тип Single
varDouble тип double
varCurrency тип Currency
varDate тип TDateTime
varVariant variant
varShortInt тип ShortInt
varByte тип Byte
varWord тип Word
varInt64 тип Int64
varString Ссылка на динамически выделенную строку
Если в результате поиска запись не найдена, метод Lookup возвращает Null, что можно
проверить с помощью оператора
if VarType(LookupResults) = varNull then ...
В противном случае Lookup возвращает из этой записи значения полей, список
которых содержит ResultFields. При этом размерность результата зависит от того, сколько
результирующих полей указано в ResultFields:
одно поле - результатом будет значение соответствующего типа или Null, если поле в
найденной записи содержит пустое значение;
несколько полей - результатом будет вариантный массив, число элементов в котором
меньше или равно числу результирующих полей (некоторые поля найденной записи могут
содержать пустые значения).
var
LookupResults: Variant;
begin
with CustTable do
function Lookup(const KeyFields: String; const KeyValues: Variant; const ResultFields: String): Variant; В отличие от Locate, Lookup осуществляет поиск только на точное соответствие критерия поиска и значения полей записи. В KeyFields указывается список полей, по которым необходимо осуществить поиск. При наличии в этом списке более чем одного поля соседние поля разделяются точкой с запятой. KeyValues указывает поисковые значения полей, список которых содержится в KeyFields. Если имеется несколько поисковых полей, каждому i-му полю в списке KeyFields ставится в соответствие i-ое значение в списке KeyValues. При наличии одного поля его поисковое значение можно указывать в качестве KeyValues непосредственно; в случае нескольких полей - их необходимо приводить к типу вариантного массива при помощи VarArrayOf. В качестве поисковых полей можно указывать поля как входящие в какой-либо индекс, так и не входящие в него; тип текущего индекса не имеет значения. Если поисковые поля входят в какие-либо индексы, их использование производится автоматически; в противном случае используются фильтры BDE. Результат можно проверить с помощью функции VarType, которая возвращает одно из следующихзначений: Значение, возвращаемое VarType Содержимое varEmpty пустое (неназначенное) значение varNull значение Null varSmallint тип Smallint varInteger тип Integer varSingle тип Single varDouble тип double varCurrency тип Currency varDate тип TDateTime varVariant variant varShortInt тип ShortInt varByte тип Byte varWord тип Word varInt64 тип Int64 varString Ссылка на динамически выделенную строку Если в результате поиска запись не найдена, метод Lookup возвращает Null, что можно проверить с помощью оператора if VarType(LookupResults) = varNull then ... В противном случае Lookup возвращает из этой записи значения полей, список которых содержит ResultFields. При этом размерность результата зависит от того, сколько результирующих полей указано в ResultFields: одно поле - результатом будет значение соответствующего типа или Null, если поле в найденной записи содержит пустое значение; несколько полей - результатом будет вариантный массив, число элементов в котором меньше или равно числу результирующих полей (некоторые поля найденной записи могут содержать пустые значения). var LookupResults: Variant; begin with CustTable do 29
Страницы
- « первая
- ‹ предыдущая
- …
- 27
- 28
- 29
- 30
- 31
- …
- следующая ›
- последняя »