Hist Client
Hist Client
Hist Client
Historian Client
User Guide
Version 2020
January 2020
© 2020 AVEVA Group plc and its subsidiaries. All rights reserved.
No part of this documentation shall be reproduced, stored in a ret rieval system, or transmitted by any
means, electronic, mechanical, photocopying, rec ording, or otherwise, without the prior written
permission of AVEVA. No liability is assumed with respect to the use of the information contained herein.
Although precaution has been taken in the preparation of this documentation, AVEVA assumes no
responsibility for errors or omissions. The information in this documentation is subject to change without
notice and does not represent a commitment on the part of AVEVA. The soft ware described in this
documentation is furnished under a license agreement. This soft ware may be used or copied only in
accordance with the terms of such license agreement.
ArchestrA, Aquis, Avantis, Citect, DYNSIM, eDNA, EYESIM, InBatch, InduSoft, InStep, Int elaTrac,
InTouch, OASyS, PIPEPHASE, PRiSM, PRO/II, PROV ISION, ROMeo, SIM4ME, SimCentral, SimSci,
Skelta, SmartGlance, Spiral Software, Termis, WindowMaker, WindowViewer, and Wonderware are
trademarks of AVEVA and/or its subsidiaries. An extensive listing of AVEVA trademarks can be found at:
https://sw.aveva.com/legal. All other brands may be trademarks of their respective owners.
Publication date: Monday, February 24, 2020
Contact Information
AVEVA Group plc
High Cross
Madingley Road
Cambridge
CB3 0HB. UK
https://sw.aveva.com/
For information on how to cont act sales, customer training, and technical support, see
https://sw.aveva.com/contact.
AVEVA™ Historian Client User Guide
Contents
Welcome .................................................................................................................................. 27
Chapter 1 Introduction......................................................................................................... 29
About the AVEVA Historian Client Soft ware .............................................................................. 29
Desktop Applications ......................................................................................................... 29
Microsoft Office Add-Ins..................................................................................................... 29
ActiveX and .NE T Cont rols ................................................................................................ 30
About AVEVA Historian Client Licensing ................................................................................... 30
About the AVEVA Historian ..................................................................................................... 30
Client/Server Architecture .................................................................................................. 31
Integration with AVEVA Application Server ......................................................................... 31
ArchestrA Naming Conventions .................................................................................... 32
Analyzing Process Dat a .......................................................................................................... 33
Version 2020 3
AVEVA™ Historian Client User Guide Contents
4 Version 2020
Contents AVEVA™ Historian Client User Guide
Version 2020 5
AVEVA™ Historian Client User Guide Contents
6 Version 2020
Contents AVEVA™ Historian Client User Guide
Version 2020 7
AVEVA™ Historian Client User Guide Contents
8 Version 2020
Contents AVEVA™ Historian Client User Guide
Version 2020 9
AVEVA™ Historian Client User Guide Contents
10 Version 2020
Contents AVEVA™ Historian Client User Guide
Version 2020 11
AVEVA™ Historian Client User Guide Contents
12 Version 2020
Contents AVEVA™ Historian Client User Guide
Version 2020 13
AVEVA™ Historian Client User Guide Contents
LoadTargetRegionFromFile........................................................................................ 364
ManualConnect ......................................................................................................... 365
MoveNextTag............................................................................................................ 365
MovePrevTag............................................................................................................ 365
PanLeft ..................................................................................................................... 365
PanRight ................................................................................................................... 365
PrintGraph ................................................................................................................ 366
PrintGraphDlg ........................................................................................................... 366
PropertiesDlg ............................................................................................................ 366
RefreshData.............................................................................................................. 366
RemoveServer .......................................................................................................... 366
RemoveServerEx ...................................................................................................... 367
RemoveTag .............................................................................................................. 367
RetrievalOptionsGetStyle ........................................................................................... 367
SaveDat a.................................................................................................................. 368
SaveImage................................................................................................................ 368
SaveS ettings ............................................................................................................. 368
ScaleAllTags ............................................................................................................. 369
ScaleAllTagsDlg ........................................................................................................ 369
ScaleAutoAllTags ...................................................................................................... 369
ScaleAutoTag ........................................................................................................... 369
ScaleDownAllTags .................................................................................................... 370
ScaleDownTag .......................................................................................................... 370
ScaleMoveAllTagsDown ............................................................................................ 370
ScaleMoveAllTagsUp ................................................................................................ 370
ScaleMoveTagDown.................................................................................................. 370
ScaleMoveTagUp ...................................................................................................... 370
ScaleTag .................................................................................................................. 371
ScaleTagDlg ............................................................................................................. 371
ScaleUpAllTags ......................................................................................................... 371
ScaleUpTag .............................................................................................................. 371
SetCurrent Tag........................................................................................................... 371
SetCurrent TagXAxis Tag ............................................................................................ 372
SetCurrent TagXAxis TagIndex .................................................................................... 372
SetDates ................................................................................................................... 373
SetDuration ............................................................................................................... 373
SetMenuItemE nabled ................................................................................................ 374
SetTagColor.............................................................................................................. 375
SetTagFormat ........................................................................................................... 376
SetTagColorDlg......................................................................................................... 376
SetTagOffsetMS ........................................................................................................ 376
SetTagPenStyle ........................................................................................................ 377
SetTagPenWidth ....................................................................................................... 377
SetTagPrecision ........................................................................................................ 378
SetTagVisible ............................................................................................................ 378
SetTimeSpan ............................................................................................................ 379
SetToolbarB uttonEnabled .......................................................................................... 379
ShowStatistics........................................................................................................... 380
UnsetCurrentTagXAxis Tag......................................................................................... 380
ZoomIn ..................................................................................................................... 381
ZoomOut .................................................................................................................. 381
aaHistClient Trend E vents ................................................................................................ 381
Current TagChanged .................................................................................................. 381
DatesChanged .......................................................................................................... 382
StateChanged ........................................................................................................... 382
TagDisplayChanged .................................................................................................. 382
TaglistChanged ......................................................................................................... 383
14 Version 2020
Contents AVEVA™ Historian Client User Guide
Version 2020 15
AVEVA™ Historian Client User Guide Contents
16 Version 2020
Contents AVEVA™ Historian Client User Guide
OnSelectedTabChanged............................................................................................ 421
OnTagNameChanged................................................................................................ 421
aaHistClient TagPickerSplitterOrientation Enumeration ....................................................... 421
Version 2020 17
AVEVA™ Historian Client User Guide Contents
18 Version 2020
Contents AVEVA™ Historian Client User Guide
Version 2020 19
AVEVA™ Historian Client User Guide Contents
RevisionNumber........................................................................................................ 479
SchemaVersion ......................................................................................................... 479
ServerName.............................................................................................................. 479
ServerTy pe ............................................................................................................... 479
State......................................................................................................................... 480
TrustedConnection .................................................................................................... 480
UseHttp .................................................................................................................... 480
VirtualDirectoryName................................................................................................. 480
aaServer Methods ........................................................................................................... 481
LogOff ...................................................................................................................... 481
LogOn ...................................................................................................................... 481
aaServers Object .................................................................................................................. 481
aaServers Properties ....................................................................................................... 482
ApplicationName ....................................................................................................... 482
Count ....................................................................................................................... 482
Items ........................................................................................................................ 482
aaServers Methods ......................................................................................................... 482
Add .......................................................................................................................... 483
GetServer ................................................................................................................. 483
Remove .................................................................................................................... 483
Update...................................................................................................................... 484
aaServers E vents ............................................................................................................ 484
OnServerAdded ........................................................................................................ 484
OnServerUpdated ..................................................................................................... 485
OnServerRemoved .................................................................................................... 485
OnServerStateChange............................................................................................... 485
Instantiating an aaServers Object ..................................................................................... 486
aaServerListChangeArgs Object ............................................................................................ 486
Properties ....................................................................................................................... 486
Server....................................................................................................................... 486
aaServerStateChangeArgs Object ......................................................................................... 486
Properties ....................................................................................................................... 486
Server....................................................................................................................... 486
State......................................................................................................................... 487
When........................................................................................................................ 487
Message ................................................................................................................... 487
aaServerState Enumeration................................................................................................... 487
aaServerType Enumeration ................................................................................................... 488
20 Version 2020
Contents AVEVA™ Historian Client User Guide
Version 2020 21
AVEVA™ Historian Client User Guide Contents
Common Properties, Methods, Events, Enums, and Data Types ................................ 517
Common Properties .............................................................................................................. 517
BackColor....................................................................................................................... 517
BackStyle ....................................................................................................................... 518
BorderStyle..................................................................................................................... 518
Caus esValidation ............................................................................................................ 518
Cont ainer........................................................................................................................ 518
Cont extMenuE nabled ...................................................................................................... 519
DataBindings .................................................................................................................. 519
DragIcon......................................................................................................................... 519
DragMode....................................................................................................................... 519
Enabled .......................................................................................................................... 519
Font ............................................................................................................................... 520
ForeColor ....................................................................................................................... 520
Height ............................................................................................................................ 520
HelpContextID ................................................................................................................ 520
Index .............................................................................................................................. 520
Left................................................................................................................................. 521
Name ............................................................................................................................. 521
Object ............................................................................................................................ 521
Parent ............................................................................................................................ 521
TabIndex ........................................................................................................................ 521
TabStop.......................................................................................................................... 522
Tag ................................................................................................................................ 522
ToolTipText..................................................................................................................... 522
Top ................................................................................................................................ 522
Trans parent .................................................................................................................... 522
Visible ............................................................................................................................ 523
WhatsThis HelpID ............................................................................................................ 523
Width.............................................................................................................................. 523
Common Methods ................................................................................................................. 523
Drag ............................................................................................................................... 524
Move .............................................................................................................................. 524
SetFocus ........................................................................................................................ 524
ShowWhatsThis .............................................................................................................. 524
ZOrder............................................................................................................................ 524
Common E vents ................................................................................................................... 524
Click ............................................................................................................................... 525
DblClick .......................................................................................................................... 525
DragDrop........................................................................................................................ 525
DragOver........................................................................................................................ 525
GotFocus ........................................................................................................................ 525
KeyDown ........................................................................................................................ 525
KeyPress ........................................................................................................................ 526
KeyUp ............................................................................................................................ 526
LostFocus ....................................................................................................................... 526
MouseDown.................................................................................................................... 526
MouseMove .................................................................................................................... 526
MouseUp ........................................................................................................................ 526
Validate .......................................................................................................................... 526
22 Version 2020
Contents AVEVA™ Historian Client User Guide
Version 2020 23
AVEVA™ Historian Client User Guide Contents
Minimum Retrieval - Handling NULL Values and Incomplete Cycles ............................. 548
Maximum Retrieval .......................................................................................................... 549
Maximum Retrieval - How It Works ............................................................................. 550
Maximum Retrieval - Supported Value Parameters ...................................................... 550
Maximum Retrieval - Query Examples ........................................................................ 551
Maximum Retrieval - Initial and Final Values ............................................................... 551
Maximum Retrieval - Handling NULL Values and Incomplete Cycles ............................ 551
Integral Retrieval ............................................................................................................. 552
Integral Retrieval - How It Works ................................................................................ 552
Integral Retrieval - Supported Value Paramet ers ......................................................... 553
Integral Retrieval - Query Examples............................................................................ 553
Integral Retrieval - Initial and Final Values ................................................................... 553
Integral Retrieval - Handling NULL Values .................................................................. 553
Slope Retrieval ................................................................................................................ 553
Slope Retrieval - How It Works ................................................................................... 554
Slope Retrieval - Supported Value Parameters ............................................................ 554
Slope Retrieval - Query Example ................................................................................ 555
Slope Retrieval - Initial and Final Values ..................................................................... 555
Slope Retrieval - Handling NULL Values ..................................................................... 555
Counter Retrieval ............................................................................................................ 555
Counter Retrieval - How It Works................................................................................ 556
Calculations for a Manually Reset Counter .................................................................. 557
Counter Retrieval - Supported Value Paramet ers ........................................................ 557
Counter Retrieval - Initial and Final Values .................................................................. 557
Counter Retrieval - Handling NULL Values .................................................................. 557
Counter Retrieval - Handling Illegal Values.................................................................. 557
Counter Retrieval - Query Example ............................................................................ 558
ValueState Retrieval ........................................................................................................ 558
ValueState Retrieval - How It Works ........................................................................... 559
ValueState Retrieval - Support ed Value Parameters .................................................... 560
ValueState Retrieval - Query Examples ...................................................................... 560
ValueState Retrieval - Initial and Final Values ............................................................. 560
ValueState Retrieval - Handling NULL Values ............................................................. 560
RoundTrip Retrieval ........................................................................................................ 560
RoundTrip Retrieval - How It Works ............................................................................ 561
RoundTrip Retrieval - Support ed Value Parameters ..................................................... 562
RoundTrip Retrieval - Query Examples ....................................................................... 562
RoundTrip Retrieval - Initial and Final Values .............................................................. 563
RoundTrip Retrieval - Handling NULL Values .............................................................. 563
Bounding Value Retrieval ................................................................................................ 563
Bounding Value Retrieval - How It Works .................................................................... 564
Bounding Value Retrieval - Query Examples ............................................................... 564
Understanding Retrieval Options ............................................................................................ 565
Which Options Apply to Which Retrieval Modes? .............................................................. 566
Using Retrieval Options in a Trans act-SQL Statement ....................................................... 566
Cycle Count (X V alues over Equal Time Intervals ) (wwCycleCount) .................................... 567
Resolution (Values Spaced E very X ms) (wwResolution) ................................................... 568
Resolution - Query Examples ..................................................................................... 569
About "Phant om" Cycles .................................................................................................. 569
Time Deadband (wwTimeDeadband)................................................................................ 571
Time Deadband - Query Examples ............................................................................. 572
Value Deadband (wwValueDeadband) ............................................................................. 572
Value Deadband - Query Examples ............................................................................ 573
History Version (wwVersion) ............................................................................................ 573
24 Version 2020
Contents AVEVA™ Historian Client User Guide
Version 2020 25
AVEVA™ Historian Client User Guide
Welcome
You can use the AVEVA Historian Client software to retrieve data from an AVEVA Historian. Before you
can use the AVEVA Historian Client software, the AVEVA Historian must be correctly installed and
configured and must be running.
You can view this document online or you can print it, in part or whole, by using the P rint feat ure in Adobe
Acrobat Reader.
This guide assumes you know how to use Microsoft Windows, including navigating menus, moving from
application to application, and moving objects on the screen. If you need help with these tasks, see the
Microsoft online help.
In some areas of the AVEVA Historian Client soft ware, you can also right -click to open a menu. The
items listed on this menu change, depending on where you are in the product. All items listed on this
menu are available as items on the main menus.
Version 2020 27
AVEVA™ Historian Client User Guide
C HAPTER 1
Introduction
The AVEVA Historian Client software provides a number of client tools to address specific data
representation and analysis requirements. These tools remove the requirement to be familiar with the
SQL and provide intuitive point-and-click interfaces to access, analyze, and graph both current and
historically acquired time-s eries data.
Important: Only the Trend application can leverage this functionality. Although a Managed Historian
configured S erver will appear in other Historian Client application, it will not be functional in the context of
those applications.
The AVEVA Historian Client software is a full-featured suite of applications that maximize the value of the
data in the AVEVA Historian. The AVEVA Historian Client software integrates tightly with the most
popular Microsoft Office tools. With the AVEVA His torian Client software, you can:
Explore your dat a graphically to find important information.
Analyze the data to produce relevant information.
Develop and execute ad hoc queries against any data stored in the AVEVA Historian database.
Visualize the current process state.
Produce rich aut omated reports.
Desktop Applications
The AVEVA Historian Client software includes the following stand -alone applications:
AVEVA Historian Client Trend. Enables trending of historical and real time data over time. Powerful
features allow data to be compared with other dat a from different periods. Alarms and limit
excursions are readily visible. It is also possible to add and view annotations in your trends.
For more information, see Aveva Historian Client Trend.
AVEVA Historian Client Query. This point -and-click tool enables complex queries to be created and
executed against any AVEVA Historian. Knowledge of the database structure or SQL is not required.
For more information, see Aveva Historian Client Query.
Version 2020 29
AVEVA™ Historian Client User Guide Introduction
30 Version 2020
Introduction AVEVA™ Historian Client User Guide
Client/Server Architecture
The AVEVA Historian client/server architecture allows for flexible and easy -to-use client applications on
the desktop, while ensuring the integrity and security of the data on the server. The computing power of
both the client and the server are exploited by optimizing processor intensive operations on the server
and minimizing data to be transmitted on the network to improve system performance.
The following illustration shows one possible net work architecture where the AVEVA Historian is used as
a link between the process network and the business LAN/WAN:
Version 2020 31
AVEVA™ Historian Client User Guide Introduction
32 Version 2020
Introduction AVEVA™ Historian Client User Guide
You can then use the AVEVA Historian Client software to browse the replicated Model view hierarchy for
groups and tags. For more information on replicating the object hierarchy, see the AVEVA Historian
documentation.
Version 2020 33
AVEVA™ Historian Client User Guide
C HAPTER 2
Common Client Components
Some of the AVEVA Historian Client applications and controls use a common set of components.
Note: Managed Historian connection and retrieval is only available for the Trend Client. The Managed
Historian server registration will be visible in other Historian Client tools, but is not support ed and should
not be used.
When you start a AVEVA Historian Client application, you are not automatically logged on to every server
that you configured before. You are only logged on to a server when you do the following:
Open a file that causes data to be retrieved for a tag on th at server.
Expand a server in the Tag Picker to view its Tag List.
Manually log on to the server.
Note: Make sure you always log on to the server manually in case you are using Managed Historian
connection.
Version 2020 35
AVEVA™ Historian Client User Guide Common Client Components
3. On the Tool s menu, select Servers. The Server List Configuration dialog box appears, which
shows a list of connected servers or servers that were configured in the past.
4. In the Server box, type the name of the server to which you want to connect.
o For an On-P remises Historian, type the name of the server where it is hosted.
o For a Managed Historian, you can use a name of your choice.
o For a SQL Server named instance, use the format <server_name>\<instance_name>.
Note: If the default port for the SQL Server is changed, the Historian Client server configuration
should be given as <server_name>[\<instance_name>], <port_number>. For example:
5. In the Connection section, specify the type of connection you want to use:
o Database (SQL Server): Choose this option to connect to the SQL Server database.
o OData Feed: Choose this option to connect to the open data prot ocol feed. Then specify the
URL and continue to step 7. You can connect using this option only if you are using a Managed
Historian connection.
Note s: If you select OData Feed to connect to the Historian Server, all the fields related to Login
section become unavailable and the Managed Account option becomes deselected
automatically.
By default, the Historian's OData server supports unencrypted HTTP connections. To use an
encrypted (HTTPS) OData connection, you will first need to install and configure an SSL client
certificate. Contact AVEVA Technical Support for details.
36 Version 2020
Common Client Components AVEVA™ Historian Client User Guide
a. To log on to the server using integrated security, click Windows Integrated and then go to the
next step.
b. To log on to the server using SQL Server credentials, click SQL Login and configure the
following login details. Then, go to step 7.
– Login ID: Type your assigned Historian username. If your system administrator has not
assigned you a username and password, you may use one of the default user accounts,
which are automatically configured during a typical Historian installation.
– Password: Type t he password t hat is associated with the username. Select the Remember
password check box to specify for the system to remember your password.
7. In the Timeouts in seconds area, configure the time allocated for the database connection and the
query execution.
o Connection: The connection time-out period in seconds. Valid values are 1 to 600.
o Query: The query time-out in seconds. Valid values are 1 to 600.
8. Select Add.
After several seconds, the server connection should be established.
9. Click Close. An error message appears if a connection cannot be made to the Historian server.
Reconnecting to a Server
When the trend is running in live mode and a server is disconnected, the Trend application attempts to
reconnect to the server periodically. The server gets disconnected if it is shut down or restarted, the
network goes down, or the SQL service is stopped or restarted.
Version 2020 37
AVEVA™ Historian Client User Guide Common Client Components
4. Specify the reconnection time in seconds against the RECONNECTION_INTE RVAL_SE CS key as
follows:
[HistClient]
RECONNECTION_INTERVAL_SECS=120
Be sure that the specified value is in the range of 1 to 9999 seconds.
After the connection is established, the data is read and trend starts plotting tag values.
38 Version 2020
Common Client Components AVEVA™ Historian Client User Guide
Status Bar
The status bar allows you to view the status of the connection to the AVEVA Historian and any other
status messages that may be sent by the client.
Green Connections (log ons) have been established to all servers in the server configuration list.
Yellow Connections (log ons) have been established to most of the servers in the list.
Orange No connections (log ons ) have been established to most of the servers in the list.
Red No connections (log ons ) have been established to any of the servers in the list.
Double-click the icon to access the Server List Configuration dialog box. For more information, see
Server Connection Configuration.
Tag Picker
The Tag Picker shows which tag groups and tags exist in the database. It shows all of the tags that are
visible to the currently logged on us er based on his or her permissions.
Version 2020 39
AVEVA™ Historian Client User Guide Common Client Components
Using the Tag Picker, you can quickly search the dat abas e for tags of a certain type and/or for tags that
match a particular search pattern. You can then select the ones you want to include for the client
application or control.
Servers Pane
The Servers pane shows a list of Historian folders. The Servers pane enables you to navigate through
the folder structure (namespace) of one or more Historian servers and select a group (folder) of tags.
40 Version 2020
Common Client Components AVEVA™ Historian Client User Guide
Note: When you select a parent item (such as Public Groups in the illustration above), the Tag Pane
shows items from all of the child items (such as All Analog Summary Tags and its peers above).
Category Description
Servers All objects that make up the basic Historian system, such
as tags, I/O Servers, defined engineering units, storage
locations, and so on.
Public Groups All objects that are visible to all clients. If you have
administrative permissions, you can create, rename, and
delete groups in the public groups folder.
Privat e Groups All objects that are visible to the user that is currently
logged on. Users can creat e, rename, and delete groups
in the private groups folder.
Editing Groups
You can add groups as you would add a new folder in the Windows Explorer. For ex ample, you can
create the "BoilerTags" group under in the existing "Private Groups" group. You can also delete, cut,
copy, paste, and drag objects from one folder to anot her.
Note: You cannot Add, edit, delete, or rename a tag groups when connected to a Managed Historian.
Version 2020 41
AVEVA™ Historian Client User Guide Common Client Components
2. Click OK.
Tags Pane
The Tags pane shows all the tags for the currently selected group in the Servers pane.
To select multiple tags from the list, hold the CTRL and/or S HIFT key while clicking.
To view only tags of a certain type, click the appropriate tab at the bottom of the pane.
To sort the table by a particular column, click the column heading.
42 Version 2020
Common Client Components AVEVA™ Historian Client User Guide
Filter Pane
Use the Filter pane to reduce the tags listed in the Tags pane according to criteria that you specify. You
can filter tags by name, description, and I/O address.
The filter mechanism supports the following "wildcard" characters as part of the filter criteria:
Wildcard
Character Filter Function
[] Any single character within the specified range or set. For example:
[a-f]
[abcdef]
[^] Any single character not wit hin the specified range or set. For example:
[^a - f]
[^abcdef]
For example, to find all tagname ending with "level," type "%level." Filter criteria are not case-sensitive.
When the Servers pane and the Filter pane are both visible, the filter conditions apply to the selected
group in the Servers pane. When the Servers pane is hidden, the filter applies to all of the tags for the
selected Historian.
To apply a filter
1. In the Server box, specify or verify the server.
This box is not available if the Servers pane is visible.
2. In the Tag name box, type the string to match for the tagname.
3. In the De scription box, type the string to match for the description.
4. In the I/O Addre ss box, type the string to match for the I/O address.
5. Select the Exact match check box to search for tags that exactly match the entire string that you
provided for the tagname and/or description options.
For example, if you specify "level" as the tagname and do not select Exact match, any tagname that
contains the string "level" appears. For example, "ReactLevel," "ProdLevel," and "$AccessLevel."
Version 2020 43
AVEVA™ Historian Client User Guide Common Client Components
o Click the Show Tag Picker toolbar button so that it is not highlighted.
44 Version 2020
Common Client Components AVEVA™ Historian Client User Guide
Time Picker
The time picker allows you to select a time range by specifying a start time, end time, and/or duration.
An error appears next to the start or end time controls if you specify an invalid time period. For example,
an end time before a start time.
To specify a time period
1. On the Time toolbar, specify the start time, end time, and/or duration. To select a date from a
calendar, click the down arrow on the start time or end time list. To select a predefined duration, click
the down arrow on the duration list.
When you change one of the options, one of the other options is recalculated aut omatically. While
you change the option, a blue frame appears around the option that will be recalculated as a result of
the change.
The relation between changed and updated options is as follows:
Version 2020 45
AVEVA™ Historian Client User Guide Common Client Components
If you change multiple options in a row, which option is updat ed depends on which two other options
you changed last. For example, if you change the start time and then the end time, the duration is
calculated accordingly. If you change the start time and then the duration, the end time is calculated,
and so on.
2. Press ENTE R.
To specify a time period relative to the current time
1. Do one of the following:
o On the Chart menu, click Update to Current Time so that a check mark appears.
o Click the Update to Current Time toolbar button so that it is highlighted.
2. In the duration list of the Time toolbar, click a duration or type one manually.
The start time is automatically calculated as the current time minus the duration you selected, and
the trend display is updated wit h the new time period.
46 Version 2020
AVEVA™ Historian Client User Guide
C HAPTER 3
AVEVA Historian Client Trend
AVEVA Historian Client Trend is a client application that lets you query tags from an AVEVA Historian
database and plot them on a graphical display. Trend supports two different chart types: a regular trend
curve and an XY scatter plot.
After you add tags to a trend chart, you can manipulate the display in a variety of ways, including
panning, zooming, and scaling. You can customize any trend by configuring display options and set
general options for use with all trends.
Before Trend can be used to query tag information from the database, the server must be running and
you must have security access.
This section describes the basic procedures for working with regular trends. Most of this information also
applies to XY scatter plots. For information specific to XY scatter plots, see Work ing with Scatter Plots.
Version 2020 47
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
After you establish a connection wit h the server, the Trend main window appears.
For information about assigning values to properties during design time, see
02Build_Apps_HistoricalTrendA pp_ConfigProperties1.
For information on using the Tag Picker and the Time picker, see Configure a Trend on page 52. To
show or hide tool bars or components, use the correspondin g commands on the View menu.
48 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Note: You can also double-click the .aaTrend file in the Windows Explorer to start up Trend.
Saving a Trend
To save a trend
1. Do one of the following:
Version 2020 49
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
2. In the Save As dialog box, type a name for the trend. All trend files have the .aaTrend extension.
Note: The trend files with .aaTrend extension are not enc rypted.
3. Click OK.
To save a trend as another name
1. On the File menu, click Save As.
The standard Windows Save As dialog box appears.
2. In the Save As dialog box, type a name for the trend. All trend files have the .aaTrend extension.
Note: The trend files with .aaTrend extension are not enc rypted.
3. Click OK.
Closing a Trend
To close a trend
Do one of the following:
On the File menu, click Close.
Undoing/Redoing Actions
The trend application supports 64 levels of undo/redo. You can undo/redo all of the ac tions for scaling
and moving, as well as for adding and removing tags in the trend.
To undo an action
Do one of the following:
On the Edit menu, click Undo.
50 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
2. On the File menu, click Add. The standard Windows Open dialog box appears.
3. Select the trend file(s) to add to the set.
4. Click Open. The added files appear in the Trend set configuration dialog box.
5. In the Duration list, select the time period for the trend set. The duration is applied t o all of t he files in
the set. Data that is outside of the scope of the trend set duration is ignored.
6. To save the trend set, on the File menu, click Save As. The standard Windows Save As dialog box
appears.
7. In the File name box, type a name for the file.
8. Click Save.
Version 2020 51
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
Configure a Trend
When you configure a trend, you must select the tag(s) for which you want to query the trend data. This
data is queried from the Historian database(s) to which you are currently logged on. After you select tags
for the trend, you can set the start date and end date for the trend. The default settings in the Trend app
are generally adequate to enable you to begin tracking trends.
The following list summarizes the key steps to configure the HistoricalTrendApp during run time.
1. Place the HistoricalTrendApp on a layout pane.
2. Configure the Trend app properties. You can use the default settings, or change them as needed.
See 02B uild_A pps_HistoricalTrendApp_ConfigProperties1 for property descriptions. Default
settings are as follows:
Follow Current Context: Enabled
Max Context Tags to Show: Up to 10 context tags are shown by default. If the asset you are
viewing has more than 10 tags, the first 10 that are listed alphabetically are shown. Showing
more than 10 may impact performance.
52 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Pens: Empty (null). You can add additional context tags to show their trend data by entering the
static value or bind to a reference. The pens configured here are in addition to the max context
tags setting. List additional pens by entering fully qualified attribute names (for example,
ObjectName.Attribut eName). Use a comma to separate attribut e names. You can also bind a
reference to you pen list. To create a reference:
i. Create a ViewApp Namespace object in the Graphic Toolbox and rename it (for example,
"TrendSettings").
ii. Create an attribute of string type in the ViewApp Namespace. In the following example, the
attribute name is "MyPens."
iii. Add the fully qualified attribute names you want to add to the trend. Multiple names must be
separated by commas.
iv. For the Pens property, create the dynamic binding read -only reference to the ViewApp
Namespace (for example, MyViewApp. TrendS ettings.MyPens).
3. Deploy and start the ViewApp containing the HistoricalTrendApp.
4. Log in to the Historian Server that contains the data to you want to show in a trend.
Version 2020 53
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
Note: You cannot execute the Add command if a source tag is deleted but its replication configuration
still exists in the Historian.
The replicated tags are not listed in the context menu if:
The replicated tags are not committed in the Historian.
The replication schedule is removed from the Historian. For example, you are connected to a
Historian 10.0 server and you create a tag called ‘My Tag’. ‘My Tag’ is replicated as a simple tag
called ‘MyServer.MyTag’. When you execute the Add - replicated tag command, the
‘MyServer.My Tag’ tag is shown. When you execute the Add - source tag command, the ‘MyTag’
tag is shown. At this instance, if the replication link between ‘MyTag’ and ‘MyServer.MyTag’ is
removed and if you execute the Add - replicated tag command, the ‘MyServer.My Tag’ tag is not
shown in the list of replicated tags.
54 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
However, if you execute the Add - source tag command, the ‘MyTag’ tag is shown as ‘MyTag’. If
‘MyServer.My Tag’ is the only replicated tag, ‘MyTag’ is considered as a normal tag.
The above scenario holds true if the entire replication schedule is removed in the Historian. If only
one replication is removed, the list shows the remaining replicated tags.
Note: You cannot execute the Find command if a source tag is deleted but its replication
configuration still exists in the Historian.
The replicated tags are not listed in the context menu if:
The replicated tags are not committed in the Historian.
The replication schedule is removed from the Historian. For example, you are connected to an
Historian 10.0 server and you create a tag called ‘My Tag’. ‘My Tag’ is replicated as a simple tag
called ‘MyServer.MyTag’. When you execute the Find - replicated tag command, the
‘MyServer.My Tag’ tag is shown. When you execute the Find - source tag command, the ‘MyTag’
tag is shown. At this instance, if the replication link between ‘MyTag’ and ‘MyServer.MyTag’ is
removed and if you execute the Find - replicated tag command, the ‘MyServer.MyTag’ tag is not
shown in the list of replicated tags. However, if you execute the Find - source tag command, the
‘MyTag’ tag is shown as ‘MyTag’. If ‘MyServer.My Tag’ is the only replicated tag, ‘My Tag’ is
considered as a normal tag.
The above scenario holds true if the entire replication schedule is removed in the Historian. If only
one replication is removed, the list shows the remaining replicated tags.
Version 2020 55
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
o Right -click the selected tag, point to Replace with replicated tag, and then click the tag that you
want to replace with.
The source tag is replaced by the selected replicated tag in the Tag List and in the active trend
chart without changing the pen configuration such as the pen color, width, or retrieval mode.
3. If the selected tag is a replicated tag, do the following:
o Right -click the selected tag and click Replace with source tag.
The replicated tag is replac ed by the source tag in the Tag List and in the active trend chart
without changing the pen configuration such as the pen color, width, or retrieval mode.
The Replace command is not available if:
You are connected to the IndustrialSQL Server 9.0.2
A normal tag that is neither a source tag nor a replicated tag is selected in the Tag Picker.
Note: You cannot execute the Replace command if a source tag is deleted but its replication
configuration still exists in the Historian.
The following happens if you execute the Replace command on a tag configured as a x-axis tag in a XY
Scatter Plot.
If a tag is used as the x-axis tag, the Replace with source tag or Replace with replicated tag
command replaces the x-axis tag reference. For example, a tag called ‘My TagY’ is configured to
have ‘My TagX’ as the x-axis tag. Replacing ‘MyTagX’ wit h ‘MyTagX2’ changes the configuration of
the ‘MyTagY’ and the x-axis tag is replaced by ‘MyTagX2’.
The replicated tags are not listed in the context menu if:
The replicated tags are not committed in the Historian.
The replication schedule is removed from the Historian. For example, you are connected to a
Historian 10.0 server and you create a tag called ‘My Tag’. ‘My Tag’ is replicated as a simple tag
called ‘MyServer.MyTag’. When you execute the Replace with replicated tag command, the
‘MyServer.My Tag’ tag is shown. When you execute the Replace with source tag command, the
‘MyTag’ tag is shown. At this instance, if the replication link between ‘MyTag’ and ‘MyServer.My Tag’
is removed and if you execute the Replace with replicated tag command, the ‘MyServer.My Tag’
tag is not shown in the list of replicated tags.
However, if you execute the Replace with source tag command, the ‘My Tag’ tag is shown as
‘MyTag’. If ‘MyServer.My Tag’ is the only replicat ed tag, ‘My Tag’ is considered as a normal tag.
The above scenario holds true if the entire replication schedule is removed in the Historian. If only
one replication is removed, the list shows the remaining replicated tags.
56 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Name Description
Tag Name The name of the tag within the Historian. If the data values are coming from ArchestrA,
attribute referenc e is shown as the tag name. For A rchestrA attributes, you can also choo
to show the hierarchical name along with the attribute reference.
IO Address The complete I/O address for the tag, including I/O Server name, application, topic, and
item name.
Time Offset The amount of time that the trend curve of the currently selected tag will be shifted from
actual time.
Source Tag The name of the source tag that provides the source data for the replicat ed tag.
Source Server The name of the server that contains the source tag.
2. Select or clear the check box to show or hide the tag in the trend chart. This allows you to hide a tag
without removing it from the list of tags.
Version 2020 57
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
58 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Deleting a Tag
You can delete a tag. Deleting a tag removes it from the chart.
To delete a tag from the trend
1. In the Tag List, select the tag to delete.
2. Delet e the tag by doing any of the following:
o On the Chart menu, click Delete Tag. At the prompt, click Yes.
o Right -click on a tag in the Tag List. In the menu that appears, click Delete.
o Press the DELE TE key on your keyboard.
2. In the Pen Configuration area, configure the appearance of the curve for the selected tag.
Color The line color of the t ag. Click the colored square to select the color from
a palette or define a custom color.
Version 2020 59
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
Style The style of the trend curve. For example, a solid or dashed line.
1. In the Value axis range area, configure the limits for the value axis on the chart.
Top The maximum axis value for the tag, in engineering units.
Bottom The minimum axis value for the tag, in engineering units.
1. In the Type list, select the type of trend curve to draw. Options are Auto, Line, Step line, and Point.
A line curve is best suited for continuously-changing analog data. A step-line curve is best suited for
discrete data and for analog data that is not continuous. By default, the line curve trend is selected
for the summary tags.
When you select the Auto option, the curve type is determined as follows:
o For tags retrieved from a version 9.0 or a later Historian, the type is based on the tag’s effective
interpolation setting, which may be specified in the Trend application’s retrieval settings or on the
Historian. Tags that use stair-step interpolation are trended as a step line, and tags that use
linear interpolation are trended as a line.
o For tags ret rieved from earlier Historian versions, the curve type is based on the tag type: step
line for integer tags, and line for real tags.
The following illustration shows the same data drawn using each type of curve. The line curve is
shown in green, the step line curve is shown in orange, and the point curve is shown in red.
2. From the Format list, select how the values for the tag appear, either in decimal format or scientific
format.
3. From the Decimal places list, select the number of decimal places to show for the data value of the
currently selected tag. This applies only to analog tags. Valid values are 0 through 15.
4. Select Auto Preci sion to have the number of decimal places set automatically based on the value
range.
Note: Auto Preci sion is enabled by default. When auto precision is enabled, the Decimal places
field is read-only.
5. Configure either the time offset or start time for the data.
For more information on time offsets, see Using Absolute or Relative Times.
Time offset Shown only for abs olute mode. The amount of time that the trend curve
of the currently selected tag will be shifted from the actual time. For
information on the offset notation, see Time Offset Formats.
60 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Start time Shown only for relative mode. The starting time stamp for the tag dat a in
the chart.
1. Click OK.
In a regular trend, you can only use target regions in relative time mode. A target region is defined by
"region items," that is, pairs of high and low values at specific time offsets.
To determine the target region, a boundary is drawn that connects all of the high values, and another
boundary that connects all of the low values. The area between these two boundaries constitutes the
target region.
For example, assume that you define the following region items:
Version 2020 61
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
On a trend chart in relative time mode, these points look like this:
62 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
The target region has the same color as the tag’s trend curve. It is only shown when the tag is current ly
selected in the Tag List. Also, target regions are not visible if you are using stacked traces.
You can define and save target regions separately for each tag. Target regions are saved in the trend
file. If you delete a tag from the trend, its target re gion is deleted as well. To use the same target region
for multiple tags or in different trends, either copy and paste it or creat e a CSV file with the target region
data that you can load for each tag. For more information, see the procedures below.
The following section explains how t o set up a target region for a tag. To s pecify whether and how values
outside the target region should be highlighted, and to set the target region’s opacity, see Configuring
Target Region Properties.
To configure a target region for a trend tag
1. In the Tag List pane, do one of the following:
o Right -click on the name of the tag and then click Configure.
o Double-click on the name of the tag.
The <ServerName:Tagname> dialog box appears with the General tab selected.
2. Click the Target Region tab.
Version 2020 63
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
64 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Note: Regardless of this setting, the target region for a tag is only shown when that tag is currently
selected in the Tag List.
3. Click OK.
Version 2020 65
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
o To have the tag use the same retrieval settings as specified in the trend options, click Style
selected at option level in the Retrieval style list. This is the default setting when you add a tag
to a trend.
o To use a predefined retrieval style, click its name in the Retrieval style list. For more information
on ret rieval styles, see Work ing with Retrieval Styles.
o To use custom retrieval settings, click Custom style in the Retrieval style list.
66 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
a. In the Hi story version area, click Latest or Original to overwrite the values of a stored tag. For
more information on History version, see History Version (wwVersion).
b. In the Rules area, do the following:
– In the Timestamp list, click the required timestamp value. For more information on the Time
stamp rule, see Timestamp Rule (wwTimestampRule).
– In the Values to include in calculations list, click the data values that you want to include
in the result. You can include the following quality rules:
Good and uncertain quality: To include data values with uncertain quality in calculations.
Good quality: To exclude data values wit h uncertain quality from calculations.
Optimi stic quality: To use the optimistic quality when the data values are missing. This
option can be configured at either the tag level or the application level.
Server default: To use the default quality rule specified at the Historian level.
For more information on each option, see Quality Rule (wwQualityRule).
a. In the State retrieval area, do the following:
– In the State calculation list, click the state calculation.
– In the State box, specify the value of t he state. For example, you can specify either a open or
close state for the SteamValve tag.
Note: The state calculation settings are applicable only to ValueStat e and RoundTrip retrieval
modes.
For more information on State calculation, see State Calc ulation (wwStateCalc).
b. In the Transformation list, click the transformations to be applied to the result. You can include
the following transformations:
– No Transformation: If the query does not specify the filter element or if the value is not
overridden for the filter element.
– Remove outliers: To remove outliers from a set of analog points.
– Convert analog values to di screte : To convert value streams for any analog tag to
discrete value streams.
o Snap to base value: To force values in a well-defined range around one or more base values to
"snap to" that base value. For more information on Trans formation, see Analog Value Filtering
(wwFilter).
o On the Chart menu, click either Next Tag or Previous Tag to "scroll" to the tag that you
want.
o Click the Previous Tag or Next Tag toolbar buttons to "scroll" to the tag that you want.
Highlighting a Tag
You can select and highlight a tag in the chart. To remove the highlighting, follow the same procedure so
that no check mark or highlighting appears.
Version 2020 67
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
To highlight a tag
1. Select the tag that you want in the Tag List.
2. Do one of the following:
o On the Chart menu, click Highlight Tag so that a check mark appears.
Stacking Traces
You can view individual trends, or "traces," for multiple tags in the chart by stacking them in the display.
To stack tags in the trend
Do one of the following:
o On the Chart menu, click Stacked Traces.
o Click the Stacked Traces toolbar button.
68 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Note: When retrieving live dat a, the time stamp rule for data retrieval is forced to "End." For more
information on this setting, see Timestamp Rule (wwTimestampRule).
Version 2020 69
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
2. Make sure the Update to Current Time toolbar button is not highlighted. If it is highlighted, click
it so that it isn’t highlighted anymore, or click Update to Current Time on the Chart menu.
3. Do one of the following:
o On the Chart menu, click Live Mode so that a check mark appears.
The trend curve is dynamically drawn on the chart. The Replay Mode icon appears at the
top center of the chart to indicate replay mode.
To "replay" historical data at a slower or faster speed
1. Configure a query with a time period whos e end time is earlier than the current time.
2. Make sure the Update to Current Time toolbar button is not highlighted. If it is highlighted, click
it so that it isn’t highlighted anymore, or click Update to Current Time on the Chart menu.
3. Click the downward arrow next to the Live Mode toolbar button. A list of playback speeds appears.
The trend curve is dynamically drawn on the chart at the specified speed. The Replay Mode
icon and the playback speed appear at the top center of the chart to indic ate replay mode. To change
the speed while replay mode is active, repeat steps 1 and 2.
Note: When you replay historical data at an accelerat ed speed, eventually the time period "catches up"
with the current time. When that happens, the speed is automatically reset to normal, and the trend
effectively goes into live mode. For more information, see Showing Live Data.
70 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Note: Predictive retrieval is supported for the best-fit, full, and delta ret rieval modes. If this option is
applied to other retrieval modes, it is ignored.
By using the Pan Right (">>") toolbar button, you can advance the trend and, with the Historian Client’s
new predictive data retrieval feature, you can see a prediction for that future value based on current data.
Historian Client interpolates the trend based on the last value was received.
Note: When you save the trend to a CSV file, you can also see predictive data in an Excel Workbook.
See Saving Trend Data to a .CSV File for more information.
Scaling Tags
The scale is the minimum and maximum range of values for the tag. Each tag has its own scale, which is
usually quite different from other tags in the chart. Scales for tags on the chart are always displayed
along the value axis.
Only discrete, analog, and summary tags can be scaled; event and string tags cannot be scaled. For
discrete tags, the message associated with the 1 value is used as the maximum scale value, and the
message associated with the 0 value is used as the minimum scale value.
In the following chart, two tags are trended in stacked mode. The scale for t he ReactLevel tag is from 0 to
3000. The scale for the other tag, ReactTemp, is from 0 to 220.
Version 2020 71
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
The minimum and maximum values of each scale appear on the value axis.
The initial scale of a tag is determined by its Min/Max EU settings in the Historian. To adjust tag scales,
you have two options:
Edit the value axis range individually for each tag. For more information, see Configuring Trend
Options for a Tag.
Use the scaling commands to adjust the scale of single tag or all tags. For more information, see
Scaling Tags Up or Down and subs equent sections.
You can also change the way in which scale values appear on the value axis. The following sections
describe the available options.
72 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
If the chart includes multiple tags, the scale of the currently selected tag in the cha rt is shown along the
value axis. The scale label color matches the pen color of the selected tag. As you scroll through tags in
the chart, the value axis always shows the scale of the selected tag. The labels along the value axis are
shown even if the current tag is hidden.
To show single scale
On the View menu, click Single Scale.
How a chart looks when single scale is applied depends on the number of tags in the chart and whet her
the chart is in stacked mode.
The following chart includes single tag and is configured for single scale. Stacked mode is not applied.
The following chart includes single tag and is configured for single scale. Stacked mode is applied. Only
the minimum and maximum values are shown.
Version 2020 73
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
The following chart includes multiple t ags and is configured for single scale. Stacked mode is not applied.
The following chart includes multiple tags and is configured for single scale. Stacked mode is applied.
The minimum and maximum values for each tag are shown for the corresponding trend curve.
74 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
The following chart includes single tag and is configured to use multiple scales. Stacked mode is not
applied.
The following chart includes single tag and is configured to us e multiple scales. Stacked mode is applied.
The following chart includes multiple tags and is configured to use multiple scales. Stacked mode is not
applied. The top and bottom labels show the scale for the first tag in the Tag List that is included in the
chart. For the second tag in the Tag List, the scale labels are shown as second from the top and second
from the bottom. As you add tags to the chart, the addition of s cale labels continues to progress inward
toward the middle of the chart. If there is not enough space on the chart to show all of the scale labels,
then the innermost values are not shown.
Version 2020 75
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
The following chart includes multiple tags and is configured to use multiple scales. Stacked mode is
applied.
76 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Version 2020 77
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
78 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Version 2020 79
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
The following example shows a single tag moved up in the trend chart:
80 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
3. Drag a box around the area you want to use for the new scale.
The trend chart is automatically redrawn using the new zooming values that you selected with the
mouse.
Rubber band mode remains in effect until you turn it off by clicking either the Rubber Band Scaling
menu command or toolbar button.
Version 2020 81
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
To pan left
Do one of the following:
o On the Chart menu, click Pan Left.
o Click the Pan Left toolbar button.
To pan right
Do one of the following:
o On the Chart menu, click Pan Right.
o Click the Pan Right toolbar button.
If the time scale is set into the future, then white space appears.
During a pan, the time picker changes to reflect the currently displayed selection.
You can show or hide the value and time cursors, as well as the values at the cursors. You can also show
or hide the value cursor difference.
To configure the line and font colors for the cursors and cursor value dis plays, see Configuring Axis
Properties.
82 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Moving a Cursor
To move a cursor
1. Select the cursor wit h your mouse.
2. Drag the cursor to the spot on the chart.
As you move the cursor in the trend chart, the value for the tag where the cursor and the tag curve meet
appears.
Zooming
When you use zooming in t he trend chart, the z oom value depends on whether you are using time axis
cursors.
If you are not using time axis cursors, zooming is based on the total value for the time axis. The trend
chart is zoomed in or out based on the current percentage set for the zooming scale. All zooms are
positioned along the middle line of the trend chart.
If you are using time axis cursors, zooming in sets the time period to the period bet ween the cursors.
Zooming out works as described above.
For information on setting the zooming percentage, see Configuring Axis Properties.
To zoom in
Do one of the following:
o On the Chart menu, click Zoom In.
Version 2020 83
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
84 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
When you include tags with associated alarms and events in a trend, those alarms and events are
displayed as part of your trend.
Note: Alarm and events for discrete and string tags are not supported in Trend.
Note: If either the Alarm.Set or Alarm.Clear for an alarm occurs outside the dis played timeframe, the
highlighted are will still display. However, if both Alarm.Set and Alarm.Clear for the same alarm occur outside
of the displayed timeframe, the highlight will not be displayed.
Version 2020 85
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
Note: E vents can appear in the dis play area for a chart even if no tag data is available.
When the displayed timeframe includes one or more tags with more than 30 events, individual event
icons are replac ed with Multiple E vents icons.
If more than 100 events per tag occur within the displayed timeframe, you'll see no icons Instead, you'll
see a message in the status bar saying there are too many events to display. In this case, you can zoom
in to see more events details.
To enable Alarms and Events in your trend
1. From the Tool s menu, click Options.
2. Mark the Enable Alarms and Events (from Hi storian data blocks only) check box.
To disable Alarms and Events in your trend
1. From the Tool s menu, click Options.
2. Clear the Enable Alarms and Events (from Hi storian data blocks only) check box.
To view event icons when none display
To see individual event icons, select a smaller timeframe from the Time toolbar.
For example, if you see Multiple E vents icons when the Time toolbar is set to 1 hour, try setting it to
30 minut es to view individual event icons.
To view details about a single event
Hover over the event icon to see its details.
86 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Tag Name The name of the tag within the Historian server. If the data values are
coming from Arc hestrA, the attribut e referenc e is shown as the tag
name. For ArchestrA attributes, you can also choose to show the
hierarchical name along with the attribute reference.
Quality The basic data quality indicator associated with the data value.
Version 2020 87
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
1. To include only the data that is between the time axis cursors on the chart, on the Options menu,
click Data From Between Cursors.
2. To include all of the data on the chart, on the Options menu, click Data From Between Graph
Start/End.
3. To show actual values for discrete tags (for ex ample, 1 or 0), on the Options menu, click Show
Actual Values For Di scretes. When retrieving data for discrete tags in ValueStat e mode, you must
select this option to see correct time-in-state information.
4. To show messages for discret e tags (for example, ON or OFF), on the Options menu, click Show
Message s For Di screte s.
5. You can copy and paste data to the Windows clipboard by right-clicking in the data and selecting the
appropriate option from the menu that appears.
6. To save the data as a .cs v file, on the File menu, click Save As.
7. To set up a printout of the data, on the File menu, click Page Setup. Setting up the page works like
in any other Windows applic ation.
8. To preview a printout of the data, on the File menu, click Print Preview. Using the preview window
works like in any other Windows application.
9. To print the data, on the File menu, click Print. Specifying printing options works like in any other
Windows application.
10. To exit the dialog box, on the File menu, click Exit. Or, click the Close button.
88 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
1. To include only the data that is between the time axis cursors on the chart, on the Options menu,
click Data From Between Cursors.
2. To include all of the data on the chart, on the Options menu, click Data From Between Graph
Start/End.
3. To show actual values for discrete tags (for ex ample, 1 or 0), on the Options menu, click Show
Actual Values For Di scretes. When retrieving data for discrete tags in ValueStat e mode, you must
select this option to see correct time-in-state information.
4. To show messages for discret e tags (for example, ON or OFF), on the Options menu, click Show
Message s For Di screte s.
5. You can copy and paste data to the Windows clipboard by right -clicking in the data and selecting the
appropriate option from the menu that appears.
6. To save the data as a .cs v file, on the File menu, click Save As.
7. To set up a printout of the data, on the File menu, click Page Setup. Setting up the page works like
in any other Windows applic ation.
8. To preview a printout of the data, on the File menu, click Print Preview. Using the preview window
works like in any other Windows application.
9. To print the data, on the File menu, click Print. Specifying printing options works like in any other
Windows application.
10. To exit the dialog box, on the File menu, click Exit.
Viewing Statistics
You can view statistics for the data that is retrieved and displayed for a trend. Display statistics
include range, average, minimum, maximum, sum, standard deviation, and query properties. Examples
of query properties are query time range, start time, end time, and number of rows returned. To display
data statistics
1. On the View menu, click Statistics. The Stati sti cs dialog box appears.
Tag Name The name of the tag within the Historian server. If the data values are
coming from Arc hestrA, the attribut e referenc e is shown as the tag
name. For ArchestrA attributes, you can also choose to show the
hierarchical name along with the attribute reference.
Version 2020 89
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
Using Annotations
You can use Trend to make an annotation for a t ag at any point in time. An annotation is a user comment
about a tag. For example, you might want to save a comment about a very high spike in a trend. You can
create an annotation for the value of the tag at the spike. All annotations are saved to the dat abase and
can be retrieved again at a later time.
You can creat e a private annotation (t hat only you can see) or a public annotation (which is viewable by
all trend users). Private annot ations are only available to the users who created them and have suitable
access.
For each annotation, an annot ation mark (solid circle) is added to the trend. This annotation mark can be
viewed on the trend if the trend properties are set to allow it.
90 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
When you make an annotation, the following information is stored in the Annot ation table in the Runtime
database of the Historian:
Name of the tag for which the annotation is associated.
The date/time of the annotation. The time of the annot ation is based on the position of where it was
created on the time axis.
The value of the tag at the time of the annotation.
The annotation text.
Note: You cannot use the Annotations functionality when connected to a Managed Historian.
Adding an Annotation
Annotations are inserted in the chart at the location where the mouse button is clicked and are
associated with the selected tag's value where the mouse button is clicked.
To add an annotation
1. Select the tag for which you want to add an annot ation. You can do this by selecting the tag in the
Tag List pane.
2. Do one of the following:
o On the Chart menu, click Add Annotation.
o Right -click in the chart. In the shortcut menu that appears, click Add Annotation.
The Add Annotation dialog box appears.
3. In the Tag List, click the name of the tag for which you want to add the annotation.
4. In the Time list, click the time stamp of the tag value for which you want to add the annotation.
5. In the Text window, type in your comment.
6. In the Vi sibility area, specify if you want the annotation to be visible to others. Click Private to have
annotations only visible to you.Click Public to have annotations visible to anyone who is able to log
on to the dat abas e.
Version 2020 91
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
7. Click OK.
An annotation marker (dot) appears on the chart at the point on the chart where the annotation was
made.
If you hover with the mouse on the marker, the details for the annotation appear on the chart.
Server The name of the server that stores the tag values.
Cont ent The annotation text.
User The name of the database user. This is the user that created the
annotation.
Time The timestamp of the tag value for which the user has made an
annotation.
Created On The date that the annotation was created.
1. To sort the table according to the information in a particular column, click the column heading. Click
again to reverse the sorting order.
92 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Editing an Annotation
To edit an annotation
1. On the View menu, click Annotation Li st. The Annotations dialog box appears.
2. Select the annotation in the list.
3. On the Annotations menu, click Edit. The Edit Annotation dialog box appears.
Deleting an Annotation
Deleting an annotation removes the annotation from the trend.
To delete an annotation
1. On the View menu, click Annotation Li st. The Annotations dialog box appears.
2. Select the annotation in the list.
3. On the Annotations menu, click Delete. Confirm the deletion.
4. Click OK.
Version 2020 93
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
The .csv file cont ains the same information that appears in the Annotations dialog box.
Printing Annotations
To print the list of annotations
1. On the View menu, click Annotation Li st. The Annotations dialog box appears.
2. To configure the printing options, on the File menu, click Page Setup. The Page Setup dialog box
appears.
94 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Note: This is different than Alarms and E vents, which can be associated with t ags received and stored in
the Historian. See Viewing Alarms and Events on page 84 for det ails.
An event is the set of attributes describing the moment of satisfaction of a set of criteria on historical tag
values in the AVEVA Historian. Attribut es of an event include the date and time that the event occurred
and the criteria that were satisfied.
An event tag is a name for an event definition in the system. Whereas these tag types are the definitions
of types of variables to be stored, an event tag is a named referenc e for the description of how a specific
change is detected and what to do if it is detected.
Version 2020 95
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
You can select and trend event tags like any other tag in the system. Events can also be displayed along
with analog and discrete tags.
96 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
The Tag List shows the time offset for the chart data, relative to 0. In this example, there is no offset
configured.
The Tag Properties dialog box shows the time offset option. For more information, see Configuring
Trend Options for a Tag.
The Tag List shows the actual start time for the tag data.
Version 2020 97
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
The Tag Properties dialog box shows the start time option. For more information, see Configuring
Trend Options for a Tag.
Step: 1 2 3 4
98 Version 2020
AVEVA Historian Client Trend AVEVA™ Historian Client User Guide
Items in square brackets ([ and ]) are optional. Colons and periods (: and .) are literal characters.
The notation variables are as follows.
Item Description
ws White space.
d Days
HH Hours of 24 or greater.
FF Fractional days.
Time offsets are shown in the application in either a short or long form:
Short form: HH:mm:ss.ff or d hh:mm:ss.fff
Long form: d <label> hh:mm:ss.fff
In the short form:
"d" is omitted for offsets less than or equal to 48 hours
".fff" is omitted for offsets greater than 60 seconds
":ss.fff" is omitted for offsets greater than 24 hours
Thus, for periods of less than 60 seconds, the short form is never longer than 11 characters. For the short
form, the hours in HH format (rollover at 48 instead of 24) are shown only if days are not to be displayed
anywhere on the time axis.
The "<label>" is the localized word for "days" or "day." The period (.) and colon (:) are replaced with the
appropriate characters from the regional settings.
Version 2020 99
AVEVA™ Historian Client User Guide AVEVA Historian Client Trend
In this example, the chart is configured to show data for the ReactLevel tag bet ween 6/22/2005
10:00: 00 AM and 6/22/2005 11:00:00 AM.
2. Add the same tag again to the trend chart for the same time period.
In this example, the ReactLevel tag was added again to the chart.
3. Because the data is identical, you only see single trend curve in t he chart.
4. Determine the time span for the dat a you want to compare with the base batch of data.
5. To specify the time offs et for the data to compare, double -click on the tag in the Tag List. The Tag
Properties dialog box appears.
6. In the Time offset box, configure the amount of time that the data shown in the chart is to be offset
from the actual query time. For more information on the format, see Time Offset Formats.
In this example, this data is to be compared with the base batch that occurred an hour before, so the
time offset is set to one hour.
7. Click OK.
In this example, the data for the ReactLevel tag between 6/22/2005 11:00:00 AM and 6/22/2005
12:00: 00 AM includes an annotation made around 11:30:00 AM.
8. Stack the traces so that you can see both s ets of data separately and then select the first tag that you
added to the chart.
In this example, the trend curve for the later set of data (shown in green) appears on the chart, even
though the time axis reflects the time of the base batch of data (shown in orange).
9. To view the chart in relative mode, on the View menu, click Relative Time. The time axis now shows
the time span for the base batch starting at 0:00:00 instead of the actual time.
You can also use the offset to compare a trend curve against anot her c urve either forward or backward in
time. To do this, set the time offset of the "master" batch of dat a so that the start time is the same as the
start time for the batch of data you want to compare.
In the following example, the time offset for the complete batch is set to a value of -01.00.44. The
complete batch appears as the top curve in the chart.
The incomplete curve at the bottom of the chart is plotted in live mode next to the complete curve at the
top.
By default, the retrieval settings that you specify here are used for all tags on all trend charts. However,
you can override these settings individually for eac h tag. For more info rmation, see Configuring Trend
Options for a Tag.
3. To use the default pen styles for the tags in a trend, select the Use default colors for new tags
check box. Go to step 10.
4. To configure one or more pen styles, clear the Use default colors for new tags check box.
5. Select a pen number from the list.
6. Click the Color box and select or configure a color for the pen line.
7. In the Width list, select the width, in pixels, of the pen line.
8. In the Style box, select the style of the pen, either a solid line or one of a variety of dashes.
9. Repeat steps 5 through 8 for each pen style you want to configure.
10. Click OK.
The grid displays the current time zone and daylight savings time settings for the following entities:
Enti ty Description
<Server> The Historian(s) to whic h the Workbook applic ation is currently connected.
The time zone displayed for the server(s) is for informational purposes only and
cannot be changed using the Work book application.
3. In the Time zone list, click the name of the time zone to use for the Workbook application.
The time zone for the Workbook application in the grid displays the new time zone picked.
For example, consider a SCA DA application that monitors a pipeline bet ween Houston, Texas and
Lake Forest, California. The Workbook application is installed on a computer located in Houston,
Texas. Therefore, the time zone entry for the Client entity displays Cent ral Standard Time. The
server is also located in Houston, Texas. The time zone entry for the Server entity also displays
Cent ral Standard Time. You want to send a Workbook file to an engineer loc ated at the start of the
pipeline in Lake Forest to aid in troubleshooting a problem. You can set the time zone of the
Workbook application to reflect the time of Lake Forest, California (P acific Standard Time), so that
the workbook that you send to the engineer displays data in a time zone that is relevant to him/her.
4. Click OK.
3. Select Always on top to always display Trend as the top-most program on the computer desktop.
4. Select Di splay all tag timestamps in all data logs to include the time stamps for all tags in the data
log.
5. In the Di screte log format area, configure how the values for discrete tags appear in the data log.
Select Di splay actual numeric values to show the numeric value for the discrete tag, either 1 for
the TRUE state or 0 for the FA LSE state. Select Display associated message s to show the text
associated wit h the TRUE or FALSE state of the discrete tag. For example, "On" or "Off," "Started" or
"Stopped."
6. In the Tag defaults area, configure how tag values appear in the chart. Changes to these settings
are not applied until the next tag is added to the chart.
Decimal places The number of values that appear to the right of the decimal period.
Format The format for tag values, either decimal format or scientific format. For
the scientific format, the value appears with an E denoting the exponent.
Auto Precision If selected, the number of decimal places is automatically set based on
the value range. When Auto Precision is selected, the Decimal places
field is read-only.
1. By default, when you start the Trend application, it automatically reopens the trend files that were
open when you closed it. Clear the Open documents on startup check box to disable this behavior.
2. Click OK.
3. In the Source area, specify the Historian tables from which data will be retrieved.
Manual history Normal SQL Server tables that are used to store data. These are the
tables ManualAnalogHistory and ManualDiscreteHistory tables.
Extension tables Logical tables that are populated from the Historian data files. These
tables support the Historian time domain extensions for handling data.
Both Select this option to retrieve data from both the manual and extension
tables.
1. In the Legacy retrieval area, specify the retrieval mode for data that is retrieved from the Historians
with a version earlier than 9.0.
For information on how these settings interact with a retrieval style that you may have selected, see
Work ing with Retrieval Styles.
Use Delt a retrieval Select this check box to use delta retrieval mode for query time periods
for less than that are less than a specified amount.
specified intervals
Interval for The time period, in minutes, for which delta values are retrieved for
Analogs analog tags. For greater time periods, cyclic retrieval is used instead.
Valid values are 0 to 250,000. The default value is 15.
Interval for The time period, in minutes, for which delta values are retrieved for
Discretes analog tags. For greater time periods, cyclic retrieval is used instead.
Valid values are 0 to 10, 000. The default value is 15.
Maximum values The maximum number of values to return per tag. Valid values are 0 to
to retrieve per tag 30,000. The default value is 10,000.
1. Click OK.
3. In the Refre sh interval box, specify the time period, in seconds, at which the chart is refreshed if set
to live mode. Valid values are 0. 25 to 300. The default value is 1.
4. In the Refre sh entire chart every XX intervals box, specify the number of refresh intervals after
which the entire chart is refreshed. The chart is not only refreshed with the new live data, but all the
data in the chart is refreshed. Valid values are 1 to 100,000. The default is 100.
Suppress tag list Do not include the tag list in the printout.
1. In the Font area, click the Font icon to select the name, style, and size of the font that is to be
displayed on the chart and Tag List.
2. Click OK.
3. Click the Time axis label color box to select or configure the color for the time labels that appear at
the bottom of the chart.
4. In the Background area, configure the colors or image to use for the background of the entire chart
area.
Color Click to select or configure a main color. If you are using a gradient fill, this is
the starting color for the gradient.
Gradient end Click to select the ending color for the gradient. The gradient starts with the
color main color and fade to the gradient end color.
Gradient type The starting point for the flow of the gradient. Valid values are Center,
Diagonal Left, Diagonal Right, Horizontal Center, Left Right, Top Bottom,
and V ertical Cent er. For example, if you select green as main color, white as
the gradient end color, and center as the gradient type, the center of the
chart is green and fades to white towards the surrounding edges.
Image The name of the image to use as the background. The image is resized to fit
within the chart area. The color of the pixel in the lower left corner of the
image is used as the transparency mask for the image. Click the ellipses
button to browse for and select an existing image.
1. In the Plot area, configure the colors or image to use for the chart plotting area. Options are the
same as for the Background colors.
2. In the Border area, configure the color for the border of the chart.
Color Click to select or configure a color.
Pen widt h Specify how wide (in pixels) a highlighted curve should be.
1. Click OK.
3. In the X axis area, configure the properties for the horizontal axis.
Number of The number of values that are shown along the time axis. The values are
values shown at evenly-spac ed points along the axis. The number of values remain
the same even if you zoom in and out. The valid range is from 2 to 15, with a
default value of 6.
Grid lines per The number of grid lines that appear between each tag value plotted on the
value chart. The valid range is from 1 to 20, with a default value of 3.
Color Click to select or configure the color for each time axis cursor.
Width The width of each time axis cursor.
Grid lines per The number of grid lines appearing bet ween each tag value that is plotted
value on the chart. The valid range is from 1 to 20, with a default value of 3.
Color Click to select or configure the color for each value axis cursor.
3. Select the Show Limits check box to show horizontal lines on t he chart at the limit values configured
for analog tags.
4. For each type of limit (HiHi, Hi, Lo, and LoLo), configure the properties of the line.
Limit line Select this check box to include a line on the chart for the limit value. For
example, if an analog tag has a Hi limit of 1800, a horizontal line is drawn at
the 1800 mark on the vertical axis.
Limit excursion Select this check box to indicate the portion of the trace that is outside of the
limit.
Color The color of the line.
Width The width of the line.
3. Select the Retrieve annotations check box to retrieve annotation information and show them on the
chart.
4. In the Annotations area, configure how annotations are shown on the chart.
Show Show only the annotations for the tags currently chart ed in the trend.
annotations for
tags on the
trend
Show Show all annotations for all tags. For those tags not currently charted on
annotations for the trend, the annotation marker appears at the top of the chart at the
all tags point in time on chart at which the annotation was made.
Show public Show only public annotations. You can see your private annotations and
annotations the public annot ations of other Historian users.
Show Show both public and private annotations. You can see your private
annotations for annotations, as well as both the public annotations and private
all users annotations of others.
1. Click OK.
For information on the X Y Scatter Plot tab, see Configuring Scatter Plot Properties.
3. In the Opacity box, enter the opacity with whic h you want the target region to appear on the trend
chart.
4. In the Excursion annunciation type list, specify whether values that fall outside the target region
should be highlighted. Select Show with special color to highlight parts of the trend graph that are
outside the target region in a special color. To select the color, click the color box next to Target
region excursion color. Select None if you do not want any special highlighting.
5. Click OK.
For example, you could show how product yield varies depending on the reactor temperature in a
manufacturing process, and use this information to determine the optimum temperature:
In this example, the X axis represents the reactor temperature as historized by the React Temp t ag (the
" X axis tag"). The Y axis represents the product yield as historized by the ProductGood tag (the "Y axis
tag"). For each available data sample of either tag during the chosen time period, a corresponding value
for the other tag is matched or interpolated and plotted on the chart.
For more information, see How Are Value Pairs Matched?.
Plotted over time, the two tags look like this:
Compared to this type of dis play, the scatter plot shows the correlation muc h more clearly.
The following sections show you how to configure a scatter plot and manipulate the display. Many of
these features work in a regular trend. Therefore, these sections mainly explain the specific differences
when working with scatter plots.
t1 x t1 y t1
t2 — y t2
t3 x t3 —
t4 x t4 y t4
According to the rules above, the missing value of Tag 1 at t 2 is assumed to be x t1. The missing value of
Tag 2 at t 3 is calculated using a linear int erpolation bet ween y t2 and y t4.
If either tag has a NULL sample at a given point in time, the data point is considered "empty," which may
result in a gap in the curve.
For example, if one tag has good quality and the other tag has bad quality, the data point is highlighted
with the indic ator for bad quality.
Because the points are connected in the order they are defined, reordering the points results in a
different target region. Assume that you reorder the same points like this:
You can also create target regions with a "hole" in the middle. For example, use the following points:
Number of The number of time labels that appear on the chart. The valid range is
labels from 2 to 15, with a default value of 6. The labels are spaced evenly over
the time period between the earliest and the latest data point in the
chart. (Therefore, they may not be spaced evenly in distance.)
Marker Size The size to display the start/end markers in the chart. The valid range
increases in size from from 1 to 5, with a default value of 1.
Starting The opacity of the trace at the oldest data point. 0 means transparent,
percent 100 means fully opaque.
Ending percent The opacity of the trace at the most recent dat a point.
1. Select the Always use Full or Delta retrieval check box if you always want to use Full or Delta
mode retrieval for all tags in a scatter plot regardless of the retrieval settings that are configured at
the application or tag level. Full retrieval is used when retrieving dat a from a Historian with a version
of 9.0 or higher. Delta retrieval is used for earlier server versions. We recommend to keep this option
enabled unless the nature of your data makes full retrieval impractical.
2. Click OK.
Note: When you print a chart, only the data that is currently displayed in the application appears in the
printout. For exampl e, if part of the Tag List is not displayed in the application, then that portion does not
appear in the printout.
You can view the data in any spreadsheet application that can open .csv files. For example, Microsoft
Excel.
If you do not want the data values to be blank unless the value is NULL, use the Cyclic retrieval style and
add the following entry into the win.ini file:
[HistClient]
KeepAllTrendPoints=1
Note: By default, the trend file that you want to send does not have a *.aaTrend file extension.
2. Remove the attachment and then browse to the location and attach the trend file that includes the
trend *.aaTrend file as an extension.
For example:
The Report name box shows the name of the trend report as it appears on the AVEVA Information
Server. This name is automatically created based on the name of the file that you are publishing.
3. In the Server list, click the name of the AVEVA Historian on which to store the report publishing
information.
4. In the Report site list, select the URL of the AVEVA Information Server to which you want to publish
the trend.
The AVEVA Information Server may or may not be physically located on the AVEVA Historian
computer.
5. In the Report type area, click Static.
6. In the Folder list, click the name of the physical folder on the report site where the static report is
posted.
7. Click OK. The Report succe ssfully published dialog box appears.
Note: The AVEVA Information Server periodically scans the publishing folders for changes. A short
delay may occur prior to the published report being shown on the AVEVA Information Server.
8. To view the AVEVA Information Server, click Browse. Otherwis e, click Done.
2. On the File menu, point to Publish, and then click Dynamic Trend. The Publi sh Report dialog box
appears.
The Report name box shows the name of the trend report as it appears on the AVEVA Information
Server. This name is automatically created based on the name of the file that you are publishing.
3. In the Server list, click the name of the AVEVA Historian on which to store the report publishing
information.
4. In the Report site list, select the URL of the AVEVA Information Server to which you want to publish
the trend.
The report site may or may not be physically located on the AVEVA Historian computer.
5. In the Report type area, click On demand.
6. In the Report group list, click the name of the physical folder on the report site where the static
report is posted.
7. In the Lockdown options area, select the check boxes for the functionality you want to allow in the
published trend report.
For example, if you want AVEVA Information Server users to be able to change the report using the
Tag Picker, select the Show tagpicker check box.
8. Click OK. The Report succe ssfully published dialog box appears.
Note: AVEVA Information S erver periodically scans the publishing folders for changes. A short delay
may occur prior to the published report being shown in the server.
9. To view the AVEVA Information Server, click Browse. Otherwis e, click Done.
Annotating a Chart
To annotate a chart or the application window
1. Create a trend chart.
2. On the Tool s menu, click Annotate Chart or Annotate Application. The Annotate Layout dialog
box appears.
3. Use the stylus to write annotations on the image. For more information, see Mak ing Chart
Annotations.
4. Save or e-mail the file. For more information, see Saving, Printing, and E-Mailing an Annotated
Chart.
Pen: To draw and write comments.
Highlighter: To highlight areas of the chart using a semi-t rans parent color.
Era ser: To delete parts of an annot ation.
Each of thes e tools has certain options such as size, color, or transparency.
To set these options, click the downward arrow next to each tool’s icon and then click the command
for the option.
To restore these options to their default settings, on the Tool s menu, click Restore Defaults.
1. On the Edit menu, click E-Mail Configuration. The E-Mail Configuration dialog box appears.
2. Type the host name of the SMTP e-mail server to use for sending e-mail. If you are unsure, ask your
administrator for assistance. Click OK.
3. On the File menu, click E-Mail. The New Message dialog box appears.
4. Type sender and recipient addresses and write a message. An image file of the annotat ed trend is
automatically added as an attachment.
5. Click Send to send the e-mail.
You can import data from a .crv file and display it in the trend chart. This allows you to migrate trend files
from versions before ActiveFactory 9.0.
To import .crv data
1. On the Tool s menu, click Import. The Open dialog box appears.
2. Select the .crv file to open and then click Open.
C HAPTER 4
AVEVA Historian Client Query
The AVEVA Historian Client Query is an application that allows you to retrieve data from an AVEVA
Historian database or any SQL Server database and return the results in a table format. If you are
querying an AVEVA Historian, you can choose from a number of predefined query types and easily
select the options for each type, eliminating the need to know SQL syntax. The SQL query is created for
you.
You can also write custom queries if you know SQL syntax and the schema of database you are using.
After you establish a connection with the server, the Query program appears, showing the main window:
Query Toolbar
Use the query toolbar to select the query type, server, and database for the query.
The Servers list contains the list of connected servers. The Database list is only available if the query
type is Custom.
Columns Pane
Results Pane
Use the Resul ts pane to view the results of the query that you have created. The Re sults pane includes
three tabs:
SQL tab
Data tab
All Queries tab
The SQL tab shows the actual SQL statement that is sent to the server.
The Data tab shows the data returned by the SQL statement.
The All queries tab shows all of the SQL statements that have been created for the selected tag type for
the current query. To view all the SQL statements, click All queries on the Options menu.
Note: You cannot execute the Find command if a source tag is deleted but its replication configuration
still exists in the Historian.
The Find command does not navigate to the tag when the target tag is not of the type that can be shown
in the current Tag Picker configuration.
For example, in the Aggregate values query type, the Tag Picker shows only Analog, Discrete, and
Analog Summary tabs and you want to find a replicated state summary tag, the relevant tag is not
navigated as the State Summary tab is not available. For example, a tag ‘Watervalve’ is replicated as a
state summary tag called ‘WaterValve.S1M’ and as a simple tag called ‘MyServer.WaterValve.’ If you
execute the command to find the ‘WaterValve.S1M’ tag, the application does not navigate and find the
tag as the State Summary tab is not available.
However, if you execute the command to find the ‘MyServer.WaterV alve’ tag, the application navigates
and finds the tag as the Di screte tab is available.
The replicated tags are not listed in the context menu if:
Note: If you find a source tag or a replicat ed tag in a server to which you are logged on but the server is
currently disconnected from the net work, the Find command finds the server but the Tags pane will not
list the tags from that server.
Status Bar
The right side of the status bar shows the status of the AVEVA Historian. If the Data tab in the Re sul ts
pane is selected, then the number of rows of result dat a is also shown in the status bar.
For more information on the status bar, see Status Bar.
Creating a Query
When you configure a query, you must select the tag or tags for which you want to retrieve data, the type
of query, and the server(s) from which to retrieve the dat a. The data is queried from the dat abase to
which you are currently logged on. You can also configure additional parameters that are specific to each
query type.
There is no limit to the number of tags in a query; you can include as many as your system allows.
To create a query
1. In the Query type list in the toolbar, click the name of the type of query you want to use as a starting
point. For more information on the possible types, see Query Types.
2. In the Server list, click the name of the server from which you want to retrieve data.
3. Use the Tag Picker to find tags in the AVEVA Historian database that you want to include in your
query. For more information on the Tag Picker, see Tag Pick er.
4. In the Columns pane, click on each tab and configure the details for the query. The tabs that appear
depend on what query type you have selected. For more information on configuring the det ails for a
particular query type, see Query Types.
5. In the Re sults pane, click the Data tab to view the resulting data.
Note: You do not have to execute the query. The Query application automatically executes the query
after you switch to the Data tab, or if you make any changes while the Data tab is shown.
Query Types
The following types of queries are supported. For eac h query type, a set of relevant tabs appear in the
Columns pane so that you can configure the details for the query. Some of the tabs are the same for
multiple query types.
Query Type: Aggregate Values
Query Type: Alarm History
Query Type: Alarm Limits
Query Type: Analog Summary Values
Query Type: Annotations
Query Type: Custom
Query Type: Event History Values
Query Type: Event Snapshot
Query Type: Favorites
Query Type: History Values
Query Type: IO Server
Query Type: Live Values
Query Type: Number of Tags
Query Type: Server Version
Query Type: State Summary Values
Query Type: Storage
Query Type: Storage Size Available
Query Type: Storage Start Dat e
Query Type: Summary Values
Query Type: Tag Details
Query Type: Tag Search
Query Type: Time Running
Criteria Tab
Use the Criteria tab to specify the filtering criteria for the dat a value(s) to be returned.
o first true: Returns only rows that are the first to successfully meet the criteria (return true) after a
row did not successfully meet the criteria (returned false). This is also known as “leading” edge
detection.
o no longer true: Returns only rows that are the first to fail the criteria (return false) after a row
successfully met the criteria (returned true). This is also known as “trailing” edge detection.
o true: Ret urns all rows that successfully meet the criteria; no edge detection is implemented at
the specified res olution.
o first true or no longer true: All rows satisfying both the leading and trailing conditions are
returned.
Calculations Tab
Use the Calculations tab to configure the aggregations to perform on the values for the selected tag(s).
Di splay calculated values for each tag separately: If selected, one row of calculated values is
returned for each tag. If this check box is not selected, then all values for all specified tags are
included for a single aggregation.
Count: The total number of values for the tag.
Minimum: The minimum value for the tag.
Maximum: The maximum value for the tag.
Average: The average value for the tag.
Sum: The sum of all values for the tag.
Standard deviation: The statistical standard deviation of all values for the tag.
Decimal places: The number of decimal places to show for the dat a value of the currently selected
tag. This applies only to analog tags.
Columns Tab
Use the Columns t ab to configure the columns that are returned for the res ults.
4. Select the Use alarm limits check box to retrieve values for the alarm limits.
5. To view the results, click the Data tab in the Results pane.
Columns Tab
Use the Columns t ab to select the columns that you want to include in the query results.
Tag Name: The name of the tag within the AVEVA Historian server. If the data values are coming
from ArchestrA, the attribute reference is shown as the tag name. For ArchestrA attributes, you can
also choose to show the hierarchical name along with the attribute reference. For more information
see, ArchestrA Naming Conventions.
Description: The description of the tag.
SourceTag: The source tag of the tag.
SourceServer: The source server of the tag.
StartDateTime: The start time of the retrieval cycle.
EndDateTime: The end time of the retrieval cycle.
OPCQuality: The quality value received from the dat a source.
PercentGood: The percentage of rows with good quality in relation to the total number of rows in the
retrieval cycle.
First: First value within the retrieval cycle or the most recent value prior to the cycle.
FirstDateTime: The time stamp associated with the first value of the retrieval cycle.
Last: The last value within the retrieval cycle or the most recent value prior to the cycle.
LastDateTime: The time stamp associated with the Last value, which can be earlier than the
StartDateTime if this is the initial value for the retrieval cycle.
Minimum: The minimum value that occurred within the retrieval cycle.
MinDateTime: The time stamp associated with the minimum value.
Maximum: The maximum value that occurred within the retrieval cycle.
MaxDateTime: The time stamp associated with the maximum value.
Average: The time weighted average value of the retrieval cycle.
Standard Deviation: The time weighted standard deviation value of the retrieval cycle.
Integral: The area under the value curve of the ret rieval cycle.
ValueCount: The number of values contributing to the summary.
wwCycleCount: The number of retrieval cycles (sub-interavls) for the specified time period. For
more information, see Cycle Count (X Values over Equal Time Intervals) (wwCycleCount).
wwResolution: The sampling rat e, in milliseconds, for retrieving the data in cyclic mode. For more
information, see "Resolution (Values Spaced E very X ms ) (wwResolution).
wwTimeZone: The time zone for retrieval is specified.
wwRetrievalMode: The processing of retrieved data is specified before it is returned to the client.
For more information, see Understanding Retrieval Modes.
wwVersion: The version of data to be used if the original data value is changed.For more
information, see History Version (wwV ersion).
2. If you want to only retrieve annotations for particular tag(s), use the Tag Picker to select one or more
tags. For example, if you want to searc h for annotations for all analog tags, select the All Analog
Tags public group and then select all analog tags in the Tags pane.
3. In the Columns pane, click on each tab and configure the parameters for the query:
o See Criteria Tab.
o See Time Tab.
4. To view the results, click the Data tab in the Results pane.
Criteria Tab
Use the Criteria tab to specify the type of annotations to be retrieved and which columns to show in the
results. The Tagname column always appears.
You can use the Custom query type to ret rieve data from any database. For example, the following query
retrieves from the Northwind database the list of employees who live in London. (The Northwind
database is a sample database that is shipped with Microsoft SQL Server.)
USE Northwind
SELECT * FROM Employees
WHERE City = 'London';
Columns Tab
Use the Columns t ab to configure the columns to show in the results.
o Date and time: The timestamp reflecting when the event history dat a was acquired. This is the
time for when the event actually occurred.
o Include milliseconds: Used to include milliseconds in the timestamp.
o Detect date time: The timestamp reflecting when the event was det ected by the event system.
2. Configure how to filter the results:
o Limit to XX rows: The number of initial consecutive rows to return out of the total number of
rows in the rec ord set, starting with the first row in the record set. For example, if there are a total
of 150 rows, and you set this value to 100, only the first 100 rows in the records set will be
returned.
Columns Tab
Use the Columns t ab to configure the columns to show in the results.
3. In the Favorite queries folder box, type the path to the query file. To brows e to the folder, click the
ellipsis button.
All .sql files in the folder appear in the Favorite queries window.
4. Select the query to execute in the window.
5. To view the query, click the SQL tab in the Re sults pane.
6. To view the results, click the Data tab in the Results pane.
Columns Tab
Use the Columns t ab to configure the columns to show in the results. The Value (numeric value) and
vValue (string value) columns are always shown.
Note: Some of the columns are not available when you select Wide query format on the Format tab.
wwTimeStampRule: The time stamp rule used in data retrieval. For more information, see
Timestamp Rule (wwTimestampRule).
wwVersion: The version of data to be used if the original data value is changed. For more
information, see History Version (wwV ersion).
wwEdgeDetection: The type of edge detection used in the query.
wwTagKey: The unique identifier of the tag in the AVEVA Historian server.
InterpolationType: The interpolation type us ed to calculate the value. For more information, see
Interpolation Type (wwInterpolationType).
wwResolution: The sampling rat e, in milliseconds, for retrieving the data in cyclic mode. For more
information, see Resolution (Values Spaced E very X ms) (wwResolution).
wwValueDeadband: The value deadband used in data retrieval. For more information, see Value
Deadband (wwValueDeadband).
wwQualityRule: The quality rule used in dat a retrieval. For more information, see Quality Rule
(wwQualityRule).
wwTimeZone: The time zone for retrieval is specified.
PercentGood: The percentage of rows with good quality in relation to the total number of rows in the
retrieval cycle.
wwFilter: The analog filter used to filter data during retrieval. For more information, see Analog
Value Filtering (wwFilter).
Criteria Tab
Use the Criteria tab to specify the filtering criteria for the dat a value(s) to be returned.
Note: If you use a string criterion, you can only retrieve data for string tags in the query. No data is
returned for tags of other types that you may have selected.
o Select the third Value check box and specify text that the returned string value must match. You
can specify whether the returned value must equal, start, end, or contain the specified text. For
example, you can specify that the value must contain the text “alert.”
o Go to Step 4.
4. (Optional) Select the Value not null check box to filter out null values from the res ults.
5. (Optional) In the Quality list, click the quality criteria for the data. Only data values that match the
quality you specify (Good, Bad, or Doubtful) are returned.
6. (Optional) In the Criteria applicability list, select the moment at which the edge detection criteria is
met.
o first true: Returns only rows that are the first to successfully meet the criteria (return true) after a
row did not successfully meet the criteria (returned false). This is also known as “leading” edge
detection.
o no longer true: Returns only rows that are the first to fail the criteria (return false) after a row
successfully met the criteria (returned true). This is also known as “trailing” edge detection.
o true: Ret urns all rows that successfully meet the criteria; no edge detection is implemented at
the specified res olution.
o first true or are no longer true: All rows satisfying both the leading and trailing conditions are
returned.
Retrieval Tab
Use the Retrieval tab to configure data retrieval options.
Other Tab
Use the Other tab to configure the other retrieval options.
1. In the Hi story version area, click Latest or Original to overwrite the values of a stored tag. For
more information on History version, see History Version (wwVersion).
2. In the Rules area, do the following:
o In the Time stamp list, click the required timestamp value. For more information on the Time
stamp rule, see Timestamp Rule (wwTimestampRule).
o In the Values to include in calculations list, click the data values that you want to include in the
result. You can include the following quality rules:
Good and uncertain quality: To include data values with uncertain quality in calculations.
Good quality: To exclude data values wit h uncertain quality from calculations.
Estimate when values are missing: To use the optimistic quality when the data values are
missing.
Note: The Estimate when values are missing quality rule is applic able only for Integral and
Counter retrieval modes.
Server default: To use the default quality rule specified at the AVEVA Historian level.
For more information on each option, see Quality Rule (wwQualityRule).
3. In the State retrieval area, do the following:
o In the State calculation list, click the the state calculation.
o Select the Specify state check box to set the value of the state. For example, you can specify
either a open or close statefor the SteamValve tag.
Note: The state calculation settings are applicable only to ValueStat e and RoundTrip retrieval
modes.
For more information on State calculation, see State Calc ulation (wwStateCalc).
4. In the Transformation list, click the transformations to be applied to the result. You can include the
following transformations:
o No Transformation: If the query does not specify the filter element or if the value is not
overridden for the filter element.
o Remove outliers: To remove outliers from a set of analog points.
o Convert analog values to di screte : To convert value streams for any analog tag to discrete
value streams.
o Snap to base value: To force values in a well-defined range around one or more base values to
"snap to" that base value.
For more information on Trans formation, see Analog Value Filtering (wwFilt er).
5. In the Phantom cycle area, select the Do not include boundary values check box to remove
boundary values from the result.
For more information on Phantom cycle filter, see About "Phantom" Cycles.
Column Tab
Use the Columns t ab to configure the columns to show in the results.
3. In the Tag type list, click the type of tag for which you want to return the total number.
4. To view the results, click the Data tab in the Results pane.
Columns Tab
Use the Columns t ab to select which columns to include in the query results .
Criteria Tab
Use the Criteria tab to specify the filtering criteria for the dat a value(s) to be returned.
Columns Tab
Use the Columns t ab to select which columns to include in the query results.
Timestamp: The timestamp used when storing the result of the calculation. This can either be the
time of when the calculation period starts or the time when it ends.
Event tag: The unique name of the tag within the AVEVA Historian system.
Calculations Tab
Use the Calculations tab to specify which calculated values to retrieve from the database.
1. In the Limit to XX row s list, specify the number of intial consecutive rows to return out of the total
number of rows in the record s et, starting with the first row in the record s et. For example, if there are
a total of 150 rows, and you set this value to 100, only the first 10 0 rows in the records set will be
returned.
2. In the Calculation type list, click the type of calculation. Sum, Maximum, Minimum, or A verage.
3. In the Calculation frequency list, click the time duration, in seconds, for which the calculation is
performed.
4. Select the Show check boxes to show the calculation type and/or frequency in the result set.
4. Select which columns to include in t he query results. The options that are available in this tab depend
upon the type of tag you have selected. For example, a detector type only applies to event tags.
The Tagname column is always shown.
o Description: The description of the tag.
o Date created: The date that the tag was creat ed.
o Addre ss: The tag address, which is made up of the application name of the I/O Server, the
name of the topic, and the address string of the tag.
o Storage rate: The rate at which the tag is stored if the storage type is cyclic.
o Acqui si tion rate: For polled tags of acquisition type 1, the poll rate in milliseconds.
o Storage type: The type of storage defined for the tag. 0 = Not stored; 1 = Cyclic; 2 = Delta; 17 =
The storage type has been changed from cyclic to "not stored." 18 = The storage type has been
changed from delta to "not stored."
o Acqui si tion type: The method by which the tag's value is acquired. If the tag value is acquired
from an I/O Server, the name of the I/O Server, topic, and item must be specified. 0 = Not
acquired; 1 = Acquired via an I/O Server; 2 = Acquired via MDAS or a manual update; 3 =
System driver.
o Message s: The message associated with the FA LSE state of the discrete tag. A discrete tag set
to 0 is in the FALSE state. Also, the message associated with the TRUE state of the discrete tag.
A discrete tag set to 1 is in the TRUE state.
o Maximum characters: The maximum number of characters for the string.
o Raw value range: The minimum value of the raw acquired value. Also, the maximum value of
the raw acquired value.
o Engineering units: The unit of meas ure.For example mph, grams, and pounds.
o Engineering units range: The minimum value of the tag, measured in engineering units. Also,
the maximum value of the tag, measured in engineering units.
o SourceTag: The source tag of the tag.
o SourceServer: The source server of the tag.
o Detector type: The name given to the type of det ector.
o Action type: The name given to the type of action.
o Detector string: The script that contains the criteria for event detection. Detector scripts are
executed on the local AVEVA Historian.
o Action string: The script that specifies the event action. Action scripts are execut ed on the local
AVEVA Historian.
o Scan rate: The interval, in milliseconds, at which the system will check to see if the event
conditions specified by the detector have occurred. This value must be great er than or equal to
500 milliseconds, and less than or equal to 1 hour (360000 0 ms).
o Status: The flag used by the event system at system startup and during runtime to determine if
the event tag has been modified. 0 = Posted. Any changes have been det ected and effected by
the system. 1 = New. An event tag has been inserted, but is not yet executing. 2 = Modification.
An event tag has been updated, but the older one is already executing. 98 = Disabled. 99 =
Disabling requested. The event tag does not execute, even though the definition still exists in the
schema. Note that there may be a delay of up to 30 seconds before a change in an event tag is
seen by the running system.
o Logged: Used to specify whether or not to log events for this tag into the E vent History table.
E vent logging can only be turned off if no associated actions are con figured.
5. To view the results, click the Data tab in the Results pane.
2. In the Tag Picker, select the type of tag that you want to search for. For example, if you want to
search for an analog tag, select the All Analog Tags public group.
3. In the Columns pane, click on the tab and configure the parameters for the query:
o See Search Tab.
4. To view the results, click the Data tab in the Results pane.
Search Tab
Use the Search tab to search for a tag in the databas e.
1. In the Tag type list, click the type of tag to search for, either Analog, Discrete, E vent, String, or
Summary.
2. For summary tags, further restrict the search by specifying a particular calculation type or frequency.
o Calculation type: The type of calculation. Sum, Maximum, Minimum, or A verage.
o Calculation frequency: The time duration, in seconds, for which the calculation is performed.
3. Select the Show check boxes to show the calculation type and/or frequency in the result set.
Time Tab
Use the Time tab to specify the time options for the query.
The grid shows the time zone and daylight savings time settings for the following entities:
Enti ty Description
Format Tab
Use the Format tab to specify how the results of the query are presented.
Retrieval Tab
Use the Retrieval tab to specify the "granularity" of the data to be returned.
o XX values over equal time intervals: The number of rows to be returned for a specified time
period. For cyclic retrieval, the rows are spaced evenly across the time period, and the default
row count is 100 rows. For cyclic retrieval, the row count is applied for each tag in a query.
o Values spaced every XX ms: The sampling rate, in milliseconds, for retrieving the data in cyclic
mode.
o Interpolation type: The interpolation type for data retrieval.
5. If you select delta ret rieval mode, configure additional options in the Delta retrieval deadbands
area.
o Time: The minimum time, in milliseconds, between returned values for a single tag. Applies only
to delta retrieval.
o Value: The percentage of full scale (range), in engineering units . Any value changes that are
less than this percentage will not be returned. Applies only to delt a retrieval. The default is 0.
For more information on configuring the other data retrieval options, see Other Tab.
Source Tab
Use the Source tab to specify the data version and type of table for the query.
Order Tab
Use the Order tab to specify how the results are ordered.
3. In the Order area, select whether you want the results to be ordered in ascending or descending
order.
C HAPTER 5
AVEVA Historian Client Workbook
The AVEVA Historian Client Workbook is an add-in to Microsoft Excel that allows you to query one or
more AVEVA Historian or SQL Server databases and return results to a spreads heet. Using the AVEVA
Historian Client Workbook, you can easily create reports using AVEVA Historian data without needing
in-depth knowledge of SQL scripting. The reports that you create with the AVEVA Historian Client
Workbook can be saved, allowing you to run a report again at any time.
Getting Started
If the AVEVA Historian Client Workbook is installed, an additional menu called Hi storian is added in
Microsoft Excel.
The Hi storian menu contains all of the commands you use to create a report using AVEVA Historian
data.
The Hi storian menu is a part of the Ribbon Bar.
Note: If you don't see the Historian menu, you may need to manually load the Excel add-in.
From this dialog box, you can choose to update the links or keep them the same.
To open an existing Workbook file
1. In Excel, from the File menu, click Open.
2. Select the name of the file to open and click Open.
3. In the Manage list, select Excel Add-ins, and then click Go.
You'll see the Add-Ins dialog box.
4. Click Browse.
5. Browse and select the HistClient.xla and HistClient.xlam.
By default, they are installed here:
C:\Program Files\Common Files\ArchestrA folder
6. Check the ActiveFactory Workbook and Hi storian Client Workbook check boxes.
7. Click OK.
You can manually create or edit array formulas in the same way that you creat e or edit other formulas,
except you press CTRL+S HIFT+ENTE R to enter or update the array formula.
Note: There are certain limitations when working with arrays. For more information, see the following
link: http://support.microsoft.com/kb/166342/
Editing a Function
To edit a function:
1. Select the function to edit. If you want to edit an array formula, select any cell in the array.
2. On the Hi storian tab, in the Control s group, click Edit Function.
If applicable, the appropriate wizard opens, allowing you to edit the query.
Refreshing a Sheet
You can refresh all of the formulas for a selected worksheet.
To refresh a worksheet:
1. Select any cell in the sheet.
2. On the Hi storian tab, in the Control s group, click Refresh Sheet.
The query is executed and the worksheet is updated with the ret urned results.
2. On the Formula s tab, in the Function Library group, click Insert Function. The Insert Function
dialog box appears.
6. For each of the arguments, assign a cell value that contains the input.
For example, assigning A1 to the DataSource argument causes "MyInSQL" to be us ed for the data
source.
Note: If the function ret urns a date/time value, the date/time appear in the Julian format, unless a
different format is configured for the cell.
2. In the formula bar, edit the argument value(s) for the function.
For example, you can add an additional tag by expanding the cell range.
4. On the Hi storian tab, in the Control s group, click Refresh Function to resize the results. You can
then see all the return values.
Copying a Function
You can copy functions to different locations in the worksheet. This is useful when creating additional
functions that are only slightly different than existing functions.
To copy a function:
1. In the worksheet, select the range of cells that contains the array formula. To select all of the array
cells, insert the mouse cursor in the array and then press CTRL+/ on your keyboard, where / is the
forward slash.
Selecting Cells
Various option boxes require you to specify a worksheet cell for either input or output. You can easily
select the cell or range of cells that you want to use, eliminating the need to type the formula for the cell
location.
Note: The Workbook supports selection of contiguous cells only. For example, if you have tags in the A 1,
A2, and A3 cells then you should select all three cells. You cannot select A1 and A3 only by leaving A2.
2. In the spreadsheet, use your mouse to select the cell(s). The cell notation appears in the dialog box.
3. Click the Notation button to insert the notation int o the option box.
For instructions on how to use most of the options in this dialog box, see Tag Pick er.
2. Select the Include description check box to include tag descriptions in the results.
3. In the Select cell range to insert tags list, click the name of the workbook cell into which you want
to insert the tags. For more information, see Selecting Cells.
4. Click OK.
The tag is inserted into the selected cell.
You use the Select tag dialog box when performing tag analysis.
Note: You cannot execute the Find command if a source tag is deleted but its replication configuration
still exists in the Historian.
The replicated tags are not listed in the context menu if:
The replicated tags are not committed in the Historian.
The replication schedule is removed from the Historian. For example, you are connected to a
Historian 10.0 server and you create a tag called ‘My Tag’. ‘My Tag’ is replicated as a simple tag
called ‘MyServer.MyTag’.
When you execute the Find - replicated tag command, the ‘MyServer.My Tag’ tag is shown.
When you execute the Find - source tag command, the ‘My Tag’ tag is shown. At this instance,
if the replication link bet ween ‘MyTag’ and ‘MyServer.MyTag’ is removed and if you execute the
Find - replicated tag command, the ‘MyServer.MyTag’ tag is not shown in the list of replicat ed
tags.
However, if you execute the Find - source tag command, the ‘My Tag’ tag is shown as ‘My Tag’. If
‘MyServer.My Tag’ is the only replicated tag, ‘MyTag’ is considered as a normal tag.
The above scenario holds true if the entire replication schedule is removed in the Historian. If only
one replication is removed, the list shows the remaining replicated tags.
4. Select the Include description check box to include tag descriptions in the results.
5. In the Select cell range to insert tags list, click the name of the workbook cell into which you want
to insert the tags. For more information, see Selecting Cells.
6. Click OK.
The tags are inserted into the selected cell.
6. In the Select cell for output list, specify the location of the worksheet cell(s) that will contain the
output. Click on the button to select the cell(s) using your mouse. For more information, see
Selecting Cells.
7. Select the Enter the results a s an array-formula check box to insert the results as an array
formula. An array formula can perform one or more calculations and then return either single result or
multiple results. An array formula allows for the resending of the query, since the query parameters
are included in the cells that contain the query results. For more information, see Work ing with
Functions, Formulas, and Cells.
8. Select the Select cells to specify format options check box to specify a range of cells that contain
formatting information. The formatting information in the cells will be applied to the query results. For
more information, see Selecting Cells.
9. Click Next. The Tag Details - Step 3 of 3 dialog box appears.
This dialog box displays different options, depending on the type of tag y ou have selected.
10. For analog and summary tags, configure the following options:
o Description: The description of the tag.
o Raw value range: The minimum value of the raw acquired value. Also, the maximum value of
the raw acquired value.
o Engineering units: The unit of meas ure.For example mph, grams, and pounds.
o Engineering units range: The minimum value of the tag, measured in engineering units. Also,
the maximum value of the tag, measured in engineering units.
o Storage rate and type: The type of storage defined for the tag, either cyclic or delta. The
storage rate is the rate at which the tag is stored if the storage type is cyclic.
o Source tag: The source tag of the tag.
o Source server: The source server of the tag.
11. For discrete tags, configure the following options:
o Description: The description of the tag.
o Storage rate and type: The type of storage defined for the tag, either cyclic or delta. The
storage rate is the rate at which the tag is stored if the storage type is cyclic.
o Message s: The messages associated with the TRUE/FALSE or ON/OFF state of the tag.
12. For string tags, configure the following options:
o Description: The description of the tag.
Version 2020 187
AVEVA™ Historian Client User Guide AVEVA Historian Client Workbook
o Maximum tag name length permitted: The maximum number of characters for the string.
13. For event tags, configure the following options:
o Description: The description of the tag.
o Time deadband: The minimum time, in milliseconds, between stored events. If more than one
event occurs during the deadband, only the most recent are stored. The syst em does not store
another event until the specified time has elaps ed. A time deadband of 0 indicates that the
system stores all events.
o Detector type: The name given to the type of det ector.
o Action type: The name given to the type of action.
o Status: The flag used by the event system at system startup and during runtime to determine if
the event tag has been modified. 0 = Posted. Any changes have been det ected and effected by
the system. 1 = New. An event tag has been inserted, but is not yet executing. 2 = Modification.
An event tag has been updated, but the older one is already executing. 98 = Disabled. 99 =
Disabling requested. The event tag does not execute, even though the definition still exists in the
schema. Note that there may be a delay of up to 30 seconds before a change in an event tag is
seen by the running system.
o Logged: Used to specify whether or not to log events for this tag into the E vent History table.
E vent logging can only be turned off if no associated actions are configured.
o Scan rate: The interval, in milliseconds, at which the system will check to see if the event
conditions specified by the detector have occurred. This value must be great er than or equal to
500 milliseconds, and less than or equal to 1 hour (3600000 ms).
14. Click Finish. The details appear in the spreadsheet.
2. Right -click a group or the tag, and click Use hierarchical name.
The Tags pane shows the hierarchical names of the selected ArchestrA attributes.
6. In the Select cell for output list, specify the location of the worksheet cell(s) that will contain the
output. Click on the button to select the cell(s) using your mouse. For more information, see
Selecting Cells.
7. Select the Enter the results a s an array-formula check box to insert the results as an array
formula. An array formula can perform one or more calculations and then return either single result or
multiple results. An array formula allows for the resending of the query, since the query parameters
are included in the cells that contain the query results. For more information, see Work ing with
Functions, Formulas, and Cells.
8. Select the Select cells to specify format options check box to specify a range of cells that contain
formatting information. The formatting information in the cells will be applied to the query results. For
more information, see Selecting Cells.
9. Click Finish. The details appear in the spreadsheet.
8. In the Select cell for output list, specify the location of the worksheet cell(s) that will contain the
output. Click on the button to select the cell(s) usin g your mouse. For more information, see
Selecting Cells.
9. Select the Enter the results a s an array-formula check box to insert the results as an array
formula. An array formula can perform one or more calculations and then return either single result or
multiple results. An array formula allows for the resending of the query, since the query parameters
are included in the cells that contain the query results. For more information, see Work ing with
Functions, Formulas, and Cells.
10. Select the Select cells to specify format options check box to specify a range of cells that contain
formatting information. The formatting information in the cells will be applied to the query results. For
more information, see Selecting Cells.
11. Click Next. The Live Values - Step 3 of 3 dialog box appears.
o Tag name: The name of the tag within the AVEVA Historian server. If the data values are
coming from Arc hestrA, the attribut e referenc e is shown as the tag name. For ArchestrA
attributes, you can also choose to show the hierarchical name along with the attribute reference.
For more information, see ArchestrA Naming Conventions.
o Date time: The time stamp for the returned value. For delta retrieval, this is the time at which the
value was acquired by the AVEVA Historian. For cyclic retrieval, this is the specific time
requested or calculated (using a SQL function).
o Include milliseconds: Used to include milliseconds in the timestamp.
o Quality: The basic data quality indicator associated with the data value.
o Replace poor quality values: The text string of "poor" will replace the current value if the value
has a quality <> 0 or 133.
o Detect date time: Only applicable to event tags. The timestamp reflecting when the event was
detected by the event system.
o OPC Quality: The quality value received from the dat a source. Only available if y ou selected the
Support multiple data types check box in the Live Values - Step 1 of 3 dialog box (see step 4
above).
o Source Tag: The source tag of the tag.
o Source Server: The source server of the tag.
13. Click Finish.
2. On the Hi storian tab, in the Tag Management group, click Tag Values, and then click History
Values. The Hi story Values - Step 1 of 4 dialog box appears.
7. In the Select cell for output list, specify the location of the worksheet cell(s) that will contain the
output. Click on the button to select the cell(s) using your mouse. For more information, see
Selecting Cells.
8. Select the Enter the results a s an array-formula check box to insert the results as an array
formula. An array formula can perform one or more calculations and then return either single result or
multiple results. An array formula allows for the resending of the query, since the query parameters
are included in the cells that contain the query results. For more information, see Work ing with
Functions, Formulas, and Cells.
9. Select the Select cells to specify format options check box to specify a range of cells that contain
formatting information. The formatting information in the cells will be applied to the query results. For
more information, see Selecting Cells.
10. Click Next. The Hi story Values - Step 3 of 4 dialog box appears.
12. Click Next. The Hi story Values - Step 4 of 4 dialog box appears.
13. Configure the time for the query. For more information on configuring these options, see Time
Options for Queries.
14. Click Finish.
To see additional options, click the More >> button. The following options appear:
wwRetrievalMode: The retrieval mode us ed for the tag. For more information, see Understanding
Retrieval Modes.
wwCycleCount: The cycle count used in data ret rieval. For more information, see Cycle Count (X
Values over Equal Time Intervals) (wwCycleCount).
When ret rieving data from a AVEVA Historian wit h a version earlier than 9.0, the wwRowCount
column is returned instead of the wwCycleCount column.
wwTimeDeadband: The time deadband used in data ret rieval. For more information, see Time
Deadband (wwTimeDeadband).
wwTimeStampRule: The timestamp rule used in data retrieval. For more information, see
Timestamp Rule (wwTimestampRule).
wwVersion: The history version of the value. For more information, see History Version
(wwVersion).
wwEdgeDetection: The type of edge detection used in the query.
wwTagKey: The unique identifier of the tag on the AVEVA Historian.
SourceTag: The source tag of the tag.
SourceServer: The source server of the tag.
wwInterpolationType: The interpolation type used to calculate the value. For more information, see
Interpolation Type (wwInterpolationType).
wwResolution: The resolution used in data retrieval. For more information, see Resolution (Values
Spaced E very X ms ) (wwResolution).
wwValueDeadband: The value deadband used in data retrieval. For more information, see Value
Deadband (wwValueDeadband).
wwQualityRule: The quality rule used in dat a retrieval. For more information, see Quality Rule
(wwQualityRule).
wwTimeZone: The time zone that the value’s timestamp refers to.
PercentGood: The percentage of rows with good quality in relation to the total number of rows in the
retrieval cycle.
wwStateCalc: The state calculation type used to calculate the state time when using ValueState
retrieval (for example, average time or total time). For more information, see State Calculation
(wwStateCalc).
wwFilter: The analog filter used to filter data during retrieval. For more information, see Analog
Value Filtering (wwFilter).
Retrieval Tab
Use the Retrieval tab to configure the dat a retrieval mode and additional retrieval options. For a detailed
description of retrieval modes and options, see Understanding Retrieval Modes and Understanding
Retrieval Options on page 565.
7. In the Select cell for output list, specify the location of the worksheet cell(s) that will contain the
output. Click on the button to select the cell(s) using your mouse. For more information, see
Selecting Cells.
8. Select the Enter the results a s an array-formula check box to insert the results as an array
formula. An array formula can perform one or more calculations and then return either single result or
multiple results. An array formula allows for the resending of the query, since the query parameters
are included in the cells that contain the query results. For more information, see Work ing with
Functions, Formulas, and Cells.
9. Select the Select cells to specify format options check box to specify a range of cells that contain
formatting information. The formatting information in the cells will be applied to the query results. For
more information, see Selecting Cells.
10. Click Next. The Aggregate Values - Step 3 of 4 dialog box appears.
12. Click Next. The Aggregate Values - Step 4 of 4 dialog box appears.
13. Configure the time for the query. For more information on configuring these options, see Time
Options for Queries.
14. Click Finish.
Calculations Tab
Use the Calculations tab to specify which calculated values to retrieve from the database.
Resolution Tab
Use the Re solution tab to specify the "granularity" of the data to be returned.
o Time deadband: The minimum time, in milliseconds, between returned values for a single tag.
Applies only to delta retrieval.
7. In the Select cell for output list, specify the location of the worksheet cell(s) that will contain the
output. Click on the button to select the cell(s) using your mouse. For more information, see
Selecting Cells.
8. Select the Enter the results a s an array-formula check box to insert the results as an array
formula. An array form ula can perform one or more calculations and then return either single result or
multiple results. An array formula allows for the resending of the query, since the query parameters
are included in the cells that contain the query results. For more information, see Work ing with
Functions, Formulas, and Cells.
9. Select the Select cells to specify format options check box to specify a range of cells that contain
formatting information. The formatting information in the cells will be applied to the query results . For
more information, see Selecting Cells.
10. Click Next. The Summary Values - Step 3 of 4 dialog box appears.
13. Configure the time for the query. For more information on configuring these options, see Time
Options for Queries.
14. Click Finish.
6. Click Next. The Event Snapshot Values - Step 2 of 4 dialog box appears.
7. In the Select cell for output list, specify the location of the worksheet cell(s) that will contain the
output. Click on the button to select the cell(s) using your mouse. For more information, see
Selecting Cells.
8. Select the Enter the results a s an array-formula check box to insert the results as an array
formula. An array formula can perform one or more calculations and then return either single result or
multiple results. An array formula allows for the resending of the query, since the query parameters
are included in the cells that contain the query results. For more information, see Work ing with
Functions, Formulas, and Cells.
9. Select the Select cells to specify format options check box to specify a range of cells that contain
formatting information. The formatting information in the cells will be applied to the query results. For
more information, see Selecting Cells.
10. Click Next. The Event Snapshot Values - Step 3 of 4 dialog box appears.
13. Configure the time for the query. For more information on configuring these options, see Time
Options for Queries.
14. Click Finish.
Note: The availability of options depends on the type of tag(s) selected for the query.
Format Tab
Use the Format tab to specify the order in which tags and data are returned and how the results of the
query are presented.
The retrieval options you choose determine what appears on the Criteria tab. For more information on
this tab, see Criteria Tab.
Criteria Tab
Use the Criteria tab to specify the filtering criteria for the dat a value(s) to be returned.
The filtering criteria options are determined by what you selected for the display format for the returned
data, either "narrow" or "wide." For more information, see Format Tab.
For tag based criteria (wide tables), data values are returned if they match certain criteria applied to the
column for a tagname. For example, if Tagname1 > 5000.
A NULL value indicates that a column entry has no assigned value. A NULL value is not the same as a
numeric value of 0 or an empty string.
For value based criteria (narrow tabl es), data values are returned if they match certain criteria applied to
the Value or vV alue column. For example, if any possible value > 5000. You can also specify quality
criteria for the value.
Version 2020 209
AVEVA™ Historian Client User Guide AVEVA Historian Client Workbook
For example, if the data quality for any possible value = Go od.
The value based criteria options that are available in the Criteria tab depend upon what types of tags you
have selected for the query, either analog, discret e, string, or a mix of these types.
To configure value criteria:
1. To configure c riteria for a discrete tag, select the first Value check box and set the criteria to be eit her
a 1 or a 0. Go to Step 5.
2. To configure criteria for an analog or summary tag:
a. Select the first Value check box and set the criteria for the data value. For example, the value
must be greater than ( > ) 1500.
b. (Optional) Select the second Value check box and set another criteria for the data value. For
example, the value must be less than ( < ) 2000.
c. Go to Step 5.
3. To configure criteria for a string tag:
a. If you are retrieving history values, select the Use StringHi story check box. In this case, you
can only retrieve data for string tags in the query. No data is returned for tags of other types that
you may have selected. This is due to a limitation in the AVEVA Historia n.
b. Select the third Value check box and specify text that the returned string value must match. You
can specify whether the returned value must equal, start, end, or contain the specified text. For
example, you can specify that the value must contain the text "alert."
c. Go to Step 6.
4. (Optional) Select the Value not null check box to filter out NULL values from the results.
5. (Optional) In the Quality list, click the quality criteria for the data. Only data values that match the
quality you specify (Good, Bad, Doubt ful) are returned.
6. (Optional) In the OPC Quality list, click the OPC quality criteria for the dat a. Only data values that
match the quality you specify (Good, Bad, Doubtful) are returned.
7. (Optional) In the Criteria applicability list, select the moment at which the edge detection criteria is
met.
o first true: Returns only rows that are the first to successfully meet the criteria (return true) after a
row did not successfully meet the criteria (returned false). This is also known as "l eading" edge
detection.
o no longer true: Returns only rows that are the first to fail the criteria (return false) after a row
successfully met the criteria (returned true). This is also known as "trailing" edge det ection.
o true: Ret urns all rows that successfully meet the criteria; no edge detection is implemented at
the specified res olution.
o first true or no longer true: All rows satisfying both the leading and trailing conditions are
returned.
210 Version 2020
AVEVA Historian Client Workbook AVEVA™ Historian Client User Guide
Order Tab
Use the Order tab to specify how the results are ordered.
7. In the Starting time list, enter the starting time for a query. Click the arrow button to select a date
from a calendar.
8. In the Duration lists, specify the duration and the duratio n unit. For example, 10 minut es. The
duration is used to calculate the end date for the query.
9. Click Next. The Tag Analysi s - Step 4 of 5 dialog box appears.
Information that you specified using the wiza rd are assigned to cells in the worksheet. For this
particular example:
A1: Server
A2: Tag
A4: Row or resolution
A5: Start Time
A6: Duration
A7: Low Limit
A8: High Limit
Note: The assignments are not absolute and may change in future releases.
14. Click in the Workbook to view the functions that are inserted to create the analysis report.
In this example, click in the following cells to view the functions.
Cell C2:
Note: If you change the resolution and/or duration, this may change the cells that are referenced by
the graph and statistics.
For example, you can change the tagname from ReactLevel to React Temp.
Change the limits to the correct limits so that the statistics and trend chart reflect the data.
The information for the analysis headings and units is stored in cells outside of the maximum range
for a formula array. To see this information, scroll down in the worksheet to near row 6000.
You can also change the duration in column A1 and watch the data in the report change.
Batch Analysis
Use the Batch Analysis wizard to graph one analog tag over two time periods.
To create a batch analysis:
1. On the Hi storian tab, in the Tag Management group, click Tag Analysi s. The Tag Analysi s dialog
box appears.
7. In the Starting time list, enter the starting time for the first time period. Click the arrow button to
select a date from a calendar.
8. In the Starting time for second time period list, enter the starting time for the second time period.
Click the arrow button to select a date from a calendar.
9. In the Duration lists, specify the duration and the duration unit. For example, 10 minut es. The
duration is used to calculate the end dates for the query.
10. Click Next. The Tag Analysi s - Step 4 of 4 dialog box appears.
Information that you specified using the wizard are assigned to cells in the worksheet. For this
particular example:
A1: Server
A2: Tag
A3: Start Time 1 Chart Legend
A4: Row or resolution
Note: If you reduce the resolution by half, but do not adjust the time range (dur ation), only half of the
time is reflected in the trend chart. If you want to make changes to the input parameters that affect
the total number of returned rows, you must modify the chart to referenc e the new cell ranges. You
must also refresh the worksheet functions.
Scatter Analysis
Use the Scatter Analysis wizard to create a scatter plot of two analog tags.
7. In the Starting time list, enter the starting time for the query. Click the arrow button to select a date
from a calendar.
8. (optional) To show data for a second time period in the same scatter plot, enter a second starting
time in the Starting time for second time period list. Click the arrow button to select a date from a
calendar.
Using a second time period allows you to vie w differences in operation for two time periods.
9. In the Duration lists, specify the duration and the duration unit. For example, 10 minut es. The
duration is used to calculate the end date for the query.
10. Click Next. The Tag Analysi s - Step 4 of 4 dialog box appears.
Information that you specified using the wizard are assigned to cells in the worksheet. For this
particular example:
A1: Server
A2: Tag 1
A3: Tag 2
A4: Row or resolution
A5: Start Time 1
A6: Duration
A7: Start Time 2
13. Click in the work book to view the functions that are inserted to create the analysis report.
In this example, click in the following cells to view the functions.
Cell B2:
=wwAnalogWideHistory(A1,A2:A3, "Row" & A4,"Rel",A6 & "(" & A5 & ")",FALSE,"
",FALSE,FALSE)
Cell D2:
=wwAnalogWideHistory(A1, A2:A3, "Row" & A4,"Rel",A6 & "(" & A7 & ")",FALSE,"
", FALSE, FALSE)
14. Optionally alter the results by changing values that appear in the first column of the worksheet.
If the calculation mode is set to automatic, any changes you make to the values in this column are
immediat ely reflected in the worksheet.
7. In the Starting time list, enter the starting time for the query. Click the arrow button to select a date
from a calendar.
8. In the Duration lists, specify the duration and the duration unit. For example, 10 minut es. The
duration is used to calculate the end date for the query.
9. Click Next. The Tag Analysi s - Step 4 of 5 dialog box appears.
11. Click Next. The Tag Analysi s - Step 5 of 5 dialog box appears.
Information that you specified using the wizard are assigned to cells in the worksheet. For this
particular example:
A1: Server
A2: Tag
A4: Row or resolution
The information for the analysis headings and units is stored in cells outside of the maximum range
for a formula array. To see this information, scroll down in the worksheet to near row 6000.
7. In the Starting time list, enter the starting time for the query. Click the arrow button to select a date
from a calendar.
8. In the Duration lists, specify the duration and the duration unit. For example, 10 minut es. The
duration is used to calculate the end date for the query.
9. Click Next. The Tag Analysi s - Step 4of 4 dialog box appears.
Information that you specified using the wizard are assigned to cells in the worksheet. For this
particular example:
A1: Server
13. Optionally alter the results by changing values that appear in the first column of the worksheet.
If the calculation mode is set to automatic, any changes you make to the values in this column are
immediat ely reflected in the worksheet.
Keep in mind that changing the time arguments may return a different number of rows in the result
set, causing the analysis to be incorrect.
7. In the Starting time list, enter the starting time for the query. Click the arrow button to select a date
from a calendar.
8. In the Duration lists, specify the duration and the duration unit. For example, 10 hours. The duration
is used to calculate the end date for the query.
9. Click Next. The Tag Analysi s - Step 4 of 4 dialog box appears.
Information that you specified using the wizard are assigned to cells in the worksheet. For this
particular example:
A1: Server
A2: Discrete tag
4. In the Query window, type the SQL query to execute against the database.
5. You can also click the query button t o start the Query client tool. You can use the Query client to build
a query, which is inserted into the Query window. For more information, see AVEVA Historian Client
Query.
6. In Select StartDate, EndDate, specify the workbook cells that show the start date and end date to
use in this query.
7. Optionally, in Select TagName, specify the workbook cell or range of cells that show the tagname(s)
to use in this query.
8. Select the Enter the results a s an array-formula check box to insert the results as an array
formula. An array formula can perform one or more calculations and then return either single result or
multiple results. An array formula allows for the resending of the query, since the query parameters
are included in the cells that contain the query results. For more information, see Work ing with
Functions, Formulas, and Cells.
9. Select the Specify format options (select cells) check box to specify a range of cells that contain
formatting information. The formatting information in the cells will be applied to the query results. For
more information, see Selecting Cells.
1. In the Select cell for output list, specify the location of the worksheet cell(s) that will contain the
output. Click on the button to select the cell(s) using your mouse. For more information, see
Selecting Cells.
2. Click OK.
3. To edit the query, click in the cell that contains the red triangle.
Note: The insert ed formatting information is not automatically updated if you change the options.
10. In the Select output cell list, specify the location of the worksheet cell(s) that will contain the output.
Click on the button to select the cell(s) using your mouse. For more information, see Selecting Cells.
11. Click OK.
If you select to output the formatting information, it appears in the sheet.
2. Either type in the cell range that contains the formatting option values displayed in your spreadsheet
or select the cells. For more information, see Selecting Cells.
The query results are formatted accordin g to the option settings. Note that the function references
the formatting option cells.
3. In the Name Box list, type a name for the cell range.
The formula references the named range instead of the worksheet cells.
Note: The Refre sh Sheet command refreshes the data values, but not the formatting.
The grid displays the current time zone and daylight savings time settings for the following entities:
Enti ty Description
<Server> The Historian(s) to whic h the Workbook applic ation is currently connected.
The time zone displayed for the server(s) is for informational purposes only and
cannot be changed using the Work book application.
3. In the Time zone list, click the name of the time zone to use for the Workbook application.
The time zone for the Workbook application in the grid displays the new time zone picked.
For example, consider a SCA DA application that monitors a pipeline bet ween Houston, Texas and
Lake Forest, California. The Workbook application is installed on a computer located in Houston,
Texas. Therefore, the time zone entry for the Client entity displays Cent ral Standard Time. The
server is also located in Houston, Texas. The time zone entry for the Server entity also displays
Cent ral Standard Time. You want to send a Workbook file to an engineer loc ated at the start of the
pipeline in Lake Forest to aid in troubleshooting a problem. You can set the time zone of the
Workbook application to reflect the time of Lake Forest, California (P acific Standard Time), so that
the workbook that you send to the engineer displays data in a time zone that is relevant to him/her.
4. Click OK.
3. In the Version (Legacy) area, specify what version of data should be retrieved. This setting is only
relevant when retrieving data from an AVEVA Historian with a version earlier than 9.0.
o Original: The original value as it was received from the data source (for example, the I/O Server)
to the AVEVA Historian.
o Latest: The latest value that is stored in the AVEVA Historian with the same timestamp as the
original value. Multiple versions are created as the result of data inserts and updates.
4. Select the Retrieve history data from both manual and extension tables check box to retrieve
data from both the manual and extension tables.
o Manual history tables: Normal SQL Server tables that are used to store data. These are the
ManualAnalogHistory and ManualDiscreteHistory tables.
o Extension tables: Logical tables that are populated from the AVEVA Historian data files. These
tables support the AVEVA Historian time domain extensions for handling dat a.
5. Click OK.
3. Select the Do not update functions when opening worksheet check box to prevent the functions
from being refreshed when the worksheet is opened.
4. Click OK.
5. If you want to insert the wwBaseTime() function in a cell, select the Insert wwBaseTime() function
in selected cell check box and specify location of the worksheet cell(s) that will contain the output.
Click on the button to select the cell(s) using your mouse. For more information, see Selecting Cells.
6. Click OK. You are prompted to confirm the base date and base time.
7. Click OK. If you selected to insert the base date and/or base time, they appear in the spreadsheet.
4. Click OK. The AFBindings sheet is created for the current workbook.
5. You specify to use the AFStartBinding and AFEndBinding ranges when you select the date/time for
the query.
6. Click Finish. The named ranges are used in the report instead of specific tags and/ or starting and
ending times.
Bound Times
For a "bound" time, the values that are currently assigned to the AFStartBinding and AFEndBinding
named ranges are used for the start and end times. For more information, see Using "Binding" Tags to a
Query at Run Time.
The Bound times option only appears if the Bound Tags of Type option is selected in a data ret rieval
wizard.
Relative Time
You can define a query that uses a relative time in t he past for the starting date. For ex ample, the last five
minutes from the current time.
To set a relative time:
1. In the from list, select the date to use as the start date.
o Now: Use the current date and time.
o Today: Use the current date and a time that you specify.
o Specify date: Use the date and time that you specify.
o Base Date: Use the dat e and time as set by the global base date and time options for the
work book. For more information, see Setting the Base Date and Base Time Parameters.
2. If necessary, specify a date and/or time.
3. In the plus/minus list, select plus to go forward in time or minus to go backward in time, and then set
the duration.
Absolute Time
Absolute time uses fixed start and end dates that you specify. You can either specify a time range or
single point in time. If you specify single point in time, only single tag value at that point in time is
retrieved.
To set an absolute time range:
Do one of the following:
o Select the top option to referenc e cells in the work book sheet that contain the start and/or end
date. Click the button to the right of the box to select the cell. For more information, see Selecting
Cells.
o Select the bottom option to configure the start and/or end date. Click the button to the right of the
box to select a date from a calendar.
To set single point in time:
1. Select the Single Value check box.
2. Do one of the following:
o Select the top option to referenc e a cell in the workbook sheet that contains the date and time.
Click the button to the right of the box to select the cell. For more information, see Selecting
Cells.
o Select the bottom option to specify the date and time directly. Click the button to the right of the
box to select a date from a calendar.
Publishing Reports
You can publish spreads heet reports to the AVEVA Information Server. When you publish a report, the
report information is stored in special tables in the AVEVA Historian, and the file is copied to a folder on
the AVEVA Information Server. When you publish a report, AVEVA Information Server users can view
the report you published wit h only the browser software.
The Report name box displays the name of the workbook report as it appears in AVEVA Information
Server. This name is automatically created based on the name of the file that is being published.
3. In the Server list, click the name of the AVEVA Historian on which to store the report publishing
information.
4. In the Report site list, select the URL of the AVEVA Information Server to which you wa nt to publish
the report.
The report site may or may not be physically located on the AVEVA Historian computer.
5. In the Report type area, click Static.
6. In the Folder list, click the name of the physical folder on the report site where the static report is
posted.
7. Click OK. The Report succe ssfully published dialog box appears.
Note: The AVEVA Information Server periodically scans the publishing folders for changes; a short
delay may occur prior to the published report being displayed in the AVEVA Information Server.
8. To view the AVEVA Information Server, click Browse. Otherwis e, click Done.
The Report name box displays the name of the report as it appears on the AVEVA Information
Server. This name is automatically created based on the name of the file that is being published.
3. In the Server list, click the name of the AVEVA Historian on which to store the report publishing
information.
4. In the Report site list, select the URL of the AVEVA Information Server to which you want to publish
the report.
The report site may or may not be physically located on the AVEVA Historian computer.
5. In the Report type area, click either On demand or Scheduled, depending on the type of report you
want to publish.
6. If you selected On demand, in the Report Group list, click the name of the physical folder on the
report site where the on demand report is posted. Go to Step 9.
7. If you selected Scheduled, in the Schedules list, click the name of the time period that the
scheduled report is run and posted to the AVEVA Information Server.
8. To run the scheduled report immediately without waiting for the selected time period to elapse first,
click Run now.
9. Click OK. The Report succe ssfully published dialog box appears.
Note: The AVEVA Information Server periodically scans the publishing folders for changes.
Therefore, a short delay may occur prior to the published report being displayed on the AVEVA
Information Server.
10. To view the AVEVA Information Server, click Browse. Otherwis e, click Done.
wwE vent TagDet ails =wwE vent TagDetails( DataS ourc e, Returns an array.
TagRange, Description,
TimeDeadband, DetectorType,
ActionType, Status, Logged,
ScanRat e, Reset, OptionRange )
Function Arguments
The following arguments are us ed for the AVEVA Historian Client Workbook functions:
ActionType
AggCalc
AnalogFilter
DataSource
DateTime
Description
DescriptionFilter
DetectDatetime
DetectorType
DisplayAsWide
DisplayDatetime
DisplayFlags
DisplayMilliseconds
DisplayOP CQuality
DisplayQuality
DisplaySourceServer
DisplaySourceTag
DisplayTagName
EdgeDetection
EngUnit
EURange
EventTagRange
HistoryVersion
Interpolation
Logged
MaxLength
Messages
OptionRange
OrderB y
Qualit yRule
RawRange
ReplacePoorQualit y
Reset
RetrievalMode
RowLimit
RowOrRes
ScanRat e
SnapshotTagRange
SnapshotTagType
SourceS erver
SourceTag
State
StateCalculation
Status
SQLQuery
Storage
SummaryPeriod
SummaryType
TagCriteria
TagFilter
TagRange
Time1
Time2
TimeDeadband
TimestampRule
UseStringHistory
ValueCriteria
ValueDeadband
ActionType
The unique identifier for a particular type of action. E vent tags and actions are linked via this key. The
event subsystem relies on the following values, which are added during installation: 1 = No action; 2 =
Generic SQL; 3 = Snapshot; 4 = E-mail; 5 = Deadband; 6 = Summary.
TRUE - Includes the action type in the results.
FALSE - Does not include the action type in the results.
AggCalc
Specifies what aggregate calculation is performed for the specified tagname. Valid values are:
MIN - Calculates the minimum value. Delta ret rieval is used.
MA X - Calculates the maximum value. Delta retrieval is used.
AVG - Calculates the average value. Cyclic retrieval is used.
SUM - Calculates the total value. Cyclic retrieval is used.
RNG - Calculates the range bet ween MIN and MA X. Delta retrieval is used.
STD - Calculates the standard deviation. Cyclic retrieval is used.
AnalogFilter
Specifies the analog filters for wwHistory3 or wwWideHistory3 functions. Valid values are:
Value Description
SigmaLimit Accepts one parameter of type double. The default value is 2.0.
Value Description
DataSource
The name of the server to use. You can also specify the worksheet cell containing the server to use.
DateTime
The date/time stamp.
Description
TRUE = Include the tag description in the results. Only the tags that meet the filt ering criteria are
included.
FALSE = Do not include the tag description in the results.
DescriptionFilter
Type a description filter (or reference a cell).
DetectDatetime
TRUE = Include the date and time stamp of the event detection in the results.
DetectorType
The unique identifier for a particular type of detector. E vent tags and detectors are linked via this key. The
event system relies on the following values, which are added during installation: 1 = System; 2 = External
event; 3 = Generic SQL; 4 = Analog specific value; 5 = Discrete specific value; 6 = Time-based
(schedule).
TRUE = Include the detector type in the results.
FALSE = Do not include the detector type in the results.
DisplayAsWide
TRUE = Return the results in the "wide" table format. That is, return a column of values for each tag
specified in the function.
FALSE = Return the results in the "narrow" table format. That is, return one value for each tag per row in
the result set.
DisplayDatetime
TRUE = Include the date and time stamp in the results.
FALSE = Do not include the date/time in the res ults.
DisplayFlags
Determines which dat a columns to include in the results. This parameter is an integer representing a bit
pattern where each bit represents a data column. If the bit is set to 1, the column is included in the result s.
When you use this paramet er with the wwHistory2 function, the bits are as follows (bit 0 is the rightmost
bit):
18 wwStateCalc 262144
14 Quality 16384
11 wwRetrievalMode 2048
10 wwTagK ey 1024
9 wwCycleCount 512
8 wwResolution 256
7 wwTimeDeadband 128
6 wwV alueDeadband 64
5 wwTimestampRule 32
4 wwQualityRule 16
3 wwV ersion 8
2 wwTimeZone 4
0 PercentGood 1
When you use this parameter with the wwWideHistory2 function, the bits are as follows (bit 0 is the
rightmost bit):
13 wwStateCalc 8192
9 wwRetrievalMode 512
8 wwCycleCount 256
7 wwResolution 128
6 wwTimeDeadband 64
5 wwV alueDeadband 32
4 wwTimestampRule 16
3 wwQualityRule 8
2 wwV ersion 4
1 wwTimeZone 2
For additional information on each display option, see Display Options Tab.
To enable multiple display options, add up their integer equivalents and use the result as the value for
this parameter. For example, if you want to use the wwHistory2 function and show the value timestamp
with milliseconds as well as the history version, add the following values:
3 wwV ersion 8
DisplayMilliseconds
TRUE = Include the milliseconds in results. By default, Microsoft Excel does not return milliseconds.
FALSE = Do not include the milliseconds in the results.
DisplayOPCQuality
TRUE = Include the quality value in the results.
FALSE = Do not include the quality value in the results.
DisplayQuality
TRUE = Include the quality value in the results.
FALSE = Do not include the quality value in the results.
DisplaySourceServer
TRUE = Include the sourc e server for the tag in the results.
FALSE = Do not include the source server in the res ults.
DisplaySourceTag
TRUE = Include the sourc e tag for the tag in the res ults.
FALSE = Do not include the source tag in the results.
DisplayTagName
TRUE = Include the TagName in the results.
FALSE = Do not include the TagName in the results.
EdgeDetection
The moment at whic h the edge detection criteria is met. Valid values are:
Value Description
-1 No edge detection.
0 None. Returns all rows that successfully meet the criteria; no edge detection is implemented at the
specified resolution.
Value Description
1 Leading. Returns only rows that are the first to successfully meet the criteria (return true) after a ro
did not successfully meet the criteria (returned false).
2 Trailing. Returns only rows that are the first to fail the criteria (return false) after a row successfully m
the criteria (returned true).
3 Both. All rows satisfying bot h the leading and trailing conditions are returned.
EndDate
Specifies the ending date and time for the report.
EngUnit
TRUE = Include the engineering units in the results.
FALSE = Do not include the engineering units in the results.
EURange
TRUE = Include the engineering range in the results.
FALSE = Do not include the engineering range in the results.
EventTagRange
Specifies the cell range that contains the event tag names for the query.
HistoryVersion
Specifies the history version for data retrieval. For more information, see History Version (wwVersion).
When used with the wwHistory2 or wwWideHistory2 functions, valid values are:
Value Description
Value Description
0 Not specified.
Interpolation
Specifies the int erpolation type for data retrieval. When used with the wwHistory2 or wwWideHistory2
functions, valid values are:
Value Description
254 Use the tag’s interpolation setting specified at the AVEVA Historian level.
Logged
Determines whether events are logged to the E vent History table in the AVEVA Historian. 0 = Events are
not logged; 1 = E vents are logged.
TRUE = Include the log setting in the results.
FALSE = Do not include the log setting in the res ults.
MaxLength
TRUE = Include the maximum length of the string tag in the results.
FALSE = Do not include the maximum lengt h in the res ults.
Messages
TRUE = Include the messages associated with the discrete tag in the results.
FALSE = Do not include the messages in the results.
OptionRange
Referenc e to a range of cells that contains formatting options, which are applied to the query resul ts. The
option range must be nine contiguous cells with the following accept able values:
Date Format Any valid Excel date format. For example: hh:mm:ss.
If a heading currently exists, and the Display Heading option is set to FALSE, the heading is not deleted.
Also, none of the other heading options are applied.
OrderBy
Text string that specifies the result order. For example: ORDER BY DateTi me Desc.
QualityRule
Specifies the quality rule for dat a retrieval. Valid values are options 0, 1, and 3 of the aaQualityRules
Enumeration. For more information, see aaQualityRules Enumeration.
RawRange
TRUE = Include the raw range for the tag in the res ults.
FALSE = Do not include the raw range in the results.
ReplacePoorQuality
TRUE = Poor data quality is replaced with word "poor."
FALSE = Data quality not replaced. This is the default value.
Reset
Setting this value has no effect. Provided for backward-compatibility only. Valid values are: TRUE,
FALSE.
RetrievalMode
Specifies the type of data ret rieval. When used with the wwHistory2 or wwWideHistory2 functions, valid
values are options 0 to 11 of the aaRet rievalMode enumeration. For more information, see
aaRetrievalMode Enumeration.
When used with other functions, valid values are:
TRUE = Cyclic retrieval. All stored data for the specified time interval is returned. This is the default
retrieval mode.
FALSE = Delta retrieval. Only values that changed during the specified time interval are returned.
RowLimit
Specifies the maximum number of rows for the data retrieval to avoid excessively large result sets. For
example, if you set a row limit of 200, the historian only returns the first 200 rows of a query’s results. The
row limit applies to each query. In the Trend application, multiple queries may be used for the tags in a
trend depending on the tags’ configuration. Therefore, the total number of rows retrieved may be higher
than the row limit you configured in the application options.
For example, assume the following scenario:
The row limit in the application options is set to 200.
There are five tags in the trend. Four of them use the application options, but one of them is
separately configured for a row limit of 100.
In this case, the four tags that use the application options are combined in a single query, but a separate
query is created for the tag with the custom row limit. Therefore, you may receive up to 300 rows for all
tags combined.
RowOrRes
Specifies whether the number of rows returned are based on data resolution or a row count. A resolution
is the sampling interval between rows ret urned for the specified time period. A row count is the number of
rows to be returned . You can either select a cell containing the RowOrRes value or type in the value.
Examples are:
Row50 = 50 evenly spaced rows returned.
Row44 = 44 evenly spaced rows returned.
Res1000 = n number of rows at a 1 second resolution.
ResFull = n number of rows at a full resolution. The lowest storage rate of the selected tags is used. This
is not an option for tags stored by exception (delta storage).
ScanRate
The scan rat e is the interval, in milliseconds, at which the system will check to see if the event
conditions specified by the detector have occurred. This value must be great er than or equal to 500
milliseconds, and less than or equal to 1 hour (3600000 ms).
TRUE = Include the scan rate for the event tag in the results.
FALSE = Do not include the scan rat e in the res ults.
SnapshotTagRange
The range of cells that contains the names of snapshot tags for the query.
SnapshotTagType
Specifies the type of snapshot tag. Valid values are: Analog, Discrete, String, and Summary (if
applicable).
SourceServer
TRUE = Include the sourc e server for the tag in the results.
FALSE = Do not include the source server in the res ults.
SourceTag
TRUE = Include the sourc e tag for the tag in the res ults.
FALSE = Do not include the source tag in the results.
StartDate
Specifies the starting date and time for the report.
State
Specifies the state for which Time-in-State data is retrieved for a tag. This parameter is only relevant for
Time-in-State retrieval mode. It specifies the unique tag state for which Time-in-State information is
calculated based on the calculation type specified by the StateCalculation parameter.
StateCalculation
Specifies the calculation type for Time-in-State data retrieval. Valid values are options 0 to 4 of the
aaStateCalculation Enumeration. For more information, see aaStateCalculation Enumeration.
Status
The flag used by the event system at system startup and during runtime to determine if the event tag has
been modified. 0 = Posted. Any changes have been det ected and effected by the system. 1 = New. An
event tag has been inserted, but is not yet executing. 2 = Modification. An event tag has been updated,
but the older one is already executing. 98 = Disabled. 99 = Disabling requested. The event tag does not
execute, even though the definition still exists in the schema. Note that there may be a delay of up to 30
seconds before a change in an event tag is seen by the running system.
TRUE = Include the status for the event tag in the results .
FALSE = Do not include the status in the results.
SQLQuery
The cell address of a custom SQL query.
Storage
TRUE = Include the storage type (and rate, if cyclic) for the tag in the results.
FALSE = Do not include the storage type or rate in the results.
SummaryPeriod
The time period bet ween summary calculations. Valid values are any of the configured summary
periods.
SummaryType
Type of aggregation to be performed. Valid values are: Min, Max, Avg, and Sum.
TagCriteria
Enables criteria to be applied to eac h of the tags for the query. For example, "AND Tag1 > 33"
TagFilter
The filter string for the tag search. You can also specify a cell address that contains the filter string.
TagRange
Contiguous range of cells containing the tagname(s ) for the query. You can also specify a range of cells
that contains the tagnames.
Time1
Determines the dates for the query, in conjunction with the Time2 argument.
(starting time) = Absolute time. You can either type the starting time or reference a cell containing a valid
start time. The value of the Time2 argument is used to specify the end time.
REL = Relative time. The value of the Time2 argument are used to specify a reference from the base
date.
This argument accepts date/times as real (double) numbers, in addition to dates.
Time2
Determines the dates for the query, in conjunction with the Time1 argument.
If the Time1 argument contains the starting time, specify the end time of the query.
If the Time1 argument is set to REL (relative time), specify the time relative to the base dat e. The
required form is:
###T(##:##:##)
where
### = Number of time units from the date/time.
T = Time unit (d=days, h=hours, m=minutes, and s=seconds).
(##:##:##) = Time that the time units are relative to. This time and the base date are us ed together to
determine the date/time. To specify the now as the date/time, leave the parentheses empty.
Examples are:
TimeDeadband
The minimum time, in milliseconds, between returned values for a single tag. Applies only to delta
retrieval.
TimestampRule
Specifies the timestamp rule for dat a retrieval. Valid values are options 0, 1, and 3 of the
aaTimeSt ampRules Enumeration. For more information, see aaTimeStampRules Enumeration.
UseStringHistory
TRUE = Include the string history table for query.
FALSE = Do not include the string history table for query.
ValueCriteria
Enables a criterion to be specified for the tagname value. The criterion acts as a calculation filter.
For example, if you are performing aggregate calculations on the tag "SysTimeS ec" and want the
aggregation based only on values > 20, set this parameter to:
"value > 20 AND value IS NOT NULL"
"quality = 0"
"value > 20 AND quality = 0"
ValueDeadband
The percent age of full scale (range), in engineering units. Any value changes that are less than this
percentage are not returned. Applies only to delta retrieval.
QueryError A general error occurred while data was being retrieved, most likely due to a SQL
syntax problem.
InvalidTags The tag range argument does not contain valid tags.
4. Select the Upgrade function to newer format check box. Click Next.
5. Go through the rest of the wizard as described in Ret rieving History Values. After you finish the
wizard, the function call is updat ed to use the new function.
2. In the Server list, click the name of the server for which you want to view details.
3. Review the information for the server.
4. Click OK.
C HAPTER 6
AVEVA Historian Client Report
The AVEVA Historian Client Report is an add-in to Microsoft Word that allows you to query one or more
AVEVA Historian or SQL Server databases and return results to a Word document.
Note: You can manually load/unload the AVEVA Historian Client Report add-in. For more information,
see Manually Loading/Unloading the Add -In.
The AVEVA Historian Client Report default template, HistClient.dot or HistClient.dot m, is a blank
template to use as the starting point for any report documents or additional templat es that you want to
create.
Getting Started
Use this section to get started with the AVEVA Historian Client Report.
To get started with the AVEVA Historian Client Report
1. Create a new Word document based on the HistClient.dot or HistClient.dotm template by doing any
of the following:
o From the Start menu on the Windows Taskbar, point to P rogram s, point to the AV EV A program
group, point to the AVEVA Historian Client program group, and then click Report.
o Open Word. On the Hi storian menu, click Open Report. In the New dialog box that appears,
select to create a new blank document, and then click OK.
o Open Word. Click the Microsoft Offi ce button, and then click New.
o Right -click on the HistClient.dot or HistClient.dotm file in Windows Explorer, and then click New.
By default, the HistClient.dot and HistClient.dotm files are installed in the C: \Program
Files\Common Files\ArchestrA, in the C:\Program Files\Microsoft Office\OFFICE12\S TARTUP
folders.
A new blank document appears in Microsoft Word. The Hi storian menu appears.
The Hi storian menu is a part of the Ribbon Bar.
Note: If you don't see the Historian menu, you may need to manually load the Word add-in (see
"Manually Loading/ Unloading the Word Add -In" on page 278).
2. Configure the connection to one or more servers. For more information, see Managing Server
Connections.
3. Create headings, explanatory paragraphs, sections, and so on, similar to a normal Word document.
4. Use the commands on the AVEVA Historian Client menu to insert queries into your report document
to retrieve data from the database when the report document is run. The results appear in the final
report document. For more information, see Saving a Configured Report Document as a Report
Templat e.
5. Optionally add date and time fields to your report document. For more information, see Inserting
Date and Time Field Codes.
The following example shows a configured report doc ument that shows status information for an
AVEVA Historian, as well as the date and time that the report document was run.
6. Run the report document. For more information, see Running a Report Document.
When you run the report document, you can optionally save the file as a report templat e, which you
can then use as a basis for other report documents, instead of the default HistClient.dot or
HistClient.dotm report template.
Note: Running a report document replaces all of the field codes with actual dat a.
The AVEVA Historian Client Word add-in fills in the report document with the data and the resulting
report document appears. For example:
7. Save the run report document. For more information, see Saving Report Documents.
3. In the Manage list, select Word Add-ins, and then click Go.
The Templates and Add-Ins dialog box appears.
8. Click OK.
To manually unload the Word add-in
1. Click the Microsoft Office Button, and then click Word Options.
2. Click Add-Ins.
3. In the Manage list, select Word Add-ins, and then click Go. The Templates and Add-Ins dialog
box appears.
4. Clear the Hi stClient.dot and/ or Hi stClient.dotm check box in the Checked items are currently
loaded window.
5. Click OK.
The following graphic shows how field codes appear when turned on and before the report document has
been run. Field codes appear between the curly brackets { }.
In the following graphic, the field codes are hidden. For more information on showing or hiding the field
codes, see Showing/ Hiding Field Codes.
3. In the Show document content area, select or clear the Show field codes instead of their values
check box.
4. Click OK.
When you run the report document, you can optionally save the document as a report template,
which you can then use as a basis for other report documents, instead of the default HistClient.dot
report template.
Note: Running a report document replaces all the field codes with actual data.
The field codes are replaced with data and the resulting report document appears. For example:
5. You can then copy the report template file into the Microsoft Word template directory and use it to
create report documents or as a basis to create new report template files.
2. On the Hi storian tab, in the Reports group, click Save Results a s HTML. The Save As dialog box
appears.
3. In the File name box, type a name for the report document.
4. In the Save as type box, select Web Page.
6. On the Quick Acce ss Toolbar, click Web Page Preview to see the report document in a web
browser.
You can also click the Query button to start the Query client tool. You can us e the Query client
to build a query, which is inserted into the Query box. For more information, see AVEVA Historian
Client Query.
5. Configure how to display the results in the report document after it has been run.
o Show results in a cell: Displays only the val ue in the first column of the first record in the
returned record set. For example, if you queried the tagname and the description for a tag, only
the value for the tagname is returned and displayed.
o Show results in a table: Formats the returned data in a Word table.
6. If you chose to format the results in a table, configure the table options.
o Include column headings: Use the column names for the returned dat a as column headings in
the table.
o Show headings on every page: Allow the column headings to appear automatically on each
page of the report document aft er it has been run, if the data table spans more than one page.
o Format table: Click to pick the table format from a list. The Table AutoFormat dialog box
appears. For more information on this dialog box, see the Micros oft Word documentation.
7. Click OK.
The query is inserted into the report document or report template.
Editing a Query
You can edit an existing query in a report template or report document that has not yet been run. (After a
report document is run, all queries are convert ed to actual data.)
You can either edit a query manually by typing changes in the query string or by using the Direct Query
dialog box to select different options.
Both methods require that the field codes for the report document or template are visible. For more
information, see About Field Codes.
To edit a query using the Direct Query dialog box:
1. In the report doc ument or template, show the field codes so that you can see the query string.
2. Select the query string so that it is highlighted.
3. On the Hi storian tab, in the Edit Reports group, click Edit Query. The Direct Query dialog box
appears.
4. Either edit the query directly, or click the Query button to start the Query client tool. For more
information, see AVEVA Historian Client Query.
5. Change any of the options for the results. For more information, see Saving a Configured Report
Document as a Report Template.
6. Click OK.
When the report document is run, the date and/or time appear. For example:
For more information on viewing field codes, see Showing/Hiding Field Codes.
#time Wildcard. Used as a placeholder for the current (today's ) date, but a specified time.
#date Wildcard. Used as a placeholder for a specific date and a specified time.
#ReportTime Wildcard. Used as a placeholder for a defined report time to be used with eit her #date
or #time.
The values used for the #date and #Report Time wildcards are set for the entire report using the Report
Options dialog box. For more information, see Configuring Report Options.
These wildcards are handled by the AVEVA Historian Client Report; queries that include them do not
work in ot her query tools, such as the AVEVA Historian Client Query or the Micros oft Query Analyzer.
#time Wildcard
The #time wildcard is used to represent the current date (today) in the query. The use of this wildcard
allows you to run the report doc ument on any day and retrieve the data for the same time period.
For example, the WHERE clause for a query for the last eight hours of today's data, starting at 17:00 is as
follows:
WHERE DateTime >= '#time(17:0:0)-8h'
AND DateTime <= '#time(17:0:0)'
The time specific ation for the query is indicated in the parentheses.
The valid duration units for the time offset are:
s = seconds
mi = minutes
h = hours
d = days
w = weeks
mm = months
#date Wildcard
The #date wildcard is used to represent a specific date in the query. This wildcard is similar to the #time
wildcard. The #time wildcard is a placeholder for the current date, and the #dat e wildc ard is a placeholder
for a specific dat e.
For example:
WHERE DateTime >= '#date(17:0:0)-8h'
AND DateTime <= '#date(17:0:0)'
The WHERE clause indicates to use the last eight hours of data, starting at 17: 00, for the date that is
specified by the Report Date option in the Report Options dialog box. For more information, see
Configuring Report Options.
The time specific ation for the query is specified within parenthesis.
The valid duration units for the time offset are:
s = seconds
mi = minutes
h = hours
d = days
w = weeks
mm = months
#ReportTime Wildcard
The #Report Time wildc ard is used to represent the report time in the query. This wildcard can be used
with the #time and #date wildcards.
For example:
WHERE DateTime >= '#time(#ReportTime)-8h'
AND DateTime <= '#time(#ReportTime)'
This WHERE clause indicat es to use the last eight hours of data, for today's date, for the time that is
specified by the Report Time option in the Report Options dialog box.
Another example is:
WHERE DateTime >= '#date(#ReportTime)-8h'
AND DateTime <= '#date(#ReportTime)'
This WHERE clause indicat es to use the last eight hours of data for the date and time specified by the
Report Date and Report Time options, respectively, in the Report Options dialog box. For more
information, see Configuring Report Options.
The valid duration units for the time offset are:
s = seconds
mi = minutes
h = hours
d = days
w = weeks
mm = months
4. In the Query window, type the SQL query or use the Query client to build the query. For more
information, see AVEVA Historian Client Query.
6. In the Wildcards for time area, configure which time is substituted for the bas e time in the query.
o (list box): A base time for the query.
o Time specified in Report Options: The time specified in the report options is used as the base
time for the query. For more information, see Configuring Report Options.
7. Click OK.
The wildcards are inserted into the query for the date/time parameters and t hen updated with the
appropriate date/time when the report document is run.
2. In the Date and time area, configure the base time and date used for the report wildcards. E very
time this report document is run, the same date and time are used.
For more information about wildcards, see About Date and Time Wildcards.
o Report date: The date to be used as the base date for a relative date/time in the query. Click the
arrow button to access a calendar.
o Report time: The time to be used as for a relative date/time in the query.
3. Select the Suppress message s when report is running check box to stop dialog box messages
from being displayed when the report is running.
4. Select the Use date/time wildcards check box to allow for the use of wildcards in a query. You are
prompted to specify the wildcards during the query configuration.
5. In the Maximum rows per query list, specify the maximum number of rows returned for the query.
6. Click OK.
C HAPTER 7
Introduction to Controls and Objects
The AVEVA Historian Client controls and objects can be run in any application that can function as a
.NET or an ActiveX control cont ainer, such as InTouch HMI software, Visual Basic, Visual C#, Visual
C++, web pages, and so on. For InTouch HMI software, you can select these controls from within
WindowMaker when you create your runtime graphical user interface.
The AVEVA Historian Client objects and cont rols must be installed on the computer running the
application that you want to use them in. For example, if you want to use the aaHistClient Trend control in
InTouch HMI software, you must install the Trend files on the InTouch computer.
Technically, the ActiveX versions of t he controls can be used within Internet Explorer. However, because
Internet Explorer is a native .NE T control cont ainer, use the native cont rols instead of the ActiveX
versions.
A method performs a function for a control. For example, a method can set the time span for the
query.
An event is an occurrence of somet hing within or to the control (such as a mous e click or a data
change) that you might want to respond to through scripting (known as an event handler).
<html>
<body>
<object id="Trend1"
classid="http:aaHistClientUI.dll#ArchestrA.HistClient.UI.aaTrendControl"
height="300" width="300" VIEWASTEXT></object>
</body>
</html>
ActiveX cont rols that are embedded in HTML are loaded if you launch the .htm file within Windows
Explorer (that is, if the URL starts with file://). However, a URL that starts with file:// does not
load .NE T controls. You must use http://, which means you must create a web share for the folder in
which the .htm file resides.
C HAPTER 8
aaHistClientTrend Control
The aaHistClient Trend control allows you to run the AVEVA Historian Client Trend program (or a
functional subset ) from within the AVEVA InTouch HMI software or a .NE T cont ainer like Visual Basic
.NET or Internet Explorer.
For more information on using the AVEVA Historian Client Trend, see AVEVA Historian Client Trend.
aaHistClientTrend Properties
The aaHistClient Trend properties include:
AddMultipleTags
AllowContext Menu
AllowGridEditing
AlwaysUseFullForXYScatterPlots
AnalogPlottingAlgorithm
ApplyRubberBandToAllTags
AutoRef reshMode
Back Color
Back Gradient
Back GradientEndColor
BackImage
BorderColor
BorderStyle
BorderWidth
ChartType
CurrentServerName
CurrentTagColor
CurrentTagCycleCount
CurrentTagEffectiveRetrievalMode
CurrentTagFormat
CurrentTagHistoryVersion
CurrentTagI ndex
CurrentTagI nterpolationType
CurrentTagName
CurrentTagNumStyles
CurrentTagOffsetMS
CurrentTagP enStyle
CurrentTagP enWidth
CurrentTagP recision
CurrentTagQualityRule
CurrentTagResolution
CurrentTagRetrievalMode
CurrentTagRetrievalStyle
CurrentTagRowLimit
CurrentTagStartDate
CurrentTagStat e
CurrentTagStat eCalculation
CurrentTagTarget RegionVisible
CurrentTagTimeDeadband
CurrentTagTimeStampRule
CurrentTagTrendType
CurrentTagUseA utoCycles
CurrentTagUseResolution
CurrentTagV alAtX1
CurrentTagV alAtX2
CurrentTagV alueDeadband
CurrentTrendItem
CurrentValOfX1
CurrentValOfX2
CurrentValOfY1
CurrentValOfY2
CurrentXAxisTagIndex
CurrentXAxisTagName
CurrentXAxisTagServerName
CyclicRows
DataPointLabelType
DateMode
DatePick erFormatString
DefaultTagFormat
DefaultTagP recision
Enabled
EnableDeltaRetrieval
EnableSummaryData
EnableTimeOffsets
EndDate
FileName
GridColor
GridHorizontal
GridV ertical
GridVisible
HideCurrentTag
Highlight CurrentTag
HistorySource
LiveModeRate
Lock Down
LoginTimeout
MaxDeltaS amples
MaxMinutesForDeltaAnalog
MaxMinutesForDeltaDiscrete
MaxS amplesPerTag
MovingA verageMode
MovingA verageSamples
NumDataP ointLabels
NumTimeAxisGridP erValue
NumTimeAxisValues
NumXValueA xisGridLinesPerLabel
NumXValueA xisLabels
NumYA xisGridP erV alue
NumYA xisValues
PanPerc entage
Playback Speed
PlotColor
PlotGradient
PlotGradientEndColor
PlotImage
PrintShowActiveTag
PrintShowMark ers
PrintShowTitle
PrintTitle
PublicAnnotations
QueryTimeout
RealTimeMode
RealTimeRate
RetrievalOptionsCycleCount
RetrievalOptionsHistoryVersion
RetrievalOptionsInterpolationType
RetrievalOptionsNumStyles
RetrievalOptionsQualityRule
RetrievalOptionsResolution
RetrievalOptionsRetrievalMode
RetrievalOptionsRetrievalSt yle
RetrievalOptionsRowLimit
RetrievalOptionsState
RetrievalOptionsStateCalculation
RetrievalOptionsTimeDeadband
RetrievalOptionsTimeStampRule
RetrievalOptionsUseA utoCycles
RetrievalOptionsUseResolution
RetrievalOptionsValueDeadband
RetrieveAnnotations
RetrieveExtensionData
RetrieveManualDat a
RTRate
Rubberband
RubberbandAll
RubberBandScaling
Servers
ShowLimits
ShowV aluesAtCursor
ShowWait Cursor
ShowXA xisCursors
ShowYA xisCursor
SingleTagMode
StartDate
SummaryDataMode
SupressErrors
TagGridOrientation
TagListRows
TagPick er
TagPick erVisible
TargetRegionExcursionType
TargetRegionOpacity
TimeAxisLabelColor
TimeBarVisible
TimeBarVisible2
TimeSelector
ToolBarVisible
ToolbarVisible2
ToolTipText
TraceGradientEndingPercentage
TraceGradientStartingP ercentage
TraceGradientType
TrendFontSize
UpdateToCurrentTimeState
UseIniFile
ValueA xisLabel
Visible
XCursor1Color
XCursor1P os
XCursor2Color
XCursor2P os
YCursor1Color
YCursor2Color
ZoomOutPercentage
AddMultipleTags
The AddMultipleTags property is a read-write property that enables or disables the automatic refresh of
the trend chart each time a tag is added.
Syntax
aaHistClientTrend.AddMultipleTags = discrete;
Result = aaHistClientTrend.AddMultipleTags;
Remarks
You can set this property to True and then add multiple tags using a script without refreshing the graph.
After adding the final tag, set this property back to False. The graph is automatically refres hed and shows
all the tags that you added.
The default value is False.
AllowContextMenu
The AllowContextMenu property is a read -write property that enables or disables the Context menu for
the control.
Syntax
aaHistClientTrend.AllowContextMenu = discrete;
Result = aaHistClientTrend.AllowContextMenu;
Remarks
If this property is set to True, then the context menu appears when the runtime user right -clicks in the
control.
The default value is True.
AllowGridEditing
The AllowGridEditing property is a read-write property that enables or disables the editing of the tag list
that appears below the trend chart.
Syntax
aaHistClientTrend.AllowGridEditing = discrete;
Result = aaHistClientTrend.AllowGridEditing;
Remarks
If this property is set to True, then the tag list can be edited.
The default value is True.
AlwaysUseFullForXYScatterPlots
This read-write property determines whet her Full or Delta mode retrieval is forced for all tags in a scatter
plot regardless of the retrieval settings that are configured at the application or tag level.
Syntax
aaHistClientTrend.AlwaysUseFullForXYScatterPlots = discrete;
Result = aaHistClientTrend.AlwaysUseFullForXYScatterPlots;
Remarks
If t his property is set to True, then full or delta retrieval is forced. Full retrieval is used when ret rieving data
from an AVEVA Historian with a version of 9.0 or higher. Delta retrieval is used for earlier server versions.
The default value is True. We recommend to keep this option enabled unless the nature of your data
makes full retrieval impractical.
AnalogPlottingAlgorithm
The AnalogPlottingAlgorithm property is a read-write property that determines the type of the trend curve
for all analog and discrete tags in the trend.
Syntax
aaHistClientTrend.AnalogPlottingAlgorithm = integer;
Result = aaHistClientTrend.AnalogPlottingAlgorithm;
Remarks
Provided for backward compatibility. Use the CurrentTagTrendType property instead.
Valid values: 0 = Stair-step curve; 1 = Line curve (int erpolation).
Return Value
If all analog and discrete tags in the trend use the same curve type, the type is returned; otherwise, a 0 is
returned. A return value of 0, therefore, can either mean that all tags use stair-step curves, or that they
use different types.
ApplyRubberBandToAllTags
The Apply RubberBandToAllTags property is a read-write property that indicates whether all tags are
scaled by rubber band scaling or just the current tag.
Syntax
aaHistClientTrend.ApplyRubberBandToAllTags = discrete;
Result = aaHistClientTrend.ApplyRubberBandToAllTags;
Remarks
Provided for backward compatibility. Use the RubberbandAll property instead.
The default value is True.
AutoRefreshMode
The AutoRefreshMode property is a read-write property that gets or sets when the Trend control is
refres hed with data from the server.
Syntax
aaHistClientTrend.AutoRefreshMode = integer;
Result = aaHistClientTrend.AutoRefreshMode;
Remarks
The following table describes the enumerations for this property:
2 OnTimeS panChange Automatic refresh occurs when the time span is changed.
3 OnBoth Automatic refres h occurs both when tags are added and
the time span is changed. This is the default value.
If you are adding multiple tags, set this property to zero to prevent a refresh from occurring as eac h
individual tag is added. When you are finished adding tags, set this property back to a non-zero value.
If the AutoRefres hMode property is zero, you need to call the Ref reshData met hod to refresh the trend.
The default value is 3.
BackColor
The BackColor property is a read-write property that gets or sets the background color of the chart.
Syntax
aaHistClientTrend.BackColor = integer;
Result = aaHistClientTrend.BackColor;
Tables
For information on setting the color value, see Color.
The default value is 16777215.
BackGradient
The BackGradient property is a read-write property that gets or sets the type of background gradient for
the chart.
Syntax
aaHistClientTrend.BackGradient = integer;
Result = aaHistClientTrend.BackGradient;
Remarks
The gradient starts with the main background color and fade to the gradient end color. Use the
BackColor property to set the main background color. Use the BackGradientEndColor property to set the
ending gradient color.
For more information on the values for the back gradient, see the aaTrendGradientType Enumeration.
The default value is 0.
BackGradientEndColor
The BackGradientEndColor property is a read-write property that gets or sets the background gradient
end color of the chart.
Syntax
aaHistClientTrend.BackGradientEndColor = integer;
Result = aaHistClientTrend.BackGradientEndColor;
Remarks
The gradient starts with the main background color and fades to the gradient end color. Us e the
BackColor property to set the main background color. Us e the BackGradient property to set the type of
gradient fill.
For information on setting the color value, see Color.
The default value is 16777215.
BackImage
The BackImage property is a read-writ e property that gets or sets the background image for the chart.
Syntax
aaHistClientTrend.BackImage = message;
Result = aaHistClientTrend.BackImage;
Remarks
The value of t his property is the folder path and filename for the image. Supported image types are .jpeg,
.gif, .bmp, and .png.
This property has no default value.
BorderColor
The BorderColor property is a read-write property that gets or sets the color for the border of the graph.
Syntax
aaHistClientTrend.BorderColor = integer;
Result = aaHistClientTrend.BorderColor;
Remarks
For information on setting the color value, see Color.
The default value is 0.
BorderStyle
The BorderStyle property is a read-write property that gets or sets the style of the border line around the
trend chart.
Syntax
aaHistClientTrend.BorderStyle = aaDashStyle;
Result = aaHistClientTrend.BorderStyle;
Remarks
For more information on the values for the border style, see aaDashSt yle Enumeration.
The default value is 0, which indicates a solid line.
BorderWidth
The BorderWidth property is a read-write property that gets or sets the width, in pixels, of the border line
around the trend chart.
Syntax
aaHistClientTrend.BorderWidth = integer;
Result = aaHistClientTrend.BorderWidth;
Remarks
Valid values are 0 through 10. The default value is 1.
ChartType
The ChartTy pe is a read-write property that determines the chart type of the current Trend file.
Syntax
aaHistClientTrend.ChartType = aaChartType;
Result = aaHistClientTrend.ChartType;
Remarks
For information on possible values, see aaChartType Enumeration.
The default value is 0 (regular trend).
CurrentServerName
The CurrentServerName property is a read -only property that gets the name of the server for the tag that
is currently selected.
Syntax
Result = aaHistClientTrend.CurrentServerName;
Remarks
This property is not visible at design time. This property has no default value.
Return Value
The result is a string value.
CurrentTagColor
The Current TagColor property is a read-write property that determines the line color of the currently
selected tag’s curve in the trend.
Syntax
aaHistClientTrend.CurrentTagColor = integer;
Result = aaHistClientTrend.CurrentTagColor;
Remarks
This property is not visible at design time.
For information on setting the color value, see Color.
The default value is 0.
CurrentTagCycleCount
This read-write property controls the current tag’s number of cycles for cycle-based data retrieval. This
setting overrides the default setting specified at the application level if the CurrentTagRetrievalSt yle
property is set to an option other than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagCycleCount = integer;
Result = aaHistClientTrend.CurrentTagCycleCount;
Remarks
This property is only taken into account if both the CurrentTagUs eAutoCycles property and the
CurrentTagUseResolution property are set to False. Also, it may be overridden by a retrieval style
setting. For more information, see Work ing with Retrieval Styles.
This property is relevant for all retrieval modes except the following: Delta, Full, and Slope.
Valid values: any positive integer or 0. If you specify 0, the cycle count is calculated automatically, just as
if the CurrentTagUseAutoCycles property were set to True. The default value is 0.
CurrentTagEffectiveRetrievalMode
This read-only property returns the retrieval mode that is used for the currently selected tag. This helps
you to determine the tag’s actual ret rieval mode when you are using a retrieval style that specifies
different retrieval modes depending on tag type or duration.
Syntax
Result = aaHistClientTrend.CurrentTagEffectiveRetrievalMode;
Remarks
The return value is an integer. For an explanation of each ret urn value, see aaRetrievalMode
Enumeration.
CurrentTagFormat
The Current TagFormat property is a read-writ e property that is used to control how the values for the
selected tag appear, either in decimal format or scientific format.
Syntax
aaHistClientTrend.CurrentTagFormat = integer;
Result = aaHistClientTrend.CurrentTagFormat;
Remarks
0 = Decimal; 1 = Scientific. If you use the decimal format, set the number of decimal places using the
CurrentTagP recision property.
The default value is 0.
CurrentTagHistoryVersion
This read-write property det ermines the current tag’s history source for dat a retrieval. This setting
overrides the default setting specified at the application level if the CurrentTagRetrievalSt yle property is
set to an option other than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagHistoryVersion = aaRetrievalVersion;
Result = aaHistClientTrend.CurrentTagHistoryVersion;
Remarks
For information on possible values, see aaRetrievalVersion Enumeration. This property is relevant for all
retrieval modes.
The default value is 0 (latest values ).
CurrentTagIndex
This read-only property returns the index of the tag that is currently selected.
Syntax
Result = aaHistClientTrend.CurrentTagIndex;
Return Value
The result is an integer value.
Remarks
The index reflects the order in which the tags were added to the trend. 0 denotes the first tag that was
added to the trend, 1 denotes the second, and so on. If no tag is currently selected, -1 is returned.
CurrentTagInterpolationType
This read-write property det ermines the current tag’s interpolation type for data retrieval. This setting
overrides the default setting specified at the application level if the CurrentTagRetrievalSt yle property is
set to an option other than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagInterpolationType = aaInterpolationType;
Result = aaHistClientTrend.CurrentTagInterpolationType;
Remarks
For information on possible values, see aaInterpolationType Enumeration. This property is only relevant
for the following retrieval modes: Interpolated, Best Fit, Average, and Int egral.
The default value is 3 (use the default value of the server).
CurrentTagName
The Current TagName property is a read -only property that gets the name of the tag that is currently
selected.
Syntax
Result = aaHistClientTrend.CurrentTagName;
Return Value
The result is a message.
Remarks
This property is not visible at design time. This property has no default value.
CurrentTagNumStyles
This read-only property returns the number of retrieval styles that are available for the current tag.
Syntax
Result = aaHistClientTrend.CurrentTagNumStyles;
Remarks
The count only includes retrieval styles for which a name is defined for the current locale. If no style
names at all are defined for the current locale, the count for the en locale is returned.
To return the name of a style with a specific number, use the CurrentTagGetStyle method.
CurrentTagOffsetMS
The Current TagOffsetMS property is a read -write property that gets or sets the amount of time that the
trend curve of the currently selected tag will be shifted from the actual time.
Syntax
aaHistClientTrend.CurrentTagOffsetMS = integer;
Result = aaHistClientTrend.CurrentTagOffsetMS;
Remarks
The offset, expressed in milliseconds, can be positive or negative. For more information, see Using Time
Offsets to Compare Dat a on page 78. Setting this property updat es the CurrentTagStartDate property
accordingly.
Due to the limited range for integer values, the maximum offset you can set using this property is about
29 days. For larger offs ets, use the CurrentTagStartDate property.
The default value is 0. This property is only relevant if the DateMode property is set to absolute mode.
CurrentTagPenStyle
The Current TagPenStyle property is a read-writ e property that gets or sets the style of the trend curve for
the currently selected tag. For example, a solid or dashed line.
Syntax
aaHistClientTrend.CurrentTagPenStyle = integer;
Result = aaHistClientTrend.CurrentTagPenStyle;
Remarks
Valid values are:
0 Solid
1 Dashed
2 Dotted
3 DashDot
4 DashDot Dot
CurrentTagPenWidth
The Current TagPenWidth property is a read-write property that gets or sets the thickness of the trend
curve for the currently selected tag.
Syntax
aaHistClientTrend.CurrentTagPenWidth = integer;
Result = aaHistClientTrend.CurrentTagPenWidth;
Remarks
Valid values are 0 through 10. The default value is 0.
CurrentTagPrecision
The Current TagP recision property is a read -write property that gets or sets the number of decimal places
to show for the data value of the currently selected tag. This applies only to analog tags.
Syntax
aaHistClientTrend.CurrentTagPrecision = integer;
Result = aaHistClientTrend.CurrentTagPrecision;
Remarks
To set the tag to use the decimal format, use the DefaultTagFormat property.
The default value is 0.
CurrentTagQualityRule
This read-write property determines the current tag’s quality rule for data retrieval. This setting overrides
the default setting specified at the application level if the CurrentTagRetrievalStyle property is set to an
option ot her than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagQualityRule = aaQualityRules;
Result = aaHistClientTrend.CurrentTagQualityRule;
Remarks
For information on possible values, see aaQualityRules Enumeration. This property is relevant for all
retrieval modes except the following: Cyclic, Delta, and Full.
The default value is 3 (use the default value of the server).
CurrentTagResolution
This read-write property controls the current tag’s time interval for calculating the number of cycles in
cycle-based data ret rieval. This setting overrides the default setting specified at the application level if
the CurrentTagRetrievalSt yle property is set to an option other than Style selected at option
level.
Syntax
aaHistClientTrend.CurrentTagResolution = integer;
Result = aaHistClientTrend.CurrentTagResolution;
Remarks
This property is only relevant if the CurrentTagUseAutoCycles property is set to False, and the
CurrentTagUseResolution property is set to True. Also, it may be overridden by a retrieval style setting.
For more information, see Work ing with Retrieval Styles.
The value of this property is a time interval in milliseconds. The aaHistClient Trend control divides the
query duration by this interval and uses the result as the number of cycles for the query.
This property is relevant for all retri eval modes except the following: Delta, Full, and Slope.
Valid values: any positive integer or 0. If you specify 0, the cycle count is calculated automatically, just as
if the CurrentTagUseAutoCycles property were set to True. The default value is 0.
CurrentTagRetrievalMode
This read-write property det ermines the current tag’s dat a retrieval mode. This setting overrides the
default setting specified at the application level if the CurrentTagRetrievalStyle property is set to an
option ot her than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagRetrievalMode = aaRetrievalMode;
Result = aaHistClientTrend.CurrentTagRetrievalMode;
Remarks
This property may be overridden by a retrieval style setting. For more information, see Work ing with
Retrieval Styles. For information on possible values, see aaRetrievalMode Enumeration.
The default value is 0 (cyclic). Make sure that the specified retrie val mode is supported by the AVEVA
Historian on which the tag is stored.
CurrentTagRetrievalStyle
This read-write property det ermines the current tag’s ret rieval style. This setting overrides the default
setting specified at the application level.
Syntax
aaHistClientTrend.CurrentTagRetrievalStyle = string;
Result = aaHistClientTrend.CurrentTagRetrievalStyle;
Remarks
You must provide the retrieval style name for the current locale as it is defined in the retrieval style
document. For more information, see Location and Structure of Retrieval Styles. To find out how many
retrieval styles are available for the current tag, use the Current TagNumStyles property. To determine
the name of a retrieval style if you know its position in the list of available styles, use the
Current TagGetStyle method.
Valid values: Custom style (or the translated equivalent for the current locale), Style selected at
option level (ditto) and any retrieval style name that is defined for the current locale in the ret rieval
style document. Values are case-sensitive. If no style names at all are available for the current locale,
use the name for the en locale. The default style is the Style selected at option level (or the
translated equivalent ).
CurrentTagRowLimit
This read-writ e property determines the current tag’s row limit for data retrieval. This setting overrides the
default setting specified at the application level if the CurrentTagRetrievalStyle property is set to an
option ot her than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagRowLimit = integer;
Result = aaHistClientTrend.CurrentTagRowLimit;
Remarks
The row limit applies to each query. For more information, see RowLimit. This property is relevant for all
retrieval modes.
Valid values: any positive number or 0 (no row limit). The default value is 0.
CurrentTagStartDate
The Current TagStartDat e property is a read-write property that gets or sets the trend start dat e for the
currently selected tag.
Syntax
aaHistClientTrend.CurrentTagStartDate = DateTime;
Result = aaHistClientTrend.CurrentTagStartDate;
Return Value
The result is a DateTime value.
Remarks
This property has no default. Setting this property updates the CurrentTagOffset MS property
accordingly.
This property is only applicable if the DateMode property is set to relative. It reflects local time.
For information on setting the date/time value, see DateTime.
CurrentTagState
This read-write property determines the state for which Time-in-State and RoundTrip data is retrieved for
the current tag. This setting overrides the default setting specified at the application level if the
CurrentTagRetrievalStyle property is set to an option ot her than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagState = message;
Result = aaHistClientTrend.CurrentTagState;
Remarks
This property is only relevant for the Time -in-State and RoundTrip retrieval modes. It specifies the unique
tag state for which Time-in-State and RoundTrip information is calculated based on the calculation type
specified by the CurrentTagStateCalculation property.
This property has no default value.
CurrentTagStateCalculation
This read-write property det ermines the current tag’s calculation type for the Time -in-State and
RoundTrip data retrievals. This setting overrides the default setting specified at the application level if the
CurrentTagRetrievalStyle property is set to an option ot her than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagStateCalculation = aaStateCalculation;
Result = aaHistClientTrend.CurrentTagStateCalculation;
Remarks
For information on possible values, see aaStateCalculation Enumeration. This property is only relevant
for the Time-in-Stat e and RoundTrip retrieval modes. Also, it may be overridden by a retrieval style
setting. For more information, see Work ing with Retrieval Styles.
The default value is 5 (use application setting).
CurrentTagTargetRegionVisible
This read-write property det ermines whether a currently selected tag’s target region is shown on the
chart.
Syntax
aaHistClientTrend.CurrentTagTargetRegionVisible = discrete;
Result = aaHistClientTrend.CurrentTagTargetRegionVisible;
Remarks
If no target region is defined for a tag, this property has no effect. Regardless of t he value of this property,
the target region for a tag is only shown when that tag is currently selected in the tag list.
The default value is True.
CurrentTagTimeDeadband
This read-write property det ermines the current tag’s time deadband in milliseconds for Delta data
retrieval. This setting overrides the default setting specified at the application level if the
CurrentTagRetrievalStyle property is set to an option ot her than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagTimeDeadband = integer;
Result = aaHistClientTrend.CurrentTagTimeDeadband;
Remarks
Valid values: any positive number or 0 (no deadband). This property is only relevant for Delta retrieval
mode. For more information on how this setting works, see Time Deadband (wwTimeDeadband).
The default value is 0 (no deadband).
CurrentTagTimeStampRule
This read-write property det ermines the current tag’s timestamp rule for data retrieval. This setting
overrides the default setting specified at the application level if the CurrentTagRetrievalSt yle property is
set to an option other than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagTimeStampRule = aaTimeStampRules;
Result = aaHistClientTrend.CurrentTagTimeStampRule;
Remarks
For information on possible values, see aaTimeStampRules Enumeration. This property is only relevant
for the following retrieval modes: Cyclic, Interpolated, Time -Weight ed A verage, Integral, Counter, and
Time-in-State.
The default value is 3 (use the default value of the server).
CurrentTagTrendType
This read-write property det ermines the type of the current tag’s trend curve.
Syntax
aaHistClientTrend.CurrentTagTrendType = aaTrendType;
Result = aaHistClientTrend.CurrentTagTrendType;
Remarks
For information on possible values, see aaTrendType Enumeration.
The default value is 3 (Auto).
CurrentTagUseAutoCycles
This read-write property controls the current tag’s auto-calculation setting for cycle-based data retrieval.
This setting overrides the default setting specified at the application level if the CurrentTagRetrievalStyle
property is set to an option other than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagUseAutoCycles = discrete;
Result = aaHistClientTrend.CurrentTagUseAutoCycles;
Remarks
If this property is set to True, the aaHistClient Trend control aut omatically calculates the number of cycles
for a query based on the width of the chart. For more information, see Cycle Count (X Values over Equal
Time Intervals) (wwCycleCount).
If it is set to False, you must specify the number of cycles manually. Use the CurrentTagUseResolution
property to specify whether you want to provide a number of cycles or a time interval. Then us e the
CurrentTagCycleCount property to specify the number of cycles, or the CurrentTagResolution property
to specify the time interval.
This property is relevant for all retrieval modes except the following: Delta, Full, and Slope.
The default value is False.
CurrentTagUseResolution
This read-write property controls the current tag’s behavior for determining the number of cycles in
cycle-based data ret rieval. This setting overrides the default setting specified at the appl ication level if
the CurrentTagRetrievalSt yle property is set to an option other than Style selected at option
level.
Syntax
aaHistClientTrend.CurrentTagUseResolution = discrete;
Result = aaHistClientTrend.CurrentTagUseResolution;
Remarks
This property is only relevant if the CurrentTagUseAutoCycles property is set to False.
If this property is set to False, the aaHistClient Trend control uses a fixed number of cycles when
retrieving dat a using cycle-based retrieval modes. To specify the number of cycles, use the
CurrentTagCycleCount property.
If it is set to True, the aaHistClient Trend control calculates the number of cycles based on the query
duration and a time interval. To specify this interval, use the CurrentTagResolution property.
This property is relevant for all retrieval modes except the following: Delta, Full, and Slope.
The default value is False.
CurrentTagValAtX1
The Current TagValAt X1 property is a read-only property that gets the value of the current tag at the point
at which the curve intersects with the first time axis cursor.
Syntax
Result = aaHistClientTrend.CurrentTagValAtX1;
Return Value
The result is a real value.
Remarks
For more information on cursors, see Using Axis Cursors.
This property has no default value.
CurrentTagValAtX2
The Current TagValAt X2 property is a read-only property that gets the value of the current tag at the point
at which the curve intersects with the second time axis cursor.
Syntax
Result = aaHistClientTrend.CurrentTagValAtX2;
Return Value
The result is a real value.
Remarks
For more information on cursors, see Using Axis Cursors.
This property has no default value.
CurrentTagValueDeadband
This read-write property det ermines the current tag’s value deadband for Delta data retrieval. This
setting overrides the default setting specified at the application level if the CurrentTagRetrievalSt yle
property is set to an option other than Style selected at option level.
Syntax
aaHistClientTrend.CurrentTagValueDeadband = real;
Result = aaHistClientTrend.CurrentTagValueDeadband;
Remarks
The deadband is a percentage of the full scale in Engineering Units. Valid values are 0 (no deadband) to
100. This property is only relevant for Delta retrieval mode. For more information on how this setting
works, see Value Deadband (wwV alueDeadband).
The default value is 0 (no deadband).
CurrentTrendItem
The CurrentTrendItem property is a read-only property that refers to the currently selected trend item in
the Tag List.
Syntax
Result = aaHistClientTrend.CurrentTrendItem;
Remarks
If no items are added or selected in the Tag List, this property contains a null value.
The Current TrendItem property supports the following properties:
Visible
PenWidth
Style
ValueFormat
DecimalPlac es
BottomY
TopY
TrendType
Name
Visible
The Visible property is a read-write property that gets or sets the visibility of the current trend item.
This property has no default value.
Syntax
aaHistClientTrend.CurrentTrendItem.Visible = true;
Result = aaHistClientTrend.CurrentTrendItem.Visible;
PenWidth
The PenWidt h property is a read-write property that gets or sets the thickness of the trend curve for the
currently selected tag.
Syntax
aaHistClientTrend.CurrentTrendItem.PenWidth = integer;
Result = aaHistClientTrend.CurrentTrendItem.PenWidth;
Remarks
Valid values are 0 through 10. The default value is 0.
Style
The Style property is a read-write property that gets or sets the style of the trend curve for the currently
selected tag.
Syntax
aaHistClientTrend.CurrentTrendItem.Style = integer;
Result = aaHistClientTrend.CurrentTrendItem.Style;
Remarks
The valid values and curve styles are as follows:
Value Style
0 Solid
1 Dashed
2 Dotted
3 DashDot
4 DashDot Dot
ValueFormat
The ValueFormat property is a read-write property that gets or sets the value format of the currently
selected tag. The format can be decimal or scientific.
Syntax
aaHistClientTrend.CurrentTrendItem.ValueFormat = integer;
Result = aaHistClientTrend.CurrentTrendItem.ValueFormat;
Remarks
The value 0 specifies decimal format and 1 specifies scientific format. If you use the decimal format, then
set the number of decimal places using the DecimalPlaces property.
The default value is 0.
DecimalPlaces
The DecimalPlaces property is a read -write property that gets or sets the number of decimal plac es to
display for the data value of the currently selected tag. This property is applicable only to the analog tags.
Syntax
aaHistClientTrend.CurrentTrendItem.DecimalPlaces = integer;
Result = aaHistClientTrend.CurrentTrendItem.DecimalPlaces;
Remarks
The default value is 0.
BottomY
The BottomY property is a read-write property that gets or sets the lower value for the y -axis of the
currently selected tag.
Syntax
aaHistClientTrend.CurrentTrendItem.BottomY = double;
Result = aaHistClientTrend.CurrentTrendItem.BottomY;
TopY
The TopY property is a read-write property that gets or sets the upper value for the y-axis of the currently
selected tag.
Syntax
aaHistClientTrend.CurrentTrendItem.TopY = double;
Result = aaHistClientTrend.CurrentTrendItem.TopY;
TrendType
The TrendType property is a read-write property that gets or sets the type of the trend curve of the
currently selected tag.
Syntax
aaHistClientTrend.CurrentTrendItem.TrendType = integer;
Remarks
For information on possible values, see aaTrendType Enumeration.
The default value is 3.
Name
The Name property is a read-only property that gets the name of the currently selected tag.
Syntax
Result = aaHistClientTrend.CurrentTrendItem.Name;
Return Value
The result is a string value.
Remarks
This property is not visible at design time. This property has no default value.
CurrentValOfX1
This read-write property gets or sets the position of the first x-axis cursor of the currently selected tag in
a scatter plot.
Syntax
aaHistClientTrend.CurrentValOfX1 = real;
Result = aaHistClientTrend.CurrentValOfX1;
Remarks
This property contains the value at which the cursor intersects with the current x -axis scale. Therefore,
the same cursor position may be reflected by different val ues depending on which tag is selected.
To control the position of the first time axis cursor in a regular trend, use the X Curs or1P os property.
CurrentValOfX2
This read-write property gets or sets the position of the second x -axis cursor of the currently selected tag
in a scatter plot.
Syntax
aaHistClientTrend.CurrentValOfX2 = real;
Result = aaHistClientTrend.CurrentValOfX2;
Remarks
This property contains the value at which the cursor intersects with the current x -axis scale. Therefore,
the same cursor position may be reflected by different values depending on which tag is selected.
To control the position of the second time axis cursor in a regular trend, use the XCursor2Pos property.
CurrentValOfY1
This read-write property controls the position of the first y-axis cursor of the currently selected tag.
Syntax
aaHistClientTrend.CurrentValOfY1 = real;
Result = aaHistClientTrend.CurrentValOfY1;
Remarks
This property contains the value at which the cursor intersects with the current y -axis scale. Therefore,
the same cursor position may be reflected by different values depending on which tag is selected.
CurrentValOfY2
This read-write property controls the position of the second y -axis cursor of the currently selected tag.
Syntax
aaHistClientTrend.CurrentValOfY2 = real;
Result = aaHistClientTrend.CurrentValOfY2;
Remarks
This property contains the value at which the cursor intersects with the current y -axis scale. Therefore,
the same cursor position may be reflected by different values depending on which tag is selected.
CurrentXAxisTagIndex
This read-only property returns the index of the x-axis tag that is associated with the currently selected
tag.
Syntax
Result = aaHistClientTrend.CurrentXAxisTagIndex;
Return Value
The result is an integer value.
Remarks
The index reflects the order in which the tags were added to the trend. 0 denotes the first tag that was
added to the trend, 1 denotes the second, and so on. If no tag is currently selected, or if the currently
selected tag isn’t associated with an x-axis tag, -1 is returned.
CurrentXAxisTagName
This read-only property returns the name of the x-axis tag that is associated with the currently selected
tag.
Syntax
Result = aaHistClientTrend.CurrentXAxisTagName;
Return Value
The result is a message value.
Remarks
If no x-axis tag is set for the currently selected tag, this property contains an empty string.
CurrentXAxisTagServerName
This read-only property returns the name of the server for the x-axis tag that is associated with the
currently selected tag.
Syntax
Result = aaHistClientTrend.CurrentXAxisTagServerName;
Return Value
The result is a message value.
Remarks
If no x-axis tag is set for the currently selected tag, this property contains an empty string.
CyclicRows
This property is deprecated and included for backward compatibility only.
Syntax
aaHistClientTrend.CyclicRows = integer;
Result = aaHistClientTrend.CyclicRows;
Remarks
To specify the number of cycles for cyclic retrieval, use the CurrentTagCycleCount or
RetrievalOptionsCycleCount properties instead.
DataPointLabelType
This property det ermines whether data point labels are shown in a scatter plot.
Syntax
aaHistClientTrend.DataPointLabelType = aaDataPointLabelingType;
Result = aaHistClientTrend.DataPointLabelType;
Remarks
For information on possible values, see aaDataPointLabelingType Enumeration.
The default value is 0 (no labels).
DateMode
The DateMode property is a read-write property that gets or sets the date mode for the trend.
Syntax
aaHistClientTrend.DateMode = aaDateModeEnumeration;
Result = aaHistClientTrend.DateMode;
Remarks
The default value is 0 (absolute mode).
For more information on the aaDateModeEnumeration enumeration, see aaDateModeE numeration
Enumeration.
The DateMode property determines the functionality of the Time Bar and how time shifting is anchored
as you switch between different time periods.
In abs olute mode, the Time Bar has a start time and an end time. In this mode, each tag has its own
time offset. The actual time period used for queries is the sum of the tag's "offset" and the start and
end time for the Time Bar. The tag offset is set using the CurrentTagOffsetMS property.
In relative mode, the Time B ar has a starting time offset and an ending time offset. In this mode each
tag has its own starting time. The actual time period used for queries is the sum of the tag's start ti me
to the offsets of the Time Bar. If you set the DateMode property to use relative time, specify the start
time for the current tag using the CurrentTagStartDat e property.
In both modes, zoom and pan operations only manipulate the Time Bar properties, not the tag properties.
DatePickerFormatString
The DatePickerFormatString property is a read-write property that gets or sets the format string for the
time range picker.
Syntax
aaHistClientTrend.DatePickerFormatString = message;
Result = aaHistClientTrend.DatePickerFormatString;
Remarks
This value is determined from the regional settings for the operating system.
For example, the time setting might be:
hh:mm:ss tt
where:
DefaultTagFormat
The Default TagFormat property is a read-write property that gets or sets the format of the trend item for
presentation to the client.
Syntax
aaHistClientTrend.DefaultTagFormat = integer;
Result = aaHistClientTrend.DefaultTagFormat;
Remarks
Valid values are: 0 = Decimal, 1 = Scientific. The default value is 0. If you use the decimal format, use the
DefaultTagP recision property to specify the number of decimal points. Format changes are not applied to
trend items already in the chart at the time the format change is made.
The default value is 0.
DefaultTagPrecision
The DefaultTagP recision property is read -write property that gets or sets the number of decimal places of
the trend item for presentation to the client.
Syntax
aaHistClientTrend.DefaultTagPrecision = integer;
Result = aaHistClientTrend.DefaultTagPrecision;
Remarks
Precision changes are not applied to trend items already in the chart at the time the precision change is
made.
The default value is 0.
EnableDeltaRetrieval
The EnableDeltaRetrieval property is a read-write property that enables or disables delta retrieval for the
trend control.
Syntax
aaHistClientTrend.EnableDeltaRetrieval = discrete;
Result = aaHistClientTrend.EnableDeltaRetrieval;
Remarks
The aaHistClient Trend control only takes this property into account when retrieving data from t he AVEVA
Historians with a version earlier than 9.0. For more information, see Retrieval Styles, Application
Settings, and Tag Settings.
Delta retrieval is used for analog and discrete queries that have a time range that are within the settings
of the MaxMinutesForDeltaAnalog and MaxMinut esForDeltaDiscrete properties.
Delta retrieval is always used for the "live" retrieval mode. If you set this property to False, this has no
effect on live mode.
The default value is False.
EnableSummaryData
This property is included for backward compatibility only. Its value is ignored.
Syntax
aaHistClientTrend.EnableSummaryData = discrete;
Result = aaHistClientTrend.EnableSummaryData;
Remarks
To retrieve summarized data, use a ret rieval style instead. For more information, see Work ing with
Retrieval Styles.
EnableTimeOffsets
Note: This property is included for backward compatibility only. Setting this property has no effect.
The EnableTimeOffsets property is a read-write property that enables or disables time offsets for the
trend items.
Syntax
aaHistClientTrend.EnableTimeOffsets = discrete;
Result = aaHistClientTrend.EnableTimeOffsets;
Remarks
The default value is True.
EndDate
The EndDat e property is a read-only property that returns the end date and time of the time range.
Syntax
Result = aaHistClientTimeRangePicker.EndDate;
Return Value
A message value in a valid date/time format is returned.
FileName
The FileName property is a read-only property that gets the name of the current trend file.
Syntax
Result = aaHistClientTrend.FileName;
Return Value
The result is a message.
Remarks
The default value is an empty message value ( "" ).
GridColor
The GridColor property is a read-write property that gets or sets the color of the trend grid.
Syntax
aaHistClientTrend.GridColor = integer;
Result = aaHistClientTrend.GridColor;
Remarks
For information on setting the color value, see Color.
The default value is 13882323.
GridHorizontal
The GridHorizontal property is a read -write property that shows or hides the horizontal grid.
Syntax
aaHistClientTrend.GridHorizontal = discrete;
Result = aaHistClientTrend.GridHorizontal;
Remarks
The default value is True.
GridVertical
The GridVertical property is a read-write property that shows or hides the vertical grid.
Syntax
aaHistClientTrend.GridVertical = discrete;
Result = aaHistClientTrend.GridVertical;
Remarks
The default value is True.
GridVisible
The GridVisible property is a read-write property that shows or hides the tag list underneath the chart
area.
Syntax
aaHistClientTrend.GridVisible = discrete;
Result = aaHistClientTrend.GridVisible;
Remarks
The default value is True.
HideCurrentTag
The HideCurrent Tag property is a read -write property that shows or hides the currently selected trend
item (tag).
Syntax
aaHistClientTrend.HideCurrentTag = discrete;
Result = aaHistClientTrend.HideCurrentTag;
Remarks
The default value is False. If there are no tags on the chart, this property returns True.
HighlightCurrentTag
The HighlightCurrent Tag property is a read-write property that controls whet her to highlight whichever
tag is currently selected.
Syntax
aaHistClientTrend.HighlightCurrentTag = discrete;
Result = aaHistClientTrend.HighlightCurrentTag;
Remarks
This property is a trend-level setting, not a tag-level setting. If you enable it while a particular tag is
selected, that tag is highlighted. Once you select a different tag, that other tag is highlighted, and so on.
The default value is False.
HistorySource
The HistorySource property is a read-writ e property that gets or sets the selection of the source of
historical data.
Syntax
aaHistClientTrend.HistorySource = aaRetrievalSource;
Result = aaHistClientTrend.HistorySource;
Remarks
For more information on the aaRetrievalSource enumeration, see aaRet rievalSource Enumeration.
Remarks
The default value is 2.
LiveModeRate
The LiveModeRate property is a read -write property that gets or sets the refresh int erval in milliseconds
for live and replay mode.
Syntax
aaHistClientTrend.LiveModeRate = integer;
Result = aaHistClientTrend.LiveModeRate;
Remarks
The lower limit for the LiveModeRate property is set to 250 milliseconds. The default value is 1,000.
Apart from the different unit of measure, this property serves the same purpose as the RealTimeRate
property.
LoginTimeout
The LoginTime property is a read-writ e property that gets or sets the amount of time, in seconds, that the
control waits for a connection to the server to be established before determining that the attempt failed.
Syntax
aaHistClientTrend.LoginTimeout = integer;
Result = aaHistClientTrend.LoginTimeout;
Remarks
This setting only applies to servers that you add or update dynamically using the AddServer method. All
other servers continue to use the timeout that you set in the server configuration dialog box.
Remarks
The default value is 120.
MaxDeltaSamples
The Max DeltaSamples property is a read -write property that gets or sets the maximum number of dat a
values to retrieve for delta retrieval mode.
Syntax
aaHistClientTrend.MaxDeltaSamples = integer;
Result = aaHistClientTrend.MaxDeltaSamples;
Remarks
The aaHistClient Trend control only takes this property into account when retrieving dat a from AVEVA
Historians with a version earlier than 9.0.
Valid values are 0 to 100,000. The default value is 10,000.
LockDown
This read-write property enables or disables a “lock down” mode in the control.
Syntax
aaHistClientTrend.LockDown = discrete;
Result = aaHistClientTrend.LockDown;
Remarks
In "lock down" mode, the following features are not availabl e to the run-time user:
Opening a file, saving a file, saving a file as a different name, and creating a new file
Deleting a tag
Adding an annot ation
Viewing or changing properties and options
Configuring servers
Viewing the Tag Picker and the main toolbar
Editing the tag list (grid)
The default value is False.
MaxMinutesForDeltaAnalog
The MaxMinutesForDeltaAnalog property is a read-write property that gets or sets the maximum minutes
filter for analog tags for delta retrieval mode.
Syntax
aaHistClientTrend.MaxMinutesForDeltaAnalog = integer;
Result = aaHistClientTrend.MaxMinutesForDeltaAnalog;
Remarks
The aaHistClient Trend control only takes this property into account when retrieving dat a from AV EVA
Historians with a version earlier than 9.0.
Delta retrieval is used for analog queries that have a time range that are wit hin the setting of the
MaxMinutesForDeltaAnalog property. If the query time range is longer, cyclic retrieval is used.
Remarks
The default value is 15.
MaxMinutesForDeltaDiscrete
The MaxMinutesForDeltaDiscrete property is a read -write property that gets or sets the maximum
minutes filter for discrete tags for delta retrieval mode.
Syntax
aaHistClientTrend.MaxMinutesForDeltaDiscrete = integer;
Result = aaHistClientTrend.MaxMinutesForDeltaDiscrete;
Remarks
The aaHistClient Trend control only takes this property into account when ret rieving data from an AVEVA
Historian with a version earlier than 9. 0.
Delta retrieval is used for discrete queries that have a time range that are within the setting of the
MaxMinutesForDeltaDiscrete property. If the query time range is longer, cyclic retrieval is used.
The default value is 15.
MaxSamplesPerTag
The MaxSamplesPerTag property is a read-write property that gets or sets the maximum number of
samples per tag.
Syntax
aaHistClientTrend.MaxSamplesPerTag = integer;
Result = aaHistClientTrend.MaxSamplesPerTag;
Remarks
The aaHistClient Trend control only takes this property into account when ret rieving data from an AVEVA
Historian with a version earlier than 9. 0.
The default value is 10,000.
MovingAverageMode
This property is included for backward compatibility only. Its value is ignored.
Syntax
aaHistClientTrend.MovingAverageMode = discrete;
Result = aaHistClientTrend.MovingAverageMode;
Remarks
To calculate moving averages, use a retrieval style instead. For more information, see Work ing with
Retrieval Styles.
MovingAverageSamples
This property is included for backward compatibility only. Its value is ignored.
Syntax
aaHistClientTrend.MovingAverageSamples = integer;
Result = aaHistClientTrend.MovingAverageSamples;
Remarks
To calculate moving averages, use a retrieval style instead. For more information, see Work ing with
Retrieval Styles.
NumDataPointLabels
This read-write property det ermines the number of data point labels in a scatter plot.
Syntax
aaHistClientTrend.NumDataPointLabels = integer;
Result = aaHistClientTrend.NumDataPointLabels;
Remarks
The valid range is from 2 to 15. The default value is 6. This property is only used if data points are actually
shown on the scatter plot. For more information, see DataP ointLabelType.
NumTimeAxisGridPerValue
The NumTimeAxisGridPerValue property is a read -write property that gets or sets the number of grid
lines that appear bet ween each tag value plotted on the graph.
Syntax
aaHistClientTrend.NumTimeAxisGridPerValue = integer;
Result = aaHistClientTrend.NumTimeAxisGridPerValue;
Remarks
The valid range is from 1 to 20. The default value is 3.
NumTimeAxisValues
The NumTimeAxisValues property is a read-write property that gets or sets the number of values that are
shown along the time axis.
Syntax
aaHistClientTrend.NumTimeAxisValues = integer;
Result = aaHistClientTrend.NumTimeAxisValues;
Remarks
The values are shown at evenly-spaced points along the axis. The number of values remain the same
even if you zoom in and out. The valid range is from 2 to 15. The default value is 6.
NumXValueAxisGridLinesPerLabel
This read-write property determines the number of grid lines that appear bet ween each scale value label
on the X axis of a scatter plot.
Syntax
aaHistClientTrend.NumXValueAxisGridLinesPerLabel = integer;
Result = aaHistClientTrend.NumXValueAxisGridLinesPerLabel;
Remarks
The valid range is from 1 to 20. The default value is 3.
NumXValueAxisLabels
This read-write property det ermines the number of scale value labels that appear on the X axis of a
scatter plot.
Syntax
aaHistClientTrend.NumXValueAxisLabels = integer;
Result = aaHistClientTrend.NumXValueAxisLabels;
Remarks
The valid range is from 2 to 15. The default value is 6.
NumYAxisGridPerValue
This read-write property determines the number of grid lines that appear bet ween each scale value label
on the Y axis of a chart.
Syntax
aaHistClientTrend.NumYAxisGridPerValue = integer;
Result = aaHistClientTrend.NumYAxisGridPerValue;
Remarks
The valid range is from 1 to 20. The default value is 2.
NumYAxisValues
This read-writ e property determines the number of scale value labels that appear on the Y axis of a chart.
Syntax
aaHistClientTrend.NumYAxisValues = integer;
Result = aaHistClientTrend.NumYAxisValues;
Remarks
The values are shown at evenly-spaced points along the axis. The number of values remains the same
even if you zoom in and out. The valid range is from 2 to 15. The default value is 6.
PanPercentage
The PanPercentage property is a read-write property that gets or sets the percentage (1 to 100) by which
the time axis (x-axis) pans.
Syntax
aaHistClientTrend.PanPercentage = integer;
Result = aaHistClientTrend.PanPercentage;
Remarks
The default value is 75.
PlaybackSpeed
This read-write property det ermines the playback speed in "replay" mode.
Syntax
aaHistClientTrend.PlaybackSpeed = real;
Result = aaHistClientTrend.PlaybackSpeed;
Remarks
For information on replay mode, see Showing Historical Dat a in "Replay" Mode.
Valid values are 0.5 to 128. The default value is 1 (normal speed).
PlotColor
The PlotColor property is a read-write property that gets or sets the color for the plot area of the graph.
Syntax
aaHistClientTrend.PlotColor = integer;
Result = aaHistClientTrend.PlotColor;
Remarks
For information on setting the color value, see Color.
The default value is 16777215.
PlotGradient
The PlotGradient property is a read-write property that gets or sets the type of plot gradient for the chart.
Syntax
aaHistClientTrend.PlotGradient = aaTrendGradientType;
Result = aaHistClientTrend.PlotGradient;
Remarks
The gradient starts with the main plot color and fades to the gradient end color. Use the PlotColor
property to set the main background color. Use the PlotGradientEndColor property to set the ending
gradient color.
For more information on the aaTrendGradient Type enumeration, see aaTrendGradientType
Enumeration.
The default value is 0.
PlotGradientEndColor
The PlotGradientEndColor property is a read-writ e property that gets or sets the gradient end color for
the plot area of the chart.
Syntax
aaHistClientTrend.PlotGradientEndColor = integer;
Result = aaHistClientTrend.PlotGradientEndColor;
Remarks
The gradient starts with the main plot color and fades to the gradient end color. Use the PlotColor
property to set the main plot color. Use the PlotGradient property to set the type of gradient fill .
For information on setting the color value, see Color.
The default value is 16777215.
PlotImage
The PlotImage property is a read-write property that gets or sets the plot image for the chart.
Syntax
aaHistClientTrend.PlotImage = message;
Result = aaHistClientTrend.PlotImage;
Remarks
The value of t his property is the folder path and filename for the image. Supported image types are .jpeg,
.gif, .bmp, and .png.
This property has no default value.
PrintShowActiveTag
The PrintShowActiveTag property is a read -write property that shows or hides the name of the active tag
in the chart area of printed trends.
Syntax
aaHistClientTrend.PrintShowActiveTag = discrete;
Result = aaHistClientTrend.PrintShowActiveTag;
Remarks
True = Show the tag; False = Hide the tag.
The default value is True.
PrintShowMarkers
The PrintShowMark ers property is a read -write property that shows or hides the markers in printed
trends.
Syntax
aaHistClientTrend.PrintShowMarkers = discrete;
Result = aaHistClientTrend.PrintShowMarkers;
Remarks
True = Show the markers; False = Hide the markers.
The default value is True.
PrintShowTitle
The PrintShowTitle property is a read -write property that shows or hides the print title in printed trends.
Syntax
aaHistClientTrend.PrintShowTitle = discrete;
Result = aaHistClientTrend.PrintShowTitle;
Remarks
True = Show the title; False = Hide the title.
The default value is True.
PrintTitle
The Print Title property is a read-write property that gets or sets the print title for the trend.
Syntax
aaHistClientTrend.PrintTitle = message;
Result = aaHistClientTrend.PrintTitle;
Remarks
This property has no default value.
PublicAnnotations
The PublicAnnotations property is a read-write property that shows or hides all public annotations in the
trend chart.
Syntax
aaHistClientTrend.PublicAnnotations = discrete;
Result = aaHistClientTrend.PublicAnnotations;
Remarks
The default value is True.
QueryTimeout
The Query Timeout property is a read-write property that gets or sets the amount of time, in seconds, that
the control waits for a query to be exec uted against the server before determining that the query failed.
Syntax
aaHistClientTrend.QueryTimeout = integer;
Result = aaHistClientTrend.QueryTimeout;
Remarks
This setting only applies to servers that you add or update dynamically using the AddServer method. All
other servers continue to use the timeout that you set in the server configuration dialog box.check this
The default value is 20.
RealTimeMode
The RealTimeMode property is a read-write property that enables or disables live or replay mode.
Syntax
aaHistClientTrend.RealTimeMode = discrete;
Result = aaHistClientTrend.RealTimeMode;
Remarks
Use the LiveModeRate or RealTimeRate properties to set the rate at which the trend is refreshed in live
or replay mode.
RealTimeRate
The RealTimeRate property is a read -write property that gets or sets the refresh interval in seconds for
live and replay mode.
Syntax
aaHistClientTrend.RealTimeRate = integer;
Result = aaHistClientTrend.RealTimeRate;
Remarks
The default value is 1.
Apart from the different unit of measure, this property serves the same purpose as the LiveModeRate
property.
RetrievalOptionsCycleCount
This read-write property controls the aaHistClient Trend control’s default number of cycles for
cycle-based data retrieval. This setting applies to all tags in a trend whose retrieval style is set to Style
selected at option level.
Syntax
aaHistClientTrend.RetrievalOptionsCycleCount = integer;
Result = aaHistClientTrend.RetrievalOptionsCycleCount;
Remarks
This property is only taken into account if both the Ret rievalOptions UseAutoCycles property and the
RetrievalOptionsUseResolution property are set to False. Also, it may be overridden by a retrieval style
setting. For more information, see Work ing with Retrieval Styles.
This property is relevant for all retrieval modes except the following: Delta, Full, and Slope.
Valid values: any positive integer or 0. If you specify 0, the cycle count is calculated automatically, just as
if the RetrievalOptionsUseAutoCycles property were set to True. The default value is 100.
RetrievalOptionsHistoryVersion
This read-write property det ermines the aaHistClient Trend cont rol’s default history source for data
retrieval. This setting applies to all tags in a trend whose retrieval style is set to Style selected at
option level.
Syntax
aaHistClientTrend.RetrievalOptionsHistoryVersion = aaRetrievalVersion;
Result = aaHistClientTrend.RetrievalOptionsHistoryVersion;
Remarks
For information on possible values, see aaRetrievalVersion Enumeration. This property is relevant for all
retrieval modes.
The default value is 0 (use the latest value).
RetrievalOptionsInterpolationType
This read-write property det ermines the aaHistClient Trend cont rol’s default interpolation type for data
retrieval. This setting applies to all tags in a trend whose retrieval style is set to Style selected at
option level.
Syntax
aaHistClientTrend.RetrievalOptionsInterpolationType = aaInterpolationType;
Result = aaHistClientTrend.RetrievalOptionsInterpolationType;
Remarks
For information on possible values, see aaInterpolationType Enumeration. This property is only relevant
for the following retrieval modes: Interpolated, Best Fit, Average, and Int egral.
The default value is 3 (use the default value of the server).
RetrievalOptionsNumStyles
This read-only property returns the number of retrieval styles that are available in the control.
Syntax
Result = aaHistClientTrend.RetrievalOptionsNumStyles;
Remarks
The count only includes retrieval styles for which a name is defined for the current locale. If no style
names at all are defi ned for the current locale, the count for the en locale is returned.
To return the name of a style with a specific number, use the RetrievalOptionsGetStyle method.
RetrievalOptionsQualityRule
This read-write property determines the aaHistCli ent Trend control’s default quality rule for data retrieval.
This setting applies to all tags in a trend whos e retrieval style is set to Style selected at option
level.
Syntax
aaHistClientTrend.RetrievalOptionsQualityRule = aaQualityRules;
Result = aaHistClientTrend.RetrievalOptionsQualityRule;
Remarks
For information on possible values, see aaQualityRules Enumeration. This property is relevant for all
retrieval modes except the following: Cyclic, Delta, and Full.
The default value is 3 (use the default value of the server).
RetrievalOptionsResolution
This read-write property controls the aaHistClient Trend control’s default time interval for calculating the
number of cycles in cycle-based data retrieval. This setting applies to all tags in a trend whose retrieval
style is set to Style selected at option level.
Syntax
aaHistClientTrend.RetrievalOptionsResolution = integer;
Result = aaHistClientTrend.RetrievalOptionsResolution;
Remarks
This property is only relevant if the RetrievalOptionsUseA utoCycles property is set to False, and the
RetrievalOptionsUseResolution property is set to True. Also, it may be overridden by a retrieval style
setting. For more information, see Work ing with Retrieval Styles.
The value of this property is a time interval in milliseconds. The aaHistClient Trend control divides the
query duration by this interval and uses the result as the number of cycles for the query.
This property is relevant for all retrieval modes except the following: Delta, Full, and Slope.
Valid values: any positive integer or 0. If you specify 0, the cycle count is calculated automatically, just as
if the RetrievalOptionsUseAutoCycles property were set to True. The default value is 1000.
RetrievalOptionsRetrievalMode
This read-write property det ermines the aaHistClient Trend cont rol’s default data retrieval mode. This
setting applies to all tags in a trend whose retrieval style is set to Style selected at option level.
Syntax
aaHistClientTrend.RetrievalOptionsRetrievalMode = aaRetrievalMode;
Result = aaHistClientTrend.RetrievalOptionsRetrievalMode;
Remarks
This property may be overridden by a retrieval style setting.
For more information, see Work ing with Retrieval Style. For information on possible values, see
aaRetrievalMode Enumeration.
The default value is 0 (cyclic). Make sure that the specified retrieval mode is supported by the AVEVA
Historian that the tags are stored on.
RetrievalOptionsRetrievalStyle
This read-write property det ermines the aaHistClient Trend cont rol’s default retrieval style. This setting
applies to all tags in a trend whose retrieval style is set to Style selected at option level.
Syntax
aaHistClientTrend.RetrievalOptionsRetrievalStyle = string;
Result = aaHistClientTrend.RetrievalOptionsRetrievalStyle;
Remarks
You must provide the retrieval style name for the current locale as it is defined in the retrieval style
document. For more information, see Location and Structure of Retrieval Styles. To find out how many
retrieval styles are available in the control, use the RetrievalOptions NumStyles property. To determine
the name of a retrieval style if you know its position in the list of available styles, use the
RetrievalOptionsGetStyle method.
Valid values: Custom style (or the translat ed equivalent for the current locale) and any retrieval style
name t hat is defined for the current locale in the retrieval style document. Values are case-s ensitive. If no
style names at all are available for the current locale, use the name for the en locale. The default style is
BestFit-5 (or the translat ed equivalent).
RetrievalOptionsRowLimit
This read-write property det ermines the aaHistClient Trend cont rol’s default row limit for data retrieval.
This setting applies to all tags in a trend whos e retrieval style is set to Style selected at option
level.
Syntax
aaHistClientTrend.RetrievalOptionsRowLimit = integer;
Result = aaHistClientTrend.RetrievalOptionsRowLimit;
Remarks
The row limit applies to each query. For more information, see RowLimit. This property is relevant for all
retrieval modes.
Valid values: any positive number or 0 (no row limit). The default value is 0.
RetrievalOptionsState
This read-write property determines the aaHistClient Trend control’s default state for which Time-in-State
data is retrieved for a tag. This setting applies to all tags in a trend whos e retrieval style is set to Style
selected at option level.
Syntax
aaHistClientTrend.RetrievalOptionsState = message;
Result = aaHistClientTrend.RetrievalOptionsState;
Remarks
This property is only relevant for Time -in-State ret rieval mode. It specifies the unique tag state for which
Time-in-State information is calculated bas ed on the calculation type specified by the
RetrievalOptionsStateCalculation property.
This property has no default value.
RetrievalOptionsStateCalculation
This read-write property det ermines the aaHistClient Trend cont rol’s default calculation type for
Time-in-State data retrieval. This setting applies to all tags in a trend whose retrieval style is set to Style
selected at option level.
Syntax
aaHistClientTrend.RetrievalOptionsStateCalculation = aaStateCalculation;
Result = aaHistClientTrend.RetrievalOptionsStateCalculation;
Remarks
For information on possible values, see aaStateCalculation Enumeration. This property is only relevant
for Time-in-State retrieval mode. Also, it may be overridden by a retrieval style setting. For more
information, see Work ing with Retrieval Styles.
The default value is 4 (percent).
RetrievalOptionsTimeDeadband
This read-write property det ermines the aaHistClient Trend cont rol’s default time deadband in
milliseconds for Delta data retrieval. This setting applies to all tags in a trend whose retrieval style is set
to Style selected at option level.
Syntax
aaHistClientTrend.RetrievalOptionsTimeDeadband = integer;
Result = aaHistClientTrend.RetrievalOptionsTimeDeadband;
Remarks
Valid values: any positive number or 0 (no deadband). This property is only relevant for Delta retrieval
mode. For more information on how this setting works, see Time Deadband (wwTimeDeadband).
The default value is 0 (no deadband).
RetrievalOptionsTimeStampRule
This read-write property det ermines the aaHistClient Trend cont rol’s default timestamp rule for dat a
retrieval. This setting applies to all tags in a trend whose retrieval style is set to Style selected at
option level.
Syntax
aaHistClientTrend.RetrievalOptionsTimeStampRule = aaTimeStampRules;
Result = aaHistClientTrend.RetrievalOptionsTimeStampRule;
Remarks
For information on possible values, see aaTimeStampRules Enumeration.
This property is only relevant for the following retrieval modes: Cyclic, Interpolated, Time -Weighted
A verage, Integral, Counter, and Time -in-State.
The default value is 3 (use the default value of the server).
RetrievalOptionsUseAutoCycles
This read-write property controls the aaHistClient Trend control’s default auto-calculation setting for
cycle-based data retrieval. This setting applies to all tags in a trend whose retrieval style is set to Style
selected at option level.
Syntax
aaHistClientTrend.RetrievalOptionsUseAutoCycles = discrete;
Result = aaHistClientTrend.RetrievalOptionsUseAutoCycles;
Remarks
If this property is set to True, the aaHistClient Trend control aut omatically calculates the number of cycles
for a query based on the width of the chart. For more information, see Cycle Count (X Values over Equal
Time Intervals) (wwCycleCount).
If it is set to False, you must specify the number of cycles manually. Use the
RetrievalOptionsUseResolution property to specify whether you want to provide a number of cycles or a
time interval. Then use the RetrievalOptions CycleCount property to specify the number of cycles, or the
RetrievalOptionsResolution property to specify the time interval.
This property is relevant for all retrieval modes except the following: Delta, Full, and Slope.
The default value is True.
RetrievalOptionsUseResolution
This read-write property controls the aaHistClient Trend control’s default behavior for determining the
number of cycles in cycle-based data retrieval. This setting applies to all tags in a trend whose retrieval
style is set to Style selected at option level.
Syntax
aaHistClientTrend.RetrievalOptionsUseResolution = discrete;
Result = aaHistClientTrend.RetrievalOptionsUseResolution;
Remarks
This property is only relevant if the RetrievalOptionsUseA utoCycles property is set to False.
If this property is set to False, the aaHistClient Trend control uses a fixed numbe r of cycles when
retrieving dat a using cycle-based retrieval modes. To specify the number of cycles, use the
RetrievalOptionsCycleCount property.
If it is set to True, the aaHistClient Trend control calculates the number of cycles based on the query
duration and a time interval. To specify this interval, use the RetrievalOptionsResolution property.
This property is relevant for all retrieval modes except the following: Delta, Full, and Slope.
The default value is False.
RetrievalOptionsValueDeadband
This read-write property det ermines the aaHistClient Trend cont rol’s default value deadband for Delta
data retrieval. This setting applies to all tags in a trend whose retrieval style is set to Style selected
at option level.
Syntax
aaHistClientTrend.RetrievalOptionsValueDeadband = real;
Result = aaHistClientTrend.RetrievalOptionsValueDeadband;
Remarks
The deadband is a percentage of the full scale in Engineering Units. Valid values are 0 (no deadband) to
100. This property is only relevant for Delta retrieval mode. For more information on how this setting
works, see Value Deadband (wwV alueDeadband).
The default value is 0 (no deadband).
RetrieveAnnotations
The RetrieveA nnotations property is a read -write property that enables or disables the retrieval of
annotations.
Syntax
aaHistClientTrend.RetrieveAnnotations = discrete;
Result = aaHistClientTrend.RetrieveAnnotations;
Remarks
The default value is True.
RetrieveExtensionData
The RetrieveExtensionData property is a read -write property that enables or disables the retrieval of data
from the extension tables.
Syntax
aaHistClientTrend.RetrieveExtensionData = discrete;
Result = aaHistClientTrend.RetrieveExtensionData;
Remarks
The extension data tables are logical tables that are populated from the AVEVA Historian data files.
These tables support the historian time domain extensions for handling data.
The default value is True.
RetrieveManualData
The RetrieveManualData property is a read-write property that enables or disables the ret rieval of dat a
from the manual data tables.
Syntax
aaHistClientTrend.RetrieveManualData = discrete;
Result = aaHistClientTrend.RetrieveManualData;
Remarks
The manual data tables are normal SQL Server tables that are used to store data.
The default value is True.
RTRate
The RTRate property is a read-write property that gets or sets the live mode refresh interval, in seconds.
Syntax
aaHistClientTrend.RTRate = object;
Result = aaHistClientTrend.RTRate;
Remarks
Do not use. Only provided for backward compatibility. Use the RealTimeRate property instead.
Remarks
The default value is 1.
Rubberband
The RubberB and property is a read-write property that enables or disables rubber band scaling.
Syntax
aaHistClientTrend.RubberBand = discrete;
Result = aaHistClientTrend.RubberBand;
Remarks
Provided for backward compatibility. Use the RubberBandScaling property instead.
Remarks
The default value is False.
RubberbandAll
The RubberbandAll property is a read -write property that indicates whether all tags are scaled by rubber
band scaling or just the selected tags.
Syntax
aaHistClientTrend.RubberbandAll = discrete;
Result = aaHistClientTrend.RubberbandAll;
Remarks
The default value is True.
RubberBandScaling
The RubberB andScaling property is a read-write property that enables or disables rubber band scaling.
Syntax
aaHistClientTrend.RubberBandScaling = discrete;
Result = aaHistClientTrend.RubberBandScaling;
Remarks
The default value is False.
Servers
The Servers property is a read-only property that gets the server list.
Syntax
Result = aaHistClientTrend.Servers;
Remarks
This property has no default value.
Return Value
The res ult is an aaServers object. For more information on the aaS ervers object, see aaServers Object.
ShowLimits
The ShowLimits property is a read-write property that shows or hides the limits for a tag.
Syntax
aaHistClientTrend.ShowLimits = discrete;
Result = aaHistClientTrend.ShowLimits;
Remarks
The default value is True.
ShowValuesAtCursor
The ShowValuesAtCursor property is a read-write property that shows/hides data values at the trend
cursors along the val ue axis.
Syntax
aaHistClientTrend.ShowValuesAtCursor = discrete;
Result = aaHistClientTrend.ShowValuesAtCursor;
Remarks
The default value is False.
If the ShowValuesAtCursor property is set to True, the ValueAxisLabel property is set to 2, and values at
cursors are shown in the chart. If the ShowValuesAtCursor property is set to False, the ValueAxisLabel
property is set to 0, and multiple scales are shown in the chart.
ShowWaitCursor
The ShowWaitCursor property is a read-write property that controls the usage of the wait cursor
(hourglass).
Syntax
aaHistClientTrend.ShowWaitCursor = discrete;
Result = aaHistClientTrend.ShowWaitCursor;
Remarks
The default value is False.
If the ShowWaitCursor property is set to true, the wait cursor (hourglass) is shown when you move the
pointer over the toolbar, time bar, or the Servers pane or the Filters pane in the Tag Picker.
The ShowWaitCursor property setting does not override the wait cursor of the Tr end. For example, if the
ShowWait Cursor property is set to false, the Trend still shows a wait cursor during a refresh. This
property only provides an option to force the wait cursor at other times.
ShowXAxisCursors
The ShowXAxisCursors property is a read-write property that shows or hides the time axis (x -axis)
cursors.
Syntax
aaHistClientTrend.ShowXAxisCursors = discrete;
Result = aaHistClientTrend.ShowXAxisCursors;
Remarks
The default value is False.
ShowYAxisCursor
The ShowYAxisCursor property is a read-write property that shows or hides the value axis (y-axis)
cursors.
Syntax
aaHistClientTrend.ShowYAxisCursor = discrete;
Result = aaHistClientTrend.ShowYAxisCursor;
Remarks
The default value is False.
SingleTagMode
The SingleTagMode property is a read-write property that controls whet her to show only the currently
selected tag or all tags.
Syntax
aaHistClientTrend.SingleTagMode = discrete;
Result = aaHistClientTrend.SingleTagMode;
Remarks
The default value is False.
StartDate
The StartDate property is a read-only property that gets the timestamp at the left edge of the trend.
Syntax
Result = aaHistClientTrend.StartDate;
ReturnValue
The result is a DateTime data type. For information on the date/time value, see DateTime on page 675.
This property has no default value.
SummaryDataMode
This property is included for backward compatibility only. Its value is ignored.
Syntax
aaHistClientTrend.SummaryDataMode = discrete;
Result = aaHistClientTrend.SummaryDataMode;
Remarks
To retrieve summarized data, use a ret rieval style instead. For more information, see Work ing with
Retrieval Styles.
SupressErrors
The SupressErrors property is a read -write property that suppresses or allows errors.
Syntax
aaHistClientTrend.SupressErrors = discrete;
Result = aaHistClientTrend.SupressErrors;
Remarks
The default value is False.
TagGridOrientation
The TagGridOrientation property is a read-writ e property that orients the tag list vertically or horizontally.
Syntax
aaHistClientTrend.TagGridOrientation = integer;
Result = aaHistClientTrend.TagGridOrientation;
Remarks
0 = Horizontal; 1 = Vertical.
The default value is 0.
TagListRows
The TagListRows property is a read-write property that sets the height of the Tag List pane in the Trend
control.
Syntax
aaHistClientTrend.TagListRows = integer;
Result = aaHistClientTrend.TagListRows;
Remarks
If the value of TagListRows is 0, the Tag List pane is not visible.
TagPicker
The TagPicker property is a read-only property that gets the TagPicker object used in the Trend control.
Syntax
Result = aaHistClientTrend.TagPicker;
Return Value
The return value is an aaHistClient TagPicker control. For more information on this control, see
aaHistClientTagPick er Control.
TagPickerVisible
The TagPickerVisible property is a read-write property that shows or hides the Tag Picker in the Trend
control.
Syntax
aaHistClientTrend.TagPickerVisible = discrete;
Result = aaHistClientTrend.TagPickerVisible;
Remarks
The default value is True.
TargetRegionExcursionType
The TargetRegionExcursionType property is a read -write property that determines whether the values
that fall outside the target region of a tag are highlight ed.
Syntax
aaHistClientTrend.TargetRegionExcursionType = aaTargetRegionExcursionType;
Result = aaHistClientTrend.TargetRegionExcursionType;
Remarks
For information on possible values, see aaTarget RegionE xcursionType Enumeration.
The default value is 1 (highlight values in a special color).
TargetRegionOpacity
The TargetRegionOpacity is a read-write property that determines the opacity of a tag’s target region.
Syntax
aaHistClientTrend.TargetRegionOpacity = integer;
Result = aaHistClientTrend.TargetRegionOpacity;
Remarks
A value of 0 means transparent, 100 means fully opaque. The default value is 20.
TimeAxisLabelColor
The TimeAxisLabelColor property is a read-write property that changes the color of the text labels that
show the time in the chart area of the Trend control.
Syntax
aaHistClientTrend.TimeAxisLabelColor = integer;
Result = aaHistClientTrend.TimeAxisLabelColor;
Remarks
When the value of the TimeAxisLabelColor property changes, the color of the time -axis text labels also
change. For more information on setting the color value, see Color.
The default value is 0.
TimeBarVisible
The TimeB arVisible property is a read-writ e property that shows or hides the time and main toolbars in
the Trend control.
Syntax
aaHistClientTrend.TimeBarVisible = discrete;
Result = aaHistClientTrend.TimeBarVisible;
Remarks
The default value is True.
TimeBarVisible2
The TimeB arVisible2 property is a read -write property that shows or hides the time toolbar in the Trend
control.
Syntax
aaHistClientTrend.TimeBarVisible2 = discrete;
Result = aaHistClientTrend.TimeBarVisible2;
Remarks
This property is provided for backward compatibility. Alternatively, you can use the TimeB arVisible
property, which shows or hides the main toolbar as well as the time toolbar.
The default value is True.
TimeSelector
The TimeS elector property is a read-only property that gets the Time Range Picker object used in the
Trend control.
Syntax
Result = aaHistClientTrend.TimeSelector;
Return Value
The return value is an aaHistClient TimeRangePicker control. For more information on this control, see
aaHistClientTimeRangePick er Control.
ToolBarVisible
The ToolBarVisible property is a read -write property that shows or hides the main toolbar in the Trend
control.
Syntax
aaHistClientTrend.ToolBarVisible = discrete;
Result = aaHistClientTrend.ToolBarVisible;
Remarks
The default value is True.
ToolbarVisible2
The ToolBarVisible2 property is a read-write property that shows or hides the main toolbar in the Trend
control.
Syntax
aaHistClientTrend.ToolBarVisible2 = discrete;
Result = aaHistClientTrend.ToolBarVisible2;
Remarks
This property is provided for backward compatibility only. Use the ToolB arVisible property instead.
The default value is True.
ToolTipText
The ToolTipText property is a read-write property that gets or sets the pop-up text that appears when the
mouse cursor is hovered over the control at runtime.
Syntax
aaHistClientTrend.ToolTipText = message;
Result = aaHistClientTrend.ToolTipText;
Remarks
The default is an empty message value ( "" ).
TraceGradientEndingPercentage
This read-write property det ermines the ending opacity of a scatter plot trace if a gradient is used.
Syntax
aaHistClientTrend.TraceGradientEndingPercentage = integer;
Result = aaHistClientTrend.TraceGradientEndingPercentage;
Remarks
The ending opacity applies to the latest data point in the scatter plot. A value of 0 means transparent, 100
means fully opaque. The default value is 100. This property is only used if the Trac eGradientType
property is set to use a gradient.
TraceGradientStartingPercentage
This read-write property det ermines the starting opacity of a scatter plot trace if a gradient is used.
Syntax
aaHistClientTrend.TraceGradientStartingPercentage = integer;
Result = aaHistClientTrend.TraceGradientStartingPercentage;
Remarks
The starting opacity applies to the earliest data point in the scatter plot. A value of 0 means transparent,
100 means fully opaque. The default value is 20. This property is only used if the TraceGradientType
property is set to use a gradient.
TraceGradientType
This read-write property det ermines whether a gradient is applied to the trace(s) in a scatter plot.
Syntax
aaHistClientTrend.TraceGradientType = aaTraceGradientType;
Result = aaHistClientTrend.TraceGradientType;
Remarks
For information on possible values, see aaTraceGradientType Enumeration.
The default value is 1 (opacity gradient ).
TrendFontSize
This read-write property gets or sets the font size of the trend.
Syntax
aaHistClientTrend.TrendFontSize = integer;
Result = aaHistClientTrend.TrendFontSize;
UpdateToCurrentTimeState
This read-write property det ermines whether the Update to Current Time option is enabled.
Syntax
aaHistClientTrend.UpdateToCurrentTimeState = aaUpdateToCurrentTimeState;
Result = aaHistClientTrend.UpdateToCurrentTimeState;
Remarks
For information on how this option works in different scenarios, see Time Pick er, Refreshing the Trend
Chart, and Showing Live Data.
For information on possible values, see aaUpdateToCurrentTimeState E numeration.
The default value is 1 (option is enabled).
UseIniFile
Do not use. Obsolete.
Syntax
aaHistClientTrend.UseIniFile = integer;
Result = aaHistClientTrend.UseIniFile;
Remarks
The default value is 0.
ValueAxisLabel
The ValueAxisLabel property is a read -write property that gets or sets the value axis labeling.
Syntax
aaHistClientTrend.ValueAxisLabel = aaValueAxisLabelEnumeration;
Result = aaHistClientTrend.ValueAxisLabel;
Remarks
The default value is 0 (MultipleScales).
For more information on value axis labeling, see Scaling Tags. For more information on the
aaValueAxisLabelEnumeration enumeration, see aaValueAxisLabelEnumeration Enumeration.
If the ShowValuesAtCursor property is set to True, the ValueAxisLabel property is set to 2, and values at
cursors are shown in the chart. If the ShowValuesAtCursor property is set to False, the ValueAxisLabel
property is set to 0, and multiple scales are shown in the chart.
XCursor1Color
The XCursor1Color property is a read -write property that gets or sets the color for first time axis cursor.
Syntax
aaHistClientTrend.XCursor1Color = integer;
Result = aaHistClientTrend.XCursor1Color;
Remarks
For information on setting the color value, see Color.
The default value is 255.
XCursor1Pos
The XCursor1Pos property is a read-write property that controls the position of the first time axis cursor.
Syntax
aaHistClientTrend.XCursor1Pos = DateTime;
Result = aaHistClientTrend.XCursor1Pos;
Remarks
The value is given as a date/time value. For information on the date/time value format, see DateTime.
To control the position of t he first X axis cursor in a scatter plot, use the CurrentValOfX1 property instead.
This property has no default value.
XCursor2Color
The XCursor2Color property is a read -write property that gets or sets the color for second time axis
cursor.
Syntax
aaHistClientTrend.XCursor2Color = integer;
Result = aaHistClientTrend.XCursor2Color;
Remarks
For information on setting the color value, see Color.
The default value is 16711680.
XCursor2Pos
The XCursor2Pos property is a read-write property that controls the position of the second time axis
cursor.
Syntax
aaHistClientTrend.XCursor2Pos = DateTime;
Result = aaHistClientTrend.XCursor2Pos;
Remarks
The value is given as a date/time value. For information on the date/time value format, see DateTime.
To control the position of the second X axis cursor in a scatter plot, use the CurrentValOfX2 property
instead.
This property has no default value.
YCursor1Color
The YCursor1Color property is a read-write property that gets or sets the color for first value axis cursor.
Syntax
aaHistClientTrend.YCursor1Color = integer;
Result = aaHistClientTrend.YCursor1Color;
Remarks
For information on setting the color value, see Color.
The default value is 32768.
YCursor2Color
The YCursor2Color property is a read -write property that gets or sets the color for second value axis
cursor.
Syntax
aaHistClientTrend.YCursor2Color = integer;
Result = aaHistClientTrend.YCursor2Color;
Remarks
For information on setting the color value, see Color. The default value is 32768.
ZoomOutPercentage
The ZoomOutPercent age property is a read-write property that gets or sets the percentage (1 to 100) to
zoom by when zooming out on the trend chart.
Syntax
aaHistClientTrend.ZoomOutPercentage = integer;
Result = aaHistClientTrend.ZoomOutPercentage;
Remarks
The default value is 25.
aaHistClientTrend Methods
The following are the methods used by the aaHistClient Trend:
AboutBox
AddAnyTag
AddServer
AddServerE x
AddTag
ClearTags
CurrentTagGetStyle
Delet eCurrentTag
FileNew on page 358
FileOpen
FileOpenE x
FileSave
FileSaveEx
Get MenuItemEnabled
GetTagColor
GetTagFormat
GetTagOffsetMS
GetTagP enStyle
GetTagP enWidth
GetTagP recision
GetTagV alAtX1
GetTagV alAtX2
GetTagVisible
GetToolbarButtonE nabled
GraphStack
LoadCRVString
LoadTargetRegionFromFile
ManualConnect
MoveNextTag
MovePrevTag
PanLeft
PanRight
PrintGraph
PrintGraphDlg
PropertiesDlg
RefreshData
RemoveServer
RemoveServerE x
RemoveTag
RetrievalOptionsGetStyle
SaveDat a
SaveImage
SaveS ettings
ScaleAllTags
ScaleAllTagsDlg
ScaleAutoAllTags
ScaleAutoTag
ScaleDownAllTags on page 370
ScaleDownTag
ScaleMoveAllTagsDown
ScaleMoveAllTagsUp
ScaleMoveTagDown
ScaleMoveTagUp
ScaleTag
ScaleTagDlg
ScaleUpAllTags
ScaleUpTag
SetCurrentTag
SetCurrentTagXA xisTag
SetCurrentTagXA xisTagIndex
SetDates
SetDuration
SetMenuItemE nabled
SetTagColor
SetTagFormat
SetTagColorDlg
SetTagOffset MS
SetTagPenStyle
SetTagPenWidth
SetTagPrecision
SetTagVisible
SetTimeSpan
SetToolbarB uttonEnabled
ShowStatistics
ZoomIn
ZoomOut
AboutBox
The AboutBox method shows the About dialog box for the control.
Syntax
[Result=] aaHistClientTrend.AboutBox();
AddAnyTag
The AddA ny Tag method verifies and adds a tag to the trend.
Syntax
[Result=] aaHistClientTrend.AddAnyTag(message serverName, message tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
Returns True if the tag was added; otherwise returns False.
Remarks
The tag can be on any server. This method first checks if the tag exists before adding it. The AddTag
method also adds a tag, but it does not per form the checking and is thus more efficient.
If you specify a server name that is part of the current server list, but is currently disconnected, an attempt
is made to connect to the s erver. If the authentication credentials are correct, the server is log ged on, and
the tag added.
If you specify a server name that is not part of the current server list, the runtime user is prompted to add
the server name to the server list. A False is returned. If you want to suppress the notification, use the
SupressErrors property. For more information, see SupressErrors.
AddServer
The AddS erver method adds a server to the list.
Syntax
[Result=] aaHistClientTrend.AddServer(message serverName, message loginName,
message password, [discrete bPersistPassword]);
Parameters
serverName
AddServerEx
The AddS erver method adds a server to the list.
Syntax
[Result=] aaHistClientTrend.AddServerEx(message serverName, message loginName,
message password, [discrete bPersistPassword]);
Parameters
serverName
The name of the server.
loginName
A valid user name to log on to the server. If no login name is provided, Windows integrated security is
used.
pass word
A valid password for the server.
bPersistPassword
If set to True, the password is remembered for the subsequent connection. The password is only
remembered for single application; the persisted password is not available to all applications.
Return Value
Returns True if the server can be added; otherwise returns False.
Remarks
All parameters are required. Errors, if any, are reported.
AddTag
The AddTag method adds the specified tag to the trend.
Syntax
[Result=] aaHistClientTrend.AddTag(message serverName, message newTag, integer
tType);
Parameters
serverName
The name of the server for which to add the tag.
newt ag
The name of the tag to add.
tType
The type of tag. This parameter is provided for backward compatibility and does not have any effect
on the outcome of the operation. However, you must still specify one of the following valid values: 1,
2, 3, or 5.need more
Return Value
Returns True if the tag can be added; otherwise returns False.
ClearTags
The ClearTags method removes all tags from the trend.
Syntax
[Result=] aaHistClientTrend.ClearTags();
CurrentTagGetStyle
This method ret urns the name of a ret rieval style based on its index in the list of available retrieval styles
for the currently selected tag.
Syntax
Result = aaHistClientTrend.CurrentTagGetStyle(integer styleNumber);
Parameters
styleNumber
The index of the style whose name you want to retrieve. Counting starts at 0.
Return Value
Returns the style’s name as defined for the current locale. If no style names are defined for the current
locale, the name in the en locale is returned.
Remarks
To find out how many retrieval styles are available for the current tag, use the CurrentTagNumSt yles
property.
DeleteCurrentTag
The DeleteCurrent Tag method deletes the currently selected tag.
Syntax
[Result=] aaHistClientTrend.DeleteCurrentTag();
Return Value
Returns True if the tag can be delet ed; otherwise returns False.
FileNew
The FileNew method creates a new file and then resets the trend to the default properties.
Syntax
[Result=] aaHistClientTrend.FileNew();
Return Value
Returns True if the file is successfully created; otherwise ret urns False.
FileOpen
The FileOpen method opens the specified trend file.
Syntax
[Result=] aaHistClientTrend.FileOpen([message fileName]);
Parameters
fileName
Optional parameter. The full path to the trend file to open.
Return Value
Returns True if the file can be successfully opened; otherwise, returns False.
Remarks
Any errors are reported.
FileOpenEx
The FileOpenEx method opens the specified trend file.
Syntax
[Result=] aaHistClientTrend.FileOpenEx([message fileName]);
Parameters
fileName
The full path to the trend file to open.
Return Value
Returns True if the file can be successfully opened; otherwise, returns False.
Remarks
All parameters are required. Errors, if any, are reported.
FileSave
The FileS ave method saves the trend to the specified file.
Syntax
[Result=] aaHistClientTrend.FileSave([message fileName]);
Parameters
fileName
Optional parameter. The name of the trend file to save.
Return Value
Returns True if the file can be successfully saved; otherwise, returns False.
Remarks
Any Errors are reported.
FileSaveEx
The FileS aveEx method saves the trend to the specified file.
Syntax
[Result=] aaHistClientTrend.FileSaveEx([message fileName]);
Parameters
fileName
The name of the trend file to save.
Return Value
Returns True if the file can be successfully saved; otherwise, returns False.
Remarks
All parameters are required. Errors, if any, are reported.
GetMenuItemEnabled
Use the GetMenuItemE nabled method to check if a specific command in the context menu is enabled.
Syntax
[Result=] aaHistClientTrend.GetMenuItemEnabled(integer itemNumber);
Parameters
itemNumber
The index number of the command. Numbering starts at 0.
Return Value
Returns True if the menu item is enabled; otherwise, returns False.
Remarks
If you specify -1 as the itemNumber parameter, the method checks the status of all items in the menu.
GetTagColor
The Get TagColor method gets the line color of the tag curve in the trend.
Syntax
[Result=] aaHistClientTrend.GetTagColor(message serverName, message tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
Returns an integer that specifies the color. For information on the color value, see Color.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
GetTagFormat
The Get TagFormat method gets how the values for the tag appear, either in decimal format or sc ientific
format.
Syntax
[Result=] aaHistClientTrend.GetTagFormat(message serverName, message tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
Returns an integer. 0 = Decimal; 1 = Scientific.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
GetTagOffsetMS
The Get TagOffs etMS method gets the amount of time t hat the trend curve is shift ed from the actual time.
Syntax
[Result=] aaHistClientTrend.GetTagOffsetMS(message serverName, message
tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
The result is an integer value for the tag offset in milliseconds. For more information, see Using Time
Offsets to Compare Dat a.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
GetTagPenStyle
The Get TagP enStyle met hod gets the style of the trend curve for the currently selected tag. For example,
a solid or dashed line.
Syntax
[Result=] aaHistClientTrend.GetTagPenStyle(message serverName, message
tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
Returns the pen style as an integer value. Valid values are:
0 Solid
1 Dashed
2 Dotted
3 DashDot
4 DashDot Dot
5 Alternate
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.GetTagP recision.
GetTagPenWidth
The Get TagPenWidth method gets the thickness of the trend curve for the selected tag.
Syntax
[Result=] aaHistClientTrend.GetTagPenWidth(message serverName, message
tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
The width, in pixels, of the pen as an integer.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
GetTagPrecision
The Get TagP recision method gets the number of decimal places to show for the data value of the
currently selected tag. This applies only to analog tags.
Syntax
[Result=] aaHistClientTrend.GetTagPrecision(message serverName, message
tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
The decimal places (precision) for the tag as an integer.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
GetTagValAtX1
The Get TagValAt X1 method gets the value of the specified tag at the point at which the curve intersects
with the first time axis cursor.
Syntax
[Result=] aaHistClientTrend.GetTagValAtX1(message serverName, message
tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
The tag value as a real.
Remarks
For more information on cursors, see Using Axis Cursors. If the specified tag is shown in the chart
multiple times, the method uses the first instance that was added.
In a scatter plot, this method behaves as if the X axis were a time axis and the X axis cursors were time
cursors. For example, if the plot shows data from 3:00 PM to 4:00 PM, and the cursor is exactly at the
middle of the X axis, this method returns the value of the tag at 3:30 PM.
GetTagValAtX2
The Get TagValAt X2 method gets the value of the specified tag at the point at which the curve intersects
with the second time axis cursor.
Syntax
[Result=] aaHistClientTrend.GetTagValAtX2(message serverName, message
tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
The tag value as a real.
Remarks
For more information on curs ors, see Using Axis Cursors on page 57. If the specified tag is shown in the
chart multiple times, the method uses the first instance that was added.
In a scatter plot, this method behaves as if the X axis were a time axis and the X axis cursors were time
cursors. For example, if the plot shows data from 3:00 PM to 4:00 PM, and the cursor is exactly at the
middle of the X axis, this method returns the value of the tag at 3:30 PM.
GetTagVisible
The Get TagVisible method gets whether the selected tag is visible in the trend chart.
Syntax
[Result=] aaHistClientTrend.GetTagVisible(message serverName, message
tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
The visibility as a discrete. False = Not visible; True = Visible.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
GetToolbarButtonEnabled
Use the Get ToolbarB uttonEnabled method to check if a specific button in the toolbar is enabled.
Syntax
[Result=] GetToolbarButtonEnabled(integer buttonNumber);
Parameters
buttonNumber
The index number of the toolbar button. Numbering starts at 0.
Return Value
Returns True if the button is enabled; otherwise, returns False.
GraphStack
This method toggles the chart bet ween "stacked" mode (one tag curve on top of the other) and
non-stacked mode.
Syntax
[Result=] aaHistClientTrend.GraphStack();
Return Value
Returns True if the operation was successful.
LoadCRVString
The LoadCRVString method is an obsolet e method. Do not use.
Syntax
[Result=] aaHistClientTrend.LoadCRVString(message crv);
LoadTargetRegionFromFile
This method sets a target region for the currently selected tag based on values read from a CSV file. It
replaces any existing target region that may already be defined for the tag.
Syntax
[Result=] aaHistClientTrend.LoadTargetRegionFromFile(message source);
Parameters
source
The location of the file containing the target region items. This can be a local file name or a URL.
Return Value
Returns True if the tag’s target region was set successfully; otherwise, returns False, and the tag’ s
existing target region is left unchanged.
Remarks
For information on file format requirements, see Defining a Target Region for a Tag for regular trends,
and Defining a Target Region for a Scatter Plot for scatter plots.
ManualConnect
The ManualConnect method opens the Server connection dialog box.
Syntax
[Result=] aaHistClientQuery.ManualConnect();
MoveNextTag
The MoveNext Tag method sets the current tag to the next tag in the tag list.
Syntax
[Result=] aaHistClientTrend.MoveNextTag();
Return Value
Returns True if the operation was successful; otherwise, False is returned. If you call this method while
the last tag in the list is selected, the current tag is set to the first tag in the list.
MovePrevTag
The MoveP revTag method sets the current tag to the previous tag in the tag list.
Syntax
[Result=] aaHistClientTrend.MovePrevTag();
Return Value
Returns True if the operation was successful; otherwise, returns False. If you call this method while the
first tag in the list is selected, the first tag remains the current tag.
PanLeft
The PanLeft method pans the trend to the left by the amount specified by pan percentage.
Syntax
[Result=] aaHistClientTrend.PanLeft();
Return Value
Returns True if the time range for the panning can be set; otherwise, returns False.
Remarks
The pan percent age is set using the PanPercentage property.
PanRight
The PanRight method pans the trend to the right by the amount specified by pan percentage.
Syntax
[Result=] aaHistClientTrend.PanRight();
Return Value
Returns True if the time range for the panning can be set; otherwise, returns False.
Remarks
The pan percent age is set using the PanPercentage property.
PrintGraph
The PrintGraph met hod prints the trend chart to the default printer.
Syntax
[Result=] aaHistClientTrend.PrintGraph();
PrintGraphDlg
The PrintGraphDlg method displays the Print dialog box, allowing the runtime user to choose the printer
to which to print the trend chart.
Syntax
[Result=] aaHistClientTrend.PrintGraphDlg();
PropertiesDlg
The PropertiesDlg method opens the Trend Properties dialog box.
Syntax
[Result=] aaHistClientTrend.PropertiesDlg();
RefreshData
The RefreshDat a method refreshes the trend chart by retrieving new data for all tags.
Syntax
[Result=] aaHistClientTrend.RefreshData();
Return Value
Returns True if the trend was successfully updated; otherwise, returns False.
Remarks
Data is requested from the databases as necessary. This method ensures that all tags within the trend
that can be synchronized are synchronized.
RemoveServer
The RemoveS erver method removes the specified server from the servers list. If no server is specified,
this method removes the entire server list.
Syntax
[Result=] aaHistClientTrend.RemoveServer([message serverName]);
Parameters
serverName
Optional parameter. The name of the server to remove.
Return Value
Returns True if the server was successfully removed; otherwise, returns False.
RemoveServerEx
The RemoveS erverEx method removes the specified server from the servers list. If no server is
specified, this method removes the entire server list.
Syntax
[Result=] aaHistClientTrend.RemoveServerEx([message serverName]);
Parameters
serverName
The name of the server to remove.
Return Value
Returns True if the server was successfully removed; otherwise, returns False.
Remarks
All parameters are required. Errors, if any, are reported.
RemoveTag
The RemoveTag method removes the specified tag from the trend.
Syntax
[Result=] aaHistClientTrend.RemoveTag(message serverName, message tagName);
Parameters
serverName
The name of the server that the tag is stored on.
tagName
The name of the tag to remove.
Return Value
Returns True if the tag was successfully removed; otherwise, returns False. If a tag is shown in the chart
multiple times, the method removes the first instance that was added.
RetrievalOptionsGetStyle
This method returns the name of a ret rieval style based on its index in the list of retrieval styles that are
available in the control.
Syntax
Result = aaHistClientTrend.RetrievalOptionsGetStyle(integer styleNumber);
Parameters
styleNumber
The index of the style whose name you want to retrieve. Counting starts at 0.
Return Value
Returns the style’s name as defined for the current locale. If no style names are defined for the current
locale, the name in the en locale is returned.
Remarks
To find out how many retrieval styles are available in the cont rol, use the RetrievalOptionsNumStyles
property.
SaveData
The SaveData method optionally prompts the runtime user and saves the trend data (in the "wide"
format) or image to a file or to the clipboard.
Syntax
[Result=] aaHistClientTrend.SaveData(integer format, message fileName);
Parameters
format
The type of output:
100 Opens the Save dialog box to save the trend data in
CSV or tab-delimited format.
fileName
The name of the file.
Return Value
Returns True if the operation was successful; otherwise, returns False.
SaveImage
The SaveImage met hod saves the trend image to a JPEG file.
Syntax
[Result=] aaHistClientTrend.SaveImage(message fileName);
Parameters
fileName
The name of the file. If you leave this value empty and the current trend has no file name, an error
message appears when the method is executed. If you leave this value empty and the current trend
has a file name, the file is saved using the trend’s file name with a .JPG extension.
Return Value
Returns True if the file was successfully saved; otherwise, returns False.
SaveSettings
The SaveSettings method saves the current file.
Syntax
[Result=] aaHistClientTrend.SaveSettings();
Return Value
Returns True if the file was successfully saved; otherwise, returns False.
Remarks
If no file name currently exists, the user is prompted to specify a file name.
ScaleAllTags
The ScaleAllTags method sets the y-axis scale for all tags in the chart.
Syntax
[Result=] aaHistClientTrend.ScaleAllTags(real min, real max);
Parameters
min
The minimum value for the value (y-axis) scale.
max
The maximum value for the value (y-axis) scale.
Return Value
Returns True if the tags were successfully scaled; otherwise, returns False.
ScaleAllTagsDlg
The ScaleAllTagsDlg method opens a dialog box that allows the user to ent er new minimum and
maximum scale values for all tags in the chart.
Syntax
[Result=] aaHistClientTrend.ScaleAllTagsDlg();
Return Value
Returns True if the tags were scaled as a result of this operation; otherwise, returns False (for example,
if the user clicked Cancel in the dialog box).
ScaleAutoAllTags
The ScaleAut oAllTags method sets a suitable y-axis scale for all tags in the chart according to the
currently displayed minimum and maximum values.
Syntax
[Result=] aaHistClientTrend.ScaleAutoAllTags();
Return Value
Returns True if the scale was successfully set; otherwise, returns False.
ScaleAutoTag
The ScaleAut oTag method sets a suitable y-axis scale for the currently selected tag according to the
currently displayed minimum and maximum values.
Syntax
[Result=] aaHistClientTrend.ScaleAutoTag();
Return Value
Returns True if the scale was successfully set; otherwise, returns False.
ScaleDownAllTags
This method inc reas es the value range of all tags in the chart by one third.
Syntax
[Result=] aaHistClientTrend.ScaleDownAllTags();
Return Value
Returns True if the scaling was successful; otherwise, returns False.
ScaleDownTag
This method inc reas es the value range of the currently selected tag by one third.
Syntax
[Result=] aaHistClientTrend.ScaleDownTag();
Return Value
Returns True if the scaling was successful; otherwise, returns False.
ScaleMoveAllTagsDown
The ScaleMoveAllTags Down method moves the value scale down for all tags in the chart.
Syntax
[Result=] aaHistClientTrend.ScaleMoveAllTagsDown();
Return Value
Returns True if the scaling was successful; otherwise, returns False.
ScaleMoveAllTagsUp
The ScaleMoveAllTags Up met hod moves the value scale up for all tags in the chart.
Syntax
[Result=] aaHistClientTrend.ScaleMoveAllTagsUp();
Return Value
Returns True if the scaling was successful; otherwise, returns False.
ScaleMoveTagDown
The ScaleMoveTagDown method moves the value scale down for the currently selected tag.
Syntax
[Result=] aaHistClientTrend.ScaleMoveTagDown();
Return Value
Returns True if the scaling was successful; otherwise, returns False.
ScaleMoveTagUp
The ScaleMoveTagUp method moves the value scale up for the currently selected tag.
Syntax
[Result=] aaHistClientTrend.ScaleMoveTagUp();
Return Value
Returns True if the scaling was successful; otherwise, returns False.
ScaleTag
The ScaleTag method sets the y-axis scale for the currently selected tag.
Syntax
[Result=] aaHistClientTrend.ScaleTag(real min, real max);
Parameters
min
The minimum value for the value (y-axis) scale.
max
The maximum value for the value (y-axis) scale.
Return Value
Returns True if the tag was successfully scaled; otherwis e, returns False.
ScaleTagDlg
The ScaleTagDlg method opens a dialog box that allows the user to enter new minimum and maximum
scale values for the currently selected tag.
Syntax
[Result=] aaHistClientTrend.ScaleTagDlg();
Return Value
Returns True if the tag was scaled as a result of this operation; otherwise, returns False (for example, if
the user clicked Cancel in the dialog box).
ScaleUpAllTags
This method decreases the value range of all tags in the chart by one fourth.
Syntax
[Result=] aaHistClientTrend.ScaleUpAllTags();
Return Value
Returns True if the scaling was successful; otherwise, returns False.
ScaleUpTag
This method decreases the value range of the currently selected tag by one fourth.
Syntax
[Result=] aaHistClientTrend.ScaleUpTag();
Return Value
Returns True if the scaling was successful; otherwise, returns False.
SetCurrentTag
The SetCurrent Tag met hod sets the specified tag to be the current tag.
Syntax
[Result=] aaHistClientTrend.SetCurrentTag(message serverName, message
tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
Return Value
The return value is a discrete. Ret urns True if successful; otherwise returns False.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
SetCurrentTagXAxisTag
This method configures the currently selected tag in a scatter plot to use another tag from the tag list as
its X axis tag. The X axis tag is identified by its server and name.
Syntax
[Result=] aaHistClientTrend.SetCurrentTagXAxisTag(message serverName, message
tagName);
Parameters
serverName
The name of the server that the tagName tag is stored on.
tagName
The name of the tag that you want to use as the X axis tag for the current tag. The tag must already
be contained in the tag list.
Return Value
The return value is a discrete. Ret urns True if successful; otherwise returns False. Possible causes of
failures include:
No tag is currently selected.
No tag matches the specified parameters.
The current tag is not an analog or discrete tag.
The designat ed X axis tag is the current tag itself.
The designat ed X axis tag is not an analog or discrete tag.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
SetCurrentTagXAxisTagIndex
This method configures the currently selected tag in a scatter plot to use another tag from the tag list as
its X axis tag. The X axis tag is identified by its index.
Syntax
[Result=] aaHistClientTrend.SetCurrentTagXAxisTagIndex(integer index);
Parameters
index
The index of the tag that you want to use as the X axis tag for the current tag.
Return Value
The return value is a discrete. Ret urns True if successful; otherwise returns False. Possible causes of
failures include:
No tag is currently selected.
No tag matches the specified index.
The current tag is not an analog or discrete tag.
The designat ed X axis tag is the current tag itself.
The designat ed X axis tag is not an analog or discrete tag.
SetDates
The SetDates method sets the start and end time for the trend.
Syntax
[Result=] aaHistClientTrend.SetDates(DateTime startTime, DateTime endTime);
Parameters
startTime
The start time for the trend.
endTime
The end time for the trend.
Remarks
For more information on setting the date/time, see DateTime.
In relative time mode, you must still specify an absolut e date/time value. For example, if the start time of
your tags is 11/13/2006 8:00 AM and you want the trend t o start at an offset of one hour to that start time,
specify 11/13/2006 9:00 AM for the start Time parameter.
Return Value
Returns True if the dates were set. Ret urns False in case of an error.
SetDuration
The SetDuration method sets the time period for the trend as a d uration relative to the current time.
Syntax
[Result=] aaHistClientTrend.SetDuration(real duration);
[Result=] aaHistClientTrend.SetDuration(DateTime duration);
Parameters
duration
The duration from the current time.
Remarks
When using the ActiveX version of the control, the duration paramet er can be either a number of days or
a date/time string.
When using the .NE T version of the control, the duration parameter must be a valid DateTime value.
In both cases, when you specify a date/time value, the duration is the difference between the specified
date/time and the base date of December 30th, 1899, 12: 00:00 AM.
For more information on the format for date/time values, see DateTime.
Examples
In the following example, the duration is set to the past five minutes, relative to the current time.
#aaHistClientTrend1.SetDuration("00:05:00");
In the following example, the time period is set to the past 36 hours by specifying the number of days.
#aaHistClientTrend1.SetDuration(1.5);
In the following example, the duration is set to the past 36 hours by specifying a date/time value.
#aaHistClientTrend1.SetDuration("12/31/2018 12:00:00");
SetMenuItemEnabled
Use the SetMenuItemEnabled method to control if a specific command in the shortcut menu is enabled.
Syntax
[Result=] aaHistClientTrend.SetMenuItemEnabled(integer itemNumber, integer
bEnabled);
Parameters
itemNumber
The index number of the command. Numbering starts at 0.
bEnabled
Specify a non-zero number to enable or zero to disable.
Return Value
Returns True if the menu item is enabled; otherwise, returns False.
Remarks
If you specify -1 as the itemNumber parameter, the method sets the status of all items in the menu.
Item numbers are as follows:
0 File
3 Highlight Tag
5 Next Tag
6 Previous Tag
7 Add Annotation
8 Delet e Tag
10 Color
12 View
13 Show
15 Scale Tag
23 Copy
24 Save Data
25 Print
26 Properties
28 Chart Ty pe
29 Tools
30 Live Mode
31 Stacked Traces
32 Refresh
SetTagColor
The Set TagColor method sets the line color of the tag curve in the trend.
Syntax
[Result=] aaHistClientTrend.SetTagColor(message serverName, message tagName,
integer color);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
color
The color value for the curve.
Return Value
Returns True if successful; otherwise returns False.
Remarks
For information on setting the color value, see Color.
If the tag is shown multiple times in the chart, this property applies to the first instance of the tag that was
added.
SetTagFormat
The Set TagFormat method sets how the values for the tag appear, either in decimal format or scientific
format.
Syntax
[Result=] aaHistClientTrend.SetTagFormat(message serverName, message tagName,
long format);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
format
The format for the tag value. 0 = Decimal; 1 = Scientific.
Return Value
Returns True if successful; otherwise returns False.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
SetTagColorDlg
This method opens a dialog box where the user can specify a color for the currently selected tag.
Syntax
[Result=] aaHistClientTrend.SetTagColorDlg();
Return Value
Returns a discrete value. Returns True if the dialog was shown; otherwise, returns False (for example, if
there are no tags in the trend).
SetTagOffsetMS
The Set TagOffs etMS method sets the amount of time that the trend curve of the currently selected tag
will be shifted from the actual time.
Syntax
[Result=] aaHistClientTrend.SetTagOffsetMS(message serverName, message
tagName, integer milliseconds);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
milliseconds
The offset, for the shift in milliseconds. The offset c an be positive or negative. For more information,
see Using Time Offsets to Compare Data.
Return Value
Returns a discrete value. Returns True if the set was successful; otherwise, ret urns False.
Due to the limited range for integer values, the maximum offset you can set using this property is about
29 days. For larger offs ets, use the CurrentTagStartDate property.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
SetTagPenStyle
The Set TagPenStyle method sets the style of the trend curve for the currently selected tag. For example,
a solid or dashed line.
Syntax
[Result=] aaHistClientTrend.SetTagPenStyle(message serverName, message
tagName, integer penStyle);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
penSt yle
The appearance of the pen. Valid values are:
0 Solid
1 Dashed
2 Dotted
3 DashDot
4 DashDot Dot
5 Alternate
Return Value
Returns True if successful; otherwise returns False.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
SetTagPenWidth
The Set TagPenWidt h method sets the thickness of the trend curve.
Syntax
[Result=] aaHistClientTrend.SetTagPenWidth(message serverName, message
tagName, integer width);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
width
The width, in pixels, of the pen.
Return Value
Returns True if successful; otherwise returns False.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
SetTagPrecision
The Set TagPrecision method sets the number of decimal places to show for the data value of the
currently selected tag. This applies only to analog tags.
Syntax
[Result=] aaHistClientTrend.SetTagPrecision(message serverName, message
tagName, integer precision);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
precision
The decimal places (precision) for the tag. Valid values are 0 to 15.
Return Value
Returns True if successful; otherwise returns False.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
SetTagVisible
The Set TagVisible method sets whether a tag is visible in the trend chart.
Syntax
[Result=] aaHistClientTrend.SetTagVisible(message serverName, message tagName,
discrete bVisible);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
bVisible
False = Not visible; True = Visible.
Return Value
Returns True if successful; otherwise returns False.
Remarks
If the specified tag is shown in the chart multiple times, the method uses the first instance that was
added.
SetTimeSpan
The Set TimeS pan method sets the start and end time for the trend.
Syntax
[Result=] aaHistClientTrend.SetTimeSpan(DateTime startTime, DateTime endTime,
integer duration);
Parameters
startTime
The start time for the trend. Only considered if the duration is set to Custom. For other durations, the
start time is calculated automatically based on the end time and duration.
endTime
The end time for the trend. Only considered if the duration is set to Custom, or if the property is set
to False and the duration is set to an option from 17 to 32 (OneMinut e to ThreeMonths). Otherwise,
the end time is always assumed to be the current time.
duration
The time duration. If the duration is set to Custom, the specified start and end times ar e used. For
other duration options, the time indicated by the duration is used, and the start and/ or end times are
updated as necessary. For more information on valid values for the duration, see
aaTimeRangeEnumeration Enumeration.
Remarks
For information on setting the date/time value, see DateTime.
SetToolbarButtonEnabled
Use the Set ToolbarButtonE nabled method to control if a specific button in the toolbar is enabled.
Syntax
[Result=] aaHistClientTrend.SetToolbarButtonEnabled(integer buttonNumber,
integer bEnabled);
Parameters
buttonNumber
The index number of the toolbar button. Numbering starts at 0.
bEnabled
Specify a non-zero number to enable the button. Set to zero to disable.
Return Value
Returns True if the button can be enabled; otherwise, returns False.
Button numbers are as follows:
0 Open a trend
3 Copy
14 Highlight tag
ShowStatistics
The ShowStatistics method shows the Stati stics dialog box.
Syntax
[Result=] aaHistClientTrend.ShowStatistics();
Remarks
For more information about the Stati stics dialog box, see Viewing Statistics.
UnsetCurrentTagXAxisTag
This method removes any associated X axis tag from the currently selected tag in a scatter plot.
Syntax
aaHistClientTrend.UnsetCurrentTagXAxisTag();
Remarks
If the current tag is not associated with any X axis tag, this method does nothing.
ZoomIn
The ZoomIn method zooms in on the trend chart.
Syntax
[Result=] aaHistClientTrend.ZoomIn();
Return Value
Returns True if the time range for the operation can be set; otherwise, returns False.
Remarks
The amount of the zoom is controlled by the ZoomOutPercentage property.
ZoomOut
The ZoomOut method zooms out on the trend chart.
Syntax
[Result=] aaHistClientTrend.ZoomOut();
Return Value
Returns True if the time range for the operation can be set; otherwise, returns False.
Remarks
The amount of the zoom is controlled by the ZoomOutPercentage property.
aaHistClientTrend Events
The following are the methods used by the aaHistClient Trend:
o CurrentTagChanged
o DatesChanged
o StateChanged
o TagDisplayChanged
o TaglistChanged
CurrentTagChanged
The Current TagChanged event is triggered when a different tag is selected in the Tag List.
Syntax
aaHistClientTrend.CurrentTagChanged(message serverName, message tagName,
integer TagType);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
tagType
The type of tag.
Remarks
For more information on the tag type, see aaTagType Enumeration.
To retrieve the value of an event parameter in the InTouch HMI software, refer to #ThisEvent.<Event
Name><Parameter Name> inside the script for the res pective event. For example, to read the value o f
the tagName parameter, use a statement like the following:
MyMsgTag = #ThisEvent.CurrentTagChangedtagName;
DatesChanged
The DatesChanged event is triggered when the date for the trend changes. It is also triggered onc e when
the live or replay modes are started, but not on the automatic updates that follow.
Syntax
aaHistClientTrend.DatesChanged();
StateChanged
The StateChanged event is triggered when a change has been made to the configuration for a tag in the
Tag List.
Syntax
aaHistClientTrend.StateChanged();
TagDisplayChanged
The TagDisplayChanged event is triggered when the display options for a tag in the Tag List are
changed. This includes the following actions:
Showing or hiding the tag
Changing the type, color, width, or style of the tag’s trend curve
Changing the tag’s value format or precision
Changing the tag’s time offset
Changing the tag’s scale
Editing the tag’s target region
Syntax
aaHistClientTrend.TagDisplayChanged(message serverName, message tagName,
integer displayItem);
Parameters
serverName
The name of the server.
tagName
The name of the tag.
displayItem
The identifier for the displayed trend item.
Remarks
To retrieve the value of an event parameter in the InTouch HMI software, refer to #ThisEvent.<Event
Name><Parameter Name> inside the script for the res pective event. For example, to read the value o f
the tagName parameter, use a statement like the following:
MyMsgTag = #ThisEvent.TagDisplayChangedtagName;
TaglistChanged
The TaglistChanged event is triggered when a tag is added or removed from the Tag List.
Syntax
aaHistClientTrend.TaglistChanged();
aaHistClientTrend Enumerations
The aaHistClient Trend enumerations include:
aaChartType Enumeration
aaDashStyle Enumeration
aaDataPointLabelingType Enumeration
aaDateModeE numeration Enumeration
aaInterpolationType Enumeration
aaQualityRules Enumeration
aaRetrievalMode Enumeration
aaRetrievalVersion Enumeration
aaStateCalculation Enumeration
aaTargetRegionExcursionType Enumeration
aaTimeSt ampRules Enumeration
aaTraceGradientType Enumeration
aaTrendGradientType Enumeration
aaTrendType Enumeration
aaTrendValueFormat Enumeration
aaValueA xisLabelEnumeration Enumeration
aaChartType Enumeration
An enumeration used to specify the chart type.
aaDashStyle Enumeration
An enumeration used to specify the line style.
aaDataPointLabelingType Enumeration
An enumeration used to specify the type of labels that are shown next to data points on a chart.
0 None No labels.
aaDateModeEnumeration Enumeration
An enumeration used to specify the time mode for the trend chart.
aaInterpolationType Enumeration
Specifies the int erpolation type for data retrieval.
aaQualityRules Enumeration
Specifies the quality rule for dat a retrieval.
aaRetrievalMode Enumeration
Specifies the data retrieval mode.
aaRetrievalVersion Enumeration
Specifies the history version to ret rieve data from.
For more information on each option, see History Version (wwV ersion).
aaStateCalculation Enumeration
Specifies the aggregation type to use in Time-in-State data retrieval.
9 Percent Cont ained The percent age of time that the tag has
been in each unique state for each cycle,
disregarding the occurrences that are not
fully contained with the calculation cycle.
aaTargetRegionExcursionType Enumeration
An enumeration used to specify whether values that fall outside a tag’s target region should be
highlighted.
aaTimeStampRules Enumeration
Specifies the timestamp rule for dat a retrieval.
aaTraceGradientType Enumeration
An enumeration used to specify the gradient type applied to the trace in a scatter plot.
0 None No gradient.
aaTrendGradientType Enumeration
Specifies the gradient type for the plot area and the background for a trend.
0 None No gradient.
aaTrendType Enumeration
Specifies the type of line for the trend curve.
0 Point No line.
aaTrendValueFormat Enumeration
Specifies the value display format of the trend value.
aaUpdateToCurrentTimeState Enumeration
Specifies the state of the Update to Current Time option.
aaValueAxisLabelEnumeration Enumeration
Specifies the value display format of the trend value. For more information on the types of scales, see
Scaling Tags.
where <XPos> is the horizontal position (in pixels) where you want dialog boxes to appear, and
<YPos> is the vertical position. For example, FixedWindowPositionX=300.
4. Save the win.ini file and restart the Trend application.
Dialog boxes now appear at the position you specified.
C HAPTER 9
aaHistClientQuery Control
The aaHistClientQuery control allows you to run the AVEVA Historian Client Query program (or a
functional subset ) from within the AVEVA InTouch HMI software or a .NE T cont ainer like Visual Basic
.NET or Internet Explorer.
For more information on using the AVEVA Historian Client Query, see AVEVA Historian Client Query.
aaHistClientQuery Properties
The properties for the aaHistClient Query control are:
ActiveServer
AllowQueryTypeChange
CurrentServer
EnableAllQueriesTab
FavoriteQueriesFolder
FontBold
FontCharset
FontItalic
FontName
FontSize
Lock Down
QueryFont
QueryString
Recordset
Servers
ToolbarConnectVisible
ToolbarE ditVisible
ToolbarRequeryVisible
ToolbarVisible
UsePersistedS ervers
ActiveServer
The ActiveServer property is a read-write property that sets or gets the name of the server to whic h the
aaHistClientQuery is connected.
Syntax
aaHistClientQuery.ActiveServer = message;
Result = aaHistClientQuery.ActiveServer;
Return Value
The name of the server as a message. If there are no active servers, this property returns a NULL.
Remarks
This property has no default value.
AllowQueryTypeChange
The AllowQueryTypeChange property is a read -write property that gets or sets whether the run-time user
is allowed to change the query type.
Syntax
aaHistClientQuery.AllowQueryTypeChange = discrete;
Result = aaHistClientQuery.AllowQueryTypeChange;
Remarks
The default value is True.
CurrentServer
The CurrentServer property is a read-only property that returns the aaServer object of the server to which
the aaHistClient Query is connected.
Syntax
Result = aaHistClientQuery.CurrentServer;
Remarks
If there are no active servers, this property returns a NULL. For more information on the aaServer object,
see aaServer Object.
This property has no default value.
EnableAllQueriesTab
The EnableAllQueries Tab property is a read-write property that shows or hides the All Queries tab in the
Results pane.
Syntax
aaHistClientQuery.EnableAllQueriesTab = discrete;
Result = aaHistClientQuery.EnableAllQueriesTab;
Remarks
The default value is False.
FavoriteQueriesFolder
The FavoriteQueriesFolder property is a read-writ e property that gets or sets the location of the favorite
queries folder.
Syntax
aaHistClientQuery.FavoriteQueriesFolder = message;
Result = aaHistClientQuery.FavoriteQueriesFolder;
Remarks
When the FavoriteQueriesFolder property is set, the query file list in the corresponding folder is
transferred to the Favorite Queries list box.
This property has no default value.
FontBold
The FontBold property is a read-write property that gets or sets the boldface characteristic for the font
used for displaying the query text in the SQL and All Queries tab in the Re sults pane.
Syntax
aaHistClientQuery.FontBold = discrete;
Result = aaHistClientQuery.FontBold;
Remarks
True = Use bold; False = Do not use bold.
The default value is False.
FontCharset
The FontCharset property is a read-write property that gets or sets the character set used for the query
and result text.
Syntax
aaHistClientQuery.FontCharset = integer;
Result = aaHistClientQuery.FontCharset;
Remarks
This property is an integer value that specifies the character set us ed by the font. The following are some
common settings for the value:
Value Description
Value Description
136 The Chinese character set used mostly in Hong Kong SAR and
Taiwan (Traditional Chinese).
255 The extended ASCII character set used with DOS and some
Microsoft® Windows® fonts.
FontItalic
The FontItalic property is a read-write property that gets or sets whether the query text appears in an
italicized font.
Syntax
aaHistClientQuery.FontItalic = discrete;
Result = aaHistClientQuery.FontItalic;
Remarks
True = Use italics; False = Do not use italics.
The default value is False.
FontName
The Font Name property is a read-write property that gets or sets the name of the font family used for the
query text.
Syntax
aaHistClientQuery.FontName = message;
Result = aaHistClientQuery.FontName;
Remarks
The default value is Tahoma.
FontSize
The FontSize property is a read-write property that gets or sets the size, in points, of the font used for
displaying the query text.
Syntax
aaHistClientQuery.FontSize = integer;
Result = aaHistClientQuery.FontSize;
Remarks
The default value is 8.
LockDown
The LockDown property is a read-write property that enables or disables a "lock down" mode in the
control.
Syntax
aaHistClientQuery.LockDown = discrete;
Result = aaHistClientQuery.LockDown;
Remarks
In the "lock down" mode, the following features are not available to the run -time user:
Tag Picker
Main toolbar
The default value is False.
QueryFont
The QueryFont property is a read-write property that gets or sets the font used for displaying the query
text.
Syntax
aaHistClientQuery.QueryFont = Font;
Result = aaHistClientQuery.QueryFont;
Remarks
This property is not accessible in the InTouch HMI soft ware.
For more information on setting the font, see Font.
The default font is Tahoma, 8 point (for English versions).
QueryString
The QueryString property is a read-write property that gets or sets the query string.
Syntax
aaHistClientQuery.QueryString = message;
Result = aaHistClientQuery.QueryString;
Remarks
If you set the QueryString property, then the query type is automatically set to Custom.
Recordset
The Recordset property is a read-only property that gets the data set for the query.
Syntax
DataSet = aaHistClientQuery.Recordset;
Return Value
Returns a DataSet object. For more information on data sets, see DataS et.
Remarks
This property is not accessible in the InTouch HMI soft ware.
This property has no default.
Servers
The Servers property is a read-write property that gets or sets the list of servers.
Syntax
aaHistClientQuery.Servers = aaServers;
Result = aaHistClientQuery.Servers;
Remarks
This property uses the aaServers object. For more information on the aaS ervers object, see aaServers
Object on page 610.
This property has no default.
ToolbarConnectVisible
The ToolbarConnectVisible property is a read -write property that shows or hides the server connection
toolbar button.
Syntax
aaHistClientQuery.ToolbarConnectVisible = discrete;
Result = aaHistClientQuery.ToolbarConnectVisible;
Remarks
The default is True.
ToolbarEditVisible
The ToolbarEditVisible property is a read-write property that shows or hides the cut, copy, and paste
toolbar buttons.
Syntax
aaHistClientQuery.ToolbarEditVisible = discrete;
Result = aaHistClientQuery.ToolbarEditVisible;
Remarks
The default is True.
ToolbarRequeryVisible
The ToolbarRequeryVisible property is a read -write property that shows or hides the re-query (refresh)
toolbar button.
Syntax
aaHistClientQuery.ToolbarRequeryVisible = discrete;
Result = aaHistClientQuery.ToolbarRequeryVisible;
Remarks
The default is True.
ToolBarVisible
This read-write property shows or hides the entire toolbar.
Syntax
aaHistClientQuery.ToolbarVisible = discrete;
Result = aaHistClientQuery.ToolbarVisible;
Remarks
The default is True, that is, the toolbar is visible.
UsePersistedServers
This read-write property controls whet her changes to the control’s server connections are only valid for
the current runtime session, or whether they are saved to the global server list shared by the AVEVA
Historian Client applications.
Syntax
aaHistClientQuery.UsePersistedServers = discrete;
Result = aaHistClientQuery.UsePersistedServers;
Remarks
If you set this property to True, changes to the configured server connections are saved in the global
server list. If you set it to False, changes do not affect the global server list.
For example, if you add a server while this property is set to True, the server is added to the global list. If
you set the property to False and remove the same server, it disappears from the server list for the
current runtime session, but it is not deleted from the global list.
The default is False. To initialize the control with the server connections stored in the global list, set the
value to True. You can set it back to False afterwards to avoid inadvertent changes by the run-time user.
For more information on managing servers, see Server Connection Configuration.
aaHistClientQuery Methods
The aaHistClientQuery methods are:
AddServer
AddServerE x
AddTag
ClearTags
CopyQuery
CutQuery
FileOpen
ManualConnect
OpenQuery
PasteQuery
RemoveTag
Refresh
SaveQuery
SaveRes ults
SetDates
SetDuration
SetQueryType
SetQueryType2
SetTimeSpan
ShowAbout
AddServer
The AddS erver method adds a server to the list.
Syntax
[Result=] aaHistClientQuery.AddServer(message serverName, message loginName,
message password, [discrete bPersistPassword]);
Parameters
serverName
The name of the server.
loginName
A valid user name to log on to the server. If no login name is provided, Windows integrated security is
used.
pass word
A valid password for the server.
bPersistPassword
Optional parameter. If set to True, the password is remembered for the next time a c onnection is
attempted. The password is only remembered for single application; the persisted password is not
available to all applications. The default value is True.
Return Value
Returns True if the server can be added; otherwise returns False.
AddServerEx
The AddS erverEx method adds a server to the list.
Syntax
[Result=] aaHistClientSingleValueEntry.AddServerEx(message serverName,
message loginName, message password, [discrete bPersistPassword]);
Parameters
serverName
The name of the server to which to connect.
loginName
A valid user name to log on to the server. If no login name is provided, Windows integrated security is
used.
pass word
A valid password for the server.
bPersistPassword
If set to True, the password is remembered for the subsequent connection attempt. The password is
only remembered for single application; the persisted password is not available to all applications.
Return Value
Returns True if the server can be added to the list; otherwise returns False.
Remarks
All parameters are required. Errors, if any, are reported.
AddTag
The AddTag method adds a tag to the tag collection.
Syntax
[Result=] aaHistClientQuery.AddTag(message serverName, message tagName,
integer tagType);
Parameters
serverName
The name of the server.
tagName
The name of the tag to add.
tagType
The type of the tag. This parameter is provided for backward compatibility and does not have any
effect on the outcome of the operation. However, you must still specify one of the following valid
values: 1, 2, 3, or 5.
Return Value
Returns True if the tag can be added; otherwise, returns False.
ClearTags
The ClearTags method removes all of the tags from the query.
Syntax
[Result=] aaHistClientQuery.ClearTags();
Example
In the following example, all tags from the query are delet ed, and the ReactLevel tag is added to the
query.
#aaHistClientQuery1.ClearTags;
#aaHistClientQuery1.AddTag("MyInSQL", "ReactLevel", 1);
CopyQuery
The CopyQuery met hod copies the current selection in the query text box to the clipboard.
Syntax
[Result=] aaHistClientQuery.CopyQuery();
CutQuery
The CutQuery method deletes the current selection in the query text box and then copies it to the
clipboard.
Syntax
[Result=] aaHistClientQuery.CutQuery();
FileOpen
The FileOpen method opens a specified text file containing a SQL query.
Syntax
[Result=] aaHistClientQuery.FileOpen(message fileName);
Parameters
fileName
The full path to the file.
Remarks
When this met hod is called, it automatically sets the query type to Custom. If the S QL tab is active at the
time the method is called, the method loads the SQL query from the file into the SQL tab, but does not
send it to the server. If the Data tab is active, the met hod loads the query into t he SQL tab, sends it to the
currently selected server, and shows the results on the Data tab.
Return Value
Returns True if the file can be opened successfully; otherwise returns False (for example, if no file name
is specified or the specified file does not exist).
ManualConnect
The ManualConnect method opens the Server connection dialog box.
Syntax
[Result=] aaHistClientQuery.ManualConnect();
OpenQuery
The OpenQuery method opens the Open dialog box, so that the runtime us er can select an existing
query file (.sql) to open.
Syntax
[Result=] aaHistClientQuery.OpenQuery();
PasteQuery
The PasteQuery method pastes the current contents of the clipboard to the query text box.
Syntax
[Result=] aaHistClientQuery.PasteQuery();
Refresh
The Refresh method re-executes the query.
Syntax
[Result=] aaHistClientQuery.Refresh();
Remarks
The focus must be on the Results tab for this method to take effect.
RemoveTag
The RemoveTag method removes the specified tag from the query.
Syntax
[Result=] aaHistClientQuery.RemoveTag(message serverName, message tagName);
Parameters
serverName
The name of the server.
tagName
The name of the tag to remove.
Return Value
Returns True if the tag was found and can be removed; otherwise, returns False.
SaveQuery
The SaveQuery method opens the Save As dialog box, so that the runtime user can save the current
query to a text file.
Syntax
[Result=] aaHistClientQuery.SaveQuery();
SaveResults
The SaveResults method opens the Save As dialog box, so that the runtime user can save the current
Data tab contents to a .txt or .csv file.
Syntax
[Result=] aaHistClientQuery.SaveResults();
SetDates
The SetDates method sets the start and end time for the query.
Syntax
[Result=] aaHistClientQuery.SetDates(DateTime startTime, DateTime endTime);
Parameters
startTime
The start time for the query.
endTime
The end time for the query.
Remarks
For more information on setting the date/time, see DateTime.
Return Value
Returns True if the dates were set. Ret urns False in case of an error.
SetDuration
The SetDuration method sets the query period as a duration relative to the current time.
Syntax
[Result=] aaHistClientQuery.SetDuration(real duration);
[Result=] aaHistClientQuery.SetDuration(DateTime duration);
Parameters
duration
The duration from the current time.
Remarks
When using the ActiveX version of the control (for example, in the InTouch HMI software), the duration
parameter can be either a number of days or a date/time string.
When using the .NE T version of the control, the duration parameter must be a valid DateTime value.
In both cases, when you specify a date/time value, the duration is the difference between the specified
date/time and the base date of December 30th, 1899, 12: 00:00 AM.
For more information on the format for date/time values, see DateTime.
Example
In the following example, the time period is set to the past five minutes, relative to the current time.
#aaHistClientQuery1.SetDuration("00:05:00");
In the following example, the time period is set to the past 36 hours by specifying the number of days.
#aaHistClientQuery1.SetDuration(1.5);
In the following example, the time period is set to the past 36 hours by specifying a date/time value.
#aaHistClientQuery1.SetDuration("12/31/1899 12:00:00");
SetQueryType
The SetQuery Type method selects the specified query type and tag type in the Tag Picker.
Syntax
[Result=] aaHistClientQuery.SetQueryType(aaQueryTypeEnumeration queryType,
aaTagType tagType);
Parameters
queryType
The type of the query. For information on the valid enumerations, see aaQueryTypeEnumeration.
tagType
The type of the tag. For information on the valid enumerations, see aaTagType Enumeration.
Return Value
Returns True if it can be shown; otherwise, ret urns False.
Remarks
This method is not accessible in the InTouch HMI software. Use the SetQueryType2 method instead.
SetQueryType2
The SetQuery Type2 method selects the specified query type and tag type in the Tag Picker.
Syntax
[Result=] aaHistClientQuery.SetQueryType2(integer queryType, integer tagType);
Parameters
queryType
The type of the query. For information on the valid values, see aaQueryTypeEnumeration.
tagType
The type of the tag. For information on the valid values, see aaTagType Enumeration.
Return Value
Returns True if it can be shown; otherwise, ret urns False.
Remarks
Use this method in the InTouch HMI soft ware instead of the SetQueryType method.
SetTimeSpan
The Set TimeS pan method sets the start and end time for the query.
Syntax
[Result=] aaHistClientQuery.SetTimeSpan(DateTime start, DateTime end,
aaTimeRangeEnumeration duration);
Parameters
startTime
The start time for the query.
endTime
The end time for the query.
duration
The time duration, either Custom or an enumerated set.
Return Value
Returns True if the time span can be set; otherwise, returns False.
Remarks
The times can be specified as a duration (Last5Minut es, Last24Hours, etc.) or as a pair of start and e nd
values, in which case the duration must be specified as Custom.
For more information on setting the date/time, see DateTime. For more information on setting the
duration, see aaTimeRangeEnumeration Enumeration.
ShowAbout
The ShowAbout method opens the About dialog box.
Syntax
[Result=] aaHistClientQuery.ShowAbout();
aaHistClientQuery Events
The aaHistClientQuery events are:
ModeChanged
QueryChanged
ServerChanged
ModeChanged
The ModeChanged event is triggered when the run -time user changes tabs on the Results pane in the
control.
Syntax
aaHistClientQuery.ModeChanged(integer mode);
Parameters
mode
The type of tab for which changes are detected. 0 = The focus has changed to the Query or All
Queries tab; 1 = The focus has changed to the Re sults tab.
Remarks
To retrieve the value of an event parameter in the InTouch HMI software, refer to #ThisEvent.<Event
Name><Parameter Name> inside the script for the res pective event. For example, to read the value o f
the mode parameter, use a statement like the following:
MyIntTag = #ThisEvent.ModeChangedmode;
QueryChanged
The Query Changed event is triggered when the query is changed.
Syntax
aaHistClientQuery.QueryChanged();
Remarks
When the query changes as a res ult of a user action with the control (not as a result of entering text), or
as a result of changing the query type, the control triggers a query changed event, unless the query is of
Custom type. For a Custom query, the change event is triggered each time the user changes the text.
The change event is also triggered when the user sets the QueryString property.
ServerChanged
The ServerChanged event is triggered when the server is changed.
Syntax
aaHistClientQuery.ServerChanged();
Remarks
This event is triggered when a logon has successfully completed.
aaQueryTypeEnumeration
Used for specifying the various types of queries for the aaHistClientQuery control.
C HAPTER 10
aaHistClientTagPicker Control
The aaHistClient TagPicker control allows you to view the hierarchy of objects in an AVEVA Historian
database (for example, tags, InTouch nodes, events, and so on) in a hierarchical format.
For more information on using the aaHistClient TagPicker, see Tag Pick er.
aaHistClientTagPicker Properties
The aaHistClient TagPicker properties are:
CurrentServer
DescriptionFilter
ExactMatchFilter
FilterVisible
HideCaption
IOAddressFilter
SelectedPath
SelectedTagCount
Servers
SingleSelectMode
SplitterOrientation
TabSelectedIndex
TagNameFilter
TagSelectedIndex
TreeVisible
TreeWidt h
UseHierarchicalName
Visible
CurrentServer
The CurrentServer property is a read-writ e property that gets or sets the selected server in the Servers
pane.
Syntax
aaHistClientTagPicker.CurrentServer = aaServer;
Result = aaHistClientTagPicker.CurrentServer;
Remarks
The current server determines the tags that appear in the Tags pane. This property uses the aaServer
object. For more information, see aaS erver Object.
This property has no default value.
DescriptionFilter
The DescriptionFilter property is a read-write property that gets or sets the description filter criteria.
Syntax
aaHistClientTagPicker.DescriptionFilter = message;
Result = aaHistClientTagPicker.DescriptionFilter;
Remarks
The description filter criteria is applied when the ApplyFilter method is called or when the Apply button is
clicked by the run-time user.
The default is an empty message value ( "" ).
ExactMatchFilter
The ExactMatchFilter property is a read-write property that gets or sets whether or not the filter criteria
must be an exact match.
Syntax
aaHistClientTagPicker.ExactMatchFilter = discrete;
Result = aaHistClientTagPicker.ExactMatchFilter;
Remarks
The default value is False.
FilterVisible
The FilterVisible property is a read -write property that shows or hides the Filter pane.
Syntax
aaHistClientTagPicker.FilterVisible = discrete;
Result = aaHistClientTagPicker.FilterVisible;
Remarks
The default value is False.
HideCaption
The HideCaption property is a read-write property that hides or shows the caption at the top of the Tag
Picker.
Syntax
aaHistClientTagPicker.HideCaption = discrete;
Result = aaHistClientTagPicker.HideCaption;
Remarks
The default value is False, that is, the caption is shown.
IOAddressFilter
The IOAddressFilter property is a read-write property that gets or sets the I/O address filter criteria.
Syntax
aaHistClientTagPicker.IOAddressFilter = message;
Result = aaHistClientTagPicker.IOAddressFilter;
Remarks
The default is an empty message value ( "" ).
SelectedPath
Use this read-write property to return the path of the currently selected folder or to show only a specific
part of the folder structure on an AVEVA Historian.
Syntax
aaHistClientTagPicker.SelectedPath = message;
Result = aaHistClientTagPicker.SelectedPath;
Remarks
This property serves two purposes:
When you read this property, the path of the currently selected folder in the Servers pane is
returned. For example, if the "All Analog Tags" folder in the "Public Groups" folder on the Server1
host is selected, this property returns Server1.Public Groups.All Analog Tags.
When you write to this property, the Tag Picker only displays the contents of the specified path for a
server. For example, if you set this property to Server1.Public Groups, the Servers pane only
shows the contents of the "Public Groups" folder for the Server1 host. To show all folders on a server
again, set the property to the server name. For example, to show all folders on the Server1 host, set
this property to Server1.
Values are case-sensitive if the AVEVA Historian is installed on a case-sensitive SQL Server.
SelectedTagCount
This read-only property gets the total count of tags that are selected in the Tag Picker.
Syntax
Result = aaHistClientTagPicker.SelectedTagCount;
Remarks
This property has no default value.
Servers
This read-write property gets or sets the list of servers.
Syntax
aaHistClientTagPicker.Servers = aaServers;
Result = aaHistClientTagPicker.Servers;
Remarks
This property uses the aaServers object. For more information, see aaS erver Object.
This property has no default value.
Example: Login
The following InTouch HMI software example adds the s erver MyInS QL1 t o the Tag Picker and logs on to
the server:
%NewServer = #aaHistClientTagPicker1.Servers.Add("MYINSQL1");
%NewServer.LoginID = "wwAdmin";
%NewServer.Password = "wwAdmin";
#aaHistClientTagPicker1.LogOn( %NewServer );
SingleSelectMode
The SingleS electMode property is a read-write property that enables or disables only single tag at a time
to be selected from the list of tags.
Syntax
aaHistClientTagPicker.SingleSelectMode = discrete;
Result = aaHistClientTagPicker.SingleSelectMode;
Remarks
The default value is False.
SplitterOrientation
The SplitterOrient ation property is a read-write property that controls whether the splitter bar that divides
the Tags pane from the Servers pane is vertical or horizontal.
Syntax
aaHistClientTagPicker.SplitterOrientation =
aaHistClientTagPickerSplitterOrientation;
Result = aaHistClientTagPicker.SplitterOrientation;
Remarks
This aaHistClient TagPickerSplitterOrientation enumeration is used for the orientation types. For more
information, see aaHistClientTagPick erSplitterOrientation Enumeration.
The default value is 0 (horizontal).
TabSelectedIndex
The TabSelectedIndex is a read-only property that returns the index of the currently selected tab in the
Tag Picker. The index starts from zero.
Syntax
aaHistClientTagPicker.TabSelectedIndex = integer;
Result = aaHistClientTagPicker.TabSelectedIndex;
TagNameFilter
The TagNameFilter property is a read -write property that gets or sets the tagname filter criteria.
Syntax
aaHistClientTagPicker.TagNameFilter = message;
Result = aaHistClientTagPicker.TagNameFilter;
Remarks
The default is an empty message value ( "" ).
TagSelectedIndex
The TagSelectedIndex is a read-only property that returns the index of the currently selected tag in the
Tag Picker. The index starts from zero.
Syntax
aaHistClientTagPicker.TagSelectedIndex = integer;
Result = aaHistClientTagPicker.TagSelectedIndex;
Remarks
If multiple tags are selected, this property returns the index of the first selected tag.
TreeVisible
The TreeVisible property is a read-writ e property that shows or hides the Servers pane.
Syntax
aaHistClientTagPicker.TreeVisible = discrete;
Result = aaHistClientTagPicker.TreeVisible;
Remarks
The default value is True.
TreeWidth
The TreeWidth property is a read-write property that gets or sets the widt h of the Servers pane when the
splitter orient ation is vertical or the height of the Servers pane when the splitter orientation is horizontal.
Syntax
aaHistClientTagPicker.TreeWidth = integer;
Result = aaHistClientTagPicker.TreeWidth;
UseHierarchicalName
The UserHierarchicalName property is a read -write property that sets the option to use the hierarchical
name in the Tag Picker.
Syntax
aaHistClientTagPicker.UseHierarchicalName = discrete;
Result = aaHistClientTagPicker.UseHierarchicalName;
Visible
The Visible property is a read-write property that shows or hides the Tag Picker.
Syntax
aaHistClientTagPicker.Visible = discrete;
Result = aaHistClientTagPicker.Visible;
Remarks
The default value is True.
aaHistClientTagPicker Methods
The aaHistClient TagPicker methods are:
ApplyFilter
LogOn
OpenAndS electGroup
RefreshTags
SelectedTag
SetFocusOnSelectedTag
ApplyFilter
The ApplyFilter method applies the filter as set up by the properties for the name, description, and I/O
address filters.
Syntax
[Result=] aaHistClientTagPicker.ApplyFilter();
LogOn
The LogOn method displays a dialog box for connecting to the specified server.
Syntax
[Result=] aaHistClientTagPicker.Logon(aaServer server);
Parameter
server
The server to which to connect.
Remarks
This methods uses the aaServer object. For more information, see aaServer Object.
OpenAndSelectGroup
The OpenA ndSelectGroup met hod opens the specified path, and selects the group on a connected
Historian server to which you are logged on. You can access this method from t he Tag Picker control that
is hosted in InTouch as follows:
#aaTagPicker.OpenAndSelectGroup(string Path)
and from the Tag Picker in Trend control as follows:
#aaHistClientTrend1.TagPicker.OpenAndSelectGroup
(string Path)
Syntax
[Result=] aaHistClientTagPicker.OpenAndSelectGroup (string Path);
Parameter
Path
The specific group pat h which is to be selected. The syntax of the P ath parameter is same as that of
the SelectedPat h property.
Remarks
This method parses the given path and travers es through the tree node collection until the specified
group is found. If the group is found, the group is opened and selected with hierarchy.
The specified path is case-sensitive if the AVEVA Historian is installed on a case-s ensitive SQL Server.
Errors, if any, are logged in the SMC Logger.
RefreshTags
The RefreshTags method applies the current filter conditions to all tags from a server.
Syntax
[Result=] aaHistClientTagPicker.RefreshTags();
Remarks
Use the Refres hTags() method to update the set of filtered tags with any new tags that have been added
to the server since the filter was applied. For example, you can add a tag t o the s erver using a script, and
then use this method to refresh the Tag Picker so that the new tag is shown.
SelectedTag
The SelectedTag method gets the selected tag as identified by the index.
Syntax
[aaTag=] aaHistClientTagPicker.SelectedTag(integer index);
Parameters
index
The numerical identifier for the tag. The identifier is zero-based.
Return Value
Returns the tag or, if it is out of bounds, ret urns NULL. (It does not return a NULL string.)
Remarks
This method works in conjunction with the SelectedTagCount property.
Example
The following InTouc h HMI soft ware example gets all of the selected tags using a loop:
DIM i AS INTEGER;
DIM count AS INTEGER;
Count = #aaHistClientTagPicker3.SelectedTagCount;
FOR i = 0 TO count - 1
%ReturnTag = #aaHistClientTagPicker3.SelectedTag( i );
NEXT;
In this example, Count is the number of tags and is retrieved using the SelectedTagCount property.
The index passed to the SelectedTag() method ranges from 0 to
Count - 1. For ex ample:
If the Count was 0, there are no tags selected.
If Count is 1, there is one tag selected, and its index is 0.
If Count is 5, there are 5 tags, and the indic es range from 0 to 4.
Therefore, you must first check to see that Count is not 0 and then you can index appropriately to get the
tag.
SetFocusOnSelectedTag
The SetFocusOnS electedTag method sets the focus on the selected tag based on t he selected path and
the index of the selected tab and tag.
Syntax
aaHistClientTagPicker.SetFocusOnSelectedTag(string treePath, int tabIndex, int
tagIndex);
Parameters
treePath
The full path of the tree node from where the tag is to be selected.
tabIndex
The index of the selected tab starting from zero.
tagIndex
The index of the selected tag starting from zero.
Example
The following example sets the focus on the sixth tag from the third tab in the "All Discrete Tags" group
available under server MES01.
#aaHistClientQuery1.SetFocusOnSelectedTag ("MES01.Public Groups.All Discrete
Tags", 2, 5);
Remarks
This method is specifically used for the aaReports feature in the Input paramet er page of the AVEVA
Information Server portal.
aaHistClientTagPicker Events
The aaHistClient TagPicker events are:
OnFilterChanged
OnGroupChanged
OnTagsPick ed
OnTagsSelected
OnServerChanged
OnSelectedTabChanged
OnTagNameChanged
OnFilterChanged
The OnFilterChanged event is triggered when the filter is changed.
Syntax
aaHistClientTagPicker.OnFilterChanged();
OnGroupChanged
The OnGroupChanged event is triggered when the tag group is changed in the navigation tree in the
Servers pane.
Syntax
aaHistClientTagPicker.OnGroupChanged();
OnTagsPicked
The OnTagsPicked event is triggered when the user double -clicks or picks one or more tags.
Syntax
aaHistClientTagPicker.OnTagsPicked();
Remarks
A selected tag is a tag that is highlighted (clicked one time) with the mouse by a runtime user. A picked
tag is a tag that is double-clicked or selected with the mouse to be dragged. A "picked" tag is always
selected, but a selected tag is not always picked.
The application controls whether to also "pick" a tag when it is selected. For example, in the Query client
application, selecting a tag caus es a change in the query. This is an instance of when the selection of a
tag also results in its being picked. In t he Trend client application, selecting a tag does not pick and place
it on to the trend. However, double-clicking on a tag (picking it) does.
OnTagsSelected
The OnTagsSelected event is triggered when the user selects one or more tags.
Syntax
aaHistClientTagPicker.OnTagsSelected();
Remarks
For the differenc es between a "picked" tag and a "selected" tag, see the OnTagsPick ed event.
OnServerChanged
The OnS erverChanged event is triggered when the server is changed.
Syntax
aaHistClientTagPicker.OnServerChanged();
OnSelectedTabChanged
The OnS electedTabChanged event is triggered when the user changes tabs in the Tags pane.
Syntax
aaHistClientTagPicker.OnSelectedTabChanged();
OnTagNameChanged
The OnTagNameChanged event is triggered when you set the option to use the hierarchical name or tag
name in the Tag Picker.
Syntax
aaHistClientTagPicker.OnTagNameChanged();
aaHistClientTagPickerSplitterOrientation Enumeration
Specifies the orientation of the Servers pane with respect to the Tags pane in the Tag Picker.
C HAPTER 11
aaHistClientTimeRangePicker Control
The aaHistClient TimeRangePicker control allows you to select a time duration based on a start time,
duration and/or end time.
aaHistClientTimeRangePicker Properties
The properties for the aaHistClient TimeRangePicker are:
DurationMS
EndDate
EndDateUTC
Format
StartDate
StartDateUTC
TimeDuration
UpdateToCurrentTimeState
DurationMS
The DurationMS is a read-write property that controls the duration of the time range in milliseconds.
Syntax
aaHistClientTimeRangePicker.DurationMS = integer;
Result = aaHistClientTimeRangePicker.DurationMS;
Remarks
When you change this property, the start time is updated bas ed on the new duration and the current end
time.
EndDate
The EndDat e property is a read-only property that returns the end date and time of the time range.
Syntax
Result = aaHistClientTimeRangePicker.EndDate;
Return Value
A message value in a valid date/time format is returned.
EndDateUTC
The EndDateUTC property is a read -only property that returns the end date and time of the time range in
the UTC format. The UTC term refers to Coordinated Universal Time. The UTC is a time scale that joins
Greenwich Mean Time (GMT).
Syntax
Result = aaHistClientTimeRangePicker.EndDateUTC;
Return Value
A message value in a valid date/time format in UTC is returned.
Format
The Format property is a read-write property that gets or sets the date and time formats for the control.
Syntax
aaHistClientTimeRangePicker.Format = message;
Result = aaHistClientTimeRangePicker.Format;
Remarks
To display the string literals that contain dat e and time separators or format strings, you must use escape
characters in the substring. For example, to display the date and time as 06/01/ 2001 12:00 PM, this
property must be set to:
"dd'/'MM'/'yyyy hh':'mm tt"
The following table lists all the valid format strings and their descriptions.
Remarks
The default format is M/d/yyyy h:mm:ss tt for English systems.
StartDate
The StartDate property is a read-only property that returns the start date and time of the time range.
Syntax
Result = aaHistClientTimeRangePicker.StartDate;
Return Value
A message value in a valid date/time format is returned.
StartDateUTC
The StartDateUTC property is a read -only property that returns the start date and time of the time range
in the UTC format.
Syntax
Result = aaHistClientTimeRangePicker.StartDateUTC;
Return Value
A message value in a valid date/time format in UTC is returne d.
TimeDuration
The TimeDuration property is a read -write property that controls the duration of the time range as one of
the several predefined durations.
Syntax
aaHistClientTimeRangePicker.Duration = aaTimeRangeEnumeration;
Result = aaHistClientTimeRangePicker.Duration;
Remarks
When you change this property, the start time is updated bas ed on the new duration and the current end
time.
UpdateToCurrentTimeState
The UpdateToCurrentTimeState property is a read-write property that sets the option to update the Time
Range Picker to the current time.
Syntax
aaHistClientTimeRangePicker.UpdateToCurrentTimeState = integer;
Result = aaHistClientTimeRangePicker.UpdateToCurrentTimeState;
Remarks
The valid values are 0 and 1. The default value is 0.
aaHistClientTimeRangePicker Methods
The methods for the aaHistClient TimeRangePicker are:
GetStartAndE ndTimes
GetStartAndE ndTimesUTC
RefreshTimes
SetStartAndEndTimes
SetStartAndEndTimes UTC
GetStartAndEndTimes
The GetStartAndEndTimes met hod retrieves the start and end times for the query .
Syntax
[aaTimeRangeEnumeration=]
aaHistClientTimeRangePicker.GetStartAndEndTimes(DateTime startTime, DateTime
endTime);
Parameters
startTime
The start time for the query.
endTime
The end time for the query.
Remarks
The date and time formats are set using the Format property.
The container may not allow method parameters to return values. This method is not accessible in the
InTouch HMI software. Use the StartDate, EndDate, and TimeDuration properties instead.
Return Value
The time range enumeration (such as Custom, Last5Minutes, and so on) is returned. For more
information, see aaTimeRangeE numeration Enumeration.
GetStartAndEndTimesUTC
The GetStartAndEndTimes UTC method retrieves the start and end times for the query in the UTC
format.
Syntax
[aaTimeRangeEnumeration=] aaHistClientTimeRangePicker.GetStartAndEndTimesUTC
(DateTime startTimeUTC, DateTime endTimeUTC);
Parameters
startTimeUTC
The start time for a query in the UTC format.
endTimeUTC
The end time for a query in the UTC format.
Remarks
The date and time formats are set using the Format property.
The container may not allow method parameters to return values. This method is not accessible in the
InTouch HMI software. Use the StartDateUTC, EndDateUTC, and TimeDuration properties instead.
Return Value
The time range enumeration (such as Custom, Last5Minutes, and so on) is returned. For more
information, see aaTimeRangeE numeration Enumeration.
RefreshTimes
The RefreshTimes method updates the end time to t he current time and recalculat es the start time based
on the new end time and the duration.
Syntax
[Result=] aaHistClientTimeRangePicker.RefreshTimes(discrete bFireEvent);
Parameters
bFireEvent
When set to True, a change in dates causes the OnChange event to be triggered.
SetStartAndEndTimes
The SetStartAndE ndTimes method sets the time period based on a start time, end time, and/or duration.
Syntax
[Result=] aaHistClientTimeRangePicker.SetStartAndEndTimes
(DateTime startTime, DateTime endTime, integer duration);
Parameters
startTime
The start time for the query. Only considered if the duration is set to Custom. For other durations, the
start time is calculated automatically based on the end time and duration.
endTime
The end time for the query. Only considered if the duration is set to Custom or an option from 17 t o 32
(OneMinute to ThreeMonths). Otherwise, the end time is set based on the duration.
duration
The time range duration. If the duration is set to Custom, the specified start and end times are used.
For other duration options, the time indicated by the duration is used, and the start and/ or end times
are updated as necessary. For more information on valid values for the duration, see
aaTimeRangeEnumeration Enumeration.
Remarks
The date and time formats are set using the Format property.
SetStartAndEndTimesUTC
The SetStartAndEndTimesUTC method sets the time period based on a start time, end time, and/or
duration.
Syntax
[Result=] aaHistClientTimeRangePicker.SetStartAndEndTimesUTC
(DateTime startTimeUTC, DateTime endTimeUTC, integer duration);
Parameters
startTimeUTC
The start time for a query in the UTC format. Only considered if the duration is set to Custom. For
other durations, the start time is calculated automatically based on the end time and duration.
endTimeUTC
The end time for a query in the UTC format. Only considered if the duration is set to Custom or an
option from 17 to 32 (OneMinute to ThreeMont hs). Otherwise, the end time is set based on the
duration.
duration
The time range duration. If the duration is set to Custom, the specified start and end times are used.
For other duration options, the time indicated by the duration is used, and the start and/ or end times
are updated as necessary. For more information on valid values for the duration, see
aaTimeRangeEnumeration Enumeration.
Remarks
The date and time formats are set using the Format property.
aaHistClientTimeRangePicker Events
The events for the aaHistClient TimeRangePicker are:
OnChange
OnChange
The OnChange event is triggered when the start date and/ or end dat es are changed.
Syntax
aaHistClientTimeRangePicker.OnChange();
C HAPTER 12
aaHistClientActiveDataGrid Control
The aaHistClientActiveDataGrid control can exec ute any SQL query that returns a result set from any
AVEVA Historian or Microsoft SQL Server database and returns the results in a grid.
Note: The aaHistClientActiveDataGrid does not support data definition or data manipulation queries.
The aaHistClientActiveDataGrid provides functionality through a user int erface and wit h scripting using
properties, methods, and events.
Information is provided on how to configure the aaHistClientActiveDataGrid during application
development and describes the aaHistClientActiveDat aGrid properties, methods, and events. The
runtime functionality of aaHistClientActiveDat aGrid is also describe d.
Data Grid
Data appears in a tabular format, where each row represents a record and each column repres ents an
attribute (field). The data is read-only.
The data grid displays results based on the SQL statement(s ) executed and can be used to query
different tables and attributes. For example, if the SQL query exec utes a join on three tables and includes
two attribut es from each table, the aaHistClientActiveDat aGrid shows the records resulting from the join
and only the six attributes specified. The number of columns varies dynamically, depending on how
many records are returned.
You can resize the columns in the data grid.
Button Description
Note: Depending on how the aaHistClientActiveDataGrid was configured during development, the
navigator bar may not be available during runtime.
Note: The aaHistClientActiveDataGrid control can only connect to single server. Multiple servers are not
supported.
4. In the SQL statement window, create or edit the current SQL statement(s) that is executed.
5. To use a pre-configured templat e, click Templates. If not, go to Step 9.
aaHistClientActiveDataGrid Properties
The aaHistClientActiveDataGrid properties are:
AllowUserConfiguration
AutoRef resh
BOF
BusinessObjectServer
ColumnCount
Connected
DatabaseName
DefaultColumnWidth
Domain
Enabled
EnableShortcutMenu
EOF
Handle
Password
RefreshFrequenc y
Row
RowCount
ServerName
ShowE rrorDlgs
ShowNavigatorB ar
SQLString
UserName
VirtualDirectoryName
AllowUserConfiguration
The AllowUserConfiguration property is a read-write property that determines whether the user can
access the aaHistClientActiveDataGrid Propertie s dialog box at runtime by using the control’s shortcut
menu.
Syntax
aaHistClientActiveDataGrid.AllowUserConfiguration = discrete;
Result = aaHistClientActiveDataGrid.AllowUserConfiguration;
Remarks
True = Show the Propertie s and SQL menu commands on the shortcut menu; False = Hide the
Properties and SQL menu commands on the shortcut menu.
If this property is disabled, you can use the ShowPropertiesDialog method to let the user access the
Properties dialog box.
The default value is True.
AutoRefresh
The AutoRefresh property is a read-write property that enables or disables automatic refresh of the data
in the aaHistClientActiveDataGrid.
Syntax
aaHistClientActiveDataGrid.AutoRefresh = discrete;
Result = aaHistClientActiveDataGrid.AutoRefresh;
Remarks
True = Automatic refresh on; False = Automatic refresh off.
The default value is False.
Automatic refres h works by periodically calling the Execute method. The time interval is based on the
RefreshFrequenc y property. The default time interval is 60 seconds.
The AutoRefresh property is set to False if the last manual call to the Execute method failed. If the
AutoRef resh property is set to True, and for some reason lat er fails, it is automatically set to False, and
the aaHistClientActiveDataGrid is reset (cleared).
BOF
The BOF property is a read-only property that returns whet her the us er has attempt ed to navigat e prior to
the first row in the data grid.
Syntax
Result = aaHistClientActiveDataGrid.BOF;
Return Value
The result is a discrete. True is returned if an attempt was made to move prior to the first row in the data
grid through a call to the MoveP revious method; otherwise False is returned.
BusinessObjectServer
This read-write property specifies the path to the HTTP server when using HTTP to access the historian.
Syntax
aaHistClientActiveDataGrid.BusinessObjectServer = message;
Result = aaHistClientActiveDataGrid.BusinessObjectServer;
Remarks
If this property is set to a non-empty string value, the control uses HTTP access to the historian. If it is set
to an empty string, the control uses regular SQL Server access.
You can obt ain a secured connection by specifying https://<Servername>. For example:
#ActiveDataGrid.BusinessObjectServer ="HTTPS://www.server.com";
For more information on using HTTP to access the historian, s ee Considerations for VPN Access.
To enable HTTP access, you must also specify the virtual directory name using the
VirtualDirectoryName property.
ColumnCount
The ColumnCount property is a read -only property that gets the number of columns in the current result
set of the dat a grid.
Syntax
Result = aaHistClientActiveDataGrid.ColumnCount;
Return Value
Returns the number of columns as an integer. If the data grid is not connected, 0 is returned.
Remarks
The default value is 0.
Connected
Use this read-write property to initiate or terminate a connection to the AVEVA Historian and to check
whet her a connection is currently active.
Syntax
aaHistClientActiveDataGrid.Connected = discrete;
Result = aaHistClientActiveDataGrid.Connected;
Remarks
If set to True, and the ServerName, DatabaseName, UserName, and Password properties are set, the
control tries to connect to the AVEVA Historian and execute the SQL statement specified by the
SQLString property. If an error occurs, the Connected property is set to False.
If set to False while a connection is active, the control is disconnected from the server and reset.
The default value is False.
DatabaseName
The Dat abaseName property is a read-write property that specifies the name of the database to connect
to. The database must exist on the database server specified by the ServerName property.
Syntax
aaHistClientActiveDataGrid.DatabaseName = message;
Result = aaHistClientActiveDataGrid.DatabaseName;
Remarks
When working with a AVEVA Historian database, the value for the DatabaseName property must be
Runtime. However, aaHistClientActiveDataGrid can connect to any database in the Microsoft SQL
Server, such as the master database.
The default value is Runtime.
DefaultColumnW idth
The Default ColumnWidth property is a read-write property that gets or sets the default column width, in
pixels, of the columns shown in the dat a grid.
Syntax
aaHistClientActiveDataGrid.DefaultColumnWidth = integer;
Result = aaHistClientActiveDataGrid.DefaultColumnWidth;
Remarks
The default value is 100.
Domain
The Domain property is a read-write property that gets or sets the domain string for the connection to the
server.
Syntax
aaServer.Domain = message;
Result = aaServer.Domain;
Remarks
This property is useful in cases where the Windows integrated security requires the domain name to be
specified.
The default is an empty message value ( "" ).
Enabled
The Enabled property is a read-write property that enables or disables the user interface functionality of
the control.
Syntax
aaHistClientActiveDataGrid.Enabled = discrete;
Result = aaHistClientActiveDataGrid.Enabled;
Remarks
True = User interface functionality enabled; False = User int erface functionality disabled.
The default value is True.
EnableShortcutMenu
The EnableS hortcutMenu property is a read-write property that enables or disables the right-click
shortcut menu of the control.
Syntax
aaHistClientActiveDataGrid.EnableShortcutMenu = discrete;
Result = aaHistClientActiveDataGrid.EnableShortcutMenu;
Remarks
True = Shortcut menu enabled; False = Shortcut menu disabled.
The default value is True.
EOF
The EOF property is a read-only property that returns whether the aaHistClientActiveDataGrid user has
attempted to navigate beyond the last row in the data grid.
Syntax
Result= aaHistClientActiveDataGrid.EOF;
Return Value
The result is a discrete. True is returned if an attempt was made t o move past the last row in t he data grid
with a call to the MoveNext method; otherwise False is returned.
Handle
The Handle property is a read-only property that returns the Window handle for the control.
Syntax
Result = aaHistClientActiveDataGrid.Handle;
Return Value
The return value is an integer. Returns the 32 -bit Window handle of the main container window.
Remarks
The Window handle is useful when using W indows API functions to manipulate a control.
This property has no default value.
Password
The Password property is a write-only property that specifies the password for t he provided username on
the specified AVEVA Historian.
Syntax
aaHistClientActiveDataGrid.Password = message;
Remarks
See the AVEVA Historian documentation for the default passwords associated with the default
usernames.
RefreshFrequency
The RefreshFrequency property is a read-write property that specifies how often an automatic refresh of
the aaHistClientActiveDataGrid occurs.
Syntax
aaHistClientActiveDataGrid.RefreshFrequency = integer;
Result = aaHistClientActiveDataGrid.RefreshFrequency;
Remarks
This property specifies the frequency, in milliseconds, that the SQL statement is re-executed when the
AutoRefresh property is set to True. The frequency value must be great er than 0.
The default value is 60,000 milliseconds (1 minute).
Row
The Row property is a read-only property that returns the relative row number of the selected row in the
data grid.
Syntax
Result = aaHistClientActiveDataGrid.Row;
Return Value
The return value is an integer that specifies the number of the selected row. Row numbers start at 1.
Remarks
The default value is -1.
RowCount
The RowCount property is a read-only property that returns the total number of rows in the rec ord set that
is returned.
Syntax
Result= aaHistClientActiveDataGrid.RowCount;
Return Value
The return value is an integer that specifies the number of rows in the record set.
Remarks
The default value is 0.
ServerName
The ServerName property is a read-write property that specifies the name of the AVEVA Historian to
which you want to connect.
Syntax
aaHistClientActiveDataGrid.ServerName = message;
Result = aaHistClientActiveDataGrid.ServerName;
Remarks
The ServerName property must be set to establish a connection to an AVEVA Historian.
This property has no default value.
ShowErrorDlgs
The ShowErrorDlgs property is a read-writ e property that determines whether error messages appear
during runtime in an error dialog box.
Syntax
aaHistClientActiveDataGrid.ShowErrorDlgs = discrete;
Result = aaHistClientActiveDataGrid.ShowErrorDlgs;
Remarks
True = Error messages displayed; False = Error messages suppressed. If the error message display is
disabled, you do not see any errors, even if they are critical. Use this option wit h extreme caution.
The default value is True.
ShowNavigatorBar
The ShowNavigatorBar property is a read-write property that shows or hides the Navigator t oolbar that is
located above the data grid.
Syntax
aaHistClientActiveDataGrid.ShowNavigatorBar = discrete;
Result = aaHistClientActiveDataGrid.ShowNavigatorBar;
Remarks
True = Shows the Navigator toolbar; False = Hides the Navigator toolbar.
The default value is True.
SQLString
The SQLString property is a read-write property that specifies the SQL statement to be executed by the
Execute method.
Syntax
aaHistClientActiveDataGrid.SQLString = message;
Result = aaHistClientActiveDataGrid.SQLString;
Remarks
The aaHistClientActiveDataG rid us es the InS QL OLE DB provider to access the AVEVA Historian
historical data. If you are querying data from the analog or discrete history tables, the SQL statement
must follow the syntax rules for OLE DB provider queries. Otherwise, you can use any valid
Trans act-SQL that returns rows.
Remarks
The default is an empty message value ( "" ).
UserName
The UserName property is a read-write property that specifies the us ername used to logon to the AVEVA
Historian specified in the ServerName property.
Syntax
aaHistClientActiveDataGrid.UserName = message;
Result = aaHistClientActiveDataGrid.UserName;
Remarks
See the AVEVA Historian documentation for information on the default AVEVA Historian users.
Remarks
The default UserName is wwUser.
VirtualDirectoryName
The VirtualDirectory Name property is a read-writ e property that gets or sets the virtual directory name.
more
Syntax
aaHistClientActiveDataGrid.VirtualDirectoryName = message;
Result = aaHistClientActiveDataGrid.VirtualDirectoryName;
Remarks
The default is an empty message value ( "" ).
aaHistClientActiveDataGrid Methods
The aaHistClientActiveDataGrid methods are:
ClearGrid
ColumnName
ColumnValue
ColumnValueB yName
Execute
MoveFirst
MoveLast
MoveNext
MovePrevious
RowColumnValue
RowColumnValueByName
ShowP roperties Dialog
SQLAppend
ClearGrid
The ClearGrid method clears the contents of the data grid and sets the Connected property to False.
Syntax
aaHistClientActiveDataGrid.ClearGrid();
ColumnName
The ColumnName met hod returns the column name that corresponds to the specified column index.
Syntax
Result = aaHistClientActiveDataGrid.ColumnName(integer columnIndex);
Parameters
columnIndex
Number of the column name for which t he string representation is ret urned. Column names start at 1.
Return Value
The name of the column as a message value.
ColumnValue
The ColumnValue method returns the string representation of the dat a for the specified column of the
currently selected row.
Syntax
Result = aaHistClientActiveDataGrid.ColumnValue(integer Column);
Parameters
Column
Number of the column for which the string representation is returned. Column numbers start at 1.
Return Value
A message representation of the data.
ColumnValueByName
The ColumnValueByName method gets the string repres entation of the data for the specified column
name, for the currently selected row.
Syntax
Result = aaHistClientActiveDataGrid.ColumnValueByName(message columnName);
Parameters
columnName
The name of the column.
Return Value
The data in the column as a message value.
Execute
The Execute method execut es the SQL query defined in the SQLString property.
Syntax
[Result=] aaHistClientActiveDataGrid.Execute();
Return Value
True = Execution is successful; False = Execution unsuccessful.
Remarks
If the Execute method fails, the data grid is cleared and an error is raised.
The most typical conditions that cause Execute to fail are:
The specified server is not running or connection to it is not available.
The server assigned to the ServerName property is invalid or not found.
The username assigned to the UserName property is invalid or not found.
The password assigned to the Password property is invalid or not associated with the specified
UserName on the specified ServerName.
There is a syntax error in the SQLString property.
The DatabaseName property was not assigned or the wrong database was specified.
The BusinessObjectServer property is set to an HTTP server that does not exist, or the HTTP server
specified is not running
MoveFirst
The MoveFirst method selects the first row in the data grid.
Syntax
aaHistClientActiveDataGrid.MoveFirst();
MoveLast
The MoveLast method selects the last row in the data grid.
Syntax
aaHistClientActiveDataGrid.MoveLast();
MoveNext
The MoveNext method selects the next row in the dat a grid.
Syntax
aaHistClientActiveDataGrid.MoveNext();
Remarks
If an attempt is made to move past the last row the EOF property is set to True.
MovePrevious
The MoveP revious method selects the previous row in the data grid.
Syntax
aaHistClientActiveDataGrid.MovePrevious();
Remarks
If an attempt is made to move past the last row the BOF property is set to True.
RowColumnValue
The RowColumnV alue m ethod returns the string representation of the data in the specified row and
column in the data grid.
Syntax
[Result=] aaHistClientActiveDataGrid.RowColumnValue(integer row, integer
column);
Parameters
row
Number of the row for which the string representation is returned. Row numbers start at 1.
column
Number of the column for which the string representation is returned. Column numbers start at 1.
Return Value
A message representation of the data.
Remarks
This property does not move the selected row, nor does it require the selected row to be changed.
RowColumnValueByName
The RowColumnV alueBy Name method gets the value at the indicated row and column (specified by
name).
Syntax
[Result=] aaHistClientActiveDataGrid.RowColumnValueByName(integer row,
message columnName);
Parameters
row
Number of the row for which the string representation is returned. Row numbers start at 1.
columnName
Name of the column for which the string represent ation is returned.
Return Value
A message representation of the data.
Remarks
This property does not move the selected row, nor does it require the selected row to be changed.
ShowPropertiesDialog
The ShowPropertiesDialog method shows the Properties dialog box for the aaHistClientActiveDataGrid
during runtime.
Syntax
[Result=] aaHistClientActiveDataGrid.ShowPropertiesDialog( integer Page);
Parameters
Page
Specifies which tab should be active when the Propertie s dialog box is opened. 0 = InSQL
Connection tab is active; 1 = SQL tab is active.
SQLAppend
The SQLA ppend method appends a section of a long SQL statement to the end of the existing SQL
string in the SQLString property.
Syntax
[Result=] aaHistClientActiveDataGrid.SQLAppend(message SQL);
Parameters
SQL
Section of SQL to be added to the SQL statement(s) that are to be executed.
Remarks
This method facilitates the scripting of long SQL Statements within the InTouch HMI software. Currently,
the InTouch HMI s oft ware has a 131 character limitation for strings. To circumvent this limitation, us e this
method to add SQL statements in sections.
Example
The following example demonstrates how to use the SQLAppend method to setup the necessary SQL to
retrieve the last 30 minutes of history data for the tag 'SysTimeSec.'
#aaHistClientActiveDataGrid.ServerName = "toddm1";
#aaHistClientActiveDataGrid.UserName = "wwUser";
#aaHistClientActiveDataGrid.Password = "wwUser";
#aaHistClientActiveDataGrid.SQLString = "";
#aaHistClientActiveDataGrid.SQLAppend("DECLARE @StartDate Datetime");
#aaHistClientActiveDataGrid.SQLAppend("DECLARE @EndDate Datetime");
#aaHistClientActiveDataGrid.SQLAppend("SELECT @StartDate = DateAdd(mi, -30,
GetDate())");
#aaHistClientActiveDataGrid.SQLAppend("SELECT @EndDate = GetDate()");
#aaHistClientActiveDataGrid.SQLAppend("SELECT TagName, DateTime, Value");
#aaHistClientActiveDataGrid.SQLAppend("FROM v_AnalogHistory");
#aaHistClientActiveDataGrid.SQLAppend("WHERE TagName IN ('SysTimeMin')");
#aaHistClientActiveDataGrid.SQLAppend("AND DateTime >= @StartDate");
#aaHistClientActiveDataGrid.SQLAppend("AND DateTime <= @EndDate");
#aaHistClientActiveDataGrid.SQLAppend("AND wwRetrievalMode = 'Delta' ");
#aaHistClientActiveDataGrid.Execute();
aaHistClientActiveDataGrid Events
The aaHistClientActiveDataGrid control has the following events:
OnClick
OnDblClick
OnError
For information on ambient events, see Common Events.
OnClick
The OnClick event is triggered every time the user clicks on a data row in the control.
Syntax
aaHistClientActiveDataGrid.OnClick;
OnDblClick
The OnDblClick event is triggered every time the user double -clicks on a data row in the cont rol.
Syntax
aaHistClientActiveDataGrid.OnDblClick;
OnError
The OnE rror event executes each time an error message is to be displayed.
Syntax
aaHistClientActiveDataGrid.OnError(integer ErrorNo, ref message ErrStr, ref
discrete ShowErrorDlg);
Parameters
ErrorNo
A unique number that corresponds to the error message, whic h is specified by the ErrStr parameter.
ErrStr
Message to be displayed in the error dialog box.
ShowE rrorDlg
Determines whet her the error dialog box appears. True = Error dialog box displayed; False = Err
dialog box not displayed. The ShowErrorDlg parameter defaults to the value of the ShowErrorDlg
property.
Remarks
The OnError event provides a means to intercept an error message and either disable it from showing or
change the error message text shown.
For information on error numbers and error text pertaining to eac h control, see the "Error Messages"
section in the chapter for that control.
The OnE rror event executes prior to the display of any error messages. In your script, you can then
capture the error, check the ErrStr parameter, and set the parameter to a new value. You can also
translate the same string into a different language. If you want to implement your own error handling, you
can suppress the default error dialog by setting the ShowErrorDlg parameter to False.
Example
The following example shows how the event parameter can be set in the InTouch HMI software:
TRErrorNo = #ThisEvent.OnErrorerrorNo; {Assign error number from the event to
a tag called TRErrorNo}
IF TRShowErrorDlg == 0 THEN {Checking user preference on showing Error Dialog}
#aaHistClientActiveDataGrid.ServerName = "maggie";
#aaHistClientActiveDataGrid.UserName = "wwUser";
#aaHistClientActiveDataGrid.Password = "wwUser";
#aaHistClientActiveDataGrid.DatabaseName = "Runtime";
#aaHistClientActiveDataGrid.SQLString = "";
#aaHistClientActiveDataGrid.SQLAppend("DECLARE @StartDate Datetime");
#aaHistClientActiveDataGrid.SQLAppend("DECLARE @EndDate Datetime");
#aaHistClientActiveDataGrid.SQLAppend("SELECT @StartDate = DateAdd(mi, -30,
GetDate())");
#aaHistClientActiveDataGrid.SQLAppend("SELECT @EndDate = GetDate()");
#aaHistClientActiveDataGrid.SQLAppend("SELECT TagName, DateTime, Value");
#aaHistClientActiveDataGrid.SQLAppend("FROM v_AnalogHistory");
#aaHistClientActiveDataGrid.SQLAppend("WHERE TagName IN ('SysTimeSec')");
#aaHistClientActiveDataGrid.SQLAppend("AND DateTime >= @StartDate");
#aaHistClientActiveDataGrid.SQLAppend("AND DateTime <= @EndDate");
#aaHistClientActiveDataGrid.SQLAppend("AND wwRetrievalMode = 'Cyclic'");
#aaHistClientActiveDataGrid.SQLAppend("AND wwCycleCount = 100");
#aaHistClientActiveDataGrid.Connected = 1;
#aaHistClientActiveDataGrid.MoveFirst();
FOR Row = 1 TO #aaHistClientActiveDataGrid.RowCount
TagName = #aaHistClientActiveDataGrid.ColumnValue(0);
DateTime = #aaHistClientActiveDataGrid.ColumnValue(1);
TagValueText = #aaHistClientActiveDataGrid.ColumnValue(2);
TagValue = StringToReal( TagValueText );
EndOfFile = #aaHistClientActiveDataGrid.EOF;
IF EndOfFile THEN
EXIT FOR;
ELSE
#aaHistClientActiveDataGrid.MoveNext();
ENDIF;
NEXT;
Another slightly different approach is to go through the returned data without actually moving the row
selector using the RowColumnValue method. This approach is much more efficient becaus e there is no
UI updating.
#aaHistClientActiveDataGrid.ServerName = "maggie";
#aaHistClientActiveDataGrid.UserName = "wwUser";
#aaHistClientActiveDataGrid.Password = "wwUser";
#aaHistClientActiveDataGrid.DatabaseName = "Runtime";
#aaHistClientActiveDataGrid.SQLString = "";
#aaHistClientActiveDataGrid.SQLAppend("DECLARE @StartDate Datetime");
#aaHistClientActiveDataGrid.SQLAppend("DECLARE @EndDate Datetime");
#aaHistClientActiveDataGrid.SQLAppend("SELECT @StartDate = DateAdd(mi, -30,
GetDate())");
Error
Number Error Message
5 You must first execute the SQL query before performing this
operation.
6 You must type the SQL query you wish to execute before a
connection attempt is performed.
8 Row (<Row Index>) does not exist in the current query results.'
9 Column (< Column index>) does not exist in the current query.
Error
Number Error Message
C HAPTER 13
aaHistClientSingleValueEntry Control
Use the aaHistClientSingleValueEntry control to manually add a tag value to the AVEVA Historian
database.
2. In the Tagname list, type the name of the tag for which you want to insert a value. To browse for a
tag, click the ellipsis button. The Tag Picker appears, in which you can browse for a tag. For more
information on using the Tag Picker, see Tag Pick er.
3. In the Date and time box, enter the timestamp used for the inserted value. To use the current time,
select the check box to the right of the Date and time box.
4. In the Value box, enter the dat a value to insert for the tag.
5. Click the arrow button.
The status of the ins ertion appears in the status bar.
FieldLabelPosition
FieldLayout Horiz ontal
HideDat eTimeModeTabs
HideFieldLabels
HideStat usBar
InsertButtonDisable
InsertButtonVisible
InTouchDateTime
LastErrorDetails
LastErrorMessage
LastOperationResult
LastOperationSuccessful
P wd
Qualit y
Qualit yDetail
Qualit yDetailFieldDisable
Qualit yDetailFieldVisible
Qualit yFieldDisable
Qualit yFieldVisible
RememberEnteredTags
Servers
StringValue
TagName
TagNameFieldDisable
TagNameFieldVisible
TagPick erButtonDisable
TagPick erButtonVisible
Tags
TagType
TagValid
Trans parent
User
UseTimezone
Value
ValueE x
ValueFieldDisable
AnalogValue
The AnalogV alue property is a read-write property that gets or sets the analog value to be inserted.
Syntax
aaHistClientSingleValueEntry.AnalogValue = real;
Result = aaHistClientSingleValueEntry.AnalogValue;
Remarks
The default value is 0.
CurrentServerName
The CurrentServerName property is a read-write property that gets or sets the name of the AVEVA
Historian.
Syntax
aaHistClientSingleValueEntry.CurrentServerName = message;
Result = aaHistClientSingleValueEntry.CurrentServerName;
Remarks
If the server has already been added, the User property is automatically set to the current username.
This property has no default value.
DateTime
The DateTime property is a read-write property that gets or sets the timestamp to be used for the value
insert.
Syntax
aaHistClientSingleValueEntry.DateTime = DateTime;
Result = aaHistClientSingleValueEntry.DateTime;
Remarks
To use the current time, set this property to 0.
Setting this property also updat es the DateTimeString and InTouchDateTime properties, and vice-versa.
For more information on the DateTime data type, see Dat eTime.
Remarks
The default value is 12:00:00 AM.
DateTimeFieldDisable
The DateTimeFieldDisable property is a read-write property that gets or sets whether the Date and time
box is available in the control at runtime.
Syntax
aaHistClientSingleValueEntry.DateTimeFieldDisable = discrete;
Result = aaHistClientSingleValueEntry.DateTimeFieldDisable;
Remarks
The default value is False.
DateTimeFieldVisible
The DateTimeFieldVisible property is a read-write property that gets or sets whether the Date and time
box is visible in the control at runtime.
Syntax
aaHistClientSingleValueEntry.DateTimeFieldVisible = discrete;
Result = aaHistClientSingleValueEntry.DateTimeFieldVisible;
Remarks
The default value is True.
DateTimeString
The DateTimeString property is a read-write property that gets and sets the timestamp as a string value
to be used for the insert.
Syntax
aaHistClientSingleValueEntry.DateTimeString = message;
Result = aaHistClientSingleValueEntry.DateTimeString;
Remarks
The DateTimeString property reflects the value of the Dat eTime property, but it is expressed as a string
that uses local regional settings. The DateTime property is expressed in the Dat e format.
If the Dat eTime property is set to 0, the current date and time are returned. If this property is set t o an
empty string ( " " ), the current date and time are used for the insert.
Setting this property also updates the DateTime and InTouchDateTime properties, and vic e-versa.
Remarks
The default is an empty message value (which indicates to us e the current time).
DisableTagEntry
The DisableTagEnt ry property is a read-write property that gets or sets whether the Tag Name box can
be edited at runtime.
Syntax
aaHistClientSingleValueEntry.DisableTagEntry = discrete;
Result = aaHistClientSingleValueEntry.DisableTagEntry;
Remarks
If set to True, the runtime user cannot use the Tag Name box to type in a tagname. The user needs to
use the Tag Picker to select a tag or select a tag from a list of recently used tags. (provi ded that either
functionality is enabled).
The default value is False.
DisplayErrorMessages
The DisplayErrorMessage property is a read-write property that enables or disables the display of error
message dialog boxes.
Syntax
aaHistClientSingleValueEntry.DisplayErrorMessages = discrete;
Result = aaHistClientSingleValueEntry.DisplayErrorMessages;
Remarks
If set to True, all error message dialog boxes appear. If set to False, no error messages appear, except
for server logon failure messages.
The default value is True.
FieldLabelPosition
The FieldLabelPosition property is a read-write property that gets or sets whether the field labels appear
when the cont rol is in the vertical layout mode.
Syntax
aaHistClientSingleValueEntry.FieldLabelPosition =
aaFieldLabelPositionEnumeration;
Result = aaHistClientSingleValueEntry.FieldLabelPosition;
Remarks
For more information on the aaFieldLabelPositionEnumeration enumeration, see
aaFieldLabelPositionEnumeration E numeration.
If the FieldLayoutHorizontal property is set to True, the FieldLabelPosition property has no effect.
The default value is 0.
FieldLayoutHorizontal
The FieldLay outHorizontal property is a read -write property that gets or sets whether or not the text
boxes (fields) for the control appear next to each other from left to right (horizontally) instead of stacked
on top of eac h other (vertically).
Syntax
aaHistClientSingleValueEntry.FieldLayoutHorizontal = discrete;
Result = aaHistClientSingleValueEntry.FieldLayoutHorizontal;
Remarks
The default value is True.
HideDateTimeModeTabs
This read-write property controls whet her the check box next to the Date and time box is visible at
runtime. If visible, the check box allows the user to toggle between using automatic timestamps and
manually specifying a timestamp.
Syntax
aaHistClientSingleValueEntry.HideDateTimeModeTabs = discrete;
Result = aaHistClientSingleValueEntry.HideDateTimeModeTabs;
Remarks
If set to False, the check box is visible.
The default value is False.
If the property is set to False, the HideDateTimeModeTags property is overridden.
HideFieldLabels
The HideFieldLabels property is a read-write property that gets or sets whether the labels for the text
boxes (fields) are visible to the runtime us er.
Syntax
aaHistClientSingleValueEntry.HideFieldLabels = discrete;
Result = aaHistClientSingleValueEntry.HideFieldLabels;
Remarks
If set to True, the field labels are hidden.
The default value is False.
HideStatusBar
The HideStatusBar property is a read -write property that gets or sets whether the status bar is visible to
the runtime user.
Syntax
aaHistClientSingleValueEntry.HideStatusBar = discrete;
Result = aaHistClientSingleValueEntry.HideStatusBar;
Remarks
If set to True, the status bar is hidden.
The default value is False.
The status bar appears at the bottom of the control.
InsertButtonVisible
The InsertButtonVisible property is a read -write property that gets or sets whet her the Insert button is
visible in the control at runtime.
Syntax
aaHistClientSingleValueEntry.InsertButtonVisible = discrete;
Result = aaHistClientSingleValueEntry.InsertButtonVisible;
Remarks
The default value is True.
InTouchDateTime
The InTouchDateTime property is a read-writ e property that gets or sets the timestamp for the data insert
using the InTouch HMI software Date format.
Syntax
aaHistClientSingleValueEntry.InTouchDateTime = real;
Result = aaHistClientSingleValueEntry.InTouchDateTime;
Remarks
The InTouchDateTime property reflects the value of the DateTime property, but it is expressed in the
InTouch HMI software $DateTime format. The DateTime property is expressed in the Date format. For
more information on the $DateTime format, see the InTouch HMI software documentation.
If this property is set -1, the current date and time are used for the insert.
If the Dat eTime property is set to 0, the current date and time are returned for the InTouchDateTime
property.
Setting this property also updates the DateTime and Dat eTimeString properties, and vice -versa.
The DateTime property supports dates starting from 12/30/1899. The InTouch HMI software supports
dates starting from 1/1/1970. Therefore, if the Dat eTime property is set to a date prior to 1/1/1970, the
InTouchDateTime property are set to -1. To support dates prior to 1/ 1/1970, use the DateTimeString
property.
The default value is -1.
Example
The following example sets the timestamp for the insert to the current time (reflected by the $DateTime
system tag in the InTouch HMI soft ware).
aaHistClientSingleValueEntry1.InTouchDateTime = $DateTime;
LastErrorDetails
The LastErrorDetails property is a read-only property that gets the error code for the error message from
SQL Server.
Syntax
Result = aaHistClientSingleValueEntry.LastErrorDetails;
Remarks
If a SQL error occurred during the last insert, the error is returned to this property. This property contains
the long version of the error.
No details are available if the LastOperationResult property contains a value between 0 and -6.
To clear the contents of this property, use the Res et method.
This property has no default value.
LastErrorMessage
The LastErrorMessage property is a read -only property that gets the status of the last data ins ert.
Syntax
Result = aaHistClientSingleValueEntry.LastErrorMessage;
Remarks
The status returned is the short version. Use the LastErrorDetails property to return the details.
To clear the contents of this property, use the Res et method.
This property has no default value.
LastOperationResult
The LastOperationResult property is a read-only property that gets the error code for the last insert.
Syntax
Result = aaHistClientSingleValueEntry.LastOperationResult;
Return Values
Returns one of the following values:
LastOperationSuccessful
The LastOperationS uccessful property is a read-only property that gets the status of the last data value
insert.
Syntax
Result = aaHistClientSingleValueEntry.LastOperationSuccessful;
Remarks
If set to True, the last insert was successful.
To reset this property, use the Reset method.
The default value is False.
Pwd
Use this write-only property to specify the password that should be used to log on the current user to the
current server.
Syntax
aaHistClientSingleValueEntry.Pwd = message;
Remarks
This property has no default value.
Quality
The Quality property is a read-write property that gets or sets the data quality to be used for the inserted
value.
Syntax
aaHistClientSingleValueEntry.Quality = integer;
Result = aaHistClientSingleValueEntry.Quality;
Remarks
This property is only considered if you set it to a value of 1 (Bad). In this case, a NULL value is stored on
the historian with a QualityDetail value of 24. In all other cases, the quality of the inserted value is
determined by the QualityDetail property.
Valid values are:
-1 = None.
0 = Good
1 = Bad
16 = Doubtful
The default value is -1.
QualityDetail
The QualityDetail property is a read-write property that gets or sets the data quality detail to be used for
the inserted value.
Syntax
aaHistClientSingleValueEntry.DataQuality = integer;
Result = aaHistClientSingleValueEntry.DataQuality;
Remarks
The value must be present in the QualityMap table of the AVEVA Historian. If the value does not exist,
any attempt to set the quality detail for the inserted value is ignored, and this property is reset to the
default.
The default value is -1. In this case, the value is inserted with a QualityDetail value of 192 (Good quality).
Before you can set this property, you must have a valid server connection.
QualityDetailFieldDisable
The QualityDetailFieldDisable property is a read -write property that gets or sets whether the Quality
Detail box is available in the control at runtime.
Syntax
aaHistClientSingleValueEntry.QualityDetailFieldDisable = discrete;
Result = aaHistClientSingleValueEntry.QualityDetailFieldDisable;
Remarks
The default value is False.
QualityDetailFieldVisible
The QualityDetailFieldVisible property is a read-write property that gets or sets whether the Quality
Detail box is visible in the control at runtime.
Syntax
aaHistClientSingleValueEntry.QualityDetailFieldVisible = discrete;
Result = aaHistClientSingleValueEntry.QualityDetailFieldVisible;
Remarks
The default value is False.
QualityFieldDisable
The QualityFieldDisable property is a read -write property that gets or sets whether the Quality box is
available in the control at runtime.
Syntax
aaHistClientSingleValueEntry.QualityFieldDisable = discrete;
Result = aaHistClientSingleValueEntry.QualityFieldDisable;
Remarks
The default value is False.
QualityFieldVisible
The QualityFieldVisible property is a read-writ e property that gets or sets whether the Quality box is
visible in the control at runtime.
Syntax
aaHistClientSingleValueEntry.QualityFieldVisible = discrete;
Result = aaHistClientSingleValueEntry.QualityFieldVisible;
Remarks
The default value is False.
Any value the user specifies in the Quality box is ignored. The quality of the inserted value is determined
by the value specified in the Quality Detail box.
RememberEnteredTags
The RememberEnt eredTags property is a read-write property that gets or sets whether the control keeps
track of previously entered tags and makes them available in the Tag Name box at runtime.
Syntax
aaHistClientSingleValueEntry.RememberEnteredTags = discrete;
Result = aaHistClientSingleValueEntry.RememberEnteredTags;
Remarks
The default value is True.
Servers
The Servers property is a read-write property that sets or gets the list of servers used by the cont rol.
Syntax
aaHistClientSingleValueEntry.Servers = aaServers;
Result = aaHistClientSingleValueEntry.Servers;
Remarks
This property references the aaS ervers object. For more information, see aaS erver Object.
This property has no default value.
StringValue
The StringValue property is a read-write property that sets or gets the value to be inserted for a tag.
Syntax
aaHistClientSingleValueEntry.StringValue = message;
Result = aaHistClientSingleValueEntry.StringValue;
Remarks
This property is provided for use within the InTouch HMI software, as the InTouch HMI software does not
handle variant data types. The Value property is a variant datatype.
Setting this property automatically updates the Value and AnalogValue properties.
This property has no default value.
TagName
The TagName property is a read-write property that gets or sets the name of the current tag assigned to
the control.
Syntax
aaHistClientSingleValueEntry.TagName = message;
Result = aaHistClientSingleValueEntry.TagName;
Remarks
Use this property to change an existing tag or to add a new tag.
This property has no default value.
TagNameFieldDisable
The TagNameFieldDisable property is a read-write property that gets or sets whet her the Tag Name box
is available in the control at runtime.
Syntax
aaHistClientSingleValueEntry.TagNameFieldDisable = discrete;
Result = aaHistClientSingleValueEntry.TagNameFieldDisable;
Remarks
The default value is False.
TagNameFieldVisible
The TagNameFi eldVisible property is a read-write property that gets or sets whether the Tag Name box
is visible in the control at runtime.
Syntax
aaHistClientSingleValueEntry.TagNameFieldVisible = discrete;
Result = aaHistClientSingleValueEntry.TagNameFieldVisible;
Remarks
If you set this property to False, the Tag Picker button is also hidden at runtime.
The default value is True.
TagPickerButtonDisable
The TagPickerButtonDisable property is a read -write property that gets or sets whether the Tag Pick er
button to the right of the Tag Name box is available in the control at runtime.
Syntax
aaHistClientSingleValueEntry.TagPickerButtonDisable = discrete;
Result = aaHistClientSingleValueEntry.TagPickerButtonDisable;
Remarks
The default value is False.
TagPickerButtonVisible
The TagPickerButtonVisible property is a read -write property that gets or sets whether the Tag Picker
button to the right of the Tag Name box is visible in the control at runtime.
Syntax
aaHistClientSingleValueEntry.TagPickerButtonVisible = discrete;
Result = aaHistClientSingleValueEntry.TagPickerButtonVisible;
Remarks
The default value is True.
Tags
The Tags property is an array of aaTag objects that corresponds to the tags listed in the control’s
Tagname list.
Syntax
aaHistClientSingleValueEntry.Tags(n) = aaTag;
Result = aaHistClientSingleValueEntry.Tags(n);
Remarks
For more information on the aaTag object, see aaTag Object.
This property is not accessible in the InTouch HMI soft ware.
This property has no default value.
TagType
The TagType property is a read-only property that returns the tag type for the current tag.
Syntax
Result = aaHistClientSingleValueEntry.TagType;
Remarks
Valid values are:
-1 The tag type can’t be determined. This can occur if the tag is
invalid or if there was a failure to connect to the server.
1 Analog
2 Discrete
3 String
4 Complex (not supported)
5 E vent
The default value is -1.
TagValid
The TagValid property is a read-only property that gets whet her the current tag is valid.
Syntax
Result = aaHistClientSingleValueEntry.TagValid;
Remarks
This value is set to False if the tag is invalid. The tag is invalid if there was a failure to connect to the
server.
The default value is False.
User
The User property is a read-write property that gets or sets the current user for a AVEVA Historian.
Syntax
aaHistClientSingleValueEntry.User = message;
Result = aaHistClientSingleValueEntry.User;
Remarks
Important: To insert data for a tag, a user must have wwAdministrator privileges for the AVEVA
Historian.
If the value of the CurrentServerName property is changed, this property reflects the current user for the
server.
The default User is wwUser.
UseTimezone
The UseTimezone property is a read -write property that is used for the timestamp of the inserted data
value.
Syntax
aaHistClientSingleValueEntry.UseTimezone = aaUseTimeZoneEnumeration;
Result = aaHistClientSingleValueEntry.UseTimezone;
Remarks
For more information on the aaUseTimeZoneEnumeration enumeration, see
aaUs eTimeZoneEnumeration Enumeration.
The default value is 0.
Value
This read-write property gets or sets the data value to be ins erted for a tag.
Syntax
aaHistClientSingleValueEntry.Value = object;
Result = aaHistClientSingleValueEntry.Value;
Remarks
This property has no default value. It is not available in the .NE T version of the control.
ValueEx
This read-write property gets or sets the data value to be ins erted for a tag.
Syntax
aaHistClientSingleValueEntry.ValueEx = object;
Result = aaHistClientSingleValueEntry.ValueEx;
Remarks
This property has no default value. It is not writeable from the InTouch HMI software.
ValueFieldDisable
The ValueFieldDisable property is a read-write property that gets or sets whether the Value box is
available in the control at runtime.
Syntax
aaHistClientSingleValueEntry.ValueFieldDisable = discrete;
Result = aaHistClientSingleValueEntry.ValueFieldDisable;
Remarks
The default value is False.
AddServerEx
The AddS erver method adds a server to the list.
Syntax
[Result=] aaHistClientSingleValueEntry.AddServerEx(message serverName,
message loginName, message password, [discrete bPersistPassword]);
Parameters
serverName
The name of the server to which to connect.
loginName
A valid user name for the server.
pass word
A valid password for the server.
bPersistPassword
If set to True, the password is remembered for the subsequent connection attempt. The password is
only remembered for single application; the persisted password is not available to all applications.
Return Value
Returns True if the server can be added to the list; otherwise returns False.
Remarks
Important: A user must have administrative privileges for the AVEVA Historian to insert data for a tag.
If the server is already part of the servers collection for the control and the provided log on
information matches wit h the information already available with the server, the control switches to
the new server. If t he provided log on information does not match, the server is logged off and logged
again with the new login credentials.
This method does not actually attempt to connect to the server. The connection occurs when tags
are added.
All parameters are required. Errors, if any, are reported.
AddServer
The AddS erver method adds a server to the list.
Syntax
[Result=] aaHistClientSingleValueEntry.AddServer(message serverName, message
loginName, message password, [discrete bPersistPassword]);
Parameters
serverName
The name of the server to connect.
loginName
A valid user name for the server.
pass word
A valid password for the server.
bPersistPassword
Optional parameter. If set to True, the password is remembered for the subsequent connection
attempts. The password is only remembered for single application; the persisted password is not
available to all applications. The default value is True.
Return Value
Returns True if the server can be added to the list; otherwise returns False.
Remarks
Important: A user must have administrative privileges for the AVEVA Historian to insert dat a for a tag.
If the server is already a part of the servers collection for the control and the provided log on
information matches wit h the information already available with the server, the control switches to
the new server. If t he provided log on information does not match, the server is logged off and log ged
again with the new login credentials.
This method does not actually attempt to connect to the server. The connection occurs when tags
are added.
AddTag
The AddTag method adds a tag for the cont rol.
Syntax
[Result=] aaHistClientSingleValueEntry.AddTag(message tagName);
Parameters
tagName
The name of the tag to add.
Return Value
Returns True if the tag can be added; otherwise returns False.
Remarks
Calling this method and assigning a value to the TagName property have the same effect.
Connect
The Connect method establishes a connection to the current server.
Syntax
[Result=] aaHistClientSingleValueEntry.Connect();
Return Value
Returns True if the connection can be made; otherwise returns False.
Remarks
This method is not required, since adding tags aut omatically causes a connection to the server. If the
server is already logged on to, then this method prompts a reconnect.
CreateManualTag
The CreateManualTag method creates a tag with a manual data acquisition type. The tag is creat ed in
the historian database.
Syntax
[Result=] aaHistClientSingleValueEntry.CreateManualTag(message tagName,
integer tagType);
Parameters
tagName
The name of the tag to create.
tagType
Disconnect
The Disconnect method disconnects the control from the current server.
Syntax
[Result=] aaHistClientSingleValueEntry.Disconnect();
Return Value
Returns True if the disconnect was successful; otherwise ret urns False.
Insert
The Insert method inserts a value for a manual tag.
Syntax
[Result=] aaHistClientSingleValueEntry.Insert();
Return Value
Returns True if the value was inserted; otherwise returns False.
Remarks
This method has the same effect as a runtime user clicking the Insert button on the control int erface.
If this method returns False, use the LastOperationResult, LastErrorMessage, and LastErrorDetails
properties to determine the cause of the failure.
InsertValue
The InsertValue met hod ins erts a value for a manual tag.
Syntax
[Result=] aaHistClientSingleValueEntry.InsertValue(message tagName, object
tagValue, [object dTime], [integer quality], [integer qualityDetail]);
Parameters
tagName
The tag for which the value is inserted.
tagValue
The value to insert.
dTime
The timestamp for t he data value. If this paramet er is not specified, the current date and time is used.
You can use a message value for this paramet er in an acceptable date/time format.
qualit y
The quality value to use.
qualit yDetail
The quality detail to use.
Return Value
For a description of return values, see the LastOperationResult property.
Remarks
This method attempts to insert the specified value for the specified tag on the current server, regardless
of the user interface settings. Likewise, the current settings for the user interface have no effect on the
calling of this method.
If this method ret urns False, use the LastErrorMessage and LastErrorDetails properties to determine the
cause of the failure.
Refresh
The Refresh method forces a repaint of the control.
Syntax
[Result=] aaHistClientSingleValueEntry.Refresh();
Reset
The Reset method clears the error information and values for the control.
Syntax
[Result=] aaHistClientSingleValueEntry.Reset();
Remarks
Calling this method clears all of the text boxes in the user int erface for the control. Also, any errors or
success indicators from a previous operation are cleared.
Change
The Change event is triggered when the significant properties for the control are chan ged.
Syntax
aaHistClientSingleValueEntry.Change();
Remarks
This event is triggered if any of the following properties change:
Tags
Servers
CurrentServerName
User
P wd
TagName
DateTime (DateTimeString and InTouc hDateTime)
Value (A nalogValue and StringV alue)
Qualit y
Qualit yDetail
LastOperationResult, LastOperationSuccessful, LastErrorMessage, LastErrorDetails
InsertComplete
The Insert Complete event is triggered when a dat a value insert operation succeeds.
Syntax
aaHistClientSingleValueEntry.InsertComplete();
Remarks
This event is not triggered by the InsertValue method.
InsertFail
The InsertFail event is triggered when a data value insert operation fails.
Syntax
aaHistClientSingleValueEntry.InsertFail();
Remarks
This event is not triggered by the InsertValue method.
TagNameChanged
The TagNameChanged event is triggered when the TagName property changes.
Syntax
aaHistClientSingleValueEntry.TagNameChanged();
Remarks
This event is triggered in addition to the Change event.
ValueChanged
The ValueChanged event is triggered when the Value, StringValue, or AnalogValue property changes.
Syntax
aaHistClientSingleValueEntry.ValueChanged();
Remarks
This event is triggered in addition to the Change event.
aaFieldLabelPositionEnumeration Enumeration
Specifies where the label appears for text boxes in the control.
aaUseTimeZoneEnumeration Enumeration
Specifies the time zone.
C HAPTER 14
Server Objects
Use the server-relat ed objects to manage individual servers and the servers in the server list.
aaServer Object
The aaServer object encapsulates a SQL connection to a server. It provides properties for configuring
the connection and methods for logging on and off the connection. It also includes read -only properties
for obtaining information about the server and met hods for working with the connection.
This object is referenced with parameters from ot her AVEVA Historian Client objects and controls.
aaServer Properties
The aaServer properties are:
BaseURLAddress
Build
Domain
LoggedOn
LoginID
LoginTimeout
MachineName
Name
Password
PatchLevel
QueryTimeout
RetainPass word
RevisionNumber
SchemaVersion
ServerName
ServerType
State
TrustedConnection
UseHttp
VirtualDirectoryName
BaseURLAddress
The BaseURLAddress property is a read -write property that gets or sets the base URL address for the
HTTP connection to the server.
Syntax
aaServer.BaseURLAddress = message;
Result = aaServer.BaseURLAddress;
Remarks
The default BaseURLAddress is http://localhost/.
Build
The Build property is a read-only property that returns the build number of the AVEVA Historian as a
message.
Syntax
Result = aaServer.Build;
Return Value
Returns the build number as a message.
Remarks
An exception is thrown if no one is currently logged on to the server. Use the LoggedOn property to find
out if the server is logged on.
This property has no default value.
Domain
The Domain property is a read-write property that gets or sets the domain string for the connection to the
server.
Syntax
aaServer.Domain = message;
Result = aaServer.Domain;
Remarks
This property is useful in cases where the Windows integrated security requires the domain name to be
specified.
The default is an empty message value ( "" ).
LoginID
The LoginID property is a read-write property that gets and sets the login ID for the SQL Server.
Syntax
aaServer.LoginID = message;
Result = aaServer.LoginID;
Remarks
This login ID is used if Windows integrated security is not used. A fter a log on has occurred, changing the
value of this property has no effect until a log off and subs equent log on occurs.
The default LoginID is wwUser.
LoggedOn
The LoggedOn property is a read-only property that returns True if the server has been logged on.
Syntax
Result = aaServer.LoggedOn;
Return Value
Returns True if the server has been logged on; otherwise, returns False.
Remarks
The default value is False.
LoginTimeout
The LoginTimeout property is a read-write property that determines how long to wait, in seconds, for the
connection to the server to be established before generating an error.
Syntax
aaServer.LoginTimeout = integer;
Result = aaServer.LoginTimeout;
Remarks
The default value is 5. A value of 0 means no timeout. If you do not use a timeout, the application waits
indefinitely when trying to connect to a server, which may cause it to hang if the server is unavailable.
MachineName
The MachineName property is a read-only property that returns the actual computer name of the server.
Syntax
Result = aaServer.MachineName;
Return Value
Returns the computer name as a message.
Remarks
An exception is thrown if no one is currently logged on to the server. Use the LoggedOn property to find
out if the server is logged on.
This property has no default value.
Name
The Name property is a read-only property that returns the name of the server.
Syntax
Result = aaServer.Name;
Return Value
Returns the name of the server as a message.
Remarks
This property has no default value.
Password
The Password property is a read-write property that gets and sets the password for the connection to the
server.
Syntax
aaServer.Password = message;
Result = aaServer.Password;
Remarks
This property is used if Windows integrated security is not used. After a logon has occurred, changing the
value of this property has no effect until a logoff and subsequent logon occurs.
The default Password is wwUser.
PatchLevel
The PatchLevel property is a read-only property that returns the patch level of the AVEVA Historian.
Syntax
Result = aaServer.PatchLevel;
Return Value
Returns the patch level as a message value.
Remarks
An exception is thrown if no one is currently logged on to the server. Use the LoggedOn property to find
out if the server is logged on.
This property has no default value.
QueryTimeout
The Query Timeout property is a read-write property that specifies the number of seconds to wait for a
query to finish executing before the operation is aborted with a timeout error.
Syntax
aaServer.QueryTimeout = integer;
Result = aaServer.QueryTimeout;
Remarks
Changing the value of this property after log on has no effect until log off and subsequent log on.
The default value is 120. A value of 0 means no timeout. If you do not use a timeout, the application waits
indefinitely when trying to query a server, which may cause it to hang if the server is unavailable.
RetainPassword
The RetainP assword property is a read-write property that indicates whether the password is stored in
persistent storage.
Syntax
aaServer.RetainPassword = discrete;
Result = aaServer.RetainPassword;
Remarks
The default value is True.
RevisionNumber
The RevisionNumber property is a read-only property that gets the revision number of the AVEVA
Historian.
Syntax
Result = aaServer.RevisionNumber;
Return Value
Returns the revision number as a message.
Remarks
An exception is thrown if no one is currently logged on to the server. Use the LoggedOn property to find
out if the server is logged on.
This property has no default value.
SchemaVersion
The SchemaVersion property is a read -only property that gets the AVEVA Historian Client schema
version for the server.
Syntax
Result = aaServer.SchemaVersion;
Return Value
Returns the schema version as a message.
Remarks
An exception is thrown if no one is currently logged on to the server. Use the LoggedOn property to find
out if the server is logged on.
This property has no default value.
ServerName
The ServerName property is a read-only property that gets the name of the server.
Syntax
Result = aaServer.ServerName;
Return Value
Returns the name of the server as a message.
Remarks
You can use the Name property to return the server name.
This property has no default value.
ServerType
The ServerType property is a read-only property that gets the server type.
Note: Provided for backward-compatibility only. Do not use for new applications.
Syntax
Result = aaServer.ServerType;
Return Value
Returns the server type as an enumeration. For more information, see aaServerType E numeration.
Remarks
This property always returns a value of 1.
State
The State property is a read-only property that gets the state of the server.
Syntax
Result = aaServer.State;
Return Value
Returns the server state as an enumeration. For more information, see aaS erverState Enumeration.
The default value is 2.
TrustedConnection
The TrustedConnection property is a read-writ e property that gets or sets the indication of whether
Windows integrated security is used when logging on to the AVEVA Historian.
Syntax
aaServer.TrustedConnection = discrete;
Result = aaServer.TrustedConnection;
Remarks
True = Windows integrated security is used; False = A SQL Server login ID and password is used.
Changing the value of this property after logon has no effect until logoff and subs equent logon.
The default value is False.
UseHttp
The UseHttp property is a read-write property that controls whether to use HTTP to access the SQL
Server.
Syntax
aaServer.UseHttp = discrete;
Result = aaServer.UseHttp;
Remarks
If set to True, HTTP is used. This property also creates the connection object, if necessary.
The default value is False.
VirtualDirectoryName
The VirtualDirectory Name property is a read-writ e property that gets or sets the virtual directory name.
Syntax
aaServer.VirtualDirectoryName = message;
Result = aaServer.VirtualDirectoryName;
Remarks
The default directory name is ActiveFactory.
aaServer Methods
The aaServer methods are:
LogOff
LogOn
LogOff
The LogOff method terminates the connection to the server.
Syntax
[Result=] aaServer.LogOff();
Remarks
Repeated calls to this method are harmless and do not result in further state change events. For more
information on state change events, see OnServerStat eChange.
LogOn
The LogOn method creates a connection (logs on) to the server.
Syntax
[Result=] aaServer.LogOn(out message statusMessage);
Parameters
statusMessage
Information about the result of the log on attempt.
Return Value
Returns True if the log on was successful; otherwise, returns False.
Remarks
The server must be configured before calling the LogOn method. Changes made to the server
configuration after a logon do not take effect until after a logoff and subsequent logon.
This method produces state change events. For more information, see OnServerStateChange.
aaServers Object
The aaS ervers object is a collection of aaServer instances. This object provides methods and properties
for maintaining a sorted list of servers. Use the properties to get information regarding the number of
servers in t he collection. Use the methods to perform basic functions for the collection, such as adding or
removing servers. Events for this object indicate when servers are added to the list, removed from the
list, updated within the list, or when a server's state changes.
This object is referenced with parameters from ot her AVEVA Historian Client objects and controls.
aaServers Properties
The aaServers properties are:
ApplicationName
Count
Items
ApplicationName
The ApplicationName property gets or sets the application name to be used in profile logs when making
a request to the AVEVA Historian.
Syntax
aaServers.ApplicationName = message;
[Result=] aaServers.ApplicationName;
Remarks
The name must be set prior to a server in the list initiating a log on.
Count
The Count property is a read-only property that gets the number of servers in the server list.
Syntax
Result = aaServers.Count;
Return Value
Returns the number as an integer.
Remarks
The default value is 0.
Items
The It ems property is a read-only property that returns the list of servers in an array.
Syntax
Result = aaServers.Items;
Return Value
Returns the aaServer object. The same aaS erver object instances that are in the server list are in the
array. For more information on the aaServer object, see aaServer Object.
Remarks
This property is not supported in the InTouch HMI soft ware.
This property has no default value.
aaServers Methods
The aaServers methods are:
Add
GetServer
Remove
Update
Add
The Add method adds a server to the server list.
Syntax
[Result=] aaServers.Add(message name);
Parameters
name
The name of the server to add.
Return Value
If a server with the given name is already in the list, the aaServer object for that server is returned.
Otherwise, a new server with the given name is added to the list and the aaServer object for the new
server is returned. For more information on the aaS erver object, see aaServer Object.
GetServer
The GetS erver method gets the aaS erver object for a server from the server list.
Syntax
[Result=] aaServers.GetServer(message name);
Parameters
name
The name of the server to get.
Return Value
If the server exists, the aaServer object is returned; otherwise, a NULL is returned. For more information
on the aaServer object, see aaServer Object.
Remove
The Remove method removes the specified server from the list.
Syntax
[Result=] aaServers.Remove(aaServer server);
Parameters
server
The name of the server to remove.
Return Value
If this method ret urns True, the instance was removed from the list. This met hod returns False if the exact
instance is not in the list, and the list remains unchanged.
Remarks
The aaServer instance passed as an argument to the OnServerRemoved event is the same instance
that was in the server list.
Update
The Update method updates the specified server in the server list.
Syntax
[Result=] aaServers.Update(aaServer server);
Parameters
server
The name of the server to update.
Return Value
Returns True if the given aaServer instance is currently in the server list; otherwise, False is returned.
Remarks
The Update method serves two purposes:
It causes the list of servers (which is the list that appears in the Server Configuration dialog box) to
be persisted, if persistence is in effect. For example, the AVEVA Historian Client Trend and the
AVEVA Historian Client Query applications run with persistence in effect; when you start these
applications, you see previously-configured servers in the list. Controls, however, do not necessarily
run with persistence in effect. When changes are made to properties in an instance of the aaServer
object, they are not persisted until the Update method is called.
It causes an OnS erverUpdated event to fire. This allows other parts of the application to respond to
changes in any of the servers in the servers list. When changes are made to properties in an
instance of aaServer, no event is fired to report the change u ntil the Update met hod is called.
The aaServer instance must be the exact same instance, not an instance with the same name. If the
instance is not in the list, then the list is not updated.
The aaServer instance passed as an argument to the OnServerUpdate d event is the exact same
instance that is in the list.
aaServers Events
The aaServers events are:
OnServerAdded
OnServerUpdated
OnServerRemoved
OnServerStateChange
These events are not accessible from the InTouch HMI software.
OnServerAdded
The OnS erverAdded event is triggered when a new server is added to the server list.
Syntax
aaServers.OnServerAdded(object source, aaServerListChangeArgs args);
Parameters
source
This parameter is not used.
args
The server state change arguments. For more information on the aaServerListChangeArgs object,
see aaServerListChangeArgs Object.
Remarks
This event is not accessible from the InTouch HMI soft ware.
OnServerUpdated
The OnS erverUpdated event is triggered when a server that is currently in the server list is updated.
Syntax
aaServers.OnServerUpdated(object source, aaServerListChangeArgs args);
Parameters
source
The object. For more information on specifying an object, see Object.
args
The server state change arguments. For more information on the aaServerListChangeArgs object,
see aaServerListChangeArgs Object.
Remarks
This event is not accessible from the InTouch HMI soft ware.
OnServerRemoved
The OnS erverRemoved event is triggered when a server is removed from the server list.
Syntax
aaServers.OnServerRemoved(object source, aaServerListChangeArgs args);
Parameters
source
The object. For more information on specifying an object, see Object.
args
The server state change arguments. For more information on the aaServerListChangeArgs object,
see aaServerListChangeArgs Object.
Remarks
This event is not accessible from the InTouch HMI soft ware.
OnServerStateChange
The OnS erverStateChange event is triggered when the state of a server is changed.
Syntax
aaServers.OnServerStateChange(object source, aaServerStateChangeArgs args);
Parameters
source
The object. For more information on specifying an object, see Object.
args
The server state change arguments. For more information on the aaServerStateChangeA rgs object,
see aaServerStateChangeA rgs Object.
Remarks
This event is not accessible from the InTouch HMI soft ware.
aaServerListChangeArgs Object
The aaServerListChangeA rgs object is used to return name of the aaServer instance that changed.
Properties
The aaServerListChangeA rgs object property is:
Server
Server
The Server property is a read-only property that gets the aaServer instance that was either added,
updated, or removed during the operation that produced the event.
Syntax
Result = aaServerListChangeArgs.Server;
Return Value
The aaServer instance. For more information on the aaServer object, see aaServer Object.
Remarks
This property has no default value.
aaServerStateChangeArgs Object
The aaServerListChangeA rgs object is used to return state changes for the server.
Properties
The aaServerStateChangeArgs object properties are:
Server
State
When
Message
Server
The Server property is a read-only property that gets the server that changed state.
Syntax
Result = aaServerStateChangeArgs.Server;
Return Value
The aaServer instance. For more information on the aaServer object, see aaServer Object.
Remarks
This property has no default value
State
The State property is a read-only property that gets the state to which the server changed.
Syntax
Result = aaServerStateChangeArgs.State;
Return Value
The aaServerState enumeration. For more information on the aaS erverState enumeration, see
aaServerState Enumeration.
Remarks
This property has no default value.
When
The When property is a read-only property that gets the date and time of the state change.
Syntax
Result = aaServerStateChangeArgs.When;
Return Value
The date/time stamp. For more information on the DateTime data type, see Dat eTime.
Remarks
This property has no default value.
Message
The Message property is a read-only property that gets any message available for the state change,
such as a detailed error message.
Syntax
Result = aaServerStateChangeArgs.Message;
Return Value
Returns the message as a message value.
Remarks
This property has no default value.
aaServerState Enumeration
Specifies the allowed states of a server.
aaServerType Enumeration
Specifies the types of a server.
Note: Provided for backward-compatibility only. Do not use for new applications.
C HAPTER 15
aaTag Object
When tags are read from an AVEVA Historian database, they are each stored in an instance of the
aaTag object. This object provides read-only properties for accessing the information about the tag that
was obtained from the AVEVA Historian.
aaTag Properties
The aaTag properties are:
DateCreated
Description
IOAddress
MaxRaw
MinRaw
MinE U
MaxE U
Message0
Message1
Mode
Name
RawType
Server
Type
TypeAsTagType
Units
DateCreated
This read-only property returns the date that the tag was created.
Syntax
Result = aaTag.DateCreated;
Return Value
The return value is of type DateTime.
Remarks
The default value is the current time.
Description
This read-only property returns the description of the tag.
Syntax
Result = aaTag.Description;
Return Value
The return value is a message value.
Remarks
The default value is NULL.
IOAddress
This read-only property returns the I/O address of the tag.
Syntax
Result = aaTag.IOAddress;
Return Value
The return value is a message.
Remarks
The default value is NULL.
MaxRaw
This read-only property returns the maximum value of the raw acquired value.
Syntax
Result = aaTag.MaxRaw;
Return Value
The return value is a real.
Remarks
The default value is 0.
MinRaw
This read-only property returns the minimum value of the raw ac quired value.
Syntax
Result = aaTag.MinRaw;
Return Value
The return value is a real.
Remarks
The default value is 0.
MinEU
This read-only property returns the minimum value of the tag, measured in engineering units.
Syntax
Result = aaTag.MinEU;
Return Value
The return value is a real.
Remarks
The default value is 0.
MaxEU
This read-only property returns the maximum value of the tag, meas ured in engineering units.
Syntax
Result = aaTag.MaxEU;
Return Value
The return value is a real.
Remarks
The default value is 0.
Message0
This read-only property returns the message associated with the FALSE state of the discrete tag. A
discrete tag set to 0 is in the FALSE state.
Syntax
Result = aaTag.Message0;
Return Value
The return value is a message.
Remarks
The default value is NULL.
Message1
This read-only property returns the message associated with the TRUE state of the discrete tag. A
discrete tag set to 1 is in the TRUE state.
Syntax
Result = aaTag.Message1;
Return Value
The return value is a message.
Remarks
The default value is NULL.
Mode
This read-only property returns the storage mode of this tag as a localized string.
Syntax
Result = aaTag.Mode;
Return Value
The return value is a message.
Remarks
The default value is 0.
Name
This read-only property returns the name of the tag.
Syntax
Result = aaTag.Name;
Return Value
The return value is a message.
Remarks
The default value is the name that was specified when the tag was created.
RawType
This read-only property returns the numeric type for the raw value. 1 = Euro Float (4 bytes); 2 = MS Float
(4 bytes); 3 = Integer (2 or 4 bytes); 4 = MS Double (reserved for future use) (8 bytes).
Syntax
Result = aaTag.RawType;
Return Value
The return value is an integer.
Remarks
The default value is 0.
Server
This read-only property returns the server associated with the tag.
Syntax
Result = aaTag.Server;
Return Value
The return value is an aaServer object. For more information, see aaServer Object. The server cannot be
changed after construction.
Remarks
The default value is the name that was specified when the tag was created.
Type
This read-only property returns the type of the tag, converted to a localized string.
Syntax
Result = aaTag.Type;
Return Value
The return value is a message.
Remarks
The default value is Unk nownTag.
TypeAsTagType
This read-only property returns the type of the tag.
Syntax
Result = aaTag.TypeAsTagType;
Return Value
The return value is of type aaTagType. For more information on the aaTagType enumeration, see
aaTagType E numeration.
The default value is 0.
Units
This read-only property returns the unit of measure. For example mph, grams, and pounds.
Syntax
Result = aaTag.Units;
Return Value
The return value is a message.
Remarks
The default value is NULL.
C HAPTER 16
aaHistClientWorkbookRunner and
aaHistClientReportRunner Objects
The aaHistClientWorkbookRunner and aaHistClient Report Runner objects are used when reports are
published to the AVEVA Information Server.
aaHistClientWorkbookRunner Object
The aaHistClientWorkbookRunner object is a control that is used to run reports created with the AVEVA
Historian Client Workbook. There is no us er interface for this control.
You can use the aaHistClientWork book Runner control's properties and methods in runtime scripts in
your application to run existing Workbook files (.xlsx) and output the results (.htm).
ErrDescription
The ErrDescription property is a read -only property that returns an error message if the Run method fails.
Syntax
Result = aaHistClientReportRunner.ErrDescription;
Return Value
The return value is a message. The error message describes the reason for the failure.
Remarks
The default is an empty message value ( "" ).
ErrNumber
The ErrNumber property is a read-only property that returns an error code number if the Run method
fails.
Syntax
Result = aaHistClientReportRunner.ErrNumber;
Return Value
The return value is an integer.
Remarks
The default value is 0.
OutputFile
The OutputFile property is a read-write property that is used to specify the file to be created as a result of
running the report.
Syntax
aaHistClientReportRunner.OutputFile = message;
Result = aaHistClientReportRunner.OutputFile;
Remarks
You must specify the entire pat h and include the .htm extension.
The default is an empty message value ( "" ).
SourceFile
The SourceFile property is a read-write property that specifies the name of the Word template file (.htm)
to use to generat e the report.
Syntax
aaHistClientReportRunner.SourceFile = message;
Result = aaHistClientReportRunner.SourceFile;
Remarks
You must specify the entire pat h and include the .htm extension.
The default is an empty message value ( "" ).
ExcelVisible
The ExcelVisible property is a read-write property that specifies whether or not the Excel application user
interface is visible when the report is run.
Syntax
aaHistClientWorkbookRunner.ExcelVisible = discrete;
Result = aaHistClientWorkbookRunner.ExcelVisible;
Remarks
If set to True, Excel is visible. If set to False, Excel is not visible. The default value is False.
Setting this property to True is useful when you are testing the report generation.
The default value is False.
aaHistClientWorkbookRunner Methods
The aaHistClientWorkbookRunner control met hods include:
Run
RunReport
RunReport2
Run
The Run met hod processes the Workbook report.
Syntax
[Result=] aaHistClientWorkbookRunner.Run();
Return Value
Returns True if the report generation was successful; otherwise returns False.
Remarks
When this method is called, the following occurs:
1. Excel starts. Excel is visible only if the ExcelVisible property was set to True.
2. The Workbook file (.xlsx) specified by the SourceFile property opens.
3. The report runs.
4. Excel closes.
If you want to use binding options for the report, use the RunReport method.
RunReport
The RunReport method processes the Workbook report. This method uses the date/time binding feat ure
of Workbook.
Syntax
[Result=] aaHistClientWorkbookRunner.RunReport(
message inputFile,
message outputFile,
message outputPrefix,
integer outputFormat,
message tagString,
integer NSFolderKey,
message nameSpace,
integer dateMode,
message startDate,
message endDate,
integer duration);
Parameters
inputFile
The name of the source file for the report generation, including the full path. Valid file types are
.htm, .xlsx, and .xlt.
outputFile
The name of the out put file that is generated, including the full path. If this parameter is set to an
empty string ( " "), then a file name is generat ed automatically according to t he following formula:
OutputFile = OutputPrefix + InputFile + year + month + day + _ + hour +
minute + second
outputPrefix
The value that is prepended to the output file name. If you specify an empty string ( " " ), no prefix
is prepended. The outputPrefix parameter is only used if the outputFile parameter is an empty
string.
outputFormat
The file type for the output file. Valid values are:
0 = Native. That is, if the source file is an .htm file, the output file is an .htm file. If the source file
is an .xlsx or .xlt file, the output file is an .xlsx file.
1 = .htm
2 = .xlsx
3 = .xlt
tagString
A comma separated list of strings to be used for the AFTagBinding named range. Valid formats
are:
"<tagname1>,<tagname2>"
"'<tagname1>','<tagname2>'"
For example:
"ReactLevel, ReactTemp"
"'ReactLevel','React Temp'"
NSFolderK ey
Reserved for future use. This parameter cannot be blank. Specify a value (for example, 0) for
this parameter, even though it has no effect.
nameS pace
Reserved for future use. This parameter cannot be blank. Specify an empty string ( "" ) for this
parameter, even though it has no effect.
dateMode
Determines the values used for the AFStartBinding and AFEndBinding named ranges. Valid
values are:
0 = Use specific start and end times.
1 = Use a duration relative to the current time.
2 = Use a duration relative to the specified start time.
3 = Use a duration relative to the specified end time.
Use the startDate, endDate, and Duration paramet ers to specify the dat es.
startDate
A date string that can be converted t o a date by the Visual Basic CDate() function. A good format
to use is one that reflects the standard short date and short time format on the local system.
If the dateMode parameter is set to 1 or 3, this parameter is ignored.
If the dateMode parameter is set to 0, this value indicates the specific date/time to be used for
the AFStartBinding range.
If the dateMode parameter is set to 2, then "rel" is used for the AFStartBinding range and
'+Duration(StartDate)' is used for the AFEndBinding range.
endDate
A date string that can be converted t o a date by the Visual Basic CDate() function. A good format
to use is one that reflects the standard short date and short time format on the local system.
If the dateMode parameter is set to 1 or 2, this parameter is ignored.
If the dateMode parameter is set to 0, this value indicates the specific date/time to be used for
the AFEndBinding range.
If the dateMode parameter is set to 3, then "rel" is used for the AFStartBinding range and
'+Duration(EndDate)' is used for the AFEndBinding range.
Duration
The time span, in seconds, used for date/time calculations. This value cannot be a negative
number.
If the dateMode parameter is set to 0, this value is ignored.
If the dateMode parameter is set to 1, "rel" is used for the AFStartBinding range an d
'-Duration()' is used for the AFEndBinding range.
If the dateMode parameter is set to 2, "rel" is used for the AFStartBinding range and
'+Duration(StartDate)' is used for the AFEndBinding range.
If the dateMode parameter is set to 3, "rel" is used for the AFStartBinding range and
'-Duration(EndDate)' is used for the AFEndBinding range.
Return Value
Returns the output file name if the report generation was successful; otherwise, an empty string is
returned.
Remarks
When this method is called, the following occurs:
1. Excel starts. Excel is visible only if the ExcelVisible property was set to True.
2. The Workbook file (.xlsx) specified by the SourceFile property opens.
3. The binding information in the workbook file is updated.
4. The report runs and the output is saved as an .htm file as specified in the OutputFile property.
5. Excel closes.
To run a report without using the binding options, use the method. To run a report that only uses
additional binding options for custom filters, use the RunReport2 method.
RunReport2
The RunReport 2 method processes the Workbook report. This method uses the dat e/time binding
feature of Workbook, plus custom binding filters.
Syntax
[Result=] aaHistClientWorkbookRunner.RunReport2(
message inputFile,
message outputFile,
message outputPrefix,
integer outputFormat,
message tagString,
integer NSFolderKey,
message nameSpace,
integer dateMode,
message startDate,
message endDate,
integer duration
message customFilters);
Parameters
inputFile
The name of the source file for the report generation, including the full path. Valid file types are
.htm, .xlsx, and .xlt.
outputFile
The name of the output file generated, including the full path. If this paramet er is set to an empty
string ( " " ), then a file name is generated automatically according to the following formula:
OutputFile = OutputPrefix + InputFile + year + month+ day + _ + hour +
minute + second
outputPrefix
The value prepended to the output file name. If you specify an empty string ( " " ), no prefix is
prepended.
The outputPrefix parameter is only used if the outputFile paramet er is an empty string.
outputFormat
The file type for the output file. Valid values are:
0 = Native. That is, if the source file is an .htm file, the output file is an .htm file. If the source file
is an .xlsx or .xlt file, the output file is an .xlsx file.
1 = .htm
2 = .xlsx
3 = .xlt
tagString
A comma separated list of strings to be used for the AFTagBinding named range. Valid formats
are:
"<tagname1>,<tagname2>"
"'<tagname1> ','<tagname2>'"
For example:
"ReactLevel, ReactTemp"
"'ReactLevel','React Temp'"
NSFolderK ey
Reserved for future use. This parameter cannot be blank. Specify a val ue (for example, 0) for
this parameter, even though it has no effect.
nameS pace
Reserved for future use. This parameter cannot be blank. Specify an empty string ( "" ) for this
parameter, even though it has no effect.
dateMode
Determines the values used for the AFStartBinding and AFEndBinding named ranges. Valid
values are:
0 = Use specific start and end times.
1 = Use a duration relative to the current time.
2 = Use a duration relative to the specified start time.
3 = Use a duration relative to the specified end time.
Use the startDate, endDate, and Duration paramet ers to specify the dat es.
startDate
A date string that can be converted t o a date by the Visual Basic CDate() function. A good format
to use is one that reflects the standard short date and short time format on the local system.
If the dateMode parameter is set to 1 or 3, this parameter is ignored.
If the dateMode parameter is set to 0, this value indicates the specific date/time to be used for
the AFStartBinding range.
If the dateMode parameter is set to 2, then "rel" is used for the AFStartBinding range and
'+Duration(StartDate)' is used for the AFEndBinding range.
endDate
A date string that can be converted t o a date by the Visual Basic CDate() function. A good format
to use is one that reflects the standard short date and short time format on the local system.
If the dateMode parameter is set to 1 or 2, this parameter is ignored.
If the dateMode parameter is set to 0, this value indicates the specific date/time to be used for
the AFEndBinding range.
If the dateMode parameter is set to 3, then "rel" is used for the AFStartBinding range and
'+Duration(EndDate)' is used for the AFEndBinding range.
Duration
The time span, in seconds, used for date/time calculations. This value cannot be a negative
number.
If the dateMode parameter is set to 0, this value is ignored.
If the dateMode parameter is set to 1, "rel" is used for the AFStartBinding range and
'-Duration()' is used for the AFEndBinding range.
If the dateMode parameter is set to 2, "rel" is used for the AFStartBinding range and
'+Duration(StartDate)' is used for the AFEndBinding range.
If the dateMode parameter is set to 3, "rel" is used for the AFStartBinding range and
'-Duration(EndDate)' is used for the AFEndBinding range.
customFilters
A string of name-value pairs used to pass information from the AVEVA Information Server to the
work book file before the report is run.
The format for the string is as follows:
<name>=<value>
To pass more than one name-value pair, join them wit h ampersands. For example:
<name>=<value>&<name>=<value>
The parameter name that you use must correspond to an existing named range in the workbook
that starts with "AFBinding."
The value you specify in the name-value pair is used for the corresponding named range in the
work book. You can specify multiple values if you separate them with commas.
For example, you workbook contains the AFBindingReportValue and AFBindingReport Text
named ranges. You want to pass a value of 5 for the report value and Line1 and Line2 for the
Report Text. The customFilters parameter is:
ReportValue=5& ReportText=Line2,Line2
Return Value
Returns the output file name if the report generation was successful; otherwise, an empty string is
returned.
Remarks
When this method is called, the following occurs:
1. Excel starts. Excel is visible only if the ExcelVisible property was set to True.
2. The Workbook file (.xlsx) specified by the SourceFile property opens.
3. The binding information in the workbook file is updated.
4. The report runs and the output is saved as an .htm file as specified in the OutputFile property.
5. Excel closes.
To run a report without using the binding options, use the Run method. To run a report that only uses the
date/time binding options, use the RunReport method.
aaHistClientReportRunner Object
The aaHistClientReportRunner object is a control that is used to run reports created wit h the AVEVA
Historian Client Report. There is no us er interface for this control.
You can use the aaHistClient Report Runner object's properties and methods in runtime scripts in your
application to run existing Report files and output the results (.htm).
ErrDescription
The ErrDescription property is a read -only property that returns an error message if the Run method fails.
Syntax
Result = aaHistClientReportRunner.ErrDescription;
Return Value
The return value is a message. The error message describes the reason for the failure.
Remarks
The default is an empty message value ( "" ).
ErrNumber
The ErrNumber property is a read-only property that returns an error code number if the Run method
fails.
Syntax
Result = aaHistClientReportRunner.ErrNumber;
Return Value
The return value is an integer.
Remarks
The default value is 0.
OutputFile
The OutputFile property is a read-write property that is used to specify the file to be created as a result of
running the report.
Syntax
aaHistClientReportRunner.OutputFile = message;
Result = aaHistClientReportRunner.OutputFile;
Remarks
You must specify the entire pat h and include the .htm extension.
The default is an empty message value ( "" ).
SourceFile
The SourceFile property is a read-write property that specifies the name of the Word template file (.htm)
to use to generat e the report.
Syntax
aaHistClientReportRunner.SourceFile = message;
Result = aaHistClientReportRunner.SourceFile;
Remarks
You must specify the entire pat h and include the .htm extension.
The default is an empty message value ( "" ).
WordVisible
The WordVisible property is a read-write property that specifies whether or not the Word application user
interface is visible when the report is run.
Syntax
aaHistClientReportRunner.WordVisible = discrete;
Result = aaHistClientReportRunner.WordVisible;
Remarks
If set to True, Word is visible. If set to False, Word is not visible. The default value is False.
Setting this property to True is useful when you are testing the report generation.
The default value is False.
Run
The Run met hod processes the Word report.
Syntax
[Result=] aaHistClientReportRunner.Run();
Return Value
Returns True if the report generation was successful; otherwise returns False.
Remarks
When this method is called, the following occurs:
1. Word starts. Word is visible only if the WordVisible property was set to True.
2. The report file (. htm) specified by the SourceFile property opens.
3. The report runs and is saved as the .htm file specified by the OutputFile property.
4. Word closes.
C HAPTER 17
Workbook and Report Automation Objects
The AVEVA Historian Client Workbook and the AVEVA Historian Client aut omation objects allow you to
automat e the AVEVA Historian Client Workbook and Report from a scripting environment, such as
Visual Basic for Applications.
AddServer
The AddS erver method adds a server to the list of servers for the current workbook.
Syntax
ActiveFactoryWorkbook.AddServer(message serverName, message loginName, message
password)
Parameters
serverName
The name of the server to which to connect.
loginName
A valid user name for the server.
pass word
A valid password for the server.
Remarks
Use the keyword "CA LL" before the method name to invoke the method.
Auto_Close
The Auto_Close method removes the AVEVA Historian Client toolbar and resets the main menu for
Excel.
Syntax
ActiveFactoryWorkbook.Auto_Close()
Auto_Open
The Auto_Open met hod adds the AVEVA Historian Client toolbar and adds the AVEVA Historian Client
menu to the main menu for Excel.
Syntax
ActiveFactoryWorkbook.Auto_Open();
GetLastError
The Get LastError method returns a message for any error that occurs when the report is run using the
RunReport method.
Syntax
[Result=] ActiveFactoryWorkbook.GetLastError();
Return Value
Returns a message value cont aining the error for the RunReport method. If an empty string is returned,
then an error has occurred. If the output file name is returned, a warning may have occurred.
Remarks
Possible errors are:
Only available when a server is present, click OK to add a server.
The input file specified does not exist.
The output format specified is invalid.
The DateMode argument must be 0, 1, 2, or 3.
The specified start date is invalid.
The specified end date is invalid.
The specified duration is invalid.
TagString is not empty and AFTagBinding does not exist.
Invalid TagString format.
Warning: The AFTagBinding range in the report contains no tags and no tags have been passed in.
The <filename> range must be defined.
An error occurred while attempting to save the file.
<filename> is unknown.
No values for <filename>.
Wizard Error.
RunReport
The RunReport method processes the Workbook report. This method uses the date/time binding feat ure
of Workbook, plus custom binding filters. need x-refs
Syntax
[Result=] ActiveFactoryWorkbook.RunReport(
message inputFile,
message outputFile,
message outputPrefix,
integer outputFormat,
message tagString,
integer NSFolderKey,
message nameSpace,
integer dateMode,
message startDate,
message endDate,
integer duration
message customFilters);
Parameters
inputFile
The name of the source file for the report generation, including the full path. Valid file types are
.htm, .xlsx, and .xlt.
outputFile
The name of the output file generated, including the full path. If this paramet er is set to an empty
string ( "" ), then a file name is generated automatically according to the following formula:
OutputFile = OutputPrefix + InputFile + _ + year + month + day + hour +
minute + second
outputPrefix
The value prepended to the output file name. If you specify an empty string ( "" ), no prefix is
prepended.
The outputPrefix parameter is only used if the outputFile paramet er is an empty string.
outputFormat
The file type for the output file. Valid values are:
0 = Native. That is, if the source file is an .htm file, the output file is an .htm file. If the source file
is an .xlsx or .xlt file, the output file is an .xlsx file.
1 = .htm
2 = .xlsx
3 = .xlt
tagString
A comma separated list of strings to be used for the AFTagBinding named range. If the
AFTagBinding range does not exist, and this paramet er is set to any value other than an empty
string ( "" ), an error is raised. Valid formats are:
"<tagname1>,<tagname2>"
"'<tagname1> ','<tagname2>'"
For example:
"ReactLevel, ReactTemp"
"'ReactLevel','React Temp'"
NSFolderK ey
Reserved for future use. This parameter cannot be blank. Specify a value (for example, 0) for
this parameter, even though it has no effect.
nameS pace
Reserved for future use. This parameter cannot be blank. Specify an empty string ( "" ) for this
parameter, even though it has no effect.
dateMode
Determines the values used for the AFStartBinding and AFEndBinding named ranges. An error
is raised if the binding ranges do not exist or if this parameter is blank. Valid values are:
0 = Use specific start and end times.
1 = Use a duration relative to the current time.
2 = Use a duration relative to the specified start time.
Method Used to
2. On the Tool s menu, point to Macro and then click Visual Basic Editor. The Microsoft Visual
Basi c editor appears.
3. On the Tool s menu, click References. The References - VBAP roject dialog box appears.
10. Insert a button into the worksheet. The Assign Macro dialog box appears.
11. In the Macro name list, select Convert ToV alues, which is the subroutine that you created in Step 7.
12. Click OK.
13. Change the display name for the button and adjust the size, appropriately.
ReportDate
The ReportDate property is a read-write property that gets or sets the date that the report was run.
Syntax
ActiveFactoryReport.ReportDate = message;
Result = ActiveFactoryReport.ReportDate;
Remarks
The value of this property is used for any #Date wildcards used wit hin the report. For more information on
the #Date wildcard, see #date Wildcard.
The default value is the current date of when Microsoft Word was launched.
ReportTime
The Report Time property is a read-write property that gets or sets the time that the report was run.
Syntax
ActiveFactoryReport.ReportTime = message;
Result = ActiveFactoryReport.ReportTime;
Remarks
The value of this property is used for any #Report Time wildc ards used within the report. For more
information on the #Report Time wildcard, see #ReportTime Wildcard.
The default value is the current date of when Microsoft Word was launched.
AutoExec
The AutoExec method initializes values.
Syntax
ActiveFactoryReport.AutoExec()
AutoExit
The AutoExit method removes the AVEVA Historian Client toolbar and resets the main menu for Word.
Syntax
ActiveFactoryReport.AutoExit()
RunReport
The RunReport met hod processes the Word report.
Syntax
ActiveFactoryReport.RunReport()
Return Value
Returns False if the report generation was successful; otherwise ret urns True.
Remarks
Any message dialog boxes are suppressed.
C HAPTER 18
aaHistClientGlobalFunctions Object
This object provides methods for accessing the information about the AVEVA Historian Client software
installation.
aaHistClientGlobalFunctions Methods
The aaHistClientGlobalFunctions methods are:
GetDictionaryPath
GetInstallPath
GetAFVersion
GetWork stationName
MDACOk
GetDictionaryPath
The Get DictionaryPath method returns the path to the dictionary file.
Syntax
[Result=] aaHistClientGlobalFunctions.GetDictionaryPath();
Return Value
Returns an empty string.
Remarks
This method is provided for backward compatibility only.
GetInstallPath
The Get InstallPath method returns the path where the AVEVA Historian Client software is installed.
Syntax
[Result=] aaHistClientGlobalFunctions.GetInstallPath();
Return Value
Returns a fully-qualified path to the installation folder as a string.
GetAFVersion
The GetAFVersion method returns the version of the Historian Client software. For example, this met hod
returns 10.0.0.0 as the version of the Historian Client software.
Syntax
[Result=] aaHistClientGlobalFunctions.GetAFVersion();
Return Value
Returns a string value containing the version of the Historian Client software.
GetWorkstationName
The GetWorkstationName met hod returns the name of the computer on which the Historian Client
software is running. For example, this method ret urns the computer name as HYDDLFLN5877.
Syntax
[Result=] aaHistClientGlobalFunctions.GetWorkstationName();
Return Value
Returns a string value containing the name of the comput er on which t he Historian Client soft ware is
running.
MDACOk
The MDA COk method returns whether the Microsoft Dat a Access Components (MDA C) are installed.
Syntax
[Result=] aaHistClientGlobalFunctions.MDACOk();
Return Value
Returns True if the components are installed; otherwise, returns False.
Remarks
Since MDAC is a prerequisite for the AVEVA Historian Client software, this method always returns True.
C HAPTER 19
Common Properties, Methods, Events,
Enums, and Data Types
This section describes the generic properties, methods, and events that are common to one or more
controls. Also, descriptions for common data types and enumerations are provided.
Some of the common properties, methods, and events are ambient. Ambient properties, methods, and
events are defined by the control container to assist the control in adapting to the particular environment
in which it is used.
Note s:
Not all of the common properties, methods, events, enums, and data types are used by all of the c ontrols.
This section includes information about all supported properties and methods on the documented
controls . Any properties or methods not described in this section are not support ed. We do not test, nor
ensure performance from version to version, nor provide customer assistance for non-supported
properties and methods.
Common Properties
All of the following properties are ambient properties.
Back Color Back Style
BorderStyle Caus esValidation
Cont ainer Cont ext MenuE nabled
DataBindings DragIcon
DragMode Enabled
Font ForeColor
Height HelpContextID
Index Left
Name Object
Parent TabIndex
TabStop Tag
ToolTipText Top
Trans parent Visible
WhatsThisHelpI D Width
BackColor
The BackColor property is a read-write property that specifies the background color for the control.
Syntax
<objectname>.BackColor = integer;
Result = <objectname>.BackColor;
Remarks
The default value of 1 indicates to use the window color.
BackStyle
The BackStyle property is a read-write property that specifies whether the background for a label or
shape is opaque or transparent.
Syntax
<objectname>.BackStyle = integer;
Result = <objectname>.BackStyle;
Remarks
0 = Transparent; 1 = Opaque.
Setting this property to 0 has the same effect as setting the Transparent property to True.
BorderStyle
The BorderStyle property is a read-writ e property that specifies whether the control has a border line
around it or not.
Syntax
<objectname>.BorderStyle = integer;
Result = <objectname>.BorderStyle;
Remarks
0 = No border; 1 = Single line border.
CausesValidation
The CausesValidation property is a read-write property that specifies whether validation occurs on the
control.
Syntax
<objectname>.CausesValidation = discrete;
Result = <objectname>.CausesValidation;
Remarks
This property is not available in the InTouch HMI software.
Container
The Container property is a read-only property that returns the container of the control.
Syntax
<objectname>.Container = object;
Result = <objectname>.Container;
Remarks
This property is not available in the InTouch HMI software.
ContextMenuEnabled
The ContextMenuEnabled property is a read-write property that specifies whet her the shortcut menu
appears when a user right-clicks on the control.
Syntax
<objectname>.ContextMenuEnabled = discrete;
Result = <objectname>.ContextMenuEnabled;
Remarks
If this property is set to False, the Windows context menu still appears when a user right -clicks on an
editable field. The Windows context menu contains editing commands such as Cut, Copy, Paste, and so
on.
DataBindings
The DataBindings property is a read -only property that gets the bindable properties that are available to
the application developer.
Syntax
<objectname>.DataBindings = DataBindings;
Result = <objectname>.DataBindings;
DragIcon
The DragIcon property is a read-write property that gets or sets the icon to be displayed for the mouse
pointer during a drag-and-drop operation.
Syntax
<objectname>.DragIcon = Picture;
Result = <objectname>.DragIcon;
Remarks
This property is not available in the InTouch HMI software.
DragMode
The DragMode property is a read-write property that controls whether automatic or manual dragging is
used.
Syntax
<objectname>.DragMode = integer;
Result = <objectname>.DragMode;
Remarks
This property is not available in the InTouch HMI software.
Enabled
The Enabled property is a read-write property that determines whether the control can be acted upon by
the runtime user.
Syntax
<objectname>.Enabled = discrete;
Result = <objectname>.Enabled;
Font
For C# and .NE T applications, a Font parameter or result can reference a Font class. For more
information, see the documentation on the Font class in the .NET Framework Class Library.
ForeColor
The Fore property is a read-write property that gets or sets the color to be used for the foreground color
in the control.
Syntax
<objectname>.ForeColor = Long;
Result = <objectname>.ForeColor;
Remarks
The default value is 1 (the window color).
Height
The Height property is a read-write property that gets or sets the height of the control.
Syntax
<objectname>.Height = Single;
Result = <objectname>.Height;
Remarks
This property is not available in the InTouch HMI software.
HelpContextID
The HelpContextID property is a read-writ e property that gets or sets the Help cont ext ID for the object.
Syntax
<objectname>.HelpContextID = Long;
Result = <objectname>.HelpContextID;
Remarks
This property is not available in the InTouch HMI software.
Index
The Index property is a read-only property that returns the number identifier for a control in an array.
Syntax
<objectname>.Index = integer;
Result = <objectname>.Index;
Remarks
The starting value for the identifier is typically 1. This property is not available in the InTouch HMI
software.
Left
The Left property is a read-write property that gets or sets the distance between the left edge of the
container application and the internal left edge of the control.
Syntax
<objectname>.Left = Single;
Result = <objectname>.Left;
Remarks
This property is not available in the InTouch HMI software.
Name
The Name property is a read-only property that gets the name used to identify an object.
Syntax
<objectname>.Name = message;
Result = <objectname>.Name;
Remarks
This property is not available in the InTouch HMI software.
Object
For C# and .NE T applications, an object paramet er or result can reference an Object class. For more
information, see the documentation on the Object class in the .NET Framework Class Library.
Parent
The Parent property is a read-only property that gets the object on which this object is located.
Syntax
<objectname>.Parent = Object;
Result = <objectname>.Parent;
Remarks
This property is not available in the InTouch HMI software.
TabIndex
The TabIndex property is a read-write property that gets or sets the tab order of the object within its
parent form.
Syntax
<objectname>.TabIndex = integer;
Result = <objectname>.TabIndex;
Remarks
This property is only available during design time. This property is not available in the InTouch HMI
software.
TabStop
The TabStop property is a read-write property that gets or sets whether the TAB key can be used to give
focus to an object.
Syntax
<objectname>.TabStop = discrete;
Result = <objectname>.TabStop;
Remarks
This property is not available in the InTouch HMI software.
Tag
The Tag property is a read-write property that can be used to store extra data needed for the application.
Syntax
<objectname>.Tag = message;
Result = <objectname>.Tag;
Remarks
This property is not available in the InTouch HMI software.
ToolTipText
The ToolTipText property is a read-write property that gets or sets the text that appears when the mouse
pointer hovers over the control at runtime.
Syntax
<objectname>.ToolTipText = message;
Result = <objectname>.ToolTipText;
Remarks
This property is only available in the InTouch HMI software for the aaHistClient Trend cont rol.
Top
The Top property is a read-write property that gets or sets the distance bet ween the top edge of the
object container and the int ernal top edge of an object.
Syntax
<objectname>.Top = Single;
Result = <objectname>.Top;
Transparent
The Transparent property is a read-write property that gets or sets the background of the object to be
transparent.
Syntax
<objectname>.Transparent = discrete;
Result = <objectname>.Transparent;
Remarks
If set to True, the underlying form appears through the background of t he object. The field (text box) label
is not transparent. However, you can hide the field label to achieve total transparency.
The default value is False.
Visible
The Visible property is a read-write property that determines whether an object is visible or hidden.
Syntax
<objectname>.Visible = discrete;
Result = <objectname>.Visible;
Remarks
This property is not available in the InTouch HMI software. To hide the control, change the object
coordinates so that the object appears out of the bounds of the window.
WhatsThisHelpID
The WhatsThisHelpID property is a read-write property that gets or sets the associated context-sensitive
Help ID number for an object.
Syntax
<objectname>.WhatsThisHelpID = Long;
Result = <objectname>.WhatsThisHelpID;
Remarks
This property is not available in the InTouch HMI software.
Width
The Width property is a read-write property that gets or sets the width of an object.
Syntax
<objectname>.Width = Single;
Result = <objectname>.Width;
Remarks
This property is not available in the InTouch HMI software.
Common Methods
All of the following methods are ambient methods.
Drag
Move
SetFocus
SetToolbarB uttonEnabled
ShowWhatsThis
ZOrder
Drag
The Drag met hod begins, ends, or cancels the drag operation for any object except for Menu, Line, Time,
and Shape.
Syntax
[Result=] <objectname>.Drag();
Return Value
Returns True if successful; otherwise returns False.
Move
The Move method moves an object.
Syntax
[Result=] <objectname>.Move(single Left, [Top], [Width], [Height]);
SetFocus
The SetFocus method sets the foc us to the specified object.
Syntax
[Result=] <objectname>.SetFocus();
ShowWhatsThis
The ShowWhats This method displays a particular topic in a Help file.
Syntax
[Result=] <objectname>.ShowWhatsThis();
Remarks
The What' This? Popup control provided by Windows Help is used.
ZOrder
The ZOrder method locates a specified object at the back or from of the z-order within its graphical level.
Syntax
[Result=] <objectname>.ZOrder([Position]);
Common Events
All of the following events are ambient events.
Click
DblClick
DragDrop
DragOver
GotFocus
KeyDown
KeyPress
KeyUp
LostFocus
MouseDown
MouseMove
MouseUp
Validate
Click
The Click event is triggered when the run -time user clicks on the object at runtime with the mouse.
Syntax
<objectname>.Click();
DblClick
The DblClick event is triggered when the user double-clicks on the object at runtime wit h the mous e.
Syntax
<objectname>.DblClick();
DragDrop
The DragDrop event is triggered when a drag-and-drop operation is completed.
Syntax
<objectname>.DragDrop(Control source, single X, single Y);
DragOver
The DragOver event is triggered when a drag-and-drop operation is in progress.
Syntax
<objectname>.DragOver(Control source, single X, single Y, integer state);
GotFocus
The GotFocus event is triggered when an object receives focus.
Syntax
<objectname>.GotFocus();
KeyDown
The KeyDown event is triggered when a user presses a key on the keyboard while the object has focus.
Syntax
<objectname>.KeyDown(integer KeyCode, integer Shift);
KeyPress
The KeyPress event is triggered when the runtime user presses and releases an ANSI key.
Syntax
<objectname>.KeyPress(integer KeyAscii);
KeyUp
The KeyUp event is triggered when a user releases a key on the keyboard while the object has focus.
Syntax
<objectname>.KeyUp(integer KeyCode, integer Shift);
LostFocus
The LostFocus event is triggered when an object loses focus.
Syntax
<objectname>.LostFocus();
MouseDown
The MouseDown event is triggered when the user press es the mouse key down while an object has
focus.
Syntax
<objectname>.MouseDown(integer button, integer shift, single X, single Y);
MouseMove
The MouseMove event is triggered when the user moves the mouse.
Syntax
<objectname>.MouseMove(integer button, integer shift, single X, single Y);
MouseUp
The MouseUp event is triggered when the user presses the mouse key up while an object has focus.
Syntax
<objectname>.MouseUp(integer button, integer shift, single X, single Y);
Validate
The Validate event is triggered when a control los es focus to a control that causes validation.
Syntax
<objectname>.Validate(discrete Cancel);
Common Enumerations
Common enumerations are:
aaRetrievalSource Enumeration
aaTagType E numeration
aaTimeRangeEnumeration Enumeration
aaRetrievalSource Enumeration
Specifies the source of process data to ret rieve.
aaTagType Enumeration
Specifies the set of tag types allowed for tags.
aaTimeRangeEnumeration Enumeration
Specifies which time range is selected.
DateTime
For the InTouch HMI software, use a message value in a valid date/time format.
For C# and .NE T applications, a Dat eTime parameter or result can reference a DateTime structure. For
more information, see the documentation on the DateTime structure in the .NET Framework Class
Library.
Color
To specify a color for a control, you must specify the color as an integer value. The color is an ABGR
color, where:
A = Transparency
B = Blue
G = Green
R = Red
A BGR color value is made up of 24 bits, with the upper 8 bits always being 0. For example, 0xFF0000 is
0B00 in the BGR convention, which equates to Blue.
An ABGR color value is made up of 32 bits, with upper 8 bits being 0 by default, but can be set to any
opacity:
DataSet
For C# and .NE T applications, a DataSet parameter or result can reference a DataS et object. For more
information, see the documentation on the ADO. NE T DataSet object in the . NET Framework Developer's
Guide.
Font
For C# and .NE T applications, a Font parameter or result can reference a Font class. For more
information, see the documentation on the Font class in the .NET Framework Class Library.
Object
For C# and .NE T applications, an object paramet er or result can reference an Object class. For more
information, see the documentation on the Object class in the .NET Framework Class Library.
A PPENDIX A
Data Retrieval Options
You can use a variety of retrieval modes and options to suit different reporting needs and applications.
Cyclic Retrieval
Cyclic retrieval is the retrieval of stored dat a for t he given time period based on a specified cyclic retrieval
resolution, regardless of whether or not the value of the tag(s) has changed. It works with all types of
tags. Cyclic retrieval produces a virtual rowset, which may or may not correspond to the actual data rows
stored on the Historian.
In cyclic retrieval, one row is returned for each "cycle boundary." You specify the number of cycles either
directly or by means of a time resolution, that is, the spacing of cycle boundaries in time. If you specify a
number of cycles, the Historian returns that number of rows, evenly spaced in time over the requested
period. The cyclic resolution is calculated by dividing the requested time period by the number of cycle
boundaries. If you specify a resolution, the number of cycles is calculated by dividing the time period by
the resolution.
If no data value is actually stored at a cycle boundary, the last value before the boundary is returned.
The default retrieval mode is cyclic for retrieval from analog tables, including analog and state summary
tables.
Cyclic retrieval is fast and therefore consumes little server resources. However, it may not correctly
reflect the stored data because important proc ess values (gaps, spikes, etc.) might fall bet ween cycle
boundaries. For an alternative, see Best Fit" Retrieval.
Data is retrieved in cyclic mode with a start time of TC0 and an end time of TC2. The resolution has been
set in such a way that the Historian ret urns data for three cycle boundaries at TC0, TC1, and TC2. Each dot
in the graphic represents an actual data point stored on the Historian. From these points, the following
are returned:
At TC0: P2, because it falls right on the cycle boundary
At TC1: P7, because it is the last point before the cycle boundary
At TC2: P11, for the same reason
Delta Retrieval
Delta retrieval, or retrieval based on exception, is the ret rieval of only the changed values for a tag(s) for
the given time interval. That is, duplicate values are not returned. It works with all types of tags.
Delta retrieval always produces a rowset comprised of only rows that are actually stored on the Historian;
that is, a delta query returns all of the physical rows in history for the specified tags, over the specified
period, minus any duplicate values. If there is no actual data point at the start time, the last data point
before the start time is returned.
Delta retrieval is the default mode for discrete and string tables and from the History table.
Data is retrieved in delta mode with a start time of T1 and an end time of T2. Each dot in the graphic
represents an actual dat a point stored on the Historian. From these points, the following are ret urned:
P2, because there is no actual dat a point at T1
P5, P8, P9, P10, and P11, because they repres ent changed values during the time period
For delta retrieval for replicated summary tags on a tier-2 historian, if a point with doubtful quality is
returned as the result of a value selection from an input summary point with a cont ained gap, the same
point can be returned again with good quality if the same value is selected again from the next input
summary point that has good quality.
Full Retrieval
In full ret rieval mode, all stored data points are returned, regardless of whether a value or quality has
changed since the last value. This mode allows the same value and quality pair (or NULL value) to be
returned consecutively with their actual timestamps. It works with all types of tags.
By using full retrieval in conjunction with storage wit hout filtering (that is, no delta or cyclic storage mode
is applied at the Historian), you can retrieve all values that originated from the plant floor data source or
from another application.
Full ret rieval best represents the process measurements recorded by the Historian. However, it creates a
higher load for the server, the net work and the client system because a very large number of records may
be ret urned for longer time periods.
For full retrieval for replicated summary tags on a tier -2 historian, if a point with doubtful quality is
returned as the result of a value selection from an input summary point with a cont ained gap, the same
point can be returned again with good quality if the same value is selected again from the next input
summary point that has good quality.
Data is retrieved in full mode with a start time of T1 and an end time of T2. Each dot in the graphic
represents an actual dat a point stored on the Historian. From these points, the following are ret urned:
P2, because there is no actual dat a point at T1
P3 through P 12, because they represent stored data points during the time period
Interpolated Retrieval
Interpolated retrieval works like cyclic retrieval, except that int erpolated values are returned if there is no
actual data point stored at the cycle boundary.
This retrieval mode is useful if you want to retrieve cyclic data for slow -changing tags. For a trend,
interpolated retrieval res ults in a smoother curve instead of a "stair-stepped" curve. This mode is also
useful if you have a slow-changing tag and a fast-changing tag and want to retrieve data for both. Finally,
some advanced applications require more evenly spaced values than would be returned if interpolation
was not applied.
By default, interpolated retrieval uses the interpolation setting specified for the tag in the Historian. This
means that if a tag is set to use stair-step interpolation, interpolated retrieval gives the same results as
cyclic retrieval.
Interpolation is only applied to analog tags. If you retrieve data for ot her types of tags, stair-step
interpolation is used, and the results are the same as for cyclic retrieval.
Interpolated retrieval is a bit slower than cyclic retrieval. It shares the lim itations of cyclic retrieval in that
it may not accurately represent the stored proc ess data.
Data is retrieved in interpolated mode with a start time of TC0 and an end time of TC2. The resolution has
been set in such a way that the Historian returns data for three cycle boundaries at T C0, TC1, and TC2. P1
to P12 represent actual data points stored on the Historian. Of these points, eleven represent normal
analog values, and one, P 7, represents a NULL value due to an I/O Server disconnect, which causes a
gap in the data between P 7 and P 8.
The green points (P 2, PC1, PC2) are returned. The yellow points (P 7, P11, P12) are used to interpolate the
returned value for each cycle. The red points are considered, but not used in calculating the points to
return.
Because P 2 is located exactly at the query start time, it is returned at that time without the need for any
interpolation. At the following cycle boundary, point P C1 is returned, which is the NULL value represented
by P 7 shifted forward to time TC1. At the last cycle boundary, point P C2 is returned, which has been
interpolated using points P 11 and P 12.
wwRetrievalMode = 'Interpolated'
If cyclic retrieval is used to retrieve the data, the retrieval is much more efficient, because fewer values
are returned. However, the representation is not as accurate, as the following trend shows.
"Best fit" retrieval allows for faster retrieval, as typically achieved by using cyclic retrieval, plus the better
representation typically achieved by using delt a retrieval. This is shown in the following trend.
For example, for one week of five-second data, 120,960 values would be returned for delta retrieval,
versus around 300 values for best-fit retrieval.
Best-fit retrieval uses retrieval cycles, but it is not a true cyclic mode. Apart from the initial value, it only
returns actual delta points. For example, if one point is both the first value and the minimum value in a
cycle, it is returned only one time. In a cycle where a tag has no points, nothing is returned.
As in cyclic retrieval, the number of cycles is based on the specified resolution or cycle count. However,
the number of values returned is likely to be more than one per cycle.
All points are returned in chronological order. If multiple points are to be ret urned for a particular
timestamp, then those points are returned in the order in which the corresponding tags were specified in
the query.
The best-fit algorithm is only applied to analog and analog summary tags. For all other tags, delta results
are returned.
Data is retrieved in best-fit mode with a start time of TC0 and an end time of TC2. The res olution has been
set in such a way that the Historian ret urns data for two complete cycles starting at TC0 and TC1 and an
incomplet e cycle starting at TC2. P1 to P 12 represent actual data points stored on the Historian. Of these
points, eleven represent normal analog values, and one, P7, represents a NULL value due to an I/O
Server disconnect, which causes a gap in the data between P 7 and P 8.
Because P 2 is located exactly at the start time, no initial value needs to be interpolated at the start time.
Therefore, point P 1 is not considered at all. All other points are considered, but only the points indicated
by green markers on the graph are returned.
From the first cycle, four points are returned:
P2 as the initial value of the query, as well as the first value in the cycle
P4 as the minimum value in the cycle
P6 as both the maximum value and the last value in the cycle
P7 as the first (and only) occurring exception in the cycle
From the second cycle, three points are returned:
P8 as the first value in the cycle
P9 as the maximum value in the cycle
P11 as both the minimum value and the last value in the cycle
As no exception occurs in the second cycle, none is returned.
Because the tag does not have a point exactly at the query end time, where an incomplete third cycle
starts, the end value P C2 is interpolated between P 11 and P12, assuming that linear interpolation is used.
Average Retrieval
For the time-weighted average (in short: "average") retrieval mode, a time-weighted average algorit hm is
used to calculate the value to be returned for each retrieval cycle.
For a statistical average, the actual dat a values are used to calculat e the average. The ave rage is the
sum of the data values divided by the number of dat a values. For t he following data values, the statistical
average is computed as:
(P1 + P 2 + P3 + P4) / 4) = Average
For a time-weighted average, values are multiplied by the time difference between the points to
determine the time-weighted value. Therefore, the longer a tag had a particular value, the more weight
that value holds in the overall average. The overall average is determined by adding all of the
time-weight ed values and then dividing that number by the total amount of time.
Which values are weighted depends on the interpolation setting of the tag. For a tag that uses linear
interpolation, the midpoints bet ween values are weighted. For a tag t hat uses stair -step interpolation, the
earlier of two values is weighted.
For the following dat a values of a tag that uses linear interpolation, the time-weighted average is
computed as:
(((P1 + P2) / 2) x (T2 - T1)) + (((P2 + P3) / 2) x (T3 - T2)) + (((P 3 + P4) / 2) x (T4 - T3)) / (T4 - T1) = Average
If the same tag uses stair-step interpolation, the time-weighted average is:
((P1 x (T2 - T1)) + (P 2 x (T3 - T2)) + (P 3 x (T4 - T3 ))) / (T4 - T1) = A verage
The SQL Server AVG aggregate is a simple statistical average. Using the average retrieval mode wit h a
cycle count of 1 returns dat a much faster than the AVG aggregat e, and usually more accurately due to
the time weighting. The event subsystem also returns a simple statistical average.
A verage retrieval returns one row for each tag in the query for each cycle. The number of cycles is based
on the specified resolution or cycle count.
The time-weighted average algorithm is only applied to analog and analog summary tags. If you us e
average retrieval with other tags, the results are the same as when using regular cyclic retrieval.
Data is retrieved in average mode wit h a start time of TC0 and an end time of TC2. The resolution has been
set in such a way that the Historian ret urns data for two complete cycles starting at T C0 and TC1 and an
incomplet e cycle starting at TC2. P1 to P 9 represent actual data points stored on the Historian. Of these
points, eight represent normal analog values, and one, P 5, represents a NULL due to an I/O S erver
disconnect, which causes a gap in the data between P 5 and P 6. Assume that the query calls for
timestamping at the end of the cycle.
Results are calculated as follows:
The "initial value" returned at the query start time (TC0) is the time-weighted average of the points in
the last cycle preceding TC0.
The value returned at TC1 is the time-weighted average of the points in the cycle starting at TC0.
The value returned at the query end time (TC2) is the time-weighted average of the points in the cycle
starting at TC1.
To understand how the time-weighted average is calculated, observe the last cycle as an example. First,
the area under t he curve must be calculated. This curve is indicated by the red line through P 6, P7, P8 and
PC2, where P C2 represents the interpolated value at time TC2 using points P 8 and P 9. The data gap c aused
by the I/O Server disconnect does not contribute anything to this area. If a quality rule of "good" has been
specified, then points with doubt ful quality will not contribute anything to the area, either.
To understand how the area is calculated, consider points P 6 and P 7. The area contribution between
these two points is calculated by multiplying the arithmetic average of value P 6 and value P 7 by the time
differenc e between the two points. The formula is:
((P6 + P7) / 2) x (T7 - T6 )
When the area for the whole cycle has been calculated, the time-weighted average is calculated by
dividing that area by the cycle time, less any periods within the cycle that did not contribut e anything to
the area calculation. The result is returned at the cycle end time.
If you take a closer look at points P 4 and P5 in the example, you can see that the red line through point P 4
is parallel to the x-axis. This is because P 5 represents a NULL, which cannot be used to calculate an
arithmetic average. Instead, the value P 4 is used for the whole time period bet ween points P 4 and P5.
The area calculation is signed. If the arithmetic average between two points is negative, then the
contribution to the area is negative.
Minimum Retrieval
The minimum value retrieval mode returns the minimum value from the actual data values within a
retrieval cycle. If there are no actual data points stored on the Historian for a given cycle, nothing is
returned. NULL is returned if the cycle contains one or more NULL values.
As in cyclic retrieval, the number of cycles is based on the specified resolution or cycle count. However,
minimum retrieval is not a true cyclic mode. Apart from the initial value, all points returned are delta
points.
Minimum retrieval only works with analog tags. For all other tags, normal delta results are returned.
All returned values are in chronological order. If multiple points are to be ret urned for a particular
timestamp, they are returned in the order in which the tags were specified in the query. If the minimum
value occurs several times in a cycle, the minimum value with the earliest timestamp is returned.
Using the minimum retrieval mode with a cycle count of 1 returns the same results as the SQL Server
MIN aggregate; however, the data is returned much faster.
This example has a start time of TC0 and an end time of TC2. The resolution has been set in such a way
that the Historian ret urns dat a for two complete cycles starting at TC0 and TC1, a "phantom" cycle starting
at TCP, and an incomplete cycle starting at TC2. The phantom cycle has the same duration as the first
cycle in the query period, extending back in time from the query start time.
For the queried tag, a total of 18 points are found throughout the cycles, represented by the markers P 1
through P 18. Of these points, 17 represent normal analog values. The point P 13 represents a NULL due to
an I/O Server disconnect, which causes a gap in the data between P13 and P14.
The minimum value for the "phantom" cycle starting at TCP is returned as the initial value at TC0. Point P 18
is not considered at all because it is outside of the query time frame. All other points are considered, but
only the points indicated by green mark ers on the graph are returned (P 10, P13, and P 17).
In total, four points are returned:
P4 as the minimum value of the "phantom" cycle and the initial point
P10 as the minimum value in the first cycle
P13 as the first and only exception occurring in the first cycle
P17 as the minimum value in the second cycle
No points are returned for the incomplete third cycle starting at the query end time, because the tag does
not have a point exactly at that time.
If the minimum value of the first cycle is located exactly at the query start time, both this value and the
minimum value of the phantom cycle are returned.
Maximum Retrieval
The maximum value retrieval mode returns the maximum value from the actual dat a values within a
retrieval cycle. If there are no actual data points stored on the Historian for a given cycle, nothing is
returned. NULL is returned if the cycle contains one or more NULL values.
As in cyclic retrieval, the number of cycles is based on the specified resolution or cycle count. However,
maximum ret rieval is not a true cyclic mode. Apart from the initial value, all points returned are delta
points.
Maximum ret rieval only works with analog tags. For all ot her tags, normal delta results are returned.
All returned values are in chronological order. If multiple points are to be ret urned for a particular
timestamp, they are returned in the order in which the tags w ere specified in the query. If the maximum
value occurs several times in a cycle, the maximum value with the earliest timestamp is returned.
Using the maximum ret rieval mode wit h a cycle count of 1 returns the same res ults as the SQL Server
MA X aggregate; however, the data is returned much faster.
This example has a start time of TC0 and an end time of TC2. The resolution has been set in such a way
that the Historian ret urns dat a for two complete cycles starting at TC0 and TC1, a "phantom" cycle starting
at TCP, and an incomplete cycle starting at TC2. The phantom cycle has the same duration as the first
cycle in the query period, extending back in time from the query start time.
For the queried tag, a total of 18 points are found throughout the cycles, represented by the markers P 1
through P 18. Of these points, 17 represent normal analog values. The point P 13 represents a NULL due to
an I/O Server disconnect, which causes a gap in the data between P 13 and P14.
The maximum value for the "phantom" cycle starting at TCP is returned as the initial value at TC0. Point P 18
is not considered at all because it is outside of the query time frame. All other points are considered, but
only the points indicated by green mark ers on the graph are returned (P 12, P13, and P 15).
In total, four points are returned:
P6 as the maximum value of the "phantom" cycle and the initial point
P12 as the maximum value in the first cycle
P13 as the first and only exception occurring in the first cycle
P15 as the maximum value in the second cycle
No points are returned for the incomplete third cycle starting at the query end time, because the tag does
not have a point exactly at that time.
If the maximum value of the first cycle is located exactly at the query start time, this value and the
maximum value of the phantom cycle are returned.
Integral Retrieval
Integral retrieval calculates the values at retrieval cycle boundaries by int egrating t he graph described by
the points stored for the tag. Therefore, it works much like average retrieval, but it additionally applies a
scaling factor. This retrieval mode is useful for calculating volume for a particular t ag. For ex ample, if one
of your tags represents product flow in gallons per second, integral retrieval allows you to retrieve the
total product flow in gallons during a certain time period.
Integral retrieval is a true cyclic mode. It returns one row for each tag in the query for each cycle. The
number of cycles is based on the specified resolution or cycle count.
Integral retrieval only works with analog tags. For all other tags, normal cyclic results are returned.
After this area has been found, it is scaled using the value of the IntegralDivisor column in the
EngineeringUnit table. This divisor expresses the conversion factor from the actual rate to one of
units per second.
For example, if the time-weighted average for a tag during a 1-minute cycle is 3.5 liters per second,
integral retrieval ret urns a value of 210 for that cycle (3.5 liters per second multiplied by 60 seconds).
Slope Retrieval
Slope retrieval returns the slope of a line drawn through a given point and the point immediately before it,
thus expressing the rate at which values change.
This retrieval mode is useful for detecting if a tag is changing at too great a rate. For example, you might
have a temperature that should steadily rise and fall by a small amount, and a sharp inc rease or
decrease could point to a potential problem.
The slope retrieval mode can be considered a delta mode. Apart from the initial value and a value at th e
query end time, all returned points are calculated delta points returned with the timestamp of an actual
delta point.
Slope retrieval only works with analog tags. For all other tags, normal delta results are returned.
All returned values are in chronological order. If multiple points are to be ret urned for a particular
timestamp, they are returned in the order in which the tags were specified in the query.
Counter Retrieval
Counter retrieval allows you to accurately retrieve the delta change of a tag’s value over a period of time
even for tags that are reset upon reaching a "rollover value." The rollover value is defined in the Historian
for each tag.
This retrieval mode is useful for determining how much of an item was produced during a particular time
period. For example, you might have an integer counter that keeps track of how many cartons were
produced. The counter has an indic ator like this:
The next value after the highest value that can be physically shown by the counter is called the rollover
value. In this example, the rollover value is 10,000. When the counter reaches the 9,999th value, the
counter rolls back to 0. Therefore, a count er value of 9,900 at one time and a value of 100 at a later time
means that you have produc ed 200 units during that period, even though the counter value has dropped
by 9,800 (9,900 minus 100). Counter retrieval allows you to handle this situation and receive the correct
value. For each cycle, the counter retrieval mode shows the increase in that counter during the cycl e,
including rollovers.
Counter retrieval also works with floating point counters, which is useful for flow meter data. Similar to the
carton counter, some flow meters "roll over" after a certain amount of flow accumulates. For both
examples, the need is to convert the accumulating measure to a "delt a change" value over a given
period.
Counter retrieval is a true cyclic mode. It returns one row for each tag in the query for each cycle. The
number of cycles is based on the specified resolution or cycle count.
The counter algorithm is only applied to analog tags and to discrete tags. For i nteger analog tags, the
result will be an integer returned as a float data type For a real analog tag, the rollover value and the
result may be real values and can include fractional values. If a query contains tags of other types, then
no rows are returned for those tags. For discrete tags, the rollover value is assumed to be 2.
The rules used to determine the OP CQuality returned with a counter value are the same as for a time
weighted average query. For more information, see Qualit y Rule (wwQualityRule). When a rollover has
occurred in the calculation cycle, a special quality detail of 212 is returned in all non-NULL cases.
This example has a start time of TC0 and an end time of TC3. The resolution has been set in such a way
that the Historian ret urns data for three complete cycles starting at TC0, TC1, and TC2, and an incomplete
cycle starting at TC3.
For the queried tag, a total of twelve points are found throughout the cycles repr esented by the markers
P1 through P 12. Of these points, eleven represent normal analog values. The point P 9 repres ents a NULL
due to an I/O Server disconnect, which causes a gap in the data between P 9 and P 10. Point P 12 is not
considered because it is outside of the query time frame.
All points are considered in the counter calculation, but only the yellow ones are actually used to
determine which values to return to the client. The returned points are P C0, PC1, PC2 and PC3, shown in
green at the top to indicate that there is no simple relationship between them and any of the actual points.
All cycle values are calculat ed as the delta change between the cycle time in question and the previous
cycle time, taking into account the number of rollovers between the t wo points in time. The counter
algorithm assumes that a rollover occurred if the current value is lower than the previous value. The initial
value at the query start time (P C1) is calculated the same way, only based on a phant om cycle before the
query start time.
For example, the formula to calculate P C1 is as follows:
PC1 = n * VR + P6 - P1
where:
n = the number of rollovers that have occurred during the cycle
VR = the rollover value for the tag
If either n or VR are equal to zero, P C1 is simply the difference bet ween the values P 1 and P6.
In the case of cycle C2, there is no value at the cycle time, so the NULL value represented by point P 9 is
returned. In the case of cycle C3, a NULL is again returned, bec ause there is no counter value at the
previous cycle boundary to use in the calculation. There must be a full cycle of values in order for the
counter to be calculated.
If a gap is fully contained inside a cycle, and if points occur within t he cycle on both sides of the gap, then
a counter value is returned, even though it may occasionally be erroneous. Zero or one rollovers are
assumed, even though the counter might have rolled over multiple times.
ValueState Retrieval
ValueState retrieval returns information on how long a tag has been in a particular value state during
each ret rieval cycle. That is, a time-in-state calculation is applied to the tag value.
This retrieval mode is useful for determining how long a machine has been running or stopped, how
much time a process spent in a particular state, how long a valve has been open or closed, and so on.
For example, you might have a steam valve that releases steam int o a reactor, and you want to know the
average amount of time the valve was in the open position during the last hour. ValueState retrieval can
return the short est, longest, average, or total time a tag spent in a state, or the time spent in a state as a
percentage of the total cycle length.
When you use ValueState retrieval for a tag in a trend chart, you must specify a single value state for
which to retrieve information. ValueState retrieval then returns one value for each cycle—for example,
the total amount of time that the valve was in the "open" state during each 1-hour cycle. This information
is suitable for trend display.
If you don’t specify a state, ValueState retrieval returns one row of information for each value that the tag
was in during each cycle. For example, this would return not only the time a valve was in the "open" state,
but also the time it was in the "closed" state. This information is not suitable for meaningful display in a
regular trend. You can, however, retrieve this type of information in a query and view it as a table.
ValueState ret rieval works with integer, discrete, string, and state summary tags. For other types of tags,
no rows are returned. NULL values are treated like any other distinct state.
The values returned at the query start time are the result of applying the algorithm to a "phantom" cycle
preceding the query range. It is assumed that the tag value at the start of t he cycle is located at that point
in time.
To specify the type of calculation, set the wwStateCalc parameter in the query. For more information, see
State Calculation (wwStateCalc ).
Value
ValueState Retrieval
C0 C1 C2 C3
PC0 PC1 PC2 PC3
ON
OFF Gap
1 2 3 4 5 6 7 8 9 11 12 13 14 15 16 17 18 19 21 22 23 24 25 26 27 28 29
Time
TC0 TC1 TC2 TC3
This example has a start time of TC0 and an end time of TC3. The resolution has been set in such a way
that the Historian ret urns data for three complete cycles starting at TC0, TC1, and TC2, and an incomplete
cycle starting at TC3. Time is measured seconds.
A gap in the data occurs in the third cycle due to an I/O Server disconnect.
The state calculation is based on each cycle, and the values returned at the query start time are not
regular initial values, but are the resulting values that occur after applying the algorithm to the last cycle
preceding the query range. The returned points are P C0, PC1, PC2 and PC3, shown in green at the top to
indicate that there is no simple relationship between the calculated values and any of the actual points.
Assume the query is set so that the total time (wwStateCalc = ‘Total’)in the two states are returned. The
timestamping is set to use the cycle end time.
For TC0, the query ret urns t wo rows (one for the "on" state and one for the "off" state), calculated as a
result of the "phantom" cycle that precedes the query start time. The values have a timestamp of the
query start time.
For TC1, one row is returned for the "on" state. The "on" state occurred twice during the cycle--one
time for four seconds and again for two seconds before the cycle boundary, and the total time
returned is six seconds. The state was "off" twice during the cycle for a total time of four seconds,
and one row is returned wit h that value.
For TC2, one row is returned for the "on" state, and one row is returned for the "off" state. The "on"
state occurred for a total of nine seconds between the cycle boundaries, and t he "off" state occurred
for a total of one second.
For TC3, one row is returned for the "on" state, and one row is returned for the "off" state. The "on"
state occurred for a total of four seconds between the cycle boundaries, and the "off" state occurred
for a total of three seconds. An additional row is returned for the NULL state occurring as a result of
the I/O Server disconnect.
Using the same data, if you queried the total contained time for the states, the following is returned:
For TC0, the query ret urns t wo values (one for the " on" state and one for the "off" state), calculated as
a result of the "phantom" cycle the precedes the query start time. The value has a timestamp of the
query start time.
For TC1, one row is returned for the "on" state, and one row is returned for the "off" state. The "on"
state occurred one time for four seconds within the cycle. The two seconds of "on" time that crosses
the cycle boundary does not contribute t o the t otal time. The state was "off" one time during the cycle
for two seconds completely within the cycle boundary.
For TC2, the state was not "on" for any contained time between the cycle. Both occurrences of the
"on" state cross over a cycle boundary, so no rows are returned for this state. One row is returned for
the "off" state. The state was "off" one time during the cycle for one seconds completely within the
cycle boundary.
For TC3, one row is returned for the "on" state, and one row is returned for the "off" state. The state
was "on" for a single contained time of two seconds bet ween the cycle boundaries. The state was
"off" three times during the cycle for three seconds completely within the cycle boundary. An
additional row is returned for the NULL state occurring as a result of the I/O Server disconnect. The
state was NULL for a total of three seconds. The I/O Server disconnect that "disrupted" the off state
is treated as its own state, thereby changing what would have been a single "off" state instance of
five seconds into two instances of the "off" state fo r one second each.
RoundTrip Retrieval
RoundTrip retrieval is very similar to ValueState retrieval in that it performs calculations on state
occurrences in the within a cycle period you specify. However, ValueState retrieval uses the time spent in
a certain state for the calculation, and RoundTrip retrieval uses the time bet ween consecutive leading
edges of the same state for its calculations.
You can use the RoundTrip retrieval mode for increasing the efficiency of a process. For example, if a
process produces one item per cycle, then you would want to minimize the time lapse between two
consecutive cycles.
The RoundTrip mode returns a rows for each state in any given cycle. RoundTrip retrieval only works
with integer analog tags, discrete tags, and string tags. If real analog t ags are specified in the query, then
no rows are returned for these tags. RoundTrip retrieval is not applied to state summary or analog
summary tags. NULL values are t reat ed as any other distinct value and are used to analyze the round trip
for disturbances.
RoundTrip retrieval is supported for the History and StateWideHistory tables.
Any point on the boundary of the end cycle will be considered to the next cycle. The point on the
boundary of the end query range is not counted in the calculation except that it is used to indicat e that the
previous state is a contained state.
If no roundtrip state is found within the cycle for a supported tag, a NULL StateTime value is returned. If
there is no valid point prior to the phantom cycle, a NULL state is returned for the phantom cycle.
Value
RoundTrip Retrieval
C0 C1 C2 C3
PC0 Round-trip PC1 PC2 PC3
ON
OFF Gap
Round-trip
1 2 3 4 5 6 7 8 9 11 12 13 14 15 16 17 18 19 21 22 23 24 25 26 27 28 29
Time
TC0 TC1 TC2 TC3
This example has a start time of TC0 and an end time of TC3. The resolution has been set in such a way
that the Historian ret urns data for three complete cycles starting at TC0, TC1, and TC2, and an incomplete
cycle starting at TC3. Time is measured seconds.
A gap in the data occurs in the third cycle due to an I/O Server disconnect.
The state calculation is based on each cycle, and the values returned at the query start time are not
regular initial values, but are the resulting values that occur after applyin g the algorithm to the last cycle
preceding the query range. The returned points are P C0, PC1, PC2 and PC3, shown in green at the top to
indicate that there is no simple relationship between the calculated values and any of the actual points.
Assume the query is set so that the total contained time in t he two states are returned. The timestamping
is set to use the cycle end time. The RoundTrip ret rieval mode returns values for states that are
completely contained within the cycle boundaries. The following is returned:
For TC0, the query ret urns t wo values (one for the " on" state and one for the "off" state), calculated as
a result of the "phantom" cycle that preceeds the query start time. The value has a timestamp of the
query start time.
For TC1, one row is returned for the "on" state, and one row is returned for the "off" state. The
round-trip for the " on" state occurred one time for four seconds completely wit hin the cycle boundary.
The round-trip for the "off" state occurred one time during the cycle for five seconds.
For TC2, a round-trip did not occur for either state within the cycle boundaries. One NULL row is
returned for this cycle.
For TC3, one row is returned for the "on" state, and one row is returned for the "off" state. The state
was "on" for a single contained time of two seconds bet ween the cycle boundaries. The state was
"off" one time during the cycle for one second completely within the cycle boundary. An additional
row is ret urned for the NULL state occurring as a result of the I/O Server disconnect.
For TC3, one row is returned for the "on" state, and one row is returned for the "off" state. The state
was "on" for a single contained time of three seconds between the cycle boundaries. One row is
returned for the "off" state for a total cont ained time of seven seconds. (The first round-t rip for the
"off" state includes the I/O Server disconnect for a length of four seconds. The second round-trip has
a length of three seconds.) An additional row is returned for the NULL state occurring as a result of
the I/O Server disconnect, and the returned value is NULL because there is no round-trip during the
cycle for it. The I/O S erver disconnect that "disrupted" the off state is treated as its own state, thereby
changing what would have been a single "off" state instance of five seconds into t wo instances of the
"off" state for one second eac h.
The first two rows are for the "phant om" cycle leading up to the query start time and have a timestamp of
the query start time.
The second two rows show t he average amount of time for each state and have a timestamp of t he query
end time (the default).
Compare these results to same basic query that instead uses RoundTrip ret rieval:
SELECT DateTime, vValue, StateTime
FROM History
WHERE TagName IN ('Reactor1OutletValve')
AND DateTime >= '2009-09-16 12:35:00'
AND DateTime <= '2009-09-16 12:55:00'
AND wwRetrievalMode = 'RoundTrip'
AND wwStateCalc = 'AvgContained'
AND wwCycleCount = 1
DateTime vValue StateTime
2009-09-16 12:35:00.0000000 1 277607
2009-09-16 12:35:00.0000000 0 278580
2009-09-16 12:55:00.0000000 0 275683.5
2009-09-16 12:55:00.0000000 1 273845
In this case, Historian retrieves the first point on or before the datetime requested in the query. The line
(TC0) is the timestamp for which the start bound point is requested. P 1 is returned because that is the start
or first point for the query date time.
Historian can also use bounding value retrieval to return an end bound point, as in the following
illustration:
In this case, Historian returns first point aft er the datetime requested in the query. TC0 is the timestamp for
which the end bound point is requested and P 3 is returned as the ending bound point because this is the
first point after the query dat e time.
wwRetrievalMode = 'StartBound'
To return an end bound point, set the following parameter in your query.
wwRetrievalMode = 'EndBound'
Example 1 - Retrieve start bound point
select DateTime,TagName,Value
(wwInterpolationType)
Equal Time Intervals)
(wwValueDeadband)
(wwTimestampRule)
(wwTimeDeadband)
Interpolation Type
Value Deadband
(wwCycleCount)
Timestamp Rule
Cyclic Retrieval Y Y Time Deadband Y Y*
Delta Retrieval Y Y Y
Full Retrieval Y
Y Y Y Y Y Y
Interpolated Retrieval
Minimum Retrieval Y Y Y Y
Maximum Retrieval Y Y Y Y
Integral Retrieval Y Y Y Y Y Y
Slope Retrieval Y Y
Counter Retrieval Y Y Y Y Y
ValueState Retrieval Y Y Y Y Y Y
RoundTrip Retrieval Y Y Y Y Y Y
* (only on Historian 9.0 and later)
Note: The wwParamet ers extension is reserved for future use. The wwRowCount parameter is still
supported, but is deprec ated in favor of wwCycleCount.
The extensions are implemented as "virtual" columns in the extension tables. When you query an
extension table, you can specify values for these column parameters to manipulate the dat a that will be
returned. You will need to specify any real-time extension parameters each time that you execute the
query.
For example, you could specify a value for the wwResolution column in the query so that a resolution is
applied to the returned data set:
SELECT DateTime, Value
FROM History
WHERE TagName = 'SysTimeSec'
AND DateTime >= '2001-12-02 10:00:00'
AND DateTime <= '2001-12-02 10:02:00'
AND Value >= 50
AND wwResolution = 10
AND wwRetrievalMode = 'cyclic'
Although the Microsoft SQL Server may be configured to be case-sensitive, the values for the virtual
columns in the extension tables are always case-insensitive.
Note: You cannot use the IN clause or OR clause to specify more than one condition for a time domain
extension. For example, "wwVersion IN ('original', 'latest')" and "wwRetrievalMode =
'Delta' OR wwVersion = 'latest'" are not supported.
For general information on creating SQL queries, see your Microsoft SQL Server documentation.
The application of the cycle count also depends on whether you are querying a wide table. If you are
querying the History table, the cycle count determines the number of rows returned per tag. For example,
a query that applies a cycle count of 20 to two tags will ret urn 40 rows of data (20 rows for each tag). If
you are querying a WideHistory table, the cycle count specifies the total number of rows to be ret urned,
regardless of how many tags were queried. For exampl e, a query that applies a cycle count of 20 to two
tags returns 20 rows of data.
Values chosen:
If wwRes olution and wwCycleCount are not specified, then a default of 100 cycles are chosen.
If wwRes olution and wwCycleCount are set to 0, then a default of 100000 cycles are chosen.
If wwRes olution and wwCycleCount are both set, then wwCycleCount is ignored.
If wwCycleCount is specified and is less than 0, then a default of 100 cycles are chosen.
For ValueState retrieval, if the start time of the cycle is excluded, no states are returned for the first
cycle.
For ValueState retrieval, if the end time of the cycle is excluded, no states are returned for the last
cycle.
For more information, see Understanding Retrieval Options on page 565.
Note: The rowset is guaranteed to contain one row for each tag in the normalized query at every
resolution interval, regardless of whether a physical row exists in history at that particular instance in
time. The value cont ained in the row is the last known physical value in history, at that instant, for the
relevant tag.
Instead of specifying a resolution, you can specify the cycle count directly. In that case, the resolution is
calculated based on the cycle count and the query duration. For more information, see Cycle Count (X
Values over Equal Time Intervals) (wwCycleCount).
This option is relevant in the following retrieval modes:
Cyclic Retrieval
Interpolated Retrieval
"Best Fit" Retrieval
Average Ret rieval
Minimum Retrieval
Maximum Retrieval
Integral Retrieval
Counter Retrieval
ValueState Retrieval
RoundTrip Retrieval
For delt a retrieval, you can achieve similar results by using a time deadband. For more information, see
Time Deadband (wwTimeDeadband).
Integral
Counter
ValueState
RoundTrip
It’s common to expect a single aggregate row returned for a particular time interval. You can accomplish
this in several ways.
The following example is querying for hourly averages. It returns a single row time stamped at the query
start time. If the query included the query end point by including an equal sign for it, the query would also
have ret urned an additional row at the query end time.
SELECT DateTime, Value, Quality, QualityDetail, OPCQuality
FROM History
WHERE TagName IN ('SysTimeSec')
AND DateTime >= '2009-10-16 08:00:00'
AND DateTime < '2009-10-16 09:00:00'
AND wwRetrievalMode = 'Avg'
AND wwResolution = 3600000
The results are:
DateTime Value Quality QualityDetail OPCQuality
2009-10-16 08:00:00.0000000 29.5 0 192 192
What may be confusing in this example is the calculation of the average in the retu rned row for the
phantom cycle leading up to the query start time. The query specifies a positive one hour time interval
between the query start time and the query end time. You may therefore expect that the calculated and
returned average should be for the specified interval.
However, the time difference bet ween start and end time in the above query is actually not required
because the resolution has been provided explicitly (wwResolution = 36000000). If the query specified
an end time equal to the specified start time and if it included the equal sign for the end time, the query
would still return the same single row of data.
SELECT DateTime, Value, Quality, QualityDetail as QD, OPCQuality
FROM History
WHERE TagName IN ('SysTimeSec')
AND DateTime >= '2007-12-11 08:00:00'
AND DateTime <= '2007-12-11 09:00:00'
AND wwRetrievalMode = 'Avg'
AND wwCycleCount = 1
The results are:
DateTime Value Quality QD OPCQuality
2009-10-16 08:00:00.0000000 29.5 0 192 192
This second example also asks for hourly averages and it also returns only a single row of data stamped
at the query start time. This query, however, must specify a time difference between the start and end
time, because the resolution is not explicitly defined in the query.
As in the preceding query, the specified interval and cycle count of 1 may look like the returned row has
been calculated for the specified int erval, but the returned row is once again for the phantom cycle
leading up to the start time.
The StartDateTime makes it easier to see which time interval was used to calculate the returned
aggregate. This column returns the time stamp of the beginning of the cycle used for the aggregat e
calculation. The time stamp is always returned in accordance with the specified time zone and always
has the s ame offset as the time stamp returned in t he DateTime column, even when the two time stamps
are on different sides of a DS T change.
Assuming results are timestamped at the end of the cycle (as is done by de fault when
wwTimeStampRule is set to END), the initial rows in the examples above would return a DateTime equal
to '2009-10-16 08:00:00', and the StartDateTime column would return '2009 -10-16 07:00:00' making it
easy to interpret the res ult.
If instead the query were to ask for results time stamped at the beginning of the cycle with
wwTimeStampRule set to STA RT, the initial rows in the same examples would still return a DateTime
equal to '2009-10-16 08:00:00', but the time stamp has now been shifted in accordance with the time
stamp request. The result is therefore calculated for the specified time int erval between 8 a.m. and 9 a.m.
In this example, the new StartDateTime column would ret urn the same time stamp as the DateTime
column, '2009-10-16 08:00:00', again making it easier to interpret the result.
For retrieval modes for which cycles are defined, the StartDateTime column ret urns the cycle start time.
These modes are:
Cyclic
Interpolated
BestFit
Min
Max
A verage
Integral
Counter
ValueState
RoundTrip
In the remaining retrieval modes, the StartDat eTime column ret urns the same time stamp as the
DateTime column.
Data is retrieved for t he time period starting with TS and ending with TE. All points in the graphic represent
data values stored on the Historian. The grey areas represent the time deadband, which starts anew with
every returned value. Only the green points (P 2, P4, P7, P8, P9, P11) are returned. The ot her points are not
returned because they fall within a deadband.
Data is retrieved for t he time period starting with TS and ending with TE. All points in the graphic represent
data values stored on the Historian. The grey areas represent the value deadband, which starts anew
with every returned value. Only the green points (P 2, P5, P6, P7, P9, P10, P11) are returned. The other
points are not ret urned because they fall within a deadband.
Stairstep: No int erpolation occurs. The value at the cycle boundary is assumed to be the same
value as the last stored value before the cycle boundary. The last known point is returned with the
given cycle time. If no valid value can be found, a NULL is ret urned.
Linear: The Historian calculates a new value at the cycle boundary by interpolating between the last
stored value before the boundary and the first stored value aft er the boundary. If either of these
values is NULL, it returns the last stored value before the boundary.
Expressed as a formula, V c is calculated as:
Vc = V1 + ((V2 - V1) * ((Tc - T1) / (T2 - T1)))
The type of data that you want to retrieve usually determines the interpolation type to use. For example,
if you have a thermocouple, the temperature change is linear, so it’s best to use linear interpolation. If you
have a tag that contains discrete measurements, such as a set point, then you probably want to use
stair-stepped values. In general, it is recommended that you use linear interpolation as the general
setting, and use stair-stepped values for the exceptions.
This option is relevant in the following retrieval modes:
Interpolated Retrieval
"Best Fit" Retrieval
Average Ret rieval
Integral Retrieval
The quality of an interpolated point is determined by the wwQualityRule setting. For more information,
see Qualit y Rule (wwQualityRule).
The interpolation type can be set on three levels:
The Historian system-wide setting. The system-wide setting must be either stair-step or int erpolated.
This setting is configured using the Historian Configuration Editor.
The individual analog tag setting. You can configure an individual analog tag to use the system -wide
setting or either stair-stepped values or linear interpolation. The individual t ag setting will override the
system-wide setting. This setting is configured using the Historian Configuration Editor.
The setting for the wwInterpolationType parameter in the query. This setting overrides any other
setting for all tags in the query.
The wwInterpolationTy pe parameter is dynamically used bot h for input for the query, when you need to
override the individual tag settings, and for output for each individual row to show whether a particular
row value was calculated using linear interpolation (returned as "LINEAR") or if it is a stair-stepped value
(returned as "STA IRS TEP").
To force a query to always use linear interpolation whenever applic able, specify the following in the
query:
AND wwInterpolationType = 'Linear'
To force a query to always return stair-stepped values, specify the following in the query:
AND wwInterpolationType = 'StairStep'
o At TC2: The last value in the "phant om" cycle starting at TC2
End: The value for a given cycle is stamped with the cycle end time. For ex ample, in the following
illustration of a cyclic query, the following values are returned at the cycle boundaries:
o At TC0: P1, because it is the last value in the "phantom" cycle ending at TC0. Because the End
timestamp rule is used, the value is timestamped at TC0.
o At TC1: P7, because it falls on the cycle boundary. In cyclic mode, if there is a value right on the
cycle boundary, it is considered to belong to the cycle before the boundary. In this case, this is
the cycle starting at TC0 and ending at TC1, and because the End timestamp rule is used, the
value is timestamped at TC1.
o At TC2: P11, because it is the last value in the cycle ending at TC2
Server default: Either Start or End is used, depending on the system parameter setting on the
Historian.
This option is relevant in the following retrieval modes:
Cyclic Retrieval (only for Historian 9.0 and lat er)
Interpolated Retrieval
Average Ret rieval
Integral Retrieval
Counter Retrieval
ValueState Retrieval
RoundTrip Retrieval
If you are using date/time functions and the wwTimeZone parameter, you will need to use the
faaTZgetdate() function.
If the query were to specify OPTIMIS TIC, the counter mode will always return rows with numeric counter
values and good quality. These rows may or may not be precise. The PercentGood column of the row
returns the percentage of time in each cycle in which retrieval was able to find values stored with good
quality, so if the PercentGood is anything less than 100, then the returned row may be incorrect. Quality
is returned as uncertain if percent good is not 100 percent.
Now look at the counter values that are returned using OP TIMIS TIC quality in the preceding illustration
The query skips the value to be returned at the first cycle boundary, because there is not enough
information about the cycle prior to that boundary. At the second cycle boundary, the value 0 will be
returned, because there was a gap in the data for the entire first cycle. In the second cycle, there are two
points, P1 and P2. The query uses P2 as the end value of the cycle and infers a start value of the cycle
from P1. At the third cycle boundary, Tc2, the query returns P2 – P1. Similarly, at the last cycle boundary,
the query returns P4 – P3.
For the integral retrieval mode, the query does not summarize data for gaps because there is no way to
know which value to use for the summariz ation. However, if the query specifies OPTIMIS TIC quality, the
query uses the last known good value for the summarization in the gap. As described for the counter
retrieval example, the PercentGood column also expresses the quality of the calculated value in integral
retrieval, so if the PercentGood is anything less than 100, then the returned row may be incorrect.
Similarly, if you combine a mixture of doubt ful OPC qualities, a doubtful OPC quality (64) will be returned
as the combined OPC quality.
SELECT TagName, DateTime, Value, QualityDetail, OPCQuality, wwRetrievalMode
FROM History
WHERE TagName = 'I0R5'
AND DateTime >= '2009-09-12 00:20'
AND DateTime <= '2009-09-12 00:40'
AND wwResolution = 10000
AND wwRetrievalMode = 'Integral'
If you run this query against the following sample data:
Tagname DateTime Resolution QualityDetail
I0R5 2009-09-12 00:07 2 65
I0R5 2009-09-12 00:14 3 68
I0R5 2009-09-12 00:22 0 71
I0R5 2009-09-12 00:25 1 74
I0R5 2009-09-12 00:27 0 79
I0R5 2009-09-12 00:29 2 80
I0R5 2009-09-12 00:33 3 88
I0R5 2009-09-12 00:36 0 92
I0R5 2009-09-12 00:39 1 64
The results are:
Tagname DateTime Value QualityDetail OPCQuality wwRetrievalMode
I0R5 00:20 26.0 64 64 INTEGRAL
I0R5 00:30 10.0 64 64 INTEGRAL
I0R5 00:40 16.0 64 64 INTEGRAL
When you combine the same OPC quality then that OPC quality will be returned. However, when there is
no good point in a cycle for cyclic modes such as Integral, A verage, Counter, or AnalogSummary, the
returned NULL value will have an OP C quality of 0 and a Quality Detail of 65536, regardless of combined
qualities.
SELECT TagName, StartDateTime, EndDateTime, OPCQuality, PercentGood,
wwRetrievalMode, first
FROM AnalogSummaryHistory
WHERE TagName = 'F0R5'
AND StartDateTime >= '2009-09-12 00:20'
AND EndDateTime <= '2009-09-12 00:40'
AND wwResolution = 10000
AND wwRetrievalMode = 'Cyclic'
If you run this query against the following sample data:
Tagname DateTime Resolution QualityDetail
F0R5 2009-09-12 00:07 1.6 78
F0R5 2009-09-12 00:14 3.1 78
F0R5 2009-09-12 00:22 0.2 78
F0R5 2009-09-12 00:25 0.8 78
F0R5 2009-09-12 00:27 0.4 78
For RoundTrip, StateSummary, and ValueState modes, the OP C qualities are only combined with the
same state in a cycle. If the state only occurs once in a cycle, then the qualities of that state will be
returned. The returned NULL state will always have an OP C quality of 0 and Quality Detail of 65536. The
same qualities are returned for a state that has no roundtrip in RoundTrip mode.
SELECT TagName, DateTime, Value, QualityDetail, OPCQuality, StateTime
FROM History
WHERE TagName = 'I001'
AND DateTime >= '2009-09-12 00:20'
AND DateTime <= '2009-09-12 00:40'
AND wwResolution = 10000
AND wwRetrievalMode = 'RoundTrip'
AND wwStateCalc = 'MaxContained'
If you run this query against the following sample data:
Tagname DateTime Resolution QualityDetail
I001 2009-09-12 00:12 1 90
I001 2009-09-12 00:15 2 65
I001 2009-09-12 00:22 1 85
I001 2009-09-12 00:23 2 75
I001 2009-09-12 00:26 1 75
I001 2009-09-12 00:29 2 70
The results are:
Tagname DateTime Value QualityDetail OPC-Quality StateTime
I001 2009-09-12 00:20 NULL 65536 0 NULL
I001 2009-09-12 00:20 1.0 90 90 NULL
Note: Cyclic, Full, Delta, Maximum, Minimum, and BestFit do not have combined qualities; therefore, the
rules are not applied to these modes.
The nature of the data and how you set the cycle count determines whet her you should us e a "contained"
version of the aggregation. The calculations apply to each unique value state that the tag was in during
each retrieval cycle for the query. The total and percent calculations are always exact, but the minimum,
maximum, and average calculations are subject to "arbitrary" cycle boundaries that do not coincide with
the value changes. Therefore, non-intuitive res ults may be returned. This is most apparent for
slowly-changing tags queried over long cycles.
For example, a string tag that assumes only two distinct values changing every 10 minutes is queried
with a cycle time of two hours. Going into a cycle, the value (state) at the cycle boundary is recorded. If
the value then changes a short while into the cycle, the state found at the cycle start time will most likely
end up being the minimum value. Likewise, the state at the cycle end time is cut short at the cycle end
time. The two cut-off occurrenc es in turn skew the average calculation.
For RoundTrip retrieval, you can only specify the following types of state calculations (aggregations) to
be performed on the data. The calculations are for eac h unique state within each retrieval cycle for the
query.
MinContained. The shortest time span between consecutive leading edges of any state that occurs
multiple times within the cycle, while disregarding state occurrences that are not fully contained
inside of the cycle.
MaxContained. The longest time span between consecutive leading edges of any state that occurs
multiple times within the cycle, while disregarding state occurrences that are not fully contained
inside of the cycle.
AvgContained. The average time span bet ween consecutive leading edges of any state that occurs
multiple times within the cycle, while disregarding state occurrences that are not fully contained
inside of the cycle. (This is the default.)
TotalContained. The total time span bet ween consecutive leading edges of any state that occurs
multiple times wit hin the cycle while disregarding state occurrences that are not fully contained inside
of the cycle.
PercentContained. The percentage of the cycle time spent in time span between cons ecutive
leading edges for a state that occurs multiple times within the cycle while disregarding value
occurrences that are not fully contained inside of the cycle.
Outliers
You can filter outliers by specifying a filter called ‘SigmaLimit()’. This filter has one parameter defined for
specifying the value of n. This parameter is of type double. If the parameter is omitted, then a default
parameter of 2.0 is used.
When this filter is specified in any retrieval mode, a time weighted mean, ì (mu), and time weighted
standard deviation, ó (sigma), are found for each analog tag for the entire query range including phantom
cycles if any, and points falling outside of the range [ì - nó, ì + nó] are removed from the point set before
the points are processed furt her. In other words, the value will be filtered out if value > ì + nó or value < ì
– nó.
Time weighted standard deviation is calculated as:
Math.Sqrt( (integralOfSquares - 2 * timeWeightedA verage * integral + totalTime * timeWeightedA verage
* timeWeightedA verage)/totalTime);
This is the single pass equivalent to the formula:
N
s 2 weighted = ? wi (x -µ *)
i
2
i=1
Ranges where the value is NULL are excluded from these calculations.
A cyclic query example using a ‘SigmaLimit()’ filter without specifying the n value would look like this:
SELECT DateTime, Value, wwFilter
FROM History
WHERE TagName = ('TankLevel')
AND DateTime >= '2008-01-15 15:00:00'
AND DateTime <= '2008-01-15 17:00:00'
AND wwRetrievalMode = 'Cyclic'
AND wwFilter = 'SigmaLimit()'
Not specifying the n-value as done here is the same as specifying ‘SigmaLimit(2)’. The result set might
look like this:
DateTime Value wwFilter
2008-01-15 15:00:00.000 34.56 SigmaLimit()
2008-01-15 16:00:00.000 78.90 SigmaLimit()
2008-01-15 17:00:00.000 12.34 SigmaLimit()
If the first value would be filtered out by the SigmaLimit filter, the value will be replaced with the time
weighted mean.
ToDiscrete(2)
ToDiscrete(2, >=)
The following are unsupported syntaxes.
ToDiscrete(2, )
ToDiscrete(, >=)
ToDiscrete(>=)
The cutoff value holds the value that signifies the boundary bet ween values that are to be interpreted as
OFF and values that are to be interpreted as ON.
The operator parameter controls the value range relative to the cutoff value to convert to the ON val ue
and vice versa.
NULLs encountered in the analog value stream are copied unchanged to the discrete value stream. The
quality of each discrete point is copied from the analog point that causes its production. However, the
quality detail for values modified with this filter will have the QualityDetail flag 0x2000 (value changed by
filter) set. For example, consider the following ValueState query:
SELECT DateTime, vValue, StateTime, wwFilter
FROM History
WHERE TagName IN ('SysTimeSec')
AND DateTime >= '2008-01-15 15:00:00'
AND DateTime <= '2008-01-15 17:00:00'
AND wwRetrievalMode = 'ValueState'
AND wwStateCalc = 'MinContained'
AND wwResolution = 7200000
AND wwFilter = 'ToDiscrete(29, >)'
Here the operator is specified as >, so values greater than but not including 29 are internally converted to
ON, whereas values from 0 to 29 are converted to OFF. This query could return the following rows:
DateTime vValue StateTime wwFilter
2008-01-15 15:00:00.000 0 30000 ToDiscrete(29, >)
2008-01-15 15:00:00.000 1 30000 ToDiscrete(29, >)
2008-01-15 17:00:00.000 0 30000 ToDiscrete(29, >)
2008-01-15 17:00:00.000 1 30000 ToDiscrete(29, >)
The values returned in the StateTime column show that the shortest amount of time that SysTimeSec
had values equivalent to either ON or OFF and remained in that state was 30 seconds. A similar
RoundTrip query would look like this:
SELECT DateTime, vValue, StateTime, wwFilter
FROM History
WHERE TagName IN ('SysTimeSec')
AND DateTime >= '2008-01-15 15:00:00'
AND DateTime <= '2008-01-15 17:00:00'
AND wwRetrievalMode = 'RoundTrip'
AND wwStateCalc = 'MaxContained'
AND wwResolution = 7200000
AND wwFilter = 'ToDiscrete(29, <=)'
Here the operator is specified as <=, so the resulting conversion is exactly opposite to that performed in
the previous query. Now values smaller than or equal to 29 are internally converted to ON, whereas
values from 30 to 59 are converted to OFF. This query could return the following rows:
DateTime vValue StateTime wwFilter
2008-01-15 15:00:00.000 0 60000 ToDiscrete(29, <=)
AUTO The retrieval mode determines the The ret rieval mode determines the
value. See the following table for timestamp. See the following table
how A UTO applies to the value for how AUTO applies to the value
selection. This is the default value. selection. This is the default value.
FIRS T The first value that occurs within The actual timestamp of the first
the summary period. value occurrenc e within the
summary period.
LAST The last value that occurs within The actual timestamp of the last
the summary period. value occurrenc e within the
summary period.
MIN or MINIMUM The first minimum value that The actual timestamp of the first
occurs within the summary period. minimum value occurrence within
the summary period.
MA X or MA XIMUM The first maximum value that The actual timestamp of the first
occurs within the summary period. maximum value occurrence wit hin
the summary period.
INTE GRA L An integral value calculated from The summary period start time.
values within the summary period.
The following table describes the value to be considered if the value selector is set to AUTO:
Cyclic The last value within the summary period is used. The actual timestamp of the
last value occurrance within the summary period is used.
Delta The last value within the summary period is used. The actual timestamp of the
last value occurrance within the summary period is used.
Full The last value within the summary period is used. The actual timestamp of the
last value occurrance within the summary period is used.
Interpolated The retrieval mode determines the appropriate value to return. See the following
table for how A UTO applies to the value selection. This is the default value.
Best Fit The first, last, min, and max points from analog summaries are all considered as
analog input points. Best fit analysis is done with thes e points. If the analog
summary percentage good is not 100%, the cycle is considered to have a NULL.
A verage The averages of analog summaries are calculated using the values from the
A verage column of the AnalogSummaryHistory table. Int erpolation type is
ignored for analog summary values, and S TAIRS TEP interpolation is always
used. PercentGood is calculated by considering the TimeGood of each analog
summary.
If cycle boundaries do not exactly match the summary periods of the stored
analog summaries, the averages and time good are calculated by prorating the
average and time good values for the portion of the time the summary period
overlaps with the cycle. Quality will be set to 64 (uncertain) if cycle boundaries do
not match summary periods.
If the QualityDetail of any analog summary considered for a cycle is uncertain
(64), the resulting quality is set to 64.
Minimum The first minimum value within the summary period is used. The actual
timestamp of the first minimum value occurrance within the summary period is
used.
Maximum The first maximum value within the summary period is used. The actual
timestamp of the first maximum value occurrance within the summary period is
used.
Integral The integrals of analog summaries are calculated using the Integral column of
the AnalogSummaryHistory table. Interpolation type is ignored for analog
summary values, and S TAIRS TEP interpolation is always used. PercentGood is
calculated by considering the TimeGood of each analog summary.
If cycle boundaries do not exactly match the summary periods of the stored
analog summaries, the integrals and time good are calculated by prorating the
integral and time good values for the portion of the time the summary period
overlaps with the cycle. Quality is set to 64 (uncertain) if cycle boundaries do not
match summary periods.
If the QualityDetail of any analog summary considered for a cycle is uncertain
(64), the resulting quality will be set to 64.
Slope The last value within the summary period is used. The actual timestamp of the
last value occurrance within the summary period is used.
ValueState Cannot be used with analog summary dat a. No values are returned.
Counter Cannot be used with analog summary dat a. No values are returned.
RoundTrip Cannot be used with analog summary dat a. No values are returned.
For an analog summary tag, if any of the data within a summary period has an OP CQuality other than
Good, the OPCQuality returned will be Uncertain. This is true even for summary values that are not
calculated, such as first, last, minimum, maximum, and so on. For example, if the OPCQuality for a last
value is actually Good, but there was a I/O Server disconnect during the summary calculation period, the
OPCQuality for the last value is returned as Uncertain. A QualityDetail of 202 is used to distinguish
between the original point and the latest point.
Option Results
None Returns all rows that successfully meet the criteria; no edge detection is
implemented at the specified resolution.
Leading Returns only rows that are the first to successfully meet the criteria (return true)
after a row did not successfully meet the criteria (returned false).
Trailing Returns only rows that are the first to fail the criteria (return false) after a row
successfully met the criteria (returned true).
Both All rows satisfying both the leading and trailing conditions are returned.
Edge detection only applies to analog and discrete value detectors. Also, edge detection is handled
slightly differently based on whether you are using analog tags or discret e tags.
For more information, see the following topics:
Edge Detection for A nalog Tags
Edge Detection for Discrete Tags
You can also use the ToDiscrete() query filter to determine when data values cross a particular threshold.
For more information, see Converting Analog Values to Discrete Values (ToDiscrete).
D F
B
V
A
L
U
E
A C E G
TIME
Slopes A-B, C-D and E-F are rising edges, while slopes B-C, D-E and F-G are falling edges. The slopes
are affected by the WHERE clause, which is a combination of the wwEdgeDetection option and t he
comparis on operator us ed against the value.
The following table describes the rows that would be returned for the various edge detection settings:
Leading Falling and Falling edge Rising edge Falling edge Rising edge
rising edges; only; first value only; first value only; first only; first
first value that to meet the to meet the value to meet value to meet
meets the criteria.* criteria. the criteria. * the criteria.
criteria.
Trailing Falling and Rising edge Falling edge Rising edge Falling edge
rising edges; only; equal to only; first value only; first only; first
first value to fail the first value to to fail the value to fail value to fail
the criteria after fail the criteria. criteria.* the criteria. the criteria.*
a value meets
the criteria.
* If the falling edge is a vertical edge with no slope, the query will return the lowest value of that edge.
The following query selects all values of "SysTimeS ec" that are great er than or equal to 50 from the
History table between 10:00 and 10:02 a.m. on December 2, 2001. No edge det ection is specified.
SELECT DateTime, Value
FROM History
WHERE TagName = 'SysTimeSec'
AND DateTime >= '2001-12-02 10:00:00'
AND DateTime <= '2001-12-02 10:02:00'
AND wwRetrievalMode = 'Cyclic'
AND wwResolution = 2000
AND Value >= 50
AND wwEdgeDetection = 'None'
The results are:
DateTime Value
2001-12-02 10:00:50.000 50
2001-12-02 10:00:52.000 52
2001-12-02 10:00:54.000 54
2001-12-02 10:00:56.000 56
2001-12-02 10:00:58.000 58
2001-12-02 10:01:50.000 50
2001-12-02 10:01:52.000 52
2001-12-02 10:01:54.000 54
2001-12-02 10:01:56.000 56
2001-12-02 10:01:58.000 58
Tag Description
1
MyPulse
1
SysPulse
0
00:03:20
00:03:40
00:04:00
00:01:00
00:01:20
00:01:40
00:02:00
00:02:20
00:02:40
00:03:00
The following queries select values of "SysPulse" and "MyP ulse" that have a value of 1 (On) from the
History and WideHistory tables between 12: 59 and 1:04 a.m. on December 8, 2001. No edge detection is
specified.
A PPENDIX B
Retrieval Styles for Trend
The Trend application allows you to use "ret rieval styles" that automatically switch retrieval mod es for
trend tags based on the trend duration and/or tag type. For ex ample, you could configure a style that
uses delta ret rieval for short time periods and best-fit retrieval for longer periods. This helps you to
balance response speed and accuracy. Also, retrieval styles allow you to calculate moving averages and
retrieve data from the Historian’s summary tables.
Retrieval type 1
...
Retrieval type n
Duration range 2
...
Duration range n
Retrieval style 2
...
Retrieval style n
End of style collection
That is:
The file contains exactly one style collection, represented by the styleCollection XML element.
For more information, see styleCollection X ML Element.
The style collection contains one or more retrieval styles, represent ed by the retrievalStyle
XML element. Each of these represents a style that is available for use in the Trend application. For
more information, see retrievalStyle X ML Element.
Each retrieval style contains one or more duration ranges, represented by the duration XML
element. A duration range defines the retrieval types that are to be used for trend queries whose
duration is within a specified range. Duration ranges should be arranged in descending length. For
more information, see duration X ML Element.
Each duration range contains one or more retrieval types, repres ented by the retrieval XML
element. The retrieval type defines the retrieval options that are to be used for tags of a certain type.
For more information, see retrieval X ML Element.
The retrieval type that gets used for a given tag is determined as follows:
1. You select a retrieval style in the Trend application.
2. The Trend application searches that ret rieval style for a duration range that covers the duration of
your trend. This would be the first duration range with a time period that is shorter than the trend
duration.
3. When it has found a suitable duration range, it searches that duration range for a retrieval type that
suits the type of the tag.
A simple example file might look like this:
<?xml version="1.0" encoding="utf-8" ?>
</styleCollection>
In this case, the file only defines one style named My style. When querying two days of data for a
discrete tag using this style, delta retrieval is used (the first retrieval element in the first duration
element). For an analog tag, cyclic retrieval with one cycle for every five pixels of the trend width is used
instead (the second retrieval element in the first duration element). For queries that are shorter
than one day, delta retrieval is used regardless of the tag type (the only retrieval element in the
second duration element).
You must specify a styleName element for all styles that you want to use in a given locale. If a style
does not have a name defined for a locale, the Trend application does not show it when running
under that locale. The only exception is when you run the Trend application under a locale for which
no style names are defined at all. In that case, the styles are shown with their names for the en
locale.
duration: Specifies a duration range. For more information, see duration X ML Element.
It has three required attributes:
server: Specifies the server type for which the style can be used. Always set this attribute to
InSQL.
minVersion: The minimum Historian version that the retrieval style can work with, either 8.0 or
9.0. If the Trend application is connected to a Historian whose version is lower than the version
specified here, the style is not used.
Specify 9.0 if your style uses functionality that is not supported for IndustrialS QL Server 8.0.
enabled: Specifies whether the style is active. To temporarily disable the style, set this attribute to
false.
It has one optional attribute:
maxVersion: The maximum Historian version against whic h the ret rieval style can be used. This
attribute is not currently used.
Note: You should always define a duration range with a time period of 0 seconds. This serves as a
"catch-all" for trend periods that aren’t covered by any other duration range.
minSpan: Specifies the time period as a standard XML duration value, for example,
P0Y0M1DT0H0M0S. The number to the left of Y represents the number of years, the number to the
left of M represents the number of months, and so on (D = days, H = hours, M = minutes, S = seconds).
P and T are separator characters.
It is the container for one other element:
retrieval: Specifies a retrieval type. For more information, see ret rieval X ML Element.
You should always define a retrieval type with a tag type of "All" and a history source of "History." This
serves as a "catch-all" for tags that aren’t covered by any other retrieval style.
retrievalMode: Specifies which retrieval mode to use. Valid values are Cyclic, Delta, Full,
Interpolated, BestFit, Average, Min, Max, Integral, Slope, Counter,ValueState, and
RoundTrip. Make sure that you specify a retrieval mode that is supported for the specified tag type.
For example, Counter retrieval does not work with string tags. Therefore, if y ou try to retrieve data for
a string tag in Counter mode, the Historian does not return any data.
For information on each mode, see Understanding Retrieval Modes on page 531.
stateCalc: Specifies which state calculation to use in ValueStat e and RoundTrip ret rieval. Valid
values are Min, Max, Average, Total, and Percent. For more information, see State Calc ulation
(wwStateCalc). If you are not using ValueState ret rieval, specify an asterisk (*).
resolution: Specifies the ret rieval resolution in milliseconds when retrieving history data in
cycle-based retrieval modes, or the summary frequency in seconds when retrieving summary data.
For more information, see Res olution (Values Spaced E very X ms) (wwResolution)
Alternatively, you can set this attribute to 0 and specify a retrieval resolution using the pixels
attribute.
pixels: Specifies the ret rieval resolution for cycle-based retrieval modes as the number of pixels
per cycle. The number of cycles is the width of the trend chart divided by the value of this attribute.
For example, if the chart is 500 pixels wide and the pixels attribute is set to 5, then 100 cycles are
used.
Alternatively, you can set this attribute to 0 and specify a ret rieval resolution using the resolution
attribute. If you specify non-zero values for both the pixels and the resolution attributes,
resolution takes precedence.
movingAverageValues: Specifies whether to calculate moving averages when ret rieving history
data. If set to 0, no moving averages are calculated. Otherwise, moving averages are calculated
using the number of values specified in this attribute.
BestFit-5 Best Fit retrieval with one cycle per five pixels.
BestFit-10 Best Fit retrieval with one cycle per ten pixels.
Cyclic (ActiveFactory 9.1) Cyclic retrieval with one cycle per two pixels.
Integral (ad hoc) Integral retrieval for queries longer than 15 minutes. Resolution
depends on query duration. Best-fit retrieval with one cycle per
ten pixels for queries shorter than 15 minutes.
A verages (From Summaries or Tries to retrieve analog averages from summary tables. If no
Ad Hoc) summary dat a is available, uses A verage retrieval for analog
tags and ValueState retrieval for discrete tags. Resolution
depends on query duration.
A verages (ad hoc) A verage retrieval for analog tags and ValueState retrieval for
discrete tags. Resolution depends on query duration.
Summary (InS QL 8.0) Tries to retrieve analog averages from summary tables for
queries longer than 15 minut es. If no summary data is available,
uses Cyclic retrieval with one cycle per pixel for queries longer
than 8 hours and Delta retrieval for shorter queries.
Counter-20 Counter retrieval with one cycle per 20 pixels.
Counter on round periods Counter retrieval with cycles at even time periods (one minute,
one hour, etc. depending on the resolution).
Time In State (percent) ValueState retrieval with percent calculation for queries longer
than one minute. Resolution depends on query duration. Full
retrieval for short er queries.
Time In State (A vg) ValueState retrieval with average calculation for queries longer
than one minute. Resolution depends on query duration. Full
retrieval for short er queries.
RoundTrip (P ercentContained) RoundTrip retrieval with percentcontained calculation for queries
longer than one minute. Resolution depends on query duration.
Full retrieval for shorter queries.
RoundTrip (A vgContained) RoundTrip retrieval with averagecontained calculation for
queries longer than one minute. Resolution depends on query
duration. Full retrieval for shorter queries.
MovingA verage (12-5 sec) Moving averages for analog tags with 12 values and a resolution
of five seconds. Delt a retrieval for all other tags.
MovingA verage (30-1 sec) Moving averages for analog tags with 30 values and a resolution
of one second. Delta retrieval for all other tags.
MovingA verage (10-1 pixel) Moving averages for analog tags with 10 values and a resolution
of one cycle per pixel. Delta ret rieval for all ot her tags.
4. If there is a conflict between a setting specified in a style and a setting specified using one of the
aaHistClient Trend control’s properties (for example, retrieval res olution), the style setting overrides
the property setting.
A PPENDIX C
Glossary
A B C D E F G H I J K L M N O P Q R S T U V W XYZ
An event action is the action that is configured to take place when the event detector determines that the
event occurred. Event actions are not required; there are times when you may want to simply store when
events happened. See also detector, event tag.
action
An event action is the action that is configured to take place when the event detector determines that the
event occurred. Event actions are not required; there are times when you may want to simply store when
events happened. See also detector, event tag.
action queue
An event system action queue is a space in t he action thread where a particular type of action is assigned
before execution. An event action can be to either a critical, delayed, or normal action queue. Each type
has its own queue.
active image
The active image is an allocation of memory in which copies of values of ac quired data are held to
service client requests faster. The active image typically holds either the last 65 values for each data
point or the number of values required to hold one minute of data, plus 10 percent. String tags configured
with a length greater than 64 characters are not held in the active image.
add-in
A software application that increases the capabilities of the larger application. For example, the AVEVA
Historian Client Trend and Query add-ins are used to extend the functionality of Microsoft Word and
Excel.
aggregate functions
Aggregat e functions are SQL functions that perform numerical calculations on a column in a set of data.
A vailable aggregate functions include: SUM, AVG, MIN, MA X, and COUNT.
alias
An alias is a name by which a net work ed server is known to clients on the network. A server can have
multiple alias es.
browser
A browser is a graphical representation of hierarchical groups of data. A browser is used to display disk
directories, folders, or files. For example, the System Management Console uses a browser to display
servers, tags, and groups of tags in the system, private, and public namespaces. See also namespac e.
The buffer storage location is a directory on a computer that is used to store files temporarily, such as for
retrieval from a data archive.
A byte is a unit of information that consists of 8 bits. For data storage, a byte is equal to a single
character, such as a number or a letter.
Cache is special subsystem of memory in which frequently accessed data values are stored. A cache
can be used as a buffer to hold data during trans fers between a hard disk and random access memory
(RAM). Cache memory is usually faster than RAM.
circular storage location
The circular storage location is a directory on the comput er that stores historical data in files called
history blocks.
A client is a computer that uses net work services shared by the server computer. A client has full power
and features for running applications, but is enhanced by the processing power of the server. The server
provides data management, network administration, and security. Client computers are typically
optimized for us er interaction. See also server.
client/server
Client/server is a hardware and software architecture where the client (a user or program) makes
requests (to the server) for resources or information. In this way, client/server computing enables two or
more computers to share processing across a net work.
Component Object Model (COM)
COM is a collection of services that allows software components to interoperate in a networked
environment.
configuration tables
Configuration tables contain information that defines most of the configuration aspects of AVEVA
Historian. For example, definitions for tags, I/O Servers, and users are stored in configuration t ables. See
also extension table.
See Microsoft Management Console.
context
Meaningful description of the event or grouping to whic h a group of limits, rates of change, or deviations
can belong. Examples are "Normal Operation", "Cold Shutdown", "My Personal Concerns".
The contained name is the name given to an object with considerations to its place within the overall
object hierarchy. By default, the contained name is same as that of the tag name. Example, for a given
object, the hierarchic al name is Line1. Tank1.OutletValve and its contained name is OutletValve. See
also hierarchical name, tag name.
CRV
CRV is the abbrevation for a curve. The .CRV file contains the data of the trend curve.
CSV
CSV is the abbreviation for the comma -separated values format. In a file formatting according to CSV,
data values are separated by commas.
cyclic retrieval
Cyclic-based retrieval is the retrieval of stored data for the given time period based on a specified cyclic
retrieval resolution, regardless of whether or not the value of the tag(s) has changed. See also delta
retrieval, resolution.
cyclic storage
Cyclic storage is the storing of analog data based on a time interval. Cyclic storage writes a record to
history at the specified interval, only if a data change occurred during this time interval. See also delta
storage.
data
The coded represent ation of information for use in a computer. Data has attributes, such as type and
length.
data acquisition
Data acquisition is the process by which tag values are captured from various sources, such as from I/O
Servers.
data dictionary
A data dictionary is a group of tables that contain information about all of the objects in the database.
data integrity
Data integrity is the reliability and accuracy of data stored in the database.
data source
A data source is a database from which a client retrieves data.
A data store is a file that contains data. A non-local data store is a data repository that exists outside of a
Microsoft® SQL Server™ database.
data type
A data type specifies what type of information a t able c olumn c an hold and how it is stored. There are two
sources of data types: system-supplied data types and user-defined data types.
database
A database is a system repository of common types of data, sorted by unique identifiers and organized
into tables. Databases are stored in files.
database name
The databas e name is used to identify a database. This name is used when establishing a connection
from a client.
database object
See object.
A database object owner is a user who creates a database object, such as a table, index, view, or rule.
Database object owners have full permissions on any objects that they create, including the right to
assign permissions for that object to other users.
A database owner is a user who creates a databas e. Database owners have full access permissions for
the database that they creat e, including the right to assign permissions for that database to other users.
There can be only one dbo for a dat abas e. Database ownership can be transferred between users, and
multiple login IDs can be aliased to the dbo.
database query
See query.
DDE tags
A DDE t ag is a t ag that reads or writes its values to or from another applicatio n by means of the Mic rosoft
Dynamic Data Exchange protocol. See also Dynamic Data Exchange.
deadband
A deadband is the amount of increase or decrease t hat a value can experience before an event will occur
in the system. See also time deadband, value deadband.
delta retrieval
Delta retrieval, or retrieval based on exception, is the retrieval of only the changed tag values for a tag(s)
for the given time int erval. That is, duplicate values are not returned. See als o cyclic retrieval.
Delta storage is the storing of dat a based on a change in a value. Delta storage writes a record to history
only if the value has changed since the last time it was written to history. Delta storage is also called
"storage by exception." See also cyclic storage.
detector
An event detector is a mechanism for determining when the set of event criteria within the system has
been satisfied for history data. See also event tag, action.
deviation
The deviation is the percentage of change in a tag's value from a fixed value, called the target. Each
analog tag can have two defined deviations: major and minor.
discrete
A discrete value is a variable which only has two states: '1' (True, On) or '0' (False, Off). See also
message pair.
Distributed Component Object Model (DCOM)
DCOM is a protocol that enables soft ware components to communicate directly over a net work.
domain
A domain is a group of computers that share a tree or subtree of a network for security authentication.
.dot file
A .dot file is a template file in Microsoft Word.
dynamic configuration
Dynamic configuration is the process of modifying the configuration of tags and other objects in the
IndustrialSQL Server database while the system is running.
Dynamic Data Exchange (DDE)
DDE is the passage of data between applications, accomplis hed without user involvement or monitoring.
In the Windows operating system environment, DDE is achieved through a set of message types,
recommended procedures (protocols) for processing these message types, and some newly defined
data types. By following the prot ocols, applications that were written independently of each other can
pass data between themselves without involvement on the part of the user. For example, InTouch® HMI
software and Microsoft Excel. See also topic, item, I/O Server, SuiteLink™.
Dynamic Link Library (.DLL)
A .DLL is a software library of functions stored in a file and loaded into memory at execution time in order
to be accessed by other functions or modules.
edge detection
Edge detection is the determination of the edge for a particular set of dat a. The edge is the imaginary
"line" where, in a result set, the satisfaction of criteria changed from true to fals e, or vice-versa. See also
leading edge, trailing edge.
engineering unit
An engineering unit is the unit of measure for a tag. For example, RPMs, milliseconds, degrees.
event
An event is a historical occurrence of a defined activity in the system. The definition for an event is stored
as an event tag. E vents are detected by event detectors and may be responded to by an event action.
See also det ector, action, event tag.
event tag
An event tag is a name for an event definition in the system. For example, if you wanted to detect how
many times in history the temperature of tank reached 100 degrees, you might define an event tag and
name it "TankAt100." See also detector, action, event.
failover
Failover is the process of substituting a backup resource, such as an IDAS, for a resource that is no
longer functioning.
field
See row.
foreign key (FK)
A foreign key is one or more columns whose values match the primary key (PK) of some other table. A
single primary key may have a foreign key in more than one table. See also key, primary key.
front end
Front end is a term that refers to the client in a client/server architecture. Databas e access or data input
occurs at the front end, or client. See also client.
function
A function is a procedure in programming language. See also argument.
group
See user group.
Galaxy
The complete ArchestrA system consisting of a single logical namespace and collection of Platforms,
Engines, and Objects.
heterogeneous query
A heterogeneous query is a query that accesses data from multiple, dissimilar data sources.
hierarchical name
A hierarchical name is the contained name for an object, preceded by the tag names of the containing
objects in the hierarc hy. Example, Line1.Tank1.OutletValve. See also tag name, contained name.
history block
A history block is a group of data storage files that are written in a separate directory identified by a date
stamp and a letter suffix. The IndustrialS QL Server stores acquired dat a to disk in blocks. History blocks
are created when the historian starts, at a designated time int erval, or when manually requested.
history tables
In the IndustrialSQL Server, history tables present acquired plant data in a historical format, where there
is one row for each stored tag value. See also "live" tables, "wide" tables.
Holding database
In an IndustrialSQL Server, the Holding database contains tables to temporarily store information
imported from an InTouch data dictionary before it is transferred to the Runtime database. See also
Runtime database.
Human-Machine Interface (HMI)
A human-machine interface is a software interfac e that allows plant floor operat ors to view, manipulat e,
and store plant data. An HMI can run on a PC or other industrial terminal.
Hypertext Transfer Protocol (HTTP)
HTTP is a protocol that enables the transfer of information over the Internet.
I/O
An abbreviation for INP UT/OUTP UT.
I/O Driver
See IDAS.
I/O Server
An I/O Server is an application that p rovides data to a client over a network by means of the DDE or
SuiteLink protocol. See also Dynamic Data Exchange, SuiteLink.
IDAS
An IndustrialSQL Server Data Acquisition Service (IDAS) is a software application that accepts data
values coming from one or more I/O S ervers and forwards it to a IndustrialSQL Server. Also known as an
I/O Driver.
IDENTITY column
An identity column contains a system-generat ed value that is used to uniquely identify each row in a
table. If data is inserted into a table that has an identity column defined, the SQL Server will aut omatically
generate a value. This value is based on t he last assigned identity value, plus a pre-defined identity value
increment.
An index is a set of pointers that provides faster access to data in rows of a table than a table scan. The
concept of a table index is similar to an index at the back of a bo ok; index entries make it much faster to
find data than starting at the beginning of the book and scanning until you find the information you are
looking for. Indexes can also enforce uniqueness on rows in the table. There are two types of indexes:
clustered and nonclustered.
information system (IS) network
The information system (IS) net work is the business local or wide area network of a distributed
IndustrialSQL Server. Computer workstations running IndustrialSQL Server client applications are most
often connected to this network. See also process network.
initial value
Initial values are special values that can be returned from queries that lie exactly on the query start time,
even if there is not a data point that specifically matches the specified start time.
instance
An object that exists in runtime.
initialization
Initialization refers to starting the IndustrialSQL Server.
integer
An integer is any member of the set consisting of the positive and negative whole numbers and zero.
Examples: -59, -3, 0.
interpolation
Interpolation is a method of constructing new data points within the range of a discrete set of known data
points.
IP address
An IP address is a 32-bit address (Internet protocol address) that identifies a computer on a TCP/IP
network. An IP address is normally written as four decimal numbers delimited by periods (.).
IPX/SPX
IP X/SP X is a transport protocol used in Novell networks.
item
In the DDE or SuiteLink prot ocol, an item is a data value placeholder. DDE protocol uses a three-part
naming convention to locate information bet ween applications. In order for an application (such as
InTouch HMI software) to retrieve data, it must know the name of the application, the topic, and the item.
An example of an item is the name of a cell in an Excel spreadsheet. Another ex ample of an item is an
InTouch tag. See also Dynamic Data Exchange, SuiteLink, topic.
join
A join is a class of SQL query that queries data from one or more columns from two or more tables.
key
A key is a column that is used to identify a row. A row's key must be unique within the table. See also
primary key, foreign key.
latency
Latency is the period between when an event actually occurs in the system and when it is detected by an
event detector. See also, replication latency.
leading edge
The leading edge is the query return of only rows that are the first to successfully meet the criteria (ret urn
true) after a row did not successfully meet the criteria (returned false). See also, edge detection, trailing
edge.
limit
A limit is a user-definable maximum or minimum valu e for a range of values.
linked server
A linked server is a SQL S erver or an OLE DB provider that has been associated with a SQL Server. See
also OLE DB provider.
live
Live is a term that describes data that reflects the most current value of a tag.
live mode
Live mode is the mode in which the data is retrieved continuously in real time for a fixed duration that is
relative to the current time.
live tables
In the IndustrialSQL Server, "live" tables present the current (latest) values of ac quired plant dat a for
analog, discrete, or string tags. See also history tables, "wide" tables.
local
Local is used to describe the computer that a user is c urrently logged on to and is physically using. See
also remote.
local area network (LAN)
A LAN is a group of comput ers connected by a communications net work. A LAN encompasses a
relatively limited net work area.
log file
A log file is a file that contains a dat abase's transaction log. See also transaction log.
logical operators
A logical operator is used to calculate or compare data. Examples of logical operators are AND, OR, and
NOT. The logical operators AND, OR, and NOT can be used in WHE RE clauses to specify searc h
conditions. AND means that both conditions are met. OR means that either of the conditions are met.
NOT means that all conditions are met except those to the right of this operator.
logical tables
See view, extension table.
logical view
See view.
login ID
See login identification.
login identification
The login identification, or login ID, is a unique name that a database user us es to log on to the server.
logon
Logging on is the process of supplying a user name and password to obtain access to network
resources.
MDAS
The Manual Data Access Service (MDAS) is a client-side software module that provides programmatic
access to storage, retrieval, and system configuration functionality in the IndustrialS QL Server.
memory tag
Memory tags are tag types that exist internally within an InTouch application. They can be used for
creating system constants and simulations. They are also useful in creating calculated variables to be
accessed by other Windows programs. There are four memory types: memory discrete, memory int eger,
memory real, and memory message.
message pair
A message pair is the display strings associated with the TRUE (ON) or FALSE (OFF) states of a
discrete value. See also discrete.
object
An object is any of the components that constitute a database. Table, views, keys, defaults, triggers,
indexes, stored proc edures are all examples of database objects. Also called a database object.
Object Linking and Embedding for Databases (OLE DB)
Object Linking and Embedding for Databases (OLE DB) is an application programming interfac e (API)
that allows COM-based client applications to access data that is not physically stored in the Microsoft
SQL Server to which they are connecting.
object owner
See database object owner.
object permission
Object permissions determine which statements can be used on database objects. Object permissions
are managed by the database object owner for that object. See also object, database object owner.
on-demand report
An on-demand report is a type of a dynamic report that is executed upon a user’s request.
OLE DB provider
A "virt ual" server that provides an interface to access data in an OLE DB dat a store.
OPC quality
The quality of a process value or an event. The quality can be rated as Good, Bad, Doubtful, or Initial
Value.
opacity
Opacity is a measure of how much an image will block the background when paint ed.
pan
A pan is a sweeping movement of the chart.
parameter
A parameter is an informational element that has a value. Parameters define t he values to be written to or
returned from the database.
partial cycle
Any cycle that is shortened so the cycle’s duration ends exactly at the query end time.
password
A password is a unique set of characters used to authenticate a user and log on to a server.
permanent storage location
The permanent storage location is a directory on a computer that is used to store critical data (for
example, reactor trips) that must not be overwritten. This storage location is the target directory used by
the xp_DiskCopy extended stored procedure.
permission
Permissions restrict the actions that a database user can perform on a database. For example, a user
may have permission to SELECT on all database tables, but not to INSERT any dat a.
phantom cycle
A phantom cycle is the name given to the cycle that leads up to the query start time. It is used to calculate
which initial value to return at the query start time for all retrieval modes.
poll rate
The poll rate is the rate at which data is read from an acquisit ion device.
port number
A port number is a number from 0 to about 32,768 that identifies a particular application on a particular
computer.
primary key (PK)
A primary key is one or more columns that uniquely identify a row in a table. A primary key is used for
joins with foreign keys in other tables. See also key, foreign key.
priority
The event priority determines how events will be executed if the system becomes overloaded and cannot
proccess all of the events. Those events that have been assigned a "critical" priority will be executed
before events of a "normal" priority.
private namespace
The private namespace is a user-defined set of plant components, such as plant areas, machine names,
and tags associated with a particular machine or proc ess. The private namespace works in the same
way as the public namespace, except that the privat e namespace is not available to all users of the
IndustrialSQL Server. The private namespace is defined by a user of the historian. The hierarc hical
contents of the private namespace can be exposed in a directory tree of an application, but will only be
visible to the user who created it. See also namespace, system names pace, public namespac e, browser.
process
A process is a task, or service, that is performed by a computer's cent ral processing unit (CP U).
process identifier
A process identifier locates a software process on a comput er. For example, a pipe name or socket
number. Used in conjunction with a node identifier for establishing client/server connections. See also
node identifier.
process network
A process network is the network to which plant floor control devices are physically attached. Devices on
a process net work include PLCs, DCSs, and HMI systems. See also information system network.
protocol
A protocol is the set of rules and standards to enable computers to connect and exchange data over a
network.
public namespace
The public namespace is an administrator-defined set of plant components. Just as the system
namespace includes information about a IndustrialS QL Server, the public namespace includes
information about the plant on which the historian is running. The public namespace includes objects
such as plant areas, machine names, and tags associated with a particular machine or process. The
public namespac e is defined by the historian administrator. The hierarchical contents of the public
namespace can be exposed to all users in a directory tree of an application. See also namespace,
system namespace, private names pace, browser.
quality
Quality is an indicator of the accuracy, availability, and validity of acquired data. Data values stored by
the IndustrialS QL Server have an associated quality value.
query
A query is a SQL script statement issued to the database by a client that searches for objects in a
database table.
RAID
Redundant Array of Inexpensive Disks. RAID is a technology used to implement fault tolerance, or
protection of data in the event of a hardware failure through the use of one or more physical disk drives.
With fault tolerance, dat a is fully recovered with no downtime for the system.
Random Access Memory (RAM)
Random Access Memory is a type of memory that temporarily stores data while the computer on whic h it
resides is running. When the computer is shut down, all data in RAM is erased. RAM can be written to or
read from by the computer or other devices.
rate of change
Rate of change is the rate that a tag value changes during a defined period of time, usually expressed as
a percentage.
raw value
A raw value is the value of a dat a item when it was acquired. Calculations and conversions may be
performed on raw data before it is used by the IndustrialSQL Server.
real
A real number is a floating point number represented by digits with a fixed base, such as the decimal
system. A real number can be made up of either a finite or infinit e set of digits.
real-time
Real-time operations occur at the same rat e as a physical process. In a real -time environment, a
computer must respond to situations as they occur. Thes e situations can include a switch tripping or a
furnace tapping.
record
See row.
referential integrity (RI)
Referential integrity is a mechanism that ensures that all foreign keys have an associated primary key in
related tables. Referential integrity constraints prevent having foreign keys pointing to non-existent
primary keys and enforces the relationship bet ween tables. See also primary key, foreign key.
registry
The Windows registry is a database that contains all configuration information for a computer. The
registry is organized hierarchically, and is comprised of hives, keys, sub-keys, and registry values.
reinitialization
Reinitializ ation is the restarting of one or more processes in the IndustrialSQL Server. When you mak e
edits to the Runtime database, a restart may be required in order for the changes to take effect.
relational database
A relational database is a database structure that or ganizes dat a according to the relations hips between
the data. In a relational database, relations hips bet ween data items are expressed by means of tables.
For example, queries can be performed that search a single table, plus any related tables.
remote
Remote is used to describe a computer that is accessible from physically separated computers on a
network. See also local.
remote table
A remote table is a data present ation table for a non-local dat a store accessed through OLE DB. See
also data store, Object Linking and Embedding for Databases, extension table.
replay mode
Replay mode is a mode that uses real-time speed to continuously plot historical data on the trend chart.
replication delay
The replication delay applies only to queued replication. This delay identifies how frequently "old" data,
which includes inserts, updates, and store-and-forward data, is sent from the tier1 historian to the tier-2
historian. See also queued replication.
replication latency
The replication latency is the time it takes for a value to be made available for retrieval from the tier-2
historian from the moment it was stored or calculated on the tier-1 historian.
replication group
A replication group abstracts a summary tag from a replic ation schedule, to make application
maintenance easier. You can assign multiple summary tags to a single replication group, and assign
multiple replication groups to a single schedule.
replication schedule
A replication schedule defines the specific times, in minutes or hours, for replication summary periods.
For an interval -based replication schedule, cycle boundaries are calculat ed starting at midnight, tier-1
server local time, and continue in fixed time increments. For a custom replication schedule, replication
cycles are forced to occur at user-defined fixed times of the day in tier-1 server loc al time.
replication server
A replication server is the historian to whic h data is configured to be replicated. Also called a "tier-2"
historian.
replication tag
A replication tag is a tag defined for a destination historian (tier -2) for which data from a source historian
(tier-1) is copied or summ arized.
resolution
Resolution is the sampling interval, in milliseconds, to retrieve data from any of the history tables of the
IndustrialSQL Server. The resolution time domain extension is a feature provided by the historian and is
not supported by normal SQL Server functionality. The number of rows returned is dependent upon the
time period for the query and the resolution (number of rows = time period / resolution). Res olution only
applies to cyclic retrieval.
result
A result is the characteristics, or object attributes, of any object located by a database query.
row
In a table, a row is a set of related columns of information that describe a specific database entity. For
example, for the entity "person," the row could contain column information for height, weight, hair color,
or age.
row count
A row count determines the number of rows to be retrieved from any of the history tables of the
IndustrialSQL Server. The row count time domain extension is a feature provided by the historian which,
for cyclic retrieval, differs from normal SQL Server row count behavior. The application of the time
domain row count extension depends whether you are using cyclic or delta retrieval, and whet her you
are querying a "wide" table.
rowset
Conc eptually, a rowset is a set of rows in whic h each row contains columns of dat a.
rule
A database rule is an object that is bound to a table column or to a user -defined data type. Rules
determine what types of data can be entered in a column. For ex ample, a rule can specify that the
number for a unit of hours must be bet ween 0 and 23. Only one rule can be applied to a column.
run time
Run time is the time during which data is fetched by the control unit and actual processing is performed in
the arithmetic-logic unit. Also, the time during which a program is executing.
runtime database
In IndustrialS QL S erver, the Runtime database contains tables that store all configuration, historical, and
current process data. See also Holding dat abase.
scatter plot
The graphical representation of variation of a tag’s value over the variation of another tag’s value.
scaling
Scaling is the process of increasing or reducing the value of a variable (or a group of variables) by a given
ratio.
script
A script is a collection of SQL statements used to perform actions on a database, such as change data or
add new database objects. Scripts can be saved as stored procedures or files.
scheduled report
A scheduled report is a type of a dy namic report that is executed automatically according to a defined
schedule.
server
A server is a computer that shares resources, such as processing power and administration functions, for
other computers on a network. Computers that use server resources are called clients. A server
computer is typically responsible for data management, network administration, and security. A server
computer also makes available to clients the processing power that was traditionally offered only by
mainframes and minicomputers. The IndustrialS QL Server performs all of these functions, plus provides
for data storage and management. See also client.
server name
The server name is the name of the server under which the IndustrialS QL Server is running. The server
name must be a valid SQL identifier.
service
A service is a process that performs a specific function within the computer system.
simple replication
Simple replication is a type of transformation that retains the data’s original resolution. Analog, discrete,
and string tags configured for simple replication replicate all values stored in the tier-1 historian to the
tier-2 historian.
Small Computer Systems Interface (SCSI)
SCSI is a standard for a high-speed int erface for connections between computers and peripheral
devic es, such as a hard drive.
snapshot
A snapshot is a collection of tag data values at a single point in time. When an event is detected in history
data, the values of tags at the time of the event can be captured and stored. Snapshot data is useful in
determining the state of a production environment at the time of a defined occurrence in history.
socket
A socket is a bi-directional channel, or "pipe," through whic h computers on a network can exchange
information. The socket number identifies the channel and is made up of the IP address plus the port
number. For example, 204. 192. 78.125,25. See also IP address.
sort order
A sort order is a set of definitions that specify how the SQL Server will organize and present data as a
result of database queries. The sort order determines how the SQL Server will handle the collation of
characters for both data storage and data retrieval operations involving the GROUP BY, ORDER BY,
and DIS TINCT statements. The SQL Server also uses the underlying sort order to resolve queries
involving the WHE RE and DIS TINCT statements.
SQL
See Structured Query Language.
stacked mode
A stacked mode is a mode in which a tag curve is stacked on top of the other in the trend chart.
stand-alone installation
A stand-alone architecture consists of a single, non-networked computer that functions as the primary
operator interface. This computer is connected to the industrial process by a direct connection, such as a
serial cable.
stateful
The state of an entity is preserved from one request to another. For example, TCP/IP is a stateful
communication protocol.
stateless
The state of an entity is not preserved from one request to another. For example, HTTP is a stateless
communication protocol. Using HTTP, when a request is made from the client to the server, the entire
transaction is stateless; no state is preserved from one request to another.
statement
An expression of instruction in a computer language.
state summary replication
State summary replication summarizes the states of a tag value. Can be applied to analog, discrete, and
string tags.
storage by exception
See delta storage.
storage location
The storage location is the directory in which historical data files are stored.
storage path
The storage path is the path to the directory in which historical data files are stored.
storage rate
The storage rate is the time interval at which values for tags are periodically stored.
store-and-forward
Store-and-forward is a data caching process used by software applications (s uch as a remote IDAS) that
automatically send data to a target computer on the network. If the remote application cannot
communicate with the target computer, dat a will be cached locally until the connection is restored, at
which time the cached data will be forwarded.
stored procedure
A stored procedure is a pre-compiled group of SQL statements. Stored proc edures allow a group of
sequentially performed actions to be ex ecuted using a single SQL statement. A stored procedure is
usually called by another program to be executed; it is not automatically executed in response to an
event. Stored procedures can be used as shortcuts for frequently used collections of SQL statements or
to provide additional functionality. Users of the IndustrialSQL Server can use any of the system stored
procedures provided by Microsoft SQL Server, plus the system stored proc edures supplied with the
historian. System stored procedures that are provided with the historian begin with "aa" or "ww_".
User-defined stored procedures are also supported.
string value
A text expression treated as a single data item. A string value does not require a special format or syntax.
Structured Query Language (SQL)
SQL is a language used in relational database systems for defining, searching for, and manipulating
data.
SuiteLink
SuiteLink is a network protocol designed specifically for high speed industrial applications. SuiteLink
features Value Time Quality (V TQ) and places a timestamp and quality indicator on all data values
delivered to V TQ-aware clients. SuiteLink uses a TCP/IP -based protocol.
summary
A summary (such as MIN, MA X, SUM, AVG) of a tag that is scheduled by the user and performed
automatically according.
tag name
A tagname is the name assigned to a tag, which is an elemental variable in the Historian Server
database.
TCP/IP
Transmission Cont rol Prot ocol/Int ernet Protocol (TCP/IP ) is a group of net working protocols that allow
communications across dissimilar net works. TCP/IP can route packet information across different
hardware architectures and operating systems.
thread
A system thread is an object that independently performs an particular function within a process.
tier-1 historian
A tier-1 historian is an individual historian that sends replicated data to a destination historian, called a
tier-2 historian.
tier-2 historian
A tier-2 historian is a historian that accepts replicated dat a from one or more tier-1 historians.
time deadband
A time deadband is the minimum time, in milliseconds, between stored values for a single tag. Any value
changes that occur within the time deadband are not stored. The time deadband applies to delta storage
only. A time deadband of 0 indicates that the system will store the value of the tag each time it changes.
A time deadband also be applied at retrieval, in which case any value changes within the deadband will
be ignored.
time interval
In the event system, the time interval is the rat e at which configured event detectors check to see if an
event has occurred in history. The time interval is also known as the scan rate.
time synchronization
Time synchroniz ation is a mechanism by which the AVEVA Historian sends out a message to the I/O
Servers to synchronize the I/O Server timestamps of data to the historian time.
topic
In the DDE or SuiteLink prot ocol, a topic is an application-specific subgroup of data elements. These
protocols use a three-part naming convention to locate information in applications. In order for an
application (such as InTouch HMI software) to retrieve data, it must know the name of the application, the
topic, and the item. An example of a topic is the name of an Excel spreadsheet. See also Dy namic Data
Exchange, SuiteLink.
trailing edge
The trailing edge is the query return only rows that are the firs t to fail the criteria (return false) after a row
successfully met criteria (returned true). See also, leading edge, edge detection.
transaction
A transaction is a collection of one or more command scripts that read and/or write to the relat ional
database. A transaction is a request to the IndustrialSQL Server to find, enter, change, or return
information about an object the relational database. All transactions are proc essed at runtime and are
performed as a single unit of work. If a single script fails at any point in the trans action, the entire
transaction will be rolled back and the original state of the database before the transaction started will be
restored. See also transaction log.
transaction log
A transaction log is a record of all database changes. See also transaction, log file.
trend
A general direction in which data tends to move in the form of a curve.
Universal Naming Convention (UNC)
The universal naming convention is a standard for pointing to a file on a network. A UNC path consists of
the following format: \\servername\sharename\path\filename
wide tables
In the IndustrialSQL Server, "wide" tables present the values of one or more tags over time. Each row
contains the date/time stamp for the data and values for one or more tags specified in the query. See also
"live" tables, history tables.
wildcard character
A wildcard character is a keyboard character that is used to represent one or more characters. When
searching a SQL Server database, use the underscore (_), the percent sign (%), and brackets ([ ]), with
the LIKE keyword to match patterns in the database. For example, to search for all tags in the system
that started with "sys", search for "sys%".
.xla
The .xla is the extension of a Microsoft Excel add-in.
XML
XML is the abbreviation for Extensible Markup Language; a flexible format for creating and sharing data
on the Web.