Почему 1С не видит обновления и как исправить рассинхронизацию версий конфигурации

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

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

Проанализируем три состояния конфигурации

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

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

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

Разберем понятие цепочки обновлений (Update Path)

Посмотрим на техническую сторону файлов обновления. Файл формата .cfu (Configuration Update) является «разностным». Он не содержит в себе всю программу целиком, а включает только изменения относительно конкретных предыдущих версий.

Проанализируем файл 1cv8.v8upd, который всегда находится в папке с шаблоном. В нем жестко прописано, с каких именно версий возможен переход на текущую. Если ваша текущая КонфигурацияБазыДанных имеет версию 3.1.17.138, а вы пытаетесь установить обновление 3.1.18.82, которое «ожидает» минимум версию 3.1.18.46, система выдаст сообщение об отсутствии подходящих обновлений. Помните: нельзя перепрыгивать через промежуточные релизы, которые являются обязательными в цепочке обновления поставщика.

Выясним влияние фоновых заданий на процесс обновления

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

Для предотвращения подобных ситуаций перед началом работ выполним следующие действия:

Рассмотрим пошаговое решение проблемы через откат к резервной копии

Если вы столкнулись с тем, что версии разошлись, самым надежным способом будет восстановление из копии. Разберем алгоритм правильных действий:

  1. Загрузим базу из файла резервной копии (формат .dt), созданного до начала неудачного обновления.
  2. Проверим текущую версию в двух местах: «О программе» и «Настройка поддержки». Они должны совпадать.
  3. Посмотрим список доступных обновлений в каталоге шаблонов. Если мы находимся на версии 3.1.17.138, нам сначала нужно найти и установить обновление до 3.1.18.46.
  4. Запускаем поиск обновлений через меню «Поддержка» — «Обновить конфигурацию». Указываем путь к папке tmplts.
  5. После того как система найдет обновление, в окне «Сравнение/Объединение» обязательно проверяем наличие галочек и нажимаем «Выполнить».
  6. Принимаем изменения в конфигурации базы данных (нажимаем «Да» в диалоговом окне после нажатия F7).
  7. Только после успешного завершения первого этапа переходим к обновлению до следующей версии (в нашем примере — 3.1.18.82).

Метод исправления без отката (для опытных пользователей)

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

Рассмотрим шаги этого метода:

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

Настройка поиска обновлений и очистка кэша

Иногда конфигуратор не видит файлы обновлений из-за неверных путей поиска. Разберем, как это исправить. В окне «Обновление конфигурации» нажмите кнопку «Далее» до этапа выбора области поиска. Нажмите кнопку «Настройка». Здесь должен быть указан путь к локальному репозиторию шаблонов. По умолчанию это:

C:\Users\[ИмяПользователя]\AppData\Roaming\1C\1Cv8\tmplts

Если папка пуста или путь отличается, скачанные обновления не будут обнаружены. Также полезно проанализировать состояние локального кэша. Для этого можно удалить папки настроек пользователя 1С, расположенные по пути %LOCALAPPDATA%\1C\1Cv8 и %APPDATA%\1C\1Cv8. Это заставит конфигуратор заново просканировать все пути и обновить списки доступных релизов.

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

← На главную