- 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-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
- 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
- About Recording
- Recording Types
- Automatic Recording
- Example of Automatic Recording With Basic and Desktop
- Example of Automatic Recording With Web
- Manual 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
Example of Automatic Recording With Basic and Desktop
To exemplify how you can use the automatic recording and understand more about the differences between Basic and Desktop, let’s create the same project for the two.
The two screenshots below display part of the resulted projects for the Basic (first screenshot) and Desktop (second screenshot) automatic recordings. As you can see, the second one generates an Attach Window container, while the Basic one does not.
Desktop recorder - The top level window selector from the Attach Window container:
Desktop recorder - The partial selector for the Type Into activity:
Basic recorder – The full selector for the Type Into activity:
You can also customize and parameterize this project after it is recorded. To exemplify this, let’s take the Desktop recording example and build upon it.
For example, let’s assume that we want to extract the number of an invoice from an Excel file, copy it to a new Notepad application which we close in the end.
- Add an Excel Application Scope activity before the recording sequence.
- In the WorkbookPath field, type the path of the Excel file you need to extract information from.
- Add a Read Cell activity in the Excel Application Scope.
- In the Properties panel, add the Sheet Name and Cell information from the Excel file used.
- Right-click in the Result field, and click Create Variable. The Set Name field is displayed.
- Fill in the name, such as
InvoiceNumber
, and press Enter. The variable of type 'GenericValue' is created and displayed in the Result field and Variables panel. - Change the scope of the variable to Main.
-
In the recording sequence, in the Type Into activity, in the Text field, add the
InvoiceNumber
variable. This copies the value stored in the variable to Notepad.What was added to the project should look as in the following screenshot.
- Add an Open Application activity between Excel Application Scope and the Recording sequence.
- Use Indicate window on screen to select the active Notepad window.
- Place the Recording sequence inside the Open Application activity.
- Add a Close Application activity after Open Application.
- Use Indicate window on screen again to select the active Notepad window to be closed.
-
Make sure the OffsetX and OffsetY properties (Cursor Position) are empty.
What was added to the project should look as in the following screenshot.
-
Press F5. The automation is executed as expected.
Note: To ensure that the workflow execution ends, close the Save Notepad window.