Архивация базы 1С-Предприятие

Используем стандартный планировщик Windows и файл Visual Basic Script с файлом настроек, для плановой выгрузки базы данных.

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

За основу темы использовалась разработка на скриптовом языке AutoIt, но очень хотелось именно на Visual Basic Script с внешним файлом настроек.

Изменить внутренние параметры переменных в самом скрипте дело не сложное, но хотелось, чтобы тело исполнения программы оставалось постоянным а менялся только текстовый файл настроек. Таким образом применяя этот скрипт на разных Серверах Предприятия требуется откорректировать только файл настроек. Жаль, что Visual Basic Script не работает напрямую со стандартными Ini файлами, ни через свои функции, ни через WinApi32… Поэтому шел классическим способом перебирая строки в текстовом файле.

Есть идея делать сохранение настроек в системном реестре, но это дело будующего.

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

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

Arc_1C_8.1.vbs nastr.ini

Arc_1C_8.1.vbs nastr2.ini

и.т.д.

По поводу уникальности:

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

Примечание:

  • Реализована функция удаления просроченных архивов. При удалении проверяется префикс архива.
  • 20 января 2010 Реализована возможность работы скрипта при выгрузки из баз версии 7.7. и 8.1 Проверено. В файле — архиве имеются два ini файлика, один для семерки, другой для восьмерки…
  • Пока не продумана схема остановки пользователей… Предполагается, что данная работа совершается в полночь, когда все пользователи отключились.
  • Причем надо будет подумать о механизме блокировки и 8-ки и 7-ки.

До этой разработки архивы выгружал, как рекомендуют в 1С — при помощи создания BackUp в Планировщике SQL Сервера.

3 Comments

  1. alexk-is

    Здесь список ссылок на публикации аналогичной направленности http://infostart.ru/public/19363/

    Reply
  2. cdiamond

    Скрипт для затирания устаревших файлов:

    Set WshShell = CreateObject(«WScript.Shell»)

    Set fso = CreateObject(«Scripting.FileSystemObject»)

    Set folder = fso.GetFolder(Folder_Name)

    Set files = folder.Files

    For Each f in files

    fdate = f.DateCreated

    If ((Date — fdate) > Stack_Depth) Then

    f.Delete

    End If

    Next

    Reply
  3. alves

    (2) Спасибо внес изменение. Выставляю архив с изменениями. Авторство в скрипте в комментариях.

    Reply

Leave a Comment

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