|
|||||||
Блокировка (монопольное открытие) таблицы
Время создания: 16.03.2019 23:43
Раздел: Разные закладки - VBA - Access - msa.polarcom.ru
Запись: xintrea/mytetra_db_adgaver_new/master/base/1531933162f46ymhyt3x/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
Блокировка (монопольное открытие) таблицыАвтор: Дмитрий Сонных sonni-dim@mail.ru Блокировка на уровне набора записей ' ----------------------------------------------------------- ' Расположение переменной Recordset зависит от области действия ' блокировки таблицы ' секция Declare модуля - для всей задачи ' секция Declare модуля формы - пока открыта форма ' тело процедуры - пока выполняется процедура Public rst As Recordset Public db As Database ' база данных Public strPathDB As String ' путь к базе ' ----------------------------------------------------------- ' Помещаем на форме кнопку. Называем её cmdTable ' На событие Click вешаем обработку Private Sub cmdTable_Click() ' При первом нажатии кнопки устанавливается режим ' блокировки таблицы, ' при повтрном - снимается. ' Переменная strPathDB должна быть уже определена On Error GoTo Err_cmdTable_Click ' Проверяем инициализацию объекта rst If rst Is Nothing Then ' Устанавливаем режим монопольного доступа Set db = OpenDatabase(strPathDB) Set rst = db.OpenRecordset("имя_таблицы", dbOpenTable, dbDenyWrite + dbDenyRead) ' можете установить какой-либо признак блокировки ' Я лично меняю надпись на кнопке Else ' Снимаем режим блокировки rst.Close Set rst = Nothing ' убирается признак блокировки End If Exit_cmdTable_Click: Exit Sub Err_cmdTable_Click: ' При попытке заблокировать уже открытую таблицу ' ведается сообщение об ошибке (можно вставить свой обработчик) MsgBox Err.Description Resume Exit_cmdTable_Click End Sub |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|