Sie sind auf Seite 1von 276

plntdspb.

book Page i Monday, May 28, 2001 8:57 AM

PlantScape
Display Building Guide

plntdspb.book Page ii Monday, May 28, 2001 8:57 AM

Document

Release

Issue

Date

TC-DCXX31

R400

June 2001

Notice
This document contains Honeywell proprietary information. Information
contained herein is to be used solely for the purpose submitted, and no part of
this document or its contents shall be reproduced, published, or disclosed to a
third party without the express permission of Honeywell Limited Australia.
While this information is presented in good faith and believed to be accurate,
Honeywell disclaims the implied warranties of merchantability and fitness for a
purpose and makes no express warranties except as may be stated in its written
agreement with and for its customer.
In no event is Honeywell liable to anyone for any direct, special, or
consequential damages. The information and specifications in this document are
subject to change without notice.
Copyright 2001 Honeywell Limited Australia

Honeywell Trademarks
PlantScape, SafeBrowse, TotalPlant and TDC 3000 are U.S. registered
trademarks of Honeywell, Inc.
Other Trademarks
Microsoft, and SQL Server are either registered trademarks or trademarks of
Microsoft Corporation in the United States and/or other countries.
Trademarks that appear in this document are used only to the benefit of the
trademark owner, with no intention of trademark infringement.

Support and Other Contacts


United States and Canada

ii

Contact:

Honeywell IAC Solution Support Center

Phone:

1-800 822-7673. In Arizona: (602) 313-5558


Calls are answered by dispatcher between 7:00 am and 5:00 pm
Mountain Standard Time. Emergency calls outside normal working hours
are received by an answering service and returned within one hour.

Facsimile:

(602) 313-5476

plntdspb.book Page iii Monday, May 28, 2001 8:57 AM

Mail:

Honeywell IAC TAC, MS1S1


16404 N. Black Canyon Highway
Phoenix, AZ 85023

Europe
Contact:

Honeywell PACE TAC

Phone:

+32-2-728-2657

Facsimile:

+32-2-728-2278

Mail:

Honeywell PACE TAC


Avenue du Bourget, 1
B-1140 Brussels, Belgium

Australia, New Zealand, and Fiji


Contact:

Honeywell Global TAC Pacific

Phone:

1300-36-4822 (within Australia)


+61-2-9353-7255 (outside Australia)

Facsimile:

+61-2-9353-8804

Mail:

Honeywell Global TAC Pacific


5 Thomas Holt Drive
North Ryde, NSW, 2113, Australia

Email

GTAC@honeywell.com.au

Elsewhere
Call your nearest Honeywell office.
World Wide Web
Honeywell Industrial Automation and Control:
http://www.iac.honeywell.com
Honeywell TotalPlant Support Online:
http://support.totalplant.honeywell.com

Training Classes
Honeywell holds technical training classes on PlantScape. These classes are
taught by experts in the field of process control systems. For more information
about these classes, contact your Honeywell representative.

iii

plntdspb.book Page iv Monday, May 28, 2001 8:57 AM

Related Documentation
For a complete list of publications and documents for PlantScape, see the
PlantScape Overview.

iv

plntdspb.book Page v Monday, May 28, 2001 8:57 AM

Contents
1

About This Guide


Before Reading This Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
How To Use This Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Getting Started
Starting Display Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Toolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Standard Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Toolbox Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
View Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Arrange Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Format Toolbar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Basic Drawing Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Setting the Defaults. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating a Display Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Locking Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Aligning Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Distributing Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flipping Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Moving A Display Object To The Front Or Back . . . . . . . . . . . . . . . . . . .
Grouping Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Resizing Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Duplicating Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Deleting Display Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Editing Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Rotating Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Moving Display Objects with the Arrow Keys. . . . . . . . . . . . . . . . . . . . . .
Selecting Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Undoing the Previous Action. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Properties Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Linking Display Objects to the Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Shape Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dynamic Shapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Shape Gallery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Registering Shape Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Supplied Shape Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using SafeBrowse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
URL Formats. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Linking to Displays from HTML Pages . . . . . . . . . . . . . . . . . . . . . . . . . . .

.
.
.
.

6
7
7
9
11
12
14
16
16
17
17
18
19
19
19
20
20
20
20
21
21
21
22
22
23
24
26
27
27
29
30
31
31
32
32
33

PlantScape Display Building Guide v

plntdspb.book Page vi Monday, May 28, 2001 8:57 AM

Contents

Inserting Graphics Created by Other Applications . . . . . . . . . . . . . . . . . . . . . . . . 34


Pasting Text from Another Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Setting the Displays Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Working With Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Creating a New Display or Shape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Saving a New Display or Shape. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Opening a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Distributing And Validating Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Checking the Validity of Point IDs in Remotely-built Files . . . . . . . . . . . . . 41
Distributing Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Exporting Numbered Displays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

Defining Display Object Properties


Animation Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Appearance Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Custom XY Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Data Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining a Link To a Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Defining a Link to a Database File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Local Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Details Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ActiveX Document Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Alarm Line Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Alphanumeric Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Chart Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Checkbox Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Combobox Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Indicator Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pushbutton Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SafeBrowse Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Scrollbar Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Text Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Font Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
General Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Options Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting the Type of Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Repeats Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
XY Plot Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Understanding Acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Selecting Default Acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Custom Acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

vi

R400

44
47
48
49
49
50
53
54
54
55
56
58
59
60
61
62
64
64
69
70
71
73
74
75
78
79
80
80

plntdspb.book Page vii Monday, May 28, 2001 8:57 AM

Contents

Defining Display and Shape File Properties


General Tab for a Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Restricting Page Callup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Keys Tab for a Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Callup Task Tab for a Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Periodic Task Tab for a Display. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Help Tab for a Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Assigning a HTML Help Topic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Assigning a Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
General Tab for a Shape File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

86
87
88
89
90
92
92
93
95

Writing Scripts
Understanding the Station Automation Object Model . . . . . . . . . . . . . . . . . . . . . 98
Understanding Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Using General Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Referencing Objects, Properties and Methods. . . . . . . . . . . . . . . . . . . . . . 102
Using the Dictionary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Writing Scripts for Shapes and Shapelinks . . . . . . . . . . . . . . . . . . . . . . . . 104
Event Handling in Groups and Shapes. . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Using Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Using the Script Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Writing Scripts for Displays and Shape files . . . . . . . . . . . . . . . . . . . . . . . 106
Writing Scripts for Station . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Debugging Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Understanding the Possibilities of Automation . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Object Model Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Application Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
AppWindow Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Dictionary Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Display Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Objects Collection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Page Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Add Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
AddListItem Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
BeginCriticalSection Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Blue Method. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
CancelChange Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
CancelClick Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
CancelDoubleClick Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
CancelNavigate Method. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
CancelOperatorCommand Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142

PlantScape Display Building Guide vii

plntdspb.book Page viii Monday, May 28, 2001 8:57 AM

Contents

Clear Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CreateTimer Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DPToLPX and DPToLPY Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
EndCriticalSection Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ExecuteOperatorCommand Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GetResponse Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GoBack Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GoForward Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GoHome Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GoSearch Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Green Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
InvokeMenu Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Item Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
KillTimer Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LPToDPX and LPToDPY Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MakeColor Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OpenHelp Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Quit Method. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Red Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Redraw Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Refresh Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Remove Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RemoveListItem Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RequestServerLRN Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SelectText Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SetFocus Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Shell Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sleep Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stop Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Update Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
UserObjectNotify Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnAlarm Event. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnAppStartup Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnBeginNavigate Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnChange Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnClick Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnConnect Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnDisconnect Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnDoubleClick Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnDownloadBegin Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnDownloadComplete Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OnFocus Event. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

viii

R400

143
144
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
181
182
183
184
185
186
187

plntdspb.book Page ix Monday, May 28, 2001 8:57 AM

Contents

OnLoad Event. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188


OnMenu Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
OnMouseEnter Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
OnMouseLeave Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
OnMouseMove Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
OnNavigateComplete Event. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
OnOperatorChange Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
OnOperatorCommand Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
OnPageComplete Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
OnPageLoad Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
OnPeriodicUpdate Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
OnQuit Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
OnRightClick Event. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
OnTimer Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
OnUnload Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
OnUpdate Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
OnUserObjectNotify Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
Understanding Coordinates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Understanding Mouse Coordinates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Converting Between Logical and Display Coordinates . . . . . . . . . . . . . . . 205
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Animation Using a Shape Sequence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Color Animation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Adding Tool Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Controlling Station from Another Application . . . . . . . . . . . . . . . . . . . . . . 209
Controlling Another Application from Station . . . . . . . . . . . . . . . . . . . . . . 209
Using Custom Dialog Boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Using the Document Property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

Guidelines for Creating User-friendly Displays


General Standards . . . . . . . . . . . . . . . . . . .
Title Bar . . . . . . . . . . . . . . . . . . . . . .
Alphanumeric Data Fields and Labels
Pushbuttons and Hyperlinks . . . . . . .
Comboboxes . . . . . . . . . . . . . . . . . .
Checkboxes . . . . . . . . . . . . . . . . . . .
Group Headings . . . . . . . . . . . . . . . .
Tables . . . . . . . . . . . . . . . . . . . . . .
Icons
......................
Faceplates and LEDs . . . . . . . . . . . . .
Further Reading . . . . . . . . . . . . . . . . . . . . .

...
...
...
...
...
...
...
...
...
...
...

...
...
...
...
...
...
...
...
...
...
...

...
...
...
...
...
...
...
...
...
...
...

....
....
....
....
....
....
....
....
....
....
....

...
...
...
...
...
...
...
...
...
...
...

...
...
...
...
...
...
...
...
...
...
...

...
...
...
...
...
...
...
...
...
...
...

....
....
....
....
....
....
....
....
....
....
....

.
.
.
.
.
.
.
.
.
.
.

218
219
220
221
222
222
223
223
224
225
226

PlantScape Display Building Guide ix

plntdspb.book Page x Monday, May 28, 2001 8:57 AM

Contents

Tutorial
Setting up the Drawing Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
Drawing the Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Saving the Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

Reference Information
Keyboard Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using the Shortcut Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Point Detail Displays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exporting System Displays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using Display Builders Command-Line Parameters . . . . . . . . . . . . . . . . . . . . . .
Using DisplayInfo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating Shapes for Early Versions of Old Products . . . . . . . . . . . . . . . . . . . . . .
Drawing Shape Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Creating a New Numbered Shape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Glossary
Index

R400

240
241
242
245
246
247
248
248
249

plntdspb.book Page 1 Monday, May 28, 2001 8:57 AM

About This Guide


This Guide describes how to use Display Builder to create custom displays for
your PlantScape system.
This Guide:

Introduces you to the basic concepts behind Display Builder

Describes how to create displays and link them to points in the server
database

Describes how to write scriptsmini programsthat increase the


functionality of your displays

Provides guidelines for creating user-friendly displays


Note This version of Display Builder creates displays with a proprietary
DSP format. If you want to create Web-based displays, see the HMIWeb
Display Building Guide.

PlantScape Display Building Guide

plntdspb.book Page 2 Monday, May 28, 2001 8:57 AM

1 About This Guide

Before Reading This Guide


This Guide assumes that you are familiar with the PlantScape server database, so
that when creating custom displays, you can link display objects to appropriate
points within that database.
You should also be familiar with the standard displays that come with Station,
and understand their capabilities and limitations.

Pre-Requisite Skills
This Guide assumes that you have some knowledge of Microsoft Windows, and
understand phrases such as double-clicking and dragging.

R400

plntdspb.book Page 3 Monday, May 28, 2001 8:57 AM

How To Use This Guide

How To Use This Guide


This guide is structured as follows:

Getting Started introduces you to Display Builder, and describes how to use
the drawing tools.

Defining Display Object Properties describes how to configure the


characteristics of display objects, including linking them to the database.

Defining Display and Shape File Properties describes how to specify the
characteristics of display and shape files.

Writing Scripts describes how to add extra functionality to displays with


scripts.

Guidelines for Creating User-friendly Displays provides guidelines and tips.

Tutorial provides step-by-step instructions that show you how to create a


simple display.

Reference Information covers miscellaneous topics, such as keyboard


shortcuts and migrating displays from older products.

PlantScape Display Building Guide

plntdspb.book Page 4 Monday, May 28, 2001 8:57 AM

1 About This Guide

R400

plntdspb.book Page 5 Monday, May 28, 2001 8:57 AM

Getting Started
Custom displays work in the same way as the standard displays supplied with
PlantScape. However, custom displays allow you to present information in a
more sophisticated and user-friendly manner. As a consequence, custom
displays make it easier for operators to visualize complex processes, and reduce
the probability of operator errors.

PlantScape Display Building Guide

plntdspb.book Page 6 Monday, May 28, 2001 8:57 AM

2 Getting Started

Starting Display Builder


To start Display Builder from the Start menu if you are on the server, select
Start Programs PlantScape Server Display Builder.
To start Display Builder from the Start menu on any other computer, select
Start Programs PlantScape Client Software Display Builder.
When Display Builder starts, you see what at first appears to be a standard
drawing application, with several toolbars and a blank drawing. At its simplest
level, this is true because you draw display objects, such as rectangles and
pushbuttons, in much the same way as you do in a standard drawing application.
The big difference, however, is that you can animate display objects in a
number of ways. For example, you can link an alphanumeric display object to a
point in the server database, so that it displays the points value. You can also
make a display interactive by adding controls such as pushbuttons and
checkboxes.

Figure 2.1 Layout of Display Builder

R400

plntdspb.book Page 7 Monday, May 28, 2001 8:57 AM

Using the Toolbars

Using the Toolbars


The toolbars provide speedy access to many of Display Builders functions.
To display (or hide) a toolbar:
1
Select View Toolbars to see the list of toolbars.

Figure 2.2 Toolbars Menu

Tip

A tick opposite a toolbar indicates that it is already visible.


2
Select the toolbar you want to display (or hide).
3
If appropriate, drag the toolbar to a convenient location. For example if you
have a large screen, it is a good idea to reserve one part of the screen for
the display you are creating and another part for the toolbarsthat way,
they never obscure your work. (If you drag a toolbar to the edge of the
Display Builder window, they will dock to the edge, and effectively
become part of it.)

Standard Toolbar
The Standard toolbar includes basic Windows-related buttons such as Open and
Save.

Figure 2.3 Standard Toolbar

PlantScape Display Building Guide

plntdspb.book Page 8 Monday, May 28, 2001 8:57 AM

2 Getting Started

Button

Description
Display/Shape. Creates a new display or shape. Click the arrow to the
right to display the list:
Display. Creates a new display.
Shape Sequence. Creates a new shape sequence. See Using
Shapes on page 27.
Dynamic Shape. Creates a new dynamic shape. See Using
Shapes on page 27.
Open. Opens an existing display.

Save. Saves the display.

Print. Prints the display.

Cut. Removes the selected object(s) from the display (and copies them
to the clipboard).
Copy. Copies the selected object(s) to the clipboard.

Paste. Pastes the clipboards contents into the display.

Duplicate. Makes duplicates of the selected object(s).

Find. Finds an object by its name (as shown in the Name property of
the Properties window).
Undo. Undoes the previous action.

Help. Displays the Help for Display Builder.

R400

plntdspb.book Page 9 Monday, May 28, 2001 8:57 AM

Using the Toolbars

Toolbox Toolbar
The Toolbox toolbar contains two types of buttons:

Editing Buttons, which you use to edit existing objects.

Object Creation Buttons, which you use to create display objects. For
example, if you want to draw a rectangle, you click Rectangle.

Figure 2.4 Toolbox Toolbar

Editing Buttons
Button

Description
Pointer. Selects, moves and resizes display objects.

Zoomer. Zooms in and of your display. To zoom in on a part of your


display, first click Zoomer and then click the area of interest. You can
zoom in further by clicking repeatedly.
To zoom out, hold down <Shift> and click.
Rotator. Rotates the selected rotatable object (Windows NT only). See
Rotating Display Objects on page 21.

Object Creation Buttons


Button

Description
Text. Creates text, such as the displays title.

Line. Creates a straight line.

Freehand Line. Creates a freehand line which follows the path you
trace with the cursor.

PlantScape Display Building Guide

plntdspb.book Page 10 Monday, May 28, 2001 8:57 AM

2 Getting Started

Button

Description
Rectangle. Creates a rectangle or square.

Rounded Rectangle. Creates a rectangle or square with rounded


corners.
Oval. Creates an oval or circle.

Polyline. Creates a multi-segment line (which are similar to polygons,


but with one open side).
To create a polyline, you click to mark each apex, except for the last.
You mark the last apex by double-clicking.
Polygon. Creates a polygon.
To create a polygon, you click to mark each apex, except for the last.
You mark the last apex by double-clicking, which then closes the
polygon.
Arc. Creates an arc (a quarter of an oval or circle).

Wedge. Creates a segment (quarter) of an oval or a circle.

Video. Creates a window for viewing video information.


(To display a video in Station, the computer requires a Microsoft Media
(MCI) compliant video overlay card. If there is no video card, the video
object appears as a colored rectangle.)
For information on setting up video overlay devices, see the Installation
Guide.
SafeBrowse. Creates a window for viewing a SafeBrowse object. (A
SafeBrowse object is a Web browser specifically designed for use with
Station. See Using SafeBrowse on page 32.)
ActiveX Document. Creates a window for viewing an ActiveX
document. (This is any ActiveX-compliant document, such as a
Microsoft Excel spreadsheet or a Microsoft Word document.)
Alphanumeric. Used to display database values in many different
formats.
Pushbutton. Creates a pushbutton that users can click in an interactive
display. When clicked the specified command is performed.

10

R400

plntdspb.book Page 11 Monday, May 28, 2001 8:57 AM

Using the Toolbars

Button

Description
Checkbox. Creates a checkbox so that users can select or deselect an
option in an interactive display.
Combobox. Creates a combobox so that users can select from a list of
options in an interactive display.
Chart. Creates a chart (graph) that shows changes in values over time.

Scrollbar. Creates a scrollbar that users can operate in an interactive


display. See Understanding Scrollbars on page 65.
Indicator. Creates a gauge that indicates relative values. (Similar in
principal to a cars fuel gauge.)
Alarm Line. Used to display alarm messages, delay or event conditions.

View Toolbar
The View toolbar includes a range of editing buttons.

Figure 2.5 View Toolbar

Button

Description
Rulers. Shows/hides the rulers. The rulers make it easier to arrange
display objects in a neat and consistent manner. See Setting the
Displays Options on page 36.
Grid. Shows/hides the grid. The grid makes it easier to arrange display
objects in a neat and consistent manner. See Setting the Displays
Options on page 36.
Snap-to-Grid. Turns the snap-to-grid function on/off. When
snap-to-grid is active, objects automatically align to the grid when you
create, move or resize them.

PlantScape Display Building Guide

11

plntdspb.book Page 12 Monday, May 28, 2001 8:57 AM

2 Getting Started

Button

Description
Properties Window. Opens/closes the Properties window. You use the
Properties Window to edit the characteristics of the selected object(s).
See Using the Properties Window on page 24.
Script Window. Opens/closes the Script window. You use the Script
Window to write scriptsa script is a mini-program that performs a
specific task. See Using the Script Window on page 106.
Scripts enable you to increase the sophistication of your displays, and
can vary widely in functionality and complexity. Anyone with minimal
programming skills can write simple scripts. Scripts are described in
detail in Writing Scripts on page 97.
Shape Gallery. Opens/closes the Shape Gallery. The Shape Gallery
makes it easy to preview and add pre-built shapes to your displays. See
Using the Shape Gallery on page 30.

Arrange Toolbar
The Arrange toolbar contains buttons for aligning and grouping display objects.

Figure 2.6 Arrange Toolbar

Button

Description
Bring To Front. Moves the selected object(s) to the front so that it is
not obscured by overlapping objects.
Send To Back. Moves the selected object(s) to the back where it is
obscured by overlapping objects.
See Moving A Display Object To The Front Or Back on page 20.
Group. Groups the selected objects so that they become one object. If
necessary, you can nest grouped objects to create even more complex
display objects.
Ungroup. Splits a grouped object into its component objects.
See Grouping Display Objects on page 20.

12

R400

plntdspb.book Page 13 Monday, May 28, 2001 8:57 AM

Using the Toolbars

Button

Description
Align Left. Moves the selected objects horizontally so that they are all
aligned to the left.
Align Center. Moves the selected objects horizontally so that their
centers are aligned.
Align Right. Moves the selected objects horizontally so that they are all
aligned to the right.
Align to Page Center. Moves the selected objects so that they are
centered on an imaginary line that runs vertically through the center of
the display.
See Aligning Display Objects on page 19.
Align Top. Moves the selected objects vertically so that they are all
aligned at the top edge.
Align Middle. Moves the selected objects vertically so their centers are
aligned.
Align Bottom. Moves the selected objects vertically so that they are all
aligned at the bottom edge.
Align to Page Middle. Moves the selected objects horizontally so that
they are centered on an imaginary line that runs horizontally through the
center of the display.
See Aligning Display Objects on page 19.
Even Horizontal Spacing. Moves the selected objects (except the
outer two) horizontally so that they are spaced evenly. For example, if
you select three objects, the inner one will move left or right so that is
centered between the two outer ones.
Even Vertical Spacing. Moves the selected objects (except the top and
bottom ones) vertically so that they are spaced evenly. For example, if
you select three objects, the inner one will move up or down so that is
centered between the top and bottom ones.
See Distributing Display Objects on page 19.
Flip Horizontal. Flips the selected objects horizontally (as in a mirror
image).
Flip Vertical. Flips the selected objects vertically.
Rotate Left. Rotates the selected objects 90 degrees clockwise.(Only
available on Windows NT.)
Rotate Right. Rotates the selected objects 90 degrees anti-clockwise.
(Only available on Windows NT.)
See Flipping Display Objects on page 19.

PlantScape Display Building Guide

13

plntdspb.book Page 14 Monday, May 28, 2001 8:57 AM

2 Getting Started

Button

Description
Lock Objects Toggle. Locks/unlocks an object. Locking an object
protects it from being accidently moved or resized. See Locking Display
Objects on page 18.

Format Toolbar
The Format toolbar contains buttons for controlling the appearance of display
objects.
You can use Format buttons in two ways:

If you click a button while one or more objects are selected, it only affects
the appearance of selected object(s).

If you click a button while no object is selected, you change the displays
default value (standard value), which is then used whenever you create new
objects in that display. See Setting the Defaults on page 16.

Figure 2.7 Format Toolbar

Button

Description
Font. Sets the font of text. Note that you should only use fonts that are
loaded on every Station computer.
Font Size. Sets the size of text.

Bold, Italic and Underline. Change the texts appearance.

14

R400

plntdspb.book Page 15 Monday, May 28, 2001 8:57 AM

Using the Toolbars

Button

Description
Justify Left, Justify Center and Justify Right. Align lines of text within
a paragraph.

Line Color. Sets the line color of objects. When you click the button, a
palette opens from which you select the color. See Selecting Colors on
page 22.
Fill Color. Sets the fill color of objects. When you click the button, a
palette opens from which you select the color. See Selecting Colors on
page 22.
Line Style. Sets the line thickness.
Arrows. Sets the line-end style, such as arrows.

Effects. Sets the 3D effects of objects.

PlantScape Display Building Guide

15

plntdspb.book Page 16 Monday, May 28, 2001 8:57 AM

2 Getting Started

Basic Drawing Techniques


This section describes basic drawing techniques. Note that techniques are similar
to those used in other Windows-based drawing and paint programs.
Tip

You can access many commands using keyboard shortcutssee Keyboard


Shortcuts on page 240. You can also access many commands from the shortcut
menusee Using the Shortcut Menu on page 241.

Setting the Defaults


When drawing objects, you generally want most of them to have similar
characteristics, such as color, line thickness and font. The easiest way of ensuring
such uniformity is to set the default values, which Display Builder then uses
when you draw each new object.
Most toolbar buttons show their default settings. For example, if the default text
size has been set to 12 points, 12 appears in Font Size.
For example, to set the default colors to red line and yellow fill:
1
Make sure no object is selected. (If an object is selected, click a blank part
of the display, or select Edit Deselect All.)
2
Click Line Color to open the color palette.

Figure 2.8 The Color Palette

Tip

16

Click the red box.

The
box sets the color to the displays background color, and the
color to transparent.

R400

box sets the

plntdspb.book Page 17 Monday, May 28, 2001 8:57 AM

Basic Drawing Techniques

4
5

Click Fill Color to open the color palette again.


Click the yellow box.
Note A display object that is linked to the database can only use sixteen
colors, these being: white, gray, black, red, green, cyan, blue, magenta and
yellow and their low-intensity equivalents. If you select a non-standard
color, the nearest standard color will be used.

Creating a Display Object


To create a display object:
1
Click the appropriate button on Toolbox toolbar.
2
Drag the cursor diagonally over the display, and release the mouse button
when the dotted outline rectangle is the correct size and shape.
Tip

To create a square/round display object, hold down <Shift> while dragging.

Selecting Display Objects


When you select an object, a set of eight selection handles appears around the
objects boundary. Having selected an object you manipulate it as required.

Figure 2.9 A Selected Display Object

To select:

Do this:

One object

Click it.

Several objects

Hold down <Shift> and click each object.

Several objects, which are


generally close together

Drag the mouse cursor diagonally across the objects.


This selects any object that falls entirely within the
selection rectangle which appears while dragging.

PlantScape Display Building Guide

17

plntdspb.book Page 18 Monday, May 28, 2001 8:57 AM

2 Getting Started

To select:

Do this:

One object from a stack of


objects

Hold down <Ctrl> and click repeatedly until the object


you want is selected. Each time you click, the next
object in the stack (starting from the top) is selected.
Do not click too quicklyif you do, your action will be
interpreted as a double-click.

All objects

Select Edit Select All.

All objects linked to the


database (dynamic objects)

Select Edit Select Dynamic.

All objects not linked to the


database (static objects)

Select Edit Select Static.

No object

Click a blank part of the display, or select Edit


Deselect All.

Deselecting Display Objects


To deselect:

Do this:

All objects

Click a blank part of the display. (If an object, such as a


background bitmap, covers the entire display, select
Edit Deselect All.)

One or more objects from a


group of selected objects

Hold down <Shift> and click each object you want to


deselect.

Locking Display Objects


Locking objects in place prevents them from being accidently moved or modified
with the mouse. (You can still move and resize locked objects by editing their
size and position properties in the Properties window.)
To lock an object:
1
Select the object.
2
Click Lock Objects. Note how the selection handles turn grey to indicate
that the object is locked.

18

R400

plntdspb.book Page 19 Monday, May 28, 2001 8:57 AM

Basic Drawing Techniques

Figure 2.10 The Selection Handles of a Locked Object


Note To unlock a locked object, select it and then click Lock Objects a
second time.

Aligning Display Objects


To align two or more display objects:
1
Select the display objects you want to align.
2
Click the appropriate Align button on the Arrange toolbar. For example, if
you want the left sides of the objects to be in line, click Align Left.
See Arrange Toolbar on page 12 for a description of each of the Arrange
buttons.

Distributing Display Objects


To distribute three or more display objects:
1
Select the display objects you want to distribute.
2
Click Even Horizontal Spacing or Even Vertical Spacing on the Arrange
toolbar.

Flipping Display Objects


To flip one or more display objects:
1
Select the display objects you want to flip.
2
Click the appropriate Flip button on the Arrange toolbar. For example, if
you want to create a mirror-image, click Flip Horizontal.
Tip

If you want to flip the objects on their sides, click Rotate Left or Rotate Right
(only available on Windows NT).

PlantScape Display Building Guide

19

plntdspb.book Page 20 Monday, May 28, 2001 8:57 AM

2 Getting Started

Moving A Display Object To The Front Or Back


When display objects overlap, you may need to change the order in which they
are stacked on top of each other, so that one object doesnt obscure another.
To move display object(s) to the front or back of the stack:
1
Select the display objects you want move.
2
Click Bring to Front or Send to Back on the Arrange toolbar.

Grouping Display Objects


You can create a complex display object by creating a number of simple objects,
arranging them in an appropriate manner and then grouping them. If
appropriate, you can nest grouped objects to create even more complex display
objects.
To group two or more display objects:
1
Select the display objects you want group.
2
Click Group on the Arrange toolbar.
To ungroup a grouped object, select it and then click Ungroup.

Resizing Display Objects


To resize one or more display objects:
1
Select the object(s). Their selection handles appear.
2
Drag one of the selection handles as required. The objects are resized as
you drag.
Tip

If you want to retain the object proportions, hold down <Shift> and drag a corner
handle.

Duplicating Display Objects


To make duplicate copies of one or more display objects:
1
Select the display object(s) you want to duplicate.
2
Select Edit Duplicate. A copy of the selected object(s) appears near the
centre of the display.

20

R400

