В процессе эксплуатации и обновления информационных баз «1С:Предприятие 8.3» технические специалисты нередко сталкиваются с ситуацией, когда штатный процесс обновления прерывается или завершается некорректно. Это приводит к так называемому «рассинхрону»: основная конфигурация рапортует об одном релизе, а конфигурация поставщика остается на предыдущем или вовсе повреждается. Разберем детально, как диагностировать и устранить эти проблемы, основываясь на практическом опыте и особенностях работы платформы.
Прежде чем приступать к активным действиям, проанализируем ситуацию. Часто симптомы проявляются следующим образом: в окне «О программе» и в свойствах конфигурации указан актуальный номер релиза (например, 3.0.9.163), но при попытке сравнения основной конфигурации с конфигурацией поставщика система показывает старую версию (например, 3.0.8.109). Это явный признак того, что заголовок конфигурации обновился, а фактические данные в системных таблицах базы данных остались прежними. В таких случаях бывает крайне полезно провести анализ и поиск «битых» запросов, которые могли возникнуть из-за обращения к несуществующим в текущем релизе метаданным.
Рассмотрим основные причины, которые могут привести к такому состоянию:
8.3.22.ххх).Если конфигурация поставщика повреждена, самый надежный способ — «подсунуть» системе эталонный файл конфигурации (.cf) того же релиза, который должен быть установлен. Разберем этот процесс по шагам:
.cfu, а именно полную конфигурацию .cf)..dt)..cf. Система предложит поставить конфигурацию на поддержку — соглашаемся.Проанализируем результат: после выполнения этих действий в окне «Настройка поддержки» должна отобразиться корректная версия поставщика, соответствующая основной конфигурации.
Иногда при попытке последующего обновления на более новый релиз возникает критическая ошибка Нарушение целостности конфигурации. Это означает, что в системных таблицах Config или ConfigSave присутствуют логические противоречия или дублирующиеся записи. Рассмотрим, как с этим бороться.
Выясним причину: часто это связано с агрессивным кэшированием платформы. Обычной очистки папок в %AppData% может быть недостаточно, так как платформа создает временные файлы в директориях профиля пользователя Windows. Для серверных баз эффективным решением станет автоматическая очистка серверного кэша с помощью скрипта, что позволяет гарантированно удалить проблемные сеансовые данные.
Посмотрим на программные и системные способы решения:
chdbfl.exe (для файловых баз). Хотя она чаще проверяет физическую структуру, иногда она помогает исправить ошибки в таблицах индексов.Для глубокого понимания процесса разберем, как 1С хранит данные конфигурации. Конфигурация поставщика хранится в базе данных отдельно от основной конфигурации. Когда мы нажимаем «Обновить», платформа выполняет трехстороннее сравнение: Старая конфигурация поставщика — Основная конфигурация — Новая конфигурация поставщика.
Если в этой цепочке одно звено (Старая конфигурация поставщика) повреждено или имеет неверную версию, алгоритм обновления заходит в тупик. Именно поэтому просто «Загрузить конфигурацию» (через .cf) в основную базу не всегда помогает восстановить поддержку. После подобных манипуляций часто требуется поиск и замена битых ссылок документов, которые могут возникнуть из-за некорректного сопоставления объектов метаданных.
Проанализируем ситуацию с дублями объектов. Если вы ошибочно сняли базу с поддержки, а затем поставили обратно через объединение, платформа может потерять связь между объектами по их внутренним UUID. Чтобы этого избежать, всегда старайтесь восстанавливать поддержку через полный CF того же релиза, который уже установлен в базе, не меняя структуру основной конфигурации.
Представим ситуацию: база УНФ 3.0.9.163, обновление не идет из-за ошибки целостности. Рассмотрим последовательность действий эксперта:
1. Выгрузка базы в .dt.
2. Создание пустой папки для новой базы.
3. Загрузка .dt в новую папку (полная очистка локального кэша).
4. Проверка через ТиИ (только логическая целостность).
5. Если ошибка сохраняется — смена версии платформы на более стабильную (например, откат с 8.3.22 на 8.3.21).
6. Запуск конфигуратора от имени нового пользователя Windows.
В ряде случаев, как показала практика, именно комбинация «Новый пользователь ОС + Другой релиз платформы» позволяет обойти ошибки реструктуризации и успешно завершить обновление, которое ранее «вылетало» с нарушением целостности.
Для минимизации рисков при обновлении доработанных конфигураций рекомендуем придерживаться следующих правил:
Рассмотренные методы позволяют восстановить работоспособность базы даже в самых сложных случаях, сохраняя данные пользователей и внесенные ранее программные изменения.