Как правильно обновлять нетиповую конфигурацию 1С?

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

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

Подготовка к обновлению

Прежде чем приступать к любым изменениям, выполните два критически важных действия:

  1. Создайте резервную копию рабочей базы. Без архива начинать процесс категорически запрещено.
  2. Создайте копию конфигурации (файл .cf) текущей рабочей базы. Это необходимо для того, чтобы всегда иметь возможность откатиться назад или проанализировать изменения в случае сбоя.

Алгоритм обновления через «базу для обновления»

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

  1. Установите шаблоны обновления новой версии конфигурации от поставщика.
  2. Разверните рабочую базу в тестовую среду.
  3. Выполните поддержку. Через меню Конфигурация -> Поддержка -> Обновить конфигурацию выберите файл поставки. Это позволит обновить конфигурацию поставщика, сохраняя при этом ваши внесенные изменения.
  4. Используйте фильтры. В окне сравнения и объединения обязательно установите фильтр Показывать только дважды измененные свойства. Это позволит сфокусироваться на объектах, которые изменили и вы, и разработчик 1С.
  5. Обработайте изменения. Внимательно изучите модули и формы. Если изменения касаются только типового функционала — принимайте обновления поставщика. Если изменения затронули ваш код — переносите свои доработки вручную.
  6. Проверьте права и интерфейсы. После объединения проконтролируйте корректность ролей и прав доступа.
  7. Обновите конфигурацию базы данных и проведите тщательное тестирование.
  8. Создайте файл конфигурации. После успешного тестирования выгрузите обновленную конфигурацию в файл .cf.
  9. Обновите рабочую базу. Используйте метод Загрузить конфигурацию из файла в рабочую базу, используя подготовленный на предыдущем шаге файл.

Как избежать проблем с кодом и формами

Одной из частых проблем является «абракадабра» или «задвоение реквизитов». Чтобы этого избежать, придерживайтесь следующих правил:

Профессиональное комментирование кода

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


// +++ [Дата] [ФИО]
// Ваш уникальный алгоритм
// --- [Дата] [ФИО]

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

Работа с дважды измененными объектами

При использовании окна сравнения объектов внимательно следите за пометками. Если вы видите, что удаленные типовые процедуры помечены как «добавленные» (по умолчанию они могут не иметь галочки), обязательно ставьте галочку, чтобы старый код корректно удалился.

Для объединения форм используйте следующую логику:

Использование режима «Сравнить, объединить»

В исключительных случаях, когда необходимо принудительное объединение, специалисты рекомендуют следующий порядок действий:

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

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

← На главную