plntdspb.book Page 21 Monday, May 28, 2001 8:57 AM

Basic Drawing Techniques

Deleting Display Objects


To delete one or more display objects:
1
Select the display object(s) you want to delete.
2
Select Edit Delete. (Alternatively, press <Delete>.)

Editing Display Objects


You edit display objects by selecting them and then making the appropriate
changes in the Properties window.
For example, to change the font of one or more alphanumerics to 12 point, bold:
1
Select the alphanumeric(s).
2
If necessary, open the Properties window by clicking Properties Window
on the View toolbar.
3
Click the Font tab.
4
Select 12 from the Size property.
5
Select Bold from the Font style property.
For more information about the Properties window, see Using the Properties
Window on page 24.

Rotating Display Objects


If you use Windows NT on both the computer used to create displays, and on
every computer that runs Station, you can rotate the following types of display
objects. You can also rotate a group if all objects in the group are rotatable.
Arc

Metafile

Rectangle

JPEG

Bitmap

Oval

Rounded Rectangle

TGA

Freehand Line

Polygon

Text

Line

Polyline

Wedge

Note:

You cannot rotate a shapelink if the associated shape contains any dynamic
objects. (Shapelinks are described in Using Shapes on page 27.)

PlantScape Display Building Guide

21

plntdspb.book Page 22 Monday, May 28, 2001 8:57 AM

2 Getting Started

If someone views a display containing rotated objects on a Station which is


not running on Windows NT, the objects will revert to their non-rotated
state.

To rotate an object:
1
Click Rotator on the Toolbox toolbar.
2
Click the object you want to rotate.
Four rotation handles appear, as well as a rotation markerthis indicates
the point about which the object rotates.

Figure 2.11 The Rotation Marker and Rotation Handles

3
4

If you want to rotate the object about a specific point, drag the rotation
marker to that pointthe point can even be outside the object.
Drag one of the rotation handles clockwise or anticlockwise. As you drag
the handle, the object rotates about the rotation marker.

Moving Display Objects with the Arrow Keys


If you want to move an object a small distancea technique called nudging
you may find it easier to use the arrow keys than to use the mouse. Each time
you press an arrow key, the selected object(s) move a few pixels in the direction
of the arrow. If you hold down an arrow key, the selected object(s) move slowly
in the direction of the arrow.

Selecting Colors
To select the line or fill color for the selected objects:
1
Click Line Color or Fill Color, as appropriate to open the color palette.
2
Click the appropriate color in the palette.
3
Alternatively, if you want to:

Select a custom color, see Selecting a Custom Color on page 23.

Remove the color, so that the line or fill becomes transparent, click the
box.

22

R400

plntdspb.book Page 23 Monday, May 28, 2001 8:57 AM

Basic Drawing Techniques

Make the color the same as the displays background color, click the
box.

Selecting a Custom Color


To select a custom line or fill or line color for the selected objects:
1
Click Line Color or Fill Color, as appropriate to open the color palette.
2
Click Other to open the Color dialog box.

Figure 2.12 The Color Dialog Box

Tip

Click the point in the color spectrum box that has the color you want.

There are two other ways of selecting a color. Either, enter the HSV or RGB values
in the appropriate fields, or drag the Color marker (the x in the color spectrum
box) and the Saturation marker on the Saturation scrollbar.
4
Click Add to Custom Colors so that the color appears in the next available
Custom colors box.
5
Click the custom color you have just created and then click OK.

Undoing the Previous Action


When creating a display, it is very easy to make mistakes. If you realize your
mistake immediately after making it, select Edit Undo to undo your last
action. (Alternatively, press <Ctrl>+<Z>.)

PlantScape Display Building Guide

23

plntdspb.book Page 24 Monday, May 28, 2001 8:57 AM

2 Getting Started

Using the Properties Window


You use the Properties window to view and edit the properties of the selected
display objects. (The properties include physical characteristics, such as color and
size, as well as database link details.)
You also use the Properties window to view and edit the displays properties
these appear when no display objects are selected.
The Properties window changes whenever you select another object. In the
following figure, the left-hand example shows the window when you select an
alphanumeric, whereas the right-hand example shows the window when you
select a chart.

Figure 2.13 Selecting a Tab Changes the Properties Window


The Properties window is modeless, which means that the selected object(s)
change as soon as you change a propertys value. (Unlike a standard dialog box,
you do not have to click an OK button.)
Properties are grouped according to the tabs that run across the top of the
window. The following examples show how the window changes as you click
the tabs.

24

R400

plntdspb.book Page 25 Monday, May 28, 2001 8:57 AM

Using the Properties Window

Figure 2.14 Properties are Grouped According to Tab


The Properties window also changes if you:

Select several display objects of the same type. Any properties whose values
are not identical are blanked or grayed out. For example, Name in the
General tab will be blank because each object has a unique name.
If you edit a property, you change all selected objectsfor example, if you
change Fill Color to red, they will all turn red.

Select display objects of various types, such as a pushbutton and an


alphanumeric. In this case, the window only displays tabs that are shared by
all selected objects. For example, if you selected an alphanumeric and a
pushbutton, you could change the properties on the Font tab because both
objects contain text.

Deselect all objects. The Properties window then shows the displays
properties, and its title changes to Display Properties.
For a description of each property, see:

Defining Display Object Properties on page 43

Defining Display and Shape File Properties on page 85

PlantScape Display Building Guide

25

plntdspb.book Page 26 Monday, May 28, 2001 8:57 AM

2 Getting Started

Linking Display Objects to the Database


A major feature of Display Builder that distinguishes it from a standard drawing
application is its ability to link display objects to the server database. Some types
of display object, such as alphanumerics and indicators, are specifically designed
for displaying database information.
You can link most types of display object to either a point parameter (such as the
points value) or to a database file, whose contents are controlled by an
application. For more information about linking objects to the database, see
Defining Display Object Properties on page 43.
Note

26

R400

A display can have up to 300 database links.

plntdspb.book Page 27 Monday, May 28, 2001 8:57 AM

Using Shapes

Using Shapes
A shape is a special display object that speeds up drawing tasks and makes your
displays visually consistent. Shapes are stored in special files called shape files.
Having created a shape, it can be used as many times as necessary (including
multiple times into the same display). To insert a shape into a display, you insert
a shapelink that includes a link to the shape. The shapelink also controls the size
and position of the shape in the display. (Because shapes are linked to displays,
updating a shape files attributes, other than size, automatically updates all
displays linked to that shape.)
There are two types of shapes: Shape Sequences and Dynamic Shapes.

Shape Sequences
A shape sequence consists of a set of shapes that can be used as either a status
indicator, or as a simple animation.
Note A shape sequence cannot contain any dynamic display objects, such
as alphanumerics.

Using a Shape Sequence as a Status Indicator


The following figure shows a shape sequence representing traffic light statuses.

Red

Amber

Green

Figure 2.15 A Shape Sequence

When used in a display, the status of the associated point determines which of
the three shapes appears in the display. For, example, when the status is 0 (Stop)
the red hexagon appears; and when the status changes to 1, the hexagon
disappears and amber triangle appears.

PlantScape Display Building Guide

27

plntdspb.book Page 28 Monday, May 28, 2001 8:57 AM

2 Getting Started

Display file
Shapelink
Amber

Shape file

Red

Amber

Green

Figure 2.16 Linking to a Shape Sequence

Using a Shape Sequence for an Animation


A shape sequence can also be used in conjunction with a script to produce a
simple animationin this case, each shape represents a separate frame in the
animation. For an example of a simple animation, see Animation Using a Shape
Sequence on page 206.

Creating a Shape Sequence


To create a shape sequence:
1
Select File New Shape Sequence to open a new display.
2
Draw the shapes as required.
Notes
The following rules and restrictions apply to shape sequences:

If a shape consists of more than one display object, it must be grouped.

They cannot contain dynamic display objectsthat is, display objects that
are linked to the database, such as alphanumerics and comboboxes.

If the shape sequence is to be used as a status indicator, you must create a


separate shape for each state.

28

R400

plntdspb.book Page 29 Monday, May 28, 2001 8:57 AM

Using Shapes

You must also arrange the shapes (left-to-right/top-to-bottom) in the


appropriate order. In the case of a status indicator, the top-left shape
corresponds to 0, the next shape corresponds to 1, and so on. In the case of
an animation, the top-left shape represents the first frame, and so on.

Inserting a Shape Sequence into a Display


To insert a shape sequence into a display:
1
Select Edit Insert Shapelink to open the Insert Shapelink dialog box.
2
Select the required shape file from the list of files. (If you click
at the top
of the dialog box and then click
at the bottom, the shapes in the selected
file are displayed sequentially.)
Tip

Alternatively, drag a shape from the Shape Gallery and drop it directly into the
display. See Using the Shape Gallery on page 30.
3
Move and resize the shapelink as required.
4
Open the Properties window and click the Data tab.
5
Enter the database link details. (If you are linking to a particular point
parameter, select Point/Parameter from Type of database link, and
then enter the appropriate point and parameter details.)
6
Click the Animation tab and select Shape Sequence from Type of
animation.
7
Enter the number of shapes you want to use in Number of shapes. (A
shape file may contain more shapes than is required for a particular
point/parameter. If, for example, there are only four states but the shape file
contains eight shapes, type 4 to use the first four shapes.)

Dynamic Shapes
A dynamic shape can contain dynamic objects, such as alphanumerics, that are
designed to be linked to the database.
For example, you could create a pump with an alphanumeric to display the
flow rate. Each time you use this pump in a display, you assign the appropriate
point/parameter to the alphanumeric.
Note

A dynamic shape file can contain only one shape.

Creating a Dynamic Shape


To create a dynamic shape:
1
Select File New Dynamic Shape to open a new display.
2
Draw the shape.

PlantScape Display Building Guide

29

plntdspb.book Page 30 Monday, May 28, 2001 8:57 AM

2 Getting Started

Tip

Remember to group all objects.

Linking to a Dynamic Shape


To add to a dynamic shape to a display:
1
Select Edit Insert Shapelink to open the Insert Shapelink dialog box.
2
Select the required shape file from the list of files. (If you click
at the top
of the dialog box and then click
at the bottom, the shapes in the selected
file are displayed sequentially.)
Tip

Alternatively, drag a shape from the Shape Gallery and drop it directly into the
display. See Using the Shape Gallery on page 30.
3
Move and resize the shapelink as required.
4
Open the Properties window and click the Data tab.
5
Specify the appropriate point and parameter details for each object. (Every
object in the dynamic shape is listed.)

Using the Shape Gallery


The Shape Gallery makes it easy to preview and add pre-built shapes to your
displays. To open the Shape Gallery, click Shape Gallery in the View toolbar.
Note

You can only open the Shape Gallery if at least one display is open.

To preview a set of shapes:


1
Select the appropriate folder in the left-hand pane. A one-line summary of
each shape appears in the right-hand pane.

Figure 2.17 The Shape Gallery

30

R400

plntdspb.book Page 31 Monday, May 28, 2001 8:57 AM

Using Shapes

2
3

If you want to preview each shape, click .


In you want to preview individual shapes in a shape sequence (No of
shapes is 2 or more), double-click it. (Alternatively, select the shape and
click .)

To insert a shape into a display:


1
Drag it from the list and drop it into the display.

Registering Shape Folders


If your displays include shapes that are not in the same folder as the displays, you
must register those folders in the Shapelink Search Paths window. (If you dont
do this, Display Builder will replace any shapes with place-markers the next time
you open a display.)
To register the folders:
1
Select View Shapelink Search Paths to open the Shapelink Search
Paths window.
2
Click
to add a blank line to the list.
3
Either type the folders full path, or click
and browse for the folder.
4
If necessary, use
and
to rearrange the order of folders in the list.
(Display Builder searches through the folders in the order listed.)

Using the Supplied Shape Library


Display Builder is supplied with a library of pre-built shapes that you can include
in your displays. These shapes are stored in \ShapeLib, and are organized into
sub-folders according to subject. (The \examples folder contains some example
displays built using the shape library.)

PlantScape Display Building Guide

31

plntdspb.book Page 32 Monday, May 28, 2001 8:57 AM

2 Getting Started

Using SafeBrowse
A SafeBrowse object is a Web browser specifically designed for use with Station.
SafeBrowse includes appropriate security features that prevent users from calling
up unauthorized Web pages or other documents in Station. For details about
restricting access, see the Configuration Guide.

URL Formats
The general format for the URL (Uniform Resource Locator) of a SafeBrowse object
is:

Protocol://ResourceName

Part

Description

Protocol

The protocol, which can be either http, ftp, gopher,


or file.
The default protocol is file. If the protocol is not
specified, Station assumes that the URL refers to a file,
either on the Station computer or on the network.

ResourceName

Example

The resource address or identifier, such as a file or Web


address. If the extension is not specified, Station
assumes that it is a display file.

The URL for a HTML file called procedure.htm, either:


file://c:\procs\procedure.htm
or
c:\procs\procedure.htm
The URL for a Web address:
http://www.ourwebsite.com
The URL for a Word file called sp.doc:
file://c:\procs\sp.doc

32

R400

plntdspb.book Page 33 Monday, May 28, 2001 8:57 AM

Using SafeBrowse

Linking to Displays from HTML Pages


If you create full-page HTML files for Station users, you can include hypertext
links to displaysthe specified display is called up when a user clicks a link. (A
HTML file is displayed in full-page mode when a user calls it up from the
Command Zone.)
The protocol for inserting a link to a display is http://station/. For example,
to add a link to a display called pumps.dsp:
<a href="http://station/pumps">Pump Summary</a>
Note You cannot call up a display if the HTML page is displayed within a
SafeBrowse object.

PlantScape Display Building Guide

33

plntdspb.book Page 34 Monday, May 28, 2001 8:57 AM

2 Getting Started

Inserting Graphics Created by Other Applications


Inserting suitable graphics, such as digitized photographs or schematic drawings,
can enhance your displays.
Note Inserting graphicsespecially large onesmay affect Stations
performance when the display is called up by an operator.
Display Builder supports the following graphic formats:

Windows Bitmap (*.bmp)

JPEG (*.jpg)

Targa (*.tga)

Metafile (*.wmf)

Enhanced Metafile (*.emf)


To insert a graphic:
1
Select Edit Insert Picture to open the Insert Picture dialog box.
2
Select the graphic file you want to insert. If necessary, browse for the file,
restrict the list to the appropriate file type and preview the graphic in the
right-hand box.
3
Move, resize and group the graphic, like any other display object.
Tip

34

You can also paste a graphic from the clipboard. To do this, create your graphic in
a suitable application, copy it to the clipboard and then paste it into your display.

R400

plntdspb.book Page 35 Monday, May 28, 2001 8:57 AM

Pasting Text from Another Application

Pasting Text from Another Application


You can paste text into your displays from other applications. For example, if you
want to include a large block of text in your display, you may find it easier to
compose it in a text editor or word processor.
Note The characteristics of pasted text vary according to the application
in which it was written. For example, if you select several paragraphs from
Microsoft Word, they are pasted into your display as a metafile (a type of
graphic) which retains the original layout. However, if you select several
paragraphs from Windows Notepad, each paragraph is pasted into your
display as a separate text object, without word wrapping.
To paste text into a display:
1
Start Display Builder and open the display in which you want to paste the
text.
2
Start the text editor or word processor and write the text.
3
Select the text.
4
Use the applications Copy function to copy the text to the clipboard.
5
Select Display Builder, so that it is the active application.
6
Select Edit Paste.
7
Move, resize and group the text, like any other display object.

PlantScape Display Building Guide

35

plntdspb.book Page 36 Monday, May 28, 2001 8:57 AM

2 Getting Started

Setting the Displays Options


A display has a number of options that make display creation easier.
To set a displays options:
1
Select View Options to open the Options dialog box.

Figure 2.18 The Options Dialog Box


Set the options as required.

Option

Description

Grid settings

Specifies the spacing, style and color or grid lines.


The spacing is based on the displays logical coordinates,
which range from 0, 0 (top, left) to 7999, 4399 (bottom,
right). The default spacing is 100 units.
For more information about logical coordinates, see
Understanding Coordinates on page 205.

36

Page background color

Sets the displays background color in Display Builder. Note


that this does not affect the display when viewed in Station.

Show rulers

Shows/hides the rulers. Note that you can change this by


clicking Rulers on the View toolbar.

Show grid

Shows/hides the grid. Note that you can change this setting
by clicking Grid on the View toolbar.

R400

plntdspb.book Page 37 Monday, May 28, 2001 8:57 AM

Setting the Displays Options

Option

Description

Align objects to grid

When selected objects automatically align to grid lines


when you create, move or resize them. Note that you can
change this setting by clicking Snap-to-Grid on the View
toolbar.

PlantScape Display Building Guide

37

plntdspb.book Page 38 Monday, May 28, 2001 8:57 AM

2 Getting Started

Working With Files


In Display Builder, you create, save and open files in a similar manner to any
other Windows-based application. This section, however, covers details that are
specific to Display Builder files.
Display Builder uses a .dsp extension for displays and shape files.

Creating a New Display or Shape


To create a new display or shape, select File New and then the appropriate
type of file. A blank display appears.
Note You cannot change the files type after creating it. For example, you
cannot change a shape sequence into a dynamic shape.

Defining the Displays Properties


You must define the files properties, such as its title and type. For details, see
Defining Display and Shape File Properties on page 85.

Saving a New Display or Shape


When you save a display or shape for the first time, you specify:
Item

Description

File name

The displays name or number. See Named Versus


Numbered Displays on page 39.

Save as type

The displays format. (By default, Display Builder uses the


current format.)
You only need to select an earlier format if you are creating
a display for an earlier version PlantScape, or for an earlier
product. See Saving Displays in Earlier Formats on
page 39.

38

R400

plntdspb.book Page 39 Monday, May 28, 2001 8:57 AM

Working With Files

Named Versus Numbered Displays


An advantage of a named display is that users call up it up by entering the
displays filename (without the extension) in Stations Command Zone. It is easier
for users to remember an intuitive name like overview than a number such as
309.
Note If you want to assign a display to a function key (so that users can
call it to call up by pressing the key), its name must not be longer than 20
characters.
In general, making a display numbered or named is simply a matter of choice.
However, the display must be numbered if:

You want Station to automatically call up the display when a user logs on.

You want to configure the <Page Up> and <Page Down> keys so that they
call up the next/previous pages. Both the page for which you configure the
keys and the pages you call up must be numbered pages.

You want the display listed in the Display Summary.

You want to call up the display from a toolbar button.

An Algorithm (algo) references the display.

The point cross-reference report references the display.


Page numbering for custom displays starts at 301. (Numbers 1 to 300 are reserved
for the system displays that are supplied with PlantScape.) The maximum page
number depends on system sizing, and available disk space. For more
information see the Installation Guide.

Saving Displays in Earlier Formats


If you are creating a display for an earlier release of PlantScape, or for an earlier
product, such as SCAN 3000 or XSM, you must select the appropriate format from
Save as type when saving the display for the first time.
Note When saving a display in an earlier format, only features supported
by that format will be saved.
Save as type:

Product release:

Release 320.2

PlantScape R320, EBI R110

Release 320

PlantScape R210/R300, EBI R100

Release 310

PlantScape R200/R130

Release 300

PlantScape R110, SCAN 3000 R620 (ActiveX edition), XFi


R620 (ActiveX edition), XSM R630

Release 230

XSM R610

PlantScape Display Building Guide

39

plntdspb.book Page 40 Monday, May 28, 2001 8:57 AM

2 Getting Started

Save as type:

Product release:

Release 220

SCAN 3000 R620, XFi R620, XSM R550

Release 110

SCAN 3000 R530 (Unix), XFi R530, XSM R515

Opening a File
To open an existing Display Builder file, select File Open and use the Open
dialog box to select the file you want to open.
Note If you open a file saved in an earlier file format, Display Builder
automatically opens it in the current format. Having made the required
changes, you must therefore select the original format when saving it if you
want to retain the earlier file format.

Working with Several Files


If required, you can have up to ten files open simultaneouslya useful feature
when copying and pasting objects between displays and shape files.

40

R400

plntdspb.book Page 41 Monday, May 28, 2001 8:57 AM

Distributing And Validating Files

Distributing And Validating Files


Having created your displays and shape files, you must perform the appropriate
distribution and validation tasks.

Checking the Validity of Point IDs in Remotely-built Files


If you are working remotelythat is, you are creating displays and shape files on
a computer other a serveryou must check that the point IDs specified in the file
are valid.
One way of doing this is to copy the file to the appropriate server folder, open
the file using Display Builder on the server or network, and immediately save it.
The server generates an error message if there is any invalid point ID.
Another way is to use Display Builders command-line parameters. See Using
Display Builders Command-Line Parameters on page 246.

Distributing Files
There are two storage techniques for displays and shape files:

Centralized, where all files are stored centrally on the server, and accessed
by Stations as required

Distributed, where each Station has its own copies on a local folder. (This
storage technique reduces communication traffic and callup delays because
Stations do not have to download display files before displaying them.)
To distribute files if you use centralized storage:
1
Copy the display and shape files to the appropriate display folder on the
server.
2
If you have any numbered displays, export them. See Exporting Numbered
Displays on page 42.
To distribute files if you use distributed storage:
1
Copy the display files to the appropriate server folder. (Shape files do not
need to be on the server.)
2
If you have any numbered displays, export them. See Exporting Numbered
Displays on page 42.
3
Copy the display and shape files to the appropriate display folder on each
Station computer that needs those files.

PlantScape Display Building Guide

41

plntdspb.book Page 42 Monday, May 28, 2001 8:57 AM

2 Getting Started

Exporting Numbered Displays


You must export numbered displays so that the server can establish a link
between the page number and the filename.
If, when saving a numbered display in Display Builder, you save it to the
appropriate display folder on the server, the display is generally exported as
part of the saving process. A warning message appears if the display was not
exported. (Exporting is not possible if, for example, the server is down.)
To export a remotely-built display:
1
Copy the display file to the appropriate folder on the server.
2
Open the file using Display Builder on the server or network, and
immediately save it. The display is then exported as you save it.
If you only want to export system displays, see Exporting System Displays on
page 245.

42

R400

plntdspb.book Page 43 Monday, May 28, 2001 8:57 AM

Defining Display Object Properties


This chapter describes display object properties, which you access through the
Properties window (described in Using the Properties Window on page 24).
Tip

If the Properties window is not open, click Properties Window in the View
toolbar.
For details about this tab:

Go to:

Animation

page 44

Appearance

page 47

Custom X-Y

page 48

Data

page 49

Details

page 54

Font

page 70

General

page 71

Options

page 73

Repeats

page 75

X-Y Plot

page 78

PlantScape Display Building Guide

43

plntdspb.book Page 44 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Animation Tab
The animation tab controls the correspondence between the objects color and
the value or status of the associated point.

Figure 3.1 Animation Tab

44

R400

plntdspb.book Page 45 Monday, May 28, 2001 8:57 AM

Animation Tab

Property

Description

Type of animation

The type of animation used for the object:


Color breakpoints. The color changes as the
value changes. You can specify up to nine colors
and the percentage range for which each color
applies. (For example, you could make an object
turn red when the value is between 90 and 100
percent of its range.)
Level fill. When the value is low, the color
applies to only the bottom part of the object; as the
value rises, the color rises to fill more of the object.
Shape sequence. Only applicable to a shapelink.
Specifies the number of shapes in the shape
sequence you want to use. See Inserting a Shape
Sequence into a Display on page 29.
Note that the Details properties change in accordance
with the selected type of animation.

Details

These properties change in accordance with the option


selected in Type of animation.
Type of breakpoint specifies how the color changes:
Continuous. (Only applicable to analog values.)
The color changes as the value changes. You can
specify up to nine colors and the percentage range
for which each color applies. (For example, you
could make an object turn red when the value is
between 90 and 100 percent of its range.)
Discrete. The color changes as the state changes.
You define a separate color for each state. Select
Inverse if you want to animate the fill color rather
than the line colorthis produces a reverse video
effect, which makes text stand out providing you
have selected an appropriate color scheme.

Indicate alarm state with color

Station overrides the current color with the


system-defined colors during alarm or off scan states.
(The system-defined colors are specified in System
Defined Colors on page 46.)
Not applicable if you select the Shape sequence option.

PlantScape Display Building Guide

45

plntdspb.book Page 46 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

System Defined Colors

46

Point state

System defined color

In alarm and unacknowledged

Red and blinking

In alarm and acknowledged

Red

Returned to normal but alarm not acknowledged

Normal color, but blinking

Point off scan (scanning disabled)

White

R400

plntdspb.book Page 47 Monday, May 28, 2001 8:57 AM

Appearance Tab

Appearance Tab
The Appearance tab controls the objects overall appearance, such as its fill color
and line thickness.

Figure 3.2 Appearance Tab

Property

Description

Colors

These properties control the objects line and fill colors.

Lines

These properties control the line characteristics, such as


dashed lines and arrows at line ends.

PlantScape Display Building Guide

47

plntdspb.book Page 48 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Custom XY Tab
The Custom X-Y tab is only applicable to chart objects and only appears when
you select Custom X-Y Plot from Chart type on the Options tab.

Figure 3.3 Custom XY Tab

48

Item

Description

Plot colors

The colors used for the plot(s). The chart can display up
to two plots.

Fill colors

Select Fill between plots if you want to color the area


between the plots. (This option highlights differences
between the values of the two plots.)

R400

plntdspb.book Page 49 Monday, May 28, 2001 8:57 AM

Data Tab

Data Tab
The Data tab specifies the objects link to the database. The Type of database
link property specifies the type of link:

Point/Parameter. The object is linked to a point parameter. See


Defining a Link To a Point on page 49.

Database file. The object is linked to a file in the server database,


whose contents are controlled by another application. See Defining a Link
to a Database File on page 50.

None. The object has no link to the database. See Using Local Display
Objects on page 53.

Defining a Link To a Point


When defining a link to a point, you specify the point and the appropriate
parameter. (Each point has a number of parameters associated with it, such as
field values and configuration details. For details about points and their
parameters, see the Configuration Guide.)

Figure 3.4 Data TabLinking to a Point

PlantScape Display Building Guide

49

plntdspb.book Page 50 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Property

Description

Point

The ID of the point to which the object is linked.


If you are working remotelynot on a servertype the
points ID. (When the display is finalized, you should
check that the IDs are validsee Checking the Validity
of Point IDs in Remotely-built Files on page 41.)
If you are creating the display on a server, you can
normally select the ID from the list. (However, in a
multi-server system, the server you are working on may
not know of the existence of every point in the system.)

Parameter

The point parameter to which the object is linked.


If you select a history parameter, such as H24H, History
offset controls which history value is used. (0, the
default, represents the latest history value, 1 represents
the second-to-last value, and so on.)

Data entry allowed

Allows users to edit the objects value. (See


Understanding the Value Property on page 126.)
If you select Data entry allowed, Security Level
appears, from which you select the appropriate level.
(Only users with the specified level, or higher, can enter
data.)

Defining a Link to a Database File


For details about database (user) files, see the Application Development Guide.

50

R400

plntdspb.book Page 51 Monday, May 28, 2001 8:57 AM

Data Tab

Figure 3.5 Data TabLinking to a Database File

Property

Description

File

The number of the file to which the object is linked.


Select the indexing option from the list opposite:
No indexing.
Indexed by file offset. Adds Stations
current file offset to the file number. The offset can
be set by scrollbars, by the host and by the
<Page Up> and <Page Down> keys.

PlantScape Display Building Guide

51

plntdspb.book Page 52 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Property

Description

Record

The number of the record within the file. Select the


indexing option from the list opposite:
No indexing.
Indexed by record offset. Adds Stations
current record offset to the record number. The
offset can be set by scrollbars, by the server and by
the <Page Up> and <Page Down> keys.
Indexed by field offset. Adds Stations
current field offset to the word number. The offset
can be set by scrollbars, by the server and by the
<Page Up> and <Page Down> keys.
Indexed by Station no. Each Station uses
separate records in the user file. The effect is to view
the User file as a series of logical files, one for each
Station. Set the record and word numbers as normal;
for example, if you want the link to refer to the
second record for each Station, set Record to 2.

Word

The word number within the file. Select the indexing


option from the list opposite:
No indexing.
Indexed by field offset. Adds Stations
current field offset to the word number. The offset
can be set by scrollbars, by the server and by the
<Page Up> and <Page Down> keys.

Format

The data format.


If you select String, you must specify the length of the
string.
If you select Bits, you must specify the starting bit and
the number of bits within the word.

Read from oldest record of


circular file

Applicable if it is a circular file and you want to read the


