Данное действие предназначено для группировки элементов/действий в отдельный блок.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Имя | Name | Отображаемое имя группы. Имя группы, отображаемое в ее заголовке на рабочем пространстве. !! После появления возможности редактирования названия в блоке информации о действии данный параметр будет удален из студии. | Robin.String | Действия с Excel | Да |
Идентификатор | Sequence ID | Идентификатор последовательности действий. !! Данный параметр не отображается и назначается системой автоматически. | Robin.Internal.SequenceId | Нет Последовательность может быть пустой. |
Отсутствуют.
Задача:
Открыть excel-файл, посчитать количество строк в нем и закрыть файл.
Все действия должны быть сгруппированы в одну последовательность.
Решение:
Реализация:
Результат:
Действия сгруппированы.
Алгоритм прошел по всем действиям группы и записал значение в переменную "Числовая_переменная".
Данное действие предназначено для вычисления результата выражения, составленного пользователем.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Имя выражения | Expression Name | Имя выражения отображаемое в его заголовке. !! После появления возможности редактирования названия в блоке информации о действии данный параметр будет удален из студии. | Robin.String | Group | Да |
Последовательность | Sequence | Идентификатор последовательности действий. !! Данный параметр не отображается и назначается системой автоматически. | Robin.Internal.SequenceId | Да Последовательность пустой быть не может. | |
Результаты | |||||
Результат выражения | Expression Result | Переменная, в которую будет записан результат действия. | Robin.Object | Expression_Result |
Данное действие не отображается на панели выбора действий.
Создание и редактирование выражения происходит только с помощью тулзы, а на Flow выводится его визуализация.
Удалять, добавлять или редактировать действия внутри выражения через его представление на Flow невозможно.
Задача:
Сложить два числа, умножить на третье и посчитать количество символов в результирующем.
Решение:
Реализация:
Результат:
Действия сгруппированы в контуре действия "Выражение".
Алгоритм прошел по всем действиям и записал значение в переменную "Expression_Result".
Данное действие предназначено для конвертирования переменной другого типа данных в строку.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Источник | Source | Переменная, значение которой будет конвертироваться в строку. Если тип неконвертируемый будет выводиться полное имя нативного типа. | Robin.Object | Числовая_переменная | Да |
Результаты | |||||
Результат | Result | Переменная, в которую будет записано конвертированное значение из поля "Источник". | Robin.String | Строковая_переменная |
Отсутствуют.
Задача:
Сложить два числа, умножить на третье и преобразовать результат в строку.
Решение:
Реализация:
Результат:
Алгоритм прошел по всем действиям и конвертировал значение переменной "Числовая_переменная"в переменную "Result".
Данное действие предназначено для подсчета общего количества символов в тексте.
!!! Данное действие перенесено из Базовых в Expression Functions.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Строка | String | Переменная, длину которой необходимо получить. | Robin.String | Text | Да |
Результаты | |||||
Результат | Result | Переменная, в которую будет записана длина введенной строки из поля "Строка". | Robin.Numeric | Длина |
Особые условия использования
При выполнении действия, пробелы учитываются как символ.
Задача:
Существует текст: "Клик левой кнопкой мыши".
Необходимо подсчитать общее количество символов в тексте.
Решение:
Реализация:
Параметр "Результат". Выбираем из выпадающего списка переменную, в которую будет записан результат подсчета длины текста
Результат:
Переменная "Result" содержит значение "23".
Данное действие предназначено для скриншота экрана.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Папка | Folder | Папка, где необходимо сохранить скриншот. | Robin.FolderPath | C:\Users\RLABUTIN\Documents\RobinStudio\1.1) Base action (RUS)\Base action (RUS) | Да |
Имя файла | File name | Имя файла сохранения для скриншота. | Robin.String | Скрин1 | Да |
Формат | Format | Формат, в котором скриншот будет сохранен. Выпадающий список. Доступны значения:
| Robin.String | JPG | Да |
Тип | Type | Типы скриншота области. Выпадающий список. Доступны значения:
По умолчанию значение равно "FullScreen". | Robin.String | Координаты | Да |
Область | Area | Размер и положение области для скриншота. Пользователь имеет возможность вручную выделить область экрана или заполнить значения:
В случае ручного выделения Система автоматически заполнит эти значения данными выбранной области. | Robin.RectangleLocation | Нет | |
Результаты | |||||
Результат | Result | Путь до сохраненного скриншота. Будет сохранен в выбранной папке в формате "<<Имя файла>>.<<Формат>>" | Robin.Image | C:\Users\RLABUTIN\Documents\RobinStudio\1.1) Base action (RUS)\Base action (RUS)\Скрин1.jpg |
Особые условия использования
Отсутствуют.
Задача:
Необходимо сделать скриншот экрана после открытия файла Exel.
Решение:
Реализация:
Результат:
Алгоритм открыл указанный файл Exel и сделан скриншот экрана.
Путь к скриншоту был сохранен в переменную Result.
Данное действие предназначено для принудительного завершения работы робота, в связи с тем, что алгоритм на этом шаге продолжаться не должен.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Сообщение | Message | Текст, который будет выведен в лог-файл сообщения. Если параметр не заполнен будет выведено: "Неизвестная ошибка". | Robin.String | Возникла ошибка! | Нет |
Отсутствуют.
Задача:
Необходимо получить ответ пользователя на вопрос о завершении программы.
Если ответ предполагает, что работу необходимо прекратить, вывести в лог сообщение и завершить работу.
Решение:
Реализация:
В параметр "Сообщение" действия "Вывести ошибку" указываем текст: "Пользователь запросил остановку программы".
Результат:
Работа программы была завершена, в лог выведено сообщение "Пользователь запросил остановку программы".
Данное действие предназначено для обработки исключений в выбранных действиях.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Блок Try | Try clause | Действия для выполнения, во время исполнения которых может произойти исключение. !! Данный параметр не отображается и назначается системой автоматически. | Robin.Internal.SequenceId | Да Действия в блоке должны быть | |
Блок Catch | Catch clause | Действия для обработки возникшего исключения. Таких блоков может быть несколько, тогда будет создан параметр "Исключения для CATCH <номер последовательности>" для каждого из добавленных блоков. !! Данный параметр не отображается и назначается системой автоматически. | Robin.Internal.SequenceId | Нет Действий в блоке может не быть | |
Исключения | Exceptions | Список исключений, для обработки которых предназначена соответствующая последовательность Catch. Таких последовательностей может быть несколько, тогда будет создан параметр "Исключения для CATCH <номер последовательности>" для каждой из добавленных. | Robin.Collection | Да | |
Блок Finally | Finally clause | Действия для выполнения в любом случае. | Robin.Internal.SequenceId | Нет Блока может не быть | |
Результаты | |||||
Ошибка | Error | Ошибка возникшая в ходе выполнения блока Try | Robin.Exeception |
Особые условия использования
Если в блоке/блоках Catch отсутствуют действия, то студия продолжит работу ,проигнорировав отловленные ошибки.
Если в блоке Finally отсутствуют действия, то студия продолжит работу.
Пример использования
Задача:
..
Решение:
Реализация:
...
Результат:
...
Данное действие предназначено для определения какой оператор будет выполняться при выполнении условия, заданного логическим выражением.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Условие | Condition | Логическое выражение, результат выполнения которого является условием перехода по веткам "Да" и "Нет". | Robin.Boolean | true | Да |
Истина | True | Последовательность при выполнении условия. !! Данный параметр не отображается и назначается системой автоматически. | Robin.Internal.SequenceId | Нет Действий в последовательности может не быть | |
Ложь | False | Последовательность при невыполнении условия. !! Данный параметр не отображается и назначается системой автоматически. | Robin.Internal.SequenceId | Нет Действий в последовательности может не быть |
Условие "Если" может иметь только две ветви. На каждой ветви уже указан результат выражения ("Да"/ "true") и "Нет"/ "false"), по которому будет осуществлять переход на данную ветвь. Для добавления в тело ветви последовательности действий необходимо переместить их на контур соответствующего действия.
Задача:
Существуют переменные с типом "Массив чисел" и "Число", содержащие соответственно значение "(1988, 8, 2, 4)" и "0".
Необходимо завершить работу цикла пока значение числовой переменной не будет равно значению "2".
Решение:
Реализация:
Результат:
Алгоритм прошел по циклу и был прерван после установки переменной значения "2".
Данное действие предназначено для отправки в лог-файл сообщения.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Сообщение | Message | Текст, который будет выведен в лог-файл сообщения. | Robin.String | Текстовое сообщение | Да |
Отсутствуют.
Задача:
Существует переменная с типом "Строка", содержащая значение "Red".
Необходимо перейти на соответствующий раздел ветвления и вывести в лог сообщение.
Решение:
Реализация:
Результат:
Алгоритм прошел по всем шагам, перешел по ветви№2 и вывел в лог сообщение "Ветвь №2".
Данное действие предназначено для установки ожидания на заданное время в момент выполнения сценария.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Время ожидания | Sleep time | Время ожидания перехода алгоритма на следующий шаг. Указывается в миллисекундах. | Robin.Numeric | 1000 | Да |
Отсутствуют.
Задача:
Существует массив чисел, содержащий значения "(1988, 8, 2, 4)".
Необходимо:
Решение:
Реализация:
Результат:
Алгоритм прошел по циклу и был прерван после установки переменной значения "2".
При переходе на ветвь "Нет" время ожидания перехода алгоритма на следующий шаг составило 1 секунду.
Данное действие предназначено для выбора выполнения одного раздела ветвления из списка вариантов, сравнивая их с выражением соответствия.
Для добавления нового условия необходимо нажимать на кнопку "", расположенной на самом действии.
Для добавления ветки перехода по умолчанию необходимо нажимать на кнопку "", расположенной на самом действии.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Выражение выбора | Expression | Значение для выбора выполняемой ветки. | Robin.String | Нужная_переменная | Да |
Условие для Ветки*, где "*" - номер ветки | Branch* condition, где "*" - номер ветки | Значение, которое будет сравниваться со значением в поле "Условие". При совпадении будет выполняться соответствующая этому значению ветка. Заполняется для каждой созданной ветви ветвления, кроме ветви по умолчанию. Веток может быть создано несколько. По умолчанию создается 2 ветки - минимально возможное количество. Если две ветви содержат одинаковое условие, то действие завершится ошибкой. | Robin.String | Строковый текст | Да |
Ветка*, где "*" - номер ветки | Branch*, где "*" - номер ветки | Последовательность действий, которая будет выполнена, если удовлетворяется условие. !! Данный параметр не отображается и назначается системой автоматически. | Robin.Internal.SequenceId | Да Действия в последовательности должны быть | |
Ветка по умолчанию | Default branch | Последовательность действий, которая будет выполнена, если не удовлетворяется ни одно условие. !! Данный параметр не отображается и назначается системой автоматически. Ветка необязательная, создается по желанию пользователя. | Robin.Internal.SequenceId |
При добавления ветки перехода по умолчанию, данная ветка будет исполнена, если условие не совпало в остальных ветках.
Пример использования
Задача:
Существует переменная с типом "Строка", содержащая значение "Red".
Необходимо перейти на соответствующий раздел ветвления и вывести в лог сообщение.
Решение:
Реализация:
Результат:
Алгоритм прошел по ветви№2 и вывел сообщение в лог "Ветвь №2".
Данное действие предназначено для сохранения текста в буфер.
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Текст | Text | Переменная, которая будет сохранена в буфер. | Robin.String | Строковая переменная | Да |
Отсутствуют.
Задача:
Существует переменная с типом "Строка".
Необходимо записать данные из переменной в буфер.
Решение:
Реализация:
Результат:
Текст из переменной записан в буфер
Данное действие предназначено для сохранения текста из буфера в переменную типа "Строка".
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Результаты | |||||
Результат | Result | Переменная, в которую будет сохранен текст из буфера. При неудаче извлечения значения из буфера в результат будет сохранена пустая строка. | Robin.String | Строковая_переменная |
Отсутствуют.
Задача:
Существует переменная с типом "Строка".
Необходимо перейти на соответствующий раздел ветвления после получения текста из буфера.
Решение:
Реализация:
*предварительно необходимо скопировать текст "Red" в буфер обмена (как вариант: создать на рабочем столе текстовый документ, содержащий текст "Red". Выделить текст Red" и с помощью ПКМ открыть контекстное меню и выбрать "Копировать").
Результат:
Алгоритм прошел по ветви №2 после получения данных из буфера.
Данное действие предназначено для прерывания текущей итерации цикла/ветвления и выхода из цикла/ветвления. Действия в цикле, установленные после действия "Продолжение цикла", завершены не будут.
Отсутствуют.
Должен использоваться внутри цикла, в противном случае Система выведет предупреждение "Действие "Прервать цикл" находится вне цикла".
Задача:
Существуют переменные с типом "Массив чисел" и "Число", содержащие соответственно значение "(1988, 8, 2, 4)" и "0".
Необходимо завершить работу цикла пока значение числовой переменной не будет равно значению "2".
Решение:
Реализация:
Результат:
Алгоритм прошел по циклу и был прерван после установки переменной значения "2".
Данное действие предназначено для прерывания текущей итерации цикла и начала следующей итерации. Действия в цикле, установленные после действия "Продолжение цикла", завершены не будут.
Отсутствуют.
Должен использоваться внутри цикла, в противном случае Система выведет предупреждение "Действие "Продолжить цикл" находится вне цикла.".
Задача:
Существуют переменные с типом "Массив чисел" и "Число", содержащие соответственно значение "(1988, 8, 2, 4)" и "0".
Необходимо завершить работу цикла пока значение числовой переменной не будет равно значению "2".
Если элемент массива не равен значению "2", то текущая итерация должна быть прервана.
Решение:
Реализация:
Результат:
Алгоритм прошел по циклу и был прерван после установки переменной значения "2".
При этом, если элемент массива был не равен значению "2", то текущая итерация прерывалась и переходила на следующую.
Данное действие предназначено для создания цикла действий, который выполняется до тех пор, пока результат условия равен "True". Для добавления условия используется инструмент построения выражений в параметре "Условие. Для добавление в тело цикла последовательности действий необходимо переместить их на контур блока "Тело цикла".
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Условие | Condition | Логическое выражение или переменная/значение логического типа, определяющее продолжение или прерывание цикла. Условие проверяется после выполнения тела цикла. Для задания логического выражения используется инструмент построителя выражений. !! Если пользователь удаляет из параметра значение, заданное инструментом построения выражений, блок "Условие" на флоу очищается. | Robin.Boolean | True | Да |
Условие | Condition | Последовательность действий в выражении в условии. Заполняется в случае, когда условие задается через построитель выражений. !! Данный параметр не отображается в панели параметров, но отображается в блоке Условие на рабочей области (флоу). !! Параметр заполняется/редактируется через инструмент построения выражений и только через него. Любое редактирование данного блока на флоу для пользователя заблокировано. | Robin.Internal.SequenceId | Нет | |
Тело цикла | Loop body | Последовательности действий, которая должна выполняться на каждом шаге цикла. Заполняется добавлением действий в соответствующий блок в рабочую область. !! Данный параметр не отображается в панели параметров, но отображается в блоке Тело цикла на рабочей области (флоу). | Robin.Internal.SequenceId | Да |
Так как это логическое выражение оценивается после каждого выполнения цикла, цикл "Пока" выполняется один или несколько раз.
Пример использования
Задача:
Решение:
Реализация:
Результат:
Данное действие предназначено для обеспечения заданной итерации по счетчику шагов.
Для добавления в тело цикла последовательности действий необходимо переместить их на контур действия "Цикл Для".
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Начальное значение | Initial value | Первоначальное значение счетчика. | Robin.Numeric | 0 | Да |
Конечное значение | End value | Конечное значение счетчика. | Robin.Numeric | 10 | Да |
Инкремент | Increment | Увеличение шага цикла. | Robin.Numeric | 1 | Да |
Идентификатор | Sequence Id | Идентификатор последовательности действий, которая должна выполняться на каждом шаге цикла. !! Данный параметр не отображается и назначается системой автоматически. | Robin.Internal.SequenceId | Да Действия внутри последовательности должны быть | |
Результаты | |||||
Состояние итератора | Iteration actual state | Значение счетчика для использования в текущей итерации цикла. | Robin.Numeric | ITERATION_ACTUAL_STATE |
Особые условия использования
Отсутствуют.
Задача:
Необходимо завершить работу цикла, если состояние итератора будет равно значению "2".
Решение:
Реализация:
Результат:
Алгоритм прошел по циклу и был прерван после установки состояния итератора в значение "2".
Данное действие предназначено для обеспечения заданной итерации по элементам коллекции. Для добавления в тело цикла последовательности действий необходимо переместить их на контур действия "Цикл "Для каждого".
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Коллекция | Collection | Коллекция объектов, проход по которым будет осуществляться в цикле. | Robin.Collection | Коллекция_значений | Да |
Идентификатор | Sequence Id | Идентификатор последовательности действий, которая должна выполняться на каждом шаге цикла. !! Данный параметр не отображается и назначается системой автоматически. | Robin.Internal.SequenceId | Да Действия в последовательности должны быть | |
Результаты | |||||
Объект | Object | Объект, в который будет помещен каждый элемент коллекции. | Robin.Object | ITERATION_ACTUAL_STATE |
Особые условия использования
Отсутствуют.
Задача:
Существует коллекция переменных с типом "Массив чисел" и "Число", содержащие соответственно значение "(1988, 8, 2, 4)" и "0".
Необходимо завершить работу цикла, пока значение числовой переменной не будет равно значению "2".
Решение:
Реализация:
Результат:
Алгоритм прошел по циклу и был прерван после установки переменной значения "2".
Данное действие предназначено для создания цикла действий, который выполняется до тех пор, пока результат условия равен "True". Для добавления условия используется инструмент построения выражений в параметре "Условие. Для добавление в тело цикла последовательности действий необходимо переместить их на контур блока "Тело цикла".
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Условие | Condition | Логическое выражение или переменная/значение логического типа, определяющее продолжение или прерывание цикла. Условие проверяется до выполнения тела цикла. Для задания логического выражения используется инструмент построителя выражений. !! Если пользователь удаляет из параметра значение, заданное инструментом построения выражений, блок "Условие" на флоу очищается. | Robin.Boolean | True | Да |
Условие | Condition | Последовательность действий в выражении в условии. Заполняется в случае, когда условие задается через построитель выражений. !! Данный параметр не отображается в панели параметров, но отображается в блоке Условие на рабочей области (флоу). !! Параметр заполняется/редактируется через инструмент построения выражений и только через него. Любое редактирование данного блока на флоу для пользователя заблокировано. | Robin.Internal.SequenceId | Да Действия в последовательности должны быть | |
Тело цикла | Loop body | Последовательности действий, которая должна выполняться на каждом шаге цикла. Заполняется добавлением действий в соответствующий блок в рабочую область. !! Данный параметр не отображается в панели параметров, но отображается в блоке Тело цикла на рабочей области (флоу). | Robin.Internal.SequenceId | Да Действия в последовательности должны быть |
Так как это логическое выражение оценивается перед каждым выполнением цикла, цикл "Пока" выполняется ноль или несколько раз.
Пример использования
Задача:
Решение:
Реализация:
Результат: