UDT Binding doesn't update

I have a problem where the value on a label is not updating. The label has a binding to a sub property (NominalTare) of a root container custom property, called Product, which is a UDT. “Product” is an Indirect Tag Binding to a tag.
When the ProductID changes, the Product propery updates correctly, and the NominalTare label blinks as though it’s updating, but the value doesn’t change. It reamains at the value of the previous Product.

The alternative, that seems to work, is to not use the “Product” UDT property on the root container, but to use indirect binding in the label to reference the base tag. As I have quite a few pages that have a similar setup it would be nice to understand what’s going on and solve this problem.
It’s as though, the label binding is triggerd to update with the old values, before the “Product” UDT has updated to the new values.
Any ideas?

The first thing I see is that your “Number Type” on the input component is set to integer. Try to set it to the type you bind to.

IIRC, some weird things happen if that setting isn’t correct.

Good Spotting Sanderd. I’ve updated this, but unfortunately it didn’t help.

After a bit more testing it seems the binding is updated and displays correctly if the value is non-zero. But if the value is zero then the binding doesn’t update and the displayed value stays at the last non-zero value.

Thats … interesting.

You should probably be able to work around it by avoiding UDT bindings, and instead pass the tagpath and use indirect bindings.

Yes, that’s what I’ve done. It took a while as there were quite a few bindings on the UDT, but it’s working fine now.
It would be good to get this resolved as it seems a nice way to do it. I like the idea of UDT’s but I keep on having to avoid them due to this and other problems they have.

I’m trying to reproduce it, but I don’t see the issue on 8.0.13.

Can you make a minimal example?

What I do see is, when changing the variable bound to the indirect path, it flashes red for a fraction of a second to load the new value.

I’ve been using 8.0.12 and it’s quite easy to replicate. After upgrading to 8.0.13 the problem is gone. However, as you mentioned, version 8.0.13 does flash red when loading which is a bit distracting. It doesn’t do that in version 8.0.12.

I guess if I want this to work I’ll have to upgrade to version 8.0.13 and put up with the red flashing.
Thanks for your help.