AlarmStorageReader.prvReadAlarmComment (METH) ¶ METHOD prvReadAlarmComment InOut: Scope Name Type Comment Input idWhichColumn CAA.IDENT we expect only DatabaseIdentifiers.COL_COMMENT_ .. format itfDatabaseAccess4 IDatabaseAccess4 Inout eError STO.ERROR cmtBuffer AlarmComment
AlarmStorageReader.prvReadLatchVarString (METH) ¶ METHOD prvReadLatchVarString : STO.ERROR This method reads for a string latch variable the stored variable value from the table TblLatchVarStrings. InOut: Scope Name Type Comment Return prvReadLatchVarString STO.ERROR A return value indicating, whether the processing was successful or not. Input liRowID LINT The row id used to read the string from the table TblLatchVarStrings. itfDatabaseAccess IDatabaseAccess The instance of IDatabaseAccess, that is used to access the database byLatchVarType BYTE The type of the latch variable Output cbpString CharBufferPtr Returns the pointer to the [W]STRING, that read from the database and stored in the global StringContainer instance.
AlarmStorageReader.prvReadLatchVarString2 (METH) ¶ METHOD prvReadLatchVarString2 : STO.ERROR This method reads for a string latch variable the stored variable value from the table TblLatchVarStrings. InOut: Scope Name Type Comment Return prvReadLatchVarString2 STO.ERROR A return value indicating, whether the processing was successful or not. Input liRowID LINT The row id used to read the string from the table TblLatchVarStrings. itfDatabaseAccess IDatabaseAccess The instance of IDatabaseAccess, that is used to access the database byLatchVarType BYTE The type of the latch variable pbVarValue POINTER TO BYTE Where to write value in case of STRING/WSTRING iSzVarValue INT
AlarmStorageReader.prvRetrieveLatchVarValue (METH) ¶ METHOD prvRetrieveLatchVarValue : STO.ERROR Reads the value of a latch variable from the alarm storage and stores it in the passed IAlarmMetaObjectStub3 instance. InOut: Scope Name Type Comment Return prvRetrieveLatchVarValue STO.ERROR A STO.ERROR value indicating the success or failure of the operation: NO_ERROR: In case of success WRONG_PARAMETER: If iWhichLatchVar references to an invalid latch variable Input itfDatabaseAccess IDatabaseAccess The instance of IDatabaseAccess, that is used to access the database itfAlarmMetaObjectStub3 IAlarmMetaObjectStub3 An instance of IAlarmMetaObjectStub3, where the values will be stored usiWhichLatchVar USINT The 1-based index of the latch variable.
AlarmStorageReader.prvTblAlarmFindTimestamp (METH) ¶ METHOD prvTblAlarmFindTimestamp : STO.ERROR Searches a row in the table TbAlarm, that matches a given timestamp best. This method must not be called if the database table is empty. InOut: Scope Name Type Comment Return prvTblAlarmFindTimestamp STO.ERROR Input itfDatabaseAccess IDatabaseAccess The instance of IDatabaseAccess, that is used to access the database liTimstamp LINT The absolute timestamp to search for xUseNextRow BOOL This parameter indicates, which row has to be considered if the timestamp cannot be found exactly. Either the next row (TRUE) or the previous row (FALSE) Output idRowTimstamp CAA.IDENT Returns the row ID of the row corresponding to the given timestamp
AlarmStorageGetTextId (FUN) ¶ FUNCTION AlarmStorageGetTextId : STRING This function can be used to determine the text id of a message of an alarm, that was read from the alarm storage. InOut: Scope Name Type Comment Return AlarmStorageGetTextId STRING The text id. An empty string if the corresponding information cannot be retrieved Input udiAlarmGroupId UDINT The internal id of the alarm group, that was read from the alarm storage udiAlarmId UDINT The internal id of the alarm, that was read from the alarm storage iWhichMessage INT The 1-based index of the text id.
AlarmStorageGetTextListName (FUN) ¶ FUNCTION AlarmStorageGetTextListName : POINTER TO STRING This function can be used to determine the name of the textlist of an alarm group, that was read from the alarm storage. InOut: Scope Name Type Comment Return AlarmStorageGetTextListName POINTER TO STRING A pointer to a STRING containing the name of the textlist. A NULL pointer if the corresponding information cannot be retrieved Input udiAlarmGroupId UDINT The internal id of the alarm group, that was read from the alarm storage udiAlarmId UDINT The internal id of the alarm, that was read from the alarm storage
AlarmStorageReader (FB) ¶ FUNCTION_BLOCK AlarmStorageReader EXTENDS AlarmStorageManager This function block is used to read data from the alarm storage. We use a function block instead of functions to be able to store some state like the already opened table or alarm storage. InOut: Scope Name Type Initial Comment Input _hLock RTS_IEC_HANDLE RTS_INVALID_HANDLE Used to synchronize the access to THIS instance, because there might be a potential usage from the application code, not only from the visualization code Methods: AddAlarmStorageListener ContinueReading FB_Init GetFirstLastRowID GetMinMaxTimestamps Read RemoveAlarmStorageListener SemaphoreAcquire SemaphoreRelease prvReadAlarmComment prvReadLatchVarString prvReadLatchVarString2 prvRetrieveLatchVarValue prvTblAlarmFindTimestamp Structure: AddAlarmStorageListener (Method) ContinueReading (Method) FB_Init (Method) GetFirstLastRowID (Method) GetMinMaxTimestamps (Method) Read (Method) RemoveAlarmStorageListener (Method) SemaphoreAcquire (Method) SemaphoreRelease (Method) private prvReadAlarmComment (Method) prvReadLatchVarString (Method) prvReadLatchVarString2 (Method) prvRetrieveLatchVarValue (Method) prvTblAlarmFindTimestamp (Method)
AlarmStorageReader.AddAlarmStorageListener (METH) ¶ METHOD AddAlarmStorageListener : EAlarmStorageReaderErrors Adds an IAlarmStorageListener instance. InOut: Scope Name Type Comment Return AddAlarmStorageListener EAlarmStorageReaderErrors A EAlarmStorageReaderErrors value indicating, whether the processing has been completed successfully or not: EAlarmStorageReaderErrors.NoError: Completed successfully EAlarmStorageReaderErrors.WrongParameter: If the IAlarmStorageListener instance is invalid EAlarmStorageReaderErrors.NoMemory: If the IAlarmStorageListener instance cannot be stored, because no memory available EAlarmStorageReaderErrors.InvalidCall: If there is no alarm storage is available, where the IAlarmStorageListener instance can be registered Input itfAlarmStorageListener IAlarmStorageListener An instance of IAlarmStorageListener, that will be informed every time, when new data has been written into the alarm storage
AlarmStorageReader.ContinueReading (METH) ¶ METHOD ContinueReading : EAlarmStorageReaderErrors Reads data from the alarm storage. InOut: Scope Name Type Comment Return ContinueReading EAlarmStorageReaderErrors A EAlarmStorageReaderErrors value indicating, whether the processing has been completed successfully or not: EAlarmStorageReaderErrors.NoError: Completed successfully EAlarmStorageReaderErrors.InvalidCall: ContinueReading was called without calling method Read before EAlarmStorageReaderErrors.AdditionalReadCallRequired: Reading has been completed successfully, but there is additional call of method ContinueReading necessary to read the rest of the data Input liTimstampFrom LINT The timestamp (when the alarm became active) of the 1st alarm liTimstampTo LINT The timestamp of the last alarm xReadAscending BOOL If this parameter is TRUE, then the rows will be returned by “timestamp active” ascending, otherwise descending itfAlarmStorageReaderConsumer IAlarmStorageReaderConsumer An instance of IAlarmStorageReaderConsumer, to which the data read from the alarm storage will be passed.