Welcome
Search…
⌃K

ODIN User and Administration Guide - release 1.0.0.270

ODIN User and Administration Guide
related to release 1.0.0.270

Introduction

Purpose

This document serves as the user and administration guide for ODIN, which was designed and developed by TQS Integration Ltd.

Intended Audience

This manual is aimed at system administrator and users who will be using ODIN Web App.

Scope

This manual describes the ODIN Web App (ODIN). The information within this manual should be sufficient to provide the system administrator with the knowledge required to understand the application.

Definitions, Acronyms and Abbreviations

Term
Definition/Description
CSV
Comma separated values
LDAP
Lightweight Directory Access Protocol
ODIN
Application for historian data extract
ODIN application server
ODIN installation Webserver
PDF
Portable document format
SAML
Security Assertion Markup Language
URL
Uniform Resource Locator
XLS
Microsoft Excel Spreadsheet

Installation

Pre-Installation Steps

Setup ODIN Application Account

Use a Default Machine Account

By default, the application pools and Windows services associated with ODIN will use the following user:
  • NT Authority\Network Service
Configure ODIN access to PI Data Archive server data
When this configuration is used, the HOST SPNs below must exist for the machine account of the ODIN application server. These SPNs should already exist by default, but you may verify their existence using setspn -l netbios-server-name.
  • HOST/netbios-server-name
  • HOST/fully-qualified-DNS-name
Kernel mode is enabled by default and it should remain enabled for this configuration.
Procedure
  1. 1.
    On your domain controller, open Active Directory Users and Computers.
  2. 2.
    Select Computers under the domain of the ODIN application server.
  3. 3.
    Right-click the ODIN application server and click Properties.
  4. 4.
    Specify a trust setting for the computer. For a Windows Server 2003 or 2008 domain controller, on the Delegation tab, select the following options:
  • Trust this computer for delegation to specified services only.
  • Use any authentication protocol.
When you choose the first option, you will need to add the Service Principle Names (SPN) for each PI Data Archive server and AF server that will be accessed through ODIN by clicking Add, Users or Computers and specifying the name of the PI Data Archive server or AF server. Then locate the SPN and select it as the service to which to allow delegation. A PI Data Archive server SPN will have the Service Type “PIServer” and an AF server will have the Service Type “AFServer.” Selecting Use any authentication protocol allows for a protocol transition.
After you finish:
In some Active Directory environments, you also need to disable kernel-mode authentication and create Service Principal Names (SPNs), as described in the next section.

Use a Custom Domain Account

If a custom domain account is being used, then application pool associated with ODIN should be running as that user.
When this configuration is used, HTTP SPNs must exist for the domain account used by the ODIN application server. These SPNs will most likely need to be added, but you may check their existence using setspn -l domain\service-account.
  • HTTP/netbios-server-name
  • HTTP/fully-qualified-DNS-name
Configure ODIN Access to PI Data Archive Server Data
When using a custom domain account, you might need to disable kernel-mode authentication, if you are using a custom domain account, you must execute this step after the ODIN installation.
This type of configuration is needed for the following situations:
  • If you require access to websites or services that are not hosted in IIS, which are installed on the ODIN application server. For example, the PI Web API website.
  • If you want to restrict delegation to the ODIN service account, rather than to the server machine account in Active Directory.
To disable kernel-mode authentication, use Internet Information Server (IIS) Manager to configure the security settings for the ODIN.
Procedure:
  1. 1.
    In Internet Information Services (IIS) Manager, select the ODIN site and double-click the Authentication icon under the features view.
  2. 2.
    Select Windows Authentication and click the Advanced Settings link in the right pane.
  3. 3.
    Uncheck Enable Kernel-mode authentication.
  4. 4.
    If you are running ODIN under a custom domain account, open an Administrator command prompt with domain administrative rights and create two Active Directory Service Principal Names (SPNs). One SPN is for the netbios name and one for the fully qualified DNS name of the ODIN application server:
  • setspn -S http/netbios-server-name domain\service-account
  • setspn -S http/fully-qualified-DNS-name domain\service-account
  1. 1.
    Specify a trust setting for the service account. For a Windows Server 2003 or 2008 or greater domain controller on the Delegation tab, select the following options:
  • Trust this computer for delegation to specified services only.
  • Use any authentication protocol.
When you choose the first option, you will need to add the Service Principal Names for each PI Data Archive server and PI AF server that will be accessed through ODIN by Clicking Add, Users or Computers and specifying the name of the PI Data Archive server or AF server. Then locate the SPN and select it as the service to which to allow delegation. A PI Data Archive server SPN will have the Service Type PIServer and an AF server will have the Service Type AFServer. Selecting Use any authentication protocol allows for a protocol transition.
Examples:
  • setspn -S http/myserver mydomain\ODINService
  • setspn -S http/myserver.mydomain.int mydomain\ODINService

