Обновление доработанной типовой 1С без потери своих правок
Содержание
Измененную конфигурацию 1С обновляют в Конфигураторе через Конфигурация → Поддержка → Обновить конфигурацию, выбирая полный файл поставки .cf нового релиза. Программа сравнит три версии — старую типовую, вашу доработанную и новую типовую — и покажет, где ваши правки пересекаются с изменениями фирмы 1С. Эти места вы разбираете вручную, затем применяете результат и запускаете обновление структуры базы.
Частое заблуждение — что доработанную базу можно обновить «как обычно», через автоматическое обновление
в пользовательском режиме. Нельзя: автообновление работает только для конфигураций, которые не меняли или меняли без снятия с поддержки. Доработки при попытке «просто загрузить» новую типовую .cf пропадут бесследно. Порядок ниже одинаков для БП 3.0, ЗУП 3.1, УТ 11 и других типовых решений на платформе 8.3.
Что проверить в базе перед обновлением
Обновление измененной конфигурации начинается не с файла релиза, а с инвентаризации. Нужно знать три вещи: какая версия стоит, в каком режиме поддержки объекты и что именно вы меняли.
Версия и режим поддержки
Откройте Конфигуратор и зайдите в Конфигурация → Поддержка → Настройка поддержки. В окне видно:
- 📌 версию конфигурации поставщика — от неё зависит, с какого релиза можно обновляться;
- 📌 режим для корня конфигурации и отдельных объектов;
- 📌 включена ли вообще возможность изменения.
Режимов три, и от них зависит весь дальнейший путь:
| Режим объекта | Что это значит | Как обновляется |
|---|---|---|
| Объекты поставщика не редактируются | Объект типовой, правок нет | Заменяется новым без вопросов |
| Редактируется с сохранением поддержки | Правки есть, связь с поставщиком сохранена | Сравнение трёх версий, конфликты разбираются вручную |
| Снят с поддержки | Связь с поставщиком разорвана | Обновление поставщика объект не трогает, изменения переносите сами |
Если корень конфигурации снят с поддержки, команда «Обновить конфигурацию» не сработает. Такую базу обновляют через Конфигурация → Сравнить, объединить с конфигурацией из файла, а это сравнение двух версий вместо трёх и заметно больше ручной работы.
Список своих доработок
Перед обновлением выгрузите перечень изменений. Выполните Конфигурация → Сравнить конфигурации, слева выберите «Конфигурация поставщика», справа «Основная конфигурация». Получится список всех объектов, которые отличаются от типовых. Сохраните отчёт по сравнению в файл — после обновления по нему удобно проверять, что ничего не потерялось.
Отдельно сохраните конфигурацию поставщика: Конфигурация → Конфигурация поставщика → Сохранить в файл. Этот .cf пригодится, если обновление придётся откатывать или разбирать заново.
Резервная копия
Без резервной копии к обновлению доработанной базы не приступайте. Для файловой базы — Администрирование → Выгрузить информационную базу в файл .dt. Для клиент-серверной — дополнительно полная копия средствами СУБД. Плюс сохраните основную конфигурацию: Конфигурация → Сохранить конфигурацию в файл.
Если подключено хранилище
Когда база работает с хранилищем конфигурации, обновлять нужно через него. Захватите корень конфигурации рекурсивно, выполните обновление, проверьте результат и поместите изменения в хранилище. Иначе остальные разработчики получат конфликт при следующем обновлении из хранилища.
Какой файл обновления нужен: .cf или .cfu
Дистрибутив обновления скачивают из раздела обновлений портала 1С:ИТС. Это архив с программой установки setup.exe. Запуск устанавливает шаблоны в каталог %APPDATA%\1C\1cv8\tmplts — по умолчанию, если путь не меняли при установке.
В папке релиза лежат два файла:
- 📄
1cv8.cfu— файл обновления. Применяется только к определённым предыдущим версиям, список указан в описании релиза. - 📄
1cv8.cf— полная поставка конфигурации. Подходит для обновления доработанной базы.
Для измененной конфигурации берите .cf. С ним Конфигуратор получает полную новую типовую конфигурацию
и может корректно построить сравнение трёх версий.
Проверьте цепочку релизов
Перескакивать через несколько релизов можно не всегда. В файлах релиза есть описание порядка обновления с перечнем версий, с которых обновление поддерживается. Если ваша версия туда не входит, ставьте промежуточные релизы по очереди. Каждый шаг цепочки для доработанной базы — это отдельный проход сравнения и объединения.
При большом отставании выгоднее сначала дойти до релиза, на котором закончился крупный переход (например, смена версии БСП), а не идти мелкими шагами. Какие релизы ключевые, видно в описании «Новое в версии».
Как сравнить старую, свою и новую конфигурации
Запустите Конфигурация → Поддержка → Обновить конфигурацию, выберите «Выбор файла обновления» и укажите 1cv8.cf нового релиза. Конфигуратор покажет версию поставщика из файла и спросит, обновлять ли. После подтверждения откроется окно сравнения и объединения.
Как читать окно сравнения
В окне два столбца: основная конфигурация (ваша) и новая конфигурация поставщика. Для каждого объекта стоят пометки об изменениях:
- 🟢 изменён только поставщиком — новое приходит без конфликта;
- 🔵 изменён только вами — ваши правки остаются;
- 🔴 изменён и вами, и поставщиком — это «двойные изменения», их и нужно разбирать.
В фильтре окна включите отображение только дважды измененных свойств. Список сократится с тысяч объектов до десятков — именно с ними работа.
Что смотреть в первую очередь
- Общие модули и модули объектов, где вы правили процедуры.
- Формы документов и справочников с добавленными реквизитами и кнопками.
- Макеты печатных форм.
- Роли, если меняли права.
- Состав подсистем и командный интерфейс.
Объекты, которые поставщик удалил или переименовал
Отдельная ловушка — типовые объекты, которые в новом релизе убраны или переименованы. Если ваш код ссылается на такой реквизит, общий модуль или процедуру, сравнение конфликта не покажет: ваш модуль не менялся поставщиком. Ошибка всплывёт только при проверке конфигурации или при работе пользователя.
Поэтому после сравнения пройдитесь по своему списку доработок и найдите в них обращения к типовым объектам. Поиск по имени в новой конфигурации (Ctrl+Shift+F — глобальный поиск по модулям) быстро покажет, существует ли объект в релизе.
Объединение и разбор конфликтов
Для каждого объекта с двойными изменениями нужно выбрать режим объединения. Его задают флажком у объекта и через контекстное меню.
Режимы объединения
| Режим | Когда выбирать | Риск |
|---|---|---|
| Взять из новой конфигурации поставщика | Ваша правка больше не нужна, поставщик сделал то же | Ваша доработка пропадёт |
| Объединить с приоритетом основной конфигурации | Ваша логика важнее, правки поставщика нужны частично | Можно упустить исправление ошибки от 1С |
| Объединить с приоритетом новой конфигурации поставщика | Типовой код важнее, ваша правка вторична | Ваша вставка может перезаписаться |
| Не объединять (флажок снят) | Хотите оставить объект как есть | Не придут исправления поставщика |
Модули: объединение по процедурам
Для модуля откройте окно сравнения текста двойным щелчком. В нём видно процедуры, изменённые обеими сторонами. Для каждой процедуры можно выбрать, чей вариант взять, а при необходимости — отредактировать результат вручную.
Практический приём: свои вставки в типовой код отмечайте комментариями-маркерами вида // +ИмяРазработчика 2026-10-07 и // -ИмяРазработчика. При объединении такие блоки находятся поиском за секунды, а не по памяти.
// +Иванов доработка: контроль лимита
Если Объект.СуммаДокумента > ЛимитПоКонтрагенту Тогда
Отказ = Истина;
КонецЕсли;
// -Иванов
Формы
Формы объединяются хуже модулей. Если вы добавили на типовую форму поле или кнопку, а поставщик переделал её состав, проще взять форму поставщика и добавить свои элементы заново. Номера и порядок элементов после объединения проверяйте глазами: автоматика иногда ставит новый элемент не в ту группу.
Не нажимайте «Выполнить», пока не просмотрели все объекты с красной пометкой. После нажатия откатить объединение кнопкой нельзя — только восстановлением конфигурации из сохранённого файла.
Обновление конфигурации базы данных
После объединения в Конфигураторе изменилась только основная конфигурация. Чтобы изменения дошли до данных, выполните Конфигурация → Обновить конфигурацию базы данных (клавиша F7).
Для этого шага нужен монопольный доступ: все пользователи должны выйти из базы. Если меняется структура данных, программа покажет список изменений структуры — читайте его. Удаление реквизита в этом списке означает, что данные этого реквизита пропадут.
Перед обновлением структуры предупредите пользователей: их сеансы придётся завершить, иначе Конфигуратор не получит монопольный доступ. Для клиент-серверной базы делайте это в нерабочее время.
Первый запуск в режиме 1С:Предприятие
После F7 откройте базу в пользовательском режиме под администратором. Типовые конфигурации на БСП запустят обработчики обновления: перенос и пересчёт данных под новый релиз. Часть обработчиков выполняется сразу, часть — в фоне, отложенно.
Ход отложенной обработки смотрите в Администрирование → Обслуживание → Результаты обновления и дополнительная обработка данных. Пока она не завершена, некоторые отчёты могут показывать неполные данные.
Проверка на копии и перенос в рабочую базу
Обновлять измененную конфигурацию сразу в рабочей базе — лишний риск. Правильнее так:
- Разверните копию рабочей базы из свежего
.dt. - Проведите обновление на копии: сравнение, объединение,
F7, первый запуск. - Запишите, какие объекты конфликтовали и какой режим объединения вы выбрали для каждого.
- Проверьте ключевые сценарии.
- Повторите те же действия на рабочей базе в согласованное окно.
Что проверять на копии
Синтаксический контроль запускается через Конфигурация → Проверка конфигурации. Включите в настройках проверки логические проверки и поиск неиспользуемых процедур — так видны вызовы процедур, которые поставщик переименовал или удалил в новом релизе.
Если на копии всё сломалось
Восстановите копию из .dt и пройдите объединение заново, выбрав для проблемных объектов другой режим. Рабочая база при этом не пострадала — ради этого копия и нужна.
Как сократить работу при следующих обновлениях
Каждый релиз доработанной базы — это новый проход сравнения. Время на него растёт с числом правок в типовых объектах. Три приёма сокращают работу:
- 🧩 Расширения конфигурации
. Доступны с платформы 8.3.6. Новые реквизиты, формы, печатные формы и обработчики событий выносятся в расширение
.cfe, а основная конфигурация остаётся на полной поддержке и обновляется как типовая. - 🧩 Минимум правок в типовом коде. Если без правки модуля не обойтись, вставляйте вызов своей процедуры из отдельного общего модуля, а не пишите логику внутри типовой процедуры. Конфликт тогда занимает одну строку.
- 🧩 Новые объекты вместо изменённых. Свой справочник или документ, добавленный в конфигурацию, не конфликтует с поставщиком никогда.
Обновляться регулярно тоже дешевле: разница между соседними релизами меньше, конфликтов в разы меньше, чем при прыжке через полгода изменений.