In my application, I have configured two separate alarms for a single digital point, one for 0, and one for 1.
Below is a snippet of my sqlt_as table for a given digital tag.
id tagid statename severity low high flags 354 36 High Alarm 4 1 1 0 355 36 Low Alarm 3 0 0 0
In my application, I use the severity level to determine what color a point gets displayed in. I have a “Status” screen with a table that monitors all points. For analog points, Hi/Lo (severity of 3/1) alarms will cause that point’s row in the table to be highlighted yellow, HiHi/LoLo (4/0) = Red, OK (2) = white. Now, for these custom digital alarms I am letting the user pick what color each alarm will be displayed in. I am doing this by changing the severity of the alarm as I configure it.
The problem I am encountering is that if both the alarm for 0 and alarm for 1 have the same severity level, notification e-mails are not sent if the point is switched to and from high and low. Since I am not 100% sure how the system triggers alarms, I am assuming the problem is explained by one of the two following reasons:
- An alarm is not triggered unless there is a change in severity
- There is some internal SQL query that is not returning the right alarm ID. If both severity levels were set to, lets say 2 in the snippet above, SELECT id FROM sqlt_as WHERE tagid = 36 AND severity = 2 would not guarantee that the correct id is returned.
I guess if I knew exactly why the alarm was not triggered I would know how to work around the problem. Hopefully this one isn’t too difficult to understand. If I was unclear please let me know and I will try to explain it again.
EDIT: I also noticed that these alarms are in fact showing up in my alarm log, there just seems to be a problem with the notifications.