Prerequisites

It is a requirement that the following components must be installed before installing ODIN interface:
  1. 1.
    OSIsoft AF-SDK version 2.9.5.x or later.
  2. 2.
    OSIsoft PI-SDK version 1.4.6.494 or later.
  3. 3.
    Microsoft .NET 4.5.2 or greater -> 4.7.1.

Installation directory

The ODIN will be installed in the following default directory, where root is defined by the user at installation time:
<Root drive>: \Program Files\TQS Integration\ODIN-mvc

Installing ODIN

The ODIN installer is packaged as ODIN-mvc-1.0.0.xxxx and wrapped in executable (.exe). To start installation – right click on provided ODIN-mvc-1.0.0.xxxx.exe file and select: ‘’Run as administrator’’.
Run the application with administrator privileges. In some cases, the user will see the following security warning screen with the message ‘we can’t verify who created this file. Are you sure you want to run this file?’ Click ‘’Run’’ to proceed to the next screen.
After running as Administrator, the installer is initiated the following ‘’Welcome to the prerequisites setup Wizard’’ screen . Click ‘’Next’’ to proceed to the next screen.

License Agreement screen

Read the license agreement and if you accept the terms of the agreement, click on the checkbox: “I accept the terms in the License Agreement.” Click “Next” to proceed to next screen.
Note: Installation will not proceed unless License Agreement is accepted.

Installation Folder Screen

The user can choose the installation folder for the ODIN and supporting files. By clicking on the “Browse” button, the folder selection dialog will open. Select the folder location to install ‘ODIN.’ Click “select folder“ to choose the folder location.
After selecting the folder location, the user clicks “Next “to navigate to next screen.

SQL Database

On SQL Database screen, the user can enter the SQL configuration connection details.
User must select/enter the server details, if using a domain account to connect, select the checkbox for “Trusted Connection” if not, unselect it and provide the Username and Password. Then select/enter the “Database Name” and then can click on “Test SQL Connection” button and if it is successful, click on “Next” to navigate to the next screen.

Select SSL certificate

On the “Select SSL Certificate” screen, the user can choose a certificate file. By clicking on ‘’Browse’’ button, certificate selection dialog will open. Select the certificate file from the location and give valid certificate password. Click “Next “to move to next screen.

Properties

On the “Properties” screen, user can enter the additional properties for connection. For this version of the release, only integrated LDAP authentication is available. Select “Use LDAP” option and then click “Next “to navigate to next screen.

Ready to Install

On the “Ready to Install” screen, the user can see the ‘’the setup wizard is ready to begin the ODIN-mvc installation’’. Click “Install“ to move to next screen.

Installation completion screen

On successful install ‘’Completing the ODIN-mvc setup wizard’’ screen will appear. Click “Finish” to exit the installer.

How to cancel Installation process

At any time during the installation process – user has the option to cancel the installation. The installation process can be terminated by clicking the “Cancel” button. The cancellation confirmation dialog should appear as shown below.
By clicking button “Yes” – installation process will be terminated successfully.

Web config

On successful installation of ODIN, the user will be able to see ‘’Web.config” file. In the config file, the user can view ‘Configuration’->‘AppSettings.’ The important settings for the user are:
  • redirectUri: *required - The URL address for the ODIN.
  • SQLHost: *required - Name of the Database Server HOST
  • SQLDatabase: *required - Name of the Database.
  • SQL User: Default blank, required only in use of specific user for Database
  • SQL Password: Default blank, required only if using a specific user for Database
  • ldaphost: Default Domain Name, required if usersearchtype is the directory.
  • domain: Default blank, required if usersearchtype is principal.
  • container: Default blank, used to connect to specific container in Active Directory to search users.
  • domainuser: Default blank, required only if specific users can search for users in Active Directory.
  • domainpassword: Default blank, required only if domainuser is provided.
  • usersearchtype: *required, Default directory, the way that the ODIN will search users in domain.
  • afwwhosttemplate: *required, the name of the AF Element Template which contains the AF Attribute representing Wonderware host name.
  • afwwtaggrouptemplate: Required. The name of the AF Element Template which contains AF Attributes used for data referencing to Wonderware tags.
  • afwwtagcategory: *required, The name of AF Attribute Category. Only AF Attributes which belong to this category are used as data references to Wonderware tags.
  • afwwapplyfunctionattr: optional, the name of AF Attribute which value is used for data casting and conversion.
  • afwwcountertagresattr: *required, the name of Attribute which defines Wonderware counter resolution. The value of the AF Attribute is defined as enumeration set.
  • afwwflexibleattr: optional, the name of AF Attribute, defined as a child of AF Attribute with data reference to Wonderware tag.
  • afwwtaggroupattr: *required, the name of AF Attribute which defines tag group. Tag group is used for selecting which raw data retrieval mode to use. Available modes: Delta, Counter

