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

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

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

Основные этапы переноса изменений

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

1. Работа с расширениями конфигурации

Расширения являются наиболее безопасным способом доработки типовых решений, так как они не затрагивают основную конфигурацию напрямую. Чтобы перенести расширение:

  1. Откройте конфигуратор базы-разработчика.
  2. Перейдите в меню Конфигурация -> Расширения конфигурации.
  3. Выберите нужное расширение, откройте его Конфигурация и выберите Сохранить конфигурацию в файл.
  4. В рабочей базе перейдите в тот же раздел, создайте новое расширение с помощью кнопки «+» и загрузите сохраненный файл через Загрузить конфигурацию из файла.

2. Перенос изменений основной конфигурации

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

Важное предостережение: Метод Загрузить конфигурацию из файла полностью заменяет структуру метаданных в рабочей базе. Если вы сделаете это, все уникальные настройки или уже имеющиеся доработки в рабочей базе будут утрачены. Более того, при добавлении новых реквизитов через полную загрузку .cf вы не теряете данные самих документов или справочников, но можете столкнуться с проблемами совместимости релизов.

Для корректного переноса доработок используйте механизм Сравнить, объединить с конфигурацией из файла:

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

О чем важно помнить при обновлении структуры

Многие начинающие разработчики опасаются, что при добавлении реквизитов «пропадут данные». Важно понимать разницу: .cf файл содержит только структуру (описание таблиц, колонок, типов данных). Сами данные (значения реквизитов) хранятся в .1cd файле или SQL-базе. При добавлении реквизита 1С просто расширяет таблицу в базе данных, добавляя новую пустую колонку. Данные существующих объектов не удаляются.

Рекомендованный алгоритм действий

Чтобы избежать ошибок, работайте по следующей схеме:

  1. Создайте резервную копию рабочей базы (файл .dt).
  2. Разверните копию на тестовом сервере или локально.
  3. Проверьте релизы. Убедитесь, что конфигурации в обеих базах идентичны по номеру релиза. Если релизы отличаются, сначала обновите рабочую базу до версии разработчика стандартными средствами 1С.
  4. Выполните перенос на копии: сначала расширения, затем — через «Сравнение и объединение» — изменения основной конфигурации.
  5. Протестируйте функционал: проверьте проведение документов, формирование отчетов и работу обработок.
  6. Только после успешных тестов на копии повторяйте процедуру на рабочей базе.

Использование Сравнить, объединить с конфигурацией из файла позволяет сохранить полный контроль над процессом. Если вы заметили, что в базе разработчика были изменения, которые вам не нужны (например, старые отладочные реквизиты), вы просто не отмечаете их в списке объединения.

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

← На главную