Unable to click checkbox on website based on info in different column

Hello,

I’m trying to create a robot that checks a box on a website based on information within one of the rows.

The checkbox resides in the same row as the information it needs.

The robot needs to cycle the table look for the totals column which are higher than 0, then check that box.

And sadly, the filterboxes dont work with a filter like >0. I’ve tried and verified that :slight_smile:

Website:

I’ve found several different posts on this forum without a succesful solution for my problem.

I hope someone can help!

Thanks in advance.

This is the part of the robot trying to accomodate it

image

Hi,

Can you try the following steps?

  1. Open Uiexplore, then select the checkbox. We’ll see various attributes in top right area, then check there is tableRow. This means row number of the checkbox.

  2. Scraping all the table.

  3. Iterate the table using ForEachRow and set index variable (Let’s say i) at Index property.

  4. In the loop, check total value of the row. If it’s greater than 0, Check the checkbox using Check activity (or Click activity). The selector will be like the following, for example.

img20211111-2

Regards,

Hello Yoichi,

Thank you for the quick reply!

I created the index “I”, matched it to the selector like you said
But the Selector Editor won’t accept the input

Removing the “TableCOl=‘1’” doesnt help either.
image

image

Plus, how can I get the value from the 6th column, I tried the “Get Row Item” → Column Index 6
Insert it into a Variable “Total” with Int32 as type.
image


image

Scraped table below,i hid the true company names.

I think the problem here lies in the first row, as it’s basically an empty row within the table

[Column-0,Column-1,Column-2,Column-3,Column-4,Column-5,Column-6,Column-7,Column-8
,
,NameX,Monthly,28 MAY 2021 02:00,28 MAY 2021 15:30,29,Concept,42,1712
,NameX,Monthly,01 NOV 2016 01:00,01 NOV 2016 12:29,0,Concept,37,1606
,NameX,Monthly,01 JUN 2018 02:00,18 JUN 2018 11:22,0,Concept,34,1677
,NameX,Monthly,04 JUN 2021 02:00,04 JUN 2021 14:52,41,Concept,10,1724
,NameX,Monthly,01 DEC 2017 01:00,21 DEC 2017 11:03,1,Concept,35,1673
,NameX,Monthly,04 JUN 2021 02:00,04 JUN 2021 14:43,8,Concept,31,1723
,NameX,Monthly,04 NOV 2015 01:00,04 NOV 2015 11:12,0,Concept,27,1538
,NameX,Monthly,01 OCT 2016 02:00,07 OCT 2016 11:52,0,Concept,36,1604
,NameX,Monthly,26 JUN 2017 02:00,26 JUN 2017 11:14,3,Concept,41,1656
,NameX,Monthly,04 NOV 2015 01:00,04 NOV 2015 11:19,0,Concept,16,1540
,NameX,Monthly,28 MAR 2017 02:00,28 MAR 2017 09:22,3,Concept,20,1642
,NameX,Monthly,12 JAN 2017 01:00,12 JAN 2017 10:27,3,Concept,38,1635
,NameX,Monthly,20 JUN 2019 02:00,20 JUN 2019 12:52,63,Concept,21,1699
,NameX,Monthly,13 MAR 2017 01:00,13 MAR 2017 11:30,1,Concept,39,1639
,NameX,Monthly,21 MAR 2017 01:00,21 MAR 2017 14:39,4,Concept,23,1640
,NameX,Monthly,04 NOV 2015 01:00,04 NOV 2015 11:33,0,Concept,24,1555
]

I hope you can help with getting the solution, I’m at a loss myself.

My VBA knowlegde isn’t that big either, I basically have to google everything :slight_smile:

Thanks in advance!!

Open UiExplorer
Select the checkbox by clicking on indicate element for first row for now, also, click on indicate anchor and select the total column for first row itself

You will see another row selected in selector editor.
something like this.

---This is where you places an anchor --- this is for check box

change the properties for the anchor row, unselect the tablecol, table row and select aaname and colname, like below

copy this selector and create a variable named, strCheckBoxSelector and assign the selector value to it. make sure you remove the new lines to resolve the errors like below.
“”

Now in for each loop, since you need to tick the boxed with only a particular age (total in your case), replace the aaname value with a variable, like below, where strAge is row.item(“age”).tostring if in for each loop (in your case row.item(“Total”).tostring)

“”

I have used https://
datatables.net/extensions/
select/examples/initialisation/checkbox
.html (remove the newline) as example

let me know if this method works


here is the full solution as selectors are missing due to this website considering selector as part of website code.

You are so close I think :slight_smile:
Look at the error and your datatable.

Indeed, compensate for the extra data row with empty values. You idex might change by 1.

And the selector error return:

Your loop aims at clicking <webctrl tablerow=''0 ....>, while the suggested alternatives by the site are everything but tableRow=‘0’. It looks like the tablerow index begins at 1, your datatable at 0.

I guess that if you compensate your variable to select the tableRow for that you’ll find each and every checkbox.

Hi,

How did you check the above condition?
If the first row is all blank as you mentioned, index 0 should be skipped.

Probably the following condition will work.

img20211118-1

Int32.TryParse(row(4).ToString,New Int32) AndAlso Int32.Parse(row(4).ToString)>0

Note: Column index of row(4) should be modify for actual datatable. row might be CurrentRow in the latest activity.

Regards,