Json File

On successful installation of ODIN, the user can view config json file. In the json files, user can access the details for ODIN web application configuration.
Both json files must be updated by the user, the important settings for the user are:
  • endpoint: *required - The URL address for the ODIN communication with real time messages.
  • apiEndpoint: *required - The URL address for the ODIN communication with ODIN Services.
  • baseURL: *required - The URL address for the ODIN main address of the ODIN.
config.json:

Internet Information services (IIS) manager

On Internet information services (IIS) manager screen, the user can view application pools and sites. The user can see hosting websites and other content on the web.
Administrator permission is required in IIS to make any changes:
To set the IIS Server authentication to “Windows security” with all other authentications disabled, follow the instructions below:
On the start menu, type “inetmgr”. This will open the IIS Manager
click on the Server (it will be the first item after Start Page on the left pane)
In the right pane, go to the IIS section and double click on Authentication, it will display a screen with all IIS Webserver options. Under IIS section, go to Authentication option to enable the Windows Authentication and Disable all other authentication options. This will set the ODIN website authentication to windows authentication only.
Under the server name in left panel, navigate to “Sites” and expand submenu.
Select “ODIN” and navigate to the IIS Section and double click on Authentication.
A screen with configuration options will be displayed. Enable the Windows Authentication and Disable all other options.
Set the application pool account to run under a domain account. Select Application Pools under the server in the left-hand panel. Application Pools setting will be displayed in the right-hand panel.
Select Odin application pools, in the right pane. In the Actions menu, click on Advanced Settings.
In Process Model section:
To change Identity, select “Custom account” and click on the “Set” button. Enter “Username” and “password” and “confirm password” details.
In the IIS Application pool: set the Idle timeout as 0, set failure/Rapid Fail Protection as false, only enable windows authentication for ODIN site and rest authentication should be disabled and set pre-load Enabled to true.
Graphical user interface, text, application Description automatically generated
We need to bind the SSL Certificate for the ODIN site in the IIS. Click on the Sites -> ODIN and on the right pane click on the bindings.
Click on the Site binding which was already there and click on the ‘Edit’ Button.
Click on the dropdown of the SSL Certificate and select the correct SSL Certificate.
Graphical user interface, text, application Description automatically generated
Click ‘OK’ after selecting the SSL Certificate.
Graphical user interface, application Description automatically generated
Close the ‘Site Binding’ window and Click on the ‘Start’ button on the right pane.
Graphical user interface, text, application Description automatically generated

Uninstalling ODIN

The ODIN interface can be removed from specific nodes by uninstalling ODIN. The file is in the directory where the interface was installed originally. To uninstall ODIN user should follow the path: control panel > programs > programs and features. Then select the program ‘ODIN-mvc’ and then click uninstall.
After selecting the uninstall option and the user selects “continue” to initiate the uninstall process, the “User Access Control” screen will appear. Select the ‘Yes’ option to uninstall.
The user will see the welcome wizard screen. Click on ‘Next’ to continue to uninstall.
After the setup wizard screen, the “ODIN-mvc setup” screen will be displayed with the following options: Modify, Repair and Remove. Select the ‘Remove’ option to continue with uninstall by selecting Next.
After the user has selected the remove option above, the user will be navigated to the ‘Remove ODIN-mvc’ screen. Select ‘Remove’ option to uninstall.
After selecting the remove option, ODIN will be removed from the system successfully. Click on ‘Finish’ to exit from setup screen.

Sign In

For this release version of ODIN, the authentication will be integrated with Windows Active Directory via Windows Authentication.

Windows Authentication

For the first time that the user accesses the ODIN, or after a long idle time or when the server refreshes the definitions, the user will be required to provide the user credentials to access ODIN.

Permission

Currently the ODIN is designed to have three role levels: Administrator, User and Read Only.
The roles follow the Levels: Administrator > User > Read Only, which means that a user in a lower-level role, cannot perform changes to a user who belongs to an upper-level role.
For security reasons, a user cannot change their own permissions, if necessary, another user in an upper role level with permission to edit permissions should be contacted to proceed with the necessary changes.
It is expected that all users have permissions to read all screens, otherwise an Authorization is Required message will be displayed:
For Create/Edit and Delete permissions, the system will check permission status and render/enable actions related to changes or deletion.
All default permissions will be defined in the Config screen which will be described later in this document.
All options in the menu will be available only if the user logged in can view that resource, otherwise the section in the menu will not be displayed. If the user logged in, attempts to access directly using the URL address for that resource, an “Authorization Required” message will be displayed.
The Menu Section includes:

Dashboard

Click on the tab to be directed to the <ODIN SERVER NAME> Dashboard Page.

Tasks

Click on the tab to be directed to the <ODIN SERVER NAME/tasks> Tasks Page.

Users

