Размыкая круг: изменение логики проверки заполнения обязательных реквизитов при обновлении «1С:ERP УХ» на 3.2.8

16.04.26

База данных - Обновление 1С

Проект обновления «1С:ERP Управление холдингом» с 3.2.1 на 3.2.8 принёс задачку: логика проверки заполнения обязательных реквизитов «переехала» с момента проведения на этап первичной записи документа.

В нашем случае для проекта обновления «1С:ERP УХ» 3.2.1.83 → 3.2.8.9 со сложными интеграционными цепочками — это обернулось невозможностью записи документов ВерсияСоглашенияКредит: система требовала наличия данных, которые физически не могут появиться в документе до момента его фиксации в ИБ.
 

Для заполнения реквизита — документ должен быть записан, для записи документа — иметь заполненный реквизит

В конфигурации «1С:ERP УХ» клиента в документ ВерсияСоглашенияКредит был добавлен обязательный реквизит, необходимый для корректного проведения. Исторически сложилась следующая схема работы:

  1. Пользователь создает и записывает документ, реквизит не заполнен.
  2. Выполняется автоматизированный обмен данными с внешней системой.
  3. В процессе обмена добавленный реквизит заполняется программно.
  4. Только после этого документ становится доступен для проведения.

Но после обновления на релиз 3.2.8.9 запись документа стала невозможна. Система требовала заполнения реквизита уже на этапе записи, создавая «замкнутый круг»: для заполнения реквизита через обмен документ должен быть в базе, то есть записан, но записать его нельзя из-за отсутствия этого реквизита.

В ходе отладки было установлено, что в старом релизе 3.2.1.83 процедура ОбработкаПроверкиЗаполненияНаСервере в модуле формы документа вызывалась исключительно при проведении. В новом релизе проверка сместилась на этап записи.

Причиной стало изменение в общем модуле ДоговорыКонтрагентовФормыУХКлиент. В метод ПередЗаписьюВерсииСоглашения разработчиками вендора был добавлен следующий код:
 



 

Вызов Форма. ПроверитьЗаполнение() инициирует проверку массива проверяемых реквизитов непосредственно перед фиксацией записи в ИБ. Поскольку добавленный реквизит присутствовал в этом массиве, так как он обязателен для проведения, запись блокировалась.
 

«Размыкая круг» с &ИзменениеИКонтроль

Поскольку реквизит должен оставаться обязательным для проведения, удаление его из состава ПроверяемыеРеквизиты недопустимо. Решением стала адаптация типового кода через расширение с использованием аннотации &ИзменениеИКонтроль.

Алгоритм решения заключался в проверке режима записи документа. Если инициирована простая запись, не проведение, принудительный вызов Форма.ПроверитьЗаполнение() должен игнорироваться.

Добавление проверки режима записи позволило восстановить последовательность заполнения документа.

Вероятно, изменение типового поведения в новых релизах «1С: ERP УХ» в сторону ужесточения проверок при записи — это осознанный тренд вендора на повышение качества данных «в моменте».

Однако при наличии сложных интеграционных цепочек, где объект заполняется в процессе обмена, такие изменения требуют оперативной адаптации. Использование &ИзменениеИКонтроль в данном случае является наиболее безопасным методом, так как позволяет быстро отследить дальнейшие изменения этого метода со стороны вендора и, при необходимости, например, если клиент пересмотрит последовательность заполнения документа, легко откатиться к типовой логике.

Вступайте в нашу телеграмм-группу Инфостарт

обновление 1с 1С:ERP Управление холдингом 1С: ERP УХ

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Обновление 1С Программист 1С 8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

В данной статье рассмотрена ошибка, с которой мы столкнулись после обновления «1С:ERP Управление предприятием» с релиза 2.5.7 на релиз 2.5.22. Для модификации операций закрытия месяца у клиента было отдельное расширение, в котором были модифицированные копии типовых методов.

27.05.2026    1111    1c-izh    14    

9

Перенос данных 1C Обновление 1С Системный администратор Программист 1С 8.3 1С:Управление торговлей 11 Россия Абонемент ($m)

Рассматривается, при каких условиях и как отключить повторный запуск обработчиков обновления в центральном узле распределенной информационной базе после обмена сообщением с обновленным узлом.

1 стартмани

07.05.2026    473    0    gzharkoj    0    

2

Обновление 1С Программист 1С 8.3 1С:ERP Управление предприятием 2 Отраслевые Сельское хозяйство и рыболовство Бесплатно (free)

В одном из наших проектов сложного обновления с «1С:ERP 2.5« присутствовал интегрированный модуль «1С:Птицеводство» с неопределенным релизом и накопленными дефектами предыдущих слияний. Прямое обновление было нецелесообразно из-за рисков некорректной реструктуризации. В статье описан метод идентификации версии через анализ метаданных и алгоритм удаления неактуальных объектов перед финальным переходом.

30.04.2026    560    1c-izh    0    

4

Обновление 1С Программист 1С 8.3 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1C:ERP Бесплатно (free)

В ходе тестового обновления нетиповой конфигурации «1С:ERP» с версии 2.5.7.201 на 2.5.22.129 после завершения всех регламентных процедур были зафиксированы массовые отрицательные остатки по складам.

17.04.2026    822    1c-izh    1    

5

Обновление 1С Программист 1С 8.3 Россия Абонемент ($m)

Если в расширение скопирована форма из расширяемой конфигурации, в которой форма была изменена в обновляемом релизе, то в расширении эту форму нужно обновить. Для поиска таких форм предназначена предлагаемая обработка.

1 стартмани

09.04.2026    654    5    NAlex    0    

2

Обновление 1С Перенос данных 1C Программист 1С 8.3 1С:Документооборот 1С:ERP Управление предприятием 2 Бесплатно (free)

Однажды к нам на проект сложного обновления пришла конфигурация «1С: Документооборот КОРП», которую требовалось обновить в технологическое окно 1 час. И мы обновили базу так, как это делают в подобных случаях с ERP — используя механизм «Обновление через копию».

06.04.2026    3912    1c-izh    9    

6

Обновление 1С Программист Бесплатно (free)

Рассматриваем типичные проблемы обновления 1С: ручную рутину, ошибки при релизах и перегрузку команды. Учимся автоматизировать обновления, работу с доработанными конфигурациями и процессы групповой разработки с помощью инструмента «Обновлятор». Разбираемся, как выстроить безопасный и управляемый процесс доставки изменений – от проверки релизов до автоматического обновления рабочих баз. В результате команда освобождается от рутинных задач и может сосредоточиться на развитии системы.

01.04.2026    1789    vladimir-89    0    

6

Нейросети Обновление 1С Программист 1С 8.3 1С:Бухгалтерия 3.0 Россия Абонемент ($m)

Внешняя обработка для автоматизации обновления расширений конфигураций 1С с помощью нейросетей.

1 стартмани

30.03.2026    1159    7    erni    6    

4
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. 1c-izh 133 16.04.26 10:24 Сейчас в теме
Алгоритм решения заключался в проверке режима записи документа. Если инициирована простая запись, не проведение, принудительный вызов Форма.ПроверитьЗаполнение() должен игнорироваться.Алгоритм решения заключался в проверке режима записи документа. Если инициирована простая запись, не проведение, принудительный вызов Форма.ПроверитьЗаполнение() должен игнорироваться.
Прикрепленные файлы:
2. SemandCheb 1 16.04.26 16:29 Сейчас в теме
Добавьте еще хештег "1С:Управление холдингом 3.2"
user1805342; +1 Ответить
3. eashabalin 03.06.26 17:12 Сейчас в теме
где объект заполняется в процессе обмена


через форму и команды записи? притянуто за уши. Но да, тоже пришлось спотыкнуться через это нововведение.

и ключевое не смог придумать ответа на вопрос - зачем?

Проведение, запись проведенного - платформа выполняет проверку заполнения документа.
Отмена проведения - не выполняет.

Здесь же, принудительная проверка при записи нового или модифицированного (после чего платформа так же выполнит проверку).

(вдруг кто скажет "зачем", что это очевидно зачем, но я уловить пока так и не смог).
Для отправки сообщения требуется регистрация/авторизация