Основные блоки

Старт

С блока «Старт» начинается работа диаграммы. В диаграмме может быть только один такой блок.

Конец

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

Процесс

Блок позволяет создавать сценарии, состоящие из нескольких диаграмм. Выполнение сценария продолжится с блока «Старт» указанной диаграммы проекта. Выполнение сценария вернётся к текущему блоку и продолжится в текущей диаграмме как только будет достигнут блок Конец во внешней диаграмме.

Комментарий

Блок позволяет разместить в диаграмме любой текстовый комментарий. Блок не является частью сценария.

ToDo

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

Лог

Позволяет выводить в лог произвольные сообщения и/или значения переменных в процессе работы сценария робота. Сообщения будут доступны для просмотра в панели «Лог» программы-дизайнера, а также в текстовых файлах логов программы-робота.

Условие

Блок проверяет указанное условие на истинность и, в зависимости от результата, выполнение сценария продолжается в сторону выхода «Да» (условие выполнилось) или "Нет" (условие не выполнилось). Например, условие $a == "Привет" проверяет, равно ли значение переменной $a значению «Привет», а условие $Result > 5 проверяет, превышает ли значение переменной $Result значение 5. Условие может содержать математические и логические операции, константы, функции, другие переменные и т.д. Примеры выражений, которые можно использовать в условиях, доступны по нажатию на кнопку «...» рядом со свойством Условие.

Switch/Case

Оператор switch сравнивает выражение с указанными значениями и выходит по указанному коннектору. Если совпадений не будет обнаружено, то выходит по коннектору «По умолчанию».

Присвоить значение переменной

Блок устанавливает новые значения для одной или нескольких переменных. Новое значение переменной может быть как константой (числом, текстовой строкой), так и выражением с использованием других переменных и/или функций. В новом значении переменной разрешено использовать выражение с участием этой же переменной. Не забудьте, что здесь и в других блоках используемые в выражениях названия переменных должны начинаться с символа $, а строковые константы должны заключаться в кавычки. Переменная может быть выбрана из числа объявленных в панели «Переменные», также может быть вручную введено имя новой переменной или ранее использовавшейся в других блоках переменной, даже если эта переменная не была объявлена в панели «Переменные». Примеры выражений, которые можно использовать в свойствах Значение, доступны по нажатию на кнопки «...» рядом с соответствующими свойствами.

Цикл Для каждого (Таблица Данных)

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

Цикл Для каждого (Список)

Перебирает все элементы в заданном Списке, в каждой итерации цикла присваивает текущий элемент переменной, которая указана в свойстве «Элемент», а затем выполнение сценария продолжается в сторону выхода Элемент данного блока (в, так называемое, «тело цикла»). После перебора всех элементов списка выполнение сценария продолжается в сторону нижнего выхода блока. Не забудьте соединить выход последнего блока в теле цикла со входом данного блока.

Цикл Для каждого (Словарь)

Перебирает все элементы (пары «Ключ-Значение») в заданном Словаре, в каждой итерации цикла присваивает текущий элемент словаря переменным, которые указаны в свойствах Ключ и Значение, а затем выполнение сценария продолжается в сторону выхода Элемент данного блока (в, так называемое, «тело цикла»). После перебора всех элементов Словаря выполнение сценария продолжается в сторону нижнего выхода блока. Не забудьте соединить выход последнего блока в теле цикла со входом данного блока.

Цикл

Цикл позволяет повторить цепочку действий (блоков) несколько раз и при этом посчитать количество итераций цикла, записывая текущее количество в специальную переменную (указанную в свойстве «Цикл»), которую можно затем использовать в других блоках. При первом входе в блок значение переменной из свойства «Цикл» приравнивается к «Начальному значению», а затем выполнение сценария продолжается в сторону выхода «Цикл» данного блока (в, так называемое, «тело цикла»). Как только выполнение сценария вновь дойдет до данного блока, значение переменной «Цикл» увеличится на значение «Шаг», и вновь произойдёт переход в сторону выхода «Цикл». Как только значение переменной «Цикл» станет больше или равно «Конечному значению», выполнение сценария продолжится в сторону нижнего выхода блока. Не забудьте соединить выход последнего блока в теле цикла со входом данного блока или какого-либо из предшествующих блоков.

Цикл Пока

Цикл позволяет повторить цепочку действий (блоков) несколько раз, пока выполняется условие, заданное в виде выражения. При каждом входе в блок проверяется выражение, указанное в свойстве «Условие», и если оно истинно, то выполнение сценария продолжится в сторону выхода «Условие» данного блока (в, так называемое, «тело цикла»). Как только при очередном проходе через данный блок «Условие» перестало выполняться, сценарий продолжится в сторону нижнего выхода блока. Не забудьте соединить выход последнего блока в теле цикла со входом данного блока или какого-либо из предшествующих блоков.

