# Script to remove parameter from tag

**URL:** <https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953>\
**Category:** Ignition\
**Tags:** ignition79\
**Created:** [November 27, 2022, 6:27pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953 "2022-11-27T18:27:31Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![abiesbiogas](https://avatars.discourse-cdn.com/v4/letter/a/919ad9/32.png) [@abiesbiogas](https://forum.inductiveautomation.com/u/abiesbiogas)\
**Post date:** [November 27, 2022, 6:27pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/1 "2022-11-27T18:27:31Z")

</div>

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:

```auto
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. 🙂

---

<div class="post-metadata">

**Author:** ![nminchin](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/nminchin/32/6911_2.png) [@nminchin](https://forum.inductiveautomation.com/u/nminchin)\
**Post date:** [November 27, 2022, 7:06pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/2 "2022-11-27T19:06:11Z")

</div>

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.......

---

<div class="post-metadata">

**Author:** ![abiesbiogas](https://avatars.discourse-cdn.com/v4/letter/a/919ad9/32.png) [@abiesbiogas](https://forum.inductiveautomation.com/u/abiesbiogas)\
**Post date:** [November 28, 2022, 8:57am UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/3 "2022-11-28T08:57:01Z")

</div>

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?

---

<div class="post-metadata">

**Author:** ![pascal.fragnoud](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pascal.fragnoud/32/24728_2.png) [@pascal.fragnoud](https://forum.inductiveautomation.com/u/pascal.fragnoud)\
**Post date:** [November 28, 2022, 9:01am UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/4 "2022-11-28T09:01:28Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![nminchin](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/nminchin/32/6911_2.png) [@nminchin](https://forum.inductiveautomation.com/u/nminchin)\
**Post date:** [November 28, 2022, 10:10am UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/5 "2022-11-28T10:10:17Z")

</div>

@pascal.fragnoud Which part exactly?

---

<div class="post-metadata">

**Author:** ![pascal.fragnoud](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pascal.fragnoud/32/24728_2.png) [@pascal.fragnoud](https://forum.inductiveautomation.com/u/pascal.fragnoud)\
**Post date:** [November 28, 2022, 12:50pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/6 "2022-11-28T12:50:50Z")

</div>

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 ?

---

<div class="post-metadata">

**Author:** ![jlandwerlen](https://avatars.discourse-cdn.com/v4/letter/j/bc8723/32.png) [@jlandwerlen](https://forum.inductiveautomation.com/u/jlandwerlen)\
**Post date:** [November 28, 2022, 2:43pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/7 "2022-11-28T14:43:51Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![nminchin](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/nminchin/32/6911_2.png) [@nminchin](https://forum.inductiveautomation.com/u/nminchin)\
**Post date:** [November 28, 2022, 7:53pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/8 "2022-11-28T19:53:51Z")

</div>

@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.

> [@\[FEATURE\] Add option to system.tag.getConfiguration to match output of tag browser \`copy JSON\`](https://forum.inductiveautomation.com/t/feature-add-option-to-system-tag-getconfiguration-to-match-output-of-tag-browser-copy-json/62807):
>
> When you use system.tag.getConfiguration to get the configuration of UDt instances, it retrieves all non-default configuration of the UDT definition’s tags by deep recursively searching. If you compare this to the Tag Browser’s copy JSON functionality, this only copies the properties of the UDT definition tags that are overridden at face value, as well as of the name and tagType. When using getConfiguration with configure, the output from copy JSON is required otherwise you will essentially be…

---

<div class="post-metadata">

**Author:** ![abiesbiogas](https://avatars.discourse-cdn.com/v4/letter/a/919ad9/32.png) [@abiesbiogas](https://forum.inductiveautomation.com/u/abiesbiogas)\
**Post date:** [November 29, 2022, 8:01am UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/9 "2022-11-29T08:01:42Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![pascal.fragnoud](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pascal.fragnoud/32/24728_2.png) [@pascal.fragnoud](https://forum.inductiveautomation.com/u/pascal.fragnoud)\
**Post date:** [November 29, 2022, 8:54am UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/10 "2022-11-29T08:54:20Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![lrose](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/lrose/32/62724_2.png) [@lrose](https://forum.inductiveautomation.com/u/lrose)\
**Post date:** [November 29, 2022, 11:03am UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/11 "2022-11-29T11:03:50Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![abiesbiogas](https://avatars.discourse-cdn.com/v4/letter/a/919ad9/32.png) [@abiesbiogas](https://forum.inductiveautomation.com/u/abiesbiogas)\
**Post date:** [November 29, 2022, 11:17am UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/12 "2022-11-29T11:17:54Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![lrose](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/lrose/32/62724_2.png) [@lrose](https://forum.inductiveautomation.com/u/lrose)\
**Post date:** [November 29, 2022, 11:52am UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/13 "2022-11-29T11:52:04Z")

</div>

What is the error?

---

<div class="post-metadata">

**Author:** ![abiesbiogas](https://avatars.discourse-cdn.com/v4/letter/a/919ad9/32.png) [@abiesbiogas](https://forum.inductiveautomation.com/u/abiesbiogas)\
**Post date:** [November 29, 2022, 1:33pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/14 "2022-11-29T13:33:46Z")

</div>

> [@abiesbiogas](#):
>
> `system.tag.editTag(tagPath='myUdtInstance', parameters={"customParam":"this is a custom parameter"}`

If I run this:

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

```

i get this error:

```auto
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.

```

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [November 29, 2022, 1:43pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/15 "2022-11-29T13:43:24Z")

</div>

Try without the quotes around `None`.

---

<div class="post-metadata">

**Author:** ![abiesbiogas](https://avatars.discourse-cdn.com/v4/letter/a/919ad9/32.png) [@abiesbiogas](https://forum.inductiveautomation.com/u/abiesbiogas)\
**Post date:** [November 29, 2022, 1:54pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/16 "2022-11-29T13:54:39Z")

</div>

There aren't

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [November 29, 2022, 1:56pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/17 "2022-11-29T13:56:52Z")

</div>

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

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

---

<div class="post-metadata">

**Author:** ![abiesbiogas](https://avatars.discourse-cdn.com/v4/letter/a/919ad9/32.png) [@abiesbiogas](https://forum.inductiveautomation.com/u/abiesbiogas)\
**Post date:** [November 30, 2022, 1:46pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/18 "2022-11-30T13:46:13Z")

</div>

I think the answer to my question is quite definitive: It can't be done 😮‍💨  
Tahnk you all, anyway. 🙂

I tried from a tag change event and got this:

```auto
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

```

---

<div class="post-metadata">

**Author:** ![lrose](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/lrose/32/62724_2.png) [@lrose](https://forum.inductiveautomation.com/u/lrose)\
**Post date:** [November 30, 2022, 2:34pm UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/19 "2022-11-30T14:34:33Z")

</div>

Have you tried this:

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

```

this:

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

```

or this:

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

```

---

<div class="post-metadata">

**Author:** ![abiesbiogas](https://avatars.discourse-cdn.com/v4/letter/a/919ad9/32.png) [@abiesbiogas](https://forum.inductiveautomation.com/u/abiesbiogas)\
**Post date:** [December 1, 2022, 8:54am UTC](https://forum.inductiveautomation.com/t/script-to-remove-parameter-from-tag/66953/20 "2022-12-01T08:54:30Z")

</div>

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 🙂
