| xHarbour Reference Documentation > Function Reference | 
![]()  | 
  ![]()  | 
  ![]()  | 
 
Searches a record number in the controlling index.
OrdFindRec( <nRecno>, [<lCurrentRec>] ) --> lFound
The function returns .T. (true) if a record is found in the controlling index that has the record number <nRecno>, otherwise .F. (false) is returned.
OrdFindRec() searches a record number in the controlling index. It is similar to DbSeek(), which searches an index key. If OrdFindRec() finds the record number <nRecno> in the controlling index, it positions the record pointer on the found record, and Function Found() returns .T. (true) until the record pointer is moved again. In addition, both functions, BoF() and EoF() return .F. (false).
When a matching record number is not found, the record pointer is positioned on the "ghost record" (Lastrec()+1), and the function Found() returns .F. (false), while Eof() returns .T. (true).
| See also: | DbOrderInfo(), DbSeek(), OrdKeyGoto(), OrdKeyVal(), OrdWildSeek() | 
| Category: | Database functions , Index functions , xHarbour extensions | 
| Source: | rdd\dbcmd.c | 
| LIB: | xhb.lib | 
| DLL: | xhbdll.dll | 
// The example navigates the record pointer via the controlling index
// using physical and logical record numbers,
   REQUEST Dbfcdx
   PROCEDURE Main
      USE Customer VIA "DBFCDX"
      INDEX ON Upper(LastName) TAG NAME TO Cust01
      OrdFindRec( 1 )                    // Physical first record
      ? Lastname, Recno(), OrdKeyNo()    // result: Miller    1  15
      OrdFindRec( LastRec() )            // Physical last record
      ? Lastname, Recno(), OrdKeyNo()    // result: Smith    22  19
      OrdKeyGoto( 1 )                    // Logical first record
      ? Lastname, Recno(), OrdKeyNo()    // result: Alberts  20   1
      OrdKeyGoto( OrdKeyCount() )        // Logical last record
      ? Lastname, Recno(), OrdKeyNo()    // result: Waters   15  22
      OrdFindRec( -1 )                   // Non-existent record
      ? Lastname, Recno(), OrdKeyNo()    // result:          23   0
      ? Bof(), Eof(), Found()            // result: .T.  .T.  .F.
      USE
   RETURN
http://www.xHarbour.com