Автоматическое обновление конфигурации из хранилища

17.11.25

База данных - Инструменты администратора БД

Обработка, объединяющая в себе использование инструментов БСП по администрированию кластера серверов и запуска скриптов для автоматического обновления конфигурации из хранилища.

Файлы

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

Наименование Скачано Купить файл
Автоматическое обновление конфигурации из хранилища
.epf 29,59Kb
5 2 750 руб. Купить

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

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

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

Предисловие

Как-то поставили на проекте задачу по запросу аналитиков обновлять из хранилища три базы КА. Буквально после первого рутинного обновления возникло желание его автоматизировать. Да так, чтобы использовать новый инструмент на любом проекте, не зависеть от сторонних решений и с минимальной подготовкой. Покупать готовую обработку желания не было, а скрипты для этого дела на дистанции показались не слишком практичными. Так родилась данная обработка.

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

Каждый шаг реализован по отдельности, а последовательность шагов объединена в "сценарии" для автоматического запуска.

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

Пару слов об обработке

Весь ключевой функционал описан в публикации, обработка лишь обертка для представленных фишек.

Настройки для работы обработки заполняются на отдельной странице

 

Реализована возможность сохранения и загрузки настроек через файл json, чтобы каждый раз не заполнять их при запуске.

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


 

Параметры сценария при этом заполняются на вкладке с сценариями, но сохраняются вместе со всеми настройками на первой странице. Параметры зависят от того, какие шаги выбраны в сценарии.

Основные функции обработки

1. Управление сеансами пользователей

 

 

Чтобы управлять сеансами пользователей, используется общий модуль АдминистрированиеСервера базовой функциональности БСП. Данный модуль содержит программный интерфейс по работе с сеансами и используется в обработках БСП "Активные пользователи" и "Блокировка работы пользователей". Я был приятно удивлен, когда осознал, что он подходит не только для администрирования текущей базы.

Для вывода информации о пользователях необходимо передать параметры администрирования кластера, параметры администрирования информационной базы и фильтр, при необходимости.

 
 Конструкторы структур параметров:

Обновление списка сеансов, при необходимости можно указать фильтр, в данном случае по типу клиентского приложения:

 
 ОбновитьСписокСеансовНаСервере()

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

 
 Завершение сеансов

 

 

Для установки и снятия блокировки сеансов используется единый метод модуля администрирования, также этот метод изменяет состояние блокировки регламентных заданий, поэтому перед установкой/снятием блокировки, необходимо получить текущее состояние блокировки.

 
Установка/Снятие блокировки 

 

3. Обновление конфигурации

 

 

Обновление конфигурации из хранилища реализовано через системные команды на стороне клиента.

Для того, чтобы красиво вызывать данные команды, используется метод БСП "ФайловаяСистемаКлиент.ЗапуститьПрограмму". Благо примеров использования в библиотеке достаточно.

Для начала реализован единый метод выполнения действия в конфигураторе:

 
 ВыполнитьДействиеВКонфигуратореЧерезКоманднуюСтроку()

Далее остается лишь использовать готовый метод. Возможностей для применений достаточно.

 
 Обновление конфигурации из хранилища

В качестве бонуса реализовал создание резервной копии. Для этого нужно передать следующие параметры запуска:

	КомандаОбновления = Новый Массив();
	КомандаОбновления.Добавить("/DumpIB");
	КомандаОбновления.Добавить(ПутьВыгрузки);

О всех возможностях можно почитать на ИТС.

 

4. Автоматизация сценариев

 

 

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

 
 Описание сценариев

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

Также следует учесть что шаги должны выполнять последовательно, а некоторые шаги выполняются в фоне.

 
 Выполнение сценария

Методы с префиксом "Шаг" это методы, которые вызывают ранее реализованный функционал с использованием переданных параметров сценария. Самый сложный пример это обновление расширений из хранилища - шаг один, но несколько фоновых операций.

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

 
 Шаг выполнения обновления расширений из хранилища

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

 
 Методы работы с параметрами сценариев

 

Как итог моей работы, обновление базы стало занимать у меня в среднем в три раза меньше времени, а главное, отрабатывает по нажатию одной кнопки.
Технические особенности

  • Только для полноправных пользователей

  • Работа только в клиент-серверном режиме

Спасибо за внимание, всем добра!

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

  • 1С:Библиотека стандартных подсистем, редакция 3.1, релизы 3.1.10.243
  • 1С:Комплексная автоматизация 2, релизы 2.5.23.64

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

завершение сеансов блокировка сеансов обновление конфигурации командная строка администрирование кластера

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

24900 руб.

20.08.2024    51756    289    145    

263

SALE! %

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

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

17000 16000 руб.

10.11.2023    21375    85    42    

96

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 1С 8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 17.06.2025, версия 1.3

20400 руб.

06.12.2023    19099    70    10    

103

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    40993    123    152    

84

Инструменты администратора БД Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия Платные (руб)

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

12000 руб.

06.02.2017    34526    148    18    

53

Архивирование (backup) Инструменты администратора БД 1С:Предприятие 8 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней. Только для WINDOWS!

6000 руб.

06.11.2012    77156    633    45    

92
Для отправки сообщения требуется регистрация/авторизация