I’m trying to implement a client-configurable alarming system within Ignition 7.9.10.
I have configurable setpoints and ‘enable’ tags that the alarmed tag references in its configuration.
I also have some expression tags that attempt to summarize the current alarm information for a given tag.
The issue I’ve found is that the
isAlarmsActiveFiltered expression throws a
REFERENCE_NOT_FOUND exception if there are no alarms enabled on the given tag. I can see why this would be the default behavior, however, wrapping the expression in a
try block doesn’t seem to catch this exception.
try( isAlarmActiveFiltered( '[default]pathTo/AlarmedTag', // tagPath '*', // alarmName '*', // displayPath 0, // minPriority 4, // maxPriority False, // allowCleared True, // allowAcked True // allowShelved ), 0 )
Even with the AlarmedTag having no currently enabled alarms, I would expect this to return 0, or False, on this Boolean expression tag. But: