← На главную
При активной разработке в платформе 1С:Предприятие нередко возникает ситуация, когда внесенные в основную конфигурацию изменения необходимо срочно отменить и вернуться к состоянию, которое в данный момент сохранено и работает в информационной базе. В обычном режиме для этого достаточно выбрать пункт меню Конфигурация → Конфигурация базы данных → Вернуться к конфигурации БД. Однако при подключении к хранилищу конфигурации данный пункт становится серым и недоступным для нажатия.
Выясним причину такого поведения платформы и подробно разберем все способы возврата к состоянию конфигурации базы данных.
Почему команда «Вернуться к конфигурации БД» заблокирована?
Проанализируем архитектуру работы механизма версионирования. Когда информационная база подключена к хранилищу конфигурации, редактируемая конфигурация синхронизируется не с конфигурацией базы данных, а с версиями хранилища и состояниями захвата объектов. Прямой безусловный откат затер бы структуру захваченных объектов и нарушил целостность версий. По этой причине платформа аппаратно блокирует команду прямого отката к конфигурации БД, а также пункт Загрузить конфигурацию из файла....
Тем не менее, существует несколько безопасных и проверенных способов вернуть конфигурацию к рабочему состоянию базы данных без потери целостности разработки.
Способ 1. Прямое сравнение и объединение с конфигурацией базы данных
Рассмотрим самый быстрый и удобный способ отката без необходимости отключаться от хранилища конфигурации. Выполним следующие шаги:
- Захватим в хранилище конфигурации те объекты, изменения по которым необходимо отменить (или рекурсивно захватим корень конфигурации, если требуется вернуть всю конфигурацию целиком).
- Откроем главное меню: Конфигурация → Сравнить, объединить с конфигурацией базы данных....
- В открывшемся окне сравнения и объединения проанализируем различия. Нажмем кнопку Установить флажки и снимем отметки со всех изменений, либо настроим объединение таким образом, чтобы в основную конфигурацию перенеслись свойства, реквизиты и модули из конфигурации базы данных.
- Нажмем кнопку Выполнить для завершения объединения.
После этого основная конфигурация примет состояние базы данных, а вы сможете продолжить работу или поместить корректное состояние в хранилище.
Способ 2. Отмена захвата объектов в хранилище
Разберем ситуацию, когда нежелательные доработки были сделаны локально, но еще не помещались в хранилище конфигурации. В этом случае состояние объектов в хранилище совпадает с исходным, и объединение не требуется:
- Выделим нужный объект метаданных или корневой узел дерева конфигурации.
- Перейдем в меню: Конфигурация → Хранилище конфигурации → Отменить захват.
- Подтвердим отмену изменений. Платформа сотрет локальные модификации и вернет объекты к состоянию последней полученной версии из хранилища.
Способ 3. Выгрузка конфигурации БД в файл и последующее объединение
Посмотрим на классический вариант, который позволяет гарантированно зафиксировать снимок базы данных в файл даже при заблокированных стандартных командах:
- Сохраним текущее состояние базы данных в файл: меню Конфигурация → Конфигурация базы данных → Сохранить конфигурацию БД в файл... (эта команда остается активной при работе с хранилищем).
- Захватим корень конфигурации рекурсивно через контекстное меню хранилища.
- Выберем меню Конфигурация → Сравнить, объединить с конфигурацией из файла... и укажем сохраненный ранее файл
.cf.
- В окне объединения снимем признак Включать объекты по умолчанию, оставив полную замену свойств и модулей из файла, после чего нажмем Выполнить.
Способ 4. Возврат через отключение от хранилища (с последующей синхронизацией)
Если требуется полностью сбросить локальную конфигурацию с отключением от хранилища, разберем корректную последовательность действий, чтобы хранилище не затерло результат при обратном подключении:
- Отключим информационную базу от хранилища через меню Конфигурация → Хранилище конфигурации → Администрирование хранилища → Отключиться от хранилища.
- Выполним теперь уже доступную команду Конфигурация → Конфигурация базы данных → Вернуться к конфигурации БД.
- Сохраним полученную чистую конфигурацию в файл через Конфигурация → Сохранить конфигурацию в файл....
- Снова подключимся к хранилищу конфигурации.
- Рекурсивно захватим корень конфигурации в хранилище.
- Выполним сравнение и объединение с ранее выгруженным файлом
.cf, чтобы перенести восстановленное состояние в хранилище.
Способ 5. Использование истории версий хранилища
Проанализируем случай, когда изменения уже были ошибочно помещены в хранилище, но конфигурация базы данных еще не обновлялась:
- Откроем Конфигурация → Хранилище конфигурации → История хранилища.
- Найдем номер версии, которая соответствует текущей рабочей конфигурации базы данных.
- Выделим эту версию и нажмем кнопку Сравнить/объединить с конфигурацией.
- Применим изменения в основную конфигурацию и при необходимости зафиксируем новую версию в хранилище.