Click on the tab to be directed to the <ODIN SERVER NAME/users> Users Page.

Logs

Click on the tab to be directed to the <ODIN SERVER NAME/logs> Logs Page.

Audit

Click on the tab to be directed to the <ODIN SERVER NAME/audits> Audit Page.

Dashboard

The Dashboard was designed to provide instant and summarised task execution information, where it is possible to follow a real time operation of the configured tasks.
In the Dashboard page it is possible to see:

Task executed table:

Here the user can view the tasks which were executed on the servers with their start time, end time and the duration of each task.
In the duration column, the color green is displayed for the tasks which were executed without errors and without warnings, the orange color is displayed for the tasks executed with warnings and the red color is displayed for the tasks executed with errors.

Graph with Tasks Executed, Tasks Executed Wwithout Issues and Tasks with Error:

There are 2 kinds of graphs:

Line Graph

The graph points are plotted, and the user can view the trends with total tasks executed, no error tasks and tasks with errors.

Bar Graph

There are three bar graphs displaying the Tasks Executed, Tasks Executed Without Issues and Tasks with Error.
Both graphs will be changed when we change the dropdown associated with them. Dropdown has Date, Hour, Month and Year and the graph values will be changed by these options. By defaults the user can see the line graph and bar graph displaying the points and values for the last 60 days.
Once the dropdown is changed to Hour then the user can see the line graph and bar graph displaying the points and values for the last 24 hours.
Once the dropdown is changed to Month then the user can see the line graph and bar graph displaying the points and values for the last 12 months.
Once the dropdown is changed to Year then the user can see the line graph and bar graph displaying the points and values for the last 5 years.

Tasks

The tasks screen was designed to allow users to access and configure tasks to be executed on the server, the tasks are related to extraction data from a Source server to a specific Destination server.
It is possible to configure a set of different Source x Destination export tasks and run once through a time interval.
The tasks can be searched by a user by adding the task name, source, destination and choosing the status from the status dropdown.
Click on ‘Clear’ button (rubber icon) to clear the text in the search.
Click on ‘Cancel’ button to cancel the search operation.
Click on ‘Submit’ button to search the entered task.
Click on ‘New’ button to add the new task.

List

In the list section, the user can see the name of the task, date, status, locked and the last column for actions related a task, all sections can be viewed by any users who have permission to read the screen, the actions can be viewed by users who can edit or delete.
All the users in the system, can select a task or a group of tasks by selecting the checkboxes on each task and can export it to CSV, XLS or to PDF.
Users can sort the Task, Date, Status and Locked fields, by clicking on the up and down arrow in the header field.
Only users with the permission to “Delete,” can execute this action on a task in the list.
Only users with permissions to “Create,” can execute the actions to Create, Edit, Schedule, and Unlock tasks in the list.

Scheduler

Each task needs to be registered at the server and then triggered to run. It will obtain the task configuration, frequency and run as configured by the user.
To perform it, the user must click on the “Schedule” button in the Tasks list:
The scheduler options popup will be shown as follows:
Task not registered yet:
Task registered but not running:
Task running:
The options available to user are: Run, Stop, Register, Remove and Edit.

Run

This action triggers a registered task, if the action is sent successfully, a message is shown for the user and the task starts to execute.

Stop

This action interrupts the task execution immediately.

Register

This action will register the task on the server to be executed and run over the frequency configured.

Remove

This action performs a deletion of the task from the server. It means that the task still exists on the database but is not registered to execute anymore.

Edit

This action will enable some fields in the popup:
After making the changes, click on “Update Schedule” button. The Schedule for the task will be updated in the Database.

New

When the user clicks on the ‘New’ button in the search section or ‘+’ button in the list section a pop up will appear to create a task.
After all configurations for a task are complete, the user must click on the “Confirm” green button to confirm the new task, and then in the list, the user can Edit, Delete, Unlock or Send Action to Scheduler once permissions are granted for this action.

Details

This is the section to identify a Task and to configure the main setup for a new task.
User enters the “Name” of the task, chooses the “Source” server from the dropdown, chooses the “Destination” server from the dropdown, chooses the reader from the “Reader” dropdown, and enters a description in the “Description” text area.
Once it is completed the user needs to go to the next section/tab.

Source

