Хотите резервное копирование в автоматическом режиме 1С? Powershell вам в помощь!

О том, что автоматическое резервное копирование необходимо, знает каждый. Но как это сделать средствами 1С, а не СУБД? И в чем особенности такого способа? Рассмотрим эти вопросы в нашей статье.

Условия настройки

Уже давно автоматизация коснулась обновлений информационных баз и типовых конфигураций, использующих библиотеку стандартных подсистем. Рассмотрим пошагово, как автоматизировать резервное копирование при следующих условиях: ОС — Windows Server (2008-2012) с учетными данными, 1С с правами администратора, ftp-сервер (чтобы обновлять конфигурации), клиент-серверный вариант 1С 8.3 (+ компонент COM-соединения).
Нам также понадобятся:

  1. средства пакетного запуска платформы 1С;
  2. powershell;
  3. планировщик задач Winows.

Пошаговый алгоритм создания резервного копирования ИБ (пакетный режим)

  • Первый шаг: запускаем скрипт powershell.
  • Второй шаг: «выгоняем» имеющихся пользователей. Для этого подключаем СОМ-объект к БД с помощью функции ExitAll.
  • Третий шаг: вызываем BackUpBase с указанием имени ИБ. Полученный скрипт сохраняем в определенном файле. При необходимости информационную базу можно параметризировать или выполнить аутентификацию ОС.
  • Четвертый шаг: «Простая задача» с подходящим для вас именем в планировщике и с действием «Запустить программу», размещенную в powershell.exe.

Снимок

Скрипт, полученный и сохраненный, выделен зеленым цветом, а ключ, разрешающий выполнение скриптов пакетов, – черным. Если ключ не будет срабатывать, то необходимо прописать разрешение и подтвердить действие сразу для всего сервера: Win+R в powershell.exe

Снимок1

Обратите внимание: все это работает около 3 месяцев.

  • Пятый шаг: обновление конфигурации. Чтобы этому не мешали регламентные задачи, заранее обдумываем расписание:
    • для хранения помещаем вручную файл конфигурации GK.cf на ftp-сервер;
    • с ним файл, сигнализирующий надобность обновления – flag.txt.

Скрипт работает так:

  • из рабочего каталога удаляются flag.txt + GK.cf;
  • выполняется попытка скачивания флага;
  • при положительном результате скачивается .cf;
  • обновление с помощью функции UpdateCf.

Как видим, параметры для запуска 1С переданы в командной строке. При изменении структуры метаданных обновление пройдет на 100%. Хотя при появлении активного пользователя может конфигурация БД не обновиться, будучи уже загруженной.

Примеры скриптов

Для резервного копирования

Снимок 3

Снимок 3.2

Для обновления конфигурации

Снимок 4

Снимок 4.2

 

0 ответы

Ответить

Хотите присоединиться к дискуссии?
Приглашаем поучаствовать!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>