Ссылка на процесс
Eng: Process link
Элемент выполняет заданный подпроцесс в рамках текущего RPA-проекта. Путь к файлу подпроцесса можно указать непосредственно в строке на панели элемента или через свойство Путь к процессу
.
На панели элемента также находятся кнопки:
-
Открыть
— открывает в проекте вкладку с указанным подпроцессом.
-
Аргументы
— вызывает окно с аргументами подпроцесса. В окне отобразятся все аргументы, имеющиеся в подпроцессе. Изменить название аргумента или его направление в этом окне нельзя, для этого придется перейти в подпроцесс.
Аргумент может иметь следующие направления:
- IN — аргумент передает данные в подпроцесс.
- OUT — аргумент возвращает данные из подпроцесса.
- IN_OUT – аргумент работает на передачу и на возврат данных.
В столбце Назначение вы можете назначить аргументу подпроцесса переменную (или аргумент) из текущего процесса для обмена данными. Для этого воспользуйтесь сочетанием клавиш:
Ctrl
+K
— для создания переменной. Переменная создается для выбранного аргумента в соответствии с его типом данных. Добавленная переменная отобразится в столбце Назначение, а также на панели переменных текущего процесса.Ctrl
+Alt
+K
— для создания аргумента. Тип данных назначается в соответствии с выбранным аргументом подпроцесса.
Особенности при работе с аргументами:
🔸 Для аргументов подпроцесса с любым направлением не поддерживается значение, заданное по умолчанию.
🔸 Обратите внимание, что некоторые типы данных являются ссылочными. Такие, как Dictionary, Datatable и т.д. Если вы используете такой тип данных для аргументов с направлением IN, то при обновлении аргумента в подпроцессе, он обновится во всех местах, где был объявлен. Исключение составляет string — он ведет себя как значимый тип.
Отображение и подсветка аргументов
Начиная с версии Primo RPA Studio 1.24.8 добавлено отображение количества аргументов с функцией подсветки. Теперь количество аргументов отображается белым числом на синем фоне.
Если были внесены изменения, такие как добавление или удаление аргументов, либо незаполнение всех полей, индикатор подсвечивается красным цветом, сигнализируя о необходимости сохранить изменения или завершить настройки перед продолжением работы.
Свойства
Символ *
в названии свойства указывает на обязательность заполнения. Описание общих свойств см. в разделе Свойства элемента.
Свойство | Тип | Описание |
---|---|---|
Процесс: | ||
Путь к процессу* | String | Путь к файлу подпроцесса. Пример: @"C:\Users\Username\Folder\Primo\Project\file.ltw" Символ |
Маппинг | LTools.Common.Model. VariablesMapping | Маппинг аргументов подпроцесса |
Кешировать | Boolean | Определите, нужно ли кешировать подпроцесс. По умолчанию кеширование включено. Это означает, что подпроцесс будет сохранен в оперативную память и при следующей итерации будет взят из памяти, а не из диска. Это позволит выполнять подпроцессы быстрее |
Песочница: | ||
Запуск в песочнице | Boolean | Определите, нужно ли запускать процесс в песочнице Windows |
Закрывать | Boolean | Следует ли закрывать песочницу по завершении. По умолчанию закрывается |
Таймаут старта* | Int32 | Таймаут запуска песочницы в миллисекундах. По умолчанию 60000 |
Таймаут завершения* | Int32 | Таймаут завершения работы робота в миллисекундах (0 — бесконечно). По умолчанию 0 |
Параллельно | Boolean | Следует ли запускать песочницу параллельно с основным процессом |
Песочница
«Песочница» (SandBox) — инструмент Windows 10, 11 для безопасного запуска приложений в изолированной виртуальной среде. Программы, установленные и запущенные внутри песочницы, изолированы от остальной системы и работают независимо от главного компьютера. Песочница является временной. При ее закрытии все находящееся в ней программное обеспечение, все файлы и данные о состоянии удаляются. При каждом открытии приложения вы получаете новый экземпляр песочницы.
Установка песочницы:
- Убедитесь, что на вашем компьютере используется Windows 10 Pro или Windows 10 Корпоративная с версией сборки 18305, или Windows 11.
- Виртуализация на компьютере:
- Если вы используете физический компьютер, убедитесь, что возможности виртуализации включены в BIOS.
- Если вы используете виртуальную машину, запустите эту команду PowerShell, чтобы включить вложенную виртуализацию:
Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
- В строке поиска на панели задач введите Включение или отключение компонентов Windows, чтобы получить доступ к инструменту дополнительных компонентов Windows. Выберите Песочницу Windows, а затем нажмите ОК. Перезапустите компьютер при появлении соответствующего запроса.
- Если вариант Песочница Windows недоступен, то компьютер не соответствует требованиям для запуска песочницы. Если вы считаете, что это не так, просмотрите список предварительных требований , а также шаги 1 и 2.
Работа с песочницей
Для запуска процесса в песочнице необходимо:
- Установить флаг Запуск в песочнице в свойствах элемента:
‼️Основной и вспомогательный робот могут обмениваться только простыми данными (String, Double , DateTime , Boolean и т.д.) либо коллекциями простых данных (List<String>, List<DateTime> и т.д.)
- Чтобы песочница закрывалась по завершении работы процесса, используйте флаг Закрывать.
- Свойство Таймаут старта — это количество миллисекунд, которое нужно ожидать до старта дополнительного робота.
- Свойство Таймаут завершения — это количество миллисекунд, которое нужно ожидать до завершения работы дополнительного робота (в не-параллельном режиме). Значение
0
— ожидать бесконечно. - Робота можно запускать параллельно с основным роботом (флаг Параллельно), но в этом случае аргументы, возвращенные дополнительным роботом, получены не будут.
Пример использования элемента
RPA-проект, демонстрирующий работу элемента, можно найти в нашем публичном репозитории Learning .
- Скачайте архив со всеми обучающими материалами по ссылке: Скачать архив Learning .
- Распакуйте архив и откройте в Студии проект StudioActivities.
- Выберите процессы
StudioActivities/Ru/Управление/Ссылка на процесс.ltw
иСсылка на процесс 1.ltw
для просмотра.
Только код
Пример использования элемента в процессе с типом Только код (Pure code):
C#
//Создаем аргументы
List<LTools.Workflow.Model.SequenceLinkArg> args = new List<LTools.Workflow.Model.SequenceLinkArg>();
args.Add(new LTools.Workflow.Model.SequenceLinkArg() { Name = "arg1", Value = "val1" });
//Вызываем процесс
args = LTools.Workflow.Elements.WFSequenceLink.CallWorkflow(wf, @"C:\Project\Process.ltw", args);
//Получаем аргументы
string ret = args.Where(it => it.Name == "arg1").FirstOrDefault().Value as string;