There are some options to configure a source of the data extraction such as: AF System, PI Server, Wonderware Server.
Source as AF System
The user will select the AF Server, AF Database and PI Server to proceed with this source configuration, related to this configuration. In the export type, user can choose asset driven export or event driven export. For Event driven export, the user has only one option to set event frame filters and for asset driven export, user have options to set both Event Frame Filters and PI Point Filters.
Event Frame Filters
These filters are not required but if the user wants to configure it, click on the “Event Frame Filter” button and a popup will be displayed as follows:
To configure these filters, the user is required to insert a name and has an option to select a Template and Category. The user must click on the “+” button to add it in the list of filters.
Then provide the filter and add it to a list, the user will be able to test it by selecting the record in the table and clicking on the Test button. Optionally, the user can provide a Start and End Time to test the filter:
After providing the filters and testing, the user must click on the “OK” button to confirm or click on the “Cancel” to remove all filters.
If cancel is selected and it has existing filters added, a message will be shown to confirm the action:
If “OK” is clicked, the filters will be added to the source configuration, the current popup will be closed, and the previous popup will be displayed as follows:
PI Point Filters
These filters are not required but if the user wants to configure it, two options are available: PI Points (Tag Search) and Attributes. If the user clicks on the “PI Points" button the popup below will be shown:
If any PI Points were previously configured, the list will be populated:
PI Points
PI Point Filters are not required but if the user wants to configure it to search for Tags, the user clicks on the PI Points button and a popup will be shown:
It will enable the user to find PI Points by Tag Searching. The PI Server will be selected by default, to the PI Server selected in the AF System main popup. The user is not required to provide any filter. For this example, we will use the “sinusoid” as the Point Name and then click on the Search button, the results will appear in the table below:
If any PI Points were previously configured, the list will be populated.
After the PI Point is found, select in the table, and click “OK” to confirm the selection:
Otherwise, if “Cancel” is clicked, a message to confirm Cancel will be shown and no PI Points will be selected:
After “OK” is clicked, the filters will be added to the source configuration, the current popup will be closed, and the previous popup will be shown:
Attribute Selection
Elements and Attributes filter are not required but if the user wants to configure it to search for Attributes/Elements, click on the Attributes button and then the following popup will be displayed:
The Root element checkbox will be auto selected when the popup appears, and users can set any element in the tree as a root element by clicking on the elements in the tree.
Users can select the checkbox of the element and add it to that input box either by selecting the elements from the tree or by entering the elements to that input box.
If users wants the attributes of all elements starting from for eg: If user wants the attributes of all elements starting with Hydro then users can enter as Hydro* and press the search button.
Users can traverse through the tree and click on the elements to see the attributes of those elements with respect to the root element.
After the Element Selection, click on ‘Add Selected Filter-Element and Attributes fields’ to select all the attributes of that element:
To add a single attribute of another element. Click on the element, get the attributes, and add the specific attributes in the search bar. Then click ‘Search’ button and then click ‘Add Selected Filter-Element and Attributes fields ‘and then user can see the element with the specified attribute name in the Element-Attribute Table and then click on ‘OK’ button below:
After the PI Points is found, click “OK” to confirm the selection:
Otherwise, a message to confirm Cancel will be shown and no PI Points will be selected:
If “OK” is clicked, the filters will be added to the source configuration, the current popup will be closed, and the previous popup will be shown:
Source as PI Server
The user will select the PI Server to proceed with this source configuration, and check if “Map PI Properties to Recipe objects” is (checked) or not (unchecked). Using this configuration, the user has the option to set the “Batch Filter,” “Unitbatch Filter” and “PI Point Filter.”
Batch Filter
Batch Filters are not required but if the user wants to configure it, click on the Batch Filter button and then the following popup will be displayed:
It will enable the user to configure PI Batch Filters. The PI Server will be selected in the PI Server main popup and the user is not required to provide any filter. In this example, we will use the “SIP-*” as the Batch ID and add it to the filter list by clicking on “+” button. Click in cell on “#” column and test and the results will appear in the table below:
Click on the “OK” button to confirm the list of Batch ID, otherwise a message to Cancel will be shown and no PI Points will be selected:
If “OK” is clicked, the filters will be added to the source configuration, the current popup will be closed, and the previous popup will be shown:
Unitbatch Filter
Unitbatch Filters are not required but if the user wants to configure it, click on the Unitbatch Filter button and then the following popup will be displayed:
It will enable the user to configure PI Unitbatch Filters. The PI Server will be selected in the PI Server main popup. The user is not required to provide any filter. For this example, we will use the “SIP-*” as Batch ID and add to filter list clicking on “+” button. Click in cell on “#” column and test and the results will appear in the table below:
Click on the “OK” button to confirm the list of Batch ID’s, otherwise a message to Cancel will be shown and no PI Points will be selected:
If “OK” is clicked, the filters will be added to the source configuration, the current popup will be closed, and the previous popup will be shown:
PI Point Filter
These filters are not required but if the user wants to configure it for PI Server as source, the user can click on PI Point Filter button the popup below will be shown:
If any PI Points were previously configured, the list will be populated.
PI Point Filters are not required but if the user wants to configure it to search for Tags, click on the PI Points button and the following popup will be displayed:
It will enable the user to find PI Points by Searching for tags. The PI Server will be selected by default to the PI Server selected in the PI Server previous popup. The user is not required to provide any filter. In this example we will use the “sinusoid” as Point Name and then click on the Search button, the results will appear in the table below:
If any PI Points were previously configured, the list will be populated.
After the PI Point is found, select in the table, and click OK to confirm the selection:
otherwise, a message to Cancel will be shown and no PI Points will be selected:
If “OK” is clicked, the filters will be added to the source configuration, the current popup will be closed, and the previous popup will be shown:
Otherwise, a message to Cancel will be shown and no PI Points will be selected:
Source as Wonderware Server
The user will select the Wonderware Server to proceed with this source. In this configuration the user must provide the Server, Username, Password and select a Database to proceed, optionally the user could select Tags filters.
Tag Filters
Tag Filters are not required but if the user wants to configure it to search for Tags, the user must provide the Server, Username, Password and select a Database to proceed and then click on the Tag Filters button and then the following popup will be displayed:
If any Tags were previously configured, the list will be populated.
If the user clicks on “Tags” button, then the popup below will be displayed:
It will enable the user to find PI Points by searching for tags. The Wonderware Server will be selected by default in the previous popup. The user is not required to provide any filter. In this example, we will not use any filter and click on the Search button, the results will appear in the table below:
If any Tags were previously configured, the list will be populated.
Select the Tags in the table and click “OK” to confirm the selection:
Otherwise, a message to Cancel will be shown and no PI Points will be selected:
If “OK” is clicked, the filters will be added to the source configuration. The current popup will be closed, and the previous popup will be shown:
Source as AF System + Wonderware Server
The user will select the AF Server to proceed with this source. In this configuration, the user must provide the Server from the database field drop down list. User must add Username and Password of the Wonderware server. Optionally the user could select AF filter.
AF filter
Elements and Attributes filter are not required but if the user wants to configure filter to search for Attributes/Elements, click on the Attributes button and then the following popup will be displayed:
The Root element checkbox will be auto selected when the popup appears, and users can set any element in the tree as a root element by clicking on the elements in the tree.
Users can select the checkbox of the element and add it to that input box either by selecting the elements from the tree or by entering the elements to that input box.
If users wants the attributes of all elements starting from for eg: If user wants the attributes of all elements starting with Hydro then users can enter as Hydro* and press the search button.
Users can traverse through the tree and click on the elements to see the attributes of those elements with respect to the root element.
After the Element Selection, click on ‘Add Selected Filter-Element and Attributes fields’ to select all the attributes of that element:
To add a single attribute of another element. Click on the element, get the attributes, and add the specific attributes in the search bar. Then click ‘Search’ button and then click ‘Add Selected Filter-Element and Attributes fields ‘and then user can see the element with the specified attribute name in the Element-Attribute Table and then click on ‘OK’ button below:
After the PI Points is found, click “OK” to confirm the selection:
Otherwise, a message to confirm Cancel will be shown and no PI Points will be selected:
If “OK” is clicked, the filters will be added to the source configuration, the current popup will be closed, and the previous popup will be shown:

