Runscript - Expression Binding on alarm displayPath

Hello guys,
running Ignition gateway 8.1.14.

Can anyone confirm a bug when trying to bind an expression to an alarm displaypath ??

shared script :
def GetAlarm(Id):

strQuery = "SELECT * FROM ALLARMI WHERE Id_Allarme = '" + str(Id) + "'"

Pds = system.db.runQuery(strQuery)
if Pds.getRowCount() >0:
	return (str(Pds.getValueAt(0, 'Description')))
	return "Missing description for : " + str(Id)

expression in displayPath alarm binding:
runScript("shared.GetAlarm", "1")

I get an Error_expressionEval error ; the script works perfectly in the script console...

Is there any limitation to what I am trying to do or is it a bug ??
Thanks in advance,

The "1" you supplied is interpreted as the poll rate and you are now missing the Id parameter.

runScript("shared.GetAlarm",5000, "1")

This will refresh every 5s.

no luck, still the same issue.

Did you specify the Gateway Scripting Project?


Can you str a string in python ? What's the actual error you're getting, that error message should contain more context. Try also passing in 1 as an integer

These are the screenshots of what i have implemented:
The error is generic, no other info.
p.s. : Sorry , the script should read runScript("shared.GetAlarm", 5000, "1")


yes I gave the full path to the script ; as mentioned in previous post, the script runs perfectly in script console window.

Have you tried passing the function arg in as an int instead of a string?

1 Like

He asked about the Gateway Scripting Project
Project Library - Ignition User Manual 8.1 - Ignition Documentation (

The tags execute as the gateway, the script console as the project that is open.

Confirm that setting.


Well done guys!
I updated the Gateway Scripting Project parameter....
now working!