[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
ORDKEYVAL()
Get the key value of the current record from the controlling order
------------------------------------------------------------------------------
Syntax
ORDKEYVAL() --> uKeyValue
Returns
ORDKEYVAL() returns the current record's key value. The data type of
the return value is the same as that of the key expression used to
create the order. Use VALTYPE() to determine the data type.
ORDKEYVAL() returns NIL if:
. There is no controlling order
. The record pointer is at the end of file (EOF() returns true
(.T.))
. There is no key defined for this record (for example, you have
positioned the record pointer to a record that does not meet the
order's for condition or that lies outside of its specified scope)
Description
The key value is retrieved from the controlling order, not the database
file. This makes the retrieval faster because no time is spent reading
in the actual record.
Tip: ORDKEYVAL() is fast, but if you are going to use the value
more than once, it is faster to store the result in a local variable.
Then use the local variable rather than calling ORDKEYVAL() repeatedly
for the same record.
By default, this function operates on the currently selected work area.
It will operate on an unselected work area if you specify it as part of
an aliased expression.
Examples
. This example displays the values for all keys in an order
without ever reading the individual records into memory:
FUNCTION DISPLAYKEYS()
LOCAL cKey, cFirst, cLast
USE Customer
// Assuming both LastName and FirstName are
// 20 characters
INDEX ON LastName + FirstName TO LastFir
DO WHILE !Customer->EOF()
cKey := Customer->ORDKEYVAL() // Get key
// value
cLast := LEFT(cKey, 20) // Get last
// name
cFirst := RIGHT(cKey, 20) // Get first
// name
? cLast, cFirst
Customer->DBSKIP()
ENDDO
CLOSE
Files Library is CLIPPER.LIB.
See Also:
ORDSCOPE()
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson