Understand expression analyses
- Last UpdatedJan 08, 2025
- 2 minute read
- PI System
- PI Server 2018
- PI Server
For expression analyses and event frame generation analyses, you specify inputs and calculations in expressions. In PI System Explorer, you enter each expression in a row. Each row has the following columns:
-
Name
A variable name for the value computed by the row. This variable is internal to the analysis. You can use this variable as an input to expressions specified by subsequent rows in the analysis.
-
Expression
The specification of a calculation performed. The expression can include PI AF attributes, variables from earlier rows in the analysis, and functions.
-
Value at Evaluation
The current computed value of the expression. Click Evaluate to compute again.
-
Value at Last Trigger
The value when the last trigger was computed.
-
Output Attribute
For expression analyses, the attribute that stores the computed value. If the analysis contains multiple expressions, you can map the value from any expression to an output attribute. However, at least one expression must be mapped to an output attribute.
For example, an expression analysis might contain one expression, specified in a single row.
|
Name |
Expression |
Value at Evaluation |
Output Attribute |
|---|---|---|---|
|
Variable1 |
PrevVal('Att1') - 100 |
|
Analysis1_Output |
You can also specify the calculation of an analysis with multiple expressions across several rows. For example, an analysis might contain three expressions: the first two calculate variables V1 and V2, which are used as inputs to the last expression.
|
Name |
Expression |
|---|---|
|
V1 |
'Att1'/2 |
|
V2 |
'Att2' - 'Att3' |
|
Result |
V1 + 3*V2 |
Analyses with multiple expressions evaluate the expressions in order: the top row first, the one below it next, and so on. Because expressions in lower rows may depend on results from higher rows, you can reorder the rows to evaluate them in the proper order.
You can click Add a new variable to add a row and the
icon to delete it.
Tip: You can add a line break within the expression by clicking shift+enter. You can also make your expressions easier to read by adding comments next to or within an expression. Use double slash (//) to introduce a comment or place the comment between slash asterisk (/*) and asterisk slash (*/): // Add comments here IF x THEN y ELSE /*Do this if x is false*/ z
