Переход на версию 1С:ERP 2.5.12 (а также соответствующие версии Комплексной автоматизации 2.5.12 и Управления торговлей 11.5.12) представляет собой не просто очередное минорное обновление, а серьезный шаг, связанный с глубокими архитектурными изменениями. В этой статье мы подробно разберем, с какими трудностями могут столкнуться технические специалисты, особенно если в системе присутствуют значительные доработки, нетиповые документы и кастомные механизмы формирования движений по регистрам.
Первое, на что стоит обратить пристальное внимание при анализе новой версии, — это масштабная ревизия имен объектов. Программный продукт проходит через процесс унификации, что влечет за собой переименование даже базовых документов. Рассмотрим конкретный пример: популярный документ ВнутреннееПотреблениеТоваров был переименован во ВнутреннееПотребление.
Проанализируем последствия такого решения для нетиповой конфигурации:
Документы.ВнутреннееПотреблениеТоваров, такой код перестанет работать.ТипЗнч(Ссылка) = Тип("ДокументСсылка.ВнутреннееПотреблениеТоваров") также станут невалидными.Выясним причину: такие изменения затронули не только само имя документа, но и связанные с ним табличные части, роли доступа и общие модули. Это «меньшее из зол», как отмечают участники обсуждения, однако объем механической работы по исправлению кода может быть колоссальным.
Один из самых острых вопросов при обновлении — сохранение корректности движений, которые делают нетиповые (самописные) документы в типовых регистрах. Разберем ситуацию по шагам:
Проблема обработчиков обновления: Стандартные обработчики обновления 1С (процедуры, запускаемые при первом старте базы после обновления конфигурации) «знают» только о типовых объектах. Если структура типового регистра изменилась (добавились новые измерения, ресурсы или обязательные реквизиты), система автоматически обновит движения типовых документов. Однако движения ваших нетиповых документов затронуты не будут.
Рассмотрим пример кода, который может потребоваться адаптировать, если ваш документ делает записи в регистр ВыручкаИСебестоимостьПродаж:
// Старый вариант формирования движений в нетиповом документе
Движение = Движения.ВыручкаИСебестоимостьПродаж.Добавить();
Движение.Период = Дата;
Движение.Организация = Организация;
// В 2.5.12 могут появиться новые обязательные измерения для учета по ФСБУ
// Если их не заполнить, закрытие месяца выдаст ошибку
Движение.НовоеОбязательноеИзмерение = Значение;
Если структура регистра изменилась, вам придется самостоятельно дописывать код в модулях проведения ваших документов. В противном случае процедура Закрытия месяца может работать некорректно или выдавать ошибки контроля целостности данных.
Версия 2.5.12 продолжает развитие учета затрат. Посмотрим на наиболее значимые изменения в производстве:
Проанализируем ситуацию: если ваши доработки связаны с распределением затрат или кастомными отчетами по себестоимости, их придется серьезно пересматривать из-за изменения структуры хранения данных о партиях и затратах.
Одной из главных причин, почему бизнес будет настаивать на переходе, является полноценная поддержка новых стандартов бухгалтерского учета. В частности, внедрена работа с ФСБУ 14/2022 «Нематериальные активы».
Разберем подробнее, что это значит для разработчика:
При планировании перехода важно учитывать системные требования. Рассмотрим техническую составляющую:
8.3.21 или 8.3.22. Работа на более старых версиях может привести к непредсказуемым ошибкам в фоновых заданиях.Чтобы минимизировать риски, рекомендуем следовать следующему алгоритму:
Шаг 1. Глобальный поиск ссылок. Перед обновлением выполните поиск ссылок на объекты, которые подверглись переименованию. Используйте инструменты разработчика для поиска вхождения строк (имен метаданных) во всех модулях и запросах.
Шаг 2. Анализ отложенных обработчиков. Учтите, что в 2.5.12 очень много «тяжелых» отложенных обработчиков обновления. После первого запуска конфигурации в пользовательском режиме данные в регистрах могут быть временно неактуальны до завершения всех фоновых процедур.
Шаг 3. Проверка закрытия месяца. Обязательно проведите тестовое закрытие месяца на копии базы. Большинство ошибок, связанных с некорректным заполнением новых измерений регистров в нетиповых документах, «выплывают» именно на этом этапе.
Шаг 4. Ревизия маркировки и ГИС. Если ваши кастомные процессы затрагивают продажу маркированного товара, проверьте работу с системами Честный ЗНАК, ЕГАИС или ФГИС Зерно, так как форматы обмена в 2.5.12 существенно обновлены.
Подводя итог, отметим, что переход с 2.5.8 на 2.5.12 — это полноценный проект по рефакторингу. Основное внимание следует уделить не только техническому «накатыванию» релиза, но и тщательному тестированию финансовых результатов и корректности формирования движений в измененных регистрах.