Автоматическая архивация (настройка через обработку), стандартными средствами Windows (batch + schtasks)






Есть много статей, как сделать батники для архивации баз 1С, столько же статей, как настроить автоматический запуск этих батников, но лень — она такая. Пользователю разбираться в cmd не хочется, а уж тем более лезть в настройки винды… Специально для ленивых, написал эту обработку.

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

Обновление:

-Добавилась выгрузка в .dt (файловая/сервер)

Сервер пока не тестировал. Всё находится в «сыром» виде, но работает. Будет время, протестирую и доработаю.

 

появилась вкладка «Удаление», в которой можно удалять сделанные ранее архивации.

— теперь в поля кол-во копий и кол-во дней можно вводить трехзначные числа.

— в именах архивов добавляется дата архивирования.

— исправлено удаление из Планировщика Заданий.

— доработана проверка выбора архиватора

если winrar: должен быть выбран файл с именем winrar.exe

если 7zip: должен быть выбран файл 7z.exe (архивы будут иметь расширение .7z) или 7zG.exe (архивы будут иметь расширение .zip)

Как это работает?

Обработка формирует батник и создаёт плановое задание запуска этого батника.
Но можно же создать батник для простого копирования папок, архивирования через WinRar или 7Zip.
Так же, нужно удалять старые копии архивов, чтобы не засорять память. Удалять можно через какое-то время, или когда накопиться определенное количество архивов. Так же, нужно установить расписание архивирования, когда, во сколько? Именно эти параметры можно установить в обработке, нажатием пары кнопок, а сам батник сформируется автоматически и будет выполняться, по расписанию, которое Вы укажите.

Основные настройки рассчитаны на пользователя, который не должен знать почти ничего:
 

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

  

Где это работает? 

Тестировалась эта обработка на Windows 7 и Windows XP. 
Пока рассчитана только для файловой базы (в дальнейшем, если всё пойдет хорошо, сделаю для клиент-серверной) 

Так же, нужно, что бы у пользователя этой обработки были права на создание заданий и доступа к папкам, где будут храниться батники и архивы. (Скорее всего, в ДопНастройках сделаю возможность вводить ИмяПользователя и Пароль, что бы админам не приходилось заходить под своей учеткой).


Почему именно так? 

Почему только батники? Сначала, была мысль использовать powershell, но по умолчанию, он отсутствует в ХП. Думал сделать на ХП батники, а на 7 скрипты, но желание сделать универсально взяло верх.


Подробнее…

Для архивирования одной базы создаётся один батник в котором содержатся все нужные команды (Архивирование и удаление).
Вариантов, когда архивы удалять не нужно, я не рассматривал, пока что.

Если архивация выполняется ВинРаром, то значек самого архиватора прячется в трей.

Если архивация выполняется 7Зипом, то всё делается в тихом режиме.

Еще в ДопНастройках есть галочка «Прятать выполнение батников», если она стоит в положении Истина, то в папку с батниками копируется утилита, с помощью которой, батники полностью прячутся при выполнении. Это было сделано, чтобы не пугать пользователей черными окнами с не понятными буквами.


Планы на будущее 

Если идея вам понравится, буду развивать эту обработку. Сейчас есть идеи по добавлению функционала: 

— возможность выгрузки .dt 

— брать названия и пути баз из файла ibases.v8i

Придумать можно многое, вопрос только в том, нужно ли это кому-нибудь ? 🙂

 

 

В архиве находятся три версии обработки: Управляемая форма, Обычная и Управляемая форма 8.3 (Скинул форму для 8.3, потому, что на ней делал, там красивое оформление, которое сбрасывается, если открыть через 8.2).

П.С. Прошу прощения за корявые обычные формы, не люблю их, поэтому и возиться не стал.


11 Comments

  1. FreeArcher

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

    Ну и выгрузка в dt, как очень нужная вещь, привычнее как то.

    Reply
  2. FreeArcher

    Отличная обработка, жаль 2 раза плюс не поставить. А вот можно сделать чтобы архивы именовались по датам? Например, «ИмяБазы_24072013.7z».

    И количество хранимых копий маленькая, надо бы 3 знака.

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

    Reply
  3. greenLiss

    (2) FreeArcher, спасибо 🙂 да, всё можно сделать, сегодня-завтра сделаю даты и 3 знака, .dt чуть позже.

    Reply
  4. greenLiss

    FreeArcher, для того, что бы архивы были с датами, нужно удалить старое архивирование (вкладка «Удаление») и создать новое, используя доработанную обработку.

    Reply
  5. musatov1c.ru

    Любопытная разработка. Видимо база «архиватор» висит постоянно в трее, или я что-то не так понял?

    Reply
  6. greenLiss

    (5) evgen1977, не так.

    Открываете обработку, выбираете: какая база, как часто, когда, сколько копий хранить, как архивировать. Нажимаете Создать и всё, можно всё закрывать и больше не открывать.

    Винда сама, своими стандартными инструментами будет делать архивные копии и следить за их количеством.

    Пояснение:

    Есть несколько способов сделать архивную копию базы(просто скопировать папку с базой, скопировать и заархивировать, сделать стандартную выгрузку), не открывая руками саму базу…

    Для этого нужно создать «батник»(пакетный файл, содержащий последовательность команд для cmd.exe(стандартная командная строка винды)) в котором будут команды для создания бэкапов.

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

    Так вот, эта обработка, сама формирует такой батник и запихивает его в планировщик заданий.

    Reply
  7. iandax

    Поддерживаю! Хорошая тема, удобная. Сам так и не добрался до батников, а здесь, как я посмотрю всё наглядно настраивается.

    Reply
  8. Archetype7

    Превосходная обработка, спасибо!

    Reply
  9. 2015ssh

    Нажимаю кнопку «Архивировать сейчас», в ответ пишет: Ошибка доступа к файлу ‘C:Program Files (x86)1cv88.3.10.2299in505бух.bat’ — это когда стандартная dt — выгрузка

    п.с.

    Да вообще всегда пишет, хотя путь к батнику указал совершенно другой.

    Reply
  10. 2015ssh

    Выбираешь путь к файлу 7z.exe, говорит, что неправильный.

    Reply
  11. ALLES

    она в серверную платформу например 2008 затолкнёт расписание запусков7

    Reply

Leave a Comment

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