FC_SetException – Allgemeine Informationen
Typ |
Funktion |
Verfügbar ab |
V1.0.4.0 |
Funktion zum Eingeben und Löschen von Ausnahmen in einer (globalen) Ausnahmeliste (ST_ExceptionList).
Um eine Ausnahme über iq_stException (ST_Exception) zur Ausnahmeliste in iq_stExceptionList (ST_ExceptionList) hinzuzufügen, rufen Sie die Funktion mit i_xExceptionActive := TRUE auf.
Um eine verzögerte Ausnahme zu löschen, wenn timDelayTime > 0, bevor sie aktiv wird oder eine aktive Ausnahme quittiert werden muss, wenn xAutoQuit := TRUE, rufen Sie die Funktion mit i_xExceptionActive := FALSE auf und die relevanten Daten in iq_stException (ST_Exception) und iq_stExceptionList (ST_ExceptionList).
Diese Informationen werden auch der Loggingliste in iq_stLogDataList (ST_LogDataList) hinzugefügt.
HINWEIS: Die folgenden Parameter in iq_stException (ST_Exception) dürfen in Ihrer Applikation nicht verändert werden. Diese Werte werden von der Funktion geschrieben:
otodTimeStamp
otodElapsedTime
otodReactionTimeStamp
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_xExceptionActive |
BOOL |
TRUE: Die Ausnahme wird der angegebenen Ausnahmeliste hinzugefügt. FALSE: Eine verzögerte Ausnahme wird gelöscht, bevor sie aktiv wird oder bevor eine aktive Ausnahme quittiert werden muss, wenn xAutoQuit := TRUE. |
Ausgang |
Datentyp |
Beschreibung |
---|---|---|
q_etDiag |
Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose. Ein Wert ungleich GD.ET_Diag.Ok entspricht einer Ausnahmemeldung. |
|
q_etDiagExt |
POU-spezifischer Ausgang des Diagnosegeräts. q_etDiag = GD.ET_Diag.Ok -> Statusmeldung q_etDiag <> GD.ET_Diag.Ok -> Ausnahmemeldung |
|
q_sMsg |
STRING[80] |
Durch ein Ereignis getriggerte Meldung, die den Diagnosezustand konkretisiert. |
Ein-/Ausgang |
Datentyp |
Beschreibung |
---|---|---|
iq_stException |
Ausnahme, die in die globale Ausnahmeliste eingetragen werden soll. |
|
iq_stExceptionList |
Globale Ausnahmeliste |
|
iq_stLogDataList |
Globale Logdatenliste |
q_etDiag |
q_etDiagExt |
Aufzählungswert |
Beschreibung |
---|---|---|---|
OK |
93 |
Die Verzögerung ist noch aktiv. Die Ausnahme wurde noch nicht gesetzt. |
|
OK |
91 |
Die Ausnahme wurde mit AutoQuit entfernt. |
|
OK |
92 |
Die Ausnahme wurde erfolgreich gesetzt. |
|
OK |
0 |
OK |
|
ControllerConditionInvalid |
6 |
Die Steuerung ist ungültig. |
|
ControllerConditionInvalid |
90 |
Die Echtzeituhr wurde nicht gesetzt. |
|
LimitReached |
44 |
Überlauf der Ausnahmeliste. |
|
UnexpectedProgramBehavior |
46 |
Die Initialisierung der Ausnahmeliste schlug fehl. |
Aufzählungsname: |
ControllerInvalid |
Aufzählungswert: |
6 |
Beschreibung: |
Die Steuerung ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Die Steuerung liefert nicht die erforderlichen Voraussetzungen. |
Siehe Ausgang q_sMsg für nähere Einzelheiten. |
DelayStillActiveExceptionNotSet
Aufzählungsname: |
DelayStillActiveExceptionNotSet |
Aufzählungswert: |
93 |
Beschreibung: |
Die Verzögerung ist noch aktiv. Die Ausnahme wurde noch nicht gesetzt. |
Die Verzögerung ist noch aktiv, die Ausnahme wurde noch nicht in die globale Ausnahmeliste aufgenommen.
Aufzählungsname: |
ExceptionListOverflow |
Aufzählungswert: |
44 |
Beschreibung: |
Überlauf der Ausnahmeliste. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Die durch den globalen Parameter Gc_udiMaxNumberOfExceptions festgelegte maximale Anzahl von Ausnahmen in der globalen Ausnahmeliste wurde überschritten. |
Erhöhen Sie den Wert des globalen Parameters Gc_udiMaxNumberOfExceptions. |
Aufzählungsname: |
ExceptionRemovedByAutoQuit |
Aufzählungswert: |
91 |
Beschreibung: |
Die Ausnahme wurde mit AutoQuit entfernt. |
Die Ausnahme wurde durch eine automatische Quittierung entfernt.
Aufzählungsname: |
ExceptionSuccessfullySet |
Aufzählungswert: |
92 |
Beschreibung: |
Die Ausnahme wurde erfolgreich gesetzt. |
Die Ausnahme wurde erfolgreich in die globale Ausnahmeliste aufgenommen.
Aufzählungsname: |
InitExceptionListFailed |
Aufzählungswert: |
46 |
Beschreibung: |
Die Initialisierung der Ausnahmeliste schlug fehl. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Die Initialisierung der Ausnahmeliste schlug fehl. - Es ist ein interner Ausführungsfehler aufgetreten. |
Versuchen Sie eine Initialisierung der Ausnahmeliste mit Hilfe der Funktion FC_InitExceptionList. Bitte informieren Sie das Supportteam über diesen Fehler. |
Aufzählungsname: |
Ok |
Aufzählungswert: |
0 |
Beschreibung: |
OK |
Initialisierungswert des Ausgangs q_etDiagExt.
Die Ausnahme wurde bereits in die Ausnahmeliste eingetragen.
Aufzählungsname: |
RealtimeClockNotSet |
Aufzählungswert: |
90 |
Beschreibung: |
Die Echtzeituhr wurde nicht gesetzt. |
Problem |
Ursache |
Lösung |
---|---|---|
- |
Die Echtzeituhr der Steuerung wurde nicht gesetzt. |
Initialisieren Sie die Echtzeituhr der Steuerung. |