При обновлении конфигурации «1С:Управление Торговлей» (особенно при переходе с редакции 11.4 на 11.5) пользователи часто сталкиваются с блокирующими ошибками, которые не позволяют завершить процесс реструктуризации базы данных. Наиболее распространенные из них касаются нарушения уникальности записей в служебных регистрах и конфликтов имен объектов метаданных.
В этой статье мы подробно разберем, почему возникают эти ошибки, и рассмотрим пошаговые алгоритмы их устранения, даже если у вас установлена базовая версия программы, где возможности использования скриптов ограничены.
Прежде чем приступать к исправлению, давайте разберемся в природе этих сбоев. Как правило, корень проблемы кроется в длительном отсутствии обновлений и попытке "перепрыгнуть" через несколько релизов без запуска режима «1С:Предприятие».
БезопасноеХранилищеДанных. Сообщение «Записи регистра сведений стали неуникальными» означает, что в новой версии конфигурации изменилась структура этого регистра (состав измерений), а в старой версии в нем накопились дублирующие записи (токены авторизации, пароли сервисов и т.д.), которые в новой структуре стать уникальными не могут.Общаякартинка.Информация. Сообщение «Имя не уникально!» при обновлении указывает на конфликт идентификаторов (UUID) объектов метаданных. Разработчики могли переименовать или заменить стандартную иконку, и при объединении конфигураций платформа видит два объекта с одинаковым именем, но разными внутренними ID.Поскольку этот регистр содержит временные данные (токены сессий сервисов, таких как 1С-ЭДО, Маркетплейсы, Честный знак), самым безопасным и действенным способом решения является полная очистка записей этого регистра. Сами настройки подключения не пропадут, но после обновления может потребоваться повторная авторизация в подключенных сервисах.
Рассмотрим несколько способов очистки, от простых к более сложным.
Если у вас есть доступ к запуску программы в пользовательском режиме (до начала обновления в конфигураторе), попробуем воспользоваться встроенными механизмами.
Этот способ наиболее надежен, так как позволяет гарантированно удалить дубли. Для этого нам понадобятся «Функции для технического специалиста» (ранее известные как «Все функции»).
Выполним следующие шаги:
БезопасноеХранилищеДанных и откроем его.После очистки закройте предприятие и попробуйте запустить обновление в Конфигураторе снова.
Если зайти в пользовательский режим невозможно (например, база уже частично повреждена неудачным обновлением) или у вас Базовая версия, где сложно подключить внешние обработки, воспользуемся инструментом администратора.
После завершения процедуры попробуйте продолжить обновление.
Эта ошибка возникает на этапе сравнения конфигураций, когда вы загружаете файл обновления. Проблема решается исключением проблемного объекта из процесса обновления. Это безопасно, так как картинка является элементом интерфейса и её пропуск не повлияет на учетные данные.
Разберем алгоритм действий:
Информация. Скорее всего, она будет выделена жирным или отмечена как измененная.Информация. Это скажет платформе: "Не трогай этот объект, оставь как есть".Таким образом, мы обходим конфликт имен, оставляя старую версию картинки (или ту, которая уже есть в базе), что для работы системы не критично.
Чтобы избежать подобных проблем в будущем, давайте сформулируем золотое правило обновления конфигураций, особенно при переходе между редакциями (например, 11.4 -> 11.5).
Никогда не устанавливайте несколько обновлений подряд только в Конфигураторе!
Процесс должен выглядеть так:
Именно запуск в режиме Предприятия запускает обработчики, которые переносят данные из старых регистров (вроде старого формата безопасного хранилища) в новые. Если этот шаг пропустить, данные останутся в старом формате, а новая структура базы данных (следующего обновления) не сможет их принять, вызывая ошибку уникальности.