Настройка регламентных заданий с использованием bat-файлов или vbs-скриптов через механизм Task Scheduler Windows

17.04.18

База данных - Инструменты администратора БД

Развернутое описание всех нюансов настройки регламентных заданий без редактирования конфигурации через внешние обработки 1С с использованием bat-файлов или скриптами через механизм Task Scheduler Windows.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Примеры bat-файлов и vbs-скриптов и внешняя обработка запуска
.zip 5,57Kb
13 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Навеяно собственным опытом настройки регламентного задания в типовую УТ без добавления в конфигурацию и обещанием себе в процессе внедрения собрать и систематизировать все материалы, которые были найдены в различных источниках.

Автоматические регламентные задания для конфигураций приложения настраиваются с помощью бат-файлов (файлы с расширением .bat) или скриптами через стандартный механизм Windows (Выполнение задания по расписанию или Task Scheduler), при этом в качестве параметров можно передать неограниченное количество параметров для инициализации нужных процедур.  

Процесс настройки разделяется на четыре этапа:

  1. Написание самой обработки для запуска;
  2. Выбор способа исполнения регламентного задания;
  3. Настройки параметров пользователя 1С для запуска;
  4. Настройка регламентного задания в Task Scheduler Windows.

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

 

Далее следует выбор, как запускать данную обработку.

Ниже я привожу различные вариации как bat - файлов, так и vbs - скриптов.

Каждый из вариантов имеет свои плюсы, так и минусы. Например, использование первого варианта предполагает полный запуск 1С с интерфейсом.

bat_file.bat

"ПУТЬ_К_ТЕКУЩЕЙ_ВЕРСИИ_1С\bin\1cv8.exe" ENTERPRISE /F "ПУТЬ_К_БАЗЕ "/N "ИМЯ_ПОЛЬЗОВАТЕЛЯ_1С" /P "ПАРОЛЬ" /DisableStartupMessages /Execute"ПУТЬ_К_ОБРАБОТКЕ\САМА_ОБРАБОТКА.epf" /C"ПАРАМЕТР1, ПАРАМЕТР2"

bat_serv.bat

"ПУТЬ_К_ТЕКУЩЕЙ_ВЕРСИИ_1С\bin\1cv8.exe" ENTERPRISE /S "ИМЯ_СЕРВЕРА\ИМЯ_БАЗЫ "/N "ИМЯ_ПОЛЬЗОВАТЕЛЯ_1С" /P "ПАРОЛЬ" /DisableStartupMessages /Execute"ПУТЬ_К_ОБРАБОТКЕ\САМА_ОБРАБОТКА.epf" /C"ПАРАМЕТР1, ПАРАМЕТР2"

Так, хочется отметить, что одна из трудностей, с которой я столкнулся, это то, что сначала не указал параметр /DisableStartupMessages, подавляющего сообщения о несоответствии сохраненной конфигурации и конфигурации базы данных. Из-за его отсутствия у меня стопорился процессы выполнения.

scr_file.vbs

Set t = CreateObject("V83.Application")
t.Connect("File=""ПУТЬ_К_БАЗЕ_1С"";Usr=""ИМЯ_ПОЛЬЗОВАТЕЛЯ"";pwd=""ПАРОЛЬ_ПОЛЬЗОВАТЕЛЯ""")
r = t.ExternalDataProcessors.Create("ПУТЬ_К_ОБРАБОТКЕ\САМА_ОБРАБОТКА.epf", FALSE).ThisObject.Example("""""""ПАРАМЕТР1, ПАРАМЕТР2""""""")
If r = 1 Then
    MsgBox("Ok")
End If
t.Exit(False)
set t = Nothing

scr_serv.vbs

Set t = CreateObject("V83.Application")
t.Connect("Srvr=ИМЯ_СЕРВЕРА;Ref=ИМЯ_БАЗЫ;Usr=""ИМЯ_ПОЛЬЗОВАТЕЛЯ"";pwd=""ПАРОЛЬ_ПОЛЬЗОВАТЕЛЯ""")
r = t.ExternalDataProcessors.Create("ПУТЬ_К_ОБРАБОТКЕ\САМА_ОБРАБОТКА.epf", FALSE).ThisObject.Example("""""""ПАРАМЕТР1, ПАРАМЕТР2""""""")
If r = 1 Then
    MsgBox("Ok")
