0% found this document useful (0 votes)
17 views148 pages

ibaAnalyzer-DB v2.0 en

The ibaAnalyzer-DB manual provides comprehensive guidance on the installation and use of the ibaAnalyzer-DB software, which facilitates flexible database integration for iba systems. It covers topics such as system prerequisites, database connection options, data extraction, transformation, and loading functions, as well as detailed analysis capabilities. The manual is intended for qualified professionals familiar with electrical and electronic modules and database systems, ensuring they can effectively utilize the software for data handling and analysis.

Uploaded by

nilton.flavio
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views148 pages

ibaAnalyzer-DB v2.0 en

The ibaAnalyzer-DB manual provides comprehensive guidance on the installation and use of the ibaAnalyzer-DB software, which facilitates flexible database integration for iba systems. It covers topics such as system prerequisites, database connection options, data extraction, transformation, and loading functions, as well as detailed analysis capabilities. The manual is intended for qualified professionals familiar with electrical and electronic modules and database systems, ensuring they can effectively utilize the software for data handling and analysis.

Uploaded by

nilton.flavio
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 148

ibaAnalyzer-DB

Flexible Database Integration for iba Systems

Manual
Issue 2.0
Manufacturer
iba AG
Koenigswarterstr. 44
90762 Fuerth
Germany
Contacts

Main office +49 911 97282-0


Fax +49 911 97282-33
Support +49 911 97282-14
Engineering +49 911 97282-13
E-Mail [email protected]
Web www.iba-ag.com

This manual must not be circulated or copied, or its contents utilized and disseminated,
without our express written permission. Any breach or infringement of this provision will
result in liability for damages.
© iba AG 2018, All Rights Reserved
The content of this publication has been checked for compliance with the described
hardware and software. Nevertheless, deviations cannot be excluded completely so that
the full compliance is not guaranteed. However, the information in this publication is
updated regularly. Required corrections are contained in the following issues or can be
downloaded from the Internet.
The current version is available for download on our web site http://www.iba-ag.com.
Issue Date Revision Author Version SW
2.0 02-01-2018 Revised edition RM 6.10.0

Windows® is a label and registered trademark of the Microsoft Corporation. Other


product and company names mentioned in this manual can be labels or registered
trademarks of the corresponding owners.
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Table of Contents

1 About this manual................................................................................................ 4


1.1 Target group................................................................................................. 4
1.2 Notations ..................................................................................................... 4
1.3 Used symbols .............................................................................................. 5
2 Introduction .......................................................................................................... 6
2.1 What is ibaAnalyzer-DB? .............................................................................. 6
2.2 Functions and application ............................................................................. 6
2.3 System pre-requisites ................................................................................... 7
3 Installation ............................................................................................................ 8
3.1 Installation of ibaAnalyzer database support .................................................. 8
3.2 Preparation of the target database ................................................................ 9
4 Configuring the database connection ............................................................ 10
4.1 Database connection options ...................................................................... 11
4.1.1 SQL-Server ................................................................................................ 11
4.1.2 ODBC-Database ........................................................................................ 12
4.1.2.1 MS-Access ...............................................................................................................13
4.1.2.2 MySQL/Maria-DB .....................................................................................................14
4.1.3 PostgreSQL ............................................................................................... 16
4.1.4 SQLite ....................................................................................................... 19
4.1.5 Oracle........................................................................................................ 20
4.1.6 DB2-UDB ................................................................................................... 22
4.2 Testing the database connection in ibaAnalyzer ........................................... 23
4.3 Specify database table names .................................................................... 24
4.4 Save configuration...................................................................................... 25
5 Data Extractor..................................................................................................... 26
5.1 Extractor output .......................................................................................... 29
5.1.1 Option Extractor Database Library (Standard) ............................................. 29
5.1.2 Option MC Extractor database library .......................................................... 32
5.2 Archive profile assignment .......................................................................... 37
5.3 Info columns .............................................................................................. 43
5.3.1 Info field assignment................................................................................... 43
5.3.2 Procedures for manipulating Info columns ................................................... 47
5.4 Computed columns .................................................................................... 48
5.5 Diagnosis and notification ........................................................................... 50
5.5.1 Diagnostic log ............................................................................................ 50
5.5.2 Notifications ............................................................................................... 51
5.6 Renumbering ............................................................................................. 53
6 Database format options .................................................................................. 56
6.1 Database table "deFile" .............................................................................. 56
6.2 Database table "deChannel" ....................................................................... 58
6.2.1 Using BLOBs ............................................................................................. 59
6.3 Segment tables .......................................................................................... 60
Issue 2.0 i
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

6.3.1 Standard format segment table .................................................................. 60


6.3.2 MC-format segment tables ......................................................................... 61
6.4 Differences between used database products ............................................. 64
6.5 Customizing and integration ....................................................................... 64
7 Using ibaAnalyzer-DB for analysis .................................................................. 67
7.1 Standard queries ....................................................................................... 67
7.1.1 Query builder ............................................................................................. 67
7.1.1.1 Handling queried records.......................................................................................... 71
7.1.2 SQL-queries .............................................................................................. 76
7.2 Trend queries ............................................................................................ 78
7.2.1 Trend query builder .................................................................................... 78
7.2.2 SQL trend queries...................................................................................... 83
7.3 Trend query results .................................................................................... 86
7.3.1 Trend query signal tree .............................................................................. 86
7.3.2 Trend queries in overview .......................................................................... 87
7.3.2.1 Trend query result list and graph .............................................................................. 87
7.3.2.2 Markers .................................................................................................................... 88
7.3.2.3 Overview options ...................................................................................................... 91
7.4 Abort query ............................................................................................... 92
8 Database introduction and basic handling techniques ................................ 93
8.1 Overview ................................................................................................... 93
8.2 Introduction to SQL language ..................................................................... 96
8.2.1 SELECT statements .................................................................................. 97
8.2.2 AND, OR, NOT, BETWEEN, LIKE, … ......................................................... 97
8.2.3 Calculations, … ......................................................................................... 97
8.2.4 Advanced SELECT clauses (DISTINCT, TOP, CASE) ................................. 98
8.2.5 NULL handling........................................................................................... 99
8.2.6 JOIN clause..............................................................................................100
8.2.7 Aggregate functions ..................................................................................101
8.3 SQL-scripting, scheduling .........................................................................102
8.3.1 Useful applications (backup & cleanup): ....................................................102
9 Command Line Options .................................................................................. 103
9.1 Starting ibaAnalyzer ..................................................................................103
9.2 Command Line Syntax..............................................................................104
9.3 Command line switches ............................................................................106
9.3.1 "/reuse" switch..........................................................................................106
9.3.2 "/append" switch .......................................................................................107
9.3.3 "/print" switch............................................................................................107
9.3.4 "/extract[:"filename"]" switch ......................................................................107
9.3.5 "/sql:filename.sql[;sync:"syncFieldName"]" switch ......................................108
9.3.6 "/trendsql:filename.sql" switch ...................................................................108
9.3.7 "/overviewsql:filename.sql" switch .............................................................109
9.3.8 "/report[:filename]" switch..........................................................................109
9.4 Combination of command line switches ..................................................... 110

ii Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

10 Setting up the database ................................................................................... 111


10.1 Start software installation .......................................................................... 112
10.2 Create database and basic settings for the server:..................................... 122
10.2.1 Start SQL Server 2014 Management Studio from start menu ..................... 122
10.2.2 Customize Settings for remote access....................................................... 130
10.2.2.1 Start <SQL Server 2014 Configuration Manager> ................................................... 130
10.2.2.2 Firewall settings for remote access ......................................................................... 133
11 Support and contact ........................................................................................ 146

Issue 2.0 iii


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

1 About this manual


This document describes the function and application of the software ibaAnalyzer-DB.

1.1 Target group


This manual addresses in particular the qualified professionals who are familiar with
handling electrical and electronic modules as well as communication and measurement
technology. A person is regarded as professional if he/she is capable of assessing safety
and recognizing possible consequences and risks on the basis of his/her specialist
training, knowledge and experience and knowledge of the standard regulations.
This documentation addresses in particular professionals who are in charge of analyzing
measured data and process data. Because the data is supplied by other iba products the
following knowledge is required or at least helpful when working with ibaAnalyzer:
 Operating system Windows
 ibaPDA-V6 (creation and structure of the measuring data files)
 For DB extraction, knowledge about using the database system in question

1.2 Notations
In this manual, the following notations are used:

Action Notation
Menu command Menu Logic diagram
Calling the menu command Step 1 – Step 2 – Step 3 – Step x
Example:
Select the menu Logic diagram - Add - New function block.

Keys <Key name>


Example:
<Alt>; <F1>

Press the keys simultaneously <Key name> + <Key name>


Example:
<Alt> + <Ctrl>

Buttons <Key name>


Example:
<OK>; <Cancel>

File names, paths "Filename", "Path"


Example:
"Test.doc"

4 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

1.3 Used symbols


If safety instructions or other notes are used in this manual, they mean:

The non-observance of this safety information may result in an imminent risk of death or
severe injury:
 From an electric shock!
 Due to the improper handling of software products which are coupled to
input and output procedures with control function!

The non-observance of this safety information may result in a potential risk of death or
severe injury!

The non-observance of this safety information may result in a potential risk of injury or
material damage!

Note
A note specifies special requirements or actions to be observed.

Important note
Note if some special features must be observed, for example exceptions from the rule.

Tip
Tip or example as a helpful note or insider tip to make the work a little bit easier.

Other documentation
Reference to additional documentation or further reading.

Example
Configuration and application examples for a better understanding

Issue 2.0 5
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

2 Introduction

2.1 What is ibaAnalyzer-DB?


ibaAnalyzer-DB extractor is a purchasable option which provides ETL (Extract Transform
Load) functions for commonly used database systems and enables trend and detail
analyses based on databases. Also the report engine of ibaAnalyzer can process data
provided by ibaAnalyzer-DB.

