Исправления (патчи) 1С: установка из интернета, из файла и на сервере
Содержание
Патч в 1С загружают в режиме «Предприятие»: Администрирование → Интернет-поддержка и сервисы, блок обновления программы, ссылка на установленные исправления. Оттуда же ставят файл .cfe, если патч прислали отдельно. Конфигуратор и монопольный режим для этого не нужны.
Частое заблуждение — считать патч «маленьким обновлением», которое ставят как .cfu через Конфигурация → Поддержка → Обновить конфигурацию. Это не так. Исправление (патч) — расширение конфигурации
с назначением «Исправление». Оно правит одну-две процедуры текущего релиза и не меняет номер версии.
Что такое патч и чем он отличается от обновления
Фирма 1С выпускает патчи, когда в релизе нашли ошибку, а следующий релиз выйдет не скоро. Исправление привязано к конкретной версии конфигурации: патч для БП 3.0.170.25 к релизу 3.0.171 не подойдёт.
| Обновление релиза | Патч (исправление) | |
|---|---|---|
| Формат файла | .cfu (или .cf) | .cfe (иногда упакован в .zip) |
| Что меняет | Всю конфигурацию, номер версии | Отдельные процедуры и модули |
| Монопольный режим | Нужен для обновления структуры | Не нужен |
| Где ставить | Конфигуратор или помощник обновления | Режим «Предприятие» или Конфигуратор |
| Как откатить | Только из резервной копии | Удалить или отключить расширение |
Как узнать патч в списке расширений:
- 🔖 имя обычно начинается с префикса
EF_и номера исправления; - 🔖 в свойствах указано назначение «Исправление»;
- 🔖 в синониме — краткое описание исправленной ошибки.
Патчи от 1С подписаны. Программа проверяет подпись и не путает их с самописными расширениями, поэтому ставить «левые» .cfe под видом патча бессмысленно — и опасно.
Как понять, что вашу ошибку закрывает патч
Патчи не ставят «на всякий случай» вручную — для этого есть автоустановка. Ручной поиск нужен, когда ошибка уже мешает работать.
- Запишите точный текст ошибки и операцию, на которой она возникает: документ, отчёт, команда.
- Узнайте номер релиза в окне «О программе».
- Откройте на портале обновлений карточку своего релиза и список исправлений к нему. У каждого патча есть короткое описание: какая ошибка и в каком объекте.
- Если подходящего описания нет — напишите в линию консультаций по договору ИТС, приложив текст ошибки и номер релиза. Часто именно так и выясняется, что исправление уже готово.
Полезно знать: один патч обычно закрывает одну конкретную ошибку. Если после установки «всё равно не работает », возможно, у вас другая ошибка с похожим текстом. Сверьте описание патча с тем, что видите на экране, слово в слово.
Если ошибка воспроизводится только у вас, а у коллег на том же релизе её нет, причина скорее в данных или в доработках базы. Патч в таком случае не поможет.
Подготовка перед установкой исправлений
Перед загрузкой патча проверьте три вещи.
- Версию конфигурации. Откройте
Справка → О программе(кнопка с вопросительным знаком в правом верхнем углу или главное меню). Номер релиза должен совпадать с тем, для которого выпущен патч. - Права. Пользователь должен входить в группу доступа «Администраторы» или иметь полные права. Без прав на администрирование расширений кнопка установки будет недоступна.
- Свои расширения. Если в базе есть доработки в расширениях, запишите, какие процедуры они перехватывают. Это пригодится, если патч не применится.
Резервную копию перед установкой патча делают по регламенту вашей организации. Сама операция обратима: расширение удаляется в один клик. Но если патч применяется в базе, где одновременно идёт закрытие месяца , лучше дождаться окончания.
Автоматическая загрузка патчей через интернет
Это основной способ. Программа сама находит исправления для вашего релиза и ставит их.
- Откройте
Администрирование → Интернет-поддержка и сервисы. - Подключите интернет-поддержку: введите логин и пароль портала 1С:ИТС. Без этого автозагрузка не работает.
- В блоке обновления программы включите флажок
Загружать и устанавливать исправления (патчи) автоматически. - Чтобы поставить патчи прямо сейчас, откройте ссылку на установленные исправления и нажмите команду установки — программа скачает всё, что вышло для текущего релиза.
- Перезапустите 1С. Исправление вступает в силу в новых сеансах.
Что происходит дальше:
- 🔄 программа периодически проверяет наличие новых патчей и ставит их фоном;
- 🔄 при переходе на новый релиз исправления, которые в него уже вошли, как правило, удаляются сами;
- 🔄 пользователи, работавшие в момент установки, увидят исправление после перезапуска своего сеанса.
В клиент-серверной базе автоматическая установка работает через регламентные задания. Если регламентные задания на кластере заблокированы (так часто делают в копиях баз), патчи сами не придут.
Ручная установка патча из файла .cfe
Ручной способ нужен, когда в базе нет интернета, когда патч прислала линия консультаций или когда нужно поставить конкретное исправление без остальных.
Где взять файл
Патчи публикуются на портале обновлений 1С в карточке конкретного релиза, рядом с дистрибутивом. Скачивается .zip или .cfe. Архив распаковывать не обязательно: форма установки принимает оба формата.
Установка в режиме «Предприятие»
Администрирование → Интернет-поддержка и сервисы.- Перейдите по ссылке на установленные исправления.
- Нажмите команду установки исправления из файла и выберите
.cfeили.zip. - Дождитесь сообщения об успешной установке.
- Перезапустите программу.
Установка через Конфигуратор
Если форма в «Предприятии» недоступна (старая конфигурация, урезанные права), патч грузят как обычное расширение.
- Откройте базу в Конфигураторе.
Конфигурация → Расширения конфигурации.- В командной панели окна расширений откройте меню
Действияи выберите команду загрузки расширения из файла. - Выберите
.cfe. - Обновите конфигурацию базы данных для этого расширения (
F7в окне расширения).
Загрузить .cfe и обновить конфигурацию БД расширения — два отдельных шага. Если пропустить второй, расширение будет в списке, но не применится.
После установки через Конфигуратор проверьте флажки в списке расширений: «Активно» должно быть включено. Если патч не работает, проверьте там же флажок «Безопасный режим»: патчу 1С нужен доступ к коду типовой конфигурации, и при включённом безопасном режиме часть исправлений может не сработать.
Патчи в клиент-серверном варианте: одна установка на всех
В клиент-серверной базе патч ставят один раз — в саму информационную базу на сервере. На рабочие места ничего копировать не нужно: клиенты получат исправление при следующем входе.
Что учесть администратору:
- 🖥 Сеансы. Работающие пользователи не обрываются. Новый код они получат после перезапуска. Принудительно завершать сеансы ради патча не нужно; если всё же завершаете — предупредите людей, несохранённые документы пропадут.
- 🖥 Регламентные задания. Для автоустановки они должны быть разблокированы в свойствах информационной базы в консоли кластера.
- 🖥 Копии баз. В тестовой копии регламентные задания обычно блокируют. Значит, патчи туда ставьте вручную, иначе тест будет на другом коде, чем рабочая база.
- 🖥 Много баз одного релиза. Каждая база — отдельная установка. Для десятков баз удобнее пакетный режим (следующий раздел).
Порядок для рабочей базы, которой пользуются круглосуточно:
- Поставьте патч в тестовую копию, проверьте исправленную операцию.
- Поставьте в рабочую базу в режиме «Предприятие» — монопольный доступ не нужен.
- Сообщите пользователям, что исправление действует после перезапуска 1С.
А если база файловая
В файловом варианте всё то же самое, только проще. Патч ставится в каталог базы, и все, кто открывает её по сети, получают исправление после перезапуска 1С. Регламентные задания в файловой базе выполняются в сеансе одного из пользователей, поэтому автоустановка срабатывает, когда кто-то работает в программе. Если база открывается редко, проверяйте список исправлений вручную раз в месяц или после выхода нового релиза.
Через веб-клиент или публикацию на веб-сервере патч ставится так же, в режиме «Предприятие». Отдельно на веб-сервер ничего копировать не нужно: исправление хранится в самой базе.
Установка патчей из командной строки
Отдельной фирменной утилиты для патчей ставить не требуется: всё делает сам 1cv8.exe в пакетном режиме Конфигуратора. Сторонние «менеджеры обновлений» из непонятных источников лучше не использовать — им приходится давать пароль администратора базы.
Загрузка патча в серверную базу :
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER ^
/S "srv1c\buh" /N "Администратор" /P "пароль" ^
/LoadCfg "D:\patches\EF_00_00123456.cfe" -Extension "EF_00_00123456" ^
/UpdateDBCfg -Extension "EF_00_00123456" ^
/Out "D:\patches\log.txt"
Для файловой базы вместо /S "сервер\база" укажите /F "D:\Bases\Buh". Путь к 1cv8.exe подставьте свой — номер платформы в нём у всех разный.
Как это использовать на практике:
- 📜 положите в цикл
forсписок баз одного релиза — патч разойдётся по всем за один запуск; - 📜 после каждого запуска смотрите файл из
/Out: пустой лог или сообщение об успехе — патч встал; - 📜 запускайте от имени пользователя с правами администратора базы, пароль храните не в самом
.bat, а в защищённом месте.
Имя после -Extension должно совпадать с именем расширения внутри .cfe. Удобно называть его как файл патча: так в логах сразу видно, что и куда ставилось.
Почему патч не устанавливается: разбор ошибок
Отдельно о доработанных базах. Патчи 1С часто используют аннотацию &ИзменениеИКонтроль: исправление проверяет, что исходный текст процедуры совпадает с типовым. Если программист поменял эту процедуру прямо в конфигурации, патч откажется применяться. Это защита, а не сбой: иначе исправление затёрло бы доработку.
Что делать в такой ситуации:
- Найдите в тексте ошибки имя модуля и процедуры.
- Сравните её с типовой версией (сравнение с конфигурацией поставщика в Конфигураторе).
- Перенесите доработку в собственное расширение или примените правку из патча вручную — это работа для программиста.
Как проверить установленные исправления и откатить патч
Проверка
- ✅ В «Предприятии»: список на странице установленных исправлений в разделе интернет-поддержки. Там видны номера патчей и описание ошибок.
- ✅ В Конфигураторе:
Конфигурация → Расширения конфигурации. Патчи видны вместе с остальными расширениями, у них назначение «Исправление». - ✅ На деле: повторите операцию, которая давала ошибку. Это главная проверка.
Откат
Если после патча что-то сломалось, его снимают без восстановления базы из копии:
- Откройте список установленных исправлений (или список расширений в Конфигураторе).
- Отключите флажок «Активно», чтобы временно выключить патч, либо удалите его.
- Перезапустите 1С у всех пользователей, чтобы они вышли на код без исправления.
При включённой автоустановке удалённый патч может вернуться при следующей проверке. Если исправление мешает, временно снимите флажок автоматической загрузки и сообщите о проблеме в линию консультаций.
Что с патчами при обновлении релиза
Когда база переходит на новый релиз, исправления, которые уже вошли в него, становятся не нужны. Механизм обновления, как правило, убирает их сам. Если после обновления в списке расширений остался патч со старым номером релиза и программа выдаёт предупреждение — удалите его вручную.