Простенький батник: Создание простого .bat по созданию файлов .txt? — Хабр Q&A

Регулярные операции по обслуживанию БД БЭСТ-4+

Рассмотрим несколько способов облегчить жизнь администратора баз данных БЭСТ-4+.
К регулярным профилактическим мероприятиям с БД БЭСТ-4+ относятся:

— Операции по обновлению версий программы;
— Резервное копирование;
— Индексирование и упаковка.

Установка и обновление БЭСТ-4+ на рабочих станциях.

Порядок установки подробно описан в файле readme.rtf, идущем в поставке БЭСТ-4+.
Порядок установки сервис-паков описан в текстовом файле, идущем с пакетом.
В тех случаях, когда рабочие станции запускаются из общего каталога на сервере – добавить больше нечего.
В тех же случаях, когда исполняемые файлы размещаются на рабочих станциях – процедура обновления БЭСТа будет закончена после того, как изменения будут скопированы и на все рабочие станции.
С целью облегчения установки станций и их обновления, можно создать простенький bat-файл, размещаемый в каталоге с best.bat. rem Создаем каталог b4_plus на локальном диске
 

If Not exist c:\b4_plus (mkdir c:\b4_plus)
rem Создаем каталог BIN для размещения исполняемых файлов
If Not exist c:\b4_plus\bin (mkdir c:\b4_plus\bin)
rem Копируем исполняемые файлы
COPY bin\*. * c:\b4_plus\bin
rem копируем конфиг-файлы
COPY config.* c:\b4_plus
rem Копируем главный запускаемый файл
COPY best.bat c:\b4_plus
rem Создаем pro.ini с указанием местоположения каталога pro
echo %CD%\pro\ > c:\b4_plus\pro.ini

В итоге, мы получили минимальную конфигурацию для создания рабочей станции. Сюда можно добавить копирование ярлыка, созданного для запуска и других необходимых файлов. Но будет ли работать БЭСТ-4+?
Для запуска БЭСТ-4+ и работы в нем, этого на первый взгляд достаточно, но при работе возникнут проблемы, из-за отсутствия каталога с утилитами.
Следует добавить:

 

rem Создаем каталог util
IF not exist c:\b4_plus\util (mkdir c:\b4_plus\util)
COPY util\*.* c:\b4_plus\util

И самой последней строкой добавляем:

 

call sp\setupprn. exe

Теперь разместим этот файл, loc_set.bat к примеру, в корневом каталоге БЭСТа.
Процедура установки станции и обновления пакета может намного упроститься, достаточно будет запустить всего один командный файл. Здесь уже больше организационных вопросов и вопросов к системному администратору.

В readme.rtf, в приложении 2 указаны переменные окружения, необходимые для запуска БЭСТ-4+. Их следует добавлять в первых строках файла best.bat, либо в другом файле из которого осуществляется запуск best.bat.

Для станций, можно формировать best.bat в нашем пакетном файле. (если best.bat остается оригинальным).

 

Rem Фрагмент кода, взамен COPY best.bat c:\b4_plus
echo SET BEST_KEY=2 > c:\b4_plus\best.bat
echo SET BEST_NET=TCPIP >> c:\b4_plus\best.bat
echo SET BEST_NAME=192.168.1.1 >> c:\b4_plus\best.bat
type best.bat >> c:\b4_plus\best. bat

Если возникают вопросы по формированию командного файла и параметрам командной строки, на сайте http://www.saitov.km.ru/ можно найти подробные справочники, которые могут пригодиться в работе.

Резервное копирование

Не стоит лишний раз напоминать о важности ежедневного резервного копирования.
Наверняка этот вопрос уже решен, применительно к другим вашим данным.
Самое традиционное решение – запуск архиватора с параметрами по расписанию, прописанному в планировщике задач.
Например, для winrar

 

winrar.exe a -av -agYYMMDD -dh -ep1 -m5 -r -y -x*.exe -xactive.sem -xtmp -x*.cdx X:\archivs U:\b4_plus\DBASE\*.*

Немного сложно, для человек незнакомого ранее с командной строкой, и неудобно. В комплексе, задачу архивирования по расписанию уже решили в нескольких утилитах. Одна из них – «Резервные копии для 1С».

Ссылка для скачивания http://www. aqtech.com/ru/download/setupb1c.exe

Утилита бесплатная, основные возможности:

  • Настройка параметров задач как по умолчанию, так и для каждой в отдельности
  • Мастера действий
  • Задание каталогов, файлов и масок для архивации
  • Задание исключений
  • Произвольное количество мест для хранения резервных копий
  • Задание времени начала архивации
  • Выбор дней недели для архивации
  • Возможность архивации при включении компьютера
  • Задание промежутка времени между архивациями
  • Задание дат начала и окончания архивации
  • Задание срока хранения архивов
  • Задание количества архивов для хранения
  • Временное отключение задания
  • Задание пароля для архивов
  • Настройка действий при ошибках
  • Подача звуковых сигналов через стандартный динамик компьютера
  • Настраиваемый журнал событий
  • Сворачивание в трэй

Пример использования

Снимок экрана №1 — Установка расписания

Снимок экрана №2 — Файлы и папки для архивирования

Снимок экрана №3 — Маски исключения

 

Снимок экрана №4 — Папка для хранения

 

Снимок экрана №5 — Запуск программы после архивации

 

Снимок экрана №6 — Действия при ошибках, проверка баз перед архивацией

 

Индексация

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

В некоторых случаях, наличие копии базы с удаленными записями – позволяет провести оперативное «расследование» конфликтных ситуаций и восстановить необходимые данные. Поэтому, следует задать еще один вопрос – как часто необходимо индексировать базы данных?

Ответить на этот вопрос можете только вы сами.

В настройках БЭСТ-4 есть возможность включить ежедневную индексацию при входе в программу. В итоге, кто первый заходит – тот и запускает режим индексации баз данных. Не совсем оптимальное решение и подходит больше для однопользовательского варианта.

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

Формат записи

bin\init. exe index L:xxxxxx A:yy T:z
Где
L:xxxxxx- Код предприятия (из карточки предприятия, label.pro поле lbl_code)
A:yy — Подсистема (поле ARM из таблицы BASE_ALL.DBF)
T:z — Тип индексации 1 — Основные,2 — Архивные,3 — Все

Примеры использования:
Для нескольких предприятий:
bin\init index L:000001 L:000002

Для нескольких подсистем в нескольких базах Bin\init index L:код предприятия А:код подсистемы А:код подсистемы L:код предприятия А:код подсистемы и т.д.

bin\init index L:000001 A:00 A:01 A:14 A:MR L:000002 A:00 A:01 A:02 A:06

Сохранив эту строку в ind.bat, мы получаем законченную систему автономного обслуживания БД БЭСТ-4+ на базе программы «Резервное копирование для 1С».
С проверкой занятости баз перед запуском и индексированием после создания архива.

[CMD] .bat-файлу отказано в доступе | SafeZone

JavaScript отключён. Чтобы полноценно использовать наш сайт, включите JavaScript в своём браузере.