Create UDT OK, when I create an Instance, structure is invalid

Can you screenshot the opcitempath of one of the tags?

Nevermind, this is the issue:

"opcItemPath": "ns\u003d1;s\u003d[MCP]EQ_P{TagNum}.Sts_Running",

In the UDT instance this resolved to literally that string - it's not a binding/expression with dynamic parts; the {TagNum} is static, not a binding. It looks like you did a simple find/replace from notepad to add in those parameterisations.

Bindings need to be like this instead:

"opcItemPath": {
   "bindType": "parameter",
   "binding": "ns\u003d1;s\u003d[MCP]EQ_P{TagNum}.Sts_Running"
}

In my opinion, the tag import tool / paste json should automatically convert this for you, as this trips up a lot of people! and really, I'm 99% sure that you can't use these braces statically within these paths anyway, so there's no reason they shouldn't be auto-converted.

However the easy way to spot this is, if your UDT Instance tag's opcitempath has { } in them, then that's the likely cause. These should be resolved paths, not still have "dynamic" parts in them.

I added a feature request: [FEATURE] Auto-convert relevant UDT Type tag prop values with {..} in them to bindings

1 Like