Функция FOR()

Возвращает выражение индексного фильтра для открытого файла простого индекса .IDX или для тега индекса.

Синтаксис:

FOR([nIndexNumber [, nWorkArea | cTableAlias]])

Параметры:
Если никакие параметры не заданы, функция FOR( ) возвращает выражение фильтра для главного файла индекса или тега индекса. Если главного файла индекса или тега индекса нет (например, вы выдали команду SET ORDER TO, чтобы расположить записи в таблице в естественном порядке), FOR( ) возвращает пустую строку.
nIndexNumber
Задает файл или тег индекса, для которого возвращается выражение фильтра. По мере увеличения значения nIndexNumber от 1 до общего количества открытых файлов простых индексов и тегов структурных составных и независимых составных индексов, функция FOR( ) возвращает фильтры в следующем порядке:

  1. Вначале возвращаются выражения фильтров простых индексов (если эти файлы существуют и открыты). Порядок возвращения выражений фильтров определяется порядком включения файлов простых индексов в команду USE или SET INDEX.
  2. Затем возвращаются выражения фильтра для каждого тега структурного составного индекса (если таковой имеется). Они возвращаются в том порядке, в каком теги создавались в структурном индексе.
  3. В конце возвращаются выражения фильтра для каждого тега во всех открытых независимых составных индексах. Они возвращаются в том порядке, в каком создавались соответствующие теги в независимых составных индексах.

Если индекс или тег индекса создан без участия предложения FOR или если номер nIndexNumber больше общего числа открытых файлов простых индексов и тегов структурных составных и независимых составных индексов, возвращается пустая строка.
nWorkArea
Задает рабочую область таблицы, для которой функция FOR( ) возвращает выражения фильтра индекса.
Если в заданной рабочей области нет открытых таблиц, FOR( ) возвращает пустую строку.
cTableAlias
Задает псевдоним таблицы, для которой FOR( ) возвращает выражения фильтров индексов.
Если задан несуществующий псевдоним таблицы, Visual FoxPro генерирует сообщение об ошибке.

Результат:
Символьный.

Комментарии:
В Visual FoxPro можно создавать фильтрующие индексы. Если включить в команду INDEX предложение FOR lExpression, файл индекса будет выступать по отношению к таблице в роли фильтра. Можно будет отображать и осуществлять доступ только к тем записям, которые соответствуют выражению фильтра lExpression. Ключи индекса создаются в файле индекса только для записей, соответствующих выражению фильтра.
Каждая из команд USE и SET INDEX поддерживает список имен файлов индексов, который дает возможность открывать для одной таблицы несколько файлов индексов. В этот список можно включать имена файлов простых индексов, имена файлов структурных составных или независимых составных индексов в любых сочетаниях. Функция FOR( ) идентична функции SYS(2021) и предусмотрена для совместимости с dBASE IV.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 26.01.2003