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