code: public boolean doSetHandle(Object bookmark, int iHandleType) throws DBException
      {
          boolean bIsOpen = m_bIsOpen;
          this.checkCacheMode(Boolean.FALSE);      // Make sure the cache is set up correctly for this type of query (typically not needed)
  
          if (((iHandleType & DBConstants.OBJECT_SOURCE_HANDLE) != DBConstants.OBJECT_SOURCE_HANDLE)
              && ((iHandleType & DBConstants.OBJECT_ID_HANDLE) != DBConstants.OBJECT_ID_HANDLE))
                  iHandleType = DBConstants.BOOKMARK_HANDLE;
          try   {
              Object objData = null;
              String strFields = null;
              if (!this.getRecord().isAllSelected())
                  strFields = this.getRecord().getSQLFields(DBConstants.SQL_SELECT_TYPE, true);
              int iOpenMode = this.getRecord().getOpenMode();    // Open mode
              synchronized (this.getSyncObject())
              {   // In case this is called from another task
                  objData = m_tableRemote.doSetHandle(bookmark, iOpenMode, strFields, iHandleType);
              }
              if (objData instanceof Vector)
              {
                  Vector<Object> data = (Vector)objData;  //m_tableRemote.dataToFields();
                  Record recordBase = this.getRecord();
                  int iFieldTypes = BaseBuffer.PHYSICAL_FIELDS;
                  if (!recordBase.isAllSelected())
                      iFieldTypes = BaseBuffer.DATA_FIELDS;   //SELECTED_FIELDS; (Selected and Physical)
                  BaseBuffer buffer = new VectorBuffer(data, iFieldTypes);
                  m_dataSource = buffer;
                  return true;    // Success
              }
              else
                  return false; // Not found
          } catch (Exception ex) {
              throw DatabaseException.toDatabaseException(ex);
          } finally   {
              m_bIsOpen = bIsOpen;    // Restore
          }
      }
docs: Reposition to this record using this bookmark.
  @param bookmark The handle to use to position the record.
  @param iHandleType The type of handle (DATA_SOURCE/OBJECT_ID,OBJECT_SOURCE,BOOKMARK).
  @return  - true - record found/false - record not found
  @exception FILE_NOT_OPEN.
  @exception DBException File exception.