2.2 Functions and application


The database extraction functionality is an integral part of current ibaAnalyzer versions
and is activated during the installation of ibaAnalyzer whenever the respective dongle is
present. All data in iba data file format (*.dat), coming from ibaPDA, ibaQDR, ibaLogic, or
third party applications which have used the ibaFiles library can be extracted,
transformed and loaded easily.
iba data files (*.dat), which have a lossless and very efficiently compressed binary
format, can be opened by ibaAnalyzer permitting the easy handling of large amounts of
data. All functions of ibaAnalyzer can be used to transform or generate the required
(virtual) signals. Specifying storage profiles for database extraction allows re-sampling or
aggregation of measurement data and virtual signals. Thus each data extraction process
can lead to a significant reduction of storage space by compressing information. Multiple
databases are supported by Microsoft OLE-DB API: SQL-Server (on premises or in MS
Azure cloud), Oracle, DB2-UDB or by ODBC: MySQL/Maria-DB, PostgreSQL, SQLite,
MS Access, etc. (Please ask iba Support for further information.). These databases may
reside on the same PC or may be installed on a separate database server which has a
network connection to the ibaAnalyzer-DB PC.
ibaDaVIS, ibaDatManager, MES (Manufacturing Execution Systems), DWH
(DataWareHouse) Applications or e.g. other cloud-applications based on databases can
easily integrate the provided data because the data handling can be performed with
standard database tools and access methods.
Note that in most cases, this would be impossible with the huge original data sets.
Alternatively iba provides further extensions of ibaAnalyzer for extraction to new *.dat or
ASCII files as well as files in COMTRADE format (ibaAnalyzer-DAT-Extractor). The
values extracted to a database can now be handled by ibaAnalyzer-DB as if they were
values in .dat files. It is possible to query these data using a query-assistant or direct sql
commands. Data aggregated on a file basis can be used for long term analyses (so
called trend queries). Moreover these trend queries provide a navigation view for
drill-down analysis that can be based on database values or the linked original data files.

Summary of the major functions:


 Data "Extraction" from iba data file
 Data "Transformation" or generation of new virtual signals
 Data "Load" into OLEDB or ODBC data bases
 Data "Detail Analyses" from database instead of data file
 Data "Trend Analyses" based on aggregated values
 Data "Drill Down" option from trend to detail.

6 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

2.3 System pre-requisites


Depending on database system:
 ODBC driver and/or Database Client Software (Oracle, DB2-UDB)

Important information
Depending on the availability of the ODBC driver and/or on the Database Client
Software (32 or 64 bit), the 32 or 64bit version of ibaAnalyzer is required.
Two versions of the installer are available:
- The 32 bit version: ibaAnalyzerInstall_x86_v6.x.y.exe.
- The 64 bit version: ibaAnalyzerInstall_x64_v6.x.y.exe.
Only one of these versions can be installed on one computer (v6.10.0 or higher).

Issue 2.0 7
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

3 Installation

3.1 Installation of ibaAnalyzer database support


ibaAnalyzer-DB is installed with ibaAnalyzer and activated by the associated license
(dongle).
The following ibaAnalyzer installation steps are required for ibaAnalyzer-DB:
 Choose the database support type when prompted (see Database Format Options)

If ibaAnalyzer has been installed without database support it is possible to add it later by
starting one of the batch files ("reg_dataextractor.bat" or "reg_dataextractorMC.bat") in
the home directory specified during the installation of ibaAnalyzer (default: C:\Program
Files\iba\ibaAnalyzer) or by rerunning the installation procedure and selecting one of the
database options.

8 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

3.2 Preparation of the target database


Depending on the target database and kind of application some additional preparation
might be necessary:
 Create database
 Create structure
 Create storage (database files, table space,…)
 Create login (user/password)
 Configure network access (e.g. database listener)

The procedures required to install the necessary database components are described in
the chapter "Setting Up Databases".

Issue 2.0 9
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

4 Configuring the database connection


If the required dongle is connected and, if the software components are properly
installed, the "Database" menu will be activated in the ibaAnalyzer window.

If the database connection has not been previously configured the following default
configuration will be shown. Otherwise the previously selected configuration will be
shown.

The following describes the steps needed to link ibaAnalyzer to the selected and
configured database.

10 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

4.1 Database connection options


First choose the Database provider from the drop down menu.

4.1.1 SQL-Server

 Database provider
Select <Sql-server>
 Database name
Enter name specified during database installation
 Computer
Select <Local machine> or enter the name of the <Database server>\<Instance>
If the Database server is the localhost the following notation with wildcard "." is possible
".\<Instance>". (see example on previous page)
 Authentication
Select either:
 Use Windows NT authentication or
 Specify authentication info "Username" and "Password"

Issue 2.0 11
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

4.1.2 ODBC-Database
For ODBC Databases (MySQL/MariaDB, PostgreSQL, MS Access, SQLite, …) use DSN
(Data Source Name) configured in the "ODBC Data Source Administrator" (Control
Panel "Administrative Tools" Data Sources ODBC):

The ODBC DSN Administrator is located in:


 C:\Windows\System32\odbcad32.exe (64bit ODBC on 64bit windows OS)
or
 C:\Windows\SysWOW64\odbcad32.exe (32bit ODBC on 64bit windows OS)

12 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

4.1.2.1 MS-Access
In a simple local test environment with an ODBC connection to Microsoft Access, only
the ODBC-DSN needs to be configured.
Verify if MS-Access ODBC driver is available in ODBC DSN Administrator:

If the driver is not available it can be downloaded from the Microsoft website.
We recommend using/creating a System-DSN:

It is possible to use an existing DB "Select…" or to create a new DB "Create…".

Issue 2.0 13
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Select ODBC-database as "Database provider" and use the DSN (Data Source Name)
as "Database name":

4.1.2.2 MySQL/Maria-DB
For both MySQL and Maria-DB we recommend the ODBC driver (32 or 64 bit) of MySQL.

Create a new (<Add…>) or configure an existing (<Configure…>) System DSN.

14 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

If BLOB storage is requested the default settings should be adapted as shown in


screenshot:

When using BLOBs the init parameter "max_allowed_packet" of MySQL


"C:\ProgramData\MySQL\MySQL Server 5.7\ my.ini" also needs to be increased.

Subsequently the MySQL Server must be restarted.


Issue 2.0 15
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Select ODBC-database as "Database provider" and use the specified DSN as "Database
name":

4.1.3 PostgreSQL
For PostgreSQL use the ODBC driver (32 or 64 bit) and add/configure a System DSN:

16 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

It is important to configure the <Datasource> option on "Page 1 and "Page 2" of


"Advanced Options".

Issue 2.0 17
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Select ODBC-database as "Database provider" and use the DSN as "Database name":

18 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

4.1.4 SQLite
For SQLite use the ODBC driver (32 or 64 bit) and add/configure a System DSN:

Note
Note: BLOBs are not supported for SQLite.

Select ODBC-database as "Database provider" and use the DSN as "Database name".

Issue 2.0 19
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

