Group Index / Order Operations
DbClearIndex()
Closes all index files in a work area.
DbClearIndex() --> NIL
DbCreateIndex()
Creates an index file in a work area.
DbCreateIndex( <cIndexFile>, <cIndexKey>, [<bIndexKey>], [<lUnique>] ) --> NIL
DbDescend()
Checks if the order for navigation is descending
DbDescend() --> lNavIsDescend
DbReindex()
Rebuilds open index files in a work area.
DbReindex() --> NIL
DbROrdName()
Determines the index tag of a child work area.
DbROrdName( <nRelation> | <cRelName> ) --> cTagName
DbSeek()
Positions the record pointer to a record based on the value of an index expression
DbSeek( <IndexKeyValue>, [<lSoftSeek>], [<nIndex>|<cTagName>], [<lLast>] ) --> lFound
DbSetDescend()
Reverses the navigational order of a work area.
DbSetDescend( <lDescend> ) --> NIL
DbSetIndex()
Opens an index file in a work area.
DbSetIndex( <cIndexFile> ) --> NIL
DbSetOrder()
Sets the controlling index in a work area.
DbSetOrder( <nIndex> ) --> NIL
DELETE TAG
Removes an index from a compound index file
DELETE TAG <cTagName> [OF <cIndexFile>] [, <cTagName> [OF <cIndexFile>]] DELETE TAG <cTagName> [IN <cIndexFile>] [, <cTagName> [IN <cIndexFile>]]
Descend()
Gives an inverted index key value for sorting in descending order.
Descend( <Expression> [,<lCompatible>] ) --> DescendValue
INDEX
Creates an index file.
INDEX ON <IndexKey> [TAG <cTagName>] TO <cIndexFile> [FOR <lForCondition>] [WHILE <lWhileCondition>] [NEXT <nCount>] [RECORD <xRecordID>] [EVAL <bBlock> [EVERY <nStep>] ] [REST] [ALL] [UNIQUE] [ASCENDING | DESCENDING] [ADDITIVE] [CANDIDATE] [SUBINDEX] [CUSTOM] Or for index files with multiple indexes: INDEX ON <IndexKey> TAG <cTagName> [TO <cIndexFile>] [FOR <lForCondition>] [WHILE <lWhileCondition>] [NEXT <nCount>] [RECORD <xRecordID>] [EVAL <lExpression> [EVERY <nStep>] ] [REST] [ALL] [UNIQUE] [ASCENDING | DESCENDING] [ADDITIVE] [CANDIDATE] [SUBINDEX] [CUSTOM]
IndexExt()
Returns the default extension for index file names.
IndexExt() --> cExtension
IndexKey()
Returns the index expression of an index file.
IndexKey( <nIndex> ) --> cIndexKey
IndexOrd()
Returns the ordinal position of the controlling index in a work area.
IndexOrd() --> nOrder
OrdBagExt()
Returns the default extension for index file names.
OrdBagExt() --> cExtension
OrdBagName()
Returns the filename of the file containing an index.
OrdBagName( <nIndex> | <cTagName>, [<nInfo>] ) --> cIndexFile
OrdCondSet()
Sets the conditions used to create indexes with OrdCreate().
OrdCondSet( [<cForCondition>], [<bForCondition>], [<lAllRecords>], [<bWhileCondition>], [<bOption>], [<nStep>], [<xnRecNo>], [<nNext>], [<xnRecord>], [<lRest>], [<lDescend>], [<lCandidate>], [<lSubIndex>], [<lCustom>] ) --> NIL
OrdCount()
Determines the number of open indexes in a work area.
OrdCount() --> nOrdCount
OrdCreate()
Creates an index in an index file.
OrdCreate( <cIndexFile>, [<cTagName>], <cIndexKey>, [<bIndexKey>], [<lUnique>], [<lAdditive>] ) --> NIL
OrdDestroy()
Deletes one or more indexes
OrdDestroy( [<cTagName>|<nIndex>] ) --> NIL
OrdFor()
Returns the FOR condition of an index.
OrdFor( [<cTagName>|<nIndex>] ) --> cForExpression
OrdInfo()
Sets or returns information about an order/index
OrdInfo( <nDefine>, [<xNewSetting>] ) --> xOldSetting
OrdIsCandidate()
Checks if an order is an candidate order
OrdIsCandidate([<cTagName>|<nIndex>]) -> lCandidate
OrdIsCustom()
Checks if a order is a Custom order.
OrdIsCustom([<cTagName>|<nIndex>]) -> lCustom
OrdIsDescend()
Checks if an index is created in descending order
OrdIsDescend() --> lIsDescend
OrdIsSubIndex()
Checks if a order is a SubIndex order
OrdIsSubIndex([<cTagName>|<nIndex>]) -> lSubIndex
OrdIsUnique()
Checks if an index is unique
OrdIsUnique() --> lIsUnique
OrdKey()
Returns the index expression of an index.
OrdKey( [<cTagName>|<nIndex>] ) --> cIndexKey
OrdKeyAdd()
Manually add key value to a custom order
OrdKeyAdd([<cTagName>|<nIndex>]) -> lSuccess
OrdKeyNo()
Determines the relative logical record number of the current data record within the indexed database.
OrdKeyNo( [<nIndex> | <cTagName>] ) --> nRelativeRecord
OrdKeyRemove()
Manually remove key value from a custom order
OrdKeyRemove([<cTagName>|<nIndex>]) -> lSuccess
OrdList()
Determines a list of all tag names relating to the current work area.
OrdList() --> aTagNames
OrdListAdd()
Activate one or more indexes in a work area.
OrdListAdd( <cIndexFile> [,<cTagName>] ) --> NIL
OrdListClear()
Closes all index files in a work area.
OrdListClear() --> NIL
OrdListRebuild()
Rebuilds open index files in a work area.
OrdListRebuild() --> NIL
OrdName()
Returns the index name from the list of open indexes.
OrdName( [<nIndex>] ) --> cTagName
OrdNumber()
Returns the position of an index in the index list based on the index name.
OrdNumber( [<cTagName>] ) --> nIndexOrder
OrdSetCustom()
Transforms an existing order to a custom order for manual key manipulation
OrdSetCustom([lSet]) -> lCustom
OrdSetFocus()
Sets the controlling index in a work area.
OrdSetFocus( [<cTagName>|<nIndex>] ) --> cLastIndexName
OrdWildSeek()
Search for a single or subset of records matching a specific wildcard pattern.
OrdWildSeek( <cSkeletonExpr> ) --> lMatch OrdWildSeek() -> nRecord
REINDEX
Rebuilds open index files in the current work area.
REINDEX [COMPACT]
SEEK
Positions the record pointer based on the value of an index expression.
SEEK [LAST] <Expression> ORDER [TAG] <cTagName>|<nIndex> [IN <nWorkArea> | <cAlias> ] [SOFTSEEK]
SET INDEX
Opens one or more index files in the current work area.
SET INDEX TO [<cIndexFiles,...>] [ORDER [TAG] <nIndex> | <cTagName> [ASCENDING | descending] [ADDITIVE]
SET ORDER
Specifies the controlling index in the current work area or the work area specified.
SET ORDER TO [<nIndex>] | TAG <cTagName> [OF <cIndexfile>] [IN <nWorkArea> | <cAlias> ] [ASCENDING | descending]
SET UNIQUE
Sets whether an index may contain multiple records with the same key value.
SET UNIQUE on | OFF | <lToggle>