Script to remove parameter from tag

Hello,
I did some research but I couldn't find a way to do it: how can I remove a custom parameter from tag by script?

I have an udt defined, say myUDT, and it has a parameter, say myParameter,
then I added an instance from it, say myUdtInstance and added a custom parameter with:

system.tag.editTag(tagPath='myUdtInstance', parameters={"customParam":"this is a custom parameter"}

So now my instance has 2 parameters: myParameter and customParam

Maybe I didn't fully understand how to use the system.tag.editTag, so can anyone try to clarify or, if there is any script to remove customParam from the instance, show me how to?

Thanks in advance for your help. :slightly_smiling_face:

You can use system.tag.configure instead. Just be warned that if you're using it with the output from getConfiguration, that you will end up adding property overrides to the tags in the instance for any non-default tag config set in the UDT. I don't currently know of a nice way to get just the json of the UDT instance non-defaults. exportTags will write what you need to a file, so the only method I know of currently is to export the file and read it back.......

1 Like

Thank you @nminchin for you quick reply.
Unfortunately I can't use system.tag.configure and system.tag.getConfiguration in Ignition 7.9.
Any other suggestions?

I'm not sure I understand what you meant, care to elaborate ?

@pascal.fragnoud Which part exactly?

Pretty much all of it :X

you will end up adding property overrides to the tags in the instance for any non-default tag config set in the UDT.

get just the json of the UDT instance non-defaults

Maybe I'm just tired (10 months old daughter has decided sleeping is for the weak), but I can't figure out what this all means. What's the goal, and what's the issue ?

1 Like

I'm not sure I follow either, except for changing alarm props via scripting, you can change individual tag props in scripting and it will only override the specific property, not all props in the definition.

@pascal.fragnoud
The goal of the OP was to reconfigure tags and remove a udt param that was added. For v8+ you would use system.tag.configure. However, you first need the configuration of the tags to reconfigure, which is where getConfiguration comes in. However, using getConfiguration on a udt instance will not just get you the config of the non-defaults configured on the instance (eg like when you copy json of the UDT instance in the tag browser), it will return the non-defaults on the UDT instance and also that are configured in the edit definition as well. If you then use this return in configure, then you'll end up adding property overrides to the tags in the instance for any non default tag config set in the UDT definition, effectively decoupling the UDT instance from the definition and destroying it.

Goot to know but is there a way to programmatically remove a parameter from an udt instance in Ignition 7.9?

I think what threw me off is the meaning of default here. I thought you meant default as in what's configured in the UDT, while you seem to be talking about ignition's defaults, that are used when creating tags/UDTs.
It's clearer in the linked thread.

I think that if using system.tag.editTag() again without the parameter doesn’t work then you will have to delete the parameter manually in the designer.

I Agree.
I thought i worked the same of overrides: if you pass "propertyname": "None" it deletes the override, but I get an error.

What is the error?

If I run this:

system.tag.editTag(tagPath='myUdtInstance',	parameters={"customParam":None})

i get this error:

Java Traceback:

	at org.python.core.Py.JavaError(Py.java:495)
	at org.python.core.Py.JavaError(Py.java:488)
	at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:188)
	at com.inductiveautomation.ignition.common.script.ScriptManager$ReflectedInstanceFunction.__call__(ScriptManager.java:431)
	at org.python.core.PyObject.__call__(PyObject.java:320)
	at org.python.pycode._pyx509.f$0(<buffer>:1)
	at org.python.pycode._pyx509.call_function(<buffer>)
	at org.python.core.PyTableCode.call(PyTableCode.java:165)
	at org.python.core.PyCode.call(PyCode.java:18)
	at org.python.core.Py.runCode(Py.java:1275)
	at org.python.core.Py.exec(Py.java:1319)
	at org.python.util.PythonInterpreter.exec(PythonInterpreter.java:215)
	at org.python.util.InteractiveInterpreter.runcode(InteractiveInterpreter.java:89)
	at org.python.util.InteractiveInterpreter.runsource(InteractiveInterpreter.java:70)
	at com.inductiveautomation.ignition.designer.gui.tools.jythonconsole.JythonConsole$InterpreterWorker.doInBackground(JythonConsole.java:476)
	at com.inductiveautomation.ignition.designer.gui.tools.jythonconsole.JythonConsole$InterpreterWorker.doInBackground(JythonConsole.java:464)
	at javax.swing.SwingWorker$1.call(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at javax.swing.SwingWorker.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Caused by: com.inductiveautomation.ignition.client.gateway_interface.GatewayException: Error executing gateway function.
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.newGatewayException(GatewayInterface.java:353)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.sendMessage(GatewayInterface.java:327)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.sendMessage(GatewayInterface.java:280)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.invoke(GatewayInterface.java:912)
	at com.inductiveautomation.factorypmi.application.script.builtin.ialabs.IALabsTagFunctions.editTagImpl(IALabsTagFunctions.java:59)
	at com.inductiveautomation.ignition.common.script.builtin.ialabs.AbstractIALabsTagFunctions.editTag(AbstractIALabsTagFunctions.java:58)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:186)
	... 19 more
Caused by: java.lang.NullPointerException
	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.handleParameters(IALabsTagFunctions.java:522)
	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.__editTags(IALabsTagFunctions.java:840)
	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.editTagImpl(IALabsTagFunctions.java:729)
	at com.inductiveautomation.ignition.common.script.builtin.ialabs.AbstractIALabsTagFunctions.editTag(AbstractIALabsTagFunctions.java:58)
	at com.inductiveautomation.ignition.gateway.servlets.gateway.functions.IALabs.editTag(IALabs.java:189)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.inductiveautomation.ignition.gateway.servlets.gateway.AbstractGatewayFunction.invoke(AbstractGatewayFunction.java:211)
	at com.inductiveautomation.ignition.gateway.servlets.Gateway.doPost(Gateway.java:432)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
	at com.inductiveautomation.ignition.gateway.bootstrap.MapServlet.service(MapServlet.java:85)
	at org.eclipse.jetty.servlet.ServletHolder$NotAsyncServlet.service(ServletHolder.java:1391)
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:760)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:547)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:590)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1607)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1297)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:485)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1577)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1212)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
	at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:59)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
	at org.eclipse.jetty.server.Server.handle(Server.java:500)
	at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
	at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:547)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:270)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:388)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
	at java.lang.Thread.run(Thread.java:748)
Traceback (most recent call last):
  File "<buffer>", line 1, in <module>
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.newGatewayException(GatewayInterface.java:353)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.sendMessage(GatewayInterface.java:327)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.sendMessage(GatewayInterface.java:280)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.invoke(GatewayInterface.java:912)
	at com.inductiveautomation.factorypmi.application.script.builtin.ialabs.IALabsTagFunctions.editTagImpl(IALabsTagFunctions.java:59)
	at com.inductiveautomation.ignition.common.script.builtin.ialabs.AbstractIALabsTagFunctions.editTag(AbstractIALabsTagFunctions.java:58)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)

com.inductiveautomation.ignition.client.gateway_interface.GatewayException: com.inductiveautomation.ignition.client.gateway_interface.GatewayException: Error executing gateway function.

Try without the quotes around None.

There aren't

Huh. Try it from gateway scope (in a message handler, perhaps).

There just might not be a way to do this in v7.9.

I think the answer to my question is quite definitive: It can't be done :face_exhaling:
Tahnk you all, anyway. :slightly_smiling_face:

I tried from a tag change event and got this:

INFO   | jvm 1    | 2022/11/30 13:37:15 | E [T.S.ScriptDispatcher          ] [13:37:15]: ([default]New Tag, valueChanged) Error executing tag event script: Traceback (most recent call last):
INFO   | jvm 1    | 2022/11/30 13:37:15 |   File "<tagevent:valueChanged>", line 3, in valueChanged
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.handleParameters(IALabsTagFunctions.java:522)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.__editTags(IALabsTagFunctions.java:840)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.editTagImpl(IALabsTagFunctions.java:729)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.script.builtin.ialabs.AbstractIALabsTagFunctions.editTag(AbstractIALabsTagFunctions.java:58)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.lang.reflect.Method.invoke(Method.java:498)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 
INFO   | jvm 1    | 2022/11/30 13:37:15 | java.lang.NullPointerException: java.lang.NullPointerException
INFO   | jvm 1    | 2022/11/30 13:37:15 |  
INFO   | jvm 1    | 2022/11/30 13:37:15 | com.inductiveautomation.ignition.common.script.JythonExecException: Traceback (most recent call last):
INFO   | jvm 1    | 2022/11/30 13:37:15 |   File "<tagevent:valueChanged>", line 3, in valueChanged
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.handleParameters(IALabsTagFunctions.java:522)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.__editTags(IALabsTagFunctions.java:840)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.editTagImpl(IALabsTagFunctions.java:729)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.script.builtin.ialabs.AbstractIALabsTagFunctions.editTag(AbstractIALabsTagFunctions.java:58)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.lang.reflect.Method.invoke(Method.java:498)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 
INFO   | jvm 1    | 2022/11/30 13:37:15 | java.lang.NullPointerException: java.lang.NullPointerException
INFO   | jvm 1    | 2022/11/30 13:37:15 | 
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.Py.JavaError(Py.java:495)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.Py.JavaError(Py.java:488)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:188)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.script.ScriptManager$ReflectedInstanceFunction.__call__(ScriptManager.java:431)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.PyObject.__call__(PyObject.java:320)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.pycode._pyx15.valueChanged$1(<tagevent:valueChanged>:3)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.pycode._pyx15.call_function(<tagevent:valueChanged>)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.PyTableCode.call(PyTableCode.java:165)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.PyBaseCode.call(PyBaseCode.java:301)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.PyFunction.function___call__(PyFunction.java:376)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.PyFunction.__call__(PyFunction.java:371)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.PyFunction.__call__(PyFunction.java:361)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.PyFunction.__call__(PyFunction.java:356)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.script.ScriptManager.runFunction(ScriptManager.java:649)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.sqltags.scripts.TagScriptManager$FunctionInvokerImpl.run(TagScriptManager.java:493)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.sqltags.scripts.AbstractTagScript.invoke(AbstractTagScript.java:33)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.sqltags.scripts.TagScriptManager$Task.invoke(TagScriptManager.java:442)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.sqltags.scripts.TagScriptManager$TagScriptDispatcher.run(TagScriptManager.java:405)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.execution.impl.BasicExecutionEngine$ThrowableCatchingRunnable.run(BasicExecutionEngine.java:518)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.lang.Thread.run(Thread.java:748)
INFO   | jvm 1    | 2022/11/30 13:37:15 | Caused by: org.python.core.PyException: Traceback (most recent call last):
INFO   | jvm 1    | 2022/11/30 13:37:15 |   File "<tagevent:valueChanged>", line 3, in valueChanged
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.handleParameters(IALabsTagFunctions.java:522)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.__editTags(IALabsTagFunctions.java:840)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.editTagImpl(IALabsTagFunctions.java:729)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.script.builtin.ialabs.AbstractIALabsTagFunctions.editTag(AbstractIALabsTagFunctions.java:58)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.lang.reflect.Method.invoke(Method.java:498)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 
INFO   | jvm 1    | 2022/11/30 13:37:15 | java.lang.NullPointerException: java.lang.NullPointerException
INFO   | jvm 1    | 2022/11/30 13:37:15 | 
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	... 26 common frames omitted
INFO   | jvm 1    | 2022/11/30 13:37:15 | Caused by: java.lang.NullPointerException: null
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.handleParameters(IALabsTagFunctions.java:522)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.__editTags(IALabsTagFunctions.java:840)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.gateway.script.ialabs.IALabsTagFunctions.editTagImpl(IALabsTagFunctions.java:729)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at com.inductiveautomation.ignition.common.script.builtin.ialabs.AbstractIALabsTagFunctions.editTag(AbstractIALabsTagFunctions.java:58)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at java.lang.reflect.Method.invoke(Method.java:498)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	at org.python.core.PyReflectedFunction.__call__(PyReflectedFunction.java:186)
INFO   | jvm 1    | 2022/11/30 13:37:15 | 	... 23 common frames omitted

Have you tried this:

system.tag.editTag(tagPath='myUdtInstance',	parameters={"myParameter":"The Actual Value of myParameter"})

this:

system.tag.editTag(tagPath='myUdtInstance',	parameters={})

or this:

system.tag.editTag(tagPath='myUdtInstance')

Actually I used the first (as statet in my first post), I didn't try the second, but I think it won't work because you aren't passing any parameter and I didn't try the third, which doesn't nothing...

Thank you anyway :slightly_smiling_face: