Поделиться через


Использование закладок

Часто полезно вернуться непосредственно к определенной записи после того, как вы прошли по набору записей , без необходимости прокручивать и сравнивать каждую запись. Например, если вы пытаетесь выполнить поиск записи с помощью метода Find, но поиск не возвращает никаких записей, вы автоматически помещаетсяе в любой конец набора записей . Если ваш поставщик поддерживает это, вы можете использовать закладки для пометки вашего места перед использованием метода Найти, чтобы вернуться к месту. Закладка — это значение типа Variant, однозначно определяющее запись в объекте набора записей.

Кроме того, можно использовать вариантный массив закладок с методом фильтра набора записей, чтобы отфильтровать выбранный набор записей. Дополнительные сведения об этом методе см. в теме "Отбор результатов" в разделе Работа с записямидалее в этом разделе.

Вы можете использовать свойство закладки, чтобы получить закладку для записи, или задать текущую запись в объекте Recordset на запись, определяемую допустимой закладкой. Следующий код использует свойство закладки для задания закладки, а затем возврата к закладочной записи после перехода на другие записи. Чтобы определить, поддерживает ли набор записей, используйте метод Поддерживает.

'BeginBookmarkEg  
Dim varBookmark As Variant  
Dim blnCanBkmrk As Boolean  
  
objRs.Open strSQL, strConnStr, adOpenStatic, adLockOptimistic, adCmdText  
  
If objRs.RecordCount > 4 Then  
    objRs.Move 4                       ' move to the fifth record  
    blnCanBkmrk = objRs.Supports(adBookmark)  
    If blnCanBkmrk = True Then  
        varBookmark = objRs.Bookmark   ' record the bookmark  
        objRs.MoveLast                 ' move to a different record  
        objRs.Bookmark = varBookmark   ' return to the bookmarked (sixth) record  
    End If  
End If  
'EndBookmarkEg  

Метод Поддерживает более подробно описан позже.

За исключением клонированных наборов записей , закладки уникальны для наборов записей, в которых они были созданы, даже если используется та же команда. Это означает, что вы не можете использовать закладку, полученную из одного набора записей, чтобы перейти к той же записи во втором наборе записей, открытом с той же командой.