Автоматическое обновление конфигурации (регламентное задание) для серверных решений

09.09.25

База данных - Обновление 1С

Фоновое задание (внешняя обработка) для автоматического обновления конфигурации: при передаче изменений конфигурации и данных от центральной базы на узел РИБ с последовательным обновлением конфигурации и данных на узле и для "НЕ РИБ" баз по такому же принципу. Выполняется запуском скриптов в пакетном режиме.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Автоматическое обновление конфигурации (регламентное задание) для серверных решений:
.zip 9,37Kb ver:1.0 (27.09.2022)
10 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Данная обработка сделана под регламентное задание. Позволяет в автоматическом режиме поставить блокировку начала сеансов, блокировку фоновых заданий и "выгнать" всех пользователей из базы, обновить конфигурацию БД. После, при успешном обновлении, подключается вторая обработка, которая отключает все блокировки. Регламентное задание изначально заточена под РИБ, но путем комментирования строки с проверкой на РИБ "Если  ПланыОбмена.ГлавныйУзел()= Неопределено тогда", будет работать для "НЕ РИБ" баз. Задание существо сокращает потраченное время администратора БД на обновление конфигурации.

Алгоритм работы обработки:

  1. Регламентное задание проверяет файл обновления, если он есть, тогда запускается соответствующая процедура обновления;
  2. Блокируются подключения сеансов;
  3. Закрываются все существующие сеансы;
  4. Ставит блокировку фоновых заданий;
  5. Выполняется обновление конфигурации;
  6. Выполняется загрузка данных;
  7. Автоматически открывается вторая внешняя обработка для снятия блокировки пользовательских подключений и включения регламентных заданий.

   Для корректной работы надо сделать:

  • Поменять в модуле обработки логин подключения (АдминБазы) на свой;
  • Поменять пароль от логина (ПарольБазы) на свой;
  • Поменять код доступа при блокировки сеансов (КодДоступа) на свой;
  • Поменять путь с "C:\ВключениеСеансовИРегламетныхЗаданий.epf" (ПутьКВключениюСеансовИЗаданий) на свой;
  • Указать путь для сохранения лога (КаталогЛогов);
  • То же самое (АдминБазы,ПарольБазы,КодДоступа) нужно указать во второй обработке "Включение сеансов и регламентных заданий" в форме обработки.

Для полного автоматического обновления рекомендую создать нового пользователя (с админ-правами) и отключить у него "Защита от опасных действий" ("Конфигуратор"->"Администрирование"->"Пользователи"->Выбираем нужного пользователя и открываем его->Убираем галку с "Защита от опасных действий"), иначе при запуске второй обработки потребуется действие пользователя.

 

 

   Фоновое задание работает с компонентой "V83.COMConnector".

   Установка компоненты:

   Если у Вас 32 разрядная платформа:
regsvr32 /u "C:\Program Files (x86)\1cv8\[Версия платформы]\bin\comcntr.dll"

   Если у Вас 64 разрядная платформа:
regsvr32 /u "C:\Program Files\1cv8\[Версия платформы]\bin\comcntr.dll"

   Если возникла ошибка при установке, то попробуйте сначала отменить регистрацию:

   Если у Вас 32 разрядная платформа:
regsvr32 /u "C:\Program Files (x86)\1cv8\[Версия платформы]\bin\comcntr.dll"

   Если у Вас 64 разрядная платформа:
regsvr32 /u "C:\Program Files\1cv8\[Версия платформы]\bin\comcntr.dll"

   Установка обработки:

  1. Переходим Администрирование -> Печатные формы, отчеты и обработки -> Дополнительные отчеты и обработки;
  2. Нажимаем на кнопку "Добавить из файла" и указываем файл обработки;
  3. Указываем расписание фонового задания (Например, каждый день в 9:00 утра).

 

   

