First, please see Wiki - how to post code on this forum.
Second, This is an optional parameter.toInt
requires a fallback value, you have not provided such to either call in the second expression that you posted.
You look like you are attempting to create an indirect tag path, is this correct? If so you are approaching it incorrectly, your current expression is just creating a string of PointIO_IOLink2.SomeValueHereData::Data
instead of pointing to a tag.
Instead, create a custom internal property on the template and apply an indirect tag binding to that.
Configure the tag binding path to be PointIO_IOLink2.{1}Data::Data
, and configure the {1}
to be assigned a value of {PointIO_IOLink2.Ch0.name}
.
From there, your binding would be adjusted to
getBit(
toInt({template.customInternalProperty}),
toInt({PointIO_IOLink2.Ch0.Ch 0 to 7.0.name})
)
Additionally, if these are indeed tag paths, .
is not a valid character for tag names.