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

AVEVA Enterprise SCADA

Record fields and flags

  • Last UpdatedApr 24, 2025
  • 6 minute read

During the execution of the Application Calculation Engine (ACE) records several flags and fields in the ACE Configuration (aceconfig) records may be modified.

This section describes these fields and how they are modified. All methods for affecting the updates to these values through the ACE code (acecode) are also discussed. Most of these fields correspond directly to configuration items contained on the aceconfig display.

 

Field and Flag descriptions

Field/Flag

Description

Name

The name of the aceconfig record. This is a unique field.

Group

The Area of Responsibility (AOR) Group field, specifies the permissions group that governs which you can manipulate and view a record. If there is an output point defined for this record, then the Group field is copied from the output point automatically by the ACE. If no output point is defined, then the Group field cannot be configured in the aceconfig record.

CodeSlot

The database slot number of the acecode record containing the code that will execute for this aceconfig record. If this is blank or invalid, the aceconfig record will disable and an alarm is thrown. This can be changed using the configuration displays and the ACE will automatically switch from one code record to another when the change is saved. Changes to the execution code count as an input change and will trigger a routine that is marked to run on changes to inputs.

Parameters

The parameters array contains all of the inputs and the output that are used by the acecode. The output record is contained in slot 0 of the array. Inputs may be either database records, PubSub topics, constant values, or nothing. All inputs must correspond to a numeric value. The output can be a database value or nothing. Each value in this array is a structure that contains the following fields: isConstant, dataSource, value, and paramPath. The value field is a double that can contain a literal value to be used as a parameter to the code, or a PubSub topic that corresponds to a numeric value. The paramPath field contains a path that points to a database point containing the value to be used as the input or output. The isConstant flag is a Boolean indicating whether the input parameter is a constant or a variable value. If it is a variable value, the dataSource field is used to specify whether a Path or PubSub topic will be used. PubSub topic parameters are stored in the value field, while Paths are stored in the paramPath field. The isConstant flag is ignored for output points. Blank parameters are treated as the value NaN in the acecode, which triggers exceptions if they are used.

TriggerInterval

The triggerInterval defines the number of seconds between executions of an aceconfig record. The trigger interval can be set to any amount, but by default, the ACE runs its execution loop every 5 seconds; therefore any interval should be a multiple of 5 seconds. In addition, if the interval is 60 seconds, the aceconfig record is run at the top-of-the-minute; 3600 means top-of-hour and 86400 means top-of-day.

Enabled

This field is checked every time an aceconfig execution is attempted. If the field is true, then the record executes. Otherwise it does not execute and the ACE silently ignores the record. The enabled field can be manually set to either value using Microsoft SQL or the aceconfig display. If there is any problem with the ACE record (such as a code exception), then this field is set to false and the routine is effectively shut down until this flag is reset.

DoRun

This field is used to trigger an immediate execution of the aceconfig record. The field is checked on every execution cycle and if it is true, then the record is executed regardless of any other factors. The field can be set to true using the "run" fnput command. Since function put commands can be scheduled using the Job Scheduler (JSH), this enables the JSH scheduling of the ACE record execution. Once the record is executed, this field is automatically reset by the ACE. This field cannot trigger execution if the record is disabled.

UpdateFresh

Select this checkbox if you want the output point's fresh flag to be updated according to the input status. The output point's fresh flag is derived by either an AND or an OR operation. This must be set programmatically with ACE methods: SetFreshFunctionToAND() or SetFreshFunctionToOR() respectively.

If you use SetFreshFunctionToAND() in your acecode, the output point will only appear to be Fresh if all inputs are fresh themselves, or if all inputs are constants or database points with no fresh flag. Should any of these conditions be false for any of the inputs, the output point will appear to be Stale.

If you use SetFreshFunctionToOR() in your acecode, the output point will appear to be Fresh as long as one of the inputs is fresh itself, or is a constant, or a database point with no fresh flag. The output point will appear to be Stale only if the calculation fails.

For more information on SetFreshFunctionToAND() and SetFreshFunctionToOR(), refer to Application Calculation Engine (ACE) methods.

ConfigChange

This field is used to trigger a reload of the record by the ACE Process. This is automatically toggled when certain fields are updated. In addition, the ACE directly triggers off of other fields.

LastRunTime

This field indicates the last time that an aceconfig record has successfully run. Every time the aceconfig record runs to completion, this field is updated with the current timestamp. If the run is unsuccessful or the record is disabled or the triggering conditions are not met (such as inputs changing or a timeout expiring), the timestamp will not be updated. It is also not updated if an execution cycle has passed but this routine was not scheduled to execute.

Dataset

The dataset of the record that controls distributed access to a record. The dataset also controls where the code is executed, as only the owning system executes the acecode. In the case where an output is defined that has a dataset, this value is copied from the output record and cannot be changed. In the case where no output dataset exists, it can be configured manually.

AccessFlag

The accessFlag field is used by the easy eXtended Operator Station (ezXOS) to track whether or not the record is open in the Advanced Database Editor (ADE) displays and which ezXOS station has the record open. Several flags and fields on output records can be modified by the ACE. The most significant one is the output field itself. Since any numeric field in the RealTime database (RTDB) can be written to with the ACE, there are multiple scenarios that can exist. An output field may be the RealTime krunch field for a record: it may be some other numeric field on such a record or it may be a numeric field on a non-telemetered record. If the ACE is not updating the telemetered field on a record, then only the field written to is modified. As an example, if the ACE writes to analog.1.tolerance, then it is only the field that is updated, even if updateFresh is configured to be true. If, however, the ACE instead writes to analog.1.curval, then other fields may be affected.

InputTriggered

The ACE records can be configured to trigger off changes to their input. Pubsub inputs can only trigger on a numeric value change. Since the ACE cannot determine whether a change has occurred at startup, these records are always run at startup and when RealTime fails over. Code taking action based on value changes should do some sanity checking on the values before determining what action they take. For instance, an ACE routine monitoring a status point with two states should not assume that an exception trigger indicates that the status point has flipped from one state to the other. The previous values for inputs are available in an array of doubles called lastValues.

AlarmTriggered

The ACE records can be configured to trigger if an input point goes into or out of alarm. This flag only applies to Path inputs and cannot be configured for individual inputs.

SetupTriggered

The ACE records can be configured to trigger on a startup of the server. Startup is considered to be the same as going Hot. Code changes and input changes do not affect a startup triggered point. When such a record is triggered, the RunBecauseGoingHOT flag is set to true.

CodeTriggered

The ACE records can be configured to trigger if their code has been modified. In the case where the point is also configured to trigger on changes to inputs, this flag is redundant. However, there is no problem with having both selected.