API-Referenz für Alarm Shelving

Diese Referenz fasst die API-Funktionen für Alarm Shelving, Suppression und Out-of-Service zusammen, die über die CTRL-Bibliothek AlertServiceClient.ctl verfügbar sind.

Überblick

Die Funktionen für Alarm Shelving und Suppression sind über die CTRL-Bibliothek AlertServiceClient.ctl zugänglich. Alle Funktionen dieser Bibliothek sind statisch und kommunizieren mit dem Manager Service API (MSA)-basierten AlertService.

Alle ändernden Funktionen akzeptieren einen optionalen Parameter reason, der im Audit-Trail der Security Events protokolliert wird.

Funktion shelveAlerts

Verwenden Sie shelveAlerts(), um eine oder mehrere Meldungsinstanzen bis zu einem bestimmten Zeitpunkt zu shelven und sie in der Bedieneransicht auszublenden.

bool shelveAlerts(dyn_atime alarmIdList, time until, string reason, dyn_mapping &shelvedAlerts, dyn_string &err)
Table 1. Parameter von shelveAlerts
Parameter Typ Beschreibung
alarmIdList dyn_atime Liste der zu shelvenden Meldungskennungen.
until time Endzeitpunkt für das automatische Unshelving. Bei Nullzeit wird die Meldung nicht automatisch unshelved.
reason string Begründungstext, der im Audit-Trail protokolliert wird.
shelvedAlerts dyn_mapping & Ausgabe: Shelving-Zustandsliste für die Eingabemeldungen.
err dyn_string & Ausgabe: Liste der Fehlerstrings im Fehlerfall.

Gibt true bei Erfolg zurück, false bei Fehler.

dyn_atime alarmIdList;
dyn_mapping shelvedAlerts;
dyn_string err;
alarmIdList[1] = makeATime("System1:ExampleDP:_alert_hdl.._value", getCurrentTime());
time until = getCurrentTime() + 3600; // 1 Stunde shelven
bool ok = shelveAlerts(alarmIdList, until, "Wartungsfenster", shelvedAlerts, err);

Funktion unshelveAlerts

Verwenden Sie unshelveAlerts(), um das Shelving einer oder mehrerer Meldungsinstanzen aufzuheben.

bool unshelveAlerts(dyn_atime alarmIdList, dyn_mapping &shelvedAlerts, dyn_string &err)
Table 2. Parameter von unshelveAlerts
Parameter Typ Beschreibung
alarmIdList dyn_atime Liste der Meldungskennungen, deren Shelving aufgehoben werden soll.
shelvedAlerts dyn_mapping & Ausgabe: aktualisierte Shelving-Zustandsliste für die Eingabemeldungen.
err dyn_string & Ausgabe: Liste der Fehlerstrings im Fehlerfall.

Gibt true bei Erfolg zurück, false bei Fehler.

Funktion listShelvedAlerts

Verwenden Sie listShelvedAlerts(), um alle derzeit geshelvten Meldungsinstanzen abzurufen.

bool listShelvedAlerts(dyn_mapping &shelvedAlerts, string &err)
Table 3. Parameter von listShelvedAlerts
Parameter Typ Beschreibung
shelvedAlerts dyn_mapping & Ausgabe: Shelving-Zustandsliste für alle derzeit geshelvten Meldungen.
err string & Ausgabe: Fehlerstring im Fehlerfall.

Gibt true bei Erfolg zurück, false bei Fehler.

Funktion suppressAlerts

Verwenden Sie suppressAlerts(), um Konfigurationen der Meldebehandlung zu unterdrücken und die zukünftige Erzeugung von Meldungen auf den Ziel-Datenpunktelementen zu verhindern.

bool suppressAlerts(dyn_string dpeList, string reason, string &err)
Table 4. Parameter von suppressAlerts
Parameter Typ Beschreibung
dpeList dyn_string Array der zu unterdrückenden Datenpunktelementpfade.
reason string Begründung, die für alle Datenpunktelemente der Operation verwendet wird.
err string & Ausgabe: Fehlermeldung im Fehlerfall, leerer String bei Erfolg.

Gibt true bei Erfolg zurück, false bei Fehler.

dyn_string dpeList;
string err;
dynAppend(dpeList, "System1:ExampleDP:_alert_hdl.._value");
bool ok = suppressAlerts(dpeList, "Inbetriebnahme", err);

Funktion unsuppressAlerts

Verwenden Sie unsuppressAlerts(), um die Unterdrückung von Konfigurationen der Meldebehandlung aufzuheben.

bool unsuppressAlerts(dyn_string dpeList, string &err)
Table 5. Parameter von unsuppressAlerts
Parameter Typ Beschreibung
dpeList dyn_string Array der Datenpunktelementpfade, deren Unterdrückung aufgehoben werden soll.
err string & Ausgabe: Fehlermeldung im Fehlerfall, leerer String bei Erfolg.

Gibt true bei Erfolg zurück, false bei Fehler.

Funktion listSuppressedAlertHandlers

Verwenden Sie listSuppressedAlertHandlers(), um alle derzeit unterdrückten Konfigurationen der Meldebehandlung abzurufen.

