Скрипт для выгрузки информационной базы

Скрипт позволяет произвести выгрузку информационной базы 1С клиент-серверного варианта.

На данном сайте множество различных методов по выгрузке ИБ, но хотелось бы показать свой вариант (возможно, кто-то делает так же).

Скрипт имеет всего несколько строк кода, и это радует. 

1. Открываем блокнот, вписываем туда следующий код:

chcp 1251 
start /wait /d"C:Program Files1cv828.2.19.83in" 1cv8.exe ENTERPRISE /S ИмяСервераИмяБазы /N Логин /P Пароль /DisableStartupMessages /C ЗавершитьРаботуПользователей
start /wait /d"C:Program Files1cv828.2.19.83in" 1cv8.exe DESIGNER /S ИмяСервераИмяБазы /N Логин /P Пароль /UCКодРазрешения /DumpIB "D:BuhCopy_%date:~-10%.dt" /DumpResult "D:Read_%date:~-10%.txt"
start /wait /d"C:Program Files1cv828.2.19.83in" 1cv8.exe ENTERPRISE /S ИмяСервераИмяБазы /N Логин /P Пароль /C РазрешитьРаботуПользователей /UCКодРазрешения
exit

2. Заменяем, что выделено жирным шрифтом — у каждого это свои параметры. Сохраняем файл.

3. Меняем расширение файла с *txt на *bat и сохраняем.

После чего можно протестировать данный батник на работоспособность, открыв его.

Скрипт должен выполнить следующие действия:

— заходит в базу под пользователем (пользователь должен иметь полные права), блокирует базу и завершает работу пользователей, выходит; 

— заходит в заблокированную базу под пользователем, введя код (пользователь должен иметь полные права), делает файл *dt, пишет результат выполнения выгрузки в файл *txt и сохраняет его, выходит;

— заходит в базу под пользователем (пользователь должен иметь полные права), снимает блокировку базы, выходит;

4. После успешного тестирования можно повесить данный файлик на планировщика заданий по расписанию.    

Добавил файлы txt и bat — они полностью дублируют текст, который опубликован выше. 

13 Comments

  1. tarassov

    похоже на спам

    Reply
  2. bashirov.rs

    (1) tarassov, почему спам?

    Reply
  3. DitriX

    Вы только объясните — зачем это надо?

    Reply
  4. bashirov.rs

    (3) DitriX, я вроде как все описал в статье. процитирую еще раз

    Скрипт позволяет произвести выгрузку информационной базы 1С клиент-серверного варианта
    Reply
  5. Virikus

    Рекомендую доработать скрипт под переменные, чтобы не писать несколько раз имя базы и т.д.

    set NameBase=ИмяБазы

    set NameServer=ИмяСервере

    set Login=Логин

    set Password=Пароль

    start /wait /d»C:Program Files1cv828.2.19.83in» 1cv8.exe ENTERPRISE /S %NameServer%\%NameBase% /N %Login% /P %Password% /DisableStartupMessages /C ЗавершитьРаботуПользователей

    Reply
  6. bashirov.rs

    (5) Virikus, Спасибо за рекомендации, я только за.

    Reply
  7. user826142

    ЗавершитьРаботуПользователей. Эта запись как работает? Запускает процедуру из общего модуля конфигурации?

    Reply
  8. bashirov.rs

    Комнада «/С» со значением «ЗавершитьРаботуПользователей» передает параметр в конфигурацию. Да, в общих модулях есть процедура (на типовых конфигурациях). Цитирую себя, как работает — «заходит в базу под пользователем (пользователь должен иметь полные права), блокирует базу и завершает работу пользователей, выходит;»

    (7)

    Reply
  9. user826142

    Спасибо за ответ. Я уже разобралась, просто у меня конфигурация не типовая, самописная, ну вообщем выкрутилась. Спасибо за полезный скрипт)

    Reply
  10. spitfire531766

    В первый день всё выгрузилось корректно, в последующие дни начинает зависать. Картина такая, он заходит в 1с и всё. Стоит закрыть программу и он начинает выгружать базу. Подскажите плиз, почему не работает. Windows server 2012 r2

    Reply
  11. spitfire531766

    Журнал регистрации 1С показывает: 19.11.2018 1:00:41 {ОбщийМодуль.АдминистрированиеКластераCOMКлиентСервер.Модуль(1042)}: Метод объекта не обнаружен (ConnectAgent)

    СоединениеСАгентомСервера = COMСоединитель.ConnectAgent(СтрокаСоединенияСАгентомСервера);

    Reply
  12. alexeyvs77

    Строчка скрипта для завершения работы всех пользователей упорно не отрабатывает.

    Просто открывает сеанс 1С /S ИмяСервераИмяБазы /N Логин /P Пароль, и все(

    Платформа 8.3.13.1513

    Reply
  13. bashirov.rs
    start /wait /d»C:Program Files1cv828.2.19.83in» 1cv8.exe ENTERPRISE /S ИмяСервераИмяБазы /N Логин /P Пароль /DisableStartupMessages /C ЗавершитьРаботуПользователей

    «C:Program Files1cv828.2.19.83in» — это должно быть примерно так «C:Program Files1cv88.3.13.1513in»

    «ЗавершитьРаботуПользователей» — это может быть другой, зависит от конфигурации. На УТ вроде что-то другое прописано, если я не ошибаюсь.

    Reply

Leave a Comment

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