Destination

There is only one possible option to configure the destination of the data extraction result: Cloud Export.
For this option, there is a set of options which might be Local File, MS SQL, AWS (Amazon Web Services) S3 Storage, Azure Table and File (ADLG2 File and ADLG2 Table) or Azure IOT Hub.
There are some options for masks, see below:
Dynamic Naming of output Data Example: By using this option, user can give placeholders for not just for files but also Event Names or SQL table naming etc:
Supported predefined placeholders or tag names which users can add are listed in the table:
Placeholders
Source
Description
TagName
All Source
TagName of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: sinusoid
PageIndex
All Source
PageIndex of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: 001
Year
All Source
Year of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: 2021
Month
All Source
Month of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: 04
MonthName
All Source
MonthName of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: April
Day
All Source
Day of the job within ODIN database, can be used for file or path naming in output destination. Example Output: 23
WeekDay
All Source
WeekDay of the job within ODIN database, can be used for file or path naming in output destination. Example Output: 23
Hour
All Source
Hour of the job within ODIN database, can be used for file or path naming in output destination. Example Output: 08
Minute
All Source
Minute of the job within ODIN database, can be used for file or path naming in output destination. Example Output: 02
Second
All Source
Second of the job within ODIN database, can be used for file or path naming in output destination. Example Output: 38
TaskId
All Source
Taskid of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: 5285bb12-4181-4883-931a-17c65f95660a
TaskName
All Source
TaskName of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: MyFirstJob
utcTimeStamp
All Source
utcTimeStamp of the job within ODIN database, can be used for file or path naming in output destination. Example Output: 20210423080238
scanid
All Source
An auto generated unique id for the relevant job on an individual scan basis, it can be used for file or path naming in output destination. Example Output: 5285bb12
scantime
All Source
The scan time for the execution of that job run. it can be used for file or path naming in output destination.
attributename
AF Only
attributename of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: Attribute1
assetname
AF Only
assetname of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: Element1
assetname-1 to -10
AF Only
assetname-1 to -10 of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: Element2
parentassetname
AF Only
parentassetname of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: Element
batchguid
AF Only
batchguid of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: st_52d7d9fc-0e40-4d8f-0000-000000101384
batchname
AF Only
batchname of the job within ODIN database, can be used for file or path naming in output destination.
Example Output: st_Analysis1 2021-04-06 22_35_30.000
Dynamic placeholders: Users can add any dynamic tags or placeholders, a simple example is given below:
<Source><Variables>
<Variable Name="countryvar" ElementTemplate="A_Template" Value="Name" /> <Variable Name="statevar" ElementTemplate="B_Template" Value="Name" /> <Variable Name="elementvar" ElementTemplate="C_Template" Value="Name" /> <! -- Desc, Template, Name, Value, UOM, Category --> <Variable Name="attrnamevar" Value="name" />
</Variables> </Source>
Tag name can be added to the File Mask field:
Example Result as File:
Destination as Cloud Export
The user selects the Cloud Export to proceed with this destination configuration, using this configuration, the user must select Export to: (LocalFile, MSSQL, AWSS3, ADLG2File, ADLG2Table or AZUREIOTHUB). For each type of export, a configuration must be filled by clicking on Connect Config. The user can select the option for PI Points by clicking in PI Point Options.
LocalFile
The user will select the LocalFile option to proceed with this destination configuration. Using this configuration, the user must provide Directory, File Encoding and File Type. The File Mask is optional. For File encoding options, the user would choose ASCII, UTF7, UTF8, UTF32 or Unicode. For File Type the options available are: CSV, Parquet, Json or JsonIndent.
If the user clicks on the “OK” button, it will configure this export type for the selected destination, otherwise a message to confirm Cancel will be shown and the configuration will be cleared:
MSSQL
The user will select the MSSQL option to proceed with this destination configuration. Using this configuration, the user must provide the MS SQL Database connection information as follows: Host, Database, Schema, Username, Password, Table Name, Encoding or can give just the Connection String. The option “Drop Existing Table” by defaults is set to “No.” If “Yes” is selected, it will Drop the existing table on the Database and create a new one. Bulk Page Size must also be populated.
Table Name: - By using Table Name (file mask) option, the user can give placeholders for file/table name. The placeholders supported by the file/table names, are the same of the example above.
AWSS3
The user will select the AWSS3 option to proceed with this destination configuration, using this configuration the user must provide the AWS connection information, Access Key, Secret Key, AWS Region, Bucket, File Mask, File Encoding (ASCII, UTF7, UTF8, UTF32 or Unicode) and File Type (CSV, Parquet, Json or JsonIndent).
File Mask: - By using file mask option the user can give placeholders for file/table name. The placeholders supported by the file/table names.
If the user clicks the “OK” button, it will configure this export type for destination, otherwise a message to confirm Cancel will be shown and the configuration will be cleared:
ADLG2File
The user will select the ADLG2File option to proceed with this destination configuration, using this configuration the user must provide the connection type. There are 3 types of connection: SAS Token, SAS Connection String and Access Key.
Graphical user interface, text, application, email Description automatically generated
Using SAS Token connection type, the user must provide Storage Account, Access Key, File System Container, File Mask, File Encoding (ASCII, UTF7, UTF8, UTF32 or Unicode) and File Type (CSV, Parquet, Json or JsonIndent).
File Mask: - By using the file mask option the user can give placeholders for file/table name. The placeholders supported by the file/table names.
Using SAS Connectionstring connection type, the user must provide Connection String, File System Container, File Mask, File Encoding (ASCII, UTF7, UTF8, UTF32 or Unicode) and File Type (CSV, Parquet, Json or JsonIndent).
File Mask: - By using the file mask option the user can give placeholders for file/table name. The placeholders supported by the file/table names.
Graphical user interface, text, application, email Description automatically generated
Using Access key connection type, the user must provide Access Key, Azure Container Name, File Mask, File Encoding (ASCII, UTF7, UTF8, UTF32 or Unicode) and File Type (CSV, Parquet, Json or JsonIndent).
File Mask: - By using the file mask option the user can give placeholders for file/table name. The placeholders supported by the file/table names.
If the user clicks the “OK” button, it will configure this export type for destination, otherwise a message to Cancel will be shown and the configuration will be cleared:
ADLG2Table
The user will select the ADLG2Table option to proceed with this destination configuration, using this configuration the user must provide the connection type. There are 3 types of connection: SAS Token, SAS Connection String and Access Key.
Graphical user interface, text, application, email Description automatically generated
Using SAS Token connection type, the user must provide Storage Account, Domain, Table Name Mask and Bulk Page Size.
Table Name Mask: - By using file mask option, user can give placeholders for file/table name. The placeholders supported by the file/table names.
Using SAS connection string connection type, the user must provide SAS Token, connection string, Table Name Mask and Bulk Page Size.
Table Name Mask: - By using file mask option, user can give placeholders for file/table name. The placeholders supported by the file/table names.
Graphical user interface, text, application, email Description automatically generated
Using Access key connection type, the user must provide Access key, Storage account, Domain, Table Name Mask and Bulk Page Size.
Table Name Mask: - By using file mask option, user can give placeholders for file/table name. The placeholders supported by the file/table names.
If the user clicks on the “OK” button, it will configure this export type for destination, otherwise a message to Cancel will be shown and the configuration will be cleared:
AZUREIOTHUB
Graphical user interface, application, email Description automatically generated
The user selects the AZUREIOTHUB option to proceed with this destination configuration. Using this configuration, the user must provide the connection type. There are 3 types of connection: SAS Token, SAS Connection String and Access Key.
Graphical user interface, text, application, email Description automatically generated
Using SAS Token connection type, the user must provide the SAS Token, Azure Host Name, Device Id Mask and File Encoding.
Device Id: - - By using device Id option, the user should give the created id. Example: ODIN-Release ABC
Graphical user interface, text, application, email Description automatically generated
Using Connection string connection type, the user must provide Connection string, Device Id Mask and File Encoding.
Device Id: - - By using device ID option, the user should give the created id. Example: ODIN-Release ABC
Graphical user interface, text, application, email Description automatically generated
Using Access key connection type, the user must provide the Host name, Access key Name, Access Key, Device Id, and File Encoding.
Device Id: - By using device Id option, the user should give the created id. Example: ODIN
If the user clicks the “ok” button, it will configure this export type for destination, otherwise a message to Cancel will be shown and user can close the window.
AZUREEVENTHUB
The user selects the AZUREEVENTHUB option to proceed with this destination configuration. Using this configuration, the user must provide the connection type. There is only one type of connection which is Connection String.
Using Connection string connection type, the user must provide the Connection string, Event Name Mask and File Encoding.
Event Name Mask: - By using Event name mask option, the user can use placeholders for name value to associate a value in EventHub with a particular tag or asset. If the user clicks the “ok” button, it will configure this export type for destination, otherwise a message to Cancel will be shown and the configuration will be cleared:
PI Point Options
There will be two type of PI Point Options: -
Event driven export:
The above PI Point Options could be configured for any event driven export type.
In this option user can select Tag options which include Data format, File Page size, Retrieval Method, Data interval, Time format.
Data Format: For event driven export type the data format is Pi points to Block Table by default
    • PI Points to Block Table - In this mode, ODIN server puts all defined PI Points in the same table/file but splits data into blocks with differentiator: Parameter column.
      • Example: there are 3 tags: t1, t2 and t3. Data is going to create as 4 columns: Timestamp Parameter Value State 10:00:00 t1 12.1 good. 10:00:00 t2 100.2 good 10:00:00 t3 9.5 good.
