Type into failure in Internet Explorer

selector
uiautomation
activities
studio
error

#1

Hello all,

I am trying to loop through a list of cities for a process, for each process I need to type in the date information into the input boxes shown as below:

1

And for all loops, the 4 boxes would be entered the exact same information shown as below:
2

For better reference purpose, I named the 4 boxes as follow:
3

When I am in loop for City 1 and I used the type into activity, the selector for Box 1 looks like this:
4

While the process is successfully typing “Jan” to box 1, I know it probably wouldn’t work for City 2, and it didn’t.

So I re-identified box 1 for City 2 and the selector looks like this:
5

So I went back to City 1 and used the “Attach to live element” function at the top right of the selector, now the selector looks like this:
6

So the number after “FilteringSelect_” became an *, instead there’s a new idx number.

I THOUGHT THIS WAS THE END OF THE STORY, BUT I WAS TOO NAIVE.

I was able to finish activities for City 1 and when I went to City 2, there was still an error about the process not being able to find box 1 according to the live selectors.

So I reused the attach to live element again in City 2 for box 1, and this is what the selector looks like:
7

So the id stayed the same, but the idx number changed from 5 to 13 and this is causing the process not being able to locate box 1.

I’ve tried switch the number in the idx with a “?”, but it still didn’t work.

I was wondering has any of you experienced anything like that, and what else can I do to deal with this issue?

Any suggestion/advice/help is appreciated! Thanks guys!


#2

Using IDX is not recommended, as those are often prone to change dynamically (as you have experienced).
Getting your selectors right is the majority of the battle when dealing with onscreen controls (especially in apps that you do not control).

I recommend opening that page and using the UiPath Explorer to really look at the different ways you can narrow down those specific webcontrols. I am sure you can find a pattern that varies in a way you can manipulate with a variable.

Good luck.


#3

It might be helpful to know how to use variables in the Selector.
Like if there is a keyword you can go by that is used within your process, then you can use that word in the selector instead of the idx property.

You can also use a counter variable like for example, a table on a site will have a row and column parameter, so you can use a counter variable to loop through each table item.

I don’t know how your selector and element is for what you are looking at but in order to use a variable you click on the Selector textbox in the Properties pain for the activity, then manipulate the string to include a variable. After you have changed the string you can also click Edit and it will show the Expression editor to adjust the string easier.

For example a selector with a variable might look like this:
"< title=’*"+cityname.ToString+" tablerow=’"+rowcounter.ToString+" \ >"

You can also do a loop for the idx parameter too, so you can use that as a counter variable, then check to make sure it’s the correct city, if not, then add 1 and check next item. In some cases, this might be needed I guess if you are unable to find a selector parameter that doesn’t use a keyword you can use.

Thanks and Regards.