Release V20.3.4

  • updated 2 yrs ago

Built on WindowsServer 2019 Standard

MSBuild v16.0

MSI: Wix v1.14.2
Released on: 10/1/2020





The script engine in Axiom has been significantly changed. The result is that Axiom applications with scripting may no longer work correctly until the script is modified for the new scripting engine. If you are concerned about this and wish to have your scripting applications converted before upgrading, please contact Canary Support.


Scripting Updates:

File conversion attempts to convert old scripts to new script with no guarantee that scripts will not break. Simple scripts should convert, but more complicated scripts may need to be modified manually. The application will still load if scripts do not work after conversion and the editor will report errors in code with a shortcut to open script editor at the breaking location.

Documentation w/ examples built into Axiom

Per screen (only compiled if screen has scripting)

Recompile screen script without save/reload after script edit


Axiom Applications/ChartFiles Updates:

Converts files on service startup (keeps old files for optional downgrade or conversion fixes if issues are found)

Performance improvements when loading applications/charts


Property Names Updates:

Changes to make names more consistent across controls

Changes to better indicate property purpose


Editor Updates:

Performance improvements when editing

Touch support improvements

Added breadcrumb (single select)

-  Shows all parents of selected control

-  Shows shortcut actions for selected control

Added breadcrumb (multi-select)

-  Shows all controls selected

-  Shows shortcut actions common across selected controls

Properties organized by groups

Screen management UI changes

Asset controls/properties unavailable if no asset templates available on local view

Script controls/properties unavailable if user is not admin (anonymous is no longer an admin user, but anonymous users can be given script access by modifying a settings.json file on the server)

Tag browse context improvements (opens at asset instance context)


Controls Updates:

Can only change “Name” of controls when scripting is enabled. Outside of scripting, the “Name” of a control has little significance.


Grid Updates:

Asset performance improvements

New GridRow control

Editing does not add control to next row on paste (can copy entire row)


AssetTemplate Updates:

Performance improvements

Editing not limited to first instance

Header/Footer stylistic changes


Control Limits Updates:

Added ability to select a tag as a limit value of a control


Playback Updates:

State of playback is persisted when applications/charts are saved/opened



Attempt to close any Canary  client tools that are running before installing



Historian: ability to rename a DataSet

Historian: bulk rename of Historian tags

Historian: bulk obsolete of Historian tags

Calculations: added Switch function

Calculations: added a "Copy" button for calculation groups to the initial Status page

Calculations: modified DurationSinceLastTvq function to return duration since the last value change, not duration since last time extension

Calculations: added Asset Path to the Calculation Status panel

Calculations: added calculation name to error message "could not get view info for"

Views: prevent clients from connecting to Views service until all initial models are cached

Views: parameter to control how frequently views and DataSets can re-cache

Views Model Plugin: support for attaching properties with wildcards on the front and back of a tag pattern

Views Model Plugin: override the Description property with another property from the source tag

Views Model Plugin: ability to pause rule evaluation in model builder

Publisher: sub-millisecond timestamp support using a defined SparkplugB property

Events: add asset name to subject and body of email message when event is generated from an asset instance

Excel Add-In: Fine tuning User Interface



MQTT Collector: support persistent sessions

MQTT Collector: sub-millisecond timestamp support using a defined SparkplugB property



Messages: support for not (!) capability in message text filter


Diagnostic Health System

Add Historian DataSet alert count tag


Bug Fixes


Excel Add-In on computer with 32-bit Excel does not register the Add-In properly

Failing with non-English region settings



Boolean tags using aggregates DurationInStateZero and NonZero not showing correct value on charts in live mode

The AssetFilter for Grids and Asset Templates does not allow the user to click anywhere in the string to change it while in edit mode

Spark Chart scales are not visible in an Asset Template

ValueBoxes not updating when applying new start time to multiple ValueBoxes at once

Some Trend Preferences not getting applied to Trends on a new Chart

Screen freezes after opening aggregate picker



Views: crashing occasionally when trying to release stale client connections

Views: not returning correct tag list when using open query through ODBC looking for tag with [ ] embedded

Views: DeltaTotalCount aggregate does not always compute the correct value

Views: API and ODBC calls not always honoring localhost as the View name

Views: crashing occasionally when determining if there are DataSet tag changes

Views Model Plugin: not handling tags with backslash dot (\.) in the name correctly

Views Model Plugin: Views service crashing when model pointing to non-existent source View

Views Model Plugin: not returning correct asset instance list to asset template filtering in Axiom when asset comes from multiple source Views

Views Model Plugin: model editor import rules function occasionally reports double the rules than really exist i.e. 18 of 9

Calculations: the "Backfill To" field changes when you close a calculation group then reopen it

Calculations: DeltaTotalCount aggregate does not always compute the correct value

Calculations: sometimes writing excessive error messages

Calculations: bug with replacing calculations and an incorrect backfill time

Events: sometimes generates event with incorrect duration after reconnecting to Views

ODBC: crashes when query string exceeds 4096 characters

Publisher: MQTT tag alias option results in not all tags being discovered by MQTT client

Excel Add-In: tag path control not auto-sizing correctly

Excel Add-In: Find Events fails when trying to pull a lot of events



Logger: clicking the tile is slow to bring up tab or crashes Canary Admin client

Messages: Admin sometimes locks up when quickly scrolling events

Views: crash when trying to rename a View

Diagnostic Health System: causing InvalidOperationException when other services are not responding



CSV Collector: Sender sessions occasionally do not get released after a file is processed

SQL Collector: Sender session does not get released after definition is updated

Canary Logger: when an error is returned from the OPC DA server the Logger should log a NoData after the last Historian time extension

Canary Logger: not handling success error codes (S_FALSE) correctly in OnDataChange callback

Sender: transform not working for culture that uses comma instead of period for numbers


Diagnostic Health System

Health score is incorrect when services are not running

Reply Oldest first
  • Oldest first
  • Newest first
  • Active threads
  • Popular