Importing a tag to convert it into a UDT "Binding OPC Item Path Not Working"

I'm trying to understand converting my UDTs from the PLC into Ignition.

  1. When browsing my tags and importing them into a UDT I accept the UDT with all my new tags.

  2. From there it will be direct tagged... When I export the XML and find and replace my topic and device tags then import it so I can use it as a general tag for a UDT, the binding on the tags doesn't set properly.

  3. I need to delete a letter, press *Enter then add the letter back to complete the tag and it binds.

  4. The only way to fix this is by going in the XML editor and adding the 'boundValueType' to it.

Is there something I'm doing wrong when trying to create a UDT. To me this seems like a pretty quick and easy way if the binding would just work.

Try using the JSON format, not XML.

Performing a find and replace on the .json formatted file did not solve the problem. The tag is still unbound.

Export a UDT definition with working bindings as JSON. Inspect and compare to the non-working import file.

1 Like

Take special care re: possibly invisible characters like \x00 or whitespace or newlines, etc. The raw JSON will show these in a good text editor.

1 Like

The issue is that find/replace will set the values to literal strings, despite you putting in the {}. When you enter these into the field in the tag editor, the designer constructs the binding stricture for you. You have to do the same when you find/replace. I have a python function specifically for this purpose, to find strings with {} in them and convert them to a binding structure. The I can just find/replace as you did, run it through the function, and import, and the bindings are then there