oldest record first.

Data entry allowed

Applicable only to a text object. Allows users to edit


currently displayed text.

Security level

If you select Data entry allowed, you must also select


a Security level. (Only users with the selected level, or
higher, can enter data.)

52

R400

plntdspb.book Page 53 Monday, May 28, 2001 8:57 AM

Data Tab

Using Local Display Objects


Instead of linking a display object to the database, you can use it as an input or
output for a script. Such display objects are known as local objects because they
are not linked to the database.
For example, you could configure a scrollbar as a user-input control for a script
see Using a Scrollbar to Set a Value on page 66.
You make a display object local by setting the Type of database link property to
none.

PlantScape Display Building Guide

53

plntdspb.book Page 54 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Details Tab
The Details tab contains properties that are specific to each type of object.
For details about this type of object:

Go to:

ActiveX Document

page 54

Alarm Line

page 55

Alphanumeric

page 56

Chart

page 58

Checkbox

page 59

Combobox

page 60

Indicator

page 61

Pushbutton

page 62

SafeBrowse

page 64

Scrollbar

page 64

Text

page 69

ActiveX Document Object

Figure 3.6 Details Tab for a ActiveX Object

54

R400

plntdspb.book Page 55 Monday, May 28, 2001 8:57 AM

Details Tab

Property

Description

File Name

The URL (Uniform Resource Locator) of the document


that you want to display. If necessary, find the
document by clicking Browse.

Alarm Line Object

Figure 3.7 Details Tab for an Alarm Line

Property

Description

Type

The type of message the object displays, such as alarm


or event.

Alarm priorities displayed

Only messages with the specified priorities are


displayed.

PlantScape Display Building Guide

55

plntdspb.book Page 56 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Alphanumeric Object

Figure 3.8 Details Tab for an Alphanumeric Object

Property

Description

Display as
Details

These properties specify how the point parameter


information is displayed. See Alphanumeric Display
Options on page 57.

Number of characters
displayed

The maximum number of characters that can be


displayed.

Word wrap

Selecting Word wrap allows the value (normally text)


to appear over several lines, where it is longer than the
objects width.

Local edit

Indicates that when a user edits the objects value, the


edited value is stored locally, rather than being sent to
the server. Also, pressing <Enter> inserts carriage
returns, instead of sending the contents to the server.
In practice, this option is only used for the message
object on the message pad system display.

56

R400

plntdspb.book Page 57 Monday, May 28, 2001 8:57 AM

Details Tab

Alphanumeric Display Options


Display As option

Description

Numeric

Displays the value as a number. If you deselect


Floating decimal point, you must type the number of
decimals you want to display in Number of decimals.

State Descriptor

Applicable to a status point. Displays the state


descriptor corresponding to the points status.

Text

Applicable if the value is a text string.

Acronym

Displays an acronym, which is based on the points


(integer) value.
If you want to learn about acronyms, see
Understanding Acronyms on page 79.
To select a set of acronyms from:
The default acronym file, see Selecting Default
Acronyms on page 80.
A custom acronym file, see Selecting Custom
Acronyms on page 82.

Date

Applicable if the value is a date in Julian format.

Time

Applicable if the value represents time. If the value is an


integer, then it is assumed to represent minutes after
midnight. If it is a real number, it is assumed to
represent seconds after midnight.
Specify the number of characters you want to display in
Decimals.

Hexadecimal

Applicable if you want to display the value in


hexadecimal format.

Source Address

Applicable if the value is the points source address.


This option is generally only used by Honeywell staff.

Destination Address

Applicable if the value is the points destination address.


This option is generally only used by Honeywell staff.

Parameter of given point

Applicable if the value is a point number in a user file.


Select the parameter you want to display from the field
opposite.

State descriptor of point at


word

Applicable if the value is a state descriptor of a point in


a user file, with the Point ID at the word specified in the
field opposite. This option is generally only used by
Honeywell staff.

PlantScape Display Building Guide

57

plntdspb.book Page 58 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Display As option

Description

Parameter name of point at


word

Applicable if the value is a parameter name of a point


in a user file, with the Point ID at the word specified in
the field opposite. This option is generally only used by
Honeywell staff.

Chart Object

Figure 3.9 Details Tab for a Chart Object

58

Property

Description

Plot

You can simultaneously display the values of up to eight


points, depending on the type of chart you have
selected in the Chart type property on the Options tab.

Point ID

The IDs of the points whose values you want to display.

Parameter

The point parameter(s) whose values you want to


display.

Color

The color used to display the values of the associated


point on the chart.

R400

plntdspb.book Page 59 Monday, May 28, 2001 8:57 AM

Details Tab

Checkbox Object

Figure 3.10 Details Tab for a Checkbox Object

Property

Description

Label

The descriptive text that appears to the right of the


checkbox.

Use inverse logic

Reverses the standard checkbox logic, so that it


corresponds to the wording of Label. (In standard logic,
checked equals 1.)
For example, labelling a checkbox Open would
require the opposite logic to labelling it Close.

PlantScape Display Building Guide

59

plntdspb.book Page 60 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Combobox Object

Figure 3.11 Details Tab for a Combobox Object

Property

Description

Display as
Details

Specifies how the object is animated. See Selecting the


Display Options for a Combobox Object on page 60.

Sort alphabetically

Alphabetically sorts the items in the list.

Selecting the Display Options for a Combobox Object

60

Display As option

Description

State Descriptor

Displays the defined states of the selected point as


entries in the comboboxs list.

R400

plntdspb.book Page 61 Monday, May 28, 2001 8:57 AM

Details Tab

Display As option

Description

Acronym

Displays an acronym, based on the points state.


If you want to learn about acronyms, see
Understanding Acronyms on page 79.
To select a set of acronyms from:
The default acronym file, see Selecting Default
Acronyms on page 80.
A custom acronym file, see Selecting Custom
Acronyms on page 82.

Parameter name of point at


word

Only applicable if the value is a parameter name of a


point in a user file, with the Point ID at the word
specified in the field opposite. This option is generally
only used by Honeywell staff.

Indicator Object

Figure 3.12 Details Tab for an Indicator Object

Property

Description

Display as

Specifies how the object is animated. See Selecting the


Display Options for an Indicator Object on page 62.

PlantScape Display Building Guide

61

plntdspb.book Page 62 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Property

Description

Orientation

Specifies whether the indicator moves vertically or


horizontally.

Level fill color

The color of the bar or pointer.

Selecting the Display Options for an Indicator Object


Display as option

Description

Bar

A colored bar of variable height within the object


indicates the relative value.

Pointer

A colored pointer moves up and down within the object


to indicate the relative value.

Pushbutton Object

Figure 3.13 Details Tab for a Pushbutton Object

62

R400

plntdspb.book Page 63 Monday, May 28, 2001 8:57 AM

Details Tab

Property

Description

Label

The pushbuttons label.

Action

The action performed when a user clicks the


pushbutton. See Defining a Pushbuttons Action on
page 63.

Details

Defining a Pushbuttons Action


Select this action:

To do this:

Callup Page

Call up the specified display or Web page.


If you specify a Web page, you must ensure that it does
not conflict with the Web access restrictions specified in
Station. For details, see the Configuration Guide.

Request Report

Request the specified report.

Request Task

Perform the task associated with the specified task LRN.


In addition to specifying a task LRN, you must also
specify:
Appropriate values for the task parameters
The security level required to perform the task
For information about standard LRNs, see the
Configuration Guide.

Menu Tag

Perform the menu command selected from the list of


menu commands.

Launch Application

Launch the specified application. Either type the


applications name in Application, or click the button
opposite to navigate through the folder structure and
find the executable.

PlantScape Display Building Guide

63

plntdspb.book Page 64 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

SafeBrowse Object

Figure 3.14 Details Tab for a SafeBrowse Object

Property

Description

URL

The URL (Uniform Resource Locator) of the document


that is displayed in the browser object. See Using
SafeBrowse on page 32.

Scrollbar Object
For an introduction to scrollbars, see Understanding Scrollbars on page 65.

64

R400

plntdspb.book Page 65 Monday, May 28, 2001 8:57 AM

Details Tab

Figure 3.15 Details Tab for a Scrollbar Object

Property

Description

Minimum, Maximum, Range


visible and File number

These parameters specify the range and other


characteristics of the scrollbar. See Defining the
Scrollbar Range on page 68.

Minimum at bottom/right

Specifies which end of the scrollbar represents the


minimum value. If you leave this property unchecked,
the minimum value is at the top or left end, depending
on the scrollbars orientation.

Understanding Scrollbars
Scrollbars can control:

A value in the server database. For example, you could use a scrollbar to
control the value of a setpoint.

A value in a script.

An offset to a record or field for the display. Used in this way, the scrollbar
controls any other display objects that use the offset.

PlantScape Display Building Guide

65

plntdspb.book Page 66 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Using a Scrollbar to Set a Value


The following figure shows how to use a scrollbar to set a value in the server
database (or in a script). When a user moves the slider up or down, the value
varies accordingly between the minimum and maximum values.

Maximum value

Sets the value

Minimum value
Figure 3.16 Setting the Value with a Scrollbar

Using a Scrollbar to Control the Offset


The following figure shows how to use a scrollbar to display the contents of
records in a large file. The alphanumerics are configured so they display five
adjacent records. (In practice, you would create one alphanumeric, and use the
Repeat function to create the clones and specify their relative offsets.)
When a user moves the slider up or down, the display offset changes and the
contents of the alphanumerics change accordingly. In this example, the
alphanumerics display the values of records 3443 to 3446.

66

R400

plntdspb.book Page 67 Monday, May 28, 2001 8:57 AM

Details Tab

Relative offset
Records

Alphanumerics

9434.53

+1

84535.55

+2

4249.84

+3

234.07

3441 1027.05
3442
3443

1324234.98
9434.53

3444

84535.55

3445

4249.84

3446

234.07

3447

83449.23

3448

7559.45

Figure 3.17 Controlling the Offset with a Scrollbar

Selecting the Control Option


The value you select from Type of database link on the Data tab determines
what the scrollbar controls.
Value

Description

Record Offset

Controls the current record offset for the display. See


Using a Scrollbar to Control the Offset on page 66.
When a user moves the slider, the current record offset
changes. This affects any other objects in the display for
which Indexed by record offset is selected on
the Data tabsee Defining a Link to a Database File
on page 50.

Field Offset

Controls the current field offset for the display. See


Using a Scrollbar to Control the Offset on page 66.
When a user moves the slider, the current field offset
changes This affects any other objects in the display for
which Indexed by field offset is selected on the
Data tabsee Defining a Link to a Database File on
page 50.

PlantScape Display Building Guide

67

plntdspb.book Page 68 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Value

Description

Database File or

Controls a value in the database. See Using a Scrollbar


to Set a Value on page 66.

Point/Parameter

Defining the Scrollbar Range


The Range properties specify the scrollbars range and other scrolling
characteristics.
Item

Description

Minimum

The minimum value that the scrollbar can scroll to.


If you select Point/Parameter or Database file
from Type of database link on the Data tab, this
property is ignored and the minimum database value is
used.

Maximum

The maximum value that the scrollbar can scroll to.


If you select Record Offset or Field Offset from
Type of database link on the Data tab, and want to
access all records or fields, set the value to 0. If you
select Point/Parameter or Database file, this
property is ignored and the maximum database value is
used.

68

Range visible

Controls the relative width of the slider, with respect to


the total length of the scrollbar. For example, if you set
Maximum to 100, Minimum to 0, and Range visible
to 20, the slider will be one fifth the length of the
scrollbar.

File number

Only applicable if you select Record Offset or


Field Offset from Type of database link on the
Data tab. Specifies the file whose record or field the
scrollbar is offsetting.

R400

plntdspb.book Page 69 Monday, May 28, 2001 8:57 AM

Details Tab

Text Object

Figure 3.18 Details Tab for a Text Object

Property

Description

Label

The text that appears in the display.

PlantScape Display Building Guide

69

plntdspb.book Page 70 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Font Tab
The font tab controls the appearance of the objects text, such as the font and
point size.

Figure 3.19 Font Tab

70

Property

Description

Font

Text is displayed in the selected font. Note that you


should select fonts with care, and only use fonts that are
suitable for computer displays.

Size

The text size, expressed in points.

Style

The text style, such as italics.

Justify

The horizontal alignment of text within the object.

Effects

Strikeout draws a line through the text and Underline


draws a line under it.

R400

plntdspb.book Page 71 Monday, May 28, 2001 8:57 AM

General Tab

General Tab
The General tab controls the objects position and size.

Figure 3.20 General Tab

Property

Description

Name

The objects name. You use this name when referring to


the object in scripts.

Position

The objects position and size, expressed in logical


units. (For a description of logical units, see
Understanding Coordinates on page 205).

Rotation

Angle indicates the clockwise angle through which the


object has been rotated.
The Center properties indicate the logical coordinates
of the point about which the object has been rotated.

Visible

Indicates that the object is visible in Station.


Note that you can use an invisible object as a
placeholder for information, so that it can be accessed
by scripts.

PlantScape Display Building Guide

71

plntdspb.book Page 72 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Property

Description

Tab stop

Allows users to select the object by pressing <Tab>.


If you enable Tab stop for several objects in a display,
the tabbing order progresses from left-to-right and
top-to-bottom.

72

R400

plntdspb.book Page 73 Monday, May 28, 2001 8:57 AM

Options Tab

Options Tab
The Options tab is only applicable to a chart object, and controls its major
characteristics, such as its type (line, pie, etc.) and the rate at which it plots new
values.

Figure 3.21 Options Tab for a Chart Object

Property

Description

Chart type

The type of chartsee Selecting the Type of Chart on


page 74.

Axis

Specifies the colors used for the legend text and its
background.

History type

The interval between samples.

Samples

The number of samples you want to display, between 1


and 1000. The default is 61. Note that the larger the
number of samples, the heavier the load on the server
and the longer the time required to update the chart.

Units

Specifies whether samples are displayed as percentage


values or as engineering units.

PlantScape Display Building Guide

73

plntdspb.book Page 74 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Selecting the Type of Chart


Display As option

Description

Bar trend

Displays successive values of one point as a bar chart.

Line trend

Displays the values of up to eight points as lines.

Numeric trend

Displays the values of up to eight points as numbers.


Type the number of decimals you want to display in
Decimals, and the required number of columns in
Columns.

Tuning trend

Displays a line trend of a points real-time values, and


its SP and OP parameters.

Pie chart

Displays the values of up to eight points as segments of


a pie chart.

X-Y plot

Plots the successive values of one point against another.


If you select this option, the X-Y plot tab appears. See
XY Plot Tab on page 78.

Custom X-Y plot

Displays up to two custom plots that are generated by


a user-written application, instead of point values.
If you select this option, the Custom X-Y tab appears.
See Custom XY Tab on page 48.

74

R400

plntdspb.book Page 75 Monday, May 28, 2001 8:57 AM

Repeats Tab

Repeats Tab
The Repeat tab reduces the amount of work required when creating repetitive
displays. For example, if you wanted to create a list of point values, you would
create only one alphanumeric object and use the Repeat tab to create all the other
objects. You can also specify the relative position of each repeated object, as well
as the relative address of each point.
Note

Repeated objects are created as a group.

Figure 3.22 Repeats Tab

Property

Description

Number

The number of objects you want.

Orientation

Determines whether repeated objects appear either


below or to the right of the original object.

Spacing

The inter-object spacing, expressed in logical units. (For


a description of logical units, see Understanding
Coordinates on page 205.)

PlantScape Display Building Guide

75

plntdspb.book Page 76 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Property

Description

Increment

The increment option:


Point ID. Increments the point ID, starting from the
ID specified in the original display object.
Parameter. Increments the point parameter for the
point ID specified in the original display object.
History offset. Increments the history offset. Only
applicable to history parameters.
Value. Only applicable for alphanumerics. Used to
create a sequence of numbers. See Repeating a
Numeric Value on page 76.
File, Record and Field. Only applicable if the
original display object is linked to a user file. Increments
the specified option. For example, the Record option,
increments the record number.
Parameter 1 to Parameter 4. Only applicable for
pushbuttons. Specifies which task request parameter is
incremented.

Repeating a Numeric Value


You can create a sequence of numbers (1, 2, 3 and so on) using repeated
alphanumerics. Each repeated alphanumeric shows the displays current offset,
plus its sequence number.
This technique is typically used, in conjunction with a scrollbar, to show the
record numbers of a table. In the following figure, the first column of repeated
alphanumerics shows the record number and the next column of repeated
alphanumerics shows the contents of the corresponding records.

76

R400

plntdspb.book Page 77 Monday, May 28, 2001 8:57 AM

Repeats Tab

Figure 3.23 Using a Scrollbar to Control a List


To create the alphanumerics for this example:
1
Create the original alphanumeric.
2
Open the Properties window and click the Data tab.
3
Set the properties as follows.

4
5
6

Property

Value

Type of database link

Database file

File

Record

1 and Indexed by Station no.

Word

253

Format

Integer 4

Click the Repeats tab.


Select Value from Increment.
Set the remaining repeat properties as required.

PlantScape Display Building Guide

77

plntdspb.book Page 78 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

XY Plot Tab
The X-Y Plot tab only appears when you select X-Y Plot from Chart type on the
Options tab.

Figure 3.24 Options Tab for a Chart Object

Property

Description

Range

The minimum and maximum percentage values of the


X and Y axes.

Marker

The type of marker used in the graph:


Circles mark successive plot values.
Line draws vertical and horizontal lines that
intersect at the current plot value.
Graph draws a line.

Use historical data

78

R400

Only applicable if you select the Graph option from


Marker. Specifies whether to use historical data, or only
to plot new samples while the chart is displayed.

plntdspb.book Page 79 Monday, May 28, 2001 8:57 AM

Understanding Acronyms

Understanding Acronyms
Acronyms are text strings that represent the states or integer values of a point
parameter. When creating displays, you should use acronyms as often as
possiblefrom a users point of view, terms such as Stopped and Running are
much more meaningful than abstract values such as 0 and 1.
Station is supplied with a default acronym file that contains acronyms suitable for
most purposes. Acronyms in this file are divided into two ranges:

System. These are supplied with PlantScape, and include commonly


required acronyms. System acronyms are stored in records 1 to 2048.

User. These records are initially blank, so that you can define your own
acronyms as required. User acronyms are stored in records 2881 to 3880.
Note You define user acronyms in Station (by selecting Configure
Acronyms User from the menu).
The following figure shows how acronyms are stored in the default acronym file.
Related acronyms are stored as contiguous records in the order corresponding to
the parameter values. For example, Closed (record 3342) represents 0, and
Open (record 3343) represents 1.
To select a set of acronyms, you specify the starting record, as well as the number
of records you require. For example, if you wanted to use Stopped, Slow,
Medium and Fast, you would set the starting record to 3444 and the number of
records to 4.

3441

...

3442

Closed

3443

Open

3444

Stopped

3445

Slow

3446

Medium

3447

Fast

3448

...

Figure 3.25 Storing Related Acronyms in Contiguous Records

PlantScape Display Building Guide

79

plntdspb.book Page 80 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

If the default acronym file is not sufficient for your needs, create your own
acronym filessee Using Custom Acronyms on page 80.

Selecting Default Acronyms


To select a set of default acronyms:
1
Select Acronym in Display as and Default file in Source.
2
Specify the appropriate value for each property.

Figure 3.26 Selecting Default Acronyms

Property

Description

Start at acronym

The record that contains the first acronym.


System acronyms are stored in records 1 to 2048, and
user-defined acronyms are stored in records 2881 to
3880.

Number of acronyms

The number of acronyms you want to use.

Preview

If you are on the server, and you press <Tab>, the


selected acronyms appear in this box.

Using Custom Acronyms


If the default acronym file is inadequate for your needs, create your own custom
acronym files. The main advantage of a custom acronym file is that you can
define acronyms that are more than 10 characters long.

80

R400

plntdspb.book Page 81 Monday, May 28, 2001 8:57 AM

Understanding Acronyms

Creating and using a custom acronym file is a complex process that involves the
following tasks.
Task:

Go to:

Create a custom acronym file with the correct size and format.

page 81

Create a Custom Acronyms display. (Functionally, this display is identical


to the standard acronym displays used to manage the system/user
acronyms in the default acronym file.)

page 81

Add the Custom Acronym display to Stations Acronyms menu

page 82

Define the acronyms, in Station, using the display

page 82

Assign custom acronyms to display objects

page 82

Creating a Custom Acronym File


You use the command-line utility utbbld, to create custom acronym files. For
details, see the Application Development Guide.
For example, if you wanted to create a file that can hold 1000 acronyms, with a
20-character limit, you would specify a file with 1000 records and 10 words per
record. (Each 16-bit word holds 2 characters.)

Creating a Custom Acronym Display


You must create one or more custom acronym displays that are functionally
identical to the standard acronym displays. (Note that each tab on the standard
acronyms display is actually a separate display, with its own filename.)
Tip

The easiest solution is to copy a standard acronym display (such as sys154.dsp)


and modify it as required.
To create a custom acronym display:
1
Open a standard acronym display.
2
Select File Save As and specify a suitable filename.
3
Modify the layout as appropriate. For example, change the title and increase
the width of the alphanumerics that are used for entering acronyms.

Tip

If your acronyms are up to 20 characters long, you must halve the number of
columns in the original display.
4
Click the first alphanumeric and open the Properties window.
5
Click the Data tab.

PlantScape Display Building Guide

81

plntdspb.book Page 82 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

Figure 3.27 Acronym Dialog Box

6
7
8

Type the file number of the custom acronym file in File.


Specify the values, in accordance with the structure of the file.
Click the Details tab and type the maximum acronym length in Number of
characters displayed.

Adding the Custom Acronym Display to the Station Menu


When you have created the custom acronym display(s), you need to make them
easily accessible in Station by adding it to the Acronym menu. For information on
configuring Station menus, see the Configuration Guide.

Defining Acronyms in a Custom File


Having added the custom acronym display(s) to Stations Acronym menu, you
define custom acronyms in the same way as you define acronyms in the default
file.

Selecting Custom Acronyms


To select a set of default acronyms:
1
Select Acronym in Display as and User file in Source.
2
Specify the appropriate value for each property.

82

R400

plntdspb.book Page 83 Monday, May 28, 2001 8:57 AM

Understanding Acronyms

Figure 3.28 Selecting Custom Acronyms

Property

Description

File

The file that contains the custom acronyms.

Start at record

The record that contains the first acronym.

Number of acronyms

The number of acronyms you want to use.

Start at word

The word that contains the first acronym.

Length of acronyms

The length of the acronyms.

Location

Specifies how the acronyms are stored within the file:


Consecutive records
Single record, where the acronyms are stored
in consecutive words with the same record.

Preview

If you are on the server, and you press <Tab>, the


selected acronyms appear in this box.

PlantScape Display Building Guide

83

plntdspb.book Page 84 Monday, May 28, 2001 8:57 AM

3 Defining Display Object Properties

84

R400

plntdspb.book Page 85 Monday, May 28, 2001 8:57 AM

Defining Display and Shape File


Properties
This chapter describes display and shape file properties, which you access
through the Properties window (described in Using the Properties Window on
page 24).
Note If the Properties window is not open, select File Properties. If
the Properties window is open, but one or more objects is selected, select
Edit Deselect All.
For details about this tab:

Go to:

General tab for a display

page 86

Keys tab for a display

page 88

Callup Task tab for a display

page 89

Periodic Task tab for a display

page 90

Help tab for a display

page 92

General tab for a shape file

page 95

PlantScape Display Building Guide

85

plntdspb.book Page 86 Monday, May 28, 2001 8:57 AM

4 Defining Display and Shape File Properties

General Tab for a Display

Figure 4.1 General Tab for a Display

Property

Description

Title

The displays title that appears in the Station Title Bar


(and in the Display Summary page if it is a numbered
display).

Type

Specifies the displays type. Select Standard, the


default, unless you are creating a special-purpose
display.
Select Point Detail if you are creating a point detail
display for a new type of point. See Point Detail
Displays on page 242.
The other display types are generally only used by
Honeywell staff.

86

Description

Any notes or comments about the display.

Allow callup for

Only applicable if areas have been defined for your


system. Specifies which areas can call up the display.
See Restricting Page Callup on page 87.

R400

plntdspb.book Page 87 Monday, May 28, 2001 8:57 AM

General Tab for a Display

Property

Description

Refresh rate

By default, Station updates all displays at a standard


rate, typically once every five seconds. This option
allows you to specify a slower rate for the display. (If
the display is particularly complex, slowing the refresh
rate will reduce the load on the system.)

Previous display idle timeout

Station displays the previous display if there has been


no user activity for the specified period.

Numbered display

Used to create a numbered display. The reasons for


creating a numbered display are described in Named
Versus Numbered Displays on page 39.
If you select Numbered display, you type the page
number opposite.

Restricting Page Callup


This topic is only applicable if areas have been defined for your system. For
details about areas, see Configuration Guide.
Callup option

Description

All areas

The default selection, which does not restrict access to


the display.

Only area

Restricts access to the specified area.

Only area defined by

Restricts access to the area specified by the file/word


combination. (In general, these fields are used only by
Honeywell.)

File
Word

PlantScape Display Building Guide

87

plntdspb.book Page 88 Monday, May 28, 2001 8:57 AM

4 Defining Display and Shape File Properties

Keys Tab for a Display


You can assign a range of common commands to the <Page Up>, <Page Down>
keys, as well as the softkeys. (A softkey is a function key whose action is defined
for each page rather than being fixed for the Station. For details about configuring
softkeys, see the Configuration Guide.)

Figure 4.2 Keys Tab for a Display

Property

Description

Key

A key and the associated action it performs when


pressed.

Action

To assign an action to a key, select the key from the list


and then the action. Repeat for each key as required.
Enable application control
keys

88

R400

Not applicable to PlantScape.

plntdspb.book Page 89 Monday, May 28, 2001 8:57 AM

Callup Task Tab for a Display

Callup Task Tab for a Display


The Callup Task tab specifies the task that is performed whenever the display is
called up. (A task is any of the standard server programs or an application
program.)
For details about standard server programs, see the Configuration Guide. For
details about application programs, see the Application Development Guide.

Figure 4.3 Task Tab for a Display

Property

Description

Request task on page callup

Select this checkbox to specify a callup task.

Details

The task details, including its LRN (task identifier),


parameters and the security level required to perform
the task.
If you select Add station number offset to LRN, a
separate task is performed on each Station. (The
number of the task performed on a particular station is
equal to the sum of the specified LRN and the Stations
number.)

PlantScape Display Building Guide

89

plntdspb.book Page 90 Monday, May 28, 2001 8:57 AM

4 Defining Display and Shape File Properties

Periodic Task Tab for a Display


The Periodic Task tab specifies the task that is performed at regular intervals
while the display is visible. (A task is any of the standard server programs or an
application program.)
For details about standard server programs, see the Configuration Guide. For
details about application programs, see the Application Development Guide.

Figure 4.4 Periodic Task Tab for a Display

Property

Description

Request task periodically

Select this checkbox to specify a periodic task.

Details

The task details, including its LRN (task identifier),


parameters and the security level required to perform
the task.
If you select Add station number offset to LRN, a
separate task is performed on each Station. (The
number of the task performed on a particular station is
equal to the sum of the specified LRN and the Stations
number.)

90

R400

plntdspb.book Page 91 Monday, May 28, 2001 8:57 AM

Periodic Task Tab for a Display

Property

Description

Request every

The request interval, specified in display update


intervals. (By default, Station updates all displays at the
same rate, typically every five seconds. However, you
can specify a longer interval in Refresh rate on the
General tab.)

PlantScape Display Building Guide

91

plntdspb.book Page 92 Monday, May 28, 2001 8:57 AM

4 Defining Display and Shape File Properties

Help Tab for a Display


