Создание Работы на экране Работы

Работа может создаваться не только вручную, но и автоматически Оркестратором по мере отработки определенного Расписания или Работу можно завести через API.

После создания Работы Оркестратор видит, что Unattended-Робот недоступен, но ему назначен Координатор, и этот Координатор доступен. Оркестратор направляет Координатору команду на включение учетной записи этого Unattended-Робота. Координатор принимает команду и в рамках сервера поднимает RDP-подключение своей собственной учетной записи, в которой находится этот Робот. Т.е. он запускает RDP-подключение, учетная запись включается, внутри учетной записи запускается Unattended-Робот, в списке его индикатор становится зеленым. Он обращается к Оркестратору, видит, что в Работах для него есть Задача, принимает ее и отрабатывает.

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

Автоматический выход из Учетной записи — это стандартная практика, часть подхода enterprise-фреймворков, в которой каждый запуск какой-либо задачи изолируется от других запусков через перезагрузку Учетной записи.

При возникновении нестандартных ситуаций в Учетной записи, например, если одна из программ, с которой работает Робот, зависает или появляется модальное диалоговое окно, которое блокирует все и Робот не может продвигаться дальше, потому что данный вариант не был предусмотрен в сценарии. Сценарий Робота в этом случае завершается с ошибками, но программа, с которой работал Робот (1С, к примеру), остается “висеть” с модальным окном и получается, что интерфейс заблокирован. Когда в следующий раз по Расписанию на этой же Учетной записи запустится Робот и начнет отрабатывать сценарий, он не сможет преодолеть заблокированную программу. Поэтому существует стандартная практика – когда Работа с Unattended-сценарием завершена (успешно или неуспешно), происходит его “Log off”. Операционная система убирает все лишнее и к следующему запуску Робота все начинается с чистого листа.

Эта функция безусловна, то есть при запуске через Координатор, Logoff произойдет в любом случае.

.

Примечание. Подобная организация взаимодействия с Работами позволяет обрабатывать множество записей из Очереди внутри одного запуска Работы. В сценарии Робота может быть множество разных блоков: Получить сценарии из очереди, Изменить статус задачи и другие. При запуске сценария из Очереди берется Задача, обрабатывается, затем берется следующая и так далее.