Установка значения кода разрешения:

  1. Запускаем 1CV8 Servers;
  2. Правой кнопкой по наименованию базы->Свойства;
  3. Заполняем "Код разрешения".

 

 

Обработка тестировалась на 1С:Предприятие 8.3 (8.3.17.1851) 1С:ERP Управление предприятием 2 (2.4.14.181). Подойдет практически для любой конфигурации. Также ее легко добавить в саму конфигурацию как "Регламентное задание".

Проверено на следующих конфигурациях и релизах:

  • 1С:ERP Управление предприятием 2, релизы 2.5.24.43, 2.4.14.181
  • Управление производственным предприятием, редакция 1.3, релизы 1.3.253.3

Вступайте в нашу телеграмм-группу Инфостарт

Конфигурация обновление фоновое автоматическое

См. также

Обновление 1С Программист 1С v8.3 Бесплатно (free)

Как быстро починить обновление при ошибках в данных без использования внешних обработок.

13.10.2025    2476    VetalDV    7    

7

Обновление 1С Программист 1С v8.3 Бесплатно (free)

При обновлении конфигураций ЕРП/КА/УТ типовыми обновлениями можно получить ошибку  Превышен максимальный расход памяти сервера за один вызов". С чем это связано? Рассмотрим исправление этой ошибки.

18.08.2025    3507    iolko    10    

19

Обновление 1С Системный администратор Программист 1С v8.3 Россия Абонемент ($m)

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

1 стартмани

16.07.2025    1198    8    lastpioneer    0    

9

Рефакторинг и качество кода Обновление 1С Программист 1С v8.3 Бесплатно (free)

Проблемы и их решение из реальных проектов сложного обновления 1С, когда нужно было сохранить целостность данных, ускориться и уложиться в оцененные и утвержденные сроки.

02.07.2025    5347    1c-izh    9    

13

DevOps и автоматизация разработки Обновление 1С Системный администратор Программист 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление холдингом Абонемент ($m)

Продолжаем делиться опытом ICL SOFT – в этой статье рассказываем о сложном обновлении сильно доработанной конфигурации "1С:ERP Управление холдингом с версии 3.1.8.15" до актуальной версии редакции 3.2. Публикации о сложных обновлениях, которые можно найти в открытых источниках, содержат мало подробной информации об использованных инструментах и решениях. Часто в них отсутствует информация о том, что находится под капотом этих решений. Будем рады, если наша статья окажется полезной

1 стартмани

01.07.2025    2989    vladimir_iclsoft    1    

22

Рефакторинг и качество кода Обновление 1С Программист 1С v8.3 Бесплатно (free)

Тестовая база обновлена через все ключевые релизы, всё протестировано, остатки сведены, вы готовы обновить «боевую» базу, но…по замерам для этого потребуется целая неделя, а у вас есть всего пара выходных. Знакомая ситуация? Расскажем, как увеличить скорость отработки промежуточных конфигураций!

18.06.2025    4660    1c-izh    14    

12

Обновление 1С Программист Стажер 1С v8.3 Бесплатно (free)

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

04.06.2025    4576    1c-izh    13    

17
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. hrom 69 24.05.23 10:34 Сейчас в теме
Поясните, пожалуйста.
1. Вы закрываете все сеансы, кроме текущего
Если (Сеанс.SessionID = НомерТекСеанса И ((нРег(Сеанс.AppID) = "backgroundjob"))) ИЛИ нРег(Сеанс.AppID) = "srvrconsole" или нРег(Сеанс.AppID) = "designer" Тогда
Продолжить;
КонецЕсли;

А как тогда у вас происходит обновление конфигурации, если остается открытый сеанс?

