Имя: Пароль:
1C
1С v8
Архивирование базы по дням недели
0 tesei
 
05.04.15
12:06
база архивируется батником. Если запускать вручную, то он исполняется, получается фай вида: trade_1.dt. Если запускать через планировщик заданий или corbian backup, то не работает, выдает оибку в строке echo %day_of_week%. ОС windows server 200 R2Datacenter SP1. Тот же батник под 2003 server работает.

файл today.vbs:
WScript.Echo WeekDay(Now)

бат-файл:

@echo off
chcp 1251

rem ----------------------------------------------------------------------
rem заполнение переменных
rem ----------------------------------------------------------------------

setlocal

for /f "Tokens=1*" %%a in ('cscript /nologo today.vbs') DO set day_of_week=%%a

echo %day_of_week%
set base=trade
set folder=C:\base_1c\_archive
set file_name=%folder%\%base%\%base%_%day_of_week%

set platform=1cv8\8.3.4.465
set database=C:\base_1c\trade
set login=
set passw=

rem ------------------------------------------------------------------
rem Выгружаем базу
rem ------------------------------------------------------------------

"C:\Program Files (x86)\%platform%\bin\1cv8.exe" CONFIG /F %database% /N %login% /DumpIB %file_name%.dt /OUT "backup.log" -NoTruncate

echo %date% >> backup.log

endlocal
1 alkras
 
05.04.15
13:38
Из под какого пользователя запускаешь задание. Может у наго есть ограничение на запуск скриптов?

Попробуй такой вариант. Работал у меня до перехода на SQL бэкапы, проблем небыло. Ложит файлы в папку помесячно.

setlocal enabledelayedexpansion
set count=0
set month=1%date:~3,2%
set /a month-=100

for %%a in (Январь Февраль Март Апрель Май Июнь Июль ^
Август Сентябрь Октябрь Ноябрь Декабрь) do (
set /a count+=1
if !count! equ %month% (set m=%%a))
md "i:\BaseCopy\%m%\uat\"

echo Текущий месяц %m%

set v8exe="c:\Program Files (x86)\1cv82\8.2.19.83\bin\1cv8.exe"
set AdminUser=/N"AdminUser"   /P"PasswordAdminUser"  /WA-
set FileInformation=i:\BaseCopy\%m%\error_log.txt
set FileCopyLog=i:\BaseCopy\%m%\copy_log.txt
date /t >> %FileInformation%
time /t >> %FileInformation%


rem --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
rem Создание копии UAT

set DataBaseName="Server/uat"
set DataBase=/S%DataBaseName%
set DataBaseName>>%FileInformation%

rem Завершение работы пользователей
start "" /wait %v8exe% ENTERPRISE %DataBase% %AdminUser% /C"ЗавершитьРаботуПользователей" /UC"ПакетноеОбновлениеКонфигурацииИБ" /Out%FileInformation% -NoTruncate /DisableStartupMessages

set filebak="i:\BaseCopy\%m%\uat\%date% %time:~-11,2%-%time:~-8,2%-%time:~-5,2% УАТ.dt"
start "" /wait %v8exe% CONFIG %DataBase% %AdminUser% /DumpIB%filebak% /UC"ПакетноеОбновлениеКонфигурацииИБ" /Out%FileInformation% -NoTruncate

rem Разрешение работы пользователей
start "" /wait %v8exe% ENTERPRISE %DataBase% %AdminUser% /C"РазрешитьРаботуПользователей" /UC"ПакетноеОбновлениеКонфигурацииИБ" /Out%FileInformation% -NoTruncate /DisableStartupMessages
2 bolero
 
05.04.15
14:32
> получается фай вида: trade_1.dt

люди делятся на три вида: кто не делает бекапы, кто уже делает бекапы, и кто проверяет, что из бекапа действительно всегда можно восстановить данные
3 tesei
 
06.04.15
09:51
(1) попробую, только для месяца надо в 4 раза больше места под архивы, для дальнейшей передачи на ftp это критично.