UiPath Documentation
activities
latest
false
Workflow activities

Invoke Process

Invoke Process activity that executes a UiPath process that is available for the local machine.

UiPath.Core.Activities.InvokeProcess

Description

Executes a UiPath process that is available for the local machine. Can be used to run local packages, as well as processes in Orchestrator, if a connection is available.

For more information on how to find the list of available processes on a machine, go here

The Invoke Process activity runs in Synchronous mode, meaning that the parent process waits for the child process to complete before resuming.

Logs generated by the child processes only contain the outcome of the execution and errors, and are written in the same place as the ones from the parent and can be differentiated by the ProcessName field in local logs and Process column in Orchestrator.

When using the Invoke Process activity, even though the project contains multiple processes, a single job is created for running them as opposed to the Run Parallel Process activity which creates separate jobs for each process in the project.

If there are multiple processes added, the active version on the current folder is the one that will be used.

Note:

Unserializable data types cannot be passed between workflows (e.g. UIBrowser, UIElement, etc).

If a child process is invoked but not found, an error is logged containing the name of the child process, the path where Robot searched for it and additional details such as WindowsIdentity and machineName.

Note:

When using a version of the UiPath.System.Activities that is higher than v20.4, Invoke Process supports multiple entry points. If a workflow is created with this version and then the UiPath.System.Activities pack is downgraded to an older version that only supports a single entry point, the Invoke Process activities in the workflow suffer validation errors and must be manually replaced to work.

Project compatibility

Windows - Legacy | Windows | Cross-platform

Windows, Cross-platform configuration

  • Orchestrator folder path - The path of the Orchestrator folder where the specified process is located, if different from the folder where the process is running. This field only supports String values, with / as the separator to indicate subfolders. For example "Finance/Accounts Payable".
  • Invoke by - Specify whether to invoke the process by the Process name as configured in Orchestrator, or by the Package name. Please note that using the package name is supported, but deprecated.
  • Process name/ Package name - The name of the process or package you want to invoke. The dropdown displays the processes or packages available in the connected Orchestrator folder. This field supports only String or String variables. To manage the list of available processes, select Manage processes at the right side of the field.
    Note:

    Switching between Process name and Package name options does not automatically update the name. If the name of your process differs from the package name, make sure to update it accordingly.

  • Entry point - If your process has multiple entry points, specify the path of the workflow file to run once the process starts. This path should be relative to the root package. By default, this field is left empty and uses the entry point configured in the Orchestrator.
  • Arguments - Default option. Opens the arguments dictionary, where you can see the arguments of the invoked process. You can also define a variable to hold a dictionary of arguments by selecting Use an expression at the right side of the field. This converts the Arguments field to Arguments variable. To retrieve the latest list of process arguments, select Refresh arguments at the right side of the field. To open the arguments list and edit their attributes, select the Arguments field box.
  • Arguments variable - Activated by the Use an expression option from the Arguments field. You can use a predefined variable, or you can create a new one either by using VB expressions or prompting the Autopilot to generate one for you. Use this variable to hold the dictionary of arguments for the invoked workflow. Switch back to the Arguments option by selecting Use Static Names at the right side of the field.

Additional properties

Common
  • Timeout - Specifies the amount of time to wait for the invoked workflow to run before an error is thrown and the workflow is aborted. This field supports only TimeSpan variables. By default, this field is empty.
  • Continue On Error - Specifies if the automation should continue even when the activity throws an error. This field only supports Boolean values (true, false). The default value is False. As a result, if the field is blank and an error is thrown, the execution of the project stops. If the value is set to True, the execution of the project continues regardless of any error.
    Note:

    If this activity is included in Try Catch and the value of the ContinueOnError property is True, no error is caught when the project is executed.

Execution
  • Target Session - Specifies the session in which the child process is started:
    • Current- The child process opens in the same session as the parent one.
    • Process Default - The child process uses the Process Settings.
    • Main - The child process starts in the main session regardless to where the parent process runs.
    • Picture in Picture - The child process starts in the Picture in Picture session regardless to where the parent process runs.
  • Elevated (supported on Windows and Windows - Legacy projects) - Select True to run the child process at MediumPlus integrity, without elevating the parent process. Requires the robot to enable the UIPATH_MEDIUMPLUS_INVOKE environment variable; otherwise the setting is ignored. False by default.
Log
  • Log Entry - Specify the type of information to automatically log when entering the invoked resource.
  • Log Exit - Specify the type of information to automatically log when exiting the invoked resource.
  • LogLevel - Specify the logging level applied to the messages generated by Log Entry and Log Exit.

