Обновление типовой конфигурации на поддержке: от копии базы до проверки после слияния
Содержание
Конфигурацию поставщика в 1С 8.3 обновляют в Конфигураторе командой Конфигурация → Поддержка → Обновить конфигурацию…: выбираете файл обновления .cfu (или полный дистрибутив .cf), разбираете расхождения в окне сравнения, нажимаете «Выполнить», затем применяете изменения командой Конфигурация → Обновить конфигурацию базы данных (F7). После этого базу открывают в режиме 1С:Предприятие, чтобы отработали обработчики обновления данных.
Если типовая конфигурация не дорабатывалась, всё это занимает 10–20 минут и обходится без вопросов. Сложности начинаются, когда в конфигурации поставщика есть свои правки: тогда главная работа — правильно разобрать конфликты при слиянии и ничего не потерять.
1. Что подготовить до запуска Конфигуратора
Начните с двух копий, а не с одной. Они решают разные задачи.
- 💾 Полная выгрузка базы —
Администрирование → Выгрузить информационную базу…в Конфигураторе. Файл.dtсодержит и конфигурацию, и данные. Из него поднимают базу целиком, если обновление пошло не так. - 📄 Файл текущей конфигурации —
Конфигурация → Сохранить конфигурацию в файл…. Файл.cfпригодится, чтобы потом сравнить «было/стало» и найти пропавшую доработку, не разворачивая весь.dt.
Обновлять рабочую базу без свежей выгрузки .dt нельзя. Откатить объединение конфигурации кнопкой «Отмена» после нажатия F7 не получится.
Дальше проверьте три вещи.
- Состояние поддержки. Откройте
Конфигурация → Поддержка → Настройка поддержки…. Там видна текущая версия конфигурации поставщика и режим: изменения запрещены или разрешены. Если окно сообщает, что конфигурация снята с поддержки, обычное обновление не сработает (об этом в разделе 6). - Версия платформы. В описании каждого релиза указана минимальная версия платформы. Сравните её с номером в
Справка → О программе. Номер установленной платформы должен быть не ниже требуемого, иначе обновление остановится или база не откроется после него. - Права и доступ. Обновлять конфигурацию может только пользователь с административными правами. Для применения изменений структуры нужен монопольный доступ к базе: попросите коллег выйти и проверьте, что не висят фоновые сеансы.
Для клиент-серверной базы делайте обновление вне рабочего времени. При переходе в монопольный режим активные сеансы придётся завершать, а несохранённые документы пользователей пропадут.
2. Где взять файл обновления и как его распаковать
Обновления конфигураций поставщика распространяются в виде дистрибутива с программой установки setup.exe. Скачивают его с портала поддержки по договору сопровождения (для типовых решений нужна действующая подписка).
После запуска setup.exe файлы попадают в каталог шаблонов. По умолчанию это:
%APPDATA%\1C\1cv8\tmplts\1c\<ИмяКонфигурации>\<Версия>\
Внутри каталога версии лежат:
| Файл | Что это | Когда нужен |
|---|---|---|
1cv8.cfu | файл обновления | обычное обновление с одной из предыдущих версий |
1cv8.cf | полная конфигурация поставщика | конфигурация снята с поддержки или установка с нуля |
UpdInfo.txt | служебное описание | список версий, с которых можно обновиться |
1cv8upd.htm | описание изменений | что нового и какие требования к платформе |
Как понять, нужны ли промежуточные релизы
Откройте UpdInfo.txt блокнотом. В строке FromVersions перечислены версии, с которых этот .cfu умеет обновлять. Если вашей текущей версии там нет, прямой переход невозможен.
Пример: база на версии 3.0.150, вы хотите поставить 3.0.170, а в списке FromVersions указаны только версии начиная с 3.0.160. Значит, сначала ставите промежуточный релиз, у которого в списке есть 3.0.150, и уже с него — целевой. Иногда цепочка состоит из 3–5 шагов, и каждый шаг завершается обновлением базы данных и запуском в режиме 1С:Предприятие.
Не пропускайте запуск в пользовательском режиме между промежуточными релизами. Обработчики обновления данных каждого релиза рассчитаны на структуру именно его предшественника.
3. Какой способ обновления выбрать
Есть два пути, и они подходят для разных ситуаций.
| Способ | Где запускается | Когда подходит | Ограничения |
|---|---|---|---|
| Автоматически из программы | Администрирование → Обслуживание → Обновление версии программы | типовая конфигурация без доработок, файловая база или небольшой сервер | нужна интернет-поддержка; на изменённой конфигурации процесс остановится и попросит Конфигуратор |
| Вручную в Конфигураторе | Конфигурация → Поддержка → Обновить конфигурацию… | доработанная конфигурация, цепочка релизов, нужен контроль слияния | больше ручной работы, нужен навык разбора сравнения |
Монопольное или динамическое обновление базы данных
После объединения конфигурации её надо применить к базе. Если в базе работают пользователи, Конфигуратор может предложить динамическое обновление, то есть без выгонки сеансов.
Для обновления типовой конфигурации поставщика этот вариант не годится. Релизы почти всегда меняют структуру хранения данных, а реструктуризация требует монопольного доступа. Динамически можно применять лишь мелкие правки, не затрагивающие таблицы. Надёжный порядок для релиза поставщика — монопольный режим: все вышли, вы нажали F7, дождались реструктуризации.
4. Пошаговое обновление конфигурации в Конфигураторе
- Запустите Конфигуратор под администратором и откройте конфигурацию:
Конфигурация → Открыть конфигурацию. - Выберите
Конфигурация → Поддержка → Обновить конфигурацию…. - В окне источника обновления есть два варианта: поиск доступных обновлений в каталогах шаблонов или выбор файла вручную. Если дистрибутив установлен через
setup.exe, поиск найдёт его сам. Если нет — укажите путь к1cv8.cfu. - Конфигуратор покажет текущую версию и версию из файла. Проверьте, что это та самая пара, которую вы планировали, и продолжите.
- Дальше возможны два исхода:
- конфигурация на поддержке без изменений — Конфигуратор сразу загрузит новую версию, окно сравнения не появится;
- конфигурация с доработками — откроется окно сравнения и объединения (разбор в разделе 5).
- После объединения Конфигуратор спросит, обновить ли конфигурацию базы данных. Согласитесь или нажмите F7 позже.
- Появится окно «Реорганизация информации» со списком изменённых объектов. Пролистайте его: если в списке есть удаление ваших объектов или реквизитов, остановитесь и вернитесь к сравнению.
- Нажмите «Принять» и дождитесь окончания реструктуризации. На больших базах это занимает от нескольких минут до нескольких часов.
Не закрывайте Конфигуратор через диспетчер задач во время реструктуризации. Прерванная реструктуризация — частая причина базы, которая не открывается ни в одном режиме.
5. Разбор конфликтов при объединении доработанной конфигурации
Окно сравнения строится по трём конфигурациям: старой версии поставщика, новой версии поставщика и вашей основной (с доработками). Задача — для каждого изменённого объекта решить, чья версия победит.
Фильтр, который экономит время
Включите отбор «Показывать только дважды измененные свойства». Останутся объекты, которые поменяли и вы, и поставщик. Всё остальное Конфигуратор объединит сам: если вы объект не трогали, он просто возьмёт новую версию поставщика.
Режимы объединения объекта
Для каждого дважды изменённого объекта выбирается режим:
| Режим | Что произойдёт | Когда выбирать |
|---|---|---|
| Взять из новой конфигурации поставщика | ваша правка в объекте будет потеряна | правка больше не нужна или поставщик сделал то же самое |
| Оставить объект основной конфигурации | новшества релиза в объекте не появятся | редко: только если объект ваш по сути |
| Объединить с приоритетом основной конфигурации | при совпадении изменений побеждает ваша версия | правка важна, а релиз меняет соседние места |
| Объединить с приоритетом новой конфигурации поставщика | при совпадении изменений побеждает поставщик | правка мелкая, а релиз критичен |
Модули: разбирайте по процедурам
Для модулей объединение идёт на уровне процедур и функций. Раскройте модуль, и по каждой процедуре выберите, откуда брать текст. Поставщик часто переписывает процедуру целиком, и автоматическое слияние строк даёт синтаксически правильный, но логически сломанный код.
Рабочий приём: для каждой своей доработки в модуле возьмите процедуру из новой версии поставщика, а свою правку перенесите заново вручную. Дольше, но надёжнее.
Формы и макеты
Изменённые формы объединяются хуже всего. Если вы правили форму документа, а поставщик её перестроил, чаще проще взять форму поставщика и повторить свои элементы. Макеты печатных форм ведут себя так же: объединение двух табличных документов редко даёт аккуратный результат.
Правила поддержки для новых объектов
После нажатия «Выполнить» Конфигуратор спросит, какие правила поддержки назначить объектам, добавленным поставщиком. Варианты такие: объекты не редактируются, редактируются с сохранением поддержки или изменения разрешены. Чтобы будущие обновления проходили проще, ставьте «не редактируются» везде, где не планируете правок.
Если доработок много и каждое обновление превращается в день разбора конфликтов, вынесите их в расширения конфигурации (они появились в платформе 8.3.6). Основная конфигурация остаётся типовой и обновляется без сравнения, а расширение проверяется отдельно.
6. Если конфигурация снята с поддержки
Когда поддержку сняли полностью, .cfu применить нельзя. Остаётся полное сравнение:
- Возьмите
1cv8.cfнужной версии из каталога шаблонов. - Выберите
Конфигурация → Сравнить, объединить с конфигурацией из файла…. - Конфигуратор предложит поставить конфигурацию на поддержку. Соглашайтесь: это восстановит связь с поставщиком.
- Разбирайте отличия так же, как в разделе 5, но учтите: без старой версии поставщика система не отличает ваши правки от изменений релиза. Дважды изменёнными будут выглядеть почти все объекты.
Чтобы сократить ручной разбор, сначала поставьте на поддержку .cf той версии, с которой база реально была создана, и только потом обновляйтесь до нужной. Тогда сравнение снова станет трёхсторонним.
7. Что проверить после обновления
Обновление конфигурации завершено не тогда, когда отработала реструктуризация, а когда в базе отработали обработчики обновления данных.
- Запустите базу в режиме 1С:Предприятие под администратором. Откроется окно обновления данных. Дождитесь окончания, не закрывая программу.
- Типовые конфигурации на БСП могут попросить подтвердить легальность получения обновления. Это обычное диалоговое окно, его подтверждает администратор.
- Откройте
Справка → О программеи сверьте номер версии конфигурации с целевым. - Проверьте отложенные обработчики: в БСП-конфигурациях их статус виден в разделе
Администрирование → Обслуживание. Пока они не завершены, часть отчётов может показывать неполные данные. - Зайдите под обычным пользователем и пройдите его типовой сценарий: открыть список документов, провести документ , сформировать отчёт.
Права доступа после релиза
В новом релизе появляются новые объекты и роли. Для типовых профилей групп доступа права обновляются автоматически вместе с конфигурацией. Свои профили, собранные вручную, автоматически не дополняются: пользователь получит сообщение «Нарушение прав доступа» на новом справочнике или отчёте.
Проверьте свои профили в Администрирование → Настройки пользователей и прав → Профили групп доступа и добавьте недостающие роли.
8. Ошибки при обновлении и что с ними делать
Частые вопросы
Можно ли обновлять конфигурацию, пока пользователи работают?
Сколько релизов можно пропустить?
Чем .cfu отличается от .cf?
Нужно ли обновлять расширения после релиза?
Можно ли откатить обновление?
Администрирование → Загрузить информационную базу…. Данные, введённые после обновления, при этом пропадут.