При штатной процедуре обновления конфигурации через конфигуратор специалисты нередко сталкиваются с ситуацией, когда мастер обновления выдает системное предупреждение: «Данный файл не содержит доступных обновлений». При этом в окне со списком совместимых версий текущий номер релиза базы явно указан. Попытки использовать более свежие файлы обновлений (.cfu) или полные конфигурации поставки (.cf) приводят к точно такому же сообщению.
Проанализируем природу этой ошибки, выясним, почему стандартные действия не дают результата, и разберем по шагам проверенную последовательность действий для восстановления корректной поддержки конфигурации.
Чтобы понять причину сбоя, рассмотрим внутренний механизм контроля версий платформы «1С:Предприятие». При запуске обновления через меню Конфигурация → Поддержка → Обновить конфигурацию платформа сверяет файл поставки вовсе не с номером версии в окне «О программе» и не со свойствами корневого объекта основной конфигурации.
Платформа выполняет проверку по специальной скрытой структуре данных — конфигурации поставщика, которая хранится в служебных таблицах информационной базы. Именно на ее основе формируются правила сравнения и рассчитываются бинарные дифференциалы обновлений.
К рассинхронизации обычно приводят следующие факторы:
Имя и Поставщик в корне конфигурации. Если франчайзи или прошлый разработчик правил свойства корня либо установил релиз смежной ветки (например, КОРП вместо ПРОФ или базовую вместо ПРОФ), платформа заблокирует применение файла.Config и ConfigDumpInfo могут возникнуть коллизии.Перед любыми манипуляциями с метаданными и правилами поддержки обязательно создадим полную копию информационной базы. Все дальнейшие действия рекомендуется сначала протестировать на тестовой копии.
.dt в надежное место. Если база данных работает в клиент-серверном варианте, создадим резервную копию средствами СУБД (SQL dump).Выясним точный номер версии конфигурации, зафиксированный в настройках поддержки. Для этого перейдем в меню Конфигурация → Поддержка → Настройка поддержки и посмотрим на поле «Версия конфигурации» напротив поставщика «Фирма 1С».
Критически важно подготовить эталонный файл конфигурации (.cf) в точности той же версии, которая сейчас указана в настройках поддержки (или реальной версии базы, если структура уже была частично перенесена):
.cf.Теперь восстановим корректную конфигурацию поставщика в проблемной базе. Разберем по шагам правильный алгоритм:
.cf того же релиза.В результате этой операции структура основной конфигурации останется нетронутой, а конфигурация поставщика полностью перезапишется эталонным слепком нужного релиза.
Если основная конфигурация ранее уже была обновлена до более свежего релиза, а конфигурация поставщика отстала, обновим ее без затирания объектов базы:
.cf следующего или целевого релиза. Теперь платформа успешно примет файл, так как исходная конфигурация поставщика совпадает по требованиям обновления.Если после выполнения описанной процедуры ошибка сохраняется, обратим внимание на следующие нюансы:
%LOCALAPPDATA%\1C\1cv8 и %APPDATA%\1C\1cv8 либо удалим базу из списка запуска 1С и добавим ее заново под другим наименованием.UpdInfo.txt из архива обновления..cfu представляет собой разностный бинарный патч, крайне чувствительный к состоянию метаданных. При любых проблемах с версионностью надежнее использовать полные файлы поставки конфигурации .cf.