The Application Calculation Engine (ACE) code (acecode) aborts without warning
- Last UpdatedApr 24, 2025
- 1 minute read
If an exception is thrown by your Application Calculation Engine (ACE) code (acecode), and that exception is not caught within your acecode, then the acecode will abort and the exception will be caught by the ACE. If the exception is caused by a temporary condition (such as a command inhibit tag, owning system unavailable, point in manual data override or offscan), then the acecode aborts without any alarms or events. However, the acecode is able to execute again when its configured execution trigger next occurs. If the exception is not considered a temporary condition, then it is treated as a severe coding error and the ACE Configuration (aceconfig) record is disabled; therefore, it will not run until it is manually repaired, an alarm is generated, and an event is logged.
To guarantee that code will always execute to completion, despite exceptions thrown by temporary conditions, it is recommended that you place try-catch code around methods that throw exceptions. This includes the following methods:
-
fnput
-
fldput