Теперь это больше не проблема.
Если есть возможность редактировать регламентные задания — нет проблем редактируйте их
Статья для тех, кто не изменяет конфу.
Не исключаю вероятности, что многие уже знают об этих методах, но возможно кому-то всеже пригодится.
Итак
1 этап
Создаем ярлык для 1cv8.exe где бы она не находилась
дальше пишем параметры запуска в виде:
«C:Program Files1cv828.2.15.289in1cv8.exe» /IBName «Управление торговлей (демо)» /N «Федоров (администратор)» /p «123456» /Execute «W:обработкиАвтозапускОбмена.epf»
где /IBName — Имя базы в списке при запуске
/N Имя пользователя
/P его пароль
/Execute путь и имя файла запускаемой обработки
при выполнении такого ярлыка запустится 1с и запустит выбранную обработку
НО
поскольку это делается по расписанию, нам скорее всего захочется чтобы обработка сделала свое грязное дело и не просто закрылась, а выключила 1с.
Это тем более не проблема.
Что мы делаем:
при запуске обработки естественно включится процедура
«ПриОткрытии» основной формы обработки
Вот в конец этой процедуры и надо просто добавить строку
ЗавершитьРаботуСистемы(Ложь);
А посклольку обработка внешняя — ее можно редактировать в конфигураторе без проблем
остается просто внести наш созданный в самом начале ярлык в стандартный шедулер виндовс, я так думаю это точно умеют все (кто не знает где это -пуск-панель управления-/если вид по категориям, то переключиться к классическому виду кнопкой переключение к классическому виду /-назначение задания)
В приложении пример такого ярлюка и обработка которая запустит обмен с сайтом по настройке «Обмен с WEB — сайтом (Товары и Заказы)» а потом выключит 1с.
обработка провелялась на «Управление торговлей», редакция 10.3 (10.3.16.1)
Попробуем, актуально для 10-ой торговли
(1) А что в остальных конфах 1с есть более простой метод запуска по расписанию без редактирования самой конфы?
(2)
в 11 ут есть шаблон регламентного задания — запуск дополнительных обработок
в 10 ут нету
(3) Спасибо, надо будет почитать….
(4)
думается в новых версиях продуктов такая фича везде будет — и в бух 3.0 и в зарплате 3.0
остается только дождаться
Очень хорошо как пример для учебника и «информация к размышлению».
На практике тут много подводных камней.
В частности, реально запускать имеет смысл не любую внешнюю обработку,
а только специально разработанную для пакетной обработки.
Молодец автор, за идею плюс.
Хотелось бы ещё от автора узнать, где полезна данная идея именно ему?
(8) Поставщик просил ежедневно отчеты по эл почте высылать, вот я и придумал как от работы отлынить.
полезная тема давно сам пользую.
аналог использую давно, во многих случаях такой подход более оправдан нежели регламентные задания.
(9) в последней БСП это реализовано уже 🙂
Идея баянная, подводных камней много.
Или уж действительно надо делать пакетную обработку, эдакий «менеджер регламентных заданий», которая будет стартовать все остальные и рулить протоколом сделанного; или отдельные фоновые задания лепить и всё. Я уж думал, тут как раз такая обработка предложена.
Кроме того, пароли имеют свойство меняться, важно это помнить.
Да, да, да. И если пароли меняются автоматически. То буде проблема
Вообще не любой обработки наверное, а той которая все свои процедуры выполняет при открытии. И в которую никакие параметры передавать не нужно.
(13) Идея может и баянная но реализацию ее когда для себя искал — готовых решений нет… или может дашь ссылку?
(15) Потенциально — любой, но как справедливо заметил Alex210 (6) на практике эту любую надо напильником доделывать.
вообще отличное и в тоже время простейшее решение.. усложнять ничего никогда не надо…
и это яркий пример тому.
Спасибо автору, статья очень кстати 🙂 ПЛЮС
(9) лень — движущая сила программиста 🙂
Доходчиво описано.
Спасибо автору статья правда полезная.Попробуемс
спасибо за ликбез 🙂
Пароль в командной строке задания легко прочитать. Это «минус».
Потому советую сделать так.
1. Сделать специального пользователя в Винде.
2. Сделать специального пользователя в 1С, с отключенной авторизацией в 1С и включенной виндовс-авторизацией пользователя, созданного в п. 1.
3. Задание в планировщике сделать от пользователя Винды из п.1 без указания пользователя 1С.
(8) agent007,
Я такой метод использую для восстановления последовательности, т.к. с помощью регламентных заданий не удалось добиться этого.
(22) SiAl,
При условии, что это обработки на подобии отправки email. Если это должно выполняться в ночное время, то это будет на сервере -> Естественно доступ к серверу ограничен (я надеюсь у всех). Хотя конечно вы правы — необходимо заботиться о безопасности.
попробовал этот метод
через пару дней при запуске выдается сообщение «информационная база не зарегистрирована». Куда копать?
(24) exciter, такое может быть если на сервере где SQL стоит сервис 1с предприятие не запущен…
(25) исключено! все запущено, базы прописаны верно
после перезапуска службы (или даже сервера) ошибка не исчезает
(26) Если вручную открыть 1с и зайти под этим пользователем на этом компе в этуже базу данных входит нормально?
а если с другого компа под этим же пользователем в эту базу?
(27)если обычный ярлык запустить, то нормально.
Обнаружил, что если запустить консоль администрирования и залогиниться в необходимую ИБ, то все отлично выполняется %) причем каких-либо зависших сеансов в консоли нет
(28) а на другом компе запуск ярлыком с параметрами этой же базы прокатывает?
(27)если обычный ярлык запустить, то нормально.
Обнаружил, что если запустить консоль администрирования и залогиниться в необходимую ИБ, то все отлично выполняется %) причем каких-либо зависших сеансов в консоли нет
Та же фигня, что такое, непонятно
(30) Тогда даже не знаю.
Попробовал у себя покоцать ярлык и список баз данных чтобы такую же ошибку получить — не получилось…
(8) я такой метод не первый год использую для загрузки курсов валют в 18.00
А можно я для 7.7 такую же мысль выложу, если вы не планировали и если ещё нету — я вроде не нашел?
Прикольное дело!
Идеям нет предела!
+++++++++++++++++++++++++++++++++++++++++++++
(33) Можно, конечно.
Я в 1с7 все равно не особо рублю.
Тоже подобным образом работают обмены.
полезно было-бы в параметры запуска добавить /DisableStartupMessages
http://infostart.ru/public/104654/ и не такое сможете реализовать
А вообще читайте статью автора Chif13
У меня подобное не прокатило. Нужно было чтобы ночью делался отчет по количеству документов введенных пользователями. Утром вижу висящий процесс 1cv8.exe, с временем работы процессора 1 сек. Если просто запустить назначеное задание все отрабатывает на ура. Видимо 1С-ка не хватает выполненного входа в систему…
Попробую через регламентные задания.
Вообще все это костыли.
Запускать 1с, в ней обработку, и все это запускать по виндовому планировщику — это как связать три палки за концы, и использовать их как мост.
Что-то выдержит, но в основном — где-то цепочка оборвется и все провалится.
Слишком много неизвестных — как пройдет авторизация «пользователя» в 1с, как запустится виндовая задача (и запустится ли вообще, или зависнет), как отработает 1с, закроется ли потом или тоже процес зависнет (а то и вся 1с-ка) по какой-либо причине до утра…
В общем, мост из палок, связанных за концы.
Делайте либо регламентные задания (которые на сервере 1с тоже любят «зависнуть» без причины), либо логгируйте хотя бы этапы запуска и выполнения — чтобы хотя бы знать, где не сработало….
В продукте 2iS:Интеграция реализована подобная возможность.
http://infostart.ru/public/145983/
Делаю вот такhttp://infostart.ru/public/15995/ .
Не коцая конфигурацию, доволен!
Статья хорошая, но у меня насущный вопрос:
если перед выполнением в обработке необходимо заполнить некоторые реквизиты, куда это вписать?
(43) В процедуру ПриОткрытии() самой обработки которую запускаете .
http://infostart.ru/public/123151/ в которой переписан модуль обработки (строка 96 — дописано что заполнять).
Или (как вариант) запускать не напрямубю, а обрабкой
У 1с много чего стандартного есть, но все или очень каряво работает или нереально медленно. Поэтому говорю спасибо, надеюсь работает как положено.
статья полезная.Можно попробовать …………..
Спасибо за полезную статью.
Дествительно статья полезная. А что касается заполнения самой отработки то можно прописать дополнительную процедуру обработке и вставить её в прозудуру ПриОткрытии(), тут уже открывается простор для вашего творчества. Естественно что данная методика не панцея от всего, но часть рутинных задач она решать может без проблем.
Спасибо. Буду пробывать. У меня схема такая: в 20:00 запускается обработка, которая выгоняет всех из базы, после этого запускается выгрузка информационной базы, а потом обмен с филиалами.
Планировщик windows любит запускать задания от имени системной учетки system, под которой ни список баз не прописан в %appdata%
oaming1C1CEStart , ни доступа к сетевым папкам. Отсюда 90% проблем.
Ни фига подобного — не прокатывает, сеанс на сервере 1Цэ висит и все. Никаких результатов.
(51) micha26, а можно тест параметра сюда скопировать, может что-нить написано не так?
(52) да можно конечно
Права на папку есть. Windows Server 2012R2, запуск задания в планировщике из под админа, галочка с наивысшими правами стоит.
Если батник руками запустить — то все отрабатывает, в обработке завершение сеанса 1С прописано — так же работает.
Так же по совету товарищей и Инфостарта сделал скрипт vbs и конвертировал его в exe — та же фигня, ручной запуск — все работает, в планировщике — йух.
А что делать если сеанс и обработка запускаются, но пишет что установлен Безопасный режим. Выполнение операции запрещено?
(53) а почему вы через 1cestart.exe запускаете? В примере автор явно указал 1cv8.exe, он же толстый клиент. В крайнем случае я думаю можно запустить 1cv8c.exe — тонкий клиент.
В УТ 11 (БСП 2.4 и выше) есть рассылка отчетов по расписанию, можно требуемые действия засунуть в доп. отчет.
(53)
(55) Для тех кто столкнулся с такой проблемой. В планировщике, в задаче на вкладке действия вместо ярлыка указываем путь «C:Program Files1cv828.2.15.289in1cv8.exe». Далее в поле «Добавить аргументы» пишем параметры /IBName «Управление торговлей (демо)» /N «Федоров (администратор)» /p «123456» /Execute «W:обработкиАвтозапускОбмена.epf. Всё работает как надо.
Добрый день, можно ли приспособить вашу разработку для внешних вызовов 1с 7.7 и выполнения заданий в ней по расписанию?
Добрый день!
Да, можно. Запуск 1С Планировщика можно настроить при запуске 1С 7.7 в конфигурации в разделе при старте системы. В самом планировщике прописать необходимые задачи. Я использую запуск 1С Планировщика под отдельным пользователем. Подробнее описано в руководстве.