Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AVEVA Enterprise SCADA

Variables

  • Last UpdatedJul 05, 2024
  • 2 minute read

Application Calculation Engine (ACE) Variables

Variables

Description

output

A numeric variable whose values are written into the ACE output point.

input1, input2, ... inputX

The value of the input parameters.

Note: The values of the constants, PubSub topics, or database points defined in the ACE Config Editor must be numeric.

args[0..n]

The array of argument objects that correspond to the output and inputs. Input parameters indices start at 1. The output point is referenced using a index of 0. Each object has the following properties that can be read, but should never be written to:

  • CurrentValue - The current numeric value of the input.

  • DataBasePathString - The database path to the input.

  • HasDataset -True if this input is a database value and the record has a dataset.

  • HasFlags -True if this input is a database value and the record has a flag structure.

  • IsInAlarm - True if input alarm state is true.

  • AlarmChanged - Input alarm state has changed since the last ACE execution cycle.

  • IsConstant - True if input is a numeric constant; false if a database point.

  • IsFresh - True if this input has a fresh flag and is in a fresh state.

  • IsInError - True if this input has an error flag and is in error.

  • KeyName -The name of the database record.

  • PointNumber - The database point number of this record.

  • SameAsOutput - True if this input field and record is the same as the output field and record.variable input<parameterNumber> contains the value stored in args[<parameterNumber>].CurrentValue

Examples

Simple calculation:

output = (input1 / input2) + input3

Complex Procedure:

Dim pumpPtnum as integer = args(1).PointNumber

Dim pumpState as integer = input1

Dim tankLevel as integer = input2

If (( pumpState = GetStatusByName(pumpPtnum,"OPEN") ) and (tankLevel > 100)) Then

WriteEventSummary("status", pumpPtnum, "ACE: Turning pump off as the tank level is too high")

Fnput("status", pumpPtnum, "Command CLOSE")

End If