The Help tab specifies the help associated with the display. Station users can call
up the help by pressing the help key or selecting a menu item. (Each Station must
be configured so that users can assess the help. For details, see the Configuration
Guide.
The help can be either:

A topic within a HTML Help file (which has a chm extension)see


Assigning a HTML Help Topic on page 92

A document, such as a HTML file or a Microsoft Word documentsee


Assigning a Document on page 93

Assigning a HTML Help Topic


If you have a HTML Help file (*.chm), you assign one of its topics to a display by
specifying either its number or internal filename.
(You can create HTML Help using a variety of help authoring tools, including
Microsoft HTML Help Workshop, which you can download from Microsofts Web
site.)

Figure 4.5 Help Tab for a DisplaySpecifying a HTML Help Topic by its Number

92

R400

plntdspb.book Page 93 Monday, May 28, 2001 8:57 AM

Help Tab for a Display

Property

Description

Help file name

The HTML Help filename, including its chm extension.


If the file is not in one of Stations display folders, you
must include the full pathname.

Help file type

Automatically set to HTML Help when you specify the


filenames chm extension.

Help Topic

The help topic associated with the display.


To specify the topics internal filename, set
Locate topic by to Topic file and specify the
filename of the topic in Topic file.
To specify the topics number, set Locate topic by to
Topic number and specify the number in
Topic number.

Assigning a Document
You can assign any document, such as a HTML file or Microsoft Word document.

Figure 4.6 Help Tab for a DisplaySpecifying a Document other than a HTML Help file

PlantScape Display Building Guide

93

plntdspb.book Page 94 Monday, May 28, 2001 8:57 AM

4 Defining Display and Shape File Properties

Property

Description

Help file name

The filename of the document, including its extension.


If the file is not in one of Stations display folders, you
must include the full pathname.

Help file type

94

R400

Automatically set to Document if its extension is not


chm.

plntdspb.book Page 95 Monday, May 28, 2001 8:57 AM

General Tab for a Shape File

General Tab for a Shape File


Note Some properties are specific to a particular type of shape. For
example, Use first shape for bad value is only applicable to a shape
sequence.

Figure 4.7 General Tab for a Shape File

Property

Description

Title

The title of the shape file.

Description

Any notes or comments about the shape.

Numbered shape

Not applicable to PlantScape.

Use first shape for bad value

Only applicable to a shape sequence. If selected, Station


displays the first shape if the associated point no longer
exists.

PlantScape Display Building Guide

95

plntdspb.book Page 96 Monday, May 28, 2001 8:57 AM

4 Defining Display and Shape File Properties

96

R400

plntdspb.book Page 97 Monday, May 28, 2001 8:57 AM

Writing Scripts
The main emphasis of this chapter is to describe how to enhance the functionality
of your displays with scriptsa script is a mini-program that performs a specific
task.
However, this chapter also contains information that has implications beyond
display-based scripts.
This chapter:

Describes the Station Automation object model, which you need to


understand when writing scripts

Introduces you to scripting, with emphasis on writing display-based scripts

Describes how to use the Script Window

Includes a detailed reference to the Station Automation object model

Provides examples that show the power of scripts

PlantScape Display Building Guide

97

plntdspb.book Page 98 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Understanding the Station Automation Object Model


Before writing any scripts, you need to become familiar with the Station
Automation object model. This model provides the interface through which
scripts control Station and its displays.
From a practical point of view, think of the model as consisting of two parts: the
first part represents the higher level aspects of Station, whereas the second part
represents the current display and its display objects.

Understanding the First Part of the Model


The following figure shows the first part of the model.

AppWindow

Application (Station)

Dictionary

Page

Figure 5.1 The First Part of the Object Model

This part of the model is hierarchical and consists of four objects:

Application, which is the root object in the hierarchy. It represents Station


itself, as well as the Menu, Toolbar, Message Zone and Command Zone.

AppWindow, which represents Stations main window, including its size,


position and state.

Dictionary, which is a collection of named values that scripts can share as


required.

Page, which represents the current display. Because of the complexity and
importance of displays, the Page object is, in effect, the second part of the
object model.

98

R400

plntdspb.book Page 99 Monday, May 28, 2001 8:57 AM

Understanding the Station Automation Object Model

Understanding the Page Model


The second part of the model represents the current display. If you are interested
only in writing scripts for displays, you need to concentrate on the Page model.
(In practice, you can often ignore the first part.)

Objects collection

Display Object #1

Page
Display Object #n

Figure 5.2 The Page Model


The Page model includes the Display objects, each of which represents an
individual display object, such as a rectangle, alphanumeric or pushbutton.
The Page model also includes the Objects collection, which contains the top-level
display objects on the page. (Note that each group and shapelink has its own
Objects collection, consisting of the display objects that make up the group or
shapelink.)

Understanding Objects
Think of an object as a convenient way of interacting with a particular part of
Station, or one of its displays. When writing scripts, you need to become familiar
with three object-related terms:

Properties, which are the objects attributes or characteristics. A display


object, for example, has properties such as FillColor, Height and Width.
Consequently, you change the color of a display object by changing the
value of its FillColor property.

Methods, equivalent to the terms function or command, which are


applicable to the object. For example, the Page object has a Redraw
method, which redraws the current display.

PlantScape Display Building Guide

99

plntdspb.book Page 100 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

100

R400

Events, such as alarms and user actions, which are applicable to the object.
A display object, for example, has events such as OnClick (which occurs
when a user clicks the object) and OnLoad (occurs when the object is first
loaded).

plntdspb.book Page 101 Monday, May 28, 2001 8:57 AM

Understanding Scripts

Understanding Scripts
This section introduces you to the various features and rules that are applicable to
writing scripts.
You write scripts in VBScript, a popular scripting language, which does not
require extensive programming skills and is easy to use.
Note Select Help VBScript Reference to display the VBScript
Language Reference, which is installed with Display Builder.

Events and Event Handlers


Scripts are event-driven, which means that a script only runs when the controlling
event occurs. In the case of a display, you can write event-driven scripts for the
display itself (that is, the Page object) as well as each of its display objects.
The following example shows the structure of a typical event handler that runs
when a user clicks a display object called Pump2. (The click generates an
OnClick event.)
Sub Pump2_OnClick()
MsgBox "This is the backup pump"
End Sub

Tip

All event names have an On prefix, as in OnClick and OnLoad. In addition, an


event handler for particular object is prefixed with the objects name, as in
Pump2_OnClick.

Validating Events
Event handlers are called before the events are processed. This means that you
can use scripts to verify whether an event should proceed, canceling it if
necessary. The following example compares the user-entered value with the limit
and cancels the change if the value is greater than the limit.
Sub Alphanum1_OnChange(vNewValue)
tempvalue = CInt(vNewValue)
If tempvalue > Limit Then
MsgBox "Value must be below " & CStr(Limit) & "."
CancelChange()
End If
End Sub

PlantScape Display Building Guide

101

plntdspb.book Page 102 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Using General Scripts


Although most scripts are attached to events, the Application and Page objects
can have general scripts, which are not attached to any particular object. General
scripts are typically used for declaring variables and for storing general-purpose
sub-routines. Note that general scripts are used by event handlers; they are not
executed by themselves.

Referencing Objects, Properties and Methods


This section describes the rules and conventions applicable to referencing
objects, properties and methods.

Referencing the Attached Object


A script attached to a particular object is considered to be within the scope of
that object. This means the script can access the objects properties and methods
directly without having to specify the objects name.
For example, in a script attached to Rectangle1 you could set its FillColor
property as follows:
FillColor = vbRed

Similarly, in a script attached to Alphanum2 you could clear its value using its
Clear method as follows:
Clear()

Referencing Other Objects


However in scripts attached to other objects, you have to use:
Rectangle1.FillColor = vbRed
Alphanum2.Clear()

Referencing Objects within Groups and Shapes


Objects can only be referenced within groups or shapelinks via the containing
objects collection. For example, if Rectangle1 is part of Group1, you would
reference it as:
Group1.Objects.Item("Rectangle1")

Or, because Item is the default method for the Objects collection, as:
Group1.Objects("Rectangle1")

102

R400

plntdspb.book Page 103 Monday, May 28, 2001 8:57 AM

Understanding Scripts

Referencing an Object by Number


In addition to referencing an object by name, it can also be referenced object by
its sequence number within the collection. This is especially useful when dealing
with shapelinks, which are generally used in a sequential manner. The following
example shows how you could access the third object in the collection for
Shapelink4:
Shapelink4.Objects(3)

Obtaining the Number of Objects in a Group or Shapelink


When working with groups and shapelinks, you may need to find out the
number of objects in the group or shapelink. (You need the count if, for example,
you want your script to step through the shapes.) The following example shows
how to obtain the count.
Count = Shapelink4.Objects.Count

Using Methods Belonging to Other Objects


In general, a method can only be used with the objects to which it belongs.
However, some Application methods, such as Blue (which returns the blue
component of an RGB color value), can be used with other objects. When using
such methods with other objects, you must add the Application. prefix to the
method.
The following example shows how you could use the Blue method to obtain the
blue component of the FillColor of Rect3:
BlueValue = Application.Blue(Rect3.FillColor)

Referencing the Application Object


The Application object can be referenced directly in any script regardless of the
object to which the script is attached. The following example shows how any
script would obtain the value of the Applications CurrentPage property (the
name of the current display):
DisplayName = Application.CurrentPage

Referencing Objects Within a Display


Within a display, the Page object and its top-level display objects can be
referenced directly from any script attached to the Page or any of its display
objects.

PlantScape Display Building Guide

103

plntdspb.book Page 104 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Visibility of General Scripts


The General script attached to the current display is visible to all scripts
attached to the Page object and its display objects. However, it is not visible to
scripts attached to the Application object or other displays (ones not currently
displayed).
The General script attached to the Application object is visible to all scripts
attached to the Application object, but it is not visible to the Page object or its
display objects.

Using the Dictionary


The Dictionary object provides a communications link between scripts that
need to pass or share data. You would use the Dictionary, for example, if you
wanted to use a particular variable in several displays.
The following line creates a variable called Position and sets its value to 12:
Application.Dictionary.Add "Position", 12

Any script can access the value as follows:


Box2.Left = Application.Dictionary.Item("Position").Value

Writing Scripts for Shapes and Shapelinks


You can write scripts for shapes (display objects within shape files), and for
shapelinks (display objects that link shapes into displays). However, the
following special rules apply to such scripts:

Events are only passed to the current shape (the one that is currently visible
in the display).

Shapes do not have OnClick and OnDoubleClick events. Other than that,
they have the same events as a display object of the same type. For
example, if you create a Pushbutton in a display, it will have an OnClick
event; however, if you create a Pushbutton in a shape file, it will not have
that event.

OnClick and OnDoubleClick events are passed to the shapelink. This means
that if you want to write scripts for these two events, you must add them to
the display file rather than in the shape file.

A shape file cannot have any General script.

104

R400

plntdspb.book Page 105 Monday, May 28, 2001 8:57 AM

Understanding Scripts

Referencing Shapelinks and Shapes


You reference a shape in a similar manner to an object within a group. For
example, if the shape is called Rectangle2, and it is linked to the display
through shapelink1, you would reference the shape as follows:
Shapelink1.Objects.Item("Rectangle2")

Or, because Item is the default method for Objects, as:


Shapelink1.Objects("Rectangle2")

You use the shapelinks Value property to set the current shape. For example, to
select the second shape:
Shapelink1.Value = 2

Note

Shapes are transient and only exist while they are displayed.

Event Handling in Groups and Shapes


User-generated events are directed toward any appropriate object within the
group or shape. For example, if a group contains a pushbutton and the user
clicks the pushbutton, the event is directed to the pushbutton and not to the
group containing it.
If an object does not have an appropriate event handler, the event is passed up to
the containing group or shapelink (recursively if necessary).

Using Timers
Timers provide a convenient mechanism for running scripts at regular intervals.
For example, to move a display object across the display, you would:
1
Create a timer for the display object using the objects CreateTimer method.
(A timer interval of about 250ms would be suitable.)
2
Write an OnTimer event for the object which moves the object a small
distance (to the left or right) each time the timer generates a timer event.
Note Timers with intervals of less than 100ms are not recommended for
performance reasons.

Periodic Update Events


The Application, Page and display objects each have default timers in the form
of OnPeriodicUpdate events. These events are generated each time the system
time in Stations Status Line is updated by the server. The frequency of these
events is determined by Stations setup.

PlantScape Display Building Guide

105

plntdspb.book Page 106 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Using the Script Window


You use the Script window to write scripts. Like the Properties window, the Script
window is modeless, which means that your script is saved to memory as soon as
you select another object or event. (Your changes are only saved to disk when
you save the display.)

Figure 5.3 The Script Editor Window

Writing Scripts for Displays and Shape files


Display-based scripts are stored in the display file. You write these scripts in
Display Builder itself.
To write a script for the display or any of its display objects:
1
Open the Script window by clicking Script Window on the View toolbar.
2
Select an object from the Object list. This lists every display object in the
display, as well as Page (the display itself) and General (for general purpose
scripts).

106

R400

plntdspb.book Page 107 Monday, May 28, 2001 8:57 AM

Using the Script Window

4
5

Select the event you want to trigger your script from the Event list. This list
only contains events applicable to the type of object you have selected.
(Note however, if you select a display object, some of the events may not be
applicable to that particular type of display object. For example, the
OnBeginNavigate event is not applicable if you select a rectangle.)
A skeleton event handler appears in the Script window. Click below the Sub
statement and start writing your script for that event.
Repeat steps 2 to 4 if you want to write scripts for other combinations of
object and event.

Notes

Objects that already have scripts are shown in bold in the Object list.
Similarly, events that contain scripts for the selected object are shown in
bold in the Event list.

The Script window supports the Cut (<Ctrl>+<X>), Copy (<Ctrl>+<C>) and
Paste (<Ctrl>+<V>) functions.

Changes to scripts are added to the display file when you select another
object or event; however, they are only saved to disk when you save the
display file.

The syntax of your script is checked when you select another object or
event. Any syntax errors are displayed via a message box.

You can change the font by right-clicking in the Script window and selecting
Font from the floating menu.

Writing Scripts for Station


You write scripts for Station (that is, scripts associated with the Application
object) in essentially the same way as you write them for a display. However,
because Station-based scripts are stored in a separate file, you edit them from
within Station.
Note A Station can have several script files. However, only one file at a
time is active: the one listed in the Location field of the Station Setup dialog
box.
To write/edit scripts for Station:
1
Start Station in the normal manner.
2
Select Station Setup to open the Station Setup dialog box.
3
If the script file you want to edit is not shown in the Location field, click
to open the Select Application Script file dialog box. Select the script file
you want and then click Open.
4
Click Edit Script to open the Script window.

PlantScape Display Building Guide

107

plntdspb.book Page 108 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

5
6
7

Select either Application or General from the Object field.


If you selected the Application object, select the event you want to trigger
your script from the drop-down list in the Event field.
A skeleton event handler appears in the Script window. Click below the Sub
statement and start writing your script.

Debugging Scripts
If you download and install the Microsofts Script Debugger from
http://msdn.microsoft.com/scripting/, you can debug faulty scripts
at run-time.
To debug your scripts, you must specify the debugscript parameter when
starting Station. The most convenient way of doing this is to create a shortcut and
type the following in the Target field:
station.exe -debugscript
Note Station timeouts are disabled when Station is running in debug
mode. See Clearing a Server Connection on page 109.
To debug your scripts:
1
Start Station in debug mode. The Script Debug Dialog appears, which
always remains on top.

Figure 5.4 The Script Debug Dialog Box

108

R400

Click Start Script Debugger to start the debugger.


The debuggers help describes how to use it, and how to debug your
scripts.
If you need to terminate a script, click the appropriate button:

Stop Application Scripts stops all Application (Station) scripts. To


re-enable Application scripting, select File Setup to open the
Station Setup dialog box and then click OK. (This restarts the scripting
engine, the application that executes your scripts.)

plntdspb.book Page 109 Monday, May 28, 2001 8:57 AM

Using the Script Window

Stop Page Scripts stops scripts for the current display and its display
objects. To re-enable Page scripting, either refresh the display or select
another display.

Clearing a Server Connection


If a Station terminates abnormally while the Script Debugger is running, the
server connection will never timeoutthat is it will be held open indefinitely.
You must clear the server connection by typing the following at a command
prompt on the server:
dt n
ct n 8 -efn dsply
Where n = 20 + the Station connection number that you want to restart.
For example, if the Station connection is 1, you would type:
dt 21
ct 21 8 -efn dsply

PlantScape Display Building Guide

109

plntdspb.book Page 110 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Understanding the Possibilities of Automation


Apart from making scripting possible, the Station Automation object model also
allows other applications to control Station. Other applications interact with a
Station object in the same way as does a script; that is, by using the objects
properties, methods and events.
Conversely, because many other applications, such as Microsoft Excel, also have
Automation object models, you can control them via Station scripts. For example,
you could use the sophisticated charting features of Excel to display system
information in manner that is not possible using only Station.
Getting two programs to interact requires considerable programming skills that
are beyond the scope of this guide. However, the two examples, Controlling
Station from Another Application on page 209 and Controlling Another
Application from Station on page 209 give an idea of what is possible.

110

R400

plntdspb.book Page 111 Monday, May 28, 2001 8:57 AM

Object Model Reference

Object Model Reference


This section describes each object, its properties, methods and events.
Topics are arranged as follows in this section:

The objects are listed first, in alphabetical order. The description for each
object includes the description of each of its properties. The objects
methods and events are listed at the end of the topic.

The methods are listed after the objects, in alphabetical order. The
description for each method lists the applicable objects and generally
provides at least one example of how the method is used.

The events are listed after the methods, in alphabetical order. The
description for each event lists the applicable objects and generally provides
at least one example of how the event is used.

PlantScape Display Building Guide

111

plntdspb.book Page 112 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Objects

112

R400

plntdspb.book Page 113 Monday, May 28, 2001 8:57 AM

Objects

Application Object
Description
The Application object is Stations root object. It represents Stations window,
Menu, Toolbar, Message Zone and Command Zone. All other objects in the object
hierarchy can be reached from the Application object.
Syntax
For scripts:
Application
When being addressed by other applications:
Station.Application
Note

The Application object cannot be referenced from within the general script
section.
Properties
Property

Description

AlarmZonePointID

Returns the ID of the current alarm point. (The


associated alarm appears in the Alarm Line.)

AlarmZonePointServerA
liasName

Returns the alias of the server on which the current


alarm point resides.

AlarmZonePointServerN
etworkName

Returns the basename of the server on which the


current alarm point resides.

Application

Returns the Application object.

AppWindow

Returns the AppWindow object.

AreSafeBrowseRightMou
seClicksAllowed

Returns True if right-clicking a SafeBrowse object is


allowed (that is, displays the shortcut menu). If not, it
returns False.

CommandZoneText

Sets, but does not execute, the command that appears


in the Command Zone. To execute the command, the
user must press <Enter>.

PlantScape Display Building Guide

113

plntdspb.book Page 114 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Property

Description

CurrentFieldOffset

Sets or returns the sequence number of the current field


in the current record/database. For example, a value
of 3 represents the third field in the record.
Used in conjunction with the CurrentRecordOffset and
CurrentFileOffset properties to uniquely identify a
particular field.

CurrentFileOffset

Sets or returns the sequence number of the current file


(in the set of files). For example, a value of 3 represents
the third file in the set.
Used in conjunction with the CurrentRecordOffset and
CurrentFieldOffset properties to uniquely identify a
particular field.

CurrentPage

Sets or returns the name of the current display. If set,


Station displays that display.

CurrentPointID

Returns the ID of the currently selected point.

CurrentPointServerAli
asName

Returns the alias of the server on which the currently


selected point resides.

CurrentPointServerNet
workName

Returns the basename of the server on which the


currently selected point resides.

CurrentRecordOffset

Sets or returns the sequence number of the current


record in the current file. For example, a value of 3
represents the third record.
Used in conjunction with the CurrentFieldOffset and
CurrentFileOffset to uniquely identify a particular field.

114

DetailPointID

Only applicable if the current display is a Point Detail


display. Returns the ID of the point whose details are
currently displayed.

DetailPointServerAlia
sName

Only applicable if the current display is a Point Detail


display. Returns the alias of the server on which the
point, whose details are currently displayed, resides.

DetailPointServerNetw
orkName

Only applicable if the current display is a Point Detail


display. Returns the base network name of the server on
which the point, whose details are currently displayed,
resides.

Dictionary

Returns the Dictionary collection.

R400

plntdspb.book Page 115 Monday, May 28, 2001 8:57 AM

Objects

Property

Description

EchoSafeBrowseMessage

If set to False, prevents a SafeBrowse object from


writing messages to the Message Zone. (Typical
messages include Web site found and
downloading.) If set to True (the default) Safe
Browse messages appear in the Message Zone.
The property is reset to True when another display is
called up or when a new document is loaded into the
SafeBrowse object.

MessageZoneText

Sets or returns the text that appears in the Stations


Message Zone.

OperatorID

Returns the ID of the current user.

Page

Returns the Page object.

PageBackgroundColor

Sets or returns the background color of the current


display. The colors are:
0 = Black
1 = Grey
2 = White
3 = Red
4 = Green
5 = Blue
6 = Cyan
7 = Magenta
8 = Yellow
9 = Default
Anything greater than 9 results in a black background
color.

Parent

Returns the Application object.

SecurityLevel

Returns the users security level. The values are:


0 = LVL1
1 = LVL2
2 = Operator
3 = Supervisor
4 = Engineer
5 = Manager

PlantScape Display Building Guide

115

plntdspb.book Page 116 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Property

Description

ServerName

Returns the name of the Server to which the Station is


connected.

StationNumber

Returns the Stations server connection number.

Methods

BeginCriticalSection Method

Blue Method

CancelOperatorCommand Method

CreateTimer Method

EndCriticalSection Method

ExecuteOperatorCommand Method

GetResponse Method

Green Method

InvokeMenu Method

KillTimer Method

MakeColor Method

Quit Method

Red Method

RequestServerLRN Method

Shell Method

Sleep Method

UserObjectNotify Method
Events

OnAlarm Event

OnAppStartup Event

OnConnect Event

OnDisconnect Event

OnMenu Event

OnOperatorChange Event

OnOperatorCommand Event

OnPageLoad Event

OnPeriodicUpdate Event

OnQuit Event

OnTimer Event

OnUserObjectNotify Event

116

R400

plntdspb.book Page 117 Monday, May 28, 2001 8:57 AM

Objects

AppWindow Object
Description
The AppWindow object represents the Station window, and contains the
properties that reflect the current state of the main window.
Syntax
Application.AppWindow
Properties
Property

Description

Application

Returns the Application object.

DisplayHWND

Returns the handle allocated by Windows to the


window that includes the display and its surrounding
border. (See Understanding Mouse Coordinates on
page 205.)

Height

Sets and returns the height of the Station window.


The range depends on Windows screen setting. For
example, if the setting is 1280x1024, the height can be
up to 1024.

HWND

Returns the handle allocated by Windows to the


Station window.

Left

Sets and returns the position of the left edge of the


Station window with reference to the left edge of the
screen.
The range depends on the Windows screen setting.

Parent

Returns the Application object.

Title

Returns the title that appears in the title bar of the


Station window.

Top

Sets and returns the position of the top of the Station


window with reference to the top of the screen.
The range depends on the Windows screen setting.

Width

Sets and returns the width of the Station window.


The range depends on the Windows screen setting. For
example, if the screen has a 1280x1024 resolution, the
width can be up to 1280.

PlantScape Display Building Guide

117

plntdspb.book Page 118 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Property

Description

WindowState

Sets and returns the state of the Station window. The


values are:
0 = Window is hidden (not visible). Note that this value
should be used with caution because a hidden Station
will not receive any user events, although it will
continue to receive server and timer events.
1 = Window is visible and can be sized by the user
2 = Window is minimized
3 = Window is maximized

Methods

DPToLPX and DPToLPY Methods

LPToDPX and LPToDPY Methods


Events
The AppWindow object has no events.

118

R400

plntdspb.book Page 119 Monday, May 28, 2001 8:57 AM

Objects

Dictionary Object
Description
The dictionary is a collection of named variables. Each item (named variable) in
the dictionary has a case-sensitive name and a value. The value can be of any
form, such as text or numeric.
Dictionary items can be used by any script, regardless of the object to which it is
attached.
By default, dictionary items remain for the life of Station. It is therefore important
to use the Remove method to remove items if they are no longer required.
Syntax
Application.Dictionary
Properties
Property

Description

Application

Returns the Application object.

Count

Returns the number of items in the collection.

Parent

Returns the Application object.

Dictionary Item Properties


Property

Description

Name

Returns the items case-sensitive name.

Value

Sets and returns the items value.

Methods

Add Method

Item Method

Remove Method
Events
The Dictionary object has no events.

PlantScape Display Building Guide

119

plntdspb.book Page 120 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Example
This example shows how to create a variable called Volts and assign it a value:
Application.Dictionary.Add "Volts", 12.2

Once created, any script can access the value as follows:


BattVolts = Application.Dictionary.Item("Volts").Value

120

R400

plntdspb.book Page 121 Monday, May 28, 2001 8:57 AM

Objects

Display Objects
Description
Display objects represent the graphic elements on the current display, such as
rectangles and pushbuttons.
Syntax

ObjectName
Where ObjectName is the display objects name, such as pushbutton3. (As
shown in Name on the General tab of the Properties window.)
Properties
Property

Description

Application

Returns the Application object.

Busy

Only applicable to a SafeBrowse or ActiveX Document


object. Indicates whether the browser is currently
navigating or downloading.

Document

Only applicable to a SafeBrowse or ActiveX Document


object. Returns the active document object. For
example, the HTML document being displayed in a
SafeBrowse window.
The Document property gives a script access to the
documents Automation object. The properties and
methods available to the document depend on the
documents type. See Using the Document Property
on page 216.

DocumentType

Only applicable to a SafeBrowse or ActiveX object.


Returns a string specifying the content type (MIME) of
the objects contents. For example, if an HTML
document is being displayed, the content type is
text/html.

PlantScape Display Building Guide

121

plntdspb.book Page 122 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Property

Description

FillColor

Sets and returns the objects fill color. The color can be
either the RGB value (24-bit) or one of the following
predefined VBScript colors:
vbBlack
vbWhite
vbRed
vbYellow
vbGreen
vbBlue
vbCyan
vbMagenta

FillColorBlink

Sets and returns the blinking state of the objects


FillColor. The values are True and False.

FillColorTransparent

Sets and returns the transparency of the objects


FillColor. The values are True and False.

Height

Sets and returns the objects height.


The range is between 1 and 4499.

Label

Sets and returns the objects label. Only applicable to


checkbox, pushbutton and text objects. (In the case of
a text object, the Label and Value properties are
identical.)

Left

Sets and returns the position of the objects left edge


with reference to the left edge of the Station client
window.
The range is between 0 and 7999.

LevelFillColor

122

R400

Only applicable to an indicator object. Sets and returns


the level fill color.

plntdspb.book Page 123 Monday, May 28, 2001 8:57 AM

Objects

Property

Description

LineColor

Sets and returns the objects line color. The color can
be either the RGB value (24-bit) or one of the following
predefined colors:
vbBlack
vbWhite
vbRed
vbYellow
vbGreen
vbBlue
vbCyan
vbMagenta

LineColorBlink

Sets and returns the blinking state of the objects


LineColor. The values are True and False.

LineColorTransparent

Sets and returns the transparency of the objects


Linecolor. The values are True and False.

LineStyle

Sets and returns the objects line style. The values are:
0 = Flat
1 = Ridge
2 = Groove
3 = Raised
4 = Lowered

LineWidth

Sets and returns the objects line width. The values are:
0 = None (invisible)
1 = Hairline
2 = Thin
3 = Thick
4 = Thicker
5 = Thickest

ListCount

Only applicable to a local Combobox object. (A local


Combobox is one which does not have a link to the
database.) Returns the number of items in the
drop-down list.

PlantScape Display Building Guide

123

plntdspb.book Page 124 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Property

Description

LocationName

Only applicable to a SafeBrowse object. Returns a


string containing the title of the resource (URL) that the
SafeBrowse is displaying.

Name

Returns the objects name. (Corresponds to the Name,


property on the General tab of the Properties window.)

Objects

Only applicable if the object is a Group or Shapelink.


Returns the objects collection.

Parent

Returns the parent of the object. This is either:


The Page object
The Group or Shapelink to which the object
belongs

RotationAngle

The angle through which the object has been rotated,


expressed in degrees. The object is rotated about the
point defined by RotationPointX and RotationPointY.
Not all types of display objects can be rotatedsee
Rotating Display Objects on page 21.

RotationPointX
RotationPointY

The horizontal and vertical coordinates of the point


about which the object has been rotated.
The horizontal coordinate is between 0 and 7999 and
the vertical coordinate is between 0 and 4999.

SelectedListIndex

Only applicable to a local Combobox object. (A local


Combobox is one which does not have a link to the
database.) Sets and returns the index that identifies an
item in the drop-down list.
The value for the first item is 0, the value for the second
item is 1, and so on. A value of -1 indicates that no item
is selected.

Top

Sets and returns the position of the objects top edge


with reference to the top of the Station client window.
The range is between 0 and 4499.

124

R400

plntdspb.book Page 125 Monday, May 28, 2001 8:57 AM

Objects

Property

Description

Type

Returns the objects type, which is one of the following:


0 = null
1 = Text
2 = Rectangle
3 = RoundRectangle
4 = Oval
5 = FreehandLine
6 = Line
7 = Arc
8 = Wedge
9 = Polyline
10 = Polygon
11 = Alphanumeric
12 = PushButton
13 = Indicator
14 = Checkbox
15 = Chart
16 = Combobox
17 = Multimedia
18 = Scrollbar
19 = Alarm
20 = Bitmap
21 = Metafile
22 = Overview
23 = Group
24 = Shapelink
25 = TGA image
26 = JPG image
28 = Video
29 = SafeBrowse
30 = ActiveXDoc

PlantScape Display Building Guide

125

plntdspb.book Page 126 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Property

Description

Value

The objects value, the meaning of which depends on


its typesee Understanding the Value Property on
page 126.
Note that Value is not applicable to all types of object.

Visible

Sets and returns the objects visibility. The values are


True and False.
Note that an invisible object does not receive user
events, such as OnClick, but still receives server and
timer events.

Width

Sets and returns the objects width.


The range is between 1 and 7999.

Understanding the Value Property


Object Type

Meaning of the Value property

ActiveX

The URL of the currently displayed document.

Alphanumeric

The currently displayed text/number.


Note that if you set the value of an alphanumeric linked
to the database, the value will not change until the
server has acknowledged the control. Performing large
numbers of such controls where timing may be a critical
factor is not recommended.

Checkbox

The value is True if checked and False if unchecked.

Combobox

The currently selected item in the list.

SafeBrowse

The URL of the currently displayed Web page.

Scrollbar

The value is based on the position of the slider and


varies between the values of the scrollbars Maximum
Value and Minimum Value properties.
For example, Value would be 65 if:
Minimum Value is 50
Maximum Value is 80
The slider is in the middle of the scrollbar

Shapelink

126

R400

The current shape number in the shape sequence. Note


that value of the first shape is 1.

plntdspb.book Page 127 Monday, May 28, 2001 8:57 AM

Objects

Object Type

Meaning of the Value property

Text

The currently displayed text. (Note that a text objects


Label and Value properties are identical.)

Methods

AddListItem Method

CancelChange Method

CancelClick Method

CancelDoubleClick Method

CancelNavigate Method

Clear Method

CreateTimer Method

GoHome Method

GoBack Method

GoSearch Method

GoForward Method

KillTimer Method

Refresh Method

RemoveListItem Method

SelectText Method

SetFocus Method

Stop Method

Update Method
Events

OnBeginNavigate Event

OnChange Event

OnClick Event

OnDoubleClick Event

OnDownloadBegin Event

OnDownloadComplete Event

OnFocus Event

OnLoad Event

OnMouseEnter Event

OnMouseLeave Event

OnMouseMove Event

OnNavigateComplete Event

PlantScape Display Building Guide

127

plntdspb.book Page 128 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

128

R400

OnPageComplete Event
OnRightClick Event
OnTimer Event
OnUpdate Event
OnUnload Event

plntdspb.book Page 129 Monday, May 28, 2001 8:57 AM

Objects

Objects Collection
Description
The Objects collection for:

The Page object contains the top-level display objects in the current display

A Group or Shapelink contains the display objects within the group or


shapelink.
The Objects collection is used when referencing a display object from another
objects script.
Syntax
When referencing the collection in the current display:
Page.Objects
When referencing the collection of a group called Group1:
Group1.Objects
Properties
Property

Description

Application

Returns the Application object.

Count

Returns the number of display objects in the collection.

Parent

Returns the parent object.

Methods

Item Method
Events
The Objects collection has no events.
Example
This example shows how to refer to Rectangle1.
Page.Objects.Item("Rectangle1")

This example shows how to refer to the second item in the collection.
Page.Objects.Item(2)

PlantScape Display Building Guide

129

plntdspb.book Page 130 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

This example shows how to use display objects to perform an iterative task. In
this case, change the fill color of all objects in a display.
For i = 1 to Page.Objects.Count
Page.Objects.Item(i).FillColor = vbRed
Next

130

R400

plntdspb.book Page 131 Monday, May 28, 2001 8:57 AM

Objects

Page Object
Description
The Page object represents the current display. The Page object also contains an
Objects collection, whose items are the display objects on the display (the
rectangles, alphanumerics, and so on).
Syntax
Page
Properties
Property

Description

Application

Returns the Application object.

FilePath

Returns the full path of the display file.

HelpFile

Sets or returns the filename of the help associated with


the display. Used in conjunction with HelpType,
HelpTopicFile and HelpTopicNumber.
The file must be located in a folder defined in Stations
list of search pathsfor example, in the same folder as
the associated display.

HelpTopicFile

Only applicable when the HelpType is set to 1. Sets or


returns the internal filename of the help topic.

HelpTopicNumber

Only applicable when the HelpType is set to 2. Sets or


returns the topic number of the help topic.

HelpType

Sets or returns the type of help associated with the


display. The values are:
0 = Document other than HTML Help (such as a text file
or Microsoft Word document)
1 = Help topic within HTML Help identified by its the
internal filename (specified in HelpTopicFile)
2 = Help topic within HTML Help identified by its topic
number (specified in HelpTopicNumber)

Objects

Returns the Objects collection for the display.

Parent

Returns the Application object.

Title

Returns the displays title.

PlantScape Display Building Guide

131

plntdspb.book Page 132 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Methods

CreateTimer Method

KillTimer Method

OpenHelp Method

Redraw Method

UserObjectNotify Method
Events

OnLoad Event

OnMouseMove Event

OnPeriodicUpdate Event

OnTimer Event

OnUnload Event

OnUserObjectNotify Event

132

R400

plntdspb.book Page 133 Monday, May 28, 2001 8:57 AM

Methods

Methods

PlantScape Display Building Guide

133

plntdspb.book Page 134 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Add Method
Applicable to

Dictionary Object
Description
Adds a new item (named variable) to the Dictionary collection.
Syntax
Add(name,value)

Part

Description

name

The case-sensitive name of the item.

value

The value of the item.

Notes

The Dictionary can contain a maximum of 256 items. If you need to add
more items, you must first use the Remove method to remove unused items.

There is no protection against adding more than one item with the same
name. If this happens, retrieving the items value will return the value of the
first item with that name.
Example
This example adds an item Voltage to the Dictionary and sets its value to 12.3.
Dictionary.Add "Voltage", 12.3

134

R400

plntdspb.book Page 135 Monday, May 28, 2001 8:57 AM

Methods

AddListItem Method
Applicable to

Display Objects
Description
Adds an item to a local Combobox. (A local Combobox is one which does not
have a link to the database.) When a user selects a Combobox, the list of items
appears, allowing the user to select the appropriate item.
Syntax
[object.]AddListItem(item[, index])
or
[object.]AddListItem item[, index]

Part

Description

object

The Combobox to which the entry is being added.

item

The item being added.

index

The items position in the Comboboxs list.


If omitted, the item is added to the end of the list.
If an existing index is specified, existing items are
moved down to make room for the new item.

Notes

The index of the first item in the list is 0.

By default, the first item in the list is selected when the combobox is initially
displayed.
Example
This example adds three items to the Combobox SetSpeed.
SetSpeed.AddListItem Slow, 0
SetSpeed.AddListItem Medium, 1
SetSpeed.AddListItem Fast, 2

PlantScape Display Building Guide

135

plntdspb.book Page 136 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

BeginCriticalSection Method
Applicable to

Application Object
Description
The BeginCriticalSection method disables the script timeout (which is set to
5 seconds).
The BeginCriticalSection and EndCriticalSection methods are usually used to
enclose a block of code that must not be interrupted once started. For example,
you may want to use the method(s) in a script that changes a number of values in
the database and then requests a task which uses the new values.
Syntax
Application.BeginCriticalSection()
Notes

You should use the BeginCriticalSection method with caution because it


disables the script timeout for all scripts.

The EndCriticalSection method immediately re-enables the script timeout.


However, if there is no EndCriticalSection method, the script timeout is
automatically re-enabled when script finishes.
Example
This example shows how the BeginCriticalSection method can be used in the
OnClick event for a pushbutton.
Sub PushButton3_OnClick()
.
.
Application.BeginCriticalSection()
critical task
.
Application.EndCriticalSection()
End Sub

136

R400

plntdspb.book Page 137 Monday, May 28, 2001 8:57 AM

Methods

Blue Method
Applicable to

Application Object
Description
The Blue method is a utility function that can be used in any script. It returns the
blue component of a color value, expressed as a number between 0 (no blue)
and 255 (100% blue). Normally used in conjunction with the Red and Green
methods.
Syntax
Application.Blue(RGBvalue)

Part

Description

RGBvalue

The color value from which the blue component is


returned.

Example
This example obtains the blue component of the fill color of Rect3.
BlueValue = Application.Blue(Rect3.FillColor)

PlantScape Display Building Guide

137

plntdspb.book Page 138 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

CancelChange Method
Applicable to

Display Objects
Description
Cancels a change made by a user to the following types of display object:

Alphanumeric

Checkbox

Scrollbar

Combobox
Syntax
CancelChange
Note

The CancelChange method can only be used within an OnChange event.


Together, they enable the change to be validated before passing it on to the
server.
Example
This example compares the user-entered value with the current limit and cancels
the change if the value is greater than the limit. The OnChange event is generated
when the change is made, and passes the user-entered value to the script.
Sub OnChange(vNewValue)
calculate current limit.
.
.
.
If vNewValue > Limit Then
MsgBox "Value must be below " & CStr(limit) & "."
CancelChange
End If
End Sub

138

R400

plntdspb.book Page 139 Monday, May 28, 2001 8:57 AM

Methods

CancelClick Method
Applicable to

Display Objects
Description
Cancels the click when a user clicks a display object.
Syntax
CancelClick
Note

The CancelClick method can only be used within OnClick and OnRightClick
events. Together, they enable the click operation to be validated before
passing it on to the server.
Example
This example, attached to Pushbutton2, checks the users security level and
cancels the click if the level is below Engineer.
Sub PushButton2_OnClick()
If Application.SecurityLevel < 4 Then
MsgBox "Only an Engineer or Manager can do this"
CancelClick
End If
End Sub

PlantScape Display Building Guide

139

plntdspb.book Page 140 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

CancelDoubleClick Method
Applicable to

Display Objects
Description
Cancels the double-click when a user double-clicks a display object.
Syntax
CancelDoubleClick
Note

The CancelDoubleClick method can only be used within an OnDoubleClick


event. Together, they enable the double-click operation to be validated
before passing it on to the server.
Example
Sub Circle3_OnDoubleClick()
If ... Then
MsgBox "..."
CancelDoubleClick
End If
End Sub

140

R400

plntdspb.book Page 141 Monday, May 28, 2001 8:57 AM

Methods

CancelNavigate Method
Applicable to

Display Objects
Description
Cancels a users navigation operation. Only applicable to a SafeBrowse object.
Syntax
CancelNavigate
Notes

The CancelNavigate method can only be used within an OnBeginNavigate


event. Together, they can be used to prevent the user from accessing
unauthorized Web sites.

The OnBeginNavigate event only receives http:// style addresses.


Consequently, you must ensure that any permitted Web site does not
include links to other types, such as FTP and files, that are inappropriate or
unsafe.
Example
This example prevents the user from accessing external Web sites.
Sub OnBeginNavigate(URL)
If NewURL = ... Then
MsgBox "You cannot access external Web sites."
CancelNavigate
End If
End Sub

PlantScape Display Building Guide

141

plntdspb.book Page 142 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

CancelOperatorCommand Method
Applicable to

Application Object
Description
Cancels the command entered by a user in the Stations Command Zone.
Syntax
CancelOperatorCommand
Note

The CancelOperatorCommand method can only be used within an


OnOperatorCommand event. Together, they enable the command to be
validated before passing it on to the server.
Example
Sub OnOperatorCommand(bstrCommand)
If bstrCommand = "bye" Then
MsgBox "Log out not permitted"
CancelOperatorCommand
End If
End Sub

142

R400

plntdspb.book Page 143 Monday, May 28, 2001 8:57 AM

Methods

Clear Method
Applicable to

Display Objects
Description
Clears (removes) the text of an Alphanumeric display object.
Syntax
[object.]Clear

Part

Description

object

The Alphanumeric object whose text is cleared.

Example
This example clears the alphanumeric Alphanum1 when the user clicks
Pushbutton1.
Sub Pushbutton1_OnClick()
Alphanum1.Clear
End Sub

PlantScape Display Building Guide

143

plntdspb.book Page 144 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

CreateTimer Method
Applicable to

Application Object

Display Objects

Page Object
Description
Creates a timer for an object, which generates timer events at regular intervals.
(Timer events are captured by the objects OnTimer event.)
A timer keeps generating timer events until it is destroyed by either the KillTimer
method, or when the associated object is destroyed. For example, displaying a
new display destroys all timers associated with the old display and its display
objects.
Syntax
Call [object.]CreateTimer(timerID, interval)
or
[object.]CreateTimer timerID, interval
or

variable = [object.]CreateTimer(timerID, interval)


The last syntax returns True if the timer is created and False if it isnt.
Part

Description

object

The object for which you are creating the timer.

timerID

A unique number that identifies the timer.

interval

The interval, in milliseconds, at which the timer


generates timer events.

Notes

A maximum of 100 timers can exist at any one time.

The timers interval can be changed by calling the CreateTimer method a


second time, specifying the original TimerID, but a different Interval.

Timers with intervals of less than 100ms are not recommended for
performance reasons.

144

R400

plntdspb.book Page 145 Monday, May 28, 2001 8:57 AM

Methods

Example
This example creates a 250ms timer for Circle3 when it is loaded into the
display.
Sub Circle3_OnLoad()
Call CreateTimer(1, 250)
End Sub

You would then write an appropriate OnTimer event handler for the object.

PlantScape Display Building Guide

145

plntdspb.book Page 146 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

DPToLPX and DPToLPY Methods


Applicable to

AppWindow Object
Description
These two methods convert the X- and Y-coordinates, respectively, from
resolution-dependent display coordinates (expressed in pixels) to Display
Builders logical coordinates. See Understanding Coordinates on page 205.
Syntax
Appwindow.DPToLPX(displaycoordx)
Appwindow.DPToLPY(displaycoordy)

Part

Description

displaycoordx

The display coordinate that is converted.

displaycoordy

Notes

The LPToDPX and LPToDPY Methods convert from logical coordinates to


display coordinates.
Example
This example sets the logical coordinates of Rect1.
Rect1.Left = AppWindow.DPToLPX(500)
Rect1.Top = AppWindow.DPToLPY(300)

146

R400

plntdspb.book Page 147 Monday, May 28, 2001 8:57 AM

Methods

EndCriticalSection Method
Applicable to

Application Object
Description
Re-enables the script timeout after having been disabled by the
BeginCriticalSection method. See BeginCriticalSection Method on page 136 for
further details.
Syntax
EndCriticalSection

PlantScape Display Building Guide

147

plntdspb.book Page 148 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

ExecuteOperatorCommand Method
Applicable to

Application Object
Description
Executes a user command as if it had been entered into the Command Zone by a
user. (A user command is anything a user would normally type into the
Command Zone.)
Syntax
ExecuteOperatorCommand(command)

Part

Description

command

The command that is executed.

Note

If you use ExecuteOperatorCommand within an OnOperatorCommand


event, the command specified in ExecuteOperatorCommand will be
executed and the users command will be cancelled.

See the Operators Guide for the list of operator commands.


Example
This example displays page 80.
ExecuteOperatorCommand("Pag 80")

148

R400

plntdspb.book Page 149 Monday, May 28, 2001 8:57 AM

Methods

GetResponse Method
Applicable to

Application Object
Description
Displays the specified prompt in Stations Message Zone and returns the response
entered by the user in Stations Command Zone.
Syntax
GetResponse(prompt)

Part

Description

prompt

The message that appears in the Message Zone.

Note

Station cannot perform any other task while waiting for a response from a
user. You should therefore only use GetResponse within a suitable OnTimer
sub-routine, as shown in the following example.
Example
This shows how to use an OnTimer sub-routine to check for a response, and if
there is none (indicated by a null string) exit the routine.
Sub CheckResponse_OnTimer(l)
Dim str
str = GetResponse (Are you sure (Y/N)?)
If str = then
.
.
Else
.
.
End If
End Sub

PlantScape Display Building Guide

149

plntdspb.book Page 150 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

GoBack Method
Applicable to

Display Objects (SafeBrowse object only)


Description
Goes back one page in the SafeBrowses history list.
Syntax
[SafeBrowse.]GoBack

Part

Description

SafeBrowse

The SafeBrowse object in which the previous page is


displayed.

Example
Sub Pushbutton1_OnClick()
Browser1.GoBack
End Sub

150

R400

plntdspb.book Page 151 Monday, May 28, 2001 8:57 AM

Methods

GoForward Method
Applicable to

Display Objects (SafeBrowse object only)


Description
Displays the next page in the SafeBrowse objects history list.
Syntax
[SafeBrowse.]GoForward

Part

Description

SafeBrowse

The SafeBrowse object in which the next page is


displayed.

Example
Sub Pushbutton1_OnClick()
Browser1.GoForward
End Sub

PlantScape Display Building Guide

151

plntdspb.book Page 152 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

GoHome Method
Applicable to

Display Objects (SafeBrowse object only)


Description
Displays the SafeBrowse objects home page.
Syntax
[SafeBrowse.]GoHome

Part

Description

SafeBrowse

The SafeBrowse object in which the home page is


displayed.

Note

The home page for all SafeBrowse objects is specified in the Station setup.
Example
Sub Pushbutton1_OnClick()
Browser1.GoHome
End Sub

152

R400

plntdspb.book Page 153 Monday, May 28, 2001 8:57 AM

Methods

GoSearch Method
Applicable to

Display Objects (SafeBrowse object only)


Description
Displays the SafeBrowse objects search page.
Syntax
[SafeBrowse.]GoSearch

Part

Description

SafeBrowse

The SafeBrowse object in which the search page is


displayed.

Note

The search page for all SafeBrowse objects is specified in the Station setup.
Example
Sub Pushbutton1_OnClick()
Browser1.GoSearch
End Sub

PlantScape Display Building Guide

153

plntdspb.book Page 154 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Green Method
Applicable to

Application Object
Description
The Green method is a utility function that can be used in any script. It returns
the green component of a color value expressed as a number between 0 (no
green) and 255 (100% green). Normally used in conjunction with the Blue and
Red methods.
Syntax
Application.Green(RGBvalue)

Part

Description

RGBvalue

The color value from which the green component is


returned

Example
This example obtains the green component of the fill color of Rect3.
GreenValue = Application.Green(Rect3.FillColor)

154

R400

plntdspb.book Page 155 Monday, May 28, 2001 8:57 AM

Methods

InvokeMenu Method
Applicable to

Application Object
Description
Invokes the selected menu item as if it had been selected by a user.
Syntax
InvokeMenu(item)

Part

Description

item

The identifier that appears after the menu in menu.txt.


(This file specifies which menus appear in Station.)

Example
This example shows how to display the Group Summary. In this example,
Stations menu file, menu.txt, contains the following entry:
>Group Summary,10208

The InvokeMenu method is used as follows:


InvokeMenu(10208)

PlantScape Display Building Guide

155

plntdspb.book Page 156 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Item Method
Applicable to

Dictionary Object

Objects Collection
Description
Returns the specified item from the Dictionary or Objects collection.
Syntax
Item(index|name)

Part

Description

index

Returns the item with the specified index (sequence


number within the list of items).

name

Returns the item with the specified case-sensitive name.

Notes

The method returns the collection if neither index nor name are specified.

Index numbering starts at 1.


Example
This example returns the value of a Dictionary item using its index.
SavedValue = Application.Dictionary.Item(1).Value

This example returns the value of a Dictionary item using its name.
SavedValue = Application.Dictionary.Item("Volts").Value

This example changes the fill-color of all display objects on the display.
For i = 1 to Page.Objects.Count
Page.Objects.Item(i).FillColor = vbRed
Next

156

R400

plntdspb.book Page 157 Monday, May 28, 2001 8:57 AM

Methods

KillTimer Method
Applicable to

Application Object

Display Objects

Page Object
Description
Destroys the specified timer. (Timers are created by the CreateTimer method.)
Syntax
[object.]KillTimer(timer)

Part

Description

object

Optional.The object whose timer is being killed.

timer

The ID of the timer that is killed.

Example
This example kills a timer, with an ID of 2, belonging to Rectangle1 when the
user clicks Pushbutton1.
Sub Pushbutton1_OnClick
Rectangle1.KillTimer(2)
End Sub

PlantScape Display Building Guide

157

plntdspb.book Page 158 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

LPToDPX and LPToDPY Methods


Applicable to

AppWindow Object
Description
These two methods convert the X- and Y-coordinates, respectively, from Display
Builders logical coordinates to the resolution-dependent display coordinates
(expressed in pixels). See Understanding Coordinates on page 205.
Syntax
Appwindow.LPToDPX(logicalcoordx)
Appwindow.LPToDPY(logicalcoordy)

Part

Description

logicalcoordx

The logical coordinate that is converted.

logicalcoordy

Notes

The DPToLPX and DPToLPY Methods convert from display coordinates to


logical coordinates.
Example
This example obtains the display coordinates of Rect1.
Xcoord = AppWindow.LPToDPX(Rect1.Left)
Ycoord = AppWindow.LPToDPY(Rect1.Top)

158

R400

plntdspb.book Page 159 Monday, May 28, 2001 8:57 AM

Methods

MakeColor Method
Applicable to

Application Object
Description
The MakeColor method is a utility function that can be used in any script. It
returns a color value, expressed in RGB format. The value is packed into the
lower 24 bits of a long integer.
Syntax
Application.MakeColor(red, green, blue)

Part

Description

red

The red component, with a value between 0 (no red)


and 255 (maximum red).

green

The green component, with a value between 0 (no


green) and 255 (maximum green).

blue

The blue component, with a value between 0 (no blue)


and 255 (maximum blue).

Example
This example changes the fill color of Rect3 to white.
Rect3.FillColor = Application.MakeColor(255,255,255)

PlantScape Display Building Guide

159

plntdspb.book Page 160 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OpenHelp Method
Applicable to

Page Object
Description
Opens the help associated with the display. The help details are specified in Page
Object properties.
Syntax
OpenHelp()
Example
This example sets the help to help.txt, and opens the help.
Sub Pushbutton1_OnClick()
Page.HelpType = 0
Page.HelpFile = "help.txt"
Page.OpenHelp
End Sub

160

R400

plntdspb.book Page 161 Monday, May 28, 2001 8:57 AM

Methods

Quit Method
Applicable to

Application Object
Description
Terminates Station. Equivalent to the user selecting File Exit.
Syntax
Application.Quit
Note

The method does not prompt for user confirmation.


Example
This example performs shut-down tasks and terminates the Station when the user
clicks the Quit button, providing the user confirms the message.
Sub QuitButton_OnClick()
If MsgBox("Are you sure you want to Exit Station?",_
vbYesNo) = vbYes Then
Perform shut-down tasks.
.
.
Application.Quit
Else
CancelClick()
End If
End Sub

PlantScape Display Building Guide

161

plntdspb.book Page 162 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Red Method
Applicable to

Application Object
Description
The Red method is a utility function that can be used in any script. It returns the
red component of a color value, expressed as a number between 0 (no red) and
255 (100% red). Normally used in conjunction with the Blue and Green methods.
Syntax
Application.Red(RGBvalue)

Part

Description

RGBvalue

The color value from which the red component is


returned.

Example
This example obtains the red component of the fill color of Rect3.
RedValue = Application.Red(Rect3.FillColor)

162

R400

plntdspb.book Page 163 Monday, May 28, 2001 8:57 AM

Methods

Redraw Method
Applicable to

Page Object
Description
Immediately redraws the current display.
Syntax
Redraw
Example
This example redraws the page.
Sub ...
.
.
Page.Redraw
End Sub

PlantScape Display Building Guide

163

plntdspb.book Page 164 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Refresh Method
Applicable to

Display Objects (SafeBrowse object only)


Description
Reloads the current Web page in the SafeBrowse object.
Syntax
[SafeBrowse.]Refresh

Part

Description

SafeBrowse

The SafeBrowse object which is reloaded.

Example
Sub Pushbutton1_OnClick()
Browser2.Refresh
End Sub

164

R400

plntdspb.book Page 165 Monday, May 28, 2001 8:57 AM

Methods

Remove Method
Applicable to

Dictionary Object
Description
Removes an item from the Dictionary collection.
Syntax
Remove(index|name)

Part

Description

index

Required if name is not specified. The sequence


number of the item that is removed.

name

Required if index is not specified. The case-sensitive


name of the item that is removed.

Note

Index numbering starts at 1.


Example
This example removes Voltage (the name of the item) from the Dictionary.
Application.Dictionary.Remove("Voltage")

This example removes the third item from the Dictionary.


Application.Dictionary.Remove(3)

PlantScape Display Building Guide

165

plntdspb.book Page 166 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

RemoveListItem Method
Applicable to

Display Objects (Local Combobox only)


Description
Removes an item from a local Combobox. (A local Combobox is one which does
not have a link to the database.)
Syntax
[object.]RemoveListItem(index)

Part

Description

object

The Combobox from which the entry is removed.

index

The sequence number of the removed item. Note that


the first item has an index of 0.

Example
This example removes the second item from the combobox.
Combobox1.RemoveListItem(1)

166

R400

plntdspb.book Page 167 Monday, May 28, 2001 8:57 AM

Methods

RequestServerLRN Method
Applicable to

Application Object
Description
Requests the specified LRN (Logical Resource Number) on the server. LRNs are
described in the Configuration Guide.
Syntax
RequestServerLRN(LRN[, param1, param2])

Part

Description

LRN

The requested LRN.

param1
param2

The parameter(s) passed to the LRN.

Example
This example uses the Server Display Program (LRN 21) to call up page 11.
Application.RequestServerLRN 21, 1, 11

PlantScape Display Building Guide

167

plntdspb.book Page 168 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

SelectText Method
Applicable to

Display Objects (Alphanumeric only)


Description
Selects the text of an Alphanumeric display.
Syntax
[object.]SelectText

Part

Description

object

The Alphanumeric object whose text is selected.

Example
Sub Pushbutton1_OnClick()
Alphanum1.SelectText
End Sub

168

R400

plntdspb.book Page 169 Monday, May 28, 2001 8:57 AM

Methods

SetFocus Method
Applicable to

Display Objects
Description
Selects the dynamic display object. (A dynamic display object is one that can
have focus.) Some display objects, such as checkboxes and alphanumerics, are
intrinsically dynamic; however, objects that are normally static, such as rectangles
and lines, are also dynamic if they are linked to the database.
Syntax
[object.]SetFocus

Part

Description

object

The object that is selected.

Example
Pushbutton1.SetFocus

PlantScape Display Building Guide

169

plntdspb.book Page 170 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Shell Method
Applicable to

Application Object
Description
Executes a command as an operating system command.
Syntax
Call Application.Shell(command, state)
or
Application.Shell command, state

Part

Description

command

The operating system command.

state

Sets the state of the window in which the command


runs. The values are:
0 = Window is hidden (not visible).
1 = Standard Window
2 = Window is minimized
3 = Window is maximized

Example
This example starts Windows Notepad and displays a text file.
Application.Shell "notepad c:\documents\readme.txt",1

170

R400

plntdspb.book Page 171 Monday, May 28, 2001 8:57 AM

Methods

Sleep Method
Applicable to

Application Object
Description
Pauses script execution for a specified period.
Syntax
Sleep(interval)

Part

Description

interval

The pause interval, in milliseconds.

Note

Calling the Sleep method with a large time interval may cause Station to
disconnect from the server.
Example
The following example asks the user for a Y/N response, and every 200
milliseconds checks if the user has entered any response.
Dim str
str = ""
Do While str = ""
str = Application.GetResponse("Are you sure (Y/N)?")
Application.Sleep(200)
Loop

PlantScape Display Building Guide

171

plntdspb.book Page 172 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Stop Method
Applicable to

Display Objects (SafeBrowse object only)


Description
Stops the current navigation operation in the SafeBrowse object.
Syntax
[SafeBrowse.]Stop

Part

Description

SafeBrowse

The SafeBrowse object in which navigation is stopped.

Example
Sub Pushbutton1_OnClick()
Browser1.Stop
End Sub

172

R400

plntdspb.book Page 173 Monday, May 28, 2001 8:57 AM

Methods

Update Method
Applicable to

Display Objects
Description
Generates an OnUpdate event for a display object, even though it was not
updated by the server. (Normally, OnUpdate events are only generated when the
object is updated by the server.)
Syntax
[object.]Update()

Part

Description

object

The display object that is updated.

Example
Sub Pushbutton1_OnClick()
Combobox1.Update
End Sub

PlantScape Display Building Guide

173

plntdspb.book Page 174 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

UserObjectNotify Method
Applicable to

Application Object

Page Object
Description
Generates an OnUserNotify event for the Application or Page object. This method
is used by automation objects that may require significant processing time,
thereby avoiding script timeouts.
For a description of how the method is used in conjunction with custom dialog
boxes, see Using Custom Dialog Boxes on page 210.
Syntax
[object.]UserObjectNotify(lID, vParam)

174

Part

Description

object

The display object for which the event is generated.

lID

The ID that identifies the object using the method.

vParam

The variant used to return data to the script.

R400

plntdspb.book Page 175 Monday, May 28, 2001 8:57 AM

Events

Events

PlantScape Display Building Guide

175

plntdspb.book Page 176 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnAlarm Event
Applicable to

Application Object
Description
Generated when a new alarm appears in the Stations Alarm Zone.
Syntax
OnAlarm()
Example
This example sets the background color to red when an alarm occurs.
Sub Application_OnAlarm()
PageBackgroundColor = 3
End Sub

176

R400

plntdspb.book Page 177 Monday, May 28, 2001 8:57 AM

Events

OnAppStartup Event
Applicable to

Application Object
Description
Generated as soon as Station is started and all its objects have been created.
Syntax
OnAppStartup()
Note

The event is not generated when the Station script is reloaded, for example,
when a user selects Station Connect.
Example
This example sets the background color to white when Station starts.
Sub Application_OnAppStartup()
PageBackgroundColor = 2
End Sub

PlantScape Display Building Guide

177

plntdspb.book Page 178 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnBeginNavigate Event
Applicable to

Display Objects (SafeBrowse object only)


Description
Generated when a user enters a new URL in a SafeBrowse object.
Syntax
OnBeginNavigate(URL)

Part

Description

URL

The Web address (Universal Resource Locator)

Notes

The URL is not passed immediately to the SafeBrowse object when the
OnBeginNavigate event is generated. This allows the event to be used in
conjunction with the CancelNavigate method to check the URL before
sending it to the SafeBrowse object.

The OnBeginNavigate event only receives http:// style addresses.


Consequently, you must ensure that any permitted Web site does not
include links to other types, such as FTP and files, that are inappropriate or
unsafe.

An OnNavigateComplete event is generated when the SafeBrowse object


completes navigation to the URL.
Example
This example cancels the navigation if the new URL is outside the
ourwebsite.com domain.
Sub Browser1_OnBeginNavigate(URL)
const domain = "ourwebsite.com"
newDomain = right(URL,Len(domain))
If newDomain <> domain Then
CancelNavigate
End If
End Sub

178

R400

plntdspb.book Page 179 Monday, May 28, 2001 8:57 AM

Events

OnChange Event
Applicable to

Display Objects
Description
Generated when a user changes the value of a display object. It is not generated
when the server or a script changes the value.
Only applies to the following types of display objects:

Alphanumeric

Checkbox

Scrollbar

Combobox
Syntax
OnChange(value)

Part

Description

value

The new value supplied by the user.

Notes

The object retains its old value when the OnChange event is generated. This
allows the event to be used in conjunction with the CancelChange method
to validate the change before sending it to the server.

An OnUpdate event is generated when the server actually changes the


objects value.

Do not use the OnChange event to create message boxes, input boxes or
dialog boxes for a scrollbar. Doing so will result in unpredictable object
behavior.
Example
This example displays a warning message when a user tries to change the state of
a point.
Sub Combobox1_OnChange(vNewValue)
If MsgBox("Do you want to change the point", vbYesNo)_
= vbNo Then
CancelChange()
End If

PlantScape Display Building Guide

179

plntdspb.book Page 180 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

End Sub

180

R400

plntdspb.book Page 181 Monday, May 28, 2001 8:57 AM

Events

OnClick Event
Applicable to

Display Objects
Description
Generated when a user clicks a display object.
Syntax
OnClick()
Note

The OnClick event is generated before the click action is processed. This
allows the event to be used in conjunction with the CancelClick method to
validate the action before sending it to the server.
Example
Sub Pushbutton1_OnClick()
.
.
.
End Sub

PlantScape Display Building Guide

181

plntdspb.book Page 182 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnConnect Event
Applicable to

Application Object
Description
Generated when Station connects to a server.
Syntax
OnConnect()
Example
This example adds the named variable myKey to the Application Dictionary, with
value 10.
Sub Application_OnConnect()
Application.Dictionary.Add "myKey", 10
End Sub

182

R400

plntdspb.book Page 183 Monday, May 28, 2001 8:57 AM

Events

OnDisconnect Event
Applicable to

Application Object
Description
Generated when Station disconnects from a server.
Syntax
OnDisconnect()
Example
This example removes the named variable myKey from the Application
Dictionary.
Sub Application_OnDisconnect()
Application.Dictionary.Remove("myKey")
End Sub

PlantScape Display Building Guide

183

plntdspb.book Page 184 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnDoubleClick Event
Applicable to

Display Objects
Description
Generated when a user double-clicks a display object.
Syntax
OnDoubleClick()
Note

The OnDoubleClick event is generated before the double-click action is


processed. This allows the event to be used in conjunction with the
CancelDoubleClick method to validate the action before sending it to the
server.
Example
Sub Pushbutton1_OnDoubleClick()
.
.
.
End Sub

184

R400

plntdspb.book Page 185 Monday, May 28, 2001 8:57 AM

Events

OnDownloadBegin Event
Applicable to

Display Objects (SafeBrowse objects only)


Description
Generated before a SafeBrowse object begins a download operation.
Syntax
OnDownloadBegin()
Example
This example sets the color of Oval1 to red when downloading begins.
Sub SafeBrowse1_OnDownloadBegin()
Oval1.FillColor = vbRed
End Sub

PlantScape Display Building Guide

185

plntdspb.book Page 186 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnDownloadComplete Event
Applicable to

Display Objects (SafeBrowse only)


Description
Generated after a SafeBrowse object is downloaded.
If the object is a HTML page that contains frames, the event is generated as each
frame is downloaded, as well as when the page is downloaded. By contrast, the
OnPageComplete Event is only generated after the page, and all its frames, have
downloaded.
Syntax
OnDownloadComplete()
Example
This example sets the color of Oval1 to green after downloading has finished.
Sub SafeBrowse1_OnDownloadComplete()
Oval1.FillColor = vbGreen
End Sub

186

R400

plntdspb.book Page 187 Monday, May 28, 2001 8:57 AM

Events

OnFocus Event
Applicable to

Display Objects
Description
Generated when a dynamic display object gets focus. (A dynamic display object
is one that can have focus.) Some display objects, such as checkboxes and
alphanumerics, are intrinsically dynamic; however, objects that are normally
static, such as rectangles and lines, are also dynamic if they are linked to the
database.
Syntax
OnFocus()
Example
This example sets a text objects text when the checkbox receives focus.
Sub Checkbox1_OnFocus()
Text1.Value = "Checkbox1 Focus"
End Sub

PlantScape Display Building Guide

187

plntdspb.book Page 188 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnLoad Event
Applicable to

Display Objects

Page Object
Description
In the case of a display, the event is generated when the display is first displayed.
In the case of a display object, the event is generated when the display object is
loaded into the display.
Syntax
OnLoad()
Note

An OnLoad script for an object may fail if it references another object that
has not yet been loaded.
Example
This example creates a 2-second timer for Circle3 when it is loaded. (You would
then use the objects OnTimer event to run another script.)
Sub Circle3_OnLoad()
CreateTimer(1, 2000)
End Sub

188

R400

plntdspb.book Page 189 Monday, May 28, 2001 8:57 AM

Events

OnMenu Event
Applicable to

Application Object
Description
Generated when a user selects a menu item, and returns the menu item.
Syntax
OnMenu(item)

Part

Description

item

The ID of the selected menu item.

Example
This example displays a warning when a user selects the Acknowledge/Silence
menu item. In this example, Stations menu file, menu.txt, contains the
following entry:
>Acknowledge/Silence, 2113

The script is:


Sub Application_OnMenu(lMenuTag)
If cint(lMenuTag) = 2113 Then
MsgBox "WARNING: Alarm acknowledged"
End If
End Sub

PlantScape Display Building Guide

189

plntdspb.book Page 190 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnMouseEnter Event
Applicable to

Display Objects
Description
Generated when the mouse enters the bounding rectangle of a display object.
Applies to all types of display object, except Lines, FreeHandLines and Polylines.
Syntax
OnMouseEnter()
Notes

The processing load increases significantly as the number of mouse events


being monitored increases.

OnMouseEnter events should not be used for critical scripts because they
are given a low priority and are often discarded by the operating system.
Example
This example uses the OnMouseEnter and OnMouseLeave events to display an
explanatory message in the Stations Message Zone whenever the mouse pointer
is on top of the display object, MainValve. The OnMouseEnter event displays
the description.
Sub MainValve_OnMouseEnter()
Application.MessageZoneText = "Main Valve"
End Sub

And the corresponding OnMouseLeave event clears the description when the
cursor leaves the object.
Sub MainValve_OnMouseLeave()
reset the message zone text
Application.MessageZoneText = ""
End Sub

190

R400

plntdspb.book Page 191 Monday, May 28, 2001 8:57 AM

Events

OnMouseLeave Event
Applicable to

Display Objects
Description
Generated when the mouse leaves the bounding rectangle of a display object.
Applies to all types of display object, except Lines, FreeHand lines and PolyLines.
Syntax
OnMouseLeave()
Notes

The processing load increases significantly as the number of mouse events


being monitored increases.

OnMouseLeave events should not be used for critical scripts because they
are given a low priority and are often discarded by the operating system.
Example
This example uses the OnMouseEnter and OnMouseLeave events to display an
explanatory message in the Stations Message Zone whenever the mouse pointer
is on top of display object, MainValve. The OnMouseEnter event displays the
description.
Sub MainValve_OnMouseEnter()
Application.MessageZoneText = "Main Valve"
End Sub

And the corresponding OnMouseLeave event clears the description when the
cursor leaves the object.
Sub MainValve_OnMouseLeave()
reset the message zone text
Application.MessageZoneText = ""
End Sub

PlantScape Display Building Guide

191

plntdspb.book Page 192 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnMouseMove Event
Applicable to

Display Objects

Page Object
Description
In the case of the current display, the event is generated when a user moves the
mouse over the display.
In the case of a display object, the event is generated when a user moves the
mouse over the display object (excluding a SafeBrowse object).
Syntax
OnMouseMove(x, y)

Part

Description

Returns the horizontal coordinate of the mouse.

Returns the vertical coordinate of the mouse.

Notes

The processing load increases significantly as the number of mouse events


being monitored increases.

OnMouseMove events should not be used for critical scripts because they
are given a low priority and are often discarded by the operating system.

The mouse coordinates range from -266, -122 to 8257, 4568 if a user moves
the cursor over the border around the display. See Understanding Mouse
Coordinates on page 205.
Example
This shows the current mouse coordinates in two text objects named TextX and
TextY.
Sub Page_OnMouseMove(lx,ly)
TextX.Value = lx
TextY.Value = ly
End Sub

192

R400

plntdspb.book Page 193 Monday, May 28, 2001 8:57 AM

Events

OnNavigateComplete Event
Applicable to

Display Objects (SafeBrowse object only)


Description
Generated when a SafeBrowse object completes navigation to a URL.
Syntax
OnNavigateComplete()
Example
This example changes an objects fill-color to green when navigation is complete.
Sub SafeBrowse1_OnNavigateComplete()
Oval1.FillColor = vbGreen
End Sub

PlantScape Display Building Guide

193

plntdspb.book Page 194 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnOperatorChange Event
Applicable to

Application Object
Description
Generated when a user logs on, or when the user changes security levels.
Syntax
OnOperatorChange()
Example
This example shows how to display the appropriate home page when a user
logs on. Each display would display information appropriate to a particular
security level.
Sub OnOperatorChange()
If SecurityLevel = 2 Then
CurrentPage = "MainMenuOperator"
End If
If SecurityLevel = 3 Then
CurrentPage = "http://www.../overview.htm"
End If
If SecurityLevel = 4 Then
CurrentPage = 303
End If
If SecurityLevel = 5 Then
CurrentPage = 304
End If
End Sub

194

R400

plntdspb.book Page 195 Monday, May 28, 2001 8:57 AM

Events

OnOperatorCommand Event
Applicable to

Application Object
Description
Generated when a user issues a command from Stations Command Zone.
Syntax
OnOperatorCommand(command)

Part

Description

command

The command entered by the user.

Note

The OnOperatorCommand event is generated before the command is


processed. This allows the event to be used in conjunction with the
CancelOperatorCommand method to validate the command before sending
it to the server.
Example
This example checks the users security level and cancels the command if the
level is below Engineer (level 4 security).
Sub Application_OnOperatorCommand(bstrCommand)
If SecurityLevel < 4 Then
MsgBox "Only an Engineer or Manager can do this"
CancelOperatorCommand
End If
End Sub

PlantScape Display Building Guide

195

plntdspb.book Page 196 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnPageComplete Event
Applicable to

Display Objects (SafeBrowse only)


Description
Generated after a SafeBrowse object that includes a HTML page is downloaded.
Syntax
OnPageComplete()
Note

OnPageComplete is equivalent to the OnDownloadComplete Event if the


HTML page does not contain any frames.
Example
This example sets the color of Oval1 to green after downloading has finished.
Sub SafeBrowse1_OnPageComplete()
Oval1.FillColor = vbGreen
End Sub

196

R400

plntdspb.book Page 197 Monday, May 28, 2001 8:57 AM

Events

OnPageLoad Event
Applicable to

Application Object
Description
Generated when a new display is loaded, or when the current display is
refreshed.
Syntax
OnPageLoad()
Note

The equivalent events for the Page object is the OnLoad Event.
Example
This example shows the current page name in the Message Zone.
Sub Application_OnPageLoad()
MessageZoneText = Page.CurrentPage
End Sub

PlantScape Display Building Guide

197

plntdspb.book Page 198 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnPeriodicUpdate Event
Applicable to

Application Object

Display Objects

Page Object
Description
Generated when Station receives a periodic update from the server. Periodic
updates occur whenever the server updates the system time in Stations Status
Line, and are generated for all display objects in the current display.
Syntax
OnPeriodicUpdate()
Example
This example animates a shapelink, stepping to the next shape on each periodic
update.
Sub Shapelink1_OnPeriodicUpdate()
Nextvalue = Nextvalue + 1
If Nextvalue > 4 Then
Nextvalue = 1
End If
End Sub

198

R400

plntdspb.book Page 199 Monday, May 28, 2001 8:57 AM

Events

OnQuit Event
Applicable to

Application Object
Description
Generated when a user selects Station Exit.
Syntax
OnQuit()
Example
This example changes an alphanumeric value when a user exits Station.
Sub Application_OnQuit()
MsgBox "Have a nice day!"
End Sub

PlantScape Display Building Guide

199

plntdspb.book Page 200 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnRightClick Event
Applicable to

Display Objects
Description
Generated when a user right-clicks a display object.
Syntax
OnRightClick()
Note

By default, right-clicking in Station gives focus to the next object in the tab
sequence. You can prevent the change in focus by including a CancelClick
method at the end of the script, as shown in the following example.

The OnRightClick event is generated before the right-click action is


processed. This allows the event to be used in conjunction with the
CancelClick method to validate the action before sending it to the server.
Example
This example, attached to Pushbutton1, displays a list of options when it is
right-clicked. CancelClick at the end of the script prevents focus changing to the
next object in the tab sequence.
Sub Pushbutton1_OnRightClick()
display list of options
.
.
CancelClick
End Sub

200

R400

plntdspb.book Page 201 Monday, May 28, 2001 8:57 AM

Events

OnTimer Event
Applicable to

Application Object

Display Objects

Page Object
Description
Generated whenever a timer belonging to an object generates a timer event.
(Timers are created using the CreateTimer method.)
Syntax
OnTimer(timer)

Part

Description

timer

Returns the ID of the timer that generated the event.

Example
This example shows how an OnTimer event handler can perform several tasks
for an object that has several timers. In this case, Tank2 has two timers.
Sub Tank2_OnTimer(lTimerID)
If lTimerID = 1 Then
.
.
.
ElseIf lTimerID = 2 Then
.
.
.
End If
End Sub

PlantScape Display Building Guide

201

plntdspb.book Page 202 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnUnload Event
Applicable to

Display Objects

Page Object
Description
OnUnload events are generated for the current display and each of its display
objects when Station unloads the display (in preparation for displaying another
display or exiting Station).
Syntax
[object.]OnUnload()

Part

Description

object

The object being unloaded.

Note

Scripts executed as the result of an OnUnload event must not contain any
message boxes, input boxes or dialog boxes.
Example
Sub Page_OnUnload()
.
.
.
End Sub

202

R400

plntdspb.book Page 203 Monday, May 28, 2001 8:57 AM

Events

OnUpdate Event
Applicable to

Display Objects
Description
Generated when a display object is updated by the server, or because its Update
method was called.
Syntax
OnUpdate()
Example
Sub Alphanum1_OnUpdate()
Text1.Value = 2 * Alphanum1.Value
End Sub

PlantScape Display Building Guide

203

plntdspb.book Page 204 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

OnUserObjectNotify Event
Applicable to

Application Object

Page Object
Description
Generated when an automation object calls the UserObjectNotify method. (The
method is used by automation objects that may require significant processing
time, thereby avoiding script timeouts.) See UserObjectNotify Method on
page 174.
For a description of how a custom dialog box would generate this event, see
Using Custom Dialog Boxes on page 210.
Syntax
OnUserObjectNotify(lID, vParam)

204

Part

Description

lID

ID that identifies the object that generated the event.

vParam

The variant used to return data to the script.

R400

plntdspb.book Page 205 Monday, May 28, 2001 8:57 AM

Understanding Coordinates

Understanding Coordinates
Display Builder uses logical coordinates, which are independent of screen
resolution. The logical coordinates for a display range from 0, 0 (top, left) to
7999, 4499 (bottom, right).

Understanding Mouse Coordinates


When a user views a display in Station, it is surrounded by a small border region,
as shown in gray in the following figure. This region is used, for example, by
scrollbars where the display is larger than the screen.
Inside the display, the mouse coordinates range from 0, 0 to 7999, 4499.
However, if a user moves the cursor over the border region, the coordinates
range from -266, -122 to 8257, 4568.

-266, -122
0, 0

7999, 4499
8257, 4568
Figure 5.5 Mouse Coordinate Ranges

Converting Between Logical and Display Coordinates


When a display is called up on a particular Station, the computer uses the
resolution-dependent display coordinates (expressed in pixels). To convert from:

Logical to display coordinates, use the LPToDPX and LPToDPY Methods

Display to logical coordinates, use the DPToLPX and DPToLPY Methods

PlantScape Display Building Guide

205

plntdspb.book Page 206 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Examples
The following examples demonstrate how scripts can be used.
The \dspbld\examples folder contains a number of example displays, such as
abs801.dsp which contains an ActiveX script.

Animation Using a Shape Sequence


This example shows how to use scripts and a shape sequence to create an
animation. The following figure shows part of a display that contains a shapelink
for the fan and two control buttons, Start and Stop.

Figure 5.6 A Simple Animation

Tip

When inserting the shapelink for the fan, you dont have to specify how many
shapes you want to usethis is controlled by your scripts.
The following shape sequence is used to represent the two states of the fan. The
first (left-hand) shape represents the off state, whereas the other four shapes are
used for the on animation.

Figure 5.7 The Shape Sequence Used in the Animation

206

R400

plntdspb.book Page 207 Monday, May 28, 2001 8:57 AM

Examples

Tip

These shapes are bitmap images that were created in a drawing program and then
pasted into the shape file. Creating the shapes this way made it easier to produce a
more realistic effect.

Start Button Scripts


The Start button has scripts for the OnClick and OnTimer events.
The OnClick script creates a 200ms timer, which controls the speed of the
animation. (Obviously, the pushbutton is configured to start the actual fan.)
Sub StartBtn_OnClick()
Call CreateTimer(1, 200)
End Sub

The OnTimer script steps through the four on shapes. (Values 2 to 5.)
Sub StartBtn_OnTimer(lTimerID)
If Fan.Value = 5 Then
Fan.Value = 2
Else
Fan.Value = Fan.Value +1
End If
End Sub

Stop Button Script


The Stop button has an OnClick script that stops the animation and selects the
off shape. (Again, the pushbutton is also configured to stop the fan.)
Sub StopBtn_OnClick()
StartBtn.KillTimer(1)
Fan.Value = 1
End Sub

Color Animation
You want to change the color of the heat exchanger plates as the temperature
varies. The plates are grey rectangles, which are grouped to form one object,
Plates.
The OnPeriodicUpdate event for Plates iterates over the rectangles, changing the
surface color in line with the temperature, which is stored in an alphanumeric
object called alphanum1.

PlantScape Display Building Guide

207

plntdspb.book Page 208 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Figure 5.8 A Color Animation

Sub OnPeriodicUpdate()
Dim Temp
Dim RedComp
Dim BlueComp
Dim GreenComp
Temp = alphanum1.value
work out the values of the color components
RedComp = 126.0 + ((300.0 - Temp) / (300.00 - 20.0)
* 255.0)/2
BlueComp = 126.0 - ((300.0 - Temp) / (300.00 - 20.0)
* 255.0)/2
GreenComp = 126.0 - ((300.0 - Temp) / (300.00 - 20.0)
* 255.0)/2
For Each rect in Objects
rect.FillColor = Application.MakeColor(RedComp,
BlueComp, GreenComp)
Next rect
End Sub

Adding Tool Tips


To help new users learn about the system, you want to provide a simple
description for each object which operates in a similar manner to Tool Tipsa
feature found on many Windows-based applications.
You create the Tool Tips feature using two events, OnMouseEnter and
OnMouseLeave. This example is for an object called Gauge1.

208

R400

plntdspb.book Page 209 Monday, May 28, 2001 8:57 AM

Examples

You use the OnMouseEnter event to display the description whenever a user
moves the cursor over an object.
Sub Gauge1_OnMouseEnter()
Application.MessageZoneText = "Main compressor
temperature"
End Sub

And you use the OnMouseLeave event to clear the description when the cursor
leaves the object.
Sub Gauge1_OnMouseLeave()
clear the message zone text
Application.MessageZoneText = ""
End Sub

Controlling Station from Another Application


You have decided to create a training support tool, written in Visual Basic, that
presents trainee operators with a series of interactive flow charts they must work
through. To improve usability, the support tool instructs Station to display the
appropriate display at various stages in a procedure.
The support tool needs to create an instance of Station as an Automation
component during its initialization using the following command:
Set stationApp = CreateObject("Station.Application")
Whenever the support tool needs Station to display a particular display (such as
301), it uses the following command to instruct Station to display that display.
stationApp.CurrentPage = 301

Controlling Another Application from Station


You want to delete custom displays that are not being used by anybody. So you
decide to monitor display usage for several weeks and then delete displays that
were not used during that period.
You create a Visual Basic Automation component that exposes the following
method:
Public Sub RecordDisplayUsage(page As Integer, station As
Integer)

The implementation details of this method are unimportant, but could include
using an Access database to record how many times each display is called up.

PlantScape Display Building Guide

209

plntdspb.book Page 210 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

The Visual Basic Automation component is registered in the system registry as


DisplayMonitor.Application.

In the Stations Scripts


In the Stations General section you declare a variable that is used to store a
reference to the DisplayMonitor application.
Dim DisplayMonitor

In the Stations OnAppStartUp event handler you create an instance of the


DisplayMonitor application.
Sub OnAppStartup()
Set DisplayMonitor =
CreateObject("DisplayMonitor.Application")
End Sub

In the Stations OnPageChange event handler you pass the display number to the
DisplayMonitors RecordDisplayUsage method.
Sub OnPageChange()
DisplayMonitor.RecordDisplayUsage(CurrentPage,
StationNumber)
End Sub

Using Custom Dialog Boxes


This topic describes how to create and use custom dialog boxes, which have
been created with tools such as Visual Basic. Communication between custom
dialog boxes and Station is made possible by the UserObjectNotify events in the
Application and Page objects.
Note The example code shown in this section was created using Visual
Basic 5.

Basic Concepts
An ActiveX component is a type of program designed to be called from other
applications, rather than being executed individually. Using the scripting
functions of Station, it is possible to call up user-written ActiveX components,
such as dialog boxes, that provide extra functionality.
For most applications, data needs to be transferred to and from the ActiveX
component. Typically, initialization data is passed from Station to the dialog box.
Conversely, when the dialog box exits, data is passed from the dialog box back
to Station.

210

R400

plntdspb.book Page 211 Monday, May 28, 2001 8:57 AM

Examples

Station-to-dialog box communication is implemented by providing methods in


the ActiveX component that Station can call. Dialog box-to-Station
communication is provided using the UserObjectNotify methods.
ActiveX components used in this way are referred to as out of process
components, because they execute in a separate thread to Station. That is, when
Station launches the dialog box, it immediately continues and does not wait for
the dialog to exit. When the dialog exits, it informs Station by calling the
appropriate UserObjectNotify method (Application or Page). This generates an
OnUserObjectNotify event, so that Station can process the data received from the
dialog box.

In the Script
The dialog box is used from Station by calling the CreateObject function. The
simplest way to do this is to:

Declare a variable in the (General) section of a page script.

Call CreateObject in the OnLoad event of the Page object.

Call the close dialog methods and delete the reference to the object in the
OnUnload event. This ensures that if the user changes page, the dialog is
closed first.

The class name passed to CreateObject is set in the project properties as the
project name.

General Section
Dim Dialog

Page Object Events


Sub Page_OnLoad( )
set dialog = CreateObject("StationExample.Dialogs")
End Sub
Sub Page_OnUnload( )
dialog.CloseDialog1
set dialog = Nothing
End Sub

Pushbutton Event
The following script shows how the dialog box is initialized, allocated an ID, and
called up when the user clicks a pushbutton. (Note that this must appear on one
line in the script.)
Sub pushbutton1_OnClick( )

PlantScape Display Building Guide

211

plntdspb.book Page 212 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

dialog.ShowDialog1 1, ComboboxItemNo.Value, _
TextBoxText.Value,CheckboxValue.Value, _
ScrollbarValue.Value
End Sub

Retrieving the Data


The following script shows how the data is retrieved from the dialog box when
the user clicks OK or Cancel. The dialog box values are placed in text objects
called ComboboxItemNo, TextBoxText, CheckboxValue and
ScrollbarValue.
Note how the ID allows the event to determine which dialog box called the
UserObjectNotify method.
Sub Page_OnUserObjectNotify( lID, vParam )
if lID = 1 then
If vParam(1) = TRUE then
ComboboxItemNo.Value = vParam(2)
TextBoxText.Value = vParam(3)
CheckboxValue.Value = vParam(4)
ScrollbarValue.Value = vParam(5)
else
MsgBox "Cancelled"
end if
end if
End Sub

Creating the ActiveX component


The first step is to create an ActiveX component that can be created using a call
to CreateObject.
To create an ActiveX component in Visual Basic 5:
1
Create a new project.
2
Make the projects type ActiveX EXE.
3
Set the instancing property to Single Use.
4
Add a module to the project.
5
Within this module, add a public declaration of an object variable to hold a
reference to the current instance of Station (for example, Dim Station As
Object).
6
Add a class module to the project.
7
In the class module, add public methods to show and close each dialog box
you wish to use. These are the methods that are called from Station scripts.

212

R400

plntdspb.book Page 213 Monday, May 28, 2001 8:57 AM

Examples

9
10
11

Within the show methods, first get the current instance of Station using a
call to GetObject and assign it to the variable declared in the module. In the
remainder of the method, initialize and show the dialog box (do not try to
show it modally).
Within the close methods, it is necessary to unload the form and delete any
references to the Station object.
Create forms for each dialog box you wish to display.
In the code associated with closing the dialog box (such as an OK or Cancel
button click), add code to send the data from the dialog box back to Station.
Delete any references to the Station object and unload the form.

Issues when Creating Dialogs


One major issue to keep in mind when designing dialog boxes in this way is that
ActiveX components have no Z-order relationship with the Station application.
The dialog box runs in its own thread, independent of Station, and hence is not
required by Windows to stay on top of Station.
One solution to this problem is to make the dialog window stay on top of all
other windows. This is done by adding a call to the API function
SetWindowPos, as shown in the following example.
Note It is not possible to use modal dialogs in this way. If a dialog is
shown modally, Station will wait for the dialog to exit before continuing.
This will cause script timeout errors and communication timeouts.

Example
This example shows how the following dialog box is created and used. The
dialog box contains a combobox, text box, check box and horizontal scroll bar.
The names of these controls are Combo1, Text1, Check1 and Hscroll1.
Data is returned to Station in an array of variants, the first element of the array
being a boolean which is true if OK is clicked and false otherwise.
Note The Visual Basic project on which this example is based is in the
\examples folder, and is called vbexample.

PlantScape Display Building Guide

213

plntdspb.book Page 214 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Figure 5.9 An Example Dialog Box

Module1
In module1, the SetWindowPos function is declared (this must be contained on
one line) as well as declarations for the Station object and the dialog ID number.
The dialog ID number is used in Station to identify the dialog box that called the
UserObjectNotify method.
[module1]
Declare Function SetWindowPos Lib "user32"_
(ByVal hwnd As Long, ByVal hWndInsertAfter As Long,_
ByVal x As
Long, ByVal y As Long, ByVal cx As Long,_
ByVal cy As Long, ByVal wFlags As Long) As Long
Public Station As Object
Public DialogID As Long

Class1
In class1, the methods for showing and closing the dialog boxes are defined.
These functions are used by Station scripts.
[class1]
Option Explicit
Public Sub ShowDialog1(lIDin As Long, Combo1ListIndex _
As
Long, Text1Text As String, Check1Value As Long, _
HScroll1Value As Long)
Set Station = GetObject(, "Station.Application")
DialogID = lIDin
Form1.Combo1.ListIndex = Combo1ListIndex
Form1.Text1.Text = Text1Text

214

R400

plntdspb.book Page 215 Monday, May 28, 2001 8:57 AM

Examples

Form1.Check1.Value = ABS(Check1Value)
Form1.HScroll1.Value = HScroll1Value
Form1.Show
End Sub
Public Sub CloseDialog1()
Unload Form1
Set Station = Nothing
End Sub

Form1
In form1, the methods for closing down the dialog box and returning data to
Station are defined. As you can see, the data is returned to Station in an array of
variants. The first item of this array is a boolean used to determine whether OK
or Cancel was clicked.
[form1]
Private Sub OKButton_Click()
Dim ResultsArray(5) As Variant
ResultsArray(1) = True
ResultsArray(2) = Combo1.ListIndex
ResultsArray(3) = Text1.Text
ResultsArray(4) = Check1.Value
ResultsArray(5) = HScroll1.Value
Unload Form1
Station.Application.Page.UserObjectNotify DialogID,
ResultsArray
Set Station = Nothing
End Sub
Private Sub CancelButton_Click()
Dim ResultsArray(1) As Variant
ResultsArray(1) = False
Unload Form1
Station.Application.Page.UserObjectNotify DialogID,
ResultsArray
Set Station = Nothing
End Sub
Private Sub Form_Activate()
success& = SetWindowPos(hwnd, -1, 0, 0, 0, 0, &H10
Or &H40 Or &H2 Or &H1)
End Sub

PlantScape Display Building Guide

215

plntdspb.book Page 216 Monday, May 28, 2001 8:57 AM

5 Writing Scripts

Using the Document Property


The Document property of SafeBrowse and ActiveX Document objects gives a
script access to the automation object of the active document (if any) that is being
shown in the Web Browser. This allows scripts to both read and change elements
in a Dynamic HTML page, and to have full access to the automation object of an
application that the Web Browser is hosting.
The properties and methods available in the document object returned depend
on the document type. An error (property or method not supported) is returned if
a property or method that does not exist is called.
The following example illustrates how the Document property can be used for a
SafeBrowse object displaying an Excel worksheet. The script queries the name of
the current application and then sets a value in the spreadsheet. Two methods of
accessing the document property are shown, the first via a variable and the
second directly. It is important to release the reference to Excel in the appExcel
variable so that Excel shuts down when leaving the page.
Dim appExcel
Set the variable to the Docs App object (Excel)
Set appExcel = safebrowse1.Document.Application
Display the name in a message box
MsgBox appExcel.Name
Now free the reference to the application
Set appExcel = Nothing
Now reference the doc and set value of the current cell
safebrowse1.Document.Application.ActiveCell.Value = 12

216

R400

plntdspb.book Page 217 Monday, May 28, 2001 8:57 AM

Guidelines for Creating


User-friendly Displays
The aim of this chapter is to help you create well designed and user-friendly
displays.
When designing displays it is important to keep the following principles in mind:

Involve users and try to see the system from their perspective. It is a good
idea to involve users throughout the design and testing process. This helps
you focus on the design of the displays, and the tasks users need to
perform.

Use design elements consistently throughout all displays. Users will then
know how to interpret a display even if they have never seen it before or
use it infrequently.

When providing users with options, use checkboxes and comboboxes (lists
of valid choices), rather than forcing them to enter an obscure code or
number.

Avoid creating displays that are cluttered or have a haphazard layout. Well
designed displays are easier to understand and easier to use.

PlantScape Display Building Guide

217

plntdspb.book Page 218 Monday, May 28, 2001 8:57 AM

6 Guidelines for Creating User-friendly Displays

General Standards
The following general standards apply to all system displays and can be used to
help you create consistent custom displays. You may use them as the basis for
creating your own style guide.

Using Title Bars


Every display includes a display title bar.

Using Color
You need to design displays that are legible on any user selectable background
color. (The system displays use an embedded background graphic that overrides
the user selected background.)
Limit the use of color to either special conditions such as alarms and indicators,
or to show relatedness (on trend displays for example) by color keying. Do not
use color in an arbitrary manner. Too many colors or activity on a display leads to
confusion.
Color is very effective in indicating different states. However, do not rely on color
alone to indicate a state. Use color as a separate indicator showing redundant
information. For example, you could use a text field beside an LED style
dynamic.

Using Animation
The principles that apply to color also apply to animation. Too much activity on a
display can lead to confusion. Use animation sparingly for the most effective
results.

Using Navigation Aids


Use multiple navigation paths to cater for different user experience, preference
and input devices. Navigation aids include menus, accelerator keys (sometimes
known as short-cut keys), menu displays, and toolbars.
Use pull-down menus and menu displays for navigation to each subsystem at a
summary level. Use navigation buttons for navigation within a subsystem.
Use toolbar buttons only as a quick, redundant path to displays of system-wide
importance.
Keep the depth of any hierarchy to three levels or less, including cascading
menus.

218

R400

plntdspb.book Page 219 Monday, May 28, 2001 8:57 AM

General Standards

Keeping to the Text Standards


Use mixed case capitalization for headings and labels. Use lower case for
extended bodies of text. Avoid acronyms and abbreviations.
Keep your message simple and direct by:

Concentrating on user tasks rather than how Station and the server uses the
information

Avoiding assumed knowledge of the database structure

Avoiding colloquial language

Being conscious of international users and translation issues

Designing Layouts
In general, favor an asymmetric layout. Make use of blank regions to provide
balance and promote legibility.
Use similar layouts for similar displays or groups of information. For example,
make all report detail similar.
Align display components in a visually intelligible manner, based on an
underlying grid.
Use existing displays as templates for any new displays.

Layering
Layer displays so that the display title bar (and its elements) is displayed first,
followed by other display components from the top left to the bottom right in
order.

Title Bar
The title bar describes the contents or purpose of the display.
As a minimum, a title bar should show the (static) title and, if appropriate, an
icon for visual reinforcement. If the display contains a dynamic item or view (for
example, point detail displays show one specific point at a time), show the
current item or view as an additional dynamic title. Other dynamic objects such
as comboboxes or data entry fields that define the display view can also be
shown.

PlantScape Display Building Guide

219

plntdspb.book Page 220 Monday, May 28, 2001 8:57 AM

6 Guidelines for Creating User-friendly Displays

Locate navigation pushbuttons that call up related displays, but which do not
indicate the display contents, on the right of the display title bar. In this way the
right hand side of the title bar can be used like a display-specific toolbar,
removing clutter and distraction from the display and reinforcing the function of
buttons in this position.

Figure 6.1 Typical Title Bars

Alphanumeric Data Fields and Labels


Alphanumeric data fields present dynamic information. These fields are always
selectable but may or may not be editable. Labels are static text that identify these
alphanumeric fields.
Distinguish editable alphanumerics by using an indented border style. (Omit the
border for non-editable alphanumerics.)

Acronyms and Abbreviations


Try to avoid using acronyms and abbreviations unless they aid legibility.

Sizing and Alignment


The size of data fields depends to some extent on the type of data being
presented, however try to make the fields a uniform size. Align fields on the
display. Left-align groups of labels.

Editable versus Non-editable Fields


Indent editable fields so that users can distinguish them from non-editable fields.
If you do use a border for non-editable fields, use a grooved border, so that the
field remains on the same plane as the background.

220

R400

plntdspb.book Page 221 Monday, May 28, 2001 8:57 AM

General Standards

Figure 6.2 Editable Fields

Pushbuttons and Hyperlinks


Pushbuttons are used for navigation and task activation. Use a similar style for all
pushbuttons. The button contents can be blank or consist of a text label, a
graphic or both. Hyperlinks are made by positioning an invisible button over
blue underlined text.
Make sure that text is simple but descriptive/explanatory. If this is difficult, it may
be because the information needs to be reorganized so that it can be described
more easily.
Do not use labels on repeated pushbuttons; instead use a label to identify all the
pushbuttons.

Graphic Pushbuttons
You can use graphics on pushbuttons:

To save space when the item is redundant anyway (for example, display
title pushbuttons). The experienced user can use these buttons when the
graphics become familiar.

To reinforce the text description and make it quick and easy to recognize
(for example, menu displays).

To be used in conjunction with icons that are associated with the titles of the
displays being called up (for example, menu displays) so that the icon is
reinforced.
To create a graphic pushbutton:
1
Start with a light gray rectangle as the background (ensure you send it to the
back).
2
Draw a pushbutton of the same size with a light gray line style, and
transparent background (a background with no fill), and bring it to the
front.

PlantScape Display Building Guide

221

plntdspb.book Page 222 Monday, May 28, 2001 8:57 AM

6 Guidelines for Creating User-friendly Displays

3
4

Tip

Delete the pushbuttons default text.


Place the graphic on top.

Keep the graphic/icon simple.

Text pushbutton

Graphic pushbutton

Graphic and text pushbutton

Figure 6.3 Graphic Pushbuttons

Comboboxes
Comboboxes are used for selecting one item from a list, which appears when the
combobox is selected. The currently active choice will appear in the combobox.
Use a white background and black text.

Figure 6.4 A Typical Combobox

Checkboxes
Checkboxes are used for toggling the state of an item. The checkbox is checked
when the item is enabled and is white when disabled.
Only use a checkbox when a user can manually change the state (at some
security level). Otherwise, use LED indicators.
Use a white background and black text.

222

R400

plntdspb.book Page 223 Monday, May 28, 2001 8:57 AM

General Standards

Figure 6.5 Typical Checkboxes

Group Headings
You can use group headings to organize the information on your display so that it
is easier to comprehend.
As a general rule, use no more than eight group headings (or other items mixed
with group headings) on a display. If the display becomes cluttered, either
reorganize the information into different frame headings or use more than one
display.

Figure 6.6 Examples of Group Headings

Tables
Tables can include alphanumeric data fields, comboboxes, pushbuttons and
checkboxes. Large tables can use a scrollbar.
A table consists of a table heading and body of the table. The scrollbar is
optional.

PlantScape Display Building Guide

223

plntdspb.book Page 224 Monday, May 28, 2001 8:57 AM

6 Guidelines for Creating User-friendly Displays

The table heading identifies each column of the data. Each table row is
uniquely identified by one (or more) index fields that form part of the tabular
data. These index fields can be thought of as the independent variable(s) in the
table.
Add a scrollbar to a table if there are more rows than can be shown on the
display.
Note Application Programmers, ensure data that you want to be able to
scroll is laid out so that you can use record or field indexing to each line in
the table. The advantages of using a table with Scrollbar are substantial, as:

No extra displays are required

The display is not redrawn as you scrollonly the records change

The scrollbar slider indicates what view of the total data you are seeing

You can scroll by individual records or by pages of records

Figure 6.7 A Typical Table

Icons
Icons are used to reinforce display titles and also for navigation. An icon should
be a simple graphic symbol rather than a real picture.
When associated with display titles, icons help the user identify the display as
belonging to a certain subsystem or relevant to a particular subject. You can
reinforce this by using icons on menu pages and their pushbuttons. When these
buttons are pressed a display containing that icon is called up. For the
experienced user then, iconic pushbuttons on the toolbar and display title bar
provide a quick means of navigation.

224

R400

plntdspb.book Page 225 Monday, May 28, 2001 8:57 AM

General Standards

When creating icons, keep the following points in mind:

Simple icons are easier to remember and are less likely to appear
unprofessional.

Limit the number of icons to fairly broad categories of the application.

Re-use the icons in as many related areas as possible. The more frequently
an icon appears, the more likely it will be remembered. For example, you
could use a magnifying glass icon for all point detail displays.

Reinforce icons with text (where space permits) to assist in the learning
process.
Consider using icons in the following locations:

Preceding the display title

Navigation pushbuttons on the right hand side of the display title bar

Menu displays associated with text

Figure 6.8 Icons on a Toolbar

Faceplates and LEDs


Faceplates and LEDs appear on displays that emulate control panel
instrumentation. LEDs are used redundantly as state indicators.
Faceplates and LEDs are not intended to be photo-realistic, but are there to
reinforce a mental model of the system.
Keep the design as simple as possible. The aim is to suggest a real-world device,
not reproduce it. Too much detail is superfluous. Use a similar layout and style
for similar types of faceplates. Use existing faceplates as a basis.

PlantScape Display Building Guide

225

plntdspb.book Page 226 Monday, May 28, 2001 8:57 AM

6 Guidelines for Creating User-friendly Displays

Further Reading

Figure 6.9 Typical Faceplates


The following references contain more material on human-computer interface
design:
Laurel. B., Ed. (1990) The Art of Human-Computer Interface Design. Wellesley,
MA: Addison-Wesley.
Articles and essays by leaders in HCI. Easy to read with lots of interesting history
and information.
Norman, D. (1988). The Design of Everyday Things. New York: Basic Books.
Great information about designing for usability from a wide range of fields.
Shneiderman, B. (1992). Designing the User Interface: Strategies for Effective
Human-Computer Interaction. Reading, MA: Addison-Wesley.
A synthesis of computer science and psychology. Deals with the human factors
aspects of several types of system.
Tognazzini, B. (1992). Tog on Interface. Reading, MA: Addison-Wesley.
A good expose on the Apple Macintosh user interface.

226

R400

plntdspb.book Page 227 Monday, May 28, 2001 8:57 AM

Tutorial
This tutorial shows you how to create the simple display shown below.
In this tutorial you learn how to:

Draw and group display objects

Link display objects to the database

Animate display objects

Link to another display using a pushbutton

Save the display so that it can be called up in Station

Figure 7.1 The Display You Create in the Tutorial

PlantScape Display Building Guide

227

plntdspb.book Page 228 Monday, May 28, 2001 8:57 AM

7 Tutorial

Setting up the Drawing Window


When you start Display Builder, a blank drawing and several toolbars appear. If
the layout is not ideal, you can move and resize the drawing, and move the
toolbars to suit your particular needs.

Figure 7.2 Setting Up the Drawing Window

Setting the Background Color


In this tutorial, the background color is light-grey.
To set the displays background color:
1
Choose View Options to open the Options dialog box.
2
Choose light-grey from the Page background color property.
3
Click OK.

Activating Snap-to-grid
The snap-to-grid function makes it much easier to align display objects. To
activate snap-to-grid:
1
Click the Snap-to-Grid tool on the Arrange toolbar. Note that you
can turn off the function by clicking the tool a second time.
Tip

228

You can display the names of tools by moving the cursor slowly over the tools.

R400

plntdspb.book Page 229 Monday, May 28, 2001 8:57 AM

Drawing the Objects

Drawing the Objects


Drawing the Title
You are about to draw the displays title, Tank Level, in 18 point Times New
Roman.
To draw the title:
1
Choose Times New Roman from the Font tool.
2
Choose 18 from the Font Size tool.
Tip

Selecting the font and size while no text is selected changes the default font and
size. From now on, 18 point Times New Roman will be used whenever you create a
new object that contains text.
3
Click the Text tool on the Toolbox toolbar.
4
In the display, click where you want the title to start. A flashing bar-shaped
cursor marks the position of the first character.
5
Type Tank Level. If you make a mistake you can press <Backspace> to
delete unwanted characters.

Figure 7.3 Drawing the Title

PlantScape Display Building Guide

229

plntdspb.book Page 230 Monday, May 28, 2001 8:57 AM

7 Tutorial

Drawing the Pump


You are about to draw a red pump, comprising a circle and a rectangle that are
grouped together.
To draw the circle:
1
Click the Oval tool on the Toolbox toolbar. When you move the cursor to
the display, it changes to a cross-hair to help you draw the circle accurately.
2
Hold down <Shift> and drag the cursor diagonally across the drawing. As
you drag a dotted circle appears.
Tip

Holding down <Shift> forces Display Builder to draw a circle. If you want to draw
an oval, dont hold down <Shift>.
3
Release the mouse button when the circle is an appropriate size.

Figure 7.4 Drawing the Circle for the Pump

230

R400

plntdspb.book Page 231 Monday, May 28, 2001 8:57 AM

Drawing the Objects

To draw the rectangle:


1
Click the Rectangle tool on the Toolbox toolbar.
2
Starting at the top of the circle, drag diagonally down and to the right.
3
Release the mouse button when the rectangle is the correct size.

Figure 7.5 Drawing the Rectangle for the Pump


You can now group the circle and rectangle:
1
Click the Pointer tool on the Toolbox toolbar.
2
Starting above and to the left of the two objects, drag diagonally across
them. As you drag, a dotted rectangle appears.
3
Release the mouse button when both objects are entirely within the dotted
rectangle. When you release the mouse button both objects are selected, as
indicated by their selection handles.
4
Click the Group tool on the Arrange toolbar. The two objects are now, in
effect, one object.
You can now change the pumps fill and line colors:
1
Click the Fill Color tool on the Format toolbar and choose red from its
color palette.
2
Click the Line Color tool and choose X (which represents transparent)
from its color palette.
Tip

Changing the color (or any other property) of a selected object only changes that
objects colorit does not change the default color.

PlantScape Display Building Guide

231

plntdspb.book Page 232 Monday, May 28, 2001 8:57 AM

7 Tutorial

Moving and Resizing the Pump


Now that you have drawn the pump, you may want to move or resize it.
Note Because you activated the snap-to-grid function at the start of this
tutorial, moving and resizing an object are jerky operations. If you want
fine control, disable the snap-to-grid function by clicking the Snap-to-Grid
tool on the Arrange toolbar.
To move the pump:
1
Click the pump to select it.
2
While the cursor is over the pump, drag it as required.
To resize the pump:
1
Click the pump to select it.
2
Hold down <Shift> and drag on one of the corner handles until the pump is
the correct size.

Drawing the Tank


You are about to draw a tank, which consists of a U shaped polyline object. The
object has a raised line style to give a 3D effect.
1
Click the Polyline tool on the Toolbox toolbar.
2
Mark the first two vertices of the tank by clicking.
3
Mark the third vertex by double-clicking. (Double-clicking indicates that this
is the objects last vertex.)

Figure 7.6 Drawing the Tank

232

R400

plntdspb.book Page 233 Monday, May 28, 2001 8:57 AM

Drawing the Objects

Setting the Tanks Colors and Line Style


To set the tanks colors and line style:
1
Click the tank to select it.
2
Choose
from the Line Color tool on the Format toolbar. This sets the
line color to the page background color.
3
Choose Format Line Style 4 pixels to set the lines thickness.
4
Choose Format Effects Ridged to produce a suitable 3-D effect.
5
Choose black from the Fill Color tool to set the color of the tanks surface
to black. Note that this does not have any visible effect at the moment
however, you will see the effect shortly.

Drawing the Pipe


You are now about to draw the pipe which connects the pump to the tank. A
polyline object with a ridge-shading line style is used to draw the pipe.
To draw the pipe:
1
Click the Polyline tool on the Toolbox toolbar.
2
Click to mark the start of the pipe, below and to the left of the pump.
3
Click to mark the vertex immediately below the pump.
4
Click to mark the vertex inside the pump.
5
Double-click to mark the end of the pipe.

Figure 7.7 Drawing the Pipe

PlantScape Display Building Guide

233

plntdspb.book Page 234 Monday, May 28, 2001 8:57 AM

7 Tutorial

Setting the Pipes Line Style and Color


To set the pipes line style and color:
1
Click the pipe to select it.
2
Choose
from the Line Color tool on the Format toolbar. This sets the
line color to the page background color.
3
Choose Format Line Style 4 pixels.
4
Choose Format Effects Raised.

Putting the Pipe Behind the Pump


At the moment, your display looks odd because the pipe is on top of the pump.
You are now going to fix this by putting the pipe behind the pump.
To put the pipe behind the pump:
1
While the pipe is still selected, click the Send To Back tool on the Arrange
toolbar. This moves the selected object to the bottom of a stack of objects.

Figure 7.8 Putting the Pipe Behind the Pump

234

R400

plntdspb.book Page 235 Monday, May 28, 2001 8:57 AM

Drawing the Objects

Drawing and Configuring the Alphanumeric


You are about to draw an alphanumeric, link it to a point and set its display
characteristics.
To draw and configure the alphanumeric:
1
Click the Alphanumeric tool on the Toolbox toolbar.
2
Drag diagonally under the tank and release the mouse button when the
rectangle is an appropriate size. The alphanumeric, containing 9999.99,
appears. You may need to resize the alphanumeric so that it is deep and
wide enough to display real values.
3
Select the alphanumeric.
4
Click the Properties Window tool on the View toolbar. The Properties
window appears, showing the alphanumerics current properties.
Tip

If necessary, you can move the Properties window so that it doesnt obscure the
display.

Figure 7.9 Configuring the Alphanumeric


5
6

Tip

Click the Data tab and choose Point/Parameter from the Type of
database link property.
Type tanklevel (this is a points ID) in the Point property.

If you are creating the display on the server, Point will contain a list of all
database points. So, rather than typing the point ID, you simply select it from the
list.
7
Choose PV from the Parameter property.
8
Click the Details tab and choose Numeric from the Display as property.

PlantScape Display Building Guide

235

plntdspb.book Page 236 Monday, May 28, 2001 8:57 AM

7 Tutorial

Deselect the Floating decimal point checkbox and type 2 in the


Number of Decimals field.

Drawing and Configuring the Pushbutton


You are about to draw a pushbutton, labelled Overview, and configure it so
that, when pressed, it calls up another display called summary.dsp.
To draw and configure the pushbutton:
1
Click the Pushbutton tool on the Toolbox toolbar.
2
Drag out a rectangle for the pushbutton.
3
Select the pushbutton.
4
Choose light gray from the Fill Color tool on the Format toolbar.

Figure 7.10 Adding the Pushbutton


Tip

236

The Properties window always shows the properties of the selected object(s).
Consequently, it now shows the pushbuttons properties.
5
Click the Details tab on the Properties window.
6
Type Overview in the Label property.
7
Choose Callup Page from the Action property and type Summary in the
Page property. (Note that you do not have to add the filenames extension.)

R400

plntdspb.book Page 237 Monday, May 28, 2001 8:57 AM

Drawing the Objects

Animating the Pump


You are now about to configure the pump so that its color changes when the
point pumpsts changes state. The pump is to be red when the state is 0 and
green when the state is 1.
To animate the pump:
1
Select the pump. Note how the Properties window now displays the pumps
properties.
2
Click the Data tab and select Point/Parameter from the Type of
database link property.
3
Type pumpsts in the Point property.
4
Select PV from the Parameter property.
5
Click the Animation tab.
6
Choose Color breakpoints from the Type of animation property.
7
Choose Discrete from the Type of breakpoint property.
8
Choose Red from the Color box for State 0, and Green from the Color box
for State 1.

Animating the Tank with Level Fill


You are about to configure the tank so that it appears to fill (or empty) as the
value of the analog point, tanklevel, changes.
To configure the tank:
1
Select the tank. The Properties window now displays the tanks properties.
2
Click the Data tab and select Point/Parameter from the Type of
database link property.
3
Type tanklevel in the Point property.
4
Select PV from the Parameter property.
5
Click the Animation tab.
6
Select Level fill from the Type of animation property.
7
Select Continuous from the Type of breakpoint property.
8
Click the 0 to 100 (top-left) color box and select cyan from the color
palette. (With this selection, the color remains the same regardless of the fill
level. However, you could specify up to nine colors, each of which
represents a particular fill range. For example, you could select red for
levels between 0% and 10%, orange for levels between 11% and 20% and so
on.)

PlantScape Display Building Guide

237

plntdspb.book Page 238 Monday, May 28, 2001 8:57 AM

7 Tutorial

Figure 7.11 Animating the Tank with Level Fill

Saving the Display


You are about to give the display a title and save it as tutorial.dsp. (The title
appears on the Display Summary in Station.)
To give the display a title and close it:
1
Click a blank part of the display (away from any object). The Properties
window now shows the displays properties.
2
Click the General tab and type Tutorial Display in the Title property.
3
Choose File Close. A prompt appears.
4
Click the prompts Yes button. The Save As dialog box appears.
5
Type tutorial.dsp in the File Name field and then click Save to close
the dialog box.

238

R400

plntdspb.book Page 239 Monday, May 28, 2001 8:57 AM

Reference Information
For information about:

Go to:

Keyboard shortcuts

page 240

The shortcut menu, which appears when you right-click

page 241

Point detail displays

page 242

Exporting system displays

page 245

Using Display Builders command-line commands

page 246

DisplayInfo, a command-line information extraction tool

page 247

Creating shapes for early versions of old products

page 248

PlantScape Display Building Guide

239

plntdspb.book Page 240 Monday, May 28, 2001 8:57 AM

8 Reference Information

Keyboard Shortcuts

240

R400

Command

Shortcut

Arrange Align Bottom

<Ctrl>+<Y>

Arrange Align Center

<Ctrl>+<W>

Arrange Align Left

<Ctrl>+<Q>

Arrange Align Middle

<Ctrl>+<T>

Arrange Align Right

<Ctrl>+<E>

Arrange Align Top

<Ctrl>+<R>

Arrange Bring to Front

<Ctrl>+<L>

Arrange Group

<Ctrl>+<G>

Arrange Send to Back

<Ctrl>+<K>

Arrange Ungroup

<Ctrl>+<F>

Edit Copy

<Ctrl>+<C>

Edit Cut

<Ctrl>+<X>

Edit Delete

Delete

Edit Duplicate

<Ctrl>+<D>

Edit Paste

<Ctrl>+<V>

Edit Select All

<Ctrl>+<A>

Edit Undo

<Ctrl>+<Z>

File New Display

<Ctrl>+<N>

File Open

<Ctrl>+<O>

File Print

<Ctrl>+<P>

File Save

<Ctrl>+<S>

plntdspb.book Page 241 Monday, May 28, 2001 8:57 AM

Using the Shortcut Menu

Using the Shortcut Menu


If you right-click (press the right mouse button), a shortcut menu appears next to
the cursor.

Figure 8.1 Shortcut Menu

Select this:

To:

Cut

Cut the selected object to the clipboard.

Copy

Copy the selected object to the clipboard.

Paste

Paste the contents of the clipboard near the center of


the display.
If Paste is gray, it means the clipboard is empty.

Delete

Deletes the selected object(s).

Align

Select an alignment option for the selected objects.

Group

Group the selected objects.

Break Group

Ungroup the selected object(s).

Properties

Open/close the Properties window.

Script

Open the Script Editor window.

PlantScape Display Building Guide

241

plntdspb.book Page 242 Monday, May 28, 2001 8:57 AM

8 Reference Information

Point Detail Displays


A point detail display is used to display point information for all points of a
particular type. For example, there is one point detail display for status points,
another for analog points and so on.
Each time you create a new type of container, flexible or CDA point, you must
create a corresponding point detail display. You then add an appropriate display
objectsuch as an alphanumeric or indicatorfor each parameter you want
users to see.
The following procedure summarizes the special steps required when creating a
template display.
To create a point detail display:
1
Open a new display.
2
Select View Properties Window to open the Properties window.
3
Set Type to Point Detail.
4
Give the display an appropriate Title. For example, make it the same as the
name of the point type.
5
Add an appropriate display object for each parameter you want users to see.
6
Configure the Data tab properties for each of these display objects,
specifying the address details using the corresponding format:

Container Point Format

Flexible Point Format

CDA Point Format

Container Point Format

242

Property

Description

Type of database link

Select Point/Parameter.

Point

Leave blank.

R400

plntdspb.book Page 243 Monday, May 28, 2001 8:57 AM

Point Detail Displays

Property

Description

Parameter

The syntax is: Alias.Parameter


Where:
Alias is the name you defined in Quick Builder for
the contained (child) point
Parameter is parameter name.
For example, if you wanted to display the PV of a
contained point whose alias is HoursRun, you would
type: HoursRun.PV

Data entry allowed

Allows users to edit the objects value. (See


Understanding the Value Property on page 126.)
If you select Data entry allowed, Security Level
appears, from which you select the appropriate level.
(Only users with the specified level, or higher, can enter
data.)

Flexible Point Format


Property

Description

Type of database link

Select Point/Parameter.

Point

Leave blank.

Parameter

The parameter name.

Data entry allowed

Allows users to edit the objects value. (See


Understanding the Value Property on page 126.)
If you select Data entry allowed, Security Level
appears, from which you select the appropriate level.
(Only users with the specified level, or higher, can enter
data.)

CDA Point Format


Property

Description

Type of database link

Select Point/Parameter.

Point

The name of the control module.

PlantScape Display Building Guide

243

plntdspb.book Page 244 Monday, May 28, 2001 8:57 AM

8 Reference Information

Property

Description

Parameter

The syntax is: FunctionBlock.Tag


Where:
FunctionBlock is the name of the function block
within the control module
Tag is the name of the tag within the function block

Data entry allowed

Allows users to edit the objects value. (See


Understanding the Value Property on page 126.)
If you select Data entry allowed, Security Level
appears, from which you select the appropriate level.
(Only users with the specified level, or higher, can enter
data.)

244

R400

plntdspb.book Page 245 Monday, May 28, 2001 8:57 AM

Exporting System Displays

Exporting System Displays


You can use the command-line utility, export, to export all system displaysa
task you would do if you are moving displays from one system to another.
Syntax
export displaypath

Part

Description

displaypath

The full pathname of the folder in which the displays


are stored.

Notes

You cannot export custom displays.

Both Display Builder and the displays must be on the server.

Display Builder is not invoked interactively, which means that you cannot
modify the display(s).

PlantScape Display Building Guide

245

plntdspb.book Page 246 Monday, May 28, 2001 8:57 AM

8 Reference Information

Using Display Builders Command-Line Parameters


You can invoke Display Builder from the command line to open or export any
display (system or custom).
Syntax
To open a display:
dspbld displayname.dsp
To export a display:
dspbld -e|-es displayname.dsp [-out outfilename]

Part

Description

-e

Exports the display, and displays a warning message if


any display object references a non-existent point ID.

-es

Exports the display, but suppresses any warning


messages.

displayname.dsp

The display that is exported.

-out outfilename

Display Builder writes any warning messages to this file.

Notes
If you use -e or -es:

Both Display Builder and the display must be on the server.

Display Builder is not invoked interactively, which means that you cannot
modify the display.

246

R400

plntdspb.book Page 247 Monday, May 28, 2001 8:57 AM

Using DisplayInfo

Using DisplayInfo
DisplayInfo is a command-line utility that allows you to examine various display
details.
Syntax
displayinfo [options] displayfile

Part

Description

options

The options, which can be any order:


-d Provides details about the display objects.
-l Provides a shapelink summary.
-p Provides details about points referenced in the
display.
-s Lists scripts.
-v Generates a verbose (detailed) output.

displayfile

The name of the display.

Example
The following example shows the results if you use DisplayInfo without any
options:
DisplayInfo r### ...
Filename : MainBoiler.dsp
Type : Standard display
Title : Boiler Statuses
Last saved : Tue Aug 14 21:35:24 1998
File version : r###.# (0x22)
Total objects : 53
Total scripted objects : 16
Total dependent shapelinks : 3

PlantScape Display Building Guide

247

plntdspb.book Page 248 Monday, May 28, 2001 8:57 AM

8 Reference Information

Creating Shapes for Early Versions of Old Products


Note This topic only applies to XSM Release 515, SCAN 3000 Release 520
and XFi Release 520.
In these products/releases, each shape file:

Is assigned a unique number in the same way that page numbers are
assigned to displays

Contains only one shape

Drawing Shape Sequences


Old-style shape sequences work in the same way as current shapes, except for
the fact that each shape is stored in a separate shape file, as shown in the
following figure.

Figure 8.2 A Typical Shape Sequence


Notes

The shape numbers must be consecutive.

Shape numbers start at 201. The maximum shape number depends on


system sizing; for details, see the Installation Guide.

You must export each shape file.

248

R400

plntdspb.book Page 249 Monday, May 28, 2001 8:57 AM

Creating Shapes for Early Versions of Old Products

Creating a New Numbered Shape


To create a new shape:
1
Select File New Shape Sequence.
2
Open the Properties window, select Numbered shape and type the shape
number.

PlantScape Display Building Guide

249

plntdspb.book Page 250 Monday, May 28, 2001 8:57 AM

8 Reference Information

250

R400

plntdspb.book Page 1 Monday, May 28, 2001 8:57 AM

Glossary
acronym
An acronym is a text string that is used to represent a state or value of a point in a
display. From an operators point of view, it much easier to understand the significance
of an acronym such as Stopped, compared with an abstract value such as 0.
ActiveX component
An ActiveX component is a type of program designed to be called up from other
applications, rather than being executed independently. An example of an ActiveX
component is a custom dialog box, which works in conjunction with scripts, to facilitate
operator input into Station.
alarm
An indication (visual and/or audible) that alerts an operator at a Station of an abnormal
or critical condition. Each alarm has a type and a priority. Alarms can be assigned either
to individual points or for system-wide conditions, such as a controller communications
failure. Alarms can be viewed on a Station display and included in reports. PlantScape
classifies alarms into the following types:
PV Limit
Reasonable High and Reasonable Low
Control Failure
External Change
algorithm
See point algorithm.
analog point
A point type that is used to represent continuous values that are either real or integer.
Continuous values in a process could be: pressure, flow, fill levels, or temperature.
application program
A user-written program integrated into PlantScape using the Application Programming
Interface (API).

PlantScape Display Building Guide Glossary - 1

plntdspb.book Page 2 Monday, May 28, 2001 8:57 AM

Glossary

area
A logical sub-section of your plant or process. Custom displays, points, and access
configuration may be partitioned by area. Operators or Stations can be assigned access
to particular areas only.
bad value
A parameter value, (for example, PV), that is indeterminate, and is the result of
conditions such as unavailable input.
Client software
An umbrella term covering PlantScape, Quick Builder, Station, and Display Builder
software.
collection
A collection is a set of named values or display objects that are used in scripts.
default
The value that an application automatically selects if the user does not explicitly select
another value.
display
Station uses displays to present PlantScape information to operators in a manner that
they can understand. The style and complexity of displays varies according to the type
of information being presented.
Displays are created in Display Builder.
display object
A display object is a graphic element, such as an alphanumeric, a pushbutton or a
rectangle, in a display.
Display objects that represent point information (such as an alphanumeric) or issue
commands (such as a pushbutton) are called dynamic display objects.
event
Can have either of two meanings:
Within the context of the system, an event is a significant change in the status of an
element, such as a point or piece of hardware. Some events have a low, high, or
urgent priority, in which case they are further classified as alarms. Events can be
viewed on an operator Station display and included in reports.
Within the context of scripts, an event is a change in system status or an
operator-initiated action that causes a script to run.

Glossary - 2

R400

plntdspb.book Page 3 Monday, May 28, 2001 8:57 AM

Glossary

export
The process of registering a numbered display with the server so that it can be called up
in Station.
history
Point values stored to enable tracking and observation of long-term trends. Analog,
status, and accumulator point PVs can be defined to have history collected for
them.Three types of history collection are available:
Standard
Extended, and
Fast
local display object
A dynamic display object that displays information or issues a command, but which is
not linked to the server. Such display objects are used in conjunction with scripts.
method
A programmatic means of controlling or interrogating the Station Automation object
model. A method is equivalent to the terms function or command used in some
programming languages.
Mode
A point parameter which determines whether or not the operator can control the point
value. For example, in a status point, the mode determines whether the operator can
control the output value
Operating Group
A group of up to eight arbitrarily chosen points that can be viewed by an operator on a
standard Station display. An Operating Group can be defined in Quick Builder or in
Station.
operator ID
A unique identification assigned to each operator. If Operator-Based security is enabled,
the operator must use this ID and a password to sign on to a Station.
operator password
A character string (not echoed on screen) used with the operator ID to sign on to an
operator Station.
operator security level
PlantScape has six security levels defined for performing operations. An operator is
assigned a security level and may perform functions at or below that security level.

PlantScape Display Building Guide

Glossary - 3

plntdspb.book Page 4 Monday, May 28, 2001 8:57 AM

Glossary

Operator-Based security
An Operator-Based security comprises an operator ID and password, which must be
entered at an operator Station in order to access PlantScape functions.
Output
A point parameter used to issue control values. The output (OP) is often related to the
mode (MD) parameter and can be changed by an operator only if the mode is manual.
point
A data structure in the server database, usually containing information about a field
entity. A point can contain one or more parameters.
point algorithm
A prescribed set of well-defined rules used to enhance a points functionality. The point
algorithm accomplishes this by operating on the point data either before or after normal
point processing.
There are two types of point algorithms, PV (processed every time the point parameter
is scanned) and Action (processed only when a point parameter value changes).
Point Detail display
A display that shows the current point information. Each point has a Point Detail
display.
process variable
An actual value in a process: a temperature, flow, pressure, and so on. Process variables
may be sourced from another parameter and may also be calculated from two or more
measured or calculated variables using algorithms.
property
In Display Builder a property is attribute or characteristic of an object within the Station
Automation object model. For example, a display object has properties that define its
height, width and color.
PV algorithm
One of two types of algorithm you can assign to a point in order to perform additional
processing to change point parameter values. A PV algorithm changes the value of the
point process value (PV) input only. Contrast with Action algorithm.
report
Information collected by the server database that is formatted for viewing. There are
several pre-formatted reports, or the user can customize a report. Reports may be
generated on demand or at scheduled intervals. Reports can be printed or displayed on
an operator Station.

Glossary - 4

R400

plntdspb.book Page 5 Monday, May 28, 2001 8:57 AM

Glossary

SafeBrowse object
A SafeBrowse object is a Web browser specifically designed for use with Station.
SafeBrowse includes appropriate security features that prevent users from displaying
unauthorized Web pages or other documents in Station.
script
A script is a mini-program that performs a specific task. Scripts use the Station
Automation object model to control and interrogate Station and its displays.
security level
Access to PlantScape functions is limited by the security level of the operator.
PlantScape has six security levels.
server
The computer on which the PlantScape database software runs.
Server software
An umbrella term used to refer to the database software and server utilities installed on
the PlantScape server computer.
server Station
A computer running both the PlantScape database (server) software and the Station
software. This computer can also be used as an operator Station.
setpoint
The desired value of a process variable. Setpoint is an analog point parameter, and the
value is entered by the operator. The setpoint can be changed any number of times
during a single process. The setpoint is represented in engineering units.
shape
A shape is a special type of display object that can be used in numerous displays.
Shapes can be used as clip-art or as shape sequences.
shapelink
A shapelink is, in effect, a window which always displays one shape of a shape
sequence. For example, a shapelink representing a points status displays the shape that
corresponds to the current status.
shape sequence
A shape sequence is a set of related shapes that are used in conjunction with shapelinks.
A shape sequences can be used to:
Represent the status of a point. (Each shape represents a particular status.)
Create an animation. (Each shape is one frame in the animation.)

PlantScape Display Building Guide

Glossary - 5

plntdspb.book Page 6 Monday, May 28, 2001 8:57 AM

Glossary

softkey
A softkey is a function key which, when pressed, performs the action specified by the
current display.
Station
The main operator interface to PlantScape. Stations may run on either a remote
computer through a serial or LAN link, or on the server computer.
When Station is running on the PlantScape server computer, it is often referred to as a
server Station. When it is running on a machine other than the server, it is often referred
to as an operator Station.
Station Automation object model
The Station Automation object model provides the programming interface through
which scripts control Station and its displays.
status point
A point type used to represent discrete or digital field values.
Output values can be used to control up to two consecutive discrete locations in a
controller. Output values can be automatic or operator-defined.
Mode values apply to output values and determine whether or not the output value is
operator-defined or automatic.
task
A task is any of the standard server programs or an application program that can be
invoked from a display.
timer
A timer is a programming mechanism for running scripts at regular intervals in Station.
URL
Uniform Resource Locator. For example, a Web address.
utility
PlantScape programs run from a command line to perform configuration and
maintenance functions; for example, the lisscn utility.

Glossary - 6

R400

plntdspb.book Page 1 Monday, May 28, 2001 8:57 AM

Index
tool, 10
Animation tab, Properties window,

A
accelerator keys,

240

acronyms
adding custom acronym display to menu,
creating a custom acronym display, 81
creating a custom acronym file, 81
custom, 80, 81, 82
default, 79
defining custom, 82
described, 79
selecting, 80, 82
system, 79
user, 79
actions, assigning to keys, 88
ActiveX component, 210
ActiveX Documents
described, 10
properties, 54
tool, 10
Add method, 134
AddListItem method,

56

Arc tool, 10
Arrange toolbar,

44
47

12

Automation object model,


Automation, scope, 110

98

B
BeginCriticalSection method,

136

Blue method, 137


Bold tool, 14

135

Alarm Line
properties, 55
tool, 11
Align tools
Bottom (of page), 13
Center (a display object), 13
Left (a display object), 13
Middle (of page), 13
Page Center, 13
Right (a display object), 13
Top (of page), 13
aligning display objects, 19
alphanumeric
properties,

82

Appearance tab, Properties window,


Application object
described, 98
reference, 113
AppWindow object
described, 98
reference, 117

bring display object to front,


Bring To Front tool, 12

20

C
callup task, 89
CancelChange method,

138

CancelClick method, 139


CancelDoubleClick method,

140

CancelNavigate method, 141


charts
Custom XY tab, 48
Details tab, 58
Options tab, Properties window,
tool, 11
XY Plot tab, 78

73

PlantScape Display Building Guide Index - 1

plntdspb.book Page 2 Monday, May 28, 2001 8:57 AM

Index
checkbox
properties,
tool, 11

59

Clear method, 143


collections
Dictionary, 98, 119
Objects, 129
colors
selecting, 22
system defined, 46
combobox
properties,
tool, 11

60

commands (command-line)
displayinfo, 247
dspbld, 246
export, 245
coordinates
converting between logical and display,
display, 205
logical, 205
Copy tool, 8
CreateTimer method,

144

creating
display objects, 17
displays, 38
dynamic shape, 29
shape sequence, 28
Custom XY Plot tab, Properties window,
Cut tool, 8

D
Data tab, Properties window, 49
debugging scripts
clearing the server connection,
overview, 108
defaults, setting, 16
deleting a display object,

21
deselecting display objects, 18
Details tab, Properties window,
dialog boxes, custom,

Index - 2

R400

210

54

109

48

205

Dictionary objects
described, 98
reference, 119
using, 104
display objects
aligning, 19
bringing to front, 20
creating, 17
deleting, 21
deselecting, 18
distributing, 19
duplicating, 20
dynamic, 169
editing, 21
flipping, 19
grouping, 20
handles when selected, 17
linking to the database, 26, 49
local, 53
locking, 18
moving, 22
nudging, 22
object model, 99
properties, 24, 43
resizing, 20
rotating, 21
script reference, 121
scripting object, 99
scripting reference, 121
selecting, 17
sending to back, 20
types of, 125
ungrouping, 20
Display tool, 8
DisplayInfo, described, 247
displays
checking point IDs in remotely-built
display, 41
coordinates, 205
creating, 38
defining properties, 38
described, 5
exporting, 246
exporting numbered, 42
exporting system, 245

plntdspb.book Page 3 Monday, May 28, 2001 8:57 AM

Index
file formats, 39
help, assigning, 92
linking via hypertext, 33
named versus numbered, 39
object model, 99
opening, 40
options, 36
point detail, 242
properties, 86, 88, 89, 90, 92
restricting access to, 87
saving, 38
template (point detail), 242
viewing details, 247
working with several, 40
distributing
display objects, 19
files, 41
document (help), assigning to a display,

OnClick, 181
OnConnect, 182
OnDisconnect, 183
OnDoubleClick, 184
OnDownloadBegin, 185
OnDownloadComplete, 186
OnFocus, 187
OnLoad, 188
OnMenu, 189
OnMouseEnter, 190
OnMouseLeave, 191
OnMouseMove, 192
OnNavigateComplete, 193
OnOperatorChange, 194
OnOperatorCommand, 195
OnPageComplete, 196
OnPageLoad, 197
OnPeriodicUpdate, 198
OnQuit, 199
OnRightClick, 200
OnTimer, 201
OnUnload, 202
OnUpdate, 203
OnUserObjectNotify, 204, 210
validating, 101
ExecuteOperatorCommand method, 148

93

DPToLPX method,
DPToLPY method,

146
146
drawing techniques, 16
Duplicate tool, 8
duplicating a display object,
Dynamic Shape tool, 8

20

dynamic shapes
creating, 29, 38
described, 29
linking, 30

exporting
numbered displays, 42
single displays, 246
system displays, 245

editing display objects, 21


EndCriticalSection method, 147

files
display, 38
distributing, 41
formats for earlier releases/products,
properties, 85
shape, 27

Even Horizontal Spacing tool, 13


Even Vertical Spacing tool, 13
events
described, 99
handlers, 101
handling within groups and shapelinks,
OnAlarm, 176
OnAppStartup, 177
OnBeginNavigate, 178
OnChange, 179

105

Fill Color tool,


Find tool, 8

39

15

Flip tools
Horizontal, 13
Vertical, 13
flipping display objects,

19

PlantScape Display Building Guide Index - 3

plntdspb.book Page 4 Monday, May 28, 2001 8:57 AM

Index
Font
tab, Properties window,
tool, 14

properties,
tool, 11

70

61

Font Size tool, 14


Format toolbar, 14

inserting
graphic, 34
text, 35

formats, display, 39
Freehand Line tool, 9

InvokeMenu method,
Italics tool, 14
Item method,

G
general scripts
described, 102
visibility, 104
General tab, Properties window,

Justify tools
Center (text), 15
Left (text), 15
Right (text), 15

71

GoForward method, 151


GoHome method, 152

keys
assigning action to, 88
shortcut, 240
KillTimer method, 157

GoSearch method, 153


graphics
formats supported, 34
inserting, 34
Green method, 154

Grid tool, 11
groups
creating, 20
referencing objects within, 102
tool, 12
guidelines for creating displays, 217

layout of Display Builder,

handles of selected display object,

Line Color tool,


Line tool, 9

I
indicator

Index - 4

R400

local display object, described,


Lock Objects Toggle tool, 14

92

33

15

linking display objects to the database


defining, 49
described, 26
linking to a dynamic shape, 30

17

HTML Help, assigning a topic to a display,


HTML page, linking to displays, 33

library, shapes
registering, 31
supplied, 31

hypertext link to displays,

156

GetResponse method, 149


GoBack method, 150

help
assigning to a display,
Help tool, 8

155

92

locking display objects, 18


LPToDPX method, 158
LPToDPY method,
LRN, 89, 90

158

53

plntdspb.book Page 5 Monday, May 28, 2001 8:57 AM

Index

M
MakeColor method,

159

menu, shortcut, 241


methods
Add, 134
AddListItem, 135
BeginCriticalSection, 136
Blue, 137
CancelChange, 138
CancelClick, 139
CancelDoubleClick, 140
CancelNavigate, 141
CancelOperatorCommand, 142
Clear, 143
CreateTimer, 144
described, 99
DPToLPX, 146
DPToLPY, 146
EndCriticalSection, 147
ExecuteOperatorCommand, 148
GetResponse, 149
GoBack, 150
GoForward, 151
GoHome, 152
GoSearch, 153
Green, 154
InvokeMenu, 155
Item, 156
KillTimer, 157
LPToDPX, 158
LPToDPY, 158
MakeColor, 159
OpenHelp, 160
Quit, 161
Red, 162
Redraw, 163
Refresh, 164
Remove, 165
RemoveListItem, 166
RequestServerLRN, 167
SelectText, 168
SetFocus, 169
Shell, 170
Sleep, 171

Stop, 172
Update, 173
UserObjectNotify, 174, 210
using, 103
using another objects, 103
modeless window, described, 24
mouse coordinates, 205
moving display objects, 22

N
named display, described,

39
22

nudging display objects,


number of an object within a collection,
numbered display, described,

103

39

O
object model
Application, 98
AppWindow, 98
described, 98
Dictionary, 98
events, 99
methods, 99
Page, 98
properties, 99
objects
Application, 113
AppWindow, 117
Dictionary, 119
Display Objects, 121
number within a collection,
Objects collection, 129
Page, 131
referencing, 102
tools for creating, 9

103

Objects collection, 129


offset, controlling with a scrollbar,

66

OnAlarm event, 176


OnAppStartup event, 177
OnBeginNavigate event,
OnChange event, 179

178

PlantScape Display Building Guide Index - 5

plntdspb.book Page 6 Monday, May 28, 2001 8:57 AM

Index
OnClick event,

periodic task,

181

90

OnConnect event, 182


OnDisconnect event, 183

periodic update events, 105


point detail displays, 242

OnDoubleClick event, 184


OnDownloadBegin event, 185

Pointer tool, 9
points
checking ID on remotely-built display,
linking to a display object, 49

OnDownloadComplete event,
OnFocus event, 187

186

OnLoad event,

Polygon tool,
Polyline tool,

OnMouseEnter event,

Print tool, 8
properties
described, 24, 99
display file, 86, 88, 89, 90, 92
display object, 43
displays and shape files, 85
scripts, 99
shape file, 95

188
OnMenu event, 189
190
OnMouseLeave event, 191
OnMouseMove event, 192
OnNavigateComplete event, 193
OnOperatorChange event, 194
OnOperatorCommand event, 195
OnPageComplete event, 196
OnPageLoad event, 197
OnPeriodicUpdate event, 198
OnQuit event, 199
OnRightClick event, 200
OnTimer event,
OnUdate event,

201
203
OnUnload event, 202
OnUserObjectNotify event,
Open tool, 8
OpenHelp method,

160

10

P
Page object
described, 98
object model, 99
reference, 131
pasting
graphic, 34
text, 35
tool, 8

Index - 6

R400

Properties window
described, 24
display and shape file properties,
display object properties, 43
tool, 12
pushbutton
properties,
tool, 10

85

62

204, 210

opening a file, 40
options, display, 36
Oval tool,

10
10

Quit method,

161

R
Rectangle tool, 10
Red method, 162
Redraw method, 163
referencing
Application object, 103
attached object, 102
objects by number, 103
objects within a display, 103
objects within groups or shapes,
other objects, 102
rules for, 102

102

41

plntdspb.book Page 7 Monday, May 28, 2001 8:57 AM

Index
shapes and shapelinks,
Refresh method, 164
registering shape folders,

writing,

105
31

remotely-built displays, checking,


Remove method, 165

41

RemoveListItem method, 166


repeat properties of a display object,
Repeats tab, Properties window,

75

75

RequestServerLRN method, 167


resizing display objects, 20

SelectText method, 168


send display object to back,

Rotate tools
Left, 13
Right, 13
rotating display objects,
Rotator tool, 9

10

setting defaults, 16
shape files
defining properties,
properties, 95
Shape Gallery
described, 30
tool, 12

S
SafeBrowse
described, 32
properties, 64
tool, 10
URL formats, 32

38

SCAN 2000, display format,


Script window
tool, 12
using, 106

20

Send To Back tool, 12


server connection, clearing when
debugging, 109
SetFocus method, 169

21

Rounded Rectangle tool,


Rulers tool, 11

Save tool, 8
saving a display,

97

scrollbars
controlling offset with, 66
introduction to, 65
properties, 64
range, 68
setting a value with, 66
tool, 11
selecting
display objects, 17
shapes for display, 105

39

scripts
Automation object model, 98
debugging, 108
clearing the server connection,
overview, 108
display-based, 106
examples, 206
general, 102
shape file-based, 106
Station-based, 107
understanding, 101

109

38

Shape Sequence tool, 8


shape sequences
creating, 28, 38
described, 27
shapelinks
described, 27
script, 104
shapes
described, 27
dynamic, described, 29
file, 27
folders, registering, 31
library, supplied, 31
referencing, 102
scripts, 104
selecting for display, 105
sequence, described, 27
Shape Gallery, 30
viewing, 30

PlantScape Display Building Guide Index - 7

plntdspb.book Page 8 Monday, May 28, 2001 8:57 AM

Index
Shell method,

170

shortcut keys, 240


shortcut menus, 241
Sleep method, 171
Snap-to-Grid tool, 11
starting Display Builder, 6
Station
Automation object model, 98
controlled by another application, 209
controlling another application, 209
help, configuring, 92
scripts, 107
Stop method, 172

T
tab, Properties window
Animation, 44
Appearance, 47
Custom XY Plot, 48
Data, 49
Details, 54
Font, 70
General, 71
Options, 73
Repeats, 75
XY Plot, 78
task request, specifying, 89, 90
template displays (point detail), 242
text
inserting from another application,
properties, 69
tool, 9
timers
described, 105
periodic update,
toolbars
Arrange, 12
described, 7
Format, 14
Toolbox, 9
View, 11
Toolbox toolbar,

Index - 8

R400

105

35

tools
ActiveX Document, 10
Alarm Line, 11
Align Bottom, 13
Align Center (a display object), 13
Align Left (display object), 13
Align Middle, 13
Align Right (display object), 13
Align to Page Center, 13
Align to Page Middle, 13
Align Top, 13
Alphanumeric, 10
Arc, 10
Bold, 14
Bring To Front, 12
Chart, 11
Checkbox, 11
Combobox, 11
Copy, 8
Cut, 8
Display, 8
Duplicate, 8
Dynamic Shape, 8
Even Horizontal Spacing, 13
Even Vertical Spacing, 13
Fill Color, 15
Find, 8
Flip Horizontal, 13
Flip Vertical, 13
Font, 14
Font Size, 14
Freehand Line, 9
Grid, 11
Group, 12
Help, 8
Indicator, 11
Italics, 14
Justify Center (text), 15
Justify Left (text), 15
Justify Right (text), 15
Line, 9
Line Color, 15
Lock Objects Toggle, 14
Open, 8
Oval, 10

plntdspb.book Page 9 Monday, May 28, 2001 8:57 AM

Index
Paste, 8
Pointer, 9
Polygon, 10
Polyline, 10
Print, 8
Properties Window, 12
Pushbutton, 10
Rectangle, 10
Rotate Left, 13
Rotate Right, 13
Rotator, 9
Rounded Rectangle, 10
Rulers, 11
SafeBrowse, 10
Save, 8
Script Window, 12
Scrollbar, 11
Send To Back, 12
Shape Gallery, 12
Shape Sequence, 8
Snap-to-Grid, 11
Text, 9
Underline, 14
Undo, 8
Ungroup, 12
Video, 10
Wedge, 10
Zoomer, 9

V
validating events,

View toolbar,

41

11

W
Web browser
SafeBrowse,
tool, 10

32

Wedge tool, 10
windows
Properties, 24
Shape Gallery, 30
working with files, 40
writing scripts,

97

X
XFI, display format, 39
XSM, display format, 39
XY Plot tab, Properties window,

78

topic, assigning a HTML Help topic to a


display, 92
tutorial, 227
types of display object,

101

validating point IDs in remotely-built display,


Video tool, 10

Zoomer tool,

125

U
Underline tool,
Undo tool, 8

14

undoing the previous action,


Ungroup tool, 12

23

Update method, 173


URL formats, 32
user file, linking a display object to, 50
UserObjectNotify method, 174, 210

PlantScape Display Building Guide Index - 9

plntdspb.book Page 10 Monday, May 28, 2001 8:57 AM

Index

Index - 10

R400

Das könnte Ihnen auch gefallen