Retrieval Method: - For event driven export type the data format is Interpolated by default.
Interpolated - The data retrieved from source historians is interpolated based on user provided data interval below.
Batch Mode: - For values of attributes mode only be set to trigger and batch trigger can be set to 3 different modes:
  • Summary: Trigger the summary with the snapshot value.
  • Start time: Trigger the summary with the start time.
  • End time: Trigger the summary with the end time.
Check the Checkboxes to export it as Single Level Event Export, Export Event Frame Attributes, Export child attributes and Export UOM.
Asset driven export:
The above PI Point Options could be configured for any asset driven export type.
In this option user can select Tag options which include Data format, File Page size, Retrieval Method, Batch context, Data interval, Time format.
Data Format: - In Data format option user can choose three data formats such as:
  • Aggregate PI points to Table
    • Aggregate PI Points and Table- In this mode, the ODIN server puts all defined PI Points as columns next to each other. All of them have values aligned on the same time.
      • Example: there are 3 tags: t1, t2 and t3. The data is going to be shaped as a table: timestamp, t1 (value), t2 (value), t3 (value)
  • Individual PI points
    • Individual PI Points - For each source PI Point (tag) - we are creating an individual file/table with only three columns: timestamp, value, and state. This is raw data export.
      • Example: Individual PI Points format Data will be created as as table: Timestamp Value State 10:00:00 12.1 good
  • PI points to Block Table
    • PI Points to Block Table - In this mode, ODIN server puts all defined PI Points in the same table/file but splits data into blocks with differentiator: Parameter column.
      • Example: there are 3 tags: t1, t2 and t3. Data is going to create as 4 columns: Timestamp Parameter Value State 10:00:00 t1 12.1 good. 10:00:00 t2 100.2 good 10:00:00 t3 9.5 good.
  • File Page size: - By using this option user can select File page size. (Example.: - 1000)