Руководство разработчика

Метод КОНФИГУРАТОР.ОТКРЫТЬ

Метод ОТКРЫТЬ определяет начало транзакции по конфигурированию базы данных и переводит базу данных в режим монопольного доступа. Метод всегда должен вызываться перед началом работы с другими методами типа КОНФИГУРАТОР. Если метод не был вызван или вернул НЕТ – конфигурирование базы данных невозможно.

Для завершения транзакции используется метод ЗАКРЫТЬ.

ФУНКЦИЯ ЛОГИКА: ОТКРЫТЬ(СТРОКА: режим = КФ_РЕЖИМ_ВСЕ)

Параметры

режим
Режим открытия конфигуратора. Задается константами КФ_РЕЖИМ_... или их комбинацией. Если конфигуратор уже был открыт, то дополнительным вызовом метода ОТКРЫТЬ можно установить добавочный режим.

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

ДА – в случае успешного выполнения, НЕТ – в случае ошибки. В частности, ошибка может возникнуть, если в момент вызова метода к базе данных подключены другие клиенты. Также метод возвращает НЕТ, если текущий режим конфигуратора и значение параметра режим находится в противоречии (метод никогда не закрывает режимов).

Обрабатывать результат можно с помощью функции ПОСЛ_ОШИБКА.

Методы ОТКРЫТЬ и ЗАКРЫТЬ играют ту же роль, что и функции НАЧАТЬ_ТРАНЗАКЦИЮ и ЗАВЕРШИТЬ_ТРАНЗАКЦИЮ, и могут использоваться совместно с ними. В отношении вложенных транзакций действуют те же правила: для завершения транзакции с принятием изменений требуется, чтобы все вложенные транзакции были завершены с таким же условием.

Пример:

ПЕРЕМ КОНФИГУРАТОР: к
ЕСЛИ к.ОТКРЫТЬ(КФ_РЕЖИМ_ЧТЕНИЕ + КФ_РЕЖИМ_БЛОКИРОВКА) ТО
  // ... редактируем что-то, база данных - в монопольном режиме
  ЕСЛИ к.ОТКРЫТЬ(КФ_РЕЖИМ_ВСЕ) ТО // добавочно включаем режим записи, начинается транзакция
     // ...записываем изменения в базу данных
     к.ЗАКРЫТЬ(ДА) // завершаем транзакцию, закрываем все режимы
  КОНЕЦ_ЕСЛИ
КОНЕЦ_ЕСЛИ

См. также: