Overriding a parameter of a nested child UDT

Hello all,

Is it possible to override the parameters of a child UDT by script.

Here is my simplified structure :
1 Parent UDT
1 Child UDT
The parent contains a child. The child is the “bearer” of the parameter to modify.

PARENT_UDT
|
------ CHILD_UDT (Parameter)

With system.tag.editTag, i can change parameters of the parent and override the properties of the child, but what I would like to do is overriding the parameters of the child.
This is doable in the Designer but I can figure how to do this by script.

Also, I do not wish to link my child parameters to a parent parameter.

Tried:

  • system.tag.editTag(tagPath = “Parent/Child”, parameters = {“ChildParameter”:“Test”})
  • system.tag.editTag(tagPath = “Parent”, overrides = {“Child”:{“ChildParameter”:“Test”}})

Regards.

1 Like

system.tag.browseConfiguration and system.tag.configure.

Part of that is in 7.9.4, I believe it will be fully functional in 7.9.5.

Hello Kyle,

Have you more information about this system.tag.configure method you’re mentionning ? Can’t find it anywhere.

Hello friends, have you been able to solve this? I’m trying to solve this but it gives me a lot of errors … If I use the TagPath of the UDT to change a parameter of a UDT-type child, it adds a new parameter to the parent, and if I overwrite it as if the UDT child outside a tag tells me what type of data does not have that property.

I’m not sure if this helps, and I’m not even sure where child UDT parameters are, but for overriding values/properties on a child UDT, I’ve found a bug with the Ignition code, so maybe this will help someone (I’m on 7.9.4)

To override a property on a child UDT you’re supposed to do this according to the docs

system.tag.editTag(
    tagPath="[default]path\to\parent"
    , overrides={'child': {'Enabled':False}} )

but that doesn’t work for me. I have to include the child UDT in the tagPath and then where the child tag path is supposed to go I can literally put anything

system.tag.editTag(
    tagPath="[default]path\to\parent\child
    , overrides={'ANYTHINGHERE': {'Enabled':False}}
)

So that’s some sort of bug, but if I do it the second way, at least it works. I’ve commented the weirdness so if it gets fixed and this stops working one day hopefully it’ll be easier to find

Hello
Chasondeshotel, this did not work for me, since my property is a custom property of the child data type. I receive the following error:

com.inductiveautomation.ignition.client.gateway_interface.GatewayException: com.inductiveautomation.ignition.client.gateway_interface.GatewayException: Tag property ‘Estado’ is invalid or value is an incorrect data type

Can you post a screenshot of where these parameters are?

I’m not sure I’m qualified to help, but I’ll try. I’m more curious where these child parameters are, I can’t seem to find what you’re talking about

edit: I guess I don’t understand nested UDTs. I use UDTs extensively, and all of those UDTs have nested tags but not nested UDTs