How to make Selectors more accurate?

selector
uiexplorer

#1

Hello Community,

I have created a program through web recording and interacting with excel, it is working fine in my system, but as soon as I change some earlier steps in the workflow - later steps have problems identifying their dropdown menus or cells to interact and i get the error message that the selector couldn’t be identified - which shows that the selectors I use are not really longterm accurate for some reason.

So how do I create selectors? - I basically always click “indicate on screen”. But the windows and dropdown menus on the webpage (Firefox) are blank before i use them (see attached picture - yellow marked areas). I know that i can use UiExplorer, but i am not sure exactly how. I know i can indicate on things, but what properties to i check or uncheck to make it more accurate (see attached picture). Probably my missing VBA knowledge is slowing me down, but yeah i would really appreciate some tips or inputs! :slight_smile:

best regards
Capture


#2

I normally try to eliminate the text that could change in the future. Like in your case, you could use the “name” parameter since it doesn’t include “elmt” infront. Then also, Numbers always have the potential to change like that “18”. If for example there are no other elements with “CostCostType” in the “name” then you can replace that with a wildcard “*”.

So selector would look like this:

"<webctrl name='*CostCostType*' tag='SELECT' />"

And, sometimes I’ll put the wildcard on both sides incase text gets added on to the parameter.

Then, you can copy the selector to your activity, and leave off the 1st row if the activity is inside a scope (ie Attach scope)

Additionally, sometimes if the page is slowly loaded, the element won’t appear before the activity times out. In that case, you would want to increase the TimeoutMS property of the activity.

Regards.


#3

Hey Clayton thank you a lot for the help.
I changed it an it works so far and your arguments sound quite valid!

Have a great day!
:v: