Вы находитесь на странице: 1из 209

XLReporter

User Guide
Version 12.3

SyTech, Inc.

The Complete Reporting Solution

User Guide -i-


Information in this document is subject to change without notice. SyTech, Inc. assumes no responsibility
for any errors or omissions that may be in this document. No part of this document may be reproduced or
transmitted in any form or by any means, electronic or mechanical, for any purpose, without the prior
written permission of SyTech, Inc.

Copyright 2000 - 2017, SyTech, Inc. All rights reserved.

XLReporter is a registered trademark of SyTech, Inc.

Microsoft and Microsoft Excel are registered trademarks of Microsoft, Inc.


All registered names are the property of their respective owners.

- ii - User Guide
Contents
A Tour of XLReporter 13
Welcome ..................................................................................................................................13
Release Notes ...........................................................................................................................14
New Features .............................................................................................................14
Issues Fixed................................................................................................................18
Installation ................................................................................................................................19
Licensing ..................................................................................................................................19
Software Requirements ............................................................................................................19

A Quick Overview 20
Overview ..................................................................................................................................20
Template Library ......................................................................................................................20
Template Studio .......................................................................................................................20

Project Explorer 21
Overview ..................................................................................................................................21
Open a Project............................................................................................................21
Backup a Project ........................................................................................................21
Restore a Project ........................................................................................................21
Project Wizard..........................................................................................................................21
Project Explorer Menu Ribbon ................................................................................................22
Home tab ....................................................................................................................22
Data tab ......................................................................................................................22
Project tab ..................................................................................................................23
Tools tab ....................................................................................................................23
Project Explorer Panels ............................................................................................................24
Left Panel ...................................................................................................................24
Template Instance ......................................................................................................24
Project Explorer Right Panel ....................................................................................................25

Project Settings 26
Overview ..................................................................................................................................26
General .....................................................................................................................................26
Excel Reports ...........................................................................................................................26
PDF Reports .............................................................................................................................26
Web Reports .............................................................................................................................27

Product Registration 28
Obtain a License .......................................................................................................................28
Move a License ........................................................................................................................28

System Check 29
Overview ..................................................................................................................................29
Connector .................................................................................................................................29
General .....................................................................................................................................29

User Accounts 31
Overview ..................................................................................................................................31
User Groups .............................................................................................................................31
Users ........................................................................................................................................32
Log On/Off ...............................................................................................................................32

Connectors 33

User Guide - iii -


Overview ..................................................................................................................................33
Defining a Connector ...............................................................................................................33
Item Catalog .............................................................................................................................34
Usage - Offline Project ..............................................................................................34
Usage - Interactive Report .........................................................................................35

Variables 36
Overview ..................................................................................................................................36
Variable Editor .........................................................................................................................36
Function Variable .....................................................................................................................37
Register ......................................................................................................................37
Counter ......................................................................................................................38
Date Time ..................................................................................................................38
Lookup .......................................................................................................................39
Variable Parsing .......................................................................................................................39

Analytics 40
Overview ..................................................................................................................................40
Analytic Designer.....................................................................................................................40
Schedule ...................................................................................................................................41
Reset Group, Reset All ..............................................................................................42
Update Group, Update All .........................................................................................42
Store Group, Store All ...............................................................................................42
Purge ..........................................................................................................................42
Data Items ................................................................................................................................42
Snapshot .....................................................................................................................43
Multi Snapshot ...........................................................................................................43
Profile ........................................................................................................................44
State Profile................................................................................................................44
Difference ..................................................................................................................45
Statistic ......................................................................................................................46

Template Library 47
Overview ..................................................................................................................................47
Select a Template from the Library ...........................................................................47
Select the Template Name and Connector .................................................................47
Customize the Content of the Template .....................................................................47
Setup a Schedule ........................................................................................................48
Select Publishing Options ..........................................................................................48

Data Groups 49
Overview ..................................................................................................................................49
Real Time Data Group .............................................................................................................49
Columns Tab ..............................................................................................................49
History Data Group ..................................................................................................................50
User Interface .............................................................................................................51
Setup Tab ...................................................................................................................51
Columns Tab ..............................................................................................................52
Time Period Tab ........................................................................................................53
Filters Tab ..................................................................................................................56
Database Data Group ...............................................................................................................57
User Interface .............................................................................................................58
Setup Tab ...................................................................................................................58
Columns Tab ..............................................................................................................59
Filters Tab ..................................................................................................................60
Order Tab ...................................................................................................................60
Group Tab ..................................................................................................................60
Calculations Tab ........................................................................................................60
SQL Tab.....................................................................................................................60

- iv - User Guide
Calculations ..............................................................................................................................61
General .......................................................................................................................61
Accumulation .............................................................................................................62
Difference ..................................................................................................................62
Advanced ...................................................................................................................62
Sample Analysis ........................................................................................................63
Performance Analysis ................................................................................................63
Energy ........................................................................................................................63
Pulse Analysis ............................................................................................................64
Scaling ......................................................................................................................................64
Heading ....................................................................................................................................65
Preview.....................................................................................................................................65
Variables in Data Groups .........................................................................................................66
Quick Access............................................................................................................................66

Template Studio 67
Overview ..................................................................................................................................67
Studio Ribbon ..........................................................................................................................67
Template...................................................................................................................................67
New ............................................................................................................................68
Open ...........................................................................................................................68
Save As ......................................................................................................................68
Content .....................................................................................................................................69
Chart ..........................................................................................................................69
Design ........................................................................................................................69
Settings .....................................................................................................................................71
General .......................................................................................................................71
Report Names ............................................................................................................71
Worksheet ..................................................................................................................73
Schedule .....................................................................................................................73
Interactive Designer ...................................................................................................73
Data ..........................................................................................................................................73
Connect ......................................................................................................................73
Link ............................................................................................................................73
Report .......................................................................................................................................73
Preview ......................................................................................................................73
Open ...........................................................................................................................73
Cells .........................................................................................................................................73
Insert ..........................................................................................................................73
Delete .........................................................................................................................73
Tools ........................................................................................................................................74
Data Variables............................................................................................................74
Database Manager......................................................................................................74
User Accounts ............................................................................................................74
Excel Considerations ................................................................................................................74

Data Connect 76
Overview ..................................................................................................................................76
Menu Options ............................................................................................................76
Left Panel ...................................................................................................................76

Data Management 78
Overview ..................................................................................................................................78
Categories.................................................................................................................................78
Configuration ...........................................................................................................................79
Worksheet ................................................................................................................................80
AutoFit Range ............................................................................................................80
Border Range .............................................................................................................80
Chart Range ...............................................................................................................80
Clear Range................................................................................................................81

User Guide -v-


Collapse Range ..........................................................................................................81
Copy Range................................................................................................................82
Cut Range ..................................................................................................................82
Delete Range ..............................................................................................................83
Fill Range...................................................................................................................83
Filter Range................................................................................................................83
Format Range .............................................................................................................84
Formula Range ...........................................................................................................84
Lookup Range ............................................................................................................84
Replace Range ...........................................................................................................86
Sort Range .................................................................................................................86
Text Range to Column ...............................................................................................87
Trim Range ................................................................................................................87
Presentation ..............................................................................................................................88
Chart Enhancement ....................................................................................................88
Cross Tab on State Change ........................................................................................88
Insert Into Range ........................................................................................................89
Outline Range ............................................................................................................90
Propagate Range ........................................................................................................90
Stack Range ...............................................................................................................91
2D Transformation .....................................................................................................91
Value Limit Range .....................................................................................................92
Weave Into Range ......................................................................................................92
Analysis ....................................................................................................................................93
Conditional Summary ................................................................................................93
Correlation .................................................................................................................93
Covariance .................................................................................................................94
Descriptive Formula...................................................................................................94
Descriptive Statistics ..................................................................................................95
Exponential Smoothing ..............................................................................................96
Histogram ..................................................................................................................96
Moving Average ........................................................................................................97
Summarize Range ......................................................................................................97
Logic ........................................................................................................................................98
Cell Value ..................................................................................................................98
Range Value ...............................................................................................................98
Data Export ..............................................................................................................................98
To Database ...............................................................................................................98
Database Export Builder ............................................................................................99
Auto Index ...............................................................................................................100
To Variables.............................................................................................................101
To Tag List...............................................................................................................101
Tag Export Builder ..................................................................................................101
Range to Text ...........................................................................................................102
Worksheet to Text ....................................................................................................102
Range to XML (Schema) .........................................................................................102
Sheet to Workbook ..................................................................................................103
Range to Workbook .................................................................................................104
Data Import ............................................................................................................................104
Range From Workbook............................................................................................104
Range From Workbook List ....................................................................................105
Sheet From Workbook .............................................................................................105
Sheet From Workbook List ......................................................................................105
From Text File .........................................................................................................105
From XML File ........................................................................................................106
From Add-in Formulas ............................................................................................106

Scheduler 107
Overview ................................................................................................................................107
Designer .................................................................................................................................107
Conditions ..............................................................................................................................108

- vi - User Guide
On Time ...................................................................................................................108
On Event ..................................................................................................................108
Actions ...................................................................................................................................109
Produce Reports .......................................................................................................110
Publish Reports ........................................................................................................110
Transfer Reports ......................................................................................................111
Manage Files and Folders ........................................................................................112
Manage Variables ....................................................................................................112
Run Applications .....................................................................................................113
Scheduler Setup ......................................................................................................................114
Run as a Service .......................................................................................................114
Run on the Desktop..................................................................................................114
Stopping the Scheduler ............................................................................................114
Scheduler Settings ..................................................................................................................114
Backfilling Reports ................................................................................................................115
Enabling Schedules ................................................................................................................115
Toolbar Items .........................................................................................................................116
Outline .....................................................................................................................116
Test ..........................................................................................................................116
Scheduler Script .....................................................................................................................116
Command Section ....................................................................................................116
Trigger Section ........................................................................................................117

Designing Interactive Reports 119


Overview ................................................................................................................................119
Interactive Designer ...............................................................................................................119
Variables tab ............................................................................................................120
Commands tab .........................................................................................................123

Deploying Interactive Reports 124


Overview ................................................................................................................................124
Local ........................................................................................................................124
Team Client..............................................................................................................124
Security ..................................................................................................................................124
User Interface .........................................................................................................................124
Options ...................................................................................................................................125
Saving Reports .......................................................................................................................126
Printing Reports .....................................................................................................................126
Emailing Reports ....................................................................................................................127
Tag Browser ...........................................................................................................................127
Panels .....................................................................................................................................127
Date Interval ............................................................................................................127
Date Calendar ..........................................................................................................128
Tag ...........................................................................................................................128
Parameter .................................................................................................................128
Database ...................................................................................................................129
Keypad ...................................................................................................................................129

Designing Interactive Forms 130


Overview ................................................................................................................................130
Configure a Form Connector..................................................................................................130
Create a Database Table .........................................................................................................131
Design a Form Template ........................................................................................................131
Setup Tab .................................................................................................................131
Links Tab .................................................................................................................133
Display Tab ..............................................................................................................134
Store Tab ..................................................................................................................135

Deploying Interactive Forms 136

User Guide - vii -


Overview ................................................................................................................................136
Local ........................................................................................................................136
Team Client..............................................................................................................136
Security ..................................................................................................................................136
User Interface .........................................................................................................................136
Mobile Tablets (Team Edition) ..............................................................................................137

Report Viewers 138


Overview ................................................................................................................................138
Deploying Viewers.................................................................................................................138
Local ........................................................................................................................138
Team Client..............................................................................................................138
Security ..................................................................................................................................138
User Interface .........................................................................................................................139
Annotating Reports ................................................................................................................140

Web Portal 141


Overview ................................................................................................................................141
Installing Internet Information Services (IIS) ........................................................................141
General IIS Settings .................................................................................................142
Windows Firewall Settings ....................................................................................................143

Team Portal 144


Overview ................................................................................................................................144
Configuring Clients ................................................................................................................144
Team Client Setup ..................................................................................................................144
Web Browsers ..........................................................................................................145
Team Explorer........................................................................................................................145
Data Entry Forms ...................................................................................................................145
Forms Off Line ........................................................................................................145
Forms On Line .........................................................................................................146

Database Manager 147


Overview ................................................................................................................................147
Database Terminology ...........................................................................................................147
User Interface .........................................................................................................................147
Connector .................................................................................................................147
Table ........................................................................................................................148
Options .....................................................................................................................149
Table and Column Restrictions ..............................................................................................149
Naming Convention .................................................................................................149
Database Limitations ...............................................................................................149

DSN Settings 150


Overview ................................................................................................................................150

Email and SMS 151


Overview ................................................................................................................................151
Setup Email Server and Contacts ...........................................................................................151
Setup the Email Server.............................................................................................151
Setup Email Contacts ...............................................................................................152
Design a Configuration ..........................................................................................................153
Server .......................................................................................................................153
Content .....................................................................................................................153
Attachments .............................................................................................................154
Validate ....................................................................................................................155
Deploy a Configuration ..........................................................................................................156

- viii - User Guide


FTP Transfer 157
Overview ................................................................................................................................157
Setup FTP Server ...................................................................................................................157
Design a Configuration ..........................................................................................................158
Server .......................................................................................................................159
Source ......................................................................................................................159
Target .......................................................................................................................160
Validate ....................................................................................................................160
Deploy a Configuration ..........................................................................................................161

File Manager 162


Overview ................................................................................................................................162
Design a Configuration ..........................................................................................................162
File Operation ..........................................................................................................163
Validate ....................................................................................................................165
Deploy a Configuration ..........................................................................................................165

Themes 166
Overview ................................................................................................................................166
Using Themes ........................................................................................................................166
Theme Builder........................................................................................................................166

Status Logs 168


User Interface .........................................................................................................................168

Name Types 169


Overview ................................................................................................................................169
Type List ................................................................................................................................169
Name Type Calculation..........................................................................................................170
Extended Name Type Calculation..........................................................................................170
Name Type Scaling ................................................................................................................171
Report Date and Scheduled Date............................................................................................171

Excel Primer 172


The Design Studio ..................................................................................................................172
Terminology ...........................................................................................................................172
Cell Formatting ......................................................................................................................172
Validation ...............................................................................................................................172

Connector Specifics 176


Overview ................................................................................................................................176
Common Settings ...................................................................................................................176
Connectors for Real Time Servers ...........................................................................176
Connectors for OPC Real Time and OPC Historical Servers ..................................176
Connectors for Relational Databases .......................................................................177
Connectors that have a Secondary Server ................................................................177
Rockwell Automation ............................................................................................................178
RSLinx Classic ........................................................................................................178
RSView32 Real-time values ....................................................................................178
RSView32 Historical values ....................................................................................178
PanelView Plus Historical values ............................................................................179
FactoryTalk View ME Historical values..................................................................179
FactoryTalk Gateway Real-time values ...................................................................179
FactoryTalk View SE Historical values ...................................................................179
FactoryTalk View Data File(s) ................................................................................180
FactoryTalk View SE Alarms ..................................................................................180
FactoryTalk Alarms and Events ...............................................................................181

User Guide - ix -
FactoryTalk View Historian (classic) ......................................................................181
FactoryTalk View Historian SE (OLEDB/ODBC) ..................................................181
FactoryTalk View Historian SE (OPC HDA) ..........................................................183
FactoryTalk View Historian SE (VantagePoint) ......................................................183
GE Digital ..............................................................................................................................184
iFIX Real-time values (local)...................................................................................184
iFIX Real-time values (OPC)...................................................................................184
iFIX Historical values (classic) ................................................................................184
iFIX Alarms .............................................................................................................185
Historian ..................................................................................................................185
Historian Plus ...........................................................................................................186
Historian Alarms ......................................................................................................186
Cimplicity Real-time values ....................................................................................187
Cimplicity Historical values ....................................................................................187
Cimplicity Alarms....................................................................................................187
Emerson Process Management...............................................................................................188
DeltaV Real-time values ..........................................................................................188
DeltaV Continuous Historian ...................................................................................188
DeltaV Advanced Continuous Historian..................................................................188
DeltaV Batch Historian ............................................................................................188
DeltaV Event Chronicle ...........................................................................................188
DeltaV Event Journal ...............................................................................................188
DeltaV Analyze........................................................................................................189
Inductive Automation.............................................................................................................190
Ignition Real-time values .........................................................................................190
Ignition Historical values .........................................................................................191
Ignition Transaction Group values ...........................................................................191
Siemens SIMATIC .................................................................................................................191
WinCC Real-time values .........................................................................................191
WinCC Historical values .........................................................................................191
WinCC Advanced Historical Values .......................................................................191
PCS7 Real-time values ............................................................................................191
PCS7 Historical values ............................................................................................191
WinCC/PCS7 Alarms ..............................................................................................192
Wonderware ...........................................................................................................................192
InTouch Real-time values (local) .............................................................................192
InTouch Historical values (classic) ..........................................................................192
InTouch ME Historical values .................................................................................193
InTouch Alarms .......................................................................................................193
ArchestrA FSGateway Real-time values .................................................................193
Wonderware Historian .............................................................................................194
Wonderware Historian Summary Tables ..............................................................195
Wonderware Historian Alarms ................................................................................195
Indusoft ..................................................................................................................................195
Point of View Real-time values ...............................................................................195
Point of View Historical values (OPCHDA) ...........................................................195
Point of View Historical values (OLEDB/ODBC) ..................................................196
Trihedral .................................................................................................................................196
VTScada Real-time values .......................................................................................196
VTScada Historical values .......................................................................................196
VTScada Alarms ......................................................................................................196
Kepware .................................................................................................................................197
KEPServerEX Real-time values (OPC DA) ............................................................197
KEPServerEX Real-time values (OPC UA) ............................................................197
KEPServerEX Local Historian ................................................................................197
OSIsoft ...................................................................................................................................197
PI Historian ..............................................................................................................197
Canary Labs ...........................................................................................................................199
Canary Labs Historian .............................................................................................199
Citect ......................................................................................................................................199
Citect Real-time values ............................................................................................199
Citect Historical values ............................................................................................199

-x- User Guide


Schneider Electric Software ...................................................................................................199
ClearSCADA Real-time values ...............................................................................199
ClearSCADA Historical values ...............................................................................199
WIN-911 Software .................................................................................................................199
WIN-911 Alarms .....................................................................................................199
Amphenol Advanced ..............................................................................................................200
RZH Historical values..............................................................................................200
Elutions ..................................................................................................................................200
ControlMaestro Real-time values ............................................................................200
ControlMaestro Historical values ............................................................................201
Database .................................................................................................................................201
Database (time series) ............................................................................................................201
Historical values (wide) ...........................................................................................201
Historical values (narrow)........................................................................................201
Alarms......................................................................................................................202
Text File .................................................................................................................................202
Text Historian (time series) .....................................................................................202
Discrete ....................................................................................................................204
OPC ........................................................................................................................................204
OPC DA Real-time values .......................................................................................204
OPC UA Real-time values .......................................................................................204
OPC HDA Historical values ....................................................................................205
XLReporter ............................................................................................................................205
Analytic Database ....................................................................................................205
Data Entry Form Database .......................................................................................206
Simulator Real-time values ......................................................................................206
Simulator Historical values ......................................................................................206
Simulator Alarms .....................................................................................................207

Programming Interface 208


Introduction ............................................................................................................................208
Command line scripts .............................................................................................................208
Visual Basic and VBA ...........................................................................................................208
Monitoring the Queue ............................................................................................................209

User Guide - xi -
A Tour of XLReporter

Welcome
Welcome to XLReporter, the award winning, out-of-the-box solution to turn raw data into polished
reports in Excel, PDF and Web formats and distribute them via email, mobile device and much more.
Reports can be produced automatically or on-demand from a single workstation to any place in the
organization.

A powerful feature of XLReporter is the template Design Studio, built into Microsoft Excel to
harness all the features of Excel along with XLReporter functions specifically designed for industrial
reporting.

Reports are produced using a proprietary reporting engine that transforms Excel templates into reports
without an installation of Excel.

The main components of XLReporter are:


Data Logging
- Log process values to a database (see Analytics)
Collect real-time process data and store it directly to a database. In addition to the
raw data, analytics, such as average and maximum, are also stored.
- Log the content of a worksheet to a database or text file (see Data Management)
Example: Export the summary values from a daily report to a comma separated file.
Data Connectors
- Real time connectors provide the current values in real time servers such as iFIX,
InTouch, RSLinx, or OPC Server.
- Historian connectors provide raw and analytical information from third party
historians such as Canary Labs, Proficy Historian, FactoryTalk Historian,
Wonderware Historian or OPC-HDA Server.
- Database connectors provide information from relational databases e.g., Microsoft
Access and SQL Server, for alarm, event and batch data.
- Form connectors provide raw and summary information from data collected
manually using Interactive Forms.
- Text file connectors provide raw and analytical information from text files that are
produced by third party products such as Allen Bradley Panel View Plus and Red
Lion.
- Analytic connectors provide raw and analytical information from relational
databases e.g., Microsoft Access and SQL Server that are maintained by Analytics.
Interactive Forms
- Interactive Forms are used to store manual data to a database, e.g., operator rounds
and laboratory result. The information in the database can then be used for reporting
purposes, alongside other data sources.
The forms are used on local workstations, any place in your network or from mobile
tablets. In the latter case the data is either stored directly to the database or stored
on the tablet and pushed to the database when a wireless connection becomes
available.
Automatic Reports
- Automatic Reports are produced by the Scheduler. Templates can harness the
powerful features of Excel and yet a copy of Microsoft Excel does not need to be
deployed to the target system.
Reports are built at one-time or over a period of time.

User Guide - 13 -
Completed reports use a custom naming convention and can be automatically sent to
printer, e-mail, web server or published to PDF or HTML formats. Additional tools
such as file management and FTP transfer are provided.
Interactive Reports
- Interactive reports are produced by the user specifying custom settings e.g., a date
range. The method used for specifying the settings is part of the template design.
The interactive reports are used a local workstation or any place in your network,
each producing reports based on their security credentials.

Release Notes

New Features
Connectors
The following connectors have been added:
Text File
Discrete
The Text File Discrete connector is used to retrieve data from a single text file on the system.
This connector defines a connection to a folder containing one or more text files to report
from. The name of the text file can be Fixed or Variable. When set to Variable, the variable
specified can be set before data is retrieved through the connector. This can be done from an
On-Demand report by specifying the name or set from the Scheduler or a script run by the
Scheduler.
OPC
OPC UA Real-time values
The OPC UA connector is used to retrieve real time data from an OPC UA server. This
connector can also be used to write data back to the OPC UA server. In addition, this
connector can be used to read/write real time data from OPC DA servers.
Rockwell Automation
FactoryTalk Historian SE (OLE DB/ODBC)
The FactoryTalk Historian SE connector is used to retrieve historical data from the
FactoryTalkView Historian SE through the PI OLE DB provider or PI ODBC driver.

FactoryTalkView Data File(s)


The FactoryTalk View Data File(s) connector is used to retrieve data from files such as the
.DAT files logged by Data Log Models in FactoryTalkView SE. The connector can span
multiple files to produce a single results set without any additional configuration.
OSIsoft
PI Server
The PI Server connector is used to retrieve historical data from the PI Historian through the PI
OLEDB or PI ODBC driver.
GE Digital
Historian Plus
The Historian Plus connector is used to retrieve historical data from the GE Historian. This
interface is designed to work faster and handle more data than the OLEDB provider. This
interface can only be used on the machine where the historian is installed.
Emerson Process Management
DeltaV Event Chronicle
This connector is updated to allow for a fixed file or variable file name as the chronicle file(s)
to process.
Wonderware
InTouch ME Historical values
The InTouch ME connector is used to retrieve historical values from InTouch ME when they
are configured to log to a database.
If InTouch ME is configured to log data to the Wonderware Historian, the Wonderware
Historian connector can be used.

- 14 - User Guide
Siemens Simatic
WinCC Advanced Historical values
The WinCC Advanced connector is used to retrieve historical values from WinCC Advanced
when it is configured to log data to a database.
Inductive Automation
Ignition Real-time values
The Ignition connector is used to retrieve real time data from the Ignition OPC UA server. It
can also be used to write data back to the server.

Ignition Historical values


The Ignition connector is used to retrieve data from the Ignition Historian. The connector can
handle Ignition data logging that is set up for partitioning to span across multiple tables.

Ignition Transaction Group values


The Ignition connector is used to retrieve data from Ignition through the Transaction Group
interface.
Indusoft
Point of View Real Time values
The Point of View connector is used to retrieve real time data from Point of View OPC DA
server. It can also be used to write data back to the server.

Point of View History values (OPC HDA)


The Point of View connector is used to retrieve historical data from the Point of View
historian via the OPC HDA server provided.
Note, there are no server calculations available, only raw values can be retrieved. However,
XLReporter provides a suite of calculations that can be performed with this data.

Point of View History values (OLEDB/ODBC)


The Point of View connector is used to retrieve historical data from the Point of View
historian when it is configured to log data to a database.
Schneider Electric Software
ClearSCADA Real-time values
The ClearSCADA connector is used to retrieval real-time data from the ClearSCADA OPC
DA server.

ClearSCADA Historical values


The ClearSCADA connector is used to retrieval historical data from the ClearSCADA OPC
HDA server.
MySQL Support
MySQL is now supported for the following:
Database Groups
Analytics
Data Entry Forms
Management Database Export
Database Management (e.g., creating tables and columns)

On-Demand Reporting
Parameter Panel
Files from Folder
A variable configured for the Parameter panel can be set as Files from Folder. This is
configured with the Folder to retrieve files from, a Filter to determine which files to show and
a Date Limit to restrict the list based on modified date.
This control can be used with the Text File Discrete or DeltaV Event Chronicle connector to
retrieve data from the file specified.

User Guide - 15 -
Data Group
New Group
When creating a new data group for historical, form or analytic data, the Base on option is
provided to select an existing data group as a starting point for the new group. All the applicable
settings for the selected group are applied to the new group.

This can be useful if you have configured a group to retrieve raw values but want a second group
to get calculations from the same tags. By basing the new group on the group of raw values, all
the tags are brought into the new group to save you time. Also, if are converting from one
historian to another, you can preserve the existing groups to the original historian and create a new
set of groups to the new historian very quickly.

Find and Replace


The Group Builder now has a Find and Replace option which can be used to find and replace the
Name and Heading columns of the Columns tab as well as the Name column of the Filters tab.

This can be useful when creating reports for multiple lines where there is a group for each line and
the only difference in tag names are references to the line number.
HMI Startup
When the Scheduler is started from an HMI system like GEs iFIX, the Scheduler can register with the
HMI system so that when/if the HMI is shut down, the Scheduler is shut down as well.

Project Explorer
Restore Project
The Restore Project option allows you to restore a project that has been backed up using the
Backup Project option. This would be used when a project is moved from one location to
another.
Management
Presentation
Chart Enhancement
This function is added to enhance an existing chart to do such things as update data labels,
adjust the x and/or y axes or show a fixed number of tick marks on either axis.

Cross Tab on State Change


This function is updated to cross tabulate on any or a distinct match of values in a table.

2D Transformation
This function is updated to not only transform data but to transform any chart in the Data
Range. Using this functionality, a report may be set up as a calendar with a chart appearing
for every day of the month.
Analysis
Summarize Range
This function summarizes raw data on the worksheet into a set of summary calculations based
on an interval specified. Any Excel function can be used for this management function.

While it is possible to configure summary calculations manually in Excel, it is a very tedious


job where errors can occur very easily.
Data Export
Sheet To Workbook
This function exports a worksheet from the report workbook to an external workbook on the
local machine or across the network.

This can be used to move a report worksheet anywhere you need it including Excel
workbooks produced by other applications or manually constructed.

- 16 - User Guide
Range To Workbook
This function exports a range of cells from a worksheet in the report workbook to a worksheet
in an external workbook on the local machine or across the network.

This can be used to add process data or a summary of process information to an upper level
corporate report maintained by something else.
Data Import
From XML File
This function imports data from a table within an XML file. The entire table or specific
columns within that table can be imported.

This can be used to import any data stored in an XML file by any application into your report.

From Add-In Formulas


This function imports data from formulas provided by third party add-ins into the report and
then removes the add-in dependencies.

This can be used to retrieve data with add-in tools and then distribute the reports to anyone
without them needing to have the third party add-in installed on their machine.
Web Portal
WebReports.aspx
The left panel of the web portal is streamlined to display reports directly under their folders rather
than in a separate table. This allows you to see more report listings at a glance.
Variables
User Defined Variables
User Defined variables can be set by issuing a Set command from the Scheduler or from a script
run by the Scheduler. The value set to the variable is available until the reporting engine is closed
which happens after a 30 second period of inactivity.
Schedule Script
Processing
When processing Trigger section(s) in a script which are based on files, only files that are
closed (e.g. files that can be opened for writing) are considered.

Archiving
When processing Trigger section(s) in a script which are based on files, archiving each file found
can be enabled/disabled. To enable, either specify the File Archive setting in script or leave the
setting blank and create a sub folder named Archive in the File Source folder.
If neither of these are configured, when the script runs it drops a _lastprocessed.txt file in the File
Source folder. Subsequent executions of the script will look for this file and if it exists read the
time from it and only process files where the modified date is greater than the time stored. This is
necessary if XLReporter is processing files in a folder but those files cannot be moved
somewhere else.
System Check
General Check
Connector Verification
All the connectors configured in the project are verified during the general check and the
status of each one is displayed. This can be quite useful if the project is moved from one
machine to another to ensure every connector is functional on the new machine.

Exported Results
The results of every test performed during the general check are saved to SystemCheck.txt in
the log folder of the project. This makes it easier to troubleshoot any issues as this file can be
provided to a technical support specialist for analysis.

User Guide - 17 -
Issues Fixed
Historical Data
XLReporter Calculations
XLReporter time-weighted calculations can now handle raw sparse data, e.g., records where
some tags may be NULL while others may have data to produce time-weighted calculations.

Since many historians are configured to log data on change, this allows for the ability to produce
time weighted calculations across many tags logged at different frequencies.

OPC HDA Raw Values


Raw data is now shown as a sparse matrix with a single timestamp for every record. This is an
improvement from previous versions where the timestamp always corresponded to the tag with the
most records. Now everything is coalesced into a single table with a consistent timestamp.

OPC HDA Summary Values from XLReporter


Calculations can now be based on raw values retrieved from the server regardless of whether all
the selected tags are logged at the same frequency. In previous versions if tags were recorded at
different frequencies, this would revert to 30 second interpolated samples as data for the
calculations.

If tags are logged on changed in the historian and dont change very frequently, the calculation
engine will be much faster.

Time Period from Database


Corrected issue where if the table or column of a database used in as the time period of a group
was delimited the timestamps would not be retrieved.
Tag Browser
Emerson DeltaV Continuous Historian
Corrected issue where on some systems after the historical tag browser is closed the client license
was not freed up causing issues if only 1 client license was available on the system.

GE Historian
Corrected issue where only the first 5000 tags were shown in the browser.

Rockwell Automation RSLinx


The list of bits to select for a numeric value are updated to show .0, ,1, .2, etc. rather than \0, \1, \2,
etc.
Data Management
Trim Range
Corrected issue where if Start setting was set to Top and Bottom, only the bottom was trimmed.

2D Transformation
Corrected issue where in some cases, even if the Clear Data option was set to Yes or Yes
(extended) the data did not clear.
Scheduler
Event Scheduling
Corrected issue for On Change events where if a value changed from zero to non-zero or blank to
non-blank the trigger would not occur.

Corrected issue where if the RSLinx OPC server loses connectivity to a PLC the triggers would be
turned off until the Scheduler was restarted. Now, as soon as the connectivity is restored, the
triggers proceed as usual.
System Check
General Test
Corrected issue where if the Log folder did not exist on the system, it was not getting created.

- 18 - User Guide
Installation
When the installation is initiated, pre-requisites are checked and if they are not satisfied, such as the
correct version of .NET is not installed, it is provided to install.

To use the Team Portal or the Web Portal, the IIS feature of the Windows operating system has to be
turned on (see Web Portal).

Licensing
XLReporter is provided in four editions, Standard, Suite, Professional and Team. A comparison of
the editions can be found at www.sytech.com.

Editions can be installed in evaluation mode. In this mode a report template is limited to 15
connections and runtime will operate in two hour periods (which can be extended). For more
comprehensive evaluation modes, contact SyTech.

An evaluation license can be made permanent by installing a software license key which is obtained by
entering the unique lock code provided SyTech.

Software Requirements
The following software is required for all editions:
Microsoft Windows 7 or above or Windows Server 2008 R2 or above
.NET 3.5 framework

The following software is required for template design only:


Microsoft Excel 2007 and above

The following Windows feature is required on the server for the Team edition:
Internet Information Services

Windows 7 and Windows Server 2008 R2 Users


To use Windows 7 or Windows Server 2008 R2, Service Pack 1 or higher must be installed.

Excel 2007 Users


To use Excel 2007, Service Pack 3 or higher must be installed.

User Guide - 19 -
A Quick Overview

Overview
Reports are created from report templates. There are two ways to create report template, using the
Template Library or the Template Studio.

Template Library
The Template Library gets you reporting in minutes. Select a template from the library, select tags
and other parameters, configure a schedule and the template is automatically created. The library
wizard is a standalone application and does not depend on an install of Excel (see Template Library).

Any modification to the created template can be made in the Template Studio.

Template Studio
The Template Studio is built into Excel to provide all the tools to create and modify templates. A
template can harness all the features of Excel, such as charts and calculations, together with
XLReporter functions built specifically for industry.

The entire process of creating a template is point and click with browsers provided for easy selection
of the data sources.
Before Creating a Template
Before creating a template setup the following:
Data Connector
A data connector is used to define the data source for a template (see Connectors).
Creating a Template
At the core of creating a template, the following steps are need.
Blank or Import
A template can start from blank or be imported from an existing workbook such as a
regulatory State report.
Layout
Layout is performed using all the features of Excel.
Naming Convention
If the template is to create reports automatically, decide a naming convention for the report
worksheets and workbooks. For example, if a daily report is stored in a monthly workbook
then {DD} for the worksheet and MyReport_{MMM}{YY}) for the workbook would be
suitable.
Data Connections
Data connections define the information to be delivered to the report.
Deployment
Templates produce reports automatically from the Scheduler or on-demand from On-
Demand Reports. A wide range of publishing options such as PDF, Web Pages, Printer and
eMail can also be included as part of the deployment.

- 20 - User Guide
Project Explorer

Overview
The Project Explorer provides easy access to all the features of XLReporter. It is opened from the
Start menu of Windows or from the shortcut added to the desktop during installation.

The interface consists of a menu ribbon and multiple panes for viewing project templates and status.

Open a Project
From the menu select File, Open Project to create or open an existing project.

Select New Project to start the Project Wizard to guide you in creating a project or Open Existing
Project and choose a project (identified by a file with extension prj).

Settings made in the wizard can be modified later from the Project tab.

Backup a Project
From the menu select File, Backup Project to create a compressed copy of the project. The backup is
based on the configuration xlrProjectBackup which can be modified in Tools Tab, Application, File
Manager. By default this is set up to back up the projects Input directory as well as any logs or
reports generated within the last week.

Restore a Project
To restore a project that has been backed up using the backup option above, select File, Restore
Project. Browse to the .zip file of the backed up project and click Open. This can be very useful
when transporting a project from one machine to another.

Project Wizard
The Project Wizard guides you step-by-step in creating a new project.
Step 1
Enter the Project Name and Description. The Project Location determines where the
project will be saved. If there is no access to the data sources (working off-site) , select
Project Off-Line (see Project Settings).

User Guide - 21 -
Step 2
Specify the Folder where reports created in Excel format are saved. Choose a Default
extension (see Report Viewers).
Step 3
Specify the Folder where reports created in PDF are saved. Click Activate PDF Security to
add security to PDF files that are created to prevent unauthorized changes to the document
(see Report Viewers).
Step 4
Specify the Folder for where reports created as web pages are saved and settings for the
Welcome Page. Click Enable Web Portal to enable the web portal (IIS is required) and
provide settings (see Report Viewers or Web Portal).
Step 5
Configure data connector(s) to the data sources used in the project (see Connectors).
Optionally, specify a connector Catalog which will be used when the project is off-line.

Project Explorer Menu Ribbon


The Project Explorer menu ribbon consists of four tabs Home, Data, Project and Tools.

Home tab

To register the product or start an evaluation, select Register Product. This item opens the
registration dialog (see Product Registration). The current status of the license is displayed in the
right panel.

If security is enabled from the Project tab, User Accounts then Log On/Off is used to login users.

Templates are created in two ways. One way is to select a pre-defined template from the Template
Library and customize it for your application. The second is to create a new template in the Template
Studio.

Reports are produced from the template automatically from the Scheduler or interactively with custom
settings using Interactive Reports.

Secure viewers are provided to view reports in Excel, PDF and HTML format. The viewers do not
require pre-installed software (.e.g., the Excel viewer does not require an installation of Excel) and
allow managed edits to the report (see Report Viewers). The viewers can be accessed from a HMI
display.

To collect manual data, use forms. Data Entry Forms manage user data entry and store the data to a
backend database so the information can also be used for reporting e.g., operator rounds (see
Interactive Forms).

Data tab

Connectors specify the data source definitions such as a PLC or Historian (see Connectors).

- 22 - User Guide
To add flexibility to templates, Variables can be used instead of a hardcoded setting. The value of the
variables are assigned outside of the template e.g., from an interactive reports (see Variables).

Analytics compute aggregated data and optionally save the results to a database.

Define time definitions for processes that are not continuous e.g., the beginning and end of a batch,
start/stop of a pump. The definitions are used for data retrieval from historians and databases.

Project tab

The Settings is used to modify settings of the project such as the folder where the reports are stored.
When security is enabled, users capability is limited by their security privileges (see User Accounts).
Security has to be enabled for the Team edition.

Reports are produced automatically and in the background by the Scheduler. Schedules are defined
are created in the Designer to run commands on time or events.

Tools tab

The Database Manager is used to maintain databases such as add, remove tables and columns or
preview data stored in a table.

The DSN Settings is used to add and remove ODBC database sources (see DSN Settings). On both
64 and 32 bit operating systems, this can be used to configure 32 bit DSNs.

For reports that are emailed, either from the scheduler or interactively, use Email and SMS to specify
a mail server and user configurations.

For reports or files that are moved to/from a server using FTP (file transfer protocol), use FTP
Transfer to specify FTP Server configurations.

For reports or files that need to be managed, such as moving and purging, use File Manager to specify
file management commands.

Use Themes to maintain a consistent appearance of the reports. Themes can be specified for report
content, chart lines and conditional formatting.

To check the integrity of the installation and the communication to the data sources use System
Check. For quick access to adding and removing Data Groups use Connector Groups.

User Guide - 23 -
Project Explorer Panels

Left Panel
The left panel of the Project Explorer shows a list of all the templates defined in the project. Selecting
a particular template will update the lower half of the panel with the items defined in the template.

A template or a specific item in the template can be modified by double clicking the item or right
clicking and selecting an option.

Template Instance
A Template Instance is a set of Variable values and it can be used when a report is produced from
the template. Instances are displayed as branches under the template name.

Example : Suppose a report is required for three identical machines. One solution would be to create a
template for one machine, duplicate and modify for the other two. This approach can lead to
inconsistencies because any change in the template will have to be mirrored to the other two.
A better approach would be to create a master template for a machine and then to create three instances
from the master template, sharing the same Excel layout but containing their specific machine settings.

Template Instances are created from the Project Explorer or from On_Demand Reports.

From Project Explorer


Right click on a template name and select Create Instance. Note that only templates that contain
variables will enable this option.

- 24 - User Guide
On the General tab, enter the instance Name and an optional Description.
On the Variables tab, select values for the variables listed.

From On-Demand Reports


In the On-Demand Reports, click Instance.

Project Explorer Right Panel


The right panel of the Project Explorer shows the registration status of the project and a list of
licensed project components (showing which are enabled based on the license).

The status panel will turn yellow when registration times out. At this point open registration to extend
the evaluation period. If the panel is red then this indicated the project is off-line.

User Guide - 25 -
Project Settings

Overview
Project Settings such as folder names or web portal settings are accessed from the Project tab of the
Explorer menu ribbon. The settings are displayed when a new project is created and are edited from
the Project tab of the explorer.

General

The dialog shows the settings made when the project was created. Modify the Description.

To use a project off-site, i.e., without access to the physical data sources, set the Project Off-Line.
When a project is offline, two changes become apparent:
Browsing for items, such as tag names
Instead of a live list from the connector, the items from the connector Catalogs are shown.
Previewing templates
Instead of reading the actual value, a simulated value will be provided.

Excel Reports
Specify the Folder where reports in Excel format are saved and the Default extension.

PDF Reports
Specify the Folder where reports in PDF format are saved and, optionally, to enable PDF security.
Any changes to the PDF security will apply to any PDF reports created after the changes are made.

- 26 - User Guide
Two levels of passwords are provided; User Password to protect from unauthorized opening of the
file in a PDF viewer and Master Password to protect from security modifications in a PDF viewer.

When a PDF file is produced, it is encrypted according to the Encryption Level. The Permissions
determine the features available when the document is viewed in PDF viewer.

Use Embed Fonts to include TrueType and Type1 (Postscript) fonts used in the document. This
results in larger files but ensures portability across PDF viewers.

PDF reports are produced automatically using the Print Workbook to PDF and Print Worksheet to
PDF commands from Scheduler or the Save option in Interactive Reports and PDF Report Viewer.
In the case of worksheets, the command can be configured to output several reports to the same PDF
file.

Web Reports
Specify the Folder where reports in Web (HTML) format are saved.

To view web reports locally or from a Team client, a web viewer is provided.

Web reports can also be viewed from a web browser, by setting Enable Web Portal.

The web portal requires IIS to be installed. See Web Portal.

User Guide - 27 -
Product Registration

Obtain a License
Product registration enables the product to run either in evaluation or full modes. From the Project
Explorer, select the Home tab, Register Product.

Evaluation License
Enter the information required and select Start Trial to start the evaluation. When the evaluation
period expires, you can re-open this display and select Extend Trial.
The evaluation license runs continuously for two hours and limits the number of data connections to a
report template. When the product is registered, this limit is removed.

Full License
Select Enter Key to obtain the lock code. Contact SyTech and provide the lock code and product serial
number to obtain a key code.

Move a License
To move the registration to another PC, select Options, Move Registration to obtain a transfer code.
Contact SyTech and provide the product serial number and transfer code along with lock code from the
new installation.

- 28 - User Guide
System Check

Overview
Use System Check to perform a scan of the installation, and to repair any defects.

The File, Save from the menu is used to save the configuration for future use. In rare cases where the
XLReporter design studio option does not appear within Excel, use the menu option Tools, Repair
Design Studio.

Two tabs are displayed, Connector and General.

Connector
This Connector tab is used to verify reading/writing to the data connectors.

Select Add, choose a real-time Connector and some Items provided by the connector.

Click Start to have the values update at the rate specified in Edit, Update Rate. If the item support
writes, click Modify and set a new value for the items. To clear the list, click Clear.

The lower part of the display shows any errors that occurred when the items are read. In the lower right
are the scan times of various operations, Open Server items (ms) indicates the speed to establish
communications and Read Server items (ms) indicates the speed at which the items are read.

General
The General tab is used for general tests. Click the Start pushbutton to have the installation scan and
repair defects. When complete, the display will show the results of the scan. As part of the scan every
connector configured in the project is verified.

User Guide - 29 -
The results of the scan are saved to SystemCheck.txt in the Log folder of the project. This makes it
easier to troubleshoot the system as this file can be provided to a technical support specialist for
analysis.

- 30 - User Guide
User Accounts

Overview
User Accounts, if enabled, enforce user capability. For example, you may wish to allow a user to
view reports but not to generate them.

On a standalone installation users have full access unless security is enabled. In the Team edition,
user security is always enabled since it is used to validate remote users.

User accounts are configured from the Project Explorer by selecting Project Tab, User, Accounts.
If user account security has not been enabled, the following is displayed:

Enable Security and enter the administrators Password, and click OK. The next time this dialog is
opened, you will require the password to make any changes to users and groups.

User Groups
When a user account is created, it is made a member of a User Group which determines the
Permissions for the user.

Except for the Administrators group, all the Group Names can be customized together with the
associated Permissions.

Select Modify Groups.

In the left pane are the Group Names. In the right pane are the Permissions assigned to the group.

Report : Generate reports


Enables access to on-demand reporting (see Interactive Reports).

User Guide - 31 -
Report : Publish reports to the server (Team edition)
Enables access to Team clients to publish reports they have generated, back to the Team
server.
View : View reports
Enables access to view workbook and worksheet reports. (see Viewers).
View : View published reports on the server (see Team Portal)
Enables access to view workbook and worksheet reports on the Team server, published by
Team clients.
View : Edit scheduled reports
Enables access to edit and save scheduled reports (see Viewers).
Form : Edit and save forms
Enables access to edit and save forms (see Interactive Forms).
Form : Protect forms from edits
Enables access to lock forms from further edits (see Interactive Forms).
PDF : View PDF reports
Enables access to view PDF reports. (see Viewers).
Web : View web reports
Enables access to view web reports. (see Viewers).
XLR : All development tools
Enable access to the development tools (see Project Explorer).

Users
Users are assigned to a User Group. To define a user, either click Add User or select an empty row
in the grid and click the browse [] pushbutton.

Enter a User Name, Password, Comment and assign the user to a Member Of a group.
Note that the number of user is limited according to the product license.

Log On/Off
When user security is enabled, there are two ways for a user to log on and off. The first is from the
Project Explorer by clicking Home Tab, Log On/Off and the second is from the Team Project
Explorer. In both cases, the user specifies their user name and passcode.

- 32 - User Guide
Connectors

Overview
Connectors provide the definition of the data sources. An advantage of this approach is that a change
in the Connector definition does not have any cascading effect on other configuration performed in
the project.

Example : Suppose a group of report templates contain a reference to a Connector called MyDatabase
(a SQL Server database connector). If the SQL server is moved to a new location, then the definition
of MyDatabase is the only change required, no change is required to the templates.

From the Project Explorer select Data tab, Sources, Connectors to display the connectors defined
for the project.

The display provides options to Add, Modify or Delete a Connector and also to define an item
Catalog (see Item Catalog).

Defining a Connector
Click Add to open a list of the supported data source. Click on a vendor name to open the different
type of data sources supported for that vendor.

Select a data source and click OK to display the specifics for the selected data source.

User Guide - 33 -
See Connector Specifics about the specifics of each connector.

Item Catalog
An item Catalog is a collection of item names (such as columns of a database or tags of a historian)
that are used when the project is offline (see Project Settings).

Not all Connectors support an item Catalog. For those that do, the Catalog may be automatically
created when the Connector is defined.

The display shows the Connector name, the Catalog Name and a list of items defined in the catalog.
If this is the first catalog for the connector, then the Catalog Name is defaulted to the connector name.
Once the default has been created, subsequent catalogs can have custom names.

To add items to the catalog, click the browse () button on the grid and select the items (such as tag
names). When items are added to the grid, their description is also displayed, if it is provided.

The Name and Description can be manually edited by selecting a cell. The Type can be left blank or
set to Analog, Digital or Text to provide filters for the catalog when it is used.

Usage - Offline Project


When the data sources of a project are not accessible, the project can be placed offline (see Project
Settings) so that template development can continue.

When a project is offline, two changes become apparent:


When browsing for items, such as tag names, instead of a live list from the connector, the
items from the connector Catalogs are shown.
When previewing templates, instead of reading the actual value, a simulated value will be
provided.

- 34 - User Guide
Usage - Interactive Report
In an Interactive Report, variables that represent tag names can be assigned using the live list from
the connector. However, a smaller list of names is sometimes preferable e.g., for a report on
temperatures, show only the tag names that represent temperatures. In these cases, create a Catalog
and use that instead of the live list.

User Guide - 35 -
Variables

Overview
Variables are used as placeholders of information which can be assigned outside of the template. A
user selecting tag names for an on-demand report or the schedule setting the batch ID on the start of a
batch are examples of setting outside of the template.

Four types of Variables are provided:


Function
These read-write variables hold numbers, text and timestamps and are saved so that they can
be used over time. To configure see Variable Editor.
Usage:
- Variable connections in a report template
- Naming convention of a report template.
User Defined
These read-write variables hold numbers, text and timestamps that are not saved but rather
persist just for a report cycle. To configure see Variable Editor.
Usage:
- Interactive reports
Analytic
These read-write variables hold summary calculations of process readings. The variables can
be optionally configured to maintain a history of the calculations. To configure see
Analytics.
Usage:
- Snapshot of process values
- Statistics from process values over a period of time
Name Type
These read-only variables hold date and time values (see Name Types).

Variable Editor
The Variable Editor is used to configure Functions and view the current values of Functions and
Analytics (to configure see Analytics). The editor is opened from the Data tab of the Project
Explorer by selecting Variables.

In the Left view are the variable types and categories. Select a category to display all the configured
variables in the grid where Name is the name of the variable and Description is a description of the
variable.

- 36 - User Guide
To add/modify a Function or User Defined variable, select a row and double-click, click the Modify
menu option or select Modify from a right click. Note that Analytics are edited from the Analytic
Designer (see Analytics).

To remove a Function or User Defined variable, select a row and press the Delete key, click the
Remove menu option or select Remove from a right click. . Note that Analytics are removed from
the Analytic Designer (see Analytics).

The current value of a Function or Analytic can be viewed by selecting the variable and have its value
display in the Right view. Since they are multi-valued, the values are distinguished by a Field.

The Function variables also permit their values to be edited directly from the display by clicking Set
Value. This is helpful during development. In practice, their values would be modified by schedule
commands (see Scheduler).

Function Variable
Function Variables are read-write variables that are saved permanently so that their values can be re-
used at different times across different reports. The variables are used to hold numbers, text and
timestamps.

The Function Variables provided are:


Register
Counter
Date Time
Lookup

Register
A Register variable is a placeholder for a value.

To assign a value from a command or the scheduler;


Command: SET Variable Name Value
Scheduler: Set a Value to Variable

Example: Use a Register to hold the naming convention of a report and use it while the report is being
updated over a period of time.

The variable provides the following Fields:


:Cval (current value, optional)

User Guide - 37 -
Example: Use a Register in a tag name to provide tag aliasing. Using the Register called Reactor, the
tag alias name {Reactor}\TIC100\Level represents a physical name when a value is assigned to
Reactor.

Counter
A Counter variable maintains a count.

When used it increments its value by the Increment to a maximum value of Limit at which point its
value is Reset. If the Limit is zero (default) then there is no limit.

To reset the value from a command or the scheduler;


Command: RESET Variable Name
Scheduler: Reset a Variable

To change a value by the Increment from a command or the scheduler;


Command: UPDATE Variable Name
Scheduler: Update a Variable

Note that if a counter is used in a template for the connection Placement (see Data Connection) then
an UPDATE is performed automatically when the report is updated.

The variable provides the following Fields:


:Cval (current value, optional)
:Incr (increment
:Lmit (limit)
:Rset (reset)

Example: Use a Counter as part of an expression. Using the Counter called Index to increment each
time an event occurs and use it in an expression EventReport_{Index:Cval} as the naming convention
of an event report

Date Time
A Date Time variable is a placeholder for the start and end timestamps and durations of events. The
dates and times are stored using the regional settings of the operating system.

To store the start date and time from a command or the scheduler;
Command: RESET Variable Name
Scheduler: Reset a Variable

To store the end date and time from a command or the scheduler;

- 38 - User Guide
Command: UPDATE Variable Name
Scheduler: Update a Variable
The variable provides the following Fields:
:Date (start date)
:Time (start time)
:Edat (end date)
:Etim (end time)
:Span (span in the format DD:hh:mm:ss)
:Spdy (span in days)

Example: A machine cycle report uses Date Time variable MachineCycle to hold the start and end
time of the cycle. This variable can be used for the time period of a data group.

Lookup
A Lookup variable uses a lookup table to provide up to four text values from an input value (X).

To assign values from a command or the scheduler;


Command: SET Variable Name X Value
Scheduler: Set a Value to Variable

The variable provides the following Fields:


:X (X value)
:Y(1 to 4) (Y values)

Example: A template is configured with 10 group connections, each adding their own data to the
report. In a batch cycle, a batch phase activates a combination of groups to produce the report for that
phase. Use a Lookup function where X is the phase ID and Y are the group combinations.

Variable Parsing
Function and User Defined variables can be parsed to limit the length of the text when the variable is
used. To specify parsing, the following syntax is used:
{name, start, end, mode}
where
name is the name of a variable
start a start position determined by a character (from the start)
end is an end position determined by a character (from the end)
mode is the parsing mode; 1=left, 2=mid, 3=right

Example: The variable Tag1 contains the text value MIXER_FLOW_SETPOINT.


{Tag1,_,_,1} gives MIXER
{Tag1,_,_,2} gives FLOW
{Tag1,_,_,3} gives SETPOINT
{Tag1,X,T,2} gives ER_FLOW_SETPOIN

User Guide - 39 -
Analytics

Overview
Analytic variables are calculated by reading values from the process. They can optionally be
configured to record to a database so that a history of the values can be used for reporting purposes.

Most analytics are calculated in two steps. The first step is to update the value of the analytic
periodically and the second step is to store the analytic so that the value is available for use.

Example: Calculate the hourly maximum, and minimum of the mixer speed from one minute process
values.
Set the Update (see later) of the analytic to one minute to read the process value and refresh the
calculation. Note that the process value itself is not stored (except for the Snapshot analytic).
Set the Store (see later) of the analytic to one hour to stop the calculation of the current analytic and
start a fresh calculation.

If a history of the analytics is required, an analytic Connector is required to determine where the
history is stored. From the Data tab of the Project Explorer, select Connectors and choose
XLReporter, Analytic Database (see Connectors).

Analytic values are used in reports by using a Variable connection. If the historical values are
required, use a Data group connection (see Data Connection).

Analytic Designer
The Analytic Designer is used to configure Analytics and optionally maintain a history of their values
in a database. The designer is opened from the Data tab of the Project Explorer by selecting
Analytics.

The display consists of the two tabs Data Items and Schedule. The Data Items describe the analytic
and the Schedule determines when it is updated. To change or remove a Data Item, select the row
containing the item and click Modify or Remove.

To save changes click File, Save. If the scheduler is running, it will automatically reload the changes.

The Storage option is used to maintain a history of the analytics. Before using this option, configure
an Analytic connector.

- 40 - User Guide
Click Enable and select the analytic Connector where the history will be saved.. An optional Backup
Path can be specified to cache analytic history in the event of communication failure. When
communication is re-established, the cache will be forwarded to the storage of the Connector.

Schedule
The Schedule tab determines when Analytics are calculated. The settings in this tab are added to the
main Scheduler on Save (see Scheduler).

To add a schedule click Add.

In the upper part of the display select a Condition (see Scheduler) and an Action to perform when the
Condition is met.

User Guide - 41 -
An Action is performed when the Condition is met. These actions can also be initiated as commands
from third party applications and programming languages.

The Actions can apply to all the Analytics or a selection that has a specified Group number. The
Group is used to schedule analytics of the same type at different times.

Reset Group, Reset All


These Actions reset the analytic value(s). The reset automatically happens on a Store.

Update Group, Update All


These Actions update the value of the analytic value(s) using the process value assigned to the
analytic. This is not supported for the Snapshot.

Store Group, Store All


These Actions store the value of the analytic value(s) so that they can be used in a report. If historical
Storage is enabled, they are also saved to a database.

Purge
These Actions purge old records from the historical database that are older than Older(days) .

Data Items

In the Left view are the analytic categories. Select a category to display all the configured analytics in
the grid where Group is a group number, Name is the name of the analytic, Description is a
description of the variable, Connector and Source collectively define the item used to calculate the
analytic.

To add/modify an Analytic variable, select a row and double-click, click the Modify menu option or
select Modify from a right click.

To remove an Analytic variable, select a row and press the Delete key, click the Remove menu option
or select Remove from a right click.

To write a value to an Analytic Variable use the RESET, UPDATE or STORE commands from the
Scheduler, an interactive report or from a VB script.

Unlike Function Variables, Analytic Variables use values from process tags which are specified as
part of their configuration (see later).

- 42 - User Guide
Snapshot
A Snapshot stores the current value of analog and digital values of the process using value and time
deadbands. At the time of the snapshot, the values are also time stamped.

A Snapshot is stored on a Store action.

The Source value is not considered unless it satisfies the compression limits:
Value Limits
If enabled, the value must be within the limits specified.
Value Deadband
If enabled, the value must change from the previous value by the deadband (specified in
engineering units).
Time Deadband
If enabled, the value will be considered if the period has elapsed since the time of the last
store.

The variable provides the following Fields:


:Stdt (data and time)
:Cval (current value)
:Qlty (value quality, 1 = good)

Example:
Store the mixer temperature every 15 minutes.

Multi Snapshot
A Multi Snapshot stores the time stamps of two events together with the current values of the process
at the time of the first event.

A Multi Snapshot start date timestamp and Source value(s) are added on an Update and the end
timestamp on a Store.

User Guide - 43 -
The analytic provides the following Fields:
:Stdt (start date and time)
:Endt (end date and time)
:Durn (difference between the start and end in days)
:Cva(1 to 4) (current values)

Example: Store the start and end time of batch together with the batch information such as the batch
ID, product code and the operator who initiated the batch. This information can then be used in
conjunction with a continuous historian to produce batch reports.

Profile
A Profile stores metrics on discrete process values such as on /off counts and on/off durations. The
process value is regarded as being in the off state if its value is between +/-0.5 otherwise it is in the
on state.

A Profile calculation is updated on an Update and the end timestamp is added on a Store.

The analytic provides the following Fields:


:Stdt (start date and time)
:Endt (end date and time)
:Durn (difference between the start and end in days)
:Onct (on count)
:Onse (on duration in secs)
:Ondy (on duration in days)
:Onpt (on duration as a percent)
:Ofct (off count)
:Ofse (off duration in secs)
:Ofdy (off duration in days)
:Ofpt (off duration as a percent)

Example:
Store a profile of a digital process tag and use the metrics for downtime or utilization reports.

State Profile
A State Profile stores metrics on how long and how often process values have occurred in specified by
data ranges.

- 44 - User Guide
A State Profile count and duration are updated on an Update and the end timestamp is added on a
Store.

Up to four State ranges can be configured. The Source is compared to each state and, if the value is
in the data range, the count and duration of that state is updated. If States are Sequential is checked
then the calculation will be performed in a state until the Source value takes it to the next state.

The analytic provides the following Fields:


:Stdt (start date and time)
:Endt (end date and time)
:Durn (difference between the start and end in days)
:Cnt(1 to 4) (state count)
:Dns(1 to 4) (state duration in secs)
:Dnd(1 to 4) (state duration in days)
:Lov(1 to 4) (state low value)
:Hiv(1 to 4) (state high value)

Example:
Store a profile of product during each phase of its production and use the metrics for quality control
reports.

Difference
A Difference stores metrics on the difference of an analog value that represents a totalizer.

A Difference start/end time and value based on the value of Source is updated on an Update and the
end timestamp is added on a Store.

The signal Type is either increment (calculation is performed from the Source as it increments such
as a flow totalizer) or decrement (calculation is performed from the Source as it decrements such as a
weigh scale). If the Source rolls over at a certain value then this is specified by Rollover (0 means no
rollover). The Scale value is constant used as a scaling factor of the result.
The variable provides the following Fields:

User Guide - 45 -
:Stdt (start date and time)
:Endt (end date and time)
:Durn (difference between the start and end in days)
:Dfsd (date and time of start sample)
:Dfsv (value of start sample)
:Dfed (date and time of end sample)
:Dfev (value of end value)
:Dfcv (difference between the start value and end value)
:Dfsc (difference between the start time and end time in secs)
:Dfdy (difference between the start time and end time in days)
:Type (difference type)
:Roll (rollover value)
:Conv (scaling factor)

Example:
Store a difference of flow totalizers (weigh scales) and use the metrics for consumption reports.

Statistic
A Statistic stores statistical summaries for a process value. The values used in the calculation can be
filtered by value limits.

A Statistic calculation is updated on an Update and the end timestamp is added on a Store.

The Source value is not considered unless it satisfies the compression limits:
Value Limits
If enabled, the value must be within the limits specified

The variable provides the following Fields:


:Stdt (start date and time)
:Endt (end date and time)
:Durn (difference between the start and end in days)
:Totl (total)
:Maxm (maximum)
:Mxdt (time of maximum)
:Minm (minimum)
:Mndt (time of minimum)
:Rnge (range)
:Avge (average)
:Devn (deviation)

Example:
Store a statistics on process values use the metrics for summary reports.

- 46 - User Guide
Template Library

Overview
The Template Library is used to create fully report templates in a few easy steps. Even though the
output of the library is an Excel template, an installed copy of Excel is not required.

From the Home tab of the Project Explorer, select Template, Library.

Select a Template from the Library

Template names are displayed in the right pane. When selected, the left pane shows how the result
report looks like.

Select the Template Name and Connector

Enter a Name, a Description and the Connector that will be used to access data. The Reporting
Method determines if the template is to be used On-Demand or Scheduled.

Customize the Content of the Template


Each template has a set of values that can be customized. This can range from captions and labels in
cells to the addition/removal of Excel items. For Scheduled templates the tag names are also specified.

User Guide - 47 -
The next two steps are only applicable to a Reporting Method of Scheduled.

Setup a Schedule

Indicate the Period of time the report spans and the Start time. The rows (or columns) in the report
can be set at intervals. For example for a Period of 1 Day and an Interval of 1 Hour, the report will
contain 24 hourly rows.
If reports are collated into a single workbook, specify the Collate Period.

Select Publishing Options


Select options to automatically publish the report. Any options selected result in additional schedule
commands (see Scheduler)

Select alterternative file formats such as Web Page (HTML) and PDF.

For Email and FTP, a configuration has to be provided. The configurations are setup in Tools tab of
the Project Explorer and selecting Email and SMS or FTP Transfer.

- 48 - User Guide
Data Groups

Overview
Data Groups are used to fetch data from the source defined in a Connector and place it in a report.
The configuration of a group does not require any knowledge of how information is organized in the
Connector.

Data Groups are configured as part of a Data Connection definition in Excel (see Template Studio)
or from quick access methods (see Quick Access).

The features and settings of a Data Group depend on the Connector it is being built for. In general
they can be categorized as Real Time, History (historians), History (time based databases) or
Database.

Real Time Data Group


A Real Time Data Group is built with a real time connector, such as OPC-DA Server, to extract the
most current value. They can be used in snapshot reports as well as tabular reports. For tabular
reports, the group is used repeatedly to add new rows/columns say, every hour over a day.

Columns Tab
The Columns tab shows the tag Names configured in the group.

To select a Name, select a cell in the Name column, and click the browse button () to open the tag
browser. A Name can be one of three choices:
Physical name. Actual name of the tag (as configured in the server).
Variable name. A variable that can be assigned a physical tag name.
Static Variable name. Fixed text.

Variables (displayed in {}) provide a way to assign the tag names externally, e.g., when the group is
used interactively, the tag name is specified.

Static Variables (displayed in *{}) are considered fixed text for display only and is not used for data
retrieval. Select Treat As Text to configure.

Grid rows are moved relative to each other, Inserted or Deleted by right clicking on the left most
column or using the up/down and insert/delete keys on the keyboard.

User Guide - 49 -
When empty rows are set between two tags, the output of the group will contain empty rows/columns.
Use empty rows to prevent Excel calculations in the template from being overwritten in the report.

If the Scaling is left blank then the value is not scaled. By selecting Scaling the scaling dialog is
displayed (see Scaling).

The Heading shows the text that appears in the output in the Include Heading is enabled. This is fixed
text or a variable. By selecting Heading the heading dialog is displayed (see Heading).

By default the output has each selected column as a column. By selecting Transpose, each selected
column is displayed as a row.

History Data Group


A History Data Group is interface to a Historical Server, such as a historian or OPC-HDA server, to
extract raw or summary values over a time period. Where possible, they take advantage of the
calculations supported by the server however, they can also perform a wide variety of advanced
calculations using the raw data from server.

Configuring a History Group does not require any knowledge of how information is organized in the
historical server. Instead, the connection to the server simply requires the selection of tags, the type of
calculation and the time period.

Before a group can be configured, a connector to the Historical Server is required (see Connectors).

When a new group is created, the user is prompted to select the group type. Note that the selections
will depend on your server.

Summary Values from Server


Summary values are calculated by the Server e.g., flow average for each hour of the day.
Summary Values from XLReporter
Summary values are calculated by XLReporter. Select use raw values to base calculations on
raw values otherwise they will be based on sampled values from the Server e.g., flow average
for each hour of the day when the pump is running (see XLReporter Calculations).
Raw Value
Numeric values from the Server.
Raw Text
Text values from the Server.
Sampled Values
Sampled values from Server e.g., flow value at start of each hour of the day.
Live Values
Live values from the Server.

- 50 - User Guide
To create a new group from an existing, set Base on to the name of the existing group. This can be
useful if you have multiple groups that use the same tags or if you are converting groups from one
historian connector/type to another.

User Interface
The interface consists of multiple tabs which will be described later.

When complete, preview the result of the settings by selecting Preview in the menu bar (see Preview).
To save the group, select File, Save and provide a Name for the group that reflects its pupose.

Setup Tab
The Setup tab is to specify a Description and Retrieval (for group type Summary Values from
XLReporter).

Summary values are calculated by XLReporter from data from the Server. The Retrieval Mode
specifies whether the data from the Server will be the Raw Values or Sampled Values. In general,
using Sampled Values performs the calculation faster whereas Raw Values performs the calculation
more accurately.
If the mode is set to Sampled Values, the Rate determines the frequency of the samples.

Note that the caption of the builder shows the name of the group and the connector it is using. For
example the text Raw values ProcessData (MyHistorian) indicates that the group name is
ProcessData and that it interfaces to the connector MyHistorian for Raw values.

The Lead Time is subtracted from the Start Time of the Time Period tab before the values are
retrieved from the server. This is used for time weighed calculations.

For specific Connector settings see Connector Specifics.

User Guide - 51 -
Columns Tab
The Columns tab is used to specify the tag Name(s), Calculation, Scaling and Heading of the group.
Up to 40 names are supported by a group.

To select a Name, select a cell in the Name column, and click the browse button () to open the tag
browser. A Name can be one of three choices:
Physical name. Actual name of the tag (as configured in the server).
Variable name. A variable that can be assigned a physical tag name.
Static Variable name. Fixed text.

Variables (displayed in {}) provide a way to assign the tag names externally, e.g., when the group is
used interactively, the tag name is selected.

Static Variables (displayed in *{}) are considered fixed text for display only and is not used for data
retrieval. In the tag browser, select Treat As Text to configure.

Grid rows are moved relative to each other, Inserted or Deleted by right clicking on the left most
column or using the up/down and insert/delete keys on the keyboard.

When empty rows are set between two tags, the output of the group will contain empty rows/columns.
Use empty rows to prevent Excel calculations in the template from being overwritten by the output of
the group.

For group types that perform calculations, the calculation is performed over each Interval of the
Period specified in the Time Period tab. The list of calculations are either specific to the Server or
those provided by XLReporter (see XLReporter Calculations).

The Scaling is applied after the calculation has been performed. (see Scaling).

The Heading is included in the output if Include Heading is set. The Heading can be a specific tag
or a variable. In the case of variables, additional parsing data can be specified to limit the text length
(see Heading).

By default the output has each selected column as a column. By selecting Transpose, each selected
column is displayed as a row.

- 52 - User Guide
Time Period Tab
The Time Period tab is used to specify a Period and Interval which collectively determine the
number of rows of values produced by the group.
For example, suppose the calculation is average, the Period is 1 day and the Interval is 1 hour, then
the output will be 24 hourly averages.

The types of Periods available are Relative, Offset, Variable, Database and Endpoint.
Relative Period
Relative calculates the Period used using a Duration and Start. The Duration is specified in terms
of the Current or Previous duration unit. An optional Start At defaults to the current time if not
specified.

Example: Suppose the settings Duration Month, Start At not checked. The start/end of the Period on
12 April will be:
start end
Current 12 April 12 May
Previous 12 March 12 April

Example: Suppose the settings Duration Day, Start At 08:00. The start/end of the Period on 12
April 10:00am will be:
start end
Current 12 April, 8:00 AM 13 April, 8:00 AM
Previous 11 April, 8:00 AM 12 April, 8:00 AM

User Guide - 53 -
Offset Period
Offset calculates the Period using a Duration, Start and Offset. The Offset Period is a
generalization of the Relative Period to provide a higher level of customization.

Example: Suppose the settings Duration 1 Day, Start At 8:00am. The start/end of the Period on 12
April 10:00am for various offsets will be:
start end
No offset 12 April, 8:00 AM 13 April, 8:00 AM
Offset minus 1 day 11 April, 8:00 AM 12 April, 8:00 AM
Offset minus 1 month 12 March, 8:00 AM 13 March, 8:00 AM
Note that the first two examples produce the same result as Relative Period.
Variable Period
Variable calculates the Period from a combination of fixed values and variables (see Variables) for
the start and end. The end of the period can also be expressed in terms of a Duration.

Using Variables, external methods can be used to specify the Period. For example:
A user can define the Period on demand.
The scheduler can store the start and end of the Period for each batch or machine cycle.

- 54 - User Guide
Database
Database calculates the Period from a pre-defined Database Data Group. The settings for the Start
and End are identical to Variable described above except that instead of a variable, a column name is
selected.

If the Database Group returns more than set of start/end pairs, then the group is repeatedly executed
for each pair.

Using a Database Data Group, external methods can be used to specify the Period. If multiple
periods result from the database, they are processed repeatedly. For example:
A database group is configured to get the time of the minimum and maximum values from a
process. The history group can use this to retrieve process data from these times.
A database group returns alarm timestamps from the alarms that occurred on a particular day.
The history group can use this to retrieve values at the time of every alarm for that day.
Endpoint
Endpoint calculates the Period from a flexible set of parameters for the Start and End. This selection
is a generalization of Relative and Offset for custom settings.

The Start is configured by selecting Current day, Current day of week or Current day of month.
The Start At time indicates the start time which defaults to the current time. An optional Offset is
applied to the start by the amount specified.

The End is configured by by selecting Duration, Current day, Current day of week or Current day
of month. The Duration is from the Start.

Example: Suppose the setting for End is Duration, 1 Day. The start/end of the Period on 12 April,
10:00am will be:
Start start end
Current day 12 April, 10:00am 13 April, 10:00am
Current day, Start At 8:00am 12 April, 8:00am 13 April, 8am

User Guide - 55 -
Current day, Offset 1 Day 11 April, 10:00am 12 April, 10:00am
Current month, Day 1 ,Start 8:00am 1 April, 8:00am 2 April, 8:00am
Interval
The Interval determines the number of samples returned over the time period. For raw data retrieval,
this value limits the number of values returned. For calculated data retrieval, this value represents the
number of intervals over which each calculation is performed.
Count
For raw data retrieval, this represents the number of raw values returned. For summary
calculation it is used to divide the Period into equal time intervals. The value can be a
Variable.
All
This setting is only used for raw value retrieval. All the raw values in the Period are
returned.
Every
This setting is only for summary value retrieval. The interval specified is used to divide the
Period into equal time intervals (it may be adjusted if when it is not a multiple of the Period).
The value can be a Variable.

If the calculation is performed by XLReporter then a Limit can also be specified which is
defaulted to None. This setting determines if the entire interval is considered for the
calculation or the First/Last minutes specified e.g., by setting and interval of 1 hour and a
Limit of 5 minutes will produce a summary for the five minutes of each hour.

Filters Tab
The Filters Tab is used to filter the samples. They are supported by most Servers and are always
available for Summary Values from XLReporter.

The filter grid consists of a Name column and four Criteria columns. Within each Criteria, up to
eight Conditions can be specified. A Criteria is calculated by AND (ing) each Condition. The Filter
is calculated by OR (ing) each Criteria.

In the above example, the filter criteria is Flow >50 OR Speed>5

In the above example, the filter criteria is (Flow >50 AND Weight=100) OR Speed>5

The operators for the Conditions are:


Numeric
< less than
<= less than or equal
= equal
<> not equal
>= greater than or equal
Bitwise
^ all bits set
~ any bit set
!^ all bits not set

- 56 - User Guide
!~ any bit not set
Text
IS equal
IS NOT not equal
START WITH starts with
NOT START WITH does not start with
END WITH ends with
NOT END WITH does not end with
CONTAIN contains
NOT CONTAIN does not contain
IS NULL is null or empty
IS NOT NULL is not null or empty

The value for a Condition can either be fixed or a Variable.

Database Data Group


A Database Data Group is built with a Database connector, such as a SQL Server or Access, to
extract raw or summary values from a database.

Standard
The output is arranged in columns by the selected table columns.
For example: A table in a database contains columns DateAndTime, TagName and Value so
the output of a standard query produces:
DateAndTime TagName Value
1/1/05 12:00 Flow 100
1/1/05 12:00 Temp 200
1/1/05 12:00 Pressure 300
1/1/05 12:01 Flow 105
1/1/05 12:01 Temp 205
1/1/05 12:01 Pressure 305

Cross Tab
The output is arranged in rows/columns by the values of the selected table columns.
For example: With the TagName as columns and DateAndTime as the rows, the data
produces:
DateAndTime Flow Temp Pressure
1/1/05 12:00 100 200 300
1/1/05 12:01 105 205 305

Switching the columns and rows produces:


DateAndTime 1/1/05 12:00 1/1/05 12:01
Flow 100 105
Temp 200 205
Pressure 300 305

User Guide - 57 -
Additional sophistication can be added to the output by adding summary calculations. Instead
of raw values, calculate summary values over the hour to produce:
Hour of Flow Flow Avg Temp Sum Temp Pressure Pressure
DateAndTime Sum Avg Sum Avg
12 205.00 102.50 405.00 202.50 605.00 302.50

User Interface
The interface consists of several tabs which, collectively build an SQL statement.

When complete, preview the result of the settings by selecting Preview in the menu bar (see Preview).
To save the group, click Save and provide a Name for the group that reflects its pupose.

Setup Tab
The Setup tab is used to connect to the database represented by the Connector and selecting the
database tables.

The number of records in the output can be limited by the Records to Fetch setting.

When more than one table/view is selected, the Joins indicates the relationship between them. For
complex joins between many tables the user is advised to create a View in the database and use that
directly. Three join conditions are supported:
Inner Join
This produces as many records as there are records where there is a match between the joined
column values.

Left Join
This produces as many records as there are in the left table, producing null values for the
column values from the right table on the records where there is no match on the join
columns.

Right Join
This produces as many records as are in the right table, producing null values for the column
values from the left table on the records where there is no match on the join columns.

- 58 - User Guide
Columns Tab
The Columns tab is used to select the columns used in the output of the group.
Standard

Use the arrow buttons to move columns from the Available Columns list to the Selected Columns
list. To move the position of a column in the selected list, use the up/down arrow pushbutton.

To create a blank in the selected list, press the Insert key on the keyboard. This will cause an empty
row/column in the output.

Enable Show Headings to have the headings included in the output.


Cross tab

From the Available Columns, make a selection for Columns and then using the browse []
pushbutton, indicate the values that will determine the columns of the output.
From the Available Columns, make a selection for Rows to indicate the rows of the output and make
a selection for Values to indicate the content of the output.

Enable Show Headings to have the headings included in the output.


Expression/Summary and Calculations
These items in the Available Column list provide the capability to derive new columns from the
existing by apply functions and calculation. To add an item, highlight one of Expression, Summary
or Calculation and right click to open the appropriate dialog.

User Guide - 59 -
Filters Tab
The Filters tab is used to define a filter for the output.

The filtering conditions are: =, <>, >, >=, <, <=, LIKE, NOT LIKE, BETWEEN, NOT BETWEEN,
DURATION, IN, NOT IN.
The filter value can be fixed or be a variables enclosed in {}.

Order Tab
The Order tab is used to define the ordering of the output.

Group Tab
The Group tab used to define the grouping of the output. Note that this is used when there are
summary columns configured on the Columns tab.

Calculations Tab
The Calculation tab is used to define the client side calculations which will appear as sub totals and
grand totals in the output given by the Scope.

SQL Tab
The SQL tab is used to display the SQL statement based on the configuration.

The area above the SQL statement can be used to declare database variables (SQL Server).

A typical statement could contain:

DECLARE @StartDate DateTime


DECLARE @EndDate DateTime
SET @StartDate = 2006-07-04 00:00:00
SET @EndDate = 2006-07-05 00:00:00

- 60 - User Guide
The variables @StartDate and @EndDate can then be used in the Filter of the Query group. This can
greatly increase the speed at which the data is returned from the database.

Calculations
XLReporter Calculations are performed over each Interval or the Period defined in the Time
Period tab.

The calculations are based on either raw or sampled values using a Connector to identify the Server,
sampled values being the preferable method. For example, suppose a calculation is required from a
historian that is logging every second. If raw retrieval is used then 86400 samples will retrieved for
the calculation whereas if sampled retrieval (every minute) is used then this is reduced to 1440. Raw
retrieval is more accurate, sampled retrieval is faster.

Before the calculations are performed, the samples are filtered using the settings on the Filter Tab.

Calculations are either raw or weighted. For raw calculations, the actual sample value is used. For
weighted calculations, the derived samples value (from a stepwise curve) and the length of time is
used. Typically for process values weighted is used.

For example t0 to t1 represents an Interval and 3 values are recorded as shown.

The raw average for the Interval is 20 + 30 / 2 = 25. The time weighted average using the stepwise
curve (shown in dashes) is (10 * 2 + 20 + 30) / 4 = 17.5. Note the propagation of the 10 into the
interval.

General
Interpolated
The first interpolated sample in the interval
First Sample
The first sample in the interval
Time of First Sample
The timestamp of the first sample in the interval
Last Sample
The last sample in the interval
Time of Last Sample
The timestamp of the last sample in the interval
Maximum
The largest sample in the interval
Time of Maximum
The timestamp of the largest sample value in the interval
Minimum
The smallest sample value in the interval
Time of Minimum
The timestamp of the smallest sample value in the interval
Count

User Guide - 61 -
The count of the number of samples that satisfy the specified Condition
Integral
The weighted average multiplied by the Scaling
Average
The average of the samples in the interval

Total
The total of the samples
Standard Deviation
The standard deviation of the samples in the interval

Variance
The variance of the samples in the interval calculated as the square of the standard deviation.
See Standard Deviation.
The variance is a measure of far a set of values is spread out from the average. A value of 0
indicates that the values are identical to the average, whereas a small variance indicates that
the values are close to the average.
Good Quality
The count or percentage of samples with good quality in the interval

Accumulation
The accumulation is a running total of the samples in the interval.
First Accumulation
The accumulation of the first sample in each interval
Last Accumulation
The accumulation of the last sample in each interval

Difference
The difference is used to calculate consumption from energy meters and totalizers. The Type setting of
indicates if the value is rising (energy meter) or falling (weigh scale). The Rollover and Reset values
are used for signals that reset when they reach a maximum/minimum value.
First Difference
The difference of the first sample in each interval
First Accumulated Difference
The accumulated difference of the first sample in each interval
Last Difference
The difference of the last sample in each interval
Last Accumulated Difference
The accumulated difference of the last sample in each interval

Advanced
Mean Kinetic Temperature
The Mean Kinetic temperature (MKT) is a simplified way of expressing the overall effect of
temperature fluctuations during storage of transit of perishable goods. The Actn.kJ/mol
setting is the heat activation, default to 83.144 kJ/mol. The Temp.Unit is the unit of
temperature.

- 62 - User Guide
Sample Analysis
Sample Count
The count of the samples that satisfies up to two Condition(s).
Sample Duration
Days or Percentage of a day the samples satisfy up to two Condition(s).

Performance Analysis
Performance Analysis is used to calculate utilization and performance such as the number of times and
the duration a signal is in/out of specified conditions e.g., SPEED>0. The calculations are performed
on either raw samples or samples derived from a stepwise curve.
State Count
The count of how many times a value satisfies up to two Condition(s).
State Duration
The duration in hours of how long a value satisfies up to two Condition(s).
ON Count
Count of how many times the value changed from 0 to non-zero (rising edge)
OFF Count
Count of how many times the value changed from non-zero to 0 (falling edge)
ON Duration
Amount of time value is non-zero. Can be expressed in days or as a percentage of total
duration.
OFF Duration
Amount of time value is zero. Can be expressed in days or as a percentage of total duration.
Availability
ON Time divided by the Interval. The number is between 0 and 1.

Energy
Energy Management calculates the energy release/emissions produced by the consumption of various
fuels.
Produced Energy
The energy is calculated for a Fuel Type (gas, coal, petroleum) in the specified Energy
(KWhr, KCal, MCal, MJ, GJ, BTU).
Produced Emission
The emission is calculated for a Fuel Type (gas, coal, petroleum) for the specified Gas (CO2
carbon dioxide)

For more information see http://www.eia.gov/tools/faqs/faq.cfm?id=82&t=11

User Guide - 63 -
Pulse Analysis
Pulse analysis calculates peak and valley information about a value. Momentary changes in the
signal can be filtered from the calculation by specifying an optional Deadband in terms of an
Absolute change in the value or a Percent change.
Pulse Count
Count of the number of pulses for a specified pulse type (positive or negative) and
Threshold. For example, if the pulse Type is positive and the Threshold is 80, then the
Pulse Count increments for the complete cycle of increasing beyond 80 and the decreasing
below 80.
Pulse Maximum
Maximum value of all the positive pulses only
Time of Pulse Maximum
The timestamp when the Pulse Maximum occurred
Pulse Minimum
Minimum value of all negative pulses only
Time of Pulse Minimum
The timestamp when the Pulse Minimum occurred

Scaling
The value produced by a data group can be Scaled using a Formula or limit Conditions.

Formula scaling provides three operators with values.


Example: A tag contains the flow rate in gallons/minute. To calculate the total flow in MGD perform
an average on the tag value and then scale with *1440/100000.
Example: A tag contains the temperature in Fahrenheit. To convert to Celsius scale use the formula
-32*5/9.

Condition scaling provides up to three Limits that provide up to four ways the value can be scaled.
The scaling supported are:
Specific Value
Column Value
Column Value that has an applied Formula

Example: When a tag value is below 0.001, display the text negligible otherwise show the value.

Example: When a tag value is below 100, display blank otherwise scale the value by 1000.

Example: A digital tag contains the state of a pump. When the value is less that 0.5 display OFF,
otherwise ON.

- 64 - User Guide
Example: A tag contains the temperature of an oven. Display LOW, MEDIUM and HIGH at
specified temperature thresholds.

Heading
When Include Headers is selected on the main display, up to two headers can be included in the
output of the group. To change a heading, select the cell in the Heading column and click the browse
pushbutton [].

Headings can be fixed text, a Variable or a combination of both. A variable would normally be used
when the tag name is also a variable.

When a Variable is used, sub strings can be created using the Parse Mode. The following options are
available:
Before Start
Substring contains all the characters before the Start character
After End
Substring contains all the characters after the End character
Between Start and End
Substring contains all the characters between the Start the End character

Preview
Preview is opened from the Preview menu option. To preview the output of the group settings click
the Refresh pushbutton.

Multiple instances of Preview can be opened to compare data.

If the group contains Variables, they are listed in the display so that values can be specified.

User Guide - 65 -
Variables in Data Groups
When variables are used in data groups, their usage becomes more flexible since the variables can be
given a value when it is deployed.

Example: A group contains a variable representing a tag which is set by the scheduler on an event.
Example: A group containing variables for the start and end times so that they can be set from an
interactive report.

The following group settings can be specified as a variable:


Names
Tag Names
Headings (including parsing)
Start Time and Offset
End Time and Offset
Interval
Filter conditions

Quick Access
Data Groups can be accessed for modification by selecting a template from the main window of the
Project Explorer and double-clicking the group from the template items in the bottom of the Left
View.

Another direct method is to use the Connector Group application for creating and modifying Data
Groups. From the Project Explorer select Tools tab, Diagnostic, Connector Groups to display all
the connectors defined for the project and the data groups that are using them.

If a data group references a connector that does not exist, it is displayed with a red image. In this case,
the group can be re-assigned to a different connector by selecting Assign and choosing the new
connector.

- 66 - User Guide
Template Studio

Overview
In addition to the Template Library, the Template Studio is used to design templates to produce
reports automatically, on-demand or both. The both report templates and form templates are created in
the studio.

A Report template is used to create and publish reports automatically according to a schedule or
interactively by a User. It is a workbook of one or more worksheets that contains:
layout of your report using Excel features such as formatting, formula and charts
Report Names of the report produced from the template e.g., Flow_{MMM}{YY}
Data Connect to data servers, e.g., real time, history or relational database
Data Connect to management for advanced processing of the report data
Interactive Designer settings for interactive reports
Schedule settings for automatic reports and publishing

A Form template is used for manual data entry management. It is a workbook of one worksheet that
contains:
layout of your form using Excel features such as formatting, formula and charts
Data Link to a relations database (managed by the Database Management tool)

Reports are produced from templates using the proprietary reporting engine which is takes XLS
templates to XLS, PDF and HTML reports. An installation of Excel is not needed on the target
workstation.

Studio Ribbon
The Template Studio is built into Microsoft Excel so templates can harness over 400 functions, charts
and formatting capabilities in addition to the XLReporter functions that are specifically built for
process automation.

From the Home tab Project Explorer, select Template, Studio. To open an existing template, double
click the name in the left pane. The studio ribbon is displayed.

Most ribbon items will display as a panel which is initially at the left edge. To move the panel, click
and hold the mouse on the panel title and then drag to the location of choice.

Template
Templates are at the heart of reports. A template is a workbook file containing one or more
worksheets that represent the desired report. The content of a template consists of a layout of standard
Excel features combined with features provided by XLReporter that are specifically for industry.

When a template is processed, the naming convention configured is used to create a report and the
report is populated with the data from the Data Connections. After any Data Management, the
report is saved to XLS, PDF and HTML file formats or sent as an E-mail.

User Guide - 67 -
Templates are processed from the Scheduler, periodically or on events, from pushbutton clicks on
an HMI, from VB scripts or interactively from remote workstations. In every case, a report is
produced from the template.

New
To create a new template, select Template, New.

Enter a Name using only the characters permitted for a file name and a Description (optional). Set
Template to Report (the template is used to create reports automatically according to a schedule or
interactively by a User) or Form (template is used for manual data entry management).

To import a template select <import template> from the drop down list.

Click OK to load the template. Change the layout of the template by using Excel features such as
formatting, charts and formulas.

Open
To open an existing template, select Template, Open.

Double-click a template to load.

Save As
To save changes to a template, select Template, Save. To save the template to a different name, select
Template, Save As.

- 68 - User Guide
Content
The Content option is used to select a theme. If no theme is required, select None.

The Content Chart and Design options, together with Data Connect will adhere to the theme selected
(see Themes).

Note that when a cell reference is required for a setting, the following symbol is shown by the entry
field . Click on the entry field to place the cursor inside it and then click on the desired cell on the
worksheet to automatically add the cell reference to the entry.

Chart
The Chart option is used to add charts to the template. Column, Line, 2 Axis, Bar and Scatter charts
are provided. The chart line colors are determined by the active theme which default to Excel colors if
no theme is active.

Most charts support both Lines, Markers or both. Enter an optional Title for the chart.

The Chart Values determine what is displayed on the chart. Select a cell range for Vert (Y) to
indicate the values for the y-axis of the chart. If this range contains headers then check Header Rows
and specify the number. The Hori (X) is an optional cell range and represents the labels on the x-axis.

The Line and Column charts support control lines which are shown as horizontal lines on the chart.
Use the Upper Limit and Lower Limit to add upper and lower control lines.

The 2 Axis chart requires a second set of values for the secondary y-axis Vert. (YS).

Design
The Design option is used to add various Excel elements to the template. Header, Calculation
Summary, Conditional Formatting, Page Setup and Cell Locking are provided. If content is added
to the template, the content colors are determined by the active theme.
Header
For a Header, select the Target cell range where the header is to be placed, enter a Title and select an
optional image. Click Insert.

User Guide - 69 -
Calculation Summary
For a Calculation Summary, select the Source of the values used in the calculation (this can be more
that one row or column), specify the direction to Summarize and select the Target cell where the
summary table is placed.

The summary will display the calculations selected, adding Labels and Borders is they have been
enabled. Note that if Labels are added to the summary table then the column to the left, or the row
above the Target is used for the labels.
Conditional Formatting
For Conditional Formatting, enable a Rule and specify a Range where a condtion is applied.

Cells that satisfy the condition in the Range will be colored according to the theme.
Page Setup
For Page Setup, specify the print settings such as Page, Margins, Header/Footer and Sheet.

- 70 - User Guide
Click Print Preview to view the effect of the settings.
Cell Locking
For Cell Locking, select the range of Cells to Lock/Unlock or perform this action to All Cells.

By default, all the cells of a template are locked so that when the reports are viewed in the Report
Viewer, their content cannot be edited. By unlocking cells allows the user to add comments to the
report but at the same time limit the extent of the edits (see Report Viewers).

Settings

General
The General option is to modify the template Title and Description. If security is enabled (see User
Accounts), then the user groups permitted to access the template are listed.

Report Names
The Report Names define the name of the report generated from the template. The naming rule is
also applied to PDF and Web Pages.

For example: A template called ABC has the Report Names {DD}{MMM}{YYYYY}.
For the Save Workbook to Web Page(s) action on June 4th, 2015, the resulting file for using various
values for the Target (second setting) is:
Target Result
web folder\04Jun2015.htm
XYZ web folder\XYZ.htm
{YYYY}\ web folder\2015\04Jun2015.htm
{YYYY}\XYZ web folder\2015\XYZ.htm
c:\MyReports\XYZ c:\MyReports\XYZ.htm
c:\MyReports\{YYYY}\ c:\MyReports\2015\04Jun2015.htm
\\MyServer\{YYYY}\ \\MyServer\2015\04Jun2015.htm

Names can be specified at both the workbook and worksheet level.

User Guide - 71 -
Select Report Names. In the Template column, the template workbook and worksheet names are
displayed. In the Report column, the workbook and worksheet masks are shown for the report
produced from the template. If the reports are managed in folders, then the Folder column displays
the folder mask.

The masks are a combination of static text, date/time, variables and name types.
Static Text
Text can be included in any part of the mask.
Date/Time
Date and time formats.
Variable
A Variable, enclosed in {} can be included in any part of the mask provided its value does
not violate the Windows file naming convention. The value of the Variable is normally
assigned before the template is used. For example, use a custom variable {BatchName} in the
mask and set the value of {BatchName} to the value of a PLC tag.

The Overwrite column indicates if the Report exists, it is overwritten.

Select a row and click Modify to edit the masks.

The mask items can be seelcted by clicking the browse [] pushbutton.

- 72 - User Guide
Worksheet
All the worksheets in the workbook are listed. Each can have a Report name configured. The * is
default that when set is used for any worksheet without a specific name.

Schedule
The Schedule option is used for templates will produce reports periodically, on time or event (see
Scheduler).

Interactive Designer
The Interactive Designer is used for templates contains Variables. The designer provides designate
the mechanism used by a User to assign values to the Variables. For example, a Variable
representing a date would have a date picker assigned (see Designing Interactive Reports).

Data

Connect
The Connect option is used for report templates to define the data connections and management
functions on the template (see Data Connect).

Link
The Link option is used for form templates to define the relationship between template and a database
(see Designing Interactive Forms).

Report

Preview
The Preview option is used to preview the template as a report (see Interactive Reports).

Open
The Open option opens a list of reports displayed in folders and subfolders. Select a report to open it in
read-only mode. Select the folder in the upper part and double-click this file in the lower to load.

Cells
The Cells option provides the same functionality as Excel but ensures that any data connections,
management connections and database links affected by the operation are also modified.

Note that for report templates, deleting a row or column where a data or management connection is
configured has no affect whereas for form templates, the data links are deleted.

Insert
Inserts entire rows or columns at the selected row or column
Example: Select columns G and H and click Insert. Two columns are inserted at G and H pushing
the current columns to the right.

If rows or columns are copied to the clipboard, the Insert option inserts the content of the
clipboard which is the same behavior as Excels Insert Copied Cells option.

Delete
Deletes entire rows or columns from the worksheet.

User Guide - 73 -
Tools

Data Variables
The Data Variables option is to add and modify the variables of the project (see Variables).

Database Manager
The Database Manager option is used to maintain tables and columns in a database (see Database
Manager).

User Accounts
The User Accounts option is used to enable security and configure users (see User Accounts).

Excel Considerations
Saving Templates
When a template is saved, use the Template, Save option since this saves the workbook and other
compiles a list of worksheets in the workbook for other uses.

Copying an Existing Template


To create a new report template from an open template, use the Template, Save As option since this
saves the workbook and the configuration to the new template.

Adding/Deleting rows and columns


Use the Cells, Insert/Delete option to insert or delete rows or columns so that changes in the position
of cells also affect the data connections.

Renaming Worksheets
If a worksheet is referenced by data connection, renaming the worksheet will invalid the connections.
In such cases, use the Export function provided in Data Connection, replace the old worksheet name
with the new one and then use Import to update the configuration.

Printing Reports and Forms


When a report or form is printed, the page layout defined in Excel is used for every worksheet. These
settings are accessible under the Page Layout tab in Excel.

Print Area
By default when a worksheet is printed, every populated cell appears on the printout. Excel provides
an option to set the print area of a worksheet so that only a specific range of cells appears on the
printout. This can be defined for each worksheet by highlighting the cells to print and selecting Page
Layout, Print Area.

Comments
By default when a data connection is configured a comment is added to the target cell. The comment
appears as a red mark in the upper right hand corner of the cell and can be removed if desired.
In Data Connections set Auto Comment to No to turn comments off.

Security
Reports viewed using the Report Viewer, both locally and with a Team Client, are read-only. If
manual edits are to be permitted, then the cells in the template need to be unlocked. To unlock a cell
right-click and select Format Cells. In the Protection tab, uncheck Locked.

This security is applied to interactive reports that are generated using iReports.

- 74 - User Guide
The same security is extended to Form Templates so any cells that user must enter data into should be
unlocked.

In addition, any cell containing an Excel formula is automatically protected against editing regardless
of whether any security is applied to the report.

User Guide - 75 -
Data Connect

Overview
Data Connect is used to configure data sources and data management to the template. When a report
is created from the template, the data connections provide the information for the report.

From the design studio ribbon, select the XLReporter, Data, Connect.

The display is a moveable pane that is moved by holding the left click on the title and dragging. The
configuration is performed on two tabs, Data and Manage.

Menu Options
The Data and Manage can be shown together by clicking the Split pushbutton.

To create a new connection, enter values in the left panel and clicking Add to add a new row in the
grid. To modify a connection, highlight the connection in the grid to copy it into the left panel, make
changes, and then click Modify.

If bulk changes are required, click Export which will export the grid to a worksheet. Make the
changes on the worksheet and then click Import.

When grid entry is made, a comment is automatically added to the cell to reflect the setting. The
comments are purely cosmetic and can be removed or Reset. Comments can be turned off by clicking
the arrow to the left of Reset.

Left Panel
The Left Panel is where settings are made and changed.

The Scope indicates which worksheet the connection will apply to. By selecting Any Sheet, the
connection is applied to all worksheets. The Any Sheet setting is typically used in cases where
multiple worksheets use the set of connection. When a template update occurs involving a worksheet,
only the connections associated with the worksheet will be active.

The Group is another mechanism to control which connections are active at any one time. By default,
all connections are assigned to group 0 (all groups). When a template update occurs with a group
number (UpdateGroupBook and UpdateGroupSheet), only the connections associated with the group
number will be active.

- 76 - User Guide
Example: Update a report every 15 minutes and export the totals at the end of the day.
Assign the connection for the 15 minute updates to group 1 and the export to group 2. In the Scheduler
add commands that refer to group 1 every 15 minutes and group 2 every day.

Note that connections configured to group 0 are updated when any group is updated. Group numbers
between 0 and 99 can be assigned.
Source
This section defines the data source of the connection. Select a Connector and a data group given by
Name. If no data groups have been define select <add group> and then click the browse []
pushbutton to define a new group.

In the case of a Real Time connector the <add tag> is used for single values or arrays. For arrays
the syntax is Name[start, direction, end] where Start is start register Direction is the symbol | (array is
placed in a column) or (array is placed in a row) and end is the end register.

Example: [01|12]Temp 01Temp to 12Temp in a column


Pressure[1-5] Pressure1 to Pressure5 in a row

In addition, Variables can be used as part of a Real Time connection. For example, when the
connection Flow{RG000} is used, the current value of RG000 is substituted in the Real Time
connection. If the current value of RG000 is 01, then the value for Flow01 is used in the report.

The Expressions and Variables are always listed and represent date/time keywords and project
variables (see Variables).
Placement
This section defines the placement of the Source. Select a Cell where the source is placed by either
entering it directly or placing the cursor in the edit box and then clicking the cell on the worksheet.

The placement can be direct or relative to the Cell according to the Type settings.
Direct
The Source is placed directly into the cell given by the Cell.

Offset
The Source is placed in a row or column (see Direction) relative to the Cell according to the
value of the Offset. The Offset can be an XLReporter counter variable (e.g., CR000) or a
time based calculation (e.g., mM/15, 15 minute offset of the month).

Append
The Source is appended onto the end of the existing data in the row or column relative to the
Cell according to the Direction.

Insert At Start
The Source is inserted at the Cell in the specified Direction. Any content below or to the
right of the insertion is moved down or across.

Insert At End
The Source is inserted at the end of the existing data in the row or column relative to the Cell
according to the Direction. Any content below or to the right of the insertion is moved down
or across.

User Guide - 77 -
Data Management

Overview
Data Management functions, such as statistical analysis, are functions that that are applied to report
after it has been populated with data. They provide numerous features such as handling of dynamic
ranges and importing/exporting from a workbook.

Categories
Worksheet
This set of functions is used manage template content such as charts or formatting for
dynamic ranges i.e., when the number of rows (or columns) of data in a report is not known
during template design. For example, an Event depends on the number of events that occur, a
Batch report depends on the duration of the batch, and an Interactive report depends on user
selections.

Presentation
This set of functions is used for presentation beyond those provided by Excel.
For example: Add a chart to report data each time a condition is satisfied, such as every 8
hours.

Analysis
This set of functions provides statistical analysis functions.
For example: Produce X-Bar, R-Bar, Pareto charts and Histograms.

Logic
This set of functions provides conditional report updates.
For example: Include alarms in the report if a value is out of tolerance.

Data Export
This set of functions export worksheet data to relational databases (like Microsoft SQL Server
or Access), process tags, XLReporter Functions, or file formats such as CSV and XML.

Data Import
This set of functions import data from workbooks, worksheets and text files.
For example: Import the daily summary into a monthly report.

- 78 - User Guide
Configuration
Data Management is configured by selecting Data, Connect from the Design Studio ribbon in Excel
and then selecting the Manage tab.

The Active By settings determine which worksheet or Group will activate the function. With the
defaults, Any Sheet and a Group set to 0, the update of any worksheet causes the management function
to be processed.
However, setting a sheet, the function will only activate on the update of that sheet. Likewise, by
setting a Group number greater than zero, the function will only activate when a command is issued
with that Group number (see Scheduler).

The Type is a list of function that depends on the Category selected.

The cell range that the function is applied to is determined by the Apply To settings where the Start
cell(s), Direction and the End condition collectively determine the range.
Start
If the Start is set to a range, then it is used regardless of the other settings.
If the Start is either a single cell, single row or single column then it is used with the
Direction setting as follows:
Single cell and the Direction is Down (variable columns) or Across (variable rows).
Use this configuration when the number of rows and columns in the actual range are
unknown.
Single row and the Direction is Down.
Use this configuration when the number of rows in the actual range is unknown.
Single column and the Direction is Across.
Use this configuration when the number of columns in the actual range is unknown.
Direction
Determines how the Start setting is expanded (Note that some management functions do not
support all the Direction options described below). For Down (variable columns), the Start
is expanded across in columns until the first empty cell is found and then the range is
expanded down in rows.
For Across (variable rows), the Start is expanded down in rows until the first empty cell is
found and then the range is expanded across in columns.
End
This determines when the expansion of the range stops.
Edge cell is empty
The range is expanded until the first empty cell in the leftmost column or topmost
row (depending on Direction) is found.

User Guide - 79 -
All cells are empty
The range is expanded until the first entirely empty row or column (depending on
Direction) is found.
First empty cell
The first empty cell in each row (or column) is determined and then the range is
expanded to the topmost (or leftmost) cell relative to the range.
Last empty cell
The last empty cell in each row (or column) is determined and then the range is expanded
to the bottommost (or rightmost) cell relative to the range.

For example: A history connection placed in $B$4 provides a date/time and 4 columns. If a border is
required around the report data then the Apply To settings are $B$4:$F$4, Down, All cells are empty.

Some functions, such as CopyRange, require a Target. The Type determines if the output is placed
Direct into the Cell, Offset relative to the cell, Append to the empty cell starting at Cell or Insert at
the cell moving existing values.

Worksheet
This set of Data Management functions are used for dynamic ranges i.e. when the number of data
rows/columns cannot be predicted when the template is created.

AutoFit Range
The AutoFit Range changes either the Column Width or Row Height to fit the content of the Apply To
range.

Border Range
The Border Range function draws a border around the outside (and optional inside) of the Apply To
range. Select the Thickness, Color, Inside Border and Line Style to describe the border. In the case
of Color, a RGB numeric color in the format R,G,B can be specified.. For example, a grey border
could be specified as 128,128,128.

Chart Range
Before using Chart Range, place a chart in the template workbook using the standard chart tools of
Excel. If the horizontal axis is to be date/time then configure the Axis Type to Text.

The chart can have a fixed number of series or the function can add/remove series as required.
Fixed number of Series
Configure the chart series to the topmost row of where the report data will be shown.
Variable number of Series
Configure the chart series to the top left cell the report data will be shown and let the function
add/remove series.
If series are added, properties like color, weight, thickness are determined by the defaults of
Excel.

From Chart Name, click the chart browse pushbutton [] and select the chart. This will
automatically fill this setting. If the chart series are variable then set Add/Remove Series to Yes.

The remaining settings are for the axes.


X-Axis Ticks
The number of tick marks and labels displayed on the x-axis of the chart. Set this to 0 to
automatically determine the number of tick marks and labels.
Note this setting has no effect on an XY scatter chart.

- 80 - User Guide
Y-Axis Scale
The scaling of the Y-axis of the chart. Set to None to use the configured scaling, Automatic
to determine the minimum and maximum as the minimum/maximum of the values of the
series plus +/- 1% or Custom to use the values from the cells.

In the case of Custom, the minimum and maximum are determined by the values in the Y-
Axis Minimum and Y-Axis Maximum which are cell references. The value in the cell may
be hard coded or derived using a formula.

Example: Add some values in the range $B$4:$E$9. Highlight the row $B$4:$E$4 and insert a line
chart making sure each column is its own series.
Configure the Chart Range function by setting the Source Start to $B$4:$E$4 and use the chart
browser to select the Chart Name. In preview the chart series, originally on row 4, are now extended
to row 9.

Clear Range
The Clear Range function clears the contents and/or the of the Apply To range. Options are provided
to clear All (content and formatting), Contents only or Formats only.
The clear option Errors clears cells containing the error #REF or #DIV/0! In the case of #DIV/0 the
cell content is cleared. In the case of #REF the part of the formula that is causing the #REF is removed
in an attempt to correct it. For example, if cell contains the equation =$A$3+$A$4+#REF then it will
become =$A$3+$A$4. If the formula cannot be corrected then it is cleared.

Collapse Range
The Collapse Range function removes empty columns from the Apply To range. The collapse is
performed on the Apply To range, adjusted by Extended Rows (two values separated by a comma).
The first value in Extended Rows is the row extension above the Apply To range and the second is
the extension below.

Before collapsing, any #REF that cannot be corrected (see Clear Range) is cleared.
After collapsing, Adjust Column Width set to Yes will adjust the remaining columns widths to fit the
data in the column.

Example: A plant has 3 production lines. Line 1 has 3 mixers and 3 extruders. Line 2 has 4 mixers and
2 extruders. Line 3 has 2 mixers and 4 extruders.
Instead of creating a template for each line, create a single template for the worst case scenario (4
mixers and 4 extruders).

When the report is generated for Line 1 the header is placed in row 1, data is placed in row 3 and
empty columns for Mixer 4 and Extruder 4 (since this line does not have these assets):

User Guide - 81 -
Applying Collapse Range with Apply To start set to $B$3:$J$3, Extended Rows set to 0,2, the
empty rows are removed.

Copy Range
The Copy Range function copies the Source range and pastes it to the Target Cell using the Target
Type operation such as Direct, Offset, Append and Insert.

The Paste option determines what is copied to the Target from the Source. Selecting All to copy all
the content, format and formula whereas the other settings provide specific attributes.
If the copy is performed to a Target that already contains values, the Operation determines how the
copy will occur. Set the Operation to None to copy the Source over the Target whereas the selection
of an arithmetic Operation combines the values.

The Skip Blanks set to Yes prevents empty cells in the Source overwriting cells in the Target.
For example: Copying cells D5:F5 with E5 empty to the range A1 to C1 does not overwrite the value
in cell B1 (since E5 is empty).

Setting Transpose to Yes will transpose the Source before it copied to the Target. In this case the
Source and Target cannot overlap or this function generates an error.

Example: To copy a number of rows of data starting at A2 to D2, paste them to the next empty cell at
or beneath F4.

Use the settings:


Source $A$2:$D$2, Down, All cells are empty
Target $F$2, Append, Down

Cut Range
The Cut Range function cuts the Source range and pastes it to the Target Cell using the Target Type
operation such as Direct, Offset, Append and Insert. All formats, formulas and values from the
Source are pasted to the Target.

If Delete Range is set to Yes then the Source range will be deleted shifting the adjacent cells according
to the Shift Cells setting (either Up or Left).

- 82 - User Guide
Delete Range
The Delete Range function deletes the Apply To range, shifting the adjacent cells according to the
Shift Cells setting (either Up or Left). If shifting is not required then use the Clear Range function.

Fill Range
The Fill Range function takes Formulas or All values and fills them in all the rows or columns (based
on Direction) determined by the Base range. If the Formulas contain absolute cell references, such as
$B$4, they remain fixed during the fill operation.
After the fill operation, the formulas in the filled cells can be removed by setting Place Formula to
No. Apply the format of the Formulas cells to the fill range by setting Apply Format to All to copy
all the content, format and formula whereas the other settings provide specific attributes.

Example: The formula at cell E2 is =SUM(A2:C2)*$A$1 (note that $A$1 will not change during the
fill).

To fill the formula to row 7, use the settings:


Base On $A$2:$D$2, Down, All cells are empty
Formulas $E$2

Filter Range
The Filter Range function applies filtering to the Apply To range. The Filter can be applied to the
cells Value or Difference. Only rows/columns of data that satisfy the Condition remain, all others are
removed. For text based filtering a Case Sensitive option is provided.

If Delete Records is set to Yes then every record (row or column) that does not meet the Condition is
deleted shifting every row beneath it or every column to the right upwards or to the left. This means
that any additional data beneath or to the right of the filtered range is shifted as well. When set to No
any addition data beneath or to the right of the filtered range is left in place.

If the Filter is set to Difference then a Type (either Raw or Dead band) and a Display (either All,
Leading or Trailing) must be selected. For the Filter set to Value these settings have no effect.
For the Type Raw the difference is calculated by taking sequential pairs of values depending on the
Direction specified). The Display setting All will remove both the previous value and current value if
the Condition is not satisfied. With Leading the previous value is removed and or Trailing, the current
value is.

Example: Filter the filter A<>118 or B<>77 starting on row 2.

Use the settings:


Source $A$2:$D$2, Down, All cells are empty
Filter Value
Type Raw
Condition $A<>118 OR $B<>77

User Guide - 83 -
Filter Browser

The Filter Browser is used to construct filter conditions. The values can be hard coded number, text
string, or a cell references. When filtering text values using LIKE or NOT LIKE operators, the wild
card (%) can be used. For example, %ABC% filters any text containing ABC, whereas %ABC filters
any text ending with ABC.

Format Range
The Format Range function applies formatting in the Apply To range Based on the Topmost Row or
Leftmost Column of the range.

As part of the formatting, background stripes of color Stripe Color can be added to the range at a
Stripe Interval. In the case of Stripe Color, a RGB numeric color in the format R,G,B can be
specified. For example, a grey stripe is specified as 128,128,128. Set Border Range to Yes to add a
border.

When Adjust Column Widths is set to Yes, the column widths of the Apply To range is adjusted
based on its content.

Formula Range
The Formula Range function adjusts formulas determined by the Base settings. When the formula is
added, it need only reference the topmost or leftmost cells of the Base since this function will adjust
the formula. Only relative cell references (e.g., with no $ like A1) are adjusted within the formula.

If Place Formulas is set to No the formulas are removed, leaving behind the result.

Example: A1 contains the formula =SUM(A2)+$D$1 and B2 contains the formula =SUM(B2)+$D$1.

To apply the formula to rows 2 to 7, use the settings:


Source $A$2:$B$2, Down, All cells are empty
Formulas $A$1:$B$1

If Place Formula is set to Yes then click on A1 or B1 to see the modified formula.

Lookup Range
The Lookup Range function converts values based on a lookup table. Standard Tables such as
On/Off are provided for converting 0/1 values. The lookup table consists of an X and Y column where
the X column is used to for the lookup and the Y column is used for conversion. If the X column is
numeric, then it must be specified in order.

- 84 - User Guide
Select a Table for the lookup. For Custom the Table Range is set to the upper left column of an X
and Y lookup table.

The function takes each value from the Apply To range and uses the lookup table and Lookup Mode
to convert it. After conversion, the Target Cell determines where the result will be placed using the
Target Type placement.
Example: To overwrite all the values in the Apply To range with the values from the lookup table, set
the Target Type to Direct and the Cell to be the upper-left cell in the Apply To range.

Set Paste to All to copy all the content and format of the Y column whereas the other settings provide
specific attributes.

The Lookup Mode specifies comparison method used compare a value from the Apply To range with
the values in the X column:
Exact
The X that matches the value.
Smaller
The smallest X which is larger than the value.
For each cell of the range, the value written to the Target is derived from the largest value
smaller than or equal to the value in the lookup column.
Larger
For each cell of the range, the value written to the Target is derived from the smallest value
larger than or equal to the value in the lookup column.
Closest
For each cell of the range, the value written to the Target is derived from the closest value in
the lookup column. Note that if the value from the range falls in the middle of two values in
the lookup column, then the smaller is used.
Interpolated
For each cell of the range the value written to the Target is derived by interpolating the value
between the larger and smaller values in the lookup column. The formatting of the target
comes from the smaller of the two lookup table values.
If the value to look up is outside the range of the lookup table, it is clamped to the largest or
smallest value in the lookup table.
This mode expects the value column (Y) in the lookup table to be numeric. If the values are
non-numeric, Lookup Mode reverts to Closest.
Example: Consider the following lookup table
X Y
10 100
20 105
30 125
The result for a value of 20 and 24 for each Lookup Mode is:
Lookup Mode 20 24
Exact 105 empty
Smaller 105 105
Larger 105 125
Closest 105 105
Interpolated 105 113

Example: Convert speed values so that values less than 10 show SLOW and values greater than 50
show FAST.

User Guide - 85 -
Use the settings:
Source $E$3, Down, All cells are empty
Target $E$3, Direct
Setting Custom, $G$3, Larger, All, No

Replace Range
The Replace Range function replaces all occurrences of Find What in the Apply To range with the
Replace With value.

To replace only the Find What values that exactly match, set Match Entire Cell to Yes otherwise set
to No.
Example: With Find What set to 10 and Replace With set to 2 and Match Entire Cell Contents set
to No, a cell containing 101 is changed to 21.

Example: Replace all the cells containing ??? with a blank.

Use the settings:


Source $B$3:$E$3, Down, All cells are empty
Setting ???, , No, No

Sort Range
The Sort Range function sorts the Apply To range based on sorting conditions. Up to three sorting
conditions can be specified in Sort By, Then By and Then By.
Sort Browser

This browser is used to construct sort conditions. The condition can be entered by selecting it and then
clicking a column/row heading in the worksheet.

- 86 - User Guide
Example : Sort the values starting at B3 to E3 by the Temperature in C3.

Use the settings:


Source $B$3:E$3, Down, All cells are empty
Setting $C DESC

Text Range to Column


The Text Range to Column function breaks up the values (numbers or text ) in the Apply To range
based on a Delimiter.

Example: Break the text in the B column based on the backslash delimiter.

Use the settings:


Source $B$3, Down, All cells are empty
Target $D$3, Direct
Setting \

Trim Range
The Trim Range function trims the top and/or bottom (or left and/or right depending on Direction) of
the Apply To range until a Condition is reached. The Start indicates if records are removed from the
Top, Bottom or both the Top and Bottom.

The range is trimmed until the Condition is reached which is entered using the Filter Browser (see
Filter Range). If Delete Records is set to Yes, the cells below the Apply To range are shifted
upwards.

Example: Remove the rows where the Speed <= 10.

Use the settings:


Source $B$3:E$3, Down, All cells are empty
Setting Top and Bottom, $E > 10, No, No

User Guide - 87 -
Presentation
This set of Data Management functions are used for presentation beyond those provided by Excel. For
example, adding a chart to report data each time a condition is satisfied, such as every 8 hours.

Chart Enhancement
The Chart Enhancement function operates on an existing chart to adjust some of its components like
data labels and axes to make the chart more user-friendly. For example, an XY scatter chart
configured over a day showing timestamps can leave a gap on the left and right. Using this function,
the X-axis can be adjusted to span only the day with nothing extra.

For each series of the chart, data labels may be turned on so the value of each point is labeled.
However, if the values are textual, the labels show as 0. If you wish to show the textual values for
each point, set Adjust Data Labels to either In-line or Alternate.

In-line data labeling displays the label of each point in the same position, e.g., if the data label of the
first point is set above the point, the label for each subsequent point of the series appears above the
point.

Alternate data labeling alternates the position of the data label for each point. For example, if the data
label for the first point is above the point, the next is below the point, then above again and so on. This
can be useful if the text of the data labels overlap with each other.

The number of tick marks displayed on the X and Y axes can be specified or left as 0 to keep the
default.

The minimum and maximum of both the X and Y axes can be adjusted based on the First Series or
Custom values.

First Series means that the minimum and maximum values are derived from the values in the first
series of the chart. If the values are numeric, the minimum is reduced by 1% and the maximum is
increased by 1% before they are applied to the chart.

Custom means that the minimum and maximum values are derived as the minimum and maximum
values from the cell range specified in the Custom Scaling setting.

Cross Tab on State Change


The Cross Tab on State Change function examines each value in the Key column of the Apply To
range for the specific values in the State column. When a value in the State column equals Value 1,
the range given by Range 1 is copied to the Target Cell and the Key is retained. Thereafter, when a
value in the State column equals Value 2, the range given by Range 2 is added into the row with the
matching Key originally added by Range 1.

The Key setting may be left blank if all the State values pertain to the same key. For example, if the
State values are only for a single pump, there is no need for a Key column. However, if multiple
pumps are retrieved (with a column indicating which pump the State value belongs to), a Key column
is necessary to distinguish one pump from another.

The State Change setting determines what is placed when the State column equals Value 1.
Any means that any match of the State column with Value 1 results in Range 1 being copied
to a new row in the Target Cell.
Distinct means that only the first match of the State column with Value 1 results in Range 1
being copied to a new row in the Target Cell until the State column equals Value 2.

- 88 - User Guide
The Range 2 Placement determines how Range 2 is placed in the Target.
Direct means that Range 2 is placed directly to the right of Range 1.
Append means that Range 2 is appended to the first empty cell at or to the right of the Target
column.
Insert At Start means that Range 2 is inserted at the Target column pushing the Range 1 data
to the right.
Insert At End means that Range 2 is inserted immediately to the right of the end of the Range
1 data.

Example: Calculate runtimes from an event log of machine starts/stops.

Use the settings (the duration is a formula):


Source $B$3:F$3, Down, All cells are empty
Key $E$3
State $F$3
State Change Any
Value 1,2 On, Off
Range 1,2 B4:E4, B4
Range 2 Placement Append

Insert Into Range


The Insert Into Range function takes a Collection (a group of Excel items such as formulas and
charts) and inserts them above, below and within the Apply To range. The function can be used to
insert subtotals and charts.

Two Collections (range of cells containing the Excel items) can be specified, the Top Collection and
the Bottom Collection. The Top Collection is inserted at the top of the range (if Insert Mode is set to
All) or at each leading change in Column. The Bottom Collection is inserted at each trailing change
in Column or at the bottom of the range (if Insert Mode is set to All).

If the Collection contains formula, the Paste setting determines whether the formula or just the
resulting value is used.

Inserted Collections can be outlined by setting Add Group to Yes. In this way the collection can be
expanded and collapsed. Note that by default, when an outline group is collapsed, the content of a
chart referencing the collapsed area is removed. This can be prevented by right clicking the chart in
the Collection, select Select Data, click the Hidden and Empty Cells button and check Show data in
hidden rows and columns.

User Guide - 89 -
Example : Add a subtotal showing the average temperature of each tank.

The collection contains an average in H3 = AVERAGE(D3)


Use the settings:
Source $B$3:D$3, Down, All cells are empty
Bottom Col. $F$3:$H$3
Column $B

Outline Range
The Outline Range function removes repeating values in rows or columns (depending on Direction)
in the Apply To range. The function removes repeats on the first column. It then removes repeats on
the next column only if there was a repeat on the previous column. This continues until the range is
completed.

After removing repeats, empty rows (or columns) can be removed by setting Delete Empty to Yes.

Example : Remove repeating values starting on row 3.

Use the settings:


Source $B$3:E$3, Down, All cells are empty

Propagate Range
The Propagate Range function repeats the value and format of non-empty cells down (or across) into
empty cells within the Apply To range. This function can be used to overcome the limitation of Excel
charts handling sparse data.

Example : Fill empty cells starting on row 3.

Use the settings:


Source $B$3:E$3, Down, All cells are empty

- 90 - User Guide
Stack Range
The Stack Range function stacks groups of columns of data in the Apply To range by placing the
leftmost column of the group in the Target and leaving the remaining columns in place. This function
can be used to combine data logged at different intervals.

The number of columns in a group is given by the Column Group Count. The number of rows in the
header of the data is set in Rows in Header. When the stack is complete, the result can be ordered by
setting the Sort value.

If the results are sorted, duplicate values in the Target are combined together to form a single row.

Note that the Apply To range does not need to include the first group since that is already correctly
positioned.

Example : Combine raw data for Speed, Temperature and Flow into a table with a common timestamp.

Use the settings:


Source $D$3:G$3, Down, All cells are empty
Target $B$3
Settings 1, 2, Yes

2D Transformation
The 2D Transformation function takes values from the Apply To range and places them at the
Target using the Row Offset and Column Offset values. If the offsets are not zero based e.g., day of
the month, then the Row/Column Origin can be set to reflect this.

The Data Range indicates the data copied which can be one cell or a range of cells. The formatting
from the Data Range can also be copied if the Apply Formatting is set to Yes. In addition, if the
Data Range contains a chart, that chart is moved along with the data when executed. Please note,
charts cannot be moved across worksheets, they can only be moved on the same worksheet.

Example : Display temperature 2 in in a minute/hour display.

Note the two additional columns hour and minute using Excel functions which are used to detemine
the placement of the temperature value (in practice these would be hidden).

Use the settings:


Source $C$3:E$3, Down, All cells are empty
Target $D$22
Row Offset $F$3
Col Offset $G$3
Data Range $D$3

User Guide - 91 -
Value Limit Range
The Value Limit Range function filters/color codes the Apply To range based on a Low Limit and
High Limit using Show Values to show All, Between Limits or Outside Limits. If Show Values is All,
no values are removed but can be color coded to show they violate the limits.

Values can be color coded by Low Format, Between Format and High Format which can be a
variable or and RGB numeric color in the format R,G,B can be specified. For example, a grey could be
specified as 128,128,128.

If an empty row (or column) remains after the filter is applied it can be removed by setting the Delete
Empty Rows to Yes. In this case, the Extended Columns is the number of rows and columns in the
header above or to the left of the Apply To range to include in the deletion.

Example: Color code temperatures below 140 and greater than 200.

Use the settings:


Source $C$3:E$3, Down, All cells are empty
Limit 140, 200
Settings All, Sky Blue, None, Light Red

Weave Into Range


The Weave Into Range function weaves a Collection range into the Apply To range, preserving the
formatting of each if requested.

The function compares each value in leftmost column of the Collection range to the leftmost column
of the Apply To range. When a match is found, the row in the Collection range is placed into the
Apply To range based on the Weave Mode setting. If a match is not found, then the location of the
closest match is determined. Note that the values of the leftmost column of the Apply To range must
be ordered.

The Weave Mode determines how the values from the Collection range are written to the Apply To
range.
Column Insert
The value of the leftmost cell of the Collection range is copied to the leftmost cell of the
Apply To range. The remaining values in the Collection range are copied to the right edge of
the Apply To range.
Row Append
The values in the Collection range are copied to the right edge of the Apply To range. If no
match is found, a Column Insert is performed at the location of the closest match, the leftmost
column of the Collection range is copied to the leftmost column of the Apply To range and
the remaining columns in the Collection range are copied to the right edge of the Apply To
range.
Replace Blanks and Errors
The values in the Collection range are copied over only blanks and error in the Apply To
range .

To clear the collection data, set Clear Collection to Yes. If the Collection also has headers above, set
Clear Collection to Yes (extended) to remove the headers as well.

- 92 - User Guide
Example : Combine alarm data into process data.

Use the settings:


Source $B$3:E$3, Down, All cells are empty
Collection $G$3:H$3
Settings Column Insert, Yes, No, Expanded, Yes

Analysis
This set of Data Management functions are used for statistical analysis.

Conditional Summary
The Conditional Summary function generates summary values from the Base range using the
Calculation(s) specified and places the results as a table at the Target.

The values from the Base range can be filtered before the calculations are performed. This is specified
in Condition by using the browser provided. Note that if no values meet the condition specified, ???
is written to the report for the Average, Maximum and Minimum calculations. A 0 is written for the
Count and Total calculations. The Condition can refer to a single row/column or a range

If the Condition is textual and case is important, set Case Sensitive to Yes.

Labels can be added to the data. If the Direction is Down or None, labels appear to the left of the data.
If the Direction is Across, labels appear above the data.

Example : Calculate the average, maximum and minimum.

Use the settings:


Source $C$3:E$3, Down, All cells are empty
Target $C$13
Calculation Average, Maximum, Minimum

Correlation
The Correlation function examines the measurements in the Base range and places their correlation in
a table at the Target. The table displays each combination of column pairs.

Correlation determines whether the two measurements tend to move together i.e., large values of one
tend to be associated with large values of the other (positive correlation), small values of one tend to be

User Guide - 93 -
associated with large values of the other (negative correlation) or the value are unrelated (correlation
near 0). Correlation coefficient is scaled to lie between -1 and +1 inclusive.

The equation for the correlation coefficient is:

Example : Determine the correlation coefficients of temperature data.

Temp 1 and Temp 3 are in positive correlation


Use Setttings :
Source $C$3:E$3, Down, All cells are empty
Target $C$16

Covariance
The Covariance function examines the measurements in the Base range and places their covariance in
a table at the Target. The table displays each combination of column pairs.

Covariance determines whether the two measurements tend to move together i.e., large values of one
tend to be associated with large values of the other (positive covariance), small values of one tend to be
associated with large values of the other (negative covariance) or the value are unrelated (covariance
near 0). Covariance is not scaled.

The equation for the covariance coefficient is:

Example : Determine the covariance of temperature data.

Use Setttings :
Source $C$3:E$3, Down, All cells are empty
Target $C$16

Descriptive Formula
The Descriptive Formula function generates values from the Base range using the Formula(s)
specified and places the results as a table at the Target.

The formula(s) can be Excel formulas that have the cell references replaced by # symbol.

Labels can be added to the data. If the Direction is Down or None, labels appear to the left of the data.
If the Direction is Across, labels appear above the data. Labels are derived from the formula name.

- 94 - User Guide
Example : Calculate the average of the absolute deviations of temperature.

Use Setttings :
Source $C$3:E$3, Down, All cells are empty
Target $C$13
Formula AveDef(#)

Descriptive Statistics
The Descriptive Statistics function generates statistical values from the Base range using the
Statistic(s) specified and places the results as a table at the Target.

The statistics provided are:


Average
The arithmetic mean.
Count
A count of non-empty cells
Kurtosis
Characterizes the relative peakness or flatness of a distribution compared with the normal
distribution. Positive indicates a relatively peaked distribution while negative indicates a
relatively flat distribution
Maximum
The largest value
Median
The middle value
Minimum
The smallest value
Mode
The most frequently occurring value
Range
The difference between the maximum and the minimum,
Sample Variance
The variance
Skewness
Characterizes the degree of asymmetry of a distribution around its mean. Positive
skewness indicates a distribution with an asymmetric tail extending toward more positive
values. Negative skewness indicates a distribution with an asymmetric tail extending
toward more negative values.
Standard Deviation
The standard deviation is a measure of how widely values are dispersed from the average
value (the mean).
Standard Error
The Standard error of the mean.
Total
The total.

User Guide - 95 -
Labels can be added to the data. If the Direction is Down or None, labels appear to the left of the data.
If the Direction is Across, labels appear above the data.

Example : Calculate the kurtosis and standard deviation of temperatures.

Use Settings :
Source $C$3:E$3, Down, All cells are empty
Target $C$13
Statistic Kurtosis, Standard Deviation

Exponential Smoothing
The Exponential Smoothing function is used to smooth out irregularities (peaks and valleys) to easily
recognize trends.

The function uses the smoothing constant () which is associated with the Damping Factor (1- ).
The larger the damping factor, the more the peaks and valleys are smoothed out. The smaller the
damping factor, the closer the smoothed values are to the actual data points.

To include a Standard Error column, set Standard Error to Yes.

Example : Smooth the trend of a temperature

Use Settings :
Source $C$3, Down, All cells are empty
Target $D$3
Setting 0.3, No, No, Yes

Histogram
The Histogram function calculates individual and cumulative frequencies for a cell range of data and
data bins. It also generates data for the number of occurrences of a value in a data set.

The bins are defined by setting the Bin Range. If the Bin Range is 0, every unique value in the Base
range will be a bin (this can be used for text grouping). If the Bin Range is greater than zero, then the
bins are equally spaced between the minimum and maximum values of the Base. If the Bin Range is a
cell range, the cell values are used.

In addition to frequency distribution, additional Calculation(s) can be selected which will appear
alongside the Target. The Calculation(s) provided are
Percentage
This calculates the percentage of frequency for each bin.

- 96 - User Guide
Cumulative Percentage
This calculates the cumulative percentage of frequency for each bin.
Rank
This calculates the rank of frequency for each bin.
Percentile
This calculates the percentage rank (percentile) of frequency for each bin.

By setting Pareto to Yes, the table at the Target is shown in descending order of frequency.

Example : Show the frequency of process events in order of occurrence.

Use Setttings :
Source $C$3, Down, All cells are empty
Target $E$3
Setting 0, Yes

Moving Average
The Moving Average function projects values in the forecast period, based on the average value of the
variable over a specific number of preceding periods. A moving average provides trend information
that a simple average would mask. Use this to forecast sales, inventory or other trends.

The number of preceding values is given by the Interval which can be a fixed number or a cell
reference.

To include a Standard Error column, set Standard Error to Yes.

Example : Show the moving average and standard error of a temperature.

Use Settings :
Source $C$3, Down, All cells are empty
Target $D$3
Setting 3, Yes

Summarize Range
The Summarize Range management function is used to summarize a table of raw data based on an
Interval specified. For example, if the worksheet contains 1 minute raw samples over day, the
Summarize Range function can derive hourly calculations for those samples.

The Formulas for the first set of calculations are configured on the sheet and from there the
subsequent formulas are derived and added to the report. If you do not require a summary formula like

User Guide - 97 -
Average or Max, but rather, want to show the value every X seconds, this function can do that. For the
formula, enter the top cell you want to show surrounded by parethesis, e.g., (B3). This can also be
used to show the timestamp at the beginning of each Interval.
Example: Show the hourly average of 2 temperatures from 1 minute raw data.

Use Settings:
Source $B$3:$D$3, Down, All cells are empty
Formulas $G$3:$H$3
Interval 60
Place Formula Yes
Apply Formatting All

Logic
This set of Data Management functions provide conditional report updates. For example, only when a
report value is out of tolerance will the report include alarms.

Cell Value
The Cell Value function monitors the cell value Criteria specified using a browser. When the
conditions are met, it executes all the connections that have a group number included in the
Workbook Group setting.

The Workbook Group can be a single value, multiple values separated by a comma or a cell
reference.
Example: If a cell value is greater than 95, then include the alarm data in the report.

Range Value
The Range Value function monitors the range value Criteria specified using a browser. When the
conditions are met, it executes all the connections that have a group number included in the
Workbook Group setting.

The Workbook Group can be a single value, multiple values separated by a comma or a cell
reference.
Example: If report data from a primary source shows an error (???) or is blank, update the report from
a secondary source.

Data Export
This set of Data Management functions export worksheet data to relational databases (like Microsoft
SQL Server or Access), process tags, XLReporter Functions, or file formats such as CSV and XML.

To Database
The To Database function exports the contents of a cell range to a relational database. The function is
flexible enough to handle the export of either single or multiple rows/columns of data on the worksheet
to single/multiple records in the database.

- 98 - User Guide
Setting
Configuration
This is set to the name of a database export file. A browse button is provided to create and
configure these files.

Continue on Fail
Set to Yes to indicate that an export of multiple rows/columns, the export should continue despite
any errors that may occur.

Database Export Builder


The Database Export Builder is used to configure the rules for the export. The settings are stored in a
file with extension asql.

The display contains a Setup tab and either a Columns tab or the Commands tab depending on the
choice made on the Setup tab.

The Columns tab is used for a cell/column relationship whereas the Commands tab is used to specify
SQL commands.

Popup Menus
Popup menus appear when right-clicking rows in the Columns Grid. The following options are
available:
Auto Index
When selected, this indicates that the data exported to the column is determined by the Auto
Index. See the Auto Index section below for more information.

Delete
This deletes the row from the Columns Grid. The row can also be deleted by pressing the Delete
button on the keyboard.
Content
Name
This is the name of the configuration.

Tabs
Setup
Connector
A dropdown list of available database connectors.

Table
This field indicates the table to use for the export. The dropdown displays a list of all
available tables in the selected Connector. Note that data cannot be exported to a View.
If it is necessary to export to multiple tables, multiple exports can be configured.

User Guide - 99 -
Method
Select either Columns or Commands.

Columns
Columns Grid
Cell
This field indicates the cell containing the data to export to the configured column.

Column
This field indicates which column in the database the data will be exported to.

Fixed
This indicates that the cell reference will remain fixed in place even if the
management connection has been configured to export a dynamic range. See
Dynamic Worksheet Ranges at the beginning of this chapter for more information.

For example, a database table has 5 columns including a Timestamp column and 4
data columns, and a daily report has a timestamp in cell $A$1 and 4 columns
containing the days data within the cell range of $B$4:$E$27. We can configure
our data export to use the timestamp in $A$1 for each record in the cell range by
assigning the cell to the Timestamp column and checking Fixed.

Type
This field displays the data type of the selected column in the database. See the
Database Management section of this document for more information on data
types.
Note that when the data type of a column is modified in the database, the export
group needs to be re-configured. From the Setup Tab, remove the table from the
Select Tables list and then click Reconnect. When connected, add the table back to
the Selected Table list.

Commands
In the grid, specify SQL commands (some level of SQL is required). A command
can contain a cell reference enclosed in curly brackets e.g., {$A$1}. When a cell
reference uses the $ symbol, it remains fixed while the range is exported. If the $ is
not used, the value changes for every row/column in the Source range.
Controls
OK
This saves the configuration and closes the Database Export Builder.

Auto Index
When exporting to more than one table, an Auto Index can be used to maintain a relationship between
the tables. The Auto Index is a number that is incremented after the completion of an UpdateSheet or
UpdateBook command so while the command is in progress, each export will use the same index
value.

For example, suppose a database contains two tables. One table contains the columns Batch ID,
BatchStartTime and BatchEndTime, and the other table contains the process data for each batch. If an
Auto Index is used a unique relationship can be made between the tables during the export operation.

Creating the Auto Index Table


The Auto Index table can be created using the Database Management application. Connect to the
database where the data will be exported to.
Select Table, New to create a new table. Set Name to AutoIndex. Under Columns in the first row, set
Name to ID and Type to Number (long). Click OK to create the table.

Usage

- 100 - User Guide


To use the Auto Index feature each database table that will be used must contain a column for the
Index, and the data type must be Number (Long). When configuring the Cell for the Column, right
click and select Auto Index. Note that when exporting to tables in two separate databases, the
AutoIndex is determined by the table in the first export.

To Variables
The To Variables function exports the contents of cells(s) to Register variables defined in the project.
Up to 4 variables can be specified with a corresponding Input Cell containing the value to set.

To Tag List
The To Tag List function exports the contents of many cells to (real time) process tags based on a
Configuration specified.
Before exporting, the formatting of the cells that contain the source data is changed to the format of the
named cell Format_Normal. If the named cell does not exist, the background color of the source data
is cleared.

In the event that either the writing or reading (if Readback set to Yes) fails, the cell formatting is
changed according to the following:
a) Write Fail: the cell formatting is modified to the format of the named cell Format_WriteFail. If
the named cell does not exist, the background color of the source data is set yellow.
b) Read Fail: the cell formatting is modified to the format of the named cell called
Format_ReadFail. If the named cell does not exist, the background color of the source data is set
red.

In the event that the writing and reading (if Readback set to Yes) is successful, the cell formatting is
changed to the format of the named cell Format_Success. If the named cell does not exist, the
background color is unchanged.
Note that the formatting of the named cell Format_Success will overwrite any existing formatting in
the source data.

If Readback is set to Yes a Readback Tolerance can be set to allow for any rounding that may occur
when reading the value back from the server.

To display a count of how many tags failed to export or readback, set Fail Count to a cell reference.

Tag Export Builder


The Tag Export Builder builds the configuration file that is used to export data from cells to tags in the
real time server. The settings are stored in a file with extension atxp.

Under the Setup tab specify the Connector to the real time database to export data to.

Under the Tag List tab specify the Cell, Tag and Tag Type for every tag data should be exported to.

If there is an array of tags to export data to, they can be specified as a single entity. The configuration
is identical to that of a single tag connection and can contain
[start direction end] where,
start start index
direction the direction the values will be read from the worksheet
end end index

For example, suppose $A4 is assigned to Temperature[01-12]. The values from $A$4 to $L$4 will be
exported to Temperature01 to Temperature12.

User Guide - 101 -


Suppose $A4 is assigned to Temperature[01|12]. The values from $A$4 to $A$15 will be exported to
Temperature01 to Temperature12.

Range to Text
The Range to Text function exports a range of cells to a text file in the file format specified.
Setting
Format
The file format for the text file, CSV (Comma Delimited) or Text (Tab Delimited) format.

Directory
The directory where the text file is stored. If this is left blank, the text file is stored in the Reports
Directory of the current project (as defined in the Project Explorer).

File
The name of the text file with or without a file extension. If the file extension is not specified
derived from the Format setting (either CSV or TXT).
If this setting is left blank, the text file is named after the target workbook and worksheet (as
specified in the template) in the format Workbook_Worksheet.FileExtension where FileExtension
is either CSV or TXT depending on the Format setting.
Note that keywords for the date and time can be entered for the file name e.g. entering
{MMM}_{DD}_{YYYY}.csv will name a report generated on June 1st 2013 Jun_1_2013.csv. See
the Name Types chapter for the full list of supported keywords. Note that some keywords, such
as {DATIM} contain illegal file name characters when evaluated. These keywords cannot be used
for the file name.

Overwrite
If set to Yes, the text file is overwritten if it exists.

Worksheet to Text
The Worksheet to Text function exports an entire worksheet in the workbook to a text file in the file
format specified.
Setting
Format
The file format for the export file in either CSV or Text formats.

Directory
The directory where the text file is stored. If this is left blank, the text file is stored in the Reports
Directory of the current project (as defined in the Project Explorer).

File
The name of the text file with or without a file extension. If the file extension is not specified then
it is either CSV or TXT according to the Format setting.
If this setting is left blank, the text file is named after the target workbook and worksheet (as
specified in the template) in the format Workbook_Worksheet.FileExtension where FileExtension
is either CSV or TXT.
Note that keywords for the date and time can be entered for the file name e.g. entering
{MMM}_{DD}_{YYYY}.csv will name a file generated on June 1st 2013 Jun_1_2013.csv. See the
Name Types chapter for the full list of supported keywords. Note that some keywords, such as
{DATIM} contain illegal file name characters when evaluated. These keywords cannot be used for
the file name.

Overwrite
If set to Yes, the text file is overwritten if it exists.

Range to XML (Schema)

- 102 - User Guide


The Range to XML (Schema) function saves an XML file based on the range specified by using an
XML Schema defined by the user.
Before this function can be used, an XML Schema needs to be created. To create an XML Schema,
copy the sample schema file below and paste it in Notepad. Save this file with the extension XSD.

An element name is needed for each column that is exported. The syntax for element name is
<xsd:element name="Time" type="xsd:time"/>. The text Time is the column heading and the text
xsd:time is referring to the data type. Add an element name sequence for each column that is
exported and remove any extra element name sequences.

Sample Schema
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="Schema">
<xsd:complexType>
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" name="Data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Time" type="xsd:time"/>
<xsd:element name="Operator" type="xsd:string"/>
<xsd:element name="Flow" type="xsd:int" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
Setting
Schema
The name of the XML Schema used to perform the export to the XML file. If this is entered
without a fully qualified path e.g. C:\XLRproject\Data\mySchema, the schema file must be located
in the Data folder of your project.

Directory
The directory where the XML file is stored. If this is left blank, the text file is stored in the
Reports Directory of the current project (as defined in the Project Explorer).
File
The name of the XML file to save. If this is left blank, the file is named after the target workbook
and worksheet (as specified in the template) in the format Workbook_Worksheet.xml.
Note that keywords for the date and time can be entered for the file name e.g. entering
{MMM}_{DD}_{YYYY} will name a file generated on June 1st 2013 Jun_1_2013.xml. See the
Name Types chapter for the full list of supported keywords. Note that some keywords, such as
{DATIM} contain illegal file name characters when evaluated. These keywords cannot be used for
the file name.

Table
The XML table in the file to use. If this field is left blank, the first table in the file will be used.

Mode
Overwrite
If the XML file exists it is overwritten with the latest data.

Append
The latest data is appended to the XML file once it exists.

Sheet to Workbook

User Guide - 103 -


The Sheet to Workbook function is used to export the current worksheet from the report to another
Excel workbook. Select the Directory and Workbook Name of the Excel workbook to export the
worksheet to. These can be fixed names or cell references and can contain XLReporter Name Types
like {YYYY}, {MMM}, etc. If the Workbook Name contains a full path, that path is used as the
Directory.

If the Target Sheet is specified, when the worksheet is copied to the workbook it is renamed to what is
specified, otherwise the name of the worksheet in the report is used.

If the worksheet name already exists in the workbook being exported to, the following occurs:
If the Target Sheet is specified, nothing is exported.
If the Target Sheet is not specified, the sheet is renamed as Source Book-Target Sheet in the
target workbook.

Range to Workbook
The Range to Workbook function is used to export a range of cells from the report to another Excel
workbook. Select the Directory and Workbook Name of the Excel workbook to export the range to,
along with the Target Worksheet and Target Cell where the data should be placed. These can be
fixed names or cell references and can contain XLReporter Name Types like {YYYY}, {MMM}, etc.
If the Workbook Name contains a full path, that path is used as the Directory.
Note, if you are exporting merged cells, the Target Cell should encompass the entire range of the
merge. For example if you are exporting cell $B$4 to cell $D$7 and $B$4 is merged from B4 to D4,
then the Target Cell should be $D$7:$F$7.

Data Import
This set of Data Management functions import data from workbooks, worksheets and text files.

Range From Workbook


The Range From Workbook function is used to import data from a workbook to a Target Cell
location in the current workbook. Select the Directory, Workbook Name, Worksheet and the range
of data to import. The location and file names can use XLReporter Name Types, Variables and cell
locations (see Name Types). If no Directory is specified the default Reports folder is used. If the
Workbook Name contains a full path, that path is used as the Directory.

In addition, the Workbook Name can be specified with a wildcard. This changes the setting from a
specific file name to a filter that is used to get the most recent file in the Directory specified. For
example a Workbook Name of Flow*.xlsx would import data from the most recent file in the
Directory that starts with Flow and ends with .xlsx.

Example:
To extract summary data existing in a June monthly worksheet in a workbook called
MyReport2015.xlsx the following settings would be used:
Placement
Cell $B$4
Type Offset
Direction Down
Offset dM

Directory C:\Reports
Workbook Name MyReport{YYYY}
Worksheet {MMMM}
Start $B$30:$D$30
Direction None
Until All cells are empty
Paste All

- 104 - User Guide


Clear Base No

Range From Workbook List


The Range From Workbook List function has the same functionality as the Range From Workbook
function but operates on a list of parameters specified as a table in a worksheet in the template. This
allows multiple ranges from multiple worksheets to be imported using a single command.

Sheet From Workbook


The Sheet From Workbook function is used to import an entire Source Sheet to a Target Sheet.
Select the Directory, Workbook Name, Source Sheet and Target Sheet. The location and sheet
name can use XLReporter Name Types, Variables and cell locations (see Name Types). If no
Directory is specified the default Reports folder is used. If the Workbook Name contains a full path,
that path is used as the Directory.

In addition, the Workbook Name can be specified with a wildcard. This changes the setting from a
specific file name to a filter that is used to get the most recent file in the Directory specified. For
example a Workbook Name of Flow*.xlsx would import data from the most recent file in the
Directory that starts with Flow and ends with .xlsx.

A hyperlink can be added to the sheet(s) imported to navigate back to the Active By worksheet which
may contain summary information about the worksheet(s) imported. Hyperlink Cell determines
which cell the hyperlink will appear in on the imported sheet(s) and Hyperlink Text is the text that
will appear in the cell for users to click on. If the cell is specified and the text is not, the Active By
sheet name will appear as the text.

Example:
To move an entire monthly June worksheet from workbook named Station_1_2015 and rename the
June worksheet to ST_1 in a summary workbook the following settings would be used:

Directory C:\Reports
Workbook Name Station_1_{YYYY}
Source Sheet {MMMM}
Target Sheet ST_1
Hyperlink Cell
Hyperlink Text

Sheet From Workbook List


The Sheet From Workbook List function has the same functionality as the Sheet From Workbook
function but operates on a list of parameters specified as a table in a worksheet in the template. This
allows multiple ranges from multiple worksheets to be imported using a single command.

From Text File


The From Text File function imports the content of a text file into a worksheet. Select the Directory,
Text File name and the Delimiter of the text file. The Directory and Text File name can use
XLReporter Name Types, Variables and cell locations (see Name Types). If no Directory is
specified the default Reports folder is used. If the Text File contains a full path, that path is used as
the Directory.

In addition, the Text File can be specified with a wildcard. This changes the setting from a specific
file name to a filter that is used to get the most recent file in the Directory specified. For example a
Text File of Flow*.csv would import data from the most recent file in the Directory that starts with
Flow and ends with .csv.

Example:
To extract the content of an hourly CSV file directly into an Excel workbook the following settings
would be used:

User Guide - 105 -


Placement
Cell $B$4
Type Offset
Direction Down
Offset hD

Directory C:\MyCSVFiles
Text File {YY}{MM}{DD}_{hh}_Station 1.CSV
Delimiter ,

From XML File


The From XML File function is used to import data from a specific Table in an XML file. The
Directory and XML File name can use XLReporter Name Types, Variables and cell locations (see
Name Types). If no Directory is specified the default Reports folder is used. If the XML File
contains a full path, that path is used as the Directory.

In addition, the XML File can be specified with a wildcard. This changes the setting from a specific
file name to a filter that is used to get the most recent file in the Directory specified. For example an
XML File of Flow*.xml would import data from the most recent file in the Directory that starts with
Flow and ends with .xml.

The Table is the name of the table in the XML file to import data from. If there are multiple tables in
the file you wish to import data from, each must be specified in their own Management connection.

Headings determines how the column headings in the Table are handled.
None indicates that only data is imported into the report from the file. Every column is
imported in the order it is shown in the file.
From File indicates that the column headings of the table in the file are shown as the top row
with the data in subsequent rows beneath. Every column is imported in the order it is shown
in the file.
From Sheet indicates that the headings are from the worksheet, one row above the
Placement Cell specified. The headings from the sheet determine which headings are
imported from the table in the file as well as the order in which they are displayed in the
report. With the setting, the headings from the sheet must match exactly with the column
names in the table in the file.

For example, if the table in the file consists of the columns Flow, Speed, Presssure, Temp and
Timestamp but you only want to show Timestamp and Speed data starting in $B$4, in $B$3
enter Timestamp and in $C$3 enter Speed.

From Add-in Formulas


The From Add-in Formulas function is used to import data from formulas provided by 3rd party add-
ins in Excel. This allows reports to be more portable as now the data from these add-in formulas can
be viewed by anyone as there is no more add-in dependency.

If the Add-in providing the formulas is an xla or xlam file, specify the name of it in the Add-in setting.

Typically, you should remove the add-in formulas in the final report. To do so, set Remove Formulas
to either All or Range. All removes every formula on the report worksheet while Range removes the
formulas specifically from the Range specified.

- 106 - User Guide


Scheduler

Overview
The Scheduler is provided to automatically process commands periodically or on event triggers by
value changes in Connectors. Commands range from producing reports to maintaining files on the
hard drive (see Actions).

When running, the Scheduler processes the commands in the order they are listed in the Designer. It
can handle the execution of multiple schedule lines at the same time and so the user is urged to not
stagger schedule lines that need to be performed at the same time as this is less efficient.

Designer
The schedule Designer is opened from the Project Explorer and also the XLReporter ribbon in
Excel. From the Project Explorer, select the Project tab and choose Schedule, Designer.

To save any changes click File, Save. If the scheduler is running, it will automatically reload the
changes.

To create a new schedule click Add to open the Schedule dialog as follows:

User Guide - 107 -


In the upper part of the display select a Condition (based on Time or Event) together with an Action
Time Adjustment (default to 0). The Action Time Adjustment will adjust the time the condition
occurred and the Action is performed at this modified time.
For example: To schedule a daily report at 00:15:00 for the previous day, i.e., from 00:00:00 to
23:59:59 set Action Time Adjustment to 1 day(s).

Conditions

On Time
Time conditions are determined from the local operating system clock. Select one of Continuous,
Daily, Weekly or Monthly and the Time.

For the Continuous condition the Start time is used as an anchor time.
For example: For the condition to occur 5, 25 and 45 minutes past every hour on a weekday:

However, if the Stop time is specified then Start and Stop times are considered as actual times.
For example: For the condition to occur every 20 minutes between 8:00am and 5:00pm on a weekday:

For the Monthly condition, the months of the year and the specific days of the month can be specified.
For example: For the condition to occur every 3 months starting on the 10th February:

On Event
Event conditions are determined from values in real time Data Connectors. Select a connector and
then specify the Tag to monitor for the condition. The event is triggered once when the event
condition is met and will Recur if that option is selected.

For example: For the condition to occur each time the Mixer Speed exceeds 20:

Condition operators are provided for both numeric and text values as follows:
Numeric
The numeric conditions are Equal, To, NotEqual To, Equal or Greater Than, Greater Than,
Equal or Less Than, Less Than and On Change.
In the case of Equal and On Change a Deadband can also be specified.
For example: For the condition to occur when the Mixer Speed changes at least 5 EU
(engineeering units):

- 108 - User Guide


Text
The text conditions are IS, IS NOT, START WITH, END WITH, CONTAIN and ON CHANGE.
Text conditions are case sensitive.

When the Condition is met, an Action is performed. While the Condition remains met, the Action
can recur by enabling the Recur option.
Select the Start of the recur as Fixed Time and provide the anchor time or Event Time in which
case the anchor time becomes the time when the Condition was initially satisfied.

For example: To recur a condition every 5, 25 and 45 past every hour while the Mixer Speed is
exceeds 20:

Note that to recur the condition every 20 minutes from when the Mixer Speed initially exceeded 20,
change Fixed Time to Event Time.

Actions
An Action is performed when the Condition is met. These actions can also be initiated as commands
from third party applications and programming languages.

An Action consists of two parameters and options. For example, the action Email by Workbook
requires a Workbook, Configuration name and the optional Wait to Complete flag.

First Parameter
If the first parameter is a Workbook or Worksheet name of a template, then the actual book or sheet
that the action is applied to is determined by the Report Names settings of the template (see Template
Studio).
For example: A template called ABC has the target Report Names {DD}{MMM}{YYYY}.
On June 4th, 2015 the action Update Book ABC will update the workbook 04Jun2015. Likewise, the
action Move a Workbook ABC will move the book 04Jun2015.

Second Parameter
If the second parameter is a Target report name, it can be a blank, file name or full name (without a
file extension). If a full name, then it is used as is. If it is blank, then the name is determined Report
Names settings of the template. If it is only a file name, then folder is one of Workbook, Web or PDF
folders of the project depending on the action.

When the Target is determined, all the folders it requires are created if they do not exist. For more
information on this parameter see Template Studio.

Options
For the option Wait to Complete, the scheduler waits for a maximum of 30 seconds for the Action to
complete.

User Guide - 109 -


Produce Reports
These commands produce reports. The workbook and worksheet specified is the template name. The
name of the report is specified in the Report Names setting of the template (see Template Design).
Update Workbook
This command updates all of the worksheets in a workbook. If the target workbook does not
exist, it is first created and then updated. Note that only data connections that contain a sheet
in the Placement Cell will be considered in the update.
Settings:
Workbook Workbook name
Update Worksheet
This command updates a single worksheet.
Settings
Workbook.Worksheet Worksheet name
Update Workbook Groups
This command updates all of the worksheets in a workbook but is restricted by the connection
group number or list of group numbers specified. Note that irrespective of the connection
group number(s) in the command, connections belonging to group zero are included.
Only connections that have a sheet specified are updated with this command.
Settings
Workbook Workbook name
Group Comma separated connection group number(s)
Update Worksheet Groups
This command updates a single worksheet but is restricted by the connection group number or
list of group numbers specified. Note that irrespective of the connection, group number(s) in
the command, connections belonging to group zero are included.
Settings
Workbook.Worksheet Worksheet name
Group Comma separated connection group number(s).

Publish Reports
These commands publish reports to different file formats or to print a paper copy. The workbook and
worksheet specified is the template name. If the Target is left blank, the Report Names setting of the
template is used.
Save Workbook to Web Page(s)
This command saves a workbook and all of its visible worksheets to web pages.
Settings
Workbook Workbook name
Target The web page name
Save Worksheet to Web Page
This command saves a worksheet to a web page.
Settings
Workbook.Worksheet Worksheet name
Target The web page name.

Save Workbook to PDF


This command saves a workbook and all of its visible worksheets to a PDF file according to
the PDF encryption settings (see Project Settings).
Settings
Workbook Workbook name.
Target The PDF name.

- 110 - User Guide


Save Worksheet to PDF
This command saves a worksheet to a PDF file according to the PDF encryption settings (see
Project Settings).
Settings
Workbook.Worksheet Worksheet name
Target The PDF name.

Print Workbook
This command prints the workbook and all of its visible worksheets to a specific printer.
Settings
Workbook Workbook name.
Printer Printer name.
Print Worksheet
The command prints a worksheet to a specific printer.
Settings
Workbook.Worksheet Worksheet name
Printer Printer name.

Transfer Reports
These commands transfer files over the network through E-mail and FTP transfer. The commands
apply to a single workbook or to content of a configuration.
FTP a Workbook
This command transfers a workbook using FTP using the FTP server settings specified in a
configuration file (see FTP Transfer).
Settings
Workbook Workbook name
Configuration Configuration file name
Wait to Complete
If checked, the scheduler will wait for the command to complete before processing any other
command.

Note that the Source settings of the Configuration are not used by this command (see FTP
Transfer).

FTP by a Configuration
This command using FTP according to the settings in a configuration file (see FTP
Transfer).
Settings
Configuration Configuration file name (s)

Wait to Complete
If checked, the scheduler will wait for the command to complete before processing any other
command.
Email a Workbook
This command emails a workbook as an attachment using the SMTP settings specified in a
configuration (see Email and SMS).
Settings
Workbook Workbook name
Configuration Configuration file name

Wait to Complete
If checked, the scheduler will wait for the command to complete before processing any other
command.

User Guide - 111 -


Note that the Attachment settings of the Configuration are not used by this command (see
Email and SMS).

Email by a Configuration
This command emails according to the setting in a configuration (see Email and SMS).
Settings
Configuration Configuration file name (s)
Value Custom Variable value(s)

If the configurations contain Custom Variables, then their values can be specified in the Value
setting in the form Variable1=Value1, Variable2=Value2 (see Email and SMS).

Wait to Complete
If checked, the scheduler will wait for the command to complete before processing any other
command.

Manage Files and Folders


These commands are used to assist in maintaining files. The commands apply to a single workbook or
to content of a configuration.
Move a Workbook
This command moves a copy of an existing workbook. If the Target contains a folder that
does not exist, it is created.
Settings
Workbook Source Workbook name
Target Target Workbook name
Overwrite Target
If checked, the target workbook will be overwritten (if it exists).
Delete Source
If checked, the source workbook will be deleted after it has been moved.
Delete Workbook
This command deletes an existing workbook.
Settings
Workbook Workbook name
Manage by a Configuration
This command performs file management according to the setting in a configuration (see File
Manager).
Settings
Configuration Configuration file name
Wait to Complete
If checked, the scheduler will wait for the command to complete before processing any other
command.

Manage Variables
These commands are used to modify values of Variables.
Set a Value to a Variable
This command assigns value(s) to the function variables Register, Counter and Lookup.
Up to 4 variables can be assigned at once by separating the Variable and Value by semi-colon.
Settings
Variable Variable name
Value Value (numeric, text or variable)
Example: To assign RG000, RG001 and RG002 to the values 1, 2 and 3 set Variable to
RG000;RG001;RG002 and Value to 1;2;3.

- 112 - User Guide


Example: To assign RG000 with the BatchID tag of a connector called History, set Variable
to RG000 and Value to {<History>BatchID} .

Note the syntax {<connector name>item name}

Update a Variable
This command updates the function variables Counter and DateTime.
Settings
Variable Variable name
Reset a Variable
This command updates the function variables Counter, DateTime and Lookup.
Settings
Variable Variable name

Run Applications
These commands run various scripts and third party applications.
Run a Schedule Script
This command runs a schedule script and is used when additional logic is required in the
schedule (see Scheduler Script).
Settings
Configuration Script configuration name
Run an Application
This command runs an external executable.
Settings
Application Name of the application to run (may require a full path).
Parameter Command line parameters
Wait to Complete
If checked, the scheduler will wait for the command to complete before processing any other
command.
Write Value to Process
This command writes a specified value to real time connector. This command can be used as
a heart beat or a handshake.
Settings
Tag Tag used for the write
Value Value to write
Wait to Complete
If checked, the scheduler will wait for the command to complete before processing any other
command.
Write as Text
If checked, the value will be written as text.
Run a Workbook Macro
This command runs a macro defined in a workbook.
Note: This command will require the Excel COM library to be installed.
Settings
Macro Macro name in the form Workbook.Macro
Parameter Up to 3 comma separated parameters

User Guide - 113 -


Scheduler Setup
The scheduler can be setup to run on the desktop, in the background or as a windows service.
From then menu option, select Scheduler, Setup.

Run as a Service
Select this to run the Scheduler as a service. As a service, the scheduler will be automatically started
by the operating system using the Account specified. By default the Account is LocalSystem which
would be suitable for most cases. However, if the command requires specific rights e.g., running a
book macro or moving the workbook to a protected fileserver, then use an Account that has the
appropriate rights.

A service Account that is not LocalSystem must be an Administrator and have a Password.

Run on the Desktop


Select this option to run the Scheduler on the desktop. The startup can be Normal, Minimized on the
taskbar or Background with no icon on the taskbar.

A benefit of running Normal on the desktop is that the progress of the schedule is visible providing
valuable insight during development.

Use this option only in special cases when the Scheduler cannot run as a service due to the limitations
of the Connectors (see Connectors).

Automatic Startup
When running on the desktop, to start the Scheduler automatically, add a shortcut for the Scheduler to
the Windows Startup folder. The easiest way to do so is to drag the Scheduler Engine item in the
XLReporter program group to the Windows Startup folder.

Stopping the Scheduler


When the scheduler is running, it can be stopped from the Scheduler menu option or from the Project
tab of the Project Explorer.

Scheduler Settings
From then menu option, select Scheduler, Settings.

- 114 - User Guide


Event Poll Time
The Event Poll Time is the rate at which event schedules will be scanned to determine if the trigger
condition is satisfied.
Startup Delay
When the scheduler is started, it will immediately connect to any connectors that have been
configured. This behavior may cause problems for certain connectors in which case the Startup Delay
is used to make the scheduler wait before connecting.

Backfilling Reports
Scheduler Backfill provides a powerful Virtual clock to rerun a set of schedules over a period of time.
The feature can be used to create reports from data collected prior to the purchase of XLReporter or
those that were missed due to unexpected problems.

Select the schedule lines by holding down the Ctrl key and clicking on a row(s). Note that any
schedules that use Event based triggers are not considered. Click Tools, Report Backfill.

The Virtual clock setting of the start/end times and interval are show in the caption of the display.
Click the Backfill Clock Settings to provide a new start/end and interval for the Virtual clock and
click OK.

From the main display, click Start. Using the From time, the Virtual clock increments until it
reaches To time with the commands being processed at each increment. The processing is shown by
the schedule lines changing color and with the results of the processing is shown in the results panel.

Enabling Schedules
By default, a schedule is enabled when it is Added to the schedule list, this is indicated by a check
mark.

By unchecking, the schedule line will not be considered when the Scheduler is started. If the
scheduler is running on the desktop, a disabled line will appear with red background.

User Guide - 115 -


Toolbar Items
The toolbar items are used to Add, Modify, and Delete schedule lines, insert a schedule Outline or
Test a schedule line.

Outline
An Outline is a way of commenting and grouping schedule lines. With outlines, groups of schedule
lines can be accessed using a filter configured for the Outline.

To add an Outline, highlight the row where it is to be placed and click Outline.

Enter a Description and a list of comma separated Filter(s).

From the schedule list notice the outline inserted and that all the schedule line below it can be
displayed/hidden by clicking the leftmost +/- buttons.

Alternatively, the outlines can be displayed/hidden by selecting a Filter that was specified when the
outline was created..

Test
A schedule line can be simulated to run on a specific date/time range. To perform a Test, highlight
the row and click Test. For time based commands, the test is performed between the date range
specified otherwise it is performed at the current date/time.

Scheduler Script
A script file can be created and modified by selecting Tools, Script Editor. All the configured scripts
(file extension .scs) are listed. For an example of the script syntax, see XLRprocess. Note that a line
starting with a semi-colon (;) is treated as a comment.

Scripts are run using the Run a Schedule Script command Action.

A script can contain two sections, Command and Trigger. Each section is written in the script by
enclosing it in [].

Command Section
The Commands section is defined by [Commands] in the script file followed by a list of commands.
Any command listed under this section is executed when the script file is processed. This is useful
when is there are a number of actions that need to be processed collectively on a common schedule
condition.

- 116 - User Guide


Example: A script to update and print a worksheet.
[Commands]
command1 = UpdateSheet DailyReport.Template
command2 = PrintSheet DailyReport.Template

In addition, to actions, the Command section supports simple script keyword as follows:
Wait n
Pause the script for n seconds
Init v n
Initialize the variable v to n. Variables supported are x, y and z.
Incr v n
Increment the variable v by n.
Start Loop n
Indicates the start of a loop to be executed n times.
End Loop
Indicate the end of the loop.
Goto x
Jump to the script commandx

Example: Update the groups 1 to 5 in a worksheet and the print the command. Note that without the
script this can be accomplished by six schedule commands.
[Commands]
; Initialize x to 1
command1=Init x 1

; Set up a loop to iterate 5 times


command2=Start Loop 5

; Update the Daily Report for the specific group (1-5)


command3=UpdateGroupSheet 'DailyReport.Template' '{x}'
command4=Wait 2
command5=Incr x 1

; End the Loop


command6=End Loop

; Print the worksheet


command7=PrintSheet 'DailyReport.Template' 'default'

Trigger Section
The Trigger section is defined by [TriggerX] in the script file where X is a numeric value starting at 1
allowing multiple Trigger sections in a single script file. The script is used to monitor the content of a
folder for a new file and perform commands when that happens.
Example: Monitor a folder for a CSV file and run report when that happens.

User Guide - 117 -


In addition to actions, the Trigger section supports simple script keyword as follows:
Type, either 1 or 2.
Type 1 is a file trigger where the File Source directory is monitored and when one or more
files are found in the folder the most recent file (based on modified date) is processed based
on the other settings in the section.

Type 2 is a file trigger where the File Source directory is monitored and when one or more
files are found in the folder every file found is processed based on the other settings in the
section.
FileSource
The folder to monitor for new files. This setting must be specified.
FileFilter
The filter to apply when monitoring for new files in FileSource. For example, to monitor for
CSV files, set to *.csv. To monitor for every Excel workbook file that starts with Flow, set to
Flow*.xls*. If this is not specified, the default is *.* which processes any file in the directory.
FileMaster
When the file is found in the folder, it can be copied to the FileMaster setting so that
subsequent commands can deal with a consistent file name. If specified, it must be specified
with a full path. If this functionality is not required, this keyword may be omitted.
FileArchive
The folder name of folder the found file from FileSource is moved to.
If this setting is not specified, the file is moved to the Archive subdirectory beneath the File
Source directory (if it exists).
FileTarget
The register (e.g., RG000) to set with short name of the file found in FileSource. The name
does not include the file path or extension. If this functionality is not required, this keyword
may be omitted.
FileFullTarget
The register (e.g., RG001) to set with the full name of the file found FileSource. The name
includes the file path and extension. If this functionality is not required, this keyword may be
omitted.

Example: Monitor the folder c:\Data for a CSV file. When found, set RG000 with the short name,
RG001 with the long name, copy it to c:\mydata\mymaster.csv and then move it to c:\Data\archive.
Run command actions to update report and save it to PDF (using the register RG000, RG001 and the
file mymaster.csv)
[Trigger1]
Type=1
FileSource=C:\data
FileFilter=*.csv
FileTarget=RG000
FileFullTarget=RG001
FileMaster=C:\mydata\mymaster.csv
FileArchive=C:\data\archive
Command1=UpdateSheet MyTemplate.Template
Command2=SaveSheetPDF MyTemplate.Template

Note that if all the files in c:\Data need to be processed, set the Type to 2.

- 118 - User Guide


Designing Interactive Reports

Overview
There are two ways to create a report from a template, automatically and interactively. This chapter
describes the interactive designer to build a user interface for interactive reporting. To deploy
interactive reports, refer to Deploy Interactive Reports chapter.

From a users perspective, an interactive report is generated by entering custom values and then
clicking Refresh. This can be performed locally, or from Team clients on the network or from mobile
tablets.

The steps required in designing an interactive report are:


Step 1 Create a Template with Variables
A template with Variables allows an end user to assign values to the variables and produce
their own custom report.

Step 2 Assign input methods for the Variables


When a template is saved, XLReporter assigns an input method to the Variables. For
example a date variable has a date calendar assigned. If custom input methods are required,
then the Interactive Designer is used.

Step 3 Deploy the Template.

Interactive Designer
The Interactive Designer is accessed from the XLReporter ribbon in Excel.

The display consists of two tabs, Variables and Commands and a grid that is partitioned into DATE,
PARAMETER, TAG and DATABASE with each representing a Panel (see Panels).

When assignments to the grid have been completed, click Preview to view the Panels from the
perspective of the end user. The display shown is in fact the left panel of On-Demand reports.

To save changes click Save.

User Guide - 119 -


Variables tab
The Variables tab is used to assign variables defined in the template to specific user input methods.
There are many different input devices available to assist the user in specifying values.

Completed settings are added to the grid by clicking Insert.

Select a Variable from the drop down list containing a list of all the available variables or enter a
variable manually.

Under Input Panel the Type is read only and changes depending on what row is selected in the grid.

Input Panel
Source Date Calendar and Date Interval
The following settings are available Type is set to Date Calendar or Date Interval.
Start Date
The value for the variable comes from the Start Date of the panel.
Start Time
The value for the variable comes from the Start Time of the panel.
End Date
The value for the variable comes from the End Date of the panel.
End Time
The value for the variable comes from the End Time of the Date panel.

Source Parameter
The following settings are available when Type is set as Parameter.
Text Box
The value of the variable is set to the content of a textbox.
Date Picker
The value of the variable is set using a date picker.
Time Picker
The value of the variable is set using a time picker.
Database List
The value of the variable is set to an item in the list produced by the data group configured in
Group setting. Note that the Filter of the data group can contain references to other variables
in the Parameter panel.
Example: The variable used in one Database List can be used as the filter for a second
Database List. Use the percent (%) to not enable filtering.

- 120 - User Guide


File List
The value of the variable is set to an item in a list stored in a file configured in the File
setting. The file must be located in the Input folder of the project.
Custom List
The value of the variable is set to an item in a custom list configured in the List setting.
Yes/No List
The value of the variable is set to either Yes or No as displayed in the list.
True/False List
The value of the variable is set to either True or False as displayed in the list.
Tag Catalog
The value of the variable is set to a selection from a Catalog.
Real Time Browser
The value of the variable is set to a tag selected from the real time tag browser using the
Connector specified.
For a Team Client the default Catalog is used.
History Browser
The value of the variable is set to a tag selected from the history tag browser using the
Connector specified.
For a Team Client the default Catalog is used.

Source Tag
Tag Catalog
The value of the variable is set to a selection from a Catalog.
Real Time Browser
The value of the variable is set to a tag selected from the real time tag browser using the
Connector specified.
For a Team Client the default Catalog is used.
History Browser
The value of the variable is set to a tag selected from the history tag browser using the
Connector specified.
For a Team Client the default Catalog is used.

Source - Database
Group
Set to a database group containing the query to display in the Database panel. A browse
button () is provided to select an existing database group.

Settings
The settings depends Input Panel settings.
Format
This setting is available when Type is Date Calendar or Date Interval. This defines the
format of the date when the value is written to the variable. If the format required is not
listed, it can be manually entered. The following formats are listed:
Local Date the short date format as defined in the Windows Control Panel.
Local Time the 24 hour format as defined in the Windows Control Panel.
Local Date Time the local date and time formats (with a space in between) as defined in the
Windows Control Panel e.g., yyyy-MM-dd
Period
This setting is available when Type is Date Interval and Source is Start Date. It defines the
interval period added to the Start Date specified to determine the End Date and End Time.
This also defines the interval that the start and end change by when panning to the left or to
the right.

The following Period settings are available:

User Guide - 121 -


Hourly
The End Date and End Time are calculated as the Start Date and Start Time plus 1 hour.
Daily
The End Date is calculated as the Start Date plus 1 day. The Start Time and End Time
are both fixed at midnight and are not displayed in the panel.
Daily. Start time
The Start Time is specified in the list to the right. The End Date and End Time are
calculated as the Start Date and Start Time plus 1 day.
Weekly
The End Date is calculated as the Start Date plus 1 week. The Start Time and End Time
are both fixed at midnight and are not displayed in the panel.
Weekly. Start day
The day of the Start Date is specified as a day of the week in the list to the right. The
End Date is calculated as the Start Date plus 1 week. The Start Time and End Time are
both fixed at midnight and are not displayed in the panel.
If the user selects a date that is not the same day of the week as specified to the right, the
date is set to the date of that day of the week. For example, if the Start day is set to
Tuesday and the user selects January 3rd, 2016, the Start Date is January 1st 2016 as that
was the date of the previous Tuesday before January 3rd.
Monthly
The End Date is calculated as the Start Date plus 1 month. The Start Time and End Time
are both fixed at midnight and are not displayed in the panel.
Monthly. Start day
The day of the Start Date is specified as a day of the month in the list to the right. The
End Date is calculated as the Start Date plus 1 month. The Start Time and End Time are
both fixed at midnight and are not displayed in the panel.
If the user selects a date other than the Start day specified to the right, the Start Date is set
to the month and year of the date chosen but to the day specified as the Start day. For
example, if Start day is set to 1 and the user selects January 15th, 2016, the Start Date is
set to January 1st , 2016.
Prompt
This setting is available for any Source when Type is set to Parameter or Tag. It defines the
prompt or label that is presented to the user for the value of the variable.
Reset
This setting is available for any Source when Type is set to Parameter or Tag. It determines
if the variable values in rows beneath this variable are reset when the value of this variable is
changed.
The following Reset settings are available:
Reset None
No rows are reset when the value of this variable changes.
Reset All
All rows beneath this row are reset when the value of this variable changes. This setting
should be used if other variables are based on the value of this variable.
Rest Next
The row immediately beneath this row is reset when the value of this variable changes.
This setting should be used if the variable in the next row is based on the variable of this
setting.
Initial
This setting is available for most Source settings when Type is set to Parameter or Tag. For
some Source settings a browse button () is provided to assist in defining this setting.

- 122 - User Guide


Group
This setting is available when Type is Parameter and Source is Database List. It defines the
database group used to populate the list.
Up to two columns can be configured in the group. They represent the display value, the
value displayed to the user and the actual value, the value assigned to the variable (defaulted
to display value if not specified).
File
This setting is available when Type is Parameter and Source is File List. It defines the text
file used to populate the list. A browse button () is provided to select an existing text file or
to create a new text file. The text file can consist of up to 2 columns that represent the
display value, the value displayed to the user and the actual value, the value assigned to the
variable
List
This setting is available when Type is Parameter or Tag and Source is Tag List. It defines
the tag list used to populate the list. A browse button is provided to select an existing tag list.

This setting is also available when Type is Parameter and Source is Custom List. In this case
it defines a custom list of selectable items for the user to choose from. A browse button ()
is provided to create a list. The list can have up to 2 columns that represent the display value,
the value displayed to the user and the actual value, the value assigned to the variable.
Column
This setting is available when Type is set to Database and Group is specified. It defines the
column in the database group used for the value of the variable. Check Hide to not display
the column in the panel.

Commands tab
The Commands tab shows the commands that are performed when the template is Refreshed in
interactively. In most cases, this setting does not need changes (see Scheduler Actions).

User Guide - 123 -


Deploying Interactive Reports

Overview
Interactive Reports are deployed on local system or on a remote system using a Team Client (see
Team Edition). In both cases, the reports are generated based on specific report settings such as
custom time frames or alarm thresholds.

Local
On the system where XLReporter is installed, the application is opened from the Home tab of the
Project Explorer or from the XLReporter ribbon in Excel and selecting Report Preview.

The application can also be run from the command line with C:\XLReporter\bin\XLRxReport.exe
enabling it to be opened from external applications and HMI displays.

Team Client
From a team client, the application is opened by the Team Explorer (see Team Portal) from remote
workstations and mobile devices.

