Sei sulla pagina 1di 339

ELIPSESCADA

HMI/SCADA SOFTWARE

USERS MANUAL

2010 Elipse Software Ltda. All rights reserved.


8/13/2010 - Version 2.29

Table of Contents
1.
1.1.
1.2.
1.3.
2.
2.1.

2.2.

2.3.
2.4.
3.
3.1.
3.2.

INTRODUCTION .......................................................................................................................................................... 9
ELIPSE SCADA PACKAGES ..................................................................................................................................... 9
OPERATIONAL MODULES ....................................................................................................................................... 11
PLUG-INS

.................................................................................................................................................... 11

WHAT IS ON SCREEN .............................................................................................................................................. 13


MENU OPTIONS .................................................................................................................................................... 14
2.1.1.
File Menu .............................................................................................................................................. 14
2.1.2.
Screen Menu ......................................................................................................................................... 15
2.1.3.
Objects Menu ........................................................................................................................................ 16
2.1.4.
Arrange Menu ....................................................................................................................................... 17
2.1.5.
View Menu ............................................................................................................................................ 18
2.1.6.
Help Menu ............................................................................................................................................. 18
TOOLBARS ............................................................................................................................................................ 19
2.2.1.
Application Toolbar................................................................................................................................ 19
2.2.2.
Objects Toolbar ..................................................................................................................................... 20
2.2.3.
Arrange Toolbar .................................................................................................................................... 21
2.2.4.
Screens Toolbar .................................................................................................................................... 22
SHORTCUT KEYS .................................................................................................................................................. 23
COMMAND LINE OPTIONS ...................................................................................................................................... 24
ORGANIZER .............................................................................................................................................................. 25
APPBROWSER ...................................................................................................................................................... 28
CREATING NEW APPLICATION ................................................................................................................................ 29
3.2.1.
General Properties of the Application .................................................................................................... 30
3.2.2.
Application Window ............................................................................................................................... 32
3.2.3.
Touch Screen ........................................................................................................................................ 33

3.3.

3.2.4.
Elipse Web
................................................................................................................................. 34
SCRIPTS ............................................................................................................................................................... 35

4.1.
4.2.
4.3.
4.4.

TAGS.......................................................................................................................................................................... 37
TAGS GROUP ........................................................................................................................................................ 37
NEW TAG.............................................................................................................................................................. 38
CHRONO TAG ....................................................................................................................................................... 40
PLC TAG .............................................................................................................................................................. 41

4.

4.5.
4.6.
4.7.
4.8.

DDE TAG
................................................................................................................................................... 44
DEMO TAG ............................................................................................................................................................ 47
EXPRESSION TAG ................................................................................................................................................. 48
BLOCK TAG........................................................................................................................................................... 50
4.8.1.
Block Element ....................................................................................................................................... 52
4.9.
RAM TAG .............................................................................................................................................................. 53
4.10.
MATRIX TAG .................................................................................................................................................. 54
4.11.
BIT TAG ......................................................................................................................................................... 55
4.12.
ALARM PAGE ................................................................................................................................................. 57
4.13.
TAGS SCRIPTS............................................................................................................................................... 59
5.
5.1.
5.2.
5.3.
6.

SCREENS .................................................................................................................................................................. 61
GENERAL PROPERTIES OF SCREEN ....................................................................................................................... 63
STYLE PROPERTIES OF SCREEN............................................................................................................................ 64
SCREEN SCRIPTS ................................................................................................................................................. 66

SCREEN OBJECTS ................................................................................................................................................... 67


EDITING OF SCREEN OBJECTS .............................................................................................................................. 67
PROPERTIES OF SCREEN OBJECTS ....................................................................................................................... 67
6.2.1.
Size and Pos Page ................................................................................................................................ 68
6.2.2.
Frame Page .......................................................................................................................................... 70
6.2.3.
Tags Page ............................................................................................................................................. 71
6.3.
SCRIPTS OF SCREEN OBJECTS ............................................................................................................................. 72
6.4.
CROSS-REFERENCE ............................................................................................................................................. 73
6.5.
VISUALIZATION OBJECTS....................................................................................................................................... 74
6.5.1.
Text ....................................................................................................................................................... 74
6.1.
6.2.

6.5.2.
6.5.3.
6.5.4.
6.5.5.

Display .................................................................................................................................................. 76
Browser ................................................................................................................................................. 79
Bitmap ................................................................................................................................................... 85
Animation .............................................................................................................................................. 86

6.5.6.

AVI

6.5.7.

Video

.............................................................................................................................................. 89
.......................................................................................................................................... 90

6.5.8.
Preview
....................................................................................................................................... 92
6.5.9.
Trend..................................................................................................................................................... 93
6.5.10.
Bar Graph ........................................................................................................................................... 100
6.5.11.
Gauge ................................................................................................................................................. 105
6.6.
INTERACTION OBJECT ......................................................................................................................................... 108
6.6.1.
Slider ................................................................................................................................................... 108
6.6.2.
Button.................................................................................................................................................. 110
6.6.3.
Setpoint ............................................................................................................................................... 114
6.6.4.
Alarms ................................................................................................................................................. 118
7.
7.1.
7.2.

ALARMS .................................................................................................................................................................. 125


GENERAL ALARM PROPERTIES............................................................................................................................ 125
ALARM SCRIPTS ................................................................................................................................................. 126

8.1.
8.2.

RECIPES .................................................................................................................................................................. 127


GENERAL RECIPE PROPERTIES ........................................................................................................................... 127
EDITING RECIPES ............................................................................................................................................... 129

9.1.
9.2.

HISTORIC ................................................................................................................................................................ 131


GENERAL HISTORIC PROPERTIES........................................................................................................................ 131
HANALYSIS ......................................................................................................................................................... 132

8.

9.

9.3.
10.

STATISTICAL PROCESS CONTROL

............................................................................................................. 140

REPORTS ................................................................................................................................................................ 153


10.1.
GENERAL PROPERTIES ................................................................................................................................ 155
10.2.
SETTINGS .................................................................................................................................................... 156
10.3.
QUERY ........................................................................................................................................................ 157
10.4.
DATABASE ................................................................................................................................................... 158
10.5.
BATCH......................................................................................................................................................... 161
10.6.
GRAPH ........................................................................................................................................................ 163
10.7.
PENS........................................................................................................................................................... 165
10.8.
SCRIPTS ...................................................................................................................................................... 166
10.9.
FORMATTED REPORT................................................................................................................................... 167
10.10.

HANALYSIS REPORT

.......................................................................................................................... 167

11.

DRIVERS.................................................................................................................................................................. 169
11.1.
SETTING UP DRIVERS .................................................................................................................................. 169
11.1.1.
PLC Drivers ......................................................................................................................................... 170
11.1.2.
Network drivers ................................................................................................................................... 173
11.2.
DRIVER SCRIPTS ......................................................................................................................................... 176
11.3.
LIST OF ASSOCIATED TAGS .......................................................................................................................... 176

12.

DATABASE.............................................................................................................................................................. 177

13.

USERS ..................................................................................................................................................................... 181


13.1.
FUNCTIONS AND ATTRIBUTES....................................................................................................................... 183
13.2.
LOGIN SCRIPTS ........................................................................................................................................... 184

14.

REMOTE APPLICATIONS....................................................................................................................................... 185


14.1.
GENERAL PROPERTIES ................................................................................................................................ 186
14.2.
SCRIPTS OF REMOTE APPLICATIONS ............................................................................................................ 189

15.

ELIPSE WEB ........................................................................................................................................................... 191

16.

WATCHER ............................................................................................................................................................... 193


16.1.
W ATCHER OBJECTS .................................................................................................................................... 194

17.

STEEPLECHASE ..................................................................................................................................................... 207

18.

OPCSERVER
............................................................................................................................................... 209
18.1.
GENERAL PROPERTIES OF OPCSERVER ...................................................................................................... 210
18.2.
OPC TAGS .................................................................................................................................................. 212
18.3.
OPC GROUPS ............................................................................................................................................. 216
18.4.
QUALITY ...................................................................................................................................................... 217

19.

SCRIPTS .................................................................................................................................................................. 219


19.1.
GENERAL CONSIDERATIONS......................................................................................................................... 219
19.2.
APPBROWSER AND CROSSED REFERENCE .................................................................................................. 220
19.3.
OPERATORS AND CONSTANTS ..................................................................................................................... 222
19.4.
FLOW CONTROL .......................................................................................................................................... 224
19.4.1.
IfElseElseIfEndIf Command ...................................................................................................... 224
19.4.2.
ForNext Command .......................................................................................................................... 224
19.4.3.
WhileWend Command ..................................................................................................................... 225
19.4.4.
RepeatUntil Command .................................................................................................................... 225
19.4.5.
Return Command ................................................................................................................................ 225
19.5.
SPECIAL FUNCTIONS .................................................................................................................................... 226
19.5.1.
Global Manager Functions .................................................................................................................. 226
19.5.2.
Application Functions .......................................................................................................................... 249
19.5.3.
Tag Functions ..................................................................................................................................... 251
19.5.4.
Screen Functions ................................................................................................................................ 255
19.5.5.
Screen Objects Functions ................................................................................................................... 256
19.5.6.
Alarms Functions................................................................................................................................. 263
19.5.7.
Recipes Functions ............................................................................................................................... 266
19.5.8.
Historic Functions ................................................................................................................................ 268
19.5.9.

HAnalysis Functions

................................................................................................................. 270

19.5.10.
19.5.11.
19.5.12.
19.5.13.
19.5.14.

SPC Functions
.......................................................................................................................... 271
Report Functions ................................................................................................................................. 271
Query Functions .................................................................................................................................. 273
Plotter Functions ................................................................................................................................. 273
Drivers Functions ................................................................................................................................ 274

19.5.15.
19.5.16.

Database Functions
.................................................................................................................. 276
Remote Applications Functions ........................................................................................................... 282

19.5.17.
OPCServer Functions
.............................................................................................................. 283
19.6.
ATTRIBUTES ................................................................................................................................................ 283
19.6.1.
Global Manager Attributes ................................................................................................................... 284
19.6.2.
Application Attributes........................................................................................................................... 284
19.6.3.
Tags Attributes .................................................................................................................................... 288
19.6.4.
Screen Attributes ................................................................................................................................. 294
19.6.5.
Attributes of Screen Objects................................................................................................................ 296
19.6.6.
Plotter Attributes .................................................................................................................................. 317
19.6.7.
Alarms Attributes ................................................................................................................................. 321
19.6.8.
Recipe Attributes ................................................................................................................................. 322
19.6.9.
Historic Attributes ................................................................................................................................ 322
19.6.10.
19.6.11.

HAnalysis Attributes
.................................................................................................................. 323
Query Attributes .................................................................................................................................. 324

19.6.12.
19.6.13.
19.6.14.
19.6.15.

SPC Attributes
........................................................................................................................... 325
Batches Attributes ............................................................................................................................... 326
Reports Attributes................................................................................................................................ 326
Drivers Attributes ................................................................................................................................. 327

19.6.16.
19.6.17.
19.6.18.

Database Attributes
.................................................................................................................. 329
Attributes of the Users List .................................................................................................................. 329
Remote Application Attributes ............................................................................................................. 329

19.6.19.

Watcher Attributes

19.6.20.

Steeplechase Attributes

19.6.21.

OPCServer Attributes

.................................................................................................................... 333
............................................................................................................ 335
............................................................................................................... 335

20.

SUPPORT TO DDE.................................................................................................................................................. 337


20.1.
ELIPSE SCADA AS CLIENT........................................................................................................................... 337
20.2.
ELIPSE SCADA AS SERVER ......................................................................................................................... 339

Conventions
These are conventions used in this manual:

EXAMPLE

SILO6.BMP
General

Agitation
Screen1.Show()

Tank01.High
<name of file>
[Ctrl+Enter]

DESCRIPTION

Names of files and other terms at operational system level are


indicated in Tahoma font, in capital letters.
Names of fields and options that should be searched on screen, in
menus, or in the cards of objects are indicated in Tahoma font.
Characters between quotation marks should be typed in the cited
place, without the presence of quotation marks.
Parts of programs (scripts) are indicated in Courier font. They
should be typed in reserved places, and then compiled for
verifying errors.
Bold characters indicate names of objects of Elipse SCADA or
their properties.
Expressions between < > signs should be substituted by the name
of the object focused.
Expressions between brackets indicate names of keys. When
accompanied by a + sign, you should press the second key while
pressing the first one.
This icon, when alone, means the resource is not available for the
SCADA Win CE package. When accompanied by a note, it
means there are restrictions to its use.

Chapter

1. Introduction

Welcome to Elipse SCADA! Elipse Software is proud of presenting this powerful


tool for the development of supervision systems and process control.
Elipse SCADA combines high performance to strong versatility, represented by its
several features, which facilitate and speed up the task of developing your
application. Totally configurable by the user, it allows the monitoring of variables in
real time through graphs and objects related to the physical variables in the field. It
is also possible to make activations and to send or receive information from data
acquisition equipment. Besides that, through its exclusive programming language,
Elipse Basic, it is possible to make various tasks become automatic; in order to
fulfill the specific needs of your company.
We thank you for your preference for our products, and we wish you success with
your new working tool!
Elipse Software Team

1.1. Elipse SCADA Packages


Elipse SCADA is available in different packages, fulfilling the demands of
customization of our clients. Next, you can see the characteristics of each one:
Elipse View
It is indicated for simple applications, such as an interface with the operator for
monitoring and activations. Elipse View enables variables visualization, including
the use of animations, setpoints programming, access control, and special functions
for touchscreen. This pack includes:

Introduction

Communication with equipment via drivers (DLLs) and OPC (Server and
Client);

Screen Objects;

Visualization of active alarms;

Block communication;

Scripts;

DDE server and client;

Elipse network server;


9

User Manual

Access control via users list.


This package does not include any tools for historic data, alarms, or reports
recording, or any other functionality that may be released in more advanced
packages.
Elipse MMI (Man Machine Interface)
It is the complete supervisory software. Elipse MMI has easy-to-implement
proprietary databases, formatted reports, historic objects, prescriptions, alarms, and
Statistical Process Control. It can also be a data server for other Elipse stations. It
includes all resources from Elipse View, plus:

Historic, prescriptions, and reports;

Statistical Process Control (SPC module);

Browser Screen Objects (Historic) and historic alarms;

Alarms log in disk.


Elipse MMI is indicated for systems of any size, where connections with external
databases (ODBC and DAO) or network applications are not necessary, and when
the user needs to see other supervision stations.
Elipse Pro
It is Elipse SCADAs most advanced tool. Elipse Pro allows you to exchange data in
real time with other stations, transfer/update databases, and perform commands and
program setpoints via local network or dialed line. It includes all resources from
MMI package, plus:

ODBC (Open DataBase Connectivity) and DAO (Data Access Objects);

Elipse network client and server (TCP/IP);


Elipse Pro is the ideal solution for the communication with corporative systems, for
it supports ODBC, DAO, and several network protocols. Besides, this module
enables information exchange with control dedicated software (SoftPLC).
Elipse SCADA CE
This package allows you to execute Elipse SCADA applications in Windows CE
based devices, such as IHMs, diskless devices in general, and other mobile devices.
Elipse SCADA CE does not support all functionalities of the previously discussed
packs; when this is the case, it will be indicated throughout the manual.

10

Introduction

User Manual

1.2. Operational Modules


Elipse SCADA has three modules for its operation: Set up, Runtime and Master
(includes Setup and Runtime). The active module is defined from the protection
device (hardkey) coupled to the computer. While Set up and Master modules were
specially developed for the creation and development of applications, the Runtime
module just allows their execution. With this module, the user cannot perform any
alteration in the application.
When there is no hardkey, the software can still be executed in Demonstration
mode on. Since it does not need the hardkey, the Demo mode can be used for
software assessment. It has all features existing in the Set up module, except that it
works with a maximum of 20 tags (process variables), and enable up to 5
simultaneous conections with Elipse Web and allows to run an application and
estabilish communication with equipment of data acquisition up until 2 hours. In this
mode, the software can be freely reproduced and distributed.
Runtime and Master modules are also available in Lite versions, with the same
features as the other versions, but with limited number of tags (variables): Lite 75
has 75 tags, and Lite 300 has 300 tags.
For the version Windows CE, the only mode available is Runtime, in licenses
of 75, 300 or 1500 tags.

1.3. Plug-Ins
Plug-ins are additional tools that allow the expansion of features of Elipse SCADA,
adding functionalities to the software. They can be purchased separately, and work
alongside any version of the software.
Presently, the following plug-ins are available:
It allows the monitoring of systems through features
of capture, registration and digital transmission of
images in real time. It gives support to several
standards (including MPEG), enabling the
visualization in windows having size and quality that
are programmable by the user. It allows the creation
of a bank of images with search by period or event,
and transmission of images in real time to remote
stations via TCP/IP or dialed row.
System for the supervision of processes through the
Internet. By using any navigator (Internet Explorer,
Netscape and others), it is possible to connect to a
remote supervision station, and receive data in real
time. With this feature, it is possible to view
Introduction

11

User Manual

processes from any part of the world.

12

Introduction

Chapter

2. What Is On Screen

An easy way of understanding how Elipse SCADA works is from the tools available
and their presentation on screen.
The following picture shows Elipse SCADAs main screen with an open application
in Configuration module, identifying its elements.

Picture 1: Elipse SCADA screen

The Title Bar shows the path and name of you application, as well as the title of the
current screen being shown in the work area. The work area is the space where you
will develop your application. The edition of screens and reports is performed in this
area. The Screen Bar shows the current screens title, and allows you to alternate
between screens. The Menu Bar allows you to choose from several options for the
applications set up. The buttons on the Tool Bar allow you to execute some tasks
quickly, without using the menus. Thus, with just one click, you can create screen
objects or call the Organizer, for example. The Status Bar shows some auxiliary
information when editing an application, such as indicators numeric keypad
activation (NUM), capital letters (CTRL) and screen scroll (SCRL), and coordinates
of the mouse pointer. It also shows a small description of a given object, for example
a button of the toolbar or a menu item.
Whats Is On Screen?

13

User Manual

the applications that will run in the version Windows CE must be necessarily
created in the version Windows, Set Up mode.

2.1. Menu Options


It is through the menu options that you can access the softwares features and
functions. Next, we describe the options of Elipse SCADA.

2.1.1.

File Menu

Picture 2: File Menu

14

What Is On Screen?

User Manual

Options for File Menu


OPTION

2.1.2.

DESCRIPTION

New application

Creates a new application.

Open application

Opens an application already existing.

Save application

Saves the current application.

Save application as

Saves a copy of the current application in a new file.

Close application

Closes the current application.

Run

Runs the current application.

Organizer

Calls the Organizer.

Options

It allows you to configure some options of Elipse SCADA,


such as the creation of a backup file (.BAK) when saving the
application; protection mechanism settings, and language
library file name (the default is INTLUS32.DLL).
It is also possible to specify an application to be executed
when Elipse SCADA is activated remotely via OPC.

1, 2, 3 and 4

Lists the four files recently open

Exit

Closes Elipse SCADA.

Screen Menu

Picture 3: Screen Menu

What Is On Screen?

15

User Manual

Options for Screen Menu


OPTION

2.1.3.

DESCRIPTION

New

Creates a new screen (blank).

Delete

Deletes an already existing screen.

Close

Closes the current screen.

Monitor

Monitors the current screen.

Properties

Shows the properties of the current screen, where you can


define a background image and window style, among other
features.

Redraw

Redraws the loaded screens.

Objects Menu

Picture 4: Objects Menu

16

What Is On Screen?

User Manual

Options for Objects Menu


OPTION

DESCRIPTION

Unselect

Unselects the current object.

Select all

Selects all objects on screen.

Cut

Cuts the selected object out.

Copy

Copies the selected object to the clipboard.

Paste

Pastes the object in the clipboard into the indicated place.

Delete

Deletes the selected objects. To select more than one object, use the
[Ctrl] key.

Properties

Shows the properties of the selected object. The same function can
be activated by double-clicking the object.

Select mode

Connects the select mode, allowing the user to select all objects
within an delimited by the mouse.

The remaining options create objects according to their respective names. After
choosing the Screen Object you want, you should select a region in the screen to
place the object by keeping the left button pressed while the object is moved. A
dotted rectangle shows the size and form of the object. By releasing the mouse
button, the object will be placed inside the specified area.

2.1.4.

Arrange Menu

Picture 5: Arrange Menu

What Is On Screen?

17

User Manual

Options for Arrange Menu


OPTION

2.1.5.

DESCRIPTION

Group

Groups the selected objects.

Ungroup

Ungroups the selected objects.

Send to Back

Sends the selected object to the back of the screen.

Bring to front

Brings the selected object to the front of the screen.

Aligning Controls

Aligns selected objects to the left, right, top, or bottom.

Make Same Size

Makes the selected objects the same size.

Center in screen

Centralizes the selected objects on the screen.

View Menu

Picture 6: View Menu

Options for View Menu


OPTION

2.1.6.

DESCRIPTION

Toolbar

Shows or hides the Toolbar.

Status Bar

Shows or hides the Status Bar.

Screen Bar

Shows or hides the Screen Bar.

Help Menu

Picture 7: Help Menu

18

What Is On Screen?

User Manual

Options for Help Menu


OPTION

DESCRIPTION

Index

Shows the help index.

Using Help

Explains how Help should be used.

About Elipse SCADA...

Shows information related to Elipse SCADA, such as


version, number of hardkey and copyrights.

2.2. Toolbars
Toolbars offer a quick access to Elipse SCADAs functions. These functions are
distributed in four groups, as follows: Application, Screen Objects, Arrange, and
Screens, as follows.

2.2.1.

Application Toolbar

Picture 8: Application Toolbar

What Is On Screen?

19

User Manual

Buttons for Application Toolbar


BUTTON

ACTION

Creates a new application.


Creates a new screen.
Opens an application that already exists.
Saves the current application.
Cuts out the selected object, copying it to the clipboard.
Copies the selected object to the clipboard.
Pastes the object in the clipboard to the place indicated on
screen.
Calls the Organizer.
Shows the properties of the selected object.
Shows the properties of the selected screen.
Runs the current application, starting with open screens.
Runs current application.
Opens the system help.
Activates the help related to the context.

2.2.2.

Objects Toolbar

Picture 9: Objects Toolbar

20

What Is On Screen?

User Manual

Buttons for Objects Toolbar


BUTTON

ACTION

Turns selection mode on, allowing the user to select all objects within
an area delimited by the mouse.
Creates a new Slider object.
Creates a new Trend Chart object.
Creates a new Button object.
Creates a new Gauge object.
Creates a new text area (Text object).
Creates a new Bar Chart object.
Creates a new Display object.
Creates a new Animation.
Creates a new Setpoint object.
Creates a new Alarm object.
Creates a new Browser object.
Creates a new Bitmap object.
Creates a new Video object.
Creates an AVI object.
Creates a new Preview object.

2.2.3.

Arrange Toolbar

The Arrange Toolbar has commands for the edition of Screens acting on the Screen
Objects that are selected; these commands are also available in the Arrange menu.
To select more than one Screen Object, use the left button, and keep the [Ctrl] key
pressed; the last selected objects focus gets red to be used as a reference. To
unselect an object, use this key combination: [Ctrl]+[Shift]+Left Button.

Picture 10: Arrange Toolbar

What Is On Screen?

21

User Manual

Buttons for Arrange Bar


BUTTON

ACTION

Sends the selected object to the background of the screen.


Brings the selected object to the front of the screen.
Aligns the selected objects to the left side.
Aligns the selected objects to the right side.
Aligns the selected objects to the top.
Aligns the selected objects to the bottom.
Centralizes the selected objects horizontally to the screen.
Centralizes the selected objects vertically to the screen.
Applies the same width to all objects.
Applies the same height to all objects.
Applies the same size to all objects.
Groups the selected objects.
Ungroups the selected objects.

2.2.4.

Screens Toolbar

The Screens Toolbar shows the name of current screen, and allows you to switch
screens through a list showing the name of all screens existing in the application.

Picture 11: Screen Toolbar

22

What Is On Screen?

User Manual

2.3. Shortcut Keys


Another way of accessing quickly the functions of Elipse SCADA are the shortcut
keys. Below, there is a list of all keys available, grouped by function.
General Options
KEYS

ACTION

Ctrl + O

Opens the application.

Ctrl + Shift + V

Information About Elipse SCADA.

F1

Calls help.

Shift + F1

Calls context help.


Editing an application
KEYS

ACTION

Ctrl + S

Saves the application.

F10

Runs (executes) the application.

Alt + O

Calls the Organizer.

Ctrl + N

New screen.

F8

Monitor screen.

Ctrl + Alt + Shift + I

Counts the number of items in the application

Ctrl + Shift + F10

Opens the Scripts Editor font settings window


Editing screens

KEYS

ACTION

Ctrl + F4

Close screen

Esc

Deselect object

Ctrl + A

Select all objects

Del

Erase object

Ctrl + X

Cut object out

Ctrl + C

Copy object

Ctrl + V

Paste object

Shift + Del

Cut object out

Ctrl + Ins

Copy object

Shift + Ins

Paste object

What Is On Screen?

23

User Manual

Editing reports
OPTIONS

DESCRIPTION

Ctrl + F4

Closes the reports editor

Esc

Unselects object

Ctrl + A

Selects all objects

Del

Erases object

2.4. Command Line Options


It is possible to call Elipse SCADA directly from the command line. The executable
ELIPSE32.EXE has the following syntax:
ELIPSE32.EXE [-DEMO] [-SETUP] [-EDIT] [<NameApp>]

Where:
-DEMO

-SETUP
-EDIT

NameApp

(Optional) Forces Elipse SCADA to run in demonstration mode without


checking the protection mechanisms (hardkey). This option rewrites the .INI file,
by setting the [ProtectionType] section.
(Optional) Forces Elipse SCADA to run the Setup program, which allows you to
configure the options in the file of preferences (.INI).
(Optional) Forces Elipse SCADA to run in Configuration mode. If the name of
an application is informed in the command line, this application will be opened
for configuration.
(Optional) The name of the application that will run automatically or will be
opened for configuration (when -EDIT is specified).

In the version Windows CE, the only command line available is NameApp.

24

What Is On Screen?

Chapter

3. Organizer

The development of an application in Elipse SCADA is based on the Organizer tool.


It allows a simple and organized view of the whole application, helping in the
edition and configuration of all objects involved in the system through a hierarchical
tree.
Organizers structure can be compared to directory tree of Windows File Manager.
So, the structure of the application starts in the top left corner, with the applications
root. All objects of the application descend from the root, grouped according to their
type: Tags, Screens, Alarms, Recipes, Historic, Reports, Drivers, Databases and
others, which constitute the main elements of your application. By selecting any of
the branches of the application tree, it will expand, showing its content; therefore,
you can easily navigate through the application by having available all options of
configuration, from the creation of Tags to the resizing of objects in a specific
screen.
Organizers basic structure is:

Picture 12: Organizer

You can call the Organizer only when there is an open application, by selecting the
Organizer command in the File menu, or by pressing the Organizer button in the
Toolbar. The following window will appear:

Organizer

25

User Manual

Picture 13: Organizer Window

From the Organizer, you can create your whole application simply by navigating
through the application tree. By selecting any of its branches, the properties of the
selected object will be shown on the right side of the window, where they can be
edited. For example, if you select Tags in the Organizer tree, you can create new
Tags and edit their properties by selecting the page wanted from the tabs on top of
the window.

26

Organizer

User Manual

Picture 14: Actions menu

When you right-click the objects in the Organizer, the following options appear:
Search and Replace: allows you to search and replace texts in scripts and properties
from the selected object, as well as from its child-objects. This search is case
sensitive.
Link Report: generates a report with crossed references from the object and its
child-objects.
Script Report: helps you organize and document scripts in the application.
Translation Tool: helps translating the application.
The buttons of the Organizer toolbar allow you to quickly execute given tasks
without using the menus. There are 13 buttons, as it can be verified in the following
table:

Organizer

27

User Manual

Organizer Tools
ICON

COMMAND

ACTION

Delete

Erases one or more items selected in the


Organizer.

Duplicate

Duplicates the item selected in the Organizer


tree.

AppBrowser

Calls the AppBrowser.

Cross reference

Calls Cross Reference.

Compile

Compiles the script being edited.

Compile all

Compiles all scripts that are not compiled.

Recompile all

Recompiles all scripts in the application,


enabling the user to access each script with a
double click. It is generated a list of compiled
scripts, by showing in red the ones with error.

If

Inserts the IF...ENDIF command to the


selected script, in the point where the cursor is.

ElseIf

Inserts the ELSE...IF command to the selected


script, in the point where the cursor is.

Else

Inserts the ELSE command to the selected


script, in the point where the cursor is.

ForNext

Inserts the FOR...NEXT command to the


selected script, in the point where the cursor is.

WhileSend

Inserts the WHILE...WEND (end of While)


command to the selected script, in the point
where the cursor is.

RepeatUntil

Inserts the REPEAT...UNTIL command to the


selected script, in the point where the cursor is.

3.1. AppBrowser
The AppBrowser is an important Organizer tool. It is composed of a window
presenting the application tree with its objects. By clicking any object, it is possible
to view the functions and attributes related to this object. When we are writing a
script, a Copy in Script --> button stays available on this window, allowing for the
copy of the attribute or function focused to the programming rows, thus making this
task to be easier.

28

Organizer

User Manual

Picture 15: AppBrowser

3.2. Creating new application


The creation of an application is the starting point for the assembly of a system by
using Elipse SCADA. With an application, the user gathers all objects necessary for
the execution of wanted tasks. Information referring to this application is stored in a
file having APP extension.
In order to create a new application, do the following:

Choose in the File menu the New Application option, or click the
corresponding button in the toolbar.
In the Save New Application! Frame, choose a name and the place where the
application will be saved.
Besides the files with APP extension, there are others that are generated and
used by Elipse SCADA:

NOTE: Windows XP users must pay attention to System Restore tool. This tool also
tracks .APP files changes, and if you restore the system, the tool will reverse the
new version files into older ones.

Organizer

29

User Manual

App extension
EXTENSION

DESCRIPTION

.APX

File having the settings of the users list.

.BAK

Backup of application

.DAT

File of historic

.HDR

Headers of historic files in batch

.RCP

Recipes file

.DLL, .SO

Communication drivers

.BMP, .JPG, .GIF

Image files
In CE, only .BMP is currently avaliable.

3.2.1.

General Properties of the Application

When you select the root of the Application in the Organizer tree, its properties are
shown on the right side of the tree. The page of general properties appears when the
Application tab is selected on top of the Application pages. This page is shown
below, and its respective fields are described in the following table.

Picture 16: Properties of Application

30

Organizer

User Manual

Properties of the Application form


OPTIONS

DESCRIPTION

Description

Defines the name of the application (which will appear on


the title bar) in case the Title Bar option is enabled.

Title bar

Enables the title bar in the application window.

In CE, the title bar observes this property only for


windowed screens. Full screens observe CEs pattern;
some platforms never appear, others always appear.
Properties of the Application form (four Styles)
OPTIONS

DESCRIPTION

Disables task switching

Disables the switching between tasks, i.e., disables the


[Alt+Tab] shortcut of Windows.

Disables screen saver

Disables any screen protector (screen saver) while Elipse


SCADA is running.

Close Button

Enables the Close button on the title bar of the application


window.

Minimize Button

Enables the Minimize button on the application window.

Maximize Button

Enables the Maximize button on the application window.

Allow Close

If switched-off, makes the execution to be ended only


when the StopRunning() function is called. If switchedon, allows the closing of the application (and Elipse
SCADA) via other media, as through a click on the Close,
switch-off button of Windows, etc.
Properties of the Application form (Buttons)

OPTIONS

Organizer

DESCRIPTION

Statistics

Opens a window which shows statistical information of


the application, like: total time for editing the application,
number of items of the application, total number of tags,
number of revisions, and version of Elipse SCADA in
which the application has been generated.

Find Item

Opens a window that allows the search of an item (object,


property) in any place of the application, and to present it
for edition.

Import

Opens a window that allows the choice of an application


for import. After choosing the application of origin, a
new window is open having the tree of both applications,
so that the user can drag the objects of the application of
origin to the application of destination. Note: The
application of origin is not modified.

Protection

It opens a window for protecting the application. There


are two protections: for configuration (to edit and make
any type of modification), and for execution. In case of
31

User Manual

use of password for configuration, the final user cannot


alter the application, unless if he/she knows the password
used. This is also valid for the execution, and only this
password can exist if there is already one for
configuration.

3.2.2.

Application Window

The Window page allows the configuration of the main window for the execution of
the application.

Picture 17: Properties of the Application Window

32

Organizer

User Manual

Properties of the Window form


OPTIONS

Start Maximized
/Minimized
/Normal
X, Y, Width, Height
Centralize Window

3.2.3.

DESCRIPTION

Defines the initial configuration of the application


window.
Defines the position and size of the window in pixels.
Indicates that the window should initiate in central
position on screen.

Touch Screen

Elipse SCADA has special support on the use of touch (Touch Screen), allowing a
more intuitive interface for the use of your application.

Picture 18: Touch Screen Properties

Organizer

33

User Manual

Properties of the Touch Screen


OPTIONS

Enable Key Pad

DESCRIPTION

Enables the use of Key Pad in running time.

SCADA CE currently uses Win CEs


keypad, so it is not possible to choose its colors
and dimensions.
Save Key Pad window
coordinates
Key Pad Background color

Enables saving of new coordinates of Key Pad as


its window changes positions.

Key Pad key color

Defines the color of Key Pad text.

Dont Show mouse pointer

Disables the mouse pointer while the Key Pad is


being shown.

Use large buttons

Increases the size of Key Pad buttons.

Defines the background color of Key Pad

Properties of Key Pad and Numeric Pad


OPTIONS

3.2.4.

DESCRIPTION

Show window title bar

Shows the title bar of the window of Key Pad


and/or Numeric Pad.

Override default title bar text

Allows the definition of a new title for the title bar


of the window of Key Pad and/or Numeric Pad.

Show close button

Shows the close button of the window of Key Pad


and/or Numeric Pad.

Elipse Web

Through the Elipse Web plug-in, Elipse SCADA can generate documents to be
visualized through the Internet, together with some commercial Web Server as the
Microsoft Internet Information Server (IIS) or Microsoft Personal Web Server
(PWS).

34

Organizer

User Manual

Picture 19: Elipse Web

Properties of Elipse Web


OPTIONS

Enable Elipse Web data


server
Default Web Pages
Directory

Port

DESCRIPTION

Enables Elipse Web.


Allows to choose, through the [Browse] button, the
directory where the documents to be visualized
through the Internet will appear. The directory should
be in the tree of documents of the Web server.
Allows the definition of the port which the Web
server will be associated to.

3.3. Scripts
During the execution of an application, several procedures can be triggered through
events. These procedures are described by scripts associated to these events. More
details about scripts will be discussed in a further chapter. Here, we have a list of
events/scripts available in an application.

Organizer

35

User Manual

Events/Scripts of an Application
EVENT

36

DESCRIPTION

OnKeyPress

runs when a given key is pressed.

OnKeyRelease

runs when the key is released.

OnStartRunning

runs when the application begins running.

OnStopRunning

runs when the application ends running.

OnUserLogin

runs when an user begins the session in the


application.

OnUserLogout

runs when an user ends the session in the application.

WhileKeyPressed

runs while a given key is pressed.

WhileRunning

runs while the application is running. The script will


run as many times as you define it in the text box
called Run at each (it only appears for
WhileRunning scripts).

Organizer

Chapter

4. Tags

The supervision of a process with Elipse SCADA occurs through the reading of
process variables in the field. The values of these variables are associated to objects
of the system called Tags.
To each object inserted on screen, we should associate at least a tag or attribute.
Tags are all variables (numeric or alphanumeric) involved in an application.
Attributes are data supplied by Elipse SCADA about parameters of the system and
components of the application.
When creating tags, the user can freely organize them in groups in a way as to
facilitate search and identification during the process of configuration. For the
creation of a group, just select the Tags item in the Organizer, and click New Group.
You can create groups within other groups, without restrictions. In order to modify
the hierarchy of groups and change their position (for example, to include a group
inside another group), just drag the group focused to the desired place.
You can create and edit tags from the Organizer by selecting the Tags branch in the
application tree and pressing the New Tag button. On the Organizer window, you
can double click the Tags option to see the tags that are already defined for the
application, in the same way as you do with a directory tree. As the application
grows, the tags can be grouped in order to better organize and edit the application.

4.1. Tags Group


When you select the Tags option in the application tree of the Organizer, the
following page will appear on the right side of the tree. By using the buttons of this
page, you can create a new group of tags or a new tag for your application. The new
group or tags that is created will automatically appear in the application tree below
the Tags option.

Tags

37

User Manual

Picture 20: Tags Group Screen

Options of Tag Group


OPTIONS

DESCRIPTION

Name

Defines the name of the selected group of tags. A


group of tags works in the same way as a directory
where various tags will be defined.

Description

A brief description of the selected group.

New Group

Creates a new group of tags from the current group.

New Tag

Creates a new tag.

Report

Opens a window for the configuration of a report


with all tags existing in the application. Only
properties we want to print can be selected for each
type of tag. The report will be printed in a text file
which is specified in the Print box for the file.

4.2. New Tag


When you press the New Tag button, the following window will appear. In this
window, you can define the tag name, the quantity of tags you want to create, and
their type. All tags specified in the Quantity field will be of the same type
defined in the Tag Type field.

38

Tags

User Manual

Picture 21: Create a new tag

Available options
OPTIONS

Tags

DESCRIPTION

Name

Tag Name. Spaces and special characters are both allowed when
Tags are used in Scripts.

Quantity

Defines the number of Tags that will be created with the same
characteristics specified.

PLC

PLC Tags are used to exchange values with data acquisition


equipment.

DDE

Allow exchanging data with programs that are DDE Servers. DDE
(Data Dynamic Exchange) is a protocol developed by Microsoft
for communication of Windows based applications.

Demo

Demo Tags are used to generate random data.

Matrix

Matrix Tags allow the creation of matrixes or data vectors.

Expression

Expression Tags allow the input of a numeric or alphanumeric


expression (they allow the concatenation of strings, for example).

Block

Block Tags are used in order to simultaneously read a block of


values.

RAM

RAM Tags are used to store values in memory.

39

User Manual

4.3. Chrono Tag


Creates a new chronometer.

Picture 22: Properties of Chrono tags

40

Tags

User Manual

Properties of Chrono tags


OPTIONS

DESCRIPTION

Name

Tag Name. You can use as many characters as you


wish, but spaces and special characters are not
allowed when the Tags are used in Scripts.

Description

A brief description of the Tag.

Increment

Determines the increment of the tag.

Preset

Determines the preset time of tag.

Start Timer at Application


Start up
Always reset acum when
the timer starts
Save acum when exiting
application
Restart on preset (loop
execution)

Enables the initialization of the timer when starting up


the application.
Enables for resetting the accumulator when starting
the timer
Enables for saving the accumulator when exiting
Enables the automatic restart in loop execution.

4.4. PLC Tag


The PLC Tag is used in order to exchange information with data acquisition
equipment by using I/O drivers supplied by Elipse depending on the type of
equipment. A help file is supplied with each driver, containing important
information relative to its configuration.
You can install a new driver by pressing the New button in the Drivers page and
selecting one or more drivers from the list. The Configure button opens the
window of properties of the driver, allowing the configuration of P
communication parameters according to the information contained in the help file.
The option of Abort in error, ends communication in case there is any problem,
impeding an application to be locked.

Tags

41

User Manual

Picture 23: Properties of PLC tags

42

Tags

User Manual

Properties of PLC tags


OPTIONS

DESCRIPTION

Name

Tag Name. You can use as many characters as you wish, but
spaces and special characters are not allowed when Tags are used
in Scripts.

Change type to ...

It allows the change of Tag type.

Expand bits

It allows dismembering the Tag in bits, by creating Bit Tags for


each bit or group of bits in the Tag.

Description

A brief description of the Tag.

Driver

It allows the selection of a Communication Driver for the current


Tag. The drivers should be installed through the Drivers window
in order to be available.

Driver Help

It shows the Help of the selected Driver.

N Parameters

It allows the configuration of parameters of N address for


current Tag according to the selected driver. This configuration is
contained in the Drivers Help, which can be accessed by pressing
the "Help" button. The values can be expressed in decimal [32768, 65535], octal [0o, 177777o], or hexadecimal [0000h,
FFFFh].

Scan

Defines what will be the updating periodicity of tag values (in


milliseconds)

Scaling

By marking this option, the Tag values will be converted into a


new Scaling of values determined by the user in relation to the
limits defined in Low and High PLC, and Low and High System.

PLC Low

Defines the minimum value to be read from the PLC.

System Low

Defines the new minimum value for the conversion of values


read.

PLC high

Defines the maximum value to be read from the PLC.

System high

Defines the new maximum value for the conversion of values


read.

Test Connection Here

Tests the communication with the PLC server, allowing for the
reading and writing of values.

Enable scan reading

Enables PLC tag scan reading, that is, the tag value is always
updated on the time specified in Scan field.

Enable automatic reading

When enabled, the tag value is read when needed only. If Enable
scan reading is enabled, this option is ignored.

Enable automatic writing

Enables PLC tag automatic writing (see topic below).

Scan reading vs. automatic reading


When the option Enable scan reading is enabled, Elipse SCADA updates the tag
value continuously, according to the frequency specified in the field Scan. This
value is also used by the option Enable automatic reading to check if the value is
old, which establishes the need for forcing tag value reading. So, if the option
Tags

43

User Manual

Enable scan reading is enabled, the option Enable automatic reading will be
irrelevant, because tag value is always updated.
The option Enable automatic reading can be used to optimize specific processes.
For example, if one tag is used by in a specific script, you can turn on Enable
automatic reading and turn off Enable scan reading. In this case, the tag will be
read only when is necessary.
Automatic writing in PLC tags
When directly attributing a value to a PLC tag or block element that has the property
of automatic writing enabled, the command is directly sent to the communication
driver, which in turn transmits it to the associated equipment. Such action does not
occur only when the attributed value is equal to the content that was already in the
tag. In case you anyway want to force writing, the Write() function of the tag should
be executed in some script (see the Chapter of Scripts).

4.5. DDE Tag


The DDE Tag is used for exchanging data between Elipse SCADA and other
applications (Excel, Access, Word, etc.) by using DDE (Dynamic Data Exchange).
In order to do so, you need to specify the server application, the topic and the item,
as you can see in the window below.

44

Tags

User Manual

Picture 24: DDE Tag

Tags

45

User Manual

Properties of DDE tags


OPTIONS

46

DESCRIPTION

Name

Tag Name. You can use as many characters as you wish, but
spaces and special characters are not allowed when the Tags
are used in Scripts.

Change type to

It allows the change of Tag type.

Description

A brief description of the Tag.

Server Name

Defines the name of the DDE server, which can be an


application of Windows (ex: Excel, Word, etc) or a DDE
driver supplied by the manufacturer of your equipment. The
list of programs available for DDE servers appears when the
arrow beside this box is pressed.

Topic

Defines the name of the Topic of the DDE Server, depending


on the type of Server. It can be a document (ex: a table of
Excel). The list of Topics available appears when the arrow
beside this box is pressed.

Item

Defines the name of the Item of the DDE Server, depending


on the type of Server. It can be an item of a document (ex: a
cell in an Excel table).

Test Connection

It allows you to test the configuration of DDE. A message can


indicate an error of connection or the value received by the
configured item.

Scaling

By marking this option, the Tag values will be converted into


a new Scaling of values determined by the user in relation to
the limits defined in Server Low, System Low, Server High,
and System High.

Server Low

Defines the minimum value to be read from the Server.

System Low

Defines the new minimum value for the conversion of values


read.

Server High

Defines the maximum value to be read from the Server.

System High

Defines the new maximum value for the conversion of values


read.

Tags

User Manual

4.6. Demo Tag


The Demo tag is used for the simulation of values. It allows you to generate defined
curves or random values according to the type of curve selected in the six buttons of
the General page of the Demo tag (see picture below).
Demo Tags can help you in testing your application, or can be used for example
with an object of animation screen to show the animation frames in accordance with
the tag variation.

Picture 25: Properties of Demo tags

Tags

47

User Manual

Properties of Demo tags


OPTIONS

DESCRIPTION

Name

Tag Name. Spaces and special characters are both


allowed when Tags are used in Scripts.

Change type to

It allows for changing the Tag type.

Expand bits

It allows the dismembering of the Tag into bits, by


creating Bit Tags for each bit.

Description

A brief description of the Tag.

Type

Defines the type of curve to be used by the current


Demo Tag.

Low Limit

Defines a minimum value for the Demo Tag.

High Limit

Defines a maximum value for the Demo Tag.

Increment

Defines the increment for the Demo Tag in a saw


tooth type curve.

Delay

Defines the number of periods between each


generation of value for the Demo Tag. For instance, if
it is 1, a value is generated at each period, if it is 2, a
value is generated at each two periods, and so on. It is
used together with the period attribute to control the
time interval for the variation of data.

Period

Defines the number of milliseconds between the


generation of each new value for the Demo Tag. It is
used together with the delay attribute to control the
time interval for the variation of data.

Enabled

Defines the initial condition of the Demo Tag:


Enabled or Disabled. The values of the Demo Tag are
generated only when this option is marked; in case
not, the value of the Tag remains the same.

4.7. Expression Tag


The Expression tag allows you to attribute a numeric or alphanumeric expression to
a tag. You can create equations involving other tags and strings. The same functions,
operators, and constants used in Scripts can be used with Expression Tags.

48

Tags

User Manual

Picture 26: Properties of Expression tags

Properties of Expression tags


OPTIONS

Tags

DESCRIPTION

Name

Tag Name. Spaces and special characters are both


allowed when Tags are used in Scripts.

Change type to

It allows for changing Tag type.

Expand Bits

It allows the dismembering of the Tag into bits, by


creating Bit Tags for each bit.

Description

A brief description of the Tag.

Expression

Allows the input of any valid expression for the tag.

Errors

Lists syntax errors found in the expression. The errors


are shown during the edition of the expression, and in
order to have a valid expression, the message of No
errors should appear in this field.

49

User Manual

4.8. Block Tag


Block Tags allow block communication with data acquisition equipment by using
I/O drivers supplied by Elipse depending on the type of device. A help file is
supplied with each driver, containing important information relative to its
configuration.
You can install a new driver by pressing the New button in the Drivers page and
selecting one or more drivers from the list. The Configure button opens the
window of properties of the driver, allowing the configuration of P
communication parameters according to the information contained in the help file.
The option of Abort in error ends communication in case there is any problem,
impeding an application to be locked.

Picture 27: Properties of PLC Block tags

50

Tags

User Manual

Properties of PLC Block tags


OPTIONS

Tags

DESCRIPTION

Name

Tag Name. You can use as many characters as you


wish, but spaces and special characters are not
allowed when the Tags are used in Scripts.

Change type to

It allows for changing Tag type.

Description

A brief description of the Tag.

Driver

It allows the selection of a Communication Driver for


the current Tag. The drivers should be installed
through the Drivers window to be available.

Help

It shows the Help of the selected Driver.

B Parameters

It allows the configuration of parameters of B


address for current Tag according to the selected
driver. This configuration is contained in the Driver
Help, which can be accessed by pressing the "Help"
button. The values can be expressed in decimal [32768, 65535], octal [0o, 177777o], or hexadecimal
[0000h, FFFFh].

Scan

Defines what will be the updating periodicity of Tag


values (in milliseconds).

Change size

Changes the size of the block to be monitored by


Elipse SCADA.

Add Element

Allows you to add a add element to the selected Tag.

Enable scan reading

Enables block reading.

Enable automatic reading

Enables automatic reading for the block.

Enable automatic writing

Enables automatic writing for the block.

Size

Configures the size of the block tag.

Add element...

Add element in the block tag.

51

User Manual

4.8.1.

Block Element

Each element of Block tag has its properties, which can be accessed by selecting the
desired element in the application tree in Organizer. Following page will be then
shown on the right side of the window.

Picture 28: Properties of block elements

52

Tags

User Manual

Properties of block elements


OPTIONS

DESCRIPTION

Name

Tag Name. You can use as many characters as you


wish, but spaces and special characters are not
allowed when the Tags are used in Scripts.

Description

A brief description of the Tag.

Change type to...

It allows for changing Tag type.

Expand Bits

It allows dismembering the Tag in bits, by creating


Bit Tags for each bit or group of bits in the Tag.

Index block

Allows changing the order of the element in the block


by typing the index wanted.

Scaling

By marking this option, Tag values are converted into


a new scale of values determined by the user
according to the limits defined at PLC Low, System
Low, PLC High, and System High.

PLC Low

Defines the minimum value to be read from the PLC.

System Low

Defines the new minimum value for the conversion


of values read.

PLC High

Defines the maximum value to be read from the PLC.

System High

Defines the new maximum value for the conversion


of values read.

Test connection here

Tests connection with the PLC by reading and


writing some values.

4.9. Ram Tag


Ram Tags are internally used to store values in memory. This tag type is volatile;
therefore, it maintains its values only while the application is running.

Picture 29: Properties of RAM tags

Tags

53

User Manual

Properties of RAM tags


OPTIONS

DESCRIPTION

Name

Tag Name. You can use as many characters as you


wish, but spaces and special characters are not
allowed when the Tags are used in Scripts.

Description

A brief description of the Tag.

Change type to...

It allows for changing Tag type.

Expand Bits

It allows dismembering the Tag into bits, by creating


Bit Tags for each bit or group of bits in the Tag.

Initial value

Defines an initial value for the tag. This value can be


a number or a string between double quotation marks
(ex.: abc).

4.10. Matrix Tag


The Matrix Tag allows the creation of matrixes or data vectors that can be used in
calculations, storages, etc. It is possible to map each cell of a matrix as if it was a tag
or property. Operations over matrixes always have row and column starting with
index 1.

Picture 30: Properties of Matrix tags

54

Tags

User Manual

Properties of Matrix tags


OPTIONS

DESCRIPTION

Name

Tag Name. You can use as many characters as you


wish, but spaces and special characters are not
allowed when the Tags are used in Scripts.

Description

A brief description of the Tag.

Columns

Defines the number of columns of the matrix

Rows

Defines the number of rows of the matrix

Map

Maps all or just some cells of the matrix into a tag.

Associating cells to tags


You can associate a cell of the matrix or vector to a tag by pressing the Associate
button in the General page of the Matrix tag and specifying what or which cells you
want to associate.
Each associated cell appears below the Matrix tag in the application tree in
Organizer. When selecting a specific cell, its properties are shown on the right side
of the tree. Each associated cell has 4 pages of properties: General, Alarms, Scripts
and Tags. The 3 first pages are the same of any tag, and the page of tags allows
associating a tag or property to the matrix cell in the same way that tags and
properties are associated to screen objects.

4.11. Bit Tag


The Bit Tag can only be created from another tag, and allows the individual access
to each bit of it. Tags allowing splitting into bits are: PLC, Demo, Expression, Block
Element, Ram, and Remote.
You can create a Bit tag from the General page of any tag cited above. By clicking
the Expand Bits button, the following window will appear, in which you can
select the bits you want to map. The selection of bits is done by using the mouse and
[Shift] or [Ctrl] keys, in the same way as items are selected in a list box of Windows.

Picture 31: Create a new Bit tag

Tags

55

User Manual

The Bit tag can be both a single bit as well as a set of bits, as long as they are
continuous. This means that you can map for a single Bit tag, for example, bits 0, 1,
and 2, but not bits 10, 11 and 24. The check box that exists in this window allows
specifying if a tag should be created for each selected bit, or if continuous bits that
are selected should be grouped in a single tag.
In the example above, five Bit tags will be created in the following way:
TAGS
BITS

bitField1
0, 1, 2

bitField2
5

bitField3
8

bitField4
12

bitField5
20, 21, 22

The Bit tags created appear below the respective tag in the application tree in
Organizer. When selecting a specific Bit tag, its properties are shown on the right
side of the tree.
The page of General Properties of the Bit tag appears when the General card is
selected on top of the pages of the Bit tag. This page is shown below, and its
respective fields are described in the following table.

Picture 32: Properties of Bit tags

56

Tags

User Manual

Properties of Bit tags


OPTIONS

DESCRIPTION

Name

Tag Name. Spaces and special characters are both


allowed when Tags are used in Scripts.

Description

A brief description of the Tag.

Lo word bits and high


word bits

Defines what are the bits or bit being a part of that


tag.

4.12. Alarm Page


Each tag you define has a page of Alarms like the one shown below, where it is
possible to configuration 4 intervals of values and priorities for Alarms. Alarms are
used to sign some problem and then to take the appropriate actions by using scripts.
In order to view the Alarms configured for a tag, you must create an Alarm screen
object and attribute the tag to it. This object can show also, already occurring alarms
that are registered in a file of historic or alarms that are active in the system. In order
to print the alarms occurring in the system, you can define a report through the
Organizer, and run the special function Print() in a script.
The page of Tag Alarms appears when the Alarms card is selected on top of tag
pages. This page is shown below, and its respective fields are described in the
following table.

Picture 33: Properties of Tag Alarms

Tags

57

User Manual

Properties of Alarms (associated to Tags)


OPTIONS

58

DESCRIPTION

LoLo

Critical Low Alarm. Defines an interval of values


(lesser or equal) in which the Tag is considered in a
state of Critical Low Alarm. It is used when the value
of the tag is below a minimum, i.e., extremely low.

Low

Low Alarm. Defines an interval of values (lesser or


equal) in which the Tag is considered in a state of
Low Alarm. It is used when the tag value is below
normal.

High

High Alarm. Defines an interval of values (bigger or


equal) in which the Tag is considered in a state of
High Alarm. It is used when the tag value is higher
than normal.

HiHi

Critical High Alarm. Defines an interval of values


(bigger or equal) in which the Tag is considered in a
state of Critical High Alarm. It is used when the value
of the tag is above a maximum, i.e., extremely high.

Value

Defines the cap for each possible situation of alarm


(lolo, low, high, hihi).

Pri

Defines the priority for each situation of alarm. Small


numbers indicate high priority (the priority should be
a number between 0 and 999). For a better control,
alarms of higher priority will appear in first place in
the alarm window (Alarm screen object).

Comments

A comment or message can be defined for each


alarm.

Log Alarm Return

Enables the recording (log) of messages of alarm


return.

Alarm Group

Defines the group of Alarms of the current tag. The


group of Alarms should be defined in the Alarms
option of Organizer.

Always in Advise

Defines that the system will constantly supervise the


tag, even if it is not used in any place in the
application, in order not to loose any alarm of this tag.

Use alternate tag name

Allows defining an alternative name for tags in the


recording (log) of alarms.

Tags

User Manual

4.13. Tags Scripts


It is possible to execute scripts associated to changes in tag values and to status of
tag alarms.
SCRIPTS AVAILABLE
EVENTS

OnAck
OnAlarmHigh
OnAlarmHiHi
OnAlarmLow
OnAlarmLoLo
OnAlarmReturn
OnValueChanged
OnRead

Tags

DESCRIPTION

Runs the script when the alarm signals as recognized


by the user.
Runs the script when the value defined for High
alarm is reached.
Runs the script when the value defined for HiHi
alarm is reached.
Runs the script when the value defined for Low alarm
is reached.
Runs the script when the value defined for LoLo
alarm is reached.
Runs the script as soon as an alarm situation ends.
Runs the script when the tag value changes
Only for PLC and Block tags. Runs the script when
the tag is read in the driver

59

Chapter

5. Screens

A Screen can be defined as a window for the monitoring of a process. Each


application can have an unlimited number of Screens.
You can create a new Screen by pressing the New Screen button in the Toolbar or
by using the New command in the Screen menu. In this new Screen, you can define
Screen Objects, a background drawing, and other specific characteristics.
For a better visualization of the system you are monitoring, some background
bitmaps can be defined for Screens. A bitmap of Windows is a graphic file with
BMP extension that can be created in several Windows applications that are specific
for drawing, as for example, Paintbrush. You can create your drawings (bitmaps)
with any size and colors; the Elipse SCADA will automatically import them without
needing any conversion process.
In order to view or edit the properties of current Screen, double click an empty space
in the Screen or use the Properties command of the Screen menu. When the Screens
option is selected in the Organizer tree, the following window appears, containing a
list of all Screens of your application. You can create a new Screen by using the
New button at the right of the page, or remove an existing Screen by selecting it in
the list and pressing the delete button.

Screens

61

User Manual

Picture 34: Screen Window

Screen Options
OPTIONS

62

DESCRIPTION

List

Shows a list of all Screens existing in your application. The


same Screens appear in the Organizer tree right below the
Screens option, and when selected, their respective properties
are shown.

New

Creates a new screen.

Delete

Erases the selected Screen from the List.

Go to

Closes the Organizer and shows current Screen.

Show

Shows current Screen without selecting it.

Hide

Hides current Screen, but keeps it in the application.

Screens

User Manual

5.1. General Properties of Screen


Each screen you create for the application appears below the Screens option in the
application tree in Organizer. When selecting a specific cell, its properties are shown
on the right side of the tree.
The page of general properties of screens appears when the General tab is selected
on top of the screen pages. This page is shown below, and its respective fields are
described in the following table.

Picture 35: Properties of screens

Screens

63

User Manual

Properties of screens
OPTIONS

DESCRIPTION

Name

Defines a name for current screen. By using this name, you can
open the screen from any part of the application by using buttons
or function keys, as well as associate it to scripts.

Title

Defines a title for the screen, also used as its description.

Color

Defines the background color for current screen. This parameter


is used when there is no bitmap selected, or when the bitmap
doesn't fill the whole screen.

Bitmap

Enables or disables the use of a bitmap as background for


current screen.

Browse...

Allows for navigating the structure of directories in order to find


the BMP files to be used as background for the screen. The path
and name of the bitmap appear below.

Access level

Defines the access level for the screen.

5.2. Style Properties of Screen


The page of screen style properties appears when the Style tab is selected on top of
the screen properties. This page is shown below, and its respective fields are
described in the following table.

Picture 36: Style Properties of Screen

64

Screens

User Manual

Style Properties of Screen


OPTIONS

Screens

DESCRIPTION

Full Screen

Determines that the Screen occupies the whole application


window.

Windowed

Determines that the Screen appears within a window


without occupying the whole Screen of the application as
specified in the Size and Position options.

Width

Defines the width of the Screen in pixels.

Height

Defines the height of the Screen in pixels.

Determines the X coordinate for the top left corner of the


Screen in pixels. For example, if you are using a resolution
of 640x480 (VGA) in Windows, your X coordinate can
vary from 0 (zero) to 640 pixels for a window without scroll
bar.

Determines the Y coordinate for the top left corner of the


Screen in pixels. For example, if you are using a resolution
of 640x480 (VGA) in Windows, your Y coordinate can
vary from 0 (zero) to 480 pixels for a window without scroll
bar.

Scroll-Bars

Never: determines that the window has no scroll bars, even


when necessary. Automatic: scroll bars will automatically
appear when necessary.

Dont show objects


focus

Doesn't show the focus of screen objects in running time.

Show Border

Shows a border of one pixel of width surrounding the


screen. Only for windowed screens with a fixed size.

Resizeable
Movable

Allows the re-dimensioning of the window in running time.

Title bar

Shows or hides the Title Bar.

Initial Screen

Makes the Screen to be visible in running time.

Modal

Valid only for windowed Screens. Defines the window as


modal, i.e.., it should be closed so that the focus can pass to
other open windows.

Popup

Valid only for windowed Screens. Defines the window as


popup; this means that it is automatically closed when
loosing the focus.

Clip Children

Defines the use of clipping for redrawing screen objects in


relation to the background, then optimizing the redrawing.
This option should be enabled only if the screen objects are
not overlapped and will not move; otherwise, the desired
effect may not occur.

Close Button

Enables the close button in the window (button of top right


corner). This button can only be seen in running time.

Allows the window to be moved in running time.

65

User Manual

5.3. Screen Scripts


Screen scripts are generally associated to an action that is executed on screen. This
means, for example, that they can be executed when opening or closing the screen,
or even when a key is pressed while the screen is monitored. Scripts available for
screens are described in the table below.
SCRIPTS AVAILABLE
You can associate scripts to screens and execute them in one of the following
situations:
EVENTS

66

DESCRIPTION

OnHide

Executed after a screen has been closed.

OnKeyPress

Executed when the key that is specified in the New


key button is pressed.

OnKeyRelease

Executed when the key that is specified in the New


key button is released.

OnKillFocus

Executed when the screen loses focus of keyboard or


mouse

OnPreHide

Executed before the screen is closed. Call the Show()


function in this script to maintain the screen open.

OnPreShow

Executed before the screen is shown. Call the Hide()


function in this script to cancel the opening of the
screen.

OnSetFocus

Executed when the screen gains focus of keyboard or


mouse

OnShow

Executed when the screen is shown.

WhileKeyPressed

Executed while the key that is specified in the New


key button is pressed.

WhileRunning

Executed while the screen is active.

Screens

Chapter

6. Screen Objects

When the programmer is developing your application, many times he/she needs to
show some result, make an alert, or receive information and actions from the user.
This interaction with the user happens through what we call interface. For the
programmer to be able to build up the interface of your application, Elipse SCADA
offers a series of features called Screen Objects.
Screen objects are graphic elements and representations of real objects in the process
that help the user to interact and follow up the application being executed in Elipse
SCADA.
In this chapter, we will see the screen objects available in Elipse SCADA, their
meaning, usefulness, and operation. For a better comprehension, we have organized
the screen objects in two categories: visualization and interaction objects.

6.1. Editing of Screen Objects


Screen objects can be created from the Objects toolbar, already described in a
previous section, or through the Objects menu. Once the object you want to create is
selected, keep the left mouse as pressed in the screen area while you movement the
mouse (a doted rectangle shows the size and form of the object). When releasing the
button, the object will be positioned within the specified area.
The edition of objects on screen, like alignment, size, position, and grouping is done
through the Arrange toolbar already described or through the menu. The last object
to be selected stays with a red focus to be used as reference. To deselect an object,
use the combination of keys: [Shift]+[Ctrl]+[LeftMouse].

6.2. Properties of Screen Objects


In general, screen objects have several common properties that are grouped in the
pages next described.

Screen Objects

67

6.2.1.

Size and Pos Page

Picture 37: Properties of Size and Position

68

Screen Objects

User Manual

Properties of Size and Position


OPTIONS

Screen Objects

DESCRIPTION

Defines the X coordinate for the top left corner of the


object in pixels. It is used together with the Y attribute
to define the position of the object from the origin of
screen (0,0).

Defines the Y coordinate for the top left corner of the


object in pixels. It is used together with the X attribute
to define the position of the object from the origin of
screen (0,0).

Width

Determines the width of the object in pixels. It is used


together with the height attribute to define the size of
the object.

Height

Determines the height of the object in pixels. It is


used together with the width attribute to define the
size of the object.

Unmoveable during
development

Determines that the object cannot be moved during


configuration (blocks the changing of position for the
object).

Visible on application
startup
Enabled (receive mouse
and keyboard input)

Defines that the object will be visible when the


application starts.

Show tips during run-time

Enables the object to show a tip when the mouse is


over it.

Access level

Allows the association of an access level for the


object (0 for free access).

Enables the access for the keyboard and mouse to the


object (valid only for objects that allow inputs via
mouse or keyboard. Example: slider).

69

6.2.2.

Frame Page

Picture 38: Frame Properties

70

Screen Objects

User Manual

Frame Properties
OPTIONS

6.2.3.

DESCRIPTION

Visible

Enables or disables a frame around the object.

Color

Defines the color of the frame for the object.

Title

Enables or disables a title in the object frame.

Text

Defines the text of the title.

Font

Defines font, color, and size of Title font.

Text Line separator

Enables or disables a separator row between text and


object.

Border

Enables or disables a border to the frame.

Thickness

Defines the thickness of the frame in pixels.

Color

Defines the color of the frame border.

3D effect

Selects a 3D effect inside or outside the object frame.

Thickness

Defines the thickness in pixels for the 3D effect.

Tags Page

Picture 39: Tags Page

Screen Objects

71

Properties of the Tags Page


OPTIONS

DESCRIPTION

Objects

Shows the application tree. Depending on the object selected,


its property will appear in the window of Properties.

Properties

Allows the selection of any property of the object selected in


the tree.

Tags Selected

Lists the Tags that are associated to the object.

Add

Adds up the marked Tags to the list of selected Tags.

Remove

Removes the selected Tags from the list.

6.3. Scripts of Screen Objects


There are some scripts available for all screen objects; these scripts are described in
the table below. Scripts that are specific for an object are further described in the
respective section of the object. For more details regarding the use of scripts, see the
specific chapter.

Picture 40: Window of script edition

72

Screen Objects

User Manual

SCRIPTS AVAILABLE
You can associate scripts in any screen object for these events:
EVENTS

OnKillFocus
OnLButtonDblClk
OnLButtonDown
OnLButtonUp
OnMouseMove
OnRButtonDblClk
OnRButtonDown
OnRButtonUp
OnSetFocus

DESCRIPTION

Executed when the object loses focus of keyboard or mouse


Executed when the left mouse is pressed twice over the
object.
Executed when the left mouse is pressed over the object.
Executed when the left mouse is released over the object.
Executed when the mouse is moved over the object.
Executed when the right mouse is pressed twice over the
object.
Executed when the right mouse is pressed over the object.
Executed when the right mouse is released over the object.
Executed when the object receives the focus of keyboard or
mouse

6.4. Cross-Reference
The Cross-Reference page lists all links for current object, and its properties, i.e.,
which other objects refer to it and what properties or values are being used. If you
want to go to the selected item just double-click it. The Box of Show children
items allows to view in the list, the children items associated to the father items
listed.

Picture 41: Cross-Reference

Screen Objects

73

6.5. Visualization Objects


6.5.1.

Text

The Text object allows the attribution of messages at intervals of tag values, called
Zones. Several zones can be defined, each one of them containing its own message.
The Text Properties allow the definition of colors and messages for each zone. It is
also possible to define a Default Zone for values not belonging to any specific
interval. You can edit the properties of a text by double-clicking it.

Picture 42: Text

General Properties of the Text

Picture 43: General Properties of the Text

General Properties of the Text


OPTIONS

74

DESCRIPTION

Name

Defines the name of the text that will be used in the


Organizer tree and in the scripts.

Description

A brief description of the text.

Screen Objects

User Manual

Text Zones

Picture 44: Window of edition of zones

Screen Objects

75

Properties of Text Zones


OPTIONS

6.5.2.

DESCRIPTION

Zones

Lists all Zones defined, and allows their edition.

Add

Adds up a new Zone to the list.

Delete

Removes the selected Zone from the list.

Autorange

Automatically adjusts the interval of Zones.

Message

Text associated to a selected zone. This message will be


shown when the value of the Tag associated to the Text object
is within the zone.

Alignment

Defines the alignment of characters for the Text object.

Transparent

Defines that the background of the object will be transparent.

Default zone

Defines the selected Zone as standard (default), i.e., a zone


containing all values not defined in other zones.

Blinking

Enables the Blinking for the zone. Once activated and defined
as Blinker, the zone alternates with the default zone, in
accordance with the time set in Blinking every.

Blinking every

Defines the interval for Blinking between Blinking and default


zones.

Tip

Allows the configuration of a tip for each zone. If the zone


doesn't have a tip, the system uses the description of the
object.

Minimum

Defines a minimum value for the selected Zone.

Maximum

Defines a maximum value for the selected Zone.

Background

Defines the background color of the Text

Font

Defines font, color, and size for the text of the message.

Display

The Display object is used to show tag values in real time.


The properties of display allow the definition of the size, color, font, alignment, 3D
effects, and other characteristics. You can edit the display properties by doubleclicking it.

Picture 45: Display

76

Screen Objects

User Manual

General Properties of Display

Picture 46: General Properties of Display

General Properties of Display


OPTIONS

Screen Objects

DESCRIPTION

Name

Defines the name of the display that will be used in


the Organizer tree and in the scripts.

Description

A brief description of the display.

Alignment

Defines the alignment of characters for the display.

Font

Defines the font, color and size of the display text.

Background

Defines the background color of the display

Multiline

Defines the display as having multiline. Only


available if the format of setpoint (format page) is
string.

77

Display Format

Picture 47: Display Format

Availables Options
OPTIONS

78

DESCRIPTION

String

Shows the value of the Tag in string format.

Numeric

Shows the value of the Tag in numeric format.

Size

Defines the number of digits to be shown, including


the decimal point.

Precision

Defines how many digits of size will be decimal.

Prefix

Adds up a prefix of string type to the value shown.

Suffix

Adds up a suffix of string type to the value shown.

Screen Objects

User Manual

6.5.3.

Browser

The Browser object allows viewing your database files. These files should be in
Elipse SCADA format, i.e., should have been created by Elipse. In order to browse
these files, you should look for .DAT (Historic or Alarms) or .HDR (Batch)
extensions. You can edit the browser properties by double-clicking it.

Picture 48: Browser

General Properties of Browser

Picture 49: General Properties of Browser

Screen Objects

79

Properties of the Browser object


OPTIONS

DESCRIPTION

Name

Defines the name of the Browser that will be used in


the Organizer tree and in the scripts.

Description

A brief description of the Browser.

Font

Defines the font, color and size of the text to be


shown in the Browser.

Order

Defines the order (ascending or descending) of


Browser records.

Title Background

Defines the background color for the Browser title.

Title Text

Defines the text color for the Browser title.

Row Background

Defines the background color of Browser text rows.

Row Text

Defines the Browser rows text color.

Selection Background

Defines the background color for the selected rows of


Browser.

Selection Text

Defines the text color for the selected rows of


Browser.

Grid

Defines the color of the Browser grid.

Background

Defines the color of the Browser external area.

Settings of Browser

Picture 50: Properties of Browser

80

Screen Objects

User Manual

Setting of Browser
OPTIONS

Screen Objects

DESCRIPTION

Source Filename

Defines the name of the file to be shown in the


Browser object. This file should have DAT or HDR
extension.

Browse

Allows the localization of the font file to be used by


the Browser.

All Batches

Selects all batches to be printed. This option is


available only if the font file (Source Filename) is a
Historic file with batch process enabled.

Last batches

Selects the last batch to be printed. This option is


available only if the font file (Source Filename) is a
Historic file with batch process enabled.

Specific Batch

Selects a specific batch to be printed, according to the


specification of the Field and Criteria fields. This
option is available only if the font file (Source
Filename) is a Historic file with batch process
enabled.

Field

Lists the fields available for the selection of a specific


batch. Only string type fields will be listed.

Criteria

Defines the value to be searched when a specific


batch is selected.

81

Browser Query

Picture 51: Settings of query for the Browser

82

Screen Objects

User Manual

Settings of query for the Browser


OPTIONS

DESCRIPTION

No query date

A filter will not be used, i.e., all data is selected.

Time range

Select data base data between two times.

Newest data

Only selects newer data.

Initial Date

Determines the initial date of the time interval.

Final Date

Determines the final date of the time interval.

Initial Time

Determines the initial time of the time interval.

Final Time

Determines the final time of the time interval.

Last

Defines the number of units for selecting most recent data.

Unit

Defines the unit used for selecting most recent data.

Browser Database

Picture 52: Database Properties

Screen Objects

83

Database Properties
OPTIONS

DESCRIPTION

Fields

Lists available fields.

Move Up

Moves the selected field one position up.

Move Down

Moves the selected field one position down.

Enable

Allows the selected field to be printed.

Reload file structure

Reloads the current list of fields of the file in the


browser fields. When some modification is done to
the structure of the file used by the browser, this
button should be pressed for updating fields.

Size

Defines the number of digits to be shown, including


the decimal point.

Precision

Defines how many digits of size will be decimal.

Prefix

Adds up a prefix of string type to the value shown.

Suffix

Adds up a suffix of string type to the value shown.

Date format

Defines the format of the time marking (timestamp)


of browser.

Label

Allows the changing of the name of the selected field.

Lines

Defines the number of lines the selected field will


have in the browser.

Browser Scripts
The events available for exclusive Scripts of the Browser are described in the table
below. For more details regarding the use of scripts, see the specific chapter.
SCRIPTS AVAILABLE
You can associate Scripts to the Browser and execute them in one of the following
situations:
EVENTS

OnDrawRow

84

DESCRIPTION

Executed right before each Browser row is drawn. It allows


the modification of the background color and the row text
through the functions SetTempRowColor() and
SetTempRowTextColor(), depending on the value of the
row fields (this value can be taken with function GetField()).

Screen Objects

User Manual

6.5.4.

Bitmap

The Bitmap object allows the insertion of images, figures or drawings in the screens
of your application, as long as they are in BMP, GIF or JPEG format. This object can
be re-dimensioned to have the same size of the picture, and has support to
transparence, being enough just to enable and select a color. You can edit the
Bitmap properties by double-clicking it.

Picture 53: Bitmap

Note: In Elipse SCADA CE, only .BMP is currently avaliable.


General Properties of Bitmap

Picture 54: General Properties of Bitmap

Screen Objects

85

General Properties of Bitmap


OPTIONS

6.5.5.

DESCRIPTION

Name

Defines the name of the Bitmap that will be used in


the Organizer tree and in the scripts.

Description

A brief description of the Bitmap.

Bitmap Name

Defines the name of the corresponding file.

Browse...

Allows the indication of the localization of the file to


be used.

Transparent

Determines that the color specified in the Background


is transparent.

Background

Defines the background color of the Bitmap

Fit to Image

Adjusts the Bitmap object so that it has the same size


of the original picture.

Animation

The Animation object is an easy way of creating an animation by using images


(bitmaps) associated to frames defined by the user, which are shown in sequence. A
Tag should be associated to the animation, so that the Tag value determines what
animation frame will be shown. The Tag values are associated to Zones, which
correspond to a given frame.
It is possible to use images of any size and color, as long as they are files in the
supported formats: GIF, JPEG and Bitmap (.BMP). You can edit the Animation
properties by double-clicking it.

Picture 55: Animation

Note: In Elipse SCADA CE, only .BMP is currently avaliable.

86

Screen Objects

User Manual

General Properties of Animation

Picture 56: General Properties of Animation

General Properties of Animation


OPTIONS

Screen Objects

DESCRIPTION

Name

Defines the animation name.

Description

A brief description of the object.

Transparent

Defines that the color specified in the Background


option will be transparent, allowing the background
of the screen to be shown.

Border

Enables a border (black row) around frames.

Background

Defines a background color for the animation.

Blinking every

Interval in milliseconds for the Blinking between the


Blinking and Default Zones.

Fit to Image

Adjusts the animation object so that it has the same


size of the first frame of the animation.

87

Animation Zones

Picture 57: Definition of Animation Zones

88

Screen Objects

User Manual

Properties of Animation Zones


OPTIONS

6.5.6.

DESCRIPTION

Bitmap

Lists the bitmaps of animation frames. Select one bitmap to


see and edit its properties.

Location

Shows the bitmaps path.

Add

Used to add a bitmap or a group of bitmaps to the list.

Delete

Removes a bitmap or a group of bitmaps from the list.

Autorange...

Automatically adjusts the zones, by equally dividing the


total of the interval between defined zones.

Change Location

Used to change the localization (path) of the bitmap.

Default Zone

Defines the frame selected in the list as standard; therefore,


it will be shown when the tag value is outside other defined
zones.

Minimum

Defines a minimum value for the selected Zone.

Maximum

Defines a maximum value for the selected Zone.

Blinking

Indicates that the Blinker will use this zone.

Tip

Allows the configuration of a tip for each zone. If the zone


doesn't have an enabled tip, the system uses the description
of the object.

Preview

Shows a forecast of the selected frame.

AVI

The AVI object is used for visualizing files with AVI extension in the system.
Through this object, it is possible to Browse the AVI file in the system, and show it
on screen when the project runs. This object only accepts AVI files.

Picture 58: AVI

Screen Objects

89

General Properties of AVI

Picture 59: General Properties of AVI

General Properties of AVI


OPTIONS

6.5.7.

DESCRIPTION

Name

Defines the name of the object in the system.

Description

A brief description of the video.

AVI file

Shows the path of the AVI file in the system.

Browse...

Allows navigation in directories in order to Browse the


AVI file.

Video

The Video object is used for visualizing a video image. Through this option, it is
possible to view system files, or those created by the Watcher option.

Picture 60: Video

90

Screen Objects

User Manual

General Properties of Video

Picture 61: General Properties of Video

General Properties of Video


OPTIONS

Screen Objects

DESCRIPTION

Name

Defines the name of the object in the system.

Description

A brief description of the video.

Video Source

Determines the font video will use for the


visualization of the object

AutoPlay (play video when


the screen is opened)
Stretch Video to fit
window size

Enables the visualization of the video when the object


is executed
Enables the adjustment of the video according to the
object size.

91

6.5.8.

Preview

The Preview object is used for the video display files generated through the
XPressPlayer board. Through this object, it is possible to configure it in the
XPressPlayer board to be connected to a given camera, or to indicate the
XPressPlayer file. The visualization of the object will be shown during the execution
of the project.

Picture 62: Preview

General Properties of Preview

Picture 63: General Properties of Preview

92

Screen Objects

User Manual

General Properties of Preview


OPTIONS

6.5.9.

DESCRIPTION

Name

Defines the name of the object in the system.

Description

A brief description of the video.

XPressPlus Board

Indicates the object of XPressPlus of Watcher to be


associated to the Preview object.

Camera number

Indicates the number of the camera that is connected


to the object.

Window Size

Indicates the size of the window for the visualization


of the object.

Camera Number

Shows the path of the video file in the system.

Auto size

Automatically adjusts the visualization window


according to the specifications of the Window Size
option.

Enable Large Preview

Enables the visualization in "full screen".

Trend

This object is used to view a trend graphic with up to 16 tags. The graphic is
constantly refreshed as the process evolves and tag values change.
By using trends, you can make graphs like Value x Time and Value x Value. Due to
these characteristics, it is possible to make the analysis of data as the process
evolves.
The trend object has various aspects that can be modified through various pages of
properties, which will be next seen.

Picture 64: Trend

Screen Objects

93

General Properties of Trend

Picture 65: Trend Properties

94

Screen Objects

User Manual

Trend Properties
OPTIONS

Screen Objects

DESCRIPTION

Name

Defines the name for the identification of the trend


object.

Description

A brief description of the trend.

XY

Enables a graph in real time as a function of two


variables, each one in an axle of coordinates. The
variables can be grouped in pairs, so that an object
can show various XY functions.

Time x Data

Defines a data graph as a function of time.

Show labels

Shows a legend with meaning for each pen of trend.

New data appears on the:

Defines from where new data of trend will come.

Time Span

Defines the total interval of time for the sampling of


the graph (in seconds). This option is disabled if the
trend is historic.

Refresh Trend every

Defines the interval of time between each graph


updating. This option is disabled if the trend is
historic.

Buffer Size

Defines the number of points (from 1 to 1.000.000)


the trend will store for each pen (each point occupies
20 bytes). This option is disabled if the trend is
historic.

Add Mark

Adds up a horizontal or vertical row, or a point for


reference to the trend graph.

95

Advanced Properties of Trends

Picture 66: Advanced Properties of Trends

Advanced Properties of Trends

96

OPTIONS

DESCRIPTION

Real time, only when the trend


is on screen
Real time, data collect data in
background
Load historic data from disk

Refreshes the values of the trend in real time


only if the trend is visible.

Configure Query

Opens up a window that allows the


configuration of the Historic trend Query.

Refreshes the values of the trend in real time


even when the trend is not visible.
Refreshes the trend by loading data from a
selected Historic.

Screen Objects

User Manual

Properties of the trend Graph

Screen Objects

97

Properties for Axis X and Y


OPTIONS

DESCRIPTION

(Scale)

The first combo box indicates the scale type to be


used in the axis, as follows: normal scale, logarithmic
scale, or power-factor scale.

Limit

Defines the left limit of the X axle in the graph. This


option is available only if the graph is of XY type.

Right limit

Defines the right limit of the X axle in the graph. This


option is available only if the graph is of XY type.

Show top ruler

Shows a ruler on top of the graph, with values from X


axle.

Show bottom ruler

Shows a ruler on the base of the graph, with values


from X axle.

High Limit

Defines the top limit of the Y axle in the graph.

Low Limit

Defines the bottom limit of the Y axle in the graph.

Show left ruler

Shows a ruler on the left side of the graph, with


values from Y axle.

Show right ruler

Shows a ruler on the right side of the graph, with


values from Y axle.

Scrolling Grid

Makes the graph grid to accompany the movement


generated by the input of data in the trend.

Text

Allows the placement of a legend for axis X and Y.

Date/Time Format

Allows the definition of the data and hour format for


Tendencies of Value x Time type.

Properties of Graph Colors


OPTIONS

DESCRIPTION

Ruler background

Defines the background color for the graph rulers.

Ruler text

Defines the color for the text that will be shown in


rulers.

Chart background

Defines the background color for the graph.

Grids and Axis

Defines the color of the grid and of the graph axis.

Properties of the Graph Grid


OPTIONS

98

DESCRIPTION

Grid

Enables the grid in the graph (orientation rows).

X Rows

Defines the number of horizontal rows of the grid

Y Rows

Defines the number of vertical rows of the grid

Ruler font

Defines font, size, and color for the graph characters.

Screen Objects

User Manual

Colors of Trend Pens

Picture 67: Color of Trend Pens

Availables Options
OPTIONS

DESCRIPTION

Inserts a pen associated to a tag.


Inserts a pen associated to a field in the historic (the Load Disk
Historic Data should be enabled in the Advanced card).
Inserts an indication mark in the graph.
Erases a pen or tick that is selected in the list.
Defines that the pen drawing will be of Line type.
The supported styles on CE are solid and dashed only. In case
of an unsupported style be selected, the solid style will be
automatically used.
Defines that the pen drawing will be of Area type.
Defines that the pen drawing will be of Bar type.
Changes the order of the selected pen.
Label

This column lists the selected pens for the graph. Allows the
changing of the text of the legend, and the activation/deactivation
of each pen.

Y Axis

Selects the tag to be visualized in axis Y.

X Axis

Selects the tag to be visualized in axis X.


Shows the table of Pen Colors.

Screen Objects

99

6.5.10. Bar Graph


The Graph of Bars is used when wanting to view data in the form of volume. By
editing the graph properties, it is possible to define a series of characteristics, like
graphic Scaling, orientation of bars (vertical/horizontal), rulers, and colors.
A bar with a specific color represents each tag associated to the Graph of Bars, and it
is possible to show up to a maximum of 16 bars (i.e., 16 tags). The object has also a
second mode, the Bar Gauge. With this mode, a needle that travels a Scaling placed
over each bar indicates tag values.
You can edit the properties of the Bar Graph by double-clicking it. In properties of
Bar Graph, we have various pages (tabs) for its configuration.

Picture 68: Bar Graph

100

Screen Objects

User Manual

General Properties

Picture 69: General Properties

Screen Objects

101

General Properties of Bar Graph


OPTIONS

DESCRIPTION

Name

Defines the name of the object that will be used in the Organizer
tree and in the scripts.

Description

A brief description of the graph.

Type

Defines what is the bar graph type: Bar (simple) or Bar Gauge
(meter in bar).

Limit

Defines the minimum and maximum values for the Bar Graph.

Orientation

Defines the Graph orientation. Options available are down up,


up down, left right, right left.

Background

Defines a background color for the Bar Graph.

Bipolar

Determines that the graph bars will have two sides divided by a
center. The bars grow from the center in the direction of the
graph limits.

Center

Defines the center for a bipolar Bar Graph.

Spacing

Defines the space between bars, in pixels.

3D

Enables or disables a tri-dimensional effect in the graph bars.


You can also define the width of the 3D effect.

Ruler Properties

Picture 70: Ruler Properties

102

Screen Objects

User Manual

Ruler Properties
OPTIONS

DESCRIPTION

Enable

Allows a ruler to be shown in the Bar Graph.

Show top ruler

Shows a top ruler in the Bar Graph, where Tag values


are shown.

Show bottom ruler

Shows a bottom ruler in the Bar Graph, where Tag


values are shown.

Show left ruler

Shows a ruler at the left side of the Bar Graph, where


Tag values are shown.

Show right ruler

Shows a ruler at the right side of the Bar Graph,


where Tag values are shown.

Ruler Text

Unit to be shown in the ruler of the Bar Graph.

Ruler divisions

Defines the number of divisions of the ruler.

Colors

Defines the ruler background, text, and grid


(divisions) colors.

Rule font

Defines font, size, and color for the characters in the


Bar Graph ruler.

Bar Color
This card makes it possible to enable the legends that will be at the side of the
drawing of bars in the graph. This is done by choosing the Show labels option. Each
number indicates the graph bar, its respective legend and color.

Picture 71: Bar Color Properties

Screen Objects

103

Bar Gauge Colors


This page allows the adjustment of the properties of the Bar Gauge. It is available
only when the Bar Gauge option is specified in the page of general properties of the
graph.

Picture 72: Bar Gauge Color

Bar Gauge Color Properties


OPTIONS

104

DESCRIPTION

Tag

Allows the choice of the bar to be edited.

Low-Low Limit

Enables the indication of the range of critical low value in


the bar. Specifies the color of the range, and the limit value.

Low limit

Enables the indication of the range of low values in the bar.


Specifies the color of the range, and the limit value.

Normal limit

Specifies the color of the range of values considered as


normal for the tag.

High limit

Enables the indication of the range of high values in the bar.


Specifies the color of the range, and the limit value.

High-High limit

Enables the indication of the range of critical high value in


the bar. Specifies the color of the range, and the limit value.

Pointer size

Defines the size of the pointer that will indicate the tag
value.

Screen Objects

User Manual

6.5.11. Gauge
The Gauge object is very useful in order to show variables with analog results,
working as a continuous meter. Scaling values and properties of gauge can be
defined by the user, besides their position on screen, which can vary in 0, 90, 180 or
270 degrees in rotation. You can edit the Gauge properties by double-clicking it.

Picture 73: Gauge

General Properties of Gauge

Picture 74: General Properties of Gauge

Screen Objects

105

General Properties of Gauge


OPTIONS

106

DESCRIPTION

Name

Defines the Gauge name.

Description

A brief description of the Gauge.

Minimum value

Defines the minimum value for the Gauge.

Maximum value

Defines the maximum value for the Gauge.

Frame color

Defines the background color of the Gauge.

Back color

Defines the Gauge color.

Text color

Defines a color for the Gauge Scaling numbers.

Needle color

Defines Gauge pointer color.

Position

Defines the position of the Gauge (0, 90, 180 and


270).

Display limits

Shows the limit numbers of the Gauge Scaling.

Display values

Shows the nominal value indicated in the Gauge.

Decimal places

Defines the number of decimals for the nominal value


of the Gauge.

Total ticks

Defines the number of divisions in the graphic


Scaling used in the Gauge.

Starting angle

Defines the initial angle for the Gauge needle.

Font

Defines font, color, and size for the text of the Gauge.

Use thick needle

Defines a thicker needle for the Gauge.

Screen Objects

User Manual

Advanced Properties of Gauge

Picture 75: Extended Properties of Gauge

Screen Objects

107

Advanced Properties of Gauge


OPTIONS

DESCRIPTION

Show ticks

Shows the main marks in the Gauge object.

Use thick ticks

Determines that main marks are thick.

Show sub-ticks

Shows marks in the Gauge object.

Total numbers

Defines the total number of sub-marks to be shown


between main marks.

Show fonts

Shows numeric values in the Gauge object.

Show bullet ticks

Shows marks in the form of bullets.

Font

Allows the definition of the font of Gauge values.

Show legend

Shows a bar along the Gauge, in which it is possible


to configure different colors, depending on the range
of values.

Show frame

Shows a frame along the course of the needle.

High limit

Defines the height of the top border of the legend.

Low limit

Defines the height of the bottom border of the legend.

Colors

Defines the values and colors for limits: LowLow,


Low, Normal, High and HighHigh to be shown in the
legend.

6.6. Interaction Object


6.6.1.

Slider

This object is used to read or write values in a selected Tag. You can attribute values
to the selected Tag by sliding the potentiometer (sliding button), or by using the
direction arrows in the extremities of the Slider. The value will vary according to a
Scaling that is defined in the object. You can edit the Slider properties by doubleclicking it.

Picture 76: Slider

108

Screen Objects

User Manual

General Properties of the Slider

Picture 77: General Properties of Slider

Screen Objects

109

General Properties of Slider


OPTIONS

6.6.2.

DESCRIPTION

Name

Defines the Slider name.

Description

A brief description of the Slider.

Minimum value

Defines the minimum value for the Slider.

Maximum value

Defines the maximum value for the Slider.

Step

Defines the step of variation for the value of Slider


(associated Tag) when the direction arrows are
pressed.

Background

Defines the background color of the Slider.

Text color

Defines the color of the numbers that will be shown


in the Slider.

Fonts

Allows the configuration of the fonts used in the


slider.

Display Limits

Enables or disables the Slider limits (maximum and


minimum) to be shown in the object.

Display value

Enables or disables the Slider values to be shown.

Display arrows

Enables or disables the Slider arrows to be shown.

Vertical position

Positions the Slider vertically.

Horizontal position

Positions the Slider horizontally.

Move

Allows the updating of the Slider value, even when


the button is moving.

Release

Refreshes the Slider value only when the sliding


button is released.

Precision

Defines the number of decimal digits to be shown in


the Slider.

Slider Button size

Modifies the size of the sliding button in the Slider.

Button

This object is used for activations or executions of tasks specified by the user
through the mouse or keyboard, and its operation is equal to the Windows standard
buttons.
Elipse SCADA has a series of button models, among switches, keys, and others, to
facilitate the implementation of various functions by using buttons. The activation of
buttons also generates events that can be treated by Scripts. Buttons are very
flexible, and can be widely set through the pages of properties.

Picture 78: Button

110

Screen Objects

User Manual

General Properties of the Button

Picture 79: General Properties of the Button

Screen Objects

111

General Properties of the Button


OPTIONS

DESCRIPTION

Name

Defines the name of the Button that will be used in the Organizer
tree and in the scripts.

Description

A brief description of the Button.

Momentary

This type of button functions as an OK button of a dialog box, and


is used to attribute a value to the associated Tag, or to change
between screens.

Toggle

This type of button functions like a key. It has two states (on and
off), which can be defined in the Messages page.

Jog

This button alternates between two values: one, when it is pressed,


and another one when it is released. It functions like the reset
button in the computer.

Buttons

Group of models that define the button look. Available are keys,
switches, and bitmaps, besides a transparent board that allows the
transforming of any object under it into a button.

Function key

Associates a function key to the button.

Go to screen

Defines a screen to be called when the button is pressed.

Button Messages

Picture 80: Button Message

112

Screen Objects

User Manual

Properties of the button message - Normal State


OPTIONS

DESCRIPTION

Text

Defines a text to be shown in the button when it is not pressed.

Text font

Defines the color, size, and type of the text font when the
button is not pressed.

Background

Defines a background color for the button when it is not


pressed.

Value

Defines the value to be attributed to the associated tag when


the button is not pressed.
Properties of the button message - Pressed State

OPTIONS

DESCRIPTION

Text

Defines a text to be shown in the button when it is pressed.

Text font

Defines the color, size, and type of the text font when the
button is pressed.

Background

Defines a background color for the button when it is pressed.

Value

Defines the value to be attributed to the associated tag when


the button is pressed.

Align

Aligns the button to the left, center, or right.

Button Scripts
Scripts exclusively available for buttons are described in the table below. For more
details regarding the use of scripts, see the specific chapter.
SCRIPTS AVAILABLE
You can associate scripts to buttons and execute them in one of the following
situations:
EVENTS

Screen Objects

DESCRIPTION

OnPress

Runs the script when the button is pressed.

OnRelease

Runs the script when the button is released.

WhilePressed

Runs the script while the button is pressed, depending on the


defined cycle (in ms).

113

6.6.3.

Setpoint

The Setpoint object works as an editing box of Windows; thereby, it is just enough
to type a value and press [Enter] to attribute this value to the associated tag. The
properties of setpoint allow you to define the type of input value, the font, size and
color of characters to be shown in the object. You can edit the Setpoint properties by
double-clicking it.

Picture 81: Setpoint

General Setpoint Properties

Picture 82: General Properties of Setpoint

114

Screen Objects

User Manual

General Properties of Setpoint


OPTIONS

DESCRIPTION

Name

Defines the name of the Setpoint that will be used in the


Organizer tree and in the scripts.

Description

A brief description of the Setpoint.

Alignment

Defines the alignment of Setpoint characters.

In CE, vertical alignment is always centralized.


Background

Defines the background color for the Setpoint.

Limits

Defines the limits for the input data of Setpoint.

Fonts

Defines the font, color and size of the Setpoint text.

Refresh

Refreshes the Setpoint value always when the Tag value


changes.

Multiline

Defines the Setpoint as having multiline. Only available if the


format of Setpoint (Format page) is text.

Selects all on focus

Selects all Setpoint characters when it receives the focus.

Format of Setpoint

Screen Objects

115

Picture 83: Format of Setpoint

Properties of Setpoint Format


OPTIONS

116

DESCRIPTION

Text

Shows the value of the Setpoint in string format.

Numeric

Shows the value of the Setpoint in numeric format.

Size

Defines the number of digits to be shown, including the decimal


point.

Date/Time
Format

Shows the value of the Setpoint in date and hour format.

Prefix

Adds up a prefix of string type to the value shown.

Suffix

Adds up a suffix of string type to the value shown.

Allows the definition of a string that describes the date and hour
format.

Screen Objects

User Manual

Setpoint Keys

Picture 84: Setpoint Keys

Screen Objects

117

Setpoint Keys Properties


OPTIONS

DESCRIPTION

Change Object Focus Key

Allows the selection of a key combination, or a key to


alternate the focus between data entries of Screen
Objects. Substitutes the [Tab] key when the Setpoint
is a multi-rows one.

Force Value Key

Allows the selection of a key combination, or a key to


send typed data from the Setpoint to the selected Tag.
Substitutes the [Enter] key when the Setpoint is a
multi-rows one.

Hide keypad after values


entry

Indicates that the keypad will disapper after the values


entry.

Keypad is never hidden in CE.

6.6.4.

Alarms

The Alarm object allows the verification of active or registered alarms (logged) in
the alarm file. Alarms can be triggered when values of associated tags are verified in
four situations and different priorities: LoLo (critically low), Low, High, HiHi
(critically high). Outside these ranges, tag values are considered as normal.

Picture 85: Alarms

In the alarm window, we find a toolbar that allows some functions, like:

118

Screen Objects

User Manual

Recognizes the alarms selected with the mouse


Lists alarms by date
Lists alarms by name, using the date as secondary key
Lists the alarms by priority (initiating by priority 1), using the
date as secondary key

General Properties of Alarms


Alarm properties allow the definition of date, hour, and messages format, as well as
the colors for each alarm situation. You can edit the properties by double-clicking it.

Picture 86: General Properties of Alarms

General Properties of Alarms


OPTIONS

Name
Screen Objects

DESCRIPTION

Defines the name of the Alarms object.


119

OPTIONS

120

DESCRIPTION

Description

A brief description of the Alarms object.

Alarm type

Summarized: shows the active alarms, i.e., Tags that


are in alarm situation at the moment.
Historic: shows the alarms registered in the alarms
file. Note: the Enable Reg. option in the Alarms
object in Organizer should be enabled.

From Priority

Defines the highest priority of alarms to be shown in


the object.

To Priority

Defines the lowest priority of alarms to be shown in


the object.

Toolbar

Shows or hides the toolbar of the Alarm object.

Titles

Enables a title bar in the Alarm object, showing a


header row with data selected in the Message Format
page.

Large buttons

Enables large buttons in the toolbar of the Alarms


object.

Alarm Group

Selects the alarm group to be shown in the current


Alarms object.

Screen Objects

User Manual

Alarm Colors

Picture 87: Settings of Alarm colors

Screen Objects

121

Properties of Alarm colors


OPTIONS

DESCRIPTION

Window color

Background color of the object.

Ack ALM color

Color for acknowledged alarms.

Title bar color

Color for columns title bar.

Title text color

Color for columns title text.

Toolbar color

Color for objects toolbar.

Default ALM color

Color for non-acknowledged alarms.

Zone 1

Allows to define Zone 1 priority interval, alarm text and alarm


background colors, and if the line will blink or not.

Zone 2

Allows to define Zone 2 priority interval, alarm text and alarm


background colors, and if the line will blink or not.

Zone 3

Allows to define the Zone 3 priority interval, alarm text and alarm
background colors, and if the line will blink or not.

Blinking every ms

Allows to specify the blinking frequency.

Format of Alarm Messages

Picture 88: Format of alarm message

122

Screen Objects

User Manual

Settings of Alarm messages format


OPTIONS

Screen Objects

DESCRIPTION

Date

Enables the visualization of the data in the Alarm object,


according to the format specified in the Format option.

Date/Format

Defines the date format to be shown in the Alarm object.

Time

Enables the visualization of the hour in the Alarm object,


according to the format specified in the Format option.

Time/Format

Defines the hour format to be shown in the Alarm object.

AM/PM

Enables the American hour format.

Show milliseconds

Shows milliseconds in the hour column of the Alarm object.

Event

Enables the visualization of the events column in the Alarm


object.

Alarm type

Enables the visualization of the alarm type column (lolo,


low, high, hihi) in the Alarm object.

Priority

Enables the visualization of the alarm priorities column


(lolo, low, high, hihi) in the Alarm object.

Alarm Status

Enables the visualization of the status column (UnAck,


Ack) of alarms in the Alarm object.

Remarks

Enables the visualization of comments defined for Tags in


the Alarm object.

Remarks/Size

Defines the size of comments in number of characters.

Value

Enables the visualization of the tag values column in the


Alarm object. Values will be shown as varied for
summarized type alarms, or fixed for historic type alarms.

Value/Size

Defines the size of tag values in number of characters.

Value/Precision

Defines how many digits of size will be decimal.

Tag name

Enables the visualization of the tag values column in the


Alarm object.

Tag Name/Size

Defines the size of tag names in number of characters.

Limit

Enables the visualization of limits defined for Alarms


according to their type (Low, LoLo, High, HiHi)

Limit/Size

Defines the size of the limiting values of each alarm in


number of characters.

Limit/Precision

Defines how many digits of size will be decimal.

User

Enables the visualization of the name of the user in charge.

User/Size

Defines the size of the user name in number of characters.

123

Chapter

7. Alarms

The Alarms option in the application tree of the Organizer allows the definition of
some characteristics for the management of system Alarms. You can specify a file
where to record all alarms that will occur in your system, as well as setting up
sounds and alert messages. The properties of the Alarm Manager affect the behavior
of all system Alarm that is specified in the page of Tag Alarms.

7.1. General Alarm Properties


The page of General Alarm Properties appears when the Alarms tab is selected on
top of the Alarms pages. This page is shown below, and its respective fields are
described in the following table.

Picture 89: General Alarm Properties

Alarms

125

General Alarm Properties


OPTIONS

DESCRIPTION

Verifies alarms on this


group
Enable log

Allows the enabling or disabling of the verification of


alarms in the group.

Records

Defines the size of the Alarms file in number of


records. Each alarm is a record that occupies 42 bytes.
The header size is of 848 bytes, which determines the
initial size of the file. Updating of this file occurs in a
cyclical way.

Filename

Defines the name of the Alarms file (DAT extension).

Browse

Allows the localization or definition of a directory for


the Alarms file.

Play warning sound

Enables an alert sound for Alarms. The sound can be


chosen in the list below.

Write directly to disk

Forces the direct writing of data into the disk without


using buffers. This diminishes the performance, but
increases a lot the safety of data in case of failures.

Generate SNMP traps for


each new alarm

(Available only in Windows NT. systems) Makes the


system to generate a SNMP event (trap) at each new
alarm message.

New alarm group

It creates a new Alarm group. The user can choose to


what alarm group a Tag or Alarms screen object is
associated.

Enables the log of alarms of current group.

7.2. Alarm Scripts


Scripts of Alarms Manager are generally associated to an alarm situation. This
means, for example, that they can run when an Alarm occurs.
Scripts available for Alarms are described in the table below. For more details, see
Scripts.
SCRIPTS AVAILABLE
You can associate Scripts to Alarms by executing them in the following situation:
EVENTS

OnAlarm

126

DESCRIPTION

Runs the Script when an alarm occurs and when an


alarm returns.

Alarms

Chapter

8. Recipes

A Recipe is a set of pre-defined values that can be loaded into a group of tags in
order to configure a specific process. This list of tags we also call model of recipe.
For instance, be it a machine that makes different types of screws. Variables
involved in the process are always the same, but their values will probably change,
depending on the type of screw one wants to produce. Supposing that you have
different machine settings for each type of screw, these values could be recorded in a
recipe, and be further loaded into tags of control, facilitating the task of the operator,
and avoiding errors.
In this way, we can create a Screw recipe model with several recipes: Philips,
Torx, Simple, and so forth.
In order to be recovered when necessary, the models and data of a recipe are stored
in disk, in a recipes file with .RCP extension.
You can define a Recipe in the Organizer during the configuration of the
application, or in execution time, by using Special Functions through Scripts.

8.1. General Recipe Properties


Each recipe you create for the application appears below the Recipes option in the
application tree in Organizer. When selecting a specific recipe, its properties are
shown on the right side of the tree.

Recipes

127

Next, we can see the properties of recipes.

Picture 90: Recipes Properties

Recipes Properties
OPTIONS

128

DESCRIPTION

Name

Defines the name of the recipe model.

Description

A brief description of the recipe model.

Recipe File

Defines the name of the file for the recipe model. The
file name can have up to 8 characters, and should not
contain extension (Elipse SCADA will always use
the RCP extension). You can also specify the file
path,
which
can
be
an
absolute
(C:\ELIPSE\RECIPES\RCP1)
or
relative
(RECIPES\RCP1) location. Relative locations are
recommended if you want to copy your application
into another computer.

Enable write cache

Enable Windows cache to make faster the recipe file


saving.

Create backup file

Create a backup copy of .RCP file, which contains


the recipe information. The backup file can be used to
restore some recipe information, in case of problems.

Edit selected label here

Allows the edition of the label that identifies the tag


selected in the recipe.

Edit Data

Opens up the Edit Recipe window, where it is


possible to add and modify values of the different
recipes.

Labels

Shows the fields associated to tags of the recipe


model.

Tag

Shows tags selected for the current recipe model.

Recipes

User Manual

8.2. Editing Recipes


In order to add, edit, or erase already created recipes, we use the Edit Recipe
window, which is called through the Edit data... button in the page of recipe
properties.
All recipes created by using the model chosen are listed in the Recipes field, in
which they can be selected for edition. By selecting any recipe in the list, you will
be able to edit its description and the values of each associated tag.
Next, we will see the fields of this window:

Picture 91: Edit Recipe

Fields of the Edit Recipes window


OPTIONS

Recipes

DESCRIPTION

Recipes

Allows the selection of a recipe in the current model.

Recipe Title

Name or description of the recipe.

New Recipe

Creates a new recipe. Each recipe model can have various recipes
(set of values) listed.

Delete Recipe

Erases the selected recipe.

Copy Recipe

Allows the copying of an already defined recipe, in order to make


the creation of recipes with many variables to become easier.

Please enter the new


value for selected
tag

Allows the edition of the tag value for the current recipe, which is
listed in the bottom frame. The tags are identified through their
associated labels. Use the direction arrows of the keyboard or the
mouse in order to select the tag to be edited.

129

Chapter

9. Historic

The Historic object allows the storage of the variation of data of a process with
time, then enabling future analysis. This Historic can be generated in two different
ways: in a Continuous way, or in Batches. In the continuous way, the Elipse
SCADA stores data continuously during the execution of the application. With the
form of batches, the historic is made in lots. With this modality, it is necessary to
send a command via script in order to initiate and end the generation of the historic.

9.1. General Historic Properties


The page of general Historic properties appears on the right side of the Organizer
when we click the Historic item in the application tree. This page is the following:

Picture 92: General Historic Properties

Historic

131

Historic General Properties


OPTIONS

DESCRIPTION

Name

Defines the name of the historic object.

Description

A brief description of the object.

Analysis...

Allows the visualization of historic data in graphic


form. You can call the HAnalysis in execution time
through the Analysis() function of the Historic.

Refresh

Recalculates the HAnalysis and SPC for the historic.

SPC...
File

Calls up the screen of Statistical Process Control.

Browse...

Allows the localization or definition of a directory for


the historic file.

Write Time

Defines the frequency in which data will be written in


the file.

Max Records

Maximum number of records to be stored in the file.


The historic file is rotative, i.e., when data exceed the
file size, first records are substituted.

Use the Write Time to


Save Records

Enables writing of the historic file from the beginning


of the execution of application according to the
defined scanning rate. Keep this option as not marked
if you want to manually control (by using scripts) the
generation of historic data.

Batch Process

Defines the historic type as being in batch (per lots).


When this option is marked, a header file (HDR
extension) is created with the same name of the
historic file. The header file maintains information of
each batch.

Network support

Enables the network support for the historic, i.e.,


allows the historic to be accessed (only for reading)
by other Elipse applications in the network through a
browser or report of HAnalysis type.

Defines the name of the historic file.

9.2. HAnalysis
When a Historic is created, Elipse SCADA automatically associates a Historic
Analysis (HAnalysis) object to it. This object has several characteristics that can be
adjusted in execution time.
When the HAnalysis is called, a Historic window is open in your application,
showing the Analysis page with the graph for the analysis of data. This window has
other 6 pages of set up (available according to the programming of application).
They are: Graph, Pens, Pen Colors, Settings, Query, and Print Setup. Each of these
pages appears when its corresponding form is selected on top of the window. Next,
we see a description of each one of them.

132

Historic

User Manual

Analysis
The Analysis page shows the graph of HAnalysis, and allows the setting of variables
to be shown in it. It has features of zoom, scroll, and printing, which can be
accessed by means of the toolbar located in the inferior part of the window.

Picture 93: Analysis Window

At the right side, we can see the graph pens, each one associated to a tag, whose
historic evolution we want to observe. These pens can be activated or deactivated,
and it is possible to change the type of color and style of row as the user wishes.
In the top part, Elipse SCADA shows some information when the mouse is
positioned within the graph area: mouse coordinates and value of the point selected
in the graph delimited by doted rows (horizontal and vertical). In order to select a
point in the graph, it is enough to click it.
Graph
This page allows the setting of the HAnalysis Graph look, according to what
follows:

Historic

133

Picture 94: Graph Properties

134

Historic

User Manual

Options for X axis (horizontal)


OPTIONS

DESCRIPTION

Left limit

Left limit of X-axis. Available if the graph is of XY


type.

Right limit

Right limit of X-axis. Available if the graph is of XY


type.

Show top ruler

Shows a ruler for X-axis in the top part of the graph.

Show bottom ruler

Shows a ruler for X-axis in the bottom part of the


graph.
Options for Y axis (vertical)

OPTIONS

DESCRIPTION

High Limit

Top limit of Y-axis.

Low Limit

Bottom limit of Y-axis.

Show left ruler

Shows a ruler on the left side of the graph, with


values from Y axle.

Show right ruler

Shows a ruler on the right side of the graph, with


values from Y axle.
Common options

OPTIONS

Historic

DESCRIPTION

Auto range

Automatically calculates the limits for X and/or Yaxis.

Scrolling Grid

Makes the background grid to move as graph values


are refreshed.

Text

Allows the addition of a title for rulers.

Date/Time Format

Adjusts the date and hour format when set for the
axis.

Ruler Colors/Background

Defines the background color for the rulers.

Ruler Colors/Text

Defines the color for the text that will be shown in


rules.

Graph Colors/Background

Defines the background color for the graph.

Colors/Grids and axis

Defines the color of the grid and of the graph axis.

X Grid/Rows

Defines the number of horizontal rows of the grid

Y Grid/Rows

Defines the number of vertical rows of the grid

Ruler font

Defines font, size, and color for the graph characters.

135

Pens
This page allows the determination of the tags to be shown in the graph, by
associating to each one of them a pen that will describe the evolution of the
variable in the process.

Picture 95: Guide of pens setting

In the central frame, it is listed the pens to be used in the graph. It is possible to
adjust which ones will be active. By clicking the black rectangle at the right, it is
possible to adjust the characteristics of graphic representation of the pen, such as
row thickness and color. The other fields are described below:
Options of pen setting
OPTIONS

DESCRIPTION

Label

Name or description of pen. As a standard, the tag name is


suggested, but it can be changed.

Y Axis

Variable to be used in coordinate Y.

X Axis

Variable to be used in coordinate X.

Through the buttons of the toolbar, positioned on the top part of the window, it is
possible to:
add up another Pen

make the pen to climb up

add a Mark

make the pen to descend

erase a Pen or Mark


adjust the row representation for the selected tag
adjust the representation in filling for the selected tag
adjust the bar representation for the selected tag

136

Historic

User Manual

Settings
This page allows the specification of the data file to be used in analysis. If the option
of Batch Process is marked (see general properties of Historic), the Batch group
in this page will be available for the choice of batch.

Picture 96: Guide of setting of the historic file

Setting fields of the historic file


OPTIONS

Historic

DESCRIPTION

File name

Defines the font file name for HAnalysis and SPC


(.DAT).

All Batches

Selects printing of all file batches.

Last batch

Selects the last batch registered to be printed.

Specific Batch

Selects a specific batch to be printed, according to the


specification of the Field and Value fields.

137

Query
This page allows the creation of a query (query) for the historic file. From this
query, it is possible to define a time interval in order to limit data we want to work
with.

Picture 97: Query properties

138

Historic

User Manual

Setting fields of query in the historic


OPTIONS

DESCRIPTION

No query date

A filter will not be used, i.e., all data is selected.

Time range

Selects data within a time interval that is specified.

Newest data

Selects data from a past time until now.

Initial Date

Determines the initial date of the time interval.

Initial Time

Determines the final date of the time interval.

Final Date

Determines the final hour of the time interval.

Final Time

Determines the final hour of the time interval.

Last (value)

Defines the number of time units of most recent data.

Last (unit)

Defines the time unit of most recent data.

Always load all database


data

Load all database data. The viewing interval is


restricted to the values defined by user.

Printing
This page allows the setting of options for printing the HAnalysis. The application
developer can generate printer-setting files (.PTR files) that are loaded by the user in
execution time.

Picture 98: Printing setting guide

Historic

139

Printing setting fields


OPTIONS

DESCRIPTION

Printer

Allows the choice of the printer where one wants to


print the report.

Load

Allows the loading of set up files.

Save

Allows the saving of a specific setting.

Printer

Calls up the setting of current printer.

Print

Commands the printing of the HAnalysis.

Print the report title

Allows the specification of a title for the report (in the


field below).

9.3. Statistical Process Control


The Statistical Process Control (SPC) allows a statistical analysis of a monitored
process. It is a powerful tool for you to verify if the process is been executed in
accordance with your needs, and to control its variables to obtain a better result.
As with the HAnalysis, the SPC is also associated to a Historic object, and it is
possible to enable its setting in execution time.
When SPC is called, a Properties window is open for its setting. It has 7 pages:
Setting, Pen Colors, Average Graph, Dispersion Graph, Histogram Graph, Settings,
and Query.
Following notations will be used in the explanation of SPC formulas:

140

k : number of samples;

x : arithmetic average of i sample values, where i = 1, 2, 3, ..., k

n : size of each sample;

ij

: value j of sample i, where j = 1, 2, 3, ..., n

Historic

User Manual

Setup
This is the main SPC page, and allows the setting of its general properties, besides
having buttons to call up the auxiliary SPC screens that contain the charts and the
results of the statistical analysis.

Picture 99: SPC Properties Window

Historic

141

Setting fields of SPC properties


OPTIONS

DESCRIPTION

Points/Group

Defines the number of items for each sample

Dispersion chart type

Defines the method to be used: Sigma or Range

Tag

Defines what Historic Tag will be analyzed

Specification Limits/Lower

Defines the Low Limit of Engineering or


Specification of the interval of tolerance for data of
SPC samples

Specification Limits/Upper

Defines the High Limit of Engineering or


Specification of the interval of tolerance for data of
SPC samples

After the alteration of some of these characteristics, it is necessary to press the


Refresh SPC button for the system to redo calculations.
Pen Colors
This page allows the selection of colors for each pen (tag) in the Historic and the
remaining control rows, which will be shown in SPC graphs, as: average, control
superior/Low Limit, engineering superior/Low Limit, normal curve, and bar color.

Picture 100: Setting guide of pen colors

142

Historic

User Manual

Graph of Averages
This page allows the setting of the SPC averages graph look. Its controls are next
described.

Picture 101: Setting guide of averages graph

Historic

143

Options for X axis (horizontal)


OPTIONS

DESCRIPTION

Left limit

Left limit of X-axis. Available if the graph is of XY


type.

Right limit

Right limit of X-axis. Available if the graph is of XY


type.

Show top ruler

Shows a ruler for X-axis in the top part of the graph.

Show bottom ruler

Shows a ruler for X-axis in the bottom part of the


graph.

Options for Y axis (vertical)


OPTIONS

DESCRIPTION

High Limit

Top limit of Y-axis.

Low Limit

Bottom limit of Y-axis.

Show left ruler

Shows a ruler on the left side of the graph, with


values from Y axle.

Show right ruler

Shows a ruler on the right side of the graph, with


values from Y axle.

Common options
OPTIONS

144

DESCRIPTION

Auto Range

Automatically calculates the limits for X and/or Yaxis.

Scrolling grid

Makes the background grid to move as graph values


are refreshed.

Text

Allows the addition of a title for rulers.

Date/Time Format

Adjusts the date and hour format when set for the
axis.

Ruler Colors/Background

Defines the background color for the rulers.

Ruler Colors/Text

Defines the color for the text that will be shown in


rulers.

Graph Colors/Background

Defines the background color for the graph.

Colors/Grids and axis

Defines the color of the grid and of the graph axis.

X Grid/Rows

Defines the number of horizontal rows of the grid

Y Grid/Rows

Defines the number of vertical rows of the grid

Ruler font

Defines font, size, and color for the graph characters.

Historic

User Manual

Calculation methods
The average graph is calculated in the following way. For each i sample ( i = 1, 2, ...,
k), the x i average is calculated:

xi=

1
( x11 + x12 + x13 + ... + x1n )
n

A central row represented by x , is the average of averages of each sample. You can
obtain the value of the standard deviation of averages by using one of these two
x methods:

a) Sigma Method
For each i sample ( i = 1, 2, ..., k ), it is calculated:
12

n

S = x 2 n. x 2 n
j 1 j

Next, the average deviation is calculated:

S=

1
k

S S
1

... S k

For the assessment of the standard deviation, it is used a correction factor, annotated
by c2. This constant varies according to n, and as you can see in the SPC table, when
n is bigger than 25, c2 = 1, what means that there is no more corrections to do.
The standard deviation will be, then:

S
C2

It is recommended to use this method for large samples, with n bigger than 10.

Historic

145

b) Range Method
For each i sample ( i = 1, 2, ..., k ), it is calculated:

R X
i

max

X
min

Next, it is calculated the average amplitude:

1
k

R R ... R
1

For the assessment of the standard deviation, it is used a correction factor, annotated
by d2. This constant varies according to n, and as you can see in the SPC table, the
bigger the value of n, the bigger the correction to be applied.
The standard deviation will be, then:

R
D2

It is recommended to use this method for small samples, with n lesser or equal to 10
(n<=10).
The graph will have then the following points in X-axis.

XDB: Central row =

LSC: Superior Control Limit

LSC X a2 R ;

LIC: Inferior Control Limit

LIC X a2 R ;

146

LSE: Superior Engineering Limit

LIE: Inferior Engineering Limit

Historic

User Manual

Dispersion Graph
This page allows the setting of the SPC dispersion graph look. It has the same
controls and operation of the Average graph.
Calculation methods
a) Sigma Method
The central row of the graph is represented by

S=

1
k

S , and is calculated as follows:

S S
1

... S k

For the calculation of control limits, two constants, c3 and c4 are used (see SPC
table). Therefore, the following limits are calculated:

c
LIC = S c

LSC =

This graph is recommended for large samples, with n bigger than 10 (n>10);
b) Range Method
In the same way as with the previous graph, the central row of the graph is
represented by

, and it is calculated as follows:

1
k

R R ... R
1

For the calculation of control limits, two constants, d3 and d4, are used (see SPC
table). Therefore, the following limits are calculated:

LSC =

R .d 4

LIC =

R .d 3

Values for the calculation of central rows and control limits are defined in
accordance with the following table:

Historic

147

SPC table (values for the calculation of central rows and control limits)

148

a2

d2

c2

d3

d4

c3

c4

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

1,880
1,023
0,729
0,577
0,483
0,419
0,373
0,337
0,308
0,285
0,266
0,249
0,235
0,223
0,212
0,203
0,194
0,187
0,180
0,173
0,167
0,162
0,157
0,153

1,128
1,693
2,059
2,326
2,534
2,704
2,847
2,970
3,078
3,173
3,258
3,336
3,407
3,472
3,532
3,588
3,640
3,689
3,735
3,778
3,819
3,858
3,895
3,931

0,5642
0,7236
0,7979
0,8407
0,8686
0,8882
0,9027
0,9139
0,9227
0,9300
0,9359
0,9410
0,9453
0,9490
0,9523
0,9551
0,9576
0,9599
0,9619
0,9638
0,9655
0,9670
0,9684
0,9696

0,000
0,000
0,000
0,000
0,000
0,076
0,136
0,184
0,223
0,256
0,284
0,308
0,329
0,348
0,364
0,379
0,392
0,404
0,414
0,425
0,434
0,433
0,452
0,459

3,267
2,575
2,282
2,115
2,004
1,924
1,864
1,816
1,777
1,744
1,716
1,692
1,671
1,652
1,636
1,621
1,608
1,596
1,586
1,575
1,566
1,557
1,548
1,541

0,000
0,000
0,000
0,000
0,030
0,118
0,185
0,239
0,284
0,321
0,354
0,382
0,406
0,428
0,448
0,466
0,482
0,497
0,510
0,523
0,534
0,545
0,555
0,565

3,267
2,568
2,266
2,089
1,970
1,882
1,815
1,761
1,716
1,679
1,646
1,618
1,594
1,572
1,552
1,534
1,518
1,503
1,490
1,477
1,466
1,455
1,445
1,435

Historic

User Manual

Histogram Graph
The Histogram Graph shows a large volume of data in a clear way, allowing a better
visualization of the central trend, the dispersion along the measurement Scaling, and
the frequency of values.

Picture 102: Histogram Graph Window

In the Histogram Graph page, we can configurate the look of this type of graph
generated by the SPC. This page has the same controls and operation of the Average
graph. Elipse SCADA generates the Histogram Graphic based on the following
elements:
Number of Bars

Historic

TOTAL OF ITEMS

NUMBER OF BARS

20-50
51-100
101-200
201-500
501-1000
more than 1000

6
7
8
9
10
11-20

149

Bar Interval (I)


The width of each bar is given for an interval, which is determined by diminishing
the smallest item from the biggest, and dividing the result by the number of bars.
Elipse SCADA defines what item belongs to what bar, and calculates the total
frequency f for each graphic bar. The normal distribution also appears in the
Histogram graph, and is determined by the following formula:

1
2

x 2

Where: = average and = standard deviation


The central row of average, and the limits of control (LSC and LIC) and engineering
(LSE and LIE) also appear in the graph.
Capability indexes
Before describing each capability index, the following formulas should be defined:

Average point = (LSE + LIE) / 2


Tolerance = LSE - LIE
CP - Inherent Capability of the Process

CP =

Tolerancia
6

If the samples are not in the average point, they tend to zero.
VALUE OF CP

Bigger than 1.33


Between 1.0 and
1.33
Lesser then 1.0

DECISION

Process is capable.
Process is capable, but must be monitored with CP near 1.0.
Process is not capable.

CR - Capability rate
It is the reverse of CP.

CR =

6
Tolerancia

CR values lesser than 0.75 indicate capability.

150

Historic

User Manual

K - process average versus specified average


K is the comparison between the average and the average point, showing how data is
centralized in accordance with the specification.

K=

Media PtoMedio
Tolerancia

CPK - Capability in relation to the specified average


CPK is the process capability based on the worse case of data. CPK is the lesser
value of:

LSE Media
3

or

Media LIE
3

A negative value of CPK indicates that the average is outside the engineering limits.
CPK equal to zero indicates that the average is equal to one of the engineering
limits. CPK between 0 and 1.0 means that part of the 6 sigma limits falls outside the
engineering limits. CPK equal to 1 indicates that an end of the 6 sigma limits falls in
an engineering limit. CPK bigger than 1 means that the 6 sigma limits fall
completely within the engineering limits.
Settings
This page is the same that exists in the Historic query, and allows the setting of the
historic file that will be used by SPC.

Picture 103: Settings window

Historic

151

Query
This page is the same that exists in the Historic query, and allows the definition of a
time interval for the Historic file.

Picture 104: Query window

152

Historic

Chapter

10

10. Reports

0
0

Reports allow the printing of data of Historic or Alarms files, or even tag values in
real time.
Reports have currently the following restriction: they do not allow
loading/saving printer settings (printers settings window are always displayed).
You can define a Report in the Organizer during the configuration of the application,
or in execution time, by using Special Functions through Scripts.
There are four types of Reports available:

Text: prints data of historic or alarms files in text format;

Graph: prints data of historic or alarms files in graphic form;

0
1
0

Formatted: used to print data in real time, as for example the value of a
Tag in a given moment;

HAnalysis
: it is a report on screen that has within it a graphic report.
In order to create or edit a Report, you must select the Reports option in the
application tree in the Organizer; the page below will be shown, containing a list of
all reports existing in the application.

Picture 105: Reports Window

You can create a new Report by using the New button at the right of the page, or
remove an existing one by selecting it in the list and pressing the delete button. The
window for choosing the type of the New Report is next shown:

Reports

153

Picture 106: Report Types Screen

Each Report you create for the application appears below the Reports option in the
application tree in Organizer. When selecting a specific Report, its properties are
shown on the right side of the tree.

154

Reports

User Manual

10.1. General Properties


Text, Graphic, and Formatted Reports
The page of General Properties of Text, Graphic, and Formatted Reports appears
when the General tab is selected on top of the Report pages. This page is shown
below, and its respective fields are described in the following table.

Picture 107: Report Properties

Reports

155

Report Properties
OPTIONS

DESCRIPTION

Name

Defines the name of the Report that will be used in


the Organizer tree and in the scripts.

Description

A brief description of the Report.

Print batch header

Enables the printing of a page containing data of


Batch header.

Print the report title

Only available for TEXT and GRAPHIC Reports.


Prints as title the text informed in the Description
field.

Printer

Allows the choice of the definition of printer for the


report. The button shows the dialog box of the Printer
Setting.

Edit!

Allows the edition


FORMATTED report.

Font...

Defines the font (type, color and size) to be used in


the Report.

Print

Prints the Report.

Printer and Font

The Load and Save buttons allow the loading and


saving of printer settings previously defined and
saved in the system.

of

the

drawing

of

10.2. Settings
Text and Graphic Reports
It allows the specification of the file to be printed: Historic (DAT extension), Alarms
(DAT extension) or Batch (HDR extension). If the option of Batch Process is
marked (see General Properties of Historic), the Batch group in this page will be
available for the choice of the Batch.
The page of Report Settings appears when the Settings tab is selected on top of the
Text or Graphic Report pages. This page is shown below, and its respective fields
are described in the following table.

156

Reports

User Manual

Picture 108: Settings for Reports

Settings for Reports


OPTIONS

DESCRIPTION

Source Filename

Defines the name of the font file for the Report (.DAT
or .HDR).

Browse...

Allows the localization of the font file to be used by


the Report.

All Batches

Selects all batches to be printed. This option is


available only for Historic files in batch.

Last batch

Selects the last batch to be printed. This option is


available only for Historic files in batch.

Specific Batch

Selects a specific batch to be printed, according to the


specification of the Field and Value fields.

Field

Lists the fields available for the selection of a specific


batch. Only string type fields will be listed.

Criteria

Defines the value to be searched when within a


specific batch.

10.3. Query
Text and Graphic Reports
Allows the definition of a time interval in order to select the data of the file to be
printed. The page of Report Query appears when the Query tab is selected on top of
Reports

157

the Text or Graphic Report pages. This page is shown below, and its respective
fields are described in the following table.

Picture 109: Properties of report query

Query Properties
OPTIONS

DESCRIPTION

No query date

A filter will not be used, i.e., all data is selected.

Time range

Selects data within a time interval that is specified.

Newest data

Selects only newer data.

Initial Date

Determines the initial date of the time interval.

Initial Time

Determines the initial time of the time interval.

Final Date

Determines the final date of the time interval.

Final Time

Determines the final time of the time interval.

Last

Number of units used to select most recent data.

Unit

Defines the unit used for selecting most recent data.

10.4. Database
Text Report
The Report Database page appears when the Database tab is selected on top of the
Text Report pages.
158

Reports

User Manual

Picture 110: Properties of Databases in Reports

Reports

159

Properties of Databases
OPTIONS

160

DESCRIPTION

Fields

Lists available fields.

Up

Moves the selected field one position up.

Down

Moves the selected field one position down.

Reload File Structure

Reloads the current list of fields of the file in the Report


fields. When some modification is done to the structure
of the file used by the Report, this button should be
pressed for the updating of fields.

Enabled

Allows the selected field to be printed.

Size

Defines the number of digits to be shown, including


the decimal point.

Precision

Defines how many digits of size will be decimal.

Prefix

Adds up a prefix of string type to the value shown.

Suffix

Adds up a suffix of string type to the value shown.

Date Format

Defines the format of the DateTime field.

Label

Defines an alternative name for fields to be printed in


the report.

Lines

Defines the number of lines the selected field will have


in the Report.

Reports

User Manual

10.5. Batch
Text Report
The Text Report Batch page appears when the Batch tab is selected on top of the
Text Report pages. This page is shown below, and its respective fields are described
in the following table.

Picture 111: Properties of Batches in Reports

Reports

161

Properties of Batches in Reports


OPTIONS

162

DESCRIPTION

Fields

Lists available fields.

Up

Moves the selected field one position up.

Down

Moves the selected field one position down.

Enabled

Allows the selected field to be printed.

Reload file structure

Reloads the current list of fields of the file in the


Report fields. When some modification is done to the
structure of the file used by the Report, this button
should be pressed for the updating of fields.

Size

Defines the number of digits to be shown, including


the decimal point.

Precision

Defines how many digits of size will be decimal.

Prefix

Adds up a prefix of string type to the value shown.

Suffix

Adds up a suffix of string type to the value shown.

Date Format

Defines the format of the DateTime field.

Label

Defines an alternative name for fields to be printed in


the report.

Lines

Defines the number of lines the selected field will


have in the Report.

Reports

User Manual

10.6. Graph
Graphic Report
The Graph page of the Graphic Report appears when the Graph tab is selected on top
of the Graphic Report pages. This page is shown below, and its respective fields are
described in the following table.

Picture 112: Graph Properties

Reports

163

Properties of Graph (X Axis and Y Axis)


OPTIONS

DESCRIPTION

Scaling

Defines if the graph Scaling will be linear (normal Scaling)


or logarithmic (power factor).

Left limit

Defines the left limit of the X axle in the graph. This option
is available only if the graph is of XY type.

Right limit

Defines the right limit of the X axle in the graph. This


option is available only if the graph is of XY type.

Show top ruler

Shows a top ruler in the graph, where X axle values are


shown.

Show bottom ruler

Shows a bottom ruler in the graph, where X axle values are


shown.

High Limit

Defines the top limit of the Y axle in the graph.

Low Limit

Defines the bottom limit of the Y axle in the graph.

Show left ruler

Shows a ruler on the left side of the graph, with values from
Y axle.

Show right ruler

Shows a ruler on the right side of the graph, with values


from Y axle.

Auto Range

Automatically calculates the limits for X and/or Y-axis in


the graph.

Scrolling grid

Defines that the orientation grid of the graph will scroll in


the direction in which the graph is being drawn, following
values instead of staying as fixed in the object.

Text

Legend that will appear beside the Scaling in the X and Yaxis.

Date/Time Format

Defines the format of time tick that will appear in the X-axis
on Time X Data graphs.

Properties of Graph (Colors and Grid)


OPTIONS

164

DESCRIPTION

Ruler background

Defines the background color for the graph rulers.

Ruler text

Defines the color for the text that will be shown in rulers.

Graph background

Defines the background color for the graph.

Grids and axis

Defines the color of the grid and of the graph axis.

Grid

Shows a grid (vertical and horizontal orientation rows) in


the graph.

X Rows

Defines the number of horizontal rows of the grid

Y Rows

Defines the number of vertical rows of the grid

Show milliseconds

Shows the milliseconds in the graph axis that represents


time.

Ruler font

Defines font, size, and color for the graph characters.

Reports

User Manual

10.7. Pens
Graphic Report
The Pens page of the Graphic Report appears when the Pens tab is selected on top of
the Graphic Report pages. This page is shown below, and its respective controls and
fields are described in the following table.

Picture 113: Pens Properties

Pens Properties
OPTIONS

DESCRIPTION

Inserts a pen associated to a tag.


Inserts a pen associated to a field in the historic (the Load Disk
Historic Data should be enabled in the Advanced card).
Inserts an indication tick to the graph.
Erases a pen or tick that is selected in the list.
Defines that the drawing of the pen will be of Row type.
Defines that the drawing of the pen will be of Area type.
Defines that the drawing of the pen will be of Bar type.
Changes the order of the selected pen.
Label

This column lists the selected pens for the graph. Allows the
changing of the text of the legend, and the activation/deactivation of
each pen.

Y Axis

Selects the tag to be visualized in axis Y.

X Axis

Selects the tag to be visualized in axis X.


Shows the Pen Colors table (see next section).

Reports

165

Pen Colors
The Pen Colors table appears when clicking the icon beside the graphic
pens.
In this table, we can define the color, format, and type of the graph that will be
drawn for the focused pen: row, area or bar. The Others... button allows the choice
of other colors different from the ones listed in the table.

Picture 114: Pens Colors

10.8. Scripts
Graphic Report
Using report scripts, you can configure the report settings before printing. For
example, you can configure an axis scale of the graph to be printed. For more details
regarding the use of scripts, see the specific chapter.
SCRIPTS AVAILABLE
EVENT

OnBeforePrint

166

DESCRIPTION

Triggered when executing the Print() method from the report, right
after executing the query, and before the report is actually printed.

Reports

User Manual

10.9. Formatted Report


The Formatted report is used when wanting to print data in real time, as for example
the value of a given tag in a given moment. This report can be edited by using
objects available in edition mode.

Picture 115: Formatted report

10.10.

HAnalysis Report

The HAnalysis Report is a report on screen that creates a HAnalysis object, being
able also of being printed. The setting and the pages of property of this Report are
done in execution time, in accordance with what has already been described in this
section. It is possible to configurate the window of HAnalysis and to activate or
deactivate the settings pages in the general properties of the HAnalysis object in the
Organizer.

Reports

167

Chapter

11

11. Drivers

The Elipse SCADA allows the communication with data acquisition equipment, and
with other computers running the Elipse SCADA through I/O drivers or network
drivers supplied by Elipse Software. A document is supplied with each driver,
containing important information relative to its setting.
Check the driver for availability for SCADA CE. The .dll files for SCADA Win
and SCADA CE are not the same.
In order to install or set up a driver, you must select the page of drivers in an
associated PLC or Block tag, or access the Drivers object in the Organizer. In this
case, the page below will be shown, containing a list of all drivers installed in the
application. You can install a new driver by pressing the New button, or remove an
existing one by selecting it on the list and pressing the Delete button.

Picture 116: System drivers

11.1. Setting up Drivers


Each new driver you add to the application appears below the Drivers option in the
application tree in Organizer. When selecting a specific driver, its properties are
shown on the right side of the tree.
The Driver Setting page appears when the respective tab is selected on top of the
setting pages of the driver or when you press the Configure button at the right side
of the Drivers list.
Drivers

169

11.1.1. PLC Drivers


For PLC Drivers, you can configurate the P communication parameters and other
properties of the driver in accordance with the information contained in the help file
that follows the driver. The option of Abort in error ends communication in case
there is any problem, impeding an application to be locked.

Picture 117: Properties of Drivers Setting

170

Drivers

User Manual

Properties of Drivers Setting


OPTIONS

DESCRIPTION

Name

Object name.

Description

Shows driver information, like manufacturer, version and


date.

Driver Location

Shows the path of the driver file.

Parameters

Allows the setting of P communication parameters for


the selected driver, as specified in the driver help.

Abort on error

Aborts communication if some problem occurs.

Hide mouse during


communication
Retry failed
communications
No. of retries

Hides the mouse slide wire during communication.


Defines that the system will try to reestablish a lost
communication with the driver.
Defines the number of trials for reestablishing
communication with the driver.

Browse

Allows the navigation through directories in order to


Browse the driver file.

Reload

Reloads the driver, reestablishing the connection.

Help

It shows the Help of the selected Driver.

Properties of Drivers Setting (Advanced)


OPTIONS

Drivers

DESCRIPTION

Keep behavior 16-bits

If switched on, disables multitask, making the 32-bits


driver to run in the 16-bits version. This option is
necessary with some older drivers.

Write in background

Controls as the writings will be done in the driver. Some


writings generated by Elipse SCADA can be done in
background (second plan), increasing performance. If this
option is disabled, all writings will be in foreground (first
plan), forcing the application to wait for the
communication with the driver in order to carry on its
execution.

Writing priority

Allows the choice of if the priority of writings will be


High or equal (Low) to the reading priority.

Initiate the driver


when running the
application

Allows the disabling of the automatic start of the driver.


For example: with a dial-up driver, many times it is
interesting to wait for a command to initiate
communication.

Keep the driver in


memory

Many drivers have a very slow time for loading and start.
This option maintains the driver in memory, minimizing
the starting time, and speeding communication up.

171

The Extras... button calls special driver settings. These settings vary from driver to
driver. Consult the help file that follows the driver to obtain more information. The
following window may vary according to the driver inserted in the system but, in
general, this is the window displayed:

Picture 118: Extra configuration

The available options are:

172

Drivers

User Manual

Options for Extra configuration


OPTION

DESCRIPTION

Use Modem

Enables modem use.

Modem Settings

Determines the modem to be used.

Dial number

Determines modem dial number.

Accept incoming calls

Configures modem to answer incoming calls from


other modems when the driver is connected to it.

No Log

Does not use log file.

Create new

Creates a new log file and inserts it in the place


indicated in file path. If there is already a log file in
the specified path, the log file will be overwritten.

Append data

Creates a new log file and inserts it in the place


indicated in file path. If there is already a log file in
the specified path, the information will be appended
at the end of it.

Standard Error Output

Used for depuration. This option should be kept


disabled.

ASCII Output

Converts I/O bytes into text, according to the ASCII


table.

Log Date & Time

Displays each messages timestamp in the file.

11.1.2. Network drivers


For network drivers, you can define their properties by clicking the Configure
button that opens the setting window of the network driver. The properties screen
can vary from driver to driver. Next, we describe the most common settings.

Drivers

173

Picture 119: Settings of network drivers

174

Drivers

User Manual

Settings of network drivers


OPTIONS

Object name.

Description

A brief description of the object.

Driver name

Driver name, defined by the manufacturer.

Driver Location

Shows the path of the driver file.

Current Setting

Shows current settings used by the driver.

Browse...

Allows the navigation through directories in order to


indicate the driver file.

Reload

Reloads the driver.

Help

It shows the Help of the selected Driver.

Set up...

Opens the driver setting window. This window varies


in accordance with the selected driver. Consult the
documentation of the driver to obtain more
information.

Start driver at application


startup
T1, T2, PS, BR

Drivers

DESCRIPTION

Name

Activates the driver when the aplication starts


These parameters rule the protocol used by Elipse
SCADA instances for messages exchange and
communication.
The protocol is full-duplex and allows up to 16
unsolicited messages to be sent by the stations. The
messages size in bytes is defined by the field PS
(Packet Size).
The data package is divided between remote files and
tag data, and Elipse Watcher real-time video data. The
field BR (Band Reserve) determines the package
percent reserved for data exchange; the other part may
be used by Elipse Watcher. If theres no video data to
be sent, the whole package will be used to exchange
tag data, and vice-versa.
The field T1 informs the keepalive time (in
milliseconds). Keepalive is a message sent by an
Elipse SCADA station to inform the other stations that
it is alive (active). This message is sent when the
station is not exchanging data in the current time.
The field T2 indicates the timeout (in milliseconds) to
resending unsolicited messages. In case of a message
do not receive an acknowledgement, it will be sent
again when this time expired. If the sending of a
message fails ten times, the conection is aborted.

175

11.2. Driver Scripts


Driver scripts are normally associated to the status of communication. This means in
practice that a script can run when a communication error occurs. For more details
regarding the use of scripts, see the specific chapter.
SCRIPTS AVAILABLE
You can associate scripts to drivers by executing them in the following situation:
EVENT

OnCommError

DESCRIPTION

Executed each time a reading or writing error occurs in the


driver.

11.3. List of Associated Tags


The Tags List page shows the PLC and Block tags that are associated to the focused
driver, allowing the edition of parameters of address and scanning directly in the list,
in a process that is similar to an electronic spreadsheet.

Picture 120: Heading of the List of Tags Associated to the Driver

Availables Options
OPTIONS

176

DESCRIPTION

Name

Tag name

N1/B1 N4/B4

Address parameters of tag.

Scan

Updating (reading) time of tag value.

Size

Shows the size of a Block tag (not available for PLC tags).

Export Tags...

Allows the creation of a file in the CSV format with the


definition of the parameters of listed tags. This file can be
imported to Elipse E3 or any other compatible software (as
for example Microsoft Excel).

Drivers

Chapter

12

12. Database

The Databases option allows the creation and manipulation of databases within
Elipse SCADA. This object uses the ODBC standard of Windows, which
manipulates the database by sending and receiving data. Open Database
Connectivity (ODBC) is an interface created by Microsoft, which offers a universal
interface for the access to different databases, including Oracle, Access, MySQL,
Interbase, among others.
You can define a Database in the Organizer during the setting up of the application,
or in execution time, through Scripts. In order to use a database in Elipse SCADA,
you must select the Databases option in the application tree in Organizer. The page
below will be shown, containing a list of all Databases existing in the application.

Picture 121: System Database

Availables Options
OPTIONS

Database

DESCRIPTION

List

Lists the databases existing in the application.

New

Calls the Wizard of New Connection, which allows the


addition of an ODBC connection to a database.

Delete

Removes the selected database from the list.

Advanced

Allows the query and edition of the string of ODBC


connection.

177

You can connect Elipse SCADA to a database by using the New Connection Wizard
when pressing the New button at the right of the page. A window will be shown,
asking if you want to create a connection with an already existing table, or to create
a new table. Next, a list containing the existing connections (Data Sources) will be
shown; if you want a new one, click the New button, and choose the ODBC driver
you want to use: MS Access, MS Fox Pro, MS Excel, CA-Clipper, dBase, Oracle, or
others. After selecting the driver, click OK and configurate its options; among them:
Connection Name (Data Source Name) and the file or directory that contains the
data. If you are creating a new table, a window will be presented for you to inform
the Name of the Table, its respective fields, and the data type of each one.
The Elipse SCADA will show in the Organizer tree, the new table and its respective
fields, which can be modified by using the special functions of ODBC in the Scripts.
You can remove an existing database by selecting it in the list and pressing the
Delete button. For a better comprehension of the ODBC connectivity, see next
picture:

Picture 122: Database

178

Database

User Manual

Example using Databases


The next example shows a connection of Elipse SCADA with an Access database.

In Access, create a database containing one or more tables. Ex.:


SUPPORT.MDB file with table Main Table.
Close the database (SUPPORT.MDB).
In Elipse SCADA, select the Databases option in the Organizer tree. Press
the New button, and the New Connection Wizard will be shown for you to
choose between making a connection with an already existing table, or to
create a new table. Select the connection with an already existing table.

Picture 123: Wizard of New Connection of Database

Database

Select the Machine Data Source tab and a list with the connections (Data
Source Name) available will be shown. If you want any that is non-available
in the list, press the New button and choose the ODBC Driver you want to
use. In this example, you should choose the Microsoft Access database, and
click OK.

179

Picture 124: ODBC Databases

180

The Create New Database window will be shown for you to indicate the type
of data source. Select System Database, and click Next.
In the following window, choose the ODBC Driver you want to use. In this
example, you should choose the Microsoft Access database, and click Next.
The Driver Setting window will show; in it, you should inform the name of
connection (Data Source Name), and by pressing the Select button, choose
the file you have created (SUPPORT.MDB);
The next window allows the selection of the database tables that will be
used. Select table Main Table;
Now, the titles of selected tables appear below the Databases option in the
application tree, and their respective fields appear below the title.
After that, the fields of the Database can be associated to the Screen Objects,
as well as to Tags (system variables). The manipulation of Database records
is done through Special Functions that can be found by using the App
Browser when in a Scripts page (see Scripts Chapter - Special Functions Database Functions).

Database

Chapter

13

13. Users

Elipse SCADA allows you to control the access to an application through a list of
names, being allowed to attribute a password to each user and configurate levels of
safety in your system.
The Administrator user has unlimited access to the system. The remaining users
have an associated safety level that only allows them to access those characteristics
attributed to their level of access.
You can create a list of users by selecting the Users option in the application tree in
Organizer; the page below will be shown, containing a list of all users registered in
the application.

Picture 125: List of users

Availables Options
OPTIONS

DESCRIPTION

List

List of all users registered.

New

Adds a new user to the list of users.

Delete

Removes the selected user.

Properties

Shows the properties of the selected user.

You can add up a new user by using the New button at the right of the page, or
remove an existing one by selecting it in the list and pressing the delete button.

Users

181

When adding a new user to the system, it will appear in the Organizer tree right
below Users. Select the new user in the tree, and the following window will appear;
in it, the login and the user password shall be informed.

Picture 126: Users Properties

Users Properties
OPTIONS

DESCRIPTION

Name

Defines the user name.

Description

A brief description of the user.

Login

String of user identification.

Password

Field to register the user password.

Access level

Defines the user access level (from 1 to 100). The


biggest priority is number 1.

After that, you should define the level of access for each application screen,
according to the following table:
LEVEL

0
1
bigger than 1

ACCESS

free access to all


super user
other users

A user can only access the screens with priority zero, or bigger or equal to his/her.
As a standard, all screens have level of access 0 (free access).

182

Users

User Manual

13.1. Functions and Attributes


Following functions are specific for login:
Application.Login()

Calls up a dialog box for the identification of a new user. Returns true (different
from zero) if the user has been successfully identified (has been logged), or false
(zero), if he/she wasn't. In case of error, no message will be shown. The function
refreshes the global attribute lastError, by placing 0 (zero) if the login is cancelled
by the user, or 1 (one) if the user or the password is invalid.
Application.Logout()

Logs out an user from the application. Closes all screens having priority different
from zero.
Application.UserAdministration()

This function shows one of two dialog boxes, according to the level of access of the
user:

If User-level = 1 (administrator), he/she will be able to create, modify,


and remove the attributes of all users, including changing the password.

If User-level > 1, he/she will only be able to change his/her password.

When you press OK in the dialog box, the message Password Changed shall
appear. If the message New password not confirmed appears, you have probably
rewritten a password that is different from your new one.
The application has the following attributes for the login functions:
Attributes for the Login Functions
ATTRIBUTES

Users

DESCRIPTION

UserName

Name of the user logged in the application (empty,


when there is no user logged).

UserAccessLevel

Level of the user logged in the application (100, when


there is no user logged).

183

13.2. Login Scripts


It is possible to associate scripts to events generated by the login of users.
SCRIPTS AVAILABLE
You can associate scripts to two events of login in the application:
EVENTS

DESCRIPTION

OnUserLogin

Executed when an user is logged in the application

OnUserLogout

Executed when an user leaves the application

Observations:

184

It is not allowed more than a user logged at the same time in the
application.

When a user is logged in the application, both scripts are executed:


OnUserLogout (if there is a user already logged) and OnUserLogin;

When the application ends, a Logout is executed;

You cannot access or modify any property of users (name, description,


etc.) in execution time. Properties of users cannot be associated to any
screen object, and cannot be used in scripts.

Users

Chapter

14

14. Remote Applications

Remote Applications are used when one wants to connect two or more Elipse
SCADA linked via network, modem or serial cable. In order to use this
characteristic, you should define a Server station and a Client one, and add up the
network driver you want to use to both.
The only driver currently implemented for CE is TCPIP driver.
You can add up a network driver to your Server and Client applications by selecting
the Drivers option in the application tree in Organizer, and pressing the New button
at the right of the network drivers list. Each new driver you add to the application
appears below the Drivers option, and when selecting a specific Driver, its
properties are shown in the right side of the tree; press the Set Up button to open
the network driver settings window that varies in accordance with the selected
driver. (See Chapter about drivers.)
Common Properties of Network Drivers
OPTIONS

DESCRIPTION

Server port

Defines the communication port for the driver (values


from 1 to 32767).

Maximum connections

Defines the maximum number of clients that can be


simultaneously connected.

In the Client application, after adding the network driver, you must create a Remote
Application, and configurate its parameters. In order to create or edit a Remote
Application, you must select the Remote Application option in the application tree
in Organizer; the page below will be shown, containing a list of all Remote
Applications existing in the application. You can create a new Remote Application
by using the New button at the right side of the page, or remove an existing one by
selecting it in the list and pressing the delete button.

Remote Applications

185

Picture 127: Remote Applications

Availables Options of Remote Applications


OPTIONS

DESCRIPTION

List

Shows a list of all Remote Applications existing in your


application; they appear in the Organizer tree right below the
Remote Applications option, and when selected, allow the
edition of their properties.

New

Creates a new Remote Application.

Delete

Removes from the list the selected Remote Application.

14.1. General Properties


Each Remote Application you create for the application appears below the Remote
Applications option in the application tree in Organizer. When selecting a specific
Remote Application, its properties are shown on the right side of the tree.
The page of general properties of the Remote Application appears when the General
tab is selected on top of the Remote Application pages. This page is shown below,
and its respective fields are described in the following table.

186

Remote Application

User Manual

Picture 128: General Properties of Remote Applications

Remote Application

187

General Properties of Remote Applications


OPTIONS

188

DESCRIPTION

Name

Defines the name of the Remote Application that will


be used in the Organizer tree and in the scripts.

Description

A brief description of the Remote Application.

Network Driver

Allows the selection of a Network Driver for the


current Remote Application. The drivers should be
installed in the Drivers option of the application tree
in order to be available.

Network configuration

Shows the network setting used by the selected


driver; for example: remote port, remote network
address, address of remote node. No edition is
allowed for this field.

Connect to server at
application start up
Help

Enables the connection with the Remote Application


(Server) at the start up of the application in Elipse.

Configure...

Opens up a window allowing the set up of the


parameters of the Server Application (remote), for
example, when using a IPX/SPX driver:
- Server Port: defines the communication port of the
server (from 1 to 32767)
- Network Address: defines the network address of
the Server (8 hex characters)
- Node Address: defines the Server node address (12
hex characters)

New Remote Tag!

Creates a new Remote Tag that appears below the


Remote Application in the Organizer tree. Each
Remote Tag created in the Client application is
associated to a Tag in the Server application (remote).

New Remote file!

Creates a new Remote File that appears below the


Remote Application in the Organizer tree. The
Remote File is used in order to obtain a file of the
Server application, what should be done by using the
functions of Remote Files.

New Group

Creates a new group of Remote Tags that appears


below the Remote Application or below another
group of Remote Tags in the Organizer tree.

It shows the Help of the selected Driver.

Remote Application

User Manual

14.2. Scripts of Remote Applications


Scripts of Remote Applications are generally associated to a remote connection.
This means, for example, that they can be executed when initiating or ending a
connection.
Scripts available for Remote Applications are described in the table below. For more
details regarding the use of scripts, see the specific chapter.
SCRIPTS AVAILABLE
You can associate Scripts to Remote Applications by executing them in the following
situation:
EVENT

OnDisconnect

Remote Application

DESCRIPTION

Runs the Script when ending connection.

189

Chapter

15
15.

Elipse Web

The additional module Elipse Web makes the applications screens available in the
web via a Web server, like Windowss PSW (Personal Web Server) or IIS (Internet
Information Services). The Web server must be installed in the machine running the
Elipse application, and this machine must have a fixed IP in case you want to access
the application via Internet.
To configure Elipse Web, follow these procedures:
Check if your computer has a Web server (PWS or IIS). In case it does not,
install it.
Elipse Web is an additional module, so check if the hardkey has this
module.
At Elipse SCADA, access the Organizer, and click the tab Web in the item
Application.
Enable the item Enable web data server, according to the picture below:

Picture 129: Web tab

Click on the button [Browse], and specify the Web servers default
directory. For PWS or ISS the default directory is C:\Inetpub\wwwroot.
Click on the button [OK].

Elipse Web

191

In the item Port, specify the TCP/IP port to be used by SCADA to


communicate with applets.
Once these items are set, copy the file Applet.jar from the folder
C:\...\Elipse SCADA\Applet\ to the Web servers default folder.
For each screen you want to view via Web, you have to enable the creation
of the HTML page. To do so, acess the screens properties and click on the
tab Web, according to the picture below.

Picture 130: Web tab accesses via Screen properties.

Enable the option Create Web Page. These pages will be created in the
Web Servers default directory.
To view the application, just type the servers address and the name of the
configured HTML document on the browsers address bar (for example:
http://ServerName/Screen1.htm).
NOTES:

192

Elipse Web allows you only to supervise the application. It does not allow you
to control, send data, or interact with the application.

The only screen available is the one active in the application.

Elipse Web

Chapter

16

16. Watcher

Elipse Watcher is a plug-in of Elipse SCADA offering capture, storage, and digital
transmission of images. With it, it is possible to view images within an application,
and work with them as desired.
An object of Watcher represents each acquisition board linked to Elipse SCADA. In
order to add up equipment, it is just enough to add up a corresponding object to the
object list.
It is possible to independently set up the parameters of each object. These objects are
further linked to a screen object (Preview, AVI or Video) for their use within the
application, or linked to an AVI Recorder object, which allows the generation of an
.AVI file. Elipse Watcher has drivers for a variety of equipment in the market.
Consult our technical department to verify the compatibility of yours with Elipse
SCADA.

Picture 131: List of Watcher objects

Watcher

193

16.1. Watcher Objects


Each object of Watcher represents a device or acquisition board connected to the
system. The object of video capture are linked to "cameras" (listed in the Cameras
tab of Watcher), representing the video input of the object in question. When we set
up screen objects for a video presentation, we have to indicate to what camera the
object will be linked, i.e., what video input will it receive.

Picture 132: Types of Watcher objects

194

Watcher

User Manual

AVI Player
The AVI Player object allows the reproduction of an .AVI file in the system. This
Watcher object is normally associated to an AVI screen object.

Picture 133: Properties of AVI Player

Properties of AVI Player


OPTIONS

Watcher

DESCRIPTION

Name

Determines the name of the object.

Description

A brief description of the object.

AVI file

Determines the path of the AVI file.

Browse

Allows the navigation through the disk to indicate the


AVI file of origin.

195

AVI Recorder
The AVI Recorder object allows the recording of a video input (an acquisition
board, for example) in a file with .AVI format.

Picture 134: Properties of AVI Recorder

Properties of AVI Recorder


OPTIONS

196

DESCRIPTION

Name

Determines the name of the object.

Description

A brief description of the object.

AVI file

Determines the localization and the name of the AVI


file to be generated.

Browse

Allows the navigation through the disk to indicate the


AVI file of destination.

Video Source

Origin of the video to be recorded.

AVI Compression

Determines how the compression of AVI will be


done, allowing the choice of the compressor, quality,
and other set-ups.

Frame rate

Determines the updating rate for the recording.

Watcher

User Manual

Frame-grabber S611
Through this option, it is possible to configure the specifications referring to
interface with acquisition board (frame-grabber) S611 of Sensoray.

Picture 135: Properties of interface with S611 board

Watcher

197

Properties of interface with S611 board


OPTIONS

198

DESCRIPTION

Name

Determines the name of the object.

Description

A brief description of the object.

Input

Determines the type of video input: S-Video, Video


1, Video 2, Video 3 or Video 4.

Image Size

Determines the image size: Integral size, 3/4 of size,


1/2 of size, 1/4 of size, or Advanced (determining
width and height).

Width

Determines the width of the image. This option is


only valid if the Advanced item of Image size is
enabled.

Height

Determines the height of the image. This option is


only valid if the Advanced item of Image size is
enabled.

Board #

Determines the specifications of the board.

Color Format

Determines the format of the video color: (RGB 24


bits or Mono 8 bits)

Interlaced

Enables the interlaced option in the system.

Signal Format

Determines the format of the video signal: NTSC,


NTSC Japan, PAL, PAL-M or PAL-N.

Frame Rate

Determines the Frame Rate of the video.

Watcher

User Manual

Frame-grabber S613
Through this option, it is possible to set up the specifications referring to interface
with acquisition board S613 of Sensoray.

Picture 136: Properties of interface with S613 board

Watcher

199

Properties of interface with S613 board


OPTIONS

200

DESCRIPTION

Name

Determines the name of the object.

Description

A brief description of the object.

Input

Determines the type of video input: S-Video, Video 1


or Video 2.

Image size

Determines the image size: Integral size, 3/4 of size,


1/2 of size, 1/4 of size, or Advanced (determining
width and height).

Width

Determines the width of the image. This option is


only valid if the Advanced item of Image size is
enabled.

Height

Determines the height of the image. This option is


only valid if the Advanced item of Image size is
enabled.

Board #

Determines the specifications of the board.

Color Format

Determines the format of the video color: (RGB 24


bits or Mono 8 bits)

Interlaced

Enables the interlaced option in the system.

Signal Format

Determines the format of the video signal: NTSC,


NTSC Japan, PAL, PAL-M or PAL-N.

Frame Rate

Determines the Frame Rate of the video.

Image Compression

Determines how the image will be compressed:


Without compression, or with M JPEG compression.

Factor

Determines the MJPEG factor (This option is only


enabled if the MJPEG item is selected in the above
option).

Watcher

User Manual

Devices with Support to Video for Windows


Through this option, it is possible to configure the specifications that refer to video
input through devices supporting the Video for Windows standard.

Picture 137: Properties of the VFW interface

Properties of the VFW interface


OPTIONS

Watcher

DESCRIPTION

Name

Determines the name of the object.

Description

A brief description of the object.

Video Device

Determines the video device enabled in the system.

Video compression

Enables the video compression

Video display

Enables the video visualization

Video format

Enables the setting of video format

Video source

Determines the specifications referring to video


source.

201

XPressPlus Capture Board


Through this option, it is possible to configure the specifications referring to the
capture board XPressPlus of IntegralTech. This board allows the control of up to
32 cameras, which can be separately set up.

Picture 138: Properties of the XPress Plus capture board

Properties of the XPress Plus capture board


OPTIONS

202

DESCRIPTION

Name

Determines the name of the object.

Description

A brief description of the object.

Board number

Specifies the number of cameras that will be inserted


by the Insert Cameras button. It allows the creation
of objects that will represent the cameras connected to
the board.

Insert Cameras

Inserts the number of "Camera" objects specified in


Number of. The XPressPlus board has a limit of 32.
The exceeding ones are ignored.

File

Name of the file (with complete path) where the


video will be recorded.

Signal Format

Format of signal being received.

Board Number

Identification number of board.

Watcher

User Manual

Cameras
With the XPressPlus board, it is possible to individually manage and adjust options
of all connected cameras. Settings are done through a Camera object, which
represents the camera in question. These objects are created through the Insert
Cameras button, shown in the previous item. Each camera has three sets of options:
General, Recording, and Mask.
a) General Properties

Picture 139: General Properties of Camera

General Properties of Camera


OPTIONS

Watcher

DESCRIPTION

Name

Determines the name of the object.

Description

A brief description of the object.

Camera

Determines the focused camera.

Brightness

Determines the brightness of the camera image.

Saturation

Determines the saturation of the camera image.

Contrast

Determines the contrast of the camera image.

Hue

Determines the Hue of the camera image.

Sharpness

Determines the focus of the camera image.

203

b) Recording Options
Through this item, it is possible to adjust the recording options of the capture board.

Picture 140: Recording Options

Recording options
OPTIONS

Recording Options

DESCRIPTION

Set up the recording options of the camera:


Enable camera record: enables recording in the selected
camera.
Sequence enable: enables recording in sequence in the
camera.
Motion Detection: enables recording on movement detection.
No priority trigged: enables recording without priority trigger.
Trigger Recording: enables recording with trigger.

204

Area

Determines the recording area of the camera.

Sensitivity

Determines the recording sensitivity of the camera.

Field/cycle

Determines the recording field/cycle of the camera.

Frame size

Determines the recording frame size of the camera.

FPS

Determines the recording FPS of the camera.

Trigger options

Determines the recording trigger options of the camera.

Watcher

User Manual

c) Mask
Defining a mask is indicating sensibility areas, i.e., detection of movement of each
video input. Red areas represent non-sensible places. Light green areas are sensible
areas.

Picture 141: Mask

Watcher

205

Chapter

17

17. Steeplechase

The Steeplechase object sets up the specifications referring to Steeplechase, which


is a SoftPLC supported by Elipse SCADA. Through this object, it is possible to
communicate with this device.
Through its properties, it is possible to set up the path through which the system will
look for information in the local server or in the network. After the specifications
have been set up, the system verifies the authorization of the license, and activates
the communication, or not. This option is available only for some versions of Elipse
SCADA.
The properties of this option are the following:

Picture 142: Set ups for Steeplechase

Steeplechase

207

Properties of Steeplechase
OPTIONS

208

DESCRIPTION

Name

Determines the name of the object.

Scan

Determines the value of scan.

Import Tags

Allows for importing tags.

Wizard

Opens up a set up wizard for steeplechase.

Description

A brief description of the object.

Server Name

Determines the name of the steeplechase server.

Status

Determines the status of the object.

VLC Status

Determines the status of VLC (Virtual Logic


Controller).

VLC Project

Determines the project of VLC (Virtual Logic


Controller).

Version

Determines the version of the object.

Steeplechase

Chapter

18

18. OPCServer

The OPCServer object is an OPC (OLE for Process Control) client that enables the
communication with a given equipment or device, by using the OPC protocol. The
OPCServer object is the representation of an OPC DA (Data Access) server inside
Elipse SCADA, what allows for the sending and reception of real time data (tags).

Picture 143: OPCServer Objects in Organizer

OPCServer

209

18.1. General Properties of OPCServer

Picture 144: General Properties of OPCServer

210

OPCServer

User Manual

General Properties of OPCServer


OPTIONS

OPCServer

DESCRIPTION

Name

Determines the name of the object.

Description

A brief description of the object.

Keep server connection

When it is enabled, the connection with the server is


established once, and kept until the application is
closed. When disabled, Elipse SCADA will establish
connections with the OPC server every time it needs
to request data.

BlockMode

When enabled, allows to add or remove tags OPC in


blocks, enhancing the performance.

New Tag

Allows to create a new OPC tag manually.

New Group

Allows to group the OPC tags, to organize the tags


more easily.

Logging...

Enable/disable the server log, and defines the name


and path of log file.

Network Address

OPC server network address. This field allows to fill


the information directly, when is not possible to
browse the network to select the server.

Server ID

OPC server name.

Vendor Info

Shows the OPC server information.

Browse...

Allows to browse the active OPC servers to choose


one.

Get Version...

Informs the version of the OPC server.

Import...

Allows the import of tags or groups of tags defined in


the OPC server. Note: this feature might not be
available in the OPC server. Consult the
documentation.

Check OPC servers every


... seconds
Recover lost connections
every ... seconds

Updates the OPC server information and connection


on indicated amount of time (in seconds).

Background Reads/Enable

Enables the reading of tags in the background. It is


the most efficient way of reading, with a minimum of
communication between Elipse SCADA and the
OPC server. Data is refreshed only when the amount
of change in the data is greater than the user defined
Dead Band (see Dead Band option).

Scan

Indicates the amount of time (inof updating of tags in


the background. The server, in accordance with its
internal characteristics, can round up this value. A
zero (0) requests the server an updating time that is
the least possible.

Enables the recovery of lost connections in the period


(in seconds) determined in the field. Note: it is valid
only if the Check OPC servers every ... seconds
option above is enabled.

211

Dead Band (%)

Percentage that specifies the range of variation


considered as non-significant, i.e., the server will not
notify to the system variations within this percentage.
For instance, a zero value (0) would command any
variation. Note: the use of this feature depends on the
OPC server used. Consult OPC server
documentation.

18.2. OPC Tags


OPC tags allow the exchange of information with OPC servers. Through them, it is
possible to send to and receive data from the OPC server.

Picture 145: OPC Tags

212

OPCServer

User Manual

Properties of OPC tags


OPTIONS

DESCRIPTION

Name

Name that identifies the OPC tag.

Description

Description of the tag.

Real Name

Identifier of the tag inside the OPC server (path).

Reading Type

Specifies the way of reading the tags in the OPC


server.
Synchronous - makes the request for tag reading, and
waits for the return from the server.
Background - data is refreshed only when significant
variations occur (outside the Dead Band). See the
OPC server properties.

Read from

Defines what is the source of data read from the OPC


server.
Device - forces the reading of data directly from the
device connected to the server.
Cache - requests the value stored in the cache of
server.

OPCServer

Scaling

Allows to convert the tag values to a new scale


defined by user, filling the following fields: OPC
Low, OPC High, System Low and System High.

OPC Low

Specifies the minimum value to be read from OPC


Server.

System Low

Specifies the system minimum value for custom


value conversion.

OPC High

Specifies the maximum value to be read from OPC


Server.

System High

Specifies the system maximum value for custom


value conversion.

Scan

Defines what will be the periodicity of updating of


tag values (in milliseconds).

Tests connection here

Tests the communication with the OPC server,


allowing for the reading and writing of values.

Enables reading by scan

Enables the periodic reading of the OPC tag. The


period is defined in the Scan field.

Enables automatic writing

Enables the automatic writing for the OPC tag.

New Array Element!

Adds up elements to an OPC tag treated as an array.


It allows for the reading of variables defined as arrays
in the server.

213

Alarms tab

Picture 146: Alarm Tab

214

OPCServer

User Manual

Properties of alarms
OPTIONS

OPCServer

DESCRIPTION

LoLo

Critical Low Alarm: defines a value interval where


OPC tag is considered to be in a Critical Low Alarm
status. Used whenever OPC tag value is below
minimum value, that is, extremely low.

Low

Low Alarm: defines a value interval where OPC tag


is considered to be in a Low Alarm status. Used
whenever OPC tag value is below minimum value.

High

High Alarm: defines a value interval where OPC tag


is considered to be in a High Alarm status. Used
whenever OPC tag value is higher than default value.

HiHi

Critical HighAlarm: defines a value interval where


OPC tag is considered to be in a Critical HighAlarm
status. Used whenever OPC tag value ie above
maximum value, that is, extremely high.

Value

Specifies the limits for each alarm situation (LoLo,


Low, High, HiHi).

Pri

Specifies the priority for each alarm situation. Lower


values indicate higher priorities (priority ranges
between 0 and 999).

Comment

Comment assigned to the alarm.

Log Alarm Return

Enables logging alarm return messages.

Alarm Group

Defines current tag's Alarm group. Alarm group must


be defined in Organizer's Alarm option.

Always in Advise

Defines whether the system will supervise OPC tag


constantly, even when not being used anywhere in the
application, so that no alarm in this tag is lost.

Use alternate tag name

Defines an altenative name for the tag.

Active alarm after delay of

Activates the alarm after the specified time period (in


miliseconds).

215

18.3. OPC Groups


The OPC groups allow a visual organization of OPC tags, facilitating their
manipulation. In many cases, these groups are automatically created during the
import of tags from the server, reflecting its own hierarchical structure.

Picture 147: Properties of OPC Groups

Properties of OPC Groups


OPTIONS

DESCRIPTION

Name

Specifies the name of the object.

Description

A brief description of the object.

New Group

Inserts a new OPC Group in the OPCServer object.

Import

Allows for importing tags or groups of tags defined in


the OPC server to the specific OPC Group.

When the Import tags button is activated, the window below is shown. From then
on, you just have to drag the desired tag to the group selected.

216

OPCServer

User Manual

Picture 148: OPC tags import wizard

18.4. Quality
Quality fields represent the items value quality status. They are formed by a 16-bit
word, and the first 8 bits are defined by three bit fields: Quality, Substatus, and
Limit.
The other 8 bits (of a higher order) are available for each manufacturers use. If
these bits are used, the default quality bits are still used to indicate which deductions
could be made on the returned data. So, it is the clients responsability to interpret
the field of specific information on quality to make sure the server providing this
information uses the same rules as the client.

OPCServer

217

Quality Field
QUALITY

0 63

QUALITY FIELD

DESCRIPTION

Bad

Value cannot be used for the


reasons indicated in substatus.

Uncertain

Values quality is uncertain for


the reasons indicated in
substatus.

128 191

(Reserved)

Not used in OPC pattern.

192 255

Good

Values quality is good.

64 127

A server that does not support information on quality always returns 192 (Good). It
is also acceptable that a server simply returns Bad or Good (0 or 192), and always
returns 0 for Substatus and Limit.

218

OPCServer

Chapter

19

19. Scripts

Scripts are small procedures written in own programming language Elipse Basic
allowing more flexibility to your application. Scripts are always associated to events,
i.e., they begin in the moment this event occurs.

19.1. General Considerations


With any programming language, it is necessary to create methods in order to
specify and order the execution of the desired instructions. The very structure of
scripts of Elipse SCADA already organizes this order in a certain way, for they are
oriented to events.
Events are occurrences related to an object that can be treated in order to accomplish
a specific action. They can be physical, as for instance some action in the keyboard
or mouse. For each case, we have several relevant information, like the key pressed
or the position of the slide wire and the status of buttons. Events can be internal,
like the change of value in a variable. These events can also have physical
associations, like the change of temperature in a chamber, from 10 to 11 degrees
when we have a tag that receives the values of this temperature. Elipse SCADA has
already several events that are pre-defined and available for connection or
association with scripts. Examples of some of these events are next listed.
Common events in application in ElipseSCADA
EVENT

DESCRIPTION

OnKeyPress

When a key is pressed

OnKeyRelease

When a key is released

OnSetFocus

When an object receives the edition focus

OnLButtonDown

When the left button is pressed over an object

OnPress

When a button object is pressed

OnRelease

When a button object is released

WhileRunning

While an application is running

OnAlarm

When any type of alarm occurs

The language used in script modules, Elipse Basic, is very similar to C languages,
although having features of visual programming like those found in Visual Basic.
Some characteristics of the language are:
Scripts

219

It is not necessary to state variables or functions in the beginning of the


Script. The variables should be tags, objects, or attributes that are
previously created or imported from other applications. Elipse SCADA
has already some system variables that are pre-defined.

The type of data attributed to a tag is free. The supported value can vary
from an integer of 8 bits to a real type of 64 bits, or even a string (text). In
data communication with external equipment, the conversion is
automatically done in accordance with the types supported by the
equipment. In the case of properties, an icon beside each one (visualized
through the AppBrowser) indicates the type of data that is supported:
Numeric attribute (integer number)
Numeric attribute (real number)
String attribute (text)
Boolean attribute (0 or 1)

The variables and constants are basic objects manipulated in a Script. The
operators specify what will be accomplished with them. The expressions combine
variables and constants to produce new values. In order to facilitate the edition of
scripts or expression tags, tools AppBrowser and Cross Reference can be used.

19.2. AppBrowser and Crossed Reference


The AppBrowser allows an easy navigation through the application. When you
select an object in the tree on the left side of the window, its corresponding attributes
and functions are listed on the right side.
You can use the AppBrowser as reference during the edition of a script. A very
useful characteristic is the possibility of selecting an object, attribute or function you
want to use, and directly copy it into the script by pressing the Copy button in the
Script ->.
The Cross Reference tool has the same structure of the AppBrowser, with the
difference that when you select an object in the tree at the left side of the window, its
respective references are listed at the right side. Double click a reference to go to the
referred object.

220

Scripts

User Manual

Picture 149: AppBrowser

Availables Options
OPTIONS

Scripts

DESCRIPTION

Selection

Shows the name of the selected object, attribute, and


function in the same way it will be copied into the
script.

Objects

Lists the objects in hierarchical order.

Info

Shows a description of the selected item.

Properties

Lists the attributes and functions of the selected


object.

Show

Allows the filtering of the information (attributes or


functions) listed in the window of properties.

Copy into Script

Copies the reference of the selected attribute or


function into the script.

221

19.3. Operators and Constants


We list the constants (with their annotations) and operators that can be used in
scripts.
Constants
TYPES

EXAMPLE

Integers (32 bits, dec)


Integers (32 bits, bin)
Integers (32 bits, octal)
Integers (32 bits, hex)

1234, 1234d, -993


11001110b (doesn't allow signal)
7733o (doesn't allow signal)
0A100h, 3B8h (doesn't allow signal)
(if the first digit is A-F, place a zero before it)
133.443, 344.939 (don't have scientific notation)
"Temperature", "pressure"

Real numbers (64 bits)


Strings

Arithmetic operators
OPERATOR

EXAMPLE

+ (addition)
+ (concatenation of
strings)
- (subtraction)
* (multiplication)
/ (division)
% (rest of division)
** (exponentiation)

tag001 + 34
slider1.Frame.title + "<- PLC1"
tag001 - screen1.x
screen1.width * 3.141592
tag001 / tag002
tag001 % tag002
tag001 ** 2 (tag001 squared)
Logical operators

OPERATOR

EXAMPLE

& (AND bit-by-bit)


| (OR bit-by-bit)
^ (OR exclusive bit-by-bit)
~ (NO bit-by-bit)
<< (SHIFT left)

flags & 0F000h


flags | 0F000h
flags ^ 0F000h
~flags
flags << 2
(dislocates the value of flags two bits to the left)
flags 2
(dislocates the value of flags two bits to the right)
tagOnOff AND (tag001 > 200)
tagOnOff OR (tag001 > 200)
tagOnOff XOR (tag001 > 200)
NOT tagOnOff

>> (SHIFT right)


AND (logic)
OR (logic)
XOR (exclusive OR)
NOT (negation)

222

Scripts

User Manual

Relational operator (return 1 for true and 0 for false)


OPERATOR

== (equal to)
> (bigger than)
< (lesser than)
>= (bigger or equal than)
<= (lesser or equal to)
<> (different from)

EXAMPLE

tag001 == 8
tag001 > tag002
tag001 < tag002
tag001 >= -1
tag001 <= 16
tag001 <> 1

Special operators of attribution (arithmetic)


OPERATOR

+= (sum)
-= (subtraction)
*= (multiplication)
/= (division)
**= (exponentiation)

EXAMPLE

tag001 += 6 (i.e., tag001 = tag001 + 6)


tag001 -= 3.246 (tag001 = tag001 - 3.246)
tag001 *= 4 ( tag001 = tag001 * 4)
tag001 /= 12 (tag001 = tag001 / 20)
tag001 **= 2 (tag001 = tag001 ** 2)

Special operators of attribution (bit-by-bit)


OPERATOR

&= (AND)
|= (OR)
^= (XOR)
<<= (SHIFT left)
>>= (SHIFT right)

EXAMPLE

tag001 &= 00000000h


tag001 |= 11111111h
tag001 ^= 10100100h
tag001 <<= 2 (tag001 = tag001 << 2)
tag001 >>= 2 (tag001 = tag001 >> 2)

Precedence of operators (order of execution)


The table below lists the rules for precedence and association of all operators.
1. + - ~ NOT (unary operators)
2. **
3. / %
4. + 5. >> <<
6. >= < <=
7. == <>
8. &
9. ^
10. AND, XOR and OR
11. = += -= *= /= %= &= |= ^= **= <<= >>=
Scripts

223

19.4. Flow Control


In order to control the order in which the instructions are processed, Elipse Basic
offers a series of commands for deviations and conditions. These commands are next
treated.

19.4.1. IfElseElseIfEndIf Command


Allows decision taking during the execution of a script.
Syntax:
If <condition1>
<block of instructions 1>
Else
<block of instructions n>
EndIf
If <condition1>
<block of instructions 1>
ElseIf <condition2>
<block of instructions 2>
Else
<block of instructions n>
EndIf

The conditions specified are expressions that can be assessed as true (different from
zero) or false (zero or empty string ""). If the condition is true, the block of
instructions is executed up to the EndIf command.
When this command is executed, the condition of If (condition1) is first assessed; if
true, the block of instructions 1 is executed, and the command is finished with EndIf.
If condition1 is false, the condition of ElseIf (condition2) is assessed and the block
of instructions 2 is executed in case it is true. If false, next ElseIf condition will be
assessed, and so forth. If no ElseIf condition is true, the block of instructions of Else
will be executed. The program continues its execution with the command after
EndIf.
Blocks of instructions ElseIf and Else are optional. You can specify as many ElseIf
clauses you want; nevertheless, they can never be after an Else clause. Any block of
instructions can contain nested IfEndIf commands.

19.4.2. ForNext Command


Repeats a block of instructions a given number of times. To this repetition, we give
the name of Knot or Loop.
Syntax:
224

Scripts

User Manual

For <meter> = <beginning> To <end>


<block of instructions>
Next

19.4.3. WhileWend Command


Runs a block of instructions while a given condition is true.
Syntax:
While <condition>
<block of instructions>
Wend

The condition specified is an expression that can be assessed as true (different from
zero) or false (zero or empty string ""). If the condition is true, the block of
instructions is executed up to the Wend instruction, when the condition is assessed
again. The block of instructions will be repeated until the condition becomes false,
when the command after the Wend instruction will be executed. While...Wend loops
can be nested.

19.4.4. RepeatUntil Command


Runs a block of instructions until a given condition becomes true.
Syntax:
Repeat
<block of instructions>
Until <condition>

The condition specified is an expression that can be assessed as true (different from
zero) or false (zero or empty string ""). The block of instructions is executed, and
then the condition is assessed. If it is false, the block of instructions is repeated and
the condition is assessed again. The block of instructions will be repeated until the
condition becomes true, when the command after the Until instruction will be
executed. Repeat...Until loops can be nested.

19.4.5. Return Command


Stops the execution immediatelly, and returns to the point where the script was
called.

Scripts

225

19.5. Special Functions


Elipse SCADA has a series of pre-defined special functions that help in the edition
of scripts, facilitating the execution of more complex tasks and allowing a better
setting of your system.
Through the AppBrowser tool, we can see the several special functions available for
each object during the edition of scripts.
We highlight the Global Manager object, which brings up functions of general
utility, like functions of date and the real time clock, manipulation of strings, and
numeric conversions, files, multimedia, and others.
Besides this, we have several other objects that have the specific functions listed
below: Application, Tags, Screens, Screen Objects, Alarms, Recipes, Historic,
Reports, Query, Plotter, Drivers, Databases, and Remote Applications.
This Chapter presents the complete list of all functions available in Elipse SCADA,
divided by object, in alphabetic order. Each input indicates the prototype of the
function with its parameters between parentheses. Parameters between brackets are
optional. Following the input of the function, there is the explanation of what it does,
and its parameters.

19.5.1. Global Manager Functions


Abs (x)

Returns the absolute value of X.


Example:
tag001 = Abs(-5.14) // Returns 5.14
ACos (x)

Returns arc cosine (angle) of the value x in the interval of [0, ] radians. The x
parameter should be contained in the interval [-1, 1]; if not, the function returns zero.
Asc (strText)

Returns the ASCII code for the first character of strText.


Example:
tag001 = Asc("screen") // Returns 115
ASin (x)

Returns arc sin (angle) of the value x in the interval of [-2, 2] radians. The x
parameter should be contained in the interval [-1, 1]; if not, the function returns zero.
ATan(x)

Returns arc tangent (angle) of the value x in the interval of [-2, 2] radians.

226

Scripts

User Manual

Blue(Color)

Returns the value of the blue component of Color. See Red().


CaptureAppScreen ([fileName],[screenName], [type])

Captures the screen specified in screenName parameter and saves it in a bmp file
with name specified in fileName. If fileName parameter is blank (" "), the capture is
placed in clipboard.
type parameter determines how the screen is captured: if the parameter is 0, all the
screen is captured, including the Windows taskbar; if it is 1 (or any value different
from 0), only the area of screen objects is captured (the size is the contour of all
screen objects).
Example:
IF CaptureAppScreen("screen.bmp", "Screen1",1)
MessageBox("Screen1 captured to the file screen.bmp")
ELSE
MessageBox("Error capturing the screen!")
ENDIF
IF CaptureAppScreen("", "Screen1",1)
MessageBox("Screen1 captured to the clipboard")
ELSE
MessageBox("Error capturing the screen!")
ENDIF
CaptureScreen([fileName])

Captures the whole screen by placing it in the clipboard (if no file is specified in the
fileName parameter) or in a file with name fileName, in BMP format.
Example:
IF CaptureScreen("screen.bmp")
MessageBox("Screen captured in the screen.bmp file")
Else
MessageBox("Error capturing the screen!")
ENDIF
Chr(n)

Returns the character represented by the specified ASCII code.


Example:
tag001 = Chr(115) // returns "s"

Scripts

227

CopyFile (srcFile, destFile)

Copies the contents of the srcFile file to destFile. The function returns 1 (one) if
well succeeded, and 0 (zero) if not. The global attributes lastError and lastErrorStr
are refreshed by this function.
Example:
IF CopyFile("source.dat", "dest.dat")
MessageBox ("The copy has been well succeeded.")
Else
MessageBox("Error in CopyFile command!")
ENDIF
CopyObject (strSrcName, strDestName [, strDestFolder])

Creates a copy of the strSrcName object with the name strDestName. The new
object is created in the same folder of the source object as default, unless a
destination folder is indicated in the optional parameter strDestFolder. The function
returns True if succeeded, or False if not.
Example:
// Creates a copy of the Display1 object in the folder
// Screens.Screen1; the new object will be called Display2
CopyObject ("Screens.Screen1.Display1", "Display2")
// Creates a copy of Display1 in the Screens.Screen1 folder
// the new object will be called Display2, and will be placed
// in the Screens.Screen2 folder
CopyObject ("Screens.Screen1.Display1",
"Display2", "Screens.Screen2")
Cosine (angle)

Returns the cosine of the specified angle. The angle is expressed in radians.
CreateDir (fullPath)

Creates a new directory. Returns TRUE if well succeeded, or FALSE if failing. The
global attributes lastError and lastErrorStr are refreshed by this function.
CreateFile (fileName, fileContents)

Creates a file called fileName, writes the fileContents string in the file, and closes
it. If the file already exists, it is destroyed and substituted by the new content.
Returns FALSE an error occurs, or TRUE if not.
DDEExecute (server, topic, command)

Sends a DDE command to another application. The server parameter is the name
of the DDE server, normally the name of an application; the topic parameter is a
228

Scripts

User Manual

document that is open in the application, and the command parameter is the
command you want to execute.
Example:
DDEExecute("Excel", "Sheet1", '[SELECT("R1C1:R5C1")]')
DDEExecute("Excel", "Sheet1",
"[PRINT(1;;;1;FALSE;FALSE;1;FALSE;1;360;360)]")

The first example selects the region to be printed, the second runs the printing
command. The first parameter is always the application name. The second parameter
is the spreadsheet or document you want to access, including the path and extension
of file. The third parameter is the command.
Deg (angle)

Returns the angle, expressed in degrees, converted into radians, according to the
formula degrees = (radians / 3.141592) * 180.
Example:
tag001 = Deg(ACos(x)) // Arc Cosine of x express in degrees
DeleteFile (file)

Erases the file specified in the file parameter. Returns TRUE if well succeeded, or
FALSE if failing. The global attributes lastError and lastErrorStr are refreshed by
this function.
DeleteObject (strObjName)

Erases the strObjName object from the application.


EditProperties ()

Opens a window that allows the edition of the Global Manager properties.
Execute (CmdLine)

Runs the program specified in the cmdLine parameter. If the program is not located
in the directory of \WINDOWS or \WINDOWS\SYSTEM, you should specify the
localization of the file. Program parameters can also be included in the command
line CmdLine.
Example:
Execute("C:\WINDOWS\WINCALC.EXE")
Execute("C:\UTIL\PKZIP.EXE DATA C:\DATA\*.*")

This function does not accept parameters in CE. Use function ShellExecute().
Exp(x)

Returns the exponential function of x.


Example:
Scripts

229

tag001 = Exp(2.302585093)

// returns 10.0

FileSelectWindow([filepath][, extension][,type])

Shows a dialog for file selection. Returns a string containing the name of the
selected file or an empty string if failing of being cancelled by the user. The filepath
parameter specifies the file or directory that will be previously marked. The
extension parameter specifies the types of files that can be selected. Its syntax is:
filterName1 | mask1 | filterNameN | maskN
Each filter is a sequence of two strings separated by a |. The first string is the name
of the filter that will be shown in the combo box, and the second string is the mask
of selection of files (*.dat, for example). The mask can contain a sequence of masks
separated by point and comma (for example, *.bmp;*.jpg;*.gif). The filters should
be separated by |.
Example:
dim strDir
strdir = FileSelectWindow("C:\temp\*.dat",_
"History files (*.dat)|*.dat")

The parameter type is a integer that specifies how the file will be selected, as
follows:
type Parameters
VALUE

DESCRIPTION

Open the file selection dialog; doesnt allow the user to type the name,
only select from the window list.

Allows the user to create a new file, typing the name directly.

Allows the user to type the file name and returns the complete path;
doesnt create any file.

FillString (string, nCount)

Returns a string containing the string parameter as many times as specified in


nCount.
Example:
// returns "PasswordPassword" in String
String = FillString("Password", 2)
FindFirstFile (fileName[, attr])

Looks for the first file from a given standard of name and specific attributes,
returning the name of the file found. The fileName attribute determines the standard
of file to be searched (for example: "\DATA\*.DAT"), and the attr parameter is
optional, and determines the sum of attributes desired in the file, according to the
table:
230

Scripts

User Manual
VALUE

0
1
2
4
16
32

ATTRIBUTE

Normal, without attributes


Read only
Hidden
System file
Directory
Archive

For instance, to place the System (system file) and Hidden (occult) attributes, one
should attribute the numeral 6, i.e.: system (4) + hidden (2) = 4 + 2 = 6.
The function returns the name of the first file that fulfills the parameters, or empty
("") in case no file is found. After calling FindFirstFile() function FindNextFile()
can be called to find other files that fulfill these conditions.
If attr parameter is missing, the attributes are ignored.
FindNextFile()

Looks for next file obeying the parameters specified in function FindFirstFile ().
Returns the name of the file that fulfills the parameters, or empty ("") in case no file
is found.
Example:
// This example makes a security copy of all
// files *.DAT in the directory C:\DATA that have
// archive attribute for C:\BACKUP
DIM strFile
strFile = FindFirstFile ("C:\Data\*.dat",32)
WHILE strFile<>""
CopyFile ("C:\Data\"+strFile,"C:\Backup\"+strFile)
strFile = FindNextFile()
WEND
FolderSelectWindow ([strDefaultFolder])

Opens a window for the selection of a directory (folder), returning a string with the
name of the selected directory or an empty string, if cancelled. The parameter
strDefaultFolder specifies the initial directory to be selected. If not specified, the
selection is the root-directory of the current drive.
Example:
strFile = FolderSelectWindow ("C:\Data")

Scripts

231

Format (strFormat, datetimeValue)

Returns a value in the format date/hour, according to the string strFormat. The
parameter datetimeValue is the value to be formatted itself.
Options for this function are the following:
Date/Time Formats for Format function
FORMAT

W
W
ww
WW
D
dd
M
mm
mmm
MMM
mmmm
MMMM
mmmmm
MMMMM
yy
YY
h
hh
m
mm
s
ss
AM/PM

Hour in the 12 hours format, shows AM (morning) and PM


(afternoon).

am/pm

Hour in the 12 hours format, shows am and pm.

A/P

Hour in the 12 hours format, shows A and P.

a/p

Hour in the 12 hours format, shows A and P.


Tenths of a second (should be preceded by seconds)
Hundredths of a second (should be preceded by seconds)
Thousandths of a second (should be preceded by seconds)
New row (CR + LF)

0
00
000
|

232

MEANING

Week day (Sun Sat)


Week day (Sun Sat)
Week day (Sunday Saturday)
Week day (SUNDAY SATURDAY)
Day (1 31)
Day (01 31)
Month (1 12)
Month (01 12)
Month (Jan Dec)
Month (JAN DEC)
Month (January December)
Month (JANUARY DECEMBER)
Month (j d)
Month (J D)
Year (00 99)
Year (1970 9999)
Hour (0 23)
Hour (00 23)
Minute (0 59) (should be accompanying hours or followed by
seconds)
Minute (00 59) (should be accompanying hours or followed by
seconds)
Second (0 59)
Second (00 59)

Scripts

User Manual

Example:
DIM date = GetTime()
// Returns "November 21, 2000"
str = Format("mmmm d, yyyy",date)
// Returns "11:41:32.612"
str = Format("hh:mm:ss.000",date)
GetAbsoluteFilename (file)

Returns the complete name of the file.


Example:
// Returns "C:\WINDOWS\SYSTEM\VGA.DRV"
strArquivo = GetAbsoluteFilename("VGA.DRV")
GetAppDir ()

Returns the application directory.


GetCurDir ()

Returns the current directory.


GetDay (time)

Obtains the day from an absolute value of time.


Example:
day = GetDay(GetTime())
// Example below returns 30
day = GetDay(MakeTime(30,10,1996,17,25,56))
GetDayOfWeek (time)

Obtains the week day from an absolute value of time (1 for Sunday, 2 for Monday,
, 7 for Saturday).
Example:
day = GetDayOfWeek(GetTime())
// Example below returns 5
day = GetDayOfWeek(MakeTime(30,10,1997,17,25,56))
GetDayOfYear (time)

Obtains the day of year from an absolute time value in days (1 for Jan 1st, 2 for Jan
2, , 32 for Feb 1st, 33 for Feb 2, ).
Example:
day = GetDayOfYear(GetTime())
day = GetDayOfYear(MakeTime(9,2,1997,17,25,56))
// returns 40
Scripts

233

GetDiskFreeSpace (strPath [,bUserFreeSpace])

Returns the total number of Kbytes available in the path strPath specified. The
parameter bUserFreeSpace is optional and forces Elipse SCADA to consider the
user disk quota, if avaliable.
GetFileAttributes (file[, version])

Returns the sum of attributes of the file according to the following table:
ATTRIBUTES

VALUE

Error
Normal
Read Only
Hidden
System
Volume
Directory
Archive

-1
0
1
2
4
8
16
32

The parameter version is optional. If specified (version = 1), it makes the following
NTFS attributes available:
ATTRIBUTES

VALUE

Compressed
Offline
Non-indexed
Encripted

2048
4096
8192
16384

GetFileCreationTime (file)

Returns the hour in which the file has been created.


GetFileLastAccessTime (strFile)

Returns the hour in which the file strFile has been accessed for the last time.
GetFileLastModifiedTime (strFile)

Returns the hour of last modification in the file strFile .


GetFileSize (strFile)

Returns the size of file strFile in bytes.


GetHaspVar (strVarName)

Reads the value of an internal variable stored in a hardware key (Hasp). This
variable can only be programmed by Elipse Software in Hasp. The function returns a
string containing the value of the variable, or empty ("") if some error occurs or the
variable doesn't exist.
234

Scripts

User Manual

Example:
tagSerialNo = GetHaspVar("SerialNo")
GetHour (time)

Obtains the hour from an absolute value of time.


Example:
hour = GetHour(GetTime())
hour = GetHour(MakeTime(30,10,1996,17,25,56))
// Returns 17
GetLastError ()

Returns the error code of last operation in the file (the same value of the global
attribute lastError).
GetLicenseString ()

Returns a unique string that represents the Elipse SCADA license currently running.
GetMinute (time)

Obtains the minutes from an absolute value of time.


Example:
minute = GetMinute(GetTime())
minute = GetMinute(MakeTime(30,10,1996,17,25,56))
// Returns 25
GetMonth (time)

Obtains the month from an absolute value of time.


Example:
month = GetMonth(GetTime())
month = GetMonth(MakeTime(30,10,1996,17,25,56))
// Returns 10
GetSecond (time)

Obtains the seconds from an absolute value of time.


Example:
second = GetSecond(GetTime())
second = GetSecond(MakeTime(30,10,1996,17,25,56))
// Returns 56
GetTime ()

Returns current system hour as an absolute time value measured in seconds since
00:00 of January 1st 1970. The value also expresses milliseconds in the three first
decimals.
Scripts

235

Example:
// This example counts how many seconds it takes to
// take a copy from a file
DIM timeStart, timeDuration
timeStart = GetTime()
CopyFile("C:\Data\Temp.dat","C:\Data\Backup\Temp.dat")
timeDuration = GetTime() timeStart
MessageBox ("The copy has taken "
+ Str (timeDuration,8,3) + "seconds.")
GetYear (time)

Obtains the year from an absolute value of time.


Example:
year = GetYear(GetTime())
year = GetYear(MakeTime(30,10,1996,17,25,56))
// Returns 1996
Green (color)

Returns the value of the green component of Color. See Red().


HashString (strIn, strPassword)

Encodes the string strIn based on the password strPassword. The result is a unique
string for this combination strIn, strPassword. The codification is irreversible: it is
not possible to retrieve the original string nor the password used.
Hex(n)

Returns a string with the hexdecimal representation of n.


Example:
tag001 = Hex(31) // returns "1F"
HexToDec (stringHex)

Returns a string with the value formatted in hexadecimal base.


Example:
tag001 = HexToDec("1F") // returns "31"
Int (x)

Returns the integer part of x, obtained by truncation.


Example:
tag002 = -9,9
tag001 = Int (tag002) // returns -9

236

Scripts

User Manual

IsNumeric (expression)

Verifies if the result of the expression informed in the expression parameter is a


number. Returns TRUE (different from zero) if it is a number, or FALSE (zero) if
not.
Example:
tag001 = IsNumeric(1000)
tag001 = IsNumeric("test")

// returns TRUE (1)


// returns FALSE (0)

tag001 = IsNumeric(GetTime())

// returns TRUE (1)

IsString (expression)

Verifies if the result of the expression informed in the expression parameter is a


string. Returns TRUE (different from zero) if it is a number, or FALSE (zero) if not.
Example:
tag001 = IsString(1000)
tag001 = IsString("test")

// returns FALSE (0)


// returns TRUE (1)

tag001 = IsString(GetTime())

// returns FALSE (0)

Left(string, nCount)

Returns the nCount characters more to the left in the string parameter.
Example:
String = Left('Password', 4) // returns 'Pass'
Len(string)

Returns the number of characters of a string.


Example:
Integer = Len('Password')

// returns 8

Log(x)

Returns the natural logarithm of number x.


Example:
tag001 = Log(tag002)
Log10(x)

Returns the base-10 logarithm of number x.


Example:
tag001 = Log10(tag002)
MakeLower(string)

Returns the string parameter in lower case letters.


Example:
String = MakeLower(Password) // Returns password
Scripts

237

MakeReverse(string)

Inverts a string, so that the first character becomes the last, and vice-versa.
Example:
String = MakeReverse(Password) // Returns drowssaP
MakeTime (day, month, year, hour, minute, second)

Returns an absolute time value from the parameters specified. The interval of values
for each parameter is:
Interval of values
OPTIONS

DESCRIPTION

Day

1 to 31 (it can be 28, 29 or 30 according to month and year)

month

1 to 12

Year

1970 to 2039

Hour

0 to 23

minute

0 to 59

second

0 to 59

If any parameter is invalid, the function returns 0.


Example:
myTime = MakeTime(30,10,1996,17,25,56)
MakeTop (string)

Returns the string parameter in capital letters.


Example:
String = MakeTop(Password)

// returns PASSWORD

Max (x)

Compares x and y, and returns the biggest value between both numeric expressions.
Example:
tag001=Max(tag002,tag003)
MessageBox (text [, title [, style [, x, y]]])

Shows a message box that can be configured by the user. The function returns a
value that corresponds to a button pressed in the message box.
Function parameters
The Text parameter is mandatory, parameters Title and Style are optional, and their
default
values
(0000h)
determine
a
standard
message
box.
Text: It should be a string or Tag containing a string. It should be expressed
between simple quotation marks, and will appear as centralized in the message box
right above the buttons.
238

Scripts

User Manual

Example:
MessageBox ("How the Message Box is?")
// A string is attributed to a Tag
Message = "How the Message Box is?"
MessageBox(strMessage)

Title: It should be a string in the same way as the Text parameter, and will appear in
the title bar of the message box.
Example:
MessageBox ("How the Message Box is?",
"Test of Message Box")
// Two strings below are attributed to Tags
strText="How the Message Box is?"
strTitle="Test of Message Box"
MessageBox(strText,strTitle)

x, y: Allows to specify the position the dialog will appear.


Style: Allows the modification of the message box style, and should be a
hexadecimal value in accordance with the characteristics you want. The following
characteristics can be configured.
Types of window
TYPE

HEXA

DESCRIPTION

Application Modal

0000h

System Modal

1000h

Desk Modal

2000h

You should answer the message box to go on with the


use of the window that has called it. Nevertheless, you
can go to any other window.
All applications become suspended while you don't
answer this message box. It is used for very important
messages.
Similar to Application Modal, although suspending all
screens of the application while the message is not
answered.

Buttons of Message Box


BUTTONS

OK
OK, Cancel
Abort, Retry,
Ignore
Yes, No, Cancel
Yes, No
Retry, Cancel

Scripts

HEXA

DESCRIPTION

0000h
0001h
0002h

Only the OK button will appear in the message box


Buttons OK and Cancel will appear.
Buttons Abort, Retry, and Ignore will appear.

0003h
0004h
0005h

Buttons Yes, No, and Cancel will appear.


Buttons Yes and No will appear.
Buttons Retry and Cancel will appear.

239

Default for buttons


BUTTON

Button1 as default
Button2 as default
Button3 as default

HEXA

0000h
0100h
0200h

DESCRIPTION

Button 1 will have the focus.


Button 2 will have the focus.
Button 3 will have the focus.

Icon
TYPE

Stop
Question
Exclamation
Information

HEXA

0010h
0020h
0030h
0040h

DESCRIPTION

The icon is a stop signal


The icon is an interrogation mark
The icon is an exclamation mark
The icon is the i character within a circle

Return values
VALUE

BUTTON

MESSAGE

1
2
3
4
5
6
7

OK
Cancel
Abort
Retry
Ignore
Yes
No

OK
Cancel
Abort
Retry
Ignore
Yes
No

Setting a Message Box up


In order to set up the style of a Message Box, you should make a logic OR for each
characteristic you want (Type, default buttons, icon, buttons). You can only choose
one of the characteristics available (see tables above). For instance, in order to
specify a Message box with the following style:
System Modal Type (1000h) + Button 2 as Default (0100h) +
Exclamation icon (0030h) + Yes and No buttons (0004h) = 1134h

Example:
strText = "How the box is?"
strTitle = "Test of Message Box"
MessageBox(strText, strTitle, 1134h)
Mid (strText, nFirst [, nCount])

Returns part of the strText parameter, according to the nFirst and nCount
parameters. The nFirst parameter specifies the position, within the string, of the first
character of the substring that is returned (counting starts at zero), and the nCount
parameter is the number of characters of the substring. Example:
240

Scripts

User Manual

strPasswd = Mid('Password', 0, 3)
strPasswd = Mid('Password', 3, 4)

// returns 'Pas'
// returns 'swor'

strPasswd = Mid('Password', 2)

// returns 'ssword'

Min (x,y)

Compares x and y, and returns the least value between both numeric expressions.
Example:
tag001 = Min (2.4,28.3)

// tag001 = 2.4

MoveFile (srcFile, destFile)

Moves the specified file to a new localization. Returns TRUE if well succeeded, or
FALSE in case of error. The global attributes lastError and lastErrorStr are
refreshed by this function.
Example:
MoveFile("c:\data\turtle.dat","c:\newdata\rabbit.dat")
PadC (strString, nLength [, strPadChar])

Returns the string strString centralized with the character strPadChar completing
the size of the resulting string specified by nLength. If strPadChar is not specified,
spaces are introduced. Only the first character of strPadChar is used.
Examples:
PadC("abc",7)

// Results "

PadC("abcdefghij",5)

// Results "abcde"

abc

"

PadC("abc",8,"-")

// Results "--abc---"

PadL (strString, nLength [, strPadChar])

Returns the string strString positioned at the right side of character strPadChar,
completing the size of the resulting string specified by nLength. If strPadChar is
not specified, spaces are introduced. Only the first character of strPadChar is used.
Examples:
PadL("abc",5)
PadL("abcdefghij",5)

// Results " abc"


// Results "abcde"

PadL("abc",8,"-")

// Results "-----abc"

PadR (strString, nLength [, strPadChar])

Returns strString positioned at the left side of character strPadChar, completing the
size of the resulting string specified by nLength. If strPadChar is not specified,
spaces are introduced. Only the first character of strPadChar is used.
Examples:
PadR("abc",7)
Scripts

// Results in "abc

"
241

PadR("abcdefghij",5)
PadR("abc",8,"-")

// Results in "abcde"
// Results in "abc-----"

PasswordDlg(text, title [, x, y])

Opens up a dialog box for the input of a password. The title parameter is a string to
be shown in the title bar, and text is a string with a message for the user. It returns
the password typed by the user. Optional parameters x and y indicate the position in
the top left corner of the message box to be shown. The function returns the
password typed by the user.
Example:
strPwd = PasswordDlg ("Type a password","Safety")
strPwd = PasswordDlg
("Type your password","Login",100,100)
PlaySound (soundIndex)

Plays a sound specified in parameter soundIndex (integer between 0 and 5) in


accordance with the table below:
INDEX

0
1
2
3
4
5

DESCRIPTION

Bip using the internal loudspeaker of the computer


Asterisk (comment)
Exclamation
Hand (attention)
Question
Standard alert

This sound is defined in the control panel of Windows. The function makes the
request of sound playing for the system, and returns. The sound is asynchronously
played.
PlayWave (filename [, msecStart [, msecStop]])

Plays a WAV format file. Parameters msecStart and msecStop specify the interval
of the file to be played (in milliseconds). If these parameters are omitted, the whole
file will be played. The process can be stopped by calling the StopWave() function.
Example:
PlayWave("tada.wav",2000,5000)
// It plays the file from second 2 up to second 5

This function does not accept the parameters startTime and stopTime in CE.
PrintString (lptNum, string)

Sends the string to printer LPTlptNum. The string is sent and waits for a
pre-processing (raw bytes). If formatting is required, it is possible to access the
242

Scripts

User Manual

printer settings. Characters CR and LF (Chr(13) + Chr(10)) should be supplied in


order to change a new row.
Example:
PrintString(1, "Hello World...")
Rad (angle)

Returns the angle (expressed in degrees) converted into radians, according to the
formula: radians = (angle / 180) * 3.141592.
ReadFromFile (strFile [, startOffset [,bytesToRead] ])

Bytes ToRead read bytes from the file strFile, beginning with startOffset (from the
beginning of the file, if not specified). If bytesToRead is not specified, the function
reads all bytes in the file. It is recommended that the file only contains text/character
data. Binary data can be read, but cannot be manipulated in Elipse SCADA.
Example:
tag001 = ReadFromFile("Help.txt")
// Reads the whole HELP.TXT file for tag001
ReadIniNumber (strFile, strSection, strInput [, nDefaultValue])

Returns the number of an input in the set up file (.INI) strFile. Parameters
strSection and strInput specify the section and input of file, respectively. If the
input is not found, the value nDefaultValue returns. If nDefaultValue is not
specified, the function returns zero. The file should be formatted with the following
syntax:
[section1]
input1 = value1
input2 = value2
<other entries>
inputN = valueN
[section2]
<other entries>
[sectionN]
<other entries>

Example:
// File MYAPP.INI with the following content:
// [General]
// Total = 1000
// UserName = Admin
ReadIniNumber("MYAPP.INI","General","Total",-1)
// Returns 1000
ReadIniString("MYAPP.INI","General","UserName")
Scripts

243

// returns "Admin"

Note: If there is another program modifying .INI file, changes can be immediately
seen, for Windows maintains a copy of the file in memory. You can force updating
by calling WriteIni (strFile,"","","") before reading the .INI file. Be it a
VALUES.INI file being refreshed by another program. It is possible to read the
refreshed values as:
WriteIni("VALUES.INI","","","")
// Forces Windows to unload the cache
ReadIniNumber("VALUES.INI", "Section", "Input")
// Reads the value of Input in the Section
ReadIniString(strFile, strSection, strInput [,strDefaultValue])

Returns the string containing the input value in the strFile .INI file. Parameters
strSection and strInput specify the section and input of the respective file. If the
input is not found, strDefaultValue is returned, or a null string ("") if
strDefaultValue is not specified.
Real (string)

Converts a numeric string or a number into a real number.


Example:
Numeric = Real(30)

// returns 30,0

Red(r), Green(g), Blue(b)

These functions allow the acquisition of one of the three colors composing a color
value of 24 bits in: red, green and blue. The returned value will always be between 0
(minimum intensity) and 255 (maximum intensity).
Example:
color = Display.backgroundColor
Display.backgroundColor = RGB(Red(color)/2,
Green(color)/2, Blue(color)/2)

The example above sets up the background color of a Display to half of the intensity
of the original color for each one of the three components of colors.
ReleaseMouseCapture ()

Releases the capture of the mouse, which is done by function SetMouseCapture().


An object that has an active mouse capture, receives all mouse events, regardless of
the mouse being or not over the object.
Example: the following script, OnMouseOver, changes the background color of a
screen object when the mouse is over it, and returns to the original color when the
mouse leaves.
// verifies if there is no mouse capture any longer
IF NOT Display.HasMouseCapture()
244

Scripts

User Manual

// the mouse has entered in the object, captures


Display.SetMouseCapture()
// give it a highlight color
Display.backgroundColor = RGB(220,220,220)
ELSEIF NOT Display.IsMouseInside()
// if the mouse has left the object, give it the original
color
Display.backgroundColor = RGB(192,192,192)
// and cancel the capture
ReleaseMouseCapture()
ENDIF
RemoveDir (fullPath)

Removes an existing directory (folder). With Windows, due to restrictions in the


system, the directory should be empty, and should not have sub-directories to be
erased. It is not possible to erase the current directory, the working directory of the
system, or the root directory. It returns TRUE if well succeeded, or FALSE (zero) if
not. Global attributes lastError and lastErrorStr are refreshed by this function.
RenameFile (srcFile, destFile)

Changes the name of file srcFile to destFile. It returns TRUE if well succeeded, or
FALSE (zero) if not. Global attributes lastError and lastErrorStr are refreshed by
this function.
RGB (R, G, B)

Returns a 24 bits color value for the three composing colors that are specified: red,
green and blue. Each component is an integer between 0 (minimum intensity) and
255 (maximum intensity). The value returned can be attributed to any color attribute
of an object.
Example:
// Strong red
Display.backgroundColor = RGB(255,0,0)
Right (strText, nCount)

Returns the nCount characters more to the right in the strText parameter.
Example:
str = Right("Password",4)

// returns "word"

Rnd ()

Returns a random real number between 0 and 1 (including it).


Round (x)

Returns number x as rounded to the nearest integer.


Scripts

245

Example:
tag001 = Round(14,1)

// the result is 14.0

tag002 = Round(13,9)

// the result is 14.0

RunMacro (strCode)

Compiles and runs the expression contained in string strCode passed as parameter.
Returns the value of the expression that has been executed, or zero if no compilation
or execution error occurs.
Example:
// runs expression "Screen<activeScreen>.Activate",
// where activeScreen is the screen number.
RunMacro("Screen"+Str(activeScreen,1,0)+".Activate()")
ScriptWindow ()

Opens a window for debug in Runtime mode, which allows the supervision of all
scripts that are running. It also shows for how long or how many times a script is
executed.
SetFileAttributes (file, newAttr)

Modifies the attributes of file for newAttr. See function GetFileAttributes for the
list of attributes that parameter newAttr can receive. The function returns TRUE if
well succeeded, or FALSE (zero) if failing. Global attributes lastError and
lastErrorStr are refreshed by this function.
Example:
SetFileAttributes("turtle.dat",3)
// read-only (1) + hidden (2) = 3
SetSystemTime (datetime)

Adjusts the hour of the system for parameter datetime. The parameter datetime is
an absolute value of datetime. Use function MakeTime() in order to compile this
number. The function returns 1 (TRUE) if successful, and 0 (FALSE) if failing.
Example:
SetSystemTime(MakeTime(10,8,2000,17,25,56))

Note: The internal time maintained by Elipse SCADA is not automatically adjusted.
For this to happen, you can use two methods: Add the key
HKEY_CURRENT_USER\Software\Elipse
Software\Elipse32\Options\DisableInternalClock with a value of
1 to the Registry Editor of Windows, or else start Elipse SCADA via command line
using the option disableInternalClock.
Sgn (x)

Returns the signal of x (-1 if negative, 0 if zero, 1 if positive).


246

Scripts

User Manual

Example:
tag001 = Sgn(-123.98) // Returns -1
ShellExecute (strAction, strFile, strParams, strDir, nCmdShow)

Runs a operation strAction for file strFile that has been specified. strAction can be
one of the following commands: "edit", "explore", "find" (search), "open", "print",
or "properties". strParam is a string that specifies the parameters that should be
passed in the command call, or the file that will receive the action specified. strDir
defines the standard directory. nCmdShow specifies how the application should be
shown when open, as follows: 0 = hide window; 1 = show window; 2 = show
window as minimized; 3 = show window as maximized.
Example:
'Runs FTP application with specified commands saved
'on filename.txt, and hides the command window.
ShellExecute("open", "ftp", "-s:filename.txt", "", 0)
Sin (angle)

Returns the sin of the specified angle. The angle is expressed in radians.
Sleep (nSeconds)

Makes a pause in the execution of the script during nSeconds (it is possible to
specify a fraction, for example: Sleep (0.5)). The user interface will not answer
while the pause is being executed. Processes running in the background in separate
threads (I/O, network driver, video reception) will carry on their functioning, but
the whole logics of the application (scripts) will be in pause.
Sqrt (x)

Returns the square root of x.


Example:
tag001 = Sqrt(81)

// returns 9

StartSound (soundIndex [, frequency])

Plays the sound that is specified in soundIndex with the frequency specified in
frequency (in milliseconds) until a StopSound command is called. soundIndex
should be an integer between 0 and 5 (see the table of sounds available by consulting
function PlaySound()). Minimum frequency is 100ms; if a smaller number is
specified, the value of 100 will be assumed. Note that the frequency parameter
assigns the rate of occurrence for playing the sound.
Example:
StartSound(2,2000)
// plays the sound of exclamation at each 2 seconds

Scripts

247

StopSound ()

Stops a sound that is playing, started by function StartSound().


StopWave ()

Stops the reproduction of a WAV file initiated by function PlayWave().


Str (value, size, precision)

Converts an integer or real number into a string. The value parameter is the number
to be converted, the parameters size and precision determine the size of precision of
the string. When the value parameter is a string, it is first converted into a number,
and then formatted according to parameters size and precision.
Example:
String = Str(30.95,6,2)

// Returns " 30.95"

StrZero (value, size, precision)

Converts an integer or real number into a string, filling it with zeros on the left until
the size that has been specified. The value parameter is the number to be converted,
parameters size and precision determine the size of precision of the string. When the
value parameter is a string, it is first converted into a number, and then formatted
according to parameters size and precision.
Example:
String = StrZero(30.95,6,2)

// Returns " 030.95"

Tan (angle)

Returns the tangent of the angle that has been specified. The angle is expressed in
radians.
WaitCursor(enable)

Enables (enable=1) or disables (enable=0) the waiting slide wire (log glass).
Example:
WaitCursor (1)
<some commands that take time>
WaitCursor (0)
WatchWindow()

Opens a debugging window in Runtime module, which allows the viewing of values
of the properties of an item that is selected in the application tree.
WriteIni (strFile, strSection, strInput, value)
Writes the value (numeric or string) in file .INI strFile. Parameters strSection and
strInput specify the section and input of the respective file.

248

Scripts

User Manual

Note: If the file is a modified INI file, such transformations will not be immediately
modified, for Windows copies a file in the memory. You can force updating by
using parameter WriteIni (strFile,"","","") after reading the .INI file.
The example below writes the following rows in MYAPP.INI:
[General]
Total = 1500
UserName = Admin

Example:
WriteIni("MYAPP.INI","General","Total",1500)
WriteIni("MYAPP.INI","General","UserName","Admin")
WriteToFile(filename, string [,mode])

Writes the string in the file. Returns 1 if well succeeded, or 0 if some error occurs.
The mode parameter is optional and has the following specifications:

MODE

0
1
2
3

DESCRIPTION

(default) Creates the file if it doesn't exist, by placing the string at


file's end.
Fails if the file doesn't exist, by placing the string at file's end.
Creates the file if it doesn't exist, by substituting the file by a new
string.
Fails if the file doesn't exist, by substituting the file by a new string.

Example:
WriteToFile("test.txt", "This row will be
added to an existing file", 1)

19.5.2. Application Functions


AddUser (strName, strDescription, strLogin, strPassword, nAccessLevel)

Adds a new user to the list of application users. Returns 1 (one) if well succeeded, or
0 (zero) if not.
Example:
Application.AddUser
("Joo Machado", "Manager", "JoaoM", "1234", 0 )
DeleteUser (strLogin)

Erases a user from the users list. Returns 1 (one) if well succeeded, or 0 (zero) if not.
Examples:
Scripts

249

Application.DeleteUser("JoaoM")
Application.DeleteUser(strUserName)
EditProperties()

Opens a window that allows the edition of the Application properties.


GetMaxX()

Returns the width of the application window in pixels.


GetMaxY()

Returns the height of the application window in pixels.


Login ([x] [, y] [,bEnableTitle] [,bAllowClose] [, customTitle])

Calls up a dialog box for the identification (login) of a user. Returns true (different
from zero) if the user is successfully logged, or false (zero) if not. In case of error,
no message or window will be shown. Optional parameters X and Y indicate the
coordinates of the top left corner position of the login window. The bEnableTitle
parameter enables (bEnableTitle = 1, default) or not (bEnableTitle = 0) the login
window title. The parameter bAllowClose is a Boolean that indicates if the button
that closes the window should appear (standard is 1, visible). Parameter customTitle
allows the specification of a title for the window that is different from the standard.
In case of error, the global attribute lastError is also refreshed: 0 (zero) if the login
is cancelled by the user, or 1 (one) if the user or password are invalid.
Example:
IF Application.Login()
SetPointScreen.Activate()
ENDIF
Logout()

Runs the logout of a user of the application. Closes all screens having priority
different from zero.
Example:
IF MessageBox("Do you want to logout?","Logout",4) == 6
Application.Logout( )
ENDIF
MaximizeApp()

Maximizes the application window.


MinimizeApp()

Minimizes the application window.

250

Scripts

User Manual

ReloadApp([strNewAppName])

Finalizes the execution of current application, reloads it from the disk, and restart it.
Optional parameter strNewAppName allows the passage of the name of the other
application to be restarted, instead of the current one. This function is not available
in Demo (demonstration) mode of Elipse SCADA.
RestoreApp()

Restores the original size of the application window before it is maximized or


minimized.
ShutDownWindows(shutdownMode)

Allows to restart or shut down the PC via script programming. shutdownMode


parameter can be: 1 (shuts down the system normally), 2 (shuts down the system,
forcing all processes to terminate), 3 (reboot the system normally) or 4 (reboot the
system, forcing all processes to terminate). A forced shutdown or forced reboot
means that all running programs (except Elipse SCADA) will be immediately
closed, and it will not be possible to save any change.
Example:
// Normal programmed stop of Windows
Application.ShutdownWindows(1)

NOTE: When the application runs in Configuration mode, it simply stops the
application. When the application runs in Runtime mode, the application stops and
the PC is restarted.
StopRunning()

Finalizes current application.


UserAdministration()

Allows a user to modify his/her password. If the user is an administrator (access


level 1), he/she will be able to create, modify and remove attributes from all users.

19.5.3. Tag Functions


Common Functions
EditProperties()

Opens a window that allows the edition of Tag properties.

Scripts

251

Matrix Tag Functions


Avg (r1, c1, r2, c2)

Returns the average of values in the rectangle defined by row1 (r1) column1 (c1)
and row2 (r2) column2 (c2).
Example:
tagSum = tagMatriz.Avg(2,1,3,3)
// returns the average of cells
// (2,1), (2,2), (2,3), (3,1), (3,2), (3,3)
ExchangeColumns (column1, column2)

Changes the contents of two columns of a matrix.


Example:
// Changes the contents of columns 3 and 4
TagMTX1.ExchangeColumns(3,4)
ExchangeRows (row1, row2)

Changes the contents of two rows of a matrix.


Example:
// Changes the contents of rows 3 and 4
TagMTX1.ExchangeRows(3,4)
GetCell (row, column)

Returns the value (numeric or string) of a given cell of the matrix specified by row
and column.
Example:
// Returns the value of row 3, column 5 cell
TagMTX1.GetCell(3,5)
MapCellsToTags(startColumn, startRow, endColumn, endRow)

Maps information associated with properties or tags.


Example:
TagMTX1.MapCellsToTags(1,1,5,5)
OrderBy(topRow, bottomRow, col, ascendingSort)

Orders the rows of a matrix between the initial row, topRow, and the final one,
bottomRow through the col column, in ascendant way (if ascendingSort = 1) or
descendent (if ascendingSort = 0).
Example:
// Orders rows 1 to 8 of matrix in ascending form,
// according to values of column 1
TagMTX1.OrderBy(1,8,1,1)
252

Scripts

User Manual

SetCell (row, column, value)

Attributes a value to a given cell of the matrix, specified by a given row and
column.
Example:
// Attributes value 9 to the cell of row 3, column 5
TagMTX1.SetCell(3,5,9)
Sum (r1, c1, r2, c2)

Returns the sum of values contained in the rectangle defined by row1 (r1) column1
(c1) and row2 (r2) column2 (c2).
Example:
// Sums the contents of cells
// (2,1), (2,2), (2,3), (2,4), (3,1), (3,2), (3,3), (3,4)
TagMTX1.Sum(2,1,3,4)

Chrono Tag Functions


Reset()

Zeroes the accumulator.


Block Tag Functions
GetAt(index)

Takes the value stored in a Block Element. The index attribute indicates the index of
the block tag element. Attention: this function cannot be used in limited versions
(Lite versions) of Elipse SCADA.
Example:
// Sum of all block elements
DIM index, sum
sum = 0
FOR index = 0 TO Block1.size-1
sum += Block1.GetAt(index)
NEXT
Read()

Reads the PLC block immediately, returning 1 if the reading succeeded and 0 if the
reading failed. For more information about PLC blocks, check the Block Tag item
on the chapter about Tags on this manual.
Attention: This is a synchronous function, it waits until the reading operation is
finished before returning the execution to the next instruction, so it can seriously
degrade application performance; therefore, you should be careful while using it,
and use it only when it is absolutely necessary.
Scripts

253

SetAt (index, value)

Sets the value of a Block Element. Returns true if the operation is well succeeded; if
not, returns false. The index attribute indicates the index of the block tag element,
and the value attribute is the value to be sent to the element. Attention: this function
cannot be used in limited versions (Lite versions) of Elipse SCADA.
Example:
// This example adjusts all block elements to zero
DIM index
FOR index = 0 TO Block1.size-1
Block1.SetAt(index, 0)
NEXT
SetSize (size)

Adjusts the number of block elements, which is indicated by the size parameter.
Block elements will be added if the block grows, or removed if the block
diminishes.
Write ()

Writes the current block value to the PLC and returns 1 if the writing is successful,
and 0 on failure. For more information on I/O server writing check the Block Tag
item on the chapter about Tags on this manual.
Block Elements Functions
Read()

Reads an element of a PLC tag block. Returns 1 (one) if the reading was successful,
and 0 (zero) on failure.
Attention: this is a synchronous function, it waits until the operation finishes before
returning to the next instruction. It can seriously degrade the performance of the
application; therefore it should be only used when absolutely necessary.
Write()

It immediately writes the current block element valueto the PLC, returning 1 (one) if
it is successful, or 0 (zero) on failure. For more information on I/O services writing,
check the Block Element item on the chapter about Tags on this manual.
Attention: this is a synchronous function; it waits until the operation finishes before
returning to the next instruction. It can seriously degrade application performance;
therefore, it should be used when absolutely necessary.
WriteEx(value)

Writes the value for the I/O driver, by specifying information for the tag. This
function is used in order to specify information on tag scanning.

254

Scripts

User Manual

OPC Tag Functions


Read()

Reads the value of the OPC server.


Write()

Writes the value in the tag for the OPC server.


PLC Tag Functions
Read()

Immediately reads the PLC Tag, returning 1 if successful, and 0 on failure. For more
information on I/O services reading, check the PLC Tag item on the chapter about
Tags on this manual.
Attention: this is a synchronous function; it waits until the reading operation
finishes before returning to the next instruction. It can seriously degrade the
performance of the application; therefore, it should be used when absolutely
necessary.
Write()

It immediately writes the current value of the Tag to the PLC. Returns 1 if writing is
successful, and 0 on failure. For more information on I/O driver writing, check the
PLC Tag item on the chapter about Tags on this manual.
Attention: this is a synchronous function, it waits until the reading operation
finishes before returning to the next instruction. It can seriously degrade the
performance of the application; therefore, it should be used when absolutely
necessary.
WriteEx(value[,timeStamp)

Writes the value directly into the I/O, without attributing it to the PLC tag. This
function uses the Scaling defined in the PLC tag. The optional numeric parameter
timeStamp allows to force a time stamp for the writing.
Example:
Block1.elm000.WriteEx(12)

19.5.4. Screen Functions


Activate()

Shows a screen by giving it the focus.

Scripts

255

EditProperties()

Opens a window that allows the edition of Screen properties.


GetMouseX()

Returns the current X coordinate of mouse.


GetMouseY()

Returns the current Y coordinate of mouse.


Hide()

Hides (closes) a screen.


SendTab (nTabs)

Sends characters [Tab] to the application in order to change the keyboard focus
between the screen objects. Positive values of nTabs simulate the [Tab] key,
negative values simulate the combination of [Shift]+[Tab] keys.
Example:
Screen1.SendTab(4)
Show()

Shows a screen. The screen doesn't receive focus when shown.

19.5.5. Screen Objects Functions


Common Functions
BringToFront()

Places the object in the frontal part of the screen (in front of the remaining objects).
EditProperties()

Opens a window that allows the edition of object's properties.


HasFocus()

Returns true (different from zero) if the object has the keyboard focus, or false (zero)
if not.
Example:
// Changes the Button color if having the keyboard focus
IF Button.HasFocus()
Button.foregroundColor = RGB(255,255,0)
ENDIF

256

Scripts

User Manual

HasMouseCapture()

Returns true (different from zero) if the object has the mouse as captured, or false
(zero) if not.
Example:
Button.SetMouseCapture()
tag1 = Button.HasMouseCapture()

// returns 1

ReleaseMouseCapture()
tag1 = Button.HasMouseCapture()

// returns 0

IsMouseInside()

Returns true (different from zero) if the mouse is over the object, or false (zero) if
not.
Example:
// Changes the Button color if having the mouse over it
IF Button.IsMouseInside( )
Button.foregroundColor = RGB(255,255,0)
ENDIF
MoveTo(x,y)

Moves an object to coordinates x and y that are specified.


Example:
// In this example, when the mouse passes over the object,
// it is moved to the top left corner of the screen.
IF Quadrado.IsMouseInside()
Quadrado.MoveTo(0,0)
ENDIF
SendToBack()

Places the object in the last plan of the screen (behind the remaining objects).
SetFocus()

Defines the keyboard focus for the object.


SetMouseCapture()

Captures the mouse for the object that calls the function. All mouse messages will be
directed to this object until global function ReleaseMouseCapture( ) is called.
SetTag(strTagName)

Associates a new Tag (strTagName) to the object. Returns true (different from
zero) if the Tag is successfully added, or false (zero) if not. If strTagName is an
empty string (" "), then the associated Tag is removed from the object. This function
Scripts

257

can only be used with objects that have just a single Tag, i.e., it is not valid for the
trend and Bar objects.
Alarm Objects Functions
AckSelection()

Sends a recognition sign (ACK) to all alarm messages selected in the object. Returns
the number of messages that are recognized.
Example:
DIM nAcks
nAcks = Alarm1.AckSelection()
IF nAcks > 0
MessageBox(Str(nAcks) + " message(s) acknowledged!")
Else
MessageBox("No messages acknowledged!")
ENDIF
GetColorZoneInfo(strField, nZone)

Returns information about a zone of non-recognized alarms. nZone is the number of


zone (0, 1 or 2). strField can be one of the following fields:
MODE

CheckValue
ForeColor
BackColor
InitialValue
SecondValue

DESCRIPTION

Returns 0 if the zone is disabled, 1 if the zone is allowed


Returns the color of first plan (text) of the zone
Returns the background color of the zone
Returns the lowest priority for the zone
Returns the highest priority for the zone

Examples:
// Adjusts the color of zone 0 to white if it is enabled
IF Alarm.GetColorZoneInfo("CheckValue", 0)
Alarm.SetColorZoneInfo("ForeColor", 0, RGB(255,255,255))
ENDIF
SetColorZoneInfo(strField, nZone, newValue)

Modifies the value of a field of a zone of non-recognized alarms. nZone and


strField have the same meaning that in GetColorZoneInfo(). newValue is the new
value to be attributed to the field.
AVI Objects Functions
End()

Moves the position of the film to the end.


258

Scripts

User Manual

Home()

Moves the position of the film to the beginning.


OpenAVI()

Opens an AVI file without initiating reproduction.


PauseAVI()

Pauses the film in current position.


PlayAVI([nFrom [, nTo]])

Opens an AVI file, and starts playing it from the beginning. If nFrom is specified,
the beginning will be from frame nFrom. If nTo is specified, the reproduction will
be up to frame nTo. If the AVI is configured to play in reverse, these parameters
will be ignored, and the film is entirely played. If the timeFormat attribute of AVI
is 1, then parameters nFrom and nTo will be interpreted as milliseconds.
Step(nSteps)

Moves the position of film nSteps frames on. If nSteps is negative, the position will
be moved back. The film will be paused after calling the function. If the
timeFormat attribute of AVI is 1, then parameter nSteps will be interpreted as
milliseconds.
StopAVI()

Stops reproducing the film, and closes the file.


Bar Objects Functions
The parameter barIndex used in functions below is the number that identifies the
bar in the bar graph, being the first one identified with number zero, the second, with
one, the third, two, and so forth.
CheckLoLoLimit(barIndex, bEnable)
CheckLowLimit(barIndex, bEnable)
CheckHighLimit(barIndex, bEnable)
CheckHiHiLimit(barIndex, bEnable)

These functions enable or disable a zone in a Bar Gauge.


Example:
// Enables zone HiHi
// if tag1.HiHi.verify if true.
Bar1.CheckHiHiLimit(2, tag1.HiHi.verify)

Scripts

259

GetCheckLoLoLimit(barIndex)
GetCheckLowLimit(barIndex)
GetCheckHighLimit(barIndex)
GetCheckHiHiLimit(barIndex)

These functions return 1 if the corresponding zone is enabled in a Bar Gauge.


GetLoLoColor(barIndex)
GetLowColor(barIndex)
GetNormalColor(barIndex)
GetHighColor(barIndex)
GetHiHiColor(barIndex)

Returns the color of the specific zone in a Bar Gauge.


GetLoLoLimit(index)
GetLowLimit(index)
GetHighLimit(index)
GetHiHiLimit(index)

Returns the limit of the specific zone in a Bar Gauge.


SetIndexBarColor(barIndex, color)

Adjusts the color of a normal bar graph. For a Bar Gauge, a different setting is done.
Example:
// This example changes the color of bars 1 to 4 into red
// in the bar graph Bar1.
DIM index
FOR index = 1 to 4
Bar1.SetIndexBarColor(index, RGB(255,0,0) )
NEXT

260

Scripts

User Manual

SetLoLoColor( barIndex, color )


SetLowColor( barIndex, color )
SetNormalColor( barIndex, color )
SetHighColor( barIndex, color )
SetHiHiColor( barIndex, color)

Adjusts the color of a specific zone in a Bar Gauge.


SetLoLoLimit( barIindex, value )
SetLowLimit( barIndex, value )
SetHighLimit( barIndex, value )
SetHiHiLimit( barIndex, value )

Adjusts the limit of a specific zone in a Bar Gauge.


Browser Functions
GetField(fieldName)

Returns the value of the field indicated by fieldName in the current row (pointed as
curSel). If called in script OnDrawRow(), returns the field value in the row to be
drawn.
SetLabel(indexColumn, title)

Allows you to change a column title in runtime. The parameter indexColumn


indicates column number, starting at 0. Column number is given according to the
order on the tab Database, even for disabled columns. The parameter title indicates
the new text to be configured for the column.
SetRecordRange(firstRecNo, lastRecNo)

Defines an interval of records to be loaded in the Browser.


SetTempRowColor(color)

Allows adjusting the background color of the row to be drawn.


SetTempRowTextColor(color)

Allows adjusting the text color of the row to be drawn.


RefreshQuery()

Refreshes the Browser query, by renewing the values of rows that are shown.
Scripts

261

Text Objects Functions


SetZoneText(iZone, Text)

Changes the text of zone iZone into Text. If iZone is 0, the text of all zones is
modified.
Trend Objects Functions
AddData(time)

Adds a new value to all trend pens.


BreakPen()

Breaks the pen, by making the new additional data not to be connected with the
points that were already in the pen.
ClearData()

Erases the trend data or only those of a trend pen.


Example:
// Erases all data from Fornos trend
Fornos.ClearData()
// Erases only data of Temp1pen of Fornos trend
Fornos.Temp1.ClearData()
LoadHistoricData()

Loads data of the historic related to the trend, in accordance with the query that is
specified.
VideoIn Objects Functions
Pause ()

Pauses the video.


Play ()

Plays the video.


Snapshot (strFile, nType)

Saves the current video frame to a graphical image file strFile. strFile is the name
and path of the graphical file. The filename must have the extension included, the
function does not add it. nType is the file type, as follows:

262

Scripts

User Manual

TYPE

0
1
2
3

DESCRIPTION

RAW file (just saves the frame to disk, with no conversion)


BMP format
GIF format (256-color palette).
JPEG format

Stop ()

Stops the video.

19.5.6. Alarms Functions


AckAllAlarms([tagName])

Acknowledge all alarms belonging to tagName. If tagName is not specified, all


alarms of all alarm tags will be acknowledged.
Example:
// Acknowledge all messages for tag Heat1
Alarms.AckAllAlarms(Heat1)
// Acknowledge everything
Alarms.AckAllAlarms()

Scripts

263

ClearHistoricalData()

Erases all messages of alarms, also cleaning the log file of alarms.
GetInfo(strFieldName[, alarmHandle])

Returns information about a message of alarms. If alarmHandle is not specified, the


function returns information about the last message that has been created in the
alarms group. Parameter strFieldName is the name of the field whose content we
want to know. Possible values are:

FIELD

Comment
DateTime
Event
Limit
Priority
State
Tagname
Type
Value
Handle

User

DESCRIPTION

Returns a string with the Comment of the message.


Returns the timestamp of the alarm as a datetime value
(number of seconds since 01.01.1970).
Returns the type of event, as: ALM for message of alarm,
and RTN for return messages.
Returns an integer with the limit of the alarm.
Returns an integer with the priority of the message of alarm.
Returns a string with the state of the alarm, as: ACK for
recognized, and UNACK for non-recognized.
Returns the name of the tag associated to the message of
alarm.
Returns a string with the alarm type (HIHI, HIGH,
LOW, LOLO, RET)
Returns the alarm value.
Returns a handle of the message of alarm. This handle
can be stored and used in order to further recover
information about the alarm.
Returns the user that is responsible for the message of alarm.

It is possible to use abbreviations for field names having at least two characters. In
other words, field Value can be abbreviated by VA, field Priority can be
abbreviated by PR, and so forth.
Example:
// Alarms.OnAlarm() script
// stores the handle of alarm of messages
// of tags that start with "TEMP"
IF Left(Alarms.GetInfo("Tagname"), 4) == "TEMP"
lastHandle = Alarms.GetInfo("Handle")
ENDIF
GetNextActiveAlarmHandle( lastHandle )

Returns the handle of last message of active alarms. Messages of active alarms are
shown in the Summarized Alarm. lastHandle can be: -1 for searching the first active
264

Scripts

User Manual

alarm handle, or the number of previous handle returned by function


GetNextActiveAlarmHandle. If there are no more messages of active alarms, the
function returns -1. The handle that is returned can be used in function
Alarms.GetInfo().
Example:
// counts the number of alarm messages
// of tags that start with "TEMP"
// and shows it in a MessageBox
DIM hAlarm, strTagName, nTotal
nTotal = 0
hAlarm = Alarms.GetNextActiveAlarmHandle(-1)
WHILE hAlarm <> -1
strTagName = Alarms.GetInfo("TA", hAlarm)
IF Left(strTagName, 4) == "TEMP"
nTotal = nTotal + 1
ENDIF
hAlarm = Alarms.GetNextActiveAlarmHandle(hAlarm)
WEND
MessageBox("There are " + Str(nTotal) + " active alarm!")
RemoveFromSummary(messageID)

Removes from the Summarized Alarm a message of alarm created by function


SimulateAlarm with ID messageID.
SimulateAlarm(id, timeStamp, strTagName, strComment, nValue, nLimit,
nPriority, strType, strEvent, strState)

Creates a new message of alarm. Returns 0 if failing, and 1 if successful. The


parameters are:

Scripts

265

FIELD

id

timeStamp
Tagname
Comment
Value
Limit
Priority
Type
Event
State

DESCRIPTION

Identifier of alarm message, if the value is 0, then this


message will be only written in the alarm record. If you give
it a value that is different from 0, the message will be written
in the alarm record, and will be added to the alarm summary.
You should give the same value of messageID to function
RemoveFromSummary in order to remove the summary
message;
Time of the alarm message, you can use GetTime() to start
the current time of the system.
String that contains the tag name. In case there is no tag, this
field is purely informative.
String that contains the comment message of the alarm.
Value of the alarm.
Determines the maximum limit that is exceeded by the alarm.
Priority level of the alarm, which can be from 1 up to 999
Type of alarm message, which can be: RET, HIHI,
HIGH, LOLO, LOW or
Type of event: EVT, ACK, ALM, RTN or
Determines the state of recognition of the alarm: ACK,
UNACK or

Example:
// Records an event in the log. The message doesn't go
// to the Summarized Alarm because the ID is 0.
Alarms.SimulateAlarm(0, GetTime(),_
"System", "Comm Error",0, 0, 1, "", "EVT", "UNACK")
// This example simulates a High alarm
Alarms.SimulateAlarm(230, GetTime(), "pressure1",_
"Pressure 1 HIGH", 140, 120, 10, "HIGH", "ALM", "UNACK")
// Next row removes the simulated message from Summarized
// and records a false alarm return message in the
// record of alarms
Alarms.RemoveFromSummary(230)
Alarms.SimulateAlarm(0, GetTime(), "pressure1",_
"Pressure normal",110, 120, 10, "RTN", "ALM", "ACK"

19.5.7. Recipes Functions


ChooseRecipe(title, selRecord, x, y, width, height)

Opens a dialog that allows the selection of a recipe from a list, by returning its index
to the file. The parameter title is a string to be shown in the title bar of the dialog
(place " " for a window without title), selRecord is the index of the recipe to be
266

Scripts

User Manual

selected when the dialog is open (place -1 in order not to select any), x, y, width and
height are optional, and indicate the position and size of the window; if not
informed, the dialog is open in the center of the screen or in the last position in
which it has been open, and a border allows its size to be modified.
Example:
// tagRecipe will receive the index of the recipe that
// has been chosen. The dialog will be open in the center
// of the screen, in a window that can be re-dimensioned,
// having the title List of Recipes.
tagRecipe = Recipes.ChooseRecipe("List of recipes", 1)

In CE, windows position and dimension are fixed.


CreateNewRecord(description)

Creates a new record in the Recipes file in accordance with the description
parameter, returning the record index to the file.
CopyRecord(nRecord)

Copies a selected record with the same values of the original record, which are
specified in nRecord. This function returns the number of new records or 0 if
failing.
Example:
// Copying a recipe
DIM nRecord
nRecord = Recipe1.ChooseRecipe("Recipes", -1)
IF nRecord > 0
Recipe1.CopyRecord(nRecord)
ENDIF
DeleteRecipe(record)

Erases the record having record number in a recipe. Returns true (different from
zero) if the operation is successful, or false (zero) if not.
EditProperties()

Opens a window that allows the edition of the Recipe properties.


EditRecipe()

Opens a dialog box to edit a Recipe file.


FindRecipe(description)

Searches a record of a recipe having the description string in its description.


Returns the record number or zero if not finding any.
Scripts

267

GetRecCount()

Returns the number of records of the recipes file.


GetRecDescription(record)

Returns the description of a record to the Recipes file. The record parameter should
be between 1 <= record <= GetRecCount().
LoadRecipe(record)

Loads a recipe record of the Recipes file in the respective listed tags. The record
parameter should be between 1 <= record <= GetRecCount(). The function returns
True if the recipe was loaded successfully; False, if an error occurred.
Example:
// Loads the fourth record of Recipes
Recipes.LoadRecipe(4)
SaveRecipe(record)

Saves the record. The function returns True if the recipe was recorded successfully;
False, if an error occurred.
SetRecDescription(record, description)

Changes into description the record description in the Recipes file.

19.5.8. Historic Functions


Analysis (x, y [, width [, height]])

Opens the HAnalysis window and generate the chart. The parameters x and y
specify the XY position of the window. The parameter width specifies the width of
the window. The parameter height specifies the height of the window.
Average (src, type, startTime [, endTime])

Returns the historic data sets average. The parameter src specifies the tag that is
saved in the historic. The parameter type specifies the time interval to be used in the
average calculation, as follows: 0 = year; 1 = month; 2 = week; 3 = day; 4 = time;
5 = minute. The parameter startTime specifies the initial time and endTime
(optional) specifies the final time. If endTime is specified, type is ignored.
Close()

Closes a historic file.


Edit()

Edits the current record without writing it in disk. In order to write it, use function
Refresh().
268

Scripts

User Manual

EditProperties()

Opens a window that allows the edition of historic.


FindTime(time)

Returns the index of the first record that has date and hour bigger or equal to the one
that is specified in time.
FinishBatchProcess()

Finishes a historic of batch type.


GetFirstRec()

Returns the number of the first record of the historic file.


GetLastRec()

Returns the number of the last record of the historic file.


GetRecCount()

Returns the total number of records of the historic file.


GetRecno()

Returns the current position of the pointer for the historic file.
GoTo(recno)

Moves the pointer of records from the historic file to the recno index record without
reading the record.
IsBOF()

Verifies if the pointer of records points out to the beginning of the historic file.
Returns true (different from zero) if the pointer is in the beginning, or false (zero) if
not.
IsEOF()

Verifies if the pointer of records points out to the end of the historic file. Returns
true (different from zero) if the pointer is in the end, or false (zero) if not.
Move(n)

Moves the pointer of records of the historic file n records onwards (positive
numbers) or backwards (negative numbers). The record is read, and its values loaded
into the respective historic fields.
MoveFirst()

Moves the pointer of records of the historic file to the first record. The record is
read, and its values are loaded into the respective historic fields.

Scripts

269

MoveLast()

Moves the pointer of records of the historic file to the last record. The record is read,
and its values loaded into the respective historic fields.
MoveNext()

Moves the pointer of records of the historic file to next record. The record is read,
and its values loaded into the respective historic fields.
MovePrev()

Moves the pointer of records of the historic file to the previous record. The record is
read, and its values loaded into the respective historic fields.
Open()

Opens a historic file.


RestartLastBatch()

Restarts the last batch.


SPC()

Runs the analysis of SPC.


StartBatchProcess()

Initiates a historic in batch.


Refresh()

Writes current record.


Update()

Commits the current record.


WriteRecord()

Writes a record in the historic file.

19.5.9. HAnalysis Functions


Analysis (x, y [, width [, height]])

Opens the HAnalysis window and generate the chart. The parameters x and y
specify the XY position of the window. The parameter width specifies the width of
the window. The parameter height specifies the height of the window.
CloseAnalysis()

Closes the window of HAnalysis.

270

Scripts

User Manual

RequeryAnalysis()

Reapplies the query over the data file of HAnalysis, by repeating the loading of data
in the window of analysis.
SPC()

Runs the SPC (Statistical Process Control) over the data file of HAnalysis.

19.5.10. SPC Functions


Recalc()

Recalculates all SPC data. This function, together with SetDatField(), allows the
automatic calculation of SPC without having to open the windows of setting and
graph.
SetDatField(datField)

Adjusts the field name of the historic file that will be used in the calculations of
SPC.

19.5.11. Report Functions


Common Functions
EditProperties()

Opens a window that allows the edition of report properties.


LoadCfg(fileName)

Loads the printer setting, margins and fonts of the report of a file in disk saved by
function SaveCfg().
Print(bShowErrorMessages,[strHeaderBmp],[strFooterBmp],
[bStretchHeader], [bStretchFooter])

Prints the report according to the specified setting. It returns True (different from
zero) if the Report is successfully printed; otherwise, it returns False (zero). The
parameter bShowErrorMessages indicates if the command will show error
messages (1), or run in silent mode (0).
The optional parameters strHeaderBmp and strFooterBmp indicate the filenames
with the images to be included in the header and in the footer, respectively. On their
turn, the optional parameters bStretchHeader and bStretchFooter enable headers
and footers stretch.

Scripts

271

SaveCfg(fileName)

Saves the printer setting, margins and fonts of the report in a file;
SetupPrinter()

Opens the window of printer setup.


Text Report
AddFilter (field, valueLow, valueHigh)

Filters the value of a field. The field parameter is a string that specifies the name of
the numeric field to be filtered. Parameters valueLow and valueHigh specify an
interval of values for the search. Records that have values outside this interval will
be excluded from the report. It is advisable to set up the filter before printing, and
remove it after. More than a field can be filtered, and only the records satisfying all
filters will be included in the report.
Example:
TextRep1.AddFilter(code, 0, 23)
PrintToFile (fileName, [bPrintHeader], [separator], [bProgressDialog],
[bPlaceQuotes])

Prints data of a Historic or Alarms file in a text file specified by the name in
parameter fileName.
Parameter bPrintHeader enables (1) or disables (0) the header printing (this
parameter is optional, and the default value is 0). When you select a specific Batch
to be printed with parameter bPrintHeader as 1, and attribute printHeader of
Report as 1, the function will also print the batch header data.
The parameter separator is a string containing the character that will be used to
separate the fields (it is optional, and the default value is " ", i.e., a blank space).
Returns true (different from zero) if the Report is successfully printed, or false (zero)
if not. No header is printed.
Parameter bProgressDialog enables (1) or disables (0) the exhibition of a progress
bar while the report is printed (this parameter is optional and the default value is 0).
If a separator character is used, the parameter bPlaceQuotes indicates that values
from string or date/time type columns will be surrounded by quotes
(bPlaceQuotes = 1). If parameter is 0, the function will not place quotes.
Example:
Relatorio.PrintToFile ("turtle.dat", 1, "-", 1)
RemoveAllFilters()

Removes the filters of all fields in the report.


RemoveFilter(field)

Removes a filter of a field.


272

Scripts

User Manual

19.5.12. Query Functions


FindTime(time, firstReg, lastReg)

Returns the number of the first record between firstReg and lastReg having date
and hour bigger or equal to time. If there are no records in the interval specified by
the date that is bigger or equal to time, the function returns -1.
Example:
Query1.FindTime(MakeTime(2,3,1995,13,45,30), 20, 50)
ReloadStructure()

Forces the query object to reload the list of fields. This will be required if you
change the specification of font for the query and the structure of the specification is
different from the previous field.
Example:
ReportTxt.Query.filename = "C:\Data\MON12.DAT"
ReportTxt.Query.ReloadStructure()

19.5.13. Plotter Functions


SaveBitmap(strFileName, nWidth, nHeight, nFontScaling)

Saves the chart to a bitmap file (.BMP). The parameter strFileName specifies the
name (and path) of the bitmap file. The parameters nWidth and nHeight specify the
width and height of the picture, respectively. nFontScaling specifies the font scale
of bitmap text, as follows: fontSize * (nFontScaling/1000). If zero, the font
size is not modified.
Example:
Trend1.Plotter.SaveBitmap("C:\SNAPSHOT.BMP", 320, 200, 0)
ShowDate(bShow)

Shows the date in the bottom ruler of the graph when parameter bShow is equal to
1. If bShow is equal to 0, it doesn't show the date.
TimeInHAxis()

Determines that the X-axis in a XY graph expresses time.


TimeInVAxis()

Determines that the Y-axis in a XY graph expresses time.

Scripts

273

19.5.14. Drivers Functions


Common Functions
EditProperties()

Opens a window that allows the edition of driver properties.


LoadCfg(fileName)

Loads the driver settings from the file specified by fileName.


SaveCfg(fileName)

Saves driver settings in a file specified by fileName.


Network Drivers
Configure()

Opens a dialog box for setting up the parameters of the network driver.
StartDriver()

Loads the network driver enabling remote communication. Returns true (different
from zero) if the driver is successfully loaded, or false (zero) if not.
StopDriver()

Stops the network driver by disabling any remote communication. Always returns
true (different from zero), indicating that the driver has been successfully stopped.
PLC Drivers
AddFilter(filter)

Adds a communication filter to the Driver. The filter allows the disabling of reading
or writing to PLC or Block Tags that have the same parameters that are specified in
the filter.
Example:
// disables all communication
// with N1 or B1=1 and N2 or B2 = 30
Driver1.AddFilter("1,30")
// disables all readings with N4 or B4 = 40
Driver1.AddFilter("R,,,40")

filter is a string composed of 4 numbers separated by commas, corresponding to


parameters N1/B1, N2/B2, N3/B3, N4/B4. A letter can precede the first parameter,
as follows:
"R" disables readings
"W" disables writings
274

Scripts

User Manual

B" disables Block Tags


"T" disables PLC Tags
If the prefix characters are not specified, the whole option should enable reading and
writing for PLC and Block tags. The function returns 1 if the filter is successfully
added, or 0 if the filter string is invalid. The filters are cumulative; if you add the
same filter for three times, it has to be three times removed, by using function
RemoveFilter()
GetErrorInfo(param)

Returns information about last error; param defines what information will be
returned.
If param is 0, it returns the type of communication that has caused the error:
1 = reading of a PLC Tag;
2 = reading of a Block Tag;
3 = writing of a PLC Tag;
4 = writing of a PLC Block;
If param is 1, 2, 3 or 4, it returns parameters N1 to N4 of PLC tag or B1 to B4 block
tag that caused the error.
Example:
// Driver1.OnCommError() script
// adds a filter to all tags of
// N1/B1 of last error
DIM strFilter
strFilter = Str(Driver1.GetErrorInfo(1))
// avoid adding the same filter more than once
// removes the filter that precedes this same PLC
Driver1.RemoveFilter(strFilter)
Driver1.AddFilter(strFilter)
Reload()

Reloads a driver from the disk. Doesnt return any error, if fails.
RemoveAllFilters()

Removes all filters added by function AddFilter().


RemoveFilter(strFilter)

Removes a filter of a driver added with AddFilter(). Returns true (different from
zero) if the filter has been successfully removed, or false (zero) if it doesn't exist or
is invalid. The parameter filter should be specified in the same way as in
AddFilter().
Scripts

275

StartComm()

Starts communication with driver.


StopComm()

Stops communication with the driver.

19.5.15. Database Functions


AddRecord (bRefreshQuery)

Adds a new record to the database. Returns TRUE (different from zero) if
successfully added, or FALSE (zero) if any of the following errors occur: full disk,
database is read only, a primary key having a value that already exists, or there is no
modification done in the database. It is necessary to fill out all fields of the record
before calling the function. Parameter bRefreshQuery indicates if the query should
be refreshed after the additions of the record. If the parameter is 0 (zero), then the
added record will be visible only after query updating. The standard value is 1 (one).
Examples:
Table1.ID = tag002
Table1.Valor = tag003
Table1.AddRecord(1)
BeginTrans()

Begins a transaction with the database. Returns true if the transaction begins, and
false if failing or if the transactions that sustain the database are not located.
Example:
if (BD1.CanTransact())
BD1.BeginTrans()
BD1.GotoRecord(0)
while (not BD1.IsEOF())
BD1.DeleteRecord()
BD1.MoveNext()
wend
BD1.CommitTrans()

// begins a transaction
// goes to the beginning
// if it is not the end of file
// erases a record
// goes to next
// even if BD1.EndTrans(1)

ENDIF
CanTransact()

Returns true (different from zero) if the database is available for transactions, or
false (zero) if not. Example: see it in BeginTrans().

276

Scripts

User Manual

CloseConnection()

Closes an ODBC connection. This operation releases the database for external
operations, as for example a backup of the database that is being used by Elipse, or
the change of some parameter of connection.
CommitTrans()

Ends a transaction by saving all new data.


Example: see it in BeginTrans().
DeleteRecord()

Erases the current record from the database. Returns TRUE (different from zero) if
successfully removed, or FALSE (zero) if any of the following errors occur: the
database is read only, the pointer of records is pointing out to the mark of beginning
of file (BOF), the pointer of records is pointing out to the mark of end of file (EOF).
This function erases all duplicated records, i.e., those that have the same data in case
a single duplicated record is erased.
Example: see the example in BeginTrans().
EditProperties()

Opens a window that allows the edition of database properties.


EditRecord()

Edits the current record without writing it in disk. In order to write it, use function
Refresh(). Both of these functions are obsolete, and are maintained to allow
compatibility with previous versions of the software. In order to edit a record,
currently, it is enough to modify the values of fields, once we are over them.
EndTrans(n)

Finishes a transaction in accordance with parameter n. If n is one (1), function


CommitTrans() is called; if it is zero (0), function RollBack() is called. Example:
see it in BeginTrans().
Find(strCondition [, bMoveFirst=0])

Searches the first record of condition strCondition. If bMoveFirst is 1, the search


will depart from the first record; if bMoveFirst is 0 (option), the search will depart
from current record. strCondition is a text expression used for finding the record (as
a Where clause in an indication of SQL without the word Where). (Only in DAO.)
GetConnectionString()

Obtains the connection string used by the ODBC driver.


Example:
// Obtains the ODBC string of the BD1 connection
strConnection = BD1.GetConnectionString()
Scripts

277

GetEditMode()

Returns the status of edition for current record. (Only in DAO.) It can be one of the
following values:
VALUE

-1
0
1
2

DESCRIPTION

The table is not connected (closed).


No edition in progress.
The record is being modified.
The record is being added.

GetLastError ()

Returns the last error message occurred during a transaction with the database.
GetODBCParameter(strParam)

Returns the value of parameter strParam of the string of ODBC connection. The
string of connection is a sequence of parameters and values of parameter as in
ODBC;DSN=C:\Data.DB;Timeout=500.
Example:
strDSN = Table1.GetODBCParameter(.DSN.)
GetRecordNumber()

Returns the record number in the database. The first record is number zero.
GetTableName()

Obtains the name of the database table. (Only in ODBC.)


GetTotalNumberOfRecords()

Returns the total number of records in the database according to the Query specified
in function SQLQuery().
Example:
// Returns the total number of records,
// for it doesn't have a defined query.
BD1.SQLQuery(" ", " ")
TagRam = BD1.GetTotalNumberOfRecords()
GotoRecord(n)

Moves the pointer of records to record n, depending on the Query that has been
specified. Returns true (different from zero) if the movement has been successful, or
false (zero) if a mark of end of file EOF is found.
Example:
// goes to the 13th record, as the first
// record always has index 0 (zero)
Database1.GotoRecord(12)
278

Scripts

User Manual

IsBOF()

Verifies if the pointer of records is in the beginning of the file. Returns true
(different from zero) if it is, or false (zero) if it is not.
IsEOF()

Verifies if the pointer of records is in the end of file. Returns true (different from
zero) if it is, or false (zero) if it is not.
Example: see it in BeginTrans().
Locate(strCondition [, bMoveFirst])

Looks for the next record fulfilling the expression informed in parameter string
strCondition. Parameter bMoveFirst is a Boolean value that defines if the search
should start from the first record of the database (bMoveFirst = 1) or from current
record (bMoveFirst = 0).
Example:
// Browses the first record fulfilling the expression
// from current record
Database1.Locate("temp == tag001 * tag002", 0)
Move(n)

Moves the database pointer n records onwards relative to current position of pointer.
Returns true (different from zero) if the movement has been successful, or false
(zero) if a mark of end of file EOF is found.
Example:
// Positions the pointer on the 11th record, as
// the first record always has index 0 (zero)
Database1.GotoRecord(10)
// Positions the pointer in next record (12th record)
Database1.Move(1)
// Returns two records (10th record)
Database1.Move(-2)
MoveFirst()

Moves the pointer of records to the first record of the database. Returns true
(different from zero) if the movement has been successful, or false (zero) if not.
MoveLast()

Moves the pointer of records to the last record of the database. Returns true
(different from zero) if the movement has been successful, or false (zero) if not.
MoveNext()

Moves the pointer of records to next record. Returns true (different from zero) if the
movement has been successful, or false (zero) if a mark of end of file EOF is found.
Scripts

279

MovePrev()

Moves the pointer of records to the previous record. Returns true (different from
zero) if the movement has been successful, or false (zero) if a mark of beginning of
file EOF is found.
OpenConnection()

Reopens an ODBC connection. It should be used only after a CloseConnection()


function has already been used, as databases used in Elipse SCADA are open
together with the application. Returns true (different from zero) if the operation is
successful, or false (zero) if not.
Requery()

Refreshes the Database. It is useful when more than one user is using the DB. This
function is not necessary when you are using the Refresh(1) function, as this
function in itself already refreshes the DB.
RollBack()

Undoes all actions accomplished during a transaction. Returns true (different from
zero) if the actions have been successfully undone, or false (zero) if not.
SetODBCParameter(param, strValue)

Changes a parameter within ODBC connection string.


Example:
// changes the ODBC connection string to use the
// Access data file "suporte.mdb" located
// in the root of disk C:
Database1.CloseConnection()
Database1.SetODBCParameter("DBQ", "C:\suporte.mdb")
Database1.OpenConnection()
SetTableName(tableName)

Defines a new name for current table.


Example:
Table1.CloseConnection()
Table1.SetTableName("Production")
Table1.OpenConnection()
SQLQuery(Where, OrderBy)

Defines a filter to be used in the query to the database according to parameters


Where and OrderBy.
Where: Defines a filter to be used in the query to the database according to the
fields and options of the user. In order to use this parameter, you need to specify a
value or expression to be used for searching a specific field. When there is no filter
that is specific for parameter Where, you should enter an empty string.
280

Scripts

User Manual

Operators accepted in expressions in this parameter are: =, <> (different), <, >,
<=, >=, !< (not lesser than), !> (not bigger than), AND, OR, NOT, LIKE (similar
or equal), IN, BETWEEN, IS NULL, IS NOT NULL.
OrderBy: Defines an order for searching the database in accordance with the field
that is specified, which can be ascending (default) or descending. This field is
mandatory, but can be an empty string.
The function returns the amount of records of the query.
Examples:
// Searches all records having "Maria" in the name field,
// in ascending order. HowMany receives the amount of records
// of the query
HowMany = Database1.SQLQuery("name = 'Maria'","name")
// No filter. Note that the quotation marks in the string
// can be double or simple.
Database1.SQLQuery(" ")
// Searches all records having in the
// name field a string bigger than 'Maria', and in the
// salary field a number that is bigger than 1000. Both filters
// should be satisfied.
Database1.SQLQuery("name > 'Maria' AND salary > 1000")
// You can use the value of a Tag to create
// a string by using the concatenation.
Database1.SQLQuery("name = '"+TagRam1+"'")
// Searches all records having in the
// name field, a string beginning with 'ma'.
//For exemple: Maria, Mario, Manoela, Marcelo
Database1.SQLQuery("name LIKE 'ma%'")
// Searches all records having in the
// sales field a number between 40000 and 100000.
Database1.SQLQuery("sales BETWEEN 40000 AND 100000")
// Searches all records having in the
// optional field a blank space, ordered in
// descending order by the name field.
Database1.SQLQuery("optional IS NULL","name DESC")
// Makes the query for date
Scripts

281

Database1.SQLQuery("Date = CDate('10/09/2006')")

NOTE: this last example is valid for an MDB database. Other databases may not
accept this query format.
Update(bQuery)

Updates changes made in register. bQuery parameter determines whether a query


should be performed after register update. If the parameter is 1, query is performed
and registers are updated; if parameter is 0, the added registers only are visible after
query update. This function is obsolete and was kept to allow compatibility with
previous versions of software. Currently, the recorder in the database are made
automatically, when necessary.

19.5.16. Remote Applications Functions


Configure()

Opens a driver dialog box for setting up the parameters of the Remote Application.
Connect()

Establishes connection with the Remote Application. Returns true (different from
zero) if the connection has been successful, or false (zero) if not.
Disconnect()

Finishes the connection with the Remote Application. Returns true (different from
zero) if the connection has been successfully closed, or false (zero) if not.
EditProperties()

Opens a window that allows to edit Remote Application properties.


LoadCfg(fileName)

Loads from a file that is specified by fileName, the set up of the Remote
Application.
SaveCfg(fileName)

Saves the set up of the Remote Application in a file that is specified by fileName.
Remote Files Functions
Cancel()

Aborts a transfer of file that is being executed.


GetFile(serverFile, clientFile)

Obtains a server file with name serverFile and takes a copy of it into a local file
having the name of clientFile.
282

Scripts

User Manual

19.5.17. OPCServer Functions


Connect()

Starts the connection with OPC server.


Disconnect()

Stops the connection with OPC server.


NOTE: To check the OPC server connection status, you may use the OPCServer
property ServerStatus (see OPCServer Properties section).
EditProperties()

Opens a window that allows to edit OPCServer properties.

19.6. Attributes
Attributes are data associated to an object that determine its characteristics and the
way in which it will behave. Normally, there is a window in which you can modify
the attributes of an object. Each attribute has an associated type that is represented
by its icon as follows:
Numeric attribute
String attribute (text)
Boolean attribute (true/false)
System attribute, internally used by Elipse SCADA.

Next sections will describe the following attributes:


Global Attributes

Recipe Attributes

Application

Historic Attributes

Tags Attributes

Report Attributes

Screen Attributes

Driver Attributes

Alarm Attributes

Databases Attributes

Users Attribute

Remote Application Attribute

Watcher Attribute

Steeplechase Attribute

OPCServer Attribute
Scripts

283

19.6.1. Global Manager Attributes


These attributes are Global attributes of Elipse SCADA and can be modified from
any point of the application. But, one should be careful when modifying any of these
attributes, as they can change the functionality of a Script or an object.
currentTime: an integer without sign (read only) containing present date and
hour of the system to be refreshed in expressions or displays with Date/Time format.
It is refreshed once at each second. It should not be used as time meter in scripts
because it is not refreshed during the execution of scripts. In this case, use function
GetTime(), which is refreshed whenever called;
day: an integer containing the day of system;
dayOfWeek: an unsigned integer from 1 to 7 (read only) containing the number
of current week day, as follows: 1 - Sunday, 2 - Monday, 3 - Tuesday, 4 Wednesday, 5 - Thursday, 6 - Friday, 7 - Saturday;
description: a string containing a brief description of the global object;
hour: an integer containing the system hour;
lastError: an integer without sign from 0 to 65535 (read only) containing the
code of last error occurred in operations with files or directories;
lastErrorStr: a string containing the description of last error occurred in
operations with files or directories.
minute: an integer containing the minutes of system;
month: an integer containing the month of system;
name: a string containing the name of the global object, used as identifier for it;
performanceCount
: Indicates the application performance. Lower values
indicate more processing load (performance ranges between 0 and 999).
second: an integer containing the seconds of system;
year: an integer containing the year of system;

19.6.2. Application Attributes


activeAlarms: Integer, indicates the amount of active alarms in aplication.
allowClose
: Boolean attribute (read only) determining that the application
can be closed by other means different from function StopRunning() as for example
a mouse click on the Close button, or command Shutdown of Windows. Returns
true (different from zero) if the button is enabled, or false (zero) if not.

284

Scripts

User Manual

centerWindow
: a Boolean attribute used to enable the main application
window to start execution as centered. Returns true (non zero) if center is enabled or
false (zero) if it isnt.
closeButton
: a Boolean attribute (read only) determining that the close
button is enabled in the application window. Returns true (different from zero) if the
button is enabled, or false (zero) if not.
description: a string containing a brief description of the application;
exclusive
: a Boolean attribute determining that Elipse SCADA has
exclusivity over the use of the CPU. Returns true (different from zero) if Elipse
SCADA is exclusive, or false (zero) if not.
height: an integer without sign (from 0 to 65535) determining the height of the
Application window in pixels. It is used together with the width attribute to define
the size of the window. This attribute should be defined in accordance with the
resolution used in Windows to obtain a window without scroll bar. For instance, if
you are using a resolution of 640x480 (VGA), parameter height can vary from 0 to
480 pixels;
isMaximized: a Boolean attribute determining if the application window is
maximized or not. Returns true (different from zero) if the window is maximized, or
false (zero) if not.
isMinimized: a Boolean attribute determining if the application window is
minimized or not. Returns true (different from zero) if the window is minimized, or
false (zero) if not.
isNormal: a Boolean attribute determining if the application window is
normalized or not. Returns true (different from zero) if the window is normalized, or
false (zero) if not.
keyPadBackColor
: a hexadecimal (from 0h to 1000000h) or decimal
number (from 0 to 16777215) defining the background color of Key Pad (Screen
Keyboard). This value can also be specified by function RGB(r,g,b) in which each
component (r,g,b) can vary from 0 to 255.
keyPadHeight
: an integer without sign (from 0 to 65535) determining the
height of the Key Pad window in pixels. It is used together with the KeyPadWidth
attribute to define the size of the window. This attribute should be defined in
accordance with the resolution used in Windows to obtain a window without scroll
bar. For instance, if you are using a resolution of 640x480 (VGA), parameter height
can vary from 0 to 480 pixels;
keyPadKeyColor
: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the color of Key Pad keys (Screen Keyboard). This
value can also be specified by function RGB(r,g,b) in which each component (r,g,b)
can vary from 0 to 255.
Scripts

285

keyPadTextColor
: a hexadecimal (from 0h to 1000000h) or decimal
number (from 0 to 16777215) defining the text color of Key Pad keys (Screen
Keyboard). This value can also be specified by function RGB(r,g,b) in which each
component (r,g,b) can vary from 0 to 255.
keyPadTitleBar
default) or not (zero).

: Boolean, indicates if the Key Pad will have title bar (one,

keyPadVisible
: a Boolean attribute determining that the Key Pad is visible.
Returns true (different from zero) if the Key Pad is visible, or false (zero) if not.
keyPadWidth
: an integer without sign (from 0 to 65535) determining the
width of the Key Pad window in pixels. It is used together with the KeyPadHeight
attribute to define the size of the window. This attribute should be defined in
accordance with the resolution used in Windows to obtain a window without scroll
bar. For instance, if you are using a resolution of 640x480 (VGA), parameter height
can vary from 0 to 640 pixels;
keyPadX
: an integer with sign (from -32768 to 32767) determining the X
coordinate for top left corner of the Key Pad window, in pixels. It is used together
with the Y attribute to define the position of the top left corner of the window. This
attribute should be defined in accordance with the resolution used in Windows to
obtain a window without scroll bar. For instance, if you are using a resolution of
640x480 (VGA), your X coordinate can vary from 0 to 640 pixels;
keyPadY
: an integer with sign (from -32768 to 32767) determining the Y
coordinate for the top left corner of the Key Pad window, in pixels. It is used
together with the X attribute to define the position of top left corner of the window.
This attribute should be defined in accordance with the resolution used in Windows
to obtain a window without scroll bar. For instance, if you are using a resolution of
640x480 (VGA), your Y coordinate can vary from 0 to 480 pixels;
largeButtons: a Boolean attribute enabling large buttons in the Organizer,
HAnalysis, etc. to facilitate the use of Touch Screen. Returns true (different from
zero) if large buttons are enabled, or false (zero) if not.
maximizeButton
: a Boolean attribute (read only) determining that the
maximize button is enabled in the application window. Returns true (different from
zero) if the button is enabled, or false (zero) if not.
minimizeButton
: a Boolean attribute (read only) determining that the
minimize button is enabled in the application window. Returns true (different from
zero) if the button is enabled, or false (zero) if not.
name: a string containing the application name used as identifier for it.
noMousePointer
: a Boolean attribute used for disabling (hiding) the mouse
pointer during running time (while executing an application). Returns true (different
from zero) if the mouse is disabled, or false (zero) if not.
286

Scripts

User Manual

noScreenSaver
: a Boolean attribute used for disabling the screen saver
during running time (while executing an application). Returns true (different from
zero) if the screen is disabled, or false (zero) if not.
numPadCloseButton
: Boolean, indicates if the button to close NumPad
shall be presented (value one, default) or not (value zero).
numPadTitleBar
: Boolean, indicates if the Numeric Pad will have title bar
(one, default) or not (zero).
numPadTitleBarText
: string, allows the indication of a text for the title bar
of Numeric Pad (empty, by default).
revision: an integer without sign (read only), indicates the revision number of
the application. It is automatically incremented each time the application is saved.
saveKeyPadCoord
: a Boolean attribute determining that the coordinates
and the size of the KeyPad window (Screen keyboard) are saved to be loaded in the
next opening of it. Returns true (different from zero) if saving is enabled, or false
(zero) if not.
startMaximized: a Boolean attribute determining if the application window
starts as maximized or not. Returns true (different from zero) if the application starts
as maximized, or false (zero) if not.
startMinimized: a Boolean attribute determining if the application window
starts as minimized or not. Returns true (different from zero) if the application starts
as minimized, or false (zero) if not.
startNormal: a Boolean attribute determining that the application window starts
as normalized. Returns true (different from zero) if the application starts as
normalized, or false (zero) if not.
startScreen: Only for the use of Elipse SCADA. It is not allowed modifications
on the part of users.
titleBar
: a Boolean attribute determining that the Title Bar is shown in the
application window. Returns true (different from zero) if the Title Bar is shown, or
false (zero) if not.
useKeyPad: a Boolean attribute enabling the use of KeyPad (Screen keyboard)
during running time. Returns true (different from zero) if the KeyPad is enabled, or
false (zero) if not.
userAccessLevel: an integer without sign from 0 to 65535 (read only)
determining the access level of the user logged in the application.
userLogin: a string (read only) containing the name of current user (login).
userName: a string (read only) containing the current user logged in the
application.
Scripts

287

version: a string (read only) indicating the version of Elipse that has last saved
the application.
width: an integer without sign (from 0 to 65535) determining the width of the
Application window in pixels. It is used together with the height attribute to define
the size of the window. This attribute should be defined in accordance with the
resolution used in Windows to obtain a window without scroll bar. For instance, if
you are using a resolution of 640x480 (VGA), parameter width can vary from 0 to
640 pixels;
x: an integer with sign (from -32768 to 32767) determining the X coordinate for
the top left corner of the Application window, in pixels. It is used together with the
Y attribute to define the position of the top left corner of the window. This attribute
should be defined in accordance with the resolution used in Windows to obtain a
window without scroll bar. For instance, if you are using a resolution of 640x480
(VGA), your X coordinate can vary from 0 to 640 pixels;
y: an integer with sign (from -32768 to 32767) determining the Y coordinate for
the top left corner of the Application window, in pixels. It is used together with the
X attribute to define the position of top left corner of the window

19.6.3. Tags Attributes


Common Attributes
advised: (Boolean, read only) Used to indicate if the item is in advise, i.e., if the
objects associated to the tag want to be informed always the tag value changes.
alarmDelay: (integer without sign) It is the delay time in ms (milliseconds) that
the tag must remain in the same alarm condition before going active. If alarmDelay
is changed in runtime the delay count is restarted. If delayedAlarm is False, this
property has no effect (see delayedAlarm attribute).
alternateName: (string) Alternate name of tag to be used in the log of Tag
alarms.
alwaysInAdvise: (Boolean) Allows forcing a tag to be in advise (see advised
attribute).
currentAlarm: (integer without sign, read only) Indicates the current alarm
status of tag, as follows: 0, without alarm; 1, LoLo; 2, Low; 3, High and 4, HiHi.
delayedAlarm (Boolean): If True, the alarm must remain the specified time in
the same alarm condition (HI, HIHI, LO, LOLO) before the alarm is activated.
description: (string) Contains a brief description of the tag.
enableAlternateName: (Boolean) Enables the use of an alternate name
(indicated in the alternateName attribute) for the record (log) of tag alarms.
288

Scripts

User Manual

enableReturnLog: (Boolean) Used to enable the log of the return message of


alarm. Returns true (different from zero) if the log is enabled, or false (zero) if not.
name: (string) Contains the tag name, used as identifier of the tag.
returnMessage: (string) Contains the return message of alarm for the tag.
timeStamp: (real, read only) Contains the last date and hour in which the tag
value has been modified.
Attributes of Tag Groups
totalAlarms: (integer without sign, read only) that indicates the number of
active alarms in tags and group subgroups.
Attributes of OPC Tags
quality: An unsigned integer (read-only), indicating OPC tags quality.
Attributes of PLC Tags
autoRead: a Boolean attribute used to enable automatic PLC reading. Returns
true (different from zero) if the automatic reading is enabled, or false (zero) if not. It
should be used together with attribute enableScan, being both due to be marked or
unmarked;
autoWrite: a Boolean attribute used to enable automatic writing in the PLC.
Returns true (different from zero) if the automatic writing is enabled, or false (zero)
if not.
driverName: a string containing the name of the PLC Driver that is connected
to the system; it is used as an identifier for the Driver;
enableScan: a Boolean attribute used to enable the PLC reading. Returns true
(different from zero) if the scan is enabled, or false (zero) if not. It should be used
together with attribute autoRead, being both due to be marked or unmarked;
high1: a real number setting the top limit of the PLC. It is used together with
attribute low1 to define an interval of variation;
high2: a real number setting the top limit of the system. It is used together with
attribute low2 to define an interval of variation;
low1: a real number setting the bottom limit of the PLC. It is used together with
attribute high1 to define an interval of variation;
low2: a real number setting the bottom limit of the system. It is used together
with attribute high2 to define an interval of variation;
n1: an integer with sign (from -32768 to 32767) setting parameter N1 in
accordance with the documentation of the Driver;
Scripts

289

n2: an integer with sign (from -32768 to 32767) setting parameter N2 in


accordance with the documentation of the Driver;
n3: an integer with sign (from -32768 to 32767) setting parameter N3 in
accordance with the documentation of the Driver;
n4: an integer with sign (from -32768 to 32767) setting parameter N4 in
accordance with the documentation of the Driver;
nFailReads: an integer without sign (read only) that indicates the total number
of incorrect readings;
nFailWrites: an integer without sign (read only) that indicates the total number
of incorrect writings;
nOKReads: an integer without sign (read only) that indicates the total number
of successful readings;
nOKWrites: an integer without sign (read only) that indicates the total number
of successful writings;
realScan: a real number (read only) indicating the real time of scan in which
Elipse is being able to read the Tag.
scaling: a Boolean attribute used to enable Scaling of values between the PLC
and the system. Returns true (different from zero) if the Scaling is enabled, or false
(zero) if not. With this attribute as enabled, you can set up attributes low1, high1,
low2 and high2;
scanTime: an integer with sign (from -32768 to 32767) setting the time interval
between two readings;
status: a string (read only) containing the current status of Tag communication:
"Reading", "Writing", "Idle";
Attributes of DDE Tags
computer: a string containing the name of the computer to be connected by
using DDE. It is used as identifier of the computer in a network, and can be changed
during running time.
high1: a real number setting the top limit of the PLC. It is used together with
attribute low1 to define an interval of variation;
high2: a real number setting the top limit of the system. It is used together with
attribute low2 to define an interval of variation;
item: a string containing the name of data to be monitored by the DDE Tag. It is
used as data identifier. In a connection between two Elipse SCADA, this attribute
can be a Tag, in a connection with Excel, this attribute should be declared as RxCy,
where x is the row and y is the column of a specific cell;
290

Scripts

User Manual

low1: a real number setting the bottom limit of the PLC. It is used together with
attribute high1 to define an interval of variation;
low2: a real number setting the bottom limit of the system. It is used together
with attribute high2 to define an interval of variation;
scaling: a Boolean attribute used to enable Scaling of values between the PLC
and the system. Returns true (different from zero) if the Scaling is enabled, or false
(zero) if not. With this attribute as enabled, you can set up attributes low1, high1,
low2 and high2;
server: a string containing the name of the application to be connected by using
DDE. It is used as an identifier of the application in the computer specified for the
connection. For instance, you want to create a DDE connection in the
Elipse_Software computer that is running Elipse SCADA whose DDE name is
ELIPSE$. You can change this attribute during running time;
topic: a string containing the name of the window or work area to be connected
by using DDE. It is used as identifier of a work area in the application server;
Attributes of Demo Tags
delay: an integer setting the number of periods between each generation of value
for the demo Tag. For instance, if it is 1, a value is generated at each period, if it is 2,
a value is generated at each two periods, and so on. It is used together with the
period attribute to control the time interval for the variation of data. The formula
that expresses the frequency of modification of the demo tag is period * delay.
enabled: a Boolean attribute used to enable the simulation of the demo tag data
while the tag is active. Returns true (different from zero) if the simulation of data is
enabled, or false (zero) if not.
highLimit: a real number setting the higher limit of the demo tag. It is used
together with attribute lowLimit to define the interval of variation of the Tag;
increment: a real number determining the increment to be added to data in
accordance with the time frequency specified in period.
lowLimit: a real number setting the lower limit of the demo tag. It is used
together with attribute highLimit to define the interval of variation of the Tag;
period: integer; sets the interval in milliseconds between the generation of each
new value for the demo tag. It is used together with the delay attribute to control the
time interval for the variation of data.
type: an integer setting the type of variation of the demo tag. The variation is
described by a curve, and can have the following types:

Scripts

291

NAME

VALUE

DESCRIPTION

Randomic

data varying in a randomic way

Senoidal

Square Wave

data varying in accordance with a


sin function
data altering between two values

Ascending Ramp

Triangular

Descending Ramp

a graph of saw teeth type in which


data vary from a lower limit to a
higher one
a graph of saw teeth type in which
data vary between two limits
a graph of saw teeth type in which
data vary from a higher limit to a
lower one

Attributes of Block Tags


autoRead: a Boolean attribute used to enable automatic reading of PLC. Returns
true (different from zero) if the automatic reading is enabled, or false (zero) if not. It
should be used together with attribute enableScan, being both due to be marked or
unmarked;
autoWrite: a Boolean attribute used to enable automatic writing in the PLC.
Returns true (different from zero) if the automatic writting is enabled, or false (zero)
if not.
b1: an integer with sign (from -32768 to 32767) setting parameter B1 in
accordance with the documentation of the Driver;
b2: an integer with sign (from -32768 to 32767) setting parameter B2 in
accordance with the documentation of the Driver;
b3: an integer with sign (from -32768 to 32767) setting parameter B3 in
accordance with the documentation of the Driver;
b4: an integer with sign (from -32768 to 32767) setting parameter B4 in
accordance with the documentation of the Driver;
driverName: a string containing the name of the PLC Driver that is connected
to the system; it is used as an identifyer for the Driver;
enableScan: a Boolean attribute used to enable the PLC reading. Returns true
(different from zero) if the scan is enabled, or false (zero) if not. It should be used
together with attribute autoRead, being both due to be marked or unmarked;
nFailReads: an integer without sign (read only) that indicates the total number
of incorrect readings;
nFailWrites: an integer without sign (read only) that indicates the total number
of incorrect writtings;
292

Scripts

User Manual

nOKReads: an integer without sign (read only) that indicates the total number
of successfull readings;
nOKWrites: an integer without sign (read only) that indicates the total number
of successfull writtings;
realScan: a real number (read only) indicating the real sacn time in which Elipse
is being able to read the Tag.
scanTime: an integer with sign (from -32768 to 32767) setting the time interval
between two readings;
size: an integer determining the size of the block to be monitored by Elipse
SCADA.
status: a string (read only) containing the current status of communication of the
Tag: "Reading", "Writing", "Idle";
Attributes of Block Tag elements
high1: a real number setting the top limit of the PLC. It is used together with
attribute low1 to define an interval of variation;
high2: a real number setting the top limit of the system. It is used together with
attribute low2 to define an interval of variation;
index: an integer without sign (from 0 until the total number of elements - 1)
determining the index (initiating by zero) of the element in the block.
low1: a real number setting the bottom limit of the PLC. It is used together with
attribute high1 to define an interval of variation;
low2: a real number setting the bottom limit of the system. It is used together
with attribute high2 to define an interval of variation;
scaling: a Boolean attribute used to enable Scalings of values between the PLC
and the system. Returns true (different from zero) if the Scaling is enabled, or false
(zero) if not. Having this attribute as enabled, you can set up attributes low1, high1,
low2 and high2;
Attributes of Matrix Tags
nColumns: an integer without sign setting up the number of columns of Matrix
Tag.
nRows: an integer without sign setting up the number of rows of Matrix Tag.
Attributes of Chrono Tags
acum: Current value of chronometer;
Scripts

293

autoRestart: Restarts automatically when reaching the preset value;


description: Item description.
enable: Enables/Disables chronometer.
name: The identifier used for reference of item.
resetAcum: Resets accumulator when enabled (restarted)
saveAcum: Saves accumulator when leaving
Attributes of Expression Tags
expression: (string) Contains the very expression of the tag, allowing it to be
modified during running time.
Attributes of RAM Tags
initialValue: (string) Contains an initial value for the tag, and allows this value
to be modified during running time.

19.6.4. Screen Attributes


accessLevel: an integer without sign from 0 to 65535 (read only) determining
the access level of the Screen.
background: a hexadecimal (from 0h to 1000000h) or decimal number (from 0
to 16777215) defining the background color of the Screen. This value can also be
specified by function RGB(r,g,b) in which each component (r,g,b) can vary from 0
to 255. Example: tela1.background = RGB(255,0,0)
bitmapName: a string containing the name of a bitmap used as background in a
Screen. Example:screen.bitmapName = "Leaves.bmp"
border
: Only for windowed screens with a fixed size. A Boolean attribute
determining that the border having width of 1 pixel is shown around the screen.
Returns true (different from zero) if the border is shown, or false (zero) if not.
caption: a Boolean attribute determining that the Tittle Bar is shown on Screen.
Returns true (different from zero) if the Title Bar is shown, or false (zero) if not.
clipChildren: a Boolean attribute, enabling the use of clipping for redrawing the
screen objects relative to the background of it. Returns true (different from zero) if
the clipping is enabled, or false (zero) if not. This attribute should be enabled only if
the screen objects are not overlaped and will not move; otherwise, the desired effect
may not occur.
closeButton: a Boolean attribute determining that the close button should be
shown on Screen. Returns true (different from zero) if the button is shown, or false
(zero) if not.
294

Scripts

User Manual

description: a string containing a brief description of the Tag;


fullScreen: a Boolean attribute determining the type of screen (full or
windowed). Returns true (different from zero) if the screen is full, or false (zero) if
not.
height: an integer without sign (from 0 to 65535) determining the height of the
ScreenA in pixels. It is used together with the width attribute to define the size of the
Screen. This attribute should be defined in accordance with the resolution used in
Windows to obtain a window without scroll bar. For instance, if you are using a
resolution of 640x480 (VGA), parameter height can vary from 0 to 480 pixels;
maximizeButton: a Boolean attribute determining that the maximize button
should be shown on Screen. Returns true (different from zero) if the button is
shown, or false (zero) if not.
minimizeButton: a Boolean attribute determining that the minimize button
should be shown on Screen. Returns true (different from zero) if the button is
shown, or false (zero) if not.
modal: only for windowed screens (fullScreen=0). A Boolean attribute
determining the screen to be or not of modal type (it should be closed so that the
focus goes to other open screens). Returns true (different from zero) if the screen is
modal, or false (zero) if not.
moveable
: a Boolean attribute determining that the Screen can be moved
during running time. Returns true (different from zero) if the Screen can be moved,
or false (zero) if not.
name: a string containing the Screen name, used as Screen identifier;
popup: only for windowed screens (fullScreen=0). A Boolean attribute
determining that the screen is or not of popup type (it is automatically closed when
loosing focus). Returns true (different from zero) if the screen is popup, or false
(zero) if not.
resizeable
: a Boolean attribute determining that the Screen can be
redimensioned during running time. Returns true (different from zero) if the Screen
can be redimensioned, or false (zero) if not.
scrollBars: a Boolean attribute determining that the scroll bar should be shown
on Screen. Returns true (different from zero) if the scroll bar is shown, or false
(zero) if not.
visible: a Boolean attribute determining that the Screen is visible. Returns true
(different from zero) if the screen is visible, or false (zero) if not.
width: an integer without sign (from 0 to 65535) determining the width of the
Screen in pixels. It is used together with attribute height to define the size of the
Screen. This attribute should be defined in accordance with the resolution used in
Scripts

295

Windows to obtain a window without scroll bar. For instance, if you are using a
resolution of 640x480 (VGA), parameter width can vary from 0 to 640 pixels;
x
: an integer with sign (from -32768 to 32767) determining the X coordinate
for top left corner of the Screen, in pixels. It is used together with the Y attribute to
define the position of top left corner of the Screen. This attribute should be defined
in accordance with the resolution used in Windows to obtain a window without
scroll bar. For instance, if you are using a resolution of 640x480 (VGA), your X
coordinate can vary from 0 to 640 pixels;
xOrigin: an integer without sign (from 0 to 65535) determining the X coordinate
for the origin of the Screen, in pixels. It is used together with attribute yOrigin to
define the size of the Screen. This attribute should be defined in accordance with the
resolution used in Windows to obtain a window without scroll bar. For instance, if
you are using a resolution of 640x480 (VGA), parameter xOrigin can vary from 0 to
640 pixels;
y
: an integer with sign (from -32768 to 32767) determining the Y coordinate
for top left corner of the Screen, in pixels. It is used together with the X attribute to
define the position of top left corner of the Screen. This attribute should be defined
in accordance with the resolution used in Windows to obtain a window without
scroll bar. For instance, if you are using a resolution of 640x480 (VGA), your Y
coordinate can vary from 0 to 480 pixels;
yOrigin: an integer without sign (from 0 to 65535) determining the Y coordinate
for the origin of the Screen, in pixels. It is used together with attribute xOrigin to
define the size of the Screen. This attribute should be defined in accordance with the
resolution used in Windows to obtain a window without scroll bar. For instance, if
you are using a resolution of 640x480 (VGA), parameter yOrigin can vary from 0 to
480 pixels;

19.6.5. Attributes of Screen Objects


Screen objects have attributes in common, which appear in all specific objects and
attributes associated to their unique characteristics. Next, we list all of these
attributes.
Common Attributes
accessLevel: (integer) allows attributing a safety level to the object. If 0 (zero),
all users have free access to the object, being able to click and enter data in it. If it is
1 (one) or more, only users with access level lesser or equal can use the object.
enabled: Boolean value that when TRUE, enables the access to the object via
mouse or keyboard. This attribute doesn't affect objects that do not furnish access
via keyboard or mouse (like Display or Gauge).

296

Scripts

User Manual

height: an integer without sign (from 0 to 65535) determining the height of the
object in pixels. It is used together with the height attribute to define the size of the
object
showTip: Boolean value that enables the object by showing a little tip when the
mouse is over it.
visible: Boolean value that indicates if the object is visible for the user (TRUE)
or not (FALSE).
width: an integer without sign (from 0 to 65535) determining the width of the
object in pixels. It is used together with the height attribute to define the size of the
object
x, y: two integers with sign (from -32768 to 32767) determining coordinates X
and Y for the top left corner of the object, in pixels, from the top left corner of the
Screen where the object is.
Alarm Attributes
ackALMColor: a hexadecimal (from 0h to 1000000h) or decimal number (from
0 to 16777215) defining the text color for an Alarm message that is recognized. This
value can also be specified by function RGB (r,g,b) in which each RGB component
can vary from 0 to 255. Example: Alarm.ackAlmColor = RGB(255,0,255)
alarmState: (Boolean) determines that the status column of alarms is shown in
the object. Returns true (different from zero) if the status column is shown, or false
(zero) if not.
alarmType: (Boolean) determines if the column of Alarm type will be shown in
the object: true (different from), it is shown; false (zero), it is not.
comment: (Boolean) determines that the remarks column is shown in the Alarm
object. Returns true (different from zero) if the remarks column is shown, or false
(zero) if not.
commentLength: integer without sign (from 1 to 199) determining the length of
the remark that will be shown. Only available if the comment attribute is enabled;
date: (boolean) determines that the date column is shown in the Alarm object.
Returns true (different from zero) if the date column is shown, or false (zero) if not.
description: a string containing a brief description of the Alarm;
displayTitle: (Boolean) determines that the title bar of the Alarm is shown.
Returns true (different from zero) if the Title Bar is shown, or false (zero) if not.
event: (Boolean) determines that the events column is shown in the Alarm
object. Returns true (different from zero) if the events column is shown, or false
(zero) if not.
Scripts

297

finalPriority: integer without sign (from 1 to 199) determining the bigger


priority of alarm messages to be monitored by the object. Only Alarm messages with
priority inferior to finalPriority will be shown in the object.
initialPriority: integer without sign (from 1 to 199) determining the least
priority of alarm messages to be monitored by the object. Only Alarm messages with
priority bigger than initialPriority will be shown in the object.
largeButtons: (Boolean) enables large buttons in the toolbar of the Alarms
object. Returns true (different from zero) if large buttons are enabled, or false (zero)
if not.
limit: (Boolean) determines that the limits column of alarms is shown in the
object. Returns true (different from zero) if the limits column is shown, or false
(zero) if not.
limitLength: integer without sign (from 1 to 10) determining the length of limits
of Alarms that will be shown. Only available if the limit attribute is enabled;
limitPrec: integer without sign (from 0 to limitLength - 2) determining the
number of decimal digits for limits that will be shown in the Alarm.
name: string containing the Alarm name, used as identifier of the Alarm.
priority: (Boolean) determines that the priorities column of alarms is shown in
the object. Returns true (different from zero) if the priorities column is shown, or
false (zero) if not.
rtnColor: hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the message color of the Alarm. This value can also be specified
by function RGB (r,g,b) in which each RGB component can vary from 0 to 255.
Example:
Alarm.rtnColor = RGB(255,255,0)

tagName: (Boolean) determines that the column of Tag names is shown in the
object. Returns true (different from zero) if the column of Tag names is shown, or
false (zero) if not.
tagNameLength: integer without sign (from 1 to 32) determining the length of
Tag names that will be shown. Only available if the tagName attribute is enabled;
time: (Boolean) determines that the hour column is shown in the Alarm object.
Returns true (different from zero) if the hour column is shown, or false (zero) if not.
titleBarColor: hexadecimal (from 0h to 1000000h) or decimal number (from 0
to 16777215) defining the title row color of the Alarm. This value can also be
specified by function RGB (r,g,b) in which each RGB component can vary from 0 to
255. Example: Alarm.titleBarColor = RGB(255,255,0)
titleTextColor: hexadecimal (from 0h to 1000000h) or decimal number (from 0
to 16777215) defining the title text color of the Alarm. This value can also be
298

Scripts

User Manual

specified by function RGB (r,g,b) in which each RGB component can vary from 0 to
255. Example: Alarm.titleTextColor = RGB(255,255,0).
toolbar: (Boolean) determines that the toolbar of the Alarm object is shown.
Returns true (different from zero) if the toolbar is shown, or false (zero) if not.
toolbarColor: hexadecimal (from 0h to 1000000h) or decimal number (from 0
to 16777215) defining the toolbar color of the Alarm. This value can also be
specified by function RGB (r,g,b) in which each RGB component can vary from 0 to
255. Example: Alarm.toolbarColor = RGB(255,255,0)
type: integer without sign (from 0 to 1) defining the Alarm type, which can be
summarized (0) or history (1). This property is read only.
unAckALMColor: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the text color for an non-recognized Alarm message.
This value can also be specified by function RGB (r,g,b) in which each RGB
component can vary from 0 to 255.
userLength: (integer from 1 to 20) indicates the size of the User column, in
characters.
userName: (Boolean) if true, indicates that the User column should be shown.
value: (Boolean) determines that the column of Tag values is shown in the
Alarm object. Returns true (different from zero) if the column of Tag values is
shown, or false (zero) if not.
valueLength: integer without sign (from 1 to 10) determining the length of Tag
names that will be shown. Only available if the comment attribute is enabled;
valuePrec: integer without sign (from 0 to limitLength - 2) determining the
number of decimal digits for values that will be shown in the Alarm.
windowColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0
to 16777215) defining the background color of the Alarm. This value can also be
specified by function RGB (r,g,b) in which each RGB component can vary from 0 to
255.
Animation Attributes
backgroundColor: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the background color of the Animation. This value
can also be specified by function RGB(r,g,b) in which each component (r,g,b) can
vary from 0 to 255.
BlinkTime: an integer without sign (from 0 to 100) determining the time in ms
of the Animation Blinkinger, i.e., the time in which the default zone will Blinking
alternating with the current zone.
Scripts

299

border: a Boolean attribute determining that the Animation border is shown in


the object. Returns true (different from zero) if the border is shown, or false (zero) if
not.
description: a string containing a brief description of the Animation; Example:
Animation.description = "Animation Object"
enabled: a Boolean attribute used to enable the access of keyboard and mouse to
the Animation object. Returns true (different from zero) if the access is enabled, or
false (zero) if not.
name: a string containing the Animation name, used as Animation identifier;
transparent: a Boolean attribute determining that the Animation background is
transparent. Returns true (different from zero) if the background is transparent, or
false (zero) if not.
Bar Attributes
backgroundColor: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the background color of the Bar Graph. This value
can also be specified by function RGB(r,g,b) in which each component (r,g,b) can
vary from 0 to 255.
barColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the Bar color in the graph. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
bipolar: a Boolean attribute determining that the Bar Graph is bipolar, therefore,
the bars have two sides divided by a center. The bars grow from the center in the
direction of the graph limits. Returns true (different from zero) if the Bar Graph is
bipolar, or false (zero) if not.
bottomRange: a real number setting up the minimum value for the Bar Graph. It
is used together with attribute topRange to define an interval of values for the Bar;
bottomRuler: a Boolean attribute determining that a ruler of values is shown in
the lower part of the Bar Graph. Returns true (different from zero) if the inferior
ruler is shown, or false (zero) if not.
description: a string containing a brief description of the Bar Graph;
enable3D: a Boolean attribute used to enable a 3D effect in the Bar. Returns true
(different from zero) if the 3D effect is enabled, or false (zero) if not.
enableRuler: a Boolean attribute determining that a ruler of values is shown in
the Bar Graph. Returns true (different from zero) if the ruler is shown, or false (zero)
if not.
gridColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the grid color and divisions of the Bar Graph. This value can
300

Scripts

User Manual

also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
label
: a string containing the measurement unit to be shown in the ruler.
Example: Barra1.label = "MHz"
labelEnable: a Boolean attribute determining that the ruler label is shown in the
Bar Graph. Returns true (different from zero) if the ruler label is shown, or false
(zero) if not.
leftRuler: a Boolean attribute determining that a ruler of values is shown at the
left side of the Bar Graph. Returns true (different from zero) if the ruler at the left is
shown, or false (zero) if not.
middle: a real number determining the center of the bipolar bars. Only available
if the middle attribute is enabled;
name: a string containing the name of the Bar Graph, used as Bar identifier;
orientation: an integer without sign determining the orientation of the Bar
Graph, in accordance with the following table:
VALUE

1
5
2
6

ORIENTATION

Vertical, top down


Vertical, bottom up
Horizontal left right
Horizontal right left

rightRuler: a Boolean attribute determining that a ruler of values is shown at the


right side of the Bar Graph. Returns true (different from zero) if the ruler at the right
is shown, or false (zero) if not.
rulerColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the Bar Graph ruler color. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
rulerDivisions: an integer without sign (de 0 a 100) determining the number of
divisions of the Bar Graph ruler. Only available if the enableRuler attribute is
enabled;
spacing: an integer without sign (from 0 to 10) determining the space (in pixels)
between the graph bars;
textColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the text color of the ruler. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
thickness: an integer without sign configuring the width of the 3D effect of the
bar (in pixels);
topRange: a real number setting up the maximum value for the Bar Graph. It is
used together with attribute bottomRange to define an interval of values for the Bar;
Scripts

301

topRuler: a Boolean attribute determining that a ruler of values is shown on the


top part of the Bar Graph. Returns true (different from zero) if the top ruler is
shown, or false (zero) if not.
Browser Attributes
ascending: a Boolean attribute determining the order of records to be shown in
the Browser. Returns true (different from zero) if the order is ascending, or false
(zero) if descending. The default is ascending;
backColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the color of the area outside the Browser table. This value can
also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
completeRows: an integer without sign (from 0 to 65535) determining the
number of completely visible rows, not including the last row if it is partly visible.
curSel: an integer without sign (from 0 to 65535) determining the number of the
selected record (read only). Returns -1 if no row is selected;
description: a string containing a brief description of the Browser;
firstRec: an integer without sign (from 0 to 65535) determining the number of
the record selected to be seen (read only).
gridColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the color of the Browser grid rows. This value can also be
specified by function RGB(r,g,b) in which each component (r,g,b) can vary from 0
to 255.
lastRec: an integer without sign (from 0 to 65535) determining the number of
last record selected to be seen (read only).
name: a string containing the Browser name, used as identifier of the Browser.
rowColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the background color of the non-selected Browser rows. This
value can also be specified by function RGB(r,g,b) in which each component (r,g,b)
can vary from 0 to 255.
rowTextColor: a hexadecimal (from 0h to 1000000h) or decimal number (from
0 to 16777215) defining the text color of the non-selected Browser rows. This value
can also be specified by function RGB(r,g,b) in which each component (r,g,b) can
vary from 0 to 255.
selColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the background color of current row selected in the Browser.
This value can also be specified by function RGB(r,g,b) in which each component
(r,g,b) can vary from 0 to 255.

302

Scripts

User Manual

selTextColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0


to 16777215) defining the text color of current row selected in the Browser. This
value can also be specified by function RGB(r,g,b) in which each component (r,g,b)
can vary from 0 to 255.
titleColor: hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the title row color of the Browser. This value can also be
specified by function RGB(r,g,b) in which each component (r,g,b) can vary from 0
to 255.
titleTextColor: hexadecimal (from 0h to 1000000h) or decimal number (from 0
to 16777215) defining the title text color of the Browser. This value can also be
specified by function RGB(r,g,b) in which each component (r,g,b) can vary from 0
to 255.
topRow: an integer without sign (from 0 to 65535) determining the number of
the record shown on the first visible row (read only).
visibleRows: an integer without sign (from 0 to 65535) determining the number
of visible rows, including the last one, even if it only appears partly (read only).
Button Attributes
backgroundColor0: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the Button color when in normal state (not pressed).
This value can also be specified by function RGB(r,g,b) in which each component
(r,g,b) can vary from 0 to 255.
backgroundColor1: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the Button color when it is pressed. This value can
also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
bitmap0: a string containing the bitmap name to be shown as background of a
Button when in normal state (not pressed);
bitmap1: a string containing the bitmap name to be shown as the background of
a Button when pressed;
buttonAction: an integer without sign (from 0 to 2) determining the type of
action of the button, which can be Momentary (0), On-Off (Toggle) (1) or Jog (2);
buttonType: an integer without sign (from 0 to 6) determining the button type
from 7 types available:

Scripts

303

buttonType = 0
buttonType = 1
buttonType = 2
buttonType = 3
buttonType = 4
buttonType = 5
buttonType = 6

description: a string containing a brief description of the Button;


goToScreen: Only for the use of Elipse SCADA. It is not allowed modifications
on the part of users.
name: a string containing the Button name, used as identifier of the Button.
text0: a string containing the text that will be shown in the Button when it is in
normal state (not pressed);
text1: a string containing the text that will be shown in the Button when it is
pressed;
textColor0: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the Button text color when in normal state (not pressed). This
value can also be specified by function RGB(r,g,b) in which each component (r,g,b)
can vary from 0 to 255.
textColor1: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the Button text when it is pressed. This value can also be
specified by function RGB(r,g,b) in which each component (r,g,b) can vary from 0
to 255.
value0: an integer without sign (frm 0 to 65535) determining the Button value
when in normal state (not pressed);
value1: an integer without sign (from 0 to 65535) determining the Button value
when pressed:
visible: a Boolean attribute determining that the Button is visible. Returns true
(different from zero) if the Button is shown, or false (zero) if not.
304

Scripts

User Manual

width: an integer without sign (from 0 to 65535) determining the width of the
Button in pixels. It is used together with the height attribute to define the size of the
Button
x: an integer with sign (from -32768 to 32767) determining the X coordinate for
the top left corner of the Button, in pixels. It is used together with the Y attribute to
define the position of the top left corner of the Button from the origin of screen (0,0)
y: an integer with sign (from -32768 to 32767) determining the Y coordinate for
the top left corner of the Button, in pixels. It is used together with the X attribute to
define the position of the top left corner of the Button from the origin of screen (0,0)
Display Attributes
backgroundColor: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the background color of the Display. This value can
also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
description: a string containing a brief description of the Display;
enabled: a Boolean attribute used to enable the access of keyboard and mouse to
the Display object. Returns true (different from zero) if the access is enabled, or
false (zero) if not.
height: an integer without sign (from 0 to 65535) determining the height of the
Display, in pixels. It is used together with the width attribute to define the size of the
Display;
horizontalAlign: an integer without sign (from 0 to 2) determining the
horizontal alignment for data to be shown in Display, in accordance with the table
below:
VALUE

0
1
2

ALIGNMENT

Left
Center
Right

multiLine: a Boolean attribute used to enable multiline in the Display. Returns


true (different from zero) if the use of multiline is enabled, or false (zero) if not.
name: a string containing the Display name, used as identifier of the Display.
precision: an integer without sign (from 0 to 254) determining the number of
decimals to be shown on Display. It can never be bigger than the size attribute.
prefix: a string containing a prefix to be shown before the value of Tag
associated to the Display;
size: an integer without sign (from 0 to 255) determining the size of data to be
shown on Display.
Scripts

305

showTip: a Boolean attribute that enables the object to show a Tip when the
mouse is over it. Returns true (different from zero) if the tip is enabled, or false
(zero) if not.
suffix: a string containing a sufix to be shown after the Tag value associated to
the Display;
textColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the text color of the Display. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
type: an integer without sign (from 1 to 2) determining the data type to be shown
in the Display, which can be a string (1) or a number (2).
verticalAlign: an integer without sign (from 0 to 2) determining the vertical
alignment for data to be shown in Display, in accordance with the table below:
VALUE

0
1
2

ALIGNMENT

Top
Center
Bottom

visible: a Boolean attribute determining that the Display is visible. Returns true
(different from zero) if the Display is visible, or false (zero) if not.
width: an integer without sign (from 0 to 65535) determining the width of the
Display, in pixels. It is used together with the height attribute to define the size of
the Display
x: an integer with sign (from -32768 to 32767) determining the X coordinate for
the top left corner of the Display, in pixels. It is used together with the Y attribute to
define the position of the top left corner of the Display from the origin of screen
(0,0)
y: an integer with sign (from -32768 to 32767) determining the Y coordinate for
the top left corner of the Display, in pixels. It is used together with the X attribute to
define the position of the top left corner of the Display from the origin of screen
(0,0)
Gauge Attributes
backgroundColor: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the background color of the Gauge. This value can
also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
bulletsVisible: a Boolean attribute determining that ticks are shown under the
form of bullets. Returns true (different from zero) if the bullets are shown, or false
(zero) if not;

306

Scripts

User Manual

decimalPlaces: an integer without sign (from 0 to 65535) determining the


number of decimals to be used in the formatting of Gauge values.
description: a string containing a brief description of the Gauge;
enabled: a Boolean attribute used to enable the access of keyboard and mouse to
the Gauge object. Returns true (different from zero) if the access is enabled, or false
(zero) if not.
frameColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0
to 16777215) defining the Gauge frame color. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
frameVisible: a Boolean attribute determining that a frame is shown along the
path of the Gauge needle. Returns true (different from zero) if the frame is shown, or
false (zero) if not.
height: an integer without sign (from 0 to 65535) determining the height of the
Gauge, in pixels. It is used together with the width attribute to define the size of the
Gauge;
hiColorLegend: an hexadecimal (de 0h a 1000000h) or decimal number (from 0
to 16777215) defining the legend color for the interval of values specified as High.
This value can also be specified by function RGB(r,g,b) in which each component
(r,g,b) can vary from 0 to 255.
hiDiv: a real number setting up the value of the bottom limit of the High
interval;
hiHiColorLegend: an hexadecimal (de 0h a 1000000h) or decimal number
(from 0 to 16777215) defining the legend color for the interval of values specified as
High-High. This value can also be specified by function RGB(r,g,b) in which each
component (r,g,b) can vary from 0 to 255.
hiHiDiv: a real number setting up the value of the bottom limit of the High-High
interval;
hiLimit: a real number in the interval [0,1], setting up the position of the top
border of the Gauge legend. It is used together with attribute lowLimit to define the
thickness of the legend;
isHiHiLimitVisible: a Boolean attribute determining that the HighHigh interval
of Gauge values will be shown in the legend. Returns true (different from zero) if
the HighHigh interval is shown, or false (zero) if not.
isHiLimitVisible: a Boolean attribute determining that the High interval of
Gauge values will be shown in the legend. Returns true (different from zero) if the
High interval is shown, or false (zero) if not.

Scripts

307

isLowLimitVisible: a Boolean attribute determining that the Low interval of


values of Gauge will be shown in the legend. Returns true (different from zero) if
the Low interval is shown, or false (zero) if not.
isLowLowLimitVisible: a Boolean attribute determining that the interval of
LowLow values of Gauge will be shown in the legend. Returns true (different from
zero) if the LowLow interval shown, or false (zero) if not.
legendVisible: a Boolean attribute determining that the legend is shown in the
Gauge. Returns true (different from zero) if the marks are shown, or false (zero) if
not;
limitVisible: a Boolean attribute determining that the Gauge limits are shown.
Returns true (different from zero) if the limits are shown, or false (zero) if not;
lowColorLegend: an hexadecimal (de 0h a 1000000h) or decimal number (from
0 to 16777215) defining the legend color for the interval of values specified as Low.
This value can also be specified by function RGB(r,g,b) in which each component
(r,g,b) can vary from 0 to 255.
lowDiv: a real number setting up the value of the top limit of the Low interval;
lowLimit: a real number in the interval [0,1], setting up the position of the
bottom border of the Gauge legend. It is used together with attribute hiLimit to
define the thickness of the legend;
lowLowColorLegend: an hexadecimal (de 0h a 1000000h) or decimal number
(from 0 to 16777215) defining the legend color for the interval of values specified as
Low-Low. This value can also be specified by function RGB(r,g,b) in which each
component (r,g,b) can vary from 0 to 255.
lowLowDiv: a real number setting the value of the top limit of the Low-Low
interval;
maximum: a real number setting up the maximum value for the Gauge. It is
used together with attribute minimum to define an interval of values for the Gauge;
minimum: a real number setting up the minimum value for the Gauge. It is used
together with attribute maximum to define an interval of values for the Gauge;
name: a string containing the Gauge name, used as Gauge identifier.
needleColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0
to 16777215) defining the Gauge needle color. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
needleThickness: an integer without sign (from 1 to 2) determining the
thickness of the Gauge needle, which can be a thin (1) or thick pointer(2);
normalColor: an hexadecimal (de 0h a 1000000h) or decimal number (from 0
to 16777215) defining the legend color for the interval of values specified as normal.
This value can also be specified by function RGB(r,g,b) in which each component
(r,g,b) can vary from 0 to 255.
308

Scripts

User Manual

orientation: an integer without sign (from 0 to 3) determining the orientation of


the Gauge graph as follows:
Gauge1.orientation = 0
Gauge1.orientation = 1
Gauge1.orientation = 2
Gauge1.orientation = 3

points: an integer without sign (de 0 a 65535) determining the number of points
in the Gauge ruler. Some points cannot be shown if many points are defined for a
small Gauge.
showTip: a Boolean attribute that enables the object to show a Tip when the
mouse is over it. Returns true (different from zero) if the tip is enabled, or false
(zero) if not.
startAngle: a real number setting up the initial angle of the Gauge needle;
subTicksColor: a hexadecimal (from 0h to 1000000h) or decimal number (from
0 to 16777215) defining the color of Gauge sub-ticks. This value can also be
specified by function RGB(r,g,b) in which each component (r,g,b) can vary from 0
to 255.
subTicksVisible: a Boolean attribute determining that sub-ticks are shown
between main ticks. Returns true (different from zero) if the sub-ticks are shown, or
false (zero) if not;
textColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the text color that will be shown in the Gauge. This value can
also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
thickTicks: a Boolean attribute determining that main Gauge ticks are thick.
Returns true (different from zero) if the ticks are thick, or false (zero) if not;
tickColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the color of main Gauge ticks. This value can also be specified
by function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
ticksValues: a Boolean attribute determining that values of ticks are shown in
the Gauge. Returns true (different from zero) if the values are shown, or false (zero)
if not;
Scripts

309

ticksVisible: a Boolean attribute determining that main ticks are shown in the
Gauge. Returns true (different from zero) if the ticks are shown, or false (zero) if
not;
totalNumberOfSubticks: an integer without sign (from 0 to 9) determining the
total number of sub-ticks to be shown between main ticks.
valueVisible: a Boolean attribute determining that the Gauge value will be
shown. Returns true (different from zero) if the Gauge value is shown, or false
(zero) if not.
visible: a Boolean attribute determining that the Gauge is visible. Returns true
(different from zero) if the Gauge is visible, or false (zero) if not.
width: an integer without sign (from 0 to 65535) determining the width of the
Gauge, in pixels. It is used together with the height attribute to define the size of the
Gauge
x: an integer with sign (from -32768 to 32767) determining the X coordinate for
the top left corner of the Gauge, in pixels. It is used together with the Y attribute to
define the position of the top left corner of the Gauge from the origin of screen (0,0)
y: an integer with sign (from -32768 to 32767) determining the Y coordinate for
the top left corner of the Gauge, in pixels. It is used together with the X attribute to
define the position of the top left corner of the Gauge from the origin of screen (0,0)
Setpoint Attributes
autoSend: (Boolean) When in 1 (one), sends automatically data inserted in the
control to the associated tag when it looses focus.
backgroundColor: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the background color of the SetPoint. This value can
also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
checkMaximum: (Boolean) Used to enable the verification of the SetPoint
value having the maximum value specified for it. Returns true (different from zero)
if the verification is enabled, or false (zero) if not.
checkMinimum: (Boolean) Used to enable the verification of the SetPoint value
having the minimum value specified for it. Returns true (different from zero) if the
verification is enabled, or false (zero) if not.
dateFormat: (string) Defines a format to show and insert data of Date/Time in a
setpoint. Example: "dd/mm/yy hh:mm:ss" will be shown as "02/07/97 18:35:22".

310

Scripts

User Manual

Date/Time formats for attribute dateFormat


FORMAT

w
W
ww
WW
d
dd
m
mm
mmm
MMM
mmmm
MMMM
mmmmm
MMMMM
yy
YY
h
hh
m
mm
s
ss
AM/PM

MEANING

Week day (Sun Sat)


Week day (SUN SAT)
Week day (Sunday Saturday)
Week day (SUNDAY SATURDAY)
Day (1 31)
Day (01 31)
Month (1 12)
Month (01 12)
Month (Jan Dec)
Month (JAN DEC)
Month (January December)
Month (JANUARY DECEMBER)
Month (j d)
Month (J D)
Year (00 99)
Year (1970 9999)
Hour (0 23)
Hour (00 23)
Minute (0 59) (should be accompanying hours or followed by
seconds)
Minute (00 59) (should be accompanying hours or followed
by seconds)
Second (0 59)
Second (00 59)
Hour in the 12 hours format, shows AM (morning) and PM
(afternoon).

am/pm

Hour in the 12 hours format, shows am and pm.

A/P

Hour in the 12 hours format, shows A and P.

a/p

Hour in the 12 hours format, shows A and P.


Tenths of a second (should be preceded by seconds)
Hundredths of a second (should be preceded by seconds)
Thousandths of a second (should be preceded by seconds)
New row (CR + LF)

0
00
000
|

description: (string) Contains a brief description of the SetPoint.


enabled: (Boolean) Used to enable the access of keyboard and mouse to the
Setpoint object. Returns true (different from zero) if the access is enabled, or false
(zero) if not.

Scripts

311

height: an integer without sign (from 0 to 65535) determining the height of the
SetPoint, in pixels. It is used together with the width attribute to define the size of
the SetPoint;
horizontalAlign: an integer without sign (from 0 to 2) determining the
horizontal alignment for data to be shown in SetPoint, in accordance with the table
below: 0, to the left; 1, center, or 2, to the right.
maximum: a real number setting up the maximum value for the SetPoint. It is
used together with attribute minimum to define an interval of values for the SetPoint;
minimum: a real number setting up the minimum value for the SetPoint. It is
used together with attribute maximum to define an interval of values for the
SetPoint;
multiLine
: a Boolean attribute used to enable multiline in the SetPoint.
Returns true (different from zero) if the use of multiline is enabled, or false (zero) if
not.
name: (string) Contains the SetPoint name, used as identifier of the SetPoint.
precision: an integer without sign (from 0 to 254) determining the number of
decimals to be shown in SetPoint. It can never be bigger than the size attribute.
prefix: a string containing a prefix to be shown before the value of the Tag
associated to the SetPoint; Example: SetPoint.prefix = "Weight"
refresh: a Boolean attribute determining that the SetPoint value is automatically
refreshd if any modification occurs in the associated Tag. Returns true (different
from zero) if the automatic updating is enabled, or false (zero) if not.
selectAll: a Boolean attribute determining that all characters of SetPoint are
selected when the object receives the focus. Returns true (different from zero) if the
selection of all characters is enabled, or false (zero) if not.
showTip: a Boolean attribute that enables the object to show a Tip when the
mouse is over it. Returns true (different from zero) if the Tip is enabled, or false
(zero) if not.
size: an integer without sign (from 0 to 255) determining the size of data to be
shown in the SetPoint.
suffix: a string containing a suffix to be shown after the value of the Tag
associated to the SetPoint; Example: SetPoint.suffix = "Kg"
textColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the text color that will be shown in the SetPoint. This value can
also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
type: an integer without sign (from 1 to 2) determining the data type to be shown
in the SetPoint, which can be a string (1) or a number (2).
312

Scripts

User Manual

verticalAlign: an integer without sign (from 0 to 2) determining the vertical


alignment for data to be shown in SetPoint, in accordance to the table below: 0, from
the top; 1, center, and 2, from the bottom.
visible: a Boolean attribute determining that the SetPoint is visible. Returns true
(different from zero) if the SetPoint is visible, or false (zero) if not.
width: an integer without sign (from 0 to 65535) determining the width of the
SetPoint, in pixels. It is used together with the height attribute to define the size of
the SetPoint
x: an integer with sign (from -32768 to 32767) determining the X coordinate for
the top left corner of the SetPoint, in pixels. It is used together with the Y attribute to
define the position of the top left corner of the SetPoint from the origin of screen
(0,0)
y: an integer with sign (from -32768 to 32767) determining the Y coordinate for
the top left corner of the SetPoint, in pixels. It is used together with the X attribute to
define the position of the top left corner of the SetPoint from the origin of screen
(0,0)
Slider Attributes
description: a string containing a brief description of the Slider;
enabled: a Boolean attribute used to enable the access of keyboard and mouse to
the Slider object. Returns true (different from zero) if the access is enabled, or false
(zero) if not.
frameColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0
to 16777215) defining the Slider frame color. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
height: an integer without sign (from 0 to 65535) determining the height of the
Slider, in pixels. It is used together with the width attribute to define the size of the
Slider;
name: a string containing the Slider name, used as identifier of the Slider.
orientation: an integer without sign (from 0 to 1) determining the orientation of
the Slider. Returns 0 (zero) if the Slider is horizontal, or 1 (one) if vertical;
precision: an integer without sign (from 0 to 254) determining the number of
decimals to be shown in limits and in the visible value of the Slider.
rangeMaximum: a real number setting up the maximum value for the Slider. It
is used together with attribute rangeMinimum to define an interval of values for the
Slider;

Scripts

313

rangeMinimum: a real number setting up the minimum value for the Slider. It
is used together with attribute rangeMaximum to define an interval of values for the
Slider;
showRange: a Boolean attribute determining that the limits of the Slider are
shown. Returns true (different from zero) if the limits are shown, or false (zero) if
not;
showTip: a Boolean attribute that enables the object to show a Tip when the
mouse is over it. Returns true (different from zero) if the tip is enabled, or false
(zero) if not.
showValue: a Boolean attribute determining that the Slider value will be shown.
Returns true (different from zero) if the Slider value is shown, or false (zero) if not.
step: a real number to be incremented or decremented from the Slider value
when its arrows are pressed;
textColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the text color that will be shown in the Slider. This value can
also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
updateOnRelease: a Boolean attribute determining that the Slider value is
refreshd when the mouse button is released after moving the Slider lever. Returns
true (different from zero) if the Slider is refreshd when its lever is moved, or false
(zero) if not.
visible: a Boolean attribute determining that the Slider is visible. Returns true
(different from zero) if the Slider is visible, or false (zero) if not.
width: an integer without sign (from 0 to 65535) determining the width of the
Slider, in pixels. It is used together with the height attribute to define the size of the
Slider;
x: an integer with sign (from -32768 to 32767) determining the X coordinate for
the top left corner of the Slider, in pixels. It is used together with the Y attribute to
define the position of the top left corner of the Slider from the origin of screen (0,0)
y: an integer with sign (from -32768 to 32767) determining the Y coordinate for
the top left corner of the Slider, in pixels. It is used together with the X attribute to
define the position of the top left corner of the Slider from the origin of screen (0,0)
Text Attributes
description: a string containing a brief description of the Text;
enabled: a Bboolean attribute used to enable the access of keyboard and mouse
to the Text object. Returns true (different from zero) if the access is enabled, or false
(zero) if not.

314

Scripts

User Manual

height: an integer without sign (from 0 to 65535) determining the height of the
Text, in pixels. It is used together with the width attribute to define the size of the
Text;
name: a string containing the Text name, used as identifier for the Text.
showTip: a Boolean attribute that enables the object to show a Tip when the
mouse is over it. Returns true (different from zero) if the tip is enabled, or false
(zero) if not.
visible: a Boolean attribute determining that the Text is visible. Returns true
(different from zero) if the Text is visible, or false (zero) if not.
width: an integer without sign (from 0 to 65535) determining the width of the
Text, in pixels. It is used together with the height attribute to define the size of the
Text;
x: an integer with sign (from -32768 to 32767) determining the X coordinate for
top left corner of the Text, in pixels. It is used together with the Y attribute to define
the position of the top left corner of the Text from the origin of screen (0,0)
y: an integer with sign (from -32768 to 32767) determining the Y coordinate for
the top left corner of the Text, in pixels. It is used together with the X attribute to
define the position of the top left corner of the Text from the origin of screen (0,0)
Trend Attributes
description: a string containing a brief description of the trend;
enabled: a Boolean attribute used to enable the access of keyboard and mouse to
the trend object. Returns true (different from zero) if the access is enabled, or false
(zero) if not.
enableDataRec: a Boolean attribute used to enable the trend to collect new
value whenever the Tags associated to it change. Returns true (different from zero)
if the values are collected, or false (zero) if not;
frozen: a Boolean attribute used to enable/disable the automatic scroll of Trend.
Returns true (different from zero) if the Trend is frozen, or false (zero) the scroll is
enabled (default).
height: an integer without sign (from 0 to 65535) determining the height of the
Trend, in pixels. It is used together with the width attribute to define the size of the
Trend.
isXY: a Boolean attribute. Only for the use of Elipse SCADA. It is not allowed
modifications on the part of users.
name: a string containing the Trend name, used as identifier of the Trend.

Scripts

315

orientation: an integer without sign (from 0 to 3) determining the orientation of


the Trend, in accordance with the following table:
VALUE

0
1
2
3

ORIENTATION

Horizontal right to left


Horizontal left to right
Vertical, top down
Vertical, bottom up

showTip: a Boolean attribute that enables the object to show a Tip when the
mouse is over it. Returns true (different from zero) if the tip is enabled, or false
(zero) if not.
timeSpan: a real number determining the time to be visualized in the Trend in
seconds.
visible: a Boolean attribute determining if the trend is visible. Returns true
(different from zero) if the trend is visible, or false (zero) if not.
width: an integer without sign (from 0 to 65535) determining the width of the
Trend in pixels. It is used together with the height attribute to define the size of the
Trend.
x: an integer with sign (from -32768 to 32767) determining the X coordinate for
the top left corner of the Trend, in pixels. It is used together with the Y attribute to
define the position of the top left corner of the Trend from the origin of screen (0,0)
y: an integer with sign (from -32768 to 32767) determining the Y coordinate for
the top left corner of the Trend, in pixels. It is used together with the X attribute to
define the position of the top left corner of the Trend from the origin of screen (0,0)
Frame Attributes
borderColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0
to 16777215) defining the Frame border color. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
borderEnabled: a Boolean attribute determining that the Frame border is
shown. Returns true (different from zero) if the border is shown, or false (zero) if
not.
borderThickness: an integer without sign (from 0 to 255) determining the
thickness of the Frame.
color: an hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the tick color. This value can also be specified by function
RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
description: a string containing a brief description of the Frame;
enable3D: a Boolean attribute used to enable a 3D effect in the Frame. Returns
true (different from zero) if the 3D effect is enabled, or false (zero) if not.
316

Scripts

User Manual

frame: a Boolean attribute determining that the Frame will be shown. Returns
true (different from zero) if the Frame is shown, or false (zero) if not.
name: a string containing the Frame name, used as Frame identifier;
separator: a Boolean attribute determining that a separation row of the title is
shown. Returns true (different from zero) if the row is shown, or false (zero) if not.
set3DInset: a Boolean attribute determining that the 3D effect is in the inside or
outside part of the Frame. Returns true (different from zero) if the 3D effect is
shown inside, or false (zero) if outside.
thickness3D: an integer without sign (from 0 to 255) determining the thickness
of the 3D effect in the Frame.
title: a string containing the Frame title;
titleColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the text color of the title. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
titleEnabled: a Boolean attribute determining that the Frame title will be shown.
Returns true (different from zero) if the title is shown, or false (zero) if not.

19.6.6. Plotter Attributes


autoRangeX: a Boolean attribute determining that the limits of X axis in the
graph are automatically calculated. Returns true (different form zero) if the
automatic calculation for the limits of X-axis is enabled, or false (zero) if not;
autoRangeY: a boolean attribute determining that the limits of Y axis in the
graph are automatically calculated. Returns true (different form zero) if the
automatic calculation for the limits of Y-axis is enabled, or false (zero) if not;
backgroundColor: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the background color of the Plotter. This value can
also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
backRulerColor: a hexadecimal (from 0h to 1000000h) or decimal number
(from 0 to 16777215) defining the background color of the Plotter. This value can
also be specified by function RGB(r,g,b) in which each component (r,g,b) can vary
from 0 to 255.
bottomLimit: a real number setting up the bottom limit to be shown in the ruler
of Y axis. It is used together with attribute topLimit to define an interval of values;
bottomRuler: a Boolean attribute determining that a ruler of values is shown at
the bottom part of the Plotter. Returns true (different from zero) if the inferior ruler
is shown, or false (zero) if not.
Scripts

317

bShowMsec: a Boolean attribute determining that the milliseconds are shown in


Plotter. Returns true (different from zero) if the milliseconds are shown, or false
(zero) if not;
description: a string containing a brief description of the Plotter;
enableXUnit: a Boolean attribute determining that the unit of X axis will be
shown in Plotter. Returns true (different from zero) if the unit of X axle is shown, or
false (zero) if not.
enableYUnit: a Boolean attribute determining that the unit of Y axis will be
shown in Plotter. Returns true (different from zero) if the unit of Y axle is shown, or
false (zero) if not.
gridColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the grid color of the Plotter. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
gridVisible: a Boolean attribute determining that the Plotter border is shown.
Returns true (different from zero) if the grid is shown, or false (zero) if not.
gridX: an integer without sign (from 0 to 65535) determining the number of
divisions in X axis;
gridY: an integer without sign (from 0 to 65535) determining the number of
divisions in Y axis;
leftLimit: a real number setting up the left limit to be shown in the ruler of X
axis. It is used together with attribute rightLimit to define an interval of values;
leftRuler: a Boolean attribute determining that a ruler of values is shown at the
left of the Plotter. Returns true (different from zero) if the ruler at the left is shown,
or false (zero) if not.
name: a string containing the Plotter name, used as Plotter identifier;
rightLimit: a real number setting up the right limit to be shown in the ruler of X
axis. It is used together with attribute leftLimit to define an interval of values;
rightRuler: a Boolean attribute determining that a ruler of values is shown at the
right side of the Plotter. Returns true (different from zero) if the ruler at the right is
shown, or false (zero) if not.
rulerColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the Plotter ruler color. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
topLimit: a real number setting up the top limit to be shown in the ruler of Y
axis. It is used together with attribute bottomLimit to define an interval of values;
topRuler: a Boolean attribute determining that a ruler of values is shown at the
top part of the Plotter. Returns true (different from zero) if the top ruler is shown, or
false (zero) if not.
318

Scripts

User Manual

xUnit: a string containing the name of the unit to be shown in X axis;


yUnit

: a string containing the name of the unit to be shown in Y axis;

Cursor Attributes
barCalc: Specifies the calculation method for bar value, as follows:
0 = Medium; 1 = Maximum; 2 = Minimum; 3 = By Sample.
barWidth: Defines X axis bars width by sample.
bottomWorld: Specifies charts inferior data value.
description: Contains objects description.
leftWorld: Specifies charts left data value.
mode: Contains cursors operation mode, as follows: 0 = None; 1 = Selection
Mode; 2 = Zoom Mode; 3 = Scroll Mode.
name: Contains the name identifying the object.
penColor: Specifies cursor pens color. The range of valid values goes from
0h to 1000000h (in hexadecimal values) or from 0 to 16777215 (in decimal values).
You can also use RGB() function to specify this color.
penStyle: Specifies cursor pens style, as follows: 0 = Solid; 1 = Dash; 2 = Dot;
3 = Dash-Dot; 4 = Dash-Dot-Dot.
penType: Specifies cursor pens type, as follows: 1 = Line; 2 = Bar; 3 = Area.
penVisible: Boolean attribute indicating whether the pen is visible (True) or not
(False).
penWidth: Defines pen width, in pixels (integers from 0 to 65,535).
rangeType: Specifies cursor selection, as follows: 0 = no selection; 1 = the
selection is a point; 2 = the selection is a retangle.
rangeX1: Specifies the first range value of the coordinate X, when rangeType
is 2.
rangeX2: Specifies the last range value of the coordinate X, when rangeType is
2.
rangeY1: Specifies the first range value of the coordinate Y, when rangeType
is 2.
rangeY2: Specifies the last range value of the coordinate Y, when rangeType is
2.
rightWorld: Specifies charts right data value (rangeType must be 2).
Scripts

319

selLabel: Name of selected pen.


selRecord: Number of the selected record; if the value is -1, there will be no
selection.
selX: Specifies the X coordinate at the selected point (rangeType = 1).
selY: Specifies the Y coordinate at the selected point (rangeType = 1).
topWorld: Specifies charts top data value.
vLock: If True (not zero), specifies that the vertical limits of the chart are locked
in zoom or scroll mode.
Pens Attributes
description: a string containing a brief description of the Pen;
name: a string containing the Pen name, used as Pen identifier;
penColor: an hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the Pen color. This value can also be specified by function
RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
penStyle: an integer without sign (from 0 to 4) determining the tick style, in
accordance with the following table:
VALUE

0
1
2
3
4

STYLE

Solid
Dashed
Dotted
Dash-Dot
Dash-Dot-Dot

penVisible: a Boolean attribute determining that the Pen is shown. Returns true
(different from zero) if the Pen is shown, or false (zero) if not.
penWidth: an integer without sign (from 0 to 65535) determining the width of
the Pen in pixels.
Tick Attributes
description: a string containing a brief description of the Tick;
name: a string containing the Tick name, used as Tick identifier;
markType: an integer without sign (from 0 to 2) determining the Tick type, in
accordance with the following table:

320

Scripts

User Manual
VALUE

0
1
2

TYPE

Point
Vertical
Horizontal

penColor: an hexadecimal (from 0h to 1000000h) or decimal number (from 0 to


16777215) defining the Tick color. This value can also be specified by function
RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
penStyle: an integer without sign (from 0 to 4) determining the Tick style, in
accordance with the following table:
VALUE

0
1
2
3
4

STYLE

Solid
Dashed
Dotted
Dash-Dot
Dash-Dot-Dot

penVisible: a Boolean attribute determining that the Tick will be shown.


Returns true (different from zero) if the Tick is shown, or false (zero) if not.
penWidth: an integer without sign (from 0 to 65535) determining the width of
the Tick in pixels.
x: a real number determining the X coordinate of Tick in pixels. It is used
together with the Y attribute to define the position of Tick from the origin of the
graph (0,0);
y: a real number determining the Y coordinate of Tick in pixels. It is used
together with the X attribute to define the position of Tick from the origin of the
graph (0,0);

19.6.7. Alarms Attributes


description: a string containing a brief description of the Alarm;
displayMessageBox
: a Boolean attribute determining that the alarm
messages are shown when an alarm occurs. Returns true (different from zero) if the
messages are enabled, or false (zero) if not;
filename: a string containg the name of the log file of Alarms;
lastAlarmPri: an integer without sign (de 0 a 65535) informing the priority of
last activated alarm. It is a read only attribute.
logAlarms: a Boolean attribute determining that the alarms are recorded in the
log file of Alarms. Returns true (different from zero) if the recording is enabled, or
false (zero) if not.
Scripts

321

name: a string containing the Alarm name, used as identifier of the Alarm.
nRecords: an integer without sign (from 0 to 65535) determining the number of
more recent alarms to be recorded in the log file of alarms.
soundType
: an integer without sign (from 0 to 65535) determining the type
of sound to be played when an alarm occurs. Only available if the warningSound
attribute is enabled;
warningSound: a Boolean attribute used to enable an alert sound when an alarm
occurs. Returns true (different from zero) if the alert sound is enabled, or false (zero)
if not.

19.6.8. Recipe Attributes


description: a string containing a brief description of the Recipe;
name: a string containing the Recipe name, used as Recipe identifier;

19.6.9. Historic Attributes


batch: a Boolean attribute used to enable a batch process. Returns true (different
from zero) if the batch is enabled, or false (zero) if not.
description: a string containing a brief description of the Historic;
enabled: a Boolean attribute used to enable the recording of historic data in the
Historic file. Returns true (different from zero) if the recording is enabled, or false
(zero) if not.
filename: a string containing the name of the Historic file;
isBatchRunning: a Boolean attribute (read only) determining if the batch is
being executed or not. Returns true (different from zero) if the batch is running, or
false (zero) if not.
name: a string containing the Historic name, used as identifier of the Historic.
networkSupport: A Boolean attribute used to enable the support to network for
the Historic, i.e., allows the Historic to be accessed (only for reading) by other
Elipse applications in the Network through a Browser or Report of HAnalysis type.
Returns true (different from zero) if the support to network is enabled, or false (zero)
if not.
size: an integer without sign (from 0 to 65535) determining the size of the
Historic file in number of records.
writeTime: a long integer without sign (from 0 to 232) determining the
frequency in which data are written in the Historic file;
322

Scripts

User Manual

19.6.10. HAnalysis Attributes


advised: this attribute is only for reading, and makes no sense for the HAnalysis;
description: a string containing a brief description of the HAnalysis;
maximizeButton: a Boolean attribute determining that the maximize button is
enabled in the HAnalysis window. Returns true (different from zero) if the button is
enabled, or false (zero) if not.
minimizeButton: a Boolean attribute determining that the minimize button is
enabled in the HAnalysis window. Returns true (different from zero) if the button is
enabled, or false (zero) if not.
modal: a Boolean attribute determining that the dialog box of the HAnalysis is
modal (doesn't allow the access to any other window before being closed) or
modeless (doesn't need to be closed in order to access other screens). Returns true
(different from zero) if the page is modal, or false (zero) if not.
name: a string containing the HAnalysis name, used as Analysis identifier;
pageStyle: an integer without sign (from 0 to 2) determining which pages of the
HAnalysis should be shown, in accordance with the following table:
VALUE

0
1
2

PAGES

Shows all pages


Shows only the Analysis page (Graph)
Shows only selected pages

resizeable: a Boolean attribute determining that the window of HAnalysis can


be redimensioned during running time. Returns true (different from zero) if the
window can be redimensioned, or false (zero) if not.
showGraphPage: a Boolean attribute determining that the Graph page is shown
in the window of HAnalysis. Returns true (different from zero) if the page is shown,
or false (zero) if not.
showPenColorsPage: a Boolean attribute determining that the Pen Colors page
is shown in the window of HAnalysis. Returns true (different from zero) if the page
is shown, or false (zero) if not.
showPensPage: a Boolean attribute determining that the Pens page is shown in
the window of HAnalysis. Returns true (different from zero) if the page is shown, or
false (zero) if not.
showPrintSetupPage: a Boolean attribute determining that the Print page is
shown in the window of HAnalysis. Returns true (different from zero) if the page is
shown, or false (zero) if not.
Scripts

323

showQueryPage: a Boolean attribute determining that the Query page is shown


in the window of HAnalysis. Returns true (different from zero) if the page is shown,
or false (zero) if not.
showSettingsPage: a Boolean attribute determining that the Set ups page is
shown in the window of HAnalysis. Returns true (different from zero) if the page is
shown, or false (zero) if not.

19.6.11. Query Attributes


batchField: text (string) that defines which will be the header field to be used in
a query in a historic in batch. This value is equivalent to the Field in the Settings
pages in the properties of browser. After this property is setted, function
RefreshQuery() should be called in order to view the new data in the browser.
criteria: a string containing the name of the batch we want to search.
description: a string containing a brief description of the Query;
filename: a string containing the name of the file in which the Query will be
applied.
finalDay: an integer without sign (from 1 to 31) determining the final day when
the Query type is by Time Interval;
finalHour: an integer without sign (from 0 to 23) determining the final hour
when the Query type is by Time Interval;
finalMinute: an integer without sign (from 0 to 59) determining the final minute
when the Query type is by Time Interval;
finalMonth: an integer without sign (from 1 to 12) determining the final month
when the Query type is by Time Interval;
finalSecond: an integer without sign (from 0 to 59) determining the final second
when the Query type is by Time Interval;
finalYear: an integer without sign (from 1970 to 2039) determining the final
year when the Query type is by Time Interval;
name: a string containing the Query name, used as Query identifier;
queryType: an integer without sign (from 0 to 2) determining the Query type, in
accordance with the following table:
VALUE

0
1
2

QUERY TYPE

Time interval
Most recent data
Without Criteria

queryUnit: It is used together with the queryValue attribute when it is equal to


1 (most recent data or newest data). It is an integer without sign (from 0 to 5)
324

Scripts

User Manual

determining a time unit for the search of newest data, in accordance with the
following table:
VALUE

0
1
2
3
4
5

FORMAT

Day
Month
Year
Hours
Minutes
Seconds

queryValue: Only available if the queryType attribute is 1 (Most Recent Data


or newest data). It is an integer without sign determining a time period for the search
of newest data, specified in the Last field in the Query page. It is used together with
the queryUnit attribute.
startDay: an integer without sign (from 1 to 31) determining the initial day
when the Query type is by Time Interval;
startHour: an integer without sign (from 0 to 23) determining the initial hour
when the Query type is by Time Interval;
startMinute: an integer without sign (from 0 to 59) determining the initial
minute when the Query type is by Time Interval;
startMonth: an integer without sign (from 1 to 12) determining the initial month
when the Query type is by Time Interval;
startSecond: an integer without sign (from 0 to 59) determining the initial
second when the Query type is by Time Interval;
startYear: an integer without sign (from 1970 to 2039) determining the initial
year when the Query type is by Time Interval;

19.6.12. SPC Attributes


avg: a real number that determines the average;
cp: Only for the use of Elipse SCADA.
cpk: Only for the use of Elipse SCADA.
cr: Only for the use of Elipse SCADA.
description: a string containing a brief description of the SPC;
dispersionChartType: an integer without sign (from 0 to 1) determining the
type of graph as Sigmas (0) or Ranges (1);

Scripts

325

dispLCL: a real number setting up the bottom limit of the Dispersion graph. It is
used together with attribute dispUCL to define an interval of variation;
dispUCL: a real number setting up the top limit of the Dispersion graph. It is
used together with attribute dispLCL to define a interval of variation;
k: Only for the use of Elipse SCADA.
lcl: a real number setting up the bottom limit of the Control. It is used together
with attribute ucr to define an interval of variation;
lel: a real number setting up the bottom limit of Engineering. It is used together
with attribute uer to define an interval of variation;
maxValue: (read only) a real number indicating the maximum value between
samples that are calculated.
minValue: (read only) a real number indicating the minimum value between
samples that are calculated.
name: a string containing the SPC name, used as identifier of the SPC.
nRecords: (read only) an integer without sign (from 1 to 65535) indicating the
total number of records analyzed.
pointsPerGroup: an integer without sign (from 0 to 65535) determining the
number of points per sample;
stdDev: a real number determining the Standard Deviation;
ucl: a real number setting up the top limit of the Control. It is used together with
attribute lcr to define an interval of variation;
uel: a real number setting up the top limit of Engineering. It is used together
with attribute ler to define an interval of variation;

19.6.13. Batches Attributes


description: a string containing a brief description of the Batch;
fieldName: a string containing the name of the Batch file;
fieldType: an integer without sign determining the type of Batch (read only).
name: a string containing the Batch name, used as Batch identifier;

19.6.14. Reports Attributes


bottomMargin: an integer without sign (from 0 to 65535) determining the
bottom margin of the Report, in millimiters.
description: a string containing a brief description of the Report;
326

Scripts

User Manual

leftMargin: an integer without sign (from 0 to 65535) determining the left


margin of the Report, in millimiters.
name: a string containing the Report name, used as identifier of the Report.
printHeader: a Boolean attribute used to enable the printing of a page
containing information of batch header. Returns true (different from zero) if printing
of header is enabled, or false (zero) if not.
printTitle: a Boolean attribute used to enable the printing of a title in the Report.
Returns true (different from zero) if printing of title is enabled, or false (zero) if not.
rightMargin: an integer without sign (from 0 to 65535) determining the right
margin of the Report, in millimiters.
rowColor: a hexadecimal (from 0h to 1000000h) or decimal number (from 0 to
16777215) defining the color of Report rows. This value can also be specified by
function RGB(r,g,b) in which each component (r,g,b) can vary from 0 to 255.
topMargin: an integer without sign (from 0 to 65535) determining the top
margin of the Report, in millimiters.

19.6.15. Drivers Attributes


PLC Driver
abortOnError: a Boolean attribute used to enable the interruption of
communication if some error occurs. Returns true (different from zero) if
communication is enabled, or false (zero) if not.
busy: a Boolean attribute used to inform if some communication is occurring.
Returns true (different from zero) if some communication is occurring, or false
(zero) if no communication is being done;
description: a string containing a brief description of the Driver;
driverName: a string containing the Driver name by the manufacturer; this
name will be used for communication with the PLC;
driverPath: a string containing the localization (path) of the Driver;
enableRead: a Boolean attribute used to enable the reading of values and blocks
of the driver. Returns true (different from zero) if the reading is enabled, or false
(zero) if not.
enableRetry: a Bboolean attribute used to enable a new attempt of
communication if some error occurs. Returns true (different from zero) if the attempt
is enabled, or false (zero) if not.

Scripts

327

enableWrite: a Boolean attribute used to enable the writting of values and


blocks of driver. Returns true (different from zero) if the writting is enabled, or false
(zero) if not.
hideMouse: a Boolean attribute determing that the mouse is hidden during
communication. Returns true (different from zero) if the mouse hidding is enabled,
or false (zero) if not.
isLoaded: a Boolean attribute used to inform if the driver is loaded in the
memory or not. Returns true (different from zero) if the driver is loaded, or false
(zero) if not.
isStarted: a Boolean attribute used to inform if some communication has been
started or not. Returns true (different from zero) if some communication has been
initiated, or false (zero) if not.
name: a string containing the Driver name, used as identifier of the Driver.
p1: an integer with sign (from -32768 to 32767) setting up parameter P1 in
accordance with the documentation of the Driver;
p2: an integer with sign (from -32768 to 32767) setting up parameter P2 in
accordance with the documentation of the Driver;
p3: an integer with sign (from -32768 to 32767) setting up parameter P3 in
accordance with the documentation of the Driver;
p4: an integer with sign (from -32768 to 32767) setting up parameter P4 in
accordance with the documentation of the Driver;
retryCount: an integer without sign (from 0 to 65535) determining the number
of trials, if attribute enableRetry is enabled;
Network Drivers
bytesReceived: an integer without sign (from 0 to 65535) determining the
number of bytes received by the driver (read only).
bytesSent: an integer without sign (from 0 to 65535) determining the number of
bytes sent by the driver to clients (read only).
description: a string containing a brief description of the Driver;
name: a string containing the Driver name, used as identifier of the Driver.
nClients: an integer without sign (from 0 to 65535) determining the number of
clients currently connected to the driver (read only).
rx: a Boolean attribute used to inform if the driver is receiving data or not.
Returns true (different from zero) if the driver is receiving data, or false (zero) if not.

328

Scripts

User Manual

tx: a Boolean attribute (read only) used to inform if the driver is sending data or
not. Returns true (different from zero) if the driver is sending data, or false (zero) if
not.

19.6.16. Database Attributes


description: a string containing a brief description of the Database;
directory: Determines the Database directory.
filter: a string or value used as filter when a query is done to the Database.
lastErrorStr: a string containing the description of last error occurred in
operations with the Database.
name: a string containing the name of the database, used as Database identifier;
originalTableName: Specifies information referring to the database table.
recno: an integer without sign (from 0 to 65535) determining the number of
current record.
sort: a string containing the field name on the Database which is used to order it.
Attributes of Database fields
advised: (Boolean, read only) Indicates that the field is in advise, i.e., it is
refreshd everytime an associated object is referred to.
originalFieldName: Determines the name of the field in the database.
type: Determines the type of field.

19.6.17. Attributes of the Users List


description: a string containing a brief description of the User;
name: a string containing the User name, used as identifier of the User.

19.6.18. Remote Application Attributes


description: String containing a brief description of the Remote Application;
isConnected: Boolean attribute that informs whether Remote Application is
connected or not. It returns True (different from zero) if connected, otherwise it
returns False (zero).

Scripts

329

isConnecting: Boolean attribute that informs whether Remote Application is


connecting or not. It returns True (different from zero) if being connected, otherwise
it returns false (zero).
name: String containing the name of the Remote Application, used as the
Remote Applications identifier.
Remote Files Attributes
bytesDone: Unsignaled integer (from 0 to 232) that determines the number of
bytes already compared/transferred (read-only).
description: String containing a brief description of the Remote File;
lastError: Unsignaled integer (from 0 to 5) that determines the error code
occurred during last file transference (read-only), according to the following table:
VALUE

0
1
2
3
4
5

EVENT

OK transfer
Client file could not be opened or created
Server file has not been found.
Invalid data received from the server during connection
Out of sequence block received from the server
Writing or placement error in client file

name: String containing the name identifying the Remote File;


result: Signaled integer (from -1 to 1) that determines the result of last file
transference (read-only), according the following table:
VALUE

-1
0
1

EVENT

No transfer has been accomplished


Last transfer has failed
Last transfer has been successful.

state: Unsignaled integer (from 0 to 3) indicating current file transference atatus


(read-only), according to the following table:
VALUE

0
1
2
3

EVENT

No transfer going on
Connecting
Comparing files
Transferring

totalLength: Unsignaled integer (from 0 to 2) determining the number of bytes


to be compared/transferred (read-only).

330

Scripts

User Manual

Remote Tag Attributes


alarmDelay: Unsignaled integer indicating the minimum period of time the tag
must remain in the same alarm condition before it is activated. If alarmDelay is
modified in runtime, clock counter is restarted. This atribute is only valid if
delayedAlarm attribute is True (see delayedAlarm).
alternateName: Alternate name for this tag in alarm log.
alwaysInAdvise: Keeps tag value always updated.
currentAlarm: Determines tag status. The available options are:
INDEX

DESCRIPTION

0
1
2
3
4

No active alarms
LOLO level alarm.
LOW level alarm.
HIGH level alarm.
HIHI level alarm.

delayedAlarm: Boolean attribute. If True, tag must remain for a minimum


interval of time (specified by alarmDelay) in the same alarm condition (Hi, Hihi,
Lo, Lolo) to activate (or generate) the corresponding alarm.
enableAlternateName: Enable an alternate name for the tag.
enableReturnLog: Enables/disables alarm return messages log.
initialValue: String with tags initial value. It can be modified in runtime.
remoteTag: Remote tags path.
remoteTagPath: String indicating remote tags path in a Remote Application.
returnMessage: Determines tag alarm returns message.
timeStamp: Date/time the tag was generated.
Remote Video Attributes
name: Objects name.
remoteCameraId: Determines remote cameras ID.
Remote Video Camera Attributes
bitsPerPixel: Determines the required number of bits to store each images pixel.
Scripts

331

brightness: Sets image brightness.


cameraId: Cameras ID in the application (from 0 to 65535).
color: Sets image color.
contrast: Sets image contrast.
curentFrameRate: Sets current frame rate.
currentPos: Detemirnes current position (in seconds) in video sequence.
firstPos: Determines first position (in seconds) in video sequence.
frameSize: Determines last captured frame size (in bytes).
gamma: Gamma setting (from 0 to 1000).
imageHeight: Sets image height, in pixels.
imageWidth: Sets image width, in pixels.
isPaused: Indicates whether the video is paused in a certain frame.
isPlaying: Indicates whether the video is playing.
isStopped: Indicates if video input is stopped.
lastPos: Determines last position (in seconds) in video sequence..
name: Sets camera name.
sharpness: Sets image sharpness.
tint: Sets image tint.
velocity: Indicates the velocity the video is being played. The available options
are: s:
Available options
INDEX

332

DESCRIPTION

Normal velocity onwards.

-1

Normal velocity backwards.

Scripts

User Manual

19.6.19. Watcher Attributes


Common Attributes
description: String containing a brief description of the Watcher;
name: String containing Watchers name, used as its identifier.
AVI Objects Attributes
duration: Sets AVIs total number of frames.
filename: Sets AVI files name.
position: Sets frame position in AVI file.
reverse: Rewinds a frame in AVI file.
speed: Sets AVI frames velocity.
timeFormat: Sets frames time format: 0 duration and position are set in
number of frames, and 1 duration and position are set in milliseconds.
volume: Sets sound volume in 0,1% units of original sound level (1000 =
original volume, 500 = half-volume, etc.)
AVI Recorder Attributes
description: Objects description.
fileName: AVI file name.
frameRate: Sets recording frame rate (per seconds).
isRecording: Starts/Stops recording in the AVI file.
name: Objects name.
S611 Board Attributes
board: Sets board number (from 0 to 7).
color: Sets video output color format.
customHeight: Customizes image height, in pixels (advanced scale).
custonWidth: Customizes image width, in pixels (advanced scale).
format: Sets image format (PAL-M, NTSC, etc).
frameRate: Sets picking up frame rate (per second).
input: Sets video input.
Scripts

333

interlaced: Sets image interlacing. The available options are:


NDICE

DESCRIO

Non-interlaced image.

Interlaced image.

scale: Sets image scale.


S613 Board Attributes
board: Sets board number (from 0 to 7).
cfactor: Sets compression factor. The available options are:
INDEX

0
Up to 65535

DESCRIPTION

Lower compression
Higher compression

color: Sets video output color format.


compress: Sets image compression. The available options are:
INDEX

DESCRIPTION

No compression

MJPEG

customHeight: Customizes image height, in pixels (advanced scale).


customWidth: Customizes image width, in pixels (advanced scale).
description: Objects description.
format: Sets image format (PAL-M, NTSC, etc).
frameRate: Sets picking up frame rate (per second).
input: Sets video input.
interlaced: Sets image interlacing. If 0, image is interlaced. If 1, it is not.
name: Objects name.
scale: Sets scale size.
VFW Attributes
deviceIndex: Sets device index on systems device list.
deviceName: Sets the name of the device supporting Video for Windows.
334

Scripts

User Manual

deviceVersion: Sets the version of the device supporting Video for Windows.
frameRate: Sets picking up frame rate (per second).
XPresPlus Camera Attributes
fileName: Video file name.
format: Image format (PAL-M, NTSC, etc).
name: Objects name.
nFrame: Sets current frame number.
numBoard: Sets board number.
numCam: Defines the total number of cameras.

19.6.20. Steeplechase Attributes


server: (string) Contains the name of the Steeplechase server.
scan: (integer) Scan time and updating of Steeplechase (in milliseconds).

19.6.21. OPCServer Attributes


serverStatus: (integer) Shows the OPC server current status. If the OPC server
status checking is enabled on OPCServer properties (option Check OPC
servers), the property serverStatus will be updated on the frequency specified in
vrfyTime property. If the verification is disabled, the property will assume the
following values: 0 (not connected) or -1 (unknown).
vrfyTime: (integer) Specifies the period of time (in milliseconds) in which the
system should verify if the server is active.
totalAlarms: (integer) Indicates the total number of active alarms in a group of
OPC tags.

Scripts

335

Chapter

20

20. Support to DDE

Elipse SCADA allows the change of information with other programs through the
support to DDE technology (DDE - Dynamic Data Exchange). The system can
operate as server or client of applications like Microsoft Excel, Microsoft Access,
and others.

20.1. Elipse SCADA as Client


Elipse SCADA working as DDE Client allows the search of data from DDE server
applications. For accomplishing such connection, it is necessary that the other
application is DDE server (in the same computer). The DDE syntax is defined in the
server application. As DDE Client, Elipse SCADA should have a DDE tag
configured in accordance with the documentation of syntax supplied by the server
application. It is not necessary to create any definition in the server application, for
Elipse SCADA can automatically find the information. The setting of the DDE tag is
accomplished in the general page of the tag in Organizer, as it can be seen below.

Support to DDE

337

Picture 150: Setting page of the DDE tag

Fields Name of Server, TTopic and Item are always defined in accordance with
the server application. If the application is open in the same computer in which the
Elipse SCADA is running, it is automatically detected through items Server and
Topic. It is possible to test the connection with the server application through the
button [Test Connection].
You can send a DDE command to a server application through Scripts, by using the
DDEExecute() function. See the Chapter about Scripts, in Special Functions, Global
Manager.
Example: Elipse SCADA & Microsoft Excel
The following setting establishes a DDE connection between Elipse SCADA as
client, and Microsoft Excel as server, by using cell A1 in a spreadsheet called
Sheet1 in the work folder Book1. Both programs are running in the same computer.
For this example, execute the following procedures:

338

Create a DDE Tag.

Make the following settings in the DDE Tag:


Support to DDE

User Manual
FIELD

Server Name
Topic
Item

VALUE

Excel
[Book1.xls]Sheet1
R1C1

Note: For different versions or languages of the software, topics and items can
change.

The button Test Connection allows the test of the DDE connection. Once the
connection is done, the DDE tag that is setted can be used in screen objects,
scripts or other functions.

20.2. Elipse SCADA as Server


Elipse SCADA doesn't need any special setting to work as a DDE server; it just
needs to be running with an open application when other application needs to access
your data.
In order to set up the client application, just specify the three parameters to access
the Elipse SCADA as DDE server: server, topic, and item.
Example: Elipse SCADA & Microsoft Excel
In this example, the Excel (Client) must access a tag in Elipse SCADA (Server) by
using DDE.
For this example, execute the following procedures:

Support to DDE

Define the tag that Excel will access in Elipse SCADA. For example:
tagDDE.
Create a table in Excel and save it with any name, for example: tabela.xls.
In Excel, type in the wanted cell the following formula:
=ELIPSE|Aplicao!Tags.tagDDE, where: "ELIPSE" is the DDE server, "
Application" is the topic, and Tags.tagDDE is the item to be accessed. This
item can be any tag or attribute of any object n the application as for
example: "Hist1.DateTime".
Go to the Edit menu, Link option. Select the link with Elipse and click
"Manual". Enter in Link again, select the link with Elipse, and choose
"Automatic".

339

Potrebbero piacerti anche