2. Несмотря на блокировку запуска РЗ,у меня два ФЗ болтаются в фоне и не дают обновить конфигурацю. Не подскажите как бороться с этим?
InfoBase.SessionsDenied = DeniedAll;
InfoBase.PermissionCode = КодДоступа;
InfoBase.ScheduledJobsDenied = DeniedAll;
2. FoxesStyle 15 24.05.23 18:53 Сейчас в теме
(1)
Поясните, пожалуйста.
1. Вы закрываете все сеансы, кроме текущего
Если (Сеанс.SessionID = НомерТекСеанса И ((нРег(Сеанс.AppID) = "backgroundjob"))) ИЛИ нРег(Сеанс.AppID) = "srvrconsole" или нРег(Сеанс.AppID) = "designer" Тогда
Продолжить;
КонецЕсли;

А как тогда у вас происходит обновление конфигурации, если остается открытый сеанс?

2. Несмотря на блокировку запуска РЗ,у меня два ФЗ болтаются в фоне и не дают обновить конфигурацю. Не подскажите как бороться с этим?
InfoBase.SessionsDenied = DeniedAll;
InfoBase.PermissionCode = КодДоступа;
InfoBase.ScheduledJobsDenied = DeniedAll;

1.1 designer (НомерТекСеанса), backgroundjob - это сеансы конфигуратора и фонового задания соответственно, мы их не отключаем. В этих сессиях выполняется обновление конфигурации.
1.2 srvrconsole - это идентификатор сессии консоли кластера.

2. А что за два фонового задания? Он их не завершает, потому что есть условие "что завершать" в первом пункте. Можно попробовать поставить более длительное ожидание возможности блокировки, чтобы эти два фоновых задания завершились, а потом уже обновлять.
3. hrom 69 24.05.23 21:20 Сейчас в теме
"это сеансы конфигуратора и фонового задания соответственно, мы их не отключаем. В этих сессиях выполняется обновление конфигурации."

Можно вот здесь подробнее.
Пытаюсь понять можно ли из самой 1С, не используя внешних скриптов принять изменения конфигурации, например через ЗапуститьПриложение(СтрокаПакетногоЗапускаКонфигуратораСКлючомОбновленияКонфы).
Я думал, что все сеансы и фоновые задания должны быть остановлены, чтобы отработало обновление конфы. Но у вас, судя по коду, работает какое то фоновое задание, которое не мешает процессу обновления.
Или вы подключаетесь из другой базы, не той, в которой происходит обновление?
4. hrom 69 24.05.23 22:01 Сейчас в теме
Разобрался. У вас там пауза стоит в начале скрипта. Поэтому вы можете дождаться завершения текущего ФЗ.
Строчка про кофигуратор в условии это перестраховка. Обновление конфы и ваше ФЗ не могут одновременно работать.

Для завершения сеансов и блокировки базы можно уже использовать нативные объекты, без com соединений.
Завтра ссылку сброшу, если интересно
5. FoxesStyle 15 24.05.23 22:15 Сейчас в теме
(4) Как я выше писал по поводу поставить более длительное ожидание - это и есть пауза в начале работы скрипта. Это время было проставлено исходя из собственных нужд. Соотвественно, нужно дождаться окончании работы фонового задания, потом уже обновлять. Строка про конфигуратор - это да, чисто перестраховка, чтобы не закиллить нужный сеанс при обновлении. Можно вообще сделать батник с кодом обновлении конфы. Два раза нажимаете на него и происходит обновление на всех подчиненных узлах, запуск будет уже не из под 1с.
7. hrom 69 25.05.23 06:35 Сейчас в теме
(5) нет никаких бат-ников и тем более запусков руками не нужно. Пытаюсь придумать как автоматически обновлять конфу на Линукс через ФЗ.
6. hrom 69 25.05.23 06:34 Сейчас в теме
Вот действия в вашей обработке через Новый АдминистрированиеСервера()
https://infostart.ru/journal/news/mir-1s/v-novoy-versii-1s-predpriyatiya-anonsirovali-razvitie-klasterov-serverov_892774/
Работает на ОС Линукс, в отличии от соединения от через com
Для отправки сообщения требуется регистрация/авторизация