Windows - Legacy configuration

Designer panel

  • Package name - The name of the package used to create the process you want to invoke. In Windows - Legacy projects, the robot identifies the process to invoke by its package name.
  • Entry point - If your process has multiple entry points, specify the path of the workflow file to run once the process starts. This path should be relative to the root package. By default, this field is left empty and uses the Main.xaml as entry point.
  • Edit arguments - Opens the arguments list, where you can see and manage the arguments of the invoked process.

Properties panel

Common
  • Continue On Error - Specifies if the automation should continue even when the activity throws an error. This field only supports Boolean values (True, False). The default value is False. As a result, if the field is blank and an error is thrown, the execution of the project stops. If the value is set to True, the execution of the project continues regardless of any error.
    Note:

    If this activity is included in Try Catch and the value of the ContinueOnError property is True, no error is caught when the project is executed.

  • DisplayName - The display name of the activity.
  • Timeout - Specifies the amount of time to wait for the invoked workflow to run before an error is thrown and the workflow is aborted. This field supports only TimeSpan variables. By default, this field is empty.
Input
  • Arguments - A collection of IN arguments that you can pass to the process you want to run from Orchestrator. If an argument has an unknown type, it is converted to JSON.
  • Arguments variable - The argument variables passed to the invoked process.
  • Process Name - The name of the process you want to invoke. This field accepts String values.
  • Elevated - If this check box is selected, the child process runs at MediumPlus integrity, without elevating the parent process. Requires the robot to enable the UIPATH_MEDIUMPLUS_INVOKE environment variable; otherwise the setting is ignored.
Log
  • Log Entry - Specify the type of information to automatically log when entering the invoked resource.
  • Log Exit - Specify the type of information to automatically log when exiting the invoked resource.
  • LogLevel - Specify the logging level applied to the messages generated by Log Entry and Log Exit.
Misc
  • Entry point - If your process has multiple entry points, specify the path of the workflow file to run once the process starts. This path should be relative to the root package. By default, this field is left empty and uses the Main.xaml as entry point.
  • Folder Path - The path of the Orchestrator folder where the specified process is located, if different from the folder where the process is running. This field only supports string values, with / as the separator to indicate subfolders. For example "Finance/Accounts Payable".
  • Private - If selected, the values of variables and arguments are no longer logged at Verbose level.
  • Target Session - Specifies the session in which the child process is started:
    • Current- The child process opens in the same session as the parent one.
    • Process Default - The child process uses the Process Settings.
    • Main - The child process starts in the main session regardless to where the parent process runs.
    • Picture in Picture - The child process starts in the Picture in Picture session regardless to where the parent process runs.
  • Use Package - Indicates whether the process should be identified by its package name (selected) or process name (not selected). By default this option is not selected.

Argument messages

The activity reports the state of its Arguments dictionary in the info box. None of these messages removes an argument you configured: Refresh arguments either imports the arguments the invoked process declares or leaves the dictionary as it is and says why.

  • "The arguments could not be read from the invoked target, so they were left unchanged." - Shown when you select Refresh arguments and the process name is empty, the entry point does not resolve, the call to Orchestrator fails, or its metadata cannot be parsed. While you edit the activity, this case reports nothing.
  • "The invoked target declares arguments that cannot be imported (for example, a missing name or type, or a duplicate name), so the arguments were left unchanged. Fix the target's arguments and refresh again." - Shown when you select Refresh arguments. The import is refused as a whole rather than writing only the arguments that could be built.
  • "The arguments could not be updated in the workflow, so they were left unchanged. See the logs for details." - Shown when you select Refresh arguments if the invoked process was read but the dictionary could not be written back. Nothing is lost.
  • "The invoked target declares no arguments. For safety the following are not removed automatically:" followed by the argument names. - Shown both when you refresh and while you edit. The listed arguments are kept deliberately, and you can remove them manually if the invoked process no longer uses them.
  • "The following argument(s) are missing or misconfigured:" followed by the argument names. - Shown while you edit, when the invoked process declares arguments the activity does not have, or has with a different type or direction. Selecting Refresh arguments resolves it.
  • "The following arguments are extra:" followed by the argument names. - Shown while you edit, when everything the invoked process declares is already configured and the activity carries further arguments on top of it.
  • "The following argument(s) are missing or misconfigured:" followed by the argument names, then "N argument(s) are extra." - Shown while you edit, when the previous two cases apply at once, which is what pointing the activity at a different process produces. The missing arguments are named, the extra ones only counted.

The messages that list argument names show at most three, then append "and N other(s)".

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated