При обновлении конфигурации 1С:Бухгалтерия предприятия 3.0 (особенно это касается релизов ветки 3.0.64 и выше) администраторы и программисты часто сталкиваются с парадоксальной ситуацией. Конфигурация является полностью типовой, находится на поддержке и закрыта на «замок», однако при попытке применить обновление система выдает критическую ошибку: «Имеются ссылки на удаляемый объект конфигурации». Казалось бы, в типовой конфигурации таких несоответствий быть не должно, ведь разработчики фирмы «1С» тщательно проверяют релизы. Разберем подробно, почему возникает эта проблема и как ее эффективно решить несколькими способами.
Прежде чем переходить к активным действиям, проанализируем ситуацию. Основная причина кроется в рассинхронизации основной конфигурации и конфигурации поставщика. Это может произойти по нескольким причинам:
Config базы данных могли остаться записи о метаданных, которые физически отсутствуют, но числятся в связях.Рассмотрим пошагово методы решения этой проблемы, начиная от самых простых и заканчивая радикальными.
Этот метод считается наиболее рациональным, если стандартное обновление через .cfu файл не проходит. Мы принудительно помогаем системе игнорировать ошибочные ссылки. Разберем алгоритм действий:
Конфигурация — Поддержка — Настройка поддержки..cf) нужного релиза.F7), нам необходимо вернуть базу на полную поддержку.Конфигурация — Загрузить конфигурацию из файла и выбираем тот же самый чистый .cf файл. Это действие затрет все наши ручные изменения и вернет «замки» на все объекты метаданных, обеспечив полную идентичность конфигурации с поставщиком.Многие пользователи привыкли обновляться через файлы обновлений (.cfu). Однако в сложных случаях лучше использовать полный файл конфигурации (.cf). Посмотрим, как это сделать правильно:
Вместо того чтобы выбирать «Поиск доступных обновлений», выберите пункт «Выбор файла обновления» и укажите путь к полному .cf файлу целевого релиза. Полный файл содержит всю структуру метаданных целиком, что позволяет механизму сравнения более корректно сопоставить идентификаторы (GUID) объектов. Если это не помогает, используйте функцию Загрузить конфигурацию из файла. Помните, что «Загрузка» — это деструктивная операция для измененных конфигураций, но для полностью типовых баз это самый быстрый способ привести структуру в идеальный порядок.
Проанализируем ситуацию с расширениями. Часто программисты забывают, что расширение может использовать объект, который 1С решила удалить в новом релизе. Выясним, есть ли в базе активные расширения:
Перейдите в Конфигурация — Расширения конфигурации. Если список не пуст, попробуйте временно отключить все расширения (снять флаг «Активно») или полностью удалить их (предварительно сохранив их в файлы .cfe). После этого повторите попытку обновления.
Также немаловажным фактором является кэш. Для клиент-серверного варианта рекомендуется выполнить следующие действия:
snccntx и папок с идентификаторами баз внутри reg_1541.Хотя в обсуждении на форуме упоминалось, что ТиИ не всегда помогает, пренебрегать им не стоит. Важно запустить его с правильными настройками. Рассмотрим необходимые параметры:
В поле «При наличии ссылок на несуществующие объекты» выберите «Очищать ссылки». Это может помочь удалить те самые «призрачные» связи, которые блокируют обновление.
Если структура метаданных повреждена настолько сильно, что ни один из методов выше не помогает (что бывает крайне редко с типовыми конфигурациями), остается радикальный путь. Разберем его:
ВыгрузкаЗагрузкаДанныхXML.epf (её можно найти на диске ИТС).Важный нюанс: Этот метод может занять длительное время, если данных много (например, за 8 лет учета). Однако на выходе вы получите гарантированно «здоровую» базу без лишнего мусора в системных таблицах конфигурации.
Подводя итог, можно сказать, что наиболее эффективным и быстрым способом решения проблемы «ссылок на удаляемые объекты» является комбинированный метод: снятие с поддержки — обновление с пропуском проблемных объектов — возврат на поддержку через загрузку чистого .cf.
Чтобы избежать подобных проблем в будущем, рекомендуем:
Администрирование — Обслуживание — Результаты обновления программы).Рассмотренные подходы позволяют сохранить целостность данных и вернуть информационную базу в штатный режим работы, обеспечив возможность дальнейшего беспрепятственного обновления.