ON THIS PAGE:
P2 Server 4.5 is the engine that powers data retrieval from a variety of disparate sources, with built-in relationship models based on a Data Dictionary. P2 Server is how you get your data, transform it into more useful data, and then serve it up to other applications such as P2 Explorer or P2 Sentinel, for further analysis.
Patch Release 4.5.1 includes the ability to import and export images, new calculation functions, and an easier way to assign attribute values. It also addresses several issues raised by customers.
Import/Export Images
This release includes the ability to import and export images. This is supported both in Server Management and in the Import/Export spreadsheet.
Import/Export Spreadsheet
The Import/Export spreadsheet now provides the ability to specify images when making bulk updates to the Data Dictionary. To support this, two new tabs have been added to the spreadsheet: Image Group and Image. These function in the same way as Link Group and Link.
During export, a zip file is generated containing the Import/Export spreadsheet along with an Image folder containing the images, which are in separate Image Group folders. This same folder structure is required for import.
Server Management
In Server Management, the Export Options contain two new objects: Image and Image Group, with Image having a direct dependency on Image Group. Cascading dependencies on images exist for the Template Definition, Template Instance, Attribute Definition, and Attribute Value objects.
In the Hierarchy export mode, all images referenced by templates assigned to entities in the hierarchy are exported.
An additional option enables the export of all images within an image group, not just the ones referenced within the hierarchy.
Assigning Tags to Attributes
One of the more complex tasks in P2 Server is assigning tags to attributes. This task has been greatly simplified both in Server Management and in the Import/Export spreadsheet.
Server Management
The attribute assignment task in Server Management has been restructured to provide two ways of assigning attribute values: a new, fast drag and drop editor and the standard full editor.
The Entity Overview page now includes the fast Attributes editor, which allows you to drag and drop tags and calculations onto attributes. This greatly simplifies the assignment for most users.
When dragging and dropping a tag or calculation onto an attribute, you have the opportunity to either assign a time range or override the current assignment. You can also choose to apply that action (assign time range or override) to all further tag/calculation assignments in this session; this action can also be cancelled.
The fast editor is also available from the Assigned Templates page by expanding a template. The standard full editor is still available by clicking the edit icon for an attribute.
Import/Export Spreadsheet
The Attribute Value sheet of the Import/Export spreadsheet has been pivoted to allow for faster and more intuitive data entry.
In previous versions, the Attribute Value sheet had the following columns:
All attribute values, along with their templates had to be entered row by row, from left to right.
In this release, the sheet has been pivoted, so data can be entered from the top, down. This means that the single Attribute Value sheet has been replaced with one Attribute Value sheet per template (each sheet named AV_TemplateName). The new structure is as follows:
Here is an example:
There is now less information per sheet to worry about, and attribute values for each template can be more easily entered.
New Calculation Functions
This release of P2 Server introduces additional functions to the Calculation engine. The functions include digital state functions, conditional logic functions, plus a variety of other functions.
List of New Functions
AlterTimestamp() | Returns the input values with their timestamp shifted by the specified offset. |
Caller() | Returns the name of the calling data object or fetches it by appending a suffix to it, depending on the parameters. |
Count() | Returns the count of values per timestamp. |
Current() | Returns the name of the current data object or fetches it by appending a suffix to it, depending on the parameters. |
Initial() | Returns the name of the initial calling data object or fetches it by appending a suffix to it, depending on the parameters. |
NumberToState() | Returns the numeric values that are mapped to digital state text strings. |
StateToNumber() | Returns the digital state text strings that are mapped to numeric values. |
ReplaceValues() | Replaces the values in a variable. |
Select() | Returns all values within intervals between sample points from the "true value" or the "false value" parameter based on the value of the "condition" parameter. |
SingleValueIf() | Returns the value of the ValueIfTrue expression if the Condition expression evaluates to true. Otherwise, returns the value of the ValueIfFalse expression. |
SingleValueSwitch() | Returns the replacement value for the input value based on which case was matched for the input value. |
Switch() | Returns the replacement value for each input value based on which cases were matched for each individual input value. |
Sum() | Returns the sum of values per timestamp. |
TimeOfDay() | Returns the duration of the time of day part of every input date time value. |
Secondary Templates in Hierarchy Editor
In Server Management, the hierarchy editor has been enhanced to display secondary templates in the overview side panel, as well as the active primary template. This makes it easier to check that entities in a hierarchy all have the required templates.