Bind to String Array Element, Bad_OutOfRange Quality

I have a string array tag and I'm binding to the individual elements.

If I drag the [0] element onto a property it gives me the tag binding path, then I change it to be indirect

[elevator]Test/Downstream_Eq_Numbers[0]
...
{1}/Downstream_Eq_Numbers[{2}]
#{1} = path
#{2} = index

This works fine when the index is 0. However, if I change the index to 1 I get a Bad_OutOfRange error on the binding, even though [elevator]Test/Downstream_Eq_Numbers[1] exists.

What am I doing wrong?

This string array element is bidirectionally bound to a dropdown

Does it still show Bad_OutOfRange if you do a direct binding?

does it give you the same thing using system.tag.readBlocking?

Direct binding with [elevator]Test/Downstream_Eq_Numbers[1] works just fine, no errors when I run diagnostics either.

Read blocking works as well.

Seems like it's possibly a bug.

8.1.38

The arrays get converted into a dataset, so you need to specify a row and a column.

Try this:

{1}/Downstream_Eq_Numbers[{2},0]

would it not be {1}/Downstream_Eq_Numbers[{2},0] row, then column?

Yes, sorry, original response edited

@amarks Can you create the binding without dragging the array index onto the property to create the binding? Delete the component first then create the indirect binding without dragging.

yes. Still comes in as [elevator]Test/Downstream_Eq_Numbers[1] using the tag browser to select without drag/drop