Запуск внешней обработки по расписанию

Декоративное изображение

Для получения доступа к форуму необходимо авторизоваться
или зарегистрироваться на сайте.

Пользователь ПП
RSS
Здравствуйте!
Пытаюсь настроить выполнение внешней обработки для АА5 через пакетный файл и планировщик windows. Все замечательно отрабатывает при открытом сеансе windows. Как только в планировщике windows устанавливаю параметр "Выполнять вне зависимости от регистрации пользователя" запускается процесс 1cv8.exe, в журнале регистрации АА5 появляются записи о регистрации пользователя, и больше ничего не происходит. Нашел, что при таком запуске АА5 в процедуру
Код
ПриНачалеРаботыСистемы() 
при проверке условия
Код
Если НЕ ОбработкаСтартСистемы.ИнициализацияФункцийВнешнихКомпонент() Тогда
не возвращается ничего. В свою очередь в функции
Код
ИнициализацияФункцийВнешнихКомпонент()
, обработки "СтартСистемы" возникает
Код
КодОшибкиИнициализацииОборудования = 20000
и происходит зацикливание. Как можно обойти проверку инициализации внешних компонент, или как возможно запустить внешнюю обработку по расписанию не изменяя конфигурации?
Декоративное изображение 124
Сотрудник 1С-Рарус
Добрый день.
В данном случае мы рекомендуем пользоваться механизмом фоновых заданий. Все необходимое в конфигурации для этого присутствует.
Пользователь ПП
А нельзя ли поподробнее? Я нигде не нашел ответ как запустить внешнюю обработку, через фоновые задания, не изменяя конфигурации. Напишите, пожалуйста, как это сделать, или где это подробно описано.
Пользователь ПП
Ответа так и не будет? Я видел несколько похожих тем на форуме, с теми же проблемами - ни в одной нет решения. В моем понимании пакетный запуск - это стандартная функция 1С Предприятие. Если конфигурация АА5 не запускается в данном режиме, то это ошибка конфигурации. Если можно как-то запустить внешнюю обработку через фоновые задания, не изменяя конфигурации - напишите как, или дайте ссылку где это описано.
Сотрудник 1С-Рарус
Добрый день, Николай. АРМ Администратор - закладка "Фоновые задания" - Добавить Регламентное задание - Вид задания: произвольная обработка - на закладке "Параметры" подтягивается обработка, которая ранее была добавлена в справочник "Внешние печатные формы" - в контекстном меню "расписание" настраивается расписание данного задания
Пользователь ПП
Здравствуйте, способ предложенный Светланой не работает. После запуска задания возникает ошибка -
Код
"Ошибка компиляции при вычислении выражения или выполнении фрагмента кода"
В журнале регистрации ошибка
Код
{ОбщийМодуль.фзФоновыеЗадания.Модуль(217)}: Ошибка компиляции при вычислении выражения или выполнении фрагмента кода
по причине:
{(1,1)}: Неопознанный оператор
Сотрудник 1С-Рарус
Добрый день, Николай. А данная обработка запускается отдельно без регламентного задания?
Пользователь ПП
Здравствуйте, Светлана. Обработка без регламентного задания запускается и работает. Насколько я понял из описания регламентного задания "Произвольная обработка"  - "Произвольная обработка" вызывает методы, которые прописаны в общем модуле "фзФоновыеЗадания". Как возможен запуск обработки без указания метода в регламентном задании? Какой метод должен быть указан?
Сотрудник 1С-Рарус
Нужно использовать регламентное задание "Произвольная обработка". В произвольной обработке указываете созданную Вами процедуру, которая выполняет определенные действия в Вашем случае это запуск внешней обработки. Процедуру можно прописать в любом глобальном модуле. лучше создайте собственный модуль.
Обсуждения про использование произвольной обработки есть на форуме. Например Здесь.
Сотрудник 1С-Рарус
Николай, правильно ли мы понимаем, что:

1) есть файловая база (фоновые задания на которой запущенного 1С не заработают)
2) есть windows
3) в windows есть планировщик задач
4) Вы хотите настроить планировщик windows, чтобы он например ежедневно в 4:00 запускал Альфу и в Альфе при этом автоматически запускалась некая обработка
Пользователь ПП
Здравствуйте,
1) база - серверная (фоновые задания работают);
2) windows server 2008R2;
3) планировщик задач windows прекрасно запускает и 1С, и мою внешнюю обработку через пакетный файл, но с параметром "Выполнять только для зарегистрированного пользователя", т.е. на сервере должна постоянно быть запущенна сессия пользователя от имени которого запускается задание. Как только в параметрах задания я ставлю параметр "выполнять вне зависимости от регистрации пользователя" 1С запускается, обработка - нет. В первом посте я про это подробно писал.
4) Я хочу чтобы в определенное время запускалась эта или другая обработка, безразлично через пакетный запуск или регламентное задание. Не работает ни один вариант без изменения конфигурации. Если я отключаю функцию ИнициализацияФункцийВнешнихКомпонент() - то срабатывает пакетный запуск, если я напишу свою функцию по запуску обработки - сработает регламентное задание. Я же хочу чтобы была возможность запуска внешней обработки в типовой конфигурации.
Пользователь ПП
Здравствуйте. Так я и не понял элементарную задачу по запуску внешней обработки по расписанию не возможно решить не изменяя конфигурацию?
Сотрудник 1С-Рарус
Здравствуйте!
Вы правы, автоматически запустить внешнюю обработку по расписанию, без изменений конфигурации - нельзя.