4.1.5 Oracle
If Oracle is used, the Local Net Service Name (TNS-Name), configured in the Oracle
client software (see $ORACLE_HOME\NETWORK\ADMIN\tnsnames.ora) must be
specified in the "Database name:" field and then instead of OS-identification ("Use
Windows NT authentication") the use of an oracle username and password is
recommended throughout the database system.

Important information
For oracle client installation it is necessary to install the OLE DB option, which is not
included in standard installation types.

20 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

In a centralized Oracle multiuser DB environment it’s recommended to create a


dedicated user, scheme, storage (table space) and to grant the necessary privileges
(create session, create table ...) to this user for the ibaAnalyzer-DB load operation. For
interactive database queries from different people, a single shared or multiple dedicated
database users should be created with adequate privileges (grant select on …). This
applies to large installations where the iba data is not to be mixed with data from existing
applications. The data base should be configured that the user has read and/or write
access thus preventing, for example, the deletion of existing data using the option
"create default tables".
Select Oracle as "Database provider" and TNS-Name (XE) as "Database name".

Issue 2.0 21
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

4.1.6 DB2-UDB
For DB2-UDB we recommend using the OLE DB client interface provided via IBM
Software:

Select DB2-UDB as "Database provider" and use the database alias name configured in
the DB2-UDB client software as "Database name:".

22 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

4.2 Testing the database connection in ibaAnalyzer


Before closing the window it is recommended to test the database connection by clicking
on the corresponding <Test database connection> button.
 <Test database connection>
Successful connection

Unsuccessful connection

Issue 2.0 23
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

4.3 Specify database table names


The names of the File header, Channel header and Segments database tables must be
entered into the lower part of the Database connection window. It is recommended to
rename these tables according to the naming conventions of the used database system.
The default names "deFile", "deChannel" and "deSegment" can be used for test
purposes.

Important information
The names must be compatible with the naming restrictions of the employed database
system. For example, if Oracle is used and the database support type "MC extractor" is
installed, the maximum length for the "Segments" name is 23 characters, since 7
characters are required for the segment table suffixes "_CountT" and "_CountL"

24 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

4.4 Save configuration


Close the Database connection window by clicking the <OK> button and save the
configuration as an ordinary analysis file (*.pdo) of ibaAnalyzer. The latest connection
configuration will also be applicable (as are the other preferences) if ibaAnalyzer is
opened without an analysis file.

Issue 2.0 25
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

5 Data Extractor
The Data Extractor window can be opened in ibaAnalyzer by one of the two methods
shown in the figure.

The Data Extractor has 7 tabs:


 Extractor output
 Archive profile assignment
 Info columns
 Computed columns
 Diagnostic log
 Notifications
 Renumbering

 Extract to database
The "Extractor output" tab is displayed automatically in accordance with the selected
database type.

26 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

After selecting Extract to database ibaAnalyzer-DB automatically tries to connect to the


database that is configured. If no database connection was configured before (connect
timeout) an error message will be triggered.

Click <OK> and select <Database connection> (see chapter "Configuring the database
connection, page 10")
Each Data Extractor tab contains the following buttons:

 <Extract now>
The database tables will be filled based on all the current settings in the „Data Extractor"
window.
 <OK>
All current settings in the "Data Extractor" window are saved and window is closed.
 <Cancel>
All settings changed after the "Data Extractor" window was opened are discarded and
window is closed.

Issue 2.0 27
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

The following message will appear if the license is not recognized.

28 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

5.1 Extractor output


The "Extractor output" window is opened automatically when "Data Extractor" is
selected.

5.1.1 Option Extractor Database Library (Standard)


If ibaAnalyzer is installed with the database support type "install the Extractor database
library" the following window is displayed.

 "Database:"
This displays the connected database type.
 <Database connection>
This opens the "Database connection" window (see chapter Configuring the database
connection, page 10).
 <Create default tables>
This creates tables in the database with the names specified in the "Database
connection" window. See chapter Specify database table names, page 24.
When you click this button, ibaAnalyzer-DB checks whether the database already
contains tables with the same names. If there is no conflict with existing objects, tables,
indexes and constraints the tables are created. If tables with the specified names already
exist, ibaAnalyzer-DB will ask if these should be replaced.

Issue 2.0 29
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Successful creation is indicated by:

Unsuccessful creation triggers an error message, e.g.

Important information
The naming conventions of the connected database must be adhered to, e.g. avoid
blanks, special characters, etc.

Important information
Use the "Tables Refresh" command in the database to ensure that the transaction results
are displayed.

30 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Important information
Ensure user privileges. In multiuser environments only the application administrator
should be the object owner. Other users should have different database logins with
appropriate restrictions (e. g. only SELECT privileges).

In large, centralized, multiuser DB environments (Oracle, DB2-UDB) the standard


DDL-commands without storage options and simple indices might not be sufficient and
the creation of database tables by <create default table> using ibaAnalyzer will not be
permitted. On such systems, the database administrator can create the default objects in
a test environment, and by reverse DDL-script generators he can produce and then
customize his own DDL-scripts. Depending on the integration scenario it might also be
necessary to create further INDEXES on "Technostring columns".
 Use transactions
All SQL INSERT operations take place within one transaction. If any operation within the
transaction fails, the whole transaction is aborted.
 Extract microseconds column
This creates a "_TimeStampMicroSecs" column, which permits correct timestamp
referencing on a microsecond basis. See also the item "TimeStampMicroSecs".
 Delete duplicate file rows
This ensures that any previously saved files having the same name (see column
"_FileName") as the current file to be extracted are deleted.
Before extraction:

After next extraction:

 Store .dat file location as UNC path


This is necessary if .dat files are not stored locally

Issue 2.0 31
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

5.1.2 Option MC Extractor database library


If ibaAnalyzer is installed with the database support type "install the MC Extractor
database library" the following window is displayed.

 Database connection
See chapter Option Extractor Database Library (Standard), page 29
 Create default tables
See chapter Option Extractor Database Library (Standard), page 29
 Use transactions
See chapter Option Extractor Database Library (Standard), page 29
 Extract microseconds column
See chapter Option Extractor Database Library (Standard), page 29
 Delete duplicate file rows
See chapter Option Extractor Database Library (Standard), page 29
 Store .dat file location as UNC path
See chapter Option Extractor Database Library (Standard), page 29
 Extract descending segment numbers
This option adds a new column "_ReverseSegmentNr" to the segment table, which
numbers the segments in reverse order.

 Do not insert empty rows


Segments containing NULL are ignored during extraction

32 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Deactivated:

Activated:

Issue 2.0 33
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

 Start a new segment table every <N> columns


In MC-format, database restrictions may require further segment tables. For example, in
Oracle the maximum number of columns is limited by 1,000. If more signals are to be
extracted, it is necessary to create further segment tables. If the specified number (N
>99) of columns is reached, the extractor automatically creates new segment tables. The
channel table is also extended by this option to new reference columns. In the example
below, "0" in the column "_SegmentTableIndex_Avg" indicates that channel 254 can be
found in table "dba.deSegment_AvgT" and "1" indicates that channel 259 can be found
in table "dba.deSegment_AvgT2".

Important information
"Create default tables" does not delete additional segment tables.

Note
A value of 0 (Zero) in the segment table index denotes the reference to a segment table
without counter at the end of its name. Values n > 0 represent a reference to segment
tables with the number n+1 at the end of their names.

Important information
Additional segment tables are created dynamically during the extraction, similar to the
creation of new columns in segment tables.

34 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 Derive column names from


When using the ibaDataExtractorMC (multi column) library, the column names in the
segment table can be derived either from the <Channel number>, the <Channel name>
or the first or second comment of the extracted signals (see: ibaPDA manual chapter: IO
manager).

Important information
If the selection is altered additional channels will be created and the previous channels
will remain. No channel will be deleted!

If <Comment 1> is selected and a signal does not have a first comment, the channel
name is used instead. If <Comment 2> is selected for a signal where "Comment 2" is not
available, "Comment 1" is used, if that is also missing, the channel name is used.

Important information
Note that comments are not stored separately in the database. If the column names are
generated from one of the comments, the original channel (signal) name will not be
transferred to the database and it will be lost.

"Channel number" or "Channel name" selected:

"Comments 1 or 2" selected:

When creating the default tables, a message will appear if tables with the specified
names already exist. If the message is confirmed, all data stored in those tables will be
lost ("drop table"). This is a quick way of deleting existing database tables when
reinitializing.

Issue 2.0 35
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Important information
„Create default tables" does not delete any tables which were created when the option
„Start a new segment table every <N> columns" was selected. These must be deleted
manually in the database.

36 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

5.2 Archive profile assignment


In order to create an archive profile at least one data file must be opened for extraction.
Select the tab Archive profile assignment.
An archive profile defines the signals together with the required sampling cycle (time or
length based) which will be included in the extracted data. More than one profile can be
specified. However a signal can only be assigned to one profile.

 Column "Blob"
Data is stored as a Binary Large OBject (BLOB). For details see chapter Using BLOBs,
page 59 .

Note
If the BLOB-option is used, the statistical values are only accessible by a user defined
de-compress program - not by ibaAnalyzer!

Note
If the BLOB-option is used, the option „Values in segment" is unavailable.

 Column "Mode"
Use the drop down list to select a sampling mode in an empty cell in the "Mode" column
of the "Segment archive profiles" window.
 Column "Size"
Select the adjacent cell in "Size" column and enter a multiplier to determine the sampling
cycle for the extracted data (e.g. 10 s = "Size (10)" x "Mode (Time(Seconds))".
For the "Time" and "Length" modes, it’s possible to enter a "Size" < 1 in order to obtain
fractions of the "Mode" unit. Fractions of the mode "*signal time base", of course, make
no sense, e. g. a temperature that was measured every minute need not be extracted
every 100 ms. If the recording signal time base is 1 ms, the sample 100 ms profile could
Issue 2.0 37
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

also be defined by "Size" = 100 and "Mode" = "* signal time base".
By using the modes "Time segments" or "Length segments" it is possible to define a fixed
number of equidistant time or length segments. For example "Size" = 1 and "Mode" =
"Time segments" means that only 1 segment value for the whole data channel is stored.
If parts of the source signal are invalid, then extracted segments containing these will be
empty. If the empty segments are at the beginning or end of the signal, they will not be
transferred to the extracted data. If the empty segments lie between valid segments,
then the extracted data will contain corresponding gaps of invalid values.

The mode "Time, non-equidistant" is not supported and leads to the following error
message.

 Column "Name"
Select the adjacent cell in the "Name" column and enter a profile name.
It is advisable to use a name which reflects the chosen sampling period for the extracted
file (e.g. "10 s" = Size (10) * Mode (Time (Seconds)).
38 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 Signal selection
Signals must be assigned to the created profiles.
Select any number of the signals to be included in the extracted data using the check
boxes in the Signal selection window. The extracted signal values are the averages of
the source signal values within the selected sample cycles.
When checking a module node in the "closed" tree view all signals belonging to that
module will be checked, or unchecked. Before assigning individual signals the module
tree has to be opened by clicking on the + symbol. The checked signals are always
assigned to the marked profile (gray background color). When changing the profile, the
checkmarks in the checkboxes disappear.
Multidimensional expressions (logicals, expressions on logicals and the new vectors
from a data file) can be extracted to and queried back from the database. In the database
channel table a new column named "_LogicalId" ("i_LogicalId" for Oracle and IBM DB2
databases) will be created to indicate which sub-channels belong to the same
multidimensional channel.

Important information
A signal can always be assigned to only 1 profile.

Important information
Assigning a length mode to a time based signal or a time mode to a length based signal

Issue 2.0 39
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

will produce an error on extraction.

Note
If the archive profile specifies signals which are not present in the existing data file,
these will be listed under "Channels currently unavailable".

The options for <Maximum>, <Minimum>, <Standard deviation> and <Values in


segment> are only available for the MC option (see chapter "MC-format segment
tables"). In the standard option, these values are automatically extracted to the segment
table.

40 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 Maximum, Minimum or Standard deviation


Select any of these options. The options generate sub-channels which are respectively
the maximum, minimum, or standard deviations of the source signal values within the
selected sample cycles.

Note
Obviously if the selected profile sample cycle is the same as that of the source signals,
these values are meaningless.

 Values in segment
The column "_ValuesInSegment" is created in the database and contains the number of
data points compressed into each segment stored in the database.
 Mark value from, Mark value to
Use "Mark value from" and/or "Mark value to" to define a beginning and end of the
extracted profile range. If either of these is not defined, the corresponding end of the
extracted profile range will be the same as that of the input signal range.

If the given expressions cannot be evaluated, an error message will occur during
extraction.

Issue 2.0 41
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Important information
You can use expressions to calculate the range from your data.

 <Remove unused profiles>


Profiles which have no signals assigned to them are deleted.
 <Reset>
All signals assigned are removed from the selected profile.

42 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

5.3 Info columns


The Info columns tab permits the extraction of information from the "Info" part (e. g.
techno string columns) of the source file. This data will be found in the "deFile" table in
the database.

5.3.1 Info field assignment


There are two procedures for selecting an info field.

Click on the source field. The field information will be transferred to the processing field.
Double click on the source field. The column line will be filled in addition to the
processing field. The "Column type" can be selected from the drop-down list, which
contains the available data types on the currently active database system. The "Column
name" can be renamed if required. Restrictions for database column names have to be
considered. The range of characters within the "Function" can be altered in the
processing window.

Note
If there is no active database connection, only "CHAR" will be displayed.

Caution
The names might not be compatible with the naming restrictions of the used database.

Issue 2.0 43
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Avoid blanks, hyphens and special characters, etc. and check the permissible length!
When marking the characters in the technostring area, be sure that the correct row in the
table above has been selected. The last marked excerpt before leaving the row or
closing the window is valid and will be stored.

 Select group
It is also possible to select a group of characters from the contents of the info field.
Click on the first of the required characters, drag the mouse to the last required character
and release.

Click on <Apply>
The excerpt from the source string is transferred to the column field.

44 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 Select from start index to end of info field

All the characters from the marked starting point to the end of the info field are selected.
 Extract module names
If the option is enabled (default), the module names are extracted to the file table.

Note
If there is no need for module names after the extraction, the number of columns in the
file table can be reduced by deselecting this option.

 <Check database columns>


Once the "Info columns" and the option "Extract module names" have been configured,
these must be synchronized with the database. If the requested column does not exist,
its creation must be confirmed with <OK>. The columns for module names will be
opened without the need for confirmation.

Issue 2.0 45
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

The following message will be shown after the successful creation of all required
columns.

Location of Info data in database

Remember to "Refresh" Tables in the database!

46 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

5.3.2 Procedures for manipulating Info columns

Add line Adds a new empty line above the currently selected line.
Delete line Deletes the currently selected line.
Move line up Moves currently selected line up.
Move line down Moves currently selected line down.
Import info file Import Info Column information from text file. The "Open
text file" dialog appears.
Alternative: right click on header, select <Import>

Export info file Export Info Column information to text file. The "Save text
file" dialog appears.
Alternative: right click on header, select <Export>

Issue 2.0 47
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

5.4 Computed columns


The Computed columns tab is used to specify operations which can be applied to the
individual signals. These operations will create one value for the associated signal (e.g.
the average, maximum, or minimum of all the data in one signal). Values which are
defined as "Computed columns" will be stored in the file table of the database (see:
chapter: "Database Table deFile) and thus can be part of a query condition or can be
used for long term trend analysis.

Select and prepare signal


Double click on required signal (drag and drop also works). The signal will be copied into
the "Computed column" list.
The "Column name" initially takes the source signal name but can be altered as required.
The "Expression" initially takes the source signal channel number.
The expression can be altered by selecting <fx > the "Expression builder". The result of
the expression should be one signal value. If no function is defined the average of the
signal data will be calculated.
The "X" cell is automatically filled with the source signal cycle mode.
The list manipulation functions are described in section "Info Columns".

Note
If no group function is specified in the expression ibaAnalyzer automatically uses the
average.

48 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 <Check database columns>


After the computed columns are configured it is recommended to synchronize these
definitions with the columns of the file table.

Location of "Computed column" data in database


Remember to Refresh Tables!

 Procedures for manipulating "Computed columns" column

 See chapter: Procedures for manipulating Info columns, page 47

Issue 2.0 49
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

5.5 Diagnosis and notification


In a production environment it is necessary to monitor automated processes, to log
processing information for diagnostic purpose and to generate notifications.

5.5.1 Diagnostic log


The diagnostic log is useful for checking progress when automatic extraction is operating
(e.g. triggered by the ibaDatCoordinator). If a log mode is selected, the log file will be
created and updated with each extraction.

 Mode
 None: Log switched off.
 Brief: Contents of log file

 Detailed: Contents of log file:

 Filename
Enter name of diagnostic file. If daily log has not been selected this would be, e.g.:

 <….>
Browse the network if required
 Create logfile on day base
One log file is created for each day.

 <Edit>
The selected log file can be opened in Notepad and changed as required.

50 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Important information
If logging is activated permanently, a cleanup strategy for the log files has to be
implemented externally (not part of ibaAnalyzer).

5.5.2 Notifications
The Notification tab provides 4 means of communication triggered by a selected status of
the extraction process. The following statuses are available:
 On completion
Notification made when the output procedure has been completed, success or failure is
irrelevant.
 On success
Notification made when report output is successful.
 On failure
Notification made when any report output has failed.
 On failure (1st. failure only)
Notification made when first report output has failed

 E-Mail address
Enter address and select extraction mode.
 Net send computer name
Enter computer name and select extraction mode.
 <…>
Browse the network if required

Issue 2.0 51
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

 Command line
Enter command line script to be executed when extractor status achieved and select
extraction mode.

Tip
The "Command line" option is not limited to notification tasks. Any application can be
called to perform, for example, some post-processing.

 Write to Windows application event log


Select extraction mode. View in Windows Event Viewer

52 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

5.6 Renumbering
If multiple files are opened and several signals are to be extracted from several files, it is
likely that multiple channels will have the same ID number and hence need to be
renumbered or otherwise they will not be able to be uniquely identified in the exported
media. ibaAnalyzer can do this renumbering automatically but will give a warning if it has
to do so before proceeding with the extraction.
The channel IDs are comprised of a module number and a position within the module.
The Renumbering tab allows the specification of an offset to the module numbers for
each file, hence enabling the user to prevent ID collisions and avoid automatic
renumbering.

 Global module offset for channel numbering


This number will be added to data file channel numbers
 "File" column
The open .dat files are listed automatically in this column.
 "Expression" column
The offset for each data file is entered in this field

Issue 2.0 53
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

 "Active" column
Channel offsets will only be made for active files. Extraction of channels in inactive files
leads to the following message.

Important information
The original and offset channel numbers are not visible in the database. They can only be
seen ibaAnalyzer after database queries have been executed. See „Using ibaAnalyzer-DB
for Analysis"

 Suffix for expressions


This applies only to the names and comments related to expressions created in
ibaAnalyzer. The expression names are augmented by the specified suffix.
Example of extracted data based on above settings:

54 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Issue 2.0 55
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

6 Database format options


The following database structure is created automatically when the default tables are
initiated.

6.1 Database table "deFile"


The table "deFile" contains the following header information for each extracted data
record. A new data record is created for each extraction. The handling of identical source
files is described in "Delete duplicate file rows"
 "_FileID"
This is a unique internal ID assigned to each record.
 "_TimeStamp"
Information on the date and time of the beginning of the acquisition is given in the second
column.
 "_FileName"
The reference to the filename of the data file ("_FileName") is used for information or as
a 'pathname' for the display of datasets in ibaAnalyzer
 "_FileType"
The file type ("_FileType") refers to the recording system, e. g. real => ibaPDA recording,
QDR2 => ibaQDR-V6 recorder.

 "_Complete"
This shows the status of the extraction process. The first record of a data file extraction
always is inserted into the file header table ("deFile") with status "_Complete = 0". After
finishing all other inserts in the channel and segment tables the flag is updated to
"_Complete = 1". When querying the "deFile" table the WHERE clause should check this
"complete" flag to see whether the corresponding extraction was successful. For
databases which support transaction encapsulation (e. g. Oracle, MSSQL, DB2-UDB)
the option "Use transactions" can be selected (see chapter: Option Extractor Database
Library (Standard), page 29. In this case, the "_Complete" and the "_ErrorOnExtract"
flags are obsolete.
 _"ErrorOnExtract"
This is set if an extraction error occurs.
56 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 "_TimeStampMicroSecs"
This function is enabled by selecting the "Extract microseconds column" option in the
Extractor output tab (See chapter Option Extractor Database Library (Standard), page
29).

Note
In many database systems there are data types available, which can handle
microsecond resolution. However, a separate column has been introduced for this
purpose to maintain backward compatibility.

The deFile is displayed in the database as shown below.

Issue 2.0 57
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

6.2 Database table "deChannel"


The table "deChannel" contains the following information on the extracted channels. One
row is assigned to each channel.
 "_FileID"
 See chapter Database table "deFile", page 56
 "_ChannelNr"
Unique internal channel ID assigned to the extracted signal
 "_Name "
The name of the extracted signal
 "_Unit"
The physical unit of the extracted signal
 "_IsDigital"
This flag is set when the signal is "logical".
 "_Interval"
This is the sampling cycle of the extracted data which is described in the chapter Archive
profile assignment, page 37
 "_IsTimeInterval".
This flag is set for time based records
 "_Segments"
This column contains compressed data, which are extracted as "BLOBs" (Binary large
objects), if the corresponding option is selected for extraction (see chapter Using BLOBs,
page 59
The "deChannel" table is displayed in the database as shown in the figures below.
Without "BLOBs":

With "BLOBs":

58 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

6.2.1 Using BLOBs


Instead of storing measured data in readable number columns in segment tables, it is
also possible to keep the binary format when extracting data files into the database. The
lossless compression (only changes are stored) saves, depending on signal
characteristic, a huge amount of disc space and so enables database processing of high
resolution measurement data. To access this compressed data with third party
applications, a decompression function is required and has to be implemented
individually.
Channel tables in Oracle also have a column "I_ISBLOB", which states whether the
corresponding "I_SEGMENTS" column contains binary data.
If ibaAnalyzer-DB is used exclusively as an analysis tool, implementing BLOBs can be a
very efficient storage solution. (This option can be enabled in the "Archive profile
assignment, page 37" window.)

Note
BLOBs are not supported for SQLite databases.

Issue 2.0 59
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

6.3 Segment tables


6.3.1 Standard format segment table
The table "deSegment" contains the values of all signals which are stored in the
database.

Important information
There is one table for all values!

Important information
This table is only filled when the "Blob" option has not been selected!

 "_FileID"
 See chapter Database table "deFile", page 56
 "_ChannelNr"
 See chapter Database table "deChannel", page 58
 "_SegmentNr "
Each compressed sample is assigned a segment number. The segment number is
incremented automatically for each channel, starting from 0 (zero) until the end of the
record.
 "_ValuesInSegment"
This displays the number of values in the raw data file included in each segment (sample
cycle) stored in the database.

Example
Raw-data in the data file: 1 value every 10 ms.
Data extract to database: 1 value every 100 ms (= sample cycle). Here "Size" is set to
0.1 based on a "Mode" of "Time (seconds)" set in "Archive profile assignment, page 37"

Values in each segment: 100 ms / 10 ms = 10.


 "_Average"
Average value of signal values within each segment.
 "_Stddev"
Standard deviation of signal values within each segment.
 "_Min"
Minimum value of signal values within each segment.

60 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 "_Max"
Maximum value of signal values within each segment.

The "deSegment" table is displayed in the database as shown below.

6.3.2 MC-format segment tables


The Multi Column (MC)-format provides five identically structured tables for time(T)- and
length(L)-based extracted data.
 Average (table deSegment_AverageT/L),
 Minimum (table deSegment_MinT/L),
Maximum (table deSegment_MaxT/L),
 Standard deviation (table deSegment_StdT/L) and
 SampleCount (table deSegment_CountT/L).
In contrast to the standard format each channel has its own column in the respective
segment table.

Issue 2.0 61
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Depending on the option Start a new segment table every N columns, additional
segment tables may be created automatically. This option is explained in section "Start a
new segment table every <…..> columns". This can be used to avoid database table
column number restrictions.

62 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Before inserting the segment records ibaAnalyzer-DB checks if columns for all the
channels exist. If not, the segment tables will be altered. By default, the column names
for the channels are derived from the channel number. Format and contents of MC
database table "deSegment_AvgT" in MSSQL-format:

Important information
These tables are only filled when the "Blob" option has not been selected!

Issue 2.0 63
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

6.4 Differences between used database products


There are some differences between the databases supported by OLE-DB API
(SQL-Server, Oracle, DB2-UDB) and by ODBC (MySQL, PostgreSQL, MS Access, etc.).
For example, the column names of ibaAnalyzer-DB for Oracle and MSSQL are not
identical. With large database systems that have their history based on mainframe, VMS
or UNIX platforms and architectures (DB2-UDB, Oracle), the restrictions, especially for
object and column naming, are very strong. Thus some features of ibaAnalyzer-DB
cannot work with all database systems (e.g. BLOBs or cascading constraints see
chapter: "Customizing and integration, page 64").

6.5 Customizing and integration


ibaAnalyzer-DB provides a basic framework for database integration which means that it
creates standard tables, constraints and indexes by mouse click. In small standalone
environments this may be sufficient. But even in these environments some
implementations, such as data deletion or archiving, are recommended to guarantee
availability.
If high resolution data is to be loaded into a database there will be requirements for
archiving and, in particular, delete functions. These delete functions have to be derived
from the individual data management strategy. A very simple strategy could be for
example:
Every night at 02:00 AM run an automated job, that deletes all data older than 100 days
To do this, a simple SQL command (MSSQL syntax) has to be processed every night and
this command could be put in a short SQL script ("del_old_recs.sql"):
1 USE IBADB
2 GO
3 delete deFile where _TimeStamp < (GetDate() - 100);
4 GO
5 COMMIT
6 GO

The "cascading constraints" in MySql, DB2-UDB, MSSQL, PostgreSQL and Oracle


databases, ensure that when a row in the file table is deleted, the corresponding rows in
the segment and channel tables are deleted as well (referential integrity).
In a windows environment it is possible to create a batch file ("del_old_recs.bat")
@echo off
SQLCMD -S dbhost\SQLEXPRESS -i C:\Backup\del_old_recs.sql
and define (Add) a "Scheduled Task" in the control panel "del old recs" (see figure
below).

64 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Important information
Deleting records does not always ensure an increase of free disk space. Depending on
the database system, additional maintenance commands or procedures may have to be
executed.

Data management strategies may also depend on related third party applications.
For example a MES or QM application gives the triggers for deletion or archiving of
records that come from product related data files. In this case a product-id reference is
required in the file table
Another part of the data management strategy covers requirements for the disk storage.
How much hard disk space (e.g. to store data for 100 days) is required to implement
ibaAnalyzer-DB? By using information from the database supplier it is possible to
calculate the different record lengths, the index space requirements and so on. In reality
it is better to simulate typical data processing and monitor the space consumption. It is
very easy to configure a typical database extraction process using some test data.
Using the extracted measurement data together with further data in a production or
information system environment sometimes requires additional INDEXES for
performance tuning or information columns that will be filled from external procedures.
All the "insert" statements of ibaAnalyzer-DB are "fully qualified". Therefore adding
Issue 2.0 65
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

NULL-columns won’t be a problem. Adding INDEXES is also possible and


recommended. If database triggers are necessary, especially on the long segment table
they may slow down the load performance significantly.
A very efficient way to link ibaAnalyzer-DB tables with third party tables is by defining
database views that hide complexity in JOIN conditions.

66 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

7 Using ibaAnalyzer-DB for analysis


ibaAnalyzer-DB not only uses ibaAnalyzer in the ETL (Extract Transform Load) process,
it also provides powerful functions to query data from databases for standard or trend
analysis in ibaAnalyzer.
The query definition forms can be started from the Database menu or directly from the
toolbar.

7.1 Standard queries


7.1.1 Query builder

Issue 2.0 67
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

It is possible to create standard queries without any knowledge of SQL (Structured Query
Language). Query Builder opens the following window.

 Conditions
In the "Query Builder", conditions can be defined that are based on the contents of the
main fields in a file table. When clicking on the drop down button in the "Field" column a
selection of available fields pops up.

These fields are the same as shown in the database file table. Apart from the standard
fields such as _FileID, _TimeStamp, _FileName or _FileType you can also select
self-created fields from the technostring field assignment, e.g. 'STRIP_ID'.

68 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

A condition can be selected from the options made available by clicking on a cell in the
"Cond" column.

The comparator, which must be compatible with the database format, is entered in the
"Value" column.
Several rows of queries can be entered which are then automatically combined by AND
keywords.

If the database field type of the chosen field is "Date" or "DateTime", a calendar pops up
automatically when the drop down button is selected.

 Merge signals on database sync field


If this option is selected then the database files will be selected and displayed according
to the sync field value.

If data extracted from different data files (different ibaPDAs or recorders) are associated
by a common identifier, such as for example, the material-id, and these are to be
merged, a "sync field" can be defined (see chapter: MC-format segment tables, page
61).

Issue 2.0 69
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

If the "sync field" option is used, all queried records (data files) that belong to one field
(e. g. STRIP_ID) are merged and only the sync field’s content is shown in the dropdown
list.

 <Add to previous query result>


If this is activated the result of the query is added to previous query results. The option is
equivalent to the "Add new data file…" function when working with data files. If this option
is not selected all previous query results will be deleted.
 "Max rows in resultset <N>"
To prevent uncontrolled allocation of system resources (database server, network,…) the
"Max rows in resultset" should have an appropriate value. A setting of 10 selects data
from 10 data files. The value 0 (Zero) disables this restriction.
 "Derive column names from"
 See chapter: Extractor output, page 29
 <New Query>
Select this to clear the window and define a new query.
 <Save as SQL>
The SQL command which was generated by the query builder can be saved as a text file.
This option is very useful for getting a basic statement that can be customized or
extended and then executed in the "SQL queries…" window.
 <Query>
This executes the query to the configured database connection. If successfully executed,
the number of fetched records is displayed:

70 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Important information
If the "Max rows in resultset" parameter was exceeded the following message boxes are
displayed (Example: Max rows in resultset = 50). These have to be confirmed and the
query reconfigured:

 <Cancel>
The window is closed without saving the query and any currently running query is
terminated.

7.1.1.1 Handling queried records


The queried records (data files) can now be selected from a dropdown list (multiselect
bar).

A record can be selected by clicking on the drop down button and then on the required
record. The selected result will always be shown at the top of the tree view in the
"Signals" window.
The queried records can be handled like data files in the advanced window of the "Open
Data File …" or "Add New Data File… " dialogs.

Issue 2.0 71
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Select the required database files, decide on the option Append files on multiselect and
select <Open from File Group>

Using the Append files on multiselect option is also possible for queried data.

72 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

The selected database file will be displayed in the "Signals" window.

It is also possible to mix database queries and data files. The different data sources are
distinguished by the icons for database and for data file.

If the data files are opened and added in the "Advanced" window of the "Open/Add data
file" dialogs they will be part of the group in the multiselect bar as well as being shown in
the "Signals" window.

Issue 2.0 73
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Added query results can always be found in the multiselect bar.


If data files are not opened via the "Advanced" window of the "Open data file" window,

74 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

they will appear in the tree structure shown in the "Signals" window but not in the
multiselect drop down menu.

 Multidimensional channel expressions


Queried multidimensional channel expressions are displayed under the group
"Expressions" where they can be selected. The sub-signals can also be selected and
referred to in derived expressions.

The signals can be selected as usual for display and further evaluation.

Issue 2.0 75
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

7.1.2 SQL-queries
It is also possible to write queries directly in SQL syntax. This option provides the full
flexibility that is available within the used database/application environment. Any table
that is accessible from the configured database connection can be used in the WHERE
condition.

<SQL Queries > opens the following window.

 File
A previously created query file can be selected
 SQL select
SQL text can be written in this field.
 Merge signals on database sync field
 See chapter: Query builder, page 67
 Add to previous query result
 See chapter: Query builder, page 67

76 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 Max rows in resultset


 See chapter: Query builder, page 67
 "Derive column names from:"
 See chapter: Query builder, page 67
 < Query>
 See chapter: Query builder, page 67
 <Cancel>
 See chapter: Query builder, page 67
 <New Query>
 See chapter: Query builder, page 67
 <Save>
Save changes to currently opened query file.
 <Save As>
Save as new query file.

Note
Only column names specified by the selected "Derive column names from:" option can be
used in the SQL query.

Note
The SQL syntax may differ depending on the used database system and connection type
(ODBC, OLEDB).

Example:
Querying Data of the last two days in SQL-Server:
SELECT * FROM PDA_File WHERE _Timestamp > (getdate()- 2)
Equivalent query in Oracle syntax:
SELECT * FROM PDA_File WHERE I_Timestamp > (SYSDATE - 2)

Issue 2.0 77
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

7.2 Trend queries


Instead of querying detailed measured data by standard queries it is also possible to
query the info fields and/or computed columns which are aggregations of values in data
files (i.e. one value per data file). This resolution permits long term analysis over days,
weeks, months or years without generating excessive amounts of data. The file table
created by ibaAnalyzer-DB is used to display a trend graph of that data. Theoretically
data from other database tables or views can also be queried, provided that these tables
contain a timestamp column and numeric or string data. The results of a trend query are
signals containing non-equidistant data samples, similar to the XY view.

Each record in the query result is displayed by a point having an x-coordinate equal to
the time stamp of the source file and a y-coordinate equal to the aggregate value of the
sample. These generated signals can be used in further computations. However in this
case they are first converted to equidistant signals by linear interpolation before being
used in the given expression. The sample separation of the resampled signal will be the
time interval between the closest two sample points in the original, non-equidistant
signal.

7.2.1 Trend query builder


Similarly to the standard query builder, the trend query builder is available to assist in the
creation of SQL instructions to perform a trend queries.

78 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Trend Query Builder opens the following window.

 Timestamp field column


Trend queries require a time stamp. The relevant column is selected here.
 Microsecond field column
This option is selected if microsecond precision is required (see chapter: "Database
Table deFile",) and the column where the data is stored is selected here.

 Table
Select the table to be queried.
 Filename field column
This column contains the filenames.

Issue 2.0 79
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Selecting this option will enable the opening of the original files corresponding to the
extracted files in the database. If the table to be queried has the iba database layout, the
correct column will be preselected.
In the "Overview" window move the cursor onto the diamond to view the name of the
source file and double click.

The source file will appear in the "Signals" window.

This option can be disabled if the original files are not required or no longer present as
the query speed is then increased. This option is not available if the option "Place result
in overview instead of signal tree" has not been selected.
 Available fields
All the fields which are available in the selected table (type "defile") are displayed
 Selected fields

The fields required for the query can be selected / deselected.


 Conditions
 See chapter: Query builder, page 67

80 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 Merge signals on database sync field


The Merge sync field function is also similar to the Merge function previously described
for standard queries (see chapter: Query builder, page 67).

When selecting this option and selecting the name of the appropriate sync field column in
the combo box next to it (e.g. CoilID), all rows with the same value in the sync field
column will be merged and presented as a single data point in the trend query. The
"Selected fields" will be displayed under "Trendquery results" in the "Signals" window

Issue 2.0 81
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

or in the "Overview" window.

The timestamp of the data point will be the earliest in the merged rows and the values of
the data point will be the first non 0 (Zero) values in the selected numeric or string
columns when the merged rows are sorted by the timestamp (or the values will be
0 (Zero) if 0 (Zero) or NULL values are present in the merged rows for the selected
numeric or string columns).
 Add to previous query result
 See chapter: Query builder, page 67
 Place result in overview instead of signal tree
This option puts the trend query result in the "Overview" window instead of the signal
tree.

Note
Note that the option "Add to previous query result" is grayed out when this option is
selected. This is because there can only be one query result (possibly comprised out of
several signals) present at a time in the overview. Any previously executed trend query
result in the overview will be replaced when continuing with the query.

 <New Query>
 See chapter: Query builder, page 67
 <Save as SQL>
 See chapter: Query builder, page 67

82 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 <Query>
Each field in the result set will generate a signal with a name which is the same as the
fieldname. The signal will be added to the signal tree under the "Trend query results"
node.

 <Cancel>
 See chapter: Query builder, page 67
 <Import>
Exported Trend Query Builder settings can be imported. The current settings are
overwritten.
 <Export>
Trend Query Builder settings are exported as an .ini file.

7.2.2 SQL trend queries


Trend queries can be written in the same way as described in the chapter: SQL-queries,
page 76.

Issue 2.0 83
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

SQL Trend Queries opens the following window.

SQL instructions can be entered into the "SQL-Trendqueries" window in order to acquire
the trend graph data.
 File
 See chapter: SQL-queries, page 76
 SQL select
 See chapter: SQL-queries, page 76
 Merge signals on database sync field
 See chapter: Query builder, page 67
 Use first numeric column as microsecond part of timestamp

Note
Obviously this column should contain the correct data type, otherwise the result will be
meaningless

84 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

 <Add to previous query result>


 See chapter: Query builder, page 67
 <Place result in overview instead of signal tree>
 See chapter: Query builder, page 67
 < Query>
 See chapter: Trend query builder, page 78
 <Cancel>
 See chapter: Query builder, page 67
 <New Query>
 See chapter: Query builder, page 67
 <Save>
 See chapter: SQL-queries, page 76
 <Save As>
 See chapter: SQL-queries, page 76
When executed, the instruction must have a result set with a time stamp field (if there are
more than one time stamp columns only the first one will be referenced, the others will be
displayed) and at least one numeric field. The instruction must also contain an "Order by"
clause on the timestamp field.

Issue 2.0 85
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

7.3 Trend query results


In addition to the standard query results, trend query results can also be displayed and
evaluated using new functions such as overview display and drill down.

7.3.1 Trend query signal tree

The results generated by the queries can be seen in the signal tree under the "Trend
query results" node. These can be dragged or double-clicked to display them in the
graph view.
To remove the query result from the signal tree right click on the result or on the "Trend
query results" node and select "Clear trend query results" in the drop down menu. The
query results can also be cleared by selecting "Close all data files". This can also be
done from the "File" drop down menu. A query result in the "Overview" window can only
be erased by a new query.

86 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

7.3.2 Trend queries in overview

The trend queries can be shown in the "Overview" window. Calculations cannot be
performed on trend queries placed in this window. However the "Overview" window has
functions which are not available for trend queries placed in the main graph window.
Specifically, the overview can be used to query the database for the extracted or source
files that correspond to the data points of the trend query result in the overview and open
the original data files corresponding to these extracted files (drill down functionality).

7.3.2.1 Trend query result list and graph


The overview contains two parts:
 A graph on the right side to depict the trend query results
 A list of the signal names available in the trend query result on the left side.
This list contains all column names resulting from the trend query. If the sync field was
numeric, it will also be available here. Unchecking the checkboxes next to the names will
mask the signals in the graph on the right. Selecting the result at the top of the list and
clicking on "Trendquery results" causes the first checkbox state to be inherited by the
remaining results. In this way multiple signals can be masked or unmasked together.

The graph that depicts the signals resulting from the trend query result is very similar to
the standard ibaAnalyzer graph. Signals can be dragged and dropped on to the same
Y-axis within the graph (but not out of the graph). The zoom buttons in the ibaAnalyzer
toolbar will also work, provided that the overview is the active window (i. e. the last
clicked window).

Issue 2.0 87
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

7.3.2.2 Markers
A pair of markers is available in the overview graph. These are like the normal markers
except they have a diamond located at roughly 2/3rd of their height. These markers can
be dragged by either the thick outer ends or the diamond. Pressing the <Ctrl> key while
dragging the markers causes them to jump to the next data point.
A tool-tip will appear when the mouse hovers over a marker’s diamond containing the
exact timestamp of the data point it is on and the action it will perform if you double click
on the diamond. Depending on the settings this will either open the original file or query
the database for the extracted file.

Pressing the <Ctrl> key while double clicking opens or queries all the files encompassed
by the markers and appends them.

Note
The area to the right of a data point "belongs" to the file of that data point.

The time range visible in the graph window is highlighted by the green rectangle in the
overview window.

88 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

A right click on the diamond opens a drop down menu of drill down options.

 Open file at marker


Open the original file corresponding with the data point, this option will be grayed out if
the "Filename field column" was not selected in the query dialog.
 Append range of files between markers
Opens and appends all files (i. e. generates chain of files in the signal tree)
encompassed by the markers. Again this option will be grayed out if the "Filename field
column" was not selected in the query dialog.

Note
The area to the right of a data point "belongs" to the file of that data point.

 <Query database for file at marker>


Instead of opening the original file, the extracted file in the database will be queried.
 <Query database for range of files between markers>
Similar to "Append range of files between markers" but will query and append the
extracted files instead.

Issue 2.0 89
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

 <Setup …>
Will open the "Preferences" dialog with the tab showing the options for the overview
selected.

This tab can also be opened by

90 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

7.3.2.3 Overview options


The following options are available in the Setup – Preferences - Overview window.
 When opening files in overview replace part of path
If the original data files have been moved to another location, the entire path or part of
the path (e.g. from local pda computer) can be replaced with the full address of a file
server from the filename column. A browse button is available to select the replacement
path.
 Open files when double clicking on markers> or <Query database for files when
double clicking on markers
The default behavior when double clicking on the marker diamond can be selected. You
can select either the original files will be opened or the database will be queried for the
extracted files.
 Append files when opening/querying a range of files between markers
If this is enabled all the selected files are opened immediately and appended to each
other. If disabled only, the first file will be opened.

Issue 2.0 91
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

7.4 Abort query

Abort Query terminates any currently running queries.

92 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

8 Database introduction and basic handling techniques


This chapter provides a general overview of relational databases and describes some
basic techniques for handling database data.

8.1 Overview
A database is an organized collection of data, typically stored in electronic format.
 Data can be input, managed, organized, and retrieved quickly.
 Traditional databases are organized by records (rows), fields (columns) located in
tables which are stored in the database files.

Relational Database Server Goals

A database table is a collection of rows and columns that is used to organize information
about a topic. Each row within a table corresponds to a single record and contains
several attributes that describe the record.
These tables are stored in databases

Data types - built-in data type categories


 Exact numerics – (bigint, bit, decimal, int, money, numeric, smallint)
 Approximate numerics (float, real)
 Date and time (date, datetime2, datetime, datetimeoffset, time)
 Character strings (char, varchar, text)
 Unicode character strings (nchar, ntext, nvarchar)
 Binary strings (binary, varbinary, image)
 Other data types (cursor, timestamp, uniqueidentifier, table)
 Large valued data types (varchar(max), nvarchar(max))
 Large object data types (text, ntext, image, xml)

Issue 2.0 93
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

A relational database is a collection of data tables all of which are formally described and
organized according to the relational model. Each table must identify a column or group
of columns, by means of the PRIMARY KEY, in order to uniquely identify each row.
ibaAnalyzerDB creates the following types of tables (see chapter: Database format
options, page 56)

Referential Integrity (RI) is a database concept used to ensure that the relationships
between the database tables remains synchronized during data modifications. RI can be
used to ensure the data is consistent, may be helpful in optimizing the database
environment and can assist in early detection of errors.
A combination of PRIMARY KEY and FOREIGN KEY constraints can be used to help
enforce referential integrity of the database. In addition to a foreign key referencing a
primary key constraint, a foreign key can also reference a UNIQUE constraint to help
maintain referential integrity.

94 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Normalizing a database
Normalization is the process of organizing data in a database that includes creating
tables and establishing relationships between the tables. The following normalization
forms are used to help eliminate redundant data
Five normalization forms (NFs)
 1NF: Eliminate Repeating Groups
 2NF: Eliminate Redundant Data
 3NF: Eliminate Columns Not Dependent on Key
 4NF: Isolate Independent Multiple Relationships
 5NF: Isolate Semantically Related Multiple Relationships
General structure in database management systems

Issue 2.0 95
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

8.2 Introduction to SQL language


SQL; Structured Query Language is a special-purpose programming language designed
for managing data held in a relational database management system (RDBMS).
 SQL was initially developed at IBM in the early 1970s.
 In the late 1970s, Relational Software, Inc. (now Oracle Corporation) developed its
own SQL-based RDBMS with the purpose of selling it to the U.S. Navy, Central
Intelligence Agency, and other U.S. government agencies.
 In June 1979, Relational Software, Inc. introduced the first commercially available
implementation of SQL, Oracle V2 (Version2) for VAX computers.

Categories of SQL statements

*DML with SELECT is the primary focus of this description

Elements of the SELECT statement

The following examples are based on the MS SQL server syntax.


Other databases (Oracle, IBM-DB2, etc.) may have different SQL syntaxes.

96 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

8.2.1 SELECT statements


Values:

Conditions and sort:

8.2.2 AND, OR, NOT, BETWEEN, LIKE, …

8.2.3 Calculations, …

Issue 2.0 97
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

8.2.4 Advanced SELECT clauses (DISTINCT, TOP, CASE)


DISTINCT: Returns available channel names and units

TOP n: Select top n files from a table and sort them ASCending or DESCending

98 Issue 2.0
ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

CASE: display results according to set conditions

8.2.5 NULL handling

Select top 2 "NULL" segments:

Issue 2.0 99
Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Replace NULL with 0:

8.2.6 JOIN clause


The JOIN clause the combination of related data from multiple tables into one result set
Select data from two tables with a common _FileId.

100 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Select data from three tables with common _FileId and _ChannelNr for top 50000 rows.

8.2.7 Aggregate functions

Issue 2.0 101


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

8.3 SQL-scripting, scheduling


T-SQL batches are collections of one or more T-SQL statements sent to SQL Server as a
unit for parsing, optimization, and execution and are terminated with the GO clause.
Some statements (e.g., CREATE FUNCTION, CREATE PROCEDURE, CREATE VIEW)
may not be combined with others in the same batch.

8.3.1 Useful applications (backup & cleanup):

cleanup_DB.bat:
SQLCMD -S .\SQLEXPRESS -i C:\iba\training\DB\cleanup_DB.sql

cleanup_DB.sql: (example from ibaDatawyzer-ICC system)


USE IBA

GO
DELETE iba_genealogic_file WHERE [_TimeStamp] < getdate() - 365
GO
DELETE iba_fingerprint_file

WHERE [_FileId] NOT IN (SELECT [_FileId] FROM iba_genealogic_file)


GO

backup_DB.bat:
SQLCMD -S .\SQLEXPRESS -i C:\iba\training\DB\backup_DB.sql

backup_DB.sql:
BACKUP DATABASE IBA_TTT
TO DISK = N'C:\iba\training\DB\Backup\IBA_TTT.bak'
WITH NOFORMAT, INIT,
NAME = N'IBA_TTT Backup',

SKIP, NOREWIND, NOUNLOAD, STATS = 10

102 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

9 Command Line Options

9.1 Starting ibaAnalyzer


If ibaAnalyzer has been installed using the installation wizard, the simplest method of
starting the program is by double-clicking the icon on the desktop or opening a data or
analysis file.
ibaAnalyzer can also be started using a command line. This means that the program can
also be started via batch/windows scripts or from within other programs, such as
ibaDatCoordinator, ibaPDA, ibaLogic or customer applications.
A special option is available when the program is started via the command line. This
permits different parameters to be added which instruct ibaAnalyzer to perform particular
analyses, print reports, cyclically refresh the display with every new data file or write
into/read from a database.
The ibaDatCoordinator was developed for automated processing in distributed
environments. ibaDatCoordinator enables easy configuration of standard tasks such as
database extraction, report generation or data file archiving and can handle several
typical fault or maintenance events such as network problems or server maintenance
stops. Advanced processing tasks such as automated report generation based on
overview and trend queries can also be implemented using ibaDatCoordinator by means
of so called "script tasks". In these scripts (e. g. *.bat or *.vbs), the behavior of
ibaAnalyzer is configured by command line switches.
(Please refer to your operating system’s documentation to learn more about the usage
and functions of the command line)

Issue 2.0 103


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

9.2 Command Line Syntax


ibaAnalyzer.exe dat1 […datn] [pdo] [/switch1] … [/switchm]
One or more data files (data file name), an analysis (pdo file name) and one or more
switch parameters (switches) can be included in the program call. Although it is possible
to use the relative path, it is recommended to always use the complete path for every file.

Note
Any paths containing blanks need to be in quotation marks.

If only data files are specified, ibaAnalyzer opens all the data files and shows them in the
signal tree.
Example:
"C:\Program Files (x86)\iba\ibaAnalyzer\ibaAnalyzer.exe"
D:\IBA\dat_files\pda_training021.dat D:\IBA\dat_files\pda_training022.dat

If an analysis file is also specified, ibaAnalyzer opens the data files and shows the
signals as defined in the analysis file. If more than one analysis file is specified, only the
last analysis file in the command-line is loaded.

104 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Example:
"C:\Program Files (x86)\iba\ibaAnalyzer\ibaAnalyzer.exe"
D:\IBA\dat_files\pda_training021.dat D:\IBA\DBExt.pdo

Issue 2.0 105


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

9.3 Command line switches


The switches are particularly important in conjunction with further actions because they
can be used to automatically complete analysis tasks. It is, however, also possible to use
the switches in conjunction with a manual program start.

9.3.1 "/reuse" switch


If this switch is included in the program call, ibaAnalyzer starts, loads the specified data
files and, if applicable, displays the results as determined by an analysis file.
Every new program call containing the /reuse switch keeps the currently running
instance of ibaAnalyzer open, but closes previously opened data files before opening the
files specified in the current call.

Example:
"C:\Program Files (x86)\iba\ibaAnalyzer\ibaAnalyzer.exe"
D:\IBA\dat_files\pda_training021.dat D:\IBA\DBExt.pdo /reuse
A "Lock analysis" icon in the upper left corner of the tool bar indicates that ibaAnalyzer
has been started with the /reuse switch.
Clicking this button disables updates by further program calls containing the /reuse
switch. By automating this process, for example, using the post-processing command, it
is possible to permanently update an analysis display with the latest .dat file.

As this icon is not displayed by default it must be activated via the Main Toolbar selection.

106 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

9.3.2 "/append" switch


This switch enables the appending of several data files specified in the call. These files
are then displayed contiguously in the graph’s X direction. An example is given below.

Example:
"C:\Program Files (x86)\iba\ibaAnalyzer\ibaAnalyzer.exe"
D:\IBA\dat_files\pda_training021.dat D:\IBA\dat_files\pda_training022.dat
D:\IBA\DBExt.pdo /append

9.3.3 "/print" switch


This switch causes the measurement data to be printed as a record or log in the format
defined in the selected analysis. The Windows default printer is used.
Example: C:\ibaAnalyzer.exe C:\dat\pda040.dat C:\iba\speed.pdo /print
ibaAnalyzer is closed after the printing process has been completed or after the print job
has been triggered,
In the case of an error, however, ibaAnalyzer remains open in order to display the error
message.

9.3.4 "/extract[:"filename"]" switch


The extract switch means that ibaAnalyzer starts and loads the specified data file.
Thereafter, the measurement data is processed in accordance with the specified
analysis and extracted into a database. This has the same effect as pressing the
<Extract now> button on the Data Extractor dialog. (see: chapter: Extractor output).
During this process, no ibaAnalyzer window is opened on the screen, i. e. the extraction
process runs in the background. The database connection must have been configured
previously in the analysis.

Examples:
C:\ibaAnalyzer.exe C:\dat\pda040.dat C:\iba\dbextract.pdo /extract

C:\ibaAnalyzer.exe C:\dat\pda040.dat C:\iba\txt.pdo


/extract:"c:\output.txt"

Issue 2.0 107


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

If "Extract to file" is selected in the analysis file then the name of the output file can be
specified after the extract switch. The second example will extract the data specified in
txt.pdo from pda040.dat into a text file called: "c:\output.txt".
This switch can only be used in conjunction with the license for the database interface
(ibaAnalyzer-DB-Extractor). You may also extract the data into a file by using the
filename as parameter to the switch. For extracting data into a file the license
ibaAnalyzer-DAT-Extractor is required.

9.3.5 "/sql:filename.sql[;sync:"syncFieldName"]" switch


This switch is used for database queries. The "file name.sql" argument can be used to
transfer SQL statements as a basis for the database query. The additional, optional
[;sync:...] parameter can be used to specify a merge criterion for the query data.

Examples:
C:\ibaAnalyzer.exe C:\iba\dbquery.pdo /sql:"C:\iba\query.sql"
C:\ibaAnalyzer.exe C:\iba\dbmerge.pdo /sql:"C:\iba\merge.sql";
sync:"STRIP_ID"
The "dbquery.sql" must be a text file conforming to the SQL-language supported by the
database system specified in the PDO file (i. e. Oracle, SQL-Server, DB2, ODBC)
For instance the query.sql specified in first example could be something like:
SELECT * FROM PDA_File order by [_Timestamp] DESC;

The second example shows the use of the /-sql switch together with the sync field
argument.
The sync field name (here "STRIP_ID") corresponds to the database sync field specified
in the SQL-Queries dialog. (See chapter: Query builder, page 67).
When specifying data files and also using the /sql parameter, all data files are placed in
the signal tree starting from the second line. If the query was successful the first position
will contain the first file in the query result, otherwise the first line will be empty.

9.3.6 "/trendsql:filename.sql" switch


Examples:
C:\ibaAnalyzer.exe C:\iba\dbtrend.pdo /trendsql:"C:\iba\trend.sql"
C:\ibaAnalyzer.exe C:\iba\dbtrend.pdo /trendsql:"C:\iba\trend.sql";
sync:"SID"

This switch is similar to the previous one, but it queries infofields and/or computed
columns from the file table instead of data files. (See chapter Trend queries, page 78
ibaAnalyzer starts and queries the database specified in the PDO with the SQL
statement from the "trend.sql" file. This query needs to have a TimeStamp column
selected. All other selected columns will be added under the "trend query results" node in
the signal tree and can be used in the analysis.
The file trend.sql must be a text file conform to the SQL-language supported by the
database system specified in the analysis file (i. e. Oracle, SQL-Server, DB2, ODBC).

108 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

The SQL instruction in it must have a result set with a timestamp field (you can have
more than one, but only the first one will be referenced) and at least one numeric field.
The instruction must also contain an "Order by" clause on the timestamp field.

9.3.7 "/overviewsql:filename.sql" switch


This switch is similar to the previous one. The difference is that it displays the query
results in the overview window. (See chapter: Trend queries, page 78) Trend QueriesThe
/sql switch can be combined with the /overviewsql switch. This enables starting
ibaAnalyzer with an overview while also simultaneously querying files from the database.
You need to specify separate SQL instructions for the overview and the file query in
different text files in this case.

Example:
C:\ibaAnalyzer.exe /overviewsql:"C:\iba\overview.sql"
/sql:"C:\iba\query.sql"

9.3.8 "/report[:filename]" switch


With this switch, ibaAnalyzer starts, loads a specified data file and performs an analysis
in accordance with the specified analysis rules. Thereafter, the integrated report
generator is started and the data is printed on the Windows default printer using a report
layout specified in the analysis rule if the [:file name] option was not used with the switch.
If the [:file name] switch option is used, the report can be written into a file rather than
being printed. The desired file type is determined by the file name extension.
Many customary formats are supported, including, for example, .pdf, .htm, .rtf, .tiff, .jpg,
.xls, etc.

Examples:
C:\ibaAnalyzer.exe C:\dat\pda040.dat C:\iba\rep.pdo /report

C:\ibaAnalyzer.exe C:\dat\pda040.dat C:\iba\rep.pdo


/report:"c:\repout.pdf"

Reports can also be based on database queries. After an standard or trend query it is
possible to build a report with the selected data. The according *.sql and *.pdo can be
used for a command line script.

Example:
C:\ibaAnalyzer.exe /sql:"C:\iba\merge.sql";sync:"STRIP_ID" 8
C:\iba\strip_rep.pdo /report:"c:\tmp\repout.pdf"

Issue 2.0 109


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

9.4 Combination of command line switches


Not all command line switches can be combined. The following table gives an overview
which switches can be combined:

Combination /trendsql
permissible /sql /reuse /append /print /extract /report
or useful ? /overviewsql

/sql

/reuse YES

/append YES YES

/print YES NO YES

/extract NO NO YES YES

/report YES NO YES YES YES

/trendsql
YES YES NO YES NO YES
/overviewsql

110 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

10 Setting up the database


Several databases are supported by Microsoft OLE-DB API: SQL-Server, Oracle,
DB2-UDB or by ODBC: MySQL, PostgreSQL, SQLite, MS Access, etc. The following
describes the steps required to set up the required database software for MS SQL Server
Express 2014 with Tools 64bit (SQLEXPRESSWT_x64) which could be downloaded
from Microsoft website.
Before starting the Installation, ensure that the required .Net framework 3.5 is available:

Issue 2.0 111


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

10.1 Start software installation


Start Install package:

Allow installation and system changes:

Select directory for temporary sw extract:

112 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

… extract process…

Select new installation:

Issue 2.0 113


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Accept license terms:

114 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Issue 2.0 115


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Select features and storage (directories):

116 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Select default instance name "SQLExpress" and ID "SQLEXPRESS":

Issue 2.0 117


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

If the remote access to the database is required set the "SQL Server Browser" Startup
Type to "Automatic". Further settings for remote access are described later.

118 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

For external access choose "Mixed Mode…" and specify the password for the system
administrator.

Issue 2.0 119


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

The installation now runs for a few minutes and at the end all features have "Succeeded".

120 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Close Install Program:

Issue 2.0 121


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

10.2 Create database and basic settings for the server:


10.2.1 Start SQL Server 2014 Management Studio from start menu

122 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Connect to Server

Create new database (right mouse click on "Database"):

Issue 2.0 123


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Specify the "Database name" and confirm default settings with <OK>:

124 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Find the new database in "Object Explorer":

Issue 2.0 125


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Create a new dedicated login (right mouse click on "Logins"):

126 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

On the first page "General":


Specify the "login name", choose "SQL Server authentication" and define a password.
Disable "Enforce password policy" and choose "Default database"

Issue 2.0 127


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

On the second page "Server roles" choose "dbcreator":

On the third page select "Database" in the window "User mapped to this login" and
"db_owner" in the window "Database role membership for:".

128 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Then confirm the Login configuration with <OK>:

Issue 2.0 129


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

10.2.2 Customize Settings for remote access

10.2.2.1 Start <SQL Server 2014 Configuration Manager>

Allow system changes:

130 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Activate TCP/IP protocol for "SQL Server Network Configuration" (right mouse click on
"TCP/IP"):

Notice Warning => Restart Database Service

Issue 2.0 131


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Restart Database Service from Management Console (right mouse click on


):

132 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

10.2.2.2 Firewall settings for remote access


For remote access to the SQL Server three inbound rules must be configured in the
windows firewall:
1. The "sqlservr.exe" executable
2. The TCP port 1433
3. The UDP port 1434

Open Firewall configuration from Control Panel and select "Advanced settings":

Issue 2.0 133


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Define a new "Inbound Rule"

134 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Select the Program rule type:

Issue 2.0 135


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Select "The program path" and "Browse…" to the executable "sqlservr.exe"

136 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Select This program path: and confirm with <Next>.

Issue 2.0 137


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Allow the Connection – <Next>

138 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Apply "Profile" then <Next>

Issue 2.0 139


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

Specify Name and <Finish>

140 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Select the Port Inbound rule type.

Issue 2.0 141


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

In window "Protocol and Ports" select TCP, Specify local ports and enter "1433":

142 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Specify Name and <Finish>

Issue 2.0 143


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

In window "Protocol and Ports" select UDP, Specify local ports and enter "1434":

144 Issue 2.0


ibaAnalyzer-DB Manual Flexible Database Integration for
iba Systems

Specify Name and <Finish>

Test connection from remote PC See chapter "Testing the Database Connection in
ibaAnalyzer"

Issue 2.0 145


Flexible Database Integration for Manual ibaAnalyzer-DB
iba Systems

11 Support and contact


Support
Phone: +49 911 97282-14
Fax: +49 911 97282-33
Email: [email protected]

Note
If you require support, indicate the serial number (iba-S/N) of the product.

Contact
Headquarters
iba AG
Koenigswarterstr. 44
90762 Fuerth
Germany
Phone: +49 911 97282-0
Fax: +49 911 97282-33
Email: [email protected]
Contact: Mr Harald Opel

Regional and worldwide


For contact data of your regional iba office or representative please refer to our web site
www.iba-ag.com.

146 Issue 2.0

You might also like