Moves a query object's result list pointer
to the row corresponding to the specified ROWID or ROWIDs.
      To
reposition to a particular row when the query is a join, supply
the ROWID values of the buffers that correspond to the desired row.
      
        Return
type: LOGICAL
      
        Applies to:
        Query object handle
      
     
    Syntax
      
      
          
          
            
              
                REPOSITION-TO-ROWID (
  {     rowid1 [ , rowid2 ] [ , tenant-expression ] 
     |  rowid-array 
  }
               | 
            
          
        
 
      
        
          - 
            rowid1
            [ , rowid2
            ]
            ...
 
          - Expressions of type ROWID representing the ROWID of the first buffer,
the ROWID of the second buffer, and so on, in the join. The maximum
number of expressions is 18. If an expression contains the Unknown value (?),
the AVM evaluates but ignores subsequent expressions.
 
        
        
          - 
            rowid-array
          
 
          - An array of 18 or fewer elements, where each element is of type ROWID
and represents the rowid of a buffer. If an element contains the Unknown value (?),
the AVM evaluates but ignores subsequent elements.
 
        
        
          - 
            tenant-expression
          
 
          - This parameter is useful only for a multi-tenant database, and primarily
one with a connection identity that has super tenant access. If the
user has a super-tenant connection identity and you do not specify
this parameter, the query repositions to data owned by the effective tenant.
If you do specify this parameter, the query repositions to data
owned by the regular tenant identified by tenant-expression.
If
the user has a regular-tenant connection identity, and you specify this
parameter, tenant-expression must match the tenancy
of the connection identity. Otherwise, the statement raises ERROR.
If tenant-expression evaluates
to an integer, the value must be a valid tenant ID for a regular
tenant or zero (0) for the default tenant. If tenant-expression evaluates
to a character string, the value must be a valid tenant name for
a regular or "Default" for the default tenant.
Otherwise, the statement raises ERROR.
If you pass tenant-expression and
any of the ROWID values belong to a table that is not multi-tenant
enabled, ABL raises a run-time error.
 
        
      
     
    Notes
      
      
        - The REPOSITION-TO-ROWID( ) method corresponds to the REPOSITION statement with the TO
          ROWID option.
 
        -  When you pass tenant-expression, the AVM looks up the tenant
          identity in the database with a share lock. The AVM waits 60 seconds to get the share lock
          and raises ERROR if it fails to obtain the share lock in that amount of time. The AVM
          releases the share lock immediately after successfully fetching the row. This share lock
          is released even if the statement is called while in the scope of a transaction.