Security
If User Security is not enabled, then any user can use all the features.
If User Security is enabled (see User Accounts) then the user logged on must have the appropriate
privileges.

User Interface
The interface consists of a left view and a right view. The left view is where the templates and settings
are selected and the right view shows the completed report.

- 124 - User Guide


Left View
The left view contains the templates assigned to the user logged on (if User Security is enabled)
and a user entry panel(s) to determine the content of the display.

Collapse/Expand
These buttons expand and collapse the left panels.
Save
This option opens the Save dialog to save the report (see Saving Reports).
Print
This option opens the Print dialog to print the report (see Printing Reports).
Email
This option opens the email configurations defined in the project (see Emailing Reports).
Freeze Panes and Zoom
Freeze Panes adds and removes horizontal and vertical freeze panes at the location of the
currently selected cell. This is a convenient way of keeping part of the report content fixed on the
display while scrolling across or down.
Zoom options zooms into and out of the report. Note that once the zoom factor is changed it is
applied to any other report you select.
Keypad
This option opens a context sensitive keypad to enter numbers, text, date and time (see Keypad).
Refresh
This option refreshes the main display since the report could have changed while it was open in
the viewer. If Automatic Refresh is enabled in Options, then refresh will continue at the
specified interval.
Instance
To save the settings of a particular template, click Instance and enter a Name and Description.
The instance Name will appear as a branch to the template which, when selected, will reload the
settings.

Options
Options are used to configure the Display and Content settings of the viewer. Note that not all the
options are supported by every viewer.
Display
Keep display on top
This option makes the application the topmost window. Use this setting if the viewer is launched
from an HMI display.

Show headings
This option displays headings (e.g., row numbers and column letters) on the right side of the
application.

Show ruler (PDF only)


This option displays a ruler along the left edge and right side of the application.

User Guide - 125 -


Show formula bar
This option displays the formula bar which shows the formula of a selected cell
Content
Update existing report
This option does not overwrite the report when it is Refreshed.

Automatic Refresh (secs)


This option will enable automatic refreshing of the report on Refresh as well as the refresh rate of
the viewer.

Saving Reports
To save the report displayed, click the Save pushbutton to open the Save dialog.

Enter a Name and select the Project Folder or Specific Folder. Set the File Format to indicate the
saved format.

The Save To indicates where the file will be saved. The Project folder is the folder in the project
given in Project Settings whereas Specific folder is a local folder. For a Team Client, the file will be
saved on the Team Server to a subfolder (using the users name) of the project folder and so making it
visible to other Team clients.

Printing Reports
To print, click the Print pushbutton and select one of the following:
All Sheets
All the visible sheets are printed
Active Sheet
Only the displayed sheet is printed
Selection
The area selected by highlighting a range of cells will be printed.

All the print settings applied to the template are used in the printout.

- 126 - User Guide


Emailing Reports
To email, click the Email pushbutton.

Enter a Name of the report attachment (defaulted to the template name) and the File Format,
either PDF or Excel (xls, xlsx). The email is sent to the selection in the Email To list which
displays a list of email configuration (see Email and SMS).

In the case of a Team Client, the configurations listed are those on the Team Server and when a
selection is made, the email is sent from the Team Server.

Tag Browser
Templates can be configured with variables that represent tag names e.g., the tags in a history group.
Setting a variable to an actual tag name is performed by a tag browser which can either be direct or
from a catalog.
Direct
In this mode, the tag browser shows the current list of names from the Connector.
Catalog
As part of a Connector definition, Item Catalog(s) can be configured which represent a sub-set of tag
names (see Connectors). For example, a catalog may contain only the tags that represent
temperatures.

In this mode, the tag browser displays the content of a catalog simplifying the user experience by not
overwhelming them with all the tags (which could be in the thousands!).

Panels
The user specifies values for variables from data input panels. For example, one template may require
a Date panel (for date entry) while another may require a Tag panel (for tag selection).

The panels are displayed in the Left view of the user interface. Each panel has a collapse button at the
top left corner to hide it from view.

Date Interval
The Date Interval panel enables to user to specify a start date and having the corresponding end date
calculated based on the start and the interval configured for the panel.

When a setting is made with the panel, it internally sets the values Start Date, Start Time, End Date
and End Time which can be assigned to template variables (see Designing Interactive Reports).

User Guide - 127 -


The pan buttons adjust the start and end date based on the interval. To set the panel to the current
time, click

Date Calendar
The Date Calendar panel enables to user to specify a start date and end date.

When a setting is made with the panel, it internally sets the values Start Date, Start Time, End Date
and End Time which can be assigned to template variables (see Designing Interactive Reports).
The Start can be entered manually or configured by using the date picker provided. When the start is
edited, the end is automatically adjusted based the start date and time plus the span. By default the
span is 1 day.

The span button toggles the End with Span. The span value is in the form [DD] hh:mm:ss. It can
be edited manually or selected from the drop-down list provided. When the span is edited, the end date
and time is automatically adjusted.

The zoom control decreases the span by the Zoom In % setting (50% by default). The zoom
control increases the span by the Zoom Out % setting (100% by default).

The pan buttons adjust the start and end date based on the Pan % (50% by default) of the interval
of the panel. To set the panel to the current time, click

Tag
The Tag panel enables to select tags directly from a Connector or from a connectors Catalog.

When a setting is made with the panel, it sets the value to the template variable assigned to the selected
row (see Designing Interactive Reports).

One or more tags may be selected when browsing for tags. If multiple tags are selected, subsequent
tags are listed beneath the current selection. To remove a tag name, clear the Value column.

Parameter
The Parameter panel is used to select a wide range of value types.

When a setting is made with the panel, it sets the value to the template variable assigned to the selected
row (see Designing Interactive Reports).

Input controls appear according to the panel configuration. For example, if a parameter is configured
for a database query then when the Value column is clicked, the query is made and a drop down list of
values is shown.

- 128 - User Guide


Database
The Database panel is used to select values from a record that results from a database query.

When a row is selected in the panel, it sets each column value of the row to the template variable
assigned (see Designing Interactive Reports).

The columns can be positioned by selecting the column header and dragging it to a new position. Data
can be sorted on any of the columns displayed. Click on the header of the column to sort. The up or
down arrow in the header indicates the current order.

To reduce the amount of information displayed, individual filters can be placed on each column. Right
click on a column header to open the filter dialog.

Keypad
The soft keypad is useful when using Interactive Reports on a tablet or touch screen PC.

There are three available keypad types Alphabetic, Date Time and Numeric. When the keypad is
opened, keypad type shown is based on either the cell value (if it is populated) or the cell format (if it
is empty). The button toggles between the different types.

Note that if a cell is selected which is has validation (like a drop down list) the keypad is disabled.

For the Alphabetic keypad type, clicking .?123 will display punctuation characters.

The Delete pushbutton deletes the value in the selected cell with the exception that in Interactive
Forms, if the cell selected is in the A column of a record, this deletes the record from the database.

The Cancel pushbutton is only used in Interactive Forms when a cell in the A column is selected for
a currently edited record. This cancels the edit so the record is not stored to the database.

The arrow keys move the selector from the currently selected cell. The A? moves the selector to the A
column of the row of the currently selected cell.

Enter
The Enter pushbutton sets the keypad value to the currently selected cell.

User Guide - 129 -


Designing Interactive Forms

Overview
Interactive Forms are used to manage manual data entry such as operator rounds, laboratory results
and process readings. If paper forms are currently being used, they can be easily transformed to a
Form Template so their content is stored to a central database and not to a filing cabinet. Using this
approach, manual data becomes a data source for reporting.

An implementation of Interactive Forms can start on a standalone workstation and grow over time to
a team of workstations and mobile devices, each submitting their own completed forms. Since no
knowledge of SQL or software programming is required, it can be implemented easily by anyone with
just a basic understanding of Excel.

When used on a mobile device such as a Windows tablet, forms can be downloaded to the device and
the device can then be used offline.

The steps required to implement an Interactive Forms are:


Configure a form Connector.
Use the Connector to create a database table.
Design a Form Template.
Deploy the Form Template (see Deploying Forms).

The data collected in the database can be used in reports with a Form Data Group (see Data
Groups).

Configure a Form Connector


From the Data tab of the Project Explorer select Data, Connectors (see Data Connectors):
Click Add.
Select the Form Database connector under the XLReporter provider.
Enter the Connector Name and the connection to the Primary Database.

If you do not have a database, use the Access database called DB_Form.mdb, located in the Data
folder of the project.

- 130 - User Guide


Create a Database Table
From the Tools tab of the Project Explorer select Database, Manager (see Database Manager).
Select a Form Connector.
Click Add to add a new table.
Enter a Table Name
Under Columns, specify the column Name and Type.

Example: A daily turbidity form is filled every four hours with readings from four filters. The form
also computes the combined maximum which is needs to be stored. Add the columns for the filters
and the combined maximum.

If Record Locking is checked, then a completed form can be locked to prevent any additional changes
(if configured).

Design a Form Template


Interactive Forms uses Excel as its design studio to produce sophisticated user entry forms
containing powerful features such as calculations, formatting and validation.

Open Excel from the Project Explorer by selecting Home Tab, Template, Studio
Select XLReporter, Template New.
Enter a Name for the template and an optional Description
Under Template, select Form
Click OK to open a blank template

Add labels, headings, formatting and data validation to the template using the standard tools of Excel
(see Excel Primer). To link the template to the database table select XLReporter Tab, Data, Link
and select a Connector.

Setup Tab
The Setup Tab is used to specify the form Style, Interval and the database table Source that will be
used to read/write the form content.

User Guide - 131 -


Example: A daily turbidity form is filled every four hours with readings from four filters. The form
also computes the combined maximum which is needs to be stored.
Choose the Connector to be used for the form, set the Style to Daily, Start Time, and the Interval to
Every 4 hour. In Source, select the table created for this form and check Record Locking to enable
form locking.
Style
Daily
This style defines a form containing one or more records for a single day, starting at midnight.
Daily, Start time
This style defines a form containing one or more records for a single day, starting at a specific
time.
Weekly
This style defines a form containing one or more records for a single week.
Weekly, Start day
This style defines a form containing one or more records for a single week starting at a
specific day of the week.
Monthly
This style defines a form containing one or more records for a single month.
Monthly, Start day
This style defines a containing one or more records for a single month starting at a specific
day of the month. The specific day of the month is defined in the drop down list to the right
of the Style setting.
Interval
Every
This setting is commonly used for tabular forms. With the Style, this setting will determine
how many rows (records) the form will display in the form.
Example: With Style set to Daily and Interval is set to Every 1 hour, the form will display 24
rows, one for each hour of the day. Setting Interval to Every 1 day will only display 1 one
row.
None
This setting is used when the target database table is being populated by a third party
applications and the role of Interactive forms is save additional data to specific columns in
the recordings.
Example: An alarms database table is populated by a HMI system. By adding a comment
column to the table, manual comments can be saved to the alarm records.

Example: Process data is recorded by Analytics (see Analytics) to a relational database.


With this setting, additional manual data can also be recorded to the same database.

- 132 - User Guide


Source
This defines the table where the form data is stored. A drop down list displays all the tables in the
connector. Only one table may be specified for each interactive form.

When a table is selected all its columns are listed on the Links tab. By default the Cell for each
Column is set based on the currently selected cell in Excel. For example, if the currently selected
cell is $C$9, first column is set to $C$9, the second to $D$9 and so on.

Record Locking
This option is only enabled if the Record Locking option is set on the table when the
database was created in the Database Manager. If checked, record locking is enabled which
allows users with the account setting (see User Accounts) to lock forms from any further
editing.

Links Tab
The Links Tab determines the relationship between the Cell(s) on the form and Column(s) in the
database table.

No database links should be configured for the A column. This column is reserved to indicate the
status of the row by a color indicator (see Deploy the Form Template).

Note that forms are restricted to a single worksheet within the template.

Example: A daily turbidity form is filled every four hours with readings from four filters. The form
also computes the combined maximum which is needs to be stored.
This tab is filled automatically using the selected cell on the template form. For the filter readings,
leave the Transfer to Read Write. However, the combined maximum is a formula which should not
be read (or the formula will get overwritten), so that is set to Write.

No database links should be configured for the A column since this will be used during deployment to
indicate the status of the rows (see Deploy the Form Template).
Cell
The rows are automatically filled starting from the current cell selected on the template when the
Source (on the Setup tab) was selected. The cell references represent the top row of the form.

The rows are edited manually or by first clicking into a row in the grid and then clicking the cell
on the Excel worksheet.

User Guide - 133 -


Column
A drop down list of all the columns is displayed.

Interactive Forms use the date and time for displaying and storing to/from the database so one of
the columns selected needs to of the DateTime type. For forms with an Interval specified (on the
Setup tab), this is automatically performed.
Transfer
The transfer mode determines the transfer mode of data between the form and the database.

Columns that have the Read attribute have their values displayed in the form from the database.
These columns are read-only in the form.

Columns that have the Write attribute have their values written to the database from the form.

For values in the form that are derived from Excel formulas on the form worksheet, it is suggested
that the transfer mode is Write only to ensure that the cell formula is not overwritten when the
form is refreshed.

Display Tab
The Display tab is an advanced setting and is show by clicking >>. It defines the filter that is used to
display the columns (on the Links tab) from the database to the form. The settings on this tab are
automatically updated when the Links are configured and should only be changed for custom
behavior.

Filter Grid
The first two rows are reserved for the first column on the Link tab that is of type DateTime. These
rows cannot be edited or removed from the grid.

If the form has no Interval (see Setup tab), additional filter row can be added to influence what is
displayed when the form is refreshed. For example, by adding a column that serves as a processed
flag, only unprocessed records are displayed when the form is refreshed.

To delete filters from the grid (outside of the first two rows), select the row and press the Delete key or
right-click and select Delete.
Order
The Order determines the display order of the records on the form. The first row is reserved for
the first column on the Link tab that is of type DateTime. If the form has no Interval (see Setup
tab), additional order criteria can be added

- 134 - User Guide


Store Tab
The Display tab is an advanced setting and is show by clicking >>. It defines the filter that is used to
store records from the form to the database. The settings on this tab are automatically updated when
the Links are configured and should only be changed for custom behavior.

When a form is stored, either a new form record is created or an existing form record is updated. In
the case of an update, the Store filter identifies the record to update. If no store filter is specified, only
new for records can be created.
Filter Grid
This grid defines each store filter and must be configured to identify a unique record. The first
row is reserved for the first column on the Link tab that is of type DateTime. This row cannot be
edited or removed from the grid.

To delete filters from the grid outside of the first row, select the row and press the Delete key or
right-click and select Delete.

User Guide - 135 -


Deploying Interactive Forms

Overview
Interactive Forms are deployed on local system or on a remote system using a Team Client (see
Team Portal).

Local
On the system where XLReporter is installed, the viewers are opened from the Home tab of the
Project Explorer by selecting the following:

The application can also be run from the command line with C:\XLReporter\bin\XLRxForm.exe
enabling it to be opened from external applications and HMI displays.

Team Client
From a team client, the application is opened by the Team Explorer (see Team Portal) from remote
workstations and mobile devices.

Security
If User Security is not enabled, then any user can use all the features.
If User Security is enabled (see User Accounts) then the User logged on must have the appropriate
privileges.

User Interface
The interface consists of a Left view and a Right view. The Left view is where the form and dates are
selected and the Right view shows the content of a form.

Left View
The left view contains the forms assigned to the user logged on (if User Security is enabled) and a
user entry panel to determine the content of the display.
Right View
The right view displays the content of the form selected. The A column indicates the status of a
row as a color indicator. The following colors are used:
No color the row is empty, no data has been entered.
Grey the row is read from the database table and displayed on the form.

- 136 - User Guide


Green the row is edited and waiting to be stored to the database. After the store, if the store
is successful the cell changes to Grey.
Red the row is edited but has not been successfully stored to the database. Typically in this
scenario an error message appears to describe why the store was not successful.
Dark Yellow the individual record is locked and cannot be edited.
Yellow every record in the form is locked and cannot be edited.
Collapse/Expand
These buttons expand and collapse the left panels.
Save, Print
See Deploying Interactive Reports.
Store
When edits are complete the Store is clicked to permanently save the edits.
Options
See Deploying Interactive Reports.
Lock
The option will lock selected rows so that that they cannot be edited. This option is only enabled
if the user has lock record privileges and if record locking is enabled on the form.
Cancel (right-click)
If a value is entered or edited by mistake, the edit can be removed by selecting the cell in the A
column corresponding to the edited record (colored green) and either clicking Esc on the keyboard
or Cancel in the Keypad.
Delete (right-click)
If a record has been entered and stored by mistake, the record can be removed from the table by
selecting the cell in the A column corresponding to the stored record (colored gray) or by clicking
Delete on the keyboard or Delete in the Keypad.

Mobile Tablets (Team Edition)


Data collection can be performed on a mobile device outside of the wireless network (wifi) connection.
In this case, download the forms (and database data) to the mobile device and work offline. When the
device is back in the network area, the collected form data is uploaded to the database.

User Guide - 137 -


Report Viewers

Overview
XLReporter provides viewers for Excel, PDF and HTML file formats. They provide easy access to
reports in a secure environment without the need to install third party applications, such as Excel.

The PDF and HTML viewers are not available in the Standard edition of the product

Deploying Viewers
The viewers are deployed on local system or on a remote system using a Team Client (see Team
Portal).

Local
On the system where XLReporter is installed, the viewers are opened from the Home tab of the
Project Explorer by selecting one of the following from the menu ribbon:

The viewers can also be run from the scheduler (using a Run Application command) allowing them to
be open on events or from the command line allowing them to be opened from external applications
and HMI displays. In this case use one of the following:
C:\XLReporter\bin\XLRxView.exe (Excel reports)
C:\XLReporter\bin\XLRxViewPDF.exe (PDF reports)
C:\XLReporter\bin\XLRxViewWeb.exe (Web reports)

Team Client
From a team client, the viewers are opened from the Team Explorer (see Team Portal).

Security
If User Security is not enabled, then any user can use all the features of the viewers.
If User Security is enabled (see User Accounts) then the User logged on must have the appropriate
privileges to View, Modify and Publish reports.

- 138 - User Guide


User Interface
The interface consists of a Left view and a Right view. The Left view is where the file is selected and
the Right view shows the content of a selected file.

Left View
In the top left panel the top level items Local, Scheduled and Published which can be expanded
to show the folders for these categories.

Local opens a file browser to select the folder on the local drives. The folder selected is listed
under Local and is reloaded each time the viewer is opened. To delete this entry, click the Delete
key.

Scheduled folders are created and updated by the scheduler when reports are created. On a Team
Client, these will be the folders on the Team Server.

Published folders display reports that have been saved by user using the Save option. In the case
of a Team Client, sub-folders for each client are created. (see also Interactive Reports).

Note that folders or files with a leading underscore _ in their name are not listed.

Controls are provided by the viewer for user interaction. Note that not all the controls are supported by
every viewer.
Collapse/Expand
These buttons expand and collapse the left panels.
Save, Print, Email
See Deploying Interactive Reports.
Freeze Panes and Zoom
Freeze Panes adds and removes horizontal and vertical freeze panes at the location of the
currently selected cell. This is a convenient way of keeping part of the report content fixed on the
display while scrolling across or down.

User Guide - 139 -


Zoom options zooms into and out of the report. Note that once the zoom factor is changed it is
applied to any other report you select.
Keypad
See Deploying Interactive Reports.
Refresh
This option refreshes the main display since the report could have changed while it was open in
the viewer. If Automatic Refresh is enabled in Options, then refresh will continue at the
specified interval.
Store
This option save any changes to the report, such as the addition of comments (see Annotation)
locally or back to a server.
Options
See Deploying Interactive Reports.

Annotating Reports
When reports are produced as worksheets, users can securely add comments to them using the
Workbook viewer. Changes can be made by the user even while the report is being updated in the
background. From a Team Client, the comments are saved back to the server.

This feature is extremely useful for annotating reports to describe the reasons for normal process
conditions.

All reports opened in the viewer are read-only. This is because they are produced from a template that
has all its cells locked (default setting). To unlock cells in a template so that the reports can be edited
in the viewer, use the Content Design in the Template Studio (see Template Studio).

Alternatively, open the template in Excel, highlight the cells and open the Format Cells dialog.

Select the Protection tab and uncheck Locked.

In the viewer, the cells can now be edited and the changes made permanent by clicking Store. By
default, the editing is performed by typing into the cell.

For more advanced editing techniques, edit the template and add Data Validation to the cells. Specify
data limits, create drop down lists and configure as other features that can be incorporated into the
viewer (see Interactive Forms for more information on data validation).

- 140 - User Guide


Web Portal

Overview
The web portal provides access to web reports to users using a web browser as an alternative approach
to the report viewer (see Report Viewers).

A user accesses reports in HTML format using the URL http://<server>/ Name/WebReports.aspx. The
<server> identifies the server hosting the web portal e.g., sytech.com or an IP address. The Alias is
part of the portal settings and is defaulted to XLRpublish.

Installing Internet Information Services (IIS)


Internet Information Services (IIS) is provided by Microsoft and is delivered as part of the operating
system. By default, IIS is not installed and so it must be done manually by an Administrator of the
system.
The procedure for installing and configuring IIS depends on the operating system.

Windows 7/Windows 8/ Windows 10


To install, open the Windows Control Panel and select Programs and Features.
Select Turn Windows Features on or off to display a list of Windows Features. Check Internet
Information Services.
Expand Internet Information Services, World Wide Web Services, Application Development
Features and check the following items (if they are not already checked):
.NET Extensibility
ASP.NET or ASP.NET (3.5 and 4.5)
ISAPI Extensions
ISAPI Filters
Click OK.

Windows Server 2008 R2


To install, open the Windows Control Panel and select Programs and Features.
Select Turn Windows Features on or off to display Server Manager. Select Add Roles, Server
Roles, then check Web Server (IIS).
Select Role Services, Application Development and check the following items (if they are not
already checked):
.NET Extensibility

User Guide - 141 -


ASP.NET
ISAPI Extensions
ISAPI Filters
Click Next then Install.

Windows Server 2012 R2


To install, open the Windows Control Panel and select Programs and Features.
Select Turn Windows Features on or off to display Server Manager. Select Add Roles and
features, Server Roles. Check Web Server (IIS) then click Add Features.
Select Role Services, Application Development and check the following items (if they are not
already checked):
.NET Extensibility 3.5
ASP
ASP.NET 3.5
ASP.NET 4.5
ISAPI Extensions
ISAPI Filters
Click Next then Install.

General IIS Settings


To use the Web Portal or a Team Client the Server machine must have the following options enabled.
Web Management Tools
IIS Management Console

World Wide Web Services


Common HTTP Features
Default Document
Directory Browsing
HTTP Errors
Static Content

Health and Diagnostics


HTTP Logging
Request Monitor

Performance Features
Static Content Compression

Security
Request Filtering

- 142 - User Guide


Windows Firewall Settings
If the Windows Firewall is turned on, an exception must be made in order for Team Clients to access
the Team Server.
Access the Windows Firewall settings from the Windows Control Panel. Select Allow a program or
feature through Windows Firewall. From the list of programs, check World Wide Web Services
(HTTP). You may have to click the Change settings button in order to check this setting.

If a connection can still not be made and the machine cannot be pinged from a command line, an
additional Windows Firewall rule is required.
In the Windows Firewall click Advanced Settings.
Then select Inbound Rules, right-click New Rule.
For the Rule Type select Custom and click Next.
For Program, select All Programs (default) and click Next.
For Protocol and Ports, Set Protocol type to ICMPv4 and click Next.
For Scope leave both settings to Any IP address (default) and click Next.
For Action select Allow the connection (default) and click Next.
For Profile leave all 3 options selected (default) and click Next.
Enter a Name, and click Finish.

User Guide - 143 -


Team Portal

Overview
The Team Edition provides a portal for team clients to access Interactive Reports, Interactive
Forms and viewers to view scheduled reports as workbooks, PDF or web pages. Access is either
locally, across the network or from wireless devices such as a Windows tablet.

Team Clients

Team Client Team Server

Before the Team Edition can be installed, follow the procedure in installing Internet Information
Services (IIS) in the Web Portal chapter.

Configuring Clients
On the local workstation (the location of the installation) specify the name, password and permissions
of each team client (see User Accounts).

Team Client Setup


A team client accesses the portal using the URL http://<server>/ XLRweb/Setup.htm. The <server>
identifies the server hosting the team portal e.g., Computer Name or an IP address.

Click the Install button on the web page. If the prerequisite software is not installed an error message
appears, otherwise the Setup dialog is opened.

Specify a valid User and Password, select the Language and click OK to install the software.
When the installation is complete, open the Start menu and under the XLReporter program group,
click on Team Explorer. All applications are available from the Team Explorer.

- 144 - User Guide


Web Browsers
Google Chrome
In order to run the Team Client installation using the Google Chrome web browser you must have the
ClickOnce for Google Chrome extension installed. This can be downloaded from the Google
Chrome Web Store by searching ClickOnce.

Mozilla Firefox
In order to run the Team Client installation using the Mozilla Firefox web browser you must have the
Microsoft .NET Framework Assistant add-on installed. This can be downloaded from Mozillas
website. The easiest way to find this is to search ClickOnce for Mozilla in Google.

Team Explorer
The Team Explorer gives easy access to the application available. It is also where users log on and
off the system.

The Team Explorer is opened from the Start menu in the XLReporter program group by selecting
Team Explorer.

Use Log On to log onto the Team Server. The user currently logged on is displayed in the lower left
of the display

Since most of the options that appear are the same as those in the Project Explorer, refer to other
chapters in this guide.

To confirm the commuication between the client and the Team Server, select Tools, Test
Communication.

Data Entry Forms


Data Entry Forms provide a means for team clients to collect manual data and store it to a relational
database on the Team Server (see Interactive Forms). When the communication between client and
server is not available, the client can be configured to store locally and to forward the data to the server
when the communication is established.

Forms Off Line


Team clients can download form templates and form data from the server so that when they are off-
line, they can continue to function as though the communication to the server is present. In reality, this
mode is used when then forms are downloaded to a mobile device which is used beyond the wifi reach
of the portal.

User Guide - 145 -


With the communication to the Team portal active, click Forms Off Line in the Team Explorer to
display a list of available forms for the user.

By default, both the Load and Data columns are checked. With Load checked, the form is
downloaded. With Data checked, any form data in the database for the time period specified on the
Data tab is downloaded. By default data from the last week is downloaded.

Click Accept to download the forms and go off-line.

Forms On Line
To upload any form changes to the Team server, locate the Team client so that it is able to
communicate to the server, e.g., in the wifi reach of the portal, and click Forms On Line in the Team
Explorer.

Any edits made while off-line are listed. Click Accept to upload these edits and go back online. To go
back online without uploading any edits, click Discard.

- 146 - User Guide


Database Manager

Overview
The Database Manager application is used to manage tables and columns in a database without
needing to know SQL programming. It can be used to create the tables required for Interactive
Forms or simply to preview the contents of a database.

The application is opened from the Tools tab of the Project Explorer by selecting Database,
Manager or from Tools, Database Manager in Excel.

Database Terminology
A database stores information in Tables which contains Columns and Rows (also referred to as a
Records) of data. Each Column has a name and a type, e.g., a column called szTagName is used to
hold tag names so it would be of type Text.

User Interface
The interface manages a Connector and each Table it contains.

Connector
At the top of the display is where either an existing connector is selected or a new connector is created.

Click New Connector and select Database (general database), Form (database that contains tables
used in data entry forms, see Interactive Forms) and Analytic (database that contains tables for
analytics, see Analytics).

If a connector has already been defined, select it from the drop down list to show all its tables.

User Guide - 147 -


Table
Selecting a Table Name will display all its Columns in the grid showing the Name and the Type. To
edit the Name, select the cell and change its content. To edit the Type, click a row and make a
selection from the list.
Note that editing is not supported for all connectors.

The Types supported are:


DateTime
Use for date and time stamps.
Byte
Use for whole numbers that range from 0 to 255.
Number
Use for whole numbers that range from -32,768 to 32,767.
Number (long)
Use for whole numbers that range from -2,147,485,648 to 2,147,483,647.
Text
Use for textual data. Up to 255 characters can be stored in the column.
Text (wide)
Use for columns that store textual data in wide format. This must be used if Unicode
characters such as Chinese or Japanese are used. Up to 255 characters can be stored in the
column.
Decimal
Use for numeric values with decimals (e.g., floating point values) with up to 7 significant
digits.
Decimal (double)
Use for numeric values with decimals (e.g., floating point values) with up to 15 significant
digits.
Currency
Use for currency values. It is recommended that cells linked to columns of this type are
formatted to display currency in Excel.

New columns can be added to the grid by entering the information at the bottom row. Existing
columns can be deleted from the grid by right-clicking the row and selecting Delete or by selecting the
row and pressing Delete on the keyboard.

With a Table Name selected, a number of table operations are provided as:
Add
Add a table to the database. When selected, the Table Name changes from a drop down list of
tables to a text box where the new table name can be entered and the Columns grid is cleared.
Edits are not saved until OK is pressed. Press the Refresh pushbutton to switch the text box
back to the dropdown list.
Duplicate
Add a table to the database based on an existing tables structure only. When selected, the
Table Name changes from a drop down list of tables to a text box where a new table name
can be entered. The columns of the original table remain in the Columns grid as a starting
point for the new table.
Delete
Delete the selected table in Table Name from the database.
Clear Content
Clear all the rows from the selected table in Table Name. When selected, a conformation of
the number of rows deleted is shown.
Preview
Open the Preview dialog to display the top 100 records stored in Table Name. If the table
has the column DateAndTime, records are ordered by DateAndTime in descending.

- 148 - User Guide


Options
Record Locking
This setting is only available for Form connectors. When this option is checked an xlrLock
column is automatically added to the table. Use this option if the table is intended for an
Interactive Form that prevents users from editing the records once they have been locked.
Once checked this setting cannot be edited.

Table and Column Restrictions

