Как обновить BAS УТ 3.2, если конфигурация находится на поддержке и подключено хранилище?

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

Обновление современных конфигураций на базе платформы 1С:Предприятие 8.3, таких как BAS Управление торговлей 3.2 (УТ 3.2), часто сопряжено с техническими нюансами, которые могут поставить в тупик даже опытного специалиста. Одной из наиболее распространенных проблем является невозможность внести изменения в конфигурацию, находящуюся на поддержке, при активном использовании хранилища конфигурации. В этой статье мы подробно разберем, почему «не ставится» обновление, как правильно работать с захватом объектов и на что обратить внимание при переходе через несколько релизов.

Анализируем ситуацию: почему блокируется обновление?

Рассмотрим типичный сценарий: вы пытаетесь обновить BAS УТ 3.2, заходите в меню Конфигурация — Поддержка — Обновить конфигурацию, выбираете файл обновления, но система не позволяет применить изменения или кнопка выполнения остается неактивной. При этом в настройках поддержки указано, что объекты «не редактируются» (находятся на замке).

Первым делом проанализируем состояние дерева метаданных. Если вы видите синие значки или если система сообщает о невозможности изменения объектов, велика вероятность, что конфигурация подключена к хранилищу. В этом случае, даже если объект стоит «на замке» и является типовым, платформа блокирует любые манипуляции с ним, пока он не будет заблокирован (захвачен) конкретным пользователем в рамках хранилища.

Шаг 1. Работа с хранилищем конфигурации

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

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

Важный нюанс: если вы единственный специалист, работающий с базой, использование хранилища может быть избыточным. В таком случае мы рекомендуем упростить процесс: выберите Конфигурация — Хранилище конфигурации — Отключиться от хранилища. После этого все объекты станут доступны для стандартного обновления «старым добрым способом».

Шаг 2. Проверка версии платформы и системных требований

Проанализируем технические параметры. Использование платформы версии 8.3.15.1700 для актуальных релизов BAS УТ 3.2 часто является критической ошибкой. Современные типовые решения требуют актуальных версий платформы (зачастую не ниже 8.3.18 или 8.3.21).

Использование устаревшей платформы при обновлении через несколько релизов может вызвать неявные ошибки при реструктуризации таблиц базы данных. Перед началом работ обязательно загляните в файл ReadMe.txt, который идет в комплекте с дистрибутивом обновления, и убедитесь, что ваша версия 1cv8.exe соответствует требованиям разработчика.

Шаг 3. Последовательность обновления через несколько релизов

Посмотрим на ситуацию, когда необходимо «перепрыгнуть» сразу через 5-10 релизов. Здесь существует два основных метода:

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

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

Шаг 4. Принятие изменений и очистка кэша

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

Нажмите F7 (Обновить конфигурацию базы данных). Если система выдает окно со списком изменений, внимательно просмотрите его и нажмите Принять.

Если после всех манипуляций система продолжает вести себя странно (например, сообщает, что объект не захвачен, хотя вы его захватили), выполним очистку кэша. Самый простой способ — удалить базу из списка в окне запуска и добавить её заново. Также можно воспользоваться параметром запуска:

/ClearCache

Шаг 5. Завершение работы с хранилищем

Если вы решили оставить хранилище включенным, не забудьте о финальном этапе. После того как обновление успешно принято (F7) и проверено в режиме «Предприятие», изменения нужно Поместить в хранилище.

Щелкните правой кнопкой на корне конфигурации и выберите Поместить в хранилище.... Если этого не сделать, другие пользователи хранилища (или вы сами при создании новой локальной копии) не увидят обновленную версию, так как в самом хранилище всё еще хранится старый релиз.

Резюме: контрольный список для успешного обновления BAS

Подведем итог наших действий. Чтобы обновление BAS УТ 3.2 прошло гладко, придерживайтесь следующего алгоритма:

Соблюдение этих правил позволит вам избежать блокировок и корректно перевести систему на новый функционал без потери данных и стабильности работы.

← На главную