При обновлении сложных и кастомизированных систем, таких как 1С:Управление производственным предприятием 1.3 (УПП), специалисты часто сталкиваются с парадоксальной ситуацией. После выполнения всех процедур обновления в Конфигураторе через файл .cfu или .cf, система сообщает об успешном завершении, однако в окне «О программе» номер релиза остается прежним (например, 1.3.121.1), хотя «Настройка поддержки» показывает, что конфигурация поставщика уже обновлена до следующего актуального релиза (например, 1.3.122.3).
Давайте подробно разберем, почему возникает этот технический рассинхрон и как правильно привести систему в порядок, чтобы не потерять возможность автоматического обновления в будущем.
Для начала проанализируем механизм того, как платформа 1С понимает, какой номер версии присвоить конфигурации. Номер версии — это не просто текст, это свойство корневого объекта метаданных. Когда мы запускаем процедуру сравнения и объединения, платформа сопоставляет текущую версию основной конфигурации с версией поставщика.
Рассмотрим основные причины сбоя:
Версия остается старым.Config и ConfigSave в SQL-базе обновляются, но клиентское приложение продолжает «видеть» старые значения из локального кэша.Рассмотрим по шагам наиболее эффективный способ синхронизации основной конфигурации с конфигурацией поставщика. Если вы уже обновили поддержку, но версия базы не изменилась, выполните следующие действия:
После этого обязательно нажмите F7 (Обновить конфигурацию базы данных) и запустите программу в режиме «Предприятие» для выполнения обработок обновления данных.
Если манипуляции в Конфигураторе не помогают, проанализируем ситуацию с точки зрения платформенных механизмов. Часто проблема решается простым удалением базы из списка и повторным добавлением. Разберем этот процесс подробнее:
%AppData%\1C\1Cv8\ и %LocalAppData%\1C\1Cv8\).Как отметил автор вопроса в одном из сообщений, создание новой базы через файл выгрузки помогает решить проблему. Проанализируем, почему это работает. При загрузке файла .dt платформа фактически пересоздает структуру таблиц в СУБД с нуля. Это устраняет любые логические несоответствия в системных таблицах Config.
Порядок действий:
Администрирование — Выгрузить информационную базу...)..dt.Если цепочка обновлений .cfu зациклилась или «не видит» следующие релизы, рекомендуется использовать полный файл конфигурации поставщика. Рассмотрим, как это сделать правильно, сохраняя ваши доработки:
Выясним, какой релиз сейчас реально установлен в конфигурации поставщика. Допустим, это 1.3.122.3. Возьмите чистый файл 1cv8.cf этого же релиза и выполните сравнение:
.cf нужного релиза.Проанализируем еще один тонкий момент. В конфигурации УПП 1.3 версии 1.3.121 и выше часто менялись требования к режиму совместимости платформы. Если в вашей основной конфигурации режим совместимости зафиксирован вручную (например, «Версия 8.2.13»), а обновление требует «Версия 8.3.14», платформа может блокировать запись обновленных свойств конфигурации.
Проверьте свойство: Конфигурация (корень) -> Свойства -> Совместимость -> Режим совместимости. Оно должно соответствовать тому, которое установлено в конфигурации поставщика для данного релиза.
После проведения всех процедур необходимо убедиться, что система «увидела» изменения. Для этого выполните следующий код в консоли запросов или проверьте значения в режиме «Предприятие»:
// Пример проверки версии через встроенный язык
Сообщить(Метаданные.Версия);
Если номер версии теперь совпадает с версией поставщика, значит, проблема решена, и при следующем обновлении система корректно предложит вам список доступных обновлений .cfu.
Подведем итог: основная стратегия решения заключается в принудительной синхронизации корневого объекта метаданных. Не бойтесь снимать базу с поддержки и ставить обратно (через «Сравнение/объединение» с .cf файлом поставщика), если стандартный механизм обновления «зациклился». Главное — всегда иметь актуальную резервную копию перед началом подобных манипуляций.