# Can you do a system.opc.readvalue in Expression Editor

**URL:** <https://forum.inductiveautomation.com/t/can-you-do-a-system-opc-readvalue-in-expression-editor/96469>\
**Category:** Ignition\
**Tags:** scripting\
**Created:** [September 25, 2024, 11:49pm UTC](https://forum.inductiveautomation.com/t/can-you-do-a-system-opc-readvalue-in-expression-editor/96469 "2024-09-25T23:49:10Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Joe\_Alcide](https://avatars.discourse-cdn.com/v4/letter/j/b5a626/32.png) [@Joe\_Alcide](https://forum.inductiveautomation.com/u/Joe_Alcide)\
**Post date:** [September 25, 2024, 11:49pm UTC](https://forum.inductiveautomation.com/t/can-you-do-a-system-opc-readvalue-in-expression-editor/96469/1 "2024-09-25T23:49:10Z")

</div>

Hi! Is it possible to use system.opc.readvalue in an expression tag? How can I configure my opc connection to make it read from specific OPC server im using, thanks!

---

<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:** [September 25, 2024, 11:52pm UTC](https://forum.inductiveautomation.com/t/can-you-do-a-system-opc-readvalue-in-expression-editor/96469/2 "2024-09-25T23:52:15Z")

</div>

You can, via `runScript`, but it's generally not advised.

Create an OPC tag and reference that in your expression instead...

> **[runScript | Ignition User Manual](https://docs.inductiveautomation.com/docs/8.1/appendix/expression-functions/advanced/runScript)**
>
> Runs a single line of Python code as an expression.

---

<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:** [September 26, 2024, 12:04am UTC](https://forum.inductiveautomation.com/t/can-you-do-a-system-opc-readvalue-in-expression-editor/96469/3 "2024-09-26T00:04:19Z")

</div>

I've been contemplating an efficient `opcItems()` companion to my `tags()` expression function. I've haven't solidified the details, but it's on my to-do list.

---

<div class="post-metadata">

**Author:** ![jespinmartin1](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/jespinmartin1/32/57175_2.png) [@jespinmartin1](https://forum.inductiveautomation.com/u/jespinmartin1)\
**Post date:** [September 26, 2024, 3:50am UTC](https://forum.inductiveautomation.com/t/can-you-do-a-system-opc-readvalue-in-expression-editor/96469/4 "2024-09-26T03:50:11Z")

</div>

`runScript("system.opc.readValue(server, path)",1000)` but that inside a expresion tag just don't have any sense. Just create an opc tag where the opc server path is the new opc connection and change this on the tag to the name you set:

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/e/0/e0e43fc2344b1a68f2755053bb835fecaf1e3527.png)

and check this [OPC UA Client Connection Settings | Ignition User Manual (inductiveautomation.com)](https://www.docs.inductiveautomation.com/docs/8.1/ignition-modules/opc-ua/opc-ua-client-connection-settings)
