- Release Notes
- Getting Started
- Setup and Configuration
- Automation Projects
- Dependencies
- Types of Workflows
- Control Flow
- File Comparison
- Automation Best Practices
- Source Control Integration
- Debugging
- Logging
- The Diagnostic Tool
- Workflow Analyzer
- About Workflow Analyzer
- ST-NMG-001 - Variables Naming Convention
- ST-NMG-002 - Arguments Naming Convention
- ST-NMG-004 - Display Name Duplication
- ST-NMG-005 - Variable Overrides Variable
- ST-NMG-006 - Variable Overrides Argument
- ST-NMG-008 - Variable Length Exceeded
- ST-NMG-009 - Prefix Datatable Variables
- ST-NMG-011 - Prefix Datatable Arguments
- ST-NMG-012 - Argument Default Values
- ST-NMG-016 - Argument Length Exceeded
- ST-NMG-017 - Class name matches default namespace
- ST-DBP-002 - High Arguments Count
- ST-DBP-003 - Empty Catch Block
- ST-DBP-007 - Multiple Flowchart Layers
- ST-DPB-010 - Multiple instances of [Workflow] or [Test Case]
- ST-DBP-020 - Undefined Output Properties
- ST-DBP-021 - Hardcoded Timeout
- ST-DBP-023 - Empty Workflow
- ST-DBP-024 - Persistence Activity Check
- ST-DBP-025 - Variables Serialization Prerequisite
- ST-DBP-026 - Delay Activity Usage
- ST-DBP-027 - Persistence Best Practice
- ST-DBP-028 - Arguments Serialization Prerequisite
- ST-USG-005 - Hardcoded Activity Arguments
- ST-USG-009 - Unused Variables
- ST-USG-010 - Unused Dependencies
- ST-USG-014 - Package Restrictions
- ST-USG-017 - Invalid parameter modifier
- ST-USG-020 - Minimum Log Messages
- ST-USG-024 - Unused Saved for Later
- ST-USG-025 - Saved Value Misuse
- ST-USG-026 - Activity Restrictions
- ST-USG-027 - Required Packages
- ST-USG-028 - Restrict Invoke File Templates
- ST-USG-032 - Required Tags
- ST-USG-034 - Automation Hub URL
- Variables
- Arguments
- Managing Arguments
- The Arguments Panel
- Using Arguments
- Imported Namespaces
- Coded automations
- Introduction
- Registering custom services
- Before and After contexts
- Generating code
- Generating coded test case from manual test cases
- Trigger-based Attended Automation
- Recording
- UI Elements
- Selectors
- Object Repository
- Data Scraping
- Image and Text Automation
- Citrix Technologies Automation
- RDP Automation
- VMware Horizon Automation
- Salesforce Automation
- SAP Automation
- macOS UI Automation
- The ScreenScrapeJavaSupport Tool
- The WebDriver Protocol
- Extensions
- About extensions
- SetupExtensions tool
- UiPathRemoteRuntime.exe is not running in the remote session
- UiPath Remote Runtime blocks Citrix session from being closed
- UiPath Remote Runtime causes memory leak
- UiPath.UIAutomation.Activities package and UiPath Remote Runtime versions mismatch
- The required UiPath extension is not installed on the remote machine
- Screen resolution settings
- Group Policies
- Cannot communicate with the browser
- Chrome extension is removed automatically
- The extension may have been corrupted
- Check if the extension for Chrome is installed and enabled
- Check if ChromeNativeMessaging.exe is running
- Check if ComSpec variable is defined correctly
- Enable access to file URLs and Incognito mode
- Multiple browser profiles
- Group Policy conflict
- Known issues specific to MV3 extensions
- List of extensions for Chrome
- Chrome Extension on Mac
- Group Policies
- Cannot communicate with the browser
- Edge extension is removed automatically
- The extension may have been corrupted
- Check if the Extension for Microsoft Edge is installed and enabled
- Check if ChromeNativeMessaging.exe is running
- Check if ComSpec variable is defined correctly
- Enable access to file URLs and InPrivate mode
- Multiple browser profiles
- Group Policy conflict
- Known issues specific to MV3 extensions
- List of extensions for Edge
- Extension for Safari
- Extension for VMware Horizon
- Extension for Amazon WorkSpaces
- SAP Solution Manager plugin
- Excel Add-in
- Test Suite - Studio
- Troubleshooting
- About troubleshooting
- Assembly compilation errors
- Microsoft App-V support and limitations
- Internet Explorer X64 troubleshooting
- Microsoft Office issues
- Identifying UI elements in PDF with Accessibility options
- Repairing Active Accessibility support
- Validation of large Windows-legacy projects takes longer than expected
Studio User Guide
Managing Arguments
Arguments are used to pass data from a project to another. In a global sense, they resemble variables, as they store data dynamically and pass it on. Variables pass data between activities, while arguments pass data between automations. As a result, they enable you to reuse certain projects time and again.
Studio supports a large number of argument types, which coincide with the types of variables. Therefore, you can create Generic Value, String, Boolean, Object, Array, or DataTable arguments and you can also browse for .Net types, just as you do in the case of variables.
Additionally, arguments have specific directions (In, Out, In/Out, Property) that tell the application where the information stored in them is supposed to go.
- If there are both a variable and an argument with the same name, the variable is always defaulted to and used at runtime.
- Passing complex In arguments (for example, of type System.Data.DataTable) to an Invoke Workflow File activity that is not isolated acts as if a reference is passed, which means any changes to the object inside the invoked workflow change the object in the main workflow. Built-in argument types (for example, Boolean) are always passed as values.
Please take into consideration that if you create an In/Out argument with an In value when used in the Invoke Workflow activity, and then change the value to Out, you may notice that an error is thrown when executing the project. This is because the Invoke Workflow activity did not return the values by reference. Use a Global Handler in your project to get access to the exact values the arguments had inside the invoked workflow.
Lastly, these arguments can be used to integrate with other tools in your company, as they are exposed in Orchestrator too. This means that any process you create can now receive input parameters through the Orchestrator API or interface, as well as return an output to all of the aforementioned. More information is available here.
in_DefaultTimeout
, in_FileName
, out_TextResult
, io_RetryNumber
. You can check out our Workflow Design Naming Conventions recommendations for more details.
- Open the Data Manager, then select New > New Argument.
- A new item with the default name
argument
is added under Arguments. -
Configure the created argument:
- Click the argument name to edit its name.
- Expand the argument using the arrow to its left, and set the Direction, Data Type, whether it is Required, and optionally, the Default Value.
From the Data Manager, you can also create arguments in bulk by right-clicking the Arguments node and then selecting Bulk Create Arguments. A new window is displayed where you can add and configure multiple arguments.
- From the Activities panel, drag an activity to the Designer panel. Right-click a field and select Create In Argument or Create Out Argument from the context menu. Alternatively, press Ctrl+M or Ctrl+Shift+M. The Set Arg field is displayed.
- Fill in the name and press Enter. The argument is created and visible in the field. Check its direction and type in the Arguments panel.
Alternatively, arguments can be created from expressions directly in an activity input field or the Expression Editor:
- Select a part of the expression and press Ctrl+M or Ctrl+Shift+M. The Set Arg field is displayed.
-
Fill in the name and press Enter. The argument is created. Check its type and direction in the Arguments panel.
Data Table
field of a Write Range activity, the argument's type is set to DataTable
. If you create an argument in the Text
field of a Write Line activity, the argument's type is set to String
.
- In the Properties panel of any activity, right-click a field that can be edited, and select Create In Argument or Create Out Argument from the context menu. Alternatively, press Ctrl+M or Ctrl+Shift+M. The Set Arg field is displayed.
- Fill in the name and press Enter. The argument is created and visible in the field. Check its direction and type in the Arguments panel.
The argument type is automatically generated depending on the selected property.
You can remove variables from the Data Manager or from the Variables panel.
- Open the Data Manager and expand the *Variables node.
- Right-click an argument, and then select Delete. Alternatively, select it and press the Delete key.
- Open the Arguments panel.
-
Right-click an argument, and then select Delete. Alternatively, select it and press the Delete key.
The Argument Properties window centralizes the arguments used throughout your project, as well as their properties. After publishing the project, this information is visible in Orchestrator, Assistant, and Automation Ops - Pipelines.
To configure argument properties, open the Project panel, right-click a XAML file set as main or marked as an entry point to the project, and select the Argument Properties option. You can rearrange the arguments listed in the window by dragging and dropping them in the left-side menu.
Select an argument from the left-side menu and enter the following:
- Display name - The label that appears for the argument.
- Tooltip - The tooltip that is visible when you hover over the argument.
- Required - Whether the argument is required.