Пауза

Приостанавливает выполнение работы сценария на заданное время.

Выполнить выражение PowerShell

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

Выполнить код C#

Выполнение кода на языке C# с передачей параметров из сценария и обратно.

Выполнить код Python

Выполнение кода на языке Python с передачей параметров из сценария и обратно

http://sherparpa.ru/videos/ru/invokepythoncode.mp4

Выполнить код VB

Выполнение кода на языке Visual Basic с передачей параметров из сценария и обратно.

Выполнить код Java

Выполнение кода на языке Java с передачей параметров из сценария и обратно.

Выполнить код JavaScript

Выполнение кода на языке JavaScript в браузере с передачей параметров из сценария и обратно.

Try/Catch

Блок реализует конструкцию Try/Catch. Для правильной работы блоки этого контейнера должны заканчиваться блоком «Конец». При возникновении ошибки в блоках будет реализован выход по коннектору «Если ошибка». В противном случае, по коннектору «Выход». Для имитации конструкции Finally требуется ручное соединение блоков после обработки ошибки с блоками коннектора «Выход». Если к коннектору «Если ошибка» не подключен блок, то ошибка будет игнорироваться, и выход будет произведен по коннектору «Выход». Если коннектор «Выход» не подключен, то при отсутствии ошибки, будет произведен возврат из текущей диаграммы.

Контейнер

Блок позволяет сворачивать содержимое. Под содержимым понимаются блоки, исходящие от текущего через нижний коннектор. Для правильной работы блоки этого контейнера должны заканчиваться блоком «Конец». По окончании работы внутренних блоков будет произведен переход по коннектору «Выход».

Прервать

Блок прерывает работу сценария или генерирует ошибку. Если выбран тип ошибки "System", то так же будет задано значение переменной $SystemException. Если выбран тип ошибки "Business", то так же будет задано значение переменной $BusinessException. Переменные SystemException и BusinessException являются глобальными.

Прервать контейнер

Блок позволяет выйти в любом месте из контейнера (Try/Catch, Контейнер). По умолчанию для выхода из контейнера необходимо устанавливать блок «Конец». После этого выход из контейнера будет произведен по коннектору «Выход». Если возникает необходимость выйти из контейнера в любом месте, то необходимо установить данный блок и уже после него продолжить сценарий. Если далее в сценарии встретится блок «Конец», то он завершит или предыдущий контейнер или всю диаграмму. Если блок «Прервать контейнер» стоит вне работы контейнера, то он не выполнит возврат из диаграммы.

Параллельный выбор

Блок позволяет псевдопараллельно выполнить один из непосредственно подключенных к своим выходам блоков, выбрав тот из блоков, в котором не происходит ошибка, и после успешного выполнении такого блока продолжить работу сценария. Подключенный блок считается успешно выполненным, если он не вызвал ошибку (исключение). Коннектор «Если ошибка» у всех непосредственно подключенных блоков должен оставаться пустым. Если ни один из непосредственно подключенных к выходам блоков не выполнился успешно (все блоки вызвали исключение), попытки выполнить эти блоки повторяются пока один из блоков не выполнится успешно, либо пока не наступит таймаут. Популярные сценарии использования: ожидание появления одного из нескольких селекторов на экране (необходимо подключить к выходам блоки «Ожидать появление элемента»), ожидать появление файлов в папках и т.д. Если подключаемый блок имеет собственный настраиваемый таймаут, рекомендуется установить его в минимально возможное значение.

http://sherparpa.ru/videos/ru/parallelselect.mp4

Запустить робота

Блок запускает ещё один экземпляр робота в качестве основного или фонового процесса, в том числе с возможностью запуска нескольких фоновых процессов параллельно. При запуске указывается его уникальное имя (чтобы затем отличить один запущенный экземпляр робота от другого) и файл .robot со сценарием, который необходимо выполнить. Блок может как ожидать завершения запущенного в новом экземпляре робота сценария (синхронный запуск), так и сразу продолжать выполнение текущего сценария (асинхронный, фоновый запуск). Текущий сценарий может содержать несколько блоков для асинхронного запуска роботов, что позволяет запустить несколько параллельно выполняющихся экземпляров роботов и сценариев. В случае асинхронного запуска проверить статус запущенного фонового сценария робота можно с помощью блока «Статус робота».

Проверить завершение робота

Блок позволяет проверить статус завершения выполнения сценария, запущенного с помощью блока «Запустить робота», в том числе, позволяет проверить статус сразу нескольких запущенных параллельно роботов.

Last updated