Dynamic or Variable Selectors in UiPathAneejian · May 28, 2019 · 2 mins read.
In this post, we would discuss how to use dynamic or parameterized selectors in UiPath.
To explain parameterized selectors, we use
Automation Challenge Round 1 from the website RPA Challenge by UiPath.
The challenge is to create a workflow that can enter data to the form and submit. We have around seven fields on the web page and they all change their properties on each refresh. As you might already know, we can achieve this by indicating an anchor for each of these fields.
So, I need to capture all the fields and its anchor and then design the workflow to enter details in all those fields.
Let us capture the field
First Name. The selector would look something like below.
<html app='chrome.exe' title='Automation Challenge' /> <webctrl aaname='First Name' tag='LABEL' /> <nav up='1' /> <webctrl tag='INPUT' />
To identify the
First Name text box, I used the anchor with
Now let us capture another element, say
<html app='chrome.exe' title='Automation Challenge' /> <webctrl aaname='Email' tag='LABEL' /> <nav up='1' /> <webctrl tag='INPUT' />
If we compare the selectors, the only change is the
aaname. So if we parametrize, we can identify any element.
To do this let us declare a variable
Now we have to use the variable
fieldLabel inside the selector. We can do it like below.
"<html app="" chrome.exe"" title="" Automation Challenge"" /><webctrl aaname=""" + fieldLabel + """ tag="" LABEL"" /><nav up="" 1"" /><webctrl tag="" INPUT"" />"
See how we have introduced the variable
fieldLabel in the selector. The entire string is in a single line and double quotes are escaped. The correct way to escape double-quotes in VB is by doubling the double-quotes.
To use this parameterized selector, we need to enter the string into the Selector field under Target (Input » Target » Selector). Entering a value in the selector pop up window does not work.
You can also save the string to a variable and use that variable as the selector.
Now that we have a variable selector, you can enter the value in any field by changing the variable
A sample workflow is attached below. Follow the steps below to make the workflow work or you can modify it.
- Open RPA Challenge Website on the Chrome browser.
- Navigate to the first challenge by clicking start.
- Make the window active.
- Run the workflow from UiPath.