Orphaned UDT Error

I’m not sure what is causing this error and I don’t know how to fix it.

RootContainer.PT is a UDT property on the root container

[code]java.lang.Exception: Cannot assign orphaned UDT instance to a component property: Root Container.PT
at com.inductiveautomation.factorypmi.application.binding.UDTProperty.setupDirectBinding(UDTProperty.java:99)
at com.inductiveautomation.factorypmi.application.binding.UDTProperty$SetupDirectBinding.run(UDTProperty.java:84)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

Ignition v7.7.4 (b2015033012)
Java: Oracle Corporation 1.8.0_51
[/code]

4 Likes

I have the same mssg (Cannot assign orphaned UDT instance to a component property: Root Container.DigInput) Anybody has a suggestion, please?

I also have this problem - any solutions?

For anyone wondering, i got it solved.

I defined my UDT (let’s call it “CustomUDT”), than created a new instance of it (let’s call it “UDT1”).
Than I created a custom propriety on my popup Root Container, let’s call it “PopupUDT” (type “CustomUDT”).
I also created a custom propriety on my main window Root Contaienr, let’s call it “Instrument1”, type “CustomUDT”.

On the scripting windows (right click → scripting), I chose the mouseClicked event handler, “Open/Swap”, “Open and Center” and selected my popup window on the window selection list.
I also checked the “Pass Parameters” option, created a new parameter named “CustomUDT” and chose the main window root container “Instrument1” custom propriety. This will make the main window pass the “CustomUDT” parameter, that retrieves it’s values from “Instrument1” to the popup window.

The message “Cannot assign orphaned UDT instance to a component property:” happens when you do not assign the main window root container “Instrument1” custom propriety to anything. So, I fixed it by linking the main window root container “Instrument1” custom propriety to the “UDT1”, that is a “CustomUDT” instance.

1 Like

Hi, which steps did you follow to link the main window root container “Instrument1” custom property to your UDT instance?

Hello. When you click on the root container (using the components tree or in the main window) the custom property appears on your property editor (the window name is Vision Property Editor, in my case, it stays at the bottom left of the screen). The custom property appears as a blue text. Then you select the link icon and select you udt instance.

Thank you