# Power Table extension functions using writeall?

**URL:** <https://forum.inductiveautomation.com/t/power-table-extension-functions-using-writeall/9695>\
**Category:** General Discussion\
**Created:** [February 11, 2015, 9:08pm UTC](https://forum.inductiveautomation.com/t/power-table-extension-functions-using-writeall/9695 "2015-02-11T21:08:22Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![drewdin](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/drewdin/32/3363_2.png) [@drewdin](https://forum.inductiveautomation.com/u/drewdin)\
**Post date:** [February 11, 2015, 9:08pm UTC](https://forum.inductiveautomation.com/t/power-table-extension-functions-using-writeall/9695/1 "2015-02-11T21:08:22Z")

</div>

I tried taking data from a power table using the double click extension function and writing to tags using the writeall function but I keep getting errors, is that functionality not allowed? Thanks

[code]ERROR [AdvancedTable-AWT-EventQueue-2] Error invoking extension method.  
Traceback (most recent call last):  
File “”, line 34, in onDoubleClick  
File “”, line 31, in populateTags  
at com.inductiveautomation.ignition.client.script.ClientTagUtilities.writeToTagsImpl(ClientTagUtilities.java:303)

```
at com.inductiveautomation.ignition.common.script.builtin.AbstractTagUtilities.writeAll(AbstractTagUtilities.java:288)

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)

```

java.lang.Exception: java.lang.Exception: Gateway Comm Mode is not Read/Write.

```
at org.python.core.Py.JavaError(Py.java:495)
at com.inductiveautomation.ignition.common.script.builtin.AbstractTagUtilities.writeAll(AbstractTagUtilities.java:290)
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)
at com.inductiveautomation.ignition.common.script.ScriptManager$ReflectedInstanceFunction. __call__ (ScriptManager.java:427)
at org.python.core.PyObject. __call__ (PyObject.java:404)
at org.python.core.PyObject. __call__ (PyObject.java:408)
at org.python.pycode._pyx373.populateTags$3(<extension-method onDoubleClick>:31)
at org.python.pycode._pyx373.call_function(<extension-method onDoubleClick>)
at org.python.core.PyTableCode.call(PyTableCode.java:165)
at org.python.core.PyBaseCode.call(PyBaseCode.java:134)
at org.python.core.PyFunction. __call__ (PyFunction.java:317)
at org.python.pycode._pyx373.onDoubleClick$1(<extension-method onDoubleClick>:34)
at org.python.pycode._pyx373.call_function(<extension-method onDoubleClick>)
at org.python.core.PyTableCode.call(PyTableCode.java:165)
at org.python.core.PyBaseCode.call(PyBaseCode.java:301)
at org.python.core.PyFunction.function ___call__ (PyFunction.java:376)
at org.python.core.PyFunction. __call__ (PyFunction.java:371)
at org.python.core.PyFunction. __call__ (PyFunction.java:361)
at org.python.core.PyFunction. __call__ (PyFunction.java:356)
at com.inductiveautomation.vision.api.client.components.model.ExtensionFunction.invoke(ExtensionFunction.java:126)
at com.inductiveautomation.factorypmi.application.components.VisionAdvancedTable$7.onClick(VisionAdvancedTable.java:316)
at com.inductiveautomation.ignition.client.util.gui.CommonMouseAdapter.mouseReleased(CommonMouseAdapter.java:69)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(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.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.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)

```

Caused by: java.lang.Exception: Gateway Comm Mode is not Read/Write.  
at com.inductiveautomation.ignition.client.script.ClientTagUtilities.writeToTagsImpl(ClientTagUtilities.java:303)  
at com.inductiveautomation.ignition.common.script.builtin.AbstractTagUtilities.writeAll(AbstractTagUtilities.java:288)  
… 56 more  
[/code]

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [February 11, 2015, 9:09pm UTC](https://forum.inductiveautomation.com/t/power-table-extension-functions-using-writeall/9695/2 "2015-02-11T21:09:50Z")

</div>

Looks like… Caused by: java.lang.Exception: Gateway Comm Mode is not Read/Write.

Is the designer set to read-only right now?

---

<div class="post-metadata">

**Author:** ![drewdin](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/drewdin/32/3363_2.png) [@drewdin](https://forum.inductiveautomation.com/u/drewdin)\
**Post date:** [February 11, 2015, 9:27pm UTC](https://forum.inductiveautomation.com/t/power-table-extension-functions-using-writeall/9695/3 "2015-02-11T21:27:13Z")

</div>

Unfortunately, it was set to read only… Good catch, it was driving me nuts why it wasn’t working.

I would like to say I feel pretty dumb for missing that…

😊

---

<div class="post-metadata">

**Author:** ![nmudge](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/nmudge/32/3394_2.png) [@nmudge](https://forum.inductiveautomation.com/u/nmudge)\
**Post date:** [February 11, 2015, 9:28pm UTC](https://forum.inductiveautomation.com/t/power-table-extension-functions-using-writeall/9695/4 "2015-02-11T21:28:17Z")

</div>

It has happened to us all.

But you should look at the error stack trace. When an error occurs, often there is an understandable, readable explanation somewhere in the error stack trace.

---

<div class="post-metadata">

**Author:** ![pdibenedetto](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pdibenedetto/32/6364_2.png) [@pdibenedetto](https://forum.inductiveautomation.com/u/pdibenedetto)\
**Post date:** [February 12, 2015, 3:14am UTC](https://forum.inductiveautomation.com/t/power-table-extension-functions-using-writeall/9695/5 "2015-02-12T03:14:45Z")

</div>

Follow Nick advice and allways find the “Caused by:” part of the stack trace.  
Regards,
