Почему при обновлении конфигурации 1С удаляются дописанные процедуры и как это предотвратить?

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Многие разработчики сталкиваются с ситуацией, когда при обновлении типовой конфигурации 1С система автоматически помечает добавленные ими процедуры и функции на удаление. Это происходит из-за того, что механизм Сравнение и объединение пытается привести конфигурацию в строгое соответствие с новой поставкой, ошибочно интерпретируя уникальные доработки как ненужные элементы. Рассмотрим, как взять этот процесс под контроль.

Разбор причин автоматического удаления кода

Механизм сравнения в платформе 1С:Предприятие 8 использует трехстороннее сравнение. Он сопоставляет:

  1. Вашу текущую конфигурацию (с доработками).
  2. Старую конфигурацию поставщика (основа, на которой вы делали изменения).
  3. Новую конфигурацию поставщика (то, на что вы обновляетесь).

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

Пошаговая инструкция по настройке режима объединения

Чтобы доработки не затирались при каждом обновлении, необходимо изменить логику выбора действий для объектов. Разберем, как это сделать правильно:

Настройка через меню «Действия»

Не пытайтесь исправлять всё вручную, щелкая по каждой галочке. Это долго и чревато ошибками. Воспользуйтесь групповой установкой правил:

  1. В окне Сравнение, объединение перейдите в верхнее меню.
  2. Найдите пункт Действия.
  3. Выберите команду Установить режим для всех.
  4. В открывшемся диалоговом окне настройте приоритет. Вам нужно выбрать такой порядок, чтобы система понимала: ваши доработки имеют приоритет сохранения перед автоматической очисткой.
  5. Обязательно обратите внимание на настройки Порядок и Фильтр. Регулируя эти параметры, вы можете добиться того, что для процедур, отсутствующих в конфигурации поставщика, система не будет взводить флаг Удалить.

Использование «шестеренки» для точечной настройки

Если вам нужно управлять поведением конкретного модуля или формы, используйте инструмент Настройка (иконка с шестеренкой). В этом окне можно:

Рекомендации по безопасности процесса

Чтобы обновление проходило максимально безболезненно, следуйте этим советам:

1. Используйте расширения конфигурации. Это самый надежный способ избежать проблем с «затиранием» кода. Если процедура вынесена в Расширение конфигурации, при обновлении основной конфигурации 1С её код остается нетронутым.

2. Делайте резервные копии. Перед началом работы обязательно выгружайте dt-файл. Даже при правильной настройке объединения возможны конфликты логики, которые потребуют восстановления базы.

3. Проверяйте историю поддержки. Если конфигурация «слетела» с поддержки, механизм сравнения будет работать некорректно. Убедитесь, что связь со старой конфигурацией поставщика корректно определена в настройках поддержки.

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

← На главную