- Release Notes
- Getting Started
- Setup and Configuration
- Automation Projects
- Dependencies
- Types of Workflows
- File Comparison
- Automation Best Practices
- Source Control Integration
- Debugging
- 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-DBP-002 - High Arguments Count
- ST-DBP-003 - Empty Catch Block
- ST-DBP-007 - Multiple Flowchart Layers
- 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-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
- Trigger-based Attended Automation
- Recording
- UI Elements
- Control Flow
- Selectors
- Object Repository
- Data Scraping
- Image and Text Automation
- Automating Citrix Technologies
- RDP Automation
- Salesforce Automation
- SAP Automation
- VMware Horizon Automation
- Logging
- The ScreenScrapeJavaSupport Tool
- The WebDriver Protocol
- Test Suite - Studio
- 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 packages and UiPath Remote Runtime versions mismatch
- The required UiPath extension is not installed on the remote machine
- Screen resolution settings
- Chrome 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
- Edge 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 VMware Horizon
- SAP Solution Manager plugin
- Excel Add-in
- Troubleshooting
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.