Функция CDX( )

Возвращает имя открытого файла составного индекса (.CDX), которому принадлежит заданный номер позиции индекса.

Синтаксис:

CDX(nIndexNumber [, nWorkArea | cTableAlias])

Параметры:
nIndexNumber
В таблице, имеющей структурный составной индекс и один или несколько составных индексов, происходит следующее:

В таблице, не имеющей структурного составного индекса и имеющей один или несколько составных индексов, происходит следующее:

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

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

Комментарии:
Функция CDX( ) идентична функции MDX( ).
Индекс .CDX (составной) состоит из одного физического файла, содержащего множество тегов-индексов. Каждый тег-индекс представляет собой ссылку на порядок индекса для соответствующей таблицы.
Существует два типа файлов .CDX: стандартный составной индекс (.CDX) и структурный индекс .CDX. Стандартный составной индекс (.CDX) может носить имя, отличное от имени соответствующей таблицы, и располагаться в другом каталоге. Таблица может иметь несколько файлов составных индексов. Открывается составной индекс с помощью предложения INDEX команды USE или с помощью команды SET INDEX.
Структурный индекс .CDX должен носить то же имя, что и соответствующая ему таблица, и находиться в одном каталоге с ней. Таблица может иметь только один файл структурного индекса. Файлы структурных индексов .CDX открываются и обновляются автоматически при открытии соответствующей таблицы по команде USE.
Функция CDX( ) игнорирует все файлы .IDX (индексы, совместимые с FoxBASE+ и FoxPro 1.0), задаваемые в командах USE и SET INDEX.
Чтобы получить отдельные имена тегов, содержащиеся в индексе .CDX, пользуйтесь функцией TAG( ), а чтобы возвратить имена открытых файлов .IDX функцией NDX( ).
В Visual FoxPro, FoxPro для Windows и FoxPro для MS-DOS функция CDX( ) возвращает путь и имя файла .CDX, если действует установка SET FULLPATH ON. Если задана установка SET FULLPATH OFF, функция CDX( ) возвращает диск и имя файла .CDX.
В FoxPro для Macintosh установка FULLPATH игнорируется и CDX( ) всегда возвращает путь и имя файла .CDX.

Пример:

* В следующем примере открывается таблица customer в базе данных
* testdata. Команда FOR ... ENDFOR используется для создания цикла, в
* котором имя каждого структурного индекса выводится на экран.
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
	? CDX(nCount)	&& Display structural index names
	ELSE
		EXIT	&& Exit the loop when no more tags are found
	ENDIF
ENDFOR

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