Cdx(), Mdx(), Ndx()
These functions give you the names of index files. CDX() and MDX() are identical. Both return the name of a compound index file; MDX() is included only for compatibility with dBASE. NDX() returns the name of a stand-alone index file.
Usage |
cIndexFile = CDX( nWhichIndex [, nWorkArea | cAlias] ) cIndexFile = MDX( nWhichIndex [, nWorkArea | cAlias] ) cIndexFile = NDX( nWhichIndex [, nWorkArea | cAlias] ) |
Parameter |
Value |
Meaning |
nWhichIndex |
Numeric |
Determines which open index file has its name returned. |
nWorkArea |
Numeric |
Return index information about the table open in work area nWorkArea. |
Omitted |
If cAlias is also omitted, return index information about the table in the current work area. |
|
cAlias |
Character |
Return index information about the table open with alias cAlias. |
Omitted |
If nWorkArea is also omitted, return index information about the table in the current work area. |
|
cIndexFile |
Character |
The name of the specified index file. |
Empty |
There is no such index file. |
USE MyTable INDEX AnIndex, AnotherIndexAnIndex is index 1 and AnotherIndex is index 2. The parameter nWhichIndex is based on this ordering. For CDX() and MDX(), a structural index file is always index 1, if it exists. Any CDX files explicitly opened come after the structural index.We don't use these functions often, but when we do, it's usually CDX() and it's because some of the other index functions (like TAGNO() and TAGCOUNT()) need the name of the index file when you pass them an alias. These functions have one very friendly behavior. If you pass a value for nWhichIndex larger than the number of index files of that type that are open, they return the empty string. This makes these functions ideal for writing code to find all the open indexes.
Example |
* create an array containing all CDX files for current work area LOCAL cCDX, nCDXCnt DIMENSION aCDX[1] aCDX[1]="" nCDXCnt=1 DO WHILE NOT EMPTY(CDX(nCDXCnt)) DIMENSION aCDX[nCDXCnt] aCDX[nCDXCnt]=CDX(nCDXCnt) nCDXCnt=nCDXCnt+1 ENDDO * get the name of the third open stand-alone index file * for MyOldTable ? NDX(3, "MyOldTable") |
See Also |
Index, Key(), Order(), Set FullPath, Set Index, Sys(14), Tag(), TagNo(), TagCount(), Use |