bool listSuppressedAlertHandlers(dyn_mapping &suppressedAlertHandlers, string &err)
Table 6. Parameter von listSuppressedAlertHandlers
Parameter Typ Beschreibung
suppressedAlertHandlers dyn_mapping & Ausgabe: Array der unterdrückten Meldebehandlungs-Info-Mappings.
err string & Ausgabe: Fehlermeldung im Fehlerfall, leerer String bei Erfolg.

Gibt true bei Erfolg zurück, false bei Fehler.

Funktion setOutOfService

Verwenden Sie setOutOfService(), um einen Datenpunkt oder CNS-Knoten in den Out-of-Service-Modus zu versetzen, indem seine Meldungsklassen durch ihre Wartungsgegenstücke ersetzt werden.

bool setOutOfService(string target, string reason, bool force, string updateStateDPE, anytype updateStateValue, string &err)
Table 7. Parameter von setOutOfService
Parameter Typ Beschreibung
target string Name des Datenpunkts oder CNS-Knotens, der auf Out-of-Service gesetzt werden soll.
reason string Begründung für den Out-of-Service-Vorgang.
force bool Wenn true, werden fehlende Wartungs-Meldungsklassen automatisch durch Kopieren der ursprünglichen Klassenkonfiguration erstellt.
updateStateDPE string Optionaler DPE-Pfad zum Speichern des Out-of-Service-Zustands. Verwenden Sie einen leeren String, falls nicht erforderlich.
updateStateValue anytype Wert, der in updateStateDPE geschrieben wird, wenn das Ziel Out-of-Service wird. Verwenden Sie false, falls nicht erforderlich.
err string & Ausgabe: Fehlerstring im Fehlerfall.

Gibt true bei Erfolg zurück, false bei Fehler.

string err;
bool ok = setOutOfService("System1:ExampleDP", "Wartung geplant", true, "", false, err);

Funktion resetOutOfService

Verwenden Sie resetOutOfService(), um den Out-of-Service-Modus eines Datenpunkts oder CNS-Knotens aufzuheben und die ursprünglichen Meldungsklassen wiederherzustellen.

bool resetOutOfService(string target, string updateStateDPE, anytype updateStateValue, string &err)
Table 8. Parameter von resetOutOfService
Parameter Typ Beschreibung
target string Name des Datenpunkts oder CNS-Knotens, der aus dem Out-of-Service-Modus zurückgesetzt werden soll.
updateStateDPE string Optionaler DPE-Pfad zum Löschen des gespeicherten Out-of-Service-Zustands. Verwenden Sie einen leeren String, falls nicht erforderlich.
updateStateValue anytype Wert, der in updateStateDPE geschrieben wird, wenn das Ziel Out-of-Service verlässt. Verwenden Sie false, falls nicht erforderlich.
err string & Ausgabe: Fehlerstring im Fehlerfall.

Gibt true bei Erfolg zurück, false bei Fehler.

Funktion listOutOfService

Verwenden Sie listOutOfService(), um alle Datenpunkte und CNS-Knoten abzurufen, die sich derzeit im Out-of-Service-Modus befinden.

bool listOutOfService(dyn_mapping &outOfServiceTargets, string &err)
Table 9. Parameter von listOutOfService
Parameter Typ Beschreibung
outOfServiceTargets dyn_mapping & Ausgabe: Array der Out-of-Service-Datenpunkt-Info-Mappings.
err string & Ausgabe: Fehlerstring im Fehlerfall.

Gibt true bei Erfolg zurück, false bei Fehler.

Funktion getOutOfServiceState

Verwenden Sie getOutOfServiceState(), um den Out-of-Service-Zustand eines oder mehrerer Datenpunkte oder CNS-Knoten abzufragen.

bool getOutOfServiceState(dyn_string targetList, dyn_mapping &outOfServiceStates, string &err)
Table 10. Parameter von getOutOfServiceState
Parameter Typ Beschreibung
targetList dyn_string Array der abzufragenden Datenpunkt- oder CNS-Knotennamen.
outOfServiceStates dyn_mapping & Ausgabe: Out-of-Service-Zustands-Mappings für die abgefragten Ziele.
err string & Ausgabe: Fehlerstring im Fehlerfall.

Gibt true bei Erfolg zurück, false bei Fehler.

Security Events

Alle Shelving-, Suppression- und Out-of-Service-Aktionen erzeugen Security Events.

Die Events enthalten den Namen des Bedieners, den Aktionstyp, die betroffenen Datenpunktelemente, den Begründungstext und den Zeitstempel.

Security Events bieten einen vollständigen Audit-Trail für die IEC-62682-Konformität.

KPIs des System Dashboards

Der AlertService stellt KPI-Werte für das System Dashboard bereit.

  • Anzahl der derzeit geshelvten Meldungsinstanzen.
  • Anzahl der derzeit unterdrückten Konfigurationen der Meldebehandlung.
  • Anzahl der Datenpunktelemente, die sich derzeit im Out-of-Service-Modus befinden.