INSERTARCHARR

INSERTARCHARR

INSERTARCHARR action


Function

Modification, or writing the value array into the archive.

Declaration

INSERTARCHARR archIdent, locVarColValueIdent_Rec [,[retIdent_Int], bRecalcStat_Bool]

 

Parameters

archIdent

in

Reference to one of (historical) value - (not controlled whether the archive object is used - adding reference to object is enough).

locVarColValueIdent_Rec

in

Column identifier of a Record type local variable.

retIdent_Int

out

Identifier of Int type - return code: action success (optional parameter).

bRecalcStat_Bool

in

Identifier of Bool type - enables/disables calculation of related statistical historical values (optional parameter).

 

Description

The action  writes the value array for the archive object archIdent. Value array represents the column, to which the parameter locVarColValueIdent_Rec refers. Time of writing the values into the archive is defined by the time of their generation. If the parameter retIdent_Int is not stated, the action does not wait for confirming the writing. If the identifier is stated, it gets one of the following values:

  • _ERR_TRANS_ABORT

  • _ERR_TRANS_ERROR

  • _ERR_TRANS_IGNORED

  • _ERR_NO_ERROR

 

Note

If the identifier retIdent_Int is not stated, the script has no feedback to detect the action success. Action execution time is short, because it is a request, that is sent to the system.

If the identifier retIdent_Int is stated, the script waits for the physical writing of the value into the archive database.

Result:
If I will use the action to write a value into the archive without waiting and then I will read the value, the read value almost certainly will not be that one written in the previous action.

Calculation of related statistical historical values can be disabled by setting the parameter bRecalcStat_Bool to the value of @FALSE.

 

Example

Writing the value into the archive:

 

RECORD (SD.ArchDemo) _data INT _value INT _idx TIME _bt INT _retCode _bt := %StrToTime("8:01:00 16-10-2003") REDIM _data[60] ; assign any data _idx := 1 _value := 100 DO_LOOP EXIT_LOOP _idx > _data\DIM _data[_idx]^value := _value TIME _bt _idx := _idx + 1 _value := _value + 1 _bt := %AddTime(_bt, 1) END_LOOP
; writing INSERTARCHARR H.ArchObj, _data^value, _retCode
; action success test IF _retCode # _ERR_NO_ERROR THEN ; write error ENDIF

 


Related pages:

Script actions