Обновление такой сложной системы, как 1С:ERP Управление предприятием, особенно если она является отраслевым решением (например, от компании «Рарус») или содержит значительные доработки, — это всегда ответственный процесс. Зачастую в процессе сравнения и объединения конфигураций возникают критические ошибки, которые могут поставить в тупик начинающего специалиста. В этой статье мы подробно разберем, как реагировать на сообщения системы о блокирующих ссылках, почему нельзя бездумно использовать автоматические пометки обновления и как убедиться, что база после обновления сохранила свою работоспособность.
Ситуация, когда при обновлении конфигурации 1С выдает сообщение о наличии ссылок на удаляемые объекты, является типичной для баз, снятых с поддержки (находящихся на редактировании). Проанализируем, почему это происходит. Фирма «1С» в новых релизах часто оптимизирует структуру метаданных. Объекты, которые признаны устаревшими, сначала получают префикс Удалить, а спустя несколько релизов полностью вырезаются из конфигурации поставщика.
Если в вашей основной конфигурации есть добавленные вручную объекты (реквизиты, подписки на события, программный код в общих модулях), которые ссылаются на эти удаляемые элементы, система не сможет корректно завершить реструктуризацию. Рассмотрим наши действия в такой ситуации:
Ctrl+Shift+F). В поле поиска введем имя объекта, на который жалуется система.ПодпискиНаСобытия. Если ваша подписка привязана к типовому документу, который в новом релизе был удален или заменен, вам нужно либо перенастроить подписку на новый объект, либо удалить ее, если логика больше не требуется.Важно помнить: если вы используете отраслевое решение (например, ERP от Рарус), крайне не рекомендуется пытаться обновить его обычным дистрибутивом типовой ERP. Отраслевые решения имеют свою специфику и свои уникальные объекты. Первым делом стоит запросить актуальный релиз именно у разработчика отраслевого решения.
Рассмотрим ситуацию, когда при объединении конфигураций программист нажимает кнопку «Пометить все для обновления». На первый взгляд это кажется удобным, но для доработанной базы это действие может стать фатальным. Разберем риски:
Правильный алгоритм объединения выглядит так: мы должны использовать режим «Сравнить, объединить с конфигурацией из файла», но подходить к выбору объектов избирательно. Если объект является типовым и вами не менялся — обновляем полностью. Если же объект содержит ваши правки, необходимо вызвать контекстное меню и выбрать пункт «Показать различия в модулях», чтобы перенести новый типовой код вручную, сохранив свои наработки.
Предположим, обновление в Конфигураторе прошло успешно и база запустилась. Это только половина пути. Выясним, что необходимо проверить в первую очередь, чтобы избежать проблем в промышленной эксплуатации.
В современных версиях 1С:ERP основной объем данных реструктуризируется в пользовательском режиме. Перейдем в раздел НСИ и администрирование — Обслуживание — Обновление программы — Результаты обновления. Пока статус всех процедур не примет значение «Выполнено», работа пользователей в базе категорически запрещена. В этот момент система может переносить данные из старых регистров в новые, пересчитывать остатки или обновлять права доступа.
Обязательно запустим в Конфигураторе встроенную проверку: Конфигурация — Проверка конфигурации. Установим галочки «Проверка логической целостности» и «Поиск некорректных ссылок». Это поможет выявить ситуации, когда код ссылается на методы или объекты, которые были удалены, но не были замечены на этапе объединения.
Пример типичной ошибки в коде, которую нужно искать:
// Ошибка: обращение к удаленному объекту
Попытка
Результат = ОбщегоНазначения.УдалитьМетодКоторыйБольшеНеСуществует();
Исключение
ЗаписьЖурналаРегистрации("Ошибка обновления", УровеньЖурналаРегистрации.Ошибка,,, ОписаниеОшибки());
КонецПопытки;
Такие фрагменты необходимо заменять на вызовы актуальных методов из новых библиотек общего назначения (БСП).
Проанализируем журнал регистрации сразу после первого запуска. Отфильтруем события по уровню «Ошибка». Часто там можно обнаружить отказы фоновых заданий, связанных с заполнением новых констант или параметров учета.
Наконец, заключительным этапом является привлечение ключевых пользователей. Рекомендуется отдать копию обновленной базы бухгалтерам и менеджерам, чтобы они проверили:
Только после того, как все обработчики завершены, ошибки в журнале отсутствуют, а пользователи подтвердили корректность проведения документов, обновление можно считать успешным.