На данном сайте множество различных методов по выгрузке ИБ, но хотелось бы показать свой вариант (возможно, кто-то делает так же).
Скрипт имеет всего несколько строк кода, и это радует.
1. Открываем блокнот, вписываем туда следующий код:
chcp 1251 start /wait /d"C:\Program Files\1cv82\8.2.19.83\bin\" 1cv8.exe ENTERPRISE /S ИмяСервера\ИмяБазы /N Логин /P Пароль /DisableStartupMessages /C ЗавершитьРаботуПользователей start /wait /d"C:\Program Files\1cv82\8.2.19.83\bin\" 1cv8.exe DESIGNER /S ИмяСервера\ИмяБазы /N Логин /P Пароль /UCКодРазрешения /DumpIB "D:\BuhCopy_%date:~-10%.dt" /DumpResult "D:\Read_%date:~-10%.txt" start /wait /d"C:\Program Files\1cv82\8.2.19.83\bin\" 1cv8.exe ENTERPRISE /S ИмяСервера\ИмяБазы /N Логин /P Пароль /C РазрешитьРаботуПользователей /UCКодРазрешения exit
2. Заменяем, что выделено жирным шрифтом - у каждого это свои параметры. Сохраняем файл.
3. Меняем расширение файла с *txt на *bat и сохраняем.
После чего можно протестировать данный батник на работоспособность, открыв его.
Скрипт должен выполнить следующие действия:
- заходит в базу под пользователем (пользователь должен иметь полные права), блокирует базу и завершает работу пользователей, выходит;
- заходит в заблокированную базу под пользователем, введя код (пользователь должен иметь полные права), делает файл *dt, пишет результат выполнения выгрузки в файл *txt и сохраняет его, выходит;
- заходит в базу под пользователем (пользователь должен иметь полные права), снимает блокировку базы, выходит;
4. После успешного тестирования можно повесить данный файлик на планировщика заданий по расписанию.
Переделал текст скрипта по выгрузки информационной базы.
Обновил файлы согласно замечаниям и предложениям (версия 2):
echo on
set mydate=%date:~,10%
set NameBase=ИмяБазы
set NameServer=ИмяСервере
"C:\Program Files\1cv8\8.3.14.1854\bin\1cv8.exe" ENTERPRISE /S%NameServer%\%NameBase% /DisableStartupMessages /C ЗавершитьРаботуПользователей
"C:\Program Files\1cv8\8.3.14.1854\bin\1cv8.exe" CONFIG /S%NameServer%\%NameBase% /DisableStartupMessages /UC КодРазрешения /DumpIB "D:\%mydate%buhcopy.dt" /OUT "D:\%mydate%buhlog.txt"
"C:\Program Files\1cv8\8.3.14.1854\bin\1cv8.exe" ENTERPRISE /S%NameServer%\%NameBase% /DisableStartupMessages /C РазрешитьРаботуПользователей /UCКодРазрешения
move "D:\%mydate%buhlog.txt" "\\10.10.10.1\1cBackup\%mydate%buhlog.txt"
move "D:\%mydate%buhcopy.dt" "\\10.10.10.1\1cBackup\%mydate%buhcopy.dt"
Добавил еще пару строк по копированию файлов *dt и *txt с сервера в необходимое место, где будут храниться все архивы. В моем случае необходимо заранее предусмотреть папку "1сBackup"
Убрал авторизацию пользователя, т.к. в данном случае используется вариант, где в планировщике задания указан пользователь из под которого будет выполняться скрип. Пользователь соответственно должен быть зарегистрирован в ИБ под администратором.
Файлы txt и bat (любой версии) - полностью дублируют текст, который опубликован выше.