Возвращает выражение ключа индекса для тега индекса или файла индекса.
Синтаксис:
KEY([CDXFileName,] nIndexNumber [, nWorkArea | cTableAlias])
Параметры:
CDXFileName
Задает имя файла составного индекса. Функция KEY( ) возвращает выражения ключа индекса для тега индекса .CDX. Заданный файл составного индекса может быть структурным составным индексом, который автоматически открывается вместе с таблицей, или файлом независимого составного индекса.
nIndexNumber
Указывает, какое выражение ключа индекса следует возвратить.
Команды USE и SET INDEX обе поддерживают список файлов индексов, что позволяет открывать для одной таблицы несколько индексов. В этот список можно включать файлы простых индексов .IDX, файлы структурных составных индексов или файлы независимых составных индексов в любых сочетаниях.
Числовое выражение nIndexNumber определяет, для какого именно открытого файла индекса должно быть возвращено выражение индекса. По мере того как nIndexNumber увеличивается от 1 до общего числа открытых файлов простых индексов .IDX и тегов структурных составных и независимых составных индексов, функция KEY( ) возвращает выражения индекса в следующем порядке:
Если nIndexNumber больше общего числа открытых файлов простых индексов .IDX и тегов структурных составных и независимых составных индексов, возвращается пустая строка.
nWorkArea
Задает номер рабочей области таблицы, для которой вы хотите получить выражения ключей индекса.
Если в заданной рабочей области нет открытых таблиц, функция KEY( ) возвращает пустую строку.
cTableAlias
Задает псевдоним таблицы, для которой вы хотите получить выражения ключей индекса.
Если ни у одной таблицы нет заданного вами псевдонима, Visual FoxPro генерирует сообщение об ошибке.
Если аргументы nWorkArea и cTableAlias опущены, возвращаются выражения индекса для таблицы, открытой в текущей рабочей области.
Результат:
Символьный.
Комментарии:
Выражение ключа индекса задается при создании тега индекса или файла индекса с помощью команды INDEX. Это выражение определяет, как будет отображаться таблица и как будет происходить доступ к ней, когда этот тег индекса или файл индекса откроется в качестве главного управляющего тега или файла индекса.
Подробнее о создании тегов индексов, файлов индексов и выражений ключей индекса см. описание команды INDEX.
Пример:
* В следующем примере открывается таблица customer в базе данных * testdata. Структура FOR ... ENDFOR используется для организации цикла, в * котором функция KEY( ) отображает выражение индекса для каждого * тега структурного индекса customer. На экран выдается имя каждого * тега структурного индекса вместе с его выражением индекса. CLOSE DATABASES OPEN DATABASE (HOME( ) + 'samples\data\testdata') USE Customer && Open customer table CLEAR FOR nCount = 1 TO 254 IF !EMPTY(TAG(nCount)) && Checks for tags in the index ? TAG(nCount) + ' ' && Display tag name ?? KEY(nCount) && Display index expression ELSE EXIT && Exit the loop when no more tags are found ENDIF ENDFOR