Зафиксировали требование: "Должна быть возможность автоматического запуска внешней обработки при запуске программы пользователем в интерактивном режиме, в режиме OLE, в режиме com-соединения". Подумаем как его реализовать.
Пользователь ПП
Цитата
Владимир Гаврилов пишет:
Здравствуйте!
Вы правы, автоматически запустить внешнюю обработку по расписанию, без изменений конфигурации - нельзя.

Зафиксировали требование: "Должна быть возможность автоматического запуска внешней обработки при запуске программы пользователем в интерактивном режиме, в режиме OLE, в режиме com-соединения". Подумаем как его реализовать.

ситуация как-нибудь поменялась?..
интересует вопрос
"как автоматически запустить внешнюю обработку по расписанию без изменений конфигурации?"
ААА 5,0,11,06
Сотрудник 1С-Рарус
А что мешает фоновым заданием "Произвольная обработка" запустить?
В параметрах имя метода пишем как
ВнешниеОбработки.Создать("C:\МояВнешняяОбработка.epf",Истина).ВыполнитьМоиДействия
Но надо учитывать что при работе в серверном режиме путь к обработке должен быть указан относительно сервера предприятия.

Аналогично можно воспользоваться планировщиком из справочника пользователей (работа в пользовательском контексте).
Пользователь ПП
а можно ли каким-то образом запустить обработку из справочника внешних отчетов?..
Сотрудник 1С-Рарус
В принципе можно. Но это не сильно будет отличаться от написанного выше. Т.к. все равно потребуется файл на диске. По другому платформа не может создать объект обработки (чтобы сразу в памяти).
А так ...

Справочники.ВнешниеПечатныеФормы.НайтиПоНаименованию("Имя обработки в справочнике").Хранилище.Получить().Записать("C:\temp\МояВнешняяОбработка.epf"); ВнешниеОбработки.Создать("C:\temp\МояВнешняяОбработка.epf",Истина).ВыполнитьМоиДействия
Пользователь ПП
Цитата
Александр Яблочкин пишет:

В параметрах имя метода пишем как
ВнешниеОбработки.Создать("C:\МояВнешняяОбработка.epf",Истина).ВыполнитьМоиДействия
Но надо учитывать что при работе в серверном режиме путь к обработке должен быть указан относительно сервера предприятия.

Аналогично можно воспользоваться планировщиком из справочника пользователей (работа в пользовательском контексте).
клиент-серверный вариант использования..
прописан вариант типа ВнешниеОбработки.Создать("C:\МояВнешняяОбработка.epf",Истина).ВыполнитьМоиДействия.
задание выполняется без ошибок, но и результата нет никакого..
так же пробовался вариант в собственном общем модуле..
свойМодуль.Действие1
задание выполняется без ошибок, но и результата нет никакого..

при ручном запуске обработки результат обработки есть.

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

2. А какой результат должен быть? Что хочется в результате получить? Следует иметь ввиду что в рамках фонового задания доступен исключительно серверный контекст работы.
Пользователь ПП
выполнение запроса и на его основании формирование файл на диске..
Пользователь ПП
вроде что-то получилось..
Пользователь ПП
Добрый день!

Может кто-нибудь что-то посоветует:

та же ситуация, что и у Николая. Есть bat файл, который запускает 1С:Предприятие под определенным пользователем, у пользователя на закладке "Планировщик задач" добавлено выполнение произвольной обработки(запуск обменов). Так вот если для задачи планировщика задач windows НЕ указан признак "Выполнять вне зависимости от регистрации пользователя", то все отлично отрабатывает. Если флаг указан, то кроме авторизации пользователя ничего не происходит.
На другом сервере(где находится периферийная база) все отрабатывает вне зависимости от этой галки. Конфигурация серверов одинаковая -  windows server 2008R2. Обе базы файловые, АА 5.0.06.07.
Сотрудник 1С-Рарус
Добрый день, Алексей, сотрудники компании 1С-Рарус не оказывают консультации по созданию отдельных задач в планировщике. Возможно кто-то из пользователей форума даст Вам консультацию, это не запрещается правилами форума.
Читают тему
Поддержка отраслевых решений «1С-Рарус»
Услуги 1С