Работа с переменными
Last updated
Last updated
Можно представить себе переменную как некую коробочку, у которой есть название, тип и значение. Название переменной всегда начинается со значка $. На рисунке ниже первая переменная называется Result, её значение – 1542, тип данных – число. Если при создании переменной указать определенный тип данных, она будет работать именно с ним. Переменная Result, соответственно, может хранить только числа.
Имя переменной является ее уникальным идентификатором, и оно определяет способ ее отображения и использования.
В Sherpa RPA предусмотрена специальная панель Переменные, на которой пользователь может создавать, переименовывать и удалять переменные.
Чтобы использовать переменную, требуется сначала ее создать, или, если использовать терминологию программистов, объявить переменную. Чтобы сделать это, нужно ввести символ $ за которым следует имя, которое вы хотите дать своей переменной. Имя переменной может быть любым, однако не должно содержать пробелов и специальных символов.
Однако желательно, чтобы оно было описательное, и было интуитивно понятно, какие данные содержит эта переменная. Не используйте только отдельные буквы, цифры или большие длинные фразы.
У переменных могут быть русскоязычные и англоязычные названия, но в названии не может быть пробелов. Можно выбирать тип данных для переменной (число, текст, выражение и пр.). Некоторые из типов — простые (число, логический, текстовый тип), другие являются составными (словарь, список, таблица данных). Также можно задавать начальные значения переменных (значение, которое переменная примет в момент запуска сценария).
Во многих Свойствах Блоков по умолчанию уже указаны названия Переменных (например, переменная $ProcessID на картинке). Вы можете использовать их в своих проектах, изменять или вводить собственные переменные.
В Дизайнере поддерживается большое количество типов данных, которые хранятся в переменной:
Переменная | Описание |
Текст (Text) | Хранит текстовые строки. При задании константных значений текстовых переменных эти значения всегда заключаются в кавычки. |
Число (Number) | Числа могут быть обычными или с плавающей точкой. Пишутся без кавычек. |
Таблицы данных (DataTable) | Таблица данных. Позволяет как загрузить необходимые значения из выбранного файла, так и сохранить внесенные значения в отдельный файл в формате .json. |
Списки (List) | Могут хранить некоторое количество строк. Можно получить значение той или иной строки по её индексу. |
Дата и время (DateTime) | Хранит только дату или дату и время. |
Словари (Dictionary) | Список, котором каждая строка представляет собой некое имя и присвоенное ему значение (название ключа и значение ключа). |
(HashTable) | Таблица с колонками “Ключ” и “Значение”, которые можно заполнить вручную. Также, окно позволяет как загрузить необходимые пары ключ-значение из выбранного файла, так и сохранить внесенные пары ключ-значение в отдельный файл в формате .json. |
Логический тип (Logical) | Принимает два значения (хранит одну из двух констант) – true и false (истина/ложь). |
Деньги (Money) | Содержит числовое значение. |
Безопасная строка (SecureString) | Хранит конфиденциальную информацию, которая должна оставаться конфиденциальной. |
Объект (Object) | Содержит не само значения данных, а указатель на него. |
При создании переменной на панели "Переменные" её начальное значение может быть задано в специальном окне. Интерфейс редактирования некоторых типов переменных отличается, например, окно редактирования переменной типа “Hashtable” содержит две колонки: "Ключ" и "Значение".
Интерфейc окна редактирования переменной типа "List" содержит список значений.
При работе с текстовыми типами данных или с текстовыми значениями константы всегда заключаются в кавычки. Если вы выберете переменную в свойствах и захотите присвоить ей текстовое значение, оно должно быть заключено в кавычки:
Если переменной присваивается числовое значение, оно указывается без кавычек.
При выборе составного типа данных для переменной есть возможность сразу задать структуру этого типа данных. Например, в окне редактирования переменной типа "DataTable" можно задать количество строк и столбцов, их заголовки и присвоить им значения.
№ п/п | Элемент интерфейса | Описание |
1. | Позволяет добавить столбец таблицы данных. При нажатии кнопки открывается окно для ввода названия столбца. | |
2. | Позволяет добавить новую строку в таблицу данных. | |
3. | Позволяет удалить выбранную строку из таблицы данных. | |
4. | кнопка “Изменить название и тип колонок” | Позволяет изменить название и тип колонок. |
В режиме отладки при проходе по шагам сценария и остановке на отдельном блоке на панели Переменные отобразится текущее значение переменных. Таким образом, если ранее переменная не была объявлена на панели "Переменные", при отладке невозможно будет посмотреть текущее значение переменной.
Если вы хотите использовать переменную, установленную по умолчанию, то добавьте ее в панель "Переменные", то есть явным образом укажите использование данной переменной. Назначьте тип и начальное значение каждой переменной. Этот шаг не является обязательным, то есть переменная будет работать даже без добавления переменной в панель «Переменные».
Существует два вида переменных:
Системные переменные, которые по умолчанию уже существуют при создании диаграммы;
Пользовательские переменные, которые можно создавать самостоятельно.
При создании собственных переменных необходимо указать тип данных новой переменной. Sherpa Designer использует неявную типизацию. Это значит, что если вы попытаетесь присвоить переменной выражение или константу с другим типом данных, это в большинстве случаев не приведет к ошибке, и переменная изменит свой тип данных автоматически. Однако это может привести к неправильному отображению текущего значения переменной на панели Переменные при отладке, а также к неявным ошибкам в работе алгоритмов. Поэтому рекомендуем всегда явным образом объявлять и устанавливать правильный тип данных используемым переменным.
С простыми типами данных платформа Sherpa проводит, так называемые, неявные преобразования. Например, если Вы сложите две простые переменные, получится число. Если к числовой переменной прибавить текстовую, платформа автоматически распознает, что складываются переменные с разными типами данных и преобразует число в текст. Если вы решили присвоить текстовую константу числовой переменной, это, как правило, автоматически приведет не к ошибке, а к изменению типа данных.
В результате неявных преобразований не только значения, но даже типы переменных могут меняться во время работы сценария.
Если вам нужно передать данные между разными блоками, воспользуйтесь переменными, например, установите пароль в одном Блоке и проверьте правильность его ввода в другом Блоке. Для этого сначала создайте переменную в панели "Переменные". После создания данную переменную можно будет использовать в свойствах любого Блока в данном проекте, в том числе в других Диаграммах.
Как только переменная объявлена (то есть на панели "Переменные" заданы имя, тип и начальное значение переменной), ей можно присвоить значение с помощью Блока Assign Variable. С помощью этого же блока можно присвоить одной переменной значение из другой переменной или вычислить результат арифметического выражения, использовать математические, логические, строковые и другие функции и методы.
Если вы объявите переменную и присвоите ей значение, заключенное в кавычки, то Sherpa Designer будет обрабатывать переменную как строку: $Текст = “Привет”
кнопка
кнопка
кнопка