Promotic

GetStateCount - method of the PmaAlarmGroup object

Description:
Returns the number of alarms that fit the specified filtering text.
Syntax:
Long GetStateCount(String sFilter)
Parameters:
sFilter(String) Filtering text that specifies which alarms are to be included into the desired output.
Different filtration fields can be used simultaneously, the alarm then must comply with all of them (e.g. "desc:FIQ100;priority.ge:5;").
The filtering text xx cannot be empty string (e.g. cannot be set "desc:;").
Entries are in the KeyVal format, for example "state:3;desc:Test2;records:50;".
 
The folowing types of filtration texts exist ("field" represents some of the alarm columns):
"field:xx;" means that the corresponding alarm field must be equal to the value of xx.
"field:#eq:xx;" means that the corresponding alarm field must be equal to the value of xx. If the corresponding alarm field is to be equal to one of several texts, then can be entered multiple texts separated by #or:.
"field:#begin:xx;" means that the corresponding alarm field must begin with the text xx. If the corresponding alarm field is to begin with some of several texts, then can be entered multiple texts separated by #or:.
"field:#in:xx;" means that the corresponding alarm field must contain the textxx. If the corresponding alarm field is to contain some of several texts, then can be entered multiple texts separated by #or:.
"field:#le:xx;" means that the corresponding alarm field must be less or equal to xx.
"field:#ge:xx;" means that the corresponding alarm field must be greater or equal to xx.
 
Note! If the field begins with the text s., then this is the setting hidden from the enduser in the alarm viewer and serves for setting the definite script filtration independently on end user settings. Both filtration type fields can be used for a single column simultaneously. In order to let the alarm pass the filter it must comly to both filtering fields. This can be handy for setting script filtrations (independent on enduser) and also for setting the initial state of user defined filtration (that can be modified by the enduser). For example s.source:#begin:Boiler;source:Boiler1;.
 
"state:xx;" (optional) - (states only) Displays alarms whose state equals to the state xx. Multiple states (separated by comma) can be entered.
For example "state:3,2,1;".
"hoot:xx;" (optional) - (states only) Displays alarms by sound notification, where xx:
0 = alarms sounding
1 = alarms not sounding
"area:#oper:xx;" (optional) - Displays alarms with area observing the defined operation #oper:xx. The part of the filter dependent on user setting in the alarm viewer.
For example "area:BoilerPlant1;" or "area:#eq:BoilerPlant1;" or "area:#eq:BoilerPlant1#or:BoilerPlant2;" or "area:#begin:BoilerPlant;".
"s.area:#oper:xx;" (optional) - Displays alarms with area observing the defined operation #oper:xx. The part of the filter hidden from the user in the alarm viewer.
For example "s.area:BoilerPlant1;" or "s.area:#eq:BoilerPlant1;" or "s.area:#eq:BoilerPlant1#or:BoilerPlant2;" or "s.area:#begin:BoilerPlant;".
"source:#oper:xx;" (optional) - Displays alarms with source observing the defined operation #oper:xx. The part of the filter dependent on user setting in the alarm viewer.
For example "source:Boiler;" or "source:#eq:Boiler;" or "source:#eq:Boiler1#or:Boiler2;" or "source:#begin:Boiler;".
"s.source:#oper:xx;" (optional) - Displays alarms with source observing the defined operation #oper:xx. The part of the filter hidden from the user in the alarm viewer.
For example "s.source:Boiler;" or "s.source:#eq:Boiler;" or "s.source:#eq:Boiler1#or:Boiler2;" or "s.source:#begin:Boiler;".
"desc:#oper:xx;" (optional) - Displays alarms with description (desc) observing the defined operation #oper:xx. The part of the filter dependent on user setting in the alarm viewer.
For example "desc:FIQ101;" or "desc:#eq:FIQ101;" or "desc:#eq:FIQ101#or:FIQ102;" or "desc:#begin:FIQ;".
"s.desc:#oper:xx;" (optional) - Displays alarms with description (desc) observing the defined operation #oper:xx. The part of the filter hidden from the user in the alarm viewer.
For example "s.desc:FIQ101;" or "s.desc:#eq:FIQ101;" or "s.desc:#eq:FIQ101#or:FIQ102;" or "s.desc:#begin:FIQ;".
"comment:#oper:xx;" (optional) - Displays alarms with comment observing the defined operation #oper:xx. The part of the filter dependent on user setting in the alarm viewer.
For example "comment:correction;" or "comment:#eq:correction;" or "comment:#eq:correction#or:test;" or "comment:#begin:correction;".
"s.comment:#oper:xx;" (optional) - Displays alarms with comment observing the defined operation #oper:xx. The part of the filter hidden from the user in the alarm viewer.
For example "s.comment:correction;" or "s.comment:#eq:correction;" or "s.comment:#eq:correction#or:test;" or "s.comment:#begin:correction;".
"s.usernote:#oper:xx;" (optional) - Displays alarms with usernote observing the defined operation #oper:xx. The part of the filter hidden from the user in the alarm viewer.
For example "s.usernote:correction;" or "s.usernote:#eq:correction;" or "s.usernote:#eq:correction#or:test;" or "s.usernote:#begin:correction;".
"priority:#oper:xx;" (optional) - Displays alarms whose priority complies with the operation #oper:xx. The part of the filter dependent on user setting in the alarm viewer.
For example "priority:5;" or "priority:#eq:5;" or "priority:#le:5;" or "priority:#ge:5;".
"from:xx;" (optional) - (history only) Displays the alarms with time of creation (timeon) greater or equal to time "xx". The time is entered in the form time(YYYY.MM.DD-hh:mm:ss.mmm), e.g. "from:time(2023.07.28-14:30:00.000);". The Time-range allows to narrow down the searched alarm set (alarms outside the time-range are not tested).
"to:xx;" (optional) - (history only) Displays the alarms with time of creation (timeon) less or equal to time "xx". The time is entered in the form time(YYYY.MM.DD-hh:mm:ss.mmm), e.g. "to:time(2023.07.28-15:00:00.000);".
The to time can be entered also by the now keyword, which means the current time (at the moment of calling), e.g. to:now.
The Time-range allows to narrow down the searched alarm set (alarms outside the time-range are not tested).
"timerange:xx;" (optional) - (history only) Displays the alarms with the creation time (timeon) belonging to specified time-range For selecting the time span by timerange, the value of from or to must be defined, where the timerange allows to compute the missing limit of the time-range. Thus the time-range can be defined by the following pairs: from - to, from - timerange or to - timerange. For example to:now;timerange:30m;. Time-range allows to reduce the portion of alarm items to be searched (alarms outside the time-range are not tested).
The time-range can be entered as integer followed by time unit sign (without spaces). Valid time units are: w = week, d = day, h = hour, m = minute, s = second. For example timerange:12h; or timerange:90m;.
Example1:
Detects the number of all alarms in the state: active unacknowledged (red).
JavaScriptVBScriptSelect and copy to clipboard

var oAl = pMe.Pm("/Alarm");
var n = oAl.GetStateCount("state:3;");
Example2:
Detects the number of all alarms in the state: active unacknowledged (red), that have the priority 10.
JavaScriptVBScriptSelect and copy to clipboard

var oAl = pMe.Pm("/Alarm");
var n = oAl.GetStateCount("TechAlarm", "state:3;priority:10;");
PROMOTIC 9.0.27 SCADA system documentation MICROSYS, spol. s r.o.

Send page remarkContact responsible person
© MICROSYS, spol. s r.o.