End If
t.Exit(False)
set t = Nothing

 

Лично по своему опыту, мне понравился вариант с vbs - скриптами. Поскольку "V83.Application" по моим субъективным ощущениям работает быстрее, однако, я столкнулся с тем, что часть методов оказалась недоступной, поскольку в типовой УТ на модулях которые были задействованы при записи не стояло галочки "внешнее соединение", потому при записи документов, у меня возникали ошибки, связанные с необнаружением процедур. Потому для себя я решил, для аналитики и чтения он подходит прекрасно, а для записи, все-таки bat-файлы с полноценным запуском. Если тут я не прав, прошу меня поправить.

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

Далее немного о пользователях, от имени которых будет производиться запуск, ему нужны права на "Открытие внешних отчетов и обработок" и думаю, будет не лишним снять галку "Защита от опасных действий" для этого пользователя в конфигураторе.

На следующем этапе встаем на тропу админов. 

Требуется добавить задание в Task Scheduler Windows.

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

Очень важно, чтобы Была выбрана опция "Выполнять для всех пользователей" и была установлена галка "Выполнить с наивысшими правами".

1С все таки, хочешь быстро, устанавливай монопольный режим))

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

На следующем шаге выбираем, что делать, так в нашем случае это будет запуск программы, и когда мы через "Обзор" прикрепим подготовленный bat - файл, планировщик самостоятельно растянет программу и аргументы в нужные поля.

Все остальные реквизиты я оставил по умолчанию.

Нажимаем ОК, наблюдаем как задача добавилась в список и начала исполняться.

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

 

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14640 руб.

29.04.2020    49841    135    161    

90

Файловый обмен (TXT, XML, DBF), FTP Поиск данных Инструменты администратора БД Корректировка данных Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная обработка позволит Вам легко и просто, а главное - быстро, выполнить сравнение данных между ЛЮБЫМИ базами (и РИБ, по правилам конвертаций) по контрольным суммам выбранных объектов баз 1С, работающих на платформах 8.3 и выше. Удобный и понятный интерфейс в виде "мастера". Высокая скорость сравнения достигается за счет специального алгоритма расчета контрольной суммы объекта/записи и сравнения по данным суммам объектов 2х баз через файл. Имеется возможность выбора реквизитов, по которым система будет сравнивать объекты. Сравнение количества записей в движениях документов, возможность сравнивать данные по правилам конвертации и не только! Выбор объектов конфигурации для КАЖДОГО узла в отдельности с индивидуальным отбором для каждого объекта конфигурации, работа с FTP, сохранение или загрузка настроек, сохранение или загрузка результата сравнения, регистрация на обмен объекта и его движений. (Обновление от 12.11.2024, версия 2.2-2.5)

24400 руб.

27.10.2017    45707    31    13    

49

Инструменты администратора БД Системный администратор 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Платные (руб)

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

5490 руб.

10.11.2015    66084    102    59    

84

Архивирование (backup) Инструменты администратора БД 1С:Предприятие 8 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней. Только для WINDOWS! Версия 1.3 от 16.04.2026

7320 руб.

06.11.2012    79207    634    45    

93

Пакетная печать Документооборот и делопроизводство (СЭД) Инструменты администратора БД Файловый обмен (TXT, XML, DBF), FTP 1С:Предприятие 8 1С:Документооборот Платные (руб)

Потоковая выгрузка файлов из 1С Документооборот 8 в произвольную структуру папок. Возможность печати отобранного списка файлов. Внешняя обработка используется для выгрузки файлов из 1С Документооборот 8 в заданную папку с возможностью создания файловой структуры папок на основе имеющихся данных о владельце файла. Также есть возможность конструирования имени выгружаемого файла на основе данных о реквизитах его владельцев.

5094 руб.

03.06.2013    48934    17    7    

25

Инструменты администратора БД Программист 1С:Предприятие 8 Россия Абонемент ($m)

Получить информацию Active Directory на управляемых формах со стороны сервера, под любым пользователем домена.

1 стартмани

21.12.2019    49558    DrZombi    34    

122

Инструменты администратора БД Администрирование СУБД Системный администратор Программист Бесплатно (free)

"Магия" индексов привела к множеству заблуждений об их работе. Попробуем развеять некоторые из них в контексте 1С.

28.11.2019    93246    Infostart    53    

398
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. пользователь 17.04.18 19:30
Сообщение было скрыто модератором.
...
2. пользователь 18.04.18 03:15
Сообщение было скрыто модератором.
...
3. пользователь 19.04.18 06:20
Сообщение было скрыто модератором.
...
4. artbear 1587 19.04.18 17:25 Сейчас в теме
(0) Явный вызов 1cv8 давно уже устарел.

Мы и многие из коллег юзаем удобный и мощный инструмент для автоматизации 1С.

Очень рекомендую vanessa-runner
Запускать 1С стало совсем просто
https://github.com/silverbulleters/vanessa-runner

Работает давно, удобно и быстро, используются штатные возможности командной строки 1С и навороты над ней.

+ Файлы настройки
+ командная строка
+ параметризация
+ относительные пути файлов
+ поддержка кучи операций
+ никаких длинных страшных ключей и командных строк 1С
+ и т.п. и т.д.

Никакие устаревшие явные вызовы 1cv8.exe, который еще найти предстоит, не нужны!
Evil Beaver; vlhown; Gobbledegook; +3 Ответить
5. plebedinskiy 51 20.04.18 10:20 Сейчас в теме
(4) Я не против прогресса, и скорее всего vanessa-runner закономерный этап эволюции. И она обязательна для изучения, но я старался написать статью в помощь людям, которые повседневно сталкиваются с автоматизацией очередного обмена их торговой системы с системой поставщика или покупателя. Статья, с которой можно скопипастить код и быстренько, а главное прозрачненько решить локальную задачу.
Хотя не воспримите мой месседж как отрицание качественности функционала Ванессы.
6. пользователь 20.04.18 19:40
Сообщение было скрыто модератором.
...
7. пользователь 21.04.18 01:17
Сообщение было скрыто модератором.
...
11. пользователь 22.04.18 00:42
Сообщение было скрыто модератором.
...
12. пользователь 23.04.18 04:27
Сообщение было скрыто модератором.
...
14. RustIG 1954 24.04.18 16:22 Сейчас в теме
(4) видео можете снять - как вы используете лучшие инструменты по 1с? прикрепить
лучше один раз увидеть, чем сто раз читать гитхаб :)
15. ArsenProg 24.04.21 23:53 Сейчас в теме
(4) Не могли бы вы объяснить пару примеров когда можно её использовать я просто ума не приложу как и где её применить ?
8. vlhown 21.04.18 07:57 Сейчас в теме
"ПУТЬ_К_ТЕКУЩЕЙ_ВЕРСИИ_1С\bin\1cv8.exe" ENTERPRISE /F "ПУТЬ_К_БАЗЕ "/N "ИМЯ_ПОЛЬЗОВАТЕЛЯ_1С" /P "ПАРОЛЬ"

t.Connect("File=""ПУТЬ_К_БАЗЕ_1С"";Usr=""ИМЯ_ПОЛЬЗОВАТЕЛЯ"";pwd=""ПАРОЛЬ_ПОЛЬЗОВАТЕЛЯ""")


Хорошо, что речь идет всего лишь о запуске 1С, а не банк-клиента.
9. webester 26 21.04.18 14:34 Сейчас в теме
(8)Тут имеет значение под какими правами запускается скрипт, а то еще неизвестно где больше вреда от утекания пароля
13. plebedinskiy 51 23.04.18 09:37 Сейчас в теме
(9) И Вы справедливо подметили, тут действительно верным решением будет именно компиляция в exe и запуск уже его.
10. plebedinskiy 51 21.04.18 15:41 Сейчас в теме
(8) Крайне признателен, за такое важное уточнение, и действительно хранение в открытом виде паролей, это нарушение всего мыслимых и немыслимых правил. Даже если этот запуск осуществляется с закрытого на семь замков сервера.
И ведь мы с Вами прекрасно знаем, что есть возможность скомпилировать BAT в EXE. Не стал об этом писать, чтобы не перегружать статью. Но пожалуй это будет моим следующей мини публикацией.
Для отправки сообщения требуется регистрация/авторизация