[BUG] Binding Integer to Data Point from Data Set Created from split()

Running into a bug binding a data point from a data set that was created by the split() function in an expression to a property. Here’s my setup:

Template named test with a single rectangle component.
String tag with value of 255,0,0 bound to internal property svgColor
Rectangle component named Rectangle

String properties on the rectangle of color_R, color_G, and color_B that are derived from from the internal svgColor property using toInteger(split({test.svgColor},",")[0,0]) / [1,0] / [2,0] expressions, respectively.

Initially, all of the bindings seem to work. However, once I save, close, and reopen the template I’m getting some errors with color_G and color_B. They throw this error:


(but not color_R?)

Checking the dataset manually by making a temporary dataset property and binding to an expression of split({[default]svgColor},","), I can see that I get 3 rows, 1 column.


It seems like the bindings still work, despite the errors.

What’s very odd, is if I remove the binding of the tag to svgColor (and leave the rest of the bindings the same) I no longer get the errors.

Tag bindings start up with a null or -1. That doesn’t split, so you don’t get the 2nd and 3rd elements at startup. Wrap in the try() expression to mitigate.

Wrap the whole thing, or just the split?

Wrap the individual expressions that are trying to pull non-existent elements out of the dataset.