Функции в выражениях

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

Sherpa RPA предоставляет несколько десятков функций для выполнения математически операций, работы со строками, с датой и временем, со списками, словарями и другими структурами данных. При использовании функции в выражении нужно написать название функции, а затем в скобках указать один или несколько её аргументов, то есть входных данных, с которыми она будет работать.

Для удобной работы с функциями разработаны подсказки. В любом месте, где можно вызвать редактор выражений, в нижней части окна редактора приводятся категории выражений, и для каждой категории приведены возможные варианты записи функций с пояснениями, как пользоваться этими функциями.

При двойном клике по строке списка функций данная функция появится в окне редактора и с её помощью можно будет составить выражение:

Аргумент функции (находящийся в скобках) можно поменять на значение какой-либо переменной. В примере на скриншоте выше – так мы узнаем, положительное или отрицательное значение у данной переменной.

Аргументами функции могут быть любые корректные выражения, однако их тип должен соответствовать тому типу данных, который данная функция ожидает увидеть в данном аргументе.

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

Round(5.5) – округлит число 5.5 и вернёт результат 6. Обратите внимание, что разделителем десятичных дробей является точка, а не запятая. Если вы попробуете вызвать функцию вот так: Round(5,5), то результатом будет число 5, а не 6. Объясняется это тем, что запятая в функциях разделяет аргументы. Программа предположит, что в функцию было передано два аргумента вместо одного. Это не приведет к ошибке, но так как функция Round() ожидает только один аргумент, то будет использовать число 5 как входное значение, соответственно и на выходе также будет выдано число 5.

Round($МояПеременная) – если в переменную $МояПеременная предварительно было записано число 5.5 – также вернёт значение 6.

Round($МояПеременная + 5) – следуя предыдущему примеру, вернет число 11.

Round($МояПеременная + Round($МояПеременная)) –следуя предыдущим примерам, вернет число 12.

Round(“Привет!”) – приведет к ошибке, так как в качестве аргумента функция Round() ожидает число, а не текстовую строку.

Если вы подставите функцию Round() или какую-либо другую функцию в выражение, то результат работы функции будет использован при вычислении значения выражения в том месте, в котором вы подставили функцию. То есть результат вычисления выражения “5 + Round(5.5)” будет 11.

Список всех доступных функций вместе с описаниями их работы и примерами применения вы можете найти в справочнике в нижней части окна Редактировать выражение.