DB.Unlock

From SunFlurry wiki
Jump to: navigation, search
  Unlock (Разблокировка объекта базы данных)
Объект:Объект базы данных
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Сервер
Исключения:Неподходящий объект
Визуальность:Нет

Функция производит разблокировку заблокированного ранее объекта. Функцию желательно использовать внутри конструкции Finally ... EndTry, чтобы убедиться, что объект будет разблокирован по окончании работы с ним. Объект также будет разблокирован автоматически когда происходит его позиционирование (к примеру, другой объект выбирается с помощью функции Find или Select), либо его удалением из системы. См. также Lock.

Синтаксис

DB.Unlock(<Описание ошибки (STRING)>):<Успешная разблокировка (INT)>

Аргументы

  • <Описание ошибки (STRING)> - (необязательный аргумент)(возможен аргумент-переменная (ByRef)) Если разблокировать объект не удалось по какой-либо внутренней причине, переменная, заданная в этом аргументе, получает описание ошибки сервера.

Возвращаемое значение

Функция возвращает единицу, если разблокировка произведена успешно, 0 в ином случае.

Примеры

//Пример производит блокировку и изменение документа аДок
аПольз:="";аМаш:="";аВремя:="";
If аДок.Lock(аПольз,аМаш,аВремя)=0 Then
  Message("Невозможно заблокировать документ "+аДок+", так как в данный момент с ним работает пользователь "+аПольз+" на "+аМаш+" в "+аВремя+"!","!");
  Exit;
EndIf;
Try
  //Перечитать аДок из базы данных, чтобы убедиться, что мы работаем со свежими данными и наше изменение не запишет устаревшие данные в базу данных
  аДок.Reload();
  //Изменим реквизит и сохраним объект
  аДок.Реквизит:=1;
  аДок.Save();
Finally
  аДок.Unlock();
EndTry;