Как восстановить возможность обновления и вернуть конфигурацию поставщика в РИБ 1С?

Программист 1С v8.3 (Управляемые формы) 1С:Розница Управленческий учет Торговля и дистрибуция
← На главную

При работе с распределенными информационными базами (РИБ), особенно если база досталась в наследство от другого администратора, часто возникает ситуация: необходимо обновить конфигурацию, но кнопка «Обновить конфигурацию» неактивна, а в меню поддержки отсутствует пункт «Конфигурация поставщика». Сообщение «Изменения конфигурации заблокированы средствами управления РИБ» прямо указывает на то, что база считает себя подчиненным узлом, который должен получать изменения только из центра.

В этой статье мы подробно разберем, как определить реальную топологию вашей базы, как снять блокировку РИБ и что делать, если конфигурация была полностью снята с поддержки.

Выясняем причины блокировки: анализ топологии РИБ

Прежде чем вносить изменения в структуру базы, нам необходимо проанализировать ситуацию. Рассмотрим основные причины, по которым конфигурация может быть недоступна для редактирования:

  1. База является подчиненным узлом. В РИБ редактирование метаданных разрешено только в «Центре». Все остальные узлы получают обновления через файлы обмена.
  2. Конфигурация снята с поддержки. Если предыдущий администратор полностью удалил связь с поставщиком (франчайзи или самой фирмой 1С), кнопка обновления будет недоступна, так как системе не с чем сравнивать текущую версию.
  3. «Призрачные» обмены. В базе может быть настроено несколько планов обмена. Если хотя бы по одному из них (помеченному как РИБ) текущий узел считается подчиненным, вся база будет заблокирована.

Выясним, является ли база подчиненной, с помощью встроенных инструментов. Разберем способ проверки через Конфигуратор и программный метод.

Шаг 1. Снятие признака подчиненности узла

Если вы уверены, что перед вами «центральная» база (или вы хотите сделать её автономной для проведения обновлений), необходимо разорвать связь с главным узлом. Проанализируем два основных метода.

Метод А: Командная строка (наиболее надежный)

Этот способ позволяет принудительно очистить системные таблицы базы данных от признаков РИБ. Выполним следующие действия:

  1. Закроем все сеансы работы с базой.
  2. Запустим командную строку (cmd).
  3. Выполним команду для запуска Конфигуратора со специальным ключом:

"C:\Program Files\1cv8\common\1cv8.exe" DESIGNER /F "Путь_К_Вашей_Базе" /ResetMasterNode

После этого признак «Главный узел» будет очищен. Зайдем в Конфигуратор и убедимся, что замок на объектах пропал (или сменился на доступный для редактирования), а сообщение о блокировке средствами РИБ исчезло.

Метод Б: Программный (через встроенный язык)

Если у нас есть доступ к базе в режиме «1С:Предприятие» с правами администратора, мы можем воспользоваться обработкой или встроенной консолью кода. Рассмотрим пример кода:


// Проверяем, установлен ли главный узел
Если ПланыОбмена.ГлавныйУзел() <> Неопределено Тогда
    Попытка
        // Разрываем связь
        ПланыОбмена.УстановитьГлавныйУзел(Неопределено);
        Сообщить("Связь с главным узлом успешно разорвана.");
    Исключение
        Сообщить("Ошибка при попытке снять признак РИБ: " + ОписаниеОшибки());
    КонецПопытки;
КонецЕсли;

После выполнения этого кода база перестанет считать себя периферийной. Однако помните, что это может привести к невозможности дальнейшего автоматического обмена, если конфигурации в узлах разойдутся.

Шаг 2. Восстановление конфигурации поставщика

Если после снятия блокировки РИБ вы обнаружили, что пункт «Конфигурация — Поддержка — Настройка поддержки» показывает пустое окно или кнопка «Обновить конфигурацию» все еще неактивна, значит, база была снята с поддержки. Разберем по шагам, как это исправить.

  1. Выясним точную версию вашей текущей конфигурации. Это можно сделать через меню «Справка — О программе».
  2. Найдем дистрибутив (файл поставки .cf) именно этой версии. Важно: файл должен быть идентичен по версии, иначе при установке на поддержку возникнет конфликт метаданных.
  3. Перейдем в меню «Конфигурация — Поддержка — Настройка поддержки».
  4. Нажмем кнопку «Установить на поддержку» и выберем наш .cf файл.
  5. В появившемся окне сравнения и объединения ничего не меняем. Нам нужно просто восстановить связь, а не вносить изменения в код. Нажимаем «Выполнить».

После этой процедуры в меню «Конфигурация — Поддержка» снова появится пункт «Обновить конфигурацию», и вы сможете штатно накатить актуальное обновление.

Особенности Розницы 2.2 и работа с планами обмена

Проанализируем ситуацию, специфичную для «1С:Розница». В этой конфигурации часто сосуществуют несколько видов обмена: «По магазинам», «По кассам», «Полный». Посмотрим на пиктограммы в списке планов обмена:

Если вы видите синий монитор в списке узлов — база является подчиненной. Если вы решили пересоздать РИБ «с нуля», рекомендуется действовать по следующей схеме:

  1. Сделать базу автономной через ResetMasterNode.
  2. Удалить старые узлы из планов обмена.
  3. Обновить конфигурацию до нужного релиза.
  4. Создать новые узлы обмена и сформировать для них начальные образы.

Важные предостережения

Проанализируем риски: ручное вмешательство в структуру РИБ — это крайняя мера. Всегда делайте резервную копию (выгрузку .dt) перед использованием ключа /ResetMasterNode или программным изменением главного узла.

Также стоит учитывать кэш метаданных. Иногда после разрыва связи «замок» в Конфигураторе не исчезает мгновенно. В этом случае попробуйте очистить локальный кэш пользователя (папку Config и ConfigSave в профиле пользователя AppData) или просто передобавьте базу в список запуска.

Таким образом, мы рассмотрели комплексный подход к решению проблемы заблокированной конфигурации. Теперь вы знаете, как вернуть контроль над базой и продолжить её развитие даже в сложных условиях отсутствия документации от предыдущего специалиста.

← На главную