Ссылка на процесс

Process link

Элемент выполняет указанный подпроцесс RPA-проекта. Путь до файла подпроцесса указывается в строке на панели элемента либо в свойстве «Путь к процессу».

На панели элемента также находятся кнопки:

  1. Аргумент может иметь следующие направления:

    • IN — аргумент передает данные в подпроцесс.

    • OUT — аргумент возвращает данные из подпроцесса.

    • IN_OUT – аргумент работает на передачу и на возврат данных.

    В столбце Назначение вы можете назначить аргументу подпроцесса переменную (или аргумент) из текущего процесса для обмена данными. Для этого воспользуйтесь сочетанием клавиш:

    • Ctrl + K — для создания переменной. Переменная создается для выбранного аргумента в соответствии с его типом данных. Добавленная переменная отобразится в столбце Назначение, а также на панели переменных текущего процесса.

    • Ctrl + Alt + K — для создания аргумента. Тип данных назначается в соответствии с выбранным аргументом подпроцесса.

Особенности при работе с аргументами:

🔸 Для аргументов подпроцесса с любым направлением не поддерживается значение, заданное по умолчанию. 🔸 Обратите внимание, что некоторые типы данных являются ссылочными. Такие, как Dictionary, Datatable и т.д. Если вы используете такой тип данных для аргументов с направлением IN, то при обновлении аргумента в подпроцессе, он обновится во всех местах, где был объявлен. Исключение составляет string — он ведет себя как значимый тип.

Свойства

Символ * в названии свойства указывает на обязательность заполнения. Описание общих свойств см. в разделе Свойства элемента.

СвойствоТипОписание

Процесс:

Путь к процессу*

String

Путь к файлу подпроцесса. Пример: @"C:\Users\Username\Folder\Primo\Project\file.ltw"

Символ @ перед строкой указывает на то, что строку следует идентифицировать дословно — это позволяет не экранировать обратную косую черту в пути

Маппинг

Маппинг аргументов подпроцесса

Кешировать

Boolean

Определите, нужно ли кешировать подпроцесс. По умолчанию кеширование включено

Песочница:

Запуск в песочнице

Boolean

Определите, нужно ли запускать процесс в песочнице Windows

Закрывать

Boolean

Следует ли закрывать песочницу по завершении. По умолчанию закрывается

Таймаут старта*

Int32

Таймаут запуска песочницы в миллисекундах. По умолчанию 60000

Таймаут завершения*

Int32

Таймаут завершения работы робота в миллисекундах (0 — бесконечно). По умолчанию 0

Параллельно

Boolean

Следует ли запускать песочницу параллельно с основным процессом

Песочница

«Песочница» (SandBox) — инструмент Windows 10, 11 для безопасного запуска приложений в изолированной виртуальной среде. Программы, установленные и запущенные внутри песочницы, изолированы от остальной системы и работают независимо от главного компьютера. Песочница является временной. При ее закрытии все находящееся в ней программное обеспечение, все файлы и данные о состоянии удаляются. При каждом открытии приложения вы получаете новый экземпляр песочницы.

Установка песочницы:

  1. Убедитесь, что на вашем компьютере используется Windows 10 Pro или Windows 10 Корпоративная с версией сборки 18305, или Windows 11.

  2. Виртуализация на компьютере:

    • Если вы используете физический компьютер, убедитесь, что возможности виртуализации включены в BIOS.

    • Если вы используете виртуальную машину, запустите эту команду PowerShell, чтобы включить вложенную виртуализацию:

      Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
  3. В строке поиска на панели задач введите Включение или отключение компонентов Windows, чтобы получить доступ к инструменту дополнительных компонентов Windows. Выберите Песочницу Windows, а затем нажмите ОК. Перезапустите компьютер при появлении соответствующего запроса.

    • Если вариант Песочница Windows недоступен, то компьютер не соответствует требованиям для запуска песочницы. Если вы считаете, что это не так, просмотрите список предварительных требований, а также шаги 1 и 2.

Работа с песочницей

Для запуска процесса в песочнице необходимо:

  • Установить флаг Запуск в песочнице в свойствах элемента:

‼️Основной и вспомогательный робот могут обмениваться только простыми данными (String, Double, DateTime, Boolean и т.д.) либо коллекциями простых данных (List<String>, List<DateTime> и т.д.)

  • Чтобы песочница закрывалась по завершении работы процесса, используйте флаг Закрывать.

  • Свойство Таймаут старта — это количество миллисекунд, которое нужно ожидать до старта дополнительного робота.

  • Свойство Таймаут завершения — это количество миллисекунд, которое нужно ожидать до завершения работы дополнительного робота (в не-параллельном режиме). Значение 0 — ожидать бесконечно.

  • Робота можно запускать параллельно с основным роботом (флаг Параллельно), но в этом случае аргументы, возвращенные дополнительным роботом, получены не будут.

Пример использования элемента

RPA-проект, демонстрирующий работу элемента, можно найти в нашем публичном репозитории Learning.

  1. Скачайте архив со всеми обучающими материалами по ссылке: Скачать архив Learning.

  2. Распакуйте архив и откройте в Студии проект StudioActivities.

  3. Выберите процессы StudioActivities/Ru/Управление/Ссылка на процесс.ltw и Ссылка на процесс 1.ltw для просмотра.

Только код

Пример использования элемента в процессе с типом Только код (Pure code):

//Создаем аргументы
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;

Last updated