This blog post is the first in the series Sneak Peek at AF 2018 with Asset Analytics where some of the new analytics features planned for 2018 will be shown.
For the past few months, Asset Analytics team has been busy enhancing the underlying language of Expression and Event Frame Generation analyses. Until now, the syntax, data types, and functions were more-or-less based on the design of Performance Equations of PI Data Archive, first introduced quite some time ago. While the original language is concise and allows writing very simple analyses very quickly, the rigid nature of the data access functions has been restrictive on some more advanced value retrieval, filtering, and aggregation scenarios. For example, it has not been easy to retrieve the time-stamp of the first bad value of an attribute within a time range.
Considering all of that plus some additional use cases related to calling to external systems, we are adding array types to the language syntax along with basic functions to filter and manipulate arrays. The following illustrates a use case where values for the past hour are fetched, filtered, cleansed, and then explored and aggregated.