Naming Convention
The following guidelines should be considered when dealing with databases:
Table and column names should not begin with a number.
Table names should not start with the letters lu.
Table and column names cannot match the reserved words of SQL. A list of reserved words
can be found at http://msdn.microsoft.com/en-us/library/ms189822.aspx
Table and column names should be less than 64 characters long.
Table and column names should not contain a period (.), exclamation point (!), accent grave
(`), pipe (|), single quote (), double quote (), comma (,), asterisk (*), colon (:) or square
brackets ([and]).
Table and column names should not lead with a space.
The column name DateAndTime is a reserved name. If you use this as a column name you
will not be able to modify or delete it once the table is created. In addition, whenever you
view the table in Database Manager the Date Interval option will appear checked.

Database Limitations
Microsoft Access
A table should have no more than 127 columns configured as only 127 columns can be
updated at one time.
The database is restricted to 2GB in size. Once this limit is reached no more records may be
inserted to the database until records are purged.
Support for accdb database requires the appropriate Microsoft Access Database Engine OLE-
DB provider. Both the 64 and 32 bit versions of these drivers are available on the installation
CD for you to install if needed.

User Guide - 149 -


DSN Settings

Overview
The DSN application is used to define 32 bit ODBC data sources.

The application is opened from the Tools tab of the Project Explorer by selecting Database, DSN
Settings.

- 150 - User Guide


Email and SMS

Overview
The Email and SMS application is used for the sending of Email and SMS (text) messages,
automatically or on-demand. A common use of the application is to email process reports to various
departments.

The application supports most email servers including Googles Gmail, Yahoo and Hotmail and other
secure mail servers, Microsoft Exchange Server and directly to SMTP Servers.

The main window of the application is opened from the Project Explorer by selecting the Tools Tab,
Application, Email and SMS.

The display consists of menu options, a left panel of configurations and a right panel showing the
content of the selected configuration.

To edit an existing configuration, highlight it on the list and click Modify. If the configuration name is
edited, then the settings will be saved to this new name.

To delete an existing configuration, highlight it on the list and click Delete.

A Configuration requires information on the email server and also email addresses of recipients. This
information is setup frem the Edit, Servers and Edit, Contacts menu options. Once setup, the
configuration is based on this information

The steps required to implement Email and SMS are:


Setup the Email Server and Contacts
Design a Configuration
Deploy a Configuration for automated emails

Setup Email Server and Contacts


Setup the Email Server
Select Edit, Servers to show a grid of the servers currently setup. The server in the top row is treated
as the default server when designing configurations.

User Guide - 151 -


If a new server is required, click the pushbutton () in the Friendly Name column.

Enter a Friendly Name to identify the server. The Server (SMTP) is the name of the SMTP
(outgoing) mail server that will be used along with the Port Number. If the mail server uses the
default port (port 25), check Use Default, otherwise specify the port number.

Some mail servers use encryption. Set Encryption to None if the server has no encryption, otherwise
select SSL or STARTTLS depending on the mail server requirement.

The Logon Information may or may not be required depending on the mail server. Enter a Name
which, depending on the server, may be a name or a full e-mail address. Enter the Password
associated with the Name specified.

The Sender Information is details about who is sending the configuration. Enter a friendly Name
(this is shown to the recipient as the sender) and a valid E-mail address

A test email using the settings specified can be sent by clicking the Send Test E-mail. A message is
sent to the address specified in the E-mail setting in the Sender Information section.

Setup Email Contacts


Select Edit, Contacts to show a grid of the contacts currently setup. These contacts will be displayed
during the setup of a configuration.

If a new contact is required, select an empty row and enter the Friendly Name, Email, Phone and
phone Provider.

The Phone and Provider are only required for SMS. Note that if your Provider is not listed, it can be
added using the menu option Edit, Providers from the main window.

- 152 - User Guide


To remove a contact, highlight the contacts row in the grid and press the delete key on the keyboard.
Multiple rows can be selected and deleted at once.

Design a Configuration
Configuration are designed or modified by selecting the menu option Add or Modify. The Add option
is always enabled whereas the Modify option is enabled when a configuration is selected.

The dialog consists of three tabs Server (mail server), Content (email recipients and content) and
Attachments (email attachments).

Enter a Name for the configuration to reflect its settings e.g., Managers.

Server
Select the Message Type, either Email or Text Message. The Mail Server is defaulted to the first
server defined when the servers were setup (see Setup a Mail Server). If a different server is
required, select it from the dropdown list. A new server can be defined by clicking the Servers button.

Content
The Content tab is used to define the names of recipients, the subject and email content.

User Guide - 153 -


Use the To and Cc to select the email addresses of the recipents of the email. Enter a Subject
which can be a combination of text and Variables. A list of variables is displayed by right-clicking on
the textbox of the Subject.

The Importance can be set to Low, Normal or High. This setting is only enabled if Type is E-mail.
If Request receipt is checked then when the recipient receives the email they are prompted to send a
return receipt indicating they have received the message. This setting is only enabled if Type is E-
mail.

The content of the email can either be Text or HTML.


If the content is Text, then Variables and Tags can be included in the message (selected by right-
clicking the textbox).
If the content is HTML, then a HTML file from the Web directory of the project is selected by clicking
browse [] (see Attachments tab).

Attachments
The Attachments tab is used to define the file attachments for an email. This tab is not visible when
Type is set to Text Message or when it is launched from the Scheduler.

The dialog shows a grid that lists all the attachments for the email.

To add a new attachment, click [] under the Folder column on the bottom row in the grid. This
launches the Attachment dialog (see Assigning Attachments). To remove an attachment, highlight
the row and press the delete key on the keyboard.

Multiple attachments can be are compressed into a single file by checking Send as compressed file
and entering a Name. If this is not specified as a full path, it is pre-pended with {ExcelFolder}
indicating that the compressed file is created in the Excel directory of the project.
The Name can be a combination of text as Variables by right-clicking the textbox. If no extension is
specified, then zip is used. Note that if the compressed file name already exists, it is overwritten when
the message is sent.

The compressed file (specified in the Name setting) is deleted from the file system if Delete after
send is checked.

Assigning Attachments
This dialog is used to specify either the configuration of attachments or an HTML file to use as the
message body content.

- 154 - User Guide


The Folder can either be a Project folder (Excel, Web or PDF) or a Specific folder. When Folder is
set to Project, Subfolders can be manually entered or selected from the drop down list.

The Filter determines which files from the Folder will be considered. The filter Name can be a
combination of hard coded text, wildcards (* for multiple characters), or ? (for a single character).
Files that begin with an underscore (_) are never considered.
Example: To attach all the Excel reports that start with Flow, set the Filter Name to Flow*.xls*.

Check Date to filter the files on the file modified date. This setting can be:
Most Recent
The most recent file is considered.
Within
All files newer than what is specified is considered.
Outside
All files older than what is specified is considered.

Example: To attach all reports generated within the last week, set the date filter to Within 1 week(s).
To attach all reports generated more than 3 days ago, set the date filter to Outside 3 day(s).

The most recent file satisfying the Name and Date settings can be excluded by checking Exclude
Most Recent.

Validate
Any configuration can be validated by highlighting it from the main window and selecting Send. This
will run the configuration and display the results.

If a configuration contains custom variables then an intermediate window will appear showing the
variables used and where temporary values can be assigned.

User Guide - 155 -


Deploy a Configuration
A configuration is deployed for automatic processing on time or process events from the Scheduler
using either the Email a Workbook or Email by a Configuration (see Scheduler).

For Email by a Configuration, if Custom Variables are being used (defined in Project Explorer, then
their values can also be specified in the form Variable=Value).

Example: Setup a configuration with the subject Tank {TankName} level low. The Variable
{TankName } is a custom variable that was specified in Variables. This configuration can be used
across all our tanks by assigning the custom variable the value pertinent to a specific tank.

For each tank, setup an event schedule that trigger when the process level falls below 30. Assign
TankName and run the configuration to email a text message to the appropriate people.

Configurations can also be deployed from third party applications such as HMI screens, VBA macros,
and the windows command line. The syntax to execute a configuration is as follows:

Install\bin\XMailer.exe /f Configuration

Where Install is the full path to the installation and Configuration is the name of the configuration file.

- 156 - User Guide


FTP Transfer

Overview
The FTP Transfer application is used to transfer files to/from an FTP server, automatically or on-
demand. A common use of this application is to download data from instrumentation such as touch
panels.

The application supports secure, encrypted connection for FTP servers that require it. If a FTP server
is maintaining a folder structure, then the application can mirror this on the local system and maintain
it automatically.

The main window of the application is opened from the Project Explorer by selecting the Tools Tab,
Application, FTP Transfer.

The display consists of menu options, a left panel of configurations and a right panel showing the
content of the selected configuration.

To edit an existing configuration, highlight it on the list and click Modify. If the configuration name is
edited, then the settings will be saved to this new name.

To delete an existing configuration, highlight it on the list and click Delete.

A Configuration requires information on the FTP server. This information is setup frem the Edit,
Server menu options. Once setup, the configuration is based on this information.

The steps required to implement FTP Transfer are:


Setup the FTP Server
Design a Configuration
Deploy a Configuration for automatic file transfer.

Setup FTP Server


Select Edit, Server to show a grid of the servers currently setup. The server in the top row is treated
as the default server when designing configurations

User Guide - 157 -


If a new server is required, click the pushbutton () in the Friendly Name column.

Enter a Friendly Name to identify the server. The Server (FTP) is the name of the FTP server that
will be used along with the Port Number. If the FTP server uses the default port, check Use Default
otherwise specify the port number.

The Logon Information may or may not be required depending on the FTP server. Enter a Name and
the Password associated with the Name specified.

Some mail servers use encryption. Set Encryption to None if no encryption, otherwise select SSL or
STARTTLS depending on the mail server requirement.

A test of the settings specified is made by clicking the Test FTP Server.

Design a Configuration
Configurations are designed or modified by selecting the menu option Add or Modify. The Add
option is always enabled whereas the Modify option is enabled when a configuration is selected.

The dialog consists of three tabs Server (FTP server), Source (source of the files) and Target
(destination folder).

- 158 - User Guide


Enter a Name for the configuration to reflect its settings e.g., PanelView Plus or Red Lion controller.

Server
Select the Transfer Source. This can either be FTP Server or Local Network where the source files
are stored. Set Transfer Method to Upload to transfer to the Source or Download to transfer from the
Source.

The FTP Server is defaulted to the first server defined when the servers were setup (see Setup FTP
Server). If a different server is required, select it from the dropdown list. A new server can be defined
by clicking the Servers button.

Source
The Source determines which files that will be transferred

The Folder can be Project or Specific.


Project folder (Excel, Web or PDF) indicates the files are in the a project folder. This option is only
selectable if the Method on the Server tab is Upload. Subfolders of a project folder can be manually
added in the text field.
Example: To upload all the Excel reports generated from the template DailyFlow set Project to Excel
and SubFolder to DailyFlow.

Specific folder indicates that the files are in a specific folder on the system.
If Method is Upload, this is a folder on the local machine. A browse pushbutton [] is provided to
browse the available folders on the system.
If Method is Download, this is a folder on the FTP server. This setting may be left blank if the files
are on the root of the FTP Server. If subfolder needs to be specified, each can be separated by /
(FTP) or \ (local network), e.g., PanelViewStation/Alarms

The Filter determines which files from the Folder will be considered. The filter Name can be a
combination of hard coded text, wildcards (* for multiple characters) or ? (for a single character).
Files that begin with an underscore (_) are never considered.
Example: To attach all the Excel reports that start with Flow, set the Filter Name to Flow*.xls*.

Check Date to filter the files on the file modified date. This setting can be:
Most Recent
The most recent file is considered.

User Guide - 159 -


Within
All files newer than what is specified is considered.
Outside
All files older than what is specified is considered.

Example: To transfer all reports generated within the last week, set the date filter to Within 1 week(s).
To transfer all reports generated more than 3 days ago, set the date filter to Outside 3 day(s).

The most recent file satisfying the Name and Date settings can be excluded by checking Exclude
Most Recent.

Target
The Target indicates where the files will be transferred.

If Method is Download, Folder is on the local machine. A browse pushbutton [] is provided to


browse the available folders on the system. If this setting is left empty, Source files are downloaded to
the Excel directory of the Project.

If Method is Upload, Folder is on the Source on the Server tab. If a subfolder needs to be specified,
each folder should be separated by / (FTP) or \ (local network), e.g., PanelViewStation/Alarms.

All the files in the Target Folder are deleted before the file transfer occurs by checking Clear Folder
before transfer.

The Overwrite setting indicates if files in the Target Folder are overwritten. Choices are:
Never
Overwrite is disabled.
Always
Overwrite is always enabled
Size Change
Overwrite is always enabled if the source file size differs from the target.

Validate
Any configuration can be validated by highlighting it from the main window and selecting Perform.
This will run the configuration and display the results.

- 160 - User Guide


Deploy a Configuration
A configuration is deployed for automatic processing on time or process events from the Scheduler
using either the FTP a Workbook or FTP by a Configuration (see Scheduler).

For FTP by a Configuration, multiple configurations can be specified at once by seperating the names
by a comma.

Configurations can also be deployed from third party applications such as HMI screens, VBA macros,
and the windows command line. The syntax to execute a configuration is as follows:

Install\bin\ xlrFTP.exe /f Configuration

Where Install is the full path to the installation and Configuration is the name of the configuration file.

User Guide - 161 -


File Manager

Overview
The File Manager application automates file operations such as copying files to a network file server,
moving old files to an archive folder and compressing files into a single compressed folder for sending
or storage.

Pre-configured configurations are provided such as xlrDeleteStatusLogs which deletes status logs
older than 2 months and xlrProjectBackup which produces a compressed file of the active project.
These can be edited as required.

The designer is opened from the Project Explorer by selecting the Tools tab, Application, File
Manager.

The display consists of menu options, a left panel of configurations and a right panel showing the
content of the selected configuration.

To edit an existing configuration, highlight it on the list and click Modify. Note that if the
configuration name is edited, then the settings of the configuration will be saved to this new name.

To delete an existing configuration, highlight it on the list and click Delete.

The steps required to implement File Manager are:


Design a Configuration
Deploy a Configuration

Design a Configuration
To add a new configuration, highlight Configurations and click Add.

- 162 - User Guide


Enter a Name for the configration and add file management operations to the grid by selecting an
empty row and clicking the browse button ().

To remove a file operation, highlight the row and press the Delete key on the keyboard or select Delete
from a right-click.

File Operation
A configuration consists of a list of operations.

Copy
This copies all the files determined by the Source settings to the Target Folder.
Copy and Rename
This copies the file determined by the Source settings and renames it to the Target File name
specified. This only operates on a single file.
Delete
This deletes all the files determined by the Source settings.
File Name to Variable
This determines the most recent file based on the Source settings and stores that file name to
the XLReporter Register Variable specified.

User Guide - 163 -


Move
This moves all the files determined by the Source settings to the Target Folder, removing
them from the original folder.
Compress Files
This compresses all the files determined by the Source settings to a single file determined by
the Target File name specified.
Compress Folders
This compresses all the folder and files determined by the Source settings to a single file
determined by the Target File name specified.

The Source Folder can either be a Project folder (Excel, Web or PDF) or a Specific folder in which
can the browse [] button is used to select a folder. When Folder is set to Project, Subfolders can
be manually entered or selected from the drop down list.
Example: To manage files for template ABC which is configured to create subfolders, enter
ABC\2016\Jan to select the reports for this template in January, 2016.

In the case of a Project folder, Variables can also be entered as part of the Subfolders.
Example: To manage files for template ABC which is configured to create subfolders, enter
ABC\{YYYY}\{MMM} to select the reports for this template in for the month and year the configuration
is deployed.

The Filter determines which files from the Folder will be considered. The filter Name can be a
combination of hard coded text, wildcards (* for multiple characters), or ? (for a single character).
Files that begin with an underscore (_) are never considered.
Example: To filter all the PDF files from the Folder, set the Name to *.pdf.

Check Date to filter the files on the file modified date. This setting can be:
Most Recent
The most recent file is considered.
Within
All files newer than what is specified is considered.
Outside
All files older than what is specified is considered.

Example: To perform operations on files dated within the last week, set the date filter to Within 1
week(s). To perform operations on files dated more than 3 days ago, set the date filter to Outside 3
day(s).

The most recent file satisfying the Name and Date settings can be excluded by checking Exclude
Most Recent.

When the Type is set to Compress Files, checking Delete Source Files after compression will delete
the Source files after they are added to the compressed file.

The Target is setting depends on the Type selected.


Folder
This setting is available when Type is set to Copy, Delete or Move. If the Folder specified
does not exist, it is created. Variables like {YYYY} and {MMM} can be specified as part of
the Folder. To access the list variables, right click and select Insert Expression.
File name
This setting is available when Type is set to Copy and Rename, Compress Files or Compress
Folder and determines the new name of the target file. This setting can be a fully qualified
(C:\Reports\MyNewReport.xlsx), partially qualified (Production\MyNewReport.xlsx) or not
qualified (MyNewReport.xlsx). If the setting is not fully qualified Project Workbooks
folder is used. If the folder does not exist, it is created.

- 164 - User Guide


When Type is set to Compress File or Compress Folder, the file extension is not specified, it
is defaulted to .zip.
Register
This setting is available when Type is set to File Name to Register and writes the name of the
most recent file to the Register.
Overwrite
This setting is available when Type is set to Copy, Copy and Rename, Move, Compress Files
or Compress Folder. With both Compress types, these settings apply to the files within the
compressed file. This setting is disabled when Clear Target before compression is checked.
The following settings are available:
Never
If the file exists in the Target, it is not overwritten with the Source file.

Always
If the file exists in the Target, it is always overwritten with the Source file.

Source is newer
If the file exists in the Target, it is overwritten with the Source file only if the Source
file is newer based on file modified date.
Value
When Type is set to File Name to Variable, this setting determines if the Short name
(MyReport.xlsx) or the Long name (C:\Reports\MyReport.xlsx) of the most recent Source
file is captured.
Clear Target before compression
This setting is available when Type is set to Compress Files.
When checked, this setting indicates that if the compressed file exists, it is overwritten with a
new compressed file every time the file management operation is performed. Otherwise, if
the compressed file exists, the new Source files are added to it.

Validate
Any configuration can be validated by highlighting it from the main window and selecting
Configuration, Perform. This will run the configuration and display the results.

Deploy a Configuration
A configuration is deployed for automatic processing on time or process events from the Scheduler
using the Manage Files by Configuration (see Scheduler).

The configuration can also be deployed from third party applications such as HMI screens, VBA
macros, and the Windows command line. The syntax to execute the configurations is as follows:

Install\bin\xlrFile.exe /f Configuration

Where Install is the full path to the installation and Configuration is the name of the configuration file.

User Guide - 165 -


Themes

Overview
Themes are used to maintain a consistent report appearance. They are defined in the Theme builder,
opened from the Tools tab of the Project Explorer.

Using Themes
Themes are used in the Template Studio during the configuration of a template. A theme is selected
from the Content option and will remain in effect until a new theme is selected.

If no theme is required, select None.


The Content Chart and Design options, together with Data Connect will adhere to the theme
selected.

Theme Builder
From the Tools tab of the Project Explorer, select Themes to display a list of the current themes
defined.

To add a new theme click Add or to modify a selected theme click Modify. The edit window display
tabs to setup Content, Chart and Conditional Formatting themes.

- 166 - User Guide


The Content tab defines the themes for the Report Header and Tables of a template. The Report
Header theme is applied when a header is added to the template using the Insert Header of the
Content Design option of the Studio.
The Table theme is applied when a summary table is added to the template using the Insert Summary
of the Content Design or when a new Data Connection is added to the template.

The Chart tab defines the themes for charts that are added to the template using the Chart Design
option of the Studio.

The Conditional Formatting tab defines the foreground and background of cells when conditional
formatting is added to the template using the Insert Conditional Formatting of the Content Design
option of the Studio.

User Guide - 167 -


Status Logs

User Interface
The Status Logs are viewed in the viewer opened from the Project Explorer, Home tab, View,
Status Logs. It is used to view the status logs that are generated when commands are processed.

The log files are created daily and stored in the Log folder of the project and are named for the Year (4
digits) Month (2 digits) and Day (2 digits) they occurred. The contents displayed are the files with the
checkbox next to the name. Multiple files can be selected and displayed at once.

To delete the checked files, click the delete button.


Logs
The right pane shows a grid with each log recorded. If additional log files are selected by clicking the
checkbox by the name then a Refresh click will refresh the display. The display can be refreshed
periodically by clicking the start refresh button .

If content is not fully visible it can be displayed in a popup is shown by hovering the mouse cursor
over the text.

The content of the grid can be filtered by right clicking on the headers of each column.

- 168 - User Guide


Name Types

Overview
Name Types are variables that represent date and time settings. They can be used individually or
combined together with static text and other Variables. When a Name Type is used, it is enclosed in
curly braces, e.g., {DD}.

Type List
The following table contains the list of types provided.

Name Type Description Default unit


DATIM date and time in local format Hours
datim date/time in universal format YYYY-MM-DD HH:mm:ss Hours
DATE date in local format Days
date date in universal format YYYY-MM-DD Days
TIME time in local format Minutes
time time in universal format HH:mm:ss Minutes
WYR0 week of year (0 to 52, Sunday first) Weeks
WYR1 week of year (1 to 53 Sunday first) Weeks
WYR2 week of year (1 to 53, Monday first) Weeks
WDAY day of week (1 to 7, 1=Sunday) Days
YDAY day of year (1 - 366, 1=Jan 1) Days
YYYY year (4 digit) Years
MMMM month (January December) Months
DDDD day of week (Monday Sunday) Days
MMM month (Jan - Dec) Months
DDD day of week (Mon Sun) Days
YY year (2 digit) Years
MM month (1 12) Months
DD day of month (1 31) Days
hh hour (0 - 23) Hours
mm minute (0 - 59) Minutes
ss second (0 - 59) Seconds
dM day offset of month (0 - #days) Days
hM hour offset of month (0 #hours) Hours
mM minute offset of month (0 #mins) Minutes
mW minute offset of week (0 10079) Minutes
hW hour offset of week (0 167) Hours
dW day offset of week (0 to 6, Sunday first) Days
hD hour offset of day (0 23) Hours
mD minute offset of day(0 1439) Minutes
dY day offset of year (0 - 365) Days
MY month offset of year (0 - 11) Months

User Guide - 169 -


Name Type Calculation
Name Types can be used in calculations expressed in the following format:
{Name Type operator_1 value_1 [unit_1]}

operator_1 can be one of the following:


+ (plus)
- (minus)
@ (at)

For the + or operators, unit_1 can be one of the following


s (seconds)
m (minutes)
h (hours)
D (days)
W (weeks)
M (months)

For the @ operator, unit_1 can be one of the following


D (day of the month)
d (day of the week)

If unit_1 is not specified for the + and - operators, then the default unit is used from the table in the
Name Type List section above. If unit_1 is not specified for the @ operator then the default unit is D
(days/day of the month).

For example, for the date and time 11 July 2015, 15:21:00,
Name Type Result
{TIME-3h} 12:21:00
{TIME-3} 15:18:00 (since the default unit for TIME is minutes).
{DATIM-1D} 10 July 2015, 15:21:00
{DATIM-1M} 11 June 2015, 15:21:00
{DATIM@1D} 1 July 2015, 15:21:00 when the day=1 in July)
{DATIM@31D} 31 July 2015, 15:21:00 when the day=31 in July, defaults to
the last day for months that have less than 31 days
{DATIM@1d} 5 July 2015, 15:21:00 the day of week=1 (Sunday) for the week 28 July.
{DATIM@7d} 11 July 2015, 15:21:00 the day of week=7 (Saturday) for the week 28 July.

Extended Name Type Calculation


For the + or operators, the format of the Name Type can be extended as follows:
{Name Type operator_1 value_1 [unit_1][@ value2 unit_2]}

unit_2 follows the same rule as unit_1 for the @ operator described above.

For example, suppose the date and time is 11 July 2015, 15:21:00,
Name Type Result
{DATE-2W@1D} I June, 2015 back 2 weeks and fix on the first of the month
{DATE-2W@2d} 22 June, 2015 back 2 weeks on the day of the week=2 (Monday)

- 170 - User Guide


Name Type Scaling
The following Name Types can also be scaled arithmetically.
dM
hM
mM
mW
hW
dW
hD
mD
dY
MY
The format for scaling:
{Name Type operator_2 value_2}
{Name Type operator_1 value_1 [units] operator_2 value_2}

Only non-decimal values of value_2 are supported.

operator_1 can be one of the following:


+ (plus)
- (minus)

operator_2 can be one of the following:


* (multiplication)
/ (division)
: ( equivalent to / plus 1 to the result)

For example, for the date and time 11 July 2015, 15:21:00,
Name Type Result
{dM-2D/2} 4
{mD/15} 61 (time given is in the 61st, 15 minute interval).
{mD-7h/15} 33
{hD:8} 2 (hD/8 + 1)

Report Date and Scheduled Date


The value of a Name Type is based on the report date or the scheduled date, which in most cases, are
the same but there are occasions when they can be different. For example, if we produce the report for
10th September, 2014 on 2nd January 2015 then the report date is 10th September, 2014 and the
scheduled date is 2nd January 2015.

By default, Name Types are evaluated on the report date. By prefixing them with a dollar sign ($),
they will be evaluated on the scheduled date.

For example, {DATE} is calculated on the report date whereas {$DATE} is calculated on the current
date.

User Guide - 171 -


Excel Primer

The Design Studio


Form and report templates are designed in the design studio in Excel. Because of this familiar
environment, the learning curve for somebody with a basic understanding of Excel is greatly reduced.
All the features of Excel can be part of a template.
Excel Charts
Excel Formulas
Conditional Formatting
Embedded Graphics and Images
Worksheet Security
Custom VBA macros
In addition a comprehensive set of Management functions (see Data Management) are provided that
are designed specifically for the needs of industry.

Terminology
For those unfamiliar with Excel terminology here are the basic terms:
An Excel file is referred to as a workbook.
A workbook contains one or more worksheets. Each worksheet appears as a tab at the
bottom of Excel.
A worksheet contains cells.

Cell Formatting
Custom
For custom formatting of cells, right click and select the Format Cells In this dialog,
decimal places, date form can be specified. On the Number tab, the Custom Category
provides more advanced formatting e.g., mm/dd/yy h:mm:ss gives the date and time to the
second.
Formulas
Excel provides dozens of formulas and functions that can be incorporated into reports. To
access, click the fx button in the Excel formula bar.
For Interactive Forms, user entry can be values used by formulas in other cells. Both user
entry and formulas can be saved to the database. Note that in order to prevent a formula from
being overwritten when the form is refreshed, set the Transfer of the cell(s) to Write.
Borders and Backgrounds
Borders and background colors can add a level of sophistication to reports. These settings are
available in the Format Cells dialog under the Border and Fill tabs.
For Interactive Forms, placing a border around each input cell is a good idea to emphasize
the form field. Different background colors can be used to color code input cells one color
and any formula cells with another.

Validation
All the Data Validation of Excel can be used in an Interactive Form (in Excel, select Data, Data
Tools, Data Validation). Examples of data validation include restricting cell values to certain ranges
and providing pick list for the users selection. In addition, custom instructions and error prompts can
be configured to give feedback to the user.

Most of these validation types require a data type and a condition that must be met. The condition that
can be hardcoded or given by a cell reference.

- 172 - User Guide


Hint: Select the entire range of cells that require the same type of validation before opening Data
Validation.
Validation Types
Any Type
Any input is accepted for this type. This is applicable for fields in a form that you dont need
any validation for, however still want to utilize the custom input prompt for providing
instructions.

Whole Number
The field can accept a whole number that meets the specific criteria.
For example, a field can only accept an integer between a min and max value contained in
cells C10 and C11 respectively.
Allow: Whole Number
Data: Between
Minimum: =C10
Maximum: =C11

Decimal
The field can accept a decimal number that meets the specific criteria.
For example, a field can only accept a decimal number that is less than or equal to 5.
Allow: Decimal
Data: less than or equal to
Maximum: 5

List
A drop down list is provided to select from. It is recommended to use this option whenever
possible to prevent against manual entry errors and to keep the database entries consistent. In
addition, dynamic lists can be created by using Excel formulas.
With this option, In-cell dropdown should always be checked.
For example, the field requires one operator name to be entered. There are 10 total operator
names that could be chosen. Their names are listed in cells J1 to J10.
Allow: List
Data: N/A
Source: =$J$1:$J$10

Date
The field requires a date to be entered that meets the conditions set.
For example, the field can accept a date that is within todays date and a week from today.
Allow: Date
Data: Between
Start date: =TODAY()
End date: =TODAY() + 7

Time
The field requires a time to be entered that meets the condition set.
For example, a time must be entered between normal working hours 9am to 5pm.
Allow: Time
Data: Between
Start time: 9:00 AM
End time: 5:00 PM

User Guide - 173 -


Text Length
The field requires text to be entered that meets the condition set.
For example, the field is a comment field that requires text but is limited to 255 characters so
it can be inserted into a Text data field.
Allow: Text Length
Data: Less than or equal to
Maximum: 255

Custom
The field uses a calculation/formula to determine if data entered is valid. The formula must
evaluate to TRUE for valid entries and FALSE for invalid entries. This is the most dynamic
of the validation types because it can use a vast array of Excel formulas. The value of other
cells can be used to determine validation as well.
For example, the field configured for cell B10 can only accept text. Use =ISTEXT(cell) as the
formula to validate that only text is entered.
Allow: Custom
Formula: =ISTEXT(B10)

In another example, the cell A11 can only accept a product ID starting with PROD and
ending with a number. E.g. PROD459789.
Allow: Custom
Formula: =IF(LEFT(A11,4)=PROD, TRUE, FALSE)

Ignore Blank
The majority of validation types offer the Ignore blank option which is found in the Settings
tab. To ensure the user has enters a value, uncheck this option. When the form is deployed,
the cell will appear with a red background when the form is deployed until data is entered.

If you wish to create a required cell with no additional validation, set Allow to Any Type.
However the Ignore blank option is disabled. To work around this problem:
Switch Allow: to Whole Number.
Uncheck Ignore blank.
Set Allow: back to Any Type.

Custom Input and Error Messages


As part of the Excel validation configuration, custom input and error messages can be set. These
messages appear when the cell is selected or when data entered in the cell does not meet the
validation configured. By creating input messages, you can give the user instructions on each
form input as well as instructions to correct the data if it does not pass validation.
Input Message
This option, when enabled, displays a prompt when the user selects the cell to edit. It can be
used to give instruction on what type of data is required for this field.

Error Alert
This option (when enabled) prompts the user after invalid data is entered in the cell to alert
them that it is invalid. In iForm only the Stop Style is supported, the others should not be
used. When invalid data is entered, a Stop alert message is shown. There are 2 options
available:
Retry to enter a new value
Cancel to remove the current value from the cell

If this option is not enabled and the user enters invalid data, the data remains in the cell. This
can be useful for cells that present a list of values to select from but also allow for the user to
enter something manually. For example, on a form a user must fill out if a piece of equipment

- 174 - User Guide


fails, a list of common failure reasons may be provided, but there may also be the need for a
user to enter a custom reason that is not on the list.
Conditional Formatting
One of the best features of Excel is conditional formatting which allows you to highlight anomalies or
values that are out of spec.
To configure, under the Home tab select Styles, Conditional Formatting, New Rule. For example, to
color a cell red if the value is greater than 50, Select Format only cells that contain. For the Rule, set
Cell Value greater than 50. Click Format and under Fill, select red.

User Guide - 175 -


Connector Specifics

Overview
This chapter is for the specifics of the Connectors. The Connectors that are self-explanatory are not
included.

Common Settings

Connectors for Real Time Servers

Connectors for Real Time Servers support tuning parameters which are available by clicking the
Settings button. The Initial Wait setting is the amount of time (in milliseconds) the Connector waits
after making a request and before retrieving data. This can be useful for communications that do not
respond immediately.

Retry determines how many attempts will be made when bad values are returned. The default is 2 and
it should typically not be changed. The Retry Time determines how the time in between retries.

Connectors for OPC Real Time and OPC Historical Servers

Connectors for OPC require a Primary Server. If the Primary Server is on a remote machine, the
Node must be specified. The Node can be selected from the drop down list or manually entered as a
machine name or IP address.

- 176 - User Guide


Connectors for Relational Databases

Connectors for databases support custom Setting. If queries timeout, increase the Client Wait Time.
The delimiter and timestamp settings are automatically filled for Access and SQL database and can be
modified for other databases.

Microsoft SQL Server


When connecting to Microsoft SQL Server, a list of available servers on the network is presented. If
the server you are looking for is not listed, it may be because the SQL Server Browser service is not
running on the server.

To enable, on the machine where SQL Server is installed, open the SQL Server Configuration
Manager. Select SQL Server Services, right-click SQL Server Browser and select Start.

MySQL
In order to configure a connection to a MySQL database, the MySQL ODBC driver must be installed
on the machine where XLReporter is installed. On 64 bit Windows operating systems, both the 32
and 64 bit MySQL ODBC drivers must be installed.

When configuring the connector, Name contains a list of currently configured Data Source Names
(DSNs) built for MySQL. The New button allows you to create a new DSN to MySQL.
Note that if All Users is selected, you will need Administrative privileges in order to create a new
DSN.

Connectors that have a Secondary Server


Most connectors support a secondary server. If data retrieval from the Primary Server fails the
Secondary Server is used.

User Guide - 177 -


Rockwell Automation

RSLinx Classic
This connector is used to get real time values from RSLinx classic via the RSLinx OPC Server.
Note RSLinx Classic Lite does not provide the OPC Server.

Remote Access
In order to access the RSLinx Classic OPC server remotely, RSLinx Classic Gateway must be installed
and licensed.

RSView32 Real-time values


This connector is used to get real time values from RSView32 via the RSView32 OPC Server.

RSView32 Settings
The OPC server in the RSView32 project must be enabled to create this connector. To do so, in the
RSView32 project, under the Edit tab, expand System and open Startup. Under the Setup tab, ensure
OPC/DDE Server is checked and restart the project.

RSView32 Historical values


This connector is used to get historical values from RSView32 via the Data Log Model feature. Note
that only Data Log Models with the Storage Format set to ODBC are supported.
Connector

Under Primary Database, define the connection to the database where the Data Log Model is
logging data. Once the connection is established, the Tag Table, Float Table and String Table can
be specified. This should be done exactly as they are in the Data Log Model Setup of RSView32.

Data Group
The following features are specific to data groups set up with this connector.
Filtering
Server Filtering
To exclude values that do not match the criteria are not considered, set Server Filtering to All
Tag Values and the condition accordingly.
The Marker column in the Float Table and String Table is used to mark different events that
may affect data logging. For example, when the data log model starts, the first set of records
has Marker set to B. Normally these records are included in data retrieval. To filter out these
records, select Marker and set the condition to IS NOT B. For more information about the
Marker column, see the RSView32 documentation.

Status Filtering
For Raw Values and Raw Text group types, the Status can be filtered so only values that
meet the criteria are retrieved. For more information on the Status types available, see the
RSView32 documentation.

- 178 - User Guide


PanelView Plus Historical values
This connector is used to get historical values from a set of text files recorded by a PanelView Plus.
For details, see the Multi-file Historian (time series) section of this chapter as well as the PanelView
Plus Guide.

FactoryTalk View ME Historical values


This connector is used to get historical values from a set of text files recorded by FactoryTalk View
ME. For details, see the Multi-file Historian (time series) section of this chapter as well as the
PanelView Plus Guide.

FactoryTalk Gateway Real-time values


This connector is used to get real time values from FactoryTalk View SE and/or RSLinx Enterprise via
the FactoryTalk Gateway OPC Server.
The FactoryTalk Gateway application allows access to elements of the FactoryTalk Services Platform
including FactoryTalk Directory.

Remote Access
To get data from the FactoryTalk Gateway server remotely, the Remote OPC Client must be installed
on the remote machine. This is provided with the FactoryTalk Gateway installation.

FactoryTalk View SE Historical values


This connector is used to get historical values from FactoryTalk View SE via the Data Log Model
feature. Note that with this connector only Data Log Models with the Storage Format set to ODBC
are supported. To get values from the File Set, see the FactoryTalk View Data File(s) section.
Connector

Under Primary Database, define the connection to the database where the Data Log Model is
logging data. Once the connection is established, the Tag Table, Float Table and String Table can
be specified. This should be done exactly as they are in the Data Log Model Setup of FactoryTalk
View SE.

Data Group
The following features are specific to data groups set up with this connector.
Filtering
Server Filtering
To exclude values that do not match the criteria are not considered, set Server Filtering to All
Tag Values and the condition accordingly.
The Marker column in the Float Table and String Table is used to mark different events that
may affect data logging. For example, when the data log model starts, the first set of records
has Marker set to B. Normally these records are included in data retrieval. To filter out these
records, select Marker and set the condition to IS NOT B. For more information about the
Marker column, see the FactoryTalk View documentation.

User Guide - 179 -


Status Filtering
For Raw Values and Raw Text group types, the Status can be filtered so only values that
meet the criteria selected are retrieved. For more information on the Status types available,
see the FactoryTalk View documentation.

FactoryTalk View Data File(s)


This connector is used to get historical data from files logged by FactoryTalk applications such as
FactoryTalkView SE Data Log Models with Storage Format set to File Set.
Connector

Under File Information set File Type to the type of FactoryTalk files to interface with. For Log Files,
browse to the folder where FactoryTalk is storing the files.
Once the Log Files folder is set, under File Formats, the Tag, Float and String file formats are derived
based on files found in the folder. Date and time values in the file are replaced with appropriate
keywords like YYYY, MM, DD, etc. Any other numeric values in the files are replaced with the ?
wildcard.
The Time Adjustment setting is provided to assist in determining which files to extract data from
during runtime.
For example, using the settings pictured above, if numeric data starting on January 1st 2017 at midnight
for the entire day is requested, any file starting with 2017 01 01 and ending with Digestion
(Float).DAT is processed for data. However, on some systems, the first file for the day may be created
sometime after midnight, like 8:00 AM. In this scenario, the January 1st data from midnight to
07:59:59 is stored in the last file starting with 2016 12 31. By setting Time Adjustment to 1 day,
when determining the file(s) to process, 1 day is subtracted from the start time to ensure all the data is
extracted.

FactoryTalk View SE Alarms


This connector is used to get alarms from the FactoryTalk View SE HMI Tag Alarm Log.

FactoryTalk View SE Settings


In order for this connector to function, the alarms must be logged to a database. This can be done by
either enabling periodic central logging in the setup or by issuing an AlarmLogSendToODBC
command.

- 180 - User Guide


Connector

Under Primary Database, define the connection to the database where the HMI Tag Alarm Log is
logging alarms. Once the connection is established, specify the Table where the alarms are stored and
the Date and Time Column(s).

FactoryTalk Alarms and Events


This connector is used to get alarms from the FactoryTalk View SE Alarms and Events Historian
Database.
Note this is always a Microsoft SQL Server or SQL Server Express database.

FactoryTalk View Historian (classic)


This connector is used to get historical data from the FactoryTalk View classic historian (formerly
RSHistorian).
Note this is always a Microsoft SQL Server database.

FactoryTalk View Historian SE (OLEDB/ODBC)


This connector is used to get historical data from the FactoryTalk View Historian SE via the PI
OLEDB provider or ODBC driver.
Installation
OLEDB
The PI OLEDB provider is a separate installation. It needs to be installed on the machine where
XLReporter is installed.
The installation can be found on the installation media under Advanced Server
Options\PIDASSetup\OLEDB Provider.

ODBC
The PI ODBC driver is provided as a separate installation. It needs to be installed on the machine
where XLReporter is installed.
The installation must be downloaded from the OSIsoft website. On the PI ODBC Driver
webpage, click the All Versions tab and download and install PI ODBC Client Install Kit
version 1.3.1.0.

User Guide - 181 -


Connector
Click the browse button () to define the Primary Server and (if needed) Secondary Server.
OLEDB

For the PI OLEDB provider set the Server name to the name of the machine where the
FactoryTalk Historian is installed and running.
To Log on to the server you can use the current windows user or specify a user configured in the
Historian as part of the PI System Management Tools.

ODBC

For the PI ODBC driver, set PI Data Source Name to a Data Source Name (DSN) configured on
the system. The DSN can either be set up for All Users (System DSN) or the Current User (User
DSN). If you have not already configured a DSN to the PI server, click New to create one. Note,
for All Users you must have Administrator credentials.

- 182 - User Guide


When configuring the PI ODBC Data Source, under the PI Server settings, set Name to the name
of the machine where the FactoryTalk Historian server is installed and running. If Perform
explicit login using PI username and password is checked, back in the Connector dialog you
will have to Use PI Server Authentication and specify a User Name and Password set up in the
PI System Management Tools.
Under Aggregate Timestamp, be sure to select Start of Interval as XLReporter timestamps all
historical data with the start of the interval.

FactoryTalk View Historian SE (OPC HDA)


This connector is used to get historical data from the FactoryTalk View Historian SE via the PI OPC
HDA server.

Installation
The OPC-HDA server is not installed by default, it is a separate installation found on the installation
media under Advanced Server Options\PIDASSetup\OPC DA_HDA\OPC DA_HA Server. It should be
installed on the same machine as the Historian.

FactoryTalk View Historian SE (VantagePoint)


This connector is used to get historical data from the FactoryTalk View Historian SE via the CLR
(Common Language Runtime) feature of VantagePoint.

Installation
When installing VantagePoint, under Custom Setup, be sure to select SQL CLR.

Connector

The connector defines the database where the Rockwell Software VantagePoint SQL CLR feature is
available.
The Historian Connector should be set to a FactoryTalk Historian connector as defined within
Vantage Point.

User Guide - 183 -


GE Digital

iFIX Real-time values (local)


This connector is used to get real time values from iFIX via the EDA interface.
In order for this connector to function, XLReporter must be installed on an iFIX node and iFIX must
be running.

Connector

The Installation path defines where iFIX is installed on the local system.

iFIX Real-time values (OPC)


This connector is used to get real time values from iFIX via the iFIX OPC server. This can be used to
retrieve data from iFIX both locally on an iFIX node or remotely.

iFIX Historical values (classic)


This connector is used to get historical values from iFIX via the HDA interface from .H04, .H08 or
.H24 files.
In order for this connector to function, XLReporter must be installed on an iFIX node.

Tag Browsing
By default, when browsing for tags using an iFIX History connector, all the tags in the iFIX system are
presented regardless of whether or not they are logged historically. To restrict this list to show only
tags being logged historically, do the following:
1. Open iFIX Workspace.
2. Open Historical Assignment.
3. Select File, Save As.
4. Go to the Data folder of your project and create an iFIX folder.
5. In the iFIX folder save the file. The file must start with IFIX_ and have a .csv file extension.
Now, when you create the iFIX History connector, it will present these tags when browsing.
Note, if you have already created the connector before saving these tags, simply modify the connector
and click OK to have it use the tags you have saved.

Connector

The Installation path defines where iFIX is installed on the local system.
The History Data path specifies where the historical data files (.H04, .H08 or .H24) are located. This
can either be the Default history path defined in iFIX or a Specific path. For Specific the path must be

- 184 - User Guide


defined to the path which contains folders for each iFIX node which is one level above where the
historical data files are stored.

iFIX Alarms
This connector is used to get alarms from iFIX when they are logged to a relational database.

iFIX Settings
In order for this connector to access iFIX alarms, the iFIX alarm logging must be set up to log to a
database. This is done in the iFIX System Configuration Utility by configuring and enabling the
Alarm ODBC Service.

Data Group
The following features are specific to data groups set up with this connector.
Filtering
The Alarm Type setting is used to retrieve either a specific type of alarm or Any to retrieve every
time of alarm. For more information on alarm types, see the iFIX documentation.

Historian
This connector is used to get historical data from the GE Historian (formerly Proficy Historian) using
the Historian OLEDB Provider. This can be configured both locally on the Historian machine and
from a remote machine.

Installation
The Historian Client tools and OLEDB provider must be installed on the machine where XLReporter
is installed. These can be found on the Historian installation CD.

Connector

If the Server Name is left blank, XLReporter will connect to the default historian defined in the
Historian Interactive SQL application.

Data Groups
The following features are specific to data groups set up with this connector.
Filtering
All filtering is performed on the Historian server.
The Filter Mode determines how values are interpolated when the filtering is applied.
Exact Time means that data is retrieved for the exact times when the filter condition(s)
are true.
Before Time means that data is retrieved from the time of the last false filter condition(s)
up until the time of the true condition for each filter.
After Time means that data is retrieved from the time of the true filter condition(s) up
until the time of the next false condition for each filter.
Before and After Time means that data is retrieved from the time of the last false filter
condition(s) up until the time of the next false condition for each filter.
For more information, see the GE Historian documentation.

User Guide - 185 -


Advanced Criteria provides specific, server based criteria which can be applied to the data
returned from Historian. For more information, see criteriastring in the GE Historian
documentation.

Limits
When retrieving data from the Historian, the request can time out if it takes too long to get the data.
By default the timeout setting is 60 seconds. To change this setting, in the Historian Administrator
click the Data Stores link at the top. Under the Global Options tab, in the Data Queries section,
change Maximum Query Time (seconds). Click Update when finished.
Calculated and Sampled Values
When retrieving calculated or sampled values from Historian there is a limit to the amount of
values that can be returned. By default this is 100,000. To change this setting, in the Historian
Administrator click the Data Stores link at the top. Under the Global Options tab, in the Data
Queries section, change Maximum Query Intervals. Click Update when finished.
Note, this is a value count, not a row count. For example, to retrieve 1 second values for 2 tags,
172,800 values are retrieved (86,400 * 2) so just for this request, the default limit would have to be
increased.

Historian Plus
This connector is used to get historical data from the GE Historian (formerly Proficy Historian) using
the ihUser interface. This connector can only be configured locally on the Historian machine. There is
no remote access.
This connector should be used when a large amount of data is required from the GE Historian. It is
designed to retrieve large amounts of raw data without timing out.

Installation
The Historian Client tools and OLEDB provider must be installed on the machine in order for this
connector to function. These can be found on the Historian installation CD.

Connector, Data Group and Limits settings are the same as the Historian connector, so refer to the
Historian section for details.

Historian Alarms
This connector is used to get alarms from the GE Historian (formerly Proficy Historian) using the
Historian OLEDB Provider. This can be configured both locally on the Historian machine and from a
remote machine.

Installation
The Historian Client tools and OLEDB provider must be installed on the machine where XLReporter
is installed. These can be found on the Historian installation CD.

Connector

If the Database name is left blank, XLReporter will connect to the default historian defined in the
Proficy Historian Interactive SQL application.

- 186 - User Guide


Data Groups
The following features are specific to data groups set up with this connector.
Filtering
The Alarm Type defines how the alarms are returned from the Proficy Historian.
Alarms returns an entire alarm life cycle as a single record.
Alarm History returns separate records for every alarm transition.
Events returns the simple and tracking events.
For more information, see ihAlarms in the Proficy Historian documentation.

Cimplicity Real-time values


This connector is used to get real time values from Cimplicity via the Cimplicity OPC server.

Cimplicity Historical values


This connector is used to get historical values from the Cimplicity Database Logger.

Connector

The Primary Database settings define the connection to the database where the Cimplicity Data
Logger is logging.
Once the connection is made, under Table, specify the Name of the table containing the logged data.
The default Table for Point Data is DATA_LOG. The default table for Group Point is GROUP_LOG.
For more information, see the Cimplicity documentation.

Cimplicity Alarms
This connector is used to get alarms from Cimplicity when they are logged to a relational database.

Connector

The default Table is ALARM_LOG.

User Guide - 187 -


Emerson Process Management

DeltaV Real-time values


This connector is used to get real time values from DeltaV via the DeltaV OPC Server.

Remote Access
The DeltaV OPC server only accepts connections on the local machine. If remote access to the DeltaV
OPC server is required, the DeltaV Remote program needs to be installed. For more details, see the
DeltaV documentation.

DeltaV Continuous Historian


This connector is used to get historical values from the DeltaV Continuous Historian via the DeltaV
OPC HDA Server.

DeltaV Advanced Continuous Historian


This connector is used to get historical data from the DeltaV Advanced Continuous Historian via the PI
OPCHDA server.

DeltaV Batch Historian


This connector is used to get historical data from the DeltaV Batch Historian by connecting to the
Microsoft SQL Server database it is logging to.

DeltaV Event Chronicle


This connector is used to get data from the DeltaV Event Chronicle. The Event Chronicle is a
collection of files (file extension .EVT) where each file contains information collected during a single
batch.

For details on the Connector, see the Discrete connector in the Text File section of this chapter.

DeltaV Event Journal


This connector is used to get data from the DeltaV Event Journal by connecting to the Microsoft SQL
Server database it is logging to.

Connector

Under Primary Database, define the connection to the database where the Event Journal is logging.
Once the connection is established, specify the Table as Journal and the Date Column as Date_Time.

Data Group
The following features are specific to data groups set up with this connector.

- 188 - User Guide


Filtering
Use the Event Type setting to retrieve events of a specific type. If all event types are required,
select Any.
For more information about specific Event Types, see the DeltaV documentation.

DeltaV Analyze
This connector is used to take data from the Excel reports generated by DeltaV Analyze and
consolidate it into a database. It is then used to retrieve that data from the consolidated database so
more customized reports can be created.
Connector

In Consolidate to a Database, define the database where the DeltaV Analyze data should be logged.
Settings

Under Folders, define each Folder that contains DeltaV Analyze reports to consolidate. Set
Archive To to the folder where the reports will be archived once they are consolidated. If this is
left blank, the files are archived in the archive subfolder of the Folder which is created if it
doesnt exist.

User Guide - 189 -


Under Labels, the default labels for Alarm Priority and Alarm Rate are listed. If these have
been customized, they should be updated here.

Schedule defines when the data is consolidated into the database. In the Schedule a Run Script
command is added.

When the connector is saved, the tables required in the database are automatically created.

Executing Manually
To execute the consolidation manually, in the Schedule Designer select Tools, Script Editor. With
the DV_export script selected, click Test. The data in specified reports are consolidated into the
database and the reports are archived.

Upgrading
If you are upgrading from version 12 or 12.01 you must open Connectors from the Project Explorer,
modify each DeltaV Analyze connector configured and click OK.

When prompted to recreate the tables, click No to preserve the data. The tables are updated to
accommodate additional data provided with DeltaV Analyze version 4.

Inductive Automation

Ignition Real-time values


This connector is used to get real time data from Ignition using the Ignition OPC UA server.

Connector
For general information on OPC UA connectors, see the OPC UA Real-time values section in this
chapter.
The Port number for the Ignition server can be found in Ignition under the Configure tab. On the left,
under Ignition OPC-UA Server click Settings. In the Server section, see Server Port.
For the server Name, in the Ignition Configuration, under OPC Connections, click Servers. For
Ignition OPC-UA Server click endpoint. Note, there may be multiple names listed that start with
this endpoint. Select the one that matches the security settings of the server.

- 190 - User Guide


In the server settings of Ignition, if Allow Anonymous Access is checked, in the Connector set
Credentials to Anonymous Access. Otherwise, select Specific User. To find the User Name, on the
left, under OPC Connections, click Servers. For Ignition OPC-UA Server click edit. Username
appears in the Authentication section.

Ignition Historical values


This connector is used to get historical data from the Ignition Historical Tag Provider database.

Connector
The connector defines the database server when the historical data is logged. If the database is
MySQL, see the MySQL section of the Connectors for Relational Databases section of this chapter for
additional requirements.

Ignition Transaction Group values


This connector is used to get historical data from an Ignition Transaction Group.

Connector
The connector defines the database server when the transaction group data is logged. If the database is
MySQL, see the MySQL section of the Connectors for Relational Databases section of this chapter for
additional requirements.
Once the database connection is established, the Table containing the transaction group data can be
selected and the column containing the timestamp in that table can be selected.

Siemens SIMATIC

WinCC Real-time values


This connector is used to get real time values from WinCC via the WinCC OPC Server.

WinCC Historical values


This connector is used to get historical values from WinCC via the WinCC OPC HDA Server.

Licensing
In order to connect to the WinCC OPC-HDA server, a Siemens WinCC Connectivity Pack license
must be installed on the machine where the server is running. Note, the Connectivity Pack software
does not need to be installed, just the license.

WinCC Advanced Historical Values


This connector is used to get historical values logged to a database by WinCC Advanced.

Connector
The connector defines the database server when the WinCC Advanced is configured to log data. If the
database is MySQL, see the MySQL section of the Connectors for Relational Databases section of this
chapter for additional requirements.
Once the database connection is established, the Table containing the data can be selected.

PCS7 Real-time values


This connector is used to get real time values from PCS7 via the PCS7 OPC Server.

PCS7 Historical values


This connector is used to get historical values from PCS7 via the PCS7 OPC HDA Server.

Installation
In order to connect to the PCS7 OPC-HDA server Open PCS 7 must be installed.

User Guide - 191 -


WinCC/PCS7 Alarms
This connector is used to get alarms from WinCC or PCS7 via the WinCC OLEDB Provider.

Connector
For Primary Database, select Other (OLEDB/ODBC) and click Build.
In Data Link Properties, set Provider to WinCC OLEDB Provider for Archives and click Next.
The Data Source setting is based on where the alarm data is located and how the connection is done.

See the following:


Connection Node Data Source
Connectivity Pack Local .\WinCC
Connectivity Pack Remote ComputerName\WinCC
Open PCS 7 Remote SymbolicComputerName::\WinCC
The Initial Catalog must be set to the name of the WinCC database. This value can be read from the
@DatasourceNameRT system tag in WinCC. Use System Check to read this value.
Under Advanced, ReadWrite must be unchecked.
For Table, the best options are AlarmView which returns individual alarm records and AlarmHitView
which returns a summary of alarm information.
For both of these tables, the Date Column should be DateTime with Date includes time checked.

Wonderware

InTouch Real-time values (local)


This connector is used to get real time values from InTouch via the IDEA interface.
In order for this connector to function, XLReporter must be installed on an InTouch node and
InTouch must be running.

Connector

The Installation path is where InTouch is installed on the local system.


The Application path is where the InTouch project is located on the local system.

InTouch Historical values (classic)


This connector is used to get historical values from InTouch via the HisData interface from .lgh files.

Connector

- 192 - User Guide


The Installation path is where InTouch is installed on the local system.
The Application path is where the InTouch project is located on the local system.
The History Data path is where the InTouch historical data files (.lgh) are located.

InTouch ME Historical values


This connector is used to get historical values from InTouch ME when it is configured to log data to a
relational database rather than to Wonderware Historian.

Connector
The connector defines the database server when the InTouch ME is configured to log data.Once the
database connection is established, the Table containing the data can be selected and the column
containing the timestamp in that table can be selected. This should always be Time_Stamp.

InTouch Alarms
This connector is used to get alarms from InTouch when they are logged to a relational database.

InTouch Settings
In order for this connector to access InTouch alarms, the InTouch alarm logging must be set up to log
to a database. This is done in the Alarm DB Logger Manager.

Data Group
The following features are specific to data groups set up with this connector.
Setup

Table/View should be set to v_AlarmHistory to retrieve all historical alarms and alarm transition
events that occurred.
For more information on the Tables/Views, see the InTouch Alarms and Events documentation
provided by Wonderware.

ArchestrA FSGateway Real-time values


This connector is used to get real time values via the ArchestrA FSGateway OPC server. This can be
used to retrieve data from a number of sources including InTouch. The server is accessible both
locally and remotely.

InTouch Setup
In order to access InTouch data through the OPC Server, the InTouch tags must be added to a group in
the server. This is done in the Wonderware System Management Console.

User Guide - 193 -


Wonderware Historian
This connector is used to get historical data from the Wonderware Historian. This can be configured
both locally on the Wonderware Historian machine and from a remote machine.

Data Group
The following features are specific to data groups set up with this connector.
Retrieval

For Raw Values group types, the Retrieval tab is provided to determine how raw data is returned.
The most common Retrieval modes are Cyclic and Delta.
Cyclic retrieval mode returns equally spaced values based on either the Values spaced every or
Number of values setting.
Delta retrieval mode returns values for every selected column every time the value in that column
changes. The Time deadband and Value deadband settings can restrict the total amount of data
returned.
For more information on these retrieval modes as well as the other available retrieval modes, see
the Wonderware Historian documentation.

Filtering

For Summary values from Server group types, filtering can be configured to the calculated
values. Note, that the configured filtering applies to the calculated value itself and not to the
underlying values. For more information on the available settings, see the Wonderware Historian
documentation.

- 194 - User Guide


Wonderware Historian Summary Tables
This connector is used to get historical data from the summary tables of Wonderware Historian. This
can be configured both locally on the Wonderware Historian machine and from a remote machine.
The Wonderware Historian summary tables can be used to calculate averages, minimum, maximum
and total values from historian tags over specific time intervals.

Data Group
The following features are specific to data groups set up with this connector.
Retrieval Tab
The Duration provides a list of all the configured durations for the summary calculations
configured in the historian. The selected duration is applied to all the configured Columns.
For example, if in the historian the tags Flow, Pressure and Speed are configured for hourly
calculations and daily calculations, in Duration, 1 hour and 1 day are available. If 1 hour is
selected, the hourly values for each selected Column are retrieved.

Wonderware Historian Alarms


This connector is used to get alarms from Wonderware Historian. . This can be configured both
locally on the Wonderware Historian machine and from a remote machine.

Data Group
The following features are specific to data groups set up with this connector.
Setup

Table/View should be set to v_AlarmHistory to retrieve all historical alarms and alarm transition
events that occurred.
For more information on the Tables/Views, see the Wonderware Historian documentation.

Indusoft

Point of View Real-time values


This connector is used to get real time values from Point of View via the Point of View OPC server.

Point of View Historical values (OPCHDA)


This connector is used to get historical values from Point of View via the Point of View OPC HDA
server.

Setup
To enable the OPCHDA server, in the Project Status dialog, for HDA OPC Server set Startup to
Automatic.

Limits
The server does not provide any server calculations and can only return 32,000 records for any one
request.

User Guide - 195 -


Point of View Historical values (OLEDB/ODBC)
This connector is used to get historical values from Point of View logged as a trend to a relational
database.
Note that each trend must be configured as its own connector.

Connector
The Connector defines the database server when the trend data is logged. If the database is MySQL,
see the MySQL section of the Connectors for Relational Databases section of this chapter for
additional requirements.
Once the database connection is established, the Table containing the trend data can be selected and
the column containing the timestamp in that table can be selected. This should always be
Time_Stamp.

Trihedral

VTScada Real-time values


This connector is used to get real time values from VTScada via the VTScada OPC server.

VTScada Historical values


This connector is used to get historical values from VTScada via the VTScada ODBC server.

Connector

The Connection can be defined using a DSN (Data Source Name) defined in the Windows Operating
System or Manual where all the information is specified.
In order to connect to the historian on a remote machine, the VTScada ODBC driver must be installed
on the local system. This can be downloaded from the Trihedral website.
Note, on 64 bit operating systems, the DSN must be defined as a 32 bit DSN. This can be done by
using the DSN Settings option in the Project Explorer. This is accessed from Tools tab, Database,
DSN Settings.

VTScada Alarms
This connector is used to get alarms from VTScada via the VTScada ODBC server.

Connector
The Connection can be defined using a DSN (Data Source Name) defined in the Windows Operating
System or Manual where all the information is specified.
In order to connect to the alarms on a remote machine, the VTScada ODBC driver must be installed on
the local system. This can be downloaded from the Trihedral website.
Note, on 64 bit operating systems, the DSN must be defined as a 32 bit DSN. This can be done by
using the DSN Settings option in the Project Explorer. This is accessed from Tools tab, Database,
DSN Settings.

- 196 - User Guide


Kepware

KEPServerEX Real-time values (OPC DA)


This connector is used to get real time values from KEPServerEX via the KEPServerEX OPC DA
server.

KEPServerEX Real-time values (OPC UA)


This connector is used to get real time data from KEPServerEX using the KEPServerEX OPC UA
server.

Connector
For general information on OPC UA connectors, see the OPC UA Real-time values section in this
chapter.
The KEPServerEX OPC UA server settings can be accessed by right-clicking the KEPServerEX icon
on the system tray and selecting OPC UA Configuration.
The Server Endpoints tab defines the server name(s) available when attempting to connect to the
KEPServerEX OPC UA server.
The Port number for the KEPServerEX server by default is 49320. This can be viewed under the
Server Endpoints tab by modifying the endpoint you wish to connect to.
When testing the server connection, after trusting the server certificate the connection may still fail. If
so, in the KEPServerEX OPC UA Configuration Manager, go to the Trusted Clients tab. There you
should see the Client Name XLReporterOPC.UA with a URI that contains the name of the machine
where XLReporter is installed. If this client has a red X, select it and click Trust. Now test the
connection again and it should pass.

KEPServerEX Local Historian


This connector is used to get historical values from KEPServerEX via the KEPServerEX OPC HDA
server.

OSIsoft

PI Historian
This connector is used to get historical data from the PI Historian via the PI OLEDB provider or
ODBC driver.
Installation
OLEDB
The PI OLEDB provider is a separate installation. It needs to be installed on the machine where
XLReporter is installed.

ODBC
The PI ODBC driver is provided as a separate installation. It needs to be installed on the machine
where XLReporter is installed.
The installation must be downloaded from the OSIsoft website. On the PI ODBC Driver
webpage, click the All Versions tab and download and install PI ODBC Client Install Kit
version 1.3.1.0.
Connector
Click the browse button () to define the Primary Server and (if needed) Secondary Server.
OLEDB

User Guide - 197 -


For the PI OLEDB provider set the Server name to the name of the machine where the PI
Historian is installed and running.
To Log on to the server you can use the current windows user or specify a user configured in the
Historian as part of the PI System Management Tools.

ODBC

For the PI ODBC driver, set PI Data Source Name to a Data Source Name (DSN) configured on
the system. The DSN can either be set up for All Users (System DSN) or the Current User (User
DSN). If you have not already configured a DSN to the PI server, click New to create one. Note,
for All Users you must have Administrator credentials.

- 198 - User Guide


When configuring the PI ODBC Data Source, under the PI Server settings, set Name to the name
of the machine where the PI Historian server is installed and running. If Perform explicit login
using PI username and password is checked, back in the Connector dialog you will have to Use
PI Server Authentication and specify a User Name and Password set up in the PI System
Management Tools.
Under Aggregate Timestamp, be sure to select Start of Interval as XLReporter timestamps all
historical data with the start of the interval.

Canary Labs

Canary Labs Historian


This connector is used to get historical values from the Canary Labs Historian via the Canary Labs
OPC HDA server.

Citect

Citect Real-time values


This connector is used to get real time values from Citect via the Citect OPC server.

Citect Historical values


This connector is used to get historical values from the CitectHistorian.

Setup
In order this connector to function, CitectHistorian must be set up to log data to SQL Server.

Connector
Under Primary Database, define the connection to the database where CitectHistorian is logging data.
Once the connection is established, the Tag Table, Float Table and String Table can be specified.
Tag Table should be set to Tag. Float Table and String Table should both be set to AllSamples.

Schneider Electric Software

ClearSCADA Real-time values


This connector is used to get real time values from ClearSCADA via the ClearSCADA OPC server.

ClearSCADA Historical values


This connector is used to get historical values from the ClearSCADA Historian via the ClearSCADA
OPC HDA Server.

WIN-911 Software

WIN-911 Alarms
Win-911 creates database files (.MDB format) periodically containing the alarms logged during a time
period. However, users may want to report on data spanning multiple files. This connector is used to
consolidate multiple databases into a single database and then retrieve data from the consolidated
database.
Connector

User Guide - 199 -


Under Source, Folder is the location where the Win-911 databases are located. If the databases are
protected, enter the Password.
In Consolidate to a Database, select the database where the alarm values are consolidated to.
Settings

On the Schedule tab, specify a schedule which can be viewed in the Scheduler.

Amphenol Advanced

RZH Historical values


This connector is used to get historical values from the RZH Historian.

Connector

RZH Historical values are designed to work together with either GE Proficy Historian or iFIX
Classic Historian. For Proficy Historian, connection information to the specific server must be
provided.

Elutions

ControlMaestro Real-time values


This connector is used to get real time values from ControlMaestro via the ControlMaestro OPC
server.

- 200 - User Guide


ControlMaestro Historical values
This connector is used to get historical values from ControlMaestro.
Historical data may only be retrieved if XLReporter is installed on the same machine as the
ControlMaestro historian.

Database
The Database connectors are used to get data from tables and/or views in relational databases either
local to the machine or across the network.
The OLEDB/ODBC connector is used to connect to any relational database using either on OLEDB or
ODBC driver. The other connectors are used for specific relational databases.

Database (time series)

Historical values (wide)


This connector is used to get time series historical data from a table/view in a database. A historical
values wide table is defined as having a date and time column and separate columns for the values. For
example:
DateAndTime Flow Pressure Speed Temp
1/1/2016 00:00 6.8 28.5 64.2 78.3
1/1/2016 00:01 7.2 28.8 64.8 78.4
1/1/2016 00:02 7.4 29.1 65.2 78.3

Connector

Set the Table to the table name or view that contains the data.
The Date and Time columns determine the column(s) in the table. If the time is in a separate column
in the table, specify the Time Column.

Historical values (narrow)


This connector is used to get time series historical data from a table/view in a database. A historical
values narrow table is defined as having date and time column, one column for the value name and one
for its value. For example:
DateAndTime TagName Value
1/1/2016 00:00 Flow 6.8
1/1/2016 00:00 Pressure 28.5
1/1/2016 00:00 Speed 64.2
1/1/2016 00:00 Temperature 78.3
1/1/2016 00:01 Flow 7.2
1/1/2016 00:01 Pressure 28.8
1/1/2016 00:01 Speed 64.8
1/1/2016 00:01 Temperature 78.4

User Guide - 201 -


Connector

Set the Table to the table name or view that contains the data.
For Rows, pick the Date and Time column(s). For the Columns, pick the column that contains the
names. In the example above, Columns would be set to TagName. For the Values, pick the column
containing the values. In the example above, Values would be Value.

Alarms
This connector is used to get time series alarms from a table/view in a database. The table/view must
have a column for the timestamp or separate columns for the date and time stamps.

Connector

Under Primary Database, define the connection to the database where the alarms are stored. Once
the connection is established, specify the Table where the alarms are stored and the Date and Time
Column(s).

Text File

Text Historian (time series)


This connector is used to get historical data from one or more text files stored in a common folder.
The connector stitches a set of text files together so they can be treated like a historian. The file
name has to reflect the content of the file, e.g., if file contains record time stamped for 1 Oct 2016 then
a file name 01_10_2016 or Packing_2016_10_1 or similar would be suitable.

- 202 - User Guide


Connector

The connector supports direct access to the files or it can transfer them from a remote location.

When the Folder is specified, the File Name Format is determined from the most recent file in the
folder. In addition the File Content settings are automatically filled out (if possible). If the File
Content settings did not update automatically, enter the changes manually.

Click View Latest, to create a tag catalog from the first row of the file and to display its content. The
tag catalog is used when tags are browsed for this connector.

For detailed information on setting up this connector, please refer to the Text Historian Guide.
File Transfer
If the files are located in a remote location e.g., Operator Terminal or data logger, they can be
scheduled to be transferred to the local machine. Set Enable File Transfer and then click Settings to
specify information on where the files are located and when to schedule the transfer.

User Guide - 203 -


Discrete
This connector is used to get values from a text file. While the Text Historian connector can be used
to retrieve data across multiple text files, this connector is used to retrieve data from a single text file.

Connector

The Source section defines where the text file is located. Once the Folder and Filter are specified, the
File can be configured as a Fixed name or a Variable that can be specified at runtime either by the
user in an on demand report or set from the Scheduler in an automated report.
When the Folder and Filter are specified, the F the File Content settings are automatically filled out
based on the most recent file found. If the File Content settings did not update automatically, enter
the changes manually.

OPC

OPC DA Real-time values


This connector is used to get real time data from any available OPC server either on the local machine
or across the network.
This connector can be used if the OPC server to connect does not have a specific connector available
for it.

OPC UA Real-time values


This connector is used primarily to get real time data from any available OPC UA server either on the
local machine or across the network. It can also be used to get real time data from OPC DA servers.

Connector
The connector defines the OPC UA server to connect to.

- 204 - User Guide


Select or enter the Node where the server resides and enter the Port number as set up in the server.
Server shows you all the available servers based on the settings. Select the one you wish to connect
to.

If the Server requires user Credentials, specify them, otherwise leave the setting Anonymous.

Click Test Connection to attempt a connection to the Server selected. You may be prompted to trust
the server depending on how the server authentication is configured. If, after trusting the server,
connectivity still fails it may be due to the following:
The client may need to be trusted on the server. Consult your OPC UA server documentation
for details.
The servers certificate may not have been added to the client machines certificate store. To
do this manually, go to the server and export its certificate (.DER file). Then take that file to
the client machine. Click the Options button, browse for the file and click Import to add this
certificate.

OPC HDA Historical values


This connector is used to get historical data from any available OPC HDA server either on the local
machine or across the network.
This connector can be used if the OPC HDA server to connect does not have a specific connector
available for it.

XLReporter

Analytic Database
This connector is used to define the database where XLReporter Analytics are logged and is used to
get analytic data for reporting.

Connector
Connector for XLReporter Analytic database (see Analytics).

When the connector is configured, the Analytic tables are created in the Primary Database.

User Guide - 205 -


Data Group
A History Data Group is used to retrieve values from the Primary Database. Specific settings are
required in the Setup tab of the group (see History Data Group).

Use the Type to select the analytic for the group such as Snapshot, Statistic, etc.

Data Entry Form Database


This connector is used to define the database where Data Entry Forms are logged and is used to get
form data for reporting.

Connector
For details on Data Entry Forms see Designing Interactive Forms.

Data Retrieval
A History Data Group is used to retrieve values from the Primary Database. Specific settings are
required in the Setup tab of the group (see History Data Group).

Name contains a list of all the forms. Select a Name, and pick the Timestamp Column.

Simulator Real-time values


This connector is used to get real time data from the XLReporter Simulator.

Simulator Historical values


This connector is used to get historical data from the XLReporter Simulator.

- 206 - User Guide


Simulator Alarms
This connector is used to get alarms from the XLReporter Simulator.

User Guide - 207 -


Programming Interface

Introduction
This chapter describes how to use XLReporters programming interface from Visual Basic and Visual
C++.
Every action command (see Actions section in the Scheduler chapter) can be initiated from a third
party program. The command is sent to a queue which has the capacity to hold 512 items. With the
queue concept, it is not necessary to send a command and wait for its execution. In addition, third
party program can monitor the queue to determine progress.

XLRrequest.dll is used to interface programmatically and contains the following three functions:
XLRrequest Places the command in the queue.
XLRqueue Places the command in the queue with monitoring enabled.
XLRstate Monitors the command from XLRqueue.

In addition, the application XLRrequest.exe can be used to interface from the command line.
We suggest that before you continue, you get familiar with the syntax of the available actions.

Command line scripts


Reporting commands can be initiated from command line scripts using the application
XLRrequest.exe as follows:
InstallPath\XLRrequest.exe action

Example: To update the template sheet in the workbook called Flow, use the following command line:
InstallPath\XLRrequest.exe UpdateSheet Flow.Template

If report names have been defined for the template, they will be used.

Visual Basic and VBA


Reporting commands can be initiated from programming environments such as Visual Basic and VBA
XLRrequest action

Example: To update the template sheet in the workbook called Flow,

Place the declaration in your code:


Declare Function XLRrequest Lib "InstallPath\XLRrequest" (ByVal sAction As String) As Integer

Add the following where the action is issued:


Private Sub UpdateReport()
Dim s as String
s = " UpdateSheet Flow.Template
XLRrequest (s)
End Sub

Make sure the parameters of an action are enclosed in single quotes.

- 208 - User Guide


Monitoring the Queue
With a reporting queue, it is possible to initiate several commands without loss of integrity. For
example, suppose we wish to update a sheet and then print the results, it is not necessary to wait for the
update sheet to finish before issuing the print request since both commands will be placed in the queue
and processed in order.
However, in some circumstances it is desirable to monitor the queue to ensure that the command has
executed without errors before moving to the next step. In such cases, the command is issued with the
XLRqueue function and then monitored with the XLRstate function.
XLRqueue action
XLRstate error len

Where action is the action string, error is an error string and len is the length of the error string.

The return values from XLRstate are:


0 completed with no errors.
1 still pending.
3 completed with errors returned in error.

Example: To update the template sheet in the workbook called Flow, and print it if the update was
successful.

Private Sub UpdateReport


Dim s as String
Dim sErr as String * 255
Dim nRet as Integer

s = " UpdateSheet Flow.Template


XLRqueue (s)

nRet = XLRstate(sErr, 255)


while nRet = 1
nRet = XLRstate(sErr, 255)
DoEvents
wend
if nRet = 3 then
MessageBox sErr
Exit Sub
end if

print the report


s = " PrintSheet Flow.Template MyPrinter
XLRrequest (s)

End Sub

User Guide - 209 -

Вам также может понравиться