OrdCondSet Function | |
Set the condition and scope for an order.
Namespace:
XSharp.RT
Assembly:
XSharp.RT (in XSharp.RT.dll) Version: 2.19
Syntax FUNCTION OrdCondSet(
cForCondition,
cbForCondition,
lAll,
cbWhileCondition,
cbEval,
nInterval,
nStart,
nNext,
nRecord,
lRest,
lDescend,
lAdditive,
lCurrent,
lCustom,
lNoOptimize,
lBinary,
cCollation,
lCandidate,
lCompact
) AS LOGIC CLIPPER
[ClipperCallingConventionAttribute(new string[] { ... })]
public static bool OrdCondSet(
Usual cForCondition = default,
Usual cbForCondition = default,
Usual lAll = default,
Usual cbWhileCondition = default,
Usual cbEval = default,
Usual nInterval = default,
Usual nStart = default,
Usual nNext = default,
Usual nRecord = default,
Usual lRest = default,
Usual lDescend = default,
Usual lAdditive = default,
Usual lCurrent = default,
Usual lCustom = default,
Usual lNoOptimize = default,
Usual lBinary = default,
Usual cCollation = default,
Usual lCandidate = default,
Usual lCompact = default
)
Request Example
View SourceParameters
- cForCondition (Optional)
- Type: Usual
A string that specifies the for condition for the order.
This string is returned by DBOrderInfo(DBOI_CONDITION, [cIndexFile], cOrder).
If you do not need this information, you can specify a NULL_STRING.
- cbForCondition (Optional)
- Type: Usual
A code block that defines a condition that each record within the scope must meet in order to be processed.
>
This condition (not cForCondition) is the one that is actually used to create the order.
Unlike the while condition and other scoping information, the for condition is stored as part of the index file and is used when updating or rebuilding the order with DBReindex().
Any limitations on the for condition are determined by the RDD
A code block that defines a condition that each record within the scope must meet in order to be processed. - lAll (Optional)
- Type: Usual
A value of TRUE specifies a scope of all records.
Use FALSE if you want to indicate other record scoping conditions (that is, nNext, nRecord, or lRest).
The default is FALSE.
- cbWhileCondition (Optional)
- Type: Usual
A code block that defines another condition that each record must meet in order
to be processed.
As soon as a record is encountered that causes the condition to fail, the operation
terminates.
If no scope is specified, cbWhileCondition changes the default scope to lRest.
You define the scope using one of these three, mutually exclusive arguments.
The default is all records.
A code block that defines another condition that each record must meet in order
to be processed.
As soon as a record is encountered that causes the condition to fail, the operation
terminates.
If no scope is specified, cbWhileCondition changes the default scope to lRest.
You define the scope using one of these three, mutually exclusive arguments.
The default is all records.
- cbEval (Optional)
- Type: Usual
A code block that is evaluated at intervals specified by nInterval.
This is useful in producing a status bar or odometer that monitors the ordering progress.
The return value of cbEval must be a logical value.
If cbEval returns FALSE, indexing halts.
The default is NIL.
- nInterval (Optional)
- Type: Usual
A numeric expression that determines the number of times cbEval is evaluated.
This argument offers a performance enhancement by evaluating the condition at intervals instead of for every record processed.
To step through every record, you can specify a value of 0.
The default is 0.
- nStart (Optional)
- Type: Usual
The starting record number.
To start at the beginning of the file, specify a value of 0.
The default is 0.
You define the scope using one of these three, mutually exclusive arguments (use 0 or FALSE for the others).
The default is all records. Record scoping information is used only to create the order.
It is not stored in the index file and not used for index updates and reindexing purposes.
- nNext (Optional)
- Type: Usual
The number of records to process, starting at nRecord. Specify 0 to ignore this argument.
- nRecord (Optional)
- Type: Usual
A single record number to process. Specify 0 to ignore this argument. - lRest (Optional)
- Type: Usual
TRUE processes only records from nStart to the end of the file. FALSE processes all records.
- lDescend (Optional)
- Type: Usual
Specifies whether the keyed pairs be sorted in decreasing or increasing order of value. TRUE results in descending order. FALSE results in ascending order.
The default is FALSE.
- lAdditive (Optional)
- Type: Usual
Specifies whether open orders should remain open while the new order is being created. TRUE specifies that they should remain open. FALSE specifies that all open orders should be closed.
The default is FALSE.
- lCurrent (Optional)
- Type: Usual
Specifies whether only records in the controlling order — and within the current range as specified by OrdSetScope() — will be included in this order. TRUE specifies that the controlling order and range should be used to limit the scope of the newly created order. FALSE specifies that all records in the database file are included in the order.
The default is FALSE.
- lCustom (Optional)
- Type: Usual
Specifies whether the new order will be a custom built order (for RDDs that this feature). TRUE specifies that a custom built order will be created.
A custom built order is initially empty, giving you complete control over order maintenance.
The system does not automatically add and delete keys from a custom built order. Instead, you explicitly add and delete keys using OrdKeyAdd() and OrdKeyDel(). FALSE specifies a standard, system-maintained order.
The default is FALSE.
- lNoOptimize (Optional)
- Type: Usual
Specifies whether the FOR condition will be optimized (for RDDs that support this feature). TRUE optimizes the FOR condition, and FALSE does not.
The default is FALSE.
- lBinary (Optional)
- Type: Usual
- cCollation (Optional)
- Type: Usual
- lCandidate (Optional)
- Type: Usual
- lCompact (Optional)
- Type: Usual
Return Value
Type:
LogicRemarks
This function is identical to DBSetOrderCondition(), which you can refer to for more information.
Examples See Also Reference
DbSetOrderCondition(Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual, Usual)