F_iecRemoveTableEntry
Die Funktion F_iecRemoveTableEntry entfernt einen zum Schlüssel passenden Hash-Tabelleneintrag.
Syntax
FUNCTION F_iecRemoveTableEntry: UDINT
VAR_INPUT
key : ST_IEC870_5_101HashTableKey;
END_VAR
VAR_IN_OUT
hTable : T_HAODBTable;
ENd_VAR
Ein-/Ausgänge
hTable: Applikationsobjekt-Datenbankhandle (Hash-Tabellenhandle). Das Tabellenhandle muss vor der Benutzung einmalig mit der Funktion F_iecCreateTableHnd initialisiert werden.
Rückgabewert
Rückgabeparameter | Beschreibung |
---|---|
0 | Kein Fehler, der Tabelleneintrag wurde erfolgreich entfernt. |
<> 0 | Fehler: IEC60870-5-10x Fehlercode |
Beispiel in ST
Es werden drei Hash-Tabelleneinträge aus der Applikationsdatenbank entfernt. Die gesuchten Datenpunkte sind bereits als Hash-Tabelleneinträge konfiguriert worden. Siehe in der Beschreibung der Funktion: F_iecAddTableEntry.
eType | objAddr | asduAddr | group |
---|---|---|---|
M_SP_NA_1 | 100 | 11 | IEC870_GRP_INRO1 |
M_DP_NA_1 | 200 | 11 | IEC870_GRP_INROGEN |
M_IT_NA_1 | 800 | 11 | IEC870_GRP_REQCOGEN |
PROGRAM P_RemoveEntry
VAR_IN_OUT
hTable : T_HAODBTable;
END_VAR
VAR
key : ST_IEC870_5_101HashTableKey;
bRemove : BOOL;
nError : UDINT;
END_VAR
IF bRemove THEN
bRemove := FALSE;
key.eType := M_SP_NA_1;
key.asduAddr := 11;
key.objAddr := 100;
key.group := IEC870_GRP_INRO1;
key.lookup := IEC870_LOOKUP_KEY_ALL_ON;
nError := F_iecRemoveTableEntry( key := key, hTable := hTable );
IF nError <> 0 THEN
RETURN;
END_IF
key.eType := M_DP_NA_1;
key.asduAddr := 11;
key.objAddr := 200;
key.group := IEC870_GRP_INROGEN;
key.lookup := IEC870_LOOKUP_KEY_ALL_ON;
nError := F_iecRemoveTableEntry( key := key, hTable := hTable );
IF nError <> 0 THEN
RETURN;
END_IF
key.eType := M_IT_NA_1;
key.asduAddr := 11;
key.objAddr := 800;
key.group := IEC870_GRP_REQCOGEN;
key.lookup := IEC870_LOOKUP_KEY_ALL_ON;
nError := F_iecRemoveTableEntry( key := key, hTable := hTable );
IF nError <> 0 THEN
RETURN;
END_IF
END_IF
Voraussetzungen
Entwicklungsumgebung |
Zielplattform |
Einzubindende SPS Bibliotheken (Kategoriegruppe) |
---|---|---|
TwinCAT v3.1.4012.0 |
PC oder CX (x86, x64, ARM) |
Tc2_IEC60870_5_10x (Communication->IEC60870) |