Man Eng Mov11.4 Movicon Programmer Guide
Man Eng Mov11.4 Movicon Programmer Guide
Man Eng Mov11.4 Movicon Programmer Guide
Programmer Guide
Cod. DOCS 11 DEV-E Build 1150
Table Of Contents
1. INTRODUCTION ......................................................... 13
1.1. INSTALLING AND RUNNING APPLICATIONS ....................................... 13
1.2. MOVICON POWERHMI ............................................................. 17
1.3. NEW FEATURES IN MOVICON 11.4 ............................................... 22
1.4. MOVICON BA RESTRICTIONS (BUIDLING AUTOMATION) ....................... 22
1.5. SYSTEM REQUISITES ............................................................... 23
1.6. TERMINOLOGY ....................................................................... 23
3. BEFORE STARTING..................................................... 31
3.1. MICROSOFT WINDOWS CERTIFIED ................................................ 35
3.2. PROJECT PROGRAMMING LIMITS .................................................. 36
T A B L E
O F
C O N T E N T S
M O V I C O N _ P R O G R A M M E R _ G U I D E
T A B L E
O F
C O N T E N T S
9. MULTITOUCH ...........................................................249
9.1. GESTUALITY FOR NON MULTITOUCH SYSTEMS ..................................252
9.2. GESTURES PROPERTIES ...........................................................253
M O V I C O N _ P R O G R A M M E R _ G U I D E
T A B L E
O F
C O N T E N T S
M O V I C O N _ P R O G R A M M E R _ G U I D E
T A B L E
O F
C O N T E N T S
M O V I C O N _ P R O G R A M M E R _ G U I D E
23.4.2. Importing Data Loggers and Recipes from other Recipes ........................... 606
23.6.1. Data Loggers and Recipes Common General Properties ............................. 611
23.6.2. Data Loggers and Recipes common Execution Properties........................... 612
23.6.3. Data Loggers and Recipes common Database Settings Properties .............. 613
23.6.4. Data Loggers and Recipes common Column General Properties ................. 615
10
T A B L E
O F
C O N T E N T S
11
M O V I C O N _ P R O G R A M M E R _ G U I D E
12
1. Introduction
Movicon Programmer's Guide Contents
The Programmer's Guide contains all the necessary information for Movicon developers.
The chapters in this guide describe the projects, the Resources, the Objects and the techniques for
logical and graphic programming to permit the optimal use of the system's resources in developing
projects.
The manual describes how to program and structure projects, how to use the logic editor, how to
animate screens, how to do data or recipes settings by building dialog boxes, how to use objects and
any other item which constitutes a system resource.
One chapter has been dedicated on how to use the Movicon vectorial graphic editor and the default
Bitmap editor, how to use the standard symbol library which Movicon places at the user's disposal,
how to import symbols or strings using the "Drag & Drop" techniques.
The Movicon supervision package fully complies with the Windows standard, therefore the reader is
advised to consult the Ms Windows 'User's Manual' for further information on windows, menus and
dialog boxes.
Any corrections or updates that may have been made to this manual can
be referred to in the "Readme.txt" file contained in the installation DVD
and installed in the Movicon user directory.
Installing Movicon
The procedures for installing Movicon on the hardware platform are very simple, and comply with the
Microsoft Windows specifications. When inserting the DVD you will automatically enter into the
installation environment where the guide command will activate for installing the Movicon
components desired. When you wish to install Movicon manually from the DVD, you can access the
DVD's folder from the Windows Explorer and execute the "Setup.exe" file contained in it, for
example:
D:\Movicon\setup\Setup.exe
The Setup will carry out the Movicon installation on the PC, creating a group of Movicon icons upon
terminating which can be accessed with the "Start" button from the Windows application bar. The
Movicon Group, in icon form, will contain the shortcut to the Movicon .exe file. During installation,
which takes a few minutes, you will be asked to enter the name of the folder in which files necessary
to Movicon are to be organized. When you do not wish to change the name or path, simply confirm
the "Movicon11.3" default folder which will then be created with the path: "..\Program
Files\Progea\Movicon11.3".
In the first installation phases you will be asked for the installation type you wish to executed. The
options are:
Typical: installs the most commonly used components without requiring anything from the
user (recommended)
Custom: consents the user to select the components to install (recommended for expert
users only)
13
M O V I C O N _ P R O G R A M M E R _ G U I D E
Installing Languages
During the Movicon installation phase you will be asked to select the application's installation
language (a following window will show to allow you to select other installation languages as well).
The language resource files that are selected will be copied to the Movicon "LANG" folder after
which it will be possible to change the Movicon installation languages using the
"LangManagerPlus.exe" tool when need be. The langauges made availabel will be those installed
during the setup phase.
Uninstalling Movicon
Movicon, in compliance with the Windows standards, consents to a simple system uninstalling to
remove all its files from the PC.
To proceed with uninstalling Movicon simply activate the appropriate icon from the Windows Control
Panel for installing/removing applications.
The uninstalling procedure will completely remove all the Movicon files upon receiving confirmation.
Movicon Execution
Movicon is a software platform which allows you to plane supervision applications and run them.
Movicon therefore works in two modes:
The platform is installed as a executable application available in two versions:: Movicon.exe and
MoviconRunTime.exe. Movicon.exe consents both project development and runtime execution, while
MoviconRunTime.exe consents runtime execution only.
14
I N T R O D U C T I O N
Movicon Startup
The Movicon installation will create a group of icons which can be accessed from the Windows' Start
menu. When running the Movicon .exe without specifying any options will enter you into the
Movicon environment in programming mode, with the automatic opening of a new project or with he
last opened project.
By using the appropriate syntaxes in the Options for the command line at the Movicon startup you
will be able to change the system's default settings, associate project files, custom modules and
other options as explained below. The syntax for starting up Movicon with the command options is:
Movicon /[Options] <project file>
If you wish to startup Movicon and run a previously programmed project at the same time, you need
to use the /R. option. Below an example is given for automatically running the TEST.MOVPRJ project
file:
C:\Program
Files\Progea\Movicon11.3\Movicon.exe
C:\Documents\Test.movprj
/R
If you wish to add or change the command options or the Movicon working folder in Windows, use
the following procedures:
Press the right mouse key in the workspace of the Windows Desktop and select the "New Shortcut" command. Then write the desired command line for the Movicon Startup in the settings
window which appears.
Files\Progea\Movicon11.3\MoviconRunTime.exe
You can get the same result by using the "Movicon.exe." followed by the "/R" option as already
explained above.
Using Windows XP, to ensure that the user interface of the project is opened automatically after the
user logon Windows will need to enable properties of execution of the project "Show Service at Log
On".
15
M O V I C O N _ P R O G R A M M E R _ G U I D E
You can install Movicon as Service in addition to the development environment by using the "Install
this Project as Windows Service" command and also by means of the Windows command line using
the "/i" or "-i" option. By executing the command line from the Windows "Start - Run" menu:
MoviconService.exe -i
Movicon will be installed as Service. You must then add the parameter, which identifies the project
that the service must run, in the Windows configuration Registry. The key to be modified is:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MOVICON X\Parameters]
"Project"="C:\\Project Path\\ProjectName.movprj"
The text above can be copied in a text file with a ".reg." extension in order to automatically create
the key by double-clicking on the ".reg" file to insert key in the Windows registry. To insert the key
manually you will have to go to the following parameter group:
"[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MOVICON X\Parameters]"
and create the "Project" key string type inserting the "C:\\Project Path\\ProjectName.movprj" value.
Silent Installation
Movicon can be installed without user interface (silent mode) by using the following command line:
path\Setup.exe /s /l1033 /v/qn
where:
"path" = relative or absolute path where the Movicon setup file is found (setup.exe,
Movicon11.3.msi, etc.)
/s = silent mode
/l = installation language. 1033 for English (default), 1031 for German, 1036 for French, 1040 for
Italian and 2052 for Chinese
/v/qn = user interface exclusion
If you wish to specify the installation directory, i.e. C:\MyDir use:
path\Setup.exe /s /l1033 /v"/qn INSTALLDIR=C:\MyDir"
If you wish to install the runtime module only, write:
path\Setup.exe /s /l1033 /v"/qn INSTALLDIR=C:\MyDir ADDLOCAL=MoviconRun"
when installing MoviconBA, the string for installing rutime only is:
16
I N T R O D U C T I O N
Restart Movicon when passing from one license type to another to ensure it starts with the new
settings.
The product documentation is the same for all versions Movicon
and PowerHMI.
Possible references in the help to functionality that, like described
above, are not supported, must not be considered valid.
ODBC
17
M O V I C O N _ P R O G R A M M E R _ G U I D E
ActiveX/OCX
OLE objects
ROT
Report
AlarmDispatcher
Web Client
Power Templates containing Basic Script code
PowerHMI
Movicon
RealTime DB
to unlimited
Yes
No
No
Yes
Yes
No
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
No
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Scaling
ODBC Realtime
Trace DB
Data Structure
OPC Client DA
OPC Server DA
OPC Client XML DA
OPC Server XML DA
Networking
Tag in IntelliSense in Basic Script
Graphic Interface
Vectorial Graphic Editor
Support for BMP, GIF, JPG, WMF, EMF
Dynamic Animation
Symbols Library
Import/Export Symbols
Public Symbols
Power Templates (VBA Symbols)
Charts 3D
Grid
Sinapsis
Scheduler
Editing Menu
Style Source Management in Symbols
Dundas Gauge
IP Camera Viewer
Alias management in Objects
Alarms Logs
Alarms Management
Historical Management (XML)
Historical Management (ODBC)
Alarms Notification (SMS, Email, Voice)
Server OPC AE
Alarms Area
Statistic Reports
Text-To-Speech
18
for
unlimited
for
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
I N T R O D U C T I O N
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Complete
Max nr. 2
Yes
Full
unlimited
Yes
Event Object
Yes
Yes
Scaling Object
Yes
Yes
Scheduler Object
Yes
Yes
Yes
Reduced
No
Yes
Yes
Yes
Networking
Yes
Yes
Redundancy
No
Yes
Child Projects
Yes
Yes
Screen Navigation
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Trends
Trend RealTime
Historical Trends on file .CSV
Historical Trends (linked to DataLogger
XML)
Historical Trends Database (ODBC)
Data Analysis
Users & Passwords
Use 1024 levels
User Groups
CFR21
Runtime Users
Dynamic Multilanguage
Unicode Support
Drivers
Drivers Library
Max. number of Driver
PLC Tag Importer
Logics
IL Logic (Step5-Step7)
VBA Logic (WinWrap Basic)
Sinapsis Logic
Visual
Studio
Integration
SourceSafe
Speech Recognition
2005
19
M O V I C O N _ P R O G R A M M E R _ G U I D E
Web Client
No
Yes
Services Support
Yes
Yes
Yes
Yes
Cross Reference
Yes
Yes
Debugger
Yes
Yes
License Management
The Power HMI version runs on a license which can only be activated with a Softkey containing an
unlocking code. There are no hardware keys available for this version. Unlicensed Project runtimes
will be executed in Demo mode only.
PowerHMI licences can be purchased in single quantities over the internet.
Only two Basic Script resources can be loaded in Ram and executed at the same time
It's not possible to associate the script code to the Objects, Screens and Alarms Threshold
The basic script expressions in the objects properties are not supported
It's possible to insert the variable script events in the Basic Script
The usage of Public Basic Scripts is supported
The direct access to the project variables is supported
Does not support the use of the project's RealTimeDB variable IntelliSense. This means it will
not be able read/write structure variables with <Variable>.<Member> syntax or byte array
variables with <Variable>.<e>n syntax.
The Basic Script Resources can not be run in "Safe Mode"
The Basic Script Resources can access and use external libraries, but only libraries that don't
need any licence
All the WinWrap Basic functions are supported in the Basic Script Resources
The Basic Script resources can only access methods and properties of the "UIInterface",
"IOPortInterface", "ScriptMEIterface" and "DBVariableCmdTarget" interfaces. Not all the
methods and properties from the "DBVariableCmdTarget" interface are supported, as
specified below.
20
EnableInUseVarMng
GetDynamicVariable
GetNumDynTag
GetNumStructDefinitions
GetNumVariables
GetVariableAddressInfo
GetVariableDescription
GetVariableSize
GetVariableValue
GetXMLSettings
I N T R O D U C T I O N
IsFirstDBInstance
IsValidVariable
PurgeDynTag
PurgeDynTagTimer
SetVariableValue
UseSharedDynTag
VariableInUse
All the events, methods and properties of the "ScriptMEIterface" interface are supported.
Variable restrictions
System Variables
Some system variables are not managed by PowerHMI. These variables are:
_SysVar_:NumWebClientConnected
_SysVar_:PendingTraceEntries
_SysVar_:NumExpressions
_SysVar_:OPCServerNumClients
These variables will not be inserted in the "_SysVar_" structure prototype when activating the
command to add a system variable.
Array Variables
The array variables are supported but indexes can only be numeric and cannot be a variable.
Other restrictions
Other restrictions may be:
PowerHMI cannot access in write a Movicon project variable with Trace comments enabled.
21
M O V I C O N _ P R O G R A M M E R _ G U I D E
PowerHMI is not able to acknowledge Movicon project alarms which have been enabled for
acknowledgement comment entries.
Area
User Interface
web client
screen object
OPC
communication
screen object
screen object
screen object
screen object
Schedulers
Resource
OPC
communication
NUOVA FUNZIONE
Implementing multi touch in Movicon 11 with
zoom
Double tap click
page scrolling enhancement
"Pinch Zoom Gestures" implimented in wen applicatoins for
iPad/iPhone with zoom factor up to 10x
Property added for opting whether to enable the Trend's freeze
when the quality = bad for one or all pens or for completely
disabling this management.
Option added for enabling/disabling OPC groups even when the
variable in use management is active.
When setting a filter in the Data Analysis you can now use a
Date Range to move back and forward move in time
Historical data analysis optimized with a network client project.
A new property added for indicating timeout (in millisec) within
which to display page even when processing is not complete
both for embedded and normal screens.
Registry key added for displaying vectorial images set in
buttons (pressed, released and clicked) using antii-aliasing.
It is now possible to opt whether or not to execute the Off
Command List when disabled.
Property Inserted for verifying and restoring OPC connections
22
OPC
ODBC RealTime
I N T R O D U C T I O N
Runtime Desktop
Runtime CE
Client Web
Operating System
Windows 8
Windows 7
Windows 7 Embedded standard
Windows Vista
Windows XP
Windows 2008 Server
Windows 2003 Server
Windows 8
Windows 7
Windows 7 Embedded standard
Windows Vista
Windows XP
Windows XP Embedded
Windows 2008 Server
Windows 2003 Server
Windows Terminal Server, WinXP
Embedded*, Windows Tablet Edition
Windows CE* 5.0
Windows CE 6.0
Windows Mobile
HW Requirement
Celeron 1,6 GHz, 512
Mb RAM at the
minimum.
Advised Pentium IV 3
GHz, 1 Gb RAM at the
least.
Celeron f1,6 GHz, 512
Mb RAM at the
minimum.
Advised at lease
Pentium IV 3 GHz, 1
Gb RAM.
Nevertheless, these
requisites depend on
the applied project size.
Cpu 200 MHz, 32 Mb
RAM, 32 MB Flash at
the minimum.
Advised Cpu 500 MHz
64 Mb RAM.
Nevertheless, these
requisites depend on
the applied project size.
List of the type of
processors supported
can be found at
www.progea.com
Cpu 200 Mhz at the
minimum.
These requisites
depend on the platform
being used and the
screen sizes displayed.
1.6. Terminology
The terms most commonly used in this manual and their meaning have
been listed below in this table.
Termine
XML
Acronimo
Extensible Markup
Language
Descrizione
Metalanguage in text format, simple and
flexible to use, defined by the SGML (ISO
8879) standard. Originally designed for HTML
enhancement, today is widely used as a
strategic tool in exchanging data not only
between web applications, but wherever
23
M O V I C O N _ P R O G R A M M E R _ G U I D E
OPC
ODBC
SOA
Service Oriented
Application
SOAP
VBA
Web
Services
SMPP
24
2. Important Information
2.1. Assumptions
All the information provided in the Movicon documentation is based on the assumption that:
All the illustrations in this manual refer to the last Movicon version with Windows32/64 bit
platform
Ms Access and SQL Server refer to the Microsoft inc. registered products
Crystal Report refers to the product registered by Business Objects - Seagate, version 10 or
later
Movicon refers to the supervision system developed by Progea and is protected by the
international Copyright
Any other product or trademark cited is registered or protected by their relative owners
Windows is installed in the system. For information about this installation please consult the
relevant chapters in the Windows 'Introduction Guide'
A mouse had been installed. If a mouse is not being used please check the keyboard
equivalents
All the information contained in this manual is subject to change without prior notification due
to system updating
2.2. Conventions
Movicon exploits the Windows standard techniques such as Copy, Paste, Drag, Multi-selecting etc.,
for managing projects.
This documentation assumes that you are:
Knowledgeable of how to use of a mouse, Windows menus, select options, and accessing
online Help.
Experienced with a programming or macro language. For best results, you should have an
understanding of programming concepts such as variables, statements, functions and
methods.
For further information, please consult the chapter on Shortcut Resource in this guide.
25
M O V I C O N _ P R O G R A M M E R _ G U I D E
2.3. Copyright
Movicon is a software product and a copyright by Progea. All rights are reserved.
The brand Movicon is a registered trademark of Progea.
Progea
Via S. Anna 88/E
41100 Modena, Italy
Under the copyright laws, this publication may not be reproduced or transmitted in any form,
electronic or mechanical, including photocopying, recording, storing in an information retrieval
system, or translating, in whole or in part, without the prior written consent of Progea.
2.4. Warning
This software is not guarantee for a level of reliability suitable for use in or in connection
with surgical, nuclear, military or other critical plants and in any life support systems
whose failure to perform can reasonably be expected to cause significant injury to a
human.
In any application, including the above, reliability of operation of the software products
can be impaired by adverse factors, including but not limited to fluctuations in electrical
power supply, computer hardware malfunctions, computer operating system software
fitness, fitness of compilers and development software used to develop an application,
installation errors, software and hardware compatibility problems, malfunctions or
failures of electronic monitoring or control devices, transient failures of electronic
systems (hardware and/or software), unanticipated uses or misuses, or errors on the
part of the user or applications designer (adverse factors such as these are hereafter
collectively termed "system failures"). Any application where a system failure would
create a risk of harm to property or persons (including the risk of bodily injury and
death) should not be reliant solely upon one form of electronic system due to the risk of
system failure. To avoid damage, injury, or death, the user or application designer must
take reasonably prudent steps to protect against system failures, including but not
limited to back-up or shut down mechanisms. Because each end-user system is
customized and differs from Progea' testing platforms and because a user or application
designer may use Progea products in combination with other products in a manner not
evaluated or contemplated by Progea, the user or application designer is ultimately
responsible for verifying and validating the suitability of Progea products whenever
Progea products are incorporated in a system or application, including, without
limitation, the appropriate design, process and safety level of such system or application.
Disclaimer of All Warranties
PROGEA DISCLAIMS ANY AND ALL WARRANTIES WITH RESPECT TO MOVICON AND THE
RELATED DOCUMENTATION, WHETHER EXPRESS OR IMPLIED, INCLUDING SPECIFICALLY
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A GENERAL OR
PARTICULAR PURPOSE.
MOVICON AND THE RELATED DOCUMENTATION ARE PROVIDED "AS IS," AND YOUR
COMPANY UNDERSTANDS THAT IT ASSUMES ALL RISKS OF THEIR USE, QUALITY, AND
PERFORMANCE.
Disclaimer of Liability
YOUR COMPANY AGREES AND ACKNOWLEDGES THAT PROGEA SHALL HAVE NO LIABILITY
WHATSOEVER TO YOUR COMPANY FOR ANY PROBLEMS IN OR CAUSED BY MOVICON OR
THE RELATED DOCUMENTATION, WHETHER DIRECT, INDIRECT, INCIDENTAL, SPECIAL, OR
CONSEQUENTIAL (INCLUDING LOSS OF PROFITS).
26
I M P O R T A N T
I N F O R M A T I O N
Users must dispose used product at local waste and recycle points in their area or take it back to
vendor when purchasing a new one. Waste disposal and recycling process of used products into new
ones helps protect the environment from illegal dumping and the harmful pollution caused by it. The
improper disposal of products by the user is an illegal offense according to government Waste
Disposal Act 254 and following D.Lgs. 152 of 3rd April 2006.
In relation to Art.13, D. Lgs. July 25, 2005, n. 151 "Implementation of Directives 2002/95/EC,
2002/96/EC and 2003/108/EC", on reducing the use of harmful substances in electric and electronic
appliances and devices, and their disposal.
Windows 8/7 installs a new component called UAC (User Account Control) for default. When this
component is active, certain operations cannot be performed in all programs (such as entering
information in certain points of the registry) even when an Administrator user is logged in. The user
in which the process is run is in fact a virtual reality user and not a real life administrator user.
For further information please read this Microsoft documentation:
http://technet2.microsoft.com/WindowsVista/en/library/0d75f774-8514-4c9e-ac084c21f5c6c2d91033.mspx?mfr=true
Some modifications have been made to Movicon which consent the product to run the following
operations even when the UAC is active in the Windows 8/7 operating system:
Movicon registration in the ROT (Running Object Table) is done during the product's
installation phase and at project startup.
'Alarm Dispatcher registration in the ROT (Running Object Table) is done during the product's
installation phase and at project startup.
Icons associated to project files are registered during installation, in addition to opening the
project in development mode.
The Movicon service is installed/uninstalled using the "RegService.exe external tool. This tool
is used in automatic mode when needed, and is completely transparent to users.
The Movicon OPC Server is registered/unregistered with the "RegOPCServer.exe" external
tool. This tool is used in automatic mode when needed, and is completely transparent to
27
M O V I C O N _ P R O G R A M M E R _ G U I D E
users. The automatic registration and unregistration of the OPC Server at application startup
or termination remains impossible when the UAC is active in Windows 8/7.
Important! the graphical interface is not supported when running
Movicon as Windows 8/7 service. to increase security Window 8/7
keeps services and user applications running in separate sessions.
This increases system service security but impedes the user to
interact with the service's user interface. In this case it is possible
to used the Windows 8/7 "Interactive Services Detection". When a
interactive service requires user interaction the "Interactive
Services Detection" opens a dialog window through which the user
can switch over to the session where the service is running to
interact with it. However, only the session in question will be
available for use and the only way to return back to the Windows
user interface session is to use the command provided. The
"Interactive Services Detection" has been set with Manual startup
for default therefore the user must start it up when needed.
28
I M P O R T A N T
I N F O R M A T I O N
You should always check, when the system is not running correctly, whether our problem has
already been put right in the bugbase, where there is a historical list of all the problems
found so far and resolved.
The solution to a problem or improvements involves the unavoidable release of a build, which is
available and can be downloaded from the Progea website free of charge.
2.8.1. Updates
Below the Update and Upgrade concepts will be defined, referring as always to the version number
of the product purchased.
As well as the ' splash' at the program's start the version number can also be checked out through
the information window accessed with the "Information On..." command from the 'Help' ('?')
menu.
The first two numbers refer to the program version, the next three numbers refer to the Build.
Example, version 11.3.1102 means : Version 11.3, Build 1102.
Update
Updates are the patches updating one build to another within the
same program version. The Build change is always free of charge.
Upgrades are all changes which upgrade one Movicon version to
another. Not only is the software upgraded but also the dongle and
the set of manuals that go with it.
The upgrade can always be purchased on request.
Upgrade
2.8.2. Bugbase
The bugbase is the program's historical archive containing a chronological report of all the version
releases and builds with explanations of the solved problems and the new items inserted.
When installing new updates you should make it a habit to also read the bugbase to check-out the
new items inserted, as regards to the previous versions, or to look over the resolved problems in
order to save time or asking for technical support.
29
M O V I C O N _ P R O G R A M M E R _ G U I D E
The Bugbase is available online at the Progea website in the "Support" section, so that users can go
over the problems already taken care of and decide whether to they want to update or not by
executing the free download.
30
3. Before Starting
Movicon is a software platform to create and run projects for the supervision and control any kind of
automation system.
Movicon's main task is to save you time in creating supervision projects by providing you with all the
necessary functionalities in resources and object libraries, prebuilt to suit any purpose.
This product has two working modes: Development and Runtime
Development
The development mode allows you to edit projects. In this mode, the
system permits you to create or modify project files by means of
inserting resources and to configure them using properties.
Runtime
The Runtime mode lets you run the project. In this mode the user can
view data and use commands predisposed by the programmer.
Nearly all the project's documentation refers to using Movicon in "Development" mode with
illustrated techniques for creating powerful supervision projects according to the requirements that
need to be made available to the supervisor users in "runtime".
31
M O V I C O N _ P R O G R A M M E R _ G U I D E
Linked arguments:
Project Structure
32
B E F O R E
S T A R T I N G
The Alarms
One of fundamental supervisor tasks is to manage alarms. The target is to obtain is to associate an
alarm to a variable, which can have one or more intervention thresholds. Generally, these alarms
then must be filed in a log, known as the Historical Log, which can be displayed as pleased. These
alarms can then be set to give notifications via SMS, E-mail, Voice etc.
The alarms are setup in the project's Alarms Resource where the 'alarm' objects receive the variables
associated in their properties. The thresholds are then set and the properties relating to the text,
logic conditions along with and any colors and styles.
Once set, the alarms are then managed in the project. When the condition is activated, the alarm will
display in a predisposed Alarm Window, which is a graphic object from the toolbox that can be
inserted in any screen.
The alarms, if not specified otherwise in their properties, are recorded on filed in the Log by the
system. The stored data can be viewed through the Log Window, which is another graphic object
from the toolbox which can be inserted in any screen.
33
M O V I C O N _ P R O G R A M M E R _ G U I D E
Linked Arguments:
Alarms
Inserting Alarms
Historical Log
34
B E F O R E
S T A R T I N G
The DB objects can be used in both cases which manage the filing of data as needed when
configured appropriately.
Recorded data from the Data Loggers and Recipes may be displayed for the following reasons:
Recipes
DataLogger Window
The Grid
Chart Objects
Trend
Report
The desired Data Logger can be associated to any one of the above mentioned graphic objects,
being a historical data base managed by the supervisor. The graphic objects display historically
logged data according to the contents in the filed managed by the Data Logger objects.
The Logics
Even though the job of a supervision platform is to avoid, as much as possible, the use of codes (to
reduce development times), it may be necessary to resort them nevertheless for executing
calculations, logic functions whether for customizing the object's or resource function to adapt them
to the specifications required. In this case, the logics permits you to get the function type you want,
even when not provided in the object's properties.
Movicon provides you with three types of languages to create control logics:
VBA Language (Visual Basic for Application)
Basic Scripts as Resources
VBA Basic Script in Object Properties
VBA Basic Scripts in Object code
PLC-like Language
IL Logic (Instructions List)
Synapses (graphic object orientated language, based on VBA)
Editing Techniques
Drag & Drop
Right mouse key
35
M O V I C O N _ P R O G R A M M E R _ G U I D E
Color selections
File, font, printout selections
The Microsoft standards supported in managing system and other applications refer to:
ODBC Support
SQL Support
OLE2, OLE2 Automation Support
VBA Compatible and ADO Support
OCX - ActiveX Support
This part of the guide will briefly deal with the Movicon editing and usage techniques being the
Windows standard techniques.
The less advanced user should refer to the Windows User's Manual for further information on these
techniques.
2.
3.
36
4. Projects Structure
The Movicon Projects are composed of diverse component groups (known also as project
Resources), such as the Real Time Data DB, the Resources, The Data Loggers, etc. These groups of
components are displayed in a tree structure in the "Project Explorer" window and are described in
full detail in the appropriately dedicated sections.
37
M O V I C O N _ P R O G R A M M E R _ G U I D E
1.
2.
3.
Obviously a new project is created only in the first case, while an already created project will be
opened in the other two situations.
The same dialog window will also be opened when the project's open command ((Menu "File>Open") is executed with a difference that only the options in point 2 and 3 will appear.
New
When selecting the 'New' Tab, you will be asked to choose which project type you wish to create
and, above all, which destination software platform the project is to be executed on.
The choices are:
1.
2.
3.
4.
After having chosen the platform desired another dialog window will display through which the
projects start settings are defined. These settings, described in the relative sections, concern:
Project Name
Users
Communication Drivers
Screens (Pages)
DataBase Settings (ODBC)
Data Loggers and Recipe Settings (ODBC)
Alarms Settings
Exiting
When selecting the 'Existing' Tab the usual Windows' window will display to execute the browser of
the local computer or network resources for selecting the project you wish to open for programming.
In this case you have to select a Movicon project file with the ".movprj" extension.
Recent
When selecting the 'Recent' Tab the list of the last projects opened, in chronological time order from
most recent to the oldest, will be displayed. Select the project you wish to open for programming
from this list.
38
P R O J E C T S
S T R U C T U R E
4.1.2. Users
When creating the new project you can define the 'User' settings to create default users and groups
and define whether or not to activate the password management in the Project. These settings can
also be modified afterwards, during the project developing phase.
Password Protected Project
When this option is enabled the project's password protection will be activated. When this protection
is enabled only users with Developer rights (level 1024) can open the project in developing mode.
This setting can be changed after the project has been created through the "Password Protected
Project" property which is accessed from the 'Users and User Group General Properties'.
When activating the 'Password Protected Project' option you must also fill in the
'Developer Name', 'Developer Password' and 're-type Developer Password' text
boxes.
Developer Name
This edit box is activated only if the 'Password Protect Project' setting has been enabled and must be
used for entering the Project Developer's user name. Movicon will automatically assign the user with
a Developer Level. When the project has been created you can add other users with Developer
Levels through the 'User & User Groups' management to allow the project to be opened to and by
other users.
Alphanumeric and 'Case Sensitive' characters can be inserted into this field and
discriminates between lowercase letters and uppercase ones.
The minimum length for the User Name set for default by Movicon is four
characters. We advise you not to go lower than this number for normative and
security reasons.
Developer Password
This edit box is activated only if the 'Password Protect Project' setting has been enabled and must be
used for entering the Project Developer user's password.
Alphanumeric and 'Case Sensitive' characters can be inserted into this field and
discriminates between lowercase letters and uppercase ones.
The minimum length for the User Name set for default by Movicon is four
characters. We advise you not to go lower than this number for normative and
security reasons.
39
M O V I C O N _ P R O G R A M M E R _ G U I D E
4.1.4. Screens
When creating a new project you can defined the 'Screens' settings to create a certain number of
screens with automatically set sizes. The screens in question can then be modified afterwards during
the project developing phase.
40
P R O J E C T S
S T R U C T U R E
MSAccess: MS Access (uses the "Microsoft Access Driver (*.mdb)" driver and is
the predefined choice)
MySQL: MySQL 5.1 (uses the driver installed with this MySQL version)
OracleEx10: Oracle Express (uses the client-less driver installed with this Oracle
version)
Oracle11g: Oracle Express 11 (uses the client-less driver installed with this
Oracle version)
SQLServer2000: MS SQL Server 2000 (uses "SQL Server" driver)
SQLServer2005: MS SQL Server 2005 (uses the "SQL Native Client" driver)
SQLServer2008: MS SQL Server 2008 (uses the "SQL Native Client 10.0" driver)
SQLServerExp2000: MS SQL Express 2005 (uses the "SQL Native Client" driver)
SQLServerExp2008: MS SQL Express 2008 (uses the "SQL Native Client 10.0"
driver)
SQLServer2012: MS SQL Server 2012 (uses the "SQL Native Client 11.0" driver)
41
M O V I C O N _ P R O G R A M M E R _ G U I D E
SQLServerExp2012: MS SQL Express 2012 (uses the " SQL Native Client
11.0" driver)
Naturally, in order to use one of above listed providers you will need to install its relating ODBC
driver on your machine beforehand. "MsAccess" is the only native Operating System driver.
The "Customize ODBC Settings" button permits you to set some connection parameters, for each
plugin specifically, such as the driver or the database instance name. If you already know the values
of these parameters this is the best time to set them. When pressing the "Next" button a connection
test is carried out after which the set parameters will be reviewed if failed. You can, however,
proceed in execution the wizard independently from the test result.
For further information please refer to sections: "Project ODBC Plugin " and "ODBC Plugin list".
42
P R O J E C T S
S T R U C T U R E
These constraints are managed with a xml file which has the name of the project with
the ".Constraints" extension. These files contain default values which can be changed.
The purpose of these constraints is to set projects with limits to stop them from getting
too big for the chosen platform they are to be run on. However, it is important to keep in
mind that any possible value changes made to these limits may degrade the project's
performances.
Furthermore, there are some items which consent certain information in the project structure to be
displayed or hidden such as that shown in the Project Explorer Window.
The various attributes in the ".Constraints" file must be inserted in the right order so that they can
be valued properly. Following this, the ".Constraints" file is proposed once again with the list of all
the attributes, in order, that have been set with the default value:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<Constraints>
<MaxNumVariables>4294967295</MaxNumVariables>
<MaxNumScreens>4294967295</MaxNumScreens>
<MaxNumScripts>4294967295</MaxNumScripts>
<AllowScriptInScreen>1</AllowScriptInScreen>
<AllowILInScreen>1</AllowILInScreen>
<MaxNumScreenObjects>4294967295</MaxNumScreenObjects>
<MaxScreenSizeCx>2147483647</MaxScreenSizeCx>
<MaxScreenSizeCy>2147483647</MaxScreenSizeCy>
<MaxDaysAgeHistoric>65535</MaxDaysAgeHistoric>
<MaxCacheBeforeFlush>32767</MaxCacheBeforeFlush>
<MaxNumberRecordsDL>10000</MaxNumberRecordsDL>
<AllowGradientFill>1</AllowGradientFill>
<EditVariables>1</EditVariables>
<EditDrivers>1</EditDrivers>
<EditStructures>1</EditStructures>
<EditScreens>1</EditScreens>
43
M O V I C O N _ P R O G R A M M E R _ G U I D E
<EditScripts>1</EditScripts>
<EditShortcuts>1</EditShortcuts>
<EditMenus>1</EditMenus>
<EditParameters>1</EditParameters>
<EditUsers>1</EditUsers>
<EditDLRs>1</EditDLRs>
<EditAlarms>1</EditAlarms>
<EditEvents>1</EditEvents>
<EditSoftLogic>1</EditSoftLogic>
<EditScreenNavigation>1</EditScreenNavigation>
<EditSchedurs>1</EditSchedurs>
<EditScaling>1</EditScaling>
<EditChildProjects>1</EditChildProjects>
<EditNetwork>1</EditNetwork>
<EditOPCDACOM>1</EditOPCDACOM>
<ShowExtendedBrowseTag>0</ShowExtendedBrowseTag>
<AllowBlockProject>1</AllowBlockProject>
</Constraints>
44
Nr.
Records
(Data
Max.Age/Sampling
Frequency)*2
ie: When setting MaxNumberRecordsDL = 68400 in the constraints file, it will not be
possible to change the ""Data Max Age" or the Sampling Frequency if this results (Data
Max.Age/Sampling
Frequency)*2
>
68400
Only the "MaxDaysAgeHistoric" value is used when creating a new project, while the
MaxNumberRecordsDL value is controlled only when the Data Logger age or sampling
frequency are being edited
AllowGradientFill: when set at 0, consents all the properties, for setting the back color
Gradient types of screens and objects, to be hidden
EditVariables: when set at 0 the "Real TimeDB" node in the Project Explorer window will
not be displayed, the "Edit Real Time DB Variables" will be disabled from the project's Edit
menu (right mouse click), the "Edit Realtime DB Variable..." and "Add a New Variable (Tag)"
from the Project Explorer's window's command panel will also be disabled
EditDrivers: when set at 0 the 'List Com.Drivers' sub-node from the RealTime DB group in
the Project Explorer window and the "Add New Comm.Driver" from the same menu of the
P R O J E C T S
S T R U C T U R E
"Real TimeDB group and the "Add New Comm.Driver" item form the Project's Explorer's
command panel will also be disabled
EditStructures: when set at 0 the "List Structure Prototypes" sub-node from the RealTime
DB group in the Project's Explorer window and the "New Structure Definition" from the Real
time DB edit menu and the "Add a new Struct Prototype" item from the Project's Explorer
window's command window will both be disabled.
EditScreens: When set at 0 the "Screens" node in the Project's Explorer window will not be
displayed, the "Add a new Screen" from the edit menu (right mouse click), the "Insert a new
screen in the Project" item in the Porject's Explorer window's command panel and the "New
Screen" icon from the Toolbar will all be disabled
EditScripts: when set at 0 the "Basic Script" node in the Project's Explorer window will not
be displayed, the "Add a new Script" the edit menu (right mouse click), the "Insert a new
Basic Script in the Project" in the Project Explorer window's command panel and the "New
script" icon in the Toolbar will all be disabled
EditShortcuts: when set at 0 the "Shortcuts" node in the Project Explorer window will not
be displayed, the "Add a new Shortcut" item from its edit menu (right mouse click), and the
"Add a new Shortcut" from the Project Explorer window's command panel and the "new
shortcut" icon in the toolbar will all be disabled
EditMenus: when set at 0, the "Menus" node in the Project Explorer window will not be
displayed, the "Add a New Menu" item from the edit menu (right mouse click), the "Add a
new Menu" from the Project Explorer window's command panel and the "New Menu" icon in
the ToolBar will all be disabled
EditParameters: when set at 0, the "Parameter Files" node will not display in the Project
Explorer window, the "Add a new Parameter File" from the edit menu (right mouse click), the
"Add a new Parameter File" item from the Project Explorer window's command panel and the
"New Parameter File" icon from the ToolBar will all be disabled
EditUsers: when set at 0, the "Users and User Groups" node will not be displayed in the
Project Explorer window
EditDLRs: when set at 0, the "DataLoggers And Recipes" node will not be displayed in the
Project Explorer window
EditAlarms: when set at 0, the "Alarm List()" node will not be displayed in the Project
Explorer window
EditEvents: when set at 0, the "Event Object List" node will not be displayed in the Project
Explorer window
EditSoftLogic: when set at 0, the "Soft Logic" node will not be displayed in the Project
Explorer window
EditScreenNavigation: when set at 0, the "Screen Navigation Editor" node will not be
displayed in the Project Explorer window
EditSchedurs: when set at 0, the "Scheduler Object List" node will not be displayed in the
Project Explorer window
EditScaling: when set at 0, the "Scaling Object List" node will not be displayed in the Project
Explorer window
EditChildProjects: when set at 0, the "List Child Projects" node will not be displayed in the
Project Explorer window, the "New Child Project....' item in the edit menu (right mouse click),
the "New Child Project...." item in the Project Explorer window's command panel will all be
disabled
EditNetwork: when set at 0, the "Network Services" node will not be displayed in the
Project Explorer window
EditOPCDACOM: when set at 0, the "OPC Client DA (COM) " node will not be displayed in
the Project Explorer window
ShowExtendedBrowseTag: when set at 0, allows the "OPC", 'Network' and "Comm. I/O
Drivers" tabs to be hidden in the Tag Browser window. This should stop programmers from
inserting dynamic addresses to variables (Fixed I/O address)
AllowBlockProject: when set at "1" consents the "proprietary format file" button to show
in the project's Property Window
The properties that are not in this file are to be considered active, meaning as if set at 1. However,
those that have been inserted will be managed according to the value entered in the file. Please
keep in mind that all the above listed properties may be modified by the programmer and the new
settings will be acquired by the project when opened again afterwards (this means that you will
need to close and reopen the project after having modified the ".Constraints" file).
45
M O V I C O N _ P R O G R A M M E R _ G U I D E
A child project, when created for the same parent project's platform, inherits
the same constraints as its parent project. However, if the child project is
created for a different platform, ie. the parent project is Windows 32/64 bit
type and child project is WinCE, the child project will inherit the constraints
of its platform, WinCE.constraints, found in the Movicon installation folder.
When a new project is being created with the Wizard, Movicon will search for an existing
".Constraints" file with the name of the project to be created. The search for this file is carried out in
the Movicon installation folder. When it is found it is then copied in the projects destination folder
with the project name and ".Constraints" extension.
The files originally created in the installation phase are:
Win32.Constraints: file containing the Windows 32/64 bit project constraints
WinCE.Constraints: file containing WinCE project constraints
j2se.Constraints: file containing j2se terminal project constraints
j2me.Constraints: file containing j2me mobile phone project constraints
The .movwiz file must be in unicode text format containing the basic code with the following entry
function:
46
P R O J E C T S
S T R U C T U R E
The Tools Bar, Menu and the Project Windows can be positioned inside the workspace where
you please. The Project Windows can be "Docked" in order to keep them in the workspace's
foreground.
47
M O V I C O N _ P R O G R A M M E R _ G U I D E
MDI Tabs
Editing resources which open a window in the workspace, such as Screens, String Tables, Basic
Scripts, etc., allow a series of MDI Tabs to be displayed at the top of the window to allow you to
quickly pass from one resource to another:
Right clicking on these Tabs a context menu is open, containing the following commands:
When a window is "Docked" it will always remain visible and will occupy space within the
workspace. Some project windows, such as the Properties window, when parked, dynamically
change their contents to adapt to the resource or the component being focused on.
When the window is 'Hidden' only the Tab identifying it is visible and is positions on one of the
sides of the Movicon window. When the mouse cursor is position on the Tab desired the window is
displayed like a drop-down menu, When the window is not longer being focused on it will
automatically be hidden again.
To turn the window from being 'Docked' to 'Hidden' and viceversa, simply use the 'Pin' button on
the top right title bar at the side of the "X" button which closes the window. The status of the
button's icon shows which display mode is in action:
48
P R O J E C T S
S T R U C T U R E
This icon means that the window is 'Docked', therefore it will remain in the
foreground and always visible in the position defined by the programmer.
This icon means that the window is 'Hidden', therefore only the Tab with its name
on remains visible at the side of the screen. When the mouse cursor is positioned
on the Tab, or clicked on, the relating window will be displayed in its entirety.
When changing focus to another window or area in the workspace, the window will
automatically be hidden again.
The Movicon Project Windows which are subject to these settings are:
When a window is docked you can drag it to a more suitable position either by attaching it to the
Movicon window border or moving it to the centre of the Movicon workspace or to any other area. In
order to do this drag the window by its title bar.
In addition to this you can also create compositions with more windows. By dragging one window
onto another and dropping it into a suitable position you can get two composition types. In the first
case you get one single window where the Tabs of the component windows are visible at the bottom
and by clicking on the one desired will activate its relating window. Whereas in the second case, the
windows are all visible but are attached to one another to form one window only:
49
M O V I C O N _ P R O G R A M M E R _ G U I D E
To enable or disable the Rulers just simply use the appropriate command found on the "Aligning
Bar", or use the "Ruler" item from the "Layout" menu. When using the menu item you can enable
the horizontal and vertical rulers separately as well as setting the referential measure units
(Millimetres, Centimetres, Inches).
In addition to the command for making the Grid visible or invisible there is also another command to
enable the alignment of objects with the Grid. This command can also be found on the "Aligning
Bar", or you can use the "Grid Settings..." item from the "Layout" menu. When using this menu
you can also set the Grid's sizes, in pixels, being the space you wish to obtain between one point of
the Grid and the next.
50
P R O J E C T S
S T R U C T U R E
Show Grid
Enables or disables the displaying of the grid on screen.
Snap to Grid
When enabling this setting the screen's objects will be aligned to the grid according to the grid's
resolution.
Size X (pixels)
The distance in pixels between one point on the grid's horizontal axis and the next is set in this field.
Obviously lower the value, more precise the resolution will be.
Size Y (pixels)
The distance in pixels between one point on the grid's vertical axis and the next is set in this field.
Obviously lower the value, more precise the resolution will be.
51
M O V I C O N _ P R O G R A M M E R _ G U I D E
line ('Commands') with the relative argument, which will be executed when the command is
activated from the menu.
By using the tools from the bar at the top of the card you can add or delete the item from the Tools
menu. The list of applications existing on the menu are initially loaded from the "Tool.xml"
configuration file (see paragraph on "Tools Menu Configuration").
Keyboard
From the Keyboard card you can view the complete list of keyboard commands of the Movicon
Toolbars.
The default settings can be restored by using the Reset All command.
The keyboard commands can be removed but not added to.
Menu
You can customize the display of the system menu through the Menu card. The Project Menu
selection is not active at this time.
The 'Application Frame Menus' command lets you defined the type of animation you wish to use
each a menu is opened.
The 'Menu shadows' box lets you enable or disable the menu's shadow when opened.
Options
The Options card lets you customize the further use of the menus in Movicon. Through the selection
box, you can set the style in which you wish the menus to be displayed.
The 'Large Icons' box lets you enlarge the sizes of the icons from the Toolbars.
The 'Visualizations' box lets you enable the tooltips when the mouse is pauses on the icons of the
toolbars.
The 'Menus show recently used commands first' command lets you set how to manage the menu
commands being used, by defining whether to immediately display only those used the most or
those recently used.
When right mouse clicking on the TAB group a menu will appear to let you execute certain
commands:
The "Close" command closes the selected resource, whereas the "Go to Resource" command
highlights in the 'Project Explorer' window which resource is active in the workspace.
The "New Horizontal TAB Group" and "New Vertical TAB Group" commands are used for
creating new horizontal or vertical TAB Groups so that more resources can be displayed at the same
time and regrouped as pleased if required:
52
P R O J E C T S
S T R U C T U R E
In the example above a second vertical TAB group has been created to group the screen and Basic
Script resources separately.
Once two or more TAB groups have been created you can move a resource from one group to
another by simply clicking and dragging it to the other group. This can also be done by using the
"Move to Next TAB Group" command found on the menu which appears when clicking the right
mouse button on the resource's TAB:
53
M O V I C O N _ P R O G R A M M E R _ G U I D E
New (Ctrl+N)
Opens a new project by presenting the wizard window to create it.
This command is also available in the Movicon "File Menu" of Movicon.
Open (Ctrl+A)
Opens an existing project, by presenting the browse window for you to search for
it.
This command is also available in the Movicon "File Menu".
Open Device Project
Opens the Download window to consent downloading of project from the CE device
connected. For further information please consult the section on "Upload/Download
Project" in the Movicon CE manual.
This command is also available from the Movicon "File Menu".
Save (Ctrl+S)
Saves the modifications made to the current project resource, which the one
selected in the "Project Explorer" window at that moment.
You can save a project even when the license inserted, hardware or software, is
only runtime type. In order to do this, you will need to keep the "D" key pressed
down and then activate the project save command. This will save the project and
enter the application into "Demo Mode". Close and reopen Movicon to exist from
"Demo Mode".
This command is also available in the Movicon "File Menu".
Save all
This makes a complete save of all the projects opened in the "Project Explorer"
window.
This command is also available in the Movicon "File Menu".
Cut (Ctrl+X; Uppercase+Cancel)
Cuts the object, resource or any other thing which has been selected by cancelling
it and saving it in memory on the Windows Clipboard.
This command is also available from the Movicon "Edit Menu".
Copy (Ctrl+C; Ctrl+Ins)
Copies the object, resource or any other thing which has been selected in memory
on the Windows Clipboard.
This command is also available from the Movicon "Edit Menu".
Paste (Ctrl+V; Uppercase+Ins)
Pastes the object, resource or any other thing which has previously been Copied or
Cut on to the Windows Clipboard on the point selected by the mouse in the
workspace.
54
P R O J E C T S
S T R U C T U R E
Project Run
This command allows you to Run the project. There are four runtime modes that can be executed
from the management environment. By keeping the mouse button pressed down on the icon for at
least one second you will get a drop down menu containing the four icons for selecting the mode to
be activated. Normally the last selected Run modality is displayed in the Tool Bar. The choices are
the following:
Start Project. Executes the project Runtime in the usual way.
Run Screen. Only runs the project's graphics. This means that only the graphical
and animation part of the project will be run and not the Communication Drivers,
the Data Loogers, etc.
55
M O V I C O N _ P R O G R A M M E R _ G U I D E
Step Mode. The project is run one step at a time. The programmer has to
confirm the execution of the next step. The same goes for the project stop phase.
This modality is very handy to identify which phase generates the error when
problems arise at the project startup.
Attach Running. When using this mode, Movicon will propose a browse window
from which you can select a PC, local or network, on which a Movicon project is
already running. You will then be able to interact with the project by using the
"Watch Window" for executing any debugs for instance.
This command is also available from the Movicon "File Menu".
Edit RealTime DB Variable (Alt+D)
This opens the window listing the project's RTDB Variables.
This command can also be found in the Movicon "View Menu".
Edit String Table (Alt+S)
This opens the "String Table" for editing the project strings
This command can also be found in the Movicon "View Menu".
Check Missing Strings (Alt+M)
This activated the Inserting Missing Strings command for the selected resource.
This command can also be found in the Movicon "View Menu".
Options Used
This opens the dialog window to check the options of the licence being used.
This command can also be found in the Movicon "View Menu".
Upload Project
This opens the dialog window for uploading the project to a CE device. For further
information please refer to the section on "Upload/Download Project" in the
Movicon CE manual.
Device Control Panel...
Command currently not available.
Get Latest Version
This command allows you to read the last version of the resource selected in the
Project's Explorer Window with the project in Visual SourceSafe.
This command can also be found in the Movicon "File Menu" and in the resource menus.
Check Out
This command allows you to extract a resource file from the SourceSafe project.
This command can also be found in the Movicon "File Menu" and in the resource menus.
Check In
This command allows you to put back a resource file in the SourceSafe project.
This command can also be found in the Movicon "File Menu" and in the resource menus.
Undo Check Out
This command allows you to undo the changes made to a resource.
This command can also be found in the Movicon "File Menu" and in the resource menus.
56
P R O J E C T S
S T R U C T U R E
Find Next
After having started a search with the Find button you can carry out another search
for the next specified text with the Find Next command, also executable with the F3
key.
This command is also available from the Movicon "Edit Menu".
Find
This is made available after a resource, set with this tool, has been opened. The
'Find What' command permits you to specify a character or text string to be
searched for within the selected resource.
This command is also available from the Movicon "Edit Menu".
Print (Ctrl+P)
This button is used for printing the currently opened screen window. A window will
appear to select and set the printer.
This command is also available from the Movicon "File Menu".
Help (F1)
This button activates the Movicon online help directly on the topic belonging to the
description of the current resource, component, etc. being used.
57
M O V I C O N _ P R O G R A M M E R _ G U I D E
Same Height
This command resizes with the same height of the objects selected on screen.
Same Size
This command resizes with the same width and height of the objects selected on
screen.
Grid ON-OFF
This command lets you activate or deactivate the Grid display on screen.
Snap to Grid
This command lets you activate or deactivate the objects' alignment to the Grid on
screen. This command also works when the Grid is not displayed, which means
that the objects will be aligned according to the Grid's settings.
Rulers
This command lets you activate or deactivate the display of the screen's Rulers.
Bring to Front
This command is used for setting the selected symbol at the top of the tabulation
order.
Send to back
This command is used for setting the selected symbol at the bottom of the
tabulation order.
Move Next
This command is used for moving the selected object one place forward in the
overlap order.
Move Previous
This command used for moving the selected object one place back in the overlap
order.
Create Symbol
This command creates symbols. For further information, please refer to the
section on "Commands for Creating Symbols".
Ungroup
This command ungroups symbol formations. For further information, please refer
to the section on "Commands for Creating Symbols".
Re-Create Symbol
This command re-creates the symbol. For further information, please refer to the
section on "Commands for Creating Symbols".
Add Symbol to Library
This command adds the symbol at the Template Library. For further information,
please refer to the section on "Commands for Creating Symbols".
58
P R O J E C T S
S T R U C T U R E
Layer
Each one of the buttons shown enable or disable the indicated level. Only the first
16 levels have been provides for space reasons. To access the other 16 layers you
need to use the "Set Layer Display Mode" button.
Set Layer Display Mode
This command opens the dialog window which allows you to display/hide all of the
32 levels.
The "Set Layer Display Mode" button opens the following dialog window where you can set the
visibility of all the screen's 32 layers.
59
M O V I C O N _ P R O G R A M M E R _ G U I D E
Change Font
By using this drop down list you can select
the Character Font to be set. The list
shows the Operating System's Fonts.
Change Font Size
By using this drop down list you can select the character size to be set.
The list reports the values based on the Font selected in the 'Character
Font' box.
Bold
This command activates or deactivates the displayed text, from the selected
component or symbol, in Bold.
Italic
This command activates or deactivates the italic property of the displayed text
from the selected component or symbol.
Underline
This command activates or deactivates the underline property of the displayed text
from the selected component or symbol.
Text- Pen Color
This command is used for selecting the color for the displayed text from the
selected component or symbol.
Back Color
This command is used for selecting a color to associate to the background of
the selected component, symbol or screen.
Align Left
This command is used for aligning the text, displayed in the selected component or
symbol, on the left. The alignment refers to the internal of the area occupied by
the control or symbol in question.
Centre
This command is used for aligning the text, displayed in the selected component or
symbol, in the centre. The alignment refers to the internal of the area occupied by
the control or symbol in question.
Align Right
This command is used for aligning the text, displayed in the selected component or
symbol, on
the left. The alignment refers to the internal of the area occupied by the control or
symbol in question.
AutoSize Text
This command is used for activating or deactivating the AutoSize property to
adjust the displayed text to the size of the selected component or symbol. When
this function is enabled the 'Change Font Size' will no longer have effect, but the
text will be adapted in proportion to the sizes of the component or symbol in order
to cover the area made available.
60
P R O J E C T S
S T R U C T U R E
The icons presented on the right side of the bar indicate the Alarms Status, Users activation and the
Communication Driver Status:
The first part of this field indicates memory allocated to the operating
system for all the processes (Physical memory + Paging memory); while
the second par indicates the physical and virtue memory available for the
Movicon process. This value is updated around every 5 seconds and is
expressed in Kb, Mb or Gb according to the value. In Windows 32/64 bit
the value shown is greatly influenced by the system's paging file. This
value has more significance when monitored in WinCE systems.
These two icons when shown blinking, indicate the there are active
alarms or messages in the system. These icons will not show when there
are no active alarms or messages.
This icon represents the log on status of users. When this icon is
coloured it means that there is an active user in the system. Doubleclicking this icon with the mouse will log-off the active user. When the
icon is grey this means that there are no active users in the system.
Double-clicking on the icon will open the authentication window to
execute user log-on.
This text indicates which project language is active. By double-clicking on
this icon, a dialog window will show where you can select the language to
activate in the project.
This icon represents a 'Led' that when green/yellow means that the
communication driver is working correctly, and when red means that the
communication is not working correctly or has been interrupted. The Log
will indicate the communication Driver problem type.
The text in the bar always indicates the operating status of Movicon or the description of the
command being setup.
The operating status can be represented, for example, by the last alarm or message from the
project.
The Status Bar can also display texts for command descriptions relating to
the project's customized menus.
During the project design mode the Status Bar will show information on the positions of the objects
selected:
61
M O V I C O N _ P R O G R A M M E R _ G U I D E
When an object is selected on screen, its X and Y coordinates and sizes will appear on the Status
Bar. Furthermore, by double clicking on the Zoom information (100% for default) you can change
Screen's zoom percentage.
Resume
When pressed this command resumes the run previously stopped with the Pause
command.
Pause
When pressed this command stops the following project processes:
Project IL Logic
IL Logic of Screens and the objects in them
Event Objects
Scheduler Objects
Scaling Objects
Data Loggers
Alarm management
Communication Drivers
Plus the status bar led starts blinking in yellow to indicate that the pause status is
active.
This command does not effect Basic Scripts or OPC communications.
Design Mode(ALT+F12)
Aborts the project run and returns it to development mode.
Toggle Local Project View (CTRL+F2)
Shows or hides the project's local information display window in the "Watch
Window".
Toggle Statistic Project View (CTRL+F3)
Shows or hides the display window for viewing the project's statistics in the "Watch
Window".
Toggle Watch Project View (tag)(CTRL+F1)
Shows or hides the display window to view the debugging of the project's variables
in the "Watch Window".
Toggle Script Watch View
Shows or hide the display window to view the project's basic script resources in the
"Watch Window".
Alarm Script Debugger...
Opens the "Alarm Script Debugger..." window which links all the alarms managed
in the project.
Toggle Project IL Logic View (CTRL+F4)
Shows or hides the display window to view the project's general IL Logic in the
"Watch Window".
62
P R O J E C T S
S T R U C T U R E
4.6. Menus
Movicon has a Main Menu Bar which lets you access some of the Movicon principle commands. The
Menu Bar is only available during the project development phase and is deactivated during Runtime.
The Menu Bar can be dragged to any point in the workspace and can easily be returned to its
original position by double-clicking the title bar or by dragging it again.
The sub-menus which are available from the Menu Bar are:
File Menu
Edit Menu
View Menu
Layout Menu
Insert Menu
Symbols Menu
Tools Menu
Window Menu
Help Menu
Activate Language
Hidden Menus
Movicon, as consolidated in the Windows environment, hides the not so frequently used menu items
to make the selecting of item lists much easier and intuitive.
To display all of the menu's items, you need to click the scroll arrows at the bottom of the item list to
display the ones less used. To disable this functionality and display the whole list of menu items you
have to access the settings of the "Customize" window.
63
M O V I C O N _ P R O G R A M M E R _ G U I D E
64
P R O J E C T S
S T R U C T U R E
Print Preview
The Print Preview command lets you preview the active document page as it will be when printed.
This command accesses to a display area in which other command buttons are made available and
where the mouse pointer automatically turns into a zoom in the proximity of the print preview.
Print (CTRL+P)
The print command's job is to send the currently active resource, for example screen, to the printer.
This command accesses a dialog window through which you can set the relevant print options. When
you want to print a document different from the current one you must select it first.
This command is also available from the Movicon "Tool Bar".
Projects
The last eight projects opened by Movicon are listed in this area of the window. You can directly click
on the project name to open it without having to go to the selection window presented by the 'Open'
command.
Exit
Executes exit from Movicon.
65
M O V I C O N _ P R O G R A M M E R _ G U I D E
66
P R O J E C T S
S T R U C T U R E
Project Explorer
This selection displays the "Project Explorer" window. This command only works when the window
is not currently displayed.
67
M O V I C O N _ P R O G R A M M E R _ G U I D E
Properties
This selection displays the "Properties Window". This command only works when the window is
not currently displayed.
Symbols Library
This selection displays the "Symbols Library" window. This command only works when the window
is not currently displayed.
Dynamic Help
This selection displays the "Dynamic Help" window. This command only works when the window is
not currently displayed.
Formatting
This selection displays or hides the "Formatting Bar" tool bar.
Aligning
This selection displays or hides the "Aligning Bar" tool bar.
Symbols
This selection displays or hides the "Symbols Bar" tool bar.
Layer
This selection displays or hides the "Layer Bar" tool bar.
Script Explorer
This selection displays the "Script Explorer" window. This command only works when the window is
not currently displayed.
Logic Explorer
This selection displays the "Logic Explorer" window. This command only works when the window
is not currently displayed.
Output
This selection displays the "Output" window. This command only works when the window is not
currently displayed.
ToolBox
This selection displays the "Toolbox" window. This command only works when the window is not
currently displayed.
ToolBar
This selection displays or hides the "Tool Bar".
Status Bar
This selection displays or hides the "Status Bar".
Application Look
This command allows you to select different ways on how you want the Movicon development
environment to look by changing the windows' graphics and colors.
Edit String Table...
Opens the window for editing the Movicon Strings.
Edit Real Time DB Variables...
Opens the window for displaying the Movicon Variables List.
Check missing Strings...
Activates the Inserting Missing Strings command for the selected resource.
Only Dynamic Object Properties
This setting allows only animated objects to be displayed inside a selection of more than one
component. This is needed particularly for being able to see only the animated objects in grouped
symbols. Only the animated objects will be available from the Combo-box of the "Properties
Window".
Apply Renamed Variables and Resources
This command allows the names of renamed variables and resources (screens, basic scripts, menus
and shortcuts) to be applied to all the project's resources. When activating this command all the
project resources and their object contents (screens, basic scripts, menus and shortcuts) are
68
P R O J E C T S
S T R U C T U R E
controlled and all variables and resources found with their original set name will be replaced with the
new current one.
For further information on the procedures used for activating this command please refer to the
"Rename Variables" and "Rename Resources" paragraphs.
Show the Renamed Variables and Resources
This setting allows the original names of the renamed resources and variables to be shown in the
Project Explorer window. When this option is active along with the renaming manager, the variables'
and resources' 'old' names will be shown in brackets after their new names. The "Apply Variables and
Renamed Resources" or "Apply New Name" commands from the context menus can be used for
applying new names conclusively in all the project's resources.
69
M O V I C O N _ P R O G R A M M E R _ G U I D E
Set Same
This command opens a window for setting the objects' sizes.
For further information please refer to the section on Movicon "Object Alignment Functions".
Grid Settings...
This command opens a window for setting the screens with the Grids.
For further information please refer to the section on Movicon "The Grid".
Ruler
This command opens a submenu for setting the screens with Rulers.
For further information please refer to the section on Movicon "The Rulers".
TAB Order... (CTRL+D)
This command lets you activated the Tabulation order of the objects on the screen.
For further information please refer to the section on Movicon "Tab Order".
Resize
Not available at this moment
Remote Device Size (WinCE)
This command lets you size the screen window with the target WinCE PC characteristics to which the
project will be exported. Before launching this function you need to put into effect the connection
between the desktop PC and the target PC with ActiveSync.
Zoom In (CTRL+Pi(Tn))
This command enlarges the screen graphics. This function is also supported by
commands
multitouch
First
This command is used for placing the selected object in foreground.
For further information please refer to the paragraph on "Overlap Order".
Last
This command is used for placing the selected object in background.
For further information please refer to the paragraph on "Overlap Order".
Move Next (+(Tn))
This command is used to move the selected object one place ahead in the overlapping order.
For further information please refer to the paragraph on "Overlap Order".
Move Previous (-(Tn))
This command is used to move the selected object one place back in the overlapping order.
For further information please refer to the paragraph on "Overlap Order".
Symbol
This command is used to group, ungroup or insert Movicon symbols in the library.
For further information please refer to the paragraph on "Commands for Creating Symbols".
70
P R O J E C T S
S T R U C T U R E
Font Escapement
You can type in the text for the title of each object by using 'Properties Window'. The text will be
made visible in the object itself. This property lets you establish the modifications for the font's
standard direction, being zero degrees (Horizontal towards right).
The title font can be then set at 90 (vertical upwards), 270 (vertical downwards) or on a
customized angle.
A customized angle can be inserted by using the appropriate dialog window as shown below:
Color
The objects inserted on screen can be associated with the Colours desired which relate to the
background, line around the edge or the text. Apart from using the 'Properties Window', the color
settings can also be done by using the appropriate commands from the Drawing Menu or with the
right mouse key. This command offers the advantage of speeding up the most common and frequent
editing operations in drawings.
The Color is settable when the colour display has been enabled in the object's property otherwise the
object will result transparent.
71
M O V I C O N _ P R O G R A M M E R _ G U I D E
Shadow
The objects inserted on screen can be associated with a Shadow effect by means of using the
appropriate command from the Drawing menu or with the right mouse key.
The Shadow effect is settable when the shadow display has been enabled in the object's property.
The shadow will be displayed with the standard configuration and colour.
Import...
This command is used for importing a vectorial drawing realized with an external editor onto the
screen. The Windows metafile (EMF, WMF) is the supported format.
For further information please refer to the paragraph on "Importing/Exporting Vectorial
drawings".
Export...
This command is used to export a Movicon vectorial drawing in Windows metafile ((EMF, WMF)
format.
For further information please refer to the paragraph on "Importing/Exporting Vectorial
drawings".
Flip
The Reflects command is used for turning over the selected drawing in Horizontal, Vertical or both
mode.
These commands are settable from the Drawing Menu or by using the right mouse key.
72
P R O J E C T S
S T R U C T U R E
Duplicate
The Duplicate command is used for copying the object or the objects selected. Practically, this
command is a 'copy-cat' of the system's Copy and Paste operations.
Edit Image
This command consents you open the screen's associated back image in edit mode.
Edit Synapses...
This command lets you create a new Synapses object. According to the block function editing
techniques, the symbol's element can become an active working logic, linked in sequence to other
Synapses function blocks.
For further information please refer to the paragraph on "Synapses ".
Edit Composed Movement
This command lets you edit the object's 'Composed Movement'.
For further information please refer to the paragraph on "Composed Movement Editing".
Set Default Structure...
This command lets you associate a Default Structure to the selected object.
For further information please refer to the paragraph on "Default Structures in symbols".
Dynamic Property Inspector...
This command lets you open the selected object's "Dynamic Property Inspector Window"
window.
Compile IL Logic
This command compiles the IL Logic for the selected symbol.
Rotate
The Rotate command is only available for Polygon drawing types and is can also be accessed from
the text menu which opens when right clicking on the drawing.
This command permits the object to rotate permanently by setting the desired angle vale from 1 to
359 degrees (integer values). However, this command rotates Polygon objects in 'static' mode by
repositioning their angle vertexes in permanent mode in the object's XML definition. The Undo
command can be used to cancel modifications if the screen or project has not already been saved,
otherwise the rotation will be always be applied to the object.
If polygons are part of a Symbol's contents, the "Rotate" command can be applied to all the
supported objects (Polygons) contained in that symbol and a message to confirm operation will show
if symbol also contains objects that the rotate command cannot be applied to.
This function responds to integer coordinate values (pixel) where each
rotation may be subjected to inevitable approximates. As a consequence,
repeated rotations may alter the polygon's shape.
The 'Rotate' function does not accept negative angle values, but when
setting an angle with a negative value instead of "", the resulting value
from this operation (360- the absolute value of "", ) is its equivalent.
However when setting this value for the "Rotation" you will get a negative
rotation. For instance, to rotate the polygon at -45 you will need to enter
360-45 = 315.
Edit Aliases...
The Edit Aliases..." command opens the selected object's alias table. The same command is also
available from the menu which appears when right clicking the object or from the object's properties
window with the General "Object Alias Editor" property.
For further information about using the aliases please refer to the paragraph entitled "Aliases in
Objects".
73
M O V I C O N _ P R O G R A M M E R _ G U I D E
Upload/Download service
Starts TCPUploadServer.exe.
Alarm Dispatcher
Open the Alarm Dispatcher application session.
Notepad
Opens a Notepad application session.
Paint Brush
Opens a Paint Brush application session.
Windows Explorer
Opens a Windows Explorer application session.
CSV Tag Importer-Exporter
Opens a CVE Tag Importer-Exporter application session.
Tag-Alarm Wizard
Opens a Tag-Alarm Wizard application session.
Development CodeIinfo
Runs the "RegDevCode.exe" application to read the Movicon development (or registration) code.
Customize
Opens the Movicon "Customize" setting window.
Save: save current configuration. You can specify the name to be assigned to the
configuration or select an already existing one to overwrite
Load: loads the selected configuration
Window Name
The last nine windows open the workspace are listed in this area of the window. When clicking on
the name of the window with the mouse will bring it to the forefront and display it in full view.
Window...
This command is used for opening a dialog window containing a list of the window open in the
workspace. This command is handy when more than nine windows are open in the workspace and
therefore not all listed in the Menu.
74
P R O J E C T S
S T R U C T U R E
Activate: activates the window selected in the list by bringing it into forefront vision in the
workspace
OK: closes the dialog window without activating any commands
Save:
Close Window: closes the window selected in the list
About Movicon...
By using this "Information on...", you can access information of the Movicon system being used
which is very helpful when having to ask for any "Technical Support".
The Progea Web and Email addresses are also available from this Information window, so that the
user can get hold of them easily when needed or for requiring information on the most recent
Movicon versions or its new products.
The "Check for Updates" button lets you check and download any product updates.
75
M O V I C O N _ P R O G R A M M E R _ G U I D E
When selecting the "Version Infos" tab you can check all the information concerning the version
of the project being used. As mentioned above, this information is fundamental to the "Technical
Support" when contacting them for assistance.
Bugbase
This opens a connection to Progea's Bugbase page on the Internet. Therefore the WEB connection
must be active in order for this to happen. Access to the BugBase is reserved for Clients and requires
user to have a Customer access code and password.
Knowledgebase
This opens a connection to the Progea Knowledgebase page on the Internet. Therefore the WEB
connection must be active in order for this to happen. Access to this BugBase is reserved to
registered users and requires authentication using the credentials inserted on the registration form.
76
P R O J E C T S
S T R U C T U R E
77
M O V I C O N _ P R O G R A M M E R _ G U I D E
78
P R O J E C T S
S T R U C T U R E
79
M O V I C O N _ P R O G R A M M E R _ G U I D E
80
P R O J E C T S
S T R U C T U R E
Filter
This 'Project Explorer' sub-window is used for creating display filters in elements from various Project
Resource groups, displayed in a tree structure in the Project's sub-window as described further
ahead:
To execute a filter you must first type the text or the characters to be used as filter in the
appropriate box. The "*" and "?" jolly characters are also allowed. Then you need to select the
resource group in which the activate the filter, and this can be done by clicking on the appropriate
icon shown in the bar of filters, or by directly selecting the resource group in question with the
mouse in the 'Projects' sub-window. After this you only need to activate the filter with the
appropriate button presented in the bar of filters (
).
81
M O V I C O N _ P R O G R A M M E R _ G U I D E
To delete any active filters just cancel the filter's characters from the box or leave the "*" jolly
character only, then press the filter activation button again.
Projects
This 'Project Explorer' sub-window gathers the project's resources together in groups in a tree
structure.
Each group is composed of elements which can be added, changed and cancelled by the
programmer to get a complete project as required.
Comands
This sub-window in the 'Project Explorer' shows a list of commands which dynamically changed
according to the Resource Group selected at that moment:
For example, if you select the "Real Time DB" group the listed commands will be:
Add
Add
Add
Add
a
a
a
a
New Variable
New Comm. Driver
New Struct Prototype
System Variable
The same commands can also be accessed by right mouse clicking on the desired element. To check
the list of all the available commands see the section titled "Context Resource Menus".
By using any one of these modes will display the 'Properties Window' relating to the Resource or the
Control selected in that moment.
Every time you select a different Resource or Control the 'Properties Window' will automatically
refresh its fields different adapting them to the properties of the component being focused on.
The 'Properties Window', as all the Movicon windows, can be 'Docked and kept in foreground
view' as described in the section on ("Docking Project Windows").
82
P R O J E C T S
S T R U C T U R E
Pressing this validation button activates any modifications carried out in the
'Properties Window' in the component selected.
Pressing this button deletes any modifications carried out in the 'Properties
Window'. In this case only the modifications done after the last validation
command execution will be cancelled.
Pressing this button displays the properties by group type.
groups may be 'General', 'Style', Execution', etc.
Pressing this button displays the properties in alphabetical order. In this case
subdivisions in group effect will disappear.
This button is enabled only when the properties are displayed in groups. In this
case by pressing this button you can pass from 'Exploded' to 'Compressed' group
displays or vice-versa. This allows you to hide or view all the properties contained
in each group.
Pressing this button permits you to display or hide the help window which appears
at the bottom of the 'Properties Window'. This help window only gives a reduced
description string of the property selected. It may be handier to supply the
property description immediately and without having to open a supplementary
help window.
Pressing this button directly opens a Movicon help online file on the top belonging
to the selected property description.
Pressing this button allows you to pass from the "Advanced" (not easy) to the
"Easy" display and viceversa of the properties listed in the window.
Easy Mode
The Properties Window has two display modes. "Easy" and "Normal". The display is changed by
using the
bottom from the toolbar in the same window.
In "normal" mode (button released) Movicon displays all the available properties. In "Easy" mode
(pressed button) the most advanced and least used properties are hidden from view to simplify user
interfacing for the less experienced programmer.
Further more, you can define new property groups and custom colour the property fields as desired.
Property window customizing is done using xml files which can be edited as pleased. These files are
described below.
83
M O V I C O N _ P R O G R A M M E R _ G U I D E
</VisibleState>
The "description" attribute's only purpose is to describe the property being edited, and is not at all
taken into consideration by Movcion.
"PropGroup.xml", "PropGroupEasy.xml" e "PropGroupEasyPopup.xml" Files
These three files allow you to decide which property groups are to be displayed in the Properties
Window. By using these files you can define which groups each property is to belong to. Each one of
these files has an identical structure. The "property id" attribute is used in the xml files to identify the
property through its id in the Movicon resources. To make things easier, this ID also appears in the
Help string of each property which appears just by clicking on the interested property so that you
can verify it. The two PropGroup.xml and PropGroupEasy.xml file settings are activated with the
"Toggle Easy Mode" button. The PropGroup.xml file settings will be loaded when the Easy mode is
not active, while the PropGroupEasy.xml. file settings will be loaded when the Easy mode is active.
The PropGroupEasyPopup.xml file is used for loading the settings for screen object property Popup
windows (click on the top right corner of the object).
".xml" file structure:
<?xml version="1.0" encoding="iso-8859-1"?>
<GroupState>
<property id="12000" groupid="" groupname="" child="0"
description="General"/>
<property id="12001" groupid="" groupname="" child="0" description="Crypted
Project - Allows you to save the project file crypted"/>
<property id="12081" groupid="30011" groupname="Advanced" child="1"
description="Area - Select the variable memory area"/>
<property id="12082" groupid="30011" groupname="Advanced" child="1"
description="Address - Enter the variable address (for bits use the form x.x, for
arrays x (x))"/>
...
...
</GroupState>
84
P R O J E C T S
S T R U C T U R E
The "groupid" attribute represents the ID of the group to which the property must belong to. When
this attribute is left blank or is the same as its default property's group ID, the property will be
associated to its default group and therefore everything will remain the same as before. When the
"groupid" attribute is associated with an ID of another group, the property will be moved to the
group identified by that ID. When the "groupid" attribute is associated with a new ID not already
assigned, a new group will be created in the properties window with the name specified in the
"groupname" attribute. This happens only if the "child" attribute is set a"0". However, if the "child"
attribute is set at "1", the new group will be created as a subgroup of the property's default group.
In this case the subgroup will also have the name defined in the "groupname" attribute.
The group IDs created using these files can then be inserted in the PropVis.xml, PropVisEasy.xml
and PropVisEasyPopup.xml files for managing their visibilities.
The "description" attribute's only purpose is to describe the property being edited, and is not at all
taken into consideration by Movcion.
"PropColors.xml", "PropColorsEasy.xml" and "PropColorsEasyPopup.xml" Files
These three files allow you to pick the back and text colours of the properties displayed in the
Properties Window. By using these files you can define each property with a background colour and
the colour to be used in the text. Each one of these files has identical structures. The "property id"
attribute is used in the xml files to identify the property through its id in the Movicon resources. To
make things easier, this ID also appears in the Help string of each property which appears just by
clicking on the interested property so that you can verify it. The two PropColors.xml and
PropColorsEasy.xml file settings are activated with the "Toggle Easy Mode" button. The
PropColors.xml file settings will be loaded when the Easy mode is not active, while the
PropColorsEasy.xml. file settings will be loaded when the Easy mode is active. The
PropColorsEasyPopup.xml file is used for loading the settings for screen object property Popup
windows (click on the top right corner of the object).
Struttura dei file ".xml":
<?xml version="1.0" encoding="iso-8859-1"?>
<ColorsState>
<property id="12001" back="255" text="16777215" description="Crypted
Project - Allows you to save the project file crypted"/>
<property id="12004" back="255" text="16777215" description="Windows
32/64 bit - Enables project development for Windows 32/64 bit"/>
...
...
</ColorsState>
The "back" attribute represents the property's backcolor whereas the "text attribute represents the
property's text color. The value is a long number type that identifies the color code.
The "description" attribute's only purpose is to describe the property being edited, and is not at all
taken into consideration by Movcion.
85
M O V I C O N _ P R O G R A M M E R _ G U I D E
In addition to this, the F8 key has also been provided for calling the
"Tag Browser" window, which is very handy to have when inserting
variables.
You can execute the editing commands and run checks on the logic by using the command bar
positioned at the top of the 'Logic Explorer' window:
Cuts the selected text. In this case the text is cancelled but kept in
memory on the Windows Clipboard.
Copies the text selected to the Windows Clipboard.
Pastes the Windows Clipboard's contents on the pointed indicated by the
cursor.
Selects all the texts contained in the 'Logic Explorer' window.
reverses the last operation executed (ie. cancelling of a text, etc.).
restores the last operation Cancelled (ie. cancelling of a text, etc).
86
P R O J E C T S
S T R U C T U R E
bookmark
toggle bookmark
next bookmark
cancel bookmark
Find
Replace
Find Next
This button is used for getting a printout of the Logic text.
selection settings window will appear.
The print
87
M O V I C O N _ P R O G R A M M E R _ G U I D E
The Movicon "ToolBox" automatically updates every time a Screen or Embedded Report resource is
selected within the workspace. Those categories and objects supported by the two Screens or
Embedded Report resources, will be made available accordingly.
88
P R O J E C T S
S T R U C T U R E
copy the created symbol libraries ".msxz" file inside the "ToolBox" folder. The new symbols will then
be displayed within the ToolBox as a new category with the same name of the ".msxz" file and
containing the symbols inserted in the ".msxz" file.
This will allow you to extend the "ToolBox" contents with customized symbols rendering them
available for immediate use without having to get them from the "Symbol Libriaries".
those objects that can be inserted in Reports can only manage some graphical animations,
such as visibility, transparency, etc. These animations are only considered in the reporting
generating phase only. Once the report has been displayed or printed, they can no longer be
modified.
those objects that cannot be used in Reports cannot be edited, therefore those properties for
entering data or command executions are not available
Most of these objects used by the Movicon Reports are a subset of those objects that can be inserted
in Screens and in turn provide their own subset of properties.
The "ToolBox" Drawings and Controls usable in Reports can also be
grouped together to form composed Symbols and then added to the
Symbol Library to be use later in other projects.
The three "ToolBox" object categories that can be used in Reports are:
Basic Shapes
This category contains a series of drawings or simple geometric shapes that are used for creating the
Report's graphical design.
Objects
This category contains a series of controls with the purpose to display data. Data that can be
displayed by these controls include the project's RealTimeDB variables, table fields or recordsets
associated to the Report or special fields that show information from the system or the Report itself.
These values can be selected using the "Tag Browser" window or typed directly in the field.
The objects available in this category are:
Checkbox: this is a "Check Box Button" object type that displays boolean values
graphically. This object has two "Close Bit String" and "Open Bit String" properties for
specifying the boolean value to be displayed according to the string recorded in the
database. This object can be associated with a Movicon RealTimeDB variable, a table field
or a recordsets associated to the Report.
Radio Button: this is a "Check Box Button" type object that displays values graphically. In
cases where the object must display a boolean value, the two "Close Bit String" and "Open
Bit String" can be used for specifying the boolean value to be displayed according to the
string recorded in the database. This object can be associated with a Movicon RealTimeDB
variable, a table field or recordsets associated to the Report.
Standard Display: this is a "Display" object type in read only. This object can be
associated with a Movicon RealTimeDB variable, a table field or recordsets associated to the
Report.
Date Time: this is a "Display" object type in read only. This object exclusively displays the
"[SP:time]" parameter which shows the date and time when report was generated. This
format can be customized through the object's "Value Format" property (i.e. "%d:%m:%Y:
%H:%M:%S").
Current User: this is a "Display" type object in read only. This object exclusively displays
the "[SP:user]" parameter which shows the name of user that was logged in the project
when report was generated. This format can be customized through the object's "Value
Format" property (i.e.: "User: %s").
Page-Pages: this is a "Display" type object in read only. This object exclusively displays the
"[SP:pages]" parameter which shows the current report page number and total report page
89
M O V I C O N _ P R O G R A M M E R _ G U I D E
number. This format can be customized through the object's "Value Format" property (i.e.:
"Page %d of %d").
Query: this is a "Display" type object in read only. This object exclusively displays the
"[SP:filterQuery]" parameter which shows the query used for extracting data from the
database.
Selected Period: this is a "Display" type object in read only. This object exclusively
displays the "[SP:filterPeriod]" parameter which shows the period selected in the "Period"
parameter set in the report's generation command. (i.e.: Today, Yesterday and Today,
Current Week, etc.).
Duration Threshold: this is a "Display" type object in read only. This object exclusively
displays the "[SP:filterDuration]" parameter which shows the duration defined in the
"Duration" parameter set in the report generation command for Alarm Statistics. The display
format can be customized through the object's "Value Format" property (ie: "Duration
Threshold: %H:%M:%S").
Start Date-Time: this is a "Display" type object in read only. This object exclusively
displays the "[SP:filterFrom]" parameter which shows the start date set for extracting data
from the database. The display format can be customized through the object's "Value
Format" property (ie: %H:%M:%S"). This field will be populated only when the "Period"
parameter has been specified in the Report's open command. If this parameter had been
set to "None", the "Start Date-Time" field will remain empty.
End Date-Time: this is a "Display" type object in read only. This object exclusively
displays the "[SP:filterTo]" parameter which shows the end date set for extracting data from
the database. The display format can be customized through the object's "Value Format"
property (ie: %H:%M:%S").This field will be populated only when the "Period" parameter
has been specified in the Report's open command. If this parameter had been set to
"None", the"End Date-Time" field will remain empty.
The "Radio Button", "Checkbox" and "Standard Display" objects can
display RealTimeDB and Database field variables. In cases where
database fields are set to display, these objects can only be inserted in
the "Details" section, otherwise no values will display when the report is
created generating an error message in the Output and Historical Log
windows.
When two or more objects of the same type that display special fields are
inserted in the Report, such as "Date Time", "Start Date"etc, the format of
these objects should be the same. If this is not the case, Movicon will
apply the same object format applied to the first object in tab order to the
following objects in tab order. For instance, when inserting two "Date
Time" objects with two different formats, these objects will display the
same format as the one defined in the first object in tab order.
Trends
In this category a series of controls types such as the "Trend" and "Chart" objects have been
made available for use within the reports. These controls are designed to graphically display data
extracted from the database by queries. Data extraction queries can be set at different levels
through the Trend's "Default Query" property, Report Generator command's "Report - Query"
parameter and the Report's"Query Report" property. The query execution priority order is: if a query
has been set in the Trend's "Default Query" property, it will have priority of use over the rest. If
query has not been defined in this property but in the Report generation command's parameter, this
will obtain priority of use. If no queries have been in either the Trend's "Default Query" or the
Reports generation command's "Report - Query" but one has been defined in the Report's "Query
Report" property, this will have priority of use. If no customized query has been defined in all three
mentioned properties, the report's default query will be applied for extracting all data (query default
= "SELECT * FROM TableName ORDER BY TimeCol DESC").
The objects available in this category are:
Horizontal and Vertical Trend: this is a "Trend" type object that displays data obtained
through applying a query in the Horizontal or Vertical Trend in standard mode.
Trend XY: this is a "Trend" type object that displays data obtained by applying a query to
the the XY Trend in standard mode.
Basic Chart: this is a "Trend" type object that displays data obtained by apply a query.
The difference with this object in respect to a normal Trend object is that times or any set
of discrete values can be displayed along the X axis. It is necessary that this object be
specified with which resulting query recordset column is to be used as the X axis in its
"Label Data Source" property. In cases where no column has been specified in this
property, the object will use the table's time column, LocalCol, by also adding milliseconds.
90
P R O J E C T S
S T R U C T U R E
This object also provides an additional three properties for customising the X axis: "Show
Item Side by Side", "Show Labels" and "Show Labels every".
Advanced Chart: is a "Chart Object" type object that displays data obtained from report
queries. In respect to the "Basic Chart" object, the "Advanced Chart" object allows more
advanced and configurable charts to be displayed. This object like the "Basic Object" can
display times or any subset of discrete values on its X axis. It is necessary that this object be
specified with which resulting query recordset column is to be used as the X axis in its
"Label Data Source" property. In cases where no column has been specified in this
property, the object will use the table's time column, LocalCol, by also adding milliseconds.
The name of one or more database field can be inserted in the Advanced Chart's 'Curve
Variable' properties for displaying data extracted by report queries, or a project array type
variable can be associated for displaying values.
Caution! The "Advanced Chart" object uses libraries that are NOT
supported in Windows CE and therefore cannot be used in projects
running on Windows CE plattforms.
"#samples" properties can be set In "Trend", "Basic Chart" and
"Advanced Chart" objects. The value set in this property will represent
the maximum number of points that the object can display. In cases
where the number of record sets extracted by the report's query
exceeds the value set in the "Num.Samples" property, the Trend or
Chart object will only display a number of records equal to the one set in
this property.
91
M O V I C O N _ P R O G R A M M E R _ G U I D E
The path which Movicon uses for searching for the Symbol Library's
".msxz" files can be customized using the "SymbolsPath" registry key.
92
P R O J E C T S
S T R U C T U R E
Favourite Categories
The 'Symbols Library' contains a large series of categories, listed in alphabetical order. The scroll
arrows and the [...] search button are used for a much easier search of the symbol categories
desired.
You may find it handier to use the 'Favourite Categories' which allows you to show the most
frequently used categories on the left hand side of the library to point them out quicker.
To label a symbol category as 'Favourite', right mouse click on the category of interest, then execute
the 'Add to Favourites' command that displays ?.
The Tab relating to the selected category will appear on the left hand side to evidence it from the
rest.
To delete one of your Favourite categories, carry out the same procedure by selecting the 'Remove
from Favourites' command instead.
93
M O V I C O N _ P R O G R A M M E R _ G U I D E
By using the symbol's 'Dynamic Property Inspector' window you can view the symbol's structure and
directly access all the variables used and the basic script codes contained in the symbol's elements.
Each one of the Tabs, at the top to the window, represents each single component of the symbol.
When clicking on the desired symbol element the dynamic property inspector will display the
variables associated to the symbol's execution dynamic properties and any script codes.
The 'Dynamic Property Inspector' window normally is presented every
time a symbol from the "Symbols Library" is inserted containing animation
variables or basic codes. In this case the window will open on the "List
Variables Used for..." tab where all the variables used within the symbol
are be listed.
The Dynamic Property Inspector window allows you view help indications or tips on each tab
describing objects contained in the symbol which have variables used in animation properties. The
animation types for which existing variables are used are always displayed in the tabs of each of the
symbol's object. Also listed in the tabs are variables used in the symbol where set variable
descriptions can be displayed as displayed at RealtimeDB level with same description shown in the
'Dynamic Property Inspector" window. In cases in which the variable has not been given a
description, the "Used in:" string followed by the list of objects in which the variable is used,
separated by ";" will be shown in the Dynamic Property Inspector. Therefore it is possible to create
a symbol that uses variables with or without descriptions and add them to the library so that when
the symbol is next reinserted on screen, the tab will show listing the variables used along with their
descriptions.
If the variables to be replaced have also been used in the symbol's script code, they will also get
replaced in the code as well by using the same rules used for the "Permanent application of
renamed variables" command.
Replacing Variables
The inspector window indicates the variables which the selected drawing element has been
associated with by specifying the interested dynamic property. Each one of the variables can be
replaced with a different one, or the Variables DB can be accessed by clicking on the [...] setting
button on the right of the Variable's box. By doing this you can directly assign a replacement variable
existing in the DB or create a new one, which will be introduced in the Variables DB and assigned to
the selected element to replace the one previously associated to the symbol.
If the variable being modified is contained more than one symbol
object, just modify it in one object only after which it will be updated
in all the other objects when the symbol is created on screen. In this
case however, is the variable is changed completely, any description
presented for the variable associated to the symbol will not get
updated with the new variable's description.
94
P R O J E C T S
S T R U C T U R E
95
M O V I C O N _ P R O G R A M M E R _ G U I D E
By using the command bar place at the top of the "Refactoring Explorer" window, you can execute
rebuild commands for the resource you selected:
Editing Objects
When selecting an item, its name will appear in the window's bottom bar to let you know which
component type is being referred to in the error list displayed in the window:
96
P R O J E C T S
S T R U C T U R E
You can execute XML code editing commands by using the command bar place at the top of the
"XML Code Explorer":
The commands provided are for editing text, copy&paste, find, etc.
Editing Objects
When selecting an item, its name will be displayed in the window's bottom bar. This lets you know
which item the XML code, displayed in the window, refers to:
97
M O V I C O N _ P R O G R A M M E R _ G U I D E
The "Tag Explorer" window can also be opened with the F8 key when in the following windows for
editing script codes or IL logic:
The "Tag Explorer" window opens upon pressing the F8 key and after having selected the variable,
focus will return to the point in which the variable was inserted in the code. Using the F8 cuts down
on the number clicks/operations usually needed for adding variables to code.
The "Tag Explorer" window cannot be opened with the F8 key from a
Basic Script Edit window where it functions in a different way within this
context.
The types of selections available on the Tag Browser's Tabs are:
Variables
This window shows the list of the variables available in the Real Time DB for the project currently
opened. The command buttons presented are:
Refresh: refreshes the list taking into account any filter conditions inserted in the "Filter"
field
New...: inserts a new variable in the Real Time DB by opening a window where you can
also edit the new variable's properties
Expression...: opens a VBA Expression editor to allow you to insert a "Basic Script
Expressions " (this will replace the single variable)
Variable properties can be edited by using a window which opens with a right mouse click on the
variable you wish to edit.
Child Project Variables
This window shows the list of variables available in the Real Time DB of eventual child projects. The
'Refresh' and 'New' command buttons are provided and have the same functions as the buttons
provided in the "Variables" group but refer to the child project's Real Time DB.
Network
This window consents you to select a project locally or from a PC in network and displays a list of the
variables which the project has been provided with for networking.
OPC
This window consents you to select a local OPC Server or one from PC in network and displays the
list of available tags for the Client.
Comm. I/O Drivers
This window consents you to add dynamic links to the Communication Driver. The Drivers inserted in
the project will be displayed on the list and Tasks can be inserted by double-clicking on the driver of
interest.
98
P R O J E C T S
S T R U C T U R E
DB Fields
This window shows the list of field which can be associated to Movicon "Embedded Report" objects.
These fields are in fact table columns resulted by the query associated to the Report. For example if
the Report is not associated with a customized query, all table columns will be listed as the Report's
default query will extract all data from the table. However, if a customized query is specified in the
report's "Query Report" property, the list of fields will only show those columns of the resulting
recordset. In addition, it is also possible to enter the name of the recordset field in the query, for
example applying a query with alias as column names. For example, executing the following query:
SELECT UniID, EvDescCol, Count(UniID) AS Frequency FROM Alarms WHERE EventCol = 'ALARM
OFF' GROUP BY UniID, evDescCol ORDER BY 3 DESC
in the field list it will be possible to select the "Frequency" even those it is not a column form the
"Alarms" table.
When the "Alarm Statistic" option is enabled afterwards, some more fields will be made available on
the list of selectable fields for the Alarm statistics. These fields are:
_TotalNumOn_
_TotalNumAck_
_TotalNumReset_
_TotalTimeOn_
_ProgressiveId_
_DateTimeOn_
The values of these additional fields, which do not belong to any of the tables, will be taken from
statistical data of each individual alarm. This statistical data is the same data described in the "Alarm
Statistic" and "Alarm Status File" paragraphs.
In order to compile the list of fields available, Movicon must be able to access the database. If this
does not happen for various reasons, i.e. incorrect or no ODBC connection or data extraction query
incorrect, one of the following error messages will show:
Error on connecting with the report datasource (see the Output window for more
information)
Error on executing the report query (see the Output window for more information)
A this point by opening the Movicon Output window you will be able to get more detailed information
on error type from the "DBMS Log " tab.
When using an IMDB database the list of fields gets populated without
considering whether or not a query has been entered and therefore all
table fields will be listed. In this case the report query is only evaluated
in runtime only.
Filter by Name: the text entered in this field is used for filtering the table's "Name" column,
therefore the name of the variable.
Filter by Desc.: the text entered will be used for filtering the table's "Description" column,
therefore any variable descriptions
Filter by Dyn: the text inserted in this field will be used for filtering the "Dynamic" column,
therefore any variable dynamics.
All three entry fields support the use of the "*" and "?" jolly characters. and can be used at the
same time for applying more detailed filters. In this case the three filter clauses are entered with
"and" between each one. Once the filter has been set, use the "Refresh" button for applying the
filter, or prest the "enter" button when the cursor is within one of the entry fields.
99
M O V I C O N _ P R O G R A M M E R _ G U I D E
A very fast version (light), displayed purely in table form like the one used for editing project
strings. This version allows you to open a database composed of many variables (even more
than 50,000) in less than one second. Filtering or grouping cannot be performed on this
table.
Not so fast version (full) but consents variable filtering, ordering and grouping.
This variable can be opened with a double-click on the "List Variables (Tags)" group or on the name
of a variable group in the Project Explorer window. If the project contains more than 3000 variables
(this value can be modified through the "MaxVariableToOpenLightDBVariable" registry key), Movicon
will ask you if you wish to use the less powerful but extremely faster editor instead (light version).
In any case it is always possible to force the faster editor open by pressing the keyboard "CTRL" key
while double-clicking with the mouse.
By using the new editor you will find it much faster to put into order and filter the variables
compared to just using the project Explorer window.
This RealTimeDB Variables table's only purpose is to very clearly and quickly display variable lists,
but it does not allow you to carry out any modifications directly in it. The properties of one or more
selected variables can be changed using the Properties Window.
The list can be put into order by its item types by simply clicking the column's title. The commands
for applying filters or grouping variables are at the top of the window and include:
100
P R O J E C T S
S T R U C T U R E
Collapse all: this command does the opposite of expanding groups displayed in the table
based on the "Group" field settings. In this case a line for each group item will be
displayed in the table.
When changing the properties of variables, they may appear in the
wrong groups until regrouped again. This functionality has been
purposely designed to give priority to quicker editing when dealing with
large amounts of variables.
The applied filters and table layout (column positions and visibility) are
saved by Movicon, meaning that when you close and restart Movicon
these settings will remain the same.
Filter operations are not available and displayed columns can only be
repositioned and not removed when the RTDB variables window is
opened in "light" mode.
You can select different Tabs from the bottom of the window for viewing messages according to the
different groupings as described below.
When right clicking on the area of the window a menu will appear with the
"Clear all messages" command. When this command is confirmed all the
active TAB messages will be cancelled, but only those from the Output
window and the Historical Log window.
System
Lists the system messages, such as project run, driver communication status, etc.
Default
Lists the Project's default messages.
OPC Server
Lists the messages inherent in the Movicon OPC Server.
OPC Client
Lists the messages inherent in the Movicon OPC Client.
Networking Services
Lists the messages inherent in the Movicon Networking Server messages.
Networking Client
Lists the messages inherent in the Movicon Networking Client messages.
Users Log
Lists the messages inherent in the Project's Users Log.
DBMS Log
Messages, inherent to log recordings and executed through the ODBC or IMDB, are listed.
101
M O V I C O N _ P R O G R A M M E R _ G U I D E
Trace Help
Returns the index number of the Movicon dynamic help required.
Basic Script Messages
When the Basic Script's "Create its Tab Trace" property is enabled, a new TAB will be created with
the same name of the Basic Script in runtime where the Debug.Print messages, in the Basic code,
will be printed.
Linked Topics: are a series of links which change dynamically according to the Topic which
has been selected.
General Information: is a series of links concerning the general or frequently consulted
information/asked questions.
Technical Support: is a series of links regarding the Movicon technical support.
Watch
The Watch group is composed of different TABs. The 'Project' TAB contains information on the
project's general characteristics, such as the number of variables in use, the number of active
screens, the number of connected Clients, etc. The other TABs, called 'Watch 1', 'Watch 2'. etc.,
allow one or more variables to be selected for monitoring or changing.
In order to carry out any changes to a variable, simply click the
right side of the displayed value and then enter a new one. As an
alternative, after having selected the line with the variable, press
down the F3 key to enable value editing.
102
P R O J E C T S
S T R U C T U R E
When clicking on the command for selecting variables to insert in the window, the Movicon Tag
Browser window will open. This window is used for selecting Variables from either the project or any
child project to view in the watch window. However, this window cannot be used for inserting new
variables, basic script expressions or dynamic links or modifying variable properties. (right clicking
on varialbe name is also denied).
Project Statistics
The Project Statistics group documents the use of the resources retrieved by the system by
representing them on a table correlated with pie charts.
by using the buttons from the menu bar you will be able to perform, for instance,
data refreshes, select pie or histogram data displays and reset statistical data using
the "Cancel" button. The "Cancel" button can be used to zero project statistical
data recorded up to that moment to then restart from scratch.
Locals
This Locals group allows information on the on screen components to be displayed. When clicking on
an on screen object, the window will change its contents by displaying information based on that
component.
103
M O V I C O N _ P R O G R A M M E R _ G U I D E
When double-clicking on an object in this window containing Basic Script code, its Basic Script code
debug window will open. When the object does not contain code, a beep will sound and no window
will open.
IL General Logic
The IL General Logic group allows the Debug of the IL Logic resource associated to the project to be
run.
IL Local Logic
The IL Local Logic group allows the Debug of the IL Log associated to the component or screen
selected with the mouse to be run.
Script
the Script group lists the Basic Script resources loaded in memory with some useful information such
as status (running or stop) and total execution time of last run or the run taking place. When doubleclicking on the name of a listed Basic Script, the debug window of that basic script resource will
open.
104
P R O J E C T S
S T R U C T U R E
105
M O V I C O N _ P R O G R A M M E R _ G U I D E
Movicon memorizes this setting through the Windows registry keys. If you wish to re-enable this
dialog window, you will need to cancel its corresponding registry key at this location:
HKEY_CURRENT_USER\Software\Progea Automation x.11\movicon.exe\DoNotAskAgain
Editing Resources
To edit a Resource you only need to select it and open the "Properties Window". By using the
"Properties Window" you can change the settings in the properties of each Resource. The
"Screens" and "Basic Script" resources are the only ones that need opening iwht a double-click.
Deleting Resources
Before deleting a resource you need to select it first. The resource is deleted by using the CANC key
or the "Cut" or "Delete" commands from the "Edit" menu.
A command executed in error can be cancelled by using the "Undo" command from the "Edit" menu
or the CTRL+Z keys.
You can delete the Resources inserted within groups but you cannot delete the "Resource Groups"
listed in the "Project Explorer" window created for default by Movicon.
106
P R O J E C T S
S T R U C T U R E
107
M O V I C O N _ P R O G R A M M E R _ G U I D E
Filter
This edit box is used for inserting a string for executing filters on files contained in the folder. The
"*" (star) and "?" (question mark) wild card characters can also be used.
Description
.movprj
Project file
.movbak
.movalr
.movdlrec
.movevt
.movils
.movnetclt
.movnetsvr
.movopcclient
.movrealtimedb
.movsch
.movscl
108
P R O J E C T S
S T R U C T U R E
.scrnav
string.language
string.language.bak
.actstr
.constraints
This file consents you to define project editing restrictions. This file
is generated while a new project is being created depending on the
platform type selected (Win32/64, WinCE, etc). For further
information please refer to the section on "Project Constraints".
.movrefactoring
.hisupg
_c
.uxp
.rtusers
.zip
.movrtmembers
109
M O V I C O N _ P R O G R A M M E R _ G U I D E
As already mentioned above, in addition to the project files, Movicon also creates some folders which
will contain information relating, above all, to the saving and recording of data during the runtime
phase:
Folder Name
Description
ALARM
DATA
1.watch
2.watch
3.watch
4.watch
".mdb"
The Database file can be found for the "Real Time DBMS Settings"
management. The file will be created in this folder for default with the
name:
ProjectName_RealTimeDB.mdb
You can also find the Database file for the managing of "Variable
Trace". this will be created only when data recording is activated
through the ODBC and not the IMDB. The file will be created for
default in this file with the name:
ProjectName_TraceDB.mdb
".dat"
You can find this file type for managing the "Variable Trace". This
will only be created when data recording is activated through the
IMDB and not the ODBC. The file is in text format but can also be
crypted when desired. A file will be created for each variable being
traced with the name:
VariableName.dat
".xml"
You can find this type of file for managing the "Variable Trace". This
will be created only when the data recording is activated in the IMDB
and not the ODBC. the file is in xml text format. A file will be created
for each variable being traced with the name:
VariableName.xml
".sxml" o ".tsxml"
These are used for any eventual object "Symbol Configuration Files".
".shp"
This file contains a Sheduler's programming which was done using the
Scheduler Window. The name of the file identifies the scheduler in
110
P R O J E C T S
S T R U C T U R E
question.
".sst"
This file contains the execution status of a Scheduler command. The
name of the file identifies the scheduler in question.
".settings"
This file contains the ODBC plug-in configuration information. The file
name identifies the database type.
".TraceDBEx"
These files contain flush data for variables being traced in cases when
an error have been detected in the ODBC connection. The names of
the files will be the same names used by the variable trace tables.
These Flush files will be automatically deleted by Movicon, after data
has been restored to database, once the ODBC connection returns into
activity.
.upldsettings
This file contains the settings of the last PlugIn used for transferring
the project to a remote device.
DLOGGERS
LOGS
A few log files, in ASCII format are presented in this folder which
report information relating to the different project components, such
as system messages, OPC messages, user activation messages, etc.
All these files have the '.log' extension and their names indicate their
contents type.
111
M O V I C O N _ P R O G R A M M E R _ G U I D E
Some log files, in ASCII format, are in this folder reporting information
relating to the Networking communications. The information relating
to the active connections are returned to the variable changes
executed by the Client or Server, etc.
RESOURCES
In this folder there are files relating to the project's Multiple resources
(Screens, Accelerators, Menus, Parameterization File, Basic Scripts and
Embedded Report). Movicon will create a file with the resource's name
and extension, based on the resource type, for each resource inserted
into the project:
Screens = .movscr
Accelerators = .movacc
Menu = .movmenu
Basic Script = movbas
Parameter Files = movpar
Embedded Report = movrep
A file with the name of "<Screen>_c.jpg" will be created for each
Screen resource. This file is used to preview screens during design
mode and is used in Embedded Screen objects when the "Embedded
Screen Style Properties" property is enabled.
In addition to this, the same tree structure created also in the 'Project
Explorer' window in the Multiple Resource Groups will be reproduced in
this folder and therefore with the eventual resources' folder groups.
The files containing the communication driver settings to be enables
will also be kept in this folder. These files will have the name:
DriverName.drvsettings: file containing the Communication Driver
settings
DriverName.dynsettings:
file
containing
the
list
of
the
Communication Driver's dynamic tasks
DriverName.dyndrv: file containing the list of tags created
dynamically in the variables
IMAGES
Images used in the project are kept in this folder. Each time an image
is associated to a Movicon screen or object, it will be automatically
copied in this folder and its relating path will be used for retrieving it.
The Project Folders listed above are those which Movicon uses for default.
However, they can be customized, creating new ones and with different
paths, by means of using the "Project Path Settings".
112
P R O J E C T S
S T R U C T U R E
Project Backup
Movicon keeps a project build count save in the ".movprj" file's <ProjectBuild> xml tag. When the
project's "Increase Project Build Number" execution property is enabled the project's internal build
number will increase by 1 each time the project is saved, When this property is not enabled, the
build number will remain always the same. When the project's "Save Backup" execution property is
enabled, a backup of all the project's files and resources will be done in the ".zip" file in the name of
<Project Name>_<Project Build> each time the project is saved. Therefore, with the project's
"Increase Project Build Number" execution property is enabled as well, a new ".zip" file will be
created at each project save. When not enabled, the ".zip" file will remain with the same name and
overwritten instead each time the project is saved. The folder containing the project will also contain
all the backup files of the saves taken place. The ".zip" format has been used so as not to occupy too
much space on disk and because it contains files with paths that allow easy extraction.
Screens
Basic Scripts
Mens
Shortcuts
When you rename a resource you do not need to replace the old name with the new one in all the
various parts of the project it is used.
The automatic resource name replacement mechanism only works if
the project's execution "Enable Renaming Manager" property is
enabled. If not, the aliasing mechanism, described below, will not be
used and old names of any renamed resources will have to be
replaced manually in the project.
Movicon uses an"aliasing" mechanism which keeps trace of the resource's original name and its new
one. When the resource is remained may times, only its original name and the last name will be
traced. This information, the relationship between the resource's original name and its new one, is
kept in the ".movprj" file. The tags which enclose this information are different for each resource and
are <RenamedScreens> for Screens, <RenamedScripts> for Basic Scripts, <RenamedMenus> for
Menus and <RenamedAccelerators> for Shortcuts.
...
<RenamedScreens>
<item key="Screen4" value="Main"/>
</RenamedScreens>
<RenamedScripts>
<item key="Basic Script1" value="Basic Script2"/>
</RenamedScripts>
<RenamedMenus>
<item key="Menu1" value="Main"/>
</RenamedMenus>
<RenamedAccelerators>
<item key="Shortcut1" value="Exit"/>
</RenamedAccelerators>
...
Where:
item key: represents the resource's original name
value: represents the last name used for renaming the resource
113
M O V I C O N _ P R O G R A M M E R _ G U I D E
When the Renaming Manager has been enabled, it would be a good rule of thumb to re-use original
resource names for creating new resources. This kind of operation is always controlled by Movicon
displaying this warning message:
Warning! The resource name 'Screen1' has been renamed to 'Screen2' in this project. Do you want
to use this resource name? Answering 'Yes' will remove the recorded renamed link.
The above message was generated because the user was trying to create or rename a screen with
the 'Screen1' name, which was already used as an original name and then changed to "Screen2". At
this point, when answering with 'Yes', the alias link will be deleted and the automatic aliasing
mechanism will be annulled for this screen. For instance, if you associated the VAR00001 to a display
object and then rename it with VAR00002, the display will result associated to VAR00002. In
addition, only one variable, the VAR00002, will be in the RealTimeDB. However, if you insert a new
variable with the name of VAR00001 into the database and confirm the use of this name, the alias
link will be deleted and the display will result associated to VAR00001 again, which however is the
new variable. In this case both the VAR00001 and VAR00002 will result as being in the
RealTimeDB as two separate variables.
Lets take another example, if you associate a command to open Screen1 to a button object and then
remain the Screen1 to Screen2, the button will result associated to the command to open Screen2.
In addition to this, only one screen, screen2, will be present in the Project Explorer window.
However, if you then insert a new screen in the name of Screen1, and confirm its use, the alias link
will be deleted and the button will result associated again to the open command of Screen1, which is
the new screen. In this case both Screen1 and Screen2 will be present in the project and will result
as being two separate screens.
When inserting a new resource, Movicon will propose a name which has not yet been used or in use
in the project and not been used as an original name for a renamed resource. To make things
clearer, if you insert 'Screen1' which then gets renamed to 'Screen2', if you insert a new screen after
this, Movicon will propose 'Screen3' as its name.
WARNING! the "aliasing" mechanism can be deleted by deleting the
xml tags which show the list of renamed resources from the
".movprj" file. By doing this, the resources which were renamed
will remain with their last associated name, while the references
inserted in commands will keep links to the resources' original
names. This means that the references to these resources may no
longer be valid.
Automatic replacing of renamed resources is done in different ways according to the object or
resource in question, as described below:
Screen Resources:
Startup Screen Execution Properties: the new screen name will automatically appear in
the project's "Startup Screen" properties
Command List Screen Command: the new screen name will automatically appear in the
command's "Screen" property
Basic Script: the original screen name will always appear in the basic script code, for all
functions which have a screen name parameter, but the code will be executed in relation to
the new screen name
Basic Script Resource:
Start/Stop Script Execution Property: the new basic script name will automatically
appear in the project's "Start Script" and "Stop Script"
Command List Script Commands: the new name of the basic script will automatically
appear in the command's "Script" property
Basic Script: the original name of the basic script will always appear in the basic script code
for all function which have a script name as parameter, but the code will be executed in
relation to the new basic script name
Men Resource:
Command list Menu command: the new name of the menu will automatically appear in
the command's "Menu" property
Basic Script: the original menu name will always show in the basic script code for all
functions with a menu name parameter, but the code will be executed in relation to the new
menu
114
P R O J E C T S
S T R U C T U R E
The "screen name - menu name" or "screen name - accelerator name" correspondence will not
benefit from the automatic name replacement, which means that if you change the name of the
screen you will also have to change the name of the menu or accelerator so that they continued
being associated to that screen. For example, lets suppose you need to define a "LayOut" screen, a
"LayOut" menu and a "LayOut" accelerator in such a way that the screen is loaded, the
corresponding menu and accelerator are also activated. Then after having done this, you rename the
screen to "PlantLayOut", you will also have to rename the corresponding menu and accelerator with
this new name if you want to keep them associated. This also applies to other menus or accelerators
associated to the Startup Screen and used for default by all those screens which have not got their
own. Also in this case, menus or accelerators must be renamed with the same name of the Startup
Screen.
searches for the specific Movicion DOM commands which may have been used for managing
these resources with code: executecommand, showmenu, openscript, startupscript,
shutdownscript, unloadscript, runscript, openscreen, opensynopticparameter, opensynopticex,
openmodalsynoptic, opensynoptic, startupscreen, getsynopticinterface. When found, the
replacement is done in the parameter in which the screen name is indicated.
only the texts in between the double inverted marks are replaced.
115
M O V I C O N _ P R O G R A M M E R _ G U I D E
The "..\Test\Project.movprj" project or some of its files have been modified outside
Movicon.
Do you want to reload the whole project?
Modifying some resources will also cause project files to be reloaded.
In cases where the same resources have been modified with the Movicon editor but not saved, the
following messages will show instead:
"..\Test\Project.movprj" project or some of its files have been modified outside Movicon.
Do you want to reload the entire project?
WARNING! All unsaved modifications will be lost.
This mechanism is valid for all the project resources accept those that use their own editor window,
such as Screens, Basic Script, Parameter Files and String Tables. The reload file message will only
appear for these resources if the modified resource was opened in edit mode by Movicon when
reactivating the editor window. If the modified resource is not already opened in editing mode, the
modifications will be automatically loaded when opened without requiring confirmation unless
already modified in Movicon as well.
Modifying a resource which creates the relative compiled "_c" (movalr_c, movevt_c, movdlrec_c,
movopcclient_c e movscr_c) files in runtime, will reset these files when the resource is reloaded.
Modifying the RealTimeDB resource ( "movrealtimedb" file), will reset the movalr_c, movevt_c,
movdlrec_c, movopcclient_c, movscr_c, dynsettings files when this resource is reloaded.
Modifying any one of the resources needing project to be reloaded, when the project is reloaded the
movalr_c, movevt_c, movdlrec_c, movopcclient_c, movscr_c, dynsettings fields will be reset.
Modifying the driver's "drvsettings" settings file, when this resource is reloaded, the "drvsettings"
filed will be reset. If while modifying the "drvsettings" file with the driver's settings window open in
the Movicon editor, file reload will NOT be requested.
The management for reloading modified resource with external editors is also active for Child
Projects. In addition, this management is also active when the project is added to SourceSafe
database. In this case, those resources to be modified must be checked out beforehand.
The automatic resource reload management can be disabled by
setting the "ReloadResources" registry key. This management is
enabled by default.
Warning! During the project runtime phase with project launched directly
into run mode from a development session, the modified resource reloading
management will be disabled. However, when files are modified during run
mode using an external editor, the modified resources will not get reloaded
when aborting project run to return back development mode and therefore
you will have to close and reopen the project again.
116
P R O J E C T S
S T R U C T U R E
The text you wish to search for must be entered in the "Find" field and the text you wish to replace it
with must be entered in the "Replace" field. The text search criteria can be defined in the 'Search
Conditions' dialog box section which provide the following options:
Search inside Child projects: enable this option if you wish the search to extend to any existing
Child projects as well.
Match whole word only: enable this option if you wish the search to match the string specified
with the whole string. In this case if the string specified in the 'Find' field is part of an extended
string it will not be found without enabling this option. For example, when enabling this option to
find "Var1" text, it will not be found in "Var1=1" but in "Var1 = 1".
Match case: when this option is enable the text search will become case sensitive and therefore will
recognize lower case from uppercase letters.
In addition, you can also define which fields you wish search to be carried out in:
Any Field: the specified string will be searched for and replaced if found in both text and project
variable (Tag) fields.
Text Fields: the specified string will be searched and replaced if found in project resource text fields
only
Tag fields: the string specified will be search for and replaced if found in project resource variable
(Tag) fields only
When selecting the "Any field" or "Tag field" option, if the text to be searched for corresponds to a
variable (tag) name, searched for tag will also be renamed in the RealTimeDB variable list.
Variables will not be renamed when selecting the "Text Fields" option.
The "Resourse Type" lets you select one or more resource types where the text must be searched
for and replace if found. The "Check All" and "Uncheck All" can be used for selecting or deselecting
all field options or they can be selected individually as desired.
117
M O V I C O N _ P R O G R A M M E R _ G U I D E
Once Movicon finds the specified text, after having activated the replace command, a dialog window
will open to confirm replacement. This confirm window will show the specified text searched for, the
text to be replaced and the name of the resource or object where text was found. In addition the
"Project Explorer" window will be updated showing the resource in which the text was found. At this
point, the replacement can be confirmed by pressing the "Yes" button or aborted by pressing the
"No" button. When confirming with "Yes to all" the replace will take place in all resources without
requiring a confirm from each individual one. When pressing the "Cancel" button, the whole
replacement operation will be aborted and text replacements not yet processed will not be replaced.
When operation has terminated, another window will display showing all the replacements that took
place.
In cases, where a project variable (tag) (or even only a part of the name if
the "Match whole word only" has not been selected), is replaced, it will also
get renamed in the RealTimeDB variable list showing the old name between
brackets at the side. In this case you will need to activate the "Apply New
Name" command to make new name definite.
Crypted Project
Movicon saves all the project files in XML format to also enable the programmer to open and carry
out any changes to the project files and resources with a simple test editor (or even simpler with a
XML editor). However, when this property is enabled the project file will be saved in encrypted
format and therefore can only be opened with a Movicon editor and no other.
Crypted Project Resources
Movicon saves all the project files in XML format to also enable the programmer to open and carry
out any changes to the project files and resources with a simple test editor (or even simpler with a
XML editor). However, when this property is enabled the project's resource files will be saved in
encrypted format and therefore can only be opened with a Movicon editor and no other.
Crypted Sting Table
Movicon saves all project string files in XML format, giving the user the possibility to open and modify
these files using a simple text editor (or a XML editor to make it more simple). When enabling this
property the files from the project's String Table will be saved in crypted format, after which can only
be opened with the Movicon editor, independently from whether the actual project has been crypted
or not.
118
P R O J E C T S
S T R U C T U R E
Unicode Project
When enabling this property all of the project will be saved in UTF-16 Unicode format.
Zipped Project
When enabling this property all of the project will be saved in compressed format. The compression
or decompression of files is managed by Movicon automatically in real-time therefore transparent to
the programmer. This will only slightly effect performances in the programming and execution phase
but has the advantage of occupying less disk space.
Save Backup
When this property is enabled a "Project Backup" file will be created every time the project is saved.
For further information on "Project Backup" files please see the section on "Project Files".
Increase Project Build Number
By enabling this property the project build will be increased each time the project is saved.
Otherwise, if not enabled, the build will always remain the same and the Backup file, created after
each save, will always have the same name and overwrite the previous one. For further information
on 'Project Backup Files' please refer to "Project Files".
Default ODBC Plugin
By using this property you can select which ODBC driver should be used for default by the Movicion
project for creating the historical log DSNs. this driver will be used only if no other DSN has been
created manually and associated in the historicals "ODBC DSN" property. For further information
please see "Project ODBC Plugins".
The drivers currently selectable are:
MSAccess: MS Access (uses the "Microsoft Access Driver (*.mdb)" driver. This
one is the predefined choice)
MySQL: MySQL 5.1 (uses the driver installed with this MySQL version)
OracleEx10: Oracle Express (uses the client-less driver installed with this
version of Oracle)
Oracle11g: Oracle Express 11 (uses the client-less driver installed with this
Oracle version)
SQLServer2000: MS SQL Server 2000 (uses the "SQL Server" driver)
SQLServer2005: MS SQL Server 2005 (uses "SQL Native Client" driver)
SQLServer2008: MS SQL Server 2008 (uses the "SQL Native Client 10.0" driver)
SQLServerExp2000: MS SQL Express 2005 (uses the "SQL Native Client" driver)
SQLServerExp2008: MS SQL Express 2008 (uses the "SQL Native Client 10.0"
driver)
SQLServer2012: MS SQL Server 2012 (uses the "SQL Native Client 11.0"
driver)
SQLServerExp2012: MS SQL Express 2012 (uses the " SQL Native Client
11.0" driver)
ODBC Settings
This command opens the window used for setting DSN configuration parameters relating to the
ODBC driver selected in the "Default ODBC Plugin" property. For further information please refer to
"ODBC Plugin List".
SMTP Settings
This command can be used for opening the SMTP plug-in settings window which is used for
"Esportazione e Invio Mail" commands or reports associated to DataLogger/Recipes. The SMTP
plug-in used is the same one used by the Alarm Dispatcher. For further information on setting
parameters see paragraph "Invio E-mails via SMTP".
The plug-in editor generates a file with the name of "smtp_direct.settings" in the
"ProjectName\DATA" folder.
Default Screen Width
This property sets the default width in pixels with which the Screen window is to be created.
Default Screen Height
This property sets the default height in pixels with which the Screen window is to be created.
Project Folder
The project's work folder path is shown in this property. The work folder will open in a Windows
Resource Explorer resource window when cliking the browse button to the right of this field.
119
M O V I C O N _ P R O G R A M M E R _ G U I D E
120
P R O J E C T S
S T R U C T U R E
121
M O V I C O N _ P R O G R A M M E R _ G U I D E
Windows CE
This property enables the project development for Windows CE platforms.
Client WinXP/8/7
This property enables project development for Windows 32/64 bit Client platforms.
Client WinCE
This property enables the project development for Windows CE Client platforms.
WebClient Applet
This property enables the project development for J2SE Client (Java to Standard Edition, such as
Windows, Linux or other Java-enabled platforms).
WebClient Middlet
This property enables the project development for J2ME Client (Java to Machine Edition, such as
JavaPhones or mobile phone platforms).
Target License Type
This option is used for selecting the license type with which to use for developing the project. The
project can be run with all the Movicon functionalities activated or run as a "Power HMI" project and
therefore subject to a series of restrictions as described in detail in the paragraph on "Power HMI
Limits". The target license selection is only needed during the project design phase for disabling the
functions not supported by Power HMI to make it easier for the programmer to create project. The
license types that can be selected are:
Standard = all the functionalities which are compatible with the selected platform type will
be enabled in the Movicon editor.
Basic = Only those functionalities permitted by Power HMI and compatible with the selected
platform type will be enabled in the Movicon editor.
When selecting the "Basic" option, the system will be configured to hide or disable all those
functionalities which are not supported by Power HMI, so that the programmer does not use them by
mistake.
Once the project had been developed, independently from the selection made in the "Target License
Type" property, all the Movicon or Power HMI functionalities will be enabled during runtime based
exclusively on the license installed. However, if a Movicon project set with a Standard License in the
"Target License Type" property is started up in runtime in a machine which has a software license for
Power HMI (Basic License), this project will nevertheless be subject to the Power HMI restrictions.
Example: When you set the "Basic" platform, restrictions in WinCE and Win32/64 bit systems will be
those imposed by the Power HMI platform (see section on "Power HMI Limits"). The number of
Bytes allowed in use are 512 bytes in WinCE and 2048 in Win32/64 bit respectively. If this byte
number is exceeded, the project will automatically switch into demo mode issuing a simple alarm
message in the output window of event. The license installed in the machine has priority over the
platform set in the project: a project using the Standard functionality (Movicon) with the Basic
platform (Power HMI) selected will however be able to used those functionalities not allowed in
Power HMI if installed with a Movicon License.
122
P R O J E C T S
S T R U C T U R E
An example of how standard Movicon project working subfolders are organized on disk.
Starting from the 956 build Movicon will use the predefined "IMAGES"
folder which will be created as the project folder when this property is not
used.
Images set as screen backgrounds will first be searched for in the
folder preset for containing images, then in the same folder in
which the screen resource was saved, and then in the project
folder.
Images set in controls, alarms or in variables will first searched for
in the folder preset for containing these images and then in the
project folder.
In addition to this, when an image is selected its copy will be saved in the
preset folder containing images ('IMAGES' for default). This allows you to
keep all your images localized in the project folder so you don't have
problems localizing images when running the project in other computers or
when exporting it to WinCE devices.
123
M O V I C O N _ P R O G R A M M E R _ G U I D E
Resource Path
The working folder in which Movicon is to save the multiple project resources (Screens, Menus,
Accelerators, etc.) is declared or selected in this box.
You can use the "..." button on the right to select existing folders.
If the folder does not exist it will be created by the system upon project startup.
Logs Path
The working folder in which Movicon is to file recorded data from the project's Historical Log Events
and Variable Trace is declared or selected in this box. You can get further information on these
functions from the 'Historical Log' chapter in the Manual.
You can use the "..." button on the right to select existing folders.
If the folder does not exist it will be created by the system upon project startup.
Data Loggers Path
The working folder in which Movicon is to file recorded from the project's Data Loggers is declared or
selected in this box. You can get further information on this function from the 'Data Loggers' chapter
in the Manual.
You can use the "..." button on the right to select existing folders.
If the folder does not exist it will be created by the system upon project startup.
Network User Path
This box is used for declaring or selecting the work folder in which Movicon will insert the Log files of
the network connection coming from any eventual clients. If this field is left empty, Movicon will use
the project's "NETLOG" folder for default.
You can use the "..." button on the right to select existing folders. If the folder does not exist it will
be created by the system upon project startup.
HTML Help File
A help file to be associated to the project in HTML help format can be selected in this box. The Topic
of this Help file can then be viewed through the "Help Command" which can be associated to the
Movicon controls.
When inserting the Help file in the project's ".\Resources\ProjectName"
folder, Movicon will be able to use the path relating to the file as to avoid
using any absolute paths due to moving the file to other PCs or to different
folders.
Enable Statistics
This property is used for enabling or disabling project statistical data acquisition. This data can be
seen using the "Watch window".
Startup Screen
The name of the Screen to be displayed at project startup is entered in this box. When this property
is not set, therefore without any Startup Screen specified, Movicon will check to see if one exists in
the name of 'Main' at the startup of the project's runtime and will load it if it does. However, when
this property has not been set with a specific startup screen and a 'Main' screen does not exist,
Movicon will randomly load one of those present in the project at startup.
Startup Script
The name of the Basic Script to be executed upon project startup is entered in this box. The
selection of the Script can also be done by using the '...' button on the right.
Shutdown Script
The name of the Basic Script to be executed upon project shutdown is entered in this box. The
selection of the Script can also be done by using the '' button on the right.
124
P R O J E C T S
S T R U C T U R E
Startup Commands
The Movicon 'Command List' is opened by using this button through which you can set a list of one
or more commands which must be executed upon project startup.
For further information on the commands available please refer to the paragraph on "Command
List".
Shutdown Commands
The Movicon 'Command List' is opened by using this button through which you can set to list of
one or more commands which must be executed upon project shutdown.
For further information on the commands available please refer to the paragraph on "Command
List".
Pre-load Screens
This option allows all those screens marked with "Not destroyable" option to be preloaded at the
project startup. This option is not set for default when new screens are created in the project.
When this option is set, Movicon will scan all existing screens at the project run startup and preload
in memory all those which are marked with the "Not Destroyable" option.
This operation, inserted to start from the 956 build, allows maximum velocity when changing pages when needed - due to the fact that the screen to be opened will have been already preloaded before
being activated.
This operation also happens for child project screens only when the child
project is marked as executable and in auto run, and when the screens are
marked with the preload option.
Start Full Screen
Enabling this option will startup the project in Full Screen mode, therefore the Screen window will be
displayed without the title bar.
Show Status Bar
Enabling this option will also display the Movicon status bar during the Runtime phase.
Show Output Window
Enabling this option will also display the Movicon Trace window during Runtime. The Trace, Output
or Debug window is very handy to have especially during the project Debug phase.
Enable Renaming Manager
This option allows to enable or disable the variables and resources Renaming Manager (see
"Renaming variables" and "Renaming Resources"). When this property is enabled, renaming a
variable or a resource does not require to replace the previous name with the new name in the
project, where the variable or the resource name has been used. Disabling this property, the
automatic replacement of variables or resources name will not take place.
Static Object in Background
enabling this option will activate the static object management for all those screens which have their
own "Static Object in Background" open enabled. For further information on this subject please refer
to the paragraph on "Handling Static Objects in Screens".
Hide Desktop
When enabling this option the Desktop's icons will be hidden and therefore inactive.
Please note that the Windows "Show Desktop" button presented in the 'Quick Start' of "Task Bar",
permits the Desktop to be reactivated. To avoid this from happening it is necessary to disable the
'Task Bar' as well.
Hide Start Button
When enabling this option the Windows Start button will be hidden and therefore inactive.
Hide Task Bar
When enabling this option the 'Task Bar' will be hidden and therefore inactive.
Hide System Clock
When enabling this option the clock, presented in the Windows' 'Task Bar', will be hidden.
Disable Task Switching Keys
When enabling this option the Windows switching keys such as CTL+ESC, ALT+TAB, etc, will be
deactivated.
125
M O V I C O N _ P R O G R A M M E R _ G U I D E
126
P R O J E C T S
S T R U C T U R E
allocated memory during the runtime phase. It must also be taken into consideration that by
enabling this management the Ram allocation may turn out to be higher than expected when not
enabled. This is due to the fact that Movicon allocates all the configured memory even when not all
of it is to be used.
The Heap Management is always remains disabled when the project is run
from the development environment. However it is managed for the Movicon
RunTime .exe, Movicon Service .exe, Movicon CE .exe and Movicon .exe
modules only when run with the /R. option.
The Heap values can be set manually or with the appropriate button, which does nothing other than
get the maximum values requested during the last project run. The heap values are kept traced
during runtime (the current value and the maximum values reached) for each group of objects.
These values can be viewed through the Watch window (the maximum values reached are those
shown in brackets).
Therefore, once the project has been put into run mode you can return to development mode and by
using the "set values from last run" all the heap manager properties will be updated with the values
of the last run.
The Heap values can also be set by using the appropriate registry keys described in the "List of
Movicon Registry Keys" section. However, the registry values are by-passed by the project values
when the heap manager is activated.
Set Values from the last Run
This command allows you set the Heap values for each group based on the last value obtained
during the Runtime phase.
Memory Used with the current Heap Values
This field shows the approximate memory value in Kbytes to be allocated based on the set Heap
values.
Warning! this value is only a rough estimate and may differ according to the type of processor the
project is being run on (ARM, X86, etc.).
Warning! This value is a rough estimate and may differ according to the type of
processor the project is being run on (ARM, X86, etc.).
127
M O V I C O N _ P R O G R A M M E R _ G U I D E
128
P R O J E C T S
S T R U C T U R E
The heaps in WinCE are allocated to the global memory (memory available for the programs) and do
not occupy memory in the Movicon CE .exe process. In this way the fixed 32Mbytes memory, which
each WinCE process can use, is by-passed by these Heap managers. Therefore you can check each
screen as not destroyable providing that there is enough memory on the device.
129
M O V I C O N _ P R O G R A M M E R _ G U I D E
130
P R O J E C T S
S T R U C T U R E
Unique ID Column
This setting permits you to insert the name of the Unique ID Column in the Historical Log tables. The
default name will be used when left blank. This column shows the alarm's Unique ID value when
dealing with alarm tables. However, this field remains blank for the "System" and "Drivers" tables.
Transaction ID Column
This setting permits you to insert the name of the Transaction ID Column of the Historical Log tables.
The default name will be used when left blank. This column shows the alarm's Transaction ID value
when dealing with alarm tables. However, this field remains blank for the "System" and "Drivers"
tables.
Alarms Table
This setting lets you insert the name of the Historical Log table which will contain the messages
inherent to project's 'Alarms'.
Drivers Table
This setting lets you insert the name of the Historical Log table which will contain the messages
inherent to the project's 'Drivers'.
System Table
This setting lets you insert the name of the Historical Log table which will contain the messages
inherent to project's 'System Messages'.
Alarm Max.Age
This property lets you set how long the Alarm messages are to be kept internal the database. The
Default setting is 180 days but can be changed according to what is required, keeping in mind how
many recordings will be done in the time interval specified.
For further information see paragraph: "Archive Sizes".
Driver Max.Age
This property lets you set how long the Communication Driver messages are to be kept internal the
database. The Default setting is 180 days but can be changed according to what is required, keeping
in mind how many recordings will be done in the Time interval specified.
For further information see paragraph: "Archive Sizes".
System Max.Age
This property lets you set how long the System messages are to be kept internal the database. The
Default setting is 180 days but can be changed according to what is required, keeping in mind how
many recordings will be done in the Time interval specified.
For further information see paragraph: "Archive Sizes".
Create DB Table
This command executes the creation of the Historical Log tables internal the database. If tables
already exist they will be cancelled by being recreated with the new ones upon the execution of this
command. This means that any data recorded beforehand will be lost.
Startable
When this property is enabled the child project can then be run. This means that all the sever part of
the project, being the Drivers, OPC, Networking etc, will be started. When a project is not enabled
to start you can nevertheless access the child screens from the parent project.
Auto Startup
This property permits the child project to run automatically when the parent project is put into
execution. In order for this setting to take effect you must also select the 'Startable' property.
131
M O V I C O N _ P R O G R A M M E R _ G U I D E
Network Server
This property is used for defining the name or IP address of any eventual Network Server which the
child project will use for updating its variable values and display windows.
Backup Network Server
This property is used for defining the name or IP address of any eventual Backup Network Server
which the child project will use for updating its variable values and display windows if the primary
servers is unavailable.
Child Project Name
This property permits you to associate a name to the child project. When this filed is left empty the
child project's name will be used instead.
Events to be printed are sent immediately to the selected port. Laser or ink
jet printers must be setup beforehand so their buffer contents are printed
only when the end page character is received.
132
P R O J E C T S
S T R U C T U R E
133
M O V I C O N _ P R O G R A M M E R _ G U I D E
4.24.9. tools
Movicon uses some tools, developed by Progea as usual, to carry out certain operations or functions.
Below you will find a list of these tools with a brief description on what they do. For further
information on how they work and any application configurations please consult the Help online of
the related application.
Upload/Download service
The executable file "TCPUploadServer.exe" is installed with Movicon setup and allows to use, for a
desktop platform too, the service for projects upload/download to/from a remote client. For further
information on this subject please see "Projects Upload/Download" in Movicon CE user manual.
Alarm Dispatcher
Movicon uses this application, "Dispatcher.exe", to configure the SMS, Voice, Fax alarms notifying.
This tool can be also used within basic script routines for sending messages that have nothing to do
with the alarms.
For further information please refer to the "AlarmDispatcher.chm" tool's help.
Import/Export Tag in CSV
The "CSVTagIE.exe" program consents you to import/export the Real Time DB to csv. files.
For further information please refer to the "CSVTagIE.chm" tool's help.
Import/Export CSV Alarms
The"AlarmsImpExp.exe" program consents you to import/export Alarm list to csv. files.
For further information please refer to the "AlarmsImpExp.chm" tool's help.
Import/Export CSV Strings
The"StringImpExp.exe" program consents you to import/export Alarm list to csv. files.
For further information please refer to the l "StringImpExp.chm" tool's help.
PrnWnd.exe
This program, "PrnWnd.exe", is installed in Movicon installation folder and consent the printing of
screens or the Window desktop. The raster print is a graphical print mode which creates a uniform
bitmap of the page and sends it to the printer. The syntax is:
PrnWnd.exe [-h<%d>] [-d] [-s] [-t<%s>] [-l] [-k] [-f<filename>] [-p[x];[y]] [m[Sx];[Dx];[Top];[Bottom]]
where:
[-h<%d>]: %d is the handle's decimal value of the window to be printed. If the handle is not
specified, all of the desktop will be printed
[-d]: dialog window appears for choosing the printer and the print options, otherwise the default
printer will be used
[-s]: hides the window which indicates the print in action
[-t<%s>]: attributes the print document title
[-l]: forces a vertical print (portrait)
[-k]: permits prints with the dame proportions seen on screen, without the option (therefore for
default) both the height and width will be adapted to the whole size of the page
[-f<filename>]: the -f parameter is used for specifying the name of the ".bmp" file to be printed.
The file name must be specified with complete naem and path of the ".bmp" file to be printed.
[-p[x];[y]]: the -p parameter is used for seeing the sizes of the page to be printed. In this case
the "x" value indicates page width in mms and the "y" value indicates page height in mms.
[-m[Sx];[Dx];[Top];[Bottom]]: this parameter consents to managing the print margins. This
parameter is composed of four numbers alternated with the semi-colon character which define the
left, right, top and bottom margins in millimeters. Each margin can be left out, leaving the tool to use
the one for default retrieved through the printer's driver. If all of the "-m " parameter is left out, all
the margins will be retrieved using th printer driver.
The tool can be activated using the commands from the "Capture and Print" Commands List of the
"Screen", "Run Application" and "System" groups. This tool can also be launched directly from the
Movicon script code where this command should be used:
134
P R O J E C T S
S T R U C T U R E
Shell("PrnWnd.exe", vbNormalFocus)
The tool is available for these following platforms:
Win32/64
WinCE (SSDK ARMV4I)
WinCE (SSDK x86)
Tag-Alarm Wizard
This application, "AlarmGen.exe", allows lists of alarms to be created quickly by using a wizard.
CleanLog
This application, "CleanLog.exe", is used by Movicon for deleting old networking log files exceeding a
preset life span. This date is calculated by Movicon according to the project's "Log and Security"
property settings from the Networking Services resource.
This application can also be used by the programmer to cancel files. It can be called up by using the
command line by passing the following parameters:
CleanLog.exe -d<x> [-r] <path>
Where:
-x = number of days
-r = also deletes the files in the sub folder
Path = path of the folder where the files are found
CleanLog deletes all the files contained in the folder <path> which are dated older than the actual
date + <x> days.
ReportViewer
This application, "ReportViewer.exe", is used by Movicon for displaying Report files created with
Crystal Report and associated to DataLoggers, Recipes, Historicals etc.. It can be ran from a
command line by passing some parameters to customize settings which otherwise are set by Movicon
with default values:
ReportViewer.exe [-p] [-t] [-g] [-iX] [-h] [-lLocalCol] [-mAlarms] <report file name>
Where:
-p = sends report to printer without passing through print preview
-t = displays the command toolbar
-g = displays group area
-iX = sets time range for data filtering. X indicates time range to be selected and can obtain
the following values: 1 (Today), 2(Yesterday and Today), 3 (Current Week), 4 (Current
Month), 5 (Current Year), 6 (Last 7 Days), 7 (Last 30 Days), 8 (Last 60 Days), 9 (Last 90
Days), 10 (Last Year), 11 (Last 2 Years), 12 (Last 5 Years), 13 (Last 10 Years)
-h = this parameter allows a dialog window to display when opening the Report which the
operator can use for inserting the data filter selection date and time
-l = this parameter, used only in association with the -h parameter, consents to specifying
the name of the column in which to apply the filter by date (i.e. LocalCol)
-m = this parameter, used only in association with the -h, consents to specify the name of
the table in which to apply the filter by date
You can run ReportViewer using the "System/Launch Application" command from the Movicon
commands list, adding the proper parameters in the "Command Line" property, or using a batch file.
ReportViewerNET
This application, "ReportViewerNET.exe", is used by Movicon for displaying Report files created with
Report Designer and associated to DataLoggers, Recipes, Historicals etc.. It can be ran from a
command line by passing some parameters to customize settings which otherwise are set by Movicon
with default values:
ReportViewerNET.exe [-f] [-p] [-q"select * from Alarms"] [-cDSN][-u] [-w] [-eX] [-iX] [-h] [lLocalCol] [-mAlarms] <ReportFileName>
where:
-f = allows to open the report with the Report Designer, instead of showing the preview
135
M O V I C O N _ P R O G R A M M E R _ G U I D E
136
P R O J E C T S
S T R U C T U R E
created to manage project designing in teams and to keep track of all the modifications taken place
in the project. This support has also been added to the symbol library so that symbol categories can
be shred between the users by always using SourceSafe.
Full support to project sharing is guaranteed only by using Visual
Studio SourceSafe 2005, or later.
SourceSafe Commands
All the command for the SourceSafe management are available from the "File > Source Control"
menu or from the "Source Control" menu which appears with a right mouse click on anyone of the
project's resources:
137
M O V I C O N _ P R O G R A M M E R _ G U I D E
Registry Keys
You can modify some of the Windows configuration registry keys that Movicon reads to change
certain behaviour due to SourceSafe integration. These registry keys are described in the
"SourceSafe Keys" section.
138
5. Real Time DB
This section describes how Variables are managed
within Movicon projects, memory areas, the Variables
List and their functionalities.
The purpose of a supervision system is to represent or acquire variables from the plant, process
them and eventually return them back to the plant whether determined by settings or commands
executed by the operator or generated by internal processing. The logic variables, constitute the
information (deriving from digital or analogic values) which, combined together, consent Movicon
program management.
The project variables, also called Tags, are defined in the Variable List(Tags) contained in the
project's Real Time DB resource.
The Movicon realtime database is based on an extremely efficient and optimized technology. The
kernel of the platform is based on a innovative system technology, even if based on XML, and is
managed in runtime in total event-driven mode and with a highly efficient thread pooling
management.
The Movicon Tags have numerous properties, to render Tags real operating centers. They can be
associated with commands to be executed when preset threshold values are reached. They can be
set with scaling, realtime connections to database, to OPC servers or clients and with networking
modes. Each Tag can be traced with high precision accuracy in a DB with custom messages. The Tag
can have fixed device addresses or be kept independent from the drivers as previously. "Structure"
type variables can be managed in heterogenous data.
The project tags can be imported directly from the PLC (Simatic S7, Rockwell, Mitsubishi and
other..), allowing noticeable time saving. Moreover the project can be associated to dynamic Tag
objects, which means those not expressly declared in the current project (distributed Tag database
structure).
The Movicon variables form the real-time database for all the project
resources and executable logic. They can be associated to objects or the
project's resources (Screens, Menus, Alarms, Data Loggers, Recipes,
Trends, etc.) or combined together by using the logic (Compiled Logic or
Basic Script).
Movicon can handle variables in memory areas up to 4 Gigabytes (over 4 billion bytes for each type
of variable), according to the maximum quantity of dynamic memory manageable by the operating
system. This number is defined as 'Virtually unlimited' when considering that it would be difficult for
a multi-complex plant to exceed ten thousand variables.
The variables can be set in 'Shared' or 'NON Shared' Movicon areas. When using the 'Shared'
areas it is necessary to define the number of variable bytes to be used in the project, by means of
the "Real Time DB General Settings".
The number of variables to be exchanged with the field by Movicon (through
communication Drivers, OPC, etc.) depends on how many Tags have been
enabled by the system's protection key, based on the version purchased.
139
M O V I C O N _ P R O G R A M M E R _ G U I D E
The project's local variables to be dynamically linked to the plant's variables through
communication Drivers
The project's local variables to be dynamically linked to remote variables of Servers in net,
using the TCP/IP protocol networking potentialities
The project's local variables to be dynamically linked to data fields in Database files using the
ODBC functionalities
The variables to be dynamically linked to OPC Client applications by means of the OPC
standards. The Variables DB can carry out OPC Server functions, while the project's OPC
Editor permits links as OPC Client
The Movicon proprietary technology ensures that the increase in the
number of variables inserted into the Real Time DB will not effect system
performances due to the fact that Links to variables are executed during
the startup of the project in Runtime only. This enables Movicon to
manage huge amounts of variables in the Real Time DB without
degrading system performances.
For further information about "Communication Drivers" please refer to the specific section.
140
R E A L
T I M E
D B
interpreted it, will return it to state '0'. When the strobe is 'from logic to
Movicon', the logic should set the strobe bit to '1' and the supervisor,
after having interpreted the request, will reset the state to '0'.
The System variables are grouped into a variable structure type. To use the System Variables you
first need to insert the variable structure by using the 'Add a System Variable' command in the
"Project Explorer" window or by right mouse clicking on the 'Real Time DB' resource. By
executing this command the structure prototype and the relative variable called "_SysVar_" will be
inserted. Each member of the structure variable has a precise significance as described in the table
below:
Variable Name
Refresh
Time
Type
Description
SimSinDouble
Double
SimSinInt
Sign
Byte
SimCosDouble
Double
SimCosInt
Sign
Byte
SimRampDouble
Double
SimRampInt
Sign
Word
SimRandDouble
Double
SimRandInt
Sign
Word
SimRandString
String
StrobeLocalTime
Bit
ToggleBits
Byte
141
M O V I C O N _ P R O G R A M M E R _ G U I D E
ActTimeSec
Byte
ActTimeMin
Byte
ActTimeHour
Byte
ActTimeDay
Byte
ActTimeMonth
Byte
ActTimeYear
Word
ActTimeString
String
ActDateString
String
StrobeExitApp
Bit
StrobeYearLocalTime
Word
StrobeMonthLocalTime
Byte
StrobeDayLocalTime
Byte
StrobeHourLocalTime
Byte
StrobeMinuteLocalTime
Byte
StrobeSecondLocalTime
Byte
CommDriverStatus
Bit
ControlKeyDown
Bit
AltKeyDown
Bit
ShiftKeyDown
Bit
LastKeyPressed
Word
ActiveScreen
Word
NumberNotAckAlarms
Word
AlarmsActive
Word
Word
NumActiveAlarms
142
Win32/64:
refreshes
once a
R E A L
second
WinCE:
refreshed
once a
second
T I M E
D B
NumActiveAlarmsON
Word
NumActiveAlarmsOFF
Word
NumActiveSubscribedAlarms
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Word
Alarm Window
Network Client
Secondary Server Project
OPC Server
Child Project
Variable that shows the Alarm's sound
status based on the user logged on.
This variable can also be set for
activating/deactivating the sound from
logic.
AlarmsSoundState
Bit
MouseMove
Bit
OutputAckAlarms
Bit
OutputResetAlarms
Bit
IMDBLocalMemoryUsed
DWORD
IMDBSharedMemoryUsed
DWORD
IMDBLocalMemoryReserved
DWORD
IMDBSharedMemoryReserved
DWORD
143
M O V I C O N _ P R O G R A M M E R _ G U I D E
InputAckAlarms
Bit
InputResetAlarms
Bit
ActiveUserName
String
ActivePassLevel
Sign
Word
ActiveMaskLevel
Signed
DWord
Word
LastAlarmText
String
DispatchingQueueCount
Word
StrobeLoadScreen
Bit
ScreenToLoad
Word
NumActiveUsers
144
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
R E A L
T I M E
D B
HostIP
PlatformVerMajor
PlatformVerMinor
PlatformVerBuild
PlatformType
Win32/64:
refreshes
at startup
WinCE:
refreshes
at startup
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
at startup
WinCE:
refreshes
at startup
Win32/64:
refreshes
at startup
WinCE:
refreshes
at startup
Win32/64:
refreshes
at startup
WinCE:
refreshes
at startup
Win32/64:
refreshes
at startup
WinCE:
refreshes
at startup
String
String
Word
Word
Word
String
BIT
Win32/64:
refreshes
at startup
WinCE:
refreshes
at startup
Win32:
refreshes
at startup
String
String
Win32:
refreshes
at startup
String
ProjectRunningInDemo
StartupTime
CPUNameString
CPUVendorIdentifier
145
M O V I C O N _ P R O G R A M M E R _ G U I D E
CPUIdentifier
Win32:
refreshes
at startup
String
CPUSpeed
Win32:
refreshes
at startup
String
Word
CPUProcessorType
146
PROCESSOR_INTEL_386 386
PROCESSOR_INTEL_486 486
PROCESSOR_INTEL_PENTIUM 586
PROCESSOR_INTEL_IA64 2200
PROCESSOR_AMD_X8664 8664
PROCESSOR_MIPS_R4000 4000
PROCESSOR_ALPHA_21064 21064
PROCESSOR_PPC_601
601
PROCESSOR_PPC_603
603
PROCESSOR_PPC_604
604
PROCESSOR_PPC_620
620
PROCESSOR_HITACHI_SH3 10003
PROCESSOR_HITACHI_SH3E 10004
PROCESSOR_HITACHI_SH4 10005
PROCESSOR_MOTOROLA_821 821
PROCESSOR_SHx_SH3
103
PROCESSOR_SHx_SH4
104
PROCESSOR_STRONGARM 2577
PROCESSOR_ARM720
1824
PROCESSOR_ARM820
2080
PROCESSOR_ARM920
2336
PROCESSOR_ARM_7TDMI 70001
Indicates Windows' Major version
number (ie. 5).Updates at project
StartUp (not available in the WinCE
platform).
WinMajor
Win32:
refreshes
at startup
String
WinMinor
Win32:
refreshes
at startup
String
BuildNumber
Win32:
refreshes
at startup
String
ServicePack
Win32:
refreshes
at startup
String
OSType
Win32:
refreshes
at startup
String
R E A L
TimeZoneBias
IntColumnSep
IntTimeSep
IntDateSep
ShortDateFmt
TimeFmt
WorkingDir
LoginUserName
IsUserAdmin
NumExpressions
T I M E
D B
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32:
refreshes
once a
minute
String
String
String
String
String
String
String
Win32:
refreshes
once a
minute
Win32:
refreshes
once a
minute
Win32/64:
refreshes
once a
second
WinCE:
String
String
Word
147
M O V I C O N _ P R O G R A M M E R _ G U I D E
NumHTTPClient
NumHTTPOutgoingMessages
NumLoadedAcceleratorRes
NumLoadedMenuRes
NumLoadedScreenRes
NumLoadedScriptRes
NumLocalClient
NumLocalOutgoingMessages
148
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
Word
Word
Word
Word
Word
Word
Word
Word
R E A L
T I M E
D B
second
NumTCPClient
NumTCPOutgoingMessages
NumUDPClient
NumUDPOutgoingMessages
NumWebClientConnected
OPCServerNumClients
PendingDLREntries
PendingLogEntries
PendingTraceEntries
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
Word
Word
Word
Word
Word
Word
Word
Word
Word
149
M O V I C O N _ P R O G R A M M E R _ G U I D E
MemoryLoad
MemoryTotalPhys
MemoryAvailPhys
MemoryTotalPageFile
MemoryAvailPageFile
MemoryTotalVirtual
MemoryAvailVirtual
FreeSpaceAlarmPath
150
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
Word
Double
Double
Double
Double
Double
Double
Double
R E A L
T I M E
D B
once a
minute
FreeSpaceResourcePath
FreeSpaceImagePath
FreeSpaceLogPath
FreeSpaceDLRPath
FreeSpaceNetworkUserPath
FreeSpaceDataUserPath
ILLogicCycleTime
PeekInUseByte
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
minute
WinCE:
refreshes
once a
minute
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Double
Double
Double
Double
Double
Double
Word
Word
151
M O V I C O N _ P R O G R A M M E R _ G U I D E
ProjectRunning
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Bit
Word
Word
Win32/64:
refreshes
once a
second
WinCE:
refreshed
once a
second
Word
SRActiveShortcut
String
SRLastUnderstood
String
SRListening
Bit
SRIsActive
Bit
LicenseCode
String
TotalInUseByte
NumInUseVar
NumDynVar
152
R E A L
T I M E
D B
StrobeEmptyDispatcher
bit
HisLogODBCStatus
Bit
TraceODBCStatus
Bit
RealTimeODBCStatus
Bit
153
M O V I C O N _ P R O G R A M M E R _ G U I D E
Using the 'Variables list' will not effect system's performance, as links to
variables take place all at once during the startup of the project's
runtime. This technology does not sacrifice feedback times even when
extended databases with thousands of variables are being managed.
The advantages offered by using the 'Variables List (Tags)' are:
1.
2.
3.
4.
5.
6.
7.
8.
Positioning the cursor on the Variable list and digiting in a keyboard key,
Movicon will search and move the cursor to the first variable that starts
with that digited key. This search only works if the listed variables shown
in the window are not more than 3000. For example, if variables have
been divided into groups and only some of these groups have been
expanded only the ones in the exploded groups should not exceed the limit
of 3000.
To get a clearer and more readable display of the Variable list, defined in the project's Real Time DB,
you can use the "List Variables" window which can be easily opened by double clicking on the "List
Variable(Tags)" resource.
154
R E A L
T I M E
D B
You can create Local Variables inside a Screen resource which are created
and destroyed together with the Screen and which can be used only within
the context of the Screen.
155
M O V I C O N _ P R O G R A M M E R _ G U I D E
returned. This IP address traceability is not carried out when the value is changed from
WebClient or from a Secondary Server in redundancy mode.
BeforeCol: indicates the value just before the variable was modified
AfterCol: indicates the variable's new value
ValueCol: indicates the variable's current value
QualityCol: indicates the variable's quality status
Variable TimeStamp Column(TimeStampCol): indicates the timestamp of when variable
was recorded.
Variable Name Column (TagNameCol): indicates the name of the variable. This column
will be populated with the variable's name only when a different "Table Name" has been
specified that is not null or if the recording of diverse number of variables in the same table
has been set (see section on "Recording Diverse Variable in One")
Variable Description Column (TagDescCol): indicates the variable's Description. This
column is only populated if the "Add Variable Description Column" property has been enbled
in the variable trace options
Variable Group Column (TagGroupNameCol): indicates any group Gruppo that the
variable belongs to. This column will only be populated if the "Add Variable Group Column "
property has been enbled in the variable trace options
To enable this functionality, you need to set the "Variable Trace Options Proprieties" through the
variable's Property Window. To enable the Tracer function in more than one variable all at once, just
execute a multiple selection of the required variables in the 'Variable List (Tags)' list and enable the
"Variable Trace Options Proprieties" through the 'Property Window' which will be activated in all the
selected variables.
Array Variable Trace
The variable trace functions are also supported for Array variables. In this case, the table's
"ActionCol will report the number of Array elements that have been changed and the values relating
to the elements' will be reported inthe "Value..." column. In cased where the Array variable is
modified by a Network client, the value of the whold Array represented as Array byte will be reported
in the Server trace table's 'Value..." column.
Structure Variable Trace
The variable trace functions are also supported for Structure type variables and for each of their
Members.
If the Trace property is enabled at Structure variable level, the name of the modified Structure
Member will be indicated in the table's "ActionCol"and the relating member values will be indicated in
the "Value..." column. In cases where the Structure variable is modified by a Network Client, the
value of the whole Structure represented as array byte will be indicated in the "value..." column.
If the Trace property is enabled for each single Structure Member, they will be recorded as 'simple'
variables in the table, with each Member having its own table.
In cases in which the Trace property is enabled both in the Structure
Variable and in each single Member, the Trace will only be managed for the
Structure as a whole ignoring the trace for each of its single members.
When the Trace property is enabled at Structure variable level, changes to the variable's quality will
only be traced for the structure and not each of its members.
156
if all the variables sharing the same table are of the same type (all byte or all word or all float
types etc.), these three trace table "Value...) coluns will be created with the same variable
types.
if the variables sharing the same table are of different types or if at least one of these bing a
Bit, String, Array or Structure type (when the whole structure is being traced and not each
R E A L
T I M E
D B
single member), the three trace table "Value..." fields will be created in String type
(nVarChar)
if the variables sharing the same table are of different types, but are all numeric, (byte, word,
dword, float or double), the three trace table "Value..." fields will be created in Double type
(float 64 bit)
When a variable is "Bit" type, the three trace table "ValueBeforeCol", "ValueCol" and
"ValueAfterCol" fields will be created in "String" type.
Movicon, if not specified otherwise, will create a table in the selected database format in the name of
"RTVar". A record for each variable enabled for database sharing will be reserved within this table.
The significance of each table column are as follows:
Name: "nvarchar" data type field. This field shows the name of the variable
Val: "nvarchar" data type field. This field shows the current variable value
157
M O V I C O N _ P R O G R A M M E R _ G U I D E
MinVal: "float" data type field. This field shows the variable's minimum obtained value
MaxVal: "float" data type field. This field shows the variable's maximum obtained value
AveVal: "float" data type field. This field shows the variable's average obtained value
TotTime: "float" data type field. This field shows the total ON time in seconds (time in which
the variable last remained at a value that was not zero)
LastTime: "datetime" data type field. This field shows the variable's last ON Time (the time
in which the variable last obtained a value that was not zero)
MinValDay: "float" data type field. This field shows the minimum value reached by the
variable during the current day
MaxValDay: "float" data type field. This field shows the maximum value reached by the
variable during the current day
AveValDay: "float" data type field. This field shows the average value of the variable during
the current day
TotTimeDay: "float" data type field. This field shows the total time ON of the variable (the
length, in seconds, of the time period the variable had a non zero value during the current
day)
LastTimeDay: "datetime" data type field. This field shows last time the variable was ON
during the current day (the time when the variable had a non zero value for the last time)
MinValWeek: "float" data type field. This field shows the minimum value reached by the
variable during the current week
MaxValWeek: "float" data type field. This field shows the maximum value reached by the
variable during the current week
AveValWeek: "float" data type field. This field shows the average value of the variable
during the current week
TotTimeWeek: "float" data type field. This field shows the total time ON of the variable (the
length, in seconds, of the time period the variable had a non zero value during the current
week)
LastTimeWeek: "datetime"data type field. This field shows last time the variable was ON
during the current week (the time when the variable had a non zero value for the last time)
MinValMonth: "float" data type field. This field shows the minimum value reached by the
variable during the current month
MaxValMonth: "float" data type field. This field shows the maximum value reached by the
variable during the current month
AveValMonth: "float" data type field. This field shows the average value of the variable
during the current month
TotTimeMonth: "float" data type field. This field shows the total time ON of the variable
(the length, in seconds, of the time period the variable had a non zero value during the
current month)
LastTimeMonth: "datetime" data type field. This field shows last time the variable was ON
during the current month (the time when the variable had a non zero value for the last time)
MinValYear: "float" data type field. This field shows the minimum value reached by the
variable during the current year
MaxValYear: "float" data type field. This field shows the maximum value reached by the
variable during the current year
AveValYear: "float" data type field. This field shows the average value of the variable
during the current year
TotTimeYear: "float" data type field. This field shows the total time ON of the variable (the
length, in seconds, of the time period the variable had a non zero value during the current
year)
LastTimeYear: "datetime" data type field. This field shows last time the variable was ON
during the current year (the time when the variable had a non zero value for the last time)
This information consents reports to be made for preventive maintenance for instance.
The "TotTime" column (time in which the variable remained at value that was not zero) is Float type
and shows the value in seconds. This field is updated only when the variable returns to the zero
value. The "LastTime" column (the time in which the variable last obtained a value that was not
zero) shows the date and time the variable obtained a value that was not zero. This field is zeroed
by obtaining the "1900-01-01 00:00:00.000" value when the variable returns to the value zero. The
variable's TotalTimeOn value is calculated based on the "LastTime" and "TotTime" columns. If the
"LastTime" column has a value higher than "1900-01-01 00:00:00.000", then the variable's
TotalTimeOn will be equal to the value of the "TotTime" column plus the number of seconds
between the current time and the one reported in the "LastTime" field.
158
R E A L
T I M E
D B
The statistical data shown in the table is taken from the Retentive Variables file. To get
all the above described data correctly, the shared database variables must be enabled in
both the "Retentive not Shared" and "Enable Statistic Data" properties.
Structure Variables
Structure variables are managed by the Real Time DBMS as byte arrays, therefore in the shared
database a String field is created where the values of each array item will be shown.
The string members of structure variables are not shared in the
database. The strings in structures are managed as internal
variables and have changeable sizes. As structures in the Real Time
DBMS are managed as data byte arrays, it is not possible to
read/write structure variable string members. Nevertheless, each
string will be allocated with two bytes, even though they may not
get used.
For instance, if a structure variable, composed of two Word
members and a String member, is shared in the ODBC, the byte
array to be shared in the database will be composed of 6 bytes (4
bytes for the Word members and 2 bytes for the String members).
159
M O V I C O N _ P R O G R A M M E R _ G U I D E
When using the "Shared" area, you can create more mapped variables in the same area. This is very
handy for setting Word variables used for communicating with the field and 16 bit variables to be
used as single items in objects in screens. In this case the Word variable and the Bit variable should
be mapped in the same area (ie. Address Word = 0, AddressBit1 = 0.0, AddressBit2 = 0.1, etc).
When using this technique you will need to keep in mind that each one of the variables in the
mapped shared area (partly or completely) will be put into use in the same area of another variable
already in use (therefore, if a Bit variable is put into use, the Word variable will be put into use as
well) This behaviiour is valid for standard and array variables but not for structure variable members.
160
R E A L
T I M E
D B
Date of last transition from the zero value to a zero other than zero. This date (LastTimeOn)
is only significant when the variable has a value that is not zero, and will be reset when the
variable turns back to the zero value
Statistical Data
The five Statistical Data items described above are calculated starting from the first project run and
are zeroed only when the variable's "Reset Statistic" command is used.
Daily Statistical Data
The five Statistical Data items described above are calculated on a daily basis. This means that they
will be automatically zeroed at midnight (passing over from the current day at 23:59:59 to 00:00:00
of the next day). The same zeroing will take place if the current day of the project startup is
different from when the project was last stopped.
Weekly Statistical Data
The five Statistical Data items described above are calculated on a weekly basis. This means that
they will be automatically zeroed at midnight before the new week begins (passing over from Sunday
at 23:59:59 to 00:00:00 of Monday). The same zeroing will take place if the current week of the
project startup is different from when the project was last stopped.
Monthly Statistical Data
The five Statistical Data items described above are calculated on a monthly basis. This means that
they will be automatically zeroed at midnight before the new month begins (passing over from the
last day of the month at 23:59:59 to 00:00:00 of the first day of the next month). The same zeroing
will take place if the current month of the project startup is different from when the project was last
stopped.
161
M O V I C O N _ P R O G R A M M E R _ G U I D E
The five Statistical Data items described above are calculated on a yearly basis. This means that they
will be automatically zeroed at midnight before the new year begins (passing over from the last day
of the year at 23:59:59 to 00:00:00 of the first day of the next year). The same zeroing will take
place if the current year of the project startup is different from when the project was last stopped.
162
key="VAR00001"
key="VAR00003"
key="VAR00004"
R E A L
T I M E
D B
Standard objects in screens: new variable names will appear in properties where variables
can be associated
Command List Variable commands:new variable names will appear in properties where
variables can be associated
Event Objects: new variable names will appear in properties where variables can be
associated
Scaling Objects: new variable names will appear in properties where variables can be
associated
Scheduler Objects: new variable names will appear in properties where variables can be
associated
Shortcuts:new variable names will appear in properties where variables can be associated
Men: new variable names will appear in properties where variables can be associated
Redundancy: the new variable name will appear in the "Status Variable" property
Screens: the new variable name will appear in the "Screen Layer Variable" property
Alarm Objects:new variable names will appear in properties where variables can be
associated
Alarms as Templates: new variable names will appear in the Alarm Window. If an String ID
with the original variable name has been inserted for displaying the alarm's text, you will also
need to rename the String ID with the variable's new name
Parameter File: the variable's original name will always appear in the file but the new
variable will be used in run mode
163
M O V I C O N _ P R O G R A M M E R _ G U I D E
Trend/Data Analysis: new variable names will appear in the Trend/Data Analysis
properties where variables can be associated. This is also valid for the variables associated to
the Trend/Data Analysis pens. However the pens' names with remain unchanged even in
those cases when pens have the same variable names
Basic Script: the variable's original name will always appear in the basic script code but the
code will be executed according to the new variable in run mode
Basic Script Properties: the new variable name will appear in the "Status Variable"
property
IL Logic: the original variable name will always appear in the code but it will be executed
according to the new variable in run mode
DataLoggers/Recipes: new variable names will appear in the DataLogger/Recipe
properties where variables can be associated. However, the column names will remain
unchanged, even in those cases where column names are the same as the variables'
Communication Drivers: original variable names will always appear in Driver Station and
Task properties where variables can be associated but the new variable will be used in
runtime
The "BasicKeywords.xml" external file consents you to define key word lists used while replacing
variables in basic script code. The "BasicKeywords.xml" file structure is as follows:
<?xml version="1.0" encoding="iso-8859-1"?>
<BasicKeywordsList>
<Key>If</Key>
<Key>ElseIf</Key>
<Key>Select Case</Key>
<Key>Loop Until</Key>
<Key>Loop While</Key>
<Key>While</Key>
</BasicKeywordsList>
Communication Drivers
A new item called "Renaming Manager" has been added to the list of communication driver features
which consents you to find out whether the driver supports the renaming management or not.
Those Drivers which support the remaining management have this option set at 'true' will display
those variables with names modified within their configuration window; and will also support the
apply renaming command.
164
R E A L
T I M E
D B
165
M O V I C O N _ P R O G R A M M E R _ G U I D E
and 5 variables change at the same time, one file will be written every second therefore it will take 5
seconds to write all the retentive files (1 second x 5 variables).
When set with the "0" value, a variable change check for recording will be made every second and
any changes made will be recorded straight away without delay.
Caution: this time is used for updating one single file. This means that if
the value changes in more than one variable at the same time, the last file
will be updated according to the value set in this property times the number
of variables changed. Example, when setting a one second value in this
property and five variables change at the same time, each file will be
updated one second at a time, meaning that it will take about 5 seconds in
all to update all five files (1 second per variable: 1 sec. x 5 variables = 5
secs).
Inputs
This setting allows you to enable or disable the retentivity management for the Input area.
Inputs From:
This setting permits you to insert the starting address for the retentive Input area.
Inputs A:
This setting permits you to insert the ending address for the retentive Input area.
Flags
This setting permits you to enable or disable the retentivity for the Flag area.
Flags From:
This setting permits you to insert the starting address for the retentive Flag area.
Flags A:
This setting permits you to insert the ending address for the retentive Flag area.
Outputs
This setting permits you to enable or disable retentivity management of the Output area.
Outputs From:
This setting permits you to insert the starting address for the retentive Output area.
Outputs A:
This setting permits you to insert the ending address for the retentive Output area.
166
R E A L
T I M E
D B
167
M O V I C O N _ P R O G R A M M E R _ G U I D E
The time set here is to be differentiated from the refresh time set in the property of a group
inserted within any OPC Client. It is not advised to set fast refresh times when long times
have been set inside the groups created in the Client.
AutoShutDown Timeout (ms)
This setting permits you to insert the OPC Server's standby time before shutting down.
AE Ack
This selection box enables the acknowledge function of the events generated.
Free threaded
Enables OPC Server model for managing Threads.
Enable
This selection box enables all the OPC Server XML DA functions.
Transport
The transport type to be used for Server/Client communication is selected in this box.
Port
The port socket number to be used.
Accepted # Threads
The number of thread to be left on hold for the new connections.
168
R E A L
T I M E
D B
169
M O V I C O N _ P R O G R A M M E R _ G U I D E
170
R E A L
T I M E
D B
Quality Column
This setting is used for inserting the Trace Table's Quality Column's name. If not specified the
default's name will be used instead. This column indicated the variable's quality status.
TimeStamp Column
This setting allows you to enter the name of the "TimeStamp" Column. The default name will be
used If no name is specified. The TimeStamp Column indicated the variable's TimeStamp.
Variable Name Column
This setting allows you to enter the name of the "Variable Name" Column. The default name will be
used If no name is specified. The "Variable Name" Column indicates the name of the variable when
set to share the same trace table with other variables.
Variable Group Column
This setting allows you to enter the name of the "Variable Group" Column. The default name will be
used If no name is specified. The "Variable Group" Column indicates the name of the group which
the variable belongs to.
Variable Description Column
This setting allows you to enter the name of the "Variable Description" Column. The default name
will be used If no name is specified. The "Variable Description" Column indicates the variable's
description.
Recreate All
The command regenerates all the tables of the variables enabled with the Trace. All existing data will
be lost.
The Database file will be organized with a column containing the names of
variables (defined in the name box in the variables' General Properties)
and a series of columns containing their current values and corresponding
statistics.
When using MS Access as the preferred database, Movicon will create the
Database file in the project's "DATA" folder for default with the following
name:
ProjectName_RealTimeDB.mdb
To change the ODBC link and the linked file use the "ODBC DSN"
properties described below:
Keep the DB Connection open
See paragraph "DBMS Settings for Recording data on DataBase" in the section on "Historical
Log Management".
Max. Error Number
See paragraph "DBMS Settings for Recording data on DataBase" in the section on "Historical
Log Management".
Max. Transactions
See paragraph "DBMS Settings for Recording data on DataBase" in the section on "Historical
Log Management".
Max. VarChar Precision
See paragraph "DBMS Settings for Recording data on DataBase" in the section on "Historical
Log Management".
171
M O V I C O N _ P R O G R A M M E R _ G U I D E
ODBC DSN
See paragraph "DBMS Settings for Recording data on DataBase" in the section on "Historical
Log Management".
ODBC DSN User
See paragraph "DBMS Settings for Recording data on DataBase" in the section on "Historical
Log Management".
Table Name
This setting is used for inserting the Table's name. If nothing is entered, the "RTVar" default name
will be used instead.
Name Column
This setting is used for inserting a name for the DBMS table's Variable Name column. This column
reports the name of the variables enabled with the ODBC Real Time I/O Link function. Each record in
the table represents a variable. If nothing is entered the 'Name' default name will be used instead.
Value Column
This setting is used for inserting the name of the DBMS table's Variable Value Column. This column
reports the variable's value enabled with the ODBC Real Time I/O Link function. If nothing is
entered, the "Val" name for default will be used instead.
Min. Value Column
This setting permits you to insert the name of the Min. Value Column of variables in the DBMS table.
This column shows the minimum value of variables enabled with the ODBC Real Time I/O Link
function. The "MinVal" default name will be used if left blank.
Max. Value Column
This setting permits you to insert the name of the Max. Value Column of variables in the DBMS table.
This column shows the maximum value of variables enabled with the ODBC Real Time I/O Link
function. The "MaxVal" default name will be used if left blank.
Ave. Value Column
This setting permits you to insert the name of the Ave. Value Column of variables in the DBMS table.
This column shows the average value of variables enabled with the ODBC Real Time I/O Link
function. The "AveVal" default name will be used if left blank.
Total Time ON Column
This setting permits you to insert the name of the Total Time ON Column variable from the DBMS
table. This column shows the total ON time of the variables enabled with the ODBC Real Time I/O
Link function. The "TotTime" default name will be used if left blank.
Last Time ON Column
This setting permits you to insert the name of the Last Time ON Column Variable of the DBMS Table.
This column shows the last Time ON of variables enabled with the ODBC Real Time I/O Link
function. The "LastTime" default name will be used if left blank.
Recreate All
This command regenerates the tables containing data of the variables enabled with the ODBC Real
Time I/O Link functionality. Any existing data will be lost.
172
R E A L
T I M E
D B
Variables"). In addition to this, you can also use dynamic variables internal commands belonging to
menu items and Shortcut keys.
The dynamic variables cannot be used internal IL Logic, also because these are also meant for
writing or reading remote variables only in certain moments when absolutely necessary: when they
are no longer in use Movicon actually frees them from system memory.
When using dynamic variables you are permitted to go over the number of tags enabled by the
license which is being used for running the project. When opening a resource, in which dynamic
variables are being used, Movicon automatically allocates these variables in memory, to then frees
them from memory when the resource is closed. This makes it theoretically possible to have an
unlimited number of dynamic variables within a project.
The dynamic variables are subdivided into three categories: Network Variables, OPC Variables and
Communication Driver Variables. Their management by Movicon is identical for all categories.
The number of dynamic variables used must always be compatible with
the number of tags provided by the Movicon license being used.
When the local computer or a network computer is highlighted, the "Refresh" button
updates the list of all the Movicon projects running on that specific computer
When a domain or a network group is highlighted, the "Refresh" button updates the list of
computers available for the network highlighted
When a Movicon Project is highlighted: the "Refresh" button updates the list of variables
displayed in the square on the right, by applying the filter. The filter consists of alphanumeric
characters which can preceded or followed by a "*" wildcard character. For instance, filters
may be: VAR*, *000*, *05
If you do not have a remote computer connected in net you can write the correct syntax directly into
the Variable insertion box, as follows:
[NET]\\ComputerName\VariableName
where:
[NET] = Movicon suffix which identifies a network connection
ComputerName = Name of remote Server computer Server
VariableName = Name of variable in the Server project to be connected
To be able to exploit the use of Dynamic Network variables you need to have the Networking option
enabled on the dongle and both computers configured so that they can speak and see each other on
the Ethernet network with the TCP-IP protocol. For further information please consult the section
about "NetWorking".
173
M O V I C O N _ P R O G R A M M E R _ G U I D E
You can also specify the name of the Server of the TCP-IP address in the "Server" edit box as
shown above.
The "Live Data", when enabled, allows you to the values of the variables in real-time. Once
checked the value are displayed upon the next request.
The "Refresh" key functions differently according to the element highlighted in the window's left
pane:
When the local computer or a network computer is highlighted, the "Refresh" button
executes a refresh of the list of OPC Servers installed on that specific computer.
When a domain or a network group is highlighted, the "Refresh" button executes a refresh
of the list of computers available for the one highlighted.
When a device or a OPC Server group is highlighted, the "Refresh" button updates the list
of items displayed in the right pane by applying the filter. The filter consists of alphanumeric
characters which can be put before or after the "*" wildcard character. Filters may be for
example: My*, *Tag*, *Tag1
If you cannot access the OPC Server you can directly write the correct syntax in the insertion box as
follows:
[OPC] ServerName.Version\DeviceName.GroupName.TagName
Where:
[OPC] = Movicon Suffix which identifies a OPC connection.
ServerName = Name with which the OPC Server is registered in, in the operating system.
DeviceName = Name of device configured in the Server.
GroupName = Name of group which variable belongs to.
TagName = Nome of tag configured in the Server.
In order to use these Dynamic OPC variables you need to have the OPC Client option enabled on the
dongle and have an OPC Server already installed and configured. In addition, when accessing a
remote OPC Server (on another computer) you need to configure the DCOM components
appropriately on both the operating systems to get an adequate access level.
174
R E A L
T I M E
D B
The Settings of the selected Driver are displayed on the right hand side of the window. The driver's
configuration mask is opened by using the "Settings" button.
By double-clicking on the driver's name displayed on the left hand side of the window or a click on
the "Add..." button, another window will appear for inserting the communication Task which
involves selecting the variable of the device which you wish to link to. The window in question,
shown below, shows the different selection fields according to the type of driver being used:
175
M O V I C O N _ P R O G R A M M E R _ G U I D E
By clicking on the "Remove" button it will be possible to delete the selected tag.
If you haven't yet configured the communication driver you can directly write the correct syntax, in
the Variable insertion box, as follows:
[DRV]DriverName.Sta=StationName|Addr=TagAddress
where:
[DRV] = Movicon Suffix which identifies a connection to a Communication Driver
DriverName = Name of Communication Driver to be used
StationName = Name of station configured in the driver
TagAddress = Address of Tag in device (use the syntax of the device itself)
In order to use the Dynamic Communication Driver variables the appropriate communication drivers
have to be enabled on the dongle.
Using Structure type variables are very handy when managing repetitive objects made up of groups
of data.
Once the Tank object's structure of variables has been setup, it can be inserted into the project
many times, each time with a different name (Tank_1, Tank_2, Tank_3, etc.), all referring to the
same data structure.
Each variable will refer to its own absolute address, starting from the initial byte, for the necessary
number of bytes required by the members belonging to the same structure.
176
R E A L
T I M E
D B
Before inserting a Structure variable into the Real Time DB, its Prototype needs to be set from the
project's 'List Structure Prototypes'.
The Structure Prototypes allow you to setup the Type of structure you wish to create by declaring
the Member Variables which will take part in it. After having done this, it will appear as variable
Type in the Variable properties
It will then be possible to insert new variables as 'Type' being the name of one of the preset
Structure Prototypes instead of bytes, words, floats, etc.
If you select the Input, Output or Flag area in the variable's 'Area' property, the starting byte
address must be specified in the 'Address' property.
Movicon will always request, as for all the variables in the set shared areas in the project, the start
byte address.
177
M O V I C O N _ P R O G R A M M E R _ G U I D E
The comment will remain associated to the Structure Prototype but will only be available in
the database.
Size
This field is read only, it reports the live occupation of the Structure Prototype in bytes.
Member Order
This button allows a window to be opened for changing the order of member variables internal a
prototype structure. For further information please refer to the paragraph on "Variable Member
Order".
178
R E A L
T I M E
D B
At this point drag the member variable with the mouse to the point required.
179
M O V I C O N _ P R O G R A M M E R _ G U I D E
180
R E A L
T I M E
D B
To undo the Default Structure, select the symbol and use the right mouse key, then access the 'Set
Default Structure' command keeping the CTRL key pressed at the same time.
The Array type variables can have up to a maximum of 4096 elements. Considering that the first
element is addressed with "0", for example if you take an Array with 10 elements, they would be
addressed from "0" to "9".
The Array variables can be used in the different project controls and resources, such as the screen
object, Alarms DataLogger-Recipes, Il Logic, etc. The syntaxes that can be used for accessing Array
elements are:
Array[#]
Array[IndexVar]
Array[#].BitNum
Array[IndexVar].BitNum
Array.e#
Where:
"#" = is a numeric value which represents the number of elements to be pointed to (i.e. Array[1])
"IndexVar" = is the name of a numeric variable that contains the number of elements to pointed
to. It allows you to dynamically change the number of elements to be accessed (i.e.
Array[VAR00001])
"BitNum" = is a numeric value which represents the number of the Array's element's bits to point
to (i.e.Array[1].0)
All the above syntax can be used for accessing in Array elements in read/write and there is no need
to enable the variables' "Intellisense" properties.
When opening the "Tag Browser" window for selecting a variable, you will find that the Array
variables have a "+" cross on the left hand side of their name. When clicking on the Array, it will
expand to show a list of its elements which can then be selected singularly.
181
M O V I C O N _ P R O G R A M M E R _ G U I D E
182
R E A L
T I M E
D B
Please take into account that when accessing from the Parent project to the Array variables of a
Child project or from the Child project to Array variables of the Father project using a variable to
define the array element's index to be pointed to, the variable's index will only be searched for within
the variable's context in the project. For example, When accessing a Child project's Array, the index
variable must be passed using the name of the variable only (without prefixes) and must defined in
the Child project:
child1\VarArray1_Child1[ChildIndexVar1]
Where ChildIndexVar1 is the Child project.
The same goes when accessing Parent project variables from the Child project. The syntax uses is:
..\VarArray1[ParentIndexVar1]
where ParentIndexVar1 is a Parent project variable.
Examples of using Array variables between Parent and Child projects
Supposing we have a Parent project and a Child project called "child1" we could have:
child1\VarArrayChild1[0]
child1\VarArrayChild1[0].0
child1\VarArrayChild1.e0
[child1\VarArrayChild1.e0] + VAR00001
child1\VarArrayChild1[ChildIndexVar1]
child1\VarArrayChild1[ChildIndexVar1].0
..\VarArrayParent[0]
..\VarArrayParent[0].0
..\VarArrayParent.e0
[..\VarArrayParent.e0] + VAR00001
..\VarArrayParent[ParentIndexVar1]
..\VarArrayParent[ParentIndexVar1].0
Where:
VarArrayChild1 and ChildIndexVar1 are Child project variables.
VarArrayParent and ParentIndexVar1 are Parent project variables.
183
M O V I C O N _ P R O G R A M M E R _ G U I D E
Movicon allows you to carry out multiple variable selections for which only the properties common to
all the variables selected will be enabled in the 'Properties Window'. Any modifications carried out
in anyone of these properties will effect all the variables selected.
As you can see in the figure above, by executing a multiple variable selection in the 'Properties
Window' only some of the properties remain available being those common to all the variables. Any
changes to the selected variables can be reported by modifying their properties altogether at the
same time.
184
R E A L
T I M E
D B
As you can see in the figure above, by executing a multiple variable selection in the 'Properties
Window' only some of the properties remain available being those common to all the variables. Any
changes to the selected variables can be reported by modifying their properties altogether at the
same time.
185
M O V I C O N _ P R O G R A M M E R _ G U I D E
Initial Quality
This selection lets you define the variable's initial quality. This setting is significant for those variables
which are to be exchanged with other devices or programs, eg. through communication drivers, OPC,
Networking. This property is very useful when finding out whether the variables which are read by
the field are updated correctly and contain valid values. The variable quality states can be:
Inherit Quality
This property is managed for structure variables only and is used for updating the variable structure's
quality based on the quality of each of its individual members. When the dynamic link is set for each
individual structure member ("Fixed I/O address" property), each member will have its own quality
status. In this situation when the structure variable's "Inherit Quality" property is enabled, the
structure variable's quality will be set based on the status quality of each of its individual members.
It will only take just one member to have a "Not Good" quality to set the structure variable to a
"Not Good" quality status as well. However, if the "Inherited Quality" is left disabled, the Structure
Variable's quality will not be influenced by its members' qualities.
Retentive not Shared
The variable's retentive is enabled when declared as 'Not Shared' area type.
Area
This property is used for defining the data area type in which the variable is to be mapped. The
options are:
Not Shared
Input
Flag
Output
When you select the 'Not Shared' data area, it will not be necessary to define the variable's absolute
address as this will be automatically allocated by Movicon without making any errors of
superimposing unwanted addresses. When you use the Input, Output and Flag areas you can
associate an absolute address to the variable but special attention must be paid as not to
superimpose unwanted addresses.
186
R E A L
T I M E
D B
[NET]\\ComputerName\VariableName
where:
[NET] = Movicon suffix which identifies a network connection
ComputerName = Name of remote computer Server
VariableName = Name of variable in Server project to be connected
OPC Syntaxes
[OPC] ServerName.Version\DeviceName.GroupName.TagName
where:
[OPC] = Movicon Suffix identifies a OPC connection
ServerName = Name with which the OPC Server registered in the operating system
DeviceName = Name of device configured in the Server
GroupName = Name of the tag's starting group.
TagName = Name of tag configured in the Server
Driver Syntaxes
[DRV]DriverName.Sta=StationName|Addr=TagAddress
where:
[DRV] = Movicon Suffix identifies a connection to a Communication Driver
DriverName = Name of Communication Driver to be used
StationName = Name of station configured in the driver
TagAddress = Address of Tag in the device (use the device's syntax)
187
M O V I C O N _ P R O G R A M M E R _ G U I D E
188
R E A L
T I M E
D B
This difference is due to the fact that the variable enabled with the "IntelliSense" option is
considered by the basic script as an object with a series of properties (the variable's elements), and
one of these properties (array item) is taken as a predefined property in cases where not specified.
Enable Member Properties
This check box allows you to enable the possibility to edit the properties of one member from a
structure variable. This option only shows when a structure member has been selected and doesn't
shoe for ordinary variables.
For further information please refer to the section on "Modifying Structure Member properties".
Eredita Qualit
Through this property, which is only supported for variables of type structure,it is possible to make
sure that the quality of the variable structure is updated
based on the quality of the individual members. When you set up dynamic linking for individual
members of the structure (property "Physical Address I / O" of the individual
members) each member state will have its quality. If in this situation the properties"Inherit Quality"
of the structure variable is enabled, then the quality of structure variable will be set based on the
quality status of individual members.It is sufficient that at least one of the individual members have
quality "not good" that the variable structure will be set with quality "not good." If instead the
property "Inherit Quality" is left disabled, then the variable qualitystructure will not be affected by
the quality of its members.
In the display object set for displaying variables and not set with a different format in its
properties
189
M O V I C O N _ P R O G R A M M E R _ G U I D E
In the numeric pad to format values displayed in edit boxes. The numeric pad can also
manage formats with integer numbers with floating points. Therefore, integer variables can
be used for displaying and setting values with floating points, as with the display object, by
using a format that includes decimal figures (ie. "x.xx"). If the numeric pad is used with
variables without formats, it will behave by default using its base "%.g" format
Trend and Data Analysis objects: are displayed according to the pen variable value
format and, as a consequence, the pens scales as well.
Meter objects: are displayed with scales formatted according to the variable format
Alarm Window Object: the variable's format is used for defining the display value format
of the variable inserted in threshold's alarm text when using the "%(VAR00001)" syntax. In
cases where nothing is specified in the variable's "Default Format" property, the "%f" default
value will be used.
Caution: The format set in objects that display the variable have priority over the
format set in the variable. If you want to use the format set in the variable, you
must leave the "Value Format" field empty in the object displaying the variable.
Caution: Display formats in numeric pads created on screen (see template library),
are in "%G" so that variables can be displayed in the most compact form
possible. In any case, values with floating points in integer numbers can be set
using a preset variable format which included decimal figures.
Note: This function can also solve the problems of variables with floating point
approximations (floating points in 32 bit) when displayed in numeric pads. The
numeric pad will round off numbers with decimal points, as set in the variable
format.
Engineering Units
By using this property you can associate the engineering units to the variable. This will be displayed
in the controls provided for this property's management.
Close bit String
When the variable is Bit type, it can be associated with a text string to identify the variable's Close
value, being when the bit assumes a value other than zero. In this way, by displaying the variable in
the "Watch Window" the string will appear directly, replacing the binary value. In addition to
this, if the variable has been inserted in a Datalogger, the recording of the variable will show the
string's caption instead of the value "1". The DataBase field, for bit type variables, is in fact defined
as string type.
This property is available for the "Check Box Button" and "Radio Button" objects when inserted in a
Movicon "Report Interno" object. The moment boolean data is recorded using the DataLogger, it is
executed by inserting a string data type in the database, when this data is associated to a "Check
Box Button" or "Radio Button" object, the correspondence between the boolean value and the string
value recorded in the table field will need to be specified. In this case the text corresponding to the
one registered in the database when the boolean value corresponds to "True" should be inserted in
the "Check Box Button" or "Radio Button" object's "Open Bit String" property. By doing this the
"Check Box Button" will be displayed with a tick when the table field value corresponds to the
"Open Bit String" set in the object. In cases concerning the "Radio Button", which is set with only
two options, the second option will be marked.
Open Bit String
When the variable is Bit type it can be associated with a text string to identify the variable's Open
value, being when the bit assumes the zero value. other than zero. In this way, by displaying the
variable in the "Watch Window" the string will appear directly in the place of the binary value. In
addition to this, if the variable has been inserted in a Datalogger, the recording of the variable will
report the string's caption instead of the value "0". The DataBase field, for bit type variables, is in
fact defined as string type.
This property is available for the "Check Box Button" and "Radio Button" objects when inserted in a
Movicon "Report Interno" object. The moment boolean data is recorded using the DataLogger, it is
executed by inserting a string data type in the database, when this data is associated to a "Check
Box Button" or "Radio Button" object, the correspondence between the boolean value and the string
value recorded in the table field will need to be specified. In this case the text corresponding to the
one registered in the database when the boolean value corresponds to "False" should be inserted in
the "Check Box Button" or "Radio Button" object's "Close Bit String" property. By doing this the
"Check Box Button" will be displayed with a tick when the table field value corresponds to the
190
R E A L
T I M E
D B
"Close Bit String" set in the object. In cases concerning the "Radio Button", which is set with only
two options, the first option will be marked.
Enable
This setting enables or disables the variables scaling property.
The mathematic formula for a variable scaling is:
SCALED = ((SCALED_MAX - SCALED_MIN) / (RAW_MAX - RAW_MIN) * (RAW - RAW_MIN)) +
SCALED_MIN
Where:
Input: RAW
Input Min: RAW_MIN
Input Max: RAW_MAX
Scaled Min: SCALED_MIN
Scalde Max: SCALED_MAX
Output: SCALED
Inverse
By enabling this property the scaling will be executed in reverse. For instance if the following was
set:
Raw Max. Value = 100
Raw Min. Value = 0
Scale Max. Value = 1000
Scale Min. Value = 0
When the variable obtains the raw 0 value, the scaled value will be 1000 and when the variable
obtains the 100 value the scaled value will be 0.
The mathematic formula for a variable inverted scaling is:
SCALED = ((SCALED_MAX - SCALED_MIN) / (RAW_MIN - RAW_MAX) * (RAW - RAW_MIN)) +
SCALED_MAX
Where:
Input: RAW
Input Min: RAW_MIN
Input Max: RAW_MAX
Scaled Min: SCALED_MIN
Scalde Max: SCALED_MAX
Output: SCALED
Dead Band
This property is used for specifying the value to which the scaled data will be set the moment the
raw value of the variable should exceed the maximum or minimum set limits. This property is set at
'-1' for default.
Raw Max.
The maximum unscaled value that the variable can obtain.
Raw Min.
The minimum unscaled Value that the variable can obtain.
Scale Max.
The maximum scaled value that the variable can obtain.
Scale Min.
The minimum scaled Value that the variable can obtain.
Enable Factor
This property allows you to use the Gain and Offset factors for scale calculations. The expressions
become:
(Value * Gain) + Offset
191
M O V I C O N _ P R O G R A M M E R _ G U I D E
You must consider that in this formula the"Value" parameter refers to the Movicon variable and not
the Communication Driver's value. Therefore the most explicative formula would be:
DriverValue = (Movicon Value * Gain) + Offset
Inverse Factor
This property consents the inverted use of the Gain and Offset factors for scale calculations (you will
also need to check the "Enable Factor" property). The expression will become:
You must consider that in this formula the "-value" parameter refers to the Movicon variable and not
the Communication Driver's value. Therefore the most explicative formula would be:
DriverValue = (Movicon Value - Offset) / Gain
Gain
The Gain value for the scale calculation with the use of multiplication factors.
Offset
The Offset value for the scale calculation with the use of multiplication factors.
192
R E A L
3.
T I M E
D B
In situations where points 1 and 2 do not count, only when the user's "Access Level" mask
encounters the variable's "Write Access Level" mask
Setting Write Access Levels for NON default variables: the Server will not accept any modifications
done to non default variable values by users granted access from the Client to the Server through
the network services, who do not have access rights to certain non default variables.
Read Access Level
The Access Level can be defined through this property for the selected variable in read.
For further information on 'Access levels' please refer to the "Read Access Levels" paragraph.
In cases in which the variable can be selected in the "Hour Selector" window set for viewing plans in
"Grid" mode, this Access Level allows the variable in the selection list to be available based on the
Access Level of the user logged on .
For further information "Access Levels" please refer to the paragraph on "Users Levels and Access".
Setting Read Access Levels for NON default variables: Client users granted access to Server, through
the network services, will not have access right to those variables which will not be subscribed by the
Server and therefore will result as being not connected to on the Client side.
Always Visible
When enabled, this property will render the variable always visible, therefore available for selecting
for those environments which require it.
This option is usually used in the following environments:
In the "Scheduler Window" to determine which variables are to be made visible in the
Variable list and therefore selected for commands (only for "Scheduler Windows" in Grid
mode)
When using the Network Server Tag browser, for instance for setting dynamic addresses,
where variables are to be always visible and selectable even when the user connected to the
Server does not have read access rights
When this option is not set (disabled for default), the variable will only be made visible and
selectable in Runtime if the project has the user management active, and the user wishing to access
has an access level compatible with the that set for the variable.
For further details on "Access Levels" please refer to the paragraph on "User Levels and Access
Levels".
193
M O V I C O N _ P R O G R A M M E R _ G U I D E
Whenever you wish to use the OPC Server functionalities, you will have to
enable and specify the OPC Server functionality from the project's "Real
Time DB OPC Server Settings". How use the OPC functions are described in
the respective section.
Access Rights
This property is used for selecting which type of access to use by the OPC Client to access the
Movicon OPC Server.
The values that can be used are:
readable
writable
readable-writable
When the variable is "Readable", it will only be possible to read and not set a value from an OPC
Client. When the variable is "writable", it will only be possible to wet the value and not read it and
therefore the communication quality will result always as "Bad".
Opening a project from a previous Movicon version will set the value in this
property to readable-writable.
194
R E A L
T I M E
D B
Html File
By means of this property you can associated a Html file to the Variable. This property can be
interpreted by the connected OPC Client if predisposed with the necessary functionalities.
AVI File
By means of this property you can associate an .AVI file to the Variable. This property can be
interpreted by the connected OPC Client if predisposed with the necessary functionalities.
195
M O V I C O N _ P R O G R A M M E R _ G U I D E
Timeframe from
The time in which the variable's trace starts is set here when the 'Enable Day Timeframe' option
has been enabled.
Timeframe to
The time in which the variable's trace ends is set here when the 'Enable Day Timeframe' option
has been enabled.
Add Msg to SysLog
When this setting is enabled a message will be recorded on the 'SysLog' (System Messages' Historical
log) every time the variable's value changes. This setting is only valid if the variable's trace is
enabled. Also information reported in the database will be recorded in the Historical Log file.
Add Variable Description Column
Enabling this setting will also add the "Description" of the variable being traced to the "Variable
Description (TagDescCol)" column in the record table.
For further information please refer to the topic on "Variable Tracing (Audit Trail)".
Add Variable Group Column0
Enabling this setting will also add any Group to which variable, being traced, belongs to the "Variable
Group(TagGroupNameCol)" column in the record table.
For further information please refer to the topic on "Variable Tracing(Audit Trail)".
Trace Comment
This setting, when enabled, allows you to insert a comment in the variable's trace Database each
time the variable under goes any changes. This comment will be recorded in the "Action" field
replacing the text written by Movicon for default. The following will open each time a variable
undergoes a change:
At this point the user can insert a comment in the appropriate window and confirm with "OK". The
variable's value will only change when the user has confirmed with the "OK" key. If the "Cancel"
button is pressed, the variable will not be changed and will keep its previous value.
You should take into consideration that comment do not need to be entered for those changes made
to variables from logic which are not subjected to events undertaken by users. For example, this
category includes the project or screen IL Logic, Communication Drivers, and the OPC. The window
for entering comments will be called if the variable is changed by: Basic Script codes, controls taking
action on variables, variable setting commands and in any point of the project they are set.
196
R E A L
T I M E
D B
When the 'Trace Comment Window ' is opened on screen, the variable's
value is frozen. Any other process, such as Communication Drivers, IL
Logic and Basic Scripts cannot be change the variable's value.
When the "Add Msg to SysLog" property is enabled, the comment will also end up in the
"DescCol" column from the "SysMsgs" table.
You can customize dialog window's character's font and size by using the
appropriate registry keys:
TraceCommentFont
TraceCommentFontSize
Modifying the font or its size will also change the dialog window's sizes.
Create DB Table
This command executes the creation of the Variable Trace table within the database. If a table
already exists it will be cancelled along with its next recreation when this command is executed. This
means that any previously recorded data will be lost.
read: means that the variables on the Movicon side are read with a preset frequency time
("Reading Refresh Time"). If this data DOES NOT exist on database the value will not be
modified in the application, and if the variable is retentive, it will keep its last value. However
the variable's 'quality' can be managed to get information on the value type (when the quality
is 'good' this means that the value is the one read from the database, otherwise means that
a value has not been set for the variable on database)
write: means on each variation of the variable's value, Movicon will insert the data on
database. If the record exists it will be updated otherwise the data will be inserted
read-write: Movicon keeps the variable of the Movicon project and the relative field of the
linked Database file at the same value. Any variations of one of the two will consequently
cause the other one to change, whether to the project locally or in the Database file. In any
case, Movicon will NOT write anything at the Startup the data will be written when the first
variation takes place in order to be more flexible
197
M O V I C O N _ P R O G R A M M E R _ G U I D E
Update Quality Status = true: the variable's quality in the Client will be the same one in
the Server, except when the variable has still yet to connect ("uncertain") or when there is an
error in the network connection ("bad"). When variables are connected to the Server in
"read" or "read/write", their status quality will not be transmitted to the Server in the event of
any to modifications to them on the Client side. This means that status quality of variables
on the Server side will not get modified. When the variables are connected to the Server in
"write", any modifications to these variables on the Client side, the quality status will be
transmitted to the Server. Therefore the variables' quality in the Server will be managed
based on the "Update Quality Status" option set in the Server.
Update Quality Status = false: the variable's quality status in the Client will be set based
on the connection status with the Server, "good" if connected correctly, "uncertain" if still yet
to connect and "bad" if there is a networking connection error. However in this setting the
client's variable's quality status does not influence the Server's variable quality and any
modifications to variables on Client side will trigger transmit the quality status to the Server.
Therefore, the quality of variables on the Server side will be managed based on the "Update
Quality Status" option set in the Server.
The "Update Quality Status" is also managed by the Server (even though, as in this case, the "Enable
Client" property has been disabled). The quality status of the variable, on the Server side will be set
as below based on the this property's settings:
Update Quality Status = true: when the Client modifies a variable, if the quality status
gets transmitted to the Server in addition to the value, the quality of the variable on the
Server side will get set to the one transmitted by the Client.
Update Quality Status = false: the quality of the variable on the Server side will not get
modified when the Client notifies any changes.
Update Quality
By enabling this property the variable's quality status will be updated according to the status of the
Networking connection. If an error is generated in the Networking connection the quality status will
change to 'Not Good'.
198
R E A L
T I M E
D B
Network Server
The name or IP address of the connected PC Server station must be entered in this edit box.
Backup Network Server
The name of the Server PC Station, to be connected to, or its IP address must be entered in this
edit box for cases when the main Server is not available. The IP address of any secondary network
card of the main Server may also be entered.
The name or IP address of the Secondary Client is also entered in this field for when the Client has
to connect to a Redundancy system (re. "Redundancy"). In this case the Network Server will be
the Primary Server and the Backup Network Server will be the Secondary Server.
Network Server Variable
The mnemonic code of the Server project's variable, to which the selected local variable is to connect
to, is entered in this edit box. When using the 'Tag Browser' to select the variable directly, you can
only select the variable name from those existing in the local Real Time DB and not those existing in
the Server project.
When the 'Network Server Variable' is left empty, Movicon will execute the
local variable connection to the Server variable which has the same name.
This can only be done if this variable exists in both projects (Server e
Client).
When connecting variables of different types, Movicon will carry out data
conversions to adapt the variable in read to the type of variable associated.
However it is the programmer's responsibility to avoid any data lose
generated by the conversion (i.e. passing over from 32 bit in read to 16 bit
in write).
Mode
The Network connection operating modes for the specified variable are set though this option box:
Input: Movicon reads the specified variable's value from the connected Server's Real Time
DB and writes its contents on the variable from the local project's (Client) Real Time DB
Output: Movicon writes the value contained in the variable of the local project's (Client) Real
Time DB on the variable of the connected Server's Real Time DB
Input/Output: Movicon keeps the connected variables at the same value. Any variations of
one of the two will consequently change the one connected, whether in the Local project
(Client) or in the Server project
Priority
This property is used for associating a priority level to the connection in question. The values are
from 0 to 100. The highest number corresponds to the highest level and therefore a maximum of a
100 priorities can be used. The value inserted for default by Movicon is '-1', that is by selecting the
priority set in the Client Settings or in any associated Client Rules.
199
M O V I C O N _ P R O G R A M M E R _ G U I D E
200
R E A L
T I M E
D B
When adding a new variable in the 'Tag Browser' window, it will be added
to the main Variable list root. If, however, a variable group has been
selected within the Project Explorer Window, the new variable added
withiin the Tag Brower wndiow will get inserted within this group.
The "Group" property is found in the "DBVarObjCmdTarget" Basic Script interface and allows you to
retrieve the group which the variable belongs to.
When using an alarm as a template, with the alarm's "Alarm Area"
property left blank and the associated variable belongs to a variable
Group, the alarm will be created belonging to the area with the same
name of that variable's Group. For example, associating a digital alarm as
a template to the "VAR00001" variable inserted in the "Group1" group,
the alarm will be created belonging to the "Group1" area.
In addtion, if the variable is inserted in a sub-group, the alarm area will
obtain the name composed of the groups' names separated with the "."
character. For example if the "VAR00001" belonging to "Group1" is
inserted into "Group2", the alarm will then belong to the "Group1.Group2"
area.
201
M O V I C O N _ P R O G R A M M E R _ G U I D E
202
6. Screens
6.1. Screen Resources
The Screens are the fundamental resources in creating
graphic interfaces. This chapter describes the Screen
resources, by also referring to the appropriate chapters
on the techniques used for inserting drawings,
commands, controls into Screens.
The Screen window is one of the key elements in a Movicon project. The Screen is used to supervise
the process (or part of it) by using the graphic commands for animations activated by field variables.
The Screen controls, described in the appropriate chapters, are used for setting commands or
variables to the field, as well as facilitating supervision tasks.
The Movicon workspace can be composed of one Screen only, but using the "Embedded View"
control is possible display a Screen within other Screen.
The Screen window represents the projects screen pages. However
Screen can be inserted into other Screens (by using the 'Embedded View'
control) to get a composition of more Screens in the same page. In this
case, however, the parent Screen will always remain the Container
Screen.
The Screen windows are preset to contain, apart from graphical drawings, controls such as all the
graphical command functions or displays already preset by Movicon. The descriptions for inserting
and setting controls in Screen windows are found in the appropriate chapters.
203
M O V I C O N _ P R O G R A M M E R _ G U I D E
The Startup Screen can be selected from any of those preset by the
programmer, independently from its name.
204
S C R E E N S
205
M O V I C O N _ P R O G R A M M E R _ G U I D E
Print
This command allows to send to the default printer a print of the selected screen.
206
S C R E E N S
Movicon allows the functionalities, associated to displaying and animating the screen's vectorial
drawings and Templates, to be indexed. The programmer will find this functionality extremely useful
when handling projects containing screens with identical graphics, but different variables associated.
Let's take a plant containing 4 identical tanks as an example where only one screen is to be created
and which can be called up by 4 buttons, one for each tank. The screen has to have parameters,
which means it has to contain dummy variables which will be replaced in Runtime with real variables
of each single tank.
In this case it is clearly necessary to have use of the indexing techniques (or parameter techniques),
so that the variables associated to the Screen in the programming stage are replaced by the ones
needed during Runtime, in function with the parameter file used for opening the Screen.
The parameter file is a simple text file (UNICODE format) within which the associations between the
'dummy-variable' and real-variable' are specified. This file has to be created by the programmer, and
is to be inserted in the "Parameter File" properties of the 'Screen Commands'.
Parameterized screens load the Parameter File while the screen is being
loaded. Therefore it is fundamental that the parameterized screen not be
already loaded in Ram which means you must make sure that you have
disabled the "Keep always in Memory" option and set the "Close Screen
Delay" property to "zero" beforehand.
Parameter File
Movicon provides a resource through which you can edit these parameter files directly from the
Movicon development environment. By invoking the "New Parameter File" command from the Project
Explorer "Parameter Files" Group you can directly edit a file in table format. The following window
will open:
207
M O V I C O N _ P R O G R A M M E R _ G U I D E
The Alias column represents the name of the "Parameter Variable", being the name of the variable
which will be replaced with the name of the variable to be displayed each time on screen. The
"Variable (Tag)" column represents the effective variable which must be passed to the screen to
replace the Alias one. The parameter files associated to the same screen contain the same Aliases,
while the variables associated to the Aliases are different.
The parameter files are created in the project's "RESOURCES" folder by Movicon and will be saved in
UNICODE format with the ".movpar" extension. The file's internal will be structured with the
following syntax:
<Alias>,<Variable(Tag)>
When right clicking on the table the parameters will appear in a text menu with the commands
needed for inserting a new Alias and selecting variables from the Real Time DB:
where:
New Alias: adds a new line to the table for inserting a new parameter
Browse Variable(Tag)...: allows you to select the variable from the project's Real Time
DB with the Browse window
The browse window, for selecting variables, can be opened directly by
clicking on the "Variable (Tag) field while keeping the ALT key pressed.
The parameter file can always be edited manually with a normal text editor as long as the
characteristics described above are respected which involve the syntaxes inside the file and saving it
in UNICODE format. The files created by the Movicon resource and those created manually should be
structured in the same way.
In the "Variable(Tag)" field you can also insert a sting that doesn't necessarily have to correspond to
the name of a variable from the RealTimeDB. You can specify a single bit of a variable or also a basic
expression instead which practically means you can enter the syntax which is usually supported in
the field where the alias has been inserted:
208
S C R E E N S
Example
In the example described above a Screen has been created with a tank and two animation variables,
VAR1 and VAR2 (dummy variables). At this point the parameter file has to be created for each Tank
to be displayed where the associations between dummy variables and the real variables are to be
done. The four files shown below have been created with a text editor, but their contents are
structured in the same way as those created by Movicon.
Tank1.txt
VAR1,TK01_LL
VAR2,TK01_HL
Tank2.txt
VAR1,TK02_LL
VAR2,TK02_HL
Tank3.txt
VAR1,TK03_LL
VAR2,TK03_HL
Tank4.txt
VAR1,TK04_LL
VAR2,TK04_HL
As you can see the dummy variables are always the same in the four files, while the real variables
change according to the Tank. At this point the only thing remaining to do is to associate the
parameter file, one at a time, to the required Screen opening command to display the data of one
tank or of another.
The opening of a Screen with parameters can also be executed with the
appropriate Basic Script functions as well as by using the Movicon
'Command List'.
the local variables in the script codes can only be managed by using the variable's name
directly. The GetVariableValue() and SetVariableValue() functions do not support local
variables
209
M O V I C O N _ P R O G R A M M E R _ G U I D E
2.
when a local variable has the same name of a variable contained in the Real Time DB, priority
will be given to the local variable. To access Real Time DB global variables you must use the
following syntax:
..\<variable name>
Caution: this type of syntax is supported in the animation and command properties and IL
Logic only. Therefore it is not possible to use the syntax in the Basic Script code.
The "..\" suffix is needed for going back one hierarchy in a variable
pointer. The hierarchy is as follows:
Local Screen Variables -> project Variables -> Parent project Variables
for instance, to access a variable from a parent project with the same
Local Screen Variable name you must use this syntax:
..\..\<variable name>
The Local Variables cannot be retentive and cannot be used for
communication. Furthermore they do not have all the properties that the
global variables have.
Local variables are very handy to use with the symbol libraries. These variables are in fact exported
to the template library on a par with global variables. When a template is then inserted on screen, its
variables will be created as local variables by keeping the SHIFT key pressed down. If the SHIFT key
is not pressed down the variables will be created as global variables in the Real Time DB.
Local Variables can be added by selecting the screen from the Project Explorer window and then
activating the "Add New Local Variable..." command.
210
S C R E E N S
value = current value of the variable to be changed. When Movicon loads the screen, the
local variable is set to the same value as the variable to be set through the "numeric pad"
and "alphanumeric pad" command. The "value" variable should be declared as string type if
an Alphanumeric screen is used, or numeric type (i.e. Double) if a Numeric screen is used.
value_ = new value to be assigned to the variable through the "numeric pad" and
"alphanumeric pad" command. When Movicon loads the screen, the"value_"variable is set to
zero.
The "value_" variable should be declared as string type if an Alphanumeric screen is used, or
numeric type (i.e. Double) if a Numeric screen is used.
minValue_ = the minimum value which the variable may obtain. When Movicon opens the
Screen the local minValue_ variable minValue_ is set with the same value in the Pad's open
command "Min. Value" field. No error message will be generated when this limit is
exceeded but when the Screen is closed the value will not be transferred to the variable.
The minValue_ variable must be declared numeric type (eg. Double)
maxValue_ = the maximum value that the variable may obtain. When Movicon opens the
Screen the local mxValue_ variable is set with the same value in the Pad's open command's
"Max. Value" field. No error message will be generated when this limit is exceeded but when
the screen closed the value will not be transferred to the variable. The maxValue_ variable
must be declared numeric type (eg. Double)
maxChars_ = maximum number of characters that the variable may obtain. When Movicon
opens the Screen the local maxChars_ variable is set with the same value in the Pad's open
command's "Max. Chars" field. No error messages are generated when this limit is
exceeded but when the screen closes the value will not be transferred to the variable. The
maxChars_ variable must be declared numeric type (eg. Word)
title_ = Pad title. When Movicon opens the Screen the local title_ variable is set with the
name of the variable to be modified. The title_ variable must be declared string type
isPassword_ = this variable is set at 1 when the Alphanumeric screen is called from a
password entry window. This allows the display to be set with the "Password" property and
therefore display text entries are protected. The isPassword_ variable must be declared
numeric or Bit type.
OK_ = this variable is needed in the screen's closing phase. If its value is different from
zero, the local value_ variable's value will be returned to the variable to be modified when
the screen is closed. If, however, its value is zero, the value of the variable to be modified
will remain unvaried when the screen is closed. The OK_ variable must be declared numeric
or Bit type
Local variables as described above should be created by the designer when
needed, respecting the proper syntax. If Templates from the Symbols
library are used, when the Template is added to a screen, the local
variables will be automatically created.
An error message will arise when editing a value out of range (such as numbers for
the numeric pad or figures for the alphanumeric pad). To customize the message's
text use the appropriate string ID described in the section "Change System
Language".
211
M O V I C O N _ P R O G R A M M E R _ G U I D E
212
S C R E E N S
state_
TimeOff_
TimeOn_
UseForAll_
title_
The meanings of these variables are as follows:
title_ = indicates the name of the variable changing value, in cases with pads for comments
in the variable trace or text of an alarm to be acknowledged for the comment pad in the
alarm.
CurrentValue_ = the variable's current value formatted using the variable's default format
is set with one.
Comment_ = String value containing the edited comment
ChangingValue_ = New value obtained by variable, formatted using the variable's default
format is set with one.
ChangingObject_ = String variable containing the name of the object changing variable
OK_ = This variable is needed when closing the screen. If its value is not set at zero, when
the screen is closed the local Comment variable value will be recorded on Database. When
set with the zero value, the comment value will not be recorded when the screen closes.
The OK_ variable is Bit type.
Help_ = Contains any alarm help strings
state_ = Indicates the alarm state
TimeOn_ = Alarm activation date and time formatted using the international settings.
TimeOff_ = Alarm deactivation date and time formatted using the international settings.
UseForAll_ = Option for using comments for All alarm ACKs
The above described variables must be created by the programmer when
needed respecting the syntax exactly. In cases where Templates are used
from the Movicon Symbol library, the local variables will be created
automatically when inserting the Template on screen.
213
M O V I C O N _ P R O G R A M M E R _ G U I D E
214
S C R E E N S
change image only when clicked on the right zone) and the click on the "" Synapses of another
Embedded Screen to connect them up. This procedure can then be repeated for all other
connections desired. To restore the pointer back to its original image you will need to select the
"Pointer" command from the Toolbox.
The navigation layout can be also be displayed in Runtime like any other screen page. In order to do
this you will need to insert a "Screen Command" set as a "Open Normal (screen change)" action,
and using "* Screen Navigation *" as the screen's name. This will allow you to get a graphical layout
of the screen navigation map to use in runtime for changing pages: a click on an embedded screen
on the map will open the screen it represents directly.
The screen navigation configuration set in the child project is used and not
the one set in the Parent project when opening child project screens.
Therefore different screen navigations are consented according the child
project context being navigated.
You can further customize the navigation button bar with other buttons by using the "Screen
Navigation Style Properties" which allows buttons to be added for going back to a previous screen or
to open the Startup Screen directly, etc.
The "Screen Navigation Toolbar" is also displayed in design mode in
screens inserted in the navigation editor allowing you to see which space is
available for inserting screens in beforehand. An uneditable grid area is
shown within the screens indicated as "Screen Navigation Toolbar".
215
M O V I C O N _ P R O G R A M M E R _ G U I D E
The "Align Buttons" is described in the Drawing and Control "Style Objects Proprieties"
section.
Screen Animations
Movicon manages animations in screens by using the timer notifications. For instance, blinking
alarms or blinking object background colors, are linked to this management executed with timers in
Movicon. There are two internal Movicon timers: the first timer controls the "fast" animations
(blinking alarms, fast blinking backgrounds, etc); the second one controls there other animations
(average or slow blinking backgrounds, etc). You can modify this timer management through the
screen's "General" properties.
Movicon let's you define a ID number for the Screen window. The ID code can be read in word
format in the appropriated 'System Variables' when the Screen is active and an ID number can be
declared for each Screen window by specifying it in this edit box. This property mainly enables you
find out through the Movion logic and scripts which Screen window is active at a certain moment by
reading the value reported by the "System variable" "_SysVar_:ActiveScreen", and it also consents
you to load screens using the "_SysVar_:ScreenToLoad" and "_SysVar_:StrobeLoadScreen" system
variables. For further inmformation please read the paragraph relating to "System Variables".
Width
The Screen's width in pixels, which it is to be displayed with, is entered in this edit box.
Height
The Screen's height in pixels, which it is to be displayed with, is entered in this edit box.
Save Screen Image
This command saves the screen shot of the displayed screen in the "<Screen>_c.jpg" file within the
folder where the screen resource resides (usually in ..\ProjectName\RESOURCES\ProjectName\).
This image is exploited by the Tooltip which appears in design mode when the mouse lingers over
216
S C R E E N S
the screen resource. The Tooltip shows if the "GenTeral\ShowTooltipPreview" registry key has been
set to True (value '1').
Delete Screen Image
This command deletes the "<Screen>_c.jpg" file created with the "Save Screen Image" command.
NB: If the "General\ShowTooltipPreview" registry key has been set to True (value '1'), the Tooltip
gets created automatically each time the screen is opened and closed in edit mode while in the
design environment.
Expression Waiting Time
This time, expressed in milliseconds, allows screen graphical animations to be synchronized with the
any eventual handling of basic script expressions in the objects' properties instead of each single
variable. Normally graphical animation is the basic script expression management are not
synchronized with each other and therefore in cases where a certain variable had been used in a
number of basic script expressions of different screen objects, not all the objects involved would
update at the same time when this variable changed but one at a time. This is a default function
which is obtained by setting the "Expression Waiting time" property to the "0" value. When setting
this time higher than zero, for example 1 second (1000 value), when a variable value changes, the
graphics will not update until all the basic script expressions using this variable have been processed.
After the waiting time set in this property has expired, the graphics will however update even if
there are still basic script expressions pending.
Due to limited performance in Windows CE, this property works best with
not more than 10-15 expressions.
This property has practically no effect in Web Client based on the fact that
web pages are nevertheless updated gradually anyway.
Max. WebClient Width
This property sets the maximum screen width size when displaying in the WebClient. No sizing limit
will be enforced when leaving this value set at zero.
Max. WebClient Height
This property sets the maximum screen height size when displaying in the WebClient. No sizing limit
will be enforced when leaving this value set at zero.
Max. WebClient Packed Width
This property sets the maximum width size of the frames sent to the WebClient. No sizing limit will
be enforced when leaving this value set at zero.
Max. WebClient Packed Height
This property sets the maximum height size of the frames sent to the WebClient. No sizing limit will
be enforced when leaving this value set at zero.
Screen Alias Editor
The 'Screen Alias Editor' command opens the alias table relating to the screen. The Aliases defined
in the screen will then be used by screen objects in which the same Aliases have been inserted not
defined at object level.
For further information please refer to the paragraph entitled "Aliases in Objects".
WebClient Quality
This property allows you to set the quality percentage (1-100%) with which the screen will be sent
when first uploaded to Web Client. Leaving this property set at 100%, the screen will be sent with a
maximum resolution, based on the Server's settings, otherwise the screen's images will be of poorer
quality but faster to send. Once the first image has been sent at a lower resolution, the Server will
send the image with full resolution, but the animations and commands will already be active with
the first image. This setting may be very handy when a low band rate is being used for Server and
Client connections, for instance, using a modem where transmitting pages can be rather slow. In
this condition, a page can be loaded quicker at a lower resolution while being able to see what's on
screen which is then updated to the normal resolution immediately after loaded. This normal page
resolution update will be executed when sending three image portions in sequence, where the
update can be seen taking effect gradually and not all at once.
Fast Timer Tick Animation
This edit box is used for entering the time frequency in milliseconds to double-check the screen's
"fast" animations. This value does not changes the fast timer tick (default 500 milliseconds), it just
217
M O V I C O N _ P R O G R A M M E R _ G U I D E
changes the frequency with which these animations are double-checked. Therefore, this value
obtains a high precision in the timer ticks, regardless of the amount of resources being used.
Fast Timer Tick Loop
This edit box is used for entering the value which expressed the maximum number of animations
managed for each fast timer click, Each tick is executed with the frequency set in the "Fast Timer
Tick". By increasing this value you will get a graphic refresh of a large number of objects (for which
the timer is managed), regardless of the amount of resources being used. It may be necessary to
increase this value when the screen contains many objects animated with fast blinks which blink with
synchronization.
Slow Timer Tick Animation
This edit box is used for entering the frequency in milliseconds with which the screen's "average"
and "slow" timer tick is to be double-checked. This value does not change the average or slow timer
tick (default 1000 e 2000 milliseconds) but changes the frequency with which these animations are
controlled. Therefore, by reducing this value you will get higher precision in the timer, regardless on
the amount of resources being used.
Slow Timer Tick Loop
This edit box is used for entering the value which expresses the maximum number of animations
managed for each slow timer tick. Each tick is executed with the frequency set in the "Slow Timer
Tick" property. By increasing this value you will get a graphic refresh of a large amount of numbers
(for which the timer is managed) regardless of the amount of resources being used. It may be
necessary to increase this value when the screen contains many objects animated with average and
slow blinks which blink with synchronization.
218
S C R E E N S
controls contained in the Screen will also be resized and therefore readapting the whole page
according to the screen's resolution.
Screen Colors Type
This property allows you to select a set of colours to be used for the screen. The colours set will be
used by the Server project to display the page locally and to update the page on a Web Client, if
any.
Possible options are:
Enable Scrollbars
When activating this option box, the system will allow the lateral scrollbars to be displayed when the
drawing's size is bigger than the window's size. Otherwise the scrollbars will not be available in the
window even when the drawing is bigger than the window.
The Scroll bars are not supported in Windows CE. Screen scroll bars are
therefore not displayed in project run in Windows CE.
Show On MDI Tab
By activating this option box the Screen's MDI Tabs will be displayed during Runtime as well.
Show Synapses
By activating this option box the Screen's Synapses connectors will be displayed during Runtime as
well.
Use Antialiasing
Screen " Antialiasing" properties reduce the 'step' effect of curved vector graphics in basic shapes
and pens displayed in Trends, as well as imported vector designs. When activating this option you
will noticeably see that curves or oblique lines in graphic designs will look more natural and
continuous than before. Antialiasing is also noticeable when the screen zoom is active.
The Antialiasing property is effective in Basic Shapes (except in the Text object), Trend or Data
Analysis pens,Symbols or Templates created with basic shapes and in imported metafiles (wmf).
Antialiasing has no effect on the other graphical objects (such as Buttons, Switches, Meters,
Advanced shapes).
This property is only managed when drawings have been set with solid backgrounds. It will be
ignored when objects have been set with gradients and/or fillings other than solid.
NB: the Antialiasing gives straight lines a slight fuzzy effect. In addition to
this, it is quite normal to find drawing sizes bigger by one pixel when the
'Use Antialiasing' option is enabled.
You cannot exploit libraries implemented with the Antialiasing option when using
systems with Windows CE OS where this option has no effect. In fact the "Use
219
M O V I C O N _ P R O G R A M M E R _ G U I D E
Antialiasing" property will not appear among the Screen Style properties when the
project platform has been set for "WinCE".
Static Object in Background
Enabling this option will activate "Static Object in Background" management for the screen provding
that this same option has also been enabled in the project's execution properties. For further
information about this feature please refer to the paragraph on "Handling Static Objects in Screens".
220
S C R E E N S
Image Width
By using this edit box you can define the width in pixels with which the background associated to the
Screen is to be displayed. When using the '-1' value the image will be displayed with its default size,
otherwise the image will be resized according to the sizes set but with the possibility of losing its
graphical quality.
Image Height
By using this edit box you can define the height in pixels with which the background associated to
the Screen is to be displayed. When using the '-1' value the image will be displayed with its default
size, otherwise the image will be resized according to the sizes set but with the possibility of losing
its graphical quality.
Tile Image
If the associated file as background colour is the right size this selection permits the image to be
repeatedly displayed along side each other in the Screen until the whole area in the window is
covered.
Spawn Thread Execution
Each Screen processes the logics and tasks associated in the User Interface thread. When this option
is active, the Screen will execute in a separate thread, independently from other project threads.
This is handy to use when there are Screens containing significant logic or synapses processes. In
this case the logic processing will be executed in a separate thread without penalizing the graphic
interface, which nevertheless requires a greater commitment of the memory resources.
The 'Chart' object cannot be used in screens opened in a separate thread
(Screen 'Spawn Thread Execution' property). In cases contrary to this, the
'Chart9 object will not appear on screen and the following error message
will appear in the output window:
Failed to create chart. Make sure the object isn't inside a synoptic
with the separate thread option
221
M O V I C O N _ P R O G R A M M E R _ G U I D E
Layer Variable
If required by using this edit box you can select a variable from the Movicon Real Time DB which
determines the number of display layers for the Screen's controls and symbols. If you want to
manage the layers, each Movicon drawing or symbol must be declared with the required level by
using the 'Layer' property from the control's or symbol's 'Properties Window'.
A Screen can have up to 32 layers. Therefore it is essential that the variable defining the number of
layers must be in DoubleWord (32 bit), keeping in mind that each single bit corresponds to the
displaying of the layer relating to that number, starting from zero bit which corresponds to the first
layer.
Activating one layer will not exclude another, which means that there can
be many levels active at the same time based on the bit set in the logic
state '1' in the associated variable. In addition to this, the 16 available
levels do not have any priority hierarchy over each other.
Public Source Container
The base Screen's name for the Public Symbols is entered in this dialog box. The Movicon controls
and symbols can infact be associated a 'Public Name'. When some symbols with the same 'Public
Name' have been inserted into the project, and one of these is present in the 'Public Symbols
Container', all the public symbols will be modified with the base symbol's properties, being the one
contained in the Screen specified in the 'Public Symbols Container' property, at the Runtime startup.
These modifications only take place in Runtime, therefore the symbols will resume their original
properties when returning back into planning mode.
Style Source Container
By using this property you can select a screen to use as a style source container. For further
information on how this property works please refer to "Style Sources in Symbols".
InUse Objects Manager
When enabling this property activates a management that puts 'Inuse' variables out of use (Not in
use) when the object they are being used in becomes INVISIBLE on screen for more than 5 seconds
(not editable) and as a consequence these variables will no longer be exchanged with the field and
not counted by the license. As soon as the object becomes visible again, its variables will return
back in use.
The object's variables will change to NOT in use when the object comes invisible due to one of the
following reasons:
222
S C R E E N S
When the 'Inuse Objects Manage' is enabled, when no longer visible, some objects will obtain certain
behaviours in they way they work when their variables are Not in use. The objects involved and
their behaviours are as follows:
Button Objects: when a button becomes invisible, the timer that controls the "Impulsive"
or "Commands While Down" commands is terminated. This means that the command in
execution will be aborted.
Trend Object: when a Trend becomes invisible, the value recording facility in the Trend
buffer is stopped as well as the recording of data in any preset ".csv" files. This means that,
if the Trend is not connected to a DataLogger, no data will be recorded while the
objectremains invisible. When the Trend returns back to being visible, it will show data
recorded beforehand and commence adding new data as it is recorded. If the Trend has been
set to record on ".csv" file, the "Execution - Record on File" file, with the "Execution - Create
New File" property enabled, each time the Trend is made invisible the ".csv" file will close and
another one will be created when Trend returns back visible. This means that each time the
Trend returns to visible mode, its data buffer will result empty due to the fact that a new
".csv" file has just been created.
Global Container
Enabling this property permits the Screen's child objects be published in DOM format (Document
Object Model, XML).
Style Source Back Color
By enabling this property, the screen will inherit the back color of the active style source container.
For further information on how this property works see "Style Sources in Symbols".
Execute Synapse
When enabled this property activates the execution of any synapses logic upon Screen loading.
Synapses Cyclic Execution
When enabled this property activates the cyclic execution of any synapses logic when the Screen is
active.
Max. Instances
This property, if set with a value higher than 1, opens more than one instances in Pop-Up mode in
the same screen. Once the set number of instances has been reached an error message in the log
system will be alerted. this message only appears when the maximum number of Pop-Up instances
set in the property is more that one, otherwise no error message will show and the screen already
opened will obtain focus.
Warning! Opening more than one instance in a screen may occur only when
the screen is opened using the "Open Frame (multi-monitor)" command.
Therefore, not more than one instance can be opened in the same window
such as Popup modals.
When the "Exclusive Write Access " property is enabled, only the first
screen instance will have write access denying access to all others. For
further information please refer to the chapter on "Screen Background
Properties"
Opening a screen in more than one instance is NOT supported in Windows
CE.
223
M O V I C O N _ P R O G R A M M E R _ G U I D E
The request for a Variable Script Event association to a Screen will open up a further window
containing a list of the available Real Time DB variables. Once the variable has been selected the
new event will automatically be inserted in the Script Explorer window with the syntax
"OnVariableNameChanged":
224
7. Cross Reference
The Movicon Cross Reference list can be applied to both
the project Variables and Screens and consents you to
find out where a Variable is being used or from where
the screen was opened.
Movicon consents you to generate a Cross Reference List applied both to the project variables and
screens. This functionality may be handy for quickly finding out in which resources or objects the
variables and screens are being used and can be useful for printouts and documentation.
The variable Cross Reference has effect in all the project resources, even for those variables used in
Communication Drivers, therefore in both Stations and Tasks.
225
M O V I C O N _ P R O G R A M M E R _ G U I D E
In addition to this you can also compile Cross References for variables used in Basic Script codes on
condition that they are used directly without using the "GetVariableValue()" and "SetVariableValue()"
functions.
Once the Cross Reference window has been opened showing a variable that has been used in an
object contained in a screen, by double clicking on the link, this screen will open focusing on the
object in question, and the "Dynamic Property Explorer" window will open on the property to which
the variable has been associated.
If the "Screen Opened from..." item expands (click on "+") already with a cross reference generated,
just update it by using the same command used for the variables "Compile Cross Reference"
which can be found either in the "Commands" pane at the bottom of the Project Explorer window, or
in a menu which opens by right clicking on the Real Time DB Resource.
226
8. Graphic Interface
This chapter introduces the different techniques that
can be used for creating graphic interfaces and drawing
in Screens
The Movicon Screen resources are elements through which man-machine graphic interfaces can be
created by using the drawing editor and graphic animation editing tools.
Movicon permits drawings to be created in two different ways: by using its own internal graphic
editor or by inserting drawings ((bmp, jpg, gif, wmf, emf, etc.). Both ways can be used when
working with graphics as they can co-exist together.
The Movicon Objects and Controls which can be inserted on screen are available from the "Objects
Window". These components can carry out different functions, from simple geometric shapes to
advanced controls for executing commands or displaying data.
The Movicon Objects and Controls are created in proprietary vectorial format and symbols can also
be created (composed of a number of different components) and associated with animation
properties. These formats can be exported or imported from Metafile (WMF, EMF) format.
Your own Movicon vectorial drawings can be saved in the "Symbols Library" and reused.
227
M O V I C O N _ P R O G R A M M E R _ G U I D E
228
G R A P H I C
I N T E R F A C E
The objects from the Toolbox include pre-built graphics such as buttons, selectors, sliders, meters,
gauges, etc.
In this case, according to the object inserted, you can set up a specific configuration by using the
properties relating to each object.
Movicon also has Symbols Library containing countless ready-made graphic symbols. The graphic
libraries can be displayed from the "View > Symbols" menu. The graphic libraries reduce time in
creating any type of graphical project for automation. A vast choice of graphic symbols (tanks,
pumps, valves, motors, etc) allow you to high graphical impact drawings with ease.
Another thing to keep in mind is that you can import external drawings or you can expand the
library even more by building your own custom graphic symbols.
229
M O V I C O N _ P R O G R A M M E R _ G U I D E
To make drawing or symbol more dynamic you need to use its 'Animation Properties', where you can
assign variables for the graphical function desired along with other dynamic settings (ie. colors or
color changes, thresholds for fillings or visibility, etc.).
The variables can be selected through the "Tag Browser" window which allows you to select (or to
create directly) variables from the project's Variable List(Tags).
Assigning a variable (Tag) to a graphic object can be faster dragging the variable directly on the
selected object, using the "Drag&Drop"method.
Just select the variable from the Project variables list and drag it to the graphic objects, as shown in
the picture. If the object is a command-type object (i.e. a button, a potentiometer, etc.) the variable
will be directly assigned to it. If the object is a graphic symbol, you will be asked to select one of its
dynamic functions. You can specify more details (colours, thresholds, etc.) later, acting on the object
properties.
Assigning commands
The command type graphic objects (such as buttons, but in the same way for menus, accelerators,
events...) can be associated with one or more commands to be executed by clicking on the object.
In this case the command type window used for assigning commands can be displayed by
SHIFT+double clicking on the object, or by using the 'execution properties'.
230
G R A P H I C
I N T E R F A C E
For any further information on the editing techniques and the object properties, please refer to the
description on each object in this manual.
231
M O V I C O N _ P R O G R A M M E R _ G U I D E
The object with the highest Tab order will also be the one with the
highest overlapping order. placed on top (at the forefront) of the
thelayer highest.
First: the selected object will be placed on the top layer in respect to the others
(foreground). Therefore its tab number will be the highest number
Last: the selected object will be placed at the back on the last layer (background) in respect
to all the others. Its tab number will therefore be the lowest number
Move Next: the selected object will be placed on top of the last layer. Its tab number will
increased by one. The previous object will acquire a lower layer to which it had before
Move Previous: the selected object is placed on the layer underneath the top one. Its tab
number will be decreased by one. The previous object will acquire a higher layer to which is
had before
Click with the mouse on the initial point of the area you wish to select. Hold down the left
button and move the mouse. A dashed extendible outline will appear to define the selected
area. Move the mouse until the required dimension is reached
The Symbols can be selected also by clicking with the mouse on each individual symbol while
holding down the CTRL key. The first symbol selected will be taken as reference
The commands you can use after having done a multi object selection are:
232
Click on an object from the multi-selection and set it as the reference object
Ctrl+Click on an object from the multi-selection to unselect that object
Ctrl+Click on an object not included in the multi-selection to add it to the multi-selection
G R A P H I C
I N T E R F A C E
The reference control in a symbol group is the one that shows the
delimitation border not transparent, but with solid black back color.
233
M O V I C O N _ P R O G R A M M E R _ G U I D E
Alignment Objects
Left
Right
Up
Down
Centre Vert.
Centre Horiz.
The object with the lowest Tab number will be used as the reference
object for aligning the other objects. The reference object's small
selection squares will be highlighted in a different colour in respect
to the other objects. Once the group of objects has been selected
you can change the reference object by clicking the one you desire.
Set Same
Width
Height
Both
This command resizes the select objects with the same width
and height on screen.
The object with the lowest Tab number will be used as the reference
object for aligning the other objects. The reference object's small
selection squares will be highlighted in a different colour in respect to
the other objects. Once the group of objects has been selected you
can change the reference object by clicking the one you desire.
Center in Window
Vertical
Horizontal
234
G R A P H I C
I N T E R F A C E
will be positioned automatically by being subdivided and organized in rows and columns equally with
the possibility to preview the result.
To get this function working you must first select the group of objects you wish to align with the
usual standard techniques. After having done this you can then access the "Distribute space
between Objects..." command from the Edit Menu. A window will display for setting the following
parameters:
Column Number: sets the number of columns in which the group of symbols are to be
subdivided
Column Gap: sets the number of space pixels between the symbols and the set columns
Row Gap: sets the number of space pixels between the symbols for the set rows
You can get a preview of how these settings will look like, by using the Apply button which will
distribute the objects immediately.
235
M O V I C O N _ P R O G R A M M E R _ G U I D E
The command permits to establish if a variable has been used in animation properties for objects
added to the screen currently open in edit mode. The fields in the above windows have the following
meaning:
"Find": type in this filed the name of the variable to seek in Animation properties or in objects' Basic
Script code. The drop down list includes the texts already searched before. Clicking on the ellipse
button "... " on the right of the drop down list, the Tags Browser dialog is open, showing the
project's variables list.
Object name:if this check-box is selected, the text typed in the "Find" field will also be searched in
the "Object Name" screen objects property. This way you can search an object name instead of the
variables used in it (in this case the text in the "Find" filed can be not a variable name).
Dynamic Action: in this options group you should define which object properties will be searched
in. You can select all Dynamic Action properties or just some, you can also extend the search to the
objects' Basic Script code selecting the "Script Code" option.
You can limit the search only to those properties selected with the check boxes by selecting the
'Only' option. When selecting the "All" option, a search will be made for all the animation properties,
regardless of being checked or unchecked, and also for the "Dragging" properties.
"Find" button: this command starts the search. When an object containing the search text is found,
the search is stopped and the object is selected. Clicking the "Find" button again the search will
restart until the next object (if any) is found.
The variables search in the Dynamic Animation properties is executed only
among the enabled Animation properties. As an example, if a variable has
been associated to the "Variable" field of the "Dynamic-Visible" property of
an object , but the "Enable Visibility" property is not set,the "Find"
command will not include in the search the "Dynamic-Visible" property of
that object.
When the search is executed in the Basic Script code, the text typed in
the "Find " field is searched in the whole script. This means that any word
or part of a word containing the text typed in the "Find " field will be
found, being a variable name or not.
Replace Symbol...
This command will open the following dialog window:
236
G R A P H I C
I N T E R F A C E
The command permits to establish if a variable has been used in animation properties for objects
added to the screen currently open in edit mode and to replace it with a different variable. The
dialog window include the fields already described for the "Find" command, moreover some
additional fields are present:
"Replace": type here the name of the variable to be used for replacement. The drop down list
includes the texts already searched before. Clicking on the ellipse button "... " on the right of the
drop down list, the Tags Browser dialog is open, showing the project's variables list.
"Replace" button: this command executes the replacement of the searched variable with the new
variable specified in "Replace" field. You should first execute the "Find" command, and, as soon as
an object containing the searched text is found, the search is stopped and the object is selected. At
this point, pressing the "Replace" button, the found variable is replaced with the new variable, for
the selected object only
"Replace all" button: this command executes the replacement of the variable specified in the
"Find" field with the variable specified in "Replace" field. In this case you should not execute any
search since the replacement is executed in all screen objects.
237
M O V I C O N _ P R O G R A M M E R _ G U I D E
drawing. If you wish to keep the original sizes confirm with OK or otherwise specify the conversion
factor desired.
The command for importing/exporting Windows Meta File (WMF) or Enhanced MetaFile (emf) images
within a screen also supports the possibility to import/export vector images that contain Bitmap
definitions in addition to other primitive functions from the Windows design.
Vectorial image definitions that have areas set to be deleted/cut
from the rest of the drawing will not be imported or exported
correctly. Movicon does not support this type of operation in its
primitive drawing functions.
When the window for importing drawings is opened using the "Edit -> Import drawing" command,
you can set sizes in percentages or physical sizes in pixels of the object to be imported. The
percentage limit is 1-500 which will alert and error when exceeded.
Sizes in percentages update automatically upon modification. The object's original sizes will be
restored when passing from selection to size settings and returning back to selection in percentages.
If you execute the "Unembed" command the image file will be recreated by Movicon in the same
path and with the same name it was embedded with. However, the original file path must still be in
existence otherwise Movicon will create an error message.
Embedded symbol images are not supported in Windows CE platforms.
Re-click with the right mouse key on the lock command to unlock the object.
238
G R A P H I C
I N T E R F A C E
2.
3.
"Palette" tab. It shows the standard colours palette, where the 48 basic colours are
represented. You can define 16 persistent custom colours right clicking on one of the squares
of the last two rows, by default representing 16 white squares. Placing the mouse cursor on a
palette square, a tooltip will appear showing the RGB colour code (being R, G and B decimal
numbers ranging from 0 to 255).
"Name" tab. It shows a colours list specifying each colour name.
"System" tab. It shows the system's colours list.
Windows system colours are tightly linked to the operating system. This
means that the same colours may be displayed differently based on the
operating system used. Furthermore the system colour sets may also differ
according the operating system being used (i.e. in Windows CE the number
of system colours is less than those used in the Windows 32/64 bit
platform). It is for this reason that we advise you against using the
Windows system colours and to use the standard Palette colours instead to
avoid colours changing in projects according to the machine they are being
run on.
When defining a new custom colour, right clicking on one of the squares of the last two rows of the
"Palette" tab, a dialog window is open, showing two tabs. The first tab allows to select a colour
among the standard colours, the second tab permits a complete colour customization, even typing
the RGB colour code directly, as shown in the image below.
239
M O V I C O N _ P R O G R A M M E R _ G U I D E
By using the "Select..." button in the window you can select a colour from the screen. When the
button is pressed, the mouse pointer will change to a 'dropper' which draws up the color it is clicked
on.
When the colour has been selected, it is saved in the object properties, using the colour name (if it is
a standard colour) and the RGB code (3 pairs of hexadecimal numbers rrggbb, where rr=red
component , gg=green component, bb=blue component). For instance, when selecting a standard
yellow, the object property will show a yellow square and the "Yellow (ffff00)" string .
When pressing the "Custom" button in the Palette tab, a dialog window will show allowing you to
customize colours and when closing this window the selected colour will automatically be set in the
object's properties without being added to the 16 customizable colours.
Default Colours
Some project objects and resources have "Color" properties which also come with a 'Default' value
(or "Automatic"). Once the default value has been modified it can be reset by keeping the "Control"
(CTRL) key pressed down while opening the 'Colours' selection window with the mouse.
240
G R A P H I C
I N T E R F A C E
Movicon has a vast library of pre-built vectorial symbols, subdivided into categories, to which the
programmer can use to realize his/her own graphical interface in the screens. These libraries can be
enlarged with new modified and customized symbols.
241
M O V I C O N _ P R O G R A M M E R _ G U I D E
Group
This command is made available when a vector or a group of vectors (drawing objects) is selected.
To select a group of vectors you need to click on a point outside the group and drag the selection
until all the desired vectors are enclosed. As an alternative you can click all the vectors singularly
while keeping the CTRL key pressed down. This command is activated after having selected the
group of vectors to create one object thus a Symbol. This symbol can then be added to the Symbols
library as described below.
Ungroup
This command is made available when a symbol is selected. This command, when executed,
ungroups the symbol back to the original group of vectors which form it. The vectors are restored
with their original sizes.
Regroup
This command allows you to put the previously ungrouped symbol back together, without altering
any links or names assigned beforehand. This function works when the symbol is a Power Template
and uses the Basic Script functionality for linking the symbol's objects. The regrouping restores these
links without altering the functions of the symbol before is was ungrouped. Symbol regrouping is
supported up to the first grouping of symbols, any symbols added after and then ungrouped will not
be regrouped together at the same time with the first grouped symbols, but after by using the
regroup command again.
Add to library
This command allows you to enter the selected symbol into the "Symbols Library". A selection
window will appear when activating this command to choose the desired category.
The commands relating to the "Symbols Library" are described in the appropriate sections.
Keep aspect ratio
This command allows you to restore the symbol to its original size. This command works when the
symbol has been resized differently from its original sizes.
242
Vertical: sets the selected symbol at a vertical size in direct ratio to the horizontal size.
Horizontal: sets the symbol at a horizontal size in direct ratio to the vertical size.
G R A P H I C
I N T E R F A C E
When symbols are inserted on screen or in the project, Movicon will propose the automatic insertion
of the variables associated to them with a default name and address. Therefore, those functions
needed can be maintained and updated where necessary.
This is intended to save you a great deal of time in having to access and configure all the resources
involved which can now be updated and managed completely in automatic.
Each single property set for each symbol or object will become part of the
Template and saved in the symbol or object in the library. The symbols
will maintain each animation feature or each VBA script and can be saved
and used as a Template.
Design the symbol by inserting the various objects used for building vector components, until
you get the graphical effect desired
Select the whole group of vectors by clicking on a point outside of the symbol and drag the
selection to include all the vectors
At this point, activate the 'Symbol - Group' command from the 'Symbols menu' or
activate the same command with the right mouse key
The symbol has now been created and is ready to be inserted into the library by using the
appropriate command.
An existing symbol can be edited after it has been entered on screen, by selecting it and then
activating the 'Symbol - Ungroup' command from the 'Symbols Menu'.
This will return the symbol back to its original form with its vectors ungrouped where each one can
be edited as pleased.
243
M O V I C O N _ P R O G R A M M E R _ G U I D E
A symbol, being a collection of drawing objects, is identified in a tree structure which shows a list of
the parts it is built with.
The tree structure of each symbol can be displayed in the 'Project Explorer' window. The example
above illustrates a symbol structure.
When double-clicking on one of the symbol's components in the 'Project Explorer' window, the
symbol will highlight the corresponding component on screen so that it can be identified straight
away.
The symbols can also be modified without having to decompose the symbol if involving the
properties of already existing components. A composed symbol can be modified through its
components by simply selecting the drawing which must be edited from the 'Project Explorer'
window. By doing this the Movicon 'Properties Window' will be updated with the property of each
component, which then can be edited. It is also to select a symbol's component by keeping the
"CTRL" key pressed down and left mouse key clicking on the component. In this case the component
will turn completely black and the Properties Window will show all its properties.
If the symbol is to be changed graphically, for instance drawings must be added or taken away, the
only solution is to decompose the symbol and then recreate it.
Resizing Symbols
Grouped symbols can be resized according to their original proportions. By clicking on one of the
symbol's one-way directional sizing dots while keeping the "shift" key pressed down, the group will
resize but will retain their original proportions.
244
After having created the symbol, select the set of vectors with which it has been composed
with and active the 'Symbol - Group' from the Symbols Menu or by using the right mouse
key. This operation will combine the set of vectors into one single vectorial. Use the 'Symbol
- Ungroup' to undo this operation.
G R A P H I C
2.
3.
I N T E R F A C E
After having created the symbol, activate the 'Symbol - Add to Library' command from the
Drawing menu or use the right mouse key to add it to the vectorial symbol library. By doing
this a window will appear for selecting the category to which the symbol will be associated.
Select the symbol category desired, then insert the symbol by activating the 'Insert
Template' button. If you wish to create a new Symbol category, activate the 'New Library'
command in the "Symbols Library" window.
The Symbol Library can also host symbols containing Active X
object inside.
This message means that the selected Template is not supported on the WinCE platform. This
control is carried out by Movicon when in the following conditions:
1.
2.
The "Visible on CE Platform" option has been disabled in the Symbol's "Visibility" property
group.
The "Windows CE" platform has been selected in the project's "Platform" properties.
When these two conditions are eminent, it means that the template is not enabled to function on
WinCE and that the project where the template is being edited is destined for the WinCE platform.
Therefore, it would not make sense to insert the Template in that project.
245
M O V I C O N _ P R O G R A M M E R _ G U I D E
name and its data format. When the Movicon Real Time DB variables have been used in the symbol's
or one of the component's basic script codes, the name of these variables must be written between
two '#' chars. This is because Movicon has be able to distinguish which are the Movicon variables
and which are the local variables within the basic.
Eg: GetVariableValue("#namevariable#")
This particular syntax is only done when the symbol has to be exported to the Library. A scrip code
with the syntax, as shown above, cannot be executed and generates an error.
The Real Time DB variables in basic codes are not directly made visible by
Movicon during the exporting of Symbols into the Library phase. They must
be enclosed between two '#' characters before exporting the Symbol.
When a template is inserted on screen, its variables will be created as local screen
variables by keeping the SHIFT key pressed down. If the SHIFT key is not pressed down
the variables will be created as global variables in the Real Time DB.
OnCustomizeSimbol()
OnVariableCreating
OnVariableCreated
OnUnembedImage
You can access this basic code from the "Symbols Library" by opening the "Dynamic Property
Inspector" window of the Symbol in question. By opening the "Dynamic Property Inspector" of
any one of the Templates within the Library, the Dropping Code tab will appear as the first item in
the symbol's list of components. When selecting this item, where the variables and codes of each of
the Symbol's components normally appear, the script code will appear, being the event routines
listed above. Code can be inserted within in these routines in order to customize the Template. This
functionality is very handy for setting the static properties of symbols. This can be done by using
the Prop() function from the DrawCmdTarget Interface to set those static properties concerned
in the symbol. When these properties are set then inserting the Template using the code contained
in the Dropping Code, they will remain permanent in the symbol when saved together with that
symbols characteristics, thus becoming the symbols unaccessible constants that cannot be changed
throught the symbol's properties.
The Dropping Code is useful for customizing Templates being inserted from the Library.
Once the Templates has been inserted onto the screen you can Drop Code by "Shift + DoubleClicking" on the Template or by using the "Open..." button in the Template's Properties Window.
This will allow you to modify the Template's properties later on as well.
246
G R A P H I C
I N T E R F A C E
OnCustomizeSimbol() Event
This event is executed when the Dropping Code is called, therefore while a Template is being
inserted on Screen from the Symbol Library or by "Shift + Double-Clicking" on the Template after it
has been inserted on Screen.
This event has the following declaration:
Sub OnCustomizeSymbol(bRet As Boolean, bShowPropInsp As Boolean, bCreateVariables
As Boolean)
End Sub
This event's parameters are:
Parameters
Description
bRet as boolean
bShowPropInsp
boolean
as
bCreateVariables
Boolean
as
Event OnVariableCreating()
This event is called each time a variable must be added to the project when a symbol is being
inserted. In this way you can executed controls more accurately on variables which must be inserted
with the template. This event has the following declaration:
Sub OnVariableCreating(bRet As Boolean, VariableName As String, bCreateLocal As
Boolean)
End Sub
The parameters of this event are:
Parameter
Description
bRet as boolean
VariableName
String
As
bCreateLocal
Boolean
As
OnVariableCreated() Event
This event is executed each time a variable is created in the project while a symbol is being inserted.
By using this event you can modify the properties (only those in read/write) of variables which are
added to the project while a Template is being inserted.
This event has the following declaration:
Sub OnVariableCreated(VariableName As String, bCreateLocal As Boolean)
End Sub
The parameters of this event are:
247
M O V I C O N _ P R O G R A M M E R _ G U I D E
Parameter
Description
VariableName
String
As
bCreateLocal
Boolean
As
OnUnembedImage() Event
This event is executed each time an image is detected while inserting symbols. You can use this
event to decide whether to keep image embedded in symbol or unembed it and create the relative
file.
This event has the following declaration:
Sub OnUnembedImage(bRet As Boolean, ImageName As String, bOverwrite As Boolean)
End Sub
This event's parameters are:
248
Parameter
Description
bRet as Boolean
ImageName
String
as
bOverwrite
Boolean
as
9. Multitouch
The Multi-touch feature is supported by Movicon starting from the Movicon 11.4 version.
The multi-touch is formatted in two parts, the hardward (a touch screen which recognizes
multitouching simultaneously) and the operating system which recognizes points being touched and
interprets them. When the software senses more than one touch gesture at the same time on the
screen, it provides user interaction with project functions with intuitive gestures based on those
frequently used in modern mobile devices such as table and smartphone to improve HMI system use
experience. In addition, Movicon supports the Multi-touch feature for multipoint tapping whereby
two command objects can be tapped contemporarily which is handy for systems that need to ensure
safety where both the user's hands must be present on the screen at startup or when activating
particular commands.
A striking aspect about this technology is that the screen area can be
expanded or reduced in size by using two fingers to pinch to zoom in and
out. This technique is much easier to use than those that use one point
zooming in/out with a mouse device or pen symbol.
The Multi Touch Gestures supported in Movicon 11.4 are described below:
249
M O V I C O N _ P R O G R A M M E R _ G U I D E
Pinch Open
This movement performs the 'zoom in' technique to
enlarge the screen according to the gesture speed
rate property in the project's 'Gestures' properties.
Note: This function is not compatible with the
screen's 'Fit in window' function and will not work if
this option has been enabled.
A double press of your finger on
the screen (double-tap) The
synoptic return to its original size
Pinch Close
This gesture performs the zoom out function
reducing the screen according to the to the gesture
speed rate property in the project's 'Gestures'
properties.
This gesture is not compatible
with the screen's 'Fit in Window'
property option therefore this
option must be disabled in order
for this gesture to have effect on
screen.
A double press of your finger on
the screen (double-tap) The
synoptic return to its original size
Pan
This gesture is used for moving and dragging the
area of previously enlarged screen within the size of
the window (normally after having executed the
zoom function).
250
M U L T I T O U C H
Scroll
This gesture is used for scrolling the displayed area
vertically to view those parts that cannot be seen
within the window. This gesture is particularly
handy to use in item lists or data tables for scrolling
data fast or slowly analogous to conventional side
scroll bars.
Flick
This gesture is used for scrolling the displayed area
horizontally to view those parts that cannot be seen
within the window. This gesture is particularly
handy to use in item lists or data tables for scrolling
data fast or slowly analogous to conventional side
scroll bars.
251
M O V I C O N _ P R O G R A M M E R _ G U I D E
The Multitouch feature requires hardware with the touch screen facility with
multitouch and Window Windows 7 or Windows 8 OS support.
This feature is not currently available for Windows CE (at work).
However Movicon allows the "Gestures" support feature to be enabled for
conventional touch screen system (one touch at a time only) as described below.
In this case, the gesture support will be limited to changing pages only.
The Flick gesture used in multitouch systems (from right to left and viceversa) allows you to change
pages of screens, whose IDs have been defined with a logical sequence (General Properties > ID), in
the most natural way.
In touch screen systems movements are done by tapping and pressing the monitor with a finger or a
touch screen pen and dragging in one direction or the other. In non touch screen systems, these
movements are done by clicking left mouse button and keeping it pressed to drag in the same way.
Gestuality can be applied to Screens for changing pages or to display windows for scrolling lists.
Gestuality in Screens
Two types of operations can be performed by using gestures in screens: change pages and scroll
pages when scroll bar is active. The fact that one operation is performed rather than another,
considering both movements are the same, depends on the speed with which the movement is
carried out. The movement used for changing pages is quite fast and precise, whereas the scrolling
movement is slower. Below are a list of commands which have been provided according to
movement type used:
right to left movement: a "fast" movement will change page to the next one. The page
that will load will be the one which has an ID following on from active window's ID. Therefore
this command works only if screens have each been given an unique ID in succession that is
not zero. A "slow" movement will scroll page towards the right but this will only work with
the screen's horizontal scroll bar displayed.
left to right movement: a "fast"movement will change page to the previous one. The
page that will load will be the one which has an ID previous to the active window's ID.
Therefore this command works only if screens have each been given an unique ID in
succession that is not zero. A "slow" movement will scroll page towards the left but this will
only work with the screen's horizontal scroll bar displayed.
252
M U L T I T O U C H
right to left movement: this movement scrolls lists towards the right. This only works if the
horizontal scroll bar is displayed in the window to allow scrolling.
left to right movement: this movement scrolls lists towards the left. This only works if the
horizontal scroll bar is displayed in the window to allow scrolling.
top to bottom movement: this movement scrolls lists towards the top. This only works if
the vertical scroll bar is displayed in the window to allow scrolling.
bottom to top movement: this movement scrolls lists towards the bottom top. This only
works if the vertical scroll bar is displayed in the window to allow scrolling.
253
M O V I C O N _ P R O G R A M M E R _ G U I D E
254
When confirming with "Yes" the "List Variables (Tags) resource will open in the Project Explorer
window with the interested variables highlighted (selected). At this point the programmer can
decide which to delete or keep the variables as they are.
255
M O V I C O N _ P R O G R A M M E R _ G U I D E
256
D R A W S
A N D
O B J E C T S
To change its shape or sizes, select the small squares which represent the polygon's vertexes and
drag them with the mouse until you get the new shape desired.
Polyline
This object represents a geometric shape made up with a series of contiguous straight vectorial lines.
After activating the command, click on the point desired and mouse it with the mouse. Every time
you click a vertex will be added to the object where the cursor is positioned. Movicon will create a
geometric vectorial shape made from contiguous lines of the vertexes which were set. The start and
end points will not be connected together.
When the ESC key is pressed to terminate the drawing procedures, the last vertex proposed by
Movicon will be kept even though not executed with a click.
When the ENTER key is pressed to terminate the drawing procedures, only the vertexes confirmed
with the mouse click will be kept and not the last one proposed by Movicon.
After this has been done you can configure its style through its "Properties Window". You can change
its on-screen position by selecting and dragging it to where you please with the mouse.
To change its shape or sizes, select the small squares which represent the Polyline's vertexes and
drag them with the mouse until you get the new shape desired.
Pipe
This object is an extension of the "Polyline" object. This object performs a graphics rendering by
toning down the background colour with the "Text and Edge" colour. In addition to this, its "Border
Width" is set at 25 for default to give it a pipe appearance.
The 'Pipe' object does not support "Gradual filling" animation. However the
background colour can be modified, for example, to show liquid passing through
within it.
Polybezier
This object represents a geometric shape made up with a series of contiguous curved vectorial lines.
The curve is formed by two intersections between the start and start point. After activating the
command, click on the point desired and mouse it with the mouse. Every time you click a vertex will
be added to the object where the cursor is positioned. Movicon will create a geometric vectorial
shape made from contiguous lines of the vertexes which were set. The start and end points will not
be connected together.
When the ESC key is pressed to terminate the drawing procedures, the last vertex proposed by
Movicon will be kept even though not executed with a click.
When the ENTER key is pressed to terminate the drawing procedures, only the vertexes confirmed
with the mouse click will be kept and not the last one proposed by Movicon.
The Polybezier must be composed of four points, one start point, two
intersection points and an end point.
After this has been done you can configure its style through its "Properties Window". You can change
its on-screen position by selecting and dragging it to where you please with the mouse.
To change the curved corner, select the small squares outside the curve and drag it with the mouse
until you get the shape desired.
To change the start or end point, select and drag the small squares place at both ends of the curve.
Closed Polybezier
This object is a "Polybezier" object added with a "Close Figure" option in its style property group set
to true for default. This option closes the "Polybezier" object with a straight line uniting the first
point with the last point. This will allow you to set backgrounds in the Polybezier object which
otherwise would have been possible before.
This option also allows you to set closed "Polybezier" vector objects contained in metafiles (.emf)
enhanced format files.
Arc
This object represents a semicircular or semi-elliptic vectorial line. After activating the command,
click on the point desired and drag it with the mouse until you reach the end point desired. You can
then configure its style through the "Property windows.
To change the curve, select the small filled in squares on the border and drag them with the mouse
until you get the size and arc desired.
To change the arc's start or end point, select and drag the corresponding small empty squares along
the border.
257
M O V I C O N _ P R O G R A M M E R _ G U I D E
Chord
This object represents a portion of a vectorial semicircle or elliptic. After command activation, click
on the point desired, then drag the mouse until you reach the end point desired. Movicon will unite
both ends of the circle portion with a straight line after which its style can be configured through its
"Properties Window". You can change its position by selecting and dragging it to a another position.
To change its curve angle, select the filled in small squares on the border and drag them with the
mouse until you get the size and angle desired.
To change cords's start and end point, select and drag the small empty squares placed inside the
object.
Pie
This object represents a portion of a vectorial semicircle or elliptic. After command activation, click
on the point desired, then drag the mouse until you reach the end point desired. Movicon will unite
both ends of the circle with the centre of the ellipse you have drawn. After this you can configure its
style through the "Properties Window". You can change its position by selecting and dragging it to a
another position.
To change its curve angle, select the filled in small squares on the border and drag them with the
mouse until you get the size and angle desired.
To change cords's start and end point, select and drag the small empty squares placed inside the
object.
Text
This object represents a text object. After command activation, click on the point desired and drag it
until you reach the end point desired. Movicon will display a default text inside which you can
replace, along with the font, after you have activated its "Properties Window".
The Text object's properties allow you to set it with a fixed size or to make it adaptable to the
object's sizes.
You can change its position by selection and dragging it with the mouse to another position.
You change it object's sizes, by selecting and dragging the small squares on its borders with the
mouse until you reach the size desired.
Square
This object represents a vectorial square shape. This shape is originally a "Rectangle" with its
"Preserve Aspect Ratio" enabled so that when it is resized it will always keep its sides in
proportion to form a square and not a rectangle.
Circle
This object represents a vectorial circle shape. This shape is originally an "Ellipse" object with its
"Preserve Aspect Ratio" properties enabled so that when its is resized it will always keep
its circle shape and not the shape of an ellipse.
258
Object
Trend/Data
Analysis
D R A W S
A N D
O B J E C T S
Charts
Display/Spin
ListBox
Gauge/Meters
Buttons
Hot Region
Trend/Data
Analysis
Object
Trend/Data
Analysis
Charts
Data
Logger/Recipes
Windows
Objects
Data Analysis
Object
Scheduler
Window
You can also create new objects on screen associating them directly to the variable dragged on
screen. In order to do this you need to:
259
M O V I C O N _ P R O G R A M M E R _ G U I D E
1.
2.
3.
4.
select the object you wish to create from the toolbox (eg. Display)
select the desired variable from the Project Explorer's Variable List
Drag and drop the variable to an empty area in the screen
release the mouse key and Movicon will create the object and assign the variable
During the Drag & Drop operations the mouse icon will change
image. If the resource is dragged onto an object that cannot be
assigned with that resource, the mouse icon will change to the 'no
entry' symbol. For example, this will happen when trying to drag a
Data Logger onto a "Button" object.
if a variable is dragged onto an object and the object itself has no specific property for variable
assignment, a dialog window is open in order to select the object's animation property to assign the
variable to:
If a variable is dragged onto a composed symbol, keeping the "SHIFT" key pressed will cause the
variable to be assigned to the container object (that is, to the symbol itself), otherwise the variable is
assigned to the symbol component where the mouse cursor is placed.
Drag & Drop into Templates
Object
Alarms
(Templates)
Data Loggers
(Templates)
Events
(Templates)
260
Press the Shift key and double left mouse click on the object (Shift+DblClick)
Press the "General" group's "Open" button in the object's "Properties Window"
D R A W S
A N D
O B J E C T S
Click on the small circle which appears on top right of the object when selected
This table shows the setting window which will open according to the control selected:
Object
Buttons
Region
Hot
Chart
Trend/Data
Analysis
Grid
Alarm Window
Historical
Window
Log
DataLogger/Recipe
Window
DB Trace Window
Embedded Screen
261
M O V I C O N _ P R O G R A M M E R _ G U I D E
application associated to the file extension. This can be done by simply clicking on the browse button
while keeping the "CTRL" key pressed down. For instance, Screen Background Image properties
permit you to select a background image. If you choose a "bmp"image, and this extension is
associated to a "MS Paint application when pressing the CRTL key while clicking the (...) button will
open the "MS Paint" application with the "bmp" image in edit mode in a new window. This
mechanism will only work if a file has already been selected in the object's property and the file's
extension has been associated to an application. The application window can be opened in minimize
mode. The properties which have been equipped with this kind of function are:
ALT+F5
The ALT+F5 quick command activates the window for the "Distribute Object Space..." command.
Grouping Symbols
There are three shortcuts available for grouping, ungrouping and regrouping composed symbols.
These commands are:
Ctrl+Shift++: Shortcut for symbol grouping
Ctrl+Shift+-: Shortcut for ungroup a symbol
Ctrl+Shift+*: Shortcut for regrouping a symbol
262
Editable Displays
Meter Scales
D R A W S
A N D
O B J E C T S
You also can add the desired measures to the predefined Movicon formats. This is done by simply
adding a space and then the text desired after the format (i.e. "x.xx mm", "x,xxx.x Kg", etc.).
Example 1
If you want to display a value formatted with three figures, select the "xxx" Format. The result will
be according to how the variable's value is:
Variable Value
1
10
100
Value Displayed
001
010
100
Example 2
If you want to display a value formatted with two decimal figures, select the "x.xx" Format. The
result will be according to how the variable's value is:
Variable Integer Value in
Meters, Trend, Data Analysis displays
Value Displayed
0.01
10
0.10
100
1.00
Value Displayed
1.00
10
10.00
Value Displayed
1.2345
1.23
When using formats with decimal figures applied to integer Variables, only
their display and not their contents can be edited. In practise divisions of 10,
100, etc., is only for graphical displaying purposes and does not influence
the real value of the variable in any way.
Example 3
If you wish to display a value formatted with a decimal figure and groups of hundreds, select the
"x,xx.x" format. The resulted will depend on the value and the variable type:
Integer Variable Value in displays Meters, Trend, Data
Analysis displays
10
1000
10000
Displayed Value
Displayed Value
Displayed Value
12,34.6
0.1
1,00.0
10,00.0
1.0
1,00,00.0
263
M O V I C O N _ P R O G R A M M E R _ G U I D E
Controls the presence of the sign, spaces, decimal characters, hexadecimal or octal or prefixes:
+: the sign is put in front of the value (+ o -). Only the - sign is returned for default.
0: When the field width is preceded by "0", the "0" characters are used for reaching the number of
characters requested
#: when used with the "0", "x" or "X" formats, the "0", "0x" or "0X" prefixes are put in front
respectively; when used with the "e", "E" or "f" formats it forces the presence of the decimal
character no matter what; when used with the "g" or "G" formats it forces the presence of the
decimal character without cutting off the initial zero
width
An integer signed value indicates the minimum number of characters to be printed. When the
characters to be printed are lower than the number specified, spaces are added until the value
provided is reached. When the width value is preceded by "0", the "0" characters are used instead
of the spaces.
precision
An integer signed value preceded by the point (.) indicates the number of characters after the
decimal character for those formats with decimals or the number of figures to be printed for integer
formats.
type
indicates how to interpret the associated variable. The following formats are available:
In front of the character indicating which type, if this data type allows it, you can put the "h", "l" or
"L" prefixes indicating:
264
D R A W S
A N D
O B J E C T S
Meaning
%a
%A
%b
%B
%c
%d
%H
%I
%j
%m
%M
%p
%S
%U
%w
%W
%x
Local date
%X
Local time
%y
%Y
%z,%Z
%%
Percentage sign
(00-
265
M O V I C O N _ P R O G R A M M E R _ G U I D E
The '#' character can be used for further modifying some formats to get the following results:
Code
%#a,
%#b,
%#p,
%#z,
%#%
Meaning
%#A,
%#B,
%#X,
%#Z,
%#c
%#x
%#d,
%#H,
%#I,
%#j,
%#m,
%#M,
%#S,
%#U,
%#w,
%#W,
%#y, %#Y
The Configuration File settings are loaded in design mode with the "Load" command, but are loaded
automatically when screens are loaded in Runtime mode.
Only some of the settings saved on file are restored when using the "Load" command (in design
mode) or when screens are being loaded (in Runtime mode). Mostly all the properties are restored
except those regarding the object's positions (Position X, Position Y, Width, Height).
To avoid XML files sizes being too big, many of the properties are saved only if different from their
default values.
Properties which don't get saved in the "sxml" file are those which have a default
value, and therefore will not be restored when the file gets loaded. For instance,
when a "sxml" file is saved with some properties that still have their default values,
which afterwards are changed and reloaded before the file is saved again, the
default values for these properties will not be restored.
To display the restored properties in design mode using the "Load" command in
the properties window, you will need to deselect and reselect the object.
During the Runtime phase you can save and restore configurations using the "SaveExtSettings",
"LoadExtSettings" and "ExtSettingsFile" basic script functions.
266
D R A W S
A N D
O B J E C T S
While loading the Configuration File, the Trend will search for it in the
"DATA" folder, then in the "RESOURCES" folder if not found. This only
happens for the Trend object and only when the file name without the
whole path has been entered in the "Configuration File" property.
Symbol size and position settings are never loaded while the
Configuration File is being loaded and remains with its original
settings. The Configuration File can be loaded using the "Load"
command in design or runtime mode if the "Auto Load File Settings"
has been enabled or by using the "LoadExtSettings" function.
insert the desired object on the screen, the rectangle for instance, and modify the properties
of interest (ie. the border, char font, etc.)
select the object, right click on it to open textual menu and activate the "Create or Remove
Settings File Commands" command. This command will created the ".defxml" file for the
selected object which will be saved in the project's DATA folder with its name indicated in the
table as shown below
The created setting files must reside either in a specified project's "DATA" folder or in the Movicon
installation folder. Movicon will check for any existing ".defxml" files within the opened project's
"DATA" folder and if found will use it. Otherwise Movicon will check whether these files exist in the
Movicon installation folder.
In order to restore an object's original settings, just delete the ".defxml" file referring to the object.
To cancel the file contained in the "DATA" folder, use the "Create or Remove Settings File
Commands" command.
The initial code that is copied in the text editor would have been as follows:
<MovClipboard>
<child>
<object>base</object>
<type
x="290"
y="170"
width="-190"
height="-120"
fill="rgb(255,0,0)"
stroke="syscolor(WINDOWTEXT SysColor)" stroke-width="1" stroke-linecap="butt"
stroke-linejoin="round">rect</type>
<ExtFill gcolor="rgb(0,0,0)" Style="3" fill="syscolor(WINDOW SysColor)">0</ExtFill>
<Name acr="4294901760"/>
267
M O V I C O N _ P R O G R A M M E R _ G U I D E
a simple mouse click on the screen will ad the object with the default sizes established by
Movicon
the object can be resized by clicking and keeping mouse button pressed down to move the
object to the size desired with the arrow starting from 0x0.
The "width" and "height" attributes have been already set at zero in the
".defxml" files which Movicon Setup installs.
As already mentioned beforehand, the names of files will be different according to the object type,
and will not depend upon the Movicon installation language. In addition, you must take into
account that some objects, such as the Rectangle and the Text, take settings from the same file,
therefore the same customization will have effect on both objects.
The table below lists the name of files to be used for the different projects:
268
Object
Name
Line
File Name
Chord
72_Object.defxml
65_Object.defxml
Pie
73_Object.defxml
Rectangle,
Text,
Square
Rounded
Rectangle
Ellipse,
Circle
Polygon
64_Object.defxml
Horiz.
Plotter
Vert.
Plotter
Horiz.
Trend
Vert.
Trend
XY Trend
76_Object_0.defxml
Polyline
not provided
not provided
Data
Analysis
Chart
134_Object.defxml
Pipe
Polybezier
not provided
Grid
119_Object.defxml
Arc
71_Object.defxml
Listbox
116_Object.defxml
66_Object.defxml
67_Object.defxml
not provided
76_Object_1.defxml
76_Object_0.defxml
76_Object_1.defxml
76_Object_2.defxml
96_Object.defxml
D R A W S
Groupbox
94_Object_0.defxml
Embedded
view
Horizontal
Spin
Vertical
Spin
Display
80_Object.defxml
Tab Group
115_Object.defxml
ComboBox
117_Object.defxml
ActiveX
not provided
Ole
not provided
114_Object.defxml
114_Object.defxml
97_Object.defxml
Alarm
Window
Log
Window
Data
Logger
Window
Trace DB
Window
Hour
Selector
IP Camera
Viewer
Alarm
Banner
Recipe
Manager
A N D
O B J E C T S
99_Object.defxml
101_Object.defxml
100_Object.defxml
102_Object.defxml
122_Object.defxml
133_Object.defxml
138_Object.defxml
139_Object.defxml
92_Object_0.defxml
Black
Square
Switch A
Check Box
93_Object_0.defxml
Switch B
90_Object_18.defxml
Hot Region
91_Object_0.defxml
Switch C
90_Object_19.defxml
Push
Button
3D Button
90_Object_0.defxml
Selector A
90_Object_20.defxml
90_Object_1.defxml
Selector B
90_Object_21.defxml
Yellow
Light
Blue Lights
90_Object_2.defxml
Selector C
90_Object_22.defxml
90_Object_3.defxml
90_Object_23.defxml
Green
Light
Red Light
90_Object_4.defxml
Yellow
Light
Blue
Button
Green
Button
Red
Button
Emergency
1
Emergency
2
Blue
Square
Red
Square
Yellow
Square
Green
Square
90_Object_6.defxml
Horizontal
3
State
Switch
Vertical 3
State
Switch
3
State
Selector A
3
State
Selector B
3
State
Selector C
3
State
Selector D
3
State
Selector E
3
State
Selector F
3
State
Selector G
3
state
centered
Zero
Selector
Object
Name
Pointer
File Name
90_Object_5.defxml
90_Object_7.defxml
90_Object_8.defxml
90_Object_9.defxml
90_Object_10.defxml
90_Object_11.defxml
90_Object_12.defxml
90_Object_13.defxml
90_Object_14.defxml
90_Object_17.defxml
90_Object_24.defxml
90_Object_25.defxml
90_Object_26.defxml
90_Object_27.defxml
90_Object_28.defxml
90_Object_29.defxml
90_Object_30.defxml
90_Object_31.defxml
90_Object_32.defxml
90_Object_15.defxml
Radio and Check buttons do not inherit back colours from the ".defxml" file.
269
M O V I C O N _ P R O G R A M M E R _ G U I D E
The names of the different components for "Meter" objects are based on certain parameters:
Meter: "77_Object_<StartAngle>_<EndAngle>_<ShowSlider>.defxml"
Slider/Bar Graph: "78_Object_<Type>_<ShowSlider>.defxml"
File Name
Vertical Slider
78_Object_3_1.defxml
Horizontal Slider
78_Object_4_1.defxml
Gauge
77_Object_225_135_1.defxml
Top Gauge
77_Object_270_90_1.defxml
Bottom Gauge
77_Object_90_-90_1.defxml
Left Gauge
77_Object_180_0_1.defxml
Right Gauge
77_Object_0_180_1.defxml
Meter
77_Object_225_135_0.defxml
Top Meter
77_Object_270_90_0.defxml
Bottom Meter
77_Object_90_-90_0.defxml
Left Meter
77_Object_180_0_0.defxml
Right Meter
77_Object_0_180_0.defxml
Vertical
Bargraph
Horizontal
Bargraph
Vertical
Grid
Bargraph
Horizontal Grid
Bargraph
Dundas Gauges
78_Object_3_0.defxml
78_Object_4_0.defxml
78_Object_3_0.defxml
78_Object_4_0.defxml
not provided
270
D R A W S
A N D
O B J E C T S
the Properties Window. However, objects outside screens will not be made visible in project runtime
mode, and those partly kept on screen will be shown with the part included on the screen only.
There are different reasons causing situations to show objects outside their screens:
When selecting the screen in the "Refactoring Explorer" window, a list of the objects showing
completely outside the screen will display. In this case, the following message will show:
The 'Object Name'' is not in the screen boundary and won't be visible in runtime"
Alias syntax
In order to understand whether an Alias has been inserted in a field it is necessary that this Alias
respects a certain syntax. This Alias identifier syntax must be written within double angled brackets:
<<AliasName>>.
The Alias, as mentioned before, can be replaced with the name of a variable, a constant or a text.
The possible combinations in which an Alias can be used are as follows:
Inserting Aliases in Variable fields
Aliases can be inserted in variable fields belonging to objects and in the objects' command lists'
variable fields. Aliases can be inserted in variable fields in the following possible ways:
271
M O V I C O N _ P R O G R A M M E R _ G U I D E
ALIAS
AliasVariable
AliasBit
AliasStruct
AliasMember
AliasArray
AliasElement1
AliasElement2
AliasConstant
VALUE
VAR00001
0
StructVar
VAR00001
ArrayVariable
1
[0]
10
Where VAR00001, StructVar and ArrayVariable are RealTimeDB variables and the others are only
values.
Inserting Aliases in Text fields
Aliases can be also inserted in text field belonging to objects and in their Command List text fields.
Some examples would be:
VALUE
ObjMotor01
Motor 1
Motor01.jpg
Caution! Aliases uses in text fields are replaced only when loading
the object. This means that Alias must be valued in the object's
table of its style source container. In this case the screen's Alias
Table will be ignored making it impossible to use it for changing the
text field alias values.
If the value associated to a text field alias is as a String ID from the
project's String Table, the string ID text will be displayed in both
development and runtime mode, in relation to the selected
language.
Alias Table
The Alias definitions, being value associations to Aliases, whether a variable, a simple numeric value
or string, are done on the "Alias Table". Aliases can be defined both at simple object level,
composed symbol level and also at screen level. The Alias table is saved in the xml code of the
object or in the screen within which it was edited. If a composed symbol has been created, an
Alias Table can be defined for each of the symbol's components and one can be defined for the style
container source.
The Alias's resolution is done starting from the highest level to the lowest level. For example if an
Alias has been inserted in a component its value will first be searched for in the component's table
and if not found, it will then be searched for in the table of the parent/reference symbol containing
it.
This will continue until the last symbol has been search for those symbols composed of diverse
number of embedded sub-symbols. If by the end the search the Alias's value has still not been
found, another search will take place in the Table defined in the Screen.
When the Alias Table is opened in an object, Movicon will carry out a control to check whether
Aliases have been inserted in the object's properties and report the list of Aliases to the table. From
this point on you can edit the Alias Table to associate values to the Aliases, insert new Aliases, delete
or modify existing ones.
The Alias Table can be opened using the following commands:
272
D R A W S
A N D
O B J E C T S
the "Edit Aliases..." comand from menu which appears right doublie clicking on object/symbol
A screen's "General - Object alias editor" property for editing the screen's Alias Table
The table is composed of two columns, the first one shows the Alias name without the double angled
brackets, the second shows the Alias to be replaced by the value , which may be a variable or a
simple numeric or string value.
Alias values can also be set with an explicit Null value. In order to
do this you will need to use the "(null)" keyword. Setting an alias
with the null value, for instance in a display object, is the same as
not associating this object with a variable.
Editing/Inserting Aliases
When the Alias Table is opened at object or symbol level, Movicon searches for the Aliases inserted
in the symbol and then displays them. Values can be associated to Aliases when entering into edit
mode from the field with a double click or using the F2 key followed by the TAB key to move from
one to the next. On the other hand, if you right mouse click, a popup menu will appear through
which you can perform the following operations:
To delete an Alias just select the roe and use the "CANC" key.
Aliases inserted on object/symbol Alias Tables are saved in the object's code only if they have been
associated with a value. This means that if a new Alias is added to the table and is not used in
object's properties and doesn't get assigned with a value, it will not show next time the Alias Table is
opened. However this behaviour does not happen with screen Alias Tables, where the inserted
Aliases still get saved in the screen's xml code even though not valued.
273
M O V I C O N _ P R O G R A M M E R _ G U I D E
274
D R A W S
A N D
O B J E C T S
If the "Static Object in Background" option has been enabled in the project, the following
warning
message
will
be
generated:
The project will be adapted on the target in order to manage the static objects in background
image
(option
set
inside
this
project).
Make sure to preserve an updated copy of this project for continuing to develop!
Would
you
like
to
proceed
with
uploading?
2.
3.
4.
Responding with "Yes" to point 1) will start project transfer otherwise this operation will be
cancelled
Each screen enabled with the "Static Object in Background" option will be initialized and a
".bmp" file will be created with the for all static objects detected with their images and a
".movscr_st" file will be created as a modified copy of the original screen's ".movscr" file.
However the ".movscr_st" file will not include the static object's xml definitions and the
background images will be the bitmaps created with the static objects. These two files,
".movscr_st" and ".bmp" will created in the same original screen's folder.
At this point the file that will be transferred to the device will not be the screen's original file
with the ".movscr" extension, but the one with the ".movscr_st" extension and the bitmap
file. During the transfer phase the file's extension will be renamed to ".movscr" otherwise the
Movicon runtime module will not recognize the file as the screen's.
When enabling the "Static Object in Background" option, the project which
will be transferred to the device may be different from the original
therefore you will need to make a backup copy of the source files. The
original project will not be returned when retrieving it from the device. A
warning message will display on the device during the transfer.
275
M O V I C O N _ P R O G R A M M E R _ G U I D E
At this point it is necessary to know what static objects are exactly. Basically, they are all those
symbols inserted on screen without animation or logic associated to them. To be more precise, in
order for an object to be considered 'static' it must have the following conditions:
object must not have any set variables in any of its animation, execution etc. properties
object must not have any IL Logic or Basic Script associated to it
object must not have any text set as its title (text may be subject to language changes)
object must not have a public name if screen has been set in a publc symbol container
object must not be set with levels other than zero if the screen is associated with the Screen
Layer Variable
object must not have its "Visible on Web Client" option set at false (disabled)
object must not have its "Visible on WinCE" option set at false (disabled)
object must not have an access mask in read other than "FFFF" if project's user management
is active.
object must not be set to be invisible based on zooming factor (the "Enable Zoom" visibility
property must be set at false - disabled)
object must not be set with a Command List
object must not be overlapped with other objects that are not static, otherwise it will not be
visible in runtime because part of the bitmap background.
some objects cannot be static for obvious reasons and include the: Alarm window and Alarm
Banner, Historical Log window, DataLogger/Recipe Wndow, Recipe Manager, TraceDB,
window, IP Camera viewer, Grid, Hour Selector and Scheduler TAB Group, Embedded Screen
and ActiveX/OCX
When using a composed symbol it will be considered static if, in addition to being static as whole,
each of its individual elements are static as well.
When the "Static Object in Background" is enabled, the screens with this option enabled will not be
adapted to the page. In this case the "Fit in window" option will be in grey and no longer
changeable, and the screen will not be adapted in runtime. The "Fit in Window" option will however
be disabled only if the "Static Object in Background" option is enabled both at project and individual
screen level.
Warning! If a certain screen is enabled for static object in background
management, this screen will be managed as a container for all static
objects even when they mustn't be retrieved. This means that, for instance,
no background images will be created and no "movscr_st" file will be
created, but the screen will however result as "Do not Fit in Window"
during runtime.
276
when the project's "Static Object in Background" option is disabled. In this case the
temporary files of all project screens will be deleted
when the "Static Object in Background" option of each individual screen is disabled. In this
case the temporary files of those screens will be deleted
when a screen is renamed. In this case the temporary files of those screens will be deleted
when a screen is moved to a different folder. In this case the temporary files of those screens
will be deleted
when the project's "Enable Password Management" option is changed. In this case all the
temporary files of all the project's screens will be deleted
D R A W S
A N D
O B J E C T S
Naturally, after the temporary files have been deleted, which can also be done manually by user,
these files will be re-created by Movicon during the next project transfer if necessary.
Warning! when transferring a project to device, any previous unloaded
'bmp' files no longer used n the last project version will NOT be cancelled
during project transfer therefore you will have to remove them manually.
For example, let's suppose that a project with its "Static Objects in
Background " option active has been transferred along with its ".bmp" files
created for managing static objects to a remote device. If at this point, the
"Static Object in Background" management is disabled in the project and
then transferred again to the device, the screen files will be overwritten
with the original project files but the image files will remain on the device
even though no longer used.
ComboBox and ListBox: the mouse wheel can be used to scoll the listed items
Scheduler Window and Recipe Manager: the mouse wheel can be used to scroll the list of
items in the recipe selection combo-box or the list of fields in the object table (according to
which element has focus)i
Alarm Window, Log Window, Trace DB Window and Grid: the mouse wheel can be used to
scroll the object's table fields
Trend and DataAnalysis: the mouse wheel can be used to move the cursor when a trend area
has been selected or it can be used to scoll the list of pens when the legend is selected.
The scroll feature is only possible to use when needed. If lists of items or rows do not fit in one
page the scroll bars will be enabled.
In addition the "Mouse Wheel" event is available which is called during the mouse scroll.
277
M O V I C O N _ P R O G R A M M E R _ G U I D E
Objects in this category, buttons, lights and hot regions, do not support
the "three states" commands.
278
D R A W S
A N D
O B J E C T S
The "Switch" and "Selector" type buttons support "Tri-State" mechanics allowing the command/state
variable ("Tag Command/State") to be managed with three values; zero, one and two.
The tri-state mechanism can be horizontal or vertical type. The variable set in the "Tag
Commmand/State" field assumes a new value each time the switch or selector area is clicked on.
Therefore, each time the object is clicked the variable switches from one value to the next
beginning with 'zero' value, then the 'one' value, and finally the 'two' value. The switch/selector's
image changes in function with the variable's new value, alternating three possible images:
switch/selector in zero position, switch/selector in position one and switch/selector in position two.
the variable can also be set by pressing the mouse button on the position where the selector is
located, and dragging it to another position. In this case the variable is set to the new value only
when the mouse button is released and the switch/selector is placed in a different position to the
one it originally started off in.
In addition, the "Central zero" option has been made available (settable only with tri-state
mechanics) to allow the switch/selector's zero value o use the central position and not the side
position. If this option is left disabled, the zero will be set to the left for horizontal tri-states or at the
bottom for vertical tri-states.
Tri-State switches/selectors can be commanded with accelerators or the
space bar. In addition, they also support all the other mechanic types that
can be set in button and light objects.
"Style - Style": changes its graphical aspect only, by giving it a round 3D look.
"Rounded Style": only its graphcal aspect changes by obtaining a rounded corner look instead
of a angled corner look.
"Stroke Attributes Properties - Pen Size": only the border's graphical aspect changes
Lights (colored)
The "Light" objects that can be inserted are normal buttons changed in the following properties:
"Style - Style": changes its graphical aspect only, by making it look like a luminous indicator.
"Style - Clickable": this property is disabled when the light is for display only
279
M O V I C O N _ P R O G R A M M E R _ G U I D E
"Execution - Mechanic Style": this property is enabled for managing the mechanic "ON-OFF"
which sets Light's modality with an On or Off status.
Buttons (colored)
The colored "Button" objects which can be inserted are normal buttons changed in the following
properties:
"Style - Style": changes its graphical aspect to look like a round switchboard button.
"Execution - Mechanic Style": this property is enabled for managing the mechanic "ON-OFF"
to make an ON/OFF command button type.
Emergency
The "Emergency" objects which can be inserted are normal buttons changed in the following
properties:
"Style - Style": changes only its graphical aspect to look like an emergency switchboard
button.
"Execution - Mechanic Style": this property is enabled for managing the mechanic "ON-OFF"
to make an ON/OFF command button type.
Square (colored)
The colored "Square" objects that can be inserted on screen are normal buttons modified in the
following properties:
"Style - Style": only its graphical aspects change to make it look more like those found on a
control panel.
"Execution - Mechanic Style": the "ON-OFF" is enabled to make it a ON/OFF command type
Switch A/B/C
The "Switch" objects that can be inserted are buttons modified in the following properties:
"Style - Style": only graphical aspect changes to look like an ON/OFF switch found in civil
plant systems.
"Execution - Mechanic Style": the "ON-OFF" mechanics is enabled to make it an ON/OFF
command type.
Selector A/B/C
The "Selector" objects that can be inserted on screen are buttons modified in the following
properties:
"Style - Style": only graphical aspect changes to look like an ON/OFF selector found on
control panels.
"Execution - Mechanic Style": the "ON-OFF" mechanics is enabled to make it an ON/OFF
command type.
3 State Switches
The "3 state switches" that can be inserted are buttons modified in the following properties:
"Style - Style": only graphical aspect changes to look like a 3 state switch
"Execution - Mechanic Style": the "Tri-State" mechanics is enabled to turn it into a 3 position
command type.
3 State Selectors
The "3 State Selectors" that can be inserted on screen are buttons modified in the following
properties:
"Style - Style": only graphical aspect changes to look like a 3 state selector.
"Execution - Mechanic Style": the "Tri-State" mechanics is enabled to turn it into a three
position command type.
280
"Style - Style": only graphical aspect changes to look like a 3 state selector.
D R A W S
A N D
O B J E C T S
Actions are defined and configured depending from the "Mechanic Style" assigned to the button, as
following described.
Command/State Variable
The name of the variable to be used as the check variable, which will be managed differently
according to the command type selected in the "Mechanic Style" property, is entered in this editbox
(or selected by using the '' browse button on the right).
This property is only provided for "Buttons", "Check Box Buttons" and "Radio Button".
The Check Variable can be configured with any kind of "Mechanic Style".
If the style chosen is "Command Execution, the Check Variable allows to
define the status of the button (pressed or released) or the colour for the
light buttons.
Command Type
This selection is used for choosing the push button's operating mode.
ON-OFF
Impulsive
Execute Commands
Tri-State Horizontal
Tri-State Vertical
281
M O V I C O N _ P R O G R A M M E R _ G U I D E
Central Zero
This can be used when setting Tri-State commands for choosing the central position and not on the
side position for the switch/selector's zero value. If left disabled, the zero will be set to the left for
tri-state horizontals, or at the bottom for tri-state verticals.
Impulsive Time
The property "Impulsive Time" can be used for two different scope:
1.
2.
Using the Mechanic Style "Impulsive" you can define the time (msec) for the pulse on the
check variable. If you set this time to zero, the variable will be put to "ON" until the button is
pressed.
Using the Mechanic Style "Execute Command" you can define the cyclic execution (msec) for
the commands defined as ""Command while down". In this case the time pulse as "zero"
is not allowed and it will disable this function.
Command on Release
This button opens the Movicon 'Command List' window through which you can setup a list of one
or more commands which will be executed upon the button release event.
This property is only available for 'Button' and 'Hot Region' objects.
For further information on the commands available please refer to the paragraph on "Command
List".
Command While Down
This button opens the Movicon 'Command List' window through which you can setup a list of one
or more commands which will be executed while the button kept pressed down. In this case,
commands can be executed several time (cyclically) until the button is pressed, with a
period time defined by the property "Impulsive time".
This property is only available for 'Button' and 'Hot Region' objects.
For further information on the commands available please refer to the paragraph on "Command
List".
Command on Pressed
This button opens the Movicon 'Command List' window through which you can setup a list of one
or more commands which will be executed upon the button pressed event.
This property is only available for 'Button' and 'Hot Region' objects.
For further information on the commands available please refer to the paragraph on "Command
List".
Command on Mouse Down
When this property is enabled, the Command List associated to the button will be executed upon the
Mouse Down event (when the mouse button is pressed down) instead of the Mouse Up event (when
the mouse button is released).
This option is presented only for command buttons (being those which
have been associated with a Command List) and not for selection or
impulsive buttons.
282
D R A W S
A N D
O B J E C T S
Conditioned Commands
When this property is enabled, the button command list will only be executed when the variable
inserted in the "Command/State variable" is set at 'zero'. Valid only if button has also been
associated with the "Command/Status Variable".
This tued when the this property Enabling this property will
Num. Radio Buttons
The number of options buttons to appear for the control type 'Option Buttons' is entered in this edit
box.
Enable Shortcut
When enabling this check-box, an Shortcut key will be associated to the control. Therefore the
control's command can be executed during runtime by simply pressing the preset Shortcut key (eg.
'F1'). After having activated this property it will be necessary to setup the Shortcut key to be used
through the 'Shortcuts' property.
Shortcut
The key or combination keys you wish to associate to the control can be entered in this edit box.
Movicon offers you the possibility to automatically enter the key to be associated by pressing the key
directly on the keyboard. In order to do this press the '...' button on the right hand side of the entry
box to display the following window:
At this point just press any one of the buttons on the keyboard, or a combination of keys also
consisting of the 'modifier' keys, to register them in the 'Shortcut' box.
This operation can be cancelled with the 'Cancel' button.
The Shortcut key is only active when the control's 'Enable Shortcut'
property has also been enabled.
Show Shortcut
Enabling this check-box will show the selected 'Shortcut' key at the side of the control's title.
ico
jpg
bmp
gif
tif
png
wmf
emf
283
M O V I C O N _ P R O G R A M M E R _ G U I D E
The option to manage this image association can only be applied to certain Button types as listed
below:
Push Buttons
3D buttons
Lights (Yellow, Blue, Green, Red)
Buttons with lights (Yellow, Blue, Green, Red)
Emergency (A,B)
Switch
Selector (A,B)
It is not possible to associate images to Checkboxes, Radio buttons, and Hot Regions.
When the button associated an image contains a text, the associated image to each of the three
statuses will change sizes to occupy the left half of the object, leaving the right half for the text.
When the button does not contain any text, the image in each of the three statuses will be resized to
fit all of the button area. In this way the button can be customized by replacing, for instance, the
image proposed for default by Movicon (ie. selectors and switches) with a custom image for each
button status.
Image When 0 / Image Button Released
This property is used for selecting an image to be displayed in the button when in the Released
status. This image will be displayed when the tri-state switch or selector is in the 0 position.
Image when 1/ Image Button Pressed
This property is used for selecting an image to be displayed in the button when in the Pressed
status. This image will be displayed when the tri-state switch or selector is in the 1 position.
Image when 2/ Image Button Checked
This property is used for selecting an image to be displayed in the button when in the Checked
status, being when the status of its ON-OFF variable is different to zero. This image will be displayed
when the tri-state switch or selector is in the 2 position.
Image Button Disabled
This property is used for selecting the image to be visualized on the button when Disabled, which
happens when the variable inserted in the "Enable Variable" has the '0' value therefore disabling the
button.
Overlap Image/Text
This property is used for setting the button's Title's text to overlap image.
284
D R A W S
A N D
O B J E C T S
Gauge functionalities
The Vectorial Gauge tool has the following functionalities:
1.
2.
3.
The Gauge can be configured in different ways, for instance to get a display of one of the scale, bar
or slider components only, or to display the objects concerned when required. In addition to this,
different geometric shapes can be used for the Gauge display in order to simulate different objects
according what is required.
285
M O V I C O N _ P R O G R A M M E R _ G U I D E
Circular Gauges
Linear Gauges
Numeric Indicators
After which you can go ahead and define its graphical aspect using the "Appearance Style" List-box.
After having selected the object you wish to use you can configure it by using the buttons to the
right of the window (Gauges, Scales, etc.) or by using the button placed at the bottom of the
window (Prev, Next, etc.). Each time you enter a configuration page you will be provided with other
TAB keys at the top of the window (Position, Gauge Frames, etc.). Each object has many settings to
choose letting you customize them with every little detail. When you have finished just click the
"Finish" key in the Wizard window to close it and insert the object on screen. At this point you can
associate the object with the variable, which is to be displayed through the "Dundas Gauge Variable"
property.
All the Dundas Gauge object graphics configuration is done through the wizard window, therefore
many of the properties which can be set through the Movicon Property windows will not have effect
on this object. For instance, the object's "visibility" Animation property can be used but the "Back
Color" Animation property will not have effect on the object and therefore can't be used.
In the wizard window for configuring the Dundas Gauges, When
opening the configuration page using the "Gauges" button and
selecting the "Position" TAB, a "Selected Gauge" List-box appears
where you can add other Gauges to the same container. By doing
this more than one gauge object will appear inside the same
rectangle container when inserting the object in the Movicon
screen. The management of this configuration is not supported by
Movicon and therefore, in this case, only the first Dundas Gauge
object will be associated with the variable to be displayed.
286
D R A W S
A N D
O B J E C T S
"CTRL + click on the Open button in the object's General Properties": opens the
wizard window and therefore restarts the object's initial configuration. Previous settings will
be lost
"Shift + double click on the object" or "Click on the Open button in the object's
General properties": opens the Dundas Gauge's properties window through which you can
modify the already inserted object without losing any previous settings
Furthermore, you can always modify the Dundas Gauge object directly in its
XML code, using the "XML Code Explorer" window for instance.
The Dundas Gauges are more attractive to look at graphics wise
compared to the normal Gauge objects, however you will need to
keep in mind that more CPU will be used in those computers that
don't have graphic cards with medium-high performance installed.
Vertical Slider
The Vertical Slider is a normal Gauge changed in the following properties:
"Style - Type": refer to the gauge's graphical aspect only by changing it into a vertical shape.
Horizontal Slider
The Horizontal Slider is a normal Gauge changed in the following properties:
"Style - Type": refers to the gauge's graphical aspect only by changing it into a vertical
shape.
Gauge Top
The Gauge Top is a normal Gauge changed in the following properties:
"Circular - Angle": changes the gauge's graphical aspect only by limiting the extension of the
scale at the top part of the quadrant.
Gauge Bottom
The Gauge Bottom is a normal Gauge changed in the following properties:
"Circular - Angle": changes the gauge's graphical aspect only by limiting the extension of the
scale at the bottom part of the quadrant.
Left Gauge
The Left Gauge is a normal Gauge changed in the following properties:
"Circular - Angle": changes the gauge's graphical aspect only by limiting the extension of the
scale on the left hand side of the quadrant.
Right Gauge
The Left Gauge is a normal Gauge changed in the following properties:
"Circular - Angle": changes the gauge's graphical aspect only by limiting the extension of the
scale to the right hand side of the quadrant.
287
M O V I C O N _ P R O G R A M M E R _ G U I D E
Meter
The Meter is a normal Gauge changed in the following properties:
"Circular - Show Needle": changes the graphical display of the indicator represented as a
needle
"Style - Show Slider": changes the graphical display of the object's base
Top Meter
The Top Meter is a normal Gauge changed in the following properties:
"Circular - Angle": changes the gauge's graphical aspect only, by limiting the extension of the
scale to the top part of the quadrant
"Circular - Show Needle": changes the needle's graphical display
"Style - Show Slider": changes the graphical display of the object' s base
Bottom Meter
The Bottom Meter is a normal Gauge changed in the following properties:
"Circular - Angle": changes the gauge' s graphical aspect only, by limiting the extension of the
scales to the bottom part of the quadrant
"Circular - Show Needle": changes the needle's graphical display
"Style - Show Slider": changes the graphical display of the object's base
Left Meter
The Left Meter is a normal Gauge changed in the following properties:
"Circular - Angle": changes the gauge' s graphical aspect only, by limiting the extension of the
scales to the left hand side of the quadrant
"Circular - Show Needle": changes the needle's graphical display
"Style - Show Slider": changes the graphical display of the object's base
Right Meter
The Right Meter is a normal Gauge changed in the following properties:
"Circular - Angle": changes the gauge' s graphical aspect only, by limiting the extension of the
scales to the Right hand side of the quadrant
"Circular - Show Needle": changes the needle's graphical display
"Style - Show Slider": changes the graphical display of the object's base
Vertical BarGraph
The Vertical BarGraph is a normal Gauge changed in the following properties:
"Style - Type": refers to the gauge's graphical aspect only by changing it into a vertical shape
"Style - Show Slider": deletes the slider display
Horizontal BarGraph
The Horizontal BarGraph is a normal Gauge changed in the following properties:
"Style - Type": refer to the gauge's graphical aspect only by changing it into a horizontal
shape
"Style - Show Slider": deletes the slider display
"Style - Type": refers to the gauge's graphical aspect only by changing it into a vertical shape
"Style - Show Slider": deletes the slider display
"Style - Bar Brush Style": associates a non solid bar filling style
288
"Style - Type": refers to the gauge's graphical aspect only by changing it into a horizontal
shape
D R A W S
A N D
O B J E C T S
Numeric Variable: if the variable is numeric type, the number set will represent the number
of decimal figures after the point. For example, when entering the '2' value in this field, the
"x.xx" format will be used. If the set value is negative, the absolute value will be taken,
therefore when entering "2" or "-2" the same result will be obtained. If the value is in
floating type with decimal figures, the value will be rounded off, for example; an entered
"1.4" will be taken as "1" and an entered "1.6" will be taken as "2".
String Variable: if the variable is string type, its format must be one of those provided by
the control system which are listed in the paragraph headed "Predefinided Movicon Format"
from the section on "Data Formats" (i.e. "x.xx", "%s", etc.).
Caution! When using a string variable type make sure that you insert
a correctly supported format. If the string inserted is not in a valid
string format, the value will not get displayed correctly.
289
M O V I C O N _ P R O G R A M M E R _ G U I D E
The "Verticle2" and "Horizontal2" have the following different graphics in respect to the
other "vertical" and "horizontal" type objects, :
The scale is never displayed under the button. The scale will not display if there isn't enough
lateral space.
The central slider underneath the button is very narrow and is displayed independently from
the object's size.
Knob Style
This property allows you to choose from a default and 8 other different styles from a drop-down list
which appears by clicking the arrow to the property's right. The 'default' style corresponds to a
simple round knob, compared to the more complex and nice-looking 1/ 8 knob styles, and is shaped
with a larger base circle with a narrower one on top for easy gripping.
Slider Color
This property allows you to select the color to associate to the Gauge's slider.
For further information on selecting colors please refer to the paragraph on "Color Selection".
Knob color
This property allows you to select the color to associate to the Gauge's knob.
For further information on selecting colors please refer to the paragraph on "Color Selection".
Bar Back Color
This property allows you to select the color to associate to the Gauge's bar back color.
For further information on selecting colors please refer to the paragraph on "Color Selection".
Bar Fill Color
This property allows you to select the color to associate to the Gauge's bar color.
For further information on selecting colors please refer to the paragraph on "Color Selection".
Bar Brush Style
This property allows you to select the brush style to associate to the Gauge's bar.
Scale Color
This property allows you to select the color to associate to the Gauge's scale.
For further information on selecting colors please refer to the paragraph on "Color Selection".
Gap
The border width of the Gauge window containing the different elements is set in this field.
290
D R A W S
A N D
O B J E C T S
Show Slider
This enabling box is used to display or hide the Slider associated to the variable in the Gauge
window. The Slider is the only Gauge element that permits the variable's value associated to the
Gauge to change.
Show Title
This enabling box is used to display or hide the Gauge object's title. The title is displayed on the top
border of the window containing the Gauge.
Show Bar
This enabling box is used to display or hide the Filling Bar associated to the variable in the Gauge
window. The Filling Bar displays the variable value associated to the Gauge in percentages.
Show Scale
This enabling box is used to display or hide the Scale associated to the variable in the Gauge
window. The Scale is associated to the Slider to allow the current variable values of the Gauge to be
displayed.
Reverse Scale
This option when enabled reverses the scales valued and all the "warning" thresholds set in the
object as a consequence.
Scale Right-Bottom
This enabling box is used to display the Scale on the Right hand side of the Gauge window when in
horizontal mode or at the bottom of the Gauge window when in vertical mode. When the Gauge is
circular type the scale's text will be displayed outside the dial instead of inside.
Bias Bar
This enabling box is used to display or hide the Bias Bar associated to the variable in the Gauge
window. This enabling only works if the Bar has already been enabled.
3D Effects
This enabling box is used to display the 3D effect when Gauge is set as Meter or Bargraph.
Border
A description of the Border property can be found in the paragraph on "Style Proprieties
common to Drawings and Controls".
Knob Border
This option is used for setting the Gauge knob border's display type.
Slider Border
This option is used for setting the Gauge Slider's border display type.
Bar Border
This option is used for setting the Gauge Bar's Border display type.
Needle Border
This option is used for setting the Gauge Needle's border display type.
Start Angle
The start position of the circular arc, which will represent the Gauge elements, is entered in this edit
box. By editing this value you can get a longer or shorter circular arc with varying angles also in
function with the value entered in the 'End Angle' property.
291
M O V I C O N _ P R O G R A M M E R _ G U I D E
End Angle
The end position of the circular arc, which will represent the Gauge elements, is entered in this edit
box. By editing this value you can get a longer or shorter circular arc with varying angles also in
function with the value entered in the 'Start Angle' property.
Needle Center Pos.
This parameter allows the needle's center to be moved thus moving all the semicircle of elements, to
a different position to that set for default within the Gauge window.
Needle Width
This selection box is used for changing the width of Gauge needle.
Needle Length
This selection box is used for changing the length of the Gauge needle.
Needle Edge Color
This property is used for selecting the color to be associated to the Gauge needle's edge.
For further information on selecting colors please refer to "Color Selection".
Needle Fill Color
This property is used for selecting the color to be associated to the Gauge needle's filling.
For further information on selecting colors please refer to "Color Selection".
Needle Shadow Color
This property is used for selecting the color to be associated to the Gauge needle's shadow.
For further information on selecting colors please refer to "Color Selection".
Show Needle
This enabling box is used for displaying or hiding the Needle for indicating the values of the variable
associated to the Gauge.
Show Needle shadow
This enabling box is used for displaying the or hiding the Needle's shadow for indicating the values
or the variable associated to the Gauge. This enabling is only valid if the Needle's display has been
enabled beforehand.
Circular 3D
This enables the 3D effect when the Gauge object has been configured as a Meter.
292
D R A W S
A N D
O B J E C T S
The gauge's "Max. Value " property or the variable's "Scale Max."
property will not be considered if a variable has been entered in the Gauge's
"Max. Variable" property for managing thresholds dynamically.
# Major Div.
The number of major divisions to be displayed in the Scale is entered in this edit box.
# Minor Div.
The number of minor divisions to be displayed in the Scale is entered in this edit box. The minor
divisions are those comprised between two major divisions.
Label every # div.
For how many major divisions of the Scale a numeric label is to be displayed, identifying the value in
that position, is entered in this edit box.
Eng. Unit
The text for identifying the engineering units of the Gauge's variable to be represented can be
entered in this edit box.
Label Format
The type of numeric format display of the variable associated to the Gauge is set through this option
box.
The types of formats available are only those listed in the paragraph headed "Predefined Movicon
Formats" found in the "Data Formats" sector.
In cases where this property is not set (therefore left blank) the Gauge will
inherit the format defined in its associated variable's "Default Format"
property.
293
M O V I C O N _ P R O G R A M M E R _ G U I D E
End Variable
This edit box is used for entering (or selecting with the '...' browse button on the right) the name of
the variable whose value will be used as the alarm intervention's End value for the zone in question.
This will make the threshold value dynamic therefore possible to change when in Runtime mode.
Color
This property is used for selecting the colour to be associated to the Warning Zone.
For further information on the colour selection please refer to the paragraph on "Color Selection".
294
D R A W S
A N D
O B J E C T S
The screen displayed by the Embedded Screen is not completely initialized. As a result the
basic script interface of the screen associated to this object does not get initialized. Therefore
none of the screen's VBA events can be used including variable notifications. As a
consequence functions such as the "GetSynopticObject" which return the screen object
containing the Embedded Screen object and not the screen displayed by the object. Events
relating to the objects contained in the Embedded Screen are, however, active and managed.
The local variables belonging to the screen displayed in the Embedded Screen are searched in
the context of the screen containing the Embedded Screen.
The IL Logic of the screen displayed by the Embedded Screen and the IL Logic of the objects
it contains is executed correctly.
The "Embedded Screen" cannot be used for displaying the "Alarm Window"
or the "Alarm Banner" belonging to a Child project. If used, the "Alarm
Window" or the "Alarm Banner" will display empty without showing any
alarms.
295
M O V I C O N _ P R O G R A M M E R _ G U I D E
It is also possible to load a screen into the Embedded Screen object that is not in the project
resources ("RESOURCES\ProjectName\") but in a somewhere else in the PC's file system for
instance: in "C:\temp\". The variable set in the "Embedded Screen Variable" should therefore
contain the absolute path of the screen to be displayed: "C:\temp\MyScreen.movscr".
In cases where the variable is numeric type, the screen can be changed on variable by exploiting
each one of the screen's ID properties, as well as those that are in "Screens" resource subfolders,
and those belonging to Child projects from Father projects: they just need to have a univocal ID.
This, however cannot be reversed as Father project screens cannot be opened from a Child project.
For instance, by means of using a Display object, you only neet to set the value of the screen's ID
index, or use a Combobox to get the index of the selected item.
The variable set in the "Embedded Screen Variable" property can be declared locally to the screen so
that, for example, a Client or Web Client application can result independent from the Server.
You are allowed to use Child project variables (string or numeric type), (for
instance: "ChildPrjName\ChildTagName") and on the contrary use Father
project
variables
from
the
Child
project
(for
instance:
"..\..\FatherPrjName\FatherTagName").
Use the variable from the "Embedded Screen Variable" property within
object or screen VB Script to speed up the change over of the screen to
be displayed instead of the with the "DrawCmdTarget" interface's
"EmbeddedSynoptic" property, which only has effect when the routine
from where it was invoked has finished its run.
Show Background
When selecting this box the background colour or any associated background drawing of the original
Screen will be represented. If this box is not selected, the object will assume a transparent
background.
Static Screen Image
This property allows you to change the Embedded Screen object's behaviour as follows:
Disabled (default): the object will behave normally, meaning that any associated Screen animation
properties will be active and the user will be able to interact within the associated Screen.
Enabled: the Embedded Screen will only display the image of the associated Screen and it will not
be possible for the user to interact with the interactive objects internal the associated Screen. The
displayed Screen can be opened by clicking on the Embedded Screen. This mode is handy for
creating change pages using screen previews. It is also exploited by objects which are used in the
resource for managing the "Screen Navigation Editor".
The image that displays when the "Static Screen Image" option is active
gets searched for in the same folder in which the screen resource set in the
"Embedded Screen" object resides. The name of the image searched for is
"<Screen>_c.jpg" and is created manually by the "Save Screen Image"
command from the screen's "General" properties in design mode or
automatically if the "General\ShowTooltipPreview" key has been set to the
'1' value (for further details please refer the chapter on "Screen general
properties"), and is deleted every time the screen is modified.
Border
The 'Border' property is described in the paragraph on "Style Proprieties common to Drawings
and Controls".
10.13. Displays
The Movicon Displays are components which can be inserted into any point of the Screen to allow
variables to be dynamically displayed.
The displays carry out the task of displaying figures or strings whose values are contained in the
associated variable, which can be set and configured through the properties window.
The Display objects are available in the 'Controls' group of the "Objects Window".
296
D R A W S
A N D
O B J E C T S
The Display object also permit the operator to edit the value of the associated variable by selecting
the Display and entering the value required. The Displays can also be in read only by setting the
appropriate properties.
297
M O V I C O N _ P R O G R A M M E R _ G U I D E
Monthly Variable Min. Value: displays the variable's minimum value statistic on a monthly
basis
Monthly Variable Max. Value: displays the variable's maximum value statistic on a
monthly basis
Monthly Variable Average Value: displays the variable's average value statistic on a
monthly basis
Monthly Variable Total Time ON: displays the statistic value which indicates how long the
variable stayed at a value that was not zero on a monthly basis. In this case the value is
shown in days, hours, minutes and seconds
Yearly Variable Min. Value: displays the variable's minimum value statistic on a yearly
basis
Yearly Variable Max. Value: displays the variable's maximum value statistic on a yearly
basis
Yearly Variable Average Value: displays the variable's average value statistic on a yearly
basis
Yearly Variable Total Time ON: displays the statistic value which indicates how long the
variable stayed at a value that was not zero on a yearly basis. In this case the value is shown
in days, hours, minutes and seconds
Variable TimeStamp: displays the variable's TimeStamp being the date and time the
variable was last updated. The default format with which the value is displayed with is
composed of the date and time including milliseconds if the project is running on Windows
32/64 bit platforms (milliseconds are not available in Windows CE). To customize this format
use the Display's "Value Format" property.
Total Time ON
When the "Total Time ON" is displayed, the value format is shown for default as follows:
d, HH.MM.SS
where: d = days, H = hours, M = minutes, S = seconds
you can also customize the value to be displayed by specifying the format desired in the display's
"Value Format" field. The format may include the following codes:
%D = Days
%H = Hours
%M = Minutes
%S = Seconds
For examply by inserting the format string:
%H:%M:%S
the display will now show the day value.
If you wish to display the variable's statistical values you will need to enable the variable's statistics
and set the variable as retentive ("Enable Statistic Data" and "Retentive not Shared" variable
properties). Otherwise the variable's current value will be always displayed.
You must also take into account that the variable's statistic data will be zeroes in different ways
according to the data type. For further information about this please consult the section on
"Retentive Variables and Statistical Data".
Default Structure
See paragraph "Variables Properties" for Drawings and Controls.
Min. Variable
The name of the variable whose value will be used as the lowest value which can be set in the
'Variable' is entered in this edit box (or selected with the '...' browse button on the right). By doing
this the threshold value is made dynamic and therefore editable during Runtime.
Max. Variable
The name of the variable whose value will be used as the highest value which can be set in the
'Variable' is entered in this edit box (or selected with the '...' browse button on the right). By doing
this the threshold value is made dynamic and therefore editable during Runtime.
298
D R A W S
A N D
O B J E C T S
Numeric Variable: if the variable is numeric type, the number set will represent the number
of decimal figures after the point. For example, when entering the '2' value in this field, the
"x.xx" format will be used. If the set value is negative, the absolute value will be taken,
therefore when entering "2" or "-2" the same result will be obtained. If the value is in
floating type with decimal figures, the value will be rounded off, for example; an entered
"1.4" will be taken as "1" and an entered "1.6" will be taken as "2".
String Variable: if the variable is string type, its format must be one of those provided by
the control system which are listed in the paragraph headed "Predefinided Movicon Format"
from the section on "Data Formats" (i.e. "x.xx", "%s", etc.).
Caution! When using a string variable type make sure that you insert
a correctly supported format. If the string inserted is not in a valid
string format, the value will not get displayed correctly.
"Byte Array" or "Structure" variable types (inserted as global variables
without using a single member) are not supported. In this case the value
will be displayed with the format defined in the "Format Value". property.
Enable Var.
See paragraph "Variables Properties" for Drawings and Controls.
Status Var.
See paragraph "Variables Properties" for Drawings and Controls.
299
M O V I C O N _ P R O G R A M M E R _ G U I D E
The display object password option is also supported in the Web Client and
using a server project in Windows CE. When in editing mode, a editbox
opens showing asterisks for the inserted text which will show in the display
when confirmed.
Horizontal Spin
By using this check box you can set the Spin to be horizontal or vertical.
Spin Delay
The delay time in enabling the fast Increase/Decrease function is entered in this edit box. By
pressing one of the two spin buttons with the mouse for the time set, when exceeded the variable
will start to Increase/Decrease in fast mode.
Spin Size
When the Spin button associated to the display has been enabled you can select the button's size
from the ones below:
small
medium
large
Custom
When setting Spin Size to "Custom" will enable you to define the Spin sizes to the values of your
choice. In this case the relating "Spin Width" and "Spin Height" properties will also be enabled
according to Display or ComboBox type:
Display object: setting the "Spin Size" to "Custom" will activate the "Spin Width" property
through which you can defined the custom spin size of your choice.
ComboBox object: setting the "Spin Size" to "Custom" will activate the "Spin Width" and
"Spin Height" through which you can define the custom spin sizes of your choice.
The ComboBox's Scroll Bar size does not depend on the "Spin Size"
property but on the Windows Operating system window settings.
Spin Width
Defineds width size of the Spin button in Display or ComboBox objects.
Spin Height
Defines height size of Spin button in Dispaly or ComboBox objects.
Min. Value
This edit box is used for specifying the minimum value which the Display variable can obtain when
this display is being written in.
When the variable linked to the display has its "Enable Scaling" property enabled, the
minimum value used will be the one set in the variable's "Scale Min. Value" property.
The display's "Minimum Value" property or the variable's "Scale Min."
property will not be considered if a variable has been specified in the
display's "Min. Variable" property for managing the threshold dynamically.
Max. Value
This edit box is used for specifying the maximum value which the Display variable can obtain when
this display is being written in. When the associated variable is string type this value will be
considered as the maximum number of characters which can be inserted in the variable.
When the variable linked to the display has its "Enable Scaling" enabled, the maximum
value used will be the one set in the variable's "Scale Max. Value" property.
The display's "Maximum Value" property or the variable's "Scale Max."
property will not be considered if a variable has been specified in the
display's "Max. Variable" property for managing the threshold dynamically.
Error String
This edit box can be used for inserting a text string which will displayed in a MsgBox each time an
attempt is made to set a value not within the preset limits. The minimum and maximum limits
allowed can also be displayed by using the "%f" syntax. An example string is shown below:
300
D R A W S
A N D
O B J E C T S
When using the "%f" parameter, the value will display in floating comma with a fixed decimal figure.
When using the"%g" parameter, the value will be formatted based on the display format. For
example, if an integer variable is used with a "x" display format, an eventual 100 value will be
displayed as follows:
%f = 100,000000
%g = 100
Spin Step
In this edit box the increment or decrement value can be entered to be applied to the variable by
using the spin buttons.
Eng. Unit
A text to identify the Display variable's engineering unit to be represented is entered in this edit box.
Format Value
The associated Display variable's numeric format to be displayed is selected through this box.
The type of formats available are only those listed in the "Data Formats" section found in the
paragraph headed "Predefined Movicon Formats".
In cases where a Basic expression is used as the result to be
displayed, , it must be set in the "%f" format.
When integer type variables link to the display with a format for showing decimals, the minimum,
maximum limits and the spin step do not keep to the format set in the display and will always work
on the variable's total value. For example, for a "x.x" format and a maximum limit of "100", it will be
possible to edit a maximum value equal to "100" in the variable to be shown on display with a "10.0"
maximum.
In cases where this property is not set (therefore left blank) the display will
inherit the format defined in the associated variable's "Default Format"
property.
In situations where the Display's "Value To Display" is the variable's TimeStamp (Date of last
update), the value format may be defined using the syntax described in the "Time Format"
paragraph where the date and time formats can be customized as pleased.
Border
The 'Border' is described in the paragraph on "Style Proprieties common to Drawings and
Controls".
301
M O V I C O N _ P R O G R A M M E R _ G U I D E
with the selected Item's text. Each time a line is selected the list's variable is updated with the
corresponding numeric value (the value is progressive, starting from 0 to indicate the first line) or
with the selected Item's text.
The List objects are available from the 'Special Objects' group in the "Object Window".
302
D R A W S
A N D
O B J E C T S
To change the Execution properties, select the object the mouse and use the Movicon 'Properties
Window'.
Variable ListBox
The name of the variable in which the numeric value or text corresponding to the selected Item is
entered in this box (or selected with the "..." browse button on the right). The variable can be either
numeric or string type. When the variable is numeric the selected item's index will be written in it,
starting from the "0" value. When the variable is string type the text corresponding to the selected
item will be written in it.
When the display variable is string type, the displayed text and the text
contained in the string will not change when a change is made to the list of
items associated to the object.
when the display variable is numeric type, the value associated to the
display variable will not change when a change is made to the list of items
associated to the object but the displayed text will obtain the new text
corresponding to the index contained in the display variable. However, if the
new list of items is inferior to the previous one and the index contained in
the display variable has value higher than the new number of items, the
display variable will keep the old index and the old text will remain shown in
the display.
Items ListBox
The texts which are to appear in the list are entered in this box. To insert more than one Item you
need to separate the texts with the pipe character "|" (i.e. Item1|Item2|Item3|etc.). As well as fixed
texts you can also insert String IDs which are presented in the "String Table". In this case you only
need to create a String ID and insert all the Item's texts in its internal which are to appear on the list
using the 'pipe' character ("|").
You can compile the List dynamically by using the object's appropriate Basic
functions.
303
M O V I C O N _ P R O G R A M M E R _ G U I D E
The Combo Box will display the Items during project processing, with the style and sizes setup
through the "Properties Window".
You can also insert new items with the Combo Box by using the appropriate edit boxes.
The managing and compilation of Combo Box objects can also be done through the component's
Basic Script functions (DisplyCmdTarget and ListBoxCmdTarget interface). For instance, if wishing to
retrieve a combo-box item list from a Button object ("ComboBox" is name associated to object), the
script code to insert in the Button would be:
Option Explicit
Dim objCombo As DrawCmdTarget
Dim objDisplay As DisplayEditCmdTarget
Dim objList As ListBoxCmdTarget
Dim sListItems As String
Public Sub Click()
Set objCombo = GetSynopticObject().GetSubObject("ComboBox")
Set objDisplay = objCombo.GetObjectInterface()
Set objList = objDisplay.GetComboListInterface
sListItems = objList.ListData
MsgBox("List items = " & objList.ListData,vbInformation,GetProjectTitle)
Set objDisplay = Nothing
Set objList = Nothing
Set objCombo = Nothing
End Sub
304
D R A W S
A N D
O B J E C T S
Border
The "Border" property is described in the paragraph headed "Style properties common to
Draws and Controls".
Sort Items
The "Sort Items" property is described in the paragraph headed "Listbox Style Properties".
Invert Selection
When enabled, the property will open the combo-box displayed list upwards instead of downwards.
This will allow the object to be positioned near the screen's bottom border so that when the list is
opened, it will open upwards and not downwards thus out of view.
305
M O V I C O N _ P R O G R A M M E R _ G U I D E
The particularity of these objects is that they represent, in scale, the symbols and components which
are contained in the Screens they are associated to while conserving any animation characteristics.
This powerful feature allows you to realize, for example, the general layout of the project, without
having to redraw absolutely anything, by using the ready-to-use Screens.
This particular object, which reproduces a screen inside another screen, can receive its own
configuration and animation properties just like all the other vectorial components, which remarkably
enhance its potentiality and flexibility.
The TAB Group objects are available from the "Special Objects" group found in the "Objects
Window".
The tags of the "TAB Group" object adapt to the length and height of the
text starting from the top when there isn't enough space horizontally.
The object's tabs are headed with the names of the associated screens. To custom these texts you
will need to insert a String ID in the String Table with the name of the screen to be displayed. In this
way the text will automatically be replaced with the string contents. When screens are in resource
groups you will need to specify the group name as well:
ID = Group1\Synoptic1
the tab group cannot be used for displaying the 'Alarm window' or the
'Alarm Banner' from child projects. Any attempts to do so will result with an
empty 'Alarm window' or the 'Alarm Banner'.
306
The TAB Group object keeps all loaded screens within its internal memory and therefore all
the variables contained in these screens and exchanged with the field will always remain in
use independently from the screen displayed by the object. This function serves for quick
screen navigation and no option exists for Movicon to discharge memory when passing from
one screen to another
The screens displayed by the TAB Group object are not completely initialized. As a result the
screen basic interfaces do not initialize. Therefore, none of the screen VBA events can be
used, including variable notifications. As a consequence, functions such as the
"GetSynopticObject" return the screen object which contains the TAB Group object and not
D R A W S
A N D
O B J E C T S
the screen displayed by the object. Events relating to objects contained in Embedded Screens
are however active and managed.
Screen Local variables displayed by te TAB Group are created in the context of the Screen
that contains the TAB Group object.
Screen IL logic displayed by the TAB Group and IL logic of the objects it contains is executed
correctly.
the completed size is therefore 16x48 pixels. The end result will look like this on the TAB Group
object:
307
M O V I C O N _ P R O G R A M M E R _ G U I D E
When the Alarm Window is inserted into the Screen it will appear with default settings. After having
inserted the Alarm Window it can be sized as pleased by dragging its borders with the mouse.
A number of Alarm Windows can be inserted into the project, i.e. in
more Screens, as required.
In the Alarm Window alarms supporting Reset and Ack have to be acknowledged and reset to
disappear from the window, and alarms not supporting the Reset and Ack, and therefore result as
simple Messages, appear and disappear automatically in function with the ON/OFF status of the
alarm itself.
Managing multi-row texts in the Alarm Window
If the length of an alarm text, defined by the Alarm threshold name or the threshold object's "Alarm
Text" property, exceeds the width of the Alarm Window's length "Alarm Description" column, it can
be viewed in full by double-clicking on the alarm's row displayed in the Alarm Window. In this way
the test will display in the row directly underneath the one with the alarm normally reserved for
Threshold Help text. This behaviour is only valid if no Help text has been set, otherwise this row will
give priority the Threshold's Help text.
308
D R A W S
A N D
O B J E C T S
By using the "Alarm Banner Window" you will be able to view the alarms one at time by scrolling
through them automatically or manually.
Only the alarm text, its date and time of activation (Alarm ON) are displayed in the "Alarm Banner".
Other information such as date and time or acknowledgement, off date and time, etc. cannot be
viewed. In addition, this object is only used for viewing information and does not consent to
executing commands such at alarm acknowledgement or reset, neither does it allow comments to
be inserted. Unlike the "alarm Window", this object cannot be displayed with any command buttons.
The purpose of this "Alarm Banner Window" is strictly to scroll alarms on one line only. However
the following functionalities can be configured for this object:
Insert an "Alarm Banner" on screen, this will appear with the default settings. After having inserted
the window you can size it as pleases by dragging its borders with the mouse. The alarms which will
appear in this window are those that support both Acknowledgement and Reset, which must
therefore be acknowledged and reset in order to disappear, and those that do not need
acknowledging or resetting being simple Messages which appear and disappear automatically in
function with the alarm's ON/OFF status. In cases where alarms needing to be acknowledged and
reset are displayed, you should use an "Alarm Window" to invoke these commands or you can insert
two buttons on the screen separate from the Alarm Banner to manage the "Ack All" and "Reset All"
command (Command List -> Alarm).
Condition
309
M O V I C O N _ P R O G R A M M E R _ G U I D E
Title
Name
Variable
Name
Title/Caption
Time ON
The 'Time ON' column reports the date and time of alarm occurrence. The time will always be that of
operating system's and can be displayed with the formation specified in the "Time Format"
property from the 'Alarm Window Style Properties'. Any Clients connected to the Server will
display the time in their local format.
Time ACK
The 'Time ACK' column reports the date and time of the alarm's acknowledgement. The time will
always be that of the operating system's local time and can be displayed with the formation specified
in the "Time Format" property from the 'Alarm Window Style Properties'. Any Clients
connected to the Server will display the time in their local format.
Time OFF
The 'Time OFF' column reports the date and time of the alarm's deactivation. The time will always be
that of the operating system's local time and can be displayed with the formation specified in the
"Time Format" property from the 'Alarm Window Style Properties'. Any Clients connected to
the Server will display the time in their local format.
Time RESET
The 'Time RESET' column reports the date and time of the alarm's reset. The time will always be that
of the operating system's local time and can be displayed with the formation specified in the "Time
Format" property from the 'Alarm Window Style Properties'. Any Clients connected to the
Server will display the time in their local format.
Total Time ON
the "Total Time ON" column displays the total time in which the alarm remained active from the
moment in which it was initialized. The "Total Time ON" value is set in days, hours, minutes and
seconds for default:
D,H:M:S
where: D = days, H = hours, M = minutes, S = seconds
You can however customize how the value is to be displayed by specifying the desired format in the
Alarms Window "Duration Format" property. The formats may include the following codes:
%D = Days
%H = Hours
%M = Minutes
%S = Seconds
310
D R A W S
A N D
O B J E C T S
Duration
The 'Duration' Column reports the duration of the alarm occurrence. This value indicates the amount
of time passed between the alarm's last "ALARM ON" and "ALARM OFF" events and is written only in
the "ALARM OFF" event. The "Duration" value is shown with the day, hour, minute and seconds
format for default:
D,H:M:S
where: D = days, H = hours, M = minutes, S = seconds
You can of course customize how this value is shown by specifying the one desired in the Alarms
Window's "Duration Format" field. Formats may include the following codes:
%D = Days
%H = Hours
%M = Minutes
%S = Seconds
For example if you insert this format string:
%H:%M:%S
in the Alarm window, the total duration value will display for the current day (i.e. "12:23:45").
Severity
The 'Severity' column reports the alarm priorities. This value should have been previously inserted in
the "Severity" property from the 'Alarm Threshold Execution Properties'.
Condition
The 'Condition' column reports the alarm's current condition. The options are:
311
M O V I C O N _ P R O G R A M M E R _ G U I D E
In the 'Field Choice' window are listed available fields which have not yet been inserted into the
Alarm Window. To move a field from 'Field Choice' window to the Alarm Window simply select it with
the mouse and drag it to the position desired in the Alarm Window. Please bare in mind that the
field can only be released at the beginning or the end of a already positioned field, and two red
arrows should appear:
To move a field from the Alarm Window to the 'Field Choice' window, simply select it with the mouse
and drag it to the 'Field Choice' window.
When the window is set with the "Show Control Wnd" option during
Runtime phase the columns can then be dragged out of the window and
deleted. However the initial configuration must be restored by using the
"RecalcLayout" basic script method from the AlarmWndCmdTarget
interface or when the page is reloaded.
312
D R A W S
1.
2.
A N D
O B J E C T S
Associate a "htm" file to the variable which generates the alarm. This setting must e done in
the "Html File" property from the "Variable Options Properties" group. In order to avoid
absolute file path problems if would be advisable to insert the "htm" files into the project's
resource folder.
Associate a help "chm" file format to the project, and create a topic referring to the alarm/s.
Then insert the topics in the chm file's index and give them the same name of the varialbe
associated to the alarm. For instance, if the "Alarm001' has been set with the "Alarm_1"
variable associated to it, the topic will be inserted into the file index in the name of
"Allarme_1"
small
medium
large
313
M O V I C O N _ P R O G R A M M E R _ G U I D E
Clickable
The 'Clickable' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Auto Layout
The 'Auto Layout' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Show Control Wnd
The 'Show Control Wnd' property is described in the paragraph on "Style Proprieties common
to Drawings and Controls".
Show Preview
This property allows you to activate the help to show for default for each alarm row. Otherwise the
help will only show when the alarm row is double clicked on. This only works for those alarms which
have a help string.
Ack Sel Button
This option enables the command button for acknowledging the alarms selected in the Alarm
Window. One or more alarms have to selected in order to carry out this action in Runtime.
This button is made active only when an alarm is selected. When no alarm
has been selected, this button will result disabled.
Ack All Button
This option enables the command button for acknowledging all the alarms existing in the Alarm
Window, without having to select them all first.
When an Alarm Window from a Network Client project is connect to a
Network Server, the "Ack All" command sends a acknowledge command to
the Server for all alarms displayed in the Client window. In this way, if a
filter has been applied to the Client's window area, only the alarms that
belong to that area will be acknowledged.
Reset Sel Button
This option enables the command button for resetting the alarms selected in the Alarm Window. One
or more alarms, previously acknowledged with the 'Ack sel' or 'Ack All' button, have to selected in
order for this to work in Runtime.
This button is made active only when an alarm is selected. When no alarm
has been selected, this button will result disabled.
Reset All Button
This option enables the command button for resetting all the alarms existing in the Alarm Window,
without having to select them first and only if previously acknowledged with the 'Ack Sel' or 'Ack All'
button.
When an Alarm Window from a Network Client project is connect to a
Network Server, the "Reset All" command sends a reset command to the
Server for all alarms displayed in the Client window. In this way, if a filter
has been applied to the Client's window area, only the alarms that belong
to that area will be reset.
Toggle Sound Button
This option makes the command button available for activating or deactivating the acoustic sounds
associated to the unacknowledged alarm priorities. This button activated when pressed down and is
retentive. Therefore user can see whether the acoustic sound has been activated or not by looking
at the button's status graphically on screen (pressed or released). The button status can also be
retentive so its settings will be retained when closing and reopening the project. The button's status
is directly linked to the corresponding system "AlarmSoundState" variable. Therefore it is also
possible to manage this variable with IL Logic, VBA or using a Variable command type (i.e. with the
'Toggle' action at 1) for enabling or disabling the alarm sounds. Changing the status on one will
automatically change the status of there other and vice-versa. (For further information on managing
alarm sounds relating to user levels please refer to the section on "Alarms Sound Management")
314
D R A W S
A N D
O B J E C T S
32 bit Operating System: beep is executed for default using the PC buzzer. In this case
the PC's audio card is not involved.
64 bit Operating System: an operating system function executes a system sound to
reproduce beep for default. This sound is reproduced using the PC's audio card, which
should be enabled and in working condition, managed by the operating system and is not
retrievable as a ".wav" file. In addition this sound is at low volumn and hard of hearing.
However, a custom ".wav" file can be used instead of the default beep. In this case the following
two Windows registry keys must be set:
UsePCSpeaker: this value is inserted in the Windows registry set at the "0" value to execute
a ".wav" file to replace the beep. The name of the ".wav" file must be specified in the
"AlarmSound" key
AlarmSound: the name of the ".wav" file, which is to be executed instead of the beem when
the "UsePCSpeaker" key is set at "0", is inserted in this value. The ".wav" file must then be
copied to the Movicon installation folder.
Help Button
This selection provides the command button for opening the help file of the alarm selected. The
alarm's help file is executed as explained in the section on "Alarm Help in the Alarms Window".
This button is made active only when an alarm is selected. When no alarm
is selected this button results disabled.
The Help Button is not enabled in Client (or WebClient) project
Alarm Windows, but on in Server projects. The alarm Help is
managed by the Alarm Window only for local project alarms and not
for those alarms retrieved from Network Server projects.
Get History Button
This selection makes the command button available for displaying the selected alarm's history, being
all of the "Alarms Historical", showing all of the status transactions which verified while the alarm
was working.
This button is only activated when an alarm is selected. This button will
remain disabled when no alarm has been selected.
The alarm's history can be retrieved by using this button or by pressing "Shift + Doppio Click" on the
alarm or by selecting the alarm and pressing the "G" key. This functionality is also supported by the
Alarm Window when connected to a Network Server project.
315
M O V I C O N _ P R O G R A M M E R _ G U I D E
Comment Button
This option makes the command button available for entering a comment for the alarm selected in
the window. This button is only gets enabled when one or more alarms are selected. A dialog
window will open when pressing this button where you can set a comment to associate a comment
to the selected alarm and which will be persistent in the retentive file. This comment will be inserted
in all the alarms selected in a multi-alarm selection. The window used for inserting the comment
has an "OK" button for confirming the text entered (Enter key can be used as well), a "Cancel"
button to ignore the text just entered (Exit key also does the same job) and a "Pad" button to open a
alphanumeric pad for editing. Alarm comments can be accessed through the "LastComment " basic
script function.
316
D R A W S
A N D
O B J E C T S
317
M O V I C O N _ P R O G R A M M E R _ G U I D E
Searches using square brackets are not case-sensitive therefore you will
need to always insert upper-case chars even when chars to be searched
for are in lower-case.
Alarm Severity Filter
A filter can be entered in this box for displaying the alarms based on their priorities. The value
inserted must be a severity value (value "1" indicates the lowest severity) you wish to use for
applying the filter. Once the severity value has been set you will need to also set the "Alarm Severity
Filter Condition" with the condition type with which to apply the filter. Leaving this value at zero
(default value), no filters will be applied based on the alarms' severities.
The filter by severity is also supported in cases where the "alarms
Window" is used for retrieving alarms from a Network Server Project
(therefore both in Networking and WebClient).
Alarm Severity Filter Condition
This property consents you to set the condition to be used by the alarm filter based on severity.
When the " Alarm Severity Filter" is left at "0" value, this setting will be ignored. The options are:
equal: alarms with severity equal to the one set in the "Alarm Severity Filter" property will
be displayed only
minor-equal: alarms with minor or equal severities set in their "Alarm Severity Filter"
properties will only be displayed
major-equal: alarms with major or equal severities set in their "Alarm Severity Filter"
properties will only be displayed
Alarm Mask Filter
A filter based on the status of the alarms to be displayed in the window can be set in this property.
Click on the '...' button on the far right of the property to open the following settings window:
Alarm ON: active alarms which have not yet been acknowledged will be displayed
Alarm ACK: active alarms which have been acknowledged but not yet reset will be displayed
Alarm OFF ACK: inactive alarms which have been acknowledged but not reset will be
displayed
Alarm OFF: inactive alarms which have been either acknowledged or not acknowledged but
not yet reset will be displayed
NO Alarm: inactive alarms which have already been acknowledged and reset will be
displayed
318
D R A W S
A N D
O B J E C T S
319
M O V I C O N _ P R O G R A M M E R _ G U I D E
320
D R A W S
A N D
O B J E C T S
The available fields which have not yet been inserted into the Log Window will be listed in the 'Field
Choice' window. To move a field from the 'Field Choice' window to the Log Window just select the
field with the mouse and drag it to the position desired in the Log Window. Note that the field can
only be released at the beginning or end of an already positioned field, and that two red arrows
should appear:
To move a field from the Log Window to the 'Field Choice' window just select the field with the
mouse and drag it into the 'Field Choice' window.
When setting the window with the "Show Control Wnd" option during the
Runtime you will be able to drag the columns out of the window where
they will be deleted. You can, however, restore the initial configuration by
using
the
"RecalcLayout"
basic
script
method
from
the
HisLogWndCmdTarget interface or when the page is reloaded.
321
M O V I C O N _ P R O G R A M M E R _ G U I D E
TimeCol
This fields reports the date and time of the recording in GMT (Greenwich Mean Time). The GMT is
used to calculate the time in the rest of the world. The time zones are calculated by starting from
Greenwich 0.00 hrs. Italy is "+1" hour ahead in respect to the GMT and "+2" hours at certain times
of the year when the legal hour is put into force.
LocalCol
This field report the date and time of the recording taking the local time as reference.
MSecCol
This field reports the milliseconds relating to the recording's time.
UserCol
The name of the user logged in the project will be recorded in this field only when the event
recorded is prompted by that user (e.g. by means of using a button, etc.).
EventCol
This field reports the event type which identifies the recording. The event types changed according
to the table being consulted. The values may be:
Events
Event
Num.
Table
Description
System
3006
SysMsgs
Trace
3008
SysMsgs
Driver
3005
Drivers
ALARM
ON
(*)
Alarms
ALARM
ACK
(*)
Alarms
Event recorded
acknowledged
when
the
alarm
is
ALARM
OFF
(*)
Alarms
Event recorded
deactivated
when
the
alarm
is
ALARM
RESET
(*)
Alarms
The Variable 'VAR00001' (User '') has changed by ''. Previous value '7'. Actual Value '8'. Changing
value '8'
DescCol
In Alarm Tables, this field reports the name of the alarm threshold intervention and the variable
associated to the alarm.
The operator's comment, entered with the appropriate window, will be saved in the SysMsgs table
when the Variable Trace function and the "Add Msg in SysLog" property is enabled.
322
D R A W S
A N D
O B J E C T S
CommCol
In Alarm Tables, this field reports the alarm duration in text format.
The variable's description is saved in the SysMsgs table when the Variable Trace function and the
"Add Msg in SysLog" property has been enabled.
DurCol
In the Alarm Tables, this field reports the alarm duration in numeric format (seconds).
UniID
This field shows the alarm's unique ID in the Alarms Table. This value is not shown in the "Historical
Log Window", but is needed for managing the displaying of the "Alarms Historical" in the "Alarms
Window" and in the "Historical Log Window".
TraID
This field shows the alarm's transaction ID in the Alarms table. This value is not displayed in the
"Historical Log Window", but is needed for managing the displaying of the "Alarms Historical" in the
"Alarms Window" and in the "Historical Log Window".
Refresh Button
The 'Refresh Button' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
323
M O V I C O N _ P R O G R A M M E R _ G U I D E
Filter Button
The 'Filter Button' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Print Button
The 'Print Button' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Report File
The "Report File" property is described in the "Style Proprieties" paragraph on Drawings and
Controls.
Edit Report File
The "Edit Report File" property is described in the "Style Proprieties" paragraph on Drawings and
Controls.
Button Size
The 'Button Size' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Align Buttons
The 'Align Buttons' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Refresh Button Text
The 'Refresh Button Text' property is described in the paragraph on "Style Proprieties
common to Drawings and Controls".
Filter Button Text
The 'Filter Button Text' property is described in the paragraph on "Style Proprieties common
to Drawings and Controls".
Print Button Text
The 'Print Button Text' property is described in the paragraph on "Style Proprieties common
to Drawings and Controls".
Text Column Name
The text which will appear as the name of the "Event Text" column is entered here. The default
text will be used if this field is left empty.
Time Column Name
The text which will appear as the "Event Time" column's name is entered in this edit box. The
default text will be used when this field is left empty.
User Column Name
The text which will appear as the "User" column's name is entered in this edit box. The default text
will be used when this field is left empty.
Event Column Name
The text which is to appear as the name of the "Event Id" column is entered here. The default text
will be used when this field is left empty.
Description Column Name
The text which is to appear as the name of the "Description" column is entered here. The default
text will be used when this field is left empty.
Duration Column Name
The text which is to appear as the name of the "Duration" column is entered here. The default text
will be used when this field is left empty.
Event Num. Column Name
The text which is to appear as the name of the "Event Num" column is entered here. The default
text will be used when this field is left empty.
Comment Column Name
The text which is to appear as the name of the "Comment" column is entered here. The default
text will be used when this field is left empty.
324
D R A W S
A N D
O B J E C T S
Time Format
This property is used for customizing the Log window's "Event Time" column format. For further
information on format types please see the section on "Time Format" described in the
paragraph on Drawing and Control "Stile Properties" .
Duration Format
This property is used for customizing the Log window's "Duration" column format. his properTramite
questa propriet possibile personalizzare il formato della colonna "Durata" della finestra. For
further information on format types please see the section on "Time Format" described in the
paragraph on Drawing and Control "Stile Properties" .
Include milliseconds
The 'Include milliseconds' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
325
M O V I C O N _ P R O G R A M M E R _ G U I D E
When applying more than one filter at the same time you have to put
"AND" between each one in the extraction query, then the conditions will
be added up together.
The dialog window's character font and size can be customized by using
the appropriate registry keys:
DBFilterFont
DBFilterFontSize
Any modifications made to the font or its size will change the size of the
dialog window.
Sort by:
This selection is used for putting data into order according to the DataBase column chosen. The data
order can be done by simply clicking on the column desired in the Historical Log Window, but only a
few of the columns in the database are actually displayed. Therefore, if you want a 'sort by' based
on the columns not displayed, you will have to use the filter window.
For further information on fields recorded in the DataBase please refer to the section on "DataBase
Fields".
User:
This entry field is used for specifying the name of the user who wants to execute the filter. By
entering the user's name, only data recorded during their log on will be extracted.
The text to be entered in this field is not the "Name" of the user, but their
"Description er Electronic Signature".
From Date:
The date with which the extractions are to start from is entered here.
To Date:
The date with which the extractions are to finish is entered here.
Event Type:
The selection is used for setting the event type the data must be extracted from. The items in the
list may not have any meaning in certain cases. This depends on how the "Event Type" property
from the Historical Log window has been set.
For further information on the event types available, please refer to the section on "DataBase
Fields".
Severity Condition:
This field is used for setting a compare condition for the severity of the alarms. This, for example,
will ensure that only alarms with a specific severity are selected. This setting has meaning only
when a severity value has been entered in the "Severity" field.
326
D R A W S
A N D
O B J E C T S
Severity:
This field is used for entering the severity value to used as a reference for extracting data. This
setting only has meaning when a value different from "none" has been entered in the "Severity
Condition" field.
327
M O V I C O N _ P R O G R A M M E R _ G U I D E
The available fields which have not yet been inserted into the DataLogger Window will be listed in
the 'Field Choice' window. To move a field from the 'Field Choice' window to the DataLogger Window
just select the field with the mouse and drag it to the position desired in the DataLogger Window.
Note that the field can only be released at the beginning or end of an already positioned field, and
that two red arrows should appear:
To move a field from the DataLogger Window to the 'Field Choice' window just select the
field with the mouse and drag it into the 'Field Choice' window.
When the window has been set with the "Show Control Wnd" option, the
columns can be dragged out of the window and deleted during Runtime
mode. However, the initial configuration can be restored by using the
"RecalcLayout" basic script method from the DLRWndCmdTarget interface
when the page is reloaded.
328
D R A W S
A N D
O B J E C T S
Border
The 'Border' property is described in the paragraph on "Style Proprieties common to Drawings and
Controls".
Clickable
The 'Clickable' property is described in the paragraph on "Style Proprieties common to Drawings and
Controls".
Auto Layout
The 'Auto Layout' property is described in the paragraph on "Style Proprieties common to Drawings
and Controls".
Show Control Wnd
The 'Show Control Wnd' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Refresh Button
The 'Refresh Button' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Filter Button
The 'Filter Button' property is described in the paragraph on "Style Proprieties common to Drawings
and Controls".
Print Button
The 'Print Button' property is described in the paragraph on "Style Proprieties common to Drawings
and Controls".
Button Size
The 'Button Size' property is described in the paragraph on "Style Proprieties common to Drawings
and Controls".
Align Buttons
The 'Align Buttons' property is described in the paragraph on "Style Proprieties common to Drawings
and Controls".
Refresh Button Text
The 'Refresh Button Text' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Filter Button Text
The 'Filter Button Text' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Print Button Text
The 'Print Button Text' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Time Column Name
The text which will appear as the "Event Time" column's name is entered in this edit box. The default
text will be used when this field is left empty.
User Column Name
The text which will appear as the "User" column's name is entered in this edit box. The default text
will be used when this field is left empty.
Reason Column Name
The text which will appear as the "Action" column's name is entered in this edit box. The default text
will be used when this field is left empty.
Include milliseconds
The 'Include milliseconds' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
329
M O V I C O N _ P R O G R A M M E R _ G U I D E
330
D R A W S
A N D
O B J E C T S
When applying more than one filter at the same time you have to put
"AND" between each one in the extraction query, then the conditions will
be added up together.
You can customize the font and size of the Dialog window's characters by
using the right registry key:
DBFilterFont
DBFilterFontSize
The size of the dialog window will also change when the font or its size is
modified.
Sort by:
This selection is used for putting data into order according to the DataBase column chosen. The data
order can be done by simply clicking on the column desired in the DataLogger Window.
User:
This entry field is used for specifying the name of the user who wants to execute the filter. By doing
this, only the data recorded while the user was logged on will be extracted.
The text to be entered in this field is not the name of the user but their
"Description or Electronic Signature".
From Date:
This field is used for entering the date with which the data extraction is to start from.
To Date:
This field is used for entering the date which the data extraction is to end with.
331
M O V I C O N _ P R O G R A M M E R _ G U I D E
The "Recipe Manager Window" does not use any temporary variables associated in the Recipe field
properties ( "Recipe column General Properties" property). Data is read directly from the database
and loaded in the grid. When the recipe is activated the values currently display in the grid will be
transferred to the recipe variables.
When an IMDB recipe is associated to a "Recipe Manager Window"
object, it must be edited exclusively with this object and not with any
other command external to this object. If otherwise, a write lock will be
applied to the table and any following "Save", "Delete" object
commands will have no effect. In order to avoid this from happening an
alert is shown when associating a IMDB recipe and the "Save" and
"Delete" commands are automatically disabled when the IMDB recipe is
set with variables in its execution properties.
When the "Recipe Manager Window" connects to a Server, the "Save"
and "Delete" buttons will not be enabled if the recipe is IMDB type due
to the reasons mentioned above.
332
D R A W S
A N D
O B J E C T S
Server settings. Therefore, make sure that the two variables on Client side
and Server side are set with the same limits.
The fields that have not yet been inserted in the "Recipe Manager Window" are available for
selecting in the "Field Choice" window. This is done by selecting the chosen field from the 'Field
choice' window and dragging it with the mouse to the point desired in the "Recipe Manager
Window". The chosen field must be positioned at the beginning or the end of an already positioned
field. Two red arrows should show and disappear when the field is released properly in the position
desired:
To move a field from the "Recipe Manager Window" to the "Field Choice" window, just select and
drag it with the mouse.
When setting the window with the "Show control window" option, these
columns can be dragged out of the window for deleting during Runtime.
However, the initial configuration can be restored by using the basic
script method from the RecipeWndCmdTarget "RecalcLayout" interface or
when the page is reloaded.
333
M O V I C O N _ P R O G R A M M E R _ G U I D E
334
D R A W S
A N D
O B J E C T S
Border
The "Border" property is described in the paragraph dedicated to Drawings and Controls: "Recipe
Manager Window Style Properties" .
Clickable
The " Clickable" property is described in the paragraph dedicated to Drawings and Controls:
"Recipe Manager Window Style Properties" .
Auto Layout
The "Auto Layout" property is described in the paragraph dedicated to Drawings and Controls:
"Recipe Manager Window Style Properties" .
Show Control Window
The "Show Control Window" property is described in the paragraph dedicated to Drawings and
Controls: "Recipe Manager Window Style Properties" .
Prompt Pad
When enabled, this property allows the Numeric or Alphanumeric Pad when a recipe field value
needs modifying.
For further information please refer to the "Prompt Pad" property found in the object "Style
Properties" group.
Activate Button
When enabled, this property shows the button to execute the "Activate" command of the recipe in
the "Recipe Manager Window".
Read Button
When enabled, this property shows the button to execute the "Read" command of the recipe in the
"Recipe Manager Window".
Refresh Button
When enabled, this property shows the button to execute the "Refresh" command of the recipe in
the "Recipe Manager Window".
Save Button
When enabled, this property shows the button to execute the "Save"command of the recipe in the
"Recipe Manager Window".
Delete Button
When enabled, this property shows the button to execute the "Delete" command of the recipe in the
"Recipe Manager Window".
Copy Button
When enabled, this property shows the button to execute the "Copy" command of the recipe in the
"Recipe Manager Window".
Paste Button
When enabled, this property shows the button to execute the "Paste" command of the recipe in the
"Recipe Manager Window".
Import Button
When enabled, this property shows the button to execute the "Import" command of the recipe in the
"Recipe Manager Window".
Export Button
When enabled, this property shows the button to execute the "Export" command of the recipe in the
"Recipe Manager Window".
Print Button
When enabled this property displays the Print button in the "Recipe Manager" window for activating
the recipe "Print" command.
Import/Export Separator char
This property sets the separator for the ".csv" file when using the
commands. Movicon uses the ";" character for default.
Button Size
The "Button Size" property is described in the paragraph titled "Recipe Manager Window Style
Properties" from the Drawings and Controls section.
335
M O V I C O N _ P R O G R A M M E R _ G U I D E
Align Buttons
The "Align Buttons" property is described in the paragraph titled "Recipe Manager Window
Style Properties" from the Drawings and Controls section.
Activate Button Text
The text to appear in the "Activate Button" is entered in this edit box. This text can also be selected
from those defined in the String Table and therefore supports multilanguages. The default text will
be used, if this field is left blank.
Read Button Text
The text to appear in the "Read Button" is entered in this edit box. This text can also be selected
from those defined in the String Table and therefore supports multilanguages. The default text will
be used, if this field is left blank.
Refresh Button Text
The text to appear in the "Refresh Button" is entered in this edit box. This text can also be selected
from those defined in the String Table and supports multilanguages. The default text will be used, if
this field is left blank.
Save Button Text
The text to appear in the "Save Button" is entered in this edit box. This text can also be selected
from those defined in the String Table and therefore supports multilanguages. The default text will
be used, if this field is left blank.
Delete Button Text
The text to appear in the "Delete Button" is entered in this edit box. This text can also be selected
from those defined in the String Table and therefore supports multilanguages. The default text will
be used, if this field is left blank.
Copy Button Text
The text to appear in the "Copy Button" is entered in this edit box. This text can also be selected
from those defined in the String Table and therefore supports multilanguages. The default text will
be used, if this field is left blank.
Paste Button Text
The text to appear in the "Paste Button" is entered in this edit box. This text can also be selected
from those defined in the String Table and therefore supports multilanguages. The default text will
be used, if this field is left blank.
Import Button Text
The text to appear in the "Import Button" is entered in this edit box. This text can also be selected
from those defined in the String Table and therefore supports multilanguages. The default text will
be used, if this field is left blank.
Export Button Text
The text to appear in the "Export Button" is entered in this edit box. This text can also be selected
from those defined in the String Table and therefore supports multilanguages. The default text will
be used, if this field is left blank.
Print Button Text
The text to appear on the "Print Button" is entered in this edit box. The text can also be selected
from those defined in the String Table and therefore supports multilanguages. The default text will
be used if left blank.
Confirm Recipe Activation Message
This edit box is used for entering confirm message text which is to appear when invoking the
"Activate" command. When this command is invoked a dialog window will open immediately
showing the message defined in this property. When closing this dialog window with 'Yes', the
activation command will go ahead, otherwise activation will be annulled when clicking the 'No'
button. The text can also be selected from those defined in the String Table and therefore supports
multilanguages. If this field is left blank, the Activation command will be executed without requesting
confirmation beforehand.
336
D R A W S
A N D
O B J E C T S
Error String
The text to be displayed as the error string is inserted in this edit box. The error string will then
display using this text every time an incorrect interval is inserted by the user when editing a field.
This error message is therefore customizable as pleased allowing the use of Sting IDs as well.
When entering an empty string a 'beep' will sound every time an incorrect interval is entered instead
of error message. Minimum and maximum limits can also be displayed in the error string using the
"%d" notation (or "%f" in cases where numbers are used with floating points) instead of a value.
For instance a string like the one below can be inserted:
Warning! Enter a value from %d to %d.
In this case, when in runtime the first "%d" will be replaced with the minimum value and the second
will be replaced with the maximum value to result as:
Warning! Enter a value from 0 to 100.
Variable Column Name
This edit box is used for entering the text to be shown as the "Variable" column's name. This text
can also be selected from those defined in the String Table and therefore supports multilanguages.
The default text will be used, if this field is left blank.
Description Column Name
This edit box is used for entering the text to be shown as the "Description" column's name. This
text can also be selected from those defined in the String Table and therefore supports
multilanguages. The default text will be used, if this field is left blank.
Value Column Name
This edit box is used for entering the text to be shown as the "Value" column's name. This text can
also be selected from those defined in the String Table and therefore supports multilanguages. The
default text will be used, if this field is left blank.
Units Column Name
This edit box is used for entering the text to be shown as the "Units" column's name. This text can
also be selected from those defined in the String Table and therefore supports multilanguages. The
default text will be used, if this field is left blank.
Min Value Column Name
The text to appear as the "Min" column's name is inserted here. This text can also be selected from
those defined in the String Table and therefore supports multilanguages. The default text will be
used if this field is left empty.
337
M O V I C O N _ P R O G R A M M E R _ G U I D E
338
D R A W S
A N D
O B J E C T S
339
M O V I C O N _ P R O G R A M M E R _ G U I D E
Variable Group
The "Variable Group" shows the which Group the recorded variable belongs. This column will be
populated only when the variable's trace "Add Variable Group Column" property has been enabled.
Variable Description
The "Variable Description" column shows the description of the variable that was recorded. this
column will only be populated if the variable's "Add variable Group Column" property has been
enabled.
The available fields which have not yet been inserted into the TraceDB Window will be listed in the
'Field Choice' window. To move a field from the 'Field Choice' window to the TraceDB Window just
select the field with the mouse and drag it to the position desired in the TraceDB Window. Note that
the field can only be released at the beginning or end of an already positioned field, and that two red
arrows should appear:
To move a field from the TraceDB Window to the 'Field Choice' window just select the field with the
mouse and drag it into the 'Field Choice' window.
When the window is set with the "Show Control Wnd" option, the columns
can be dragged out of the window during Runtime where they will be
deleted. You can, however, restore the initial configuration by using the
"RecalcLayout" basic script method from the TraceDBWndCmdTarget
interface or when the page is reloaded.
340
D R A W S
A N D
O B J E C T S
Border
The 'Border' property is described in the paragraph on "Style Proprieties common to Drawings
and Controls".
Clickable
The 'Clickable' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Auto Layout
The 'Auto Layout' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Show Control Wnd
The 'Show Control Wnd' property is described in the paragraph on "Style Proprieties common
to Drawings and Controls".
Refresh Button
The 'Refresh Button' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Filter Button
The 'Filter Button' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Print Button
The 'Print Button' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Report File
This property's description can be found in the paragraph on Drawing and Control's "Style Objects
Proprieties".
Edit Report File
This property's description can be found in the paragraph on Drawing and Control's "Style Objects
Proprieties".
Button Size
The 'Button Size' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Align Buttons
The 'Align Buttons' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Refresh Button Text
The 'Refresh Button Text' property is described in the paragraph on "Style Proprieties
common to Drawings and Controls".
Filter Button Text
The 'Filter Button Text' property is described in the paragraph on "Style Proprieties common
to Drawings and Controls".
Print Button Text
The 'Print Button Text' property is described in the paragraph on "Style Proprieties common
to Drawings and Controls".
341
M O V I C O N _ P R O G R A M M E R _ G U I D E
342
D R A W S
A N D
O B J E C T S
Variable Table
The name of the trace table to be displayed is to be entered in this edit box. The '...' browse button
on the far right allows you to select one of the Real Time DB variables. This method is very handy
when the name of the trace table is the same as the variable's. In cases where the table name has
been customized through the "Table Name" settings from a variable's "Variable Trace Options
Property" Movicon will however be able to find the table's name by searching it in the properted of
the variable entered.
Caution! When a "TraceDB Window" is connected in Network to a
Server project, you will need to insert the name of the Trace
Database table in the Client's "TraceDB Window" > "Variable
Table" property, and not the name of the associated Variable, in
cases where the "Table Name" has been set with a different name
to that of the Variable's
Max. Rows
The highest number of rows that can be displayed in the TraceDB Window is entered in this edit box.
Network Server
See paragraph "Drawings and Controls common Execution Properties".
Network Backup Server
See paragraph "Drawings and Controls common Execution Properties".
When applying more than one filter at the same time you have to put
"AND" between each one in the extraction query, then the conditions will
be added up together.
You can customize the font and size of the dialog window characters by
using the appropriate registry keys:
DBFilterFont
DBFilterFontSize
The dialog window sizes will change when you modify the font and its size.
343
M O V I C O N _ P R O G R A M M E R _ G U I D E
Sort by:
This selection is used for putting data into order according to the DataBase column chosen. The data
order can be done by simply clicking on the column desired in the Trace Window.
User:
This entry field is used for specifying the name of the user who wants to execute the filter. By
entering the user's name, only data recorded during their log on will be extracted.
The text to be entered in this field is not the "Name" of the user, but their
"Description or Electronic Signature".
From Date:
The date with which the extractions are to start from is entered here.
To Date:
The date with which the extractions are to finish is entered here.
Time Table
Grid
Either one or both can be set for use in the designing phase. Keep into account that once a change
has been made in the "Grid" mode, you will not be able to change the entered data in the "Time
Table" mode.
Time Table
This type of display allows you to graphically view the times preset in the Scheduler selected using
the list-box at the top. In this way you can modify the times set by clicking the mouse on the box, as
described above, in 15 minute resolutions. Only activation times of commands can be changed and
not the variables associated to them. The "scheduler Window" displays as below:
344
D R A W S
A N D
O B J E C T S
Click on the day -> Set or delete all the 24 hours of that day of the week
Click on the hour -> Set or delete that hour in all the days of the week
Click on the hour and day intersection box - > Set or delete the 24 hours in all the days of
the week
One click on an hour box will set the time by a quarter of an hour precisely. An hour is made up of
four 15 minute resolutions. Each additional click will change the hour box according to the sequence
below:
Grid
This type of display allows you to view the planned times of the Scheduler selected using the list-box
at the top in the form of a grid. In this case each row in the grid represents an command activation
time. A maximum number of rows can be set using the object's 'Max. Nr. Grid Rows' property. Unlike
the 'Time Table' you can set times with minute resolutions by entering the exact times you wish in
hours and minutes for the activation command start and finish in the two respective 'Start'and 'End'
columns directly. Furthermore, you can select the variable, on which the command is to act on, using
the 'Tag' column (the command is the one set in selected Scheduler's 'Commands List' and should be
a "Variable" command type). You can also set the value in the "Value" column to activate in the
variable (ie. if a 'Set' command of a variable, the variable will be set to the value entered in this
field).
345
M O V I C O N _ P R O G R A M M E R _ G U I D E
when a variable has more than one command in the Scheduler's "Commands ON" list, only
the first command in the variable list will be executed, applied to the new variable selected in
the "Tag" column.
When there are other commands in the Scheduler's "Commands ON" list (in addition to those
in variables), they will not get executed. The variable action's set functionality replaces the
command list with only one command applied to the variable specified.
The variable action's set functionality is executed only in the Scheduler's "Commands ON"
command list, while the "Commands OFF" command list is normally executed with the
original planned settings.
Runtime Schedulers
By using the "Add Scheduler" and "Remove Scheduler" commands you can add or remove new
Scheduler objects during the runtime phase (only those Schedulers added in runtime can be
removed afterwards). In this case you will be able to the Variable's Set command specified in the
"Tag" column with relating value in the "Value" column. You will not be able to insert runtime
command list. When using the Runtime Schedulers you will not be able to manage "Commands OFF"
command lists either, therefore any command OFF should be managed by inserting another Set
command of the same variable with value set to "0".
Scheduler objects created in runtime are set to support holidays as well.
In cases in when the "Holidays" button is not visible in the "Scheduler
Window" object (because not enabled), the Runtime Schedulers are then
added with the option to manage holidays base on Sunday Hour Plan.
When editing the values relating to the variable, the minimum and
maximum value limits set in the variable's "Engineering Data" properties
are referred to ('Scale Min.' and 'Scale Max.').
If the "Add Scheduler Button" is enabled, the Scheduler Selection combox
will become editable in runtime mode as well.
The "Save" button is used for saving scheduler on ".shp" file in the
project's "Data" subfolder. However, this file is only saved if the two
"Start" and "End" fields have been inserted correctly with a valid format.
Security Options
Scheduler selections using the list-box and any of its modifications can be conditioned by the Access
Level settings predefined in the Scheduler. Based on these settings the Scheduler can be set to
display in the list-box, and therefore selected, modified or just viewed only. In addition to this, you
must consider the variables' "Write Access Level" properties of the Scheduler's set planned times
346
D R A W S
A N D
O B J E C T S
which can be modified. The settings in these properties will determine whether variables can be
made available in the "Tag" column for selecting or not.
If the "Always Visible" property is enabled, available for both the Schedulers and Variables ("Access
Level" propriety), the Access Level settings will then no longer be considered and the Scheduler and
the Variable in question will always be available for selecting within the "Scheduler Window".
Scheduler objects which are added in runtime are set with a read and write Access Level equal to the
access level of the user currently logged in at that moment. In this way the user will be able to edit
the scheduler, while other users that do not have equal access levels won't be able to. Schedulers
added without any users currently logged in, will be always editable due to the fact that their read
and write access levels will be set at "FFFF".
When the project's Password management is disabled you will need to
enable the "Always Visible" property for the Schedulers and Variables you
wish to manage in the "Scheduler Window".
347
M O V I C O N _ P R O G R A M M E R _ G U I D E
Commands On Click
See paragraph on Design and Control "Execution Properties".
Configuration File
See paragraph on Design and Control "Execution Properties".
Generate Unique File Name
See paragraph on Design and Control "Execution Properties".
Load
See paragraph on Design and Control "Execution Properties".
Save
See paragraph on Design and Control "Execution Properties".
Time Table: the scheduled times will be shown in a normal time table where the
activation/deactivation ranges can be set graphically with 15 minute resolutions.
Grid: the scheduled times will be shown in a Grid with the option to set
activation/deactivation ranges with minute resolutions. In this case you can select the
variable to be associated to the Scheduler's command.
Both: in this case the button will be made available in the "scheduler Window" to allow you
to switch back and forth from the "Grid" and "TimeTable" modes for maximum use of the
time resolutions in order to set more precise time ranges.
Planning in Time Table mode may be less accurate and restricted when selecting 'Both' in the list-box
if they work this way in runtime:
From "Time Table" display you can graphically view those areas containing the planned time ranges
in "Grid" mode. However, in "Time Table" mode you can only plan those weekdays that do not yet
have time ranges set in "Grid" mode. Furthermore, planning in "Time Table" mode may only be done
on one day of the week at a time, and only on the day selected in "Grid" mode before switching over
to "Time Table" mode. As an alternative you can begin planning in "Time Table" mode then switch
over to "Grid" mode to set more accurate time ranges for that day of the week.
Border
Please refer to "Style Proprieties common to Drawings and Controls" for this property's
description.
Prompt Pad
Enabling this property opens the Numeric or Alphanumeric Pad each time a scheduler field value
needs to be modified.
For further information please refer to the "Prompt Pad" property found in the object "Style
Properties" group.
Save Button
This selection provides the command button for saving any modifications made to the Hour Selector
data. Modifications must be made before this action can be executed in Runtime.
Cancel Button
This selection provides the command button for cancelling any data modifications done to the Hour
Selector. This has effect only on data modified after the last save.
348
D R A W S
A N D
O B J E C T S
Holidays Button
This selection renders the command button available to allow you switch over from the normal plan
to the holiday plan. For further information on "Holidays Planning" please see the appropriate section
in Scheduler Chapter.
Scheduler Selection ComboBox
When enabled, this property, allows you to add a combo-box at the top of the "Scheduler Window"
to use for selecting one of the project's schedulers. This list of Schedulers is populated with all those
that have been defined in the project and which can be displayed based on their Access Level
settings (see "Security Options" for further information), along with any others added in Runtime, if
the "Add Scheduler Button" is enabled, the Scheduler selection Combox becomes editable in runtime
mode as well.
When the combo-box is enabled for selecting scheduler to be displayed,
each time a user logs on, the displayed scheduler will be "unloaded" and
therefore will need to be selected again through the combo-box for
programming.
Add Scheduler Button
When enabled, this property allows you to add a button at the top of the "Scheduler Window" to use
for adding new Schedulers while in Runtime mode (also see "Runtime Schedulers"). This button only
appears when the "Scheduler Selection ComBox" property has been enabled as well.
Remove Scheduler Button
when enabled, this property allows you to add a button at the top of the "Scheduler Window" to use
for removing schedulers while in Runtime mode (also see "Runtime Schedulers"). This button only
appears when the "Scheduler Selection ComBox" property has been enabled as well.
Only Schedulers previously added while in Runtime mode can be
removed with the 'Remove' button. Schedulers defined in the project
design phase cannot be removed.
Show Value Column
When enabled, this property allows a column in Grid mode for selecting the "Set" value to be used in
the "Commands ON" of the selected Scheduler. You will then be able to set a different "Set" value
for each time frame set in the "Grid". The value set will then replace the one defined in the first
"Command on Variable" found in the selected Scheduler's "Commands ON" list. When no value is
set, all of the Scheduler's "Commands ON" list will be executed using the settings defined when
being planned. If the Scheduler's "Command on Condition ON" list does not contain a "command on
variable", there is no need to define a value in the "Grid" columns.
The inserted value will be replaced in the "command on variable's" "Value" field and then used based
on the "Action" type defined in the command (Set, Toggle, Increase, ecc.).
Show Variable (Tags) Column
When enabled, this property allows you to display a column, in Grid mode, for selecting the variable
to be used in the "Commands ON" of the selected Scheduler. You can then set a different variable
for each time frame set in the "Grid". The variable set will replace the one defined in the first
"command on variable" and found in the selected Scheduler's "Commands ON" list. In cases where
no variable has been set, all of the scheduler's "Commands ON" list will be executed using the
settings defined in its planning stage. If the Scheduler's "Command on Condition ON" list does not
contain a "command on variable", there is no need to select a variable in the "Grid" columns.
The list of Variables which can be selected will be populated with all those that have been defined in
the project and which can be displayed based on their Access Level settings (see "Security Options"
for further information).
If there are Array types on the variable list, they will be shown together
with all their elements. This will allow you to select any one of the
Array elements.
When the variables to be displayed on the list are structure type, you
will need to enable the Access Level of each Structure member in order
to display them.
Button Size
Please refer to "Style Proprieties common to Drawings and Controls" for this property's
description.
349
M O V I C O N _ P R O G R A M M E R _ G U I D E
Align Buttons
Please refer to "Style Proprieties common to Drawings and Controls" for this property's
description on.
Save Button Text
The text be displayed on the Save button is inserted in this edit box. The default text will be used
when left blank.
Cancel Button Text
The to be displayed on the Cancel button is inserted in this edit box. The default text will be used
when left blank.
Holidays Button Text
The to be displayed on the Holidays button is inserted in this edit box. The default text will be used
when left blank.
All Selection Text
The text to be displayed in the first top left cell in the window is inserted here. The default text will
be used when left blank.
Sunday Text
The text to be displayed in the 'Sunday' box is inserted here. The default text will be used when left
blank.
Monday Text
The text to be displayed in the 'Monday' box is inserted here. The default text will be used when
left blank.
Tuesday Text
The text to be displayed in the 'Tuesday' box is inserted here. The default text will be used when
left blank.
Wednesday Text
The text to be displayed in the 'Wednesday' box is inserted here. The default text will be used
when left blank.
Thursday Text
The text to be displayed in the 'Thursday' box is inserted here. The default text will be used when
left blank.
Friday Text
The text to be displayed in the 'Friday' box is inserted here. The default text will be used when left
blank.
Saturday Text
The text to be displayed in the 'Saturday' box is inserted here. The default text will be used when
left blank.
Grid Mode Button Text
The text you wish to appear on the "Grid Mode" button is entered in this editbox. The default text
will be used if left blank.
Add Scheduler Button Text
The text you wish to appear on the "Add Scheduler" button is entered in this editbox. The default
text will be used if left blank.
Remove Scheduler Button Text
The text you wish to appear on the "Remove Scheduler" button is entered in this editbox. The
default text will be used if left blank.
Start Time Column Text
The text you wish to appear in the first grid column is entered in this editbox, which is the one which
will show the command's start time. The default text will be used if left blank.
End Time Column Text
The text you wish to appear in the second grid column is entered in this editbox, which is the one
which will show the command's end time. The default text will be used if left blank.
350
D R A W S
A N D
O B J E C T S
351
M O V I C O N _ P R O G R A M M E R _ G U I D E
URL Definitions
In order to download images from the IP camera you will need to know which URL to set in the "IP
Camera Viewer". Each IP camera comes with its own syntax stated in its accompanying manual to
obtain the URL to be used and for configuring it as desired. Normally the IP camera can be
configured using an Internet Browser, by simply setting the camera's IP address. Therefore you will
need to get the URL to be used in order to only display images in html pages. The URL is the same
one which you will have to set in the Movicon IP Camera Viewer.
Examples of URLs for some video cameras you can find on the market today
Axis cameras and video servers:
http://<servername>/axis-cgi/jpg/image.cgi
StarDot cameras and video servers:
StarDot NetCam:
http://<servername>/netcam.jpg
StarDot Express 6 (video server)
http://<servername>/jpeg.cgi?<cameranumber>
http://<servername>/jpeg.cgi?3
PiXORD cameras:
http://<servername>/images<channel><resolution>
http://<servername>/images1sif
Panasonic cameras:
http://<servername>/SnapshotJPEG[?Resolution=<resolution>][&Quality=<quality>]
http://<servername>/SnapshotJPEG?Resolution=320x240&Quality=Standard
D-Link cameras:
http://<servername>/cgi-bin/video.jpg
gadget-spot.co.uk cameras:
352
D R A W S
A N D
O B J E C T S
http://<host>[:port]/Jpeg/CamImg.jpg
Trendnet - Model: TV-IP 110W/EU:
http://192.168.100.205/cgi/jpg/image.cgi
353
M O V I C O N _ P R O G R A M M E R _ G U I D E
Image: uses the HTTP protocol for reading the IP Camera's static images
Video - Motion JPEG: used the Motion JPEG video format. In order to use this mode you
will need to use a IP Camera that supports it.
For further information please refer to the section on "HTTP and Motion JPEG Protocol".
IP Camera Refresh time variable
The name of a numeric project variable can be inserted in this edit box (or selected using the "..."
browse button on the right). This will allow the refresh time in milliseconds to be changed in
runtime for the object to use for updating the IP camera images. If the value inserted in the variable
is equal to zero, the displayed images will freeze.
IP Camera Download Type Variable
This editbox is used for inserting (or selecting with the "..." browse buttons on the right) the name of
a numeric project variable. This will allow the IP Camera image download type to be changed in
runtime. The following values are accepted:
0 = Image
1 = Video - Motion JPEG
354
D R A W S
A N D
O B J E C T S
X/Y Trends
The trend can also be used for displaying the behaviour of a curve shown on an X and Y chart,
where the X axis is no longer associated to time but to the first pen on the list and the Y axis is
associated to the second pen on the list. This is done in such a way that the coordinates of the X and
355
M O V I C O N _ P R O G R A M M E R _ G U I D E
Y points are determined by the associated variables, and a trace line is generated by the trend for
each sampling which links the previous XY point to the current one. More XY curves can be displayed
in one-only trend when other pen couples are inserted.
minute range
hour range
day range
month range
year range
When this page is loaded for the first time, the object will show the date/time range set in the "Date
Range" priority, or if set with the hour or min. range the Data Analysis will load data for the actual
time in which the page is opened. The database can be scrolled back and forth for each prechosen
tiime range by using the "<<", "<", ">" and ">>" buttons, which change their roles according to the
chosen context. For example, when selecting to view data for the current month, the "<<" and
">>" buttons will scroll back and ahead one month at a time and the "<" e ">" will scroll back and
ahead one day at a time.
Selecting a date range with the (min.), (hour), (day), (week), (month) and (year) buttons situated
on the object's left side will prompt a requery by the database according to the actual data being
pointed to by the cursor positioned in the Data Analysis's Trend Area.
This should make analysing data easier when wanting to select certain ranges at a time out of a
whole years data range by simply pressing the desired button ('month', 'day', etc) in respect to the
cursor's position on the data to analysed without continuously using the zoom.
356
D R A W S
A N D
O B J E C T S
After having activated the Zoom command for Data Analysis object "<<",
"<", ">", ">>" button will result disabled. In order to reactivate them you
will have to re-select the time range to be displayed.
Multiplier Factor
This Data Analysis provides four buttons (on the first three button rows available) for scrolling data
from the database: "<<", "<", ">" and ">>". These buttons change meaning according to the time
range selected and the move unit measures will appear in the button's text between brackets. For
example, if you choose the minute time range, these texts will appear in the four buttons:
<<(min.)
<(sec.)
>(sec.)
>>(min.)
At this point, when clicking on the "<<(min.)" button, data from the minute previous to the current
minute in time will be loaded.
These buttons can be set with a time scroll range "Multiplier Factor". To enable the "Multiplier
Factor" just one of these buttons pressed down for a few seconds. The text within the button is
changed by increasing or deceasing the numeric value that represents the "Multiplier Factor" The
increasing "Multiplier Factor" is stopped by releasing the button. For example "<<(2 min.)", "<(2
sec.)" text, etc. indicates a "Multiplier Factor" equal to 2. The "Multiplier Factor" value is increased
by keeping the 'Next' data time range buttons (i.e. ">(sec.)" or ">>(min.)", while you need to keep
the "back" data range select buttons pressed to decrease (i.e. "<<(min.)" or "<(sec.)".
When inserting a "Multiplier Factor" the time range to be loaded will be multiplied by the factor. For
example, if choosing one minute as the time range and 5 as the "Multiplier Factor", the <<(5 min.)"
button will stop loading the previous minute but the value of 5 minutes before the current time.
Keep pressed either one of the two inner "<(sec.)" and ">(sec.)"buttons to increase or decrease
secs one unit at a time (increase/decrease by 1)and Keep pressed either one of the outer
"<<(min.)" and ">>(min.)" buttons to increase or decrease minutes by 10 units at a time
(increase/decrease by 10).
"Multiplier Factor" can be set a value range from 1 to 100.
It is also possible to modify or read the "Multiplier Factor" value from Basic Script code using the
"CurrentMultiplier" property from the "TrendCmdTarget" interface..
Moving the cursor around the chart
There are four button provided in the Data Analysis object that allow you to move the cursor
forwards and backwards ahead and back which keeping the displayed time range still. When using
these buttons the cursor will move between two chart points (being two values recorded on
database). These buttons are positioned above those used for selecting the time ranges and are:
|<<:First Point Button. Moves the cursor on the first point to the left of the chart for the
selected time range
<: Previous Point Button. Moves the cursor on the point (to the left) immediately before the
one currently selected
>: Next Point Button. Moves the cursor on the point (to the right) immediately after the one
currently selected
>>|: Last Point Button. Moves the cursor on to the last point to the Chart's right for the
selected time range.
When the cursor is not displayed the scroll buttons are disabled. For example, this happens when a
measure is activated (the "Measure" button).
When there are a great number of records display in the chart, it may not
be possible to move from one point to another using the buttons in order
to go from one record to the next consecutively due to the limit set in the
display resolution. To make sure to scroll all the points currently viewed
consecutively, you will need to enlarge the part of the curve desired or
select the data tightly displayed together.
The functions of the above indicated buttons can also be executed using certain keys from the
keyboard:
357
M O V I C O N _ P R O G R A M M E R _ G U I D E
"Home" Key: equivalent to the "|<<" button and moves the cursor to the first point on the
left of the chart for the time range selected.
"Shift + left or down arrow" Keys: equivalent to the "<" button and moves the cursor
onto the point immediately before (to the left) the one currently selected.
"Shift + right or up arrow" Keys: equivalent to the ">" button and moves the cursor
onto the point immediately after (to the right) the one currently selected.
"End" Key: equivalent to the ">>|" button and moves the cursor to the last point to the
right of the chart for the selected time range
Curve comparisons
This object also consents you to execute comparisons of historical data being analysed graphically,
by inserting a second curve for each pen using the last row of buttons on the right. The comparison
curves will display the same time ranges (minute hour,etc.) but relate to the previous period selected
using the appropriate comparison buttons. For instance, if you select the minute time range for the
period to be viewed (using the last row of buttons on the left), you will get the following results
based on the comparison buttons selected on the right:
"(min)" Selection Button: the minute time range is selected for viewing. By using the
scroll buttons you can then select the minute you want to view. For instance, if "31-01-2008
10:15" is the data and time selected, the time range displayed will be "10:15:00 - 10:15:59".
"None" Comparison Button: no comparison will be activated.
"(min.)" Comparison Button: the minute prior to the one selected will be displayed on
the comparison curve, therefore the "31-01-2008 10:14" minute.
("hour") Comparison Button: the same minute selected but relating to the previous hour
will be displayed on the comparison curve, therefore the "31-01-2008 09:15" minute.
"(day") Comparison Button: the same minute selected but relating to the previous day
will be displayed on the comparison curve, therefore the "30-01-2008 10:15" minute.
("Week") Comparison Button: the same minute selected but relating to the previous
week will be displayed on the comparison curve, therefore the "24-01-2008 10:15" minute.
("month") Comparison Button: the same minute selected but relating to the previous
month will be displayed on the comparison curve, therefore the "31-12-2007 10:15" minute.
When the month day selected is not in the previous month (ie. only a few months have a
31st day) the comparison curve will not display.
("year") Comparison Button: the same minute selected but relating to the previous year
will be displayed on the comparison curve, therefore the "31-01-2007 10:15" minute.
At this point, any differences between the two curves will be indicated by colouring in the area in
question between them and by positioning the mouse cursor in this area, two labels will show
reporting the two values and their date of recording. In this way you can confront one time range
with the same previous time range or of an hour, day or week ago etc. To activate the compare
function, as already mentioned, just click on one of the buttons from the "Compare Date Range
Buttons" group.
The time range comparison selected must be consistent. If not data can be found to compare with
this time range, the comparison curve will not display. For instance, when selecting the comparison
curve for displaying data from the previous month that however has no data, the comparison curve
will not display.
The above figure shows two curves, one displaying the selected minute range and the other
comparing. The areas between the curves is coloured with a different colour and when positioning
the cursor onto a sampling area, a label showing the corresponding values, recording date and time
will show automatically for both curves. This type of comparison is simple and very immediate.
358
D R A W S
A N D
O B J E C T S
By using the "Measure" command you can get the X and Y difference of two points of one curve or
of different curves (see the "Measure Button" property).
Furthermore, the Data Analysis consents to displaying only those values recorded by the Data Logger
which have "good" qualities (this needs you to activate a specific option in the Data Logger column's
"Add Quality" property).
Custom Data Filter
During the runtime mode you can select a custom time range to view (different from the selectable
time ranges using the appropriated buttons). This will allow you to display data from time ranges
which suit your needs better such as 10 minutes, 1 day and 6 hours. To customize the time ranges
simply click on the Data Analysis's "Time Area" to open the "Filter" window for setting the time
ranges you wish to display. The items available are:
From Date: represents the data extraction start date and time
To Date: represents the data extraction end date and time
From Date Compare: represents the data extraction date and time for the comparison
curve
To Date Compare: represents the data extraction end date and time for the comparison
curve
There are no controls on selecting time ranges to be viewed in respect to those of the comparison
curve. Therefore, make sure that you set the comparison curve time ranges to match those of the
normal curve's time ranges so that the filter can work correctly. This can be done by verifying these
conditions:
To Date - From Date = To Date Compare - From Date Compare
The main job of the Trend it not just recording data files. This is usually done by the Data Logger
(described in the appropriate section). The main job of the Trend is to represent data on a series of
graphics by using the vast customizable function possibilities to make data clearer for the operator to
understand.
The Trend can be used in recording data when it is desired to dispose data sampled by the object in
output on file, typically readable by Ms. Excel or by any non database application. The ".CVS" format
is used for data recorded in text format with separators which is interpreted by Excel and by many
other applications.
The Trend, when enabled to record, files sampled data in standard ".CSV"
format, but the recorded data is not automatically loaded into the Trend's
buffer when opened. You can, however, consult this data by loading the
saved file by using the appropriate Trend functions. The templates
presented in the "Symbols Library" are already equipped with the "import"
button in order for you to carry out this operation.
This type of recording is optional and must be enabled in the Trend object's configuration properties.
It is important to remember that when the Trend object is enabled to send sampled data in output
on file, this will happen only when the object is active in memory, meaning when the screen
containing it is displayed or has not been unloaded or destroyed with a change page.
Recording samples carried out by the Trend on ".CSV" file is executed by the
object only when this is active in memory. To keep the Trend constantly
active you need to make sure that the screen containing it does not get
destroyed or unloaded from memory when using the change page function
by checking the "Not Destroyable" option in the screen window's general
properties.
359
M O V I C O N _ P R O G R A M M E R _ G U I D E
The recording on file carried out by the Trend object is simply to be considered as an "output on file"
of sampled values, totally asynchronous and separate in respect to any Trend link to the Data
Logger. Any effective written data is performed through the settable cache memory so that the disk
is accessed only when required according to the type of sampling carried out.
If a file recorded with Excel is opened, the values recorded on file will use the following the data
sequence format:
The date and time values are recorded according the operating system' settings in the International
Settings item in the Control Panel.
The date separation character can be set in the Trend's configuration by selecting either Tab or
Comma to suit the type of application being used.
Trend Operability
The trend has two operating states, Start and Stop. These states are established in function with a
variable which has been appropriately set for this purpose and assigned through the Trend's
"Variables" properties.
When the Trend is set at Start, the data will be sampled and displayed as set in the execution
properties assigned to the Trend. The buffer of data managed by the Trend can be sized as pleased
and has a maximum capacity of 10,000 samplings.
When the Trend's status is switched to stop, the buffer's contents will be displayed. If the Trend is
associated with a Data Logger, the buffer's contents may be a result of a data extraction from the
database. Otherwise the buffer's contents will be the samplings carried out by the Trend in Start
status.
Remember that also during the Stop status the Trend will continue to do samplings, buffer and
record data.
The values in the buffer can be displayed by using the scroll commands which can be set in the
Trend's properties and can be associated to Movicon variables. This will enable the cursor to point to
data as specified in the operating configuration as desired and which will be described in further
detail in the Trend properties.
360
D R A W S
A N D
O B J E C T S
This rectangle represents the Zoom area and can be resized afterwards. When this area is resized
smaller than the initial rectangle size, it will appear darker in color highlighting the portion to zoom:
The Zoom command can be activated with a corresponding button made available for both the Trend
and Data Analysis objects by enabling the "Zoom Button" Style property or the "Z" key on the
keyboard. The Zoom button is also available for templates in the Symbol Library using the basic
script functions to activate the Zoom command.
The Trend object must be put into Pause mode before zooming it.
Once the Zoom mode has been activated, the Zoom area can be redefined using the different ways
described below:
Using the mouse to redefine a new Zoom area. This is done by clicking and keeping the right
mouse button pressed on a point in the chart to then dragging it towards the bottom-right to
resize new zoom area. Once the new desired zoom area size has been reached, release
mouse button to maintain it. If the SHIFT key is kept pressed during this operation, the area's
top and bottom limits will be reset to the maximum and minimum pen scale values. This is
used for zooming a portion of the chart vertically.
Moving Zoom area with mouse by clicking left button and keeping it pressed on area to move
it. The Zoom area will move together with the mouse.
361
M O V I C O N _ P R O G R A M M E R _ G U I D E
Using the keyboard direction arrow keys to move Zoom area. Zoom area will move according
to which direction arrow is being used.
Clicking on red ticks and move them with mouse to move Zoom area's four sides.
Using the four keyboard direction arrow keys with SHIFT key pressed down to resize Zoom
area by its length or width only.
Using mouse wheel to resize Zoom area's width and height at the same time. When turn
mouse wheel backwards or forwards to increase or decrease Zoom area in size. This function
is not supported in WebClient.
Using mouse wheel together with SHIFT key pressed down to resize zoom area width only.
By turning the mouse wheel backwards and forwards will increase or decease the zoom area
width.
When the desired Zoom area has been defined click within area to activate enlarge it. At this point
the Zoom area will expand enabling you to perform the following operations:
Redefine another Zoom area to enlarge curve further. This type of operation can be done
repeatedly until reaching the exact precision desired.
Cancel applied Zoom. This operation can be done by left mouse clicking on a point in the
chart and keep mouse button pressed to drag towards top-left. When releasing mouse
button the applied zoom will be canceled and the curve will return back to how it was initially
displayed.
Disable Zoom mode to analyse data. This can be done by clicking the "Zoom" button or
pressing the "Z" key which will in turn disable the Zoom leaving the curve enlarged. Upon
disabling the zoom the cursor will automatically reactivate letting you scroll the various curve
points to analyse as pleased.
After you have analysed data, press the "ESC" key to restore curve back to its initial unzoomed size.
In Window CE panels, that is Touch-Screen devices without keyboards, the "ESC"
key cannot be used for restoring the unzoomed curve. In this case, after having
terminated your Zoomed data analysis proceed as follows:
1.
2.
3.
The Symbol Library Templates do not have this problem as the Zoom button,
which uses basic script functions, also provides the possibility to exist Zoom
mode after having terminated data analysing.
The "TrendCmdTarget" basic script interface also provides some methods which return information
about the applied Zoom, such as the Zoom area's start/end date and time, minimum and maximum
scale values for pens in Zoom area, size of zoom area in pixels.
362
D R A W S
A N D
O B J E C T S
It is important to remember that unlike the Data Logger, the Default Query
cannot extract values but can execute the SQL commands on them (Update
or Insert). Extractions refer to the SQL "Select" commands managed from
the "Default Filter" and "Default Order by".
363
M O V I C O N _ P R O G R A M M E R _ G U I D E
Command Description
Executes the "All" button function to display all available data (*).
Executes the "min." button function to display data for one single minute (*).
Executes the "hour" button function to display data for one single hour (*).
Executes the "day" command function to display data for one single day (*).
Executes the "week" button function to display data for one single week (*).
Executes the "month" button function to display data for one single month (*).
Executes the "year" button function to display data for one single year (*).
CTRL+ALT+0
Executes the "none" button function so that no data range is selected for the comparison
curve (*).
Executes the "min." button function for the comparison curve to select the comparison data
for one single (*).
Executes the "hour" button function for the comparison curve to select the comparison data
for one single hour (*).
Executes the "day" button function for the comparison curve to select comparison data for
one single day (*).
Executes the "week" button function for the comparison curve to select comparison data for
one single week (*).
Executes the "month" button function for the comparison curve to select data comparison
data for one single month (*).
Executes the "year" button function for the comparison curve to select comparison data for
one single year (*).
Move the cursor within the graphic.
Note: the point values nearest the cursor's position are shown in the legend.
Can also be used together with Shift key for moving or resizing the Zoom area when
applied.
CTRL+ALT+1
CTRL+ALT+2
CTRL+ALT+3
CTRL+ALT+4
CTRL+ALT+5
CTRL+ALT+6
Left/Right or
Up/Down
Direction Arrows
PagUp
PagDown
S
P
M
Z
ESC
F2
364
D R A W S
A N D
O B J E C T S
2.
3.
4.
5.
6.
7.
Pen Configuration: By double-clicking the mouse on a curve, legend pen or pen scale, the
pen's configuration window will open (only if the pen has been set as editable in the design
mode) in order for you to modify its name and variable properties. Modifications will be saved
in the object's configuration file if predefined with one, otherwise they will be lost when the
screen is closed.
Curve Area: By double-clicking the mouse on the area where the pen curves are traced, it
will expand cutting off the parts showing the scales, legend and pens. The same command
will restore the trend to its initial situation. This command is NOT available when the project
is working in touch screen system or when the Trend/Data Analysis is in Zoom or data
Measure mode
Displaying Pens: a single click on the check-box at the side of the legend pen's name will
display or hide the curve of that pen. A CTRL+Click on this check-box will deselect all the
pens presented and make only those clicked on visible.
Scroll Trend: keeping the right mouse key pressed down will able you to vertically pan the
graphics (only in 'Stop' mode for Trends).
Scroll individual Pens: Pressing the "CTRL" key and the left mouse key will able you to
pan each individual curve vertically. This is done by clicking on the curve of interest or
clicking in the scale area of the pen desired.
Selecting a Pen: To select a pen to make the curve line thicker and highlight the pen in the
legend, just "CTRL+Click" on the curve or click on the pen's name in the legend.
Data filtering: just clicking on the "Date-Time" area of a Data Analysis object will cause a
"Filter" window to be loaded, allowing to set the time interval to show.
Double clicking the mouse on the name of the pen (or on the pen's line) will open the pen's
configuration window. This can also be done when double clicking on the pen's scale or curve. When
365
M O V I C O N _ P R O G R A M M E R _ G U I D E
a pen is set as "Not Visible" the pen's curve will no longer be displayed but the pen will remain on
the legend's list in order to be made visible later on.
In addition to this you will find a checkbox on the left side of the pen's name which you can use to
make the pen visible or invisible with a simple click, without having to revert to its configuration
window every time needed. By keeping the "CTRL" pressed down while clicking on the pen's
checkbox will de-select all the other pens except the one clicked on.
Date and time information belonging to the point selected along with pen minimum, maximum and
average value statistics will display on the right side of the pen's name in Data analysis objects. It
must be taken into consideration that the date and time column and the value column show
information on the point which is nearest to the cursor which may happen to be positioned between
two recording points. However, when moving the cursor within the legend area or when keeping the
mouse key pressed down on a specific point, a tooltip will appear at the bottom of the cursor
showing that point's date and time information including milliseconds. In this case the date and time
will effectively be those of the cursor and not of the nearest point. Therefore, the value shown by
the tooltip might be different to the one shown in the legend area.
366
D R A W S
A N D
O B J E C T S
367
M O V I C O N _ P R O G R A M M E R _ G U I D E
Trend Mode
This selection box is used for setting the Trends operating modality type:
Run-Pause: this sets the Trend's operating modality to work on command or on event, in
function with the state of the relating variable set in the "Variables" property group
Only Run: this sets the Trend's operating modality to work in "Run" only, therefore the
"Stop" (or Pause) analysis mode is not permitted. In this mode the Trend's values can
represent the values only dynamically
Only Pause: this sets the Trend's operating modality to work in "Pause" (or Stop), where it
is not permitted to display data sampled in real-time but only representations of values
loaded into the buffer by the query or the Basic Script commands
Edit Pens
When this command is activated a settings window of the "Pen Properties" assigned to the
Trend/Data Analysis will open.
Border
This check box is used to enable the border relating to the Trend/Data Analysis's area to be
displayed. This applies to the area displaying the curves only.
Raised Border
This check box is used to enable the border relating to the Trend/Data Analysis area, displaying the
curves only, to be displayed with a raised 3D effect instead of sunken.
Brush Style
This property allows you to select the brush style to apply to the background of the Trend/Data
Analysis's area displaying the curves only. The list shows various 'hatched' designs.
Color
This property allows you to select the background color to apply to the Trend/Data Analysis area
displaying the curves only.
For further information on selecting colors please refer to the paragraph headed "Color Selections".
368
D R A W S
A N D
O B J E C T S
369
M O V I C O N _ P R O G R A M M E R _ G U I D E
Zoom Button
This selection renders the Zoom command button available for zooming in and out of the Trend/Data
Analysis area. You can use the "Z" key to do the same thing as well.
The Zoom command works in the same way:
Once pressing the button, the mouse can be used together with the arrow keys to enlarging the
Trend/Data Analysis area. If at this point you wish to enlarge the curve even further, just select the
part to be enlarged again. To exist from Zoom mode in order to analyse data using the cursor, just
press the Zoom button again, or press the "ESC" key. In this situation, where the zoom is no longer
active, by pressing "ESC" key the curve will be restored to its original size. The following functions
are active in Zoom mode:
For further information about the Zoom functionality and the commands which can be used for
zooming please refer to the paragraph on the "Zoom Management".
Activating the zoom command for the Data Analysis object will
automatically deactivate the "<<", "<", ">", ">>" buttons. To reactivate
these buttons, select the time range to be displayed again.
Measure Button
This selection makes the Measure Button available for carrying out measuring operations in the Data
Analysis object. This command can also be carried out with the "M" key.
The measure mode consents to selecting a pair of points in the same curve, or different curves, and
view the delta X delta and delta Y values on a ruler. The delta X value corresponds to the time
ratio/difference between one point and the next, while the Y delta corresponds to value difference of
the two points.
In order to select the two points after having activated the measure function, you must left mouse
click on first point of the curve and by keeping the mouse key pressed down move to the second
point and then release. The two horizontal and vertical lines will remain visible showing the
horizontal and vertical delta ratios between the two points.
First Point Button
This option makes the command button move the Data Analysis object's cursor to the first point of
the selected time range.
For further information please refer to pargraph: "Moving The Cursor Around The Chart".
Last Point Button
This option makes the command button move the Data Analysis object's cursor to the last point of
the selected time range.
For further information please refer to pargraph: "Moving The Cursor Around The Chart".
Next Point Button
This option makes the command button move the Data Analysis object's cursor to the next point in
respect to the one selected.
For further information please refer to pargraph: "Moving The Cursor Around The Chart".
Previous Point Button
This option makes the command button move the Data Analysis object's cursor to the previous point
in respect to the one selected.
For further information please refer to paragraph: "Moving The Cursor Around The Chart".
Print Button
This selection provides the command button for executing a printout of the Trend/Data Analysis
area. The same command can be executed with the "P" key.
Show Date Range Buttons
This selection renders the command buttons available for selecting the time ranges to be displayed
in the Data Analysis object. These buttons are: all, (min.), (hour), (day), (week), (month), (year).
Date Range Button Color
This property consents you to select the color to be applied to the Data Analysis object's Date Range
Buttons.
For further information on the color selections please refer to the "Color Selection" paragraph.
Show Compare Date Range Buttons
This selection renders the command buttons available for selecting the date ranges to be compared
in the Data Analysis object. Thise buttons are: none, (min.), (hour), (day), (week), (month), (year).
Compare Date Range Button Color
370
D R A W S
A N D
O B J E C T S
This property consents you to select the color to be applied to the Compare Data Range buttons in
the Data Analysis object.
For further information on color selections please refer to the "Color Selection" paragraph.
Measure Text Color
This property allows you to assign a color to the text that indicates the measure value once this
feature has been enabled through the "Measure" button.
Take note that by using the "Preserve Colors" property from the "General" properties group, the
measure text color settings can be retained during public symbol updating.
Date Range
This property consents to selecting a data range to be displayed for default when loading the Data
Analysis object. The possible selections are: all, (min.), (hour), (day), (week), (month), (year).
Button Size
The 'Button Size' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Align Buttons
The 'Align Buttons' property is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Pause-Run Button Text
The text which is to appear on the 'Pause-Run Button Text' is entered in this edit box. The
default text will be used if left blank.
None Button Text
This edit box is used for inserting the text to show on the "None Button" on the bar of buttons for
selecting the comparison time range. If this field is left empty, the text for default will be used
instead.
All Button Text
This edit box is used for inserting the text to show on the "All Button" on the bar of buttons for
selecting the comparison time range. If this field is left empty, the text for default will be used
instead.
Sec. Button Text
This edit box is used for inserting the text which is to appear on the scroll buttons when selecting the
Minute is selected as the time range to be displayed. If this field is left empty, the text for default will
be used instead.
Min. Button Text
This edit box is used for inserting the text to show on the "Min. Button" on the bar of buttons for
selecting the comparison time range. If this field is left empty, the text for default will be used
instead.
Hour Button Text
This edit box is used for inserting the text to show on the "Hour Button " on the bar of buttons for
selecting the comparison time range. If this field is left empty, the text for default will be used
instead.
Day Button Text
This edit box is used for inserting the text to show on the "Day Button " on the bar of buttons for
selecting the comparison time range. If this field is left empty, the text for default will be used
instead.
Week Button Text
This edit box is used for inserting the text to show on the "Week Button " on the bar of buttons for
selecting the comparison time range. If this field is left empty, the text for default will be used
instead.
Month Button Text
This edit box is used for inserting the text to show on the "Month Button " on the bar of buttons
for selecting the comparison time range. If this field is left empty, the text for default will be used
instead.
Year Button Text
371
M O V I C O N _ P R O G R A M M E R _ G U I D E
This edit box is used for inserting the text to show on the "Year Button " on the bar of buttons for
selecting the comparison time range. If this field is left empty, the text for default will be used
instead.
Page Prev. Button Text
The text which is to appear on the 'Page Prev. Button Text' is entered in this edit box. The default
text will be used if left blank.
When the Data Analysis is being used, the text of this button changes according to the time range
selected. If nothing is inserted in this property, Movicon will use any string ID that has been inserted
in the time range selection button texts properties ("Second Button Text", "Minute Button Text",
"Hour Button Text", etc.) to show as this button's text which will change automatically according to
time range selected. If you wish to used custom text for this button, you can insert text composed
of two parts in this property: the custom text and the "%s" parameter which is needed for
automatically adding the time base to be displayed according to the time ranged selected on the
chart. The "%s" parameter can be inserted either before or after the custom text, depending on
where you want it to be positioned. If the custom text must support change language as well you
will need to insert the text in a String ID. In this case, the "%s" parameter will have to also be
inserted within the strng of each language.
For instance, when inserting the following texts into these properties:
Minute Button Text = Minute
Hour Button Text = Hour
Prev. Page Button Text = Prev. %s
and then in runtime the "minute", time range is selected using the predisposed button , the texts
that will display on the "Minute Button", "Hour Button", and "Prev. Page Button" are:
Minute Button Text = Minute
Hour Button Text = Hour
Prev. Page Button Text = Prev. Minute
and then selecing the "hour" range using the predisposed button in runtime, the texts that will
display on the "Minute Button", "Hour Button", and "Prev. Page Button" are:
Minute Button Text = Minute
Hour Button Text = Hour
Prev. Page Button Text = Prev. Hour
When a "Multiplier Factor" is applied to the scroll buttons, this will automatically add the %dx
syntax at the end of the buttons' texts. For example, if a multiple of 5 factor is applied in the
example above, the Prev. Page Button's text will become:
Prev. Page Button Text = Prev. Hour 5x
Prev. Button Text
The text which is to appear on the 'Prev. Button Text' is entered in this edit box. The default text
will be used if left blank.
When the Data Analysis is being used, the text of this button changes according to the time range
selected. If nothing is inserted in this property, Movicon will use any string ID that has been inserted
in the time range selection button texts properties ("Second Button Text", "Minute Button Text",
"Hour Button Text", etc.) to show as this button's text which will change automatically according to
time range selected. If you wish to used custom text for this button, you can insert text composed
of two parts in this property: the custom text and the "%s" parameter which is needed for
automatically adding the time base to be displayed according to the time ranged selected on the
chart. The "%s" parameter can be inserted either before or after the custom text, depending on
where you want it to be positioned. If the custom text must support change language as well you
will need to insert the text in a String ID. In this case, the "%s" parameter will have to also be
inserted within the strng of each language.
For instance, when inserting the following texts into these properties:
Minute Button Text = Minute
Hour Button Text = Hour
Prev. Page Button Text = Prev. %s
and then in runtime the "minute", time range is selected using the predisposed button , the texts
that will display on the "Minute Button" and "Prev. Page Button" are:
Minute Button Text = Minute
372
D R A W S
A N D
O B J E C T S
373
M O V I C O N _ P R O G R A M M E R _ G U I D E
374
D R A W S
A N D
O B J E C T S
Default Query
This edit box is used for entering a text string containing the query in standard SQL language in data
to be selected from the Database. For further information please refer to the section on "Default
Filter".
This window shows the pen table inserted in the objects, indicating the colors, names and database
variables associated.
To insert new pens you need to press the Add button on the right hand border, through which the
setting window, as shown below, is activated.
To change the pen settings previously inserted you need to activate the Edit button after having
selected the pen desired.
To delete a pen from the object, you have to select it first, then press the Remove button.
The Trend and Data Analysis allow you to modify the order in which pens are displayed in the
legend. This option is managed in the pen edit window, which is a window showing a list of all the
pens associated to the Trend or Data Analysis object. In this window you can change around the
pens from one position to another in the list by simply selecting one and moving to the top or
bottom with the mouse pressed down.
Pen Configurations
The Edit Pen Properties window is accessed when the Add or Edit commands are used. This
window can also be accessed in RunTime by double-clicking on the pen line you wish to change.
However, the pen's name of the variable associated to it cannot be changed when accessed in this
way. Furthermore, if a configuration file has not been associated to the object, any changes made
will only be kept until the Trend remains active and will be lost when the screen is closed.
The Edit Pen Properties are subdivided in groups for graphic reasons only.
General
Name
The name you wish to assign to the pen is entered in this box. The name can also be different from
the variable's and will be represented in the Trend/Data Analysis window's legend and recorded on
file as the name of the assigned values.
375
M O V I C O N _ P R O G R A M M E R _ G U I D E
The text string which can be associated to the pen supports all the
special and space characters, leaving it to the programmer's discretion to
use the separation characters (tabulations or commas).
The Trend/Data Analysis's pens can also have the change language
function by inserting a string ID with the same name as the pen's.
Variable
The name of the variable to be associated to the Trend/Data Analysis's pen is entered in this edit box
(or selected with the "..." browse button on the right). The selected variables will be sampled by the
Trend according to the modalities set.
New variables can be entered into the Real-Time DB if needed by double-clicking on the option box.
In cases in which the Trend/Data Analysis is linked to a DataLogger, Movicon will search the Table
for a column with the same name as the variable entered in the "Variable Pen" field. If the name of
the variable and column names are different you will need to specify the name of the column in the
"Data Logger Column' field.
When using the Movicon Embedded Reports you can also select the database in addition to a
variable in the Trend or Chart object's "Variable Pen"' property. Selecting a field from the database,
which returns a specific syntax, it will then be necessary to set the "Data Logger Column" with the
correct column name as well.
Data Logger Name
This property, which is only available for the Data Analysis object, is used for entering the name of
the DataLogger which the pen belongs to. Curves of pens deriving from different DataLoggers can
be displayed by the Data Analysis as described in the paragraph on "Connecting different Data
Loggers to a Data Analysis object". In cases where a DataLogger name is not specified for the pen in
this property, the Data Logger set in the Data Analysis style properties will be used.
Data Logger Col.
The variable name (or the DB field name when using a Movicon Embedded Report) inserted in the
"Variable Pen" property may be different from the Data Logger column name to which the
Tredn/DataAnalysis is linked. The "Data Logger Column" property allows the reference column to be
set for the pen when the name of the variable linked to the pen ("Variable Pen" property) is not the
same as the column's name. When left empty, the name of the variable will be considered as
column's name.
Visible (Pen)
This selection box permits the trace visibility to be set in the Trend/Data Analysis window, allowing
data to be sampled without displaying the values in the Trend. The Pen name will however remain
visible in the Legend even when the curve is not displayed in the Trend/Data Analysis.
Visible in Legend
This option allows the pen to be displayed or not to be displayed in the Trend/Data Analysis legend.
Editable
This property allows you to make the pen editable during Runtime mode. A pen can be edited during
Runtime by double clicking on the curve or the pen's name in the Legend or on the pen's scale.
Use TimeStamp
When enabled, this option allows the pen points to display in order according to the 'timestamp'
column and not the 'Time' column with which data has been recorded in the associated Data Logger.
In order for this to work, you must enable variable's timestamp for recording in the Datalogger,
therefore enabling the Datalogger's column "Add TimeStamp Column" property.
Please remember that for a pen whose points are displayed according to the
"timestamp" column, the data will be filtered respecting the "Time" column
with which data is recorded by the Data Logger.
376
D R A W S
A N D
O B J E C T S
Scale
Pen scale major tick values can be customized using the string
table. By inserting a string identifier in the string table with this
format: "_<PenName>_<Tick Number>_" (where the tick number
starts from '1'), the value represented in a pen scale tick can be
replaced by the text desired.
Auto
When this property is enabled the pen's scale will automatically adapt according to the value
obtained by the pen so that the highest value obtained by the pen is displayed at the top of the
scale.
The automatic scale is managed in this way to guarantee that the first and last ticks are always set
with the integer values without decimals.
Min. Value
The lowest value which the variable in the Trend/Data Analysis may obtain is set in this edit box and
which will be returned on the variable's scale situated on the Trend/Data Analysis's border at the
side.
When the variable linked to the Trend/Data analysis has its "Enable Scaling" property
enabled, the minimum value used will be the one set in the variable's "Scale Min."
property.
Max.Value
The highest value which the variable in the Trend/Data Analysis may obtain is set in this edit box will
be returned on the variable' s scale situated on the Trend/Data Analysis's border at the side.
When the variable linked to the Trend/Data Analysis has its "Enable Scaling" property
enabled the minimum value used will the one set in the variable's "Scale Max." property.
Pen Values Format
By using this option box you can set how the numeric format of the variable associated to the Trend
is to be displayed.
The format types available are only those listed in the "Predefined Movicon Formats" paragraph in
the "Data Formats" section.
In case where this property has not been set (left blank) the Trend/Data
Analysis will inherit any format defined in the associated variable's
"Default Format" property.
Visible (Scale)
When checking this box the scale of values will be enabled on the border at the side of the
Trend/Data Analysis window. If left unchecked, the scale will not be displayed for pen being
configured.
Right-Bottom
When this property is enabled the pen's scale will be displayed at the bottom or on the right of the
Trend/Data Analysis area.
Log. scale
When this property is enabled, the scale displayed for the pen will assume the logarithmic values
instead of the linear values for default.
Eng. Unit
This edit box is used for inserting a text for identifying the Trend/Data Analysis's variable's
engineering units to be represented. In instances where a text is not entered, the one in the variable
will be used instead. The engineering unit will be displayed in the legend after the pen's description.
Style
Plot Type
The pen configuration provides the possibility to select the type of trace to be assigned to the
variable, by choosing one of the four options offered by the system on the list available.
The curve graphics options are:
377
M O V I C O N _ P R O G R A M M E R _ G U I D E
Area: in this case the area subtended by the chart's curve is flood filled by a color
Line-Area: in this case the area subtended by the chart's curve is filled with a series of
vertical bars
Line-Step: the trace is represented by a simple line, but the curve is drawn with a straight
line, parallel to the X axis in function with the Y value. This line is kept straight until the next
Y value variation and eventually instead of looking like a curve will look like steps
Area-Step: the trace is represented by on simple line and the relating area is filled with a
colour and a style which can be set in the "Pen color" and "Brush Color" properties. The
curve is designed with straight line, parallel to the X axle in function with the Y value. This
line is maintained as it is until the next value Y changes. In this way the curve turns into a
step.
Points
This setting highlights the points along the Trend/Data Analysis curve.
Labels
This setting permits the pen's values to be displayed in correspondence to each point in the graphic.
Labels are only controlled in the Trend object and which are displayed near each point only if these
points are not too near to each other.
The labels are also displayed in XY trends. Two pairs of values corresponding to the X axis value and
the Y axis value appear separated by a comma.
Saved Values
This setting allows the curve to be frozen upon enabling this property. The frozen curve is then
displayed in the Trend with a dashed line while the actual curve will continue running in the Trend.
Therefore, two curves will be obtained for the same pen, one in realtime and the other one saved
the movement this property was enabled. This function is used for comparing curve values in
realtime with those from a moment ago. When this property is disabled again, the frozen curve will
cancelled and on the one in realtime will remain in the Trend.
Enabling/disabling this property only has significance in runtime mode only.
378
D R A W S
A N D
O B J E C T S
Statistic
Minimum Pen / Maximum Pen / Average Pen
When these properties are enables, an additional trace will be displayed in the Trend/Data Analysis
window, set with a standard horizontal line representing the Minimum value, the Maximum value and
the Average value assumed by the variables associated to the pen, among those sampled and filed in
the Trend's buffer.
When enabled, these traces can be set with a color, size and style as described below.
Minimum / Maximum / Average Pen Color
The colors of the traces representing the Minimum, Maximum and Average values assumed by the
variable associated to the pen are set by using the 'Color' selection button.
For further information on selecting colors please refer to the paragraph on "Color Selection".
Minimum / Maximum / Average Pen Size
This edit box is used for setting the size of the trace representing the Minimum, Maximum and
Average values assumed by the variable associated to the pen.
Minimum / Maximum / Average Pen Style
This is used to set the graphical property of the traces representing the Minimum, Maximum and
Average values assumed by the variable associated to the pen. By means of using the list you can
select the type of line to be displayed which may be a solid line, dashes or other.
379
M O V I C O N _ P R O G R A M M E R _ G U I D E
To change the Legend Area properties, select the object with the mouse and use the Movicon
"Properties Window".
Visible
The "Visible" property consents the Trend/Data Analysis's "Legend Area" to be hidden or displayed.
Max. Nr. Visible Pens
This property allows a limit to be set on the number of pens displayed in the legend so that it will not
get oversized. Small Scroll buttons will appear to the right of the legend to scroll the legend's pen
list. This property has been preset with the value '4'.
The Trend objects will displayed with these characteristics when opening
projects created with the previous Movicon version.
The "MaxLegendVisiblePen" property from "TrendCmdTarget" basic interface allows this parameter
to be read/changed in runtime. In this case, when modified a "Refresh" will need to be carried out to
update the Trend/Data Analysis graphically with the new settings.
Border
The "Border" property consents the border relating to the Trend/Data Analysis's "Legend Area" to
be displayed. This applies to the display area of the legend only.
Raised Border
The "Raised Border" property allows the border relating to the Trend/Data Analysis's "Legend Area"
to be displayed with a risen border instead of a flat one. This applies to the display area of the
legend only.
Brush Style
This property allows you to select the type of brush stroke (hatched) to be applied to the Trend/Data
Analysis's "Legend Area". This applies to the display area of the legend only.
Color
This property allows you to select the background color to be applied to the Trend/Data Analysis's
"Legend Area". This applies to the display area of the legend only.
For further information on the color selection please refer to the paragraph on "Color Selection".
Font
A window will activate by using the "..." button on the right hand of the box where you can select
the font to be associated to the texts representing the Trend/Data Analysis's legend. The selection is
done by using the Windows standard modalities.
Visible
The "Visible" property allows the Trend's "Time Area" to be displayed or hidden.
Automatic Scale
When enabled this option consents the date range scale axis to adapt to the data loaded in the Data
Analysis object accordingly. When enabling this option, the buttons for scrolling data ("<", "<<", ">
>" and ">") and inserting comparison curves become no longer usable.
Border
The "Border" property allows the border relating to the Trend/Data Analysis's "Time Area" to be
displayed. This applies to the display area of the date and time only.
380
D R A W S
A N D
O B J E C T S
Raised Border
The "Raised Border" property allows the border relating to Trend/Data Analysis's "Time Area" to
be displayed with a raised effect instead of flat one. This applies to the display area of the date and
time only.
Brush Style
This property allows you to select the type of brush stroke (hatched) from the list of the various
styles available, to be applied to the Trend/Data Analysis's "Time Area", being the display area of
the data and time only.
Color
This property allows you to select the background color to be applied to the Trend/Data Analysis's
"Time Area", being the display area of the time and date only. For further information on the color
selection please refer to the paragraph on "Color Selection".
Text Color
A window will activate by using the "..." button on the right hand of the box where you can select
the color to be associated to the texts representing the Trend/Data Analysis's time area.
For further information on the color selection please refer to the paragraph on "Color Selection".
Font
A window will activate by using the "..." button on the right hand of the box where you can select
the font to be associated to the texts representing the Trend/Data Analysis's time area. The
selection is done by using the Windows standard modalities.
Font Orientation
This property tilts the display of the strings which represents the recording's date and time. The
maximum tilt is 45 degrees. This allows the number of vertical label to be increased without
superimposing any texts.
Show Ms
This property permits the values (in milliseconds), in recording time of the Trend/Data
Analysis's"Time Area", to be displayed or hidden.
As the Data Analysis object is concerned, enabling this property will display the milliseond values in
the curve's point labels when the cursor positions on top.
In addition this option permits the values to be plotted correctly in the 'Trend/Data Analysis Grid'
area based on the millisecond values of historically logged samples in the Data Base.
Ultimately, the 'Show Ms' is automatically activated when a Data Logger is associated to the Data
Analysis object to record by time.
Show Date
This property permits the recording date, displayed in the Trend/Data Analysis's"Time Area", to be
displayed or hidden.
Time Format
This property consents to formatting dates and times with which the data is to be displayed in the
Trend/Data Analysis time area. The "Show Ms" property will remain unchanged and continue to
add milliseconds. The "Show Date" property however, does not have any effect in cases where this
custom format is used.
When the date and time format has been customized, it will be
shown on one line only.
The format types available are only those listed in the "Formats for Date and Time values" paragraph
from the "Data Formats" section.
Time Scale
This property allows you to enable the time scale's axis in function with the data loaded for the Data
Analysis object. This option is available in three modes:
Adjust to Values:
Adjusts the Time Area according to the start and end date referred to by the cursor's position for the
query to recover data. For example, when selecting a day range, the data recovered for this range
will be displayed starting from the first available data to the last available data within the 24 hours of
the day selected by the cursor.
If a data filter is applied by using the time range buttons (minute), (hour), (day), (month) and
(year),data will be selected staring from the date and time indicated by the cursor's position.
381
M O V I C O N _ P R O G R A M M E R _ G U I D E
Absolute Ranges:
Adjusts the time area according to start and final date specified in the query or the cursor's position
in combination to the date range selected with the (min.), (hour), (day), (week), (month and
(year)buttons. When respecting the date and time indicated by the cursor, and selecting an (hour)
range using the time range buttons, the Time Area will adjust starting from the beginning or the
selected hour. When selecting a (day) range, the Time Area will adjust starting from midnight and
continue throughout the following 24 hours in relation to the day indicated by the cursor's position.
Relative Ranges:
Uses the PC's current date and time as final date and time for selected data by adjusting the period
to the time range selected. For example, when selecting a (day) range, data from the last 24 hours
will be recovered starting from the current time.
Show Item Side by Side
This property is available only when a "Chart" object has been inserted in a Movicon "Embedded
Reports" from the "ToolBox Objects for Reports"per i report. When this option is checked and if
there are two or more pens, the object will be displayed with bars side by side for each X axis value
instead of being overlapped. This option only has effect if the "Tipo di Penna" has been set to
"rectangle".
Show Labels
This property is available only when a "Chart" object has been inserted in a Movicon "Embedded
Reports" from the "ToolBox Objects for Reports" per i report. When this option is checked, the text
corresponding to the field values chosen for the X axis will be shown in correlation to the X axis
vertical ticks.
Show Labels every
This property is available only when a "Chart" object has been inserted in a Movicon "Embedded
Reports" from the "ToolBox Objects for Reports" per i report. This property is only considered when
the "Show Labels every" option has been enabled. When enabled, the set value indicates the
frequency of ticks the labels are to be associated to along the vertical X axis. For example, when
setting the value 3, the labels are written every three ticks along the X axis.
XY Grid Visible
These option boxes permit the grid's major lines to be displayed or hidden for the X axis (horizontal
axis) or for the Y axis (vertical axis).
X/Y Minor Grid Visible
These option boxes permit the Grid's Minor lines to be displayed or hidden for the X axis (horizontal
axis) or for the Y axis (vertical axis). Only has effect with the grid's Major lines enabled.
Nr. Major X/Y Ticks
This edit box is used for customizing the number of Major lines, by entering a value from 1 to 100, to
be displayed for the grid in the Trend/Data Analysis window whether for the Grid X (horizontal axis)
or the Y Grid card (vertical axis).
382
D R A W S
A N D
O B J E C T S
The pen scale major tick values can be customized using the string table.
You can actually insert an identifier string in the string table with this
format: "_<Pen Name >_<Tick Number>_" (where tick number starts from
"1"), you can replace the value represented in a pen scale pen with any
other text.
Nr. Minor X/Y Ticks
This edit box is used for customizing the number of Minor lines, by entering a value from 1 to 100,
to be displayed for the grid in the Trend/Data Analysis window whether for the Grid X (horizontal
axis) or the Y Grid card (vertical axis).
Logarithmic X/Y Grid
When enabling this check box, the X or Y grid will be displayed according to the logarithmic
functions, instead of in linear mode as for default.
Normal X/Y Grid
When enabling this check box, the lines in the X or Y grid will be displayed with a straight line
instead of a dashed line as for default.
X/Y Grid Color
By using the standard color selection, you can assign the colors desired to the grid's lines whether
being for the X Grid card or (horizontal axis) or for the Y Grid card (vertical axis).
For further information about color selections please refer to the paragraph on "Color Selection".
Grid Overlap
When enabling this check box the Trend's grid will overlap to the curves.
Grid Shifting
When this check box is enabled the grid will move in the Trend area together with the variable curve
lines during runtime. When this box is left unchecked only the curves will move while the grid
remains still.
The grid's shift is not active with XY charts.
This value is also used for the memory capacity for loading values of any
query executed when the Trend is put into Pause (stop) mode. Extracted
values exceeding this limit will not be managed.
When the Data Analysis object is used this value defines the maximum point number limit that can
be displayed. The set value represents the maximum number of values that will be retrieved from
the database (default = 36000). This limit is needed for containing memory use and must be set to
a value adequate for the computer's memory capacity.
If a very high value is set, a "Out of memory" or "Insufficient
memory for executing operation" error may appear when recovering
data from the database.
This value is also used by Web Client for recovering data from the Server application.
383
M O V I C O N _ P R O G R A M M E R _ G U I D E
Record Every
This property is used for setting the sampling time desired for the Trend. The values can be set in
Hour, Minute, and Second time units.
The resulting value will be the one used for sampling data which is buffered in memory and
displayed according to the modalities set.
Record Every (ms)
This property is used for setting the sampling time in milliseconds.
As you can see, Movicon also allows sampling times to be set in
milliseconds, which will required a more demanding CPU performance of
the PC which is the programmer's responsibility to evaluate.
# Update Every
This edit box is used for setting the Trend object's video refresh time of data sampled by the Trend.
The number set corresponds to the number of samples executed before the video refresh of sample
values is carried out.
The difference between the values being acquired and the values being displayed may be useful to
optimize the resource's task without effecting high precision sampling performances.
View Timeframe
This edit box is used for setting the timeframes to be viewed in the Trend area, whether in Start of
Stop mode.
The timeframe set will determine the number of samples, indicated in the "# Visible Samples" box,
to be viewed.
The is no limit on the amount of time that can be set and that the Trend can display on any one
page. Therefore any time can be set in "dd:hh:mm:ss" which will be used by the Trend in runtime
to view each of its pages. Any recording "holes" on the data logger will be represented with grey
zones (without data), and not with lines. In this way a Trend page will always display a data interval
equal to the time set in the "View Timeframe" property.
The Trend used its specific algorithm to display a lot of data in one page only where curves will be
represented without altering their appearance with approximations.
# Visible Samples
This read only property shows the number of samplings to be displayed in the Trend area. This
value depends on the Trend's window size in pixels and the "View Timeframe" settings.
Record On File
The Trend's data recording function is activated when this selection is enabled. In this case, the
object will record the data it has sampled on file in ".CSV" format according to the sampling
modalities set.
384
D R A W S
A N D
O B J E C T S
The data logger connected to the Trend/Data Analysis must also be configured in the local project.
However, its "Enable" property can be disabled to prevent any recordings taking place in local
database.
Network Backup Server
See paragraph "Drawings and Controls common Execution Properties".
Max Rows
This property is used for setting the number of records to be loaded from the remote Data Logger
when the "Network Server" property is active.
In Web Clients the value entered in the "Samples" property is considered
instead.
Load Data in separate thread
This property allows the user interface to be completely free to use as normal in order to interact
with other objects in the same screen while data is loaded in the Trend or Data Analysis object.
When the Separate Thread results active the progress bar is displayed while data is being loaded. In
addtion some events are disabled within the Data Analysis or Trend object's Basic Script context
which notify data loading, query executions and the moving from one record to another in the
referenced recordset object. These events are:
385
M O V I C O N _ P R O G R A M M E R _ G U I D E
OnImportStart
OnImportNext
OnImportEnd
OnErrorRecordset
OnRecordsetQueryStart
OnRecordsetMoveNext
OnRecordsetQueryEnd
Commands on Click
See paragraph "Execution Properties" in Drawings and Controls.
Ext. File Settings
Name of "Symbol Configuration Files" in which the Trend/Data Analysis's configuration settings are
saved or loaded during RunTime.
The configuration file, set in this property, is automatically loaded when the Trend/Data Analysis is
displayed, and automatically saved when any modifications are done to its pen's properties through
the appropriate window.
See paragraph "Execution Properties" for Drawings and Controls.
Generate Unique File Name
See paragraph "Execution Properties" for Drawings and Controls.
Load
By using this command the configuration file settings selected in the "Configuration File" property will
be loaded and applied to the Trend/Data Analysis object.
See paragraph "Execution Properties" for Drawings and Controls.
Save
By using this command all the Trend/Data Analysis object's settings in the configuration file selected
in the "Configuration File" property will be saved.
See paragraph "Execution Properties" for Drawings and Controls.
386
Run Mode: The Trend samples and represents the values of the current samples
Pause Mode: The Trend continues to sample but displays historical data, by executing any
queries in the associated Data Logger (if present) or if otherwise, displays the samples
presently contained in the buffer
D R A W S
A N D
O B J E C T S
Cursor In
The name of the variable to be associated to the position where you wish to set the cursor for
pointing sampled data displayed in Pause mode is entered in this box (or selected with the "..."
browse button on the right). The cursor is represented by a vertical line in the centre of the Trend
window.
The word type variable sets the desired number of samples to be pointed, with a value between 1
and the maximum number of samples value (buffer capacity) set.
Cursor Out
The name of the variable to be associated to the position obtained by cursor and returned by the
Trend in Pause mode is entered in this edit box (variable name can also be selected with the "..."
browse button on the right).
The cursor is represented by a vertical line in the centre of the Trend window.
The word type variable sets the desired number of samples to be pointed, with a value between 1
and the maximum number of samples value (buffer capacity) set.
Scroll Next
The name of the variable for executing the 'next value' command for the value pointed by the
Trend's cursor in Pause mode is inserted in this edit box (variable name can also be selected with
the "..." browse button on the right).
The change over from the associated variable's value from "0" to a different value (which may be in
bit, byte word etc.) will bring forward the next sample, displaying a new value following the one
pointed in the Trend's buffer.
Scroll Prev.
As for the "Scroll Next" variable, but for displaying a new value preceding the one pointed by the
cursor in the Trend's buffer.
Scroll Begin.
The name of the variable for executing the command for displaying the first sampled value or
contents in the Trend's buffer in Pause mode is entered in this edit box (variable name can also be
selected with the "..." browse button on the right).
The change over of the associated variable's value from "0" to a different one (which may be in bit,
byte word etc.) determines the pointing to the first value in the buffer and of its display in the
Trend.
Scroll End.
As for the "Scroll Begin" variable, but for pointing and displaying the last sampling or value in the
Trend's Buffer.
Next Page
The name of the variable for executing the "change page" command for the values displayed by the
Trend in Pause mode is entered in this edit box (variable name can also be selected with the "..."
browse button on the right).
The change over of the associated variable's value from "0" to a different one (which may be in bit,
byte word etc.) determines the change page by displaying a new page of values following the value
pointed in the Trend's Buffer.
Prev. Page
As for the "Next Page" variable, but for displaying a new page of the values preceding the value
pointed in the Trend's buffer.
Add Value
The name of the variable for executing the recording of data on command is entered in this edit box
(variable name can also be selected with the "..." browse button on the right). When this variable is
set at "1" the Trend will execute a sampling and return the variable to "0". When the "Add Value"
variable is inserted, the Trend will no longer record on time but on command only.
Reset Values
The name of the variable for executing the deleting of data in the Trend's buffer is entered in this
edit box (variable name can also be selected with the "..." browse button on the right). When
setting this variable at "1", the Trend will execute the deleting of data recorded up till that moment
and return the variable to "0".
387
M O V I C O N _ P R O G R A M M E R _ G U I D E
388
D R A W S
A N D
O B J E C T S
In addition to the files in Database format, the Grid is also capable of displaying the data contained
in text files (UNICODE format) providing that the data is separated by a preset character. The
comma (",") is the character used for default a different one can be setup through the appropriate
properties.
The Grid object connects to a database using the ODBC. In order
for this to happen you must have a ODBC connection to database to
be associated to the Grid. If you are using Windows CE which does
not support the ODBC, Movicon CE will use a ADOCE connection.
However, you must take into account that it will not be possible to
use a
database with
the
Grid
object
(Historical
Log,
DataLogger/Recipe or a variable Trace) if the IMDB as been
selected as database. The IMDB does not use ODBC connections
and therefore not compatible with the Grid object.
389
M O V I C O N _ P R O G R A M M E R _ G U I D E
For further information please refer to the object's "Prompt Pad" property found in the "Style
Properties" group.
Events:
The Movicon Grid offers advanced functionalities that can be accessed and configured through its
GridWndCmdTarget interface which provides Basic Script functions, Properties and Events for
programming it. The 'OnTextChanging' and 'OnTextChanged' events can be exploited for intercepting
the previously edited instance or the one immediately after according to the following modes:
a) With the "Prompt Pad" disabled, the 'OnTextChanging' event is notified before the cell enters into
edit mode. When set at false, the bRet parameter will impede this from happening by changing the
cell's value. However, the 'OnTextChanged' event is only notified when the entered valued has been
confirmed with Enter, and the 'ChangedText' reports the new value entered in the cell. The editing
operations and relative events can be aborted with the Escape button.
b) With the "Prompt Pad" enabled, the 'OnTextChanging' event is notified before the Alphanumeric
Pad appears, and by setting bRet = False will impede any following editing in the cell therefore
impeding the appearance of the Alphanumeric Pad. However, the 'OnTextChanged' event is only
notified when existing with OK or Enter from the Alphnumeric Pad, and the 'ChangedText' event
reports the new value entered. Editing is aborted by using the Pad's Cancel button or Escape key
from the Keyboard.
For further information on the Movicon Grid's VBA interface please refer to the chapter on 'API
Interfacce Basic' from the 'VBA Language" topic.
System Registry:
A "General" registry key value called 'ShowPad' is available set at zero for default and usable in
Windows CE as well. You will be able to obtain the following combinations by using this value
together with the "Prompt Pad" properties:
a) 'ShowPad=0' and 'Prompt Pad=false': Alphanumeric pad will not open.
b) 'ShowPad=0' and ''Prompt Pad=true': Opens the alphanumeric pad.
c) 'ShowPad=1' and 'Prompt Pad=false': Opens the alphanumeric pad.
c) 'ShowPad=1' and ''Prompt Pad=true': Opens the alphanumeric pad.
Clickable
The "Clickable" is described in the paragraph on "Style Proprieties common to Drawings and
Controls".
Show Control Wnd
The "Show Control Wnd" is described in the paragraph on "Style Proprieties common to
Drawings and Controls".
Auto Layout
The "Auto Layout" is described in the paragraph on "Style Proprieties common to Drawings
and Controls".
Refresh Button
This property enables or disables the displaying of the Refresh button.
Update Button
This property enables or disables the displaying of the Update button.
Save Button
This property enables or disables the displaying of the Save button.
Select All Button
This property enables or disables the displaying of the Select All button.
Copy Button
This property enables or disables the displaying of the Copy button.
Insert Button
This property enables or disables the displaying of the Insert button.
Delete Button
This property enables or disables the displaying of the Delete button.
390
D R A W S
A N D
O B J E C T S
391
M O V I C O N _ P R O G R A M M E R _ G U I D E
The ODBC is not supported in WinCE for the time being and therefore the
Database file DSN link cannot be exploited and the Grid's "ODBC DSN"
property has to be changed during its configuration phase. This setting
will then be different according to whether the Grid has to be linked to a
DataLogger/Recipe or to any Database file. In the first case, Movicon will
have already opened connections to the file and therefore the Grid should
be able to exploit them. In the second case, however, the Grid will have
to open a new connection to the DataBase file. As a consequence of this,
the "ODBC DSN" property should be set as follows:
392
D R A W S
A N D
O B J E C T S
You can select or create a file data source by using the "New..." from this window. If you select the
other tab you will be able to select the machine data source:
Once the data source has been selected a window will appear with a list of tables available in the
Database, and by selecting the table of interest you will get a list of its fields on the right hand side.
You can select or deselect the table's fields to import the table columns need. A SELECT query will
be generated based on the selection made to extract the data to be displayed on the Grid.
The "Open" button allows you to select a new data source, by re-showing the previous window.
The "Import" button ends the data source selection procedure by creating a select query which will
then be returned to the "Query" property of the "Grid Execution Properties" group.
393
M O V I C O N _ P R O G R A M M E R _ G U I D E
The recognized order in which the data is extracted is the one set by the select query. If the query
is changed manually there may no longer be any coherence between the Grid's column titles and the
data displayed in those columns. In order to change the Grid's structure as pleased it would be best
to use the Basic Script functions for inserting and putting the columns into the order your desire. If
you wish to change the columns during the programming phase you can interact on the object's XML
codes as usual.
394
D R A W S
A N D
O B J E C T S
For example, if the VAR0001 variable is associated to a chart's Curve 1, previously inserted
with a fixed length byte array (eg. with sizes of 10 bytes), you will get a 10 value chart
representation (chart set with values in bytes). These values will be represented individually
by each single byte contents from the array type VAR0001 variable.
395
M O V I C O N _ P R O G R A M M E R _ G U I D E
During the programming phase, the chart's configuration is accessed through the "Open"
button from the general properties window of the Chart properties.
In Runtime mode, if enabled in the style property, the user can access the general style
settings in two distinct ways:
1. Right mouse clicking in the chart's proximity to access the setting command.
2. Click to select the part of interest and then double-click.
396
D R A W S
A N D
O B J E C T S
Chart Editing
You can configure and customize the chart completely by using its general properties.
The chart's design can also be adapted in runtime. To access to these features, some of which can
only be edited by using the following modalities and using the mouse appropriately:
1.
2.
Click on the chart element to be edited (line, scale, grid, etc.). The element will appear
highlighted with small squares
Double-click. The window for editing the settings will display
397
M O V I C O N _ P R O G R A M M E R _ G U I D E
The data entered will replace the default labels displayed in the chart.
Note: remember that if you wish to have chart variables both on the X axis
and Y axis, you need to select the 2D option and the XY chart type (or XYZ
when choosing the 3D option). The associated variable arrays (max. 2/3, in
this case), can be represented with their variations both in X and in Y (or in Z
when in 3D).
398
D R A W S
A N D
O B J E C T S
The chart's style becomes easier and intuitive to set up through these type of configurations by
directly selecting the chart desired from the corresponding images.
By using the Next button you can continue on further with the style configuration by using the
settings proposed.
Finally, a title can be assigned to the chart which will appear in the object according to any further
settings which might be or may have been carried out in the General configurations.
The chart's layout can also be set to represent data either in Rows or in Columns.
399
M O V I C O N _ P R O G R A M M E R _ G U I D E
400
D R A W S
A N D
O B J E C T S
When a XY chart is being used the two variable arrays indicate the scale
for the chart's X axis and for the Y axis. This concept will be further
dealt with ahead.
Rotation Variable
A variable can be set in this property for rotating the chart three-dimensionally. The visual rotation
angle of the 3D chart will then be influenced by the value of the associated value in runtime.
Elevation Variable
A variable can be set in this property to rotate the 3D chart vertically. The visual rotation angle of the
3D chart will then be influenced be influenced by the value of the associated value in runtime.
Push Value Variable
The current Chart displays all the values of the assigned array variables. A "Push" variable is being
designed for updating the chart's values upon the status change of that variable and will be
available in the near future.
Reset Value Variable
A variable can be specified for executing the reset of the Chart's data. The command will activate
when this variable is set at a value different from zero, after which it will be reset to zero by
Movicon.
Num. Samples
This edit box is used for setting the number of values (samples) to be represented on the chart. The
default value (20) means that the chart displays 20 values in function with the data type set,
independently of the size of the array which is expressed in bytes and refers to the variable.
Editable
When this selection is enabled, the chart will become editable for the operator during Runtime. This
also means that the chart's assigned style settings can be changed in its style properties during
runtime.
Array Type
This edit box is used to indicate to the chart how to use the values of the associated Array variables.
The Array variables are always expressed in bytes. When the value contents are to be represented
on the chart in word, dword or other, you need to select the data type desired, independently of the
array's unit measures in bytes.
Network Server
This edit box allows you to specify the name of any eventual Network Server from where data is to
be retrieved. In this way the Chart control will be able to ask the Movicon server when retrieving
data instead of getting data from the local Data Logger's DBMS link to the project. This allows
historical data from a remote Data Logger to be displayed on a remote PC in chart format.
To get the Chart control to retrieve historical data from a remote Data Logger, you need to set the
following properties in the Chart object:
In addition to this, the Data Logger linked to the Chart must also be configured in the local project.
However, you can disable its 'Enable' property to avoid that recordings on Database, also local, are
carried out.
Network Backup Server
See paragraph "Drawings and Controls common Execution Properties".
Max Rows
This edit box allows you to insert the maximum number of records to be retrieved from the Server's
Data Logger.
401
M O V I C O N _ P R O G R A M M E R _ G U I D E
Border
The "Border" is described in the paragraph titled "Style Proprieties common to Drawings and
Controls".
402
D R A W S
A N D
O B J E C T S
This technique renders the Movicon application open to external object integration where they will be
treated as Movicon objects.
For further information of how to use Active/OCX and their usages please refer to the section titled
"ActiveX Objects".
This technique renders the Movicon application open for integrating with external applications which
will be treated as Movicon objects.
For further information on how to use OLE and its usages, please refer to the section on "OLE".
403
M O V I C O N _ P R O G R A M M E R _ G U I D E
404
D R A W S
A N D
O B J E C T S
Numeric and Alphanumeric pads can nevertheless be used in systems with keyboards and may be
easier to use for entering data directly on screen by moving the mouse pointer from one cell to the
next in a "Window" object, activating the Pad by using the keyboard's Enter, Space Bar or any other
key except for the F1 key or any other used as an accelerator command.
Events:
The above listed Movicon objects offer advanced functionalities that can be attained through their
basic script interfaces (DisplayEditCmdTarget, GridWndCmdTarget, HourSelectorCmdTarget e
RecipeWndCmdTarget), which provide Basic Script Functions, Properties and Events for
programming. The "OnTextChanging" and "OnTextChanged" events can be exploited for
intercepting the instance prior to editing or the one immediately after by:
When the "Prompt Pad" option is disabled, the "OnTextChanging" event is notified before the
cells enter into edit mode. When set at False, the bRet parameter will impede cell value
modifications from having effect. The "ChangedText" parameter reports the new value
entered in the cell. Editing operation and any relative events can be aborted by using the
Escape Button.
When the "Prompt Pad" option is enabled, the "OnTextChanging" event is notified before
the Alphanumeric pad shows, and setting bRet = False will impede following cell editing
operations and therefore will stop the Alphanumeric Pad from showing. The
"OnTextChanged" event is notified only when exiting with OK or Enter from the
Alphanumeric Pad, and the "ChangedText" parameter shows the new value entered in the
cell. These editing operations can be aborted by using the Pad's Cancel button or the Escape
key from the Keyboard.
For further information on Movicon object VBA interfaces please consult the chapter dedicated to
"API Interfacce Basic" from the topic on "VBA Language".
System Registry:
A "ShowPad" value set at "1" for default is available in the "General" registry key. This value is also
usable in Windows CE. This key is only used in Touch-Screen systems and is managed together with
the "Prompt Pad" property in the following ways:
"ShowPad=0" and "Prompt Pad=false": Alphanumeric pad will not open
"ShowPad=0" and "Prompt Pad=true": Alphanumeric pad will open
"ShowPad=1 and "Prompt Pad=false": Alphanumeric pad will open
"ShowPad=1" and "Prompt Pad=true": Alphanumeric pad will open
Caution: If the "ShowPad" key is set to "1" in Touch-Screen systems, the
"Prompt Pad" property will automatically be set to "True" when the object is
loaded so that the Pad is enabled and ready for use when needed. At this
point, however, you can disable the "Prompt Pad" again by using the object's
appropriate "PromptPad" basic script property.
Show Control Wnd
This property is available only on the objects define as "viewers", such as "Alarm Window", "Log
Window", "DataLogger Window", "TraceDB Window" and any "List" object.
Enabling this property you will be able to manage the resizing of the object's columns. Furthermore,
in Developing mode, the viewer will becomes an active window, just like in Runtime mode, so in this
case you cannot move it but only resize it.
The "Show Control Wnd" option will always activate automatically when
project runs on the Window CE platform, independently from the settings
defined in design mode. The Grid object is the only Movicon object that
recognizes this option in Window CE. In this case, the "Show Control Wnd"
option is used for choosing whether to make column resizing possible in
runtime or not. When this option is disable, it will be impossible to resize
columns in runtime.
Refresh Button
This selection makes the command button operative for refreshing data in the Display window in
question. The refresh is carried out according the active filter's settings.
Filter Button
This selection makes the command button operative for filtering data to be displayed in the Display
window in question. For further information on filter settings, please refer to the following sections:
405
M O V I C O N _ P R O G R A M M E R _ G U I D E
small
medium
big
This property is also available for the "Option Buttons" and "Selector Buttons" and an be used for reproportioning the text size on the control when necessary.
Align Buttons
This setting allows you to select the position where the buttons are to be displayed within the Alarm
Window. The choices are:
left
top
right
bottom
Arrow type
This property is available only for the "Line" and "Connector" object types and allows to define if an
arrow should be drawn at the line end. If yes, you can define its placement (left-top, right bottom,
both).
406
D R A W S
A N D
O B J E C T S
Arrow Height
This property is available only for the "Line" and "Connector" object types and allows to define the
length of the arrow shown if the "Arrow type" property is set.
Border
This selection enables the component with a border frame according to the style selected. The
border frame will always be in rectangle shape no matter what the shape the object is.
The options are:
none
bump
etched
raised
sunken
Style
This selection allows you to set the control button's display style. A button can in fact be configured
with different types of displays, ie. lights or selectors. Keep in mind that this setting is only of a
graphic nature.
The Style property is only available for the Button components.
Rounded Style
This selection permits the gives a rounded look in 3D for Button objects.
This Rounded Style is only available for Button type objects.
Look 3D
This setting allows the component to be displayed in 3D. This property is only available for
"Rectangle" objects and makes the Rectangle look like a real button.
Look 3D Pressed
This setting allows the component to be displayed in 3D pressed down look. This property is only
available for "Rectangle" objects and makes the Rectangle look like a real button.
Time Format
This property can be used by the Movicon "Alarm Window", "Alarm Banner" and "Historical Log
Window", objects and "Report" resources, and allows you to set a customized format for displaying
ate and time fields. When this property concerns the "Alarm Window' and "Alarm Banner"and
"Historical Log Window" objects you will be allowed to define a date and time format to be displayed
in the "On Time ", "Ack Time", "Off Time " and "Reset Time" and "Event Time". when this property
concerns the "Report" resource, you will be able to define the format to be displayed in the Report's
Date and Time fields.
For example, this custom format could be set:
%d-%m-%Y %H:%M:%S
If a customized format is not set for the "Report" resource, the following fixed format will be used
instead:
%04d-%02d-%02dT%02d:%02d:%02d.%03uZ
All the format codes that can be used in this property are listed in the "Data Formats" paragraph
from the "Data Format" Section.
Duration Format
This property can be used both by the Movicon "Alarm window"and "Historical Log Window" objects
and "Report" resource, and allows you to set a customized format to be displayed in the "Duration"
field. When dealing with the "Alarm window" and "Historical Log Window" objectx the duration
format can be defined to display times in the "Duration" and "Total Time ON" columns. The field in
this case will only be updated on an "Alarm Off" event. When dealing with the 'Report' resources, a
format and be defined to be used in the Report fields which express durations.
This format can only include the following special codes:
407
M O V I C O N _ P R O G R A M M E R _ G U I D E
If this entry field is left empty, Movion will automatically insert the total event duration in the
following format:
%D,%H:%M:%S
which will display as "0,00:00:00" indicating the even duration in days, hours, minutes and seconds.
408
D R A W S
A N D
O B J E C T S
the "Generate Unique File name" command to automatically create a unique name to identity the file
for you.
It would be wise to insert the Configuration File into the project's "DATA"
folder (default path). When inserting Configuration Files in different folders
Movicon will use absolute paths that may cause errors to arise when loading
files.
After having inserted the object's Configuration File name, you will need to
use the "Save command for creating the file. Otherwise, when starting up
the project in runtime a "not found" error may arise:
"C:\TestProject\DATA\Config.sxml not found."
Symbol size and position settings are never loaded while the
Configuration File is being loaded and remains with its original
settings. The Configuration File can be loaded using the "Load"
command in design or runtime mode if the "Auto Load File Settings"
has been enabled or by using the "LoadExtSettings" function.
Auto Load File Settings
This property, enabled for default, executes the loading of the settings from the "Symbol
Configuration Files" associated to the object creation, which normally happens when the screen is
opened.
Auto Save File Settings
This property is disabled for default and executes the save of the settings in the "Symbol
Configuration Files" associated to the object's destruction that normally happens when the screen is
unloaded from memory. In this way any modifications done in runtime to the object are made
persistent by exploiting the settings file.
Generate Unique File name
When this button is pressed, a unique name for the "Configuration File" will be generated
automatically in GUID analog format (number in 128 bit) i.e. 0A8DEC92-9213-4DBA-A7E6C4157ECA8883.sxml. This name will only be generated if another name has not yet been entered in
the "Symbol Configuration Files" property.
This command generates only the file name. In this way the file will be
created in the project's "DATA" folder with the "sxml" extension. These
settings can be modified through the "Symbol Configuration Files" property.
Load
This command loads all the configuration file's settings selected in the "Symbol Configuration Files"
property and applied to the object.
Save
This command saves the object's settings in the Configuration File selected in the "Symbol
Configuration Files" property.
409
M O V I C O N _ P R O G R A M M E R _ G U I D E
It is essential that the object has a name for referential purposes when the
Basic Script functions are being used. In this case all the Screen's internal
objects must have an unique name.
Object Title
This edit box is used for inserting a text string to be associated as the object's title. The typed text is
also visible in the symbol during Runtime.
When enabling the "Text Properties common to Drawings and Controls" the
object's title will be replaced by the variable's contents during Runtime. You
can also edit the Title by using the appropriate Basic functions.
Global Name
This edit box is used for declaring the element's name as a global name on the screen and therefore
making it accessible from basic logics from any other drawing by using the "objectname.property" or
"objectname.method" syntax.
When this selection is not used, the assigned name will only be acknowledged locally within the
symbol.
The name may be used in any eventual basic script logic in the templates management.
When an object's Global Name property is enabled, the object must have a
univocal name within the screen otherwise it will not work correctly.
In addition, Global Names cannot be used for objects contained in
Embedded Screens.
Object Public Name
This edit box is used for assigning a name which will be managed as a Public Name (for the Screen
or the project) through which all the inherent characteristic settings of Drawings/Symbols and
Controls will be referred to. These functionalities, described in the appropriate paragraph "Public
Symbols" permit the automatic editing of all the symbols' properties belonging to a predefined
Public Name.
The symbols' inheritance function lets predefined symbol categories be set
in order that their properties can be edited in a certain point of the project.
For further information on this potentiality please consult the appropriate
paragraph on "Public Symbols".
Preserve Size
When this check-box is enabled the sizes assigned to the component in question will remain
unaltered during the Public Symbols updating phase. If this is not selected the component's sizes will
be adapted to the parent public symbol, being the one contained in the base Screen which can be
selected through the "Public Source Container" property from the "Screen Execution
Properties".
Preserve Dynamics
When this check-box is enabled the animation dynamic properties assigned to the component in
question, will remain unaltered during the Public Symbols updating phase. If this is not checked the
component's animation dynamic properties will adapt to the base public symbol, being the one
contained in the base reference Screen, which can be selected through the "Public Source
Container" property from the "Screen Execution Properties".
When you enable the "Preserve Dynamics" property, all the "Props" which
have been set through the public symbol's "Dropping Code" will also be
preserved. In this way, each symbol will maintain their "Props" without
having to inherit them from the reference symbol.
Once the public symbol has been created, the dynamic properties are only
inherited by the property's intervention thresholds, but not when these
properties are enabled or disabled. Then the public symbol is created for
the first time, it will be the same as its reference symbol including the
dynamic property settings. At this point, however, if the dynamic
reference symbol's properties are modified, only the dynamic property
thresholds will be propagated to allocated symbols not the properties
enabling. This will allow public symbol animations to be enabled or
disabled independently.
410
D R A W S
A N D
O B J E C T S
Preserve Code
When this check-box is enabled, any Basic Script code associated to the component in question will
remain unaltered during the Public Symbols updating phase. If this is not checked the component's
Basic Script code will be updated with the one from the base public symbol, which is the one
contained in the base Screen that can be selected by means of the "Public Source Container"
property from the "Screen Execution Properties".
Preserve Text
When this check-box is enabled the text (title, name) of the component in question, will remain
unaltered during the Public Symbols updating phase. If this box is not checked the text (title, name)
of the component will be updated with that of the base public symbol, being the one contained in
the base Screen, which can be selected by means of the "Public Source Container" property from
the "Screen Execution Properties".
Preserve Colors
When this check-box is enabled the colours of the component in question, will remain unaltered
during the Public Symbols updating phase. If this box is not checked the colours of the component
will be updated with that of the base public symbol, being the one contained in the base Screen,
which can be selected by means of the "Public Source Container" property from the "Screen
Execution Properties".
Preserve Commands
When enabling this check-box, the Command List associated to the component in question will
remain unaltered during the Public Symbol updating phase. These include the "Commands On
Release", "Commands on Pressed" and "Commands While Down" command for button objects and
"Commands on Click" for all the other objects. If this box is not checked, the component's Command
List will adapt to the referenced public symbol contained in the Public Source Container screen which
can be selected using the "Public Source Container" from the Screen Execution Properties.
Preserve Variables
Enabling this check-box, during Public Symbol updating phase, will keep any variables associated to
the component in question unaltered. If this property is not selected, the variables used in the
object's properties will get inherited by the referenced public symbol, which is the one contained in
the referenced screen, selectable through the "Public Source Container" properties from the
Screen Execution properties. Also in this case, the object's variable fields will not be displayed (the
variables are in fact retreived from the reference symbol). Only the "Default Structure" field remains
visible and editable. If however the property is left enabled, the component will keep its variables
which will remain independent form the reference symbol.
Normally disabling this "Preserve Variables" property has meaning when using Aliases instead of
variables. In this way the Aliases are propagated to all the public symbols for which their Alias
Tables should then be edited (see paragraph "Aliases in Objects").
Update Public Sub objects
When enabling this check-box, any elements of symbols or sub-symbols associated a public name
will be updated according to their referenced symbol and not with the whole referenced symbol.
This permits symbols to be composed of one or more sub-symbols where each one will be updated
based on their referenced symbol. When this option is not selected, the symbol will be updated as a
whole as if its sub-symbols had not been associated to any specific public symbol.
For further information please refer to the paragraph on "Public Symbols".
Style Source Back Color
When enabling this property, during the runtime phase, the object will inherit the back color from
the Style Source Container for the active styles. For further information about this property please
refer to "Style Sources in Symbols".
Style Source Text-Edge Color
When enabling this property, during the runtime phase, the object will inherit the text-edge color
from the Style Source Container for the active styles. For further information about this property
please refer to "Style Sources in Symbols".
Style Source Font
When enabling this property, during the runtime phase, the object will inherit the font for the test
from the Style Source Container for the active styles. For further information about this property
please refer to "Style Sources in Symbols".
Show Tooltip
411
M O V I C O N _ P R O G R A M M E R _ G U I D E
A string text which is to be used as Tooltip during Runtime can be entered in this edit box. The
Tooltip, containing the text string, will show when the mouse passes over the component. The tooltip
will display for about 5 seconds before disappearing automatically.
Show Dynamic Tooltip
When this check-box is enabled the tooltip containing information inherent to the that component,
will show when passing the mouse over the component, for instance it's name, title, the variables
collated to animations and their values etc.
The "Show Dynamic Tooltip" function only works when the 'Tooltip'
property is not enabled otherwise the tooltip string defined by the
programmer will show.
Rotation Angle
This functionality rotates the object selected. The desired values can be inserted into the edit box or
the spin buttons can be used on the right hand side. The rotation is executed on 360 turn and
therefore the significant values will be from '0' to 360.
The rotation will be executed clockwise for positive values and anti-clockwise for negative values.
The rotation uses the object's baricenter which is selected by means of using the 'Baricenter'
selection box described below.
Baricenter
This functionality allows you to establish which of the object's baricenter the desired rotation is to be
executed. The rotation's baricenter can be selected on the perimeter's fixed positions, considering
the perimeter of a hypothetical rectangle which circumscribes to the component when it is a different
shape, or it can be set manually by activating the 'Custom' selection which enables the manual
settings of the object's X and Y coordinates on which the rotation's baricenter is taken into
consideration. These coordinates can be inserted in the 'Baricenter Custom X Pos.' and the
'Baricenter Custom Y Pos.' described below. When selecting the baricenter , a little black square
will appear in the object indicating its position.
Baricenter Custom X Pos.
This edit box is used for inserting the X coordinate values of the object's baricenter when the
'Custom' option has been selected in the 'Baricenter' property.
Baricenter Custom Y Pos.
This edit box is used for inserting the Y coordinate values of the object's baricenter when the
'Custom' option has been selected in the 'Baricenter' property.
Open
This button opens the configuration window for controls which have particular functions. For instance
the 'Button' control opens the 'Command List' window, while a window for selecting the columns
to be displayed shows for the "Viewer window" objects.
Dynamic Property Inspector
This button opens the selected symbol or object's "Dynamic Property Inspector" wndow. This
window will only open if the object has been set with dynamic properties (animation, etc).
Object Alias Editor
The "Object Alias Editor" opens the selected object's alias table. The same command is also
available from the menu which appears right clicking on the actual object for from the "Symbol"
menu.
For further information about using aliases please refer to paragraph "Aliases in Objects".
Show Status Mark
When this property is enabled, the graphical display of the "Status Variable" associated to a symbol
will be managed differently to that described for the "Variable Status" property. A red dot will
appear in the top left vertex when its "Status Variable" changes to quality that is different from
"good" as follows:
412
D R A W S
A N D
O B J E C T S
The graphic management shown above is only active when the "Show
Status Mark" property is enabled.
Symbol Description
This edit box is used for inserting the text string which can be used as a description of the selected
symbol.
The 'Description' property is only available for composed Symbols and not for simple
drawings and controls.
Taken from library
This field indicated the name of the library from which the symbol was taken. This property will only
be available for symbols inserted in the Symbols Library and will not show when muilti-selecting
symbols/objects.
Library Date
This field indicates when the symbol was created. This property will only be available for symbols
inserted in the Symbols Library and will not show when muilti-selecting symbols/objects.
Reference Build
This field indicated the Movicon build with which the symbol was created. This property will only be
available for symbols inserted in the Symbols Library and will not show when muilti-selecting
symbols/objects.
Check for Updates
This command checks where there are any updates available for the symbol in question (name
search is not case sensitive). This property will only be available for symbols inserted in the Symbols
Library and will not show when muilti-selecting symbols/objects.
Cache Image
This property consents to enabling or disabling the cache management for composed symbols.
When the property is enabled an image of the symbol will be created in the cache, to guarantee the
best loading performances. You must, however, keep in mind that this management can only be
used for static symbols which do not have any graphical animation. In addition to this, to avoid
consuming too much RAM the Windows registry key "MaxSymbolCache" can used to limit the
maximum number of symbols whose images can be created in the cache.
The 'Cache Image' is only available for composed Symbols and not for simple drawings
and controls.
Automatic Enable and Status on Quality
Movicon consents the automatic enabling or disabling management of objects in screens and their
graphical representations using the qualities of the variables associated to them without having to
use the "Enable Var." and "Status Var." properties. The Automatic Enable and Status on Quality
Management allows you to enable/disable this functionality (enabled for default).
The automatic managing of variable qualities associated to controls works in two ways:
Automatic Status Variable Management
When no variable has been defined in the object's "Status Var." property, Movicon will search
through the variables associated to the object and the first one it finds with a valid dynamic part
(Fixed I/O address) will be used as the Status Variable to manage the objects coloring based on the
variable's quality. When the variable's quality is not set at "Good", the object will change its graphical
aspect.
Automatic Enabling Variable Management
When no variable has been defined in the object's "Enable Var." property, Movicon will search for the
first one of the objects associated variables with a valid dynamic part ("Fixed I/O address) and use it
as the Enabling Variable. In this case the object's enabling will be managed based on the variable's
quality, meaning that it will be enabled when the variable's quality is "Good".
413
M O V I C O N _ P R O G R A M M E R _ G U I D E
To modify the Variables properties, select the object with the mouse and use the Movicon
"Properties Window".
Default Struct
By using this property you can associate a default structure variable for the symbol.
Enable Var.
This edit box is used for inserting the name of the variable (you can also use the "..." browse button
on the right hand side to select the variable) to be used for enabling or disabling the component's
command functions. When the variable is entered the component will be enabled when the variable's
value is different from zero.
The graphic animation functions will also remain active along with IL Logic or script events not User
commanded (ie, Events in Variables, SymbolLoading, etc). However, commands that can be evoked
by the User will be disabled, being any Command Lists associated to the object of Basic Script code
events such as Click, MouseUp, MouseDown, etc.
Status Var.
This edit box is used for inserting the name of the variable (you can also use the "" browse button
on the right hand side to select the variable) whose status (quality) must be displayed graphically by
the symbol. The symbol will assume a different graphic state according to the variable's status
quality so that an immediate visual understanding of the variable's status can be obtained. For
instance, an Elypse inserted with a red background will change as follows according to the variable's
status quality:
Only when the quality of the Variable's status is "Good" will the object display normally but
differently in all the other cases, generally with a greyish mesh effect colour.
Please keep in mind that the graphical effect may be difference according to
the object inserted and the background color it has been setup with.
The graphic management shown above is only active when the "Show
Status Mark" property is disabled.
The same effect obtained by using Windows 32/64 bit systems cannot be obtained with
WinCE devices, therefore the status variable graphical animation in symbols is not
supported in WinCE.
However, the "Show Status Mark" property can be used to know whether the status variable quality
is Good or not. This function is also supported in WinCE.
414
D R A W S
A N D
O B J E C T S
<: the component will be visible when the Variable's value is less than the base Value
>: the component will be visible when the Variable's value is more than the base Value
=: the component will be visible when the Variable's value is equal to the base Value
415
M O V I C O N _ P R O G R A M M E R _ G U I D E
416
D R A W S
A N D
O B J E C T S
After having activated the command a trajectory symbol will appear ready to be positioned on the
end point. The procedure is as follows:
1.
2.
3.
4.
417
M O V I C O N _ P R O G R A M M E R _ G U I D E
418
D R A W S
A N D
O B J E C T S
The value contained in the Variable expresses the component's position on the screen in pixels.
When the variable has a minimum value the symbol will be positioned to the point according to the
total amount taken from the starting point and the Start value. When the variable has a maximum
value, the symbol will be positioned to a point according to the quoted sum taken from the starting
point and the End value.
The position values contained in the base Variable are expressed in pixels,
therefore when inserting values higher than the adopted screen
resolution, the selected object may exit from the area displayed on the
screen.
Start Value Y
The Starting position value, to be obtained by the variable, is entered in this edit box. This value
does not represent the absolute position regarding the screen's Y axis' '0' coordinates, but the
position relating to the coordinates of the component's top left apex relating to the component's start
position in the Screen. When the Variable values are lower than the Start value the object will be
positioned to the point relating to the quota taken from the total amount of the Start value and the
Start Offset value.
End Value Y
The End position value, to be obtained by the variable, is entered in this edit box. This value does
not represent the absolute position regarding the screen's Y axis' '0' coordinates, but the position
relating to the coordinates of the component's top left apex relating to the component's starting
position in the Screen. When the Variable values are higher than the End value the object will be
positioned to the point relating to the quota taken from the total amount of the End value and the
End Offset value.
Offset for the Start Value Y
The position Offset value, which the component is to assume when the Variable is set with values
lower than the Start value, is entered in this edit box. In this case the object will be positioned to
the point relating to the quota taken from the total amount of the Start value and the Start Offset
value.
Offset for the End Value Y
The position Offset value, which the component is to assume when the Variable is set with values
higher than the End value, is entered in this edit box. In this case the object will be positioned to the
point relating to the quota taken from the total amount of the End value and the End Offset value.
An example of a line animation: The trajectory line illustrates the line before being moved to the
coordinates given by the variable.
419
M O V I C O N _ P R O G R A M M E R _ G U I D E
When the object is not in line form, the starting point is the top left corner and the ending point is
the bottom right corner.
420
D R A W S
A N D
O B J E C T S
Point will be positioned to the point relating to the difference taken from the total amounts of the
Start value and the Start Offset value.
End
The End position value, to be obtained by the variable, is entered in this edit box. This value does
not represent the absolute position regarding the screen's X axis' '0' coordinates, but the position
relating to the coordinates of the far left apex relating to the component's starting position in the
Screen. When the Variable values are higher than the End value the object's Start X Point will be
positioned to the point relating to the quota taken from the total amount of the End value and the
End Offset value.
Start Offset
The position Offset value, which the component's Start X Point is to assume when the Variable is
set with values lower than the Start value, is entered in this edit box. In this case the object's Start
X Point will be positioned to the point relating to the quota taken from the difference of the total
amounts of the Start value and the Start Offset value.
End Offset
The position Offset value, which the component's Start X Point is to assume when the Variable is
set with values higher than the End value, is entered in this edit box. In this case the object's Start X
Point will be positioned to the point relating to the quota taken from the total amount of the End
value and the End Offset value.
421
M O V I C O N _ P R O G R A M M E R _ G U I D E
Screen. When the Variable values are higher than the End value the object's Start Y Point will be
positioned to the point relating to the quota taken from the total amount of the End value and the
End Offset value.
Start Offset
The position Offset value, which the component's Start Y Point is to assume when the Variable is
set with values lower than the Start value, is entered in this edit box. In this case the object's Start
Y Point will be positioned to the point relating to the quota taken from the difference of the total
amounts of the Start value and the Start Offset value.
End Offset
The position Offset value, which the component's Start Y Point is to assume when the Variable is
set with values higher than the End value, is entered in this edit box. In this case the object's Start Y
Point will be positioned to the point relating to the quota taken from the total amount of the End
value and the End Offset value.
422
D R A W S
A N D
O B J E C T S
Point will be positioned to the point relating to the quota taken from the difference of the total
amounts of the Start value and the Start Offset value.
End Offset
The position Offset value, which the component's End X Point is to assume when the Variable is set
with values higher than the End value, is entered in this edit box. In this case the object's End X
Point will be positioned to the point relating to the quota taken from the total amount of the End
value and the End Offset value.
423
M O V I C O N _ P R O G R A M M E R _ G U I D E
424
D R A W S
A N D
O B J E C T S
This property is part of the Drawings and Controls 'Animation' properties group.
To edit the Rotation properties, select the object with the mouse and use the Movicon 'Properties
Window'.
Enable
When enabling this check-box the Rotation function in the selected component will be activated. By
doing this the component can be rotated on its own baricenter in function with the associated
Variable.
The object's baricenter is set up through the "Baricenter" property in the
"Drawings and Controls common General Properties" settings. The
position of the baricenter can be managed dynamically by enabling the
Enable X point rotation and Enable Y point rotation properties as
described below.
Variable
The name of the variable whose value will be used for executing the component's rotation is entered
in this edit box (or selected by using the "..." browse button on the right hand side). The object is
rotated on angles of 60 degrees, therefore the variable can assume an interval of values ranging
from 0 to 360, being angles of 60 degree turns. Values higher or lower than this range will be
executed on a further rotation of the object. For instance the 720 value will take the object to the
start position after having completed two turns.
Start
The minimum value of the Variable which will correspond to the object's rotation start is entered in
this edit box. When the Variable obtains values lower than this value the object will rotate in the
position obtained by subtracting the Start and Start Angle values.
End
The maximum value of the Variable which will correspond to the end of the object's rotation end is
entered in this edit box. When the Variable obtains values higher than this value the object will
rotate on the position obtained by the total amount taken from the End and End Angle values.
Start Angle
The rotation value which the component must obtain when the Variable is set with values lower
than the Start value is entered in this edit box. In this case the object will be rotated in the position
obtained by subtracting the Start and Start Angle values.
End Angle
The maximum value which the component must obtain when the Variable is set with values higher
than the End value is entered in this edit box. In this case the object will be rotated in the position
obtained by the total amount taken from the End and End Angle values.
Enable X point rotation
This check-box has to be enabled in order to dynamically define the X position of the object's
baricenter where the rotation is to take place. This position is given by the value contained in the X
point Variable.
X point Variable
The name of the variable in which the value identifies the X position of the object's baricenter where
the rotation is to take place is entered in this edit box (or selected with the "..." browse button on
the right hand side). This value is expressed in pixels and does not represent the absolute point
concerning the '0' coordinates of the screen's X axis, but the point relating to the component's
furthest left apex, and therefore the components start position in the Screen. If the variable's value
is higher than the object's maximum width the object's will be considered as the X Baricenter the end
X coordinate of the object.
Enable Y point rotation
This check-box has to be enabled in order to dynamically define the Y position of the object's
baricenter to where the rotation is to take place. This position is given by the value contained in the
Y point Variable.
Y point Variable
The name of the variable in which the value identifies the Y position of the object's baricenter where
the rotation is to take place is entered in this edit box (or selected with the "..." browse button on
the right hand side). This value is expressed in pixels and does not represent the absolute point
concerning the '0' coordinates of the screen's Y axis, but the point relating to the component's
425
M O V I C O N _ P R O G R A M M E R _ G U I D E
highest apex, and therefore the components start position in the Screen. If the variable's value is
higher than the object's maximum length the object's will be considered as the Y Baricenter the end
Y coordinate of the object.
Numeric Variable: if the variable is numeric type, the number set will represent the number
of decimal figures after the point. For example, when entering the '2' value in this field, the
"x.xx" format will be used. If the set value is negative, the absolute value will be taken,
therefore when entering "2" or "-2" the same result will be obtained. If the value is in
floating type with decimal figures, the value will be rounded off, for example; an entered
"1.4" will be taken as "1" and an entered "1.6" will be taken as "2".
String Variable: if the variable is string type, its format must be one of those provided by
the control system which are listed in the paragraph headed "Predefinided Movicon Format"
from the section on "Data Formats" (i.e. "x.xx", "%s", etc.).
Caution! When using a string variable type make sure that you insert
a correctly supported format. If the string inserted is not in a valid
string format, the value will not get displayed correctly.
426
D R A W S
A N D
O B J E C T S
427
M O V I C O N _ P R O G R A M M E R _ G U I D E
Enable
When enabling this check-box the Edge-Text Color function will be activated in the component
selected. By doing this the component will change the colours of the edges and any displayed texts
in function with the values of the associated variable during Runtime.
Variable Color
The name of the variable, whose value will be used for changing the colours of the edges and any
texts in function with the set 'Threshold Colours', is entered in this edit box.
Variable Is Alarm Group
The enabling of this property allows you to set the variable used for the animation as the name of
the alarm area to be monitored. In this case the name of the Alarm Area is entered in the "Variable"
field instead of the variable. In this way the intervention thresholds will result as:
0 = No Alarm
1 = At least one alarm active
2 = At least one alarm ON
This will allow the status of each alarm area to be monitored graphically by setting the 0,1,2 in the
back animation properties.
Furthermore, when this option is enabled with a string type variable entered in the "Variable" field,
the contents of this string will be used as the name of the Alarm Area to be monitored.
This property is not supported in Network Client projects or in
projects set as Redundancy "Secondary Server" when the Primary
Server is active. In both cases the projects will not have their alarm
management active locally, but will receive alarm notifications
directly from the Server.
Edit Edge-Text Color List
This property is used for assigning colours desired for the component's edges and text of the
numeric values obtained by the Variable. Click on the "..." button to open the Color Threshold
configuration window.
To get further information please refer to the paragraph on "Colour Threshold Settings in
Drawings and Controls".
Analog Colors
This property enables a gradual change over from one colour to another involving an 'analog'
mixture of the two colours where they change over. This gradual change over of color shades can
only be carried out when the Variable's two threshold values have been inserted with intermediate
values.
428
D R A W S
A N D
O B J E C T S
none
left-right
right-left
bottom-top
top-bottom
429
M O V I C O N _ P R O G R A M M E R _ G U I D E
For instance, taking into consideration the settings reported in the above figure we should get:
Variable Value
0
1
10
...
90
100
...
Colour
Red
Green
Blue
...
Cyan
Yellow
...
If the 'Analog Colours' option has been selected the pass over from one
colour threshold to another will be gradual, and therefore a series of
intermediate colours managed by Movicon will be displayed during
Runtime.
By using the "Copy" and "Paste" commands described below you can copy the defined color
threshold list from one object and paste it in other different objects. This allows you transfer color
thresholds from one object to another quickly for all types of dynamic animations: "Background
color", "dynamic Text" and "Text & Edge Colors" and "Gradual Filling".
The buttons positioned on the right hand side of the dialog window allow you to edit the colour
thresholds. Their functions are:
430
D R A W S
A N D
O B J E C T S
Add: adds a new Colour Threshold. A 'Edit Colour Threshold' window opens
Edit: after having selected a threshold from the list it's settings can be edited. A ' Edit Colour
Threshold' window opens
Remove: after having selected a threshold from the list it can be deleted
Default: when pressing this button the threshold list will be cancelled and the 7 default
thresholds will be inserted by Movicon
Copy: consents you to copy the color threshold list to the Windows Clipboard. The color
threshold data is copied to the Window clipboard in xml format
Paste: consents you to paste the color threshold list, previously copied to the Windows
Clipboard with the "copy" command, to the selected object
You are required to enter at least two threshold when editing thresholds.
However, it is possible to delete all the color thresholds from the list. In
this case Movicon will use the default threshold list, and the nest time the
threshold edit window is opened all the default thresholds will show again.
431
M O V I C O N _ P R O G R A M M E R _ G U I D E
Text
The text string is entered in this edit box. The string will be displayed inside the component together
with any animations that have been set when the preset threshold has been reached. This option
allows you to create dynamic texts. This property is only available for the "Edge - Text Color
Properties common to Drawings and Controls" function.
Color
This setting is used for selecting the colour to be associated to the Threshold.
For further information on selecting colours please refer to the paragraph on "Color Selection".
Blink Colour
This permits you to select the blink colour to be used together with the threshold's Color when the
Customized Blink in the Mode property has been selected.
For further information on selecting colours please refer to the paragraph on "Color Selection".
When the Variable assumes the value associated to the image, it will be displayed in the component.
The buttons available for editing the list are:
432
D R A W S
A N D
O B J E C T S
Add: consents the entry of a new animation on the list (image associated to the Variable's
value)
Edit: consents the editing of an animation already inserted on the list. The image to be
modified must first be selected.
Remove: consents you to delete the selected image from the list.
At least two thresholds must be set to animate images.
When pressing the 'Add' and 'Edit' keys another window will open where the images can be
selected and associated with the value of the variable:
This window, called the Image list, permits you to set the image display conditions. This window is
used for setting the Threshold value referring to the associated Variable. The threshold value
determines the activation and appearance of the image (or sequence of images), and can be set in
fixed constant, 'Value' field, or dynamic value, 'Variable' field.
The buttons used for managing the images have the following functions:
You can associate more than one image to each threshold value. In this case, when the threshold is
activated the images are displayed in sequence, in time intervals specified in the 'Animation Time'
field.
The possibility to enter more than one image for each threshold consents
the different images to appear in sequence within the symbol by simply
creating graphic animation in single sequences or continuous cycle.
433
M O V I C O N _ P R O G R A M M E R _ G U I D E
When adding the preset threshold, the image of sequence of images will be displayed according to
the set mode selected from the following options:
Transparent: the image's colour selected through the "Transparent" property from the Fill
Attributes Properties common to Drawings and Controls' group will appear transparent in the
object
Stretch: the image will be adapted to the preset sizes of the object containing it.
Continuous Cycle: the images will be cycled by overlapping each other continuously until
no longer permitted by the activation conditions. Otherwise, the sequence of images will be
carried out once only upon the rising edge of the threshold's condition.
Animation Time: if more images have been added in this window, they will be made to
automatically appear by Movicon in sequence of entry order, with time intervals (in
milliseconds) set in this edit box.
434
D R A W S
A N D
O B J E C T S
Invert Color
This property inverts the object's back colors and border colours.
Show Focus
This property is used for enabling the display of the control's outline when focused on.
Show Hilite
This property is used for enabling the control's inside border to highlight when the mouse pointer is
on top of it.
This property expresses the X coordinate of the component's furthest left corner edge. The value is
expressed in pixels and relates to the Screen window's 0 point (the top left corner edge) which
contains the component. The value of this property will be automatically modified each time the
component is moved in the Screen and vice-versa by modifying this value the component will
graphically change its position.
This property expresses the Y coordinate of the component's highest corner edge. The value is
expressed in pixels and relates to the Screen window's 0 point (the top left corner edge) which
contains the component. The value of this property will be automatically modified each time the
component is moved in the Screen and vice-versa by modifying this value the component will
graphically change its position.
Width
This property expressed the component's width. The value is expressed in pixels. The value of this
property is automatically modified each time the component is resized in width and vice-versa by
modifying this value the component will graphically change is size.
Height
This property expresses the component's height. The value is expressed in pixels. The value of this
property is modified each time the component is resized in height and vice-versa by modifying this
value the component will graphically change its size.
435
M O V I C O N _ P R O G R A M M E R _ G U I D E
MARGIN X
Applicable
Applicable
Not Applicable
Applicable
Applicable
Not Applicable
Applicable
Applicable
Not Applicable
Applicable
MARGIN Y
Applicable
Applicable
Applicable
Applicable
Not Applicable
Not Applicable
Not Applicable
Applicable
Applicable
Applicable
The "Stretched" option will adapt the image to the sizes of the object containing it taking into
consideration any set offsets.
436
D R A W S
A N D
O B J E C T S
Image Margin X
An offset value can be entered in this editbox to be used for moving the object's image horizontally.
This offset will be applied between the object's borders and the image moving them according to
the set alignment type. For instance, when setting the offset value to 10 with the alignment set at
"center-left", the offset will be inserted between object's left border and the image, or between
object's right border and the image with the alignment set at "center-right".
The offset can also obtain negative values which will move the image outside the object's borders.
Image Margin Y
An offset value can be entered in this editbox to be used for moving the object's image vertically.
This offset will be applied between the object's borders and the image moving them according to
the set alignment type. For instance, when setting the offset value to 10 with the alignment set at
"top-center", the offset will be inserted between the object's top border and the image, or between
the object's bottom border and the image with the alignment set at "bottom-center".
The offset can also obtain negative values which will move the image outside the object's borders.
Keep Proportions
This option box is only considered if the "stretched" option has been chosen for image alignment.
When the "Keep Proportions" property is enabled, the image having been stretched to the object's
sizes will keep the X and Y proportions respecting the original sizes. Otherwise the image will be
completely stretched to the object's size.
Stretch Image
This property is used for setting the sizes of the associated image to fit in the object containing it.
Keep in mind, however, that when changing the image's sizes it's graphical look may be effected.
Image Transparent Color
This property allows you to select a colour which will become transparent in the image associated to
the control. The '-1' value consents the colour transparency to be used for those image formats
supporting this property.
For further information on selecting colours please refer to the paragraph on "Color Selection".
Transparency Level
This property allows you to set the selected object's transparency level. The values which can be
used start from 0 to 255 (0 = completely invisible, 255 = completely visible).
The settings of this property will be ignored if the "Transparency" Animation
property has been enabled which consents to managing the transparency
dynamically based on variable values.
Transparency animation is NOT supported in WinCE.
In addition to this, the transparency property has no effect in
"Dundas Meter" and "Chart" objects. The "Dundas Gauges"
transparency is set in the object's wizard. The "Chart" has a
background attribute management where can be set with a gradient
type and color but does not support transparency.
The Access Levels properties are active only when the "Enable Password
Manager" property from the 'Users and User Groups General
Properties' has been in enabled in the project.
Write Access Level
By means of this property you can define the Access Level mask needed to execute, for example, the
command list associated to the control. If the access level mask of the user logged on at that
moment does not correspond to the control's settings, the user will not be able to execute any
command operations associated to that control.
437
M O V I C O N _ P R O G R A M M E R _ G U I D E
For further information see the paragraph on "User Levels and Access Levels".
Read Access Level
By means of this property you can define the Access Level mask needed for reading the control. If
the access level mask of the user logged on at that moment does not correspond to the control's
settings, the user will not be able to see the control which becomes invisible.
For further information see the paragraph on "User Levels and Access Levels".
User Level
By means of this property you can define the User Password level needed for example to execute the
commands associated to the control. When the control in question is used by a user, Movicon will
request activation of a user with a User Password level the same or higher than the one defined in
the control itself. If the user who executed the Log on has the necessary access rights they will be
authentically acknowledged, otherwise the Log on will fail and it will not be possible to carry out the
operations requested by the user.
For further information see the paragraph on "User Levels and Access Levels".
438
None
D R A W S
A N D
O B J E C T S
Raised
Embossed
Center
Top
Bottom
Left
Right
Center-Left
Center-Right
In addition to the " X Offset" and "Y Offset" properties the text can also be moved
horizontally and vertically in relation to the available Alignment settings:
Alignment
Center
Top
Bottom
Left
Right
Center-Left
Center-Right
X Offset
No
No
No
Yes
Yes
Yes
Yes
Y Offset
No
Yes
Yes
Yes
Yes
No
No
These text alignment settings are also valid for multi line strings in object that support
them.
Only some of the objects are managed with the alignment in multi-lines for all types of alignment
(including central alignment) when the text exceeds the width of the object. The Objects which
support multilines are:
Use Antialiasing
The "Use Antialiasing" property for texts displayed in screen objects' Titles is used for slighting
reducing the gradient effect which is used for vectorial rounded graphics. When activating this
option the Font will appear smoother and continuous and less with a sloping step effect on rounded
text. The Antialiasing is also evident when activating the screen's zoom.
The Font "Antialiasing" is applied only to texts relating to the Titles of screen objects. The
"Antialiasing" is not applied to object titles with activated "Adapt Font" activated or if the Font's
439
M O V I C O N _ P R O G R A M M E R _ G U I D E
"Orientation" is not set at zero. non viene tuttavia applicato nel caso in cui all'oggetto sia stata
attivata la propriet "Adatta Font" oppure se stato impostato al Font un "Orientamento" diverso da
zero.
Warning! When applying the Antialiasing to the Font, lines may appear
slightly fuzzy, which becomes more evident when the set Font is made
smaller. In addtion, it is quite normal that when the "Use Antialiasing"
option is activated it may cause an increase in the size of the text by one
pixel.
Libraries implemented with the Antialiasing option will have no effect when used in
Window CE operating systems. When the project's Platform property is set to "WinCE",
the "Use Antialiasing" option will not appear as one of the object "Font" group
properties.
X Offset
An offset value can be inserted in this editbox to be used for moving the object's text horizontally.
This offset will be applied between the object's border and text moving the text according to the
alignment type set. For example, when setting the 10 offset value with an "left" alignment setting,
the offset will be inserted between the object's left border and the text. If a "right" alignment
setting is used, the offset will be applied between the object's right border and the text.
Y Offset
An offset value can be inserted in this editbox to be used for moving the object's text vertically. This
offset will be applied between the object's border and text moving the text according to the
alignment type set. For example, when setting the 10 offset value with an "top" alignment setting,
the offset will be inserted between the object's top border and the text. If a "Bottom" alignment
setting is used, the offset will be applied between the object's bottom border and the text.
Title Font
The name of variable whose value is to be displayed by the component is entered in this edit box (or
select name by using the "..." browse button on the right hand side).
The default settings are:
Char type: Tahoma
Style: Normal
Points: 8
440
D R A W S
A N D
O B J E C T S
441
M O V I C O N _ P R O G R A M M E R _ G U I D E
CY Min.
This edit box is used for entering the minimum value of the Y size (in pixels) within which the
operator can resize the object or symbol.
CY Max.
This edit box is used for entering the maximum value of the Y size (in pixels) within which the
operator can resize the object or symbol.
442
D R A W S
A N D
O B J E C T S
All the public symbols of the same group must have the same "Public Name"
A reference symbol must be set up from which all the others will get their properties
Each symbol has to be established with properties which will remain unaltered and properties
which will be updated in accordance with the reference symbol
The properties to be kept unaltered and those to be updated in accordance to the reference symbol
can be set for each symbol singularly through the "Drawings and Controls common General
Properties". The properties involved are as follows:
Preserve Size: the sizes assigned to the component in question will be kept unaltered
during the updating phase of the Public Symbols. If the check-box is not selected with a tick,
the component's sizes will be adapted to the those of the reference public symbol
Preserve Dynamics: the dynamic animation properties assigned to the component in
question will be kept unaltered during the updating phase of the Public Symbols. If the checkbox is not selected with a tick, the components dynamic animation properties will be adapted
to those of the reference public symbol
Preserve Code: the Basic Script code associated to the component in question will be kept
unaltered during the updating phase of the Public Symbols. If the check-box is not selected
with a tick, the component's Basic Script code will be updated with that of reference public
symbol's
Preserve Text: the text (caption, name) of the component in question will be kept unaltered
during the updating phase of the Public Symbols. If the check-box is not selected with a tick,
it will be updated with that of the reference public symbol's
Preserve Colors: the colours of the component in question will be kept unaltered during the
updating phase of the Public Symbols. If the check-box is not selected with a tick, it will be
updated with those of the reference public symbol'
Preserve Commands: the Command list associated to the component in question will not
be altered and will remain the same during the Public Symbol update phase. If this
checkbox is left unchecked, the component's Command List will be updated with its
referenced public symbol.
In cases with public symbols composed with numerous components, updating will take effect in each
of the symbol's components and for each component you can choose what to preserve and what not
to preserve. To manage updates of this type in various levels, each public symbol component must
be set with a different and unique name in respect to the others. On the contrary, the public symbol
will be updated only at public source container level and all sub components will be made equivalent
in their entirety to this update. Movicon facilitates the process of creating symbols by giving them
unique names when the group command is used for those objects that haven't already been given
one.
443
M O V I C O N _ P R O G R A M M E R _ G U I D E
A public symbol updates with its referenced symbol in design mode as well. Public symbol updates
occur each time the screen is opened in edit mode or every time a property is modified requiring a
consequential update. The user can then check and see the public symbol's aspects after undergone
any updates while still in design mode.
Once the symbol has been updated, its modified xml code is saved making
it impossible to return back and recover the original.
However, you can opt to manage public symbol updating in Runtime mode only, therefore those
symbols defined as public in design mode will be displayed with their native properties and features
and only in Movicon Runtime mode can they be modified. This allows deactivation of a public
symbol's component function to then return back to its original configuration. This type of
management can be obtained by using the "DisablePublicSymOnDesign" configuration key. By
setting this value to "1", updates to public symbols will only take place during runtime only.
The property windows of a symbol, linked to a referenced public symbol, automatically displays only
those parameters that can be modified, which hiding all the others which are updated by the linked
public source container's reference symbol.
This command requires user confirmation each time a public symbol is found on screen or in the
project with the same name set for searching. The user also has the option to continue the search
without updating the symbol found, cancel the remaining search, or not be asked to confirm again
and updated remaining public symbols automatically.
This second method, compared to those previously described, enables the application to offer the
developer another way of managing public symbols in design mode with commands provided by
the programmer.
444
D R A W S
A N D
O B J E C T S
background color
text and edge color
font
The style sources are acquired by the screen and by the objects it contains and acts as a style
container which is not usually displayed in runtime principally because it is only a source container.
The controls inserted in this screen work as stile generators. Each object from the style source
screen is a style source for the objects belonging to the same category. Only the first control in
tabulation order for each object type will be examined and become the style source. For example,
when inserting many display objects in the style container screen, only the first tabulation order will
act as the style reference.
Some objects, even though graphically different, belong to the same category, therefore inherit all
the styles of the same object source.
The table below shows which categories the objects are grouped in:
Reference Category
Object
basic
poly
Button
Line
Rectangle
Rounded Circle
Ellipse
Arc
Chord
Pie
Text
Square
Circle
Polygon
Polyline
Pipe
Polybezier
"Buttons-Lights-Switches" Category:
"Advanced shapes":
Gauge
Group
"Sliders-Gauges-Meters-Displays":
445
M O V I C O N _ P R O G R A M M E R _ G U I D E
"Editbox-Display"object
Trend
Chart
GridBox
Scheduler Window
446
TraceDB window
IPCamera
DataLogger/Recipe Window
HourSelector
Log Window
TraceDBWnd
Alarm Window
DLRWnd
Tab Group
HisLogWnd
Horizontal Spin
Vertical Spin
Editbox-Display
Combo Box
AlarmWnd
Embedded Screen
TabObj
Listbox
Edit
Grid
EmbView
Chart
ListBox
Horiz. Plotter
Vert. Plotter
Horiz. Trend
Vert. Trend
XY Trend
Data Analysis
IP Camera Viewer
D R A W S
A N D
O B J E C T S
Style updating is only done in the Runtime phase. therefore the symbols
whose styles are edited will show with their original properties during
design mode. Movicon will only apply the modifications during the Runtime
phase.
create one or more style source screens for placing shape references in
the properties of style source references ("background Color", "Edge-Text Color ", "Text
Font") and screen ("Back Color") are set as required. These properties are those which will be
propagated as style references for the other project symbols
the style source screen name must be inserted in the screen, user, user group or string table
language column's "Style Source Container" property. By doing this, the style source of the
resource active at that moment will activate according to the priorities described below
the properties of the project objects (shapes) ("Style Source Back Color", Style Source EdgeText Color" Style Source Font) and any of the screens ("Back Color") will be enabled based
on the fact that these objects or screens have got to inherit the styles in question from the
style source screen
For instance the three properties below are available for each object that can be inserted on screen.
When these properties are enabled, they will consent the object to inherit the style from the style
source screen:
However, a screen can only inherit a back color style due to the one property available to enable
this:
447
M O V I C O N _ P R O G R A M M E R _ G U I D E
Associating the screen itself as its "Style Source Container" in the project
design phase will generate the following error in the log file:
"Cannot find the Style Symbols resource container 'Screen1"
Only the colors from the back ("Back" property) and edge-text (Edge-Text
property) are inherited. The colors inherent to other properties, such as
the Alarm Window Log colors or the Gauge Warning Zone, etc are not
inherited by the styles management.
448
449
M O V I C O N _ P R O G R A M M E R _ G U I D E
Movicon will propose an object, such as a Control, to be inserted for default during the insertion
phase.
During the insertion phase the ActiveX object can be inserted as a new object created by the
application of origin or can be built from the contents of the specified file by selecting the file's
Create option.
450
A C T I V E X ,
O C X ,
O L E
The Add Control button allows new ActiveX controls to be inserted and registered in the operating
system. In this case, the files of origin need to be selected by means of the standard file selection
window.
When an ActiveX object is inserted into a screen, if is in fact inserted in the ActiveX object container.
This container object is to be considered a s a simple rectangle object. All the animation properties,
available in the Movicon "Property Windows" when the ActiveX object is selected, all refer to this
container.
451
M O V I C O N _ P R O G R A M M E R _ G U I D E
desired, provided by the ActiveX control. Code editing is done through the "Script Explorer" window
after the object has been selected:
By means of the "Script Explorer" window you can select the event (or procedure) from those
provided by the object. In order to do this you must first select the "ActiveXInterface" item from
the list box called "Object": and then select the desired event from the list box call "Proc.". The
code can be then entered and will be executed in runtime when the ActiveX generated the event.
The events provided are determined by how the object has been
predisposed by those who created it. For further information on the
operative modalities of the Basic Script codes, please consult the
appropriate section dedicated to programming Movicon Basic Scripts.
In response to the events you can also change the object according to the properties and methods
provided by the object's creator.
ActiveX object properties and methods, if available, can be viewed by using the function browser.
The browser is activated by using the Browse command found in the "Script Explorer's" tool bar.
452
A C T I V E X ,
O C X ,
O L E
through this object. In order to do this you will need to use some of the specific Basic Script
functions. The example below shows you the necessary steps to take:
Example: Let's suppose that a Calendar ActiveX type has been inserted on screen in which a button
is to be used for displaying the days selected in the Calendar. The basic code for this button would
be:
Option Explicit
Public Sub Click()
Dim objContainer As Object
Dim objCalendar As Object
End Sub
The "objCalendar" object is the Calendar object, therefore provides all the methods and properties
belonging to the ActiveX.
453
M O V I C O N _ P R O G R A M M E R _ G U I D E
454
A C T I V E X ,
O C X ,
O L E
The OLE object which can be inserted in to Movicon projects depend on the applications installed on
the hardware platform capable of supporting this standard. During the insertion phase the OLE
object can be a new object created from the application of origin or it can be built by the contents of
the specified file by selecting this file's create option.
455
M O V I C O N _ P R O G R A M M E R _ G U I D E
456
457
M O V I C O N _ P R O G R A M M E R _ G U I D E
458
M E N U
R E S O U R C E S
The right mouse button is used for inserting item into menus after having selected the Menu or the
position required, or by using the "Command" window from the 'Project Explorer'.
To edit or modify the items use the Movicon 'Properties Window'.
To delete one or more items from the menu, select and activate the Delete command by using the
DEL key or the 'Edit' system menu.
Any editing can be cancelled or restored with the Undo and Redo commands.
The techniques used for working on a menu structure are equivalent to the ones used for project
tree structures.
To change the Item order just select, drag and drop them with the mouse in the position desired.
459
M O V I C O N _ P R O G R A M M E R _ G U I D E
7.
8.
9.
You have now completed the menu and can now activate the Screen resource representing the
pump P1 drawing.
Insert the Hot Region object, after which you can position and size it as required then configure it by
assigning it with the Menu activation command in the execution properties.
When specifying this command you can select the menu you have just edited and named 'Pump P1
Menu' from the 'Menu' list.
Run the project and click on the pump P1 drawing to display the 'Pump P1 Menu'.
460
M E N U
R E S O U R C E S
Normal: activating this selection will display the item as a normal menu item. The item has
to be associated with a text description which will appear as the menu item, to which a
command execution will be associated from the "Menu Item Execution Properties"
Pop-up: activating this option, means that the menu item is to display a further list of items.
The 'pop-up item will be marked by a " " symbol and if activated will display the items
appropriately inserted in the menu's tree structure.
Separator: activating this option means that line separator will be displayed between each
menu item. A separator is usually used when a division between two items needs to be
highlighted. A separator item can not be executed and therefore does not have any execution
properties.
The number of items (pop-up, normal or separator) that can be inserted into each menu is virtually
unlimited.
Caption
461
M O V I C O N _ P R O G R A M M E R _ G U I D E
The text used as the item's title is entered in this edit box. The text will be displayed in the menu as
an item which can be associated with an execution command or a pop-up submenu.
The caption is not available when the separator item is being used.
Prompt
The text string, which is displayed in the status bar when the menu item is selected is entered in this
edit box.
The status bar, (found at the bottom of the workspace) can serve as an
information guide for the Movicon menu items.
Image
This property is used for selecting the image to be displayed in menu in the place of the title.
User Level
The Password User Level is entered in this property which is needed for executing, for instance, the
command lists associated to the Menu Item. When the Menu in question is to be used by a user,
Movicon will request activation of a user who has a Password User Level equal to or higher to that
set in the Item itself. If the user, logging on, has the necessary access rights they will be given
correct authentication, otherwise they will be denied Logon and it will not be possible to execute the
operations requested.
For further information see paragraph "User Level and Access Level".
462
The Movicon Shortcut keyboard commands, when active, always have top
priority over the same keys or combination keys used by Windows for
operating system commands as the Shortcut provides command activation
upon being pressed and not released.
Example: If the Windows system provides the F1 key for activating the
guide and the Movicon Shortcut is active which has the same command for
executing upon pressing the F1 key, the command associated in the
Shortcut will be given priority.
463
M O V I C O N _ P R O G R A M M E R _ G U I D E
The association of Shortcuts to Screens permit the same keys to be associated to different functions
relating to the screen page displayed.
This illustration shows an example of how Screens and Shortcuts are related:
464
S H O R T C U T
R E S O U R C E S
465
M O V I C O N _ P R O G R A M M E R _ G U I D E
The speech recognition can also be managed in multilingual. All the texts that can be associated to a
Shortcut's speech recognition properties can be inserted using Sting IDs from the String Table.
However, as mentioned above, the speech recognition engine is only available in English
and therefore texts associated in these properties must always be in English no matter
what language has been activated in the project.
System Variables
During the runtime phase you can use some System Variables for verifying which Shortcut is active
and the working status of the speech recognition. These variables, whose meanings are described in
the relating "System Variables" section, are as follows:
_SysVar_:SRActiveShortcut
_SysVar_:SRListening
_SysVar_:SRIsActive
_SysVar_:SRLastUnderstood
Example:
Below you will see how to use the Shortcut properties to configure a command for exiting from the
application. Those properties not mentioned can be left set with their default values.
Shortcut General Properties:
At this point conversation between User and System during project Runtime will be as follows:
-
User: "Exit"
System: "Confirm Exit?"
User: "Yes"
At this point the application's exit command will be activated.
When a vocal command aims to set a variable value, as if a "Numeric Pad" is used, you
should always start the value pronunciation adding "zero", in order to allow the SR (Speech
Recognition) engine to convert the vocal text in a number and not in a string.
Examples:
'zero
'zero
'zero
466
one
point
two'
corresponds
to
the
'1.2'
value
five
zero'
corresponds
to
the
'50'
value
twenty'
corresponds
to
the
'20'
value
to
to
to
set
set
set
When the command is "Numeric Pad"-like, the pronounced value will not be accepted if out of
the ranges defined for the command, or if does not correspond to a number. When the
command is "Alphanumeric Pad"-like, the pronounced text will not be accepted if containing a
number of chars higher than the one specified in the command. In both cases you can define
an "Invalid Value Text" message.
When a vocal command aims to set a variable value through the"Numeric Pad or
"Alphanumeric Pad", if the "Require Confirm" option has been enabled, the vocal confirmation
S H O R T C U T
R E S O U R C E S
should be given twice: the first time to confirm the command execution, the second time to
confirm the pronounced set value.
Example:
Please find below an example of how to configure a Shortcut properties to obtain a command for a
numeric variable value set using a "Numeric Pad". The properties not specified here can be left with
the default values:
General-Speech recognition Shortcut properties:
At Runtime, a possible conversation between the operator and the system could be as follows:
- Operator: "Numeric"
- System: "Insert Value"
- Operator: "zero one point five"
At this point the value "1.5" will be set for the variable
2.
3.
4.
Create a new Shortcut resource from the 'Project Explorer' window and call it 'Main'. This
Shortcut resource will always be activated whenever the 'Main' Screen is loaded (by setting
up the 'Main' Screen as the project's startup Screen, the 'Main' Shortcut will consequently
become the project's default Shortcut). Edit the new Shortcut by adding the commands for
calling up the 'Silos' Screen by pressing the F1 key and calling up the 'Working Area' Screen
by pressing the F2 key.
Create a new Shortcut resource from the 'Project Explorer' Window and call it 'Silos'. This
Shortcut resource will always activate whenever the 'Silos' Screen is loaded. Edit the new
Shortcut by adding the command for calling up the 'Main' Screen by pressing the ESC key.
Create a new Shortcut resource from the 'Project Explorer' window and call it 'Working Area'.
This Shortcut resource will always be activated whenever the 'Working Area' Screen is loaded.
Edit the new Shortcut by adding the command for calling up the 'Main' Screen by pressing the
ESC key and the command for calling up the modal Screen for setting the plant parameters
(the modal Screen must be created beforehand) by pressing the F1 key.
The example project described above can also be set up in another way:
467
M O V I C O N _ P R O G R A M M E R _ G U I D E
Associate the Shortcut commands so that each key carries out its own function independently of the
active Screen.
The following needs to be achieved, as in the example above:
Proceed as follows:
1.
2.
Create a new Shortcut resource from the 'Project Explorer' window and call it 'Main'. This
Shortcut resource will always be activated whenever the 'Main' Screen is loaded (by setting
the 'Main' Screen as the project's startup Screen, the 'Main' Shortcut will consequently
become the project's default Shortcut). The project will not contain other Shortcuts, therefore
the 'Main' Shortcut will remain active independently of the Screen currently active.
Edit the new Shortcut by adding the commands for:
calling up the 'Silos' Screen by pressing the F1 key
calling up the ''Working Area' Screen by pressing the F2 key
calling up the 'Main' Screen by pressing the ESC key
calling up the modal Screen for setting the plant parameters (created beforehand)
by pressing the F3 key
468
S H O R T C U T
R E S O U R C E S
Then just press any one of the keyboard keys or a combination of keys which also incudes the
'modifier', as this is recorded in the 'Shortcut Key' box.
The operation can be cancelled with the Cancel button.
User Level
This property is used for setting the Password User Level necessary for executing, for example, the
command list associated to the Shortcut command. When the Shortcut in question is to be used by a
user, Movicon will request activation of a user with a Password User Level equal or higher than that
set in the command itself. When the user executes Logon with correct authentication they will have
all the access rights necessary, otherwise if Logon fails and access is denied they will not be able to
execute the operations they require.
For further information please refer to the paragraph on "User Levels and Access Levels".
469
M O V I C O N _ P R O G R A M M E R _ G U I D E
'zero' value, the Shortcut command will not be available. When the selected variable obtains another
value apart from 'zero', the Shortcut command will be available for execution. If nothing is specified
in this option by leaving it empty, Movicon will consider the Shortcut command as being enabled.
Commands
The Movicon 'Command List' window is opened by means of this button, through which a list of
one or more commands, to be executed when the Shortcut command is activated, is set. For further
information about the commands available please consult the paragraph on "Command List".
Enable Speech Recognition
Enabling this option will activate the shortcut command speech recognition function.
Text Command
The word of phrase that the user must say for activating the command (or commands) associated to
the Shortcut.
Require Confirm
Enabling this option will activate the confirm request, by the system, before the command (or
commands), associated to the Shortcut, is activated.
Prompt Confirm
The word of the phrase which the system must say, through the PC's speakers or a predefined audio
output, for requesting a confirm to activate the command (or commands) associated to the Shortcut.
This word or phrase is followed by the word or phrase entered in the "Text Command" field.
Confirm Text
The word or phrase the user must say for confirming the activation of the command (or commands)
associated to the Shortcut.
Value Prompt Text
The word or phrase which the system says when waiting for input value. This is used in case when
the command associated to the Shortcut is"Numeric Pad" or "Alphanumeric Pad" type. When the
speech recognition is active, the system will prompt a vocal input instead of displaying the numeric
or alphanumeric keypad for receiving inputs from the user.
Invalid Value Text
The word or phrase enounced by the system for indicating that the vocal input it received was
incorrect (ie. when waiting for a numeric input and the word pronounced is the wrong number).
470
2.
The text title of an object or symbol can represent a text string which is considered static
when typed in directly using the properties window, or can be specified using the Identifier of
a text from the String Table. In this case the text will change in accord with the Column
(Language) selected.
An Alarm or Message, a dynamic text or a pop-up text can be referred to identifiers of strings
from the Strings Table.
471
M O V I C O N _ P R O G R A M M E R _ G U I D E
Filter settings
To set a filter to be applied to the project string list, you need to first insert the text desired in the
text box identified with the 'Filter by StingID' label, after which you need to click on the ''Apply filter'
or press 'Enter' on the keyboard.
The inserted test will then be searched for in 'StringID' column, considering the following generic
conditions: if an 'abcd' format has been inserted, the filter will search for the StringID containing the
exact text inserted. If none of the StringIDs correspond to the filter's text, Movicon will return an
empty list.
For this reason there exists a possibility to carry out an advance test search by using the '*' jolly
character. This character may appear many times in the filter's text box, and in various positions.
Here are some examples:
'*abc', 'abc*', 'a*b', '*abc*
You will need to press the 'Apply Filter' key in the 'Popup Menu' mode to apply the
filter: the 'Enter' key closes the popup window assigning the string, selected at that
moment, to the object.
Removing filters
To remove a previously set filter just press the "Remove filter" key found in the filter bar.
As an alternative other possibilities exist to display all the project strings:
Enter the '*' jolly character only;
Remove the text (if any) from the filter's editor box and click 'Apply filter' or press the 'Enter' key on
the keyboard.
After having applied a filter to the string table and closing it, Movicon will
remember the last filter set when that table is reopened afterwards. In
order to view all the strings you must therefore remove the applied filter.
472
S T R I N G
T A B L E
Text in 'Basic Shapes' will be displayed on more than one line only if the
"Fonts - Test Align" property has been set with the "Top", "Left" or "Right"
option. Otherwise the string will however be displayed on one line only.
The String Table fully supports the Windows copy & paste command
standards using the Windows clipboard. Therefore you can copy the strings
from one project to another or paste them in another editor such as Word
or Excel. You can also do the reverse in the same way by copying the
strings from an editor such as Excel into the Movicon String Table.
The Copy/Paste functions of strings from Movicon to other text editors is carried out with the
insertion of separation characters between the various columns (String ID, Language1, Language2,
etc.,). Movicon inserts the 'TAB' character for default but a different character can be specified (i.e.
the "," character) by setting the "StringSep" register key.
The String Tables are saved on files in XML format inside the Project folder. These files can then be
accessed through ordinary text editors for any eventual editing. Movicon will create a file for each
language inserted.
Special characters
The '&' character works in a certain way, and is not always acknowledged as a simple character by
Movicon. When it has to be used in a string, or inserted in the title of an object, or whenever you
wish to make it appear, it may not be enough to write is once only like all the other characters:
Movicon acknowledges and interprets it as a special Shortcut command, whereas Windows uses the
'&' symbol placed before a letter to use it as an Shortcut. Therefore in order to write a string with the
'&' character you will need to type it twice consecutively. For instance, in order to make the "Start &
Go" text appear you will need to type the "Start && Go" string:
String: Start && Go
Text displayed: Start & Go
473
M O V I C O N _ P R O G R A M M E R _ G U I D E
the property field to open a modal window showing the String Table. This window can be used for
selecting, modifying or cancelling or inserting a new string or for cancelling or adding a new column.
To modify a string you will need to enter into edit mode in the field of interest with the usual mouse
click, F2 key or TAB key. To add a new string or column right mouse click on the table to open a
menu.
You cannot use this window to access the columns' properties.
Column properties cannot be accessed from this string selection
window.
To insert a new column press the right mouse button in the area of the table, then select the 'New
Language Column...'. An input-box for inserting the column's name will appear. To change the
name of a column (and therefore the language) right click on it's name. To cancel a column right
click on one of the column's lines and select the 'Delete this Column!'.
474
S T R I N G
T A B L E
The language to be activated is selected directly from those available in the purpose-built combobox:
By double-clicking the mouse on the active language field a dialog window will open showing the list
of the project's set languages. Here you can select another language and confirm it with OK to
activate it.
Selecting a column in Runtime mode, to activate the language desired, can also be done by using
the change language' command button from the Movicon "Commands List.
Caution! if you modify the name of the language column while in Design
mode, and this language is active, Movicon will not reload the new column
name but will keep the old one. Therefore as a consequence, String ID will
be displayed in texts due to the fact that set column no longer exists. In
this case you will need to perform a language change by selecting the new
name of the language to activate.
475
M O V I C O N _ P R O G R A M M E R _ G U I D E
English
Alarm Active:
Tank Max Level!
Motor Overload!
Italian
Allarme Attivo:
Livello Max Serbatoio!
Scatto
Termico
Motore!
Description
_CANCEL_PADTEXT_
_DELETE_PADTEXT_
_OK_PADTEXT_
_TITLE_PADTEXT_
476
S T R I N G
T A B L E
_LOW_PADTEXT_
_HIGH_PADTEXT_
_CAPSLOCK_PADTEXT_
_OUTOFRANGE_PADTEXT_
_MAXCHAR_PADTEXT_
_NOTNUMERIC_PADTEXT_
Description
_OK_GETPTEXT_
_CANCEL_GETPTEXT_
_USER_GETPTEXT_
_PASS_GETPTEXT_
_TITLE_GETPTEXT_
_TITLE_EXP_GETPTEXT_
477
M O V I C O N _ P R O G R A M M E R _ G U I D E
_LEVEL_GETPTEXT_
_LEVEL_EXP_GETPTEXT_
_RESET_GETPTEXT_
_RPASS_GETPTEXT_
Trend Legend
Special ID
Description
_TLEGEND_DESC_
"Description" Text
_TLEGEND_VALUE_
_TLEGEND_MINVALUE_
"Value" Text
"Min." Text
_TLEGEND_MAXVALUE_
"Max." Text
_TLEGEND_AVERAGE_
"Average" Text
_TLEGEND_TIME_
The change language function also works with the Trend pens by inserting a
string ID with the same name as the pen's. In Runtime the Trend will
display the text contained in the string ID instead of the name of the pen.
Dialog Box for Filter Command in the Viewer Windows (His Log,
Trace DB, DataLogger/Recipes)
Special ID
Description
_OK_DBFILTER_
_CANCEL_DBFILTER_
_USER_DBFILTER_
_TITLE_DBFILTER_
_SORTBY_DBFILTER_
_EVENTTYPE_DBFILTER_
478
S T R I N G
T A B L E
_FROMDATE_DBFILTER_
_FROMDATE_COMP_DBFILTER_
_TODATE_DBFILTER_
_TODATE_COMP_DBFILTER_
_SEVCOND_DBFILTER_
_SEVERITY_DBFILTER_
Description
_OK_TRACECOMMENT_
_CANCEL_TRACECOMMENT_
_NAME_TRACECOMMENT_
_VALUE_TRACECOMMENT_
_CHANGING_TRACECOMMENT_
_OBJECT_TRACECOMMENT_
_COMMENT_TRACECOMMENT_
_TITLE_TRACECOMMENT_
Description
_TITLE_COMMENTACK_
_ALARMNAME_COMMENTACK_
_STATE_COMMENTACK_
_TIMEON_COMMENTACK_
_TIMEOFF_COMMENTACK_
_HELP_COMMENTACK_
_COMMENT_COMMENTACK_
479
M O V I C O N _ P R O G R A M M E R _ G U I D E
_USEFORALL_COMMENTACK_
_OK_COMMENTACK_
_CANCEL_COMMENTACK_
480
A virtually unlimited number of objects can be inserted into the Variable Scaling resource, each one
will be scaled between two variables.
To add, copy or cancel Scaling objects use the standard techniques described in the paragraph on
"The Resources".
The main properties of Scaling objects can also be edited in the Runtime
phase through the appropriate Basic Script functions.
481
M O V I C O N _ P R O G R A M M E R _ G U I D E
482
V A R I A B L E
S C A L I N G
To insert non linear conversions, access the values settings by using the "Non Linear Scaling"
button from the "Variable Scaling General Properties'.
In this case, the maximum values set previously assume the first segment of the non-linear curve.
The proceeding segments are set through the window as illustrated below:
After establishing the first segment from the maximum values set in the "Value" property in the
"Variable Scaling General Properties', the other segments can be added by entering the
following maximum values and clicking the 'Add' button. This will establish an equivalence between
the two segments.
The 'Edit' button is used for changing the previous entered. The 'Delete' button is used for deleting a
previous entered value.
483
M O V I C O N _ P R O G R A M M E R _ G U I D E
The values comprised in one single segment will be scaled in linear mode,
therefore the more segments inserted the more the line will become
curved.
484
485
M O V I C O N _ P R O G R A M M E R _ G U I D E
Daily Plan: By means of using the "Scheduler Window" object you can set two different daily
plans: normal and holidays. The Scheduler object's "Holiday Button" to switch from one daily
plan to the other. The hours in both of the two plans are composed of a 7 day by 24 hour
grid. The holiday daily plan settings are in periods of 15 minutes. The periods selected in the
holiday daily plan are represented in the default grey colour; while the normal ones are in
blue. At this point the Scheduler will us the appropriate daily plan according to whether the
day has been set as a holiday or not
Date: The scheduler will execute the preset command, not only for the specified date but
also for the date set as a holiday
Setting Holidays
In order to set holidays you need to use the some of the VBA methods from the
"SchedulerCmdTarget" interface. The methods available for managing holidays are as follows:
AddHoliday: allows a holiday to be added to the scheduler object
RemoveHoliday: allows a holiday to be deleted from the scheduler object
HasHolidays: lets you know in write whether the scheduler object has been set for managing
holidays
486
C O M M A N D
S C H E D U L E R
IsHoliday: allows you to verify whether a date has been set as a holiday in the scheduler
object
GetHolidaysString: returns a string divided by a pre-chosen separator character (parameter
from function) with the list of all the holiday dates set in the scheduler object
HolidaysPlan: allows you or read the current weekly daily plan from a "Daily plan" scheduler
SaveRetentive: allows you to save the daily plans (normal or holiday) and the days of the
holidays on external files to be retained even after an application re-startup
You can however set a list of holiday dates also through editing XML files. These files must be saved
in the project folder, with the same name of the project and with the "defhol" extension. All the
"fixed Date" type schedulers, which do not have holiday lists, will use those defined with the XML file
with the ".defhol" extension as their holidays.
When a ".defhol" file cannot be found in the project folder, it will be searched for in the Movicon
installation with the "Holidays.defhol" fixed name.
the XML file with the holidays list is read only at the project startup
and therefore modification to the file will not be managed until the
project is started up again.
The Holiday XML file structure must be in the same way as:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<DefaultHolidays>
<HolidaysDates
n0="2000-01-01T00:00:00Z"
n1="2000-01-06T00:00:00Z"
n2="2000-04-25T00:00:00Z"
n3="2000-05-01T00:00:00Z"
n4="2000-06-02T00:00:00Z"
n5="2000-08-15T00:00:00Z"
n6="2000-11-01T00:00:00Z"
n7="2000-12-08T00:00:00Z"
n8="2000-12-25T00:00:00Z"
n9="2000-12-26T00:00:00Z"
/>
</DefaultHolidays>
This example shows the Italian national holidays.
487
M O V I C O N _ P R O G R A M M E R _ G U I D E
Support Holidays
You can activate the "Holidays Planning" management for the Scheduler object in question by using
this selection box. For further information about "Holidays Planning" please refer to section with the
same title.
Treat Holidays as Sunday
This option box, if enabled, consents the normal Sunday hour plan be used for managing the days
set as Holidays, being the ones set in the scheduler's holiday list. This option does not oblige the
user to set a seven day hour plan for the holidays but helps in simplifying work when all the holidays
of one scheduler must be managed in the same way, independently from the day of the week.
Execute Commands Off If Disabled
The "Execute Command Off If Disabled" property is used for disabling the activation of the command
list executed on the falling edge of the schedule set the moment in which the scheduler is disabled
using the "Enable scheduler variable. Contrary to this (for default) the Off Command list will be
executed when scheduler is disabled.
Enable Variable
This edit box allows you set a variable for enabling the Scheduler. The Scheduler object must,
however, be enabled in development mode with the appropriate "Enable" property, otherwise it will
always be disabled in runtime.
Type
The Scheduler object's purpose is to execute one or more Movicon commands on preset time
periods.
The "Type" selection box permits you to select in which moment the command must be executed.
Other fields may have to be set according to the item selected in order to complete this type of
programming. For instance, when selecting the 'Every Minute' or 'Every Hour' item it is not
necessary to specify anything else, as it is quite explicit that the onset of each new preset period the
associated event will be automatically executed.
However when selecting a day or a month, it is then necessary to indicate, inside that period, at
what precise time the command must be executed. The time must therefore be set in the 'Time'
property.
Amongst the scheduled time settings to be assigned you will find the 'Date' setting. This selection
allows the activation of a virtual calendar, through which you can select a date up to the year 9999.
The moment the selected date is verified (after midnight of the previous day) the event will be
executed. The date in question must be set in the 'Time' property.
The 'Daily Plan' setting activates a weekly plan. When selecting this setting it will be necessary to
access the weekly plan scheduler setting through the 'Plan' property.
Time
The command activation time is entered in this edit box.
Date
This field is enabled only when the "date" item has been selected in the "Type" property. In
this case, when clicking on this box a window will open for selecting the day when the
command is to be activated.
488
C O M M A N D
S C H E D U L E R
The presence of the "Date" field distinguished by the "Time" field permits two things:
Commands On
This button opens a Movicon 'Command List' through which you can set a list of one or more
commands to be executed by the scheduler when the time goes On.
For further information on the commands available please consult the paragraph on "Command
List".
Commands Off
This button opens a Movicon 'Command List' through which you can set a list of one or more
commands to be executed by the scheduler when the time goes Off.
For further information on the commands available please consult the paragraph on "Command
List".
In cases where the Scheduler is set with "Hour Plan" the Off condition is triggered when the set
interval time runs out. For example, if an hour range has been programmed to start at 7:00 and
sinish as 8:00, the "the 'On Command List' will be executed at 7:00:00, while the 'Off Command List'
will be executed at 8:00:59. When the Scheduler is set with another type of plan, the Off condition is
triggered when the hour and date set for the On condition changes. For example, if a scheduler is
set at Every Minute, the "On Command List" will be executed upon every new minute (00 minute)
and when each minute expires (59 seconds), the 'Off Commands List? will be executed.
Plan
The daily plan window allows you to configure the time ranges in which the command associated to
the Scheduler must be executed.
The table provides seven lines corresponding to the days of the week, and 24 columns corresponding
to the hours in a day.
Left click on the squares to select the day and hour required. Click on the square again to deselect.
Right click to select the precise time of each hour, each click equals 15 minute resolutions.
Click on the day to select the whole 24 hours for that day.
489
M O V I C O N _ P R O G R A M M E R _ G U I D E
490
C O M M A N D
S C H E D U L E R
user has the right Access Level requested by the Scheduler's "Write Access Level" mask. Otherwise
the "Scheduler Window" will remain disabled as far as the plan editing commands are concerned.
For further information on 'Access Levels' please refer to "User Levels and Access Levels".
Read Access Level
By using this property you can define the Access Level mask for selecting the Scheduler the
"Scheduler Window". By using the "Scheduler Window" you can select a Scheduler through an
appropriate list-box and display or modify its plan. However, if the password management is enabled
and the "Always Visible" property disabled, the Scheduler can only be selected if the active user has
the right Access Level requested by the Scheduler's "Read Access Level" mask. Otherwise the
Scheduler will not be listed in the selection listbox and therefore will not be available for selecting.
For further information on 'Access Levels, please refer to the paragraph on "User Levels and
Access Levels".
Always Visible
When enabled, this property allows the Scheduler to be selected and modified through the
"Scheduler Window" independently from the active User. In cased where the Password management
has been disabled, it will be necessary to enable this property in order to view the Scheduler in the
"Scheduler Window" (therefore selectable and modifiable).
For further information on 'Access Levels, please refer to the paragraph on "User Levels and
Access Levels".
Select the 'Scheduler object list' from the 'Project Explorer' window
Use the right mouse button to insert a new object in the Scheduler resource using 'Add
New Scheduler Object' command
From the object's General Properties window set the 'Type' property with 'Every Day' and
set the time at '21.00' in the 'Time' box. Then enter 'Turn On' as name
By using the 'Command' property open the 'Command List' window and select the 'Variable
command'. Enter the variable required, in our example we will use the 'ILLU1' variable,
and enter 'Set' as Action and enter '1' in the 'value' property
Confirm with OK to enter the first scheduler object called 'Turn On'. Now continue with
entering the second one which will be called 'Turn Off'
Right mouse click on the 'Scheduler Object List' resource and insert a new object using
the 'Add New Scheduler' command
From the object's General 'Properties Window' set the 'Type' property to 'Every Day' and
set '06.30' in the 'Time' box. Then assign the object with the name 'Turn Off'
Click the 'Command' property to open the 'Command List' window and select 'Variable
Command'. Insert the variable required, in our example we will use the 'ILLU1' variable,
and set the 'Set' value to '0'
Confirm with OK to enter the second and last Scheduler object
491
M O V I C O N _ P R O G R A M M E R _ G U I D E
492
493
M O V I C O N _ P R O G R A M M E R _ G U I D E
Change: the command will be executed every time the variables changes value
Major: the command will be executed every time the variable's contents passes from a low
or the same value specified in the 'Value' property to a higher value
Minor: the command will be executed every time the variable's contents passes from a high
or the same value specified in the 'Value' property to a lower value
Equal: the command will be executed every time the variable's contents pass from different
value to that specified in the 'Value' property to one with the same value
Value
This edit box is used for specifying which threshold value is to be referred to by the 'Condition'
property. This setting is insignificant when the 'Change' option has been selected in the
'Condition' property.
Commands
This button opens the 'Command list' to setup the list of one or more commands which are to be
executed by the Event.
For further information on the available commands please consult the paragraph titled "Command
List".
494
C O M M A N D S
O N
E V E N T
Run At Server
When the Event is run on command, by means of the Command List, in a Client project, with this
option enabled (default), the Event object's commands will only be run in the Server project. If this
option is enabled, the commands will only be run in the Client project. This option only has meaning
when used in a Client project created with the child project techniques or in Redundancy.
In a case such as this, we need a tool which to quicken the process of assigning Tags to the Event
object, one which provides you with the possibility to set up the event object only once and
associate it to the 50 variables, of the example above, all at once.
A tool such as this exists in Movicon and is called "Event Template".
To get this function you have to set the Event as "Template" type in the Event Object Resource
along with the activation modalities and command desired. Then you can select the variables needed
from the Variables List from the RealTime Database and use the "Associate an Event" command with
the right mouse key and select the event window desired from the window that pops up. The
variables (in our example this would be the 50 process variables) will then be linked to the Event
Template. Technically Movicon has set 50 different variables linked to the same Event in its project
on receiving just one click. of the mouse.
The request to associate an Event will open a another window containing a list of Events, which
should have been inserted beforehand.
495
M O V I C O N _ P R O G R A M M E R _ G U I D E
496
497
M O V I C O N _ P R O G R A M M E R _ G U I D E
The 'Period', 'Duration' and 'Date' parameters are optional. If one or all of
these parameters are not inserted they will be requested through an
appropriate dialog window configured in the Report when doing a preview
or a direct print. Otherwise all the commands will be indicated without
showing a dialog window and the Report will use these parameters to filter
the data.
The Alarm Statistics is not supported if the database engine being
used for the Historical Log is "InMemoryDB". In addition, the ODBC
driver used must support the following commands in the SELECT
SQL syntax: "SUM", "COUNT", "GROUP BY" and "ORDER BY". If
these commands are not supported by the database being used it will
not be possible to use the Alarm Statistics Reports.
Action
The command or action type to be executed on the Movicon alarms is selected through this property.
The choices are:
498
Action
Description
Ack All
Reset All
Toggle
Sound
Show
Report
Print Report
Export
Report
View
Textual
Report
Print
Textual
Report
Save
Textual
O B J E C T S
C O M M A N D
L I S T
Report
Append
Textual
Report
Export and
Send Email
Show
Embedded
Report
Print
Embedded
Report
Save
Embedded
Report
Send
Embedded
Report
Reset
Statistics
499
M O V I C O N _ P R O G R A M M E R _ G U I D E
Alarm Area
The alarm area name can be entered in this field for which the "Ack All" or "Reset All" command will
be executed. In this way the ack or reset commands are only executed in the area specified and not
in all the alarm areas. The (*, ?, etc.) special characters can also be used as described in the Alarm
Window's "Filtro per Area" property.
Report File
This field is used for selecting the report file for the "Alarm Statistics". The Alarm Statistic Report files
are available in both "Crystal Report" and Movicon "Embedded Report" formats. According to the
command type selected in the "Action" field, four report files in "Crystal Report"(f".rpt" file extension)
format or Movicon "Embedded Report" (".movrep file extension) format will be shown in the drop
down list. These report files already exist in the Movicon installation folder and they are:
Cristal Report File: OrderByDate.rpt, OrderByDuration.rpt, GroupByThreshold.rpt,
GroupByFrequency.rpt
Movicon Embedded Report File: OrderByDate.movrep, OrderByDuration.movrep,
GroupByThreshold.movrep, GroupByFrequency.movrep
As you can see the Crystal Report and Movicon Report file name are the same but have different
extensions. All these file names are shown in the drop-down list without extensions. When
command is executed, Movicon will load report type, ".rpt" o ".movrep", based on the command
selected from the "Action" field.
If you wish to use a custom report, therefore different from the one proposed for default, you can
enter its file name and path in the drop-down list. If the custom report to be used already exists in
the Movicon installation folder you will only need to enter the name of the report without extension
(ie. MyReport), otherwise you will have to enter the complete path including its extension (ie.
C:\Temp\MyReport.rpt o C:\Temp\MyReport.movrep).
The four types of default Reports interface with project's Historical Log "Alarms" table and show the
following information:
1.
2.
3.
4.
OrderByDate: Report of alarms ordered by date. For further information please see section
on "Alarm Statistics".
OrderByDuration: Report of alarms ordered by duration (starting from the longest to the
shortest). For further information please see section on "Alarm Statistics".
GroupByThreshold: Report of alarms grouped by threshold. For further information please
see section on "Alarm Statistics".
GroupByFrequency: Report of alarms grouped by frequency. For further information please
see section on "Alarm Statistics".
ToolBar
This property permits the toolbar to be displayed or hidden in the report preview window.
This option is only managed if the report is in Crystal Report format, otherwise it will have no effect.
Group Tree
This property permits the group in tree structure to be displayed or hidden in the report preview
window.
This option is only managed if the report is in Crystal Report format, otherwise it will have no effect.
Period
This property permits a temporal filter to be set for extracting data from the database. The possible
values are:
Selected date time
500
Today
Yesterday or today
Current week
Current month
Current year
Last 7 days
Last 30 days
Last 60 days
Last 90 days
Last 1 years
Last 2 years
O B J E C T S
C O M M A N D
L I S T
Last 5 years
Last 10 years
The filter is carried out according to the activation date of each alarm.
Duration
This property permits a filter to be set on the duration of each alarm. The default value is '00:00:00'
but the filter can be set so that only the alarms which last longer than a certain set time in
'hour:minutes:seconds' are retrieved from the database.
Date
This property permits a filter to be set on the date. This setting is only valid when the 'Period'
parameters have been set in the 'Select date time'. Two dates can be inserted here for representing
the start and end date for retrieving data. The format is: "dd/mm/yyyy hh:mm:ss dd/mm/yyyy
hh:mm:ss".
Report Template File
For further information see the section on "Textual Report Commands and Parameters".
Report Destination File
For further information see the section on "Textual Report Commands and Parameters".
Report Query
This field is used for entering the query to be used for extracting Historical Log data to be displayed
in the report. This property is only enabled if the "Textual Report" command has been selected in the
"Action" field. Data will be extracted from the Historical Log "Alarms" table for default. However, a
different table from which to extract data (Drivers or SysMsgs) can also be specified. In cases where
no query has been set, all the database data will extracted starting from the most recent to the
oldest data based on the date and time of the recording.
The query text is entered in this field but variable names cannot be entered to make query the
dynamic. In order to make the query dynamic you will need to use the "ExecuteCommand()" script
function from the "UIInterface" interface or the "TextualRptSQLQuery" property from the
"CommandAlarmCmdTarget" interface.
Report Max Pages
Maximum number of printed pages on one single Textual Report command ("View Textual Report",
"Print Textual Report", "Save Textual Report" and "Append Textual Report) or Embedded Report
command ("View Embedded Repor, "Print Embedded Report", "Save Embedded Report" and "Send
Embedded Report"). The '0' value does not impose a limit on the number of pages that can be
printed (it is advised not to use the '0' value setting to avoid memory or printer overuse in cases
when errors occur in the data extraction query formulation).
The maximum number of pages should be taken into consideration only
for commands that have been set a Data Logger from which data is to be
obtained or for report commands in the Historical Log.
In cases with "Embedded Reports" that contain "Chart" objects in the "Report
Header" or "Report Footer" band, the first and last pages will be used for printing
the "Chart". The number of pages to be printed indicated in the "Report Max
Pages" parameter will relate to the number of paged from the "Details" section
only.
Report Page Width
This command is used for setting the print page Width. Values are in millimeters and the -1 value
(default value) uses the printer's print page sizes.
This parameter is only taken into consideration if the "Print Embedded Report" command
has been selected from the "Action" field and if the report's "Use Paper Settings"
property is disabled.
Report Page Height
This command is used for setting the print page Heigth. Values are in millimeters and the -1 value
(default value) uses the printer's print page sizes.
This parameter is only taken into consideration if the "Print Embedded Report" command
has been selected from the "Action" field and if the report's "Use Paper Settings"
property is disabled.
Report Left Margin (mm)
501
M O V I C O N _ P R O G R A M M E R _ G U I D E
This command is used for setting the left print margin which will be added to the printer's default
margin. This margin is set in millimeters and the -1 value (default value) allows you to use any
default print margins retrieved through the driver of the printer being used.
This parameter is only considered when the "Print Textual Report" or "Print Embedded
Report" has been selected in the "Action" field.
Report Right Margin (mm)
This command is used for setting the right print margin which will be added to the printer's default
margin. This margin is set in millimeters and the -1 value (default value) allows you to use any
default print margins retrieved through the driver of the printer being used.
This parameter is only considered when the "Print Textual Report" or "Print Embedded
Report" has been selected in the "Action" field.
Report Top Margin (mm)
This command is used for setting the top print margin which will be added to the printer's default
margin. This margin is set in millimeters and the -1 value (default value) allows you to use any
default print margins retrieved through the driver of the printer being used.
This parameter is only considered when the "Print Textual Report" or "Print Embedded
Report" has been selected in the "Action" field.
Report bottom margin (mm)
This command is used for setting the bottom print margin which will be added to the printer's default
margin. This margin is set in millimeters and the -1 value (default value) allows you to use any
default print margins retrieved through the driver of the printer being used.
This parameter is only considered when the "Print Textual Report" or "Print Embedded
Report" has been selected in the "Action" field.
Show Print Dialog
When enabling this option a dialog window will show before printing the report to allow you to select
a printer from those installed on the PC.
This parameter is only considered when the "Print Textual Report" or "Print Embedded
Report" has been selected in the "Action" field.
Printer
This field is used for choosing which printer the report should be send to. The printer can be
selected from the PC's local printers. If no printer is specified in this parameter, the Windows default
printer will be used instead. The "Show Print Dialog" option will however have priority over this
setting.
In cases where the project has been set for the Windows CE platform, the list of printers is fixed
showing those supported by the "PrintCE.dll" tool, which are:
HP PCL 3
Epson ESC/P 2
Epson Stylus COLOR
PocketJet II
PocketJet 200
Canon BJ (300 dpi)
Canon BJ (360 dpi)
Amtech
Epson LX (9-pin)
Adobe PDF file
MTE W40
Canon IP90
Partner M1POS
SP-T8
Canon IP100
Zebra
MP-300
O'Neil 4 inch
O'Neil 3 inch
HP PCL 5e
These parameters are only considered if the the "Print Textual Report" or "Print
Embedded Report" has been selected in the "Action" field.
502
O B J E C T S
C O M M A N D
L I S T
Landscape
When enabled this property allows you to set the Report page horizontally instead of vertically.
This parameter is only considered when the "Print Textual Report", "View Embedded
Report", "Save Embedded Report", "Print Embedded Report" or "Send Embedded
Report" have been selected in the "Action" field and if the report's "Use Paper Settings"
property is disabled.
Printer Port
This field is used for selecting the port to be used for printing. The list below shows shows the
possible choices and cannot be modified:
Infrared
COM1
COM2
COM3
COM4
COM5
COM6
COM7
COM8
File
Network Printer
COM9
COM10
COM11
COM12
Broadcom Bluetooth
Microsoft Bluetooth
LPT1
USB
This parameter is only considered if printing is done in Windows CE and if the "Print
Embedded Report" command has been selected from the "Action" field. If the "Windows
CE" platform has not been selected in the project, the "Printer Port" field will remain
disabled.
Port Setting
This field is used for inserting a print port configuration string. This setting is used only when one of
the "File". "Network Printer", "Broadcom Bluetooth" or "Microsoft Bluetooth" options has been
selected in the "Printer Port" parameter:
File: the file's path and name to be used by the printer's driver for saving print output (i.e.
"\FlashDrv\Output.prn") must be entered
Network Printer: the network printer's path (i.e. "\\ServerName\PrinterName") must be entered
Broadcom Bluetooth: three values devided by the ('|') pipe character must entered here. The first
value represents the bluetooth card address (i.e. 00:0A:D9:EB:66:C7), the second value represents
the name of the service to be used and the third value represents the channel number.
Microsoft Bluetooth: the bluetooth chard address must be entered here (i.e. 00:0A:D9:EB:66:C7)
This parameter is only considered if printing is done in Windows CE and if the "Print
Embedded Report" command has been selected in the "Action" field. If the "Windows
CE" platform has not been selected in the project, the "Printer Port" field will remain
disabled.
Recipient
The name of the user or user group to send email with attached report file is entered in this field.
This parameter is only accepted if the "Export and Send Email" or "Send Embedded
Report"commands have been selected in the "Action" field.
503
M O V I C O N _ P R O G R A M M E R _ G U I D E
Description
Topic
Tooltip Popup
Topic
The topic name or the pop-up text to be displayed is entered in this edit box. This property changes
according to the selection made in the 'Action' property.
be activated is selected through this property. The languages set in the Strings
If this field is left blank, therefore without a selected language, the list of available
project will open up in a dialog window when executing the command. Select the
from this list and activate it by confirming with OK.
504
O B J E C T S
C O M M A N D
L I S T
ChildProjectName\MenuName
When selecting a parent project Menu from a child project the syntax is:
..\MenuName
X Pos
This property is used for entering the horizontal position of the Menu window's origin. The value is
expressed in pixels (the '-1' value takes the position of the mouse).
Y Pos
This property is used for entering the vertical position of the Menu window's origin. The value is
expressed in pixels (the ' - 1 ' value takes the position of the mouse).
Description
View
Synchronous
Print
Synchronous
505
M O V I C O N _ P R O G R A M M E R _ G U I D E
506
View Report
Print Report
Move First
Move Last
Move Prev
Move Next
Activate
Save
Delete
O B J E C T S
C O M M A N D
L I S T
Requery
Execute
Query
Export
Report
Data
Analysis
View
Textual
Report
Print
Textual
Report
Save Textual
Report
Append
Textual
Report
Export
Recipe
Import
Recipe
507
M O V I C O N _ P R O G R A M M E R _ G U I D E
Export and
send mail
View
Embedded
Report
Print
Embedded
Report
Save
Embedded
Report
Send
Embedded
Report
Read
X Pos
This property is used for entering the horizontal position of Report preview window's origin. The
value is expressed in pixels ( '-1' value is the default position).
This option will only be managed when the report is in Crystal Report format otherwise it will be
ignored.
Y Pos
This property is used for entering the vertical position of the Report preview window's origin. The
value is expressed in pixels ('- 1 ' value is the default position).
This option will only be managed when the report is in Crystal Report format otherwise it will be
ignored.
Width
This property is used for setting the Report preview window's width. The value is expressed in pixels
('0' value is the default size).
This option will only be managed when the report is in Crystal Report format otherwise it will be
ignored.
508
O B J E C T S
C O M M A N D
L I S T
Height
This property is used for setting the Report preview window's length. The value is expressed in pixels
(' 0 ' value is the default size).
This option will only be managed when the report is in Crystal Report format otherwise it will be
ignored.
Toolbar
This check box is used for displaying or hiding the toolbar in the report preview window.
This option will only be managed when the report is in Crystal Report format otherwise it will be
ignored.
Group Tree
This check box is used for displaying or hiding the group Tree in the report preview window.
This option will only be managed when the report is in Crystal Report format otherwise it will be
ignored.
Report Template File
For further information see the section on "Textual Report Commands and Parameters".
Report Destination File
For further information see the section on "Textual Report Commands and Parameters".
Report Query
This field is used for inserting the query to be used for extracting data from the Data Logger or
Historical Log for displaying in the report. This property is only enabled if the "Embedded Report" or
Textual Report" command has been selected in the "Action" field.
Textual Report: queries in textual reports are only used when the"Data Logger/Recipes"
field has been specified as well. In cases where no query has been set, all the data in the
database will be extracted by date and time order starting with the most recent.
Embedded Report: queries in embedded reports are used for extracting data from the
database table associated to the Embedded Report. If no query is specified in this property,
the one set in the Embedded Report's "Query Report" property will be used. If no query has
been specified in this property as well, the default query will be used instead which will
extract all values from the table by date and time order staring with the most recent.
The query's text is entered in this field and it is not possible to insert the name of a variable to make
query dynamic. In order to create the query dynamically you will need to use the
"ExecuteCommand()"
script
function
from
the
"UIInterface"
interface
or
the
"TextualRptSQLQuery" property from the "CommandReportCmdTarget" interface.
Report Max Pages
The maximum number of printed pages with one single Textual Report command ("View Textual
Report", "Print Textual Report", "Save Textual Report" and "Append Textual Report") or Embedded
Report command ("View Embedded Report", "Print Embedded Report", "Save Embedded Report" and
"Send Embedded Report"). The "0" value is used for setting an unlimited number of printed pages,
(it is advised not to use the '0' value to avoid occupying too much memory and printer use in cases
where errors occur in the data extraction query formulation).
The maximum number of pages is evaluated only for those commands
which have also been set with a Data Logger fro where to extract data or
for report command in the Historical Log.
When using an "Embedded Report" command with a Report containing a "Chart"
object in the "Report Header" band or in the "Report Footer", the first and last
pages will be used for printing the "Chart". The number of the page to be printed
indiicted in the "Maximum Page Number" parameter concerns the page number
for the "Details" band only. In addition, when generating a multiple report, being
a list of a various number of report, thise parameter will only be considered
individually for each report and will not be applied to total number of pages of all
the reports listed.
Reference Period
The time ranges for extracting data to be displayed on the Report can be selected in this field. The
possible selections are:
509
M O V I C O N _ P R O G R A M M E R _ G U I D E
Nessuno
Today
Yesterday and Today
Current Week
Current Month
Current Year
Last 7 Days
Last 30 Days
Last 60 Days
Last 90 Days
Last Year
Last 2 Years
Last 5 Years
Last 10 Years
This parameter is only considered if one of the following commands has been selected in
the Action field: "View Report", "Print Report", "Export Report", "View Embedded
Report", "Print Embedded Report", "Save Embedded Report"and "Send Embedded
Report"
Export Format
This parameter is used for selecting the file format in which to export the Report using the "Export
Report" command. The possible selections are:
Pdf
Html
Txt
Csv
Xls
Mht
Rtf
Jpeg
This parameter only considered if the "Export Report" command has been selected in the
Action field.
Select Date
When enabling this check box a dialog window will display when the Report is opened for the user to
enter the data and time for the selection query of the data to be displayed on the Report.
This parameter is only considered if one of the following commands has been selected in
the Action field: "View Report", "Print Report" and "Export Report".
Separator Import/Export Recipe
This field is used for setting a separator for the ".csv" file when using the "Import Recipe" and
"Export Recipe" commands. ";" is the default character.
Report Page Width
This command is used for setting the Width of the printed Report page. Values are set in millimeters
and the -1 value for default uses the printer's sizes.
This parameter is only considered when the "Print Embedded Report" command has
been selected from the "Action" field and if the report's "Use Paper Settings" property
has been enabled.
Report Page Height
This command is used for setting the Height of the printed Report page. Values are set in millimeters
and the -1 value for default uses the printer's sizes.
This parameter is only considered when the "Print Embedded Report" command has
been selected from the "Action" field and if the report's "Use Paper Settings" property
has been enabled.
Report Left Margin (mm)
This command is used for setting the left print margin which will be added to the one used by the
printer for default. This margin is set in millimeters and the -1 value (default value) allows you to use
any default print margins retrieved through the driver of the printer being used.
510
O B J E C T S
C O M M A N D
L I S T
This parameter is only considered when the "Print Textual Report" or "Print Embedded
report" has been selected in the "Action" field.
Report Right Margin (mm)
This command is used for setting the right print margin which will be added to the one used by the
printer for default. This margin is set in millimeters and the -1 value (default value) allows you to use
any default print margins retrieved through the driver of the printer being used.
This parameter is only considered when the "Print Textual Report" or "Print Embedded
report" has been selected in the "Action" field.
Report Top Margin (mm)
AThis command is used for setting the top print margin which will be added to the one used by the
printer for default.This margin is set in millimeters and the -1 value (default value) allows you to use
any default print margins retrieved through the driver of the printer being used.
This parameter is only considered when the "Print Textual Report" or "Print Embedded
report" has been selected in the "Action" field.
Report bottom margin (mm)
This command is used for setting the bottom print margin which will be added to the one used by
the printer for default. This margin is set in millimeters and the -1 value (default value) allows you to
use any default print margins retrieved through the driver of the printer being used.
This parameter is only considered when the "Print Textual Report" or "Print Embedded
report" has been selected in the "Action" field.
Show Print Dialog
When this option is enabled, a dialog window will open for setting the setting of the printer to be
used before printing the report. Therefore it will be possible to choose which printer to use among
those available in the PC.
This parameter is only considered when the "Print Textual Report" or "Print Embedded
Report"command has been selected from the "Action" field.
Printer
This field is used for choosing the printer to send the report to. The printer can be selected from the
PC's local printer. If a printer is not specified in this field, the Windows default printer will be used
instead. The "Chose Printer" option always has priority in this setting.
In cases in which the project has been setup for the Windows CE platform, the list of printers is fixed
and will show those supported by the "PrintCE.dll" tool as follows:
HP PCL 3
Epson ESC/P 2
Epson Stylus COLOR
PocketJet II
PocketJet 200
Canon BJ (300 dpi)
Canon BJ (360 dpi)
Amtech
Epson LX (9-pin)
Adobe PDF file
MTE W40
Canon IP90
Partner M1POS
SP-T8
Canon IP100
Zebra
MP-300
O'Neil 4 inch
O'Neil 3 inch
HP PCL 5e
This parameter is only considered when the "Print Textual Report" or "Print Embedded
Report"command has been selected from the "Action" field.
Landscape
When enabling this setting the Report page will be printed horizontally instead of vertically.
511
M O V I C O N _ P R O G R A M M E R _ G U I D E
This parameter will only be considered when the "Print Textual report", "View Embedded
Report", "Save Embedded Report", "Print Embedded Report" or "Send Embedded
Report" have been selected from the "Action" field.
Printer Port
This field is used for choosing the port to be used for printing. The choices are listed below and
cannot be changed:
Infrared
COM1
COM2
COM3
COM4
COM5
COM6
COM7
COM8
File
Network Printer
COM9
COM10
COM11
COM12
Broadcom Bluetooth
Microsoft Bluetooth
LPT1
USB
This parameter will only be considered if printing is executed in Windows CE and when
the "Print Embedded Report" command has been selected in the "Action" field. In
projects where the "Windows CE" platform has not been selected, the "Printer Port" will
remain disabled.
Port Settings
This field is used for inserting a printer port configuration string. This setting is only used in cases
when one of the "File", "Network Printer", "Broadcom Bluetooth" or "Microsoft Bluetooth" options has
been selected in the "Printer Port" parameter:
File: the file name and path as well as the printer driver to be used for saving print out put must be
set (i.e. "\FlashDrv\Output.prn")
Network Printer: the printer's network path must be set (i.e. "\\ServerName\PrinterName")
Broadcom Bluetooth: the three delimited values separated by the pipe ('|') character must be set.
The first value represents the bluetooth card address (i.e. 00:0A:D9:EB:66:C7), the second value
represents the service to be sued and the third value represents the channel number.
Microsoft Bluetooth: the bluetooth card address must be set (i.e. 00:0A:D9:EB:66:C7)
This parameter will only be considered if printing is executed in Windows CE and when
the "Print Embedded Report" command has been selected in the "Action" field. In
projects where the "Windows CE" platform has not been selected, the "Printer Port" will
remain disabled.
Recipient
This field is used for inserting the name of the user or user group to be sent the email with attached
report file.
This parameter is only considered when the "Export and End Email" or "Send Embedded
Report" command has been selected from the "Action" field.
512
O B J E C T S
C O M M A N D
L I S T
Script
The name of the Script VBA to be run or stopped is entered in this edit box (or selected with the '...'
browse button on the right).
When you need to select a script from a child project the following syntax should be used:
ChildProjectName\ScriptName
When you need to select a script from a Parent project the following syntax should be used:
..\ScriptName
Action
This property allows you to select the action that has to be executed for the selected VBA Script. The
choices are:
Action
Description
Run Normal
Run Synchro
Run Safe
Runs the script in Safe mode. In this case the script will be
executed in a new Movicon process, allowing the Movicon
application to be saved if the script causes a crash. Please
keep in mind that script loading/unloading is rather slow.
Stop
Unload
Parameters
Allows you to set the eventual script parameters. Each parameter must be separated by the ","
(comma) character.
Start,1,500
The example above is considered as three parameters "Start", "1" and "500". The "GetParameter()"
function from the "ScriptMEInterface" should then be used within the Basic Script routine for
retrieving the parameters.
New Instance allowed
This property allows you to run more instances from the same Basic Script at the same time. In
order for this to work property you must, however, specify a number higher than one in the Basic
Script's "Maximum Instances" property.
Timeout
This property allows you to insert a timeout by taking into account when the Basic Script is run in
synchronized mode. In any case, the Basic Script will release the interface which called it when the
timeout expires.
513
M O V I C O N _ P R O G R A M M E R _ G U I D E
Description
Open
in
other
process (Safe Mode)
514
O B J E C T S
Close
Back
C O M M A N D
L I S T
Return
Execute Synapses
515
M O V I C O N _ P R O G R A M M E R _ G U I D E
-1value: when setting the X Pos. with the -1 value, the Pop-up window or Frame will open in
the central horizontal position within the Movicon Main window.
-2 value: when setting the X Pos. with the -2 value, the Pop-Up window will open 0
coordinate horizontal position within the main screen and not within the Movicon window. In
this way, if Movicon is opened at maximized screen size, the Pop-up screen will display in full.
This parameter is only managed if the "Open Modal (pop-up screen)" command is used.
When the 'Open Normal (MDI Child) has been selected as 'Action' the
window will be opened on the Monitor's zero origin point.
Y Pos
The window's position of origin (top side) for the Y axis is set in this property. The value is expressed
in pixels, the zero point refers to the Monitor's vertical axis (top side).
516
O B J E C T S
C O M M A N D
L I S T
This value is expressed in pixels, and its zero point refers to the Movicon main window's zero point.
The whole Movicon application window includes the Movicon title bars and side borders. This means
that when setting the Y coordinate value to 0, the Pop-up or Frame may be slightly hidden at the top
when the Movicon main window is opened at full screen. The following special values can be inserted
in the "Y Pos.":
-1value:when setting the Y Pos. with the -1 value, the Pop-up window or Frame will open in
the central horizontal position within the Movicon Main window.
-2 value:when setting the Y Pos. with the -2 value, the Pop-Up window will open 0
coordinate vertical position within the main screen and not within the Movicon window. In
this way, if Movicon is opened at maximized screen size, the Pop-up screen will display in full.
This parameter is only managed if the "Open Modal (pop-up screen)" command is used.
When the 'Open Normal (MDI Child)' has been selected as 'Action' the
window will open on the Monitor's zero point origin.
Width
The size of the window's width is set in this property. The value is expressed in pixels.
When the 'Open Normal (Movicon MDI)' has been selected as 'Action'
the window will open with the sizes set in programming mode.
Height
The widow's height is set in this property. The value is expressed in pixels.
When the 'Open Normal (Movicon MDI)' has been selected as 'Action'
the window will open with the sizes set in programming mode.
Caption
When enabled, this property consent the displaying of the title bar for the selected Screen.
Border
When enabled, this property gives more highlight to the selected Screen's outer border.
Resize Border
When enabled, this property allows the selected Screen to be resized during Runtime. This can be
done by using the mouse and the usual Windows techniques.
Sys Menu
When enabled, this property allows the System Menu to be displayed on the selected Screen's title
bar. This setting will have not effect If the 'Title' bar has not been enabled. The System Menu can
be accessed through the icon on the top left in the title bar.
Also when enabling this property, the button for closing the window will be made available and
displayed on the top right of the title bar ( ).
Maximized Box
When enabled, this property allows the button for enlarging the window to be displayed on the top
right in the title bar ( ). If the 'System Menu' has not been enabled, this setting will have no
effect.
Minimized Box
When enabled, this property allows the button for reducing the window to be displayed on the top
right in the title bar ( ). If the 'System Menu' has not been enabled, this setting will have no
effect.
Keep Print Proportions
This property, when enabled, prints the screen as you see in keeping to the same proportions. When
disabled (therefore for default), the height and width sizes are adapted to the page size. This
parameter has effect on both the "Print" and "Capture and Print" commands.
Print Page Width
This property permits you to set the width of the print or image to be saved. This value is expressed
in mm for the print and in pixels for the image. Setting this value to "-1", according to command
type, the print default size will be used or the image will be created with the origin screen sizes.
This parameter only has effect on "Capture & Print" and "Capture & Save".
Print Page Height
517
M O V I C O N _ P R O G R A M M E R _ G U I D E
This property permits you to set the height of the print or image to be saved. This value is expressed
in mm for the print and in pixels for the image. Setting this value to "-1", according to command
type, the print default size will be used or the image will be created with the origin screen sizes.
This parameter only has effect on "Capture & Print" and "Capture & Save".
Top Margin
This property is used for setting the print page's top margin. Value is expressed in mms where the
"-1" value uses the default print page size. This parameter has effect only for the "Capture & Print".
Bottom Margin
This property is used for setting the print page's bottom margin. Value is expressed in mms where
the "-1" value uses the default print page size. This parameter has effect only for the "Capture &
Print".
Left Margin
This property is used for setting the print page's left margin. Value is expressed in mms where the
"-1" value uses the default print page size. This parameter has effect only for the "Capture & Print".
Right Margin
This property is used for setting the print page's right margin. Value is expressed in mms where the
"-1" value uses the default print page size. This parameter has effect only for the "Capture & Print".
518
Action
Description
Shut Down OS
Launch App
Beep (Parameter
is the frequency
of the sound)
O B J E C T S
C O M M A N D
L I S T
Reboot OS
available
WinCE)
(not
for
Show or Hide
Output Window
(not available for
WinCE)
Timeout
Command Line
The value which is inserted in this editbox changed according to the command type selected. Those
commands which require this parameter are:
Launch Application: the application file path and name to be run is entered here (i.e. Windows
application). If no executable file path is specified , Movicon will search for file in the Windows folder.
Launch Application and Wait: the application file path and name to be run is entered here (i.e. a
Windows application). If no executable file path is specified , Movicon will search for file in the
Windows folder.
Play Sound File: the ".wav" audio file name and path is entered here that is to be run from the
audio card. If file name is entered without path, Movicon will search for it inside the
"Recources/ProjectName".
Beep: the beep frequency time value is entered here. Values allowed are from "37" to "37767" Hz
Speak: insert text to be spoken. This command supports multilanguages so it is also possible to set
String IDs from the project's String Table. In this case ID cannot be selected from the "String Table
Window" and must be entered manually.
Work folder
The complete path of the work folder to be passed to the application when the "Launch Application"
or "Launch command and Wait" is entered in this field. In this way, the application to be launched
will be passed this parameter as the initial work folder.
Caution! Not all application support the use of the initial Work Folder,
therefore check whether the application in question can manage it
before using this parameter.
519
M O V I C O N _ P R O G R A M M E R _ G U I D E
Timeout
The value inserted in this editbox changes accroding to the command type selected. Commands that
require this parameter are:ametro sono:
Launch Application and Wait: timeout is entered in milliseconds here during which the Movicon
user interface will freeze while the requested application is being launched.
Beep: Beep duration time in milliseconds is entered here.
Wait time: Timeout in milliseconds is entered here
Description
Logon
Logoff
Edit
List
Users
The Logon and Logoff commands are also available in the Movicon Status Bar:
The icon which represents the user on the bottom right can be in colour or in just grey. Grey means
that no users are logged on therefore simply double-click on the icon to display the User logon
window where a '0' level authentication will be requested. When the icon is in colour, this means that
a user is active and therefore simply double-click on the icon to deactivate the user.
Level
This edit box is used for setting the lowest level to be associated to the user logging on. If the user
does not have any rights for the level specified they will not be authenticated.
This property is only significant when 'Log on' has been selected in the 'Action' property.
520
O B J E C T S
C O M M A N D
L I S T
Description
set
reset
toggle
strobe
increase
521
M O V I C O N _ P R O G R A M M E R _ G U I D E
alphanumeric
pad
numeric pad
Append Value
Remove Value
Swap
Minus
Append
Decimal
ON-OFF
522
Plus-
Mode
O B J E C T S
C O M M A N D
L I S T
Reset Statistic
This command will reset all the statistic data of the variable
set in the "Variable" parameter. This operation can also be
executed with VBA.
Move
Min.Value
Move
Value
Max.
Move Average
value
Set da ID di
Stringa
Set Screen
Alias
Move to Variable
The name of the destination variable is entered in this edit box (or selected with the browse button
on the right) when selecting a "Move Value" command. This is the variable on which the value of
the source variable specified in the "Variable" property, will be moved to according to command
type.
When selecting a child project variable the syntax is:
523
M O V I C O N _ P R O G R A M M E R _ G U I D E
ChildProjectName\VariableName
When selecting a parent project variable from a child project the syntax is:
..\VariableName
Value
The value to be obtained by the variable when the command is executed is entered in this edit box.
Its significance changes according to the type of 'Action' the variable is associated with. In cases
using the "Set Screen Alias" command it may be a value or the name of a variable.
In cases where the "Increase" or "Decrease" command has been selected in the "Action" field, the
name of the Real Time DB variable can also be inserted in the value field. In this way the increase
or decrease will be executed with a value equal to the variable's value, allowing the increase or
decrease step to vary during runtime.
Strobe Time
This property is only valid when 'Strobe' has been selected in the 'Action' property. In this case the
time, expressed in milliseconds, in which the variable will remain set with the value entered in the
'Value' property. When this time runs out the variable will go back to previous value again.
Max. Value
This property is only valid when the following items have been selected in the 'Action' property:
Increase
Numeric Pad
The specified value is the maximum limit that the variable can assume during increase operations or
Numeric Pad entries.
The name of the variable from the RealTimeDB can also be inserted in this field whose contents will
be taken as the value limit rendering the value limit dynamic and can be entered using the numeric
pad.
Min. Value
This property is only valid for numeric type variables and when the following items have been
selected in the 'Action' property:
Decrease
Numeric Pad
The specified value will be the minimum limit which the variable can assume during decrease
operations or Numeric Pad entries.
The name of the variable from the RealTime DB can also be inserted in this field whose contents will
be taken as the value limit rendering the value limit dynamic and can be entered using the numeric
pad.
Max. Chars
This property is only valid for string type variables and when the following items have been selected
in the 'Action' property:
Increase
Alphanumeric Pad
The value specified will be the maximum number of characters which can be entered in the variable
during increase operations or Alphanumeric Pad entries.
Password Style
This property only has meaning for string variables selected with the "Alphanumeric Pad" item as
"Action" type. In this case, if this property is checked, the value inserted in the Alphanumeric Pad will
be crypted displaying the inserted characters as asterisks. Usually used when text to be inserted is a
password.
524
525
M O V I C O N _ P R O G R A M M E R _ G U I D E
526
A L A R M S
M A N A G E M E N T
When confirming this operation, the new alarm will appear in the group or in the point selected in
the project's structure. At this point you can go on and carry out the Alarm property settings as
described in the documents on "Alarm Properties".
Afterwards the Alarm object can be assigned a Name by clicking on the resource and entering the
name replacing the one for default, or after having selected the object, press the F2 key and carry
out inserting the new name procedure.
New Alarms can be entered by copying the data from the resource, from the same or other projects.
In order to do this, select the alarm or the alarms you wish to copy, then use the Copy/Paste
function from the Edit menu (or with the equivalent keyboard keys, tool bar or right mouse key
techniques).
To delete one or more alarms from the project first select them then activate the 'CANC' key or
'DELETE' key from the keyboard.
The setting or editing of alarms is done through the Movicon 'Properties Window'.
Each entered alarm must then be associated with one or more intervention thresholds To add an
intervention threshold to an alarm, first select the alarm then right mouse click and select the 'New
Alarm Threshold' command, or use the same command which can also be found in the Project
Explorer's 'Commands' window. When confirming this operation, the new threshold will appear in the
Alarm's structure. At this point you can proceed with setting the threshold's properties as described
in the document about "Alarm Properties".
Messages
The only difference between alarms and messages are the "Support ACK" and "Support RESET" '
property settings of the alarm threshold. If these two properties are both disabled, the alarm will not
need acknowledging and resetting by the user and therefore will only be displayed according to the
status of the associated variable, thus making it a simple display message.
In the Project's Explorer Window 'Alarms List' the image displayed for the alarm thresholds will differ
according to whether they have been configured as alarms or as messages. During runtime the
image shown in the Alarms Window, next to the text, will also differ according to whether an alarm
or message is being dealt with. This function is valid for local alarms only. Different icons, to
527
M O V I C O N _ P R O G R A M M E R _ G U I D E
represent whether an alarm or message, are not supported for alarms and messages displayed by
Client projects. In addtion to this, "MESSAGE ON" and "MESSAGE OFF " instead of "ALARM ON" and
"ALARM OFF" texts will display as the event identifier in the "Historical Log Window". Therefore the
MESSAGE ON" and "MESSAGE OFF " events can be filtered in the Historical Log's message filter
window.
Alarm Areas
The alarms can be grouped in different areas so that they can be displayed in the "Alarm Window"
window based on their on the area they belong to. This may be helpful to enable you to divide the
alarms according to the different plant zones they come from. The are two methods to use for
associating an alarm to a certain area:
1.
2.
insert the name of the area in the "Area" property in the "Alarm Threshold General
Properties". This will associated the Area name to the alarm threshold.
create Areas in the "Alarm List" resource by using the "Add new Alarm Area..." command.
This command allows you to add folders to the "Alarm List" resource. Each folder represents
an area, and all the alarms which are moved to this folder will then belong to that specified
area. The name of the Area will also be associated to the alarm object.
Warning! When both of the above listed methods are applied to the same
alarm, priority will be given to the Area set in the "Alarm Threshold General
Settings".
3.
Create "implicit" alarm areas using a Variable Group: if the alarm is associated as a Template
to a Variable Group, the name of this Variable Group can be used as the Alarm Area name.
This method is very handy when needing to create nested alarm areas. A sub-group of
variables is a sub-area in a way that the name of the area by identified by the linking of
Variable Group names separated by the "." char. For instance, if the "Group01" variable
group contains the "Group02" sub-group, the Alarm Area of Alarm Templates can be
distinguished by then being called "Group01.Group02".
Areas created as Folders or as Alarm threshold properties are XML
Attributes of the Alarm object or threshold, and are not File System
folders.
The create Alarm Area can be deleted from the Alarm resource by selecting it then pressing the
keyboard "Canc" key. However in order to cancel an Alarm Area, it must not contain any alarm
objects. Alarm Areas can also be deleted by simply moving or deleting the alarms contained within
until it is completely empty. The Alarm Area will then become non-existent when the project is
saved, closed and then re-opened afterwards.
Enabling Alarms
The Movicon Alarms predisposed with a useful enabling property, to allow the programmer to
temporary deactivate the working of each single alarm.
This setting can be done by accessing the "Enable" item through the 'Alarms General
Properties' of the Alarms' 'Properties Window'.
Alarm groups or the all the contents of the Alarms Editor can also be enabled or disabled at the same
time. In this case simply select all the alarms required from the 'Alarms List' and set the "Enable"
property from the 'Alarms General Properties'. In this way the setting will be propagated to all
the alarms selected.
528
A L A R M S
M A N A G E M E N T
Alarm Statistics
There has also been a series of function added to the "AlarmThresholdCmdTarget" interface which
allow you to get statistical information on alarms. This information is always saved in the alarm's
status file:
TotalTimeOn: returns the alarm's total on time
LastTotalTimeOn:returns the date and time of the alarm's last ON transaction
LastComment: Sets or returns an alarm comment
GetTotNumOn: returns the total number of times the alarm went ON
GetTotNumAck:returns the total number of times the alarm was acknowledged
GetTotNumReset: returns the total number of times the alarm was reset
GetUniqueID: returns the alarm's Unique ID
GetTransactionID: returns the alarm's transaction ID
529
M O V I C O N _ P R O G R A M M E R _ G U I D E
the alarm event is executed while a user is logged on in the project, the alarm event will be recorded
using the language that was active before user logged on. However, if the user's LogOn have been
activated with a custom language or if the user has changed languaged after logging on, the alarm
event will nevertheless still be recorded with the language that was active before user logged on.
The alarm is only acknowledged after the operator has existed from the comment window with the
"OK" key, while pressing the "Cancel" key will annul the alarm acknowledgement. The comment
window is also managed in client network projects, or when the command is invoked in a multi alarm
selection, or using the basic script interface functions, or with the commands from the command
list.
The comment window is not managed with Web Client. In this case the
acknowledge command invoked from the Web Client will be activate the
alarm's acknowledgement without requesting user to enter a comment.
The font and font size of the dialog window used for entering comments can be edited using the
appropriate Movicon "AlarmCommentFont" and "AlarmCommentFontSize" registry keys. The window
will adapt adequately to any font modifications. Texts that appear in the window can also be
customized using special String IDs listed in the "Cambio Lingua di Sistema" section.
In cases where many alarms need acknowledging at the same time, a comment window will appear
for each alarm enabled with the "Comments on ACK (Audit Trail)" option. The comment windows will
appear in sequence, one at a time for each alarm. Therefore when existing with "OK" the next
alarm's comment window will appear. However when pressing the "Cancel" key, this will cancel not
only that alarm's ackknowledgement but all the others still to be acknowledged.
530
A L A R M S
M A N A G E M E N T
The "Use for All" option consents all other alarms still to be acknowledged to use the comment
entered in the window. This option therefore is to be used for entering just one comment for all
alarm acknowledges in a multi alarm selection.
In cases such as above, you need to have a tool which parameterizes the generation of the alarms,
providing you with the possibility to setup the alarm only once and quickly associate it to the 200
variables, such as in the case above.
In Movicon, this functionality is called "Alarm Template".
To obtain this useful function you need to define the alarm 'type' (Template) in the Alarms Resource.
Associate the desired intervention threshold (or thresholds) and the relating "standard" text (the text
used in the above example is "Motor Overload").
Then you can select the variables from the RealTime Database's Variable List and use the 'Associate
an Alarm' command with the right mouse key to select the desired alarms from the alarm list. This
will link the variables (in our example this would be the 200 motor variables) to the alarm
'Template'. Therefore with one click on the alarm Template Movicon will automatically setup 200
different alarms in the project. Each variable will be monitored to activate an alarm whenever any
threshold is exceeded. The displayed alarm text will show the standard text (in our example above
this would be "Motor Overload") and the name of the associated variable.
When an alarm is used as a template: if the Alarm's "Alarm Area"
property is left empty and the variable associated belongs to a variable
group, the alarm will be created belonging to the area with the same
variable group name. For instance, associating an digital alarm as
template to the "VAR00001" variable inserted in "Group1", the alarm will
be created belonging to the "Group1" area.
In addtion, if the variable is inserted in a sub-group, the alarm area will
obtain the group's name separated with the ".". For example, if the
"VAR00001" variable belonging to "Group1" is inserted in "Group2", the
alarm will then belong to the "Group1.Group2" area.
Example:
1. Create a new alarm object with a standard alarm text with "Motor Overload". Set an
intervention threshold.
2. Associate the alarm created as a Template to 200 variables existing in the project with names
from MT1 to MT200. This association is done by selecting the group of variables indicated
(Shift + click or CTRL + click) and using the right mouse key with the "Associate an Alarm"
command.
3. The assigned alarm icon will appear in all the variables from MT1 to MT200.
4. When a threshold is exceeded during runtime, for instance the MT33 variable threshold, an
alarm will appear indicating "MT33 - Motor Overload".
The name of the variable inserted as "standard" text can be replaced with a
customized text. To do this, just insert a string in the "String Table" with an
ID in the same name of the variable. When the alarm is activated, it's name
will be replace with the text contained in the string.
531
M O V I C O N _ P R O G R A M M E R _ G U I D E
You can associate an Alarm to a Variable by right clicking on the Variable in the "Variable Group" list
presented in the "Project Explorer" window and then select the "Associate an Alarm" command, or
use the same command also found in the Project Explorer's "Command window".
The request to associate and alarm opens another window containing the list of alarms which were
inserted beforehand and are now available for use.
In the properties of the Alarm to be associated to a variable, you should not
specify any reference variable but only the text and activation condition.
Alarms as templates can also be associated to individual structure variable members. In this case, it
will be necessary to enable the member's "Enable Member Properties" and then associate the alarm
Template to the members by right mouse clicking directly on the member's name. It will then
become possible to generate an alarm of each bit of the variable member as described in the next
paragraph headed 'Creating alarms for each variable bit".
create an alarm with relative digital threshold without setting the "Alarm Variable' property
associate the alarm template, previously created in above point, to the variable
insert one or more ID Strings using the "<Variable>.<Bit>" syntax in the String Table.
Movicon will then create an alarm for each bit of the variable whose ID has been found in the String
Table found.
For instance, when associating an alarm template to the "VAR00001" word type variable and then
inserting the following String IDs in the String Table:
VAR00001.0
VAR00001.1
...
VAR00001.15
532
A L A R M S
M A N A G E M E N T
Movicon will create 16 alarms at project startup, each one will be activated in each single variable
bit.
The string ID for the single bits will then be used for managing the template's text as well. If String
ID is not inserted for each single bit, only one alarm will be created and managed in the Word
variable (or defined variable type).
This same mechanism can also be applied to Structure variable members. For instance, if needing to
generate 16 alarms in each bit of a Structure variable Word type member, "StructVar1:Member1",
you will only need to enable the member's properties, associated the alarm template to the member
and add the following ID String to the String Table:
StructVar1:Member1.0
StructVar1:Member1.1
...
StructVar1:Member1.15
Alarm Status: this lets you know at the project startup which status, ON, OFF, ACK
etc, the Alarm was when the project was last terminated. This serves for restoring the
present situation back to how it was before the project was last terminated
Total Time ON: shows the total time in which the alarm remained in the ON status
Last Time ON: shows the date and time of the alarm's last ON transaction
Comment: shows any comments associated to the alarm by users by using the
appropriate script functions
Number of ON Events: shows how many times the alarm turned ON
Number of ACK Events: shows how many times the alarm was acknowledged
Number of RESET Events: shows how many times the alarm was reset
533
M O V I C O N _ P R O G R A M M E R _ G U I D E
Some of this information such as the Unique ID and the Transaction ID is important for identifying
that particular alarm for managing the "Alarms History" in the "Alarms Window" and in the"
Historical Log Window". The other information is just for statistical purposes.
Cancelling an alarm Status File will loose all the statistical
information and identifiers for that alarm. A new file will, however
be automatically recreated by Movicon again.
The commands for opening, saving or printing Alarm Statistics reports can be activated from the
"Alarm Commands" from the Movicon "Commands List".
The report files have been created both in "Crystal Report" format and using the Movicon
"Embedded Reports" resource. You can decide which format to use based on the open report
command selection using the "Action" parameter from the "Alarm Command List".
These reports allow access to the historical data archive database ('Alarms' table), independently
from the DB format being used.
The analysis is carried out on the 'Alarms' table, creating a table, histogram and pie chart to display
the alarms classified by duration (total time ON) or for intervention frequency. Reports can be
applied filters for different time periods and can be open in preview mode or printed out directly.
Furthermore, custom reports can be created to open in substitution to those proposed by Movicon
for default.
Alarm Statistics are not supported if the "InMemoryDB" database
engine is being used for the Historical Log. In addition, the ODBC
driver being used must support the following commands in the
SELECT SQL syntax:: "SUM", "COUNT", "GROUP BY" and "ORDER BY".
It will be impossible to use the Alarm Statistics Reports if these
commands are not supported by the database being used.
534
A L A R M S
M A N A G E M E N T
The report files in question are already in the Movicon installation folder. Four types of Report files
created with the Crystal Reports 10 version are available (OrderByDate.rpt, OrderByDuration.rpt,
GroupByThreshold.rpt, GroupByFrequency.rpt) along with another four files created with the Movicon
"Embedded
Reports"
resource
(OrderByDate.movrep,
OrderByDuration.movrep,
GroupByThreshold.movrep, GroupByFrequency.movrep). Even though the "Crystal Report" and
Movicon "Embedded Report" files display the same information and have the same names, they have
different extensions. Each report file provides the possibility to obtain the following statistical data:
In addition, default reports can be modified or new customized ones can be created to open instead
of those proposed by Movicon. In this case, to modify or create a new report in the "Crystal Report"
format, you will need to have the "Crystal Report" developer tool. The Movicon "Embedded Reports"
can be modified or created using the project's "Report" resource. In this case, when needing to
modify one of the four default "Reports"only the following procedures need to be performed:
1.
2.
3.
copy the ".movrep" report file to be modified from the Movicon installation folder to the
project's resource folder
open the project in development mode and modify the report, which will be found in the
"Report" resource in the Project's Explorer Window
after completing modifications, copy the ".movrep" report file from the project's resource
folder to the Movicon installation folder, overwriting the one already existing within.
When needing to create a new report file in the Movicon format, perform these procedures below:
1.
2.
3.
4.
open a Movicon project in development mode and add a new "Report" resource with the
desired name
edit the report by customizing it as pleased
when completing all modifications, copy the ".movrep" report file from the project resource
folder to the Movicon installation folder
enter the report name manually in the create report command from the "Alarm Commands"
without specifying its extension in the "Report File" parameter
The statistical alarm reports created with the Movicon Embedded
Reports can also be left within the project resource folder. The first
535
M O V I C O N _ P R O G R A M M E R _ G U I D E
thing Movicon does is search for report files within the project's
resource folder (and any existing sub-folders) and if the file is not
found, a search is made in the Movicon Installation folder.
When editing a Movicon "Embedded Reports" , the "Alarm Statistic" option is available in the report's
properties that once enabled will provide the alarm statistical values in the list of fields that can be
inserted on the report. These fields are:
_TotalNumOn_: statistical information representing the total number of times the alarm turned
ON.
_TotalNumAck_: statistical information representing the total number of times the alarm was
acknowledged.
_TotalNumReset_: statistical information representing the total number of times the alarm was
reset.
_TotalTimeOn_: statistical information representing the total time the alarm remained in the ON
status.
_ProgressiveId_: statistical information representing the alarm's progressive Id number. This
value is used as the chart's X axis in default Alarm Statistic Reports.
_DateTimeOn_: this field is used for displaying the alarm's activation date and time. This value is
calculated for each record, during the report generation phase by Movicon, based on the alarm's OFF
date and time and duration.
Some of the statistical values described above are saved by Movicon in the "Alarm Status File" and
can be reset during runtime using the "Reset Statistic" command from the Alarm Command list.
The statistical alarm reports created with the Movicon Embedded
Reports manages any Alarm table or column name customizing
automatically. Therefore Alarm table and column names can be
customized as pleased without having to repeat same operation in
the statistical alarm reports as well. However, this functionality is
not available for reports created with Crystal Report which will
need to be modified as well.
Networking
In regards to applications in networking, a Client application that uses the Alarm window is capable
of enabling or disabling the Client machine locally the warning sound when alarm notifications arrive
from the Server application. Also in this case the status of the "Enable Sound" button setting for the
warning sound will be retained after screen closes and reopens, independently for each user to
whom the Alarm Window has given access towards the Server application. Therefore, in this case,
alarms that display in the Client Alarm Window and the consequent warning sound are managed in
function with the user used for connecting to the Server (user inserted in the "Network Client
536
A L A R M S
M A N A G E M E N T
Settings" from the Client project's "Network Services" resource or the user inserted in the "Default
Logon User" property from the Server project's "Network Client" resource).
If the "Password Management" has been enabled in the client application as well, the Cllient user's
Access level defined for the same user in the Server application will be considered (and not the one
defined in the Client) and compared with the active alarm threshold's Read Access Area Level, and
only if they match will the alarm be displayed in the Alarm Window.
The warning sound stops ringing when the Client's Alarm Window
disconnects from the Server. This may happen for different reasons:
timeout with Server, screen change, etc. If you wish that the warning
sound of a new alarm sounds independently form the fact that the Alarm
Window screen is displayed or not, you will need to set the client screen with
the "Keep in Memory" option and enable the "Pre-load Screens" property
situated in the Client project's "Execution" property group.
It is also possible to set more then one Alarm Window on the same screen, each one connected to
different Servers with the each single Alarm Window's activated alarm Ack/Reset command received
by the relative Server.
Once again, the "_SysVar_:AlarmsSoundState" system variable and the "Alarm - Enable Sound"
command have the same behaviour as described above for the Alarm Windows. Even if the "Enable
sound" button is disabled in only one of the Alarm Windows, the general alarm sound status will be
disabled for all the windows. Likewise, if a "Enable Sound" button is re-enabled, the general alarm
sound status will be re-enabled for all the windows.
Web Client
When there are active alarms in the project, a warning sound is given by the Web Client
independently from the screen page opened. In addition, these warning sound can be
acknowledged using the icon placed on the applet status bar. The warning sound is set through
applet's "PlaySoundOnAlarm" (default "false") parameter. This parameter gets inserted
automatically upon creation html files but can also be created manually for html files created by
previous Movicon versions. You can also customize the sound produced by adding the optional
"FileToPlayOnAlarm" parameter in the html file with the desired WAV file to be played. This
parameter is also inserted by default upon creating htlm files. The audio file must be place on the
Web server in the same folder where the Movicon "MovWebClientX.jar" applet resides, usually found
in the project's resource folder.
For further information on the syntax used for the two parameters described above please refer to
the section on "HTML creation pages" in the WebClient manual.
Restrictions
Statuses for warning sound users cannot be saved in Windows CE independently from the fact that
the password management is enabled or not.
On ".wav" type audio files can be reproduced on Web Client.
537
M O V I C O N _ P R O G R A M M E R _ G U I D E
Name
This edit box permits you to define the Alarm or message object's name which is to be configured.
The object's name only identifies the alarm or message in the 'Alarms List' and identifies the object
if inserted into the Template library.
Device Name
This edit box allows you to define the device's name that the Alarm or Message refers to.
The device's name will be displayed in the alarms window, before the alarms' text. The name of the
device will be displayed in the alarm window, preceding the alarm's text. this syntax will be used
only in cases where alarm is not an alarm Template. The displayed text in Alarm Window will be
composed according to alarm type as follows:
Alarm with associated variable or Alarm generated by variables with the same name
Displayed Text = <Device Name> - <Alarm Text> (when "Alarm Text" property has been
set)
Displayed Text = <Device Name> - <Threshold Name> (when "Alarm Text" property has not
been set)
Alarm as Template
Displayed Text = <Variable Name> - <Alarm Text> (when "Alarm Text" property has been
set)
Displayed Text = <Variable Name> - <Threshold Name> (when "Alarm Text" property has
not been set)
The variable value can be displayed in the text by inserting the following
syntax:
%(Variable Name)
For instance, if you want to insert the VAR00001 value in the text, the
string should be:
"Device Name %(VAR00001)
By doing this the variable's value will be displayed dynamically. The value
displayed in the Alarm Window will be the value read the exact moment
the alarm was turned ON.
Alarm Variable
This box is used to select the variable from those presented in the Movicon 'Variables List' which
generate the alarm or alarms (or messages) in function with event thresholds, defined through the
relevant properties. You can use the syntaxes relating to the bit pointing within a variable or
structure variables (eg. VAR0001.5, or STR0001:ALL_01).
If this field is left blank, in runtime Movicon will control if there is an
existing variable with the same name of the alarm in the Real Time DB. If
one does exist it will be used as the activation variable for that alarm (see
the section on "Alarms activated by homonymous Variables").
Var. Duration
Enabling this property will make the alarm work with the usual threshold, but the confrontation will
be referred to the "Total Time ON" instead of variable's value. The time is the total duration
expressed in seconds that the variable was at a value different from zero. By using a new variable
statistics (see "Retentive Variables and Statistical Data") you will be able to find out how long the
variable has been at a value that is not zero. This function can be very handy in managing
programmed maintenance. In order to use this function you will need to enable the "Retentive not
Shared" and "Enable Statistic Data" properties for the variable in question.
When the variable's "Total Time ON" exceeds the value set in the alarm's threshold, the alarm will be
activated. After which by resetting the variable's statistics, its "Total Time ON" will be zeroed and
the alarm will turn to OFF.
Enable Alarm Variable
This box is used for selecting a variable which consents the alarm intervention. When the selected
variable has a value other than zero (><0), when conditions subsist, the alarm will be notified
regularly. When the variable has a 0 value, even though there maybe alarm conditions present, this
will not be activated.
When this box is not selected, the alarm will always be enabled if the 'Enable' property is set at
'True' value.
538
A L A R M S
M A N A G E M E N T
The hysteresis is an absolute value which is dealt differently according to how the condition of the
alarm's intervention is set:
Condition "="
The alarm intervenes when the variable assumes a value equal to the value set for the
alarm's threshold. The alarm re-enters when the value of the variable is higher or lower than
the threshold value +/- half of the hysteresis value.
Condition ">="
The alaarm intervenes when the variable assumes a value higher or equal to that of the
alarm's threshold. The alarm re-enters when the variable is lower than the threshold value
less the hysteresis value.
Condition "<="
The alarm intervenes when the variable assumes a value less or equal to the that of the
alarm's threshold. The alarm re-enters when the variable is higher than the threshold value
plus the hysteresis value.
Exclusive Threshold
When there are more than one threshold present, the enabling of this property will evoke the
disappearance of a alarm referred to one threshold when the alarm referring to the next threshold
appears. Otherwise both alarms will both remain active.
Enable Alarm Variable
This selection box is used to enable or disable the alarm intervention.
The 'Enable' property has priority over the 'Enable Variable'.
539
M O V I C O N _ P R O G R A M M E R _ G U I D E
determine the alarm's or message's behaviour when the defined threshold values are reached or
exceeded. The Threshold properties can be activated in the editor through the tree structure of each
single Alarm.
To modify the general settings of the alarm's thresholds, select the threshold with the mouse and
use the Movicon 'Properties Window'.
Threshold Name
The name of the threshold to be configured is defined in this edit box. The name of the threshold will
be displayed in the alarm window instead of the "Alarm Text" if not previously defined. The displayed
text in Alarm Window will be composed according to alarm type as follows:
Alarm with associated variable or Alarm generated by variables with the same name
Displayed Text = <Device Name> - <Alarm Text> (when "Alarm Text" property has been
set)
Displayed Text = <Device Name> - <Threshold Name> (when "Alarm Text" property has not
been set)
Alarm as Template
Displayed Text = <Variable Name> - <Alarm Text> (when "Alarm Text" property has been
set)
Displayed Text = <Variable Name> - <Threshold Name> (when "Alarm Text" property has
not been set)
Alarm Area
This editbox allows you to associate the Alarm or Message in question its own area if necessary.
The alarm will then be displayed for viewing by activating the chosen area in the "Alarm Window".
When an alarm is used as a template: if the Alarm's "Alarm Area"
property is left empty and the variable associated belongs to a variable
group, the alarm will be created belonging to the area with the same
variable group name. For instance, associating an digital alarm as
template to the "VAR00001" variable inserted in "Group1", the alarm will
be created belonging to the "Group1" area.
Further more if the variable is inserted in a sub-grop, the alarm area will
obtain the name composed by those in the group separated by the "." .
For example if the "VAR00001" variable belonging to "Group1" is inserted
in "Group2" , the alarm will then belong to the "Group1.Group2" area.
Alarm Text
The threshold's Title string is typed in this box which will constitute the alarm's text. You can select
the text among those inserted in the project's String resource. In this case the text may be subject
to the Language Change functionalities.
The text which appears in the Alarms or Messages window will be determined by <threshold name>
- <device name> : <alarm text>
The variable value can be displayed in the text by inserting the following
syntax:
%(Variable Name)
For instance, if you want to insert the VAR00001 value in the text, the
string should be:
"Alarm Title %(VAR00001)
By doing this the variable's value will be displayed dynamically. The value
displayed in the Alarm Window will be the value read the exact moment
the alarm was turned ON.
In cases where a String ID has been associated in the "Alarm Text"
property, the %(VariableName) syntax will be inserted within the string's
text in the table.
Alarm Help
This box, whose use is not obligatory, allows you to type the text string which will constitute the
eventual alarms help guide. The Help guide will be available to the operator during runtime by
double-clicking on the alarm or activating the appropriated information button. The box allows you to
select the text from those inserted in the project's string resource. In this case the text may be
subject to the Language Change functionalities.
540
A L A R M S
M A N A G E M E N T
If this property is left empty, Movicon will automatically insert the total alarm duration with the
following string:
Total Duration 0,00:00:00
where 00:00:00 indicates the alarm's duration in days, hours, minutes and seconds.
Read Access Area Level
By using this property you can setup the Access Level mask needed for displaying the alarm in the
"Alarm Window". When the Access Level mask of the user currently logged on does not correspond
to the control's settings, the user will not be able to see the alarms. The "0000" and "FFFF" settings
make the object accessible in read to any user.
The historical logging operations of the alarms are carried out independently of the access rights of
the user logged on at that moment.
For further details on 'Access Masks' please refer to the "User Levels and Access Levels"
paragraph.
Write Access Area Level
By using this property you can set the Access Level mask needed for executing, for instance, an
alarm acknowledgement and reset. When the Access Level mask of the user currently logged on
does not correspond to the control's settings, the user will not be able to execute any command
operations associated to the alarms. The "FFFF" level makes the object accessible in write to any
user.
For further details on 'Access Masks' please refer to the "User Levels and Access Levels"
paragraph.
541
M O V I C O N _ P R O G R A M M E R _ G U I D E
Bit 0 : Strobe command for acknowledging alarm (bit returns to zero once the alarm has
been acknowledged)
Bit 1 : Strobe command for resetting alarm (bit returns to zero once the alarm has been
reset)
Bit 2 : Reserved
Bit 3 : Reserved
Bit 4 : Alarm is active in the Off status
Bit 5 : Alarm is active in the Off status but has already been acknowledged (OFF ACK)
Bit 6 : Alarm is active in the On status
Bit 7 : Alarm is active in the On status but has already been acknowledged (ON ACK)
Only the alarm's Acknowledge command can be used In cases where the
set variable is bit type.
In order to program and manage this functionality properly, each alarm
must use a command-status variable that is not already being used by the
other thresholds.
Severity Variable
The name of a variable can be inserted (or selected with the "..." browse button on the right) to
make the alarm Priority value dynamic in Runtime. However if you set a RealTimeDB variable in the
"Severity Variable" property, any value set in the "Severity" property will be ignored.
Activation Condition
This property determines on what condition the alarm is to activate:
542
Major-equal ('>=' means that the alarm activated when the variable value is equal or higher
than the 'Value' property setting
Minor-equal ('<=' means that alarm activates when the variable value is equal or lower than
the 'Value' property setting
Equal ('=' means that the alarm activates when the variable value is the same as the 'Value'
property setting
"Rate Change Decrease": means that the alarm is active when the associated variable's
value does not change to the quantity desired ("Activation Value" property) within the time
set ("Delay (sec.)" property). The time count starts the moment the alarm is enabled with the
"Enable Alarm Variable"
"Rate Change Increase": means that the alarm activates when the associated variable's
variable does not change to the quantity desired (Activation Value" property) within the time
set ("Delay (sec.)" property). The time count starts the moment the alarm is enabled with the
"Enable Alarm Variable"
A L A R M S
M A N A G E M E N T
"Different (<>)": means that the alarm activated when the variable value is different from
the one set in the "Activation value" (or "Threshold Variable Value") property
"Between": means that the alarm activates when the variable value is higher or equal to the
value set in the "Activation low value" (or "Threshold Variable low Value") property, and less
or equal to the value set in the "Activation value" (or "Threshold Variable Value") property.
543
M O V I C O N _ P R O G R A M M E R _ G U I D E
544
A L A R M S
M A N A G E M E N T
contained in the "Alarms" table of the Historical Log Database created by Movicon in the defined
format or in the Alarms.dat file,depending on the data source you are using (ODBC or IMDB)
If you are using the ODBC connection, the Historical Log is created with
the Movicon default settings, but the Historical Log file can be customized
when put into use, where you can create a personalized ODBC link and
define a different table name. These functionalities can be carried out
from the Project's "Historical Log Settings".
Beep
This property allows you to decide whether the alarm threshold should make a beep sound when the
alarm is activated.
Bmp File
This property allows you to set an alarm image. The image will be displayed as an icon in one of the
alarm window's columns. The image set in the alarm threshold has priority over the one set in the
variable. This property cannot be modified using VBA language.
Sound File
This property allows you to set a alarm sound wav. file which will activate when the alarm activates.
The sound set in the alarm threshold has priority over any one set in the variable. This property
cannot be modified using VBA language.
When more than one alarm have been associated an audio file to be executed when the alarm turns
ON, this file is executed according to the alarm priorities. For example, when an alarm turns ON,
when other alarms associated with audio files, are already ON, the new alarm will executed the audio
file only when its priority is greater than those already present. Note that the "1" priority is the
lowest.
When the Alarm Window's "Abilita Suono" button is active, the threshold's
Beep property will behave differently in the following cases:
Windows 32 bit systems: If the beep property is active when the
alarm is activated, the sound file will be executed with the PC's
Buzzer simultaneously.
Windows 64 bit systems: in order to execute the custom Sound
File you will need to disable the Beep property, otherwise only the
standard sound will be executed (i.e. the Buzzer)
When the Alarm Window's "Abilita Suono" button in both Windows 32 bit
and 64 bits systems, is not active, the alarm sound is only executed for
those alarms which have been set with a customized audio file
(independently from the relating Threshold's Beep property).
Repeat Alarm Sound
This check box permits you to define the behaviour of the sound files associated to the alarms. By
activating the property the file will be executed continuously until it is acknowledged. Otherwise the
file will only be executed once when the alarm appears.
Speech Alarm Text
This property allows you to enable the speeching functions for vocal synthesis of the text string
which builds the alarm. The alarm's text will then be pronounced by Movicon when it occurs if the
PC being used has been equipped with an audio card and speakers. You will also need to ensure that
the phonemes, to be used in pronouncing the text, have been installed with language desired. The
phonemes are used to pronounce the text by interpreting the pronunciation of the language
selected. The phonemes are normally supplied separately and therefore it is the user's responsibility
to get and install the ones desired. However, by using Movicon's customized installation you can
select some of the most commonly used phonemes.
Repeat Speech
This property allows you to set the repeat time of the alarm's Speech. When setting this property
with a '0' value the alarm's speech will be repeated once only. This time must also be set allowing
enough time for the alarm's speech to be executed.
Enabling Speech Variable
This selection box is used for selecting a variable which will determine the activation of the alarm's
speech. When the selected variable obtains a value different from (><0), the alarm's text will be
spoken when the alarm is activated. When the variable obtains a '0' value the Speech will result
disabled.
545
M O V I C O N _ P R O G R A M M E R _ G U I D E
BackColor
This property is dedicated to selecting the colour to be associated to background relating to the
alarms or messaged display in the appropriated window.
Selecting colours is done according to the standard selection modes using the colour palette.
You can reset the set colours (restoring those of default) by selecting the 'Automatic' option found
on the colour palette.
TextColor
This property is dedicated to selecting the colours to be associated to the texts relating to the alarms
or messages displayed in the appropriated window.
Selecting colours is done according to the standard selection modes using the colour palette.
You can reset the set colours (restoring those of default) by selecting the 'Automatic' option found
on the colour palette.
Blink BackColor
This property is dedicated to selecting the colour to be associated to the background relating to the
alarms or messages displayed in the appropriated window during the blinking phase.
Selecting colours is done according to the standard selection modes using the colour palette.
You can reset the set colours (restoring those of default) by selecting the 'Automatic' option found
on the colour palette.
Blink TextColor
This property is dedicated to selecting the colour to be associated to the text relating to the alarms
or messages displayed in the appropriated window during the blinking phase.
Selecting colours is done according to the standard selection modes using the colour palette.
You can reset the set colours (restoring those of default) by selecting the 'Automatic' option found
on the colour palette.
546
A L A R M S
M A N A G E M E N T
This property allows you to set a custom text which will then be used for SMS, Voice, Email and Fax
notifications. When this property is left without a value, the sent string will be composed in the usual
way by Movicon. This property cannot be modified using VBA language.
E-Mail
When enabling the E-Mail Alarm event notification via Alarm Dispatcher, an
e-mail text will be sent containing the alarm text , while the object's email
text will show the following information:
Alarm Area Name - Alarm Object or Device Name - Event Type
Attachment
In this selection box you can specify one or more files to be attached to the message to be sent to
the recipient when needed. If there are more than one file to be sent use the ";" character as a
separator (eg. File1.zip;File2.zip;File3.zip).
If is not specified the absolute files path, Movicon will search for these files within the setting folder
for the Alarm Dispatcher (.dspt).
Note that this function is available starting from Build 956.
Send Email ON
This property activates or deactivates the sending of E-mail messages management. This
management requires the E-mail Client and Server management tool installation, as well as the
necessary modem and Internet connections.
The message will be sent upon the Alarm's intervention (ON).
Send Email ACK
This property activated of deactivates the send E-mail message management. This management
requires the E-mail Client and Server management tool installation, as well as the necessary modem
and Internet connections.
The message will be sent the moment in which the alarm is acknowledged (ACK).
Send Email RESET
This property activated or deactivates the send E-mail message management. This management
requires the E-mail Client and Server management tool installation, as well as the necessary modem
and Internet connections.
The message will be sent the moment in which the alarm is reset (RESET).
Send Email OFF
This property activated or deactivates the send E-mail message management. This management
requires the E-mail Client and Server management tool installation, as well as the necessary modem
and Internet connections.
The message will be sent the moment the alarm stops ringing, independently from the acknowledge
or reset status.
Voice
Send Voice ON
This property activates or deactivates the voice message management. This management requires
the enabling and configuring of the appropriate functions for sending voice messages (TAPI), and
the installation of any other tools required as well as the configuring of any modem needed.
The message will be sent upon the Alarm's intervention (ON).
Send Voice ACK
This property activates or deactivates the send voice messages management. This management
requires the enabling and configuring of the appropriate functions for sending voice messages
(TAPI), and the installation of any other tools required as well as the configuring of any modem
needed.
The message will be sent the moment in which the alarm is acknowledged (ACK).
Send Voice RESET
This property activates or deactivates the send voice messages management. This management
requires the enabling and configuring of the appropriate functions for sending voice messages
(TAPI), and the installation of any other tools required as well as the configuring of any modem
needed.
The message will be sent the moment in which the alarm is reset (RESET).
547
M O V I C O N _ P R O G R A M M E R _ G U I D E
SMS
Send SMS ON
This property activates or deactivates the send SMS management. This management requires the
enabling and configuring of the appropriate functions for sending SMS messages and the eventual
modem to be configured.
The message will be sent upon the Alarm's intervention (ON).
Send SMS ACK
This property activates or deactivates the send SMS management. This management requires the
enabling and configuring of the appropriate functions for sending SMS messages and the eventual
modem to be configured.
The message will be sent the moment in which the alarm is acknowledged (ACK).
Send SMS RESET
This property activates or deactivates the send SMS management. This management requires the
enabling and configuring of the appropriate functions for sending SMS messages and the eventual
modem to be configured.
The message will be sent the moment in which the alarm is reset (RESET).
Send SMS OFF
This property activates or deactivates the send SMS management. This management requires the
enabling and configuring of the appropriate functions for sending SMS messages and the eventual
modem to be configured.
The message will be sent the moment the alarm stops ringing, independently from the acknowledge
or reset status.
Fax
Send FAX ON
This property activates or deactivates the send FAX management. This management requires the
enabling and configuring of the appropriate functions for sending FAXES and the eventual modem to
be configured.
The message will be sent upon the Alarm's intervention (ON).
Send FAX ACK
This property activated or deactivates the send FAX management. This management requires the
enabling and configuring of the appropriate functions for sending FAXES and the eventual modem to
be configured.
The message will be sent the moment in which the alarm is acknowledged (ACK).
Send FAX RESET
This property activates or deactivates the send FAX management. This management requires the
enabling and configuring of the appropriate functions for sending FAXES and the eventual modem to
be configured.
The message will be sent the moment in which the alarm is reset (RESET).
Send FAX OFF
This property activates or deactivates the send FAX management. This management requires the
enabling and configuring of the appropriate functions for sending FAXES and the eventual modem to
be configured.
The message will be sent the moment the alarm stops ringing, independently from the acknowledge
or reset status.
548
A L A R M S
M A N A G E M E N T
The dispatcher can manage message notifications with programmed delays, according to the severity
of the alarm ("Settings->General"). All the pending messages, which therefore have not been sent,
are rendered persistent by Movicon in the "ADPending.xml" file saved in the project's DATA subfolder. In cases where Movicon is started up with messages still pending, the Alarm Dispatcher will
also automatically start up to allow these pending messages to be sent.
The above described pending message manager is NOT supported on
WinCE.
549
M O V I C O N _ P R O G R A M M E R _ G U I D E
550
The events which can be recorded in the Historical Log archive are:
All the project alarms, if not specified otherwise in the properties, are recorded in the Historical Log.
The programmer can then configure the alarm properties not to record in the historical log if
desired.
The System and Driver Events are always recorded in the appropriate Log files. If you don't wish
them to be displayed, set the log data display in the log window appropriately.
The recording of events and the database format must be configured in the "Project Historical
Log Settings".
551
M O V I C O N _ P R O G R A M M E R _ G U I D E
The log data can be displayed through the appropriated "Log Window" and "TraceDB Window"
windows which can be inserted into any project screen.
Standard ODBC
IMDB
When using the standard ODBC, Movicon will use relational database tables and files as log files.
Normally, files in this case are MsSQL Server or MsAccess type, but the ODBC formats of any
Relational DB can be used (ie. Oracle or other).
The two different technologies are described in the corresponding chapters.
The type of archive choice does not change the fundamental way the Historical Log is used. In both
cases Movicon will record events on files, and their contents will be automatically displayed in log
windows.
In conclusion the historical log format choice is, of course, in the hands of the programmer. Movicon,
for default, will use the ODBC in desktop systems based on Wikn32 and IMDB in embedded systems
based on Windows CE. The programmer may decide whether to use IMDB on desktop or force the
use of ODBC in WinCE which requires ADOCE pre-installation to convert the ODBC links automatically
in ADOCE in the devise. (ODBC is not supported by Window CE).
Note that with creating projects for Windows 32/64 bit, Movicon permits
activation of automatic ODBC link creation to historical logs. IMDB use is
not selected for default. When nothing has been selected, Movicon will use
the ODBC links with historical logs based on SQL Server where possible,
otherwise it will use MsAccess.
When creating projects for WinCE, Movicon will select the historicals based
on IMDB for default.
All the default settings can be modified as pleased.
552
H I S T O R I C A L
L O G
ODBC
Normally, in the Windows 32/64 bit environment, the use of logs based on Relational DB offers many
advantages in terms of managing files, openness, analysis and statistics. Movicon, if not specified
otherwise, will use the ODBC links for managing Log files on Windows 32/64 bit systems.
The Log file names, if not specified otherwise, will be "ProjectName_hisLog" in the project's "LOGS"
folder. However, you can customize the file name and the ODBC links through the "Project
Historical Log Settings" properties. Three different tables will then be created in the Database,
each one will contain the data relating to a certain type of event.
Movicon, if not specified otherwise, will use ODBC in Windows 32/64 bit
environments. The format it will use is MsSQL Server or MsAccess as an
alternative. When unable to create files and connections automatically,
Movicon will alert with a message where you may then need to use the
ODBC link manually of use the IMDB.
IMDB
The log file management in IMDB (InMemory DB) is a valid alternative to Relational DB, which is
ideal for embedded systems with limited recourses or based on Windows CE or Pocket PC.
The IMDB does not use ODBC and managed log files in text mode, by managing data in memory and
unloading it on files at preset time interval. Filed data can be based on XML, on simple text or
crypted.
The advantaged of using this management as an alternative to the potentialities used by the ODBC
are:
1.
2.
3.
Increased performances
Minimum resources required
Date base can be crypted against unauthorized access.
Movicon, if not specified differently, will use IMDB in WinCE environments.
When the programmer is obliged to setup the ODBC management,
Movicon will automatically to convert the project's ODBC links to ADOCE
links in the device. This however, requires the implementation of the
ADOCE components on the device.
Data Tables
The Log file archive tables are:
553
M O V I C O N _ P R O G R A M M E R _ G U I D E
Time Column (TimeCol): reports the date and time of the recording in GMT (Greenwich
Mean Time)
Local Time Column (LocalCol): reports the date and time of the recording in local time
MSec Column (MSecCol): reports the milliseconds relating to the time of the recording
User Column (UserCol): the name of the user logged in the project will be recorded in this
field only if the recorded event was prompted by that user (e.g. by a button, etc.)
Event Column (EventCol): reports the event type recorded (E.g. Alarm ON, Alarm OFF,
System, etc)
Event Number Column (EvNumCol): reports an ID number of the event recorded
Event Description Column (EvDescCol): reports the event description
Description Column (DescCol): reports information about the event type
Comment Column (CommCol): reports information about the event type
Duration Column (DurCol): reports the duration time of the event in question
Unique ID Column (UniID): reports the alarm's unique ID (value valid for the "Alarms"
table only)
Transaction ID Column (TraID): reports the alarm's transaction ID (value valid for the
"Alarms" table only)
The active user name is recorded in the Table's User column only when the
event recorded was prompted by that user. For instance in the Alarms
Table, the active user will only be recorded for the "Alarm ACK" and Alarm
RESET" events but not for the "Alarm ON" and "Alarm OFF" events.
However the names of the database columns can be customized through the "Project Historical
Log Settings".
554
When using the standard ODBC, Movicon will use relational database tables and files as log files.
Normally, the files in this case are MsSQL Server type or MsAccess, but ODBC formats from any
Relational DB can be used (ie. Oracle or other).
When using the IMDB, Movicon will record historical log data in text mode, which can be structured
in XML or crypt.
These two different technologies are described in the corresponding chapters.
555
M O V I C O N _ P R O G R A M M E R _ G U I D E
In conclusion the historical log format choice is, of course, in the hands of the programmer.
Movicon, for default, will use the ODBC in desktop systems based on Wikn32 and IMDB in embedded
systems based on Windows CE. The programmer may decide whether to use IMDB on desktop or
force the use of ODBC in WinCE which requires ADOCE pre-installation to convert the ODBC links
automatically in ADOCE in the devise (ODBC is not supported by Window CE).
Note that with creating projects for Windows 32/64 bit, Movicon permits
activation of automatic ODBC link creation to historical logs. IMDB use is
not selected for default. When nothing has been selected, Movicon will use
the ODBC links with historical logs based on SQL Server where possible,
otherwise it will use MsAccess.
When creating projects for WinCE, Movicon will select the historicals based
on IMDB for default.
All the default settings can be modified as pleased.
WARNING: Data Loggers or Recipes based on IMDB do not support reports
created with the "Report Designer" and "Crystal Reports". If the case need
be use historicals in the ODBC.
Archive sizes
The file size is set in the "Project Historical Log Settings" item in the project settings for the
Historical Log and is set in the respective Data Logger Recording Time Properties or the DB trace
objects. The size or age is expressed in days and has been set at 180 days for default. This value
can be set as desired.
The file size therefore depend on the data format used and by the number of events to be recorded
by the system in the reset period.
Recording and life span of historically logged data in the database from project rescources are
subject to continuous recycling and updating during the project execution in runtime mode. The
frequency with which the DELETE queries will be executed towards the historical log database is
represented in minimum time units relating to the set maximum duration. Meaning that the DELETE
querywill be executed:
every minute, if the historical log age is higher tha a minute but lower that an hour
every hour, if the historical log age is higher than an hour but lower than one day
every day, if the historical log age is more than one day.
The DELETE query will always be executed before putting into effect the INSERT query relating to
new data to be recorded.
556
H I S T O R I C A L
F I L E S
M A N A G E M E N T
For example with the ODBC you can record data from the Historical Log or
record with the Data Logger and Recipe tables data containing Movicon
variables.
The data can be archived, by using the ODBC link, in the user's preferred
format. If the user has a management system based on MsAccess or SQL
Server, s/he can read and manipulate the data recorded by Movicon
according to their own requirements.
Movicon carries out data recordings by using the ODBC standard. The ODBC link interprets the data
to be recorded according to how it has been configured and carries out the recording in the
corresponding format through the ODBC driver of the preferred database application. The file or files
will therefore contain Movicon data, which will actually be recorded in the format requested by the
ODBC system.
Movicon is independent from the data format used, seeing as the driver is
property of the database and the operating system's ODBC manager being
the means of putting the writing of data into effect.
ODBC is a Microsoft standard and the ODBC manager files (drivers) are
property of the respective owner of each single Database application. For
further information please refer to the ODBC online guide or to the current
bibliography available from Microsoft or the makers of the database being
used.
557
M O V I C O N _ P R O G R A M M E R _ G U I D E
Being a 32bit application, Movicon used the ODBC 32 bit drivers in 64bit
operating systems as well. Therefore in order to manage the ODBC directly
from "ODBC Data Source" you will need to launch the "Odbcad32.exe"
executable located in the "C:\Windows\SysWOW64\" folder. The ODBC 64
bit manager is in fact launch from the "Control Panel - Administrator Tools ODBC Data source.
The operating system, however, provides a series of ODBC drivers already available in different
formats (Paradox, FoxPro, dBase, ecc.), which can be accessed just like all the other ODBC settings
from the 'Administrator Tools - ODBC Data Source' item on the 'Control Panel'.
558
H I S T O R I C A L
F I L E S
M A N A G E M E N T
559
M O V I C O N _ P R O G R A M M E R _ G U I D E
DataLogger
When an ODBC error occurs, Flash files relating to the project's DataLoggers will be created in the
"DLOGGERS" folder. A Flush file will be created for each DataLogger defined in the project with the
same DataLogger table name and "DataLoggerEx" extension:
Variable TraceDB
When an ODBC connection error occurs, Flash files relating to the variables in the project's TraceDB
will be created in the project's "DATA" folder. A Flush file will be created for each varialbe in the
TraceDB defined in the project with the same name of the relating variable table and "TraceDBEx"
extension:
The names of data Flush files will be created with the same names relating
to the tables they refer to. Therefore, if customized names have been
given to the Historical Log, DataLogger or Variable TraceDB tables, the
Flush files will be created with these customized names.
When an ODBC error is verified, data is buffered in memory and unloaded
into Flush files a bit at a time. Therefore, when stopping the project, the
last data bufferized and not yet unloaded onto file will be lost.
560
H I S T O R I C A L
F I L E S
M A N A G E M E N T
Flush files in the "LOGS", "DLOGGERS" and "DATA" folders may be found
when importing projects from versions prior to 11.2.1085. These Flash files
will not be restored in the database if their format is different from the one
required by the "RestoreFlushedData.exe" tool.
The connection pooling consents the user's application to use one of the available connections in a
pool so it does not have to be restored each time it is used. This is because the moment a
connection has been created, it is placed in a pool to be re-used by the application to avoid having to
carry out the whole connection procedure again hence improved performances.
Always check whether the ODBC driver supports the pool management
before enabling it.
MSAccess: MS Access (uses the "Microsoft Access Driver (*.mdb)" driver. This is
the predefined default choice)
MySQL: MySQL 5.1 (uses the driver installed with this version of MySQL)
561
M O V I C O N _ P R O G R A M M E R _ G U I D E
OracleEx10: Oracle Express (uses the client-less driver installed with this
version of Oracle)
OracleEx11g: Oracle Express (uses the client-less driver installed with this
version of Oracle)
SQLServer2000: MS SQL Server 2000 (uses the "SQL Server" driver)
SQLServer2005: MS SQL Server 2005 (uses the "SQL Native Client" driver)
SQLServer2008: MS SQL Server 2008 (uses the "SQL Native Client 10.0" driver)
SQLServerExp2000: MS SQL Express 2005 (uses the "SQL Native Client" driver)
SQLServerExp2008: MS SQL Express 2008 (uses the "SQL Native Client 10.0"
driver)
SQLServer2012: MS SQL Server 2012 (uses the "SQL Native Client 11.0"
driver)
SQLServerExp2012: MS SQL Express 2012 (uses the " SQL Native Client
11.0" driver)
Once the project has been created with wizard, the chosen default plugin (using the "
DataBase Settings (ODBC)" window) will be indicated in the project's "Plugin ODBC
Default" property and can be changed afterwards if need be. The "Settings ODBC"
command in the project's General properties allow you to modify the connection
parameters, in the same way as the wizard's "Customize ODBC Settings" command. these
parameters are saved in the "pluginname.settings" configuration file
(i.e.
SQLExpress2005.settings) in the ODBCMgr. folder. The configuration xml file structure
type will be:
<?xml version="1.0" encoding="UTF-16"?>
<parameters>
<ID text="Driver">SQL Server</ID>
<ID text="SERVER">PCTEST\SQL2000</ID>
<ID text="DATABASE">prjSql2000</ID>
<ID text="Trusted_Connection">yes</ID>
<ID text="Description"></ID>
</parameters>
The settings file gets saved in the project's "DATA" folder when it is run for the first time
so that the parameters become specific to that project only.
The default ODBC plugin will be used by Movicon each time a new ODBC DSN connection
needs to be created.
The MSAccess default value is used for projects created with the "Template" or "Empty
project" wizards or pre-existing projects that do not have the "Plugin ODBC Default"
property.
562
H I S T O R I C A L
F I L E S
M A N A G E M E N T
563
M O V I C O N _ P R O G R A M M E R _ G U I D E
the "ODBC DSN" property introduction field of the resources which support the ODBC links, the
following procedure will display:
564
1.
The first thing you will be asked is to select the type of ODBC data source. The most common
selections are usually 'User Data Source' or 'System Data Source':
2.
At this point you will need to select the ODBC driver you intend to use:
3.
From this moment onwards the configuration windows which will be proposed
depend upon the type of driver you selected. Therefore we suggest you consult
either the application's manual or the Microsoft ODBC guide or the Database
H I S T O R I C A L
F I L E S
M A N A G E M E N T
application to be linked. To continue our demonstration we will select the Microsoft Access
driver as an example, seeing that it is the most used, to display the following window:
4.
The last proposed window will permit you to define the name of the ODBC link (data source
name) and the associated Database file:
If the Database file already exists in the PC, you only need to use the 'Select...' button to
select it. On the other-hand if the file has not yet been created you will have to create it by
using the 'Create...' button.
Confirm and terminate the create ODBC Link procedure with the 'OK' button.
565
M O V I C O N _ P R O G R A M M E R _ G U I D E
2.
3.
4.
All the column names must be written with capital letters (uppercase). Therefore this requires
that the standard column names of the project's historicals be changed through their
appropriate properties. For instance, TimeCol would become TIMECOL (or with a custom
name but in capitals)
Spaces are not allowed in the table and column names
Table and column names cannot begin with a number
Many data types are not supported, and the Oracle ODBC driver also uses NVARCHAR for
numeric types (byte, word, integer). However, this will not cause any problems when data is
displayed in the standard Movicon windows
Creating the ODBC connection towards the ORACLE database in the Movicon project can be done by
using the appropriate plug-in available in the project's "Project ODBC Plugins" general properties.
However, this task can always be done manually by inserting a custom DSN in the historical log's
"ODBC DSN" property. In this case, it will also be necessary to create a user with same name and
password belonging to the user defined in the ORACLE database. This Movicon user must then be
inserted in the historical log "ODBC DSN User" property.
When using recipes in the project, you will need to define the name of each of the "TimeCol",
"LocalCol"and "RecipeIndex" columns so that they are unique in respect to the other project table
column names. These three columns cannot have the same names as those already assigned to the
other Recipes, Data Loggers or historicals (Historical Log, TraceDB, etc.) in the project (or of any
other project using the same ORACLE database). This restriction was made evident due to the fact
that ORACLE uses unique column index names, thereby two indexes with the same names are not
acceptable even when belonging to different tables. Seeing that Movicon indexes tables with these
three columns ("TimeCol", "LocalCol"and "RecipeIndex"), in respect to record uniqueness for a same
recipe key, you will need to carry out the above described procedures. Otherwise, ORACLE will not
create indexes for these tables and each time an already existing recipe is saved, it will not get
updated but inserted as a new record with the same "Recipe Index" instead (resulting as a
duplication of the same record).
It is for this reason that Historical Log tables (SysMsgs, Alarms and Drivers) cannot be indexed as, in
this case, it will not be possible to customize the "TimeCol" and "LocalCol" column names for all
three tables (the settings are unique for all three tables). This would simply slow down data
accessing performances due to too much data. This can be avoided by inserting the indexes in the
database tables manually.
566
H I S T O R I C A L
F I L E S
M A N A G E M E N T
The most used databases require the following syntax as listed below:
SQL Server, SQL Server CE and MS Access
These databases require the use of squared brackets when table and column names contain spaces.
For example, sql code for creating these types of database tables would be:
CREATE TABLE [dbo].[ALARMS TAB](
[TIME COL] [datetime] NULL,
[MSEC COL] [smallint] NULL,
[LOCAL COL] [datetime] NULL,
[USER COL] [nvarchar](255) NULL,
[EVENT COL] [nvarchar](24) NULL,
[EVNUM COL] [smallint] NULL,
[DESC COL] [nvarchar](255) NULL,
[EVDESC COL] [nvarchar](255) NULL,
[COMM COL] [nvarchar](255) NULL,
[DUR COL] [int] NULL,
[UNIID COL] [int] NULL,
[TRAID COL] [int] NULL)
ORACLE
ORACLE requires the use of double speech marks when table or column names contain spaces. For
example, sql code for creating a database table of this type would be:
CREATE TABLE "DA0760"."ALARMS TAB"
("TIME COL" TIMESTAMP (6),
"MSEC COL" NVARCHAR2(24),
"LOCAL COL" TIMESTAMP (6),
"USER COL" NVARCHAR2(255),
"EVENT COL" NVARCHAR2(24),
"EVNUM COL" NVARCHAR2(24),
"EVDESC COL" NVARCHAR2(255),
"DESC COL" NVARCHAR2(255),
"COMM COL" NVARCHAR2(255),
"DUR COL" NVARCHAR2(24),
567
M O V I C O N _ P R O G R A M M E R _ G U I D E
568
H I S T O R I C A L
F I L E S
M A N A G E M E N T
By using the IMDB in devices based on Windows CE, there is no longer the
need to convert the ODBC links to ADOCE, thus the ADOCE component and
the SQL Server CE installed on the devise are no longer needed which will
improve the device performances.
The IMDB manager, with the exclusive Progea technology, manages a memory buffer in which data
is placed and then unloaded on file at fixed time intervals The unloading data on file time can be
configured through the appropriate properties of the log engine (ie. Data Logger, Log).
All the data query functions are supported as if managed by a database manager. This function can
be activated with a specific option in the historical log, data logger and in the db trace. It is not
possible to use this technology in the "Real Time DBMS" as it wouldn't be necessary to use it in that
context.
Data is recorded on text files with the ".dat" extension. When the project is started up, Movicon will
create table in memory by loading data from these back-u' files. The files can also be saved in XML
format.
The"UNION" clause for the data extraction query is not support by the
IMDB. Therefore the "Historical Log Window" will only display system
messages even when set to view all message types.
WARNING: Data Loggers or Recipes based on IMDB do not support reports
created with the "Report Designer" and "Crystal Reports". If the case need
be use historicals in the ODBC.
569
M O V I C O N _ P R O G R A M M E R _ G U I D E
A "The table <Table Name> has been created" message will be shown in the output window upon
each project startup. The difference in messages when recording with IMDB and not ODBC is that
messages for IMDB do not indicate table creations in physical databases but indicate that virtual
tables have been created in RAM by taking data from the ".dat" file.
Shared Tables
When this property is enabled, the system's global memory will be used for saving data and not that
of the process. This option is especially indicated when using WinCE as operating system because
the Movicon CE process memory has a limit of 32 Mbytes.
Further more this option is needed also when wanting to access data through external ActiveXs or
libraries. In this way the IMDB tables are made available in ram and can be accessed using
appropriated ActiveX or library functions.
Save XML File
Data is always saved in text files with the ".dat" extension and by enabling this option will also allow
data to be saved in files in XML format.
Save CSV File
Data is always saved in a text file with the ".dat" extension. When activating this option you will be
able to save data in a CSV file which also includes the field names in the first row.
You can also customize the field delimitor character (Tab used for default) by editing the
"XMLcIMDBDelimiter" tag directly in the project files. The ".movprj" project files must be modified
for the Historical Log, the ".movrealtimedb" file must be modified for the Variable Trace and the
".movdlrec" file for the DataLoggers or Recipes. In this last case, it will also be possible to modify the
xml tag through the XML Code Explorer window and possible to specify a different separator for each
inserted DataLogger or Recipe object.
Crypt File
The ".dat" file used for recording data is crypted with a Progea proprietary algorithm and with the
public domain algorithm. XML files are not crypted.
Write Behind Delay
This setting represents the time, in seconds, when the data is unloaded from memory to files.
Max Nr. Records
This setting allows you to define the maximum number of records the Historical Log can execute.
Once this limit had been reached, the data will start recycling. However, data with ages older than
the maximum age set will be deleted even when the max. number of records has not yet been
reached. This function is disabled when set at the '0' value which means that there are no
restrictions to the number of records that can be executed.
SQL Language
The IMDB manager supports a significant subset of SQL database language functions. The following
instructions are particularly supported:
SELECT, UPDATE, INSERT, DELETE
CREATE TABLE...[PRIMARY KEY...]
DROP [TABLE]
SELECT qualifiers: DISTINCT, TOP n
SELECT clauses FROM, WHERE, GROUP BY, HAVING, ORDER BY
WHERE expressions: AND, OR, NOT, LIKE, BETWEEN, + - * /, IS [NOT]
NULL, <, >, =, < >, <=, >=, Constants, Parameters, ColumnNames
SELECT list expressions: MAX, MIN, AVG, SUM, COUNT, +, -, *, /,
Constants, Parameters, ColumnNames
Value list qualifiers: ANY, ALL, SOME, IN
UPDATE expressions: +, -, *, /, Constants, Parameters, ColumnNames
INSERT values expressions: Constants, Parameters
INSERT ... SELECT
Subqueries within SELECT statements
570
H I S T O R I C A L
F I L E S
M A N A G E M E N T
Limitations
The following limitations must also be taken into consideration:
Table and Column names cannot contain spaces or any punctuation characters and must start
with an alpha character (names cannot start with numbers)
Views are not supported
Select list field aliases names are not supported
Security statements such as COMMIT, GRANT and LOCK are not supported
The LIMIT TO nn ROWS cause used to limit the number of rows returned by a query is not
supported. Use TOP instead to return the top nn rows of a query
Outer Joins are not supported
No indexes create and drop statements. Indexes must be created when creating tables
Data Types
The IMDB manager supports the following types of data for table columns:
Numeric
Decimal
Bool
Counter
Character
Date/Time
Binary
GUID
~ 2 GB
65535
64
64
2 Billion (2*10^9)
4096
571
M O V I C O N _ P R O G R A M M E R _ G U I D E
256 MB
256 MB
Unlimited (memory
depending)
1
2 Billion (2*10^9)
Unlimited (memory
depending)
ProjectName_HisLog.mdb
However you can also customize the ODBC connection through this property, creating a different
data base from that of Access2000 with a different name.
Unfortunately the ODBC Manager does not pass on any information about the name of the any
created connections. Therefore the procedure requires that the name of the connection be inserted
first so that Movicon can pass it over to the ODBC Manager. The name of the connection can also be
inserted after it has been created. In any case the name of the connection has to be typed in the
box manually.
ODBC DSN User
This property specifies the users name to be used for the ODBC connection.
572
H I S T O R I C A L
F I L E S
M A N A G E M E N T
573
M O V I C O N _ P R O G R A M M E R _ G U I D E
574
The project must request Log On for each command and function to be protected from unauthorized
access. The hierarchical level must be declared in the properties of "sensitive" objects to be
able to execute the command and the area it belongs to.
The execution of these objects will therefore be subject to a Log On to verify the access privileges of
the user executing the command.
In this way, any supervisor function can be protected with this type of user level and user password
settings verification, according to the modalities and settings described in this chapter.
575
M O V I C O N _ P R O G R A M M E R _ G U I D E
Passwords cannot be changed if al the following conditions exist at the same time:
User Level
This property can be set in various points and in various components of a Movicon project. For
example, in the "Users General Properties" this setting permits each user to be associated with a
Password Level.
Where the project's controls and resources are concerned the 'User Level' property is used for
defining which User Password Level is necessary for executing the command list associated to that
576
U S E R
A N D
P A S S W O R D
M A N A G E M E N T
control. For further information please refer to the 'User Levels' property of the component or
resource of interest:
Object "User Level" property (paragraph: "Access Levels Properties common to Drawings
and Controls")
Menu "User Level" property (paragraph: "Item Menu General Properties")
Shortcut "User Level" property (paragraph: "Shortcut Command General Properties")
577
M O V I C O N _ P R O G R A M M E R _ G U I D E
You must also consider that a project's control's or component's write access assumes different
meanings according to the object itself. For further information please refer to the 'Write Access
Level' property of the component of interest:
Variable "Write Access Level" property (paragraph: "Variable Access Level Properties")
Alarm Threshold "Write Access Level" property (paragraph: "Alarm Threshold General
Properties")
Object "Write Access Level" property (paragraph: "Access Levels Properties common to
Drawings and Controls")
Scheduler "Write Access Level" property (paragraph: "Scheduler Access Level Properties")
Read Access Levels
This property, found in various Movicon project controls and components, defines which is the
control's Read Access Level. If the User has been authenticated but their Access Level does not
correspond with the control's, the user will not be able to read that control.
You must also consider that a project's control's or component's write access assumes different
meanings according to the object itself. For further information please refer to the 'Read Access
Level' property of the component of interest:
Variable "Read Access Level" property (paragraph: "Variable Access Level Properties")
Alarm Threshold "Read Access Level" property (paragraph: "Alarm Threshold General
Properties")
Object "Read Access Level" property (paragraph: "Access Levels Properties common to
Drawings and Controls")
Scheduler "Read Access Level" property (paragraph: "Scheduler Access Level Properties")
Always Visible
This property is only available for the "Scheduler" object and Real Time DB variable resources. This
property allows you to keep these resources always available in the project's "Scheduler Window"
selection list. By enabling this property the scheduler or variable can be made available and selected
in the "Scheduler Window" independently from the Access Level of the user logged in. For further
information please refer to the desired component's "Read Access Level" property:
Variable "Always Visible" property (paragraph: "Variable Access Level Properties")
Scheduler "Always Visible" property (paragraph: "Scheduler Access Level Properties")
Invalid Authentication
Movicon has an mechanism to deter repeated invalid access attempts where after the third invalid
logon attempt the time to re-display the logon window will take longer. In addition, after the third
invalid attempt a message will be recorded in the log reporting: "Login Failed. User 'xxx'".
578
U S E R
A N D
P A S S W O R D
M A N A G E M E N T
value is set at zero, the user will not get logged in when the screen closes. The OK_ variable
must be declared Bit type
title_ = when Movicon opens the Screen the local title_ variable is set with the requested
user level value. the title_ variable must be declared string type
reset_ = when this variable obtains a value that is not zero, it forces the password renewal
of the user logged on. This variable can be associated to an object such as the Checkbox in
the custom Password Dialog Window which resets the local variable when different from
zero.
For entering expired passwords, "Expired Password Screen", the local screen variables used are:
nMinimunPasswordLength_
=
when
Movicon
opens
the
Screen,
the
nMinimunPasswordLength_ is set with the password's minimum length value. This values is
the same set in the users "Min. Password Length" property. The nMinimunPasswordLength_
variable must be declared integer type
password_ = variable in which the new password, to be associated to the user, is written.
The password_ variable must be declared string type
OK_ = this variable is needed in the screen's closure phase. When its value is different from
zero, the new password will get associated to the user when the screen closes. However,
when the value is set at zero, the new password will not get associated to the user when the
screen closes. The OK_ variable must be declared Bit type
title_ = when Movicon opens the screen the local title_ variable is set with the name of the
user changing their password. The title_ variable must be declared string type
The above describe local variables must be created by the programmer
when needed respecting the exact syntaxes. When using Templates from
the Movicon Symbol Library, the local variables will be created
automatically when inserted on screen.
The LogOff commands can be executed by commands associated to the objects or from the project
logic.
579
M O V I C O N _ P R O G R A M M E R _ G U I D E
When this 'Enable Auto Logoff' is activated, the automatic logoff will be executed by Movicon after
the time set in the "Auto Logoff Timeout (sec)" property. Countdown will start the moment in which
the user discontinues performing operations on the keyboard or with the mouse.
When the 'Enable Auto Logoff' property is disabled, the user who logged
on will remain active until the deactivation command is executed
(established by the project programmer) or the substituted by a different
user.
Movicon allows user activation and deactivation commands to be setup
in the project by means of using the command which can be associated
to objects or to the functions available in the project's Basic Scripts
Logic.
The "Users and User Groups" resource has a tree structure which can be composed of three levels:
Users and User Groups
User Groups
Users
The 'Auto Logoff' property can be enabled for each one of these groups. In this case the property
will be propagated from the high hierarchical level to those below. For example, if the "Auto Logoff"
property is enabled at "Users and User Groups" level this will also be propagated to all the users of
all the groups, independently of its group or user level setting. If, however, the "Auto Logoff" is
disabled at "Users and User Groups" level, each user will acquire the settings of its own group, and
even when it is disabled in its group each single user setting will then be considered.
When "Windows Users" have been enabled in the project, the Auto LogOff
of these users will only be managed based on the "Users and User
Groups" resource's "Enable Auto Log Off" property. In this case it will not
be possible to specify this option for individual users or groups.
Auto Logoff Timeout (sec)
This property is used for setting the time after which Movicon will execute an Automatic Logoff of the
active user. This setting is only significant when the "Enable Auto Logoff" has been activated. The
countdown will start the moment in which the user no longer performs operations on the keyboard
or with the mouse.
The "Users and User Groups" resource has a tree structure which can be composed of three levels:
Users and User Groups
User Groups
Users
A value can be assigned to the "Auto Logoff Time (sec)" of each one of these levels. In this case
the value associated to the lowest hierarchical level to which the "Auto Logoff" property has been
enabled will be considered. For example, if the "Auto Logoff" property has been enabled on all three
levels, the Logoff time for each user will be the one specified in the property of each single user.
Web Client Auto Logoff (sec.)
Web Client users can exploit this property which consents to setting the inactive value seconds with
which the user will automatically be disconnected from the project Server. In this case the Movicon
applet window will re-appear in the Browser requesting a new login.
The "Web Client Auto Logoff (sec.)" property exists at User level, Group level and "Users and User
Groups" general resource level and managed with the modality set in the user management.
If the "Enable Password Management" general property of the "Users and User Groups" resource is
enabled, the first time value set other than 0 in the "Web Client Auto Logoff (sec.)" property will be
used for disconnecting Client, starting with the user and then any group user may belong to until
reaching the value set in the "Users and User Groups". For instance, the value set in the user's
"Web Client Auto Logoff (sec.)" property will be used if higher than zero, otherwise the value set in
the group user belongs to will be considered. If this value is also set at zero, the value entered in
the "Web Client Auto Logoff (sec.)" property in the "Users and User Group" resource.
If, however, the "Users and User Groups" resource's "Enable Password Management" general
property is not enabled, the auto logoff time of a Web Client user connected to a Server project will
be taken from the one set in the "Users and User Groups" resource's "Web Client Auto Logoff (sec.)"
general property.
580
U S E R
A N D
P A S S W O R D
M A N A G E M E N T
Logoff Script
This selection allows you to choose a Basic Script routine to be executed during the User Logoff
stage. When this setting is executed in the User's properties, the Basic Script routine will only be
executed when the specified user logs off. When, however, the setting is executed in the property of
a User group, the Basic Script routine will be executed when all the users belonging to that group log
off.
The functionality described above is not supported by WebClient.
Logon Commands
This selection allows you set a "Commands List" to be executed during the User Logon phase. When
this setting is executed in the User property, the "Commands List" will be executed only when the
specified User Logs on. When the setting is executed in the Users Group property, the "Commands
List" will be executed when al the Users belonging to the Group log on.
The functionality described above is not supported by WebClient.
Logoff Commands
This selection allows you to choose a "Commands List" to be executed during the User Logoff phase.
When this setting is executed in the User property, the "Commands List" will be executed only when
the specified User Logs off. When the setting is executed in the Users Group property, the
"Commands List" will be executed when al the Users belonging to the Group log off.
The functionality described above is not supported by WebClient.
581
M O V I C O N _ P R O G R A M M E R _ G U I D E
582
U S E R
A N D
P A S S W O R D
M A N A G E M E N T
583
We
M O V I C O N _ P R O G R A M M E R _ G U I D E
Six characters is the minimum length set by Movicon for default. We suggest
you don't use less than this for normative and security reasons.
584
U S E R
A N D
P A S S W O R D
M A N A G E M E N T
name and password inserted in the Movicon Authentication window are validated by the primary
domain controller. This also permits the password expiration to be used with Windows users.
This mechanism is also valid for users configured directly in runtime with the Movicon users editor
window.
Windows Admins Level
This property is used for selecting the Password level to assign to the Operating System Users
belonging to the Administrators group.
Windows Users Level
This property is used for selecting the Password level to assign to the Operating System Users
belonging to the Users group.
Windows Guests Level
This property is used for selecting the Password level to assign to the Operating System Users
belonging to the Guests group.
Windows Admins Access Level
This property is used for selecting the Access level to assign to the Operating System Users
belonging to the Administrators group.
Windows Users Access Level
This property is used for selecting the Access level to assign to the Operating System Users
belonging to the Users group.
Windows Guests Access Level
This property is used for selecting the access level to assign to the Operating System Users
belonging to the Guests group.
585
M O V I C O N _ P R O G R A M M E R _ G U I D E
customized groups where the project Users can be inserted and then edited. Each User Group can
be associated with properties, such as password levels, which can be propagated to all the users
belonging to the same group. You can also customize further each single user of the Group. To
modify the User Group Properties by selecting the Group in question from the Project's Explorer
Window with the mouse and using the Movicon "Properties Window".
586
U S E R
A N D
P A S S W O R D
M A N A G E M E N T
"Guests" groups if the "Create Default User Groups" has also been enabled or otherwise inserted
in one single group for default.
To edit the Users General properties, select the User in question from the Project Explorer window
with the mouse and use the Movicon "Properties Window".
587
M O V I C O N _ P R O G R A M M E R _ G U I D E
This property is used for setting the Access Level Mask to be associated to the User. When creating
the User this property is set automatically to the same value of the "Default Access Level" of the
owner group.
For further information on "Access Levels" see paragraph "User Levels and Access Levels".
Disabled
This property is used for disabling the User. This means the user will not be managed in the runtime
phase.
Locked
This property locks the User out. the 'Locked' user is one who cannot be substituted with a runtime
user who has the same name. This means that any runtime user with the same name will not be
managed. For further information please refer to the section on "Runtime Users".
Must Change Password
When this property is enabled the new created user will be asked to change their password when
logging on for the first time. This will allow the user to change the password, inserted by the
programmer, with their own.
Cannot Change Password
This property is only active when the "Expiring Password (Days)" property, of the same user and the
group the user belongs to, is set to zero and impedes the user's password to be renewed in runtime
if the "Change password after Login" checkbox has been checked.
If the user's "Expiring Password (Days)" property is set to zero, the one set in the Group to which
the user belongs to will be considered instead.
For users set with "Administrator Level (1023)" with their "Expiring
Password (Days)" property set at zero, the "Change Password after Login"
property will always result enabled even when the Group "Expiring
Password (Days)" property that the user belongs to is set with a value
different to zero.
588
U S E R
A N D
P A S S W O R D
M A N A G E M E N T
589
M O V I C O N _ P R O G R A M M E R _ G U I D E
The Runtime Users are therefore Users who can be used within the project like the user created in
the Development mode are. However you need to take into account the following rules when
managing runtime users:
1.
2.
3.
4.
The loading Runtime users will be only be executed when the "Enable Runtime User"
property from the "Users and User Groups" resource has been selected.
Movicon, when loading the file containing the runtime users, will only activate those users
with a level not higher than the one set in the programming mode in the "User Level
Editable" property from the "Users and User Groups" resource. A warning message will
be generated in the Output and Historical Log Window for those users with a higher level who
will not be activated
Movicon, when loading the file containing the runtime users, will not activate those users who
have the same "Description or Digital Signature" of a already existing user. In this case
a warning messaged will be generated in the Output and Historical Log window
When a runtime user is created with the same name of user declared in the programming
phase, they will be replaced by the runtime user. In this way the properties of the user
created in the programming mode can be changed during runtime. The settings of the user
created in the programming mode will not be actually changed just simply those settings of
the runtime user will be loaded. This mechanism can be executed only when the "Locked"
property of the user, created in the programming mode, has not been enabled. Otherwise
the runtime user will be refused generating a warning message in the Output and Historical
Log window
The "EditUsr.exe" tool can also be executed independently of Movicon. For further information on
how the "EditUsr.exe" tool works, please refer to the application's help.
590
U S E R
A N D
P A S S W O R D
M A N A G E M E N T
It is absolutely crucial that these types of industries have the devices with the right protection
mechanisms to safeguard against any intentional or unintentional data errors in electronic format.
Security
The Movicon project must be encripted (Movicon uses a 128 bit encoding) so that all the
configurations and passwords used in the project are accessible from the outside.
Movicon guarantees unique user password entries in the project. Each user is identified in
the project with a UserID, Password, printable Description or Name (Electronic Signature).
Movicon does not accept Users with the same electronic signature name (unique identity
control) of another individual. The names must be made up with not less than 4 characters
and not more than 64 characters.
To guarantee data integrity and safeguard against any tampering of data, the Movicon
application should be run as Service of the Windows operating systems. This will require
identification of users registered in the system's domain according to the security
requirements stipulated in order to access the operating system and its files.
Movicon supports Windows OS domain sharing so that the user passwords, set up by the
system administrator, can be used.
Users who manage the recording of data by using the Data Loggers must take the right
measures to prevent any unauthorized access, undesired modifications and tampering to
database records. The IMDB archives (InMemory DB) allow users to manage encrypted
historical log files or secure databases can be used, such as Microsoft SQL Server or Oracle
with the appropriate administering of the Windows 32/64 bit operating system, which only
permit the system administrator or developer access to records.
To put an access limit on the developed application's functions and controls, the Movicon
project must use the User Password Profile management correctly, which involves the
entering of a Password, UserID, User Name and Access Level. Movicon provides 1024 access
levels and 16 areas.
Users must manage their passwords with great care and integrity. New users, inserted by
the administrator, can replace their password with a more personal one on their next Log On.
All passwords can be set with an expiry time to make the user to issue a new password
periodically, which will contribute to increasing system security.
To fully comply with the regulations, the Auto LogOff (timeout of enabled access) must be
appropriately used in the Movicon password management in order to prevent unauthorized
access to the system after a certain period of user inactivity.
To ensure validity and the correct entering of data, users must make sure that the Movicon
operating stations are allocated in safe places and that they are accessible to authorized
personnel only.
The Movicon AutoLogoff function must be used in systems in continuous use.
Movicon has tools and procedures that can be used for discouraging any unauthorized access
attempts and are the same as those used in the Windows 32/64 bit operating system as
required by the regulations. After the third failed attempt to access, Movicon will purposely
take longer to respond to the re-entry of the password to discourage the intruder.
Any further attempts to violate the system (Upon the fifth unauthorized Log On attempt)
Movicon will display and record the event in the Historical Log in order to safeguard against
and control any further system violations.
591
M O V I C O N _ P R O G R A M M E R _ G U I D E
Movicon returns the descriptive name of the registered user to identify and individualize the
active operator.
The applied program must be configured to record electronic signatures each time a digital
recording is carried out (creating a record in the database) as required by the regulations.
The user must execute LogOn in the project by linking two combined data (UserID and
Password), and the electronic signature must be the genuine name of the user, the date,
time and reason for the recording. The Movicon Data Logger allows the recording of all
necessary data on the Database.
For reasons of legal responsibility relating to the Electronic Recording, the operator must
always be acknowledged every time data is recorded or when accessing the system. The
User's ID is unique and belongs to that user only in Movicon and no other individuals are
allowed the same ID.
To satisfy the Electronic Recording requirements, the recording of events must be configured
appropriately by using the IMDB archives (InMemory DB) where crypted historical log files
can be managed or if ODBC archives, such as the Microsoft SQL Server or Oracle, secure
databases must be used with the correct security management administered. Furthermore
the user must configure applications to acquire and record electronic signatures on record of
any operator undertaking actions. The user must also prevent any data from being lost by
configuring the application to execute backups of all data recorded, or by using the Movicon
redundancy functions. The user can also eventually configure the system so that it uses the
Data Logger resource to record crypted data on IMDB or on relational ODBC database files.
If needed, new data files can be created with prefixed timeframes (eg. Every 4, 8 or 24
hours) by using the Basic Script functions.
The user can configure the system to copy recorded data in a safe and secure location by
using procedures appropriately written with Basic Script codes. The Windows OS security
functions protect files and their data from any unauthorized access. When multiple files are
created the user must control whether the right code is entered to prevent saturating free
space on the hard disk where the oldest files may need to be deleted.
The user may have to synchronize the system's time in real time or to that of another
system's (Microsoft or third parties) so that recorded data relate to the true date and time, or
they may have to manage data synchronization between Client and Server so recording
becomes coherent. Synchronization of this type can be managed directly with the Windows
OS functions or with the Basic Script codes for third party products.
592
Some of the requirements stipulated in the regulations are not altogether implemented in
software applications. These Part 11 requirements can be satisfied if the client validates their
application to guarantee accuracy, reliability and security when recording data, as well as the
capacity to prevent unauthorized editing, errors and data deletions. The Movicon users must
validate their application in order to comply with the FDA act. The users can develop and/or
execute the validation of programs and protocol themselves or delegate this task to others.
The validation must follow a methodology established from system's life cycle (SLC).
In order to meet the controls requested by the regulations in this act, the client must adopt
adequate procedures to verify the identity of the individuals who have been assigned an
electronic signature.
The client must enter and set up the operator and their operating responsibilities executed
under their electronic signature, to impede any forgeries or tampering of signatures or
recordings, in compliance to the regulations of this act.
The client must always be certain on the identity of the individual assigned an electronic
signature. Further more the client is held responsible that the enrolled operator is fully aware
of the regulations stipulated by the FDA agency and that they intend to use their electronic
signature as a substitution and an equivalent of their own handwritten signature used on
traditional paper and, when necessary, produce certification of their true identity, being
legally binding to their handwritten signature, when under FDA inspection.
The client is responsible for producing documentation on system use or on the application
realized, on its distribution and updates, and also the details on personnel training. However,
the client is not responsible for documentation on the platforms being used (Movicon,
Windows).
U S E R
A N D
P A S S W O R D
M A N A G E M E N T
Other
All the data must be stored in a relational database, which fully meets the necessary security
requirements (ie. IMDB crypted data, SQL Server or Oracle with the relevant protection) and
protected from any violation to or tampering of the security functions belonging to the
Windows 32/64 bit OS. Data must be filed and kept available for an adequate period of time
according to the operating requirements.
To further enforce the safeguard of data, project, images and recipes the user should use a
third party software type, which can guarantee version maintenance and management (eg.
Microsoft Source Safe can be used for controlling the versions).
Security
The project must be configured in its General Properties by selecting "Crypted Project" and
"Crypted Project Resources". In this case all the project's XML information can be accessed by
using a 128 bit encoding.
To prevent unauthorized system access, select all the project's Execution Properties which
deny Operating System and Desktop access. The following can be denied:
1.
2.
3.
4.
5.
6.
Windows Desktop
The Start button form the Windows' Task bar
Windows Task Bar
Windows task Options
Windows Task Manager
Windows CTRL+ALT+DEL
Passwords
All the application commands that can be executed by operators to interact on the process
must be protected by passwords.
The password management must be enabled in the project's User Passwords resource
Properties:
1.
2.
3.
4.
5.
Project Protected with Password: the password will be requested only for entering
in "Development" mode
Enable Password Management: the passwords will be activated according to the
levels and access modalities to the preset commands
Enable Electronic Signature: the unique user Description of the user whose name is
to be used as an Electronic Signature will be managed
Auto Log Off: determines the time (sec.) for automatically deactivating the active
user after a period of inactivity
Minimum Length (user name and password): set for default at 4 and 6 characters
respectively, as suggested by the regulations
Secondary parameters relating to the password management need to be set according to the
general properties illustrated below
593
M O V I C O N _ P R O G R A M M E R _ G U I D E
User Passwords
Each user or user group who has access to commands or process interaction, must be
inserted and configured in the project appropriately.
Users are inserted in the project's User Password Resource where they can be configured in
their properties. These properties include those which involve the requirements stipulated in
the FDA act:
1.
2.
3.
4.
594
Name (ID) and Password: These are assigned to the user and are used for
identification by the system
Electronic Signature: This is a unique text which corresponds to the user's
electronic signature and is recorded as absolute user identification (the Electronic
Signature management must be enabled in the User Password Resource)
Auto Log Off: This can be specified singularly for each individual user
Expiring Password: The act stipulates that the user password expires after a certain
preset time so that the user is obliged to change it periodically to increase system
security
U S E R
5.
A N D
P A S S W O R D
M A N A G E M E N T
Must Change Password: For identification certainty this obliges the user to enter
their own personal password on the next Log On so it is only known to themselves
and no one else including the administrator who logged them on the first time
Command Access
Each command, change or setting influencing the process must be given protected access by
requesting user identification.
The User Level in a hierarchical scale structure must be set in the "Access Level" property of
each object. The Levels in Movicon start from 1023 (reserved for the system administrator) to
level 1 (the lowest operating level). The 1024 level is reserved for the programmer.
The command objects can also be provided with a Access Level (Area) in read or write,
permitting users to access commands not only on a hierarchy scale but also by area of
competence.
Lockout Windows access from Movicon: to prevent unauthorized access in the system you
need to select all the project's Execution Properties which deny access to the Operating
System and Desktop. When Movicon is started up these will deny access to Windows
according to the settings, which have been activated (described above).
Using Windows services: you can configure the project to be installed as the operating
system's Service, therefore it will be started up automatically before the Windows operating
System's Log On procedure. By doing this, as an alternative to the above indications, only
the system administrator can access the operating system.
Biometric Systems
Using Biometric Systems is highly recommended in application validity according to the regulations.
In this case you need to choose the right recognition system among those available on the market
that can be easily integrated into your application.
The most popular biometrics systems are ultimately those that use digital fingerprints. These
systems are simple to use and integrate perfectly with operating systems and software applications.
Examples:
Progea has run tests on the Toca Fkey product (digital fingerprint scanner). This device can
be plugged in to a USB port and has its own user profile management where the Movicon
project users can be associated by using the appropriate VBA script module provided by
Progea. This biometric system can be completely integrated into the project using the
Movicon "User Password Fingerprint" association.
Progea has also run tests on the Microsoft Fingerprint product, a simple and reasonably
priced device that can be plugged into any USB port with Windows. This system runs its own
software as service and provides files where users are inserted and recognised by their
biometrics every time a password entry request is made. A tool, such as this one, does not
require any project modifications or any particular interfacing or configuration. However,
authentication of the operating system's users (Windows 32/64 bit only) is only allowed when
the PC users do not belong to a Domain.
Any type of biometrics recognition system can easily be used if the operating system has been
predisposed to support one as described above, otherwise it can be integrated into the Movicon
application by using the appropriate Basic Script interface.
Note the difference between the Trace and Data Logger files: The Trace records each data
value change in the appropriate database along with all the relevant information, while the
595
M O V I C O N _ P R O G R A M M E R _ G U I D E
historical value recordings refer to the historical logging activity executed by the Data Logger
resource.
In certain cases, it is sufficient enough to carry out the following procedures to sensitive data:
1.
2.
3.
4.
All the historical information inherent to each change that took place in the process can be obtained
from the appropriate Trace viewer so it can be easily traced back to what caused it.
The Tracing function is one of the properties belonging to each single Variable (Tag) and must be
activated and configured by clicking on the "Trace Options" property in each Tag (variable).
Audit Trail
In many cases, before the user can proceed in making any process variable changes (eg. Set points),
confirmation may be requested before the change can be put into action, together with a comment
to explain the reason why this change has been made (text string). In order to enter this comment
the "Trace Comment" item needs to be ticked/checked in the Trace Property beforehand.
Movicon will display the window shown above after each manual Tag change occurs and
authenticated by the user, indicating the change and requesting the user to state the reason this
change was made. The comment inserted by the user is recorded:
Electronic Records
Electronic Records contain all the process information (dates, values, events) recorded electronically
on files that must guarantee data integrity and prevent any unlawful handling from unauthorized
persons.
All the information recorded on file by Movicon is called "Electronic Records".
In order to get the Movicon Electronic Records standard ready, the following indications and the
guidelines contained in this document need to be followed to guarantee security in data integrity and
prevention against any unauthorized access and data tampering.
Data Security
Guaranteed Electronic Record security is absolutely fundamental in obtaining valid applications. The
data recorded by Movicon (Data Loggers, Log, Tracing) are physically built by:
596
IMDB: criptable XML text files with an algorithm in 128 bits. To use this format you need to
check the "Crypt File" option to guarantee inaccessibility to external manipulation of
historically logged data.
U S E R
A N D
P A S S W O R D
M A N A G E M E N T
ODBC: Relational Databases by means of the integrated ODBC manager. The data,
therefore, physically resides in data files and tables that can be recorded on hard disk locally
or on mass files residing physically in diverse servers. Thanks to the use of "safe" relational
databases such as SQL Server, Oracle or others, Movicon uses protected accounts for
accessing files. It is the user's responsibility to configure the system so that no one can
access files, by removing access rights to file both in the database itself and in the operating
system folders access rights (Movicon run as service). Data security must be guaranteed by
means of using the following procedures:
1.
2.
3.
4.
5.
Always use a data format based on relational databases that provide access
protection, such as Microsoft SQL or Oracle
To avoid unauthorized access to files, User Account protection will need to be setup
by using the access criteria explicitly for system administrators or program
designers only (eg. With the same project protection password). This will impede
access to data tables where authorization has not been provided.
Use the operating system's access lock (Locked by Movicon) or access rights to
operating system by using Movicon as Service. By doing this, file access through
the operating system will be physically denied
Do not share folders or disks when the station is operating in net, except for
system administrator access
Remove all rights to modify database records (Updates). Movicon lets new records
to be inserted whose data cannot be accessed for altering no matter what the
reason is
A special document describing this normative and its regulations in relation
to Movicon projects has been published by Progea. Please contact the
Progea Support Center if you need this document.
597
M O V I C O N _ P R O G R A M M E R _ G U I D E
598
Before using a report or data table, you will need to configure the database according to your
requirements.
You can access the Movicon database engine settings through the "Data Loggers & Recipes"
resource which can be selected from the "Project Explorer" window.
The Movicon Data Loggers and Recipes can access Database files through ODBC or IMDB links,
where the user can get production data in the format they prefer best guaranteeing system
openness to external managers and integration of factory data to the highest production hierarchy
levels.
599
M O V I C O N _ P R O G R A M M E R _ G U I D E
The Data Loggers are easy and simple to use to solve any real-time data storing requirements where
all the integrated project tools can be used for obtaining recorded data for viewing, displaying,
analysing, formatting, presentation or printing out production reports.
Note that the "Recipes" functionality from the Data Loggers & Recipes
resource is always enabled in any purchased product license type.
However, the "Data Logger" is optional and therefore not included in the
ordinary license version.
WARNING: Data Loggers or Recipes based on IMDB do not support Reports
from "Report Designer" and "Crystal Reports". If case need be, use
historicals in ODBC.
600
D A T A
L O G G E R S
A N D
R E C I P E S
The file sizes therefore will depend on the data format being used and on the number of events to
be recorded by the system in prefixed time periods.
Time Column
Local Time Column
MSec Column
User Column
Reason Column
The active user's name is recorded in the Table's User column only
when the record command is prompted by that user. For instance,
when choosing "Record on Command" and the user sets the
"Recording Variable", using a button or another control, their name
will be recorded. However, if "Record on Time" is chosen, the
active user will not be logged down.
WARNING! If a Data Logger or a Recipe use the InMemoryDB
(IMDB) for data recording, the table can not include more than 127
columns. Otherwise the Data Logger or the Recipe will not be
initialized at the project startup and a message will appear in the
log, asking to reduce the columns number. The IMDB has a
maximum limit of 127 columns.
If any ODBC errors are generated at project startup (also shown in the DBMS Log) the tables
managed directly by Movicon (Historical Log, Data Logger, Recipes, Trace, Realtime ODBC) will get
recreated only when their structure is not compatible with the one provided by Movicon. Tables will
not get regenerated if other ODBC error types are generated and detected when tables are in the
process of being checked thru.
In both these cases an error message is printed in the "Log DMBS" output window. In the first case
the 'DROPPED' table is alerted with a message reporting the missing column's name following by
notification of its creation. In the second case, for example if the error was caused by an inactive
SQL Server service, the tables will not get recreated when restoring this error type.
The "Create DB Table" command in historicals (Log Storico, Data
Logger, etc.) will attempt to use the existing connection for opening
a link towards the database, if this fails to work a new connection
will be created using the ODBC pluging default settings selected in
the Project's General properties.
601
M O V I C O N _ P R O G R A M M E R _ G U I D E
In case where you wish to use a numeric value and not a string in the DataBase, it will be necessary
to use a dummy Byte variable. At this point the the "Not Normalized Minimum Value" and
"Corresponding Minimum Value"
ranges will set to "0" and the "Not Normalized Maximum Value" and "Corresponding Maximum
Value" ranges will set to "1". Then the Byte variable will be assigned to DataLogger for recording.
In a case such as this, we need a tool which to quicken the process of assigning Tags to the Data
Logger, one which provides you with the possibility to set up the data logger only once and
associate it to the 50 variables, of the example above, all at once.
A tool such as this exists in Movicon and is called "Data Logger Template".
To get this function you have to set the Data Logger as "Template" type in the Data Loggers
Resource with the recording mode desired. Then you can select the variables needed from the
602
D A T A
L O G G E R S
A N D
R E C I P E S
Variables List from the RealTime Database and use the "Associate a Data Logger" command with the
right mouse key and select the Datalogger desired from the window that pops up. The variables (in
our example this would be the 50 process variables) will then be linked to the Data Logger Template.
Technically Movicon has set 50 different variables linked to the Datalogger in its project on receiving
just one click. of the mouse.
This procedure is very handy to have during application development mode when variables that
have to be recorded in DataLoggers/Recipes are added to the project at different times.
Data Loggers can be associated to Variables by clicking the right mouse key on the Variable in the
"Variable List" group found in the "Project Explorer" window and by selecting the "Associate a
DataLogger/Recipe" command, or by using the same command which can also be found in the
"Commands" window at the bottom of the "Project Explorer" window.
The request to associate a Data Logger/Recipe will open a another window containing a list of Data
Loggers/Recipes available, which should have been inserted beforehand:
603
M O V I C O N _ P R O G R A M M E R _ G U I D E
DataLogger/Recipe associations to variables can also be done with objects already containing
variables to be recorded. Furthermore, if the DataBase already contains data, it will be stored and
simply inserted in a new column within the DataBase structure.
CAUTION: managing DataLoggers/Recipes as Templates can also be
done with the Recipes, but variable associations can only be
handled with "Working Variables" and not "Temporary Variables".
This means that a Recipe can be used as a Template only in cases
where it is necessary to use working variables only and not
temporary variables.
604
D A T A
L O G G E R S
A N D
R E C I P E S
605
M O V I C O N _ P R O G R A M M E R _ G U I D E
Each Data Logger or Recipe object will be represented within the Database by a Table with the same
name or with a name defined by the programmer by using the appropriate "Table Name" property
accessed through the "Data Loggers and Recipes common General Properties".
606
D A T A
L O G G E R S
A N D
R E C I P E S
VAR0001
234
123
321
085
061
VAR0002
234
450
230
450
450
VAR0003
12
34
44
21
13
This table shows an example of data organized in a recipe log file. The table columns are associated
to the process variables. The column indicating the recipe index is obligatory.
The techniques used for creating project recipe objects are explained in the next section, Creating
Recipes.
However, the basic concept is:
1.
2.
3.
4.
The Recipe object, in the Data Logger & Recipe Resource, is defined with its working criteria
in its properties
The Recipe object's components are the index and Process Variables which are represented
by the columns in the table
The operating commands in the recipe are "Save", "Activate" and "Delete" as well as the
selecting the recipe on file by means of its index. These operating commands become
executable by associating the variables to the respective commands in the recipe properties
The last operation to carry out involves creating the recipe's graphical interface which can
also be done by using the"Creting Recipes"." command. Movicon will automatically create a
new screen containing all the controls needed for managing the recipe,as described in the
paragraph on "Creting Recipe".
Index Variable
Variable for the Save command
Variable for the Activate command
Variable for the Delete command
607
M O V I C O N _ P R O G R A M M E R _ G U I D E
1 combo-box to which the "Recipe Index" temporary variable and the "Recipe List" variable
will be associated. If the "Recipe List" variable and "Recipe Index" temporary variable have
not yet been created and associated to the Recipe, Movicon will create them in the
RealTimeDB and then associate them automatically to both the screen's Recipe and combobox object.
1 editable display for each one of the recipe fields to which will also be associated a
temporary variable. If temporary variables have not yet been created and associated to the
Recipe, Movicon will create them in the RealTimeDB and associate them automatically to both
the screen's Recipe and displays.
1 "Activate" button for activating the selected Recipe
1 "Save" button for saveing the selected Recipe
1 "Delete" button for deleting the selected Recipe
1 "Read" button for loading field values in the selected Recipe's temporary variables
1 "Export" button for exporting the selected Recipe values in cvs files
1 "Import" button for importing values from csv file to the selected Recipe's temporary
variables
The "Activate", "Save", "Delete" and "Read" buttons will be set as "ON-OFF" type and automatically
associated with the Recipe's execution variables if specified in the "Recipe Execution Properties". If
these variables have not been specified, "Command Execution" type buttons will be created and
associated to the corresponding " Report - Recipes Commands" (Activate, Save, etc.).
The "Import" and "Export" buttons will be set as "Command Execution" type and associated with the
corresponding " Report - Recipes Commands" (Import and Export).
Below is an example of a graphical result of a simple Recipe:
608
D A T A
L O G G E R S
A N D
R E C I P E S
609
M O V I C O N _ P R O G R A M M E R _ G U I D E
SQL Command
Default
Query
Default
Order
Default
Filter
This functionality's use can be configured through a Recipe property which can be assigned a
command, filter or ordering Query, then point to the record from the RecordSet, automatically
610
D A T A
L O G G E R S
A N D
R E C I P E S
created by the Query execution, to represent, in the variables associated to the Data Logger or
Recipe columns, the values extracted by the Query.
In addition to this Movicon also allows you to use the appropriate Basic Script functions to get
complete management of the SQL commands in the queries or Recordsets, making this functionality
very powerful and open. Please refer to the section dedicated to the Basic Script for further details
on the Basic Script instructions regarding Databases.
611
M O V I C O N _ P R O G R A M M E R _ G U I D E
The report does not yet exist and will be created for the first time
The report has been created but the structure or the DataLogger's name has been changed.
When using a DataLogger or Recipe as Template the table structure will be created
only after the project has been launched into runtime at least once. In this case, the
report should be created with the Movicon command after the table has been
created, and therefore after having run the project at least once. In the same way,
if the DataLogger or Recipe structure is modified it will be necessary to re-launch the
project in runtime to update the table structure.
Printer name
This property allows you to insert the printer's name where eventual reports associated to Data
Logger or Recipe are to be printed. The printer predefined by the system will be used if the printer's
name is not specified.
Table Name
This property allows you to insert the name of the table associated to the Data Logger or Recipe.
Each Data Logger or Recipe contains its data in tables composed of records and columns. The table
has to have a name in the database because database files linked through the ODBC may contain
more than one table.
If the table name is not specified, it will be created with the same "Name" of the Data Logger or
Recipe.
612
D A T A
L O G G E R S
A N D
R E C I P E S
The variable will therefore be set at 'zero' value by Movicon once the operation has been executed.
The printer always refers to the Report specified in the Data Logger's "Report File" property.
For further details on Reports management and printing reports please consult the 'Reports' chapter
in this document.
Reset Variable
The 'Reset Variables' selection box allows a variable from the Movicon Real Time DB to be
associated, so that when it changes to a logical state different from zero all the values recorded in
the table up to that moment will be cancelled to then restart a new set of recordings. The variable
will then be set to 'zero' value by Movicon once the operation has be executed.
The next recording command will write data on the first record of an empty table.
Status Variable
A variable from the Movicon RealTime DB can be selected in this field to show information on the
DataLogger or Recipe's status. This information will differ according to the object in question:
DataLogger Object
Here the variable will indicate the DataLogger's ODBC connection status. The "0" value means that
the ODBC connection is working correctly and the "1" value, or non '0' values means there is a
connection error.
Recipe Object
Here the variable will indicate the status of the query executions and ODBC connections.
Once a query is executed, Movicon informs logic on the set query's execution state, by notifying the
status using the following bits in the set variable:
Bit
Bit
Bit
Bit
Bit
0
1
2
3
4
=
=
=
=
=
613
M O V I C O N _ P R O G R A M M E R _ G U I D E
614
D A T A
L O G G E R S
A N D
R E C I P E S
615
M O V I C O N _ P R O G R A M M E R _ G U I D E
This selection allows you to enable recording on the variable's status change. Recording on status
change will not influence the recording on command or on time, as all these modes can co-exist.
Movicon will carry out a recording upon every value change of the variables (columns) associated to
the Data Logger object, which will be added to those carried out on command or on time when
managed.
Recording will take place each time any one of the variable changed and only in the following
conditions:
If the Data Logger's "Recording Variable" has been inserted some considerations have to be added
to the recording on change operation.
In this case the operation is as follows:
Movicon records on the rising edge of the "Enable recording Variable", if a variable
associated to a Data Logger column has changed value since the last recording carried out
Movicon DOES NOT record on the rising edge of the "Enable recording Variable" if all the
variables associated to the Data Logger columns have remained unchanged since the last
recording carried out. This also goes for all those variables which changed during the period
in which the "Enabling recording Variable" remained at zero, but returned back to values last
recorded before the "Enable recording Variable" changed to a different value other than zero
If the "Notify Timestamp Changes" property has been enabled in the
RealTimeDB "In Use Variable Manager" property group, the DataLogger
will also insert a new record only if the variable's TimeStamp changes and
not its value.
Set the recording variable to >< 0 value when you want to carry out a recording
Movicon buffers the data in its cache memory
Movicon sets the recording variable's value = 0
Movicon notifies the DBMS of the data in the cache, while it is ready for a new recording
Recording on command does not influence recording on change or on time, as all modes can co-exist
at the same time.
Recordings are only executed when the following conditions have been applied:
616
D A T A
L O G G E R S
A N D
R E C I P E S
On Time
This selection permits you enable the recording cause on a time basis. The recording on time will not
influence recording on command or on change, as all modes can co-exist at the same time.
By selecting the recording on time, you will have to specify the time interval within which the
recording is to be done by entering the recording frequency, (Hour, Minutes, Seconds and
Milliseconds), in the "Data Logger Recording Time Properties".
At each specified time interval Movicon will invoke a recording, which will be added to those done on
command or on change whenever they are managed.
Recording takes place at each time interval set only if the following conditions have been applied as
well:
617
M O V I C O N _ P R O G R A M M E R _ G U I D E
618
D A T A
L O G G E R S
A N D
R E C I P E S
Instantaneous: the variable's instantaneous value will be recorded, which is the value
contained in the variable at the moment of recording
Minimum: the variable's minimum value obtained in the time interval, that elapses between
one recording and the next, will be recorded
Maximum: the variable's maximum value obtained in the time interval, which elapses
between one recording and the next, will be recorded
Average: the variable's average value obtained in the time interval which elapses between
one recording and the next, will be recorded
619
M O V I C O N _ P R O G R A M M E R _ G U I D E
Set the execution variable to value >< 0 the moment the query is needed
Movicon launches the query execution in the database and manages the execution status
variable being run
Movicon sets the execution variable value = 0
Movicon notifies the query execution completion by resetting the status variable = 0
In order to execute the query successfully check the status of the query
execution being run before executing another.
When a variable is introduced in the 'Execute Variable' property,
the project will load the values of the data file's first record into
the variables associated to the columns upon startup of the project
in runtime.
620
D A T A
L O G G E R S
A N D
R E C I P E S
The rising edge of this variable will permit the extracted values in the RecordSet to be represented
in the variables associated to the database columns.
For instance, by filtering a data group from the database by executing the Filter command, a
RecordSet will be generated in the memory containing filtered data. When activating the 'Move Last
Variable' with a value different from zero, all the extracted values in the RecordSet relating to the
last record will be written in the variables associated to the database columns.
The variable will then be reset to 'zero' value by Movicon once the operation has been executed.
Move Prev Variable
The execution of a query, filter or data order determines a RecordSet, which is a group of extracted
data from the database and kept in the PC's memory. The 'Move Prev Variable' edit box allows you
to select a variable from the Movicon Real Time DB to be used for executing moves to the record
before the current one being used in the eventual RecordSet of selected data.
The rising edge of this variable will permit the extracted values in the RecordSet to be represented
in the variables associated to the database Columns.
For instance, by filtering a data group from the database by executing the Filter command, a
RecordSet will be generated in the memory containing filtered data. When activating the 'Move
Last Variable' with a value different from zero, all the extracted values in the RecordSet relating to
the record before the current one will be written in the variables associated to the database columns.
The variable will then be reset to 'zero' value by Movicon once the operation has been executed.
Move Next Variable
The execution of a query, filter or data order determines a RecordSet, which is a group of extracted
data from the database and kept in the PC's memory. The 'Move Next Variable' edit box allows you
to select a variable from the Movicon Real Time DB to be used for executing moves to the record
after the current one being used in the eventual RecordSet of selected data (Each record
corresponds to a recipe).
The rising edge of this variable will permit the extracted values in the RecordSet to be represented
in the variables associated to the database Columns.
For instance, by filtering a data group from the database by executing the Filter command, a
RecordSet will be generated in the memory containing filtered data. When activating the 'Move
Next Variable' with a value different from zero, all the extracted values in the RecordSet relating to
the record before the current one will be written in the variables associated to the database columns.
The variable will then be reset to 'zero' value by Movicon once the operation has been executed.
Activate Variable
In this edit box you can select a variable from the Movicon Real Time DB to be used for executing
the activation of the selected recipe. The recipe data temporary loaded into the variable will also be
activated in the recipe's own variables with this command.
The variable will then be set to 'zero' value by Movicon once the operation has been executed.
Save Variable
In this edit box you can select a Variable from the Movicon Real Time DB to be used for executing
the selected recipe save. The recipe data temporary loaded into the variable will also be saved in the
Database with this command.
The variable will then be set to ' zero' value by Movicon once the operation has been executed.
Delete Variable
In this edit box you can select a Variable from the Movicon Real Time DB to be used for executing
the elimination of the selected recipe. The selected recipe will also be eliminated from the Database
with this command.
The variable will then be set to ' zero' value by Movicon once the operation has been executed.
ReQuery Variable
In this edit box you can select a variable from the Movicon Real Time DB to be used for executing a
refresh of the recipe recordset.
List Recipes Variable
In this edit box you can select a variable from the Movicon Real Time DB to be used for displaying
the list of recipes. When a variable is entered in this field a ComboBox component will be inserted
instead of a simple Display in the Recipe Index field when the synoptic is created with the Create
Recipe Editor command.
Filter Variable
In this edit box you can select a variable from the Movicon Real Time DB to be used for executing a
filter of the recipe data (WHERE clause).
621
M O V I C O N _ P R O G R A M M E R _ G U I D E
Sort Variable
In this edit box you can select a variable from the Movicon Real Time DB to be used for sorting out
the recipe data (ORDER BY clause).
Query Variable
In this edit box you can select a variable from the Movicon Real Time DB to be used for executing a
query in SQL standard language in data to be selected from the Database.
Read Variable
This field is used for selecting a Movicon RealTime DB variable to used for reading Recipe values
from the field. The values read from the field will be loaded in the Recipe's temporary variables,
therefore will overwrite the Recipe's current values selected through the "Recipe Index" (which is the
recipe loaded for example by using the recipe selection combo-box found in the screen created by
using the "Create Recipe Screen" wizard command). Once data has been read from the field and
therefore updating the temporary variables, when activating the command to save the recipe, this
data will be recorded on database overwriting the previous values of the Recipe displayed. This
command only updates the Recipe's temporary variables and will have no effect if recipe is without.
622
D A T A
L O G G E R S
A N D
R E C I P E S
Even though the column has been enabled to be the "Recipe Index",
it is also possible to use a numeric variable index and not
necessarily a string variable. I this case the recipe index field in the
database will however be created string tpe, but internally Movicon
will only accept numeric values as recipe names. In cased where a
numeric index is used, the command which generates the recipe
editing screen, "Create Recipe Screen", will create a "Display"
control for inserting the recipe name.
The use of numeric indexes enables numeric indexed recipe
activation to be managed by variables that are read externally
through the communication driver or OPC.
Furthermore, in order to obtain a numeric order of index values in
display objects you will need to set the "xx" index variable default
format so that recipe names are displayed by in double figure order.
Recipe Temp. Variable
The name of the Variable from the Movicon Real Time DB, which will be used as a temporary
variable for holding the recipe's data, is specified in this edit box. The values contained in the 'Temp.
Variable' are copied into the recipes output variable only when the recipe's activation command is
executed.
623
M O V I C O N _ P R O G R A M M E R _ G U I D E
624
24. Reports
The Movicon Report management can be used by
exploiting the Movicon native tools (Embedded Reports
and Textual Reports) or by exploiting the Report
Designer and Crystal Report tools.
The Reports are tools for displaying or printing filed process data according to preset time ranges.
Thanks to Movicon, the Report management is extremely easy to use, guaranteeing openness in
obtaining Report printouts adaptable to end user needs. In fact, in addition to accessing historical
data recorded by the Data Loggers, the Reports must guarantee visualization of calculated amounts,
totals, averages, variances, selecting time ranges, product batches, operators, shift etc criteria.
In order for this to happen Movicon has integrated a "Report" resource called "Embedded Report",
through which reports can be autonomously created for displaying data recorded on database, using
the Historical Log and Dataloggers, or for simply just displaying project variables. When needing to
create reports without graphics it is easier to create Textual Reports which are simple to use. Both
the Movicon "Internal Reports" and " Textual Report" are compatible with the Windows CE
environment as well. In additon to the navtive reports, Movicon has also included the "Report
Designer" for free to give users the possibility to create more complex reports by using a purposely
designed ".NET" tool. Movicon is still compatible with the "Crystal Report" report engine which is
not integrated but needs to be purchased separately to create the reports desired.
When creating reports in projects, it is necessary to evaluate whether the
Movicon Embedded Reports should be used or the "Report Designer" or
"Crystal Report" external libraries. The choice should be made based on
the type of report to be realized, as each solution has its pros and cons.
For further information about the pros and cons please refer to the
section on "Advantages and Disadvantages of using Movicon Embedded
Reports ".
The Movicon native report files have the ".movrep" extension and are saved in the project's resource
folder. The report files created with the "Report Designer" have the ".repx" extension, whereas those
created with "Crystal Report" have the "rpt" extension.
Report files created with the Report Designer Crystal Report can be associated to
"DataLogger/Recipe" resources, "Historical Log Window" and "TraceDB Window" objects. When a
report file is inserted in the "Report File" property of one of these objects, the "Print" command
available in the "DataLogger/Recipe window", "Historical Log Window" and "TraceDB.
Window" objects will send the report to be printed. If this report file has a ".repx" extension, Movicon
will execute this operation using the "Report Designer" libraries, if the file has a ".rpt" extension,
Movicon will use the "Crystal Report" libraries.
It is not possible to associate the "Embedded Reports" and "Textual
Reports" to the "Report File" property of a "DataLogger/Recipe" resource
and the "Historical Log Window" and "TraceDB Window" objects. The
"Embedded Reports" or "Textual Reports" can only be executed through
the "Command List - Report-Recipe" or the "ExecuteCommand()" script
function.
You can perform various operations in the reports such as displaying, printing and saving data on file
by using the "Commands List - Report/Recipe" and "Commands List - Alarm" commands.
625
M O V I C O N _ P R O G R A M M E R _ G U I D E
commands are available from Web Client (keeping in mind that they will also be executed on Server
side).
"Add a new Report" command from contextual menu which appears when right clicking on
"Embedded Report" group from the Project Explorer window.
"New Report" command available from the "Commands" section located at the bottom left of
Project Explorer Window.
"Add a new Report layout in the project" available as an icon form the Movicon Toolbar.
When inserting a new Report object, it will appear as a screen and will open within the Movicon
workspace. The Report will be created with A4 paper sizes (sizes will be expressed in pixels and
calculated by Movicon based on screen resolutions), with a white background (color can be changed
afterwards) and divided into seven Bands. These bands also have their own default sizes which can
be modified as pleased. Each Band has a different role to play within the Report layout and will only
be accepted for final printout if it contains objects. The Bands are sectioned off with a separation
line only in design mode to determine how much space can be used for inserting objects and they
will not show in the final report. The seven Bands in question are:
626
Page Header (one per page): represents the area for the page header. This band will be
repeated on all pages.
Report Title (one per report): represents the area for inserting the report title. This band
will be printed once only on the first report page. When this band is printed as a single page
(enabled "Keep in Separate Page" option the "Page Header" will not be printed on the
paged dedicated to the report' title. The use of the Report Title band may result useful above
all in cases when generating a multiple report, being many reports together with one
command, to get one print showing one report after another (see section on "Report-Recipes
Commands"). In this case the Report Title will be repeated on once on the first page of the
first report on the list, while the "Report Header" band will be printed for all the reports listed.
Report Header (one per report): represents the area for the Report Header and is also a
container for any graphs that need to be placed at the beginning of the Report. This band will
be displayed on the first Report page only, after the "Report Title" band.
Details Header: represents the are for the "Details" band. If data in the Details area
occupies more than one page, the "Details Header" band will be repeated on all the pages
containing "Details" and will be displayed before the "Details".
Details: represents the area in which objects are inserted (i.e. displays) to display variable
values and historical log values extracted from the database by queries. This band, and the
objects it contains, can be duplicated on the page and distributed to other pages if needed in
order to display all recordset information obtained by the query from the database. If the
Report has not been associated with a Database because if is being used for displaying
RealTimeDB variable values, the Details band will not be show when creating the report. As
a consequence, any objects inserted in this band will not be shown either.
Report Footer (one per report): represents the area in which Graph type objects (i.e.
Trends) are arranged and shown on the last report page. This band will only show on the
last Report page.
R E P O R T S
Page Footer (one per page): represents the area of the Page Footer. This band displays
on all Report pages.
The Report Bands have a minimum size of 1 pixel and cannot be deleted
or new ones added. Those Band/s you wish not to display/print on your
Report Just leave empty.
Each Band can be configured through their "Height" and "Keep in Separate Page" properties, as
described in corresponding paragraphs.
Values to be displayed in the Report objects can be inserted by editing the data entry fields manually
or by simply selecting values from the "Tag Browser Window" window. In addition to selecting
variables there is also a "DB Field" tab in this window where database fields can also be selected.
It is also possble to manage some animation graphics for objects insertable in the reports, such as
Visibility, Transparency, background color, etc. In this way it will be possible to animate certain
objects in different ways based on the project's variable values. Object animations are only
modifiable in report generation phrase and once displayed or printed can no longer be edited. The
following animations can be used:
The animations above listed can also be used for objects for the "Details" section. In this case, the
DataBase field can be used as an animation variable instead of a variable so that the object will
animate with the current record value for each row displayed in the report. For example, let's
627
M O V I C O N _ P R O G R A M M E R _ G U I D E
suppose a display object has been inserted in the "Details" band which displays a DataLogger field
associated with the same Background Color animation as the DataLogger field. At this point, when
the Report is generated, for example by extracting the last 10 records from the datalogger table, the
ten display objects displayed in the Report will obtain a different set background colour based on the
value to be shown.
Basic Expressions in objects
Basic expressions can also be inserted in object fields where variables are inserted. In this case,
however, it is not possible to use expressions in database fields (DB fields, i.e. DF:VAR00001]) or
special fields (SP fields, i.e. [SP:time]), where only variables from the RealTimeDB can be used.
628
R E P O R T S
Procedures which cannot be performed and function that are not for use in the Embedded Report
resourse are as follows:
it is not possible to edit Basic Script code within the Report resource or its object content
it is not possbile to edit IL Logic within the Report resource or its object content
it is not possible to use the Report resourse's local variables
objects inserted in Reports cannot be edited, therefore all the properties used for inserting
data or for executing commands are not available for use
Advantages
Reports
and Disadvantages
of
When reports have to be created within the project, it will be necessary to evaluate whether to use
the Movicon Embedded Reports or the "Report Designer" or "Crystal Report" external libraries based
on the type of report to be created. Below are listed the advantages and disadvantages of using the
"Embedded Reports" compared to the "Report Designer" or "Crystal Reports":
Advantages:
The Movicon Embedded Reports are compatible with Windows CE
The Movicon Embedded Reports also support the "InMemoryDB" database format (along with
any database limits)
Multilanguage reports can be created with the Movicon Embedded Reports by using the ready
to use integrated change language management
Vectorial graphics from the Movicon Symbol Libraries can be used in the Movicon Embedded
Reports
Variable values within the project can be displayed in the Movicon Embedded Reports without
having to write script code
Certain types of graphical animations, such as Visibility, Transparency, Background Color,
etc., can be used within Embedded Reports which are evaluated during the Report generation
phase
The Movicon Embedded Reports integrate the advantages of using the Movicon editor while
creating reports: Cross Reference, Refactoring, Renaming Management, Check for Missing
Strings, XML Structure, etc.
The Movicon Embedded Reports for alarm statistics must not be modified when customizing
the names of the Historical Data Log columns (Movicon will take this into account during
report generation phase)
The Movicon Embedded Reports show statistical information for each single alarm for alarm
statistics (Total Time ON, number of ON/ACK/RESET events)
Disadvantages:
The ToolBox used in the Movicon Embedded Reports contains a limited number of objects
Sub-reports and automatic data groupings cannot be managed in the Movicon Embedded
Reports
Simple data calculations to be printed cannot be done in the Movicon Embedded Reports
(calculations must be first done using the Movicon logic with results then applied to the
variable before generating a report)
Reports can only be saved or exported in "PDF" format when using the Movicon Embedded
Reports
Basic Script code ("wwb.com" or "wwb.net") cannot be used in the Movicon Embedded
Reports for managing reports in advanced mode.
Reports cannot be displayed on Web pages using the Movicon Embedded Reports
Sub-reports cannot be used for alarm statistics with the Movicon Embedded Reports and as a
consequence detailed alarm information cannot be accessed through report display windows.
629
M O V I C O N _ P R O G R A M M E R _ G U I D E
generated for "Alarm Statistic". In this case the report file that can be selected are already included
in the Movicon installation folder, however these reported can be modified or new ones can be
edited as explained in the paragraph entitled "Alarm Statistic".
Independently whether a project report or alarm statistic report is selected or not, the commands
provided for generating Embedded Reports rest the same:
Action
Description
View
Embedded
Report
Print
Embedded
Report
Save
Embedded
Report
Send
Embedded
Report
630
R E P O R T S
the "DataLogger/Recipe" value has been selected as the report's "Data Source Type" but an
invalid DataLogger/Recipe has been selected in the "DataLogger/Recipe" field. To remedy
this problem, check whether the DataLogger/Recipe associated to the Report is valid (check if
name syntax is correct, check to see if the DataLogger/Recipe's DSN has been configured
correctly, etc.)
The Report's data selection query is invalid. To remedy this problem, check all customized
queries associated to the Report, check to see if the DataLogger/Recipe's DSN has been
configured correctly, etc. In this case you must check whether the query has been set in the
Report conforms with the DataBase type being used. For example, when inserting a query
that includes the TOP clause, even though written correctly, an error will rise if the "MySQL"
or "Oracle" database has been selected as both these databases do not support the TOP
clause.
Cannot find the variable '[[DF:VAR00001]', action 'Check Button', object 'Check
Box36', Screen 'Report1.movrep'
This error occurs when an object, that displays a database fields such as the Display and Option
Button objects, is not inserted in the 'Details? band but in another one. In this case the object will
not display any values. To remedy this problem, the Report will need to be edited in order to move
631
M O V I C O N _ P R O G R A M M E R _ G U I D E
the object/s causing the error to the "Details" band, or associate objects with RealTimeDB variables
and not DataBase fields.
632
R E P O R T S
633
M O V I C O N _ P R O G R A M M E R _ G U I D E
634
R E P O R T S
parameter. This same mechanism is also applied to IMDBs independently from platform type being
used.
If the "Max Records" property value is left at zero, the number of records displayed/printed in the
report will correspond to those extracted by the customized or default query (default query =
SELECT * FROM TableName ORDER BY TimeCol DESC).
Alarm Statistics
This field will only enable when the historical log is used as data source type, which means that the
"Historical Log" item has been selected in the "Data Source Type" property. When the Alarm
Statistics is enabled, additional fields which show the alarm statistics or each individual alarm read by
the database will automatically become available in the "Tag Browser" window. These fields can
then be inserted in the Report as fields relating to the connected table columns. For further
information please refer to the paragraph relating to " Alarm Statistic".
Time Format
Please refer to the "Time Format" property described in the "Stile propertiesTime Format "
paragraph from the Drawings and Controls section.
Duration Time Format
Please refer to the "Duration Time Format" property described in the "Stile properties Duration
Time Format " paragraph from the Drawings and Controls section.
635
M O V I C O N _ P R O G R A M M E R _ G U I D E
The"Keep in Separate Page" option is always selected for the "Report Footer (one per report)" Bands
and any objects contained in this Ban will be printed in the last page to avoid splitting up the
graphics onto different pages.
Repeat Details
This property is only valid for the "Details" band and permits you to choose whether to duplicate the
objects within the page (i.e. to created data tables) or create as many pages as there are records
returned by the data extraction query. In this case, each page will contain a copy of the objects
contained in the "Details" band.
The Report Designer opens showing its "Tool Box" on the left and the "Report Explorer", "Field List"
and "Grid Property" on the right. The report Layout is in the centre.
By using the Movicon commands the report will open with the database connection already
configured with the original object's data table fields listed in the "Field List" for reference
(DataLogger/Recipe table variable TraceDB or Historical Log).
The report is composed of "Band" objects, which are inserted using the "Insert Band" command
accessible with a right click on the report layout area. The Bands are:
636
Top Margin: one per page only. Represents the top limit of the report page.
Report Header: one per report only. The first thing printed and only on the first
report page.
Page Header: page header and is printed at the top of every page.
Group Header: you can use more than one group header per report to represent
the beginning of a data group.
R E P O R T S
Only the Detail Band is needed to build a simple report. The fields you wish to display can be
dragged from the "Field List" and when the report is executed these fields will show with all the
records exiting in the table.
Filters
You can use the xtraReport object's Grid "FilterString" property (select the xtraReport in the Report
Explorer Window). This property must contain the expression criteria (WHERE (Es. [col] > 0, where
"col" is the name of a data table column).
Groups
You will need to insert a Group Header Band and use the "GroupFields" property for setting the
second field to group data. You can also specify the data order in the same property.
Data Summary
The report can execute summaries (totals, counts, averages,..) on data groups. This is done by
inserting a "Label" band, linked to a field from the Field List. The "Label's" "Summary" property
allows you to set the summary type you wish to create using the dialog window which contains:
2.
3.
First create a new project and insert a Data Logger for recording three temperatures. Set
three Float variables and call them "Temp_A", "Temp_B" and "Temp_C". Then add three
columns to the Data Logger, set a 1 minute recording time and generate the table using the
"Create Table" command from the Data Logger's "Database Options".
Now proceed with creating the Report. Click on the "Edit Report File" command from the Data
Logger's General properties to open the Report Designer window. The ODBC link to be used
will automatically be passed to the Report Designer and therefore the Data Logger table
structure with relating fields should be ready and available in the "Field List" window.
The window's center pain is the workspace and will appear completely empty. Here you will
need to add the different report sections one at a time.
637
M O V I C O N _ P R O G R A M M E R _ G U I D E
638
4.
First start with inserting the sections, or Bands, to be displayed in the report. Normally the
"detail" band is the most important one because this is where the data to be displayed is
inserted. To insert a Band right click on the report workspace and select the "Insert Band"
item and add the "TopMargin" Band. Only one Band per page can be inserted and represents
the pages top limit. Now add a horizontal line and a label, with Movicon written inside, within
the Band by selecting and inserting the "Line" object from the "Standards Controls" window
located to the right of the editor window and drag it horizontally across Band. Then select
and insert the "Label" object in the Band, right click it to open its "Property Grid" window, or
click on the arrow which appears on the top right of the control to access its main properties,
and insert "Movicon" in its "Text" property.
5.
Now insert the "ReportHeader" Band. This Band represents the report's heading and will be
printed at the beginning of the report on the first page only. To insert the heading select and
insert another label into the "ReportHeader" band, size it and through its properties give it a
R E P O R T S
color and insert the "Temperature Trend" heading in the text property. Then apply bold and
change the heading font size and center it within the label.
6.
Insert the "PageHeader" Band. This Band represents the page heading and is printed at the
top of every page. Insert a "Label" in this Pageheader band with text as "Print Date". Then
insert an "PageInfo" object with the Label and select the "DateTime" item in its PageInfo
property field. After which click on arrow, to the top right, to open the "XRPageInfoTasks"
window edit the data and time format through the "Format" field as desired.
7.
The aim of this report is to create and display a table with date retrieved from the database.
In order to do this, insert the "GroupHeader" Band. This Band is used for showing a group
heading and there can be more than one in a report. This group header will represent the
beginning of a data group and you will only need to insert one group to achieve the aim of
our project. In this band a line is to be inserted with the headings of the table columns.
Therefore add a "Table" object from the "Standard Controls" window. The Table object is
inserted with three columns for default but you will need four, so select the object and right
click to add another column using the "Insert - Column To Left" command. Now size the
columns to fit across the page and insert headings to be displayed in each cell's tasks
properties done by clicking top right arrow to open each cell's tasks window. The texts for the
four columns are "DateTime", "Temp_A", "Temp_B" and "Temp_C".
639
M O V I C O N _ P R O G R A M M E R _ G U I D E
8.
Insert the "Detail" Band. This Band will contain the data to be displayed for the data group.
Here you must create a table with the same sizes inserted for the "GroupHeader" or
copy&paste the table to save time. After you have done this, associate each table cell with
the database field from which data is be retrieved. First start by selecting the first cell on the
left and open its task window. Then select the "LocalCol" table column from the "Data
Binding" field.
Perform this operation for the other three columns by associating the "Temp_A", "Temp_B"
and "Temp_C" field respectively. Also set each cell with a data format where the "LocalCol"
column will be in "Date" format and the other remaining three will be "Float" type.
640
R E P O R T S
8.
Insert the "GroupFooter" Band. This Band closes the group and always corresponds to the
"GroupHeader". This Band will show the average values extracted for the three temperature
columns. Insert another table with four fields columns as before. The first field just add
"Average Values" as text. Select the second field, open its tasks window and click on the
"Summary" field to open another window where you can define the formula to apply to the
field. The window items must be compiled as follows:
Bound field: select the table field in which to apply the formula, in our case
"Temp_A"
Summary function: select the function type to apply, in our case "Avg"
Format string: define the data format type, in our case "Float"
Ignore NULL values: enable this check box when wishing to ignore null values
Summary Running: select which environment to run operation, in our the case
"Group"
Repeat the same procedure for the other two "Temp_B" and "Temp_C" table fields. Apply a
background color to average values table.
641
M O V I C O N _ P R O G R A M M E R _ G U I D E
9.
Insert the "ReportFooter" Band. This Band will printed at the end of the report at the last
page. This Band is will be inserted with a field so that the operator can enter notes. Simply
insert a "Label" and three lines and modify them into dotted lines.
10. Insert the "PageFooter" Band. This Band closes each report page. In this Band you are going
to insert a field for display the page number. Therefore add a "Label" with the "Pag." text and
a "PageInfo" field and select the data type to be displayed, ie. "NumberOfTotal" (displays the
current page and the total number of pages).
642
R E P O R T S
11. Insert The "ButtomMargin" Band. Only one of these a page can be inserted and represents
the page's bottom limit. Add a horizontal line in the Band just like the one inserted in the
"TopMargin" Band.
12. This ends the report and if you have data already in the database you can see how it will look
by clicking on the "Preview" tab on the bottom Report Designer Bar to get a report preview.
643
M O V I C O N _ P R O G R A M M E R _ G U I D E
You can also preview the report at any time while creating it in order to see how the report
is coming along and if it needs changing or adding to.
13. Save the report and close the Report Designer to return back to the Movicon project. At this
point insert a new screen in the project and insert the following objects into it:
a "Data Logger-Recipe" window, to which the previously created Data Logger will
be associated, for displaying recorded data. By using the window's "Print" button
you can get a direct printout without previewing the report first (the printer preset
in the OS will be used)
three meters or Displays for modifying the three "Temp_A", "Temp_B" and
"Temp_C" temperature variables.
A Button to which the "Report-Recipe" command shall be associated to. Select the
previously created Data Logger in this command and in the "Action" field select the
"View" item. This button will be used for opening the report in preview mode.
Now you can run the project and after having recorded data, test the report out.
Not all the Bands provided have been used in this example, but as mentioned at the beginning this is
just an example and there are no set rules as to which ones to use and therefore it is the
programmer's discretion to choose those most suited.
644
R E P O R T S
Create Web Report Page: This command creates the Web page for displaying Reports
asscoiated to Data Loggers or Recipes. In this case you will need to create and associate a
Report to the data Logger/Recipe of interest beforehand using the Report Designer ("Report
File" property).
Create Web Dataview Page: This command creates the Web page for displaying Data
Logger or Recipe data through the web. In this case, data will be displayed in table format
and therefore you will not need to associate a Report to the DataLogger or Recipe.
As for the Web Client, Reports via Web are also published using the Web Server (i.e. Internet
Information Services). All the files needed are created by Movicon for default in the project's
"DLOGGERS" subfolder, and more precisely in:
..\ProjectName\DLOGGERS\DataLoggerName\REPORT\
..\ProjectName\DLOGGERS\DataLoggerName\DATAVIEW\
If you confirm the creation of the Virtual Directory, the following window will appear only if you are
using Windows XP and NOT Windows 8/7:
This window belongs to the operating system and is the same one which appears when running
applications using the "Run as.." command. Therefore the application can be run using the user
645
M O V I C O N _ P R O G R A M M E R _ G U I D E
specified, and not the user active in the operating system at that very moment. The user you select
for creating the virtual directory with must have Administrator rights.
PAY ATTENTION! To make Movicon creates the virtual directory
automatically you must disable the "Protect my computer and data
from unauthorized program activity" option. If you leave this option
marked, the virtual directory will not get created leaving you to do it
manually by means of using the IIS. This is due to the fact that the
application is run with user right restrictions making it impossible to create
virtual directories. Therefore you either disable this option by unmarking it or
you run the application by selecting the 'The following User:' option.
When confirming the procedures you have selected, Movicon will ask whether you wish to test the
results.
When answering with 'Yes' the system's default browser will open with the specified URL in function
with the local path for pointing to the report page created (page aspx). Answer No if you wish to
carry out this test later on.
At this point, the browser functionality for accessing the report page should be working correctly.
The same aspx page can be pointed to by using other browsers by simply replacing
"Http:\\localhost" with the IP address or the name of the server recognized on the net.
Recurring Errors
After having created Web pages you may find that you have problems trying to display them even
though created correctly, i.e. with IIS. If any errors should occur please verify the following:
1.
2.
3.
The Virtual Directory must be positioned outside the "Documents & Settings" folder (if using
Windows XP) or the "Users" folder (if using Windows 8/7). Otherwise the ASP.NET user may
be denied the right to read the virtual directory. Therefore, the project, or at least the aspx
file, should be moved to another folder, such as the "C:\Inetpub\wwwroot" folder, that is not
linked to any specified user.
"ASPNET" is the default user used by the ASP.NET for accessing the virtual directory. If any
problems occur when accessing, check for users and their credentials.
The .NET2 Framework must be installed.
If you have to install .NET Framework 1 after having installed .NET
Framework 2, you must first remove .NET Framework 2, then install .NET
Framework 1 and then reinstall .NET Framework 2. If you do not follow this
procedure, you may have problems running applications that use .NET
framework 1.
646
R E P O R T S
solution would be to move the project, or at least the aspx files, to another folder that is not read by
just one specific user, such as the "C:\Inetpub\wwwroot" folder for instance.
Failed to access IIS metabase
Details: System.Web.Hosting.HostingEnvironmentException: Failed to access IIS metabase.
The process account used to run ASP.NET must have read access to the IIS metabase (e.g.
IIS://servername/W3SVC). For information on modifying metabase permissions, please see
http://support.microsoft.com/?kbid=267904.
Solution: this may have been caused by the fact that the IIS and .NET Framework had not been
installed in the right order. The IIS must be installed first, then the .NET Framework. If you do this
in the reverse, the IIS configuration for managing .NET pages will not install everything correctly (ie.
the "ASPNET" user may not get created), generating the error indicated above.
To solve this problem, you will need to go to the Framework installation folder (usually
windows\microsoft.net\framework\frameworkversion) and launch this command:
aspnet_regiis.exe -i
this command installs the Framework version updating the metabase etc.
Server error in 'DATALOGGER_NAME\REPORT' application
Description: Exception not managed during currrent Web request. For further information on error
and point of origin in code, see stack analysis.
Exception Details: System.Data.Odbc.OdbcException: ERROR[IM014][Microsoft][Driver Manager
ODBC] Error corresponding to architecture between drive and application in specified DSN.
Solution: in 64bit operating system machines you will need to creat a 64 bit ODBC manually form
the "Control Panel - Administration Tools - ODBC Data Origin" which connect the Data Base used by
the Data Logger and Recipe resources.
647
M O V I C O N _ P R O G R A M M E R _ G U I D E
648
R E P O R T S
Click on "Next" to group the gathered data into one or more columns and, on the next page, set the
data filters. To conclude, choose a template for displaying the data from the last page. If you want
to create a simple list without any graphic items just select 'No Template' from the list.
649
M O V I C O N _ P R O G R A M M E R _ G U I D E
650
R E P O R T S
651
M O V I C O N _ P R O G R A M M E R _ G U I D E
For further information on the above listed commands and parameters please refer to the "Textual
Report Commands and Parameters" section.
The " Layout File" will be searched for in the project's resource folder by
default if no path is specified.
The "Destination File" will be created in the project's "DLOGGERS" folder
for default if no path is specified.
The command for managing Textual Reports can be also executed using
the "ExecuteCommand()" script function.
If a command for managing a Textual Report fails, the cause of the error will be reported in the
project's Historical Log and Output Window. The list of error messages and their causes is reported
in the paragraph titled "Textual Report Errors".
652
R E P O R T S
The "Format" part indicated the format to use for representing the field value (see paragraph "Data
Formats" for further details). When the data base field is string type and you need that a fixed
number of characters be printed in order not to mismatch format alignments, insert the same
number of "x" as there are characters to be printed in the "Format" parameter:
[$Colonna$|xxxxxxxxxx]
In the example above, after having inserted 10 "x", the number of characters that will be printed will
be equal to 10. When the string is composed of number less than 10 characters, a number of spaces
equal to the number of characters missing will be inserted. Control checks are only made if the
number of characters is less than the number set. If the string exceeds the set number of
characters, all of the string's characters will be printed.
Data Logger or Historical Log next row field
To insert the next value of a Data Logger or Historical Log column you must use the following
syntax:
[!$Column$|Format]
In this case and different to the previous command, the data set pointer is moved to the next row
before retrieving the column's value.
Page Number Field
To insert a Page number field you must use this syntax:
[&PageInfo&]
This special field is replaced with the current page number when command creates more pages. The
page number is set to the "1" value at the command start and increases every time a new page of
data needs to be created by re-reading the Layout File.
Date Field
To insert a Date field you must use this syntax:
[&Date&]
This special field is replaced with the current operating system's date upon command execution. The
date is formatted using the operating system's local settings for short date.
Time field
To insert a Time field you must use this syntax:
[&Time&]
This special field is replaced with the operating system's current time upon command execution. The
time is formatted using the operating system's settings.
653
M O V I C O N _ P R O G R A M M E R _ G U I D E
In order to display recordset data in table mode on the same page, you will need to insert the same
database field many times using the syntax used for pointing to next record ([!$Column$|Format]).
By doing this the records will display on the same report page. However, a new report page will be
created if the number of records selected is higher than the number of rows set in the report.
The below report example shows how Data Logger values are displayed in table format.
654
R E P O R T S
Description
View
Textual
Report
Print
Textual
Report
Append
Textual
Report
655
M O V I C O N _ P R O G R A M M E R _ G U I D E
In addition to these commands some other properties have also been made available in the "ReportRecipe" and "Alarm" properties used for configuring Textual reports:
Report Template File
The textual report's Layout File name which in addition formatting, contains the special fields to be
used and described in the "Template for Textual Reports (Layout File)" paragraph. If the file path is
not specified, it will be searched for in the project's Resource folder.
Report Destination File
File name with which to save textual report. This parameter is only requested by the "Save Textual
Report" and "Append Textual Report" commands. If the file path is not specified, it will be created in
the project's "DLOGGERS" folder.
TXT Report - Format string not correct. Format: '%s' Field: '%s'
A special filed has an invalid format string for that type of data (i.e.. [<WordVariable>|%s]). The
format and the special field are indicated in the message text and can be traced in the Layout File.
TXT Report - Max number of pages exceeded for the command '%s'
The report printout (in printer of file) has been interrupted due to exceeding the maximum page limit
set as command parameter. The last report file page will show the "Max number of pages exceeded"
notifying the user that the printing out of this file has not been completed with the data requested.
TXT Report - Error appending the report file ('%s')
The "Appending" command has failed because it was not possible to open in write the report file set
in the command. This may have been due to path setting error or file access has been denied due to
invalid access rights.
TXT Report - Error saving the report file ('%s')
The "Save" command has failed because the report file set in the command could not be open in
write. This may have been caused by path setting error.
TXT Report - Error opening the report file ('%s')
The Layout File set in the command could not be opened. This may have been caused by an error in
the path setting or file name, or insufficient access rights to this file.
TXT Report - Printer not available
The "Print " command failed because the operating system's preset printer could not be found.
TXT Report - View application not found
The "View" command failed because the operating system's preset application to be used for
opening the report file set in the command could not be found. Check to see if the report file's
extension is correct.
TXT Report - Report file format not supported ('%s')
The Layout File format is not supported, for instance, file may not be text but binary.
656
R E P O R T S
657
M O V I C O N _ P R O G R A M M E R _ G U I D E
658
Distributed Projects
Projects structured with Parent-Child relationships provide many advantages to companies working in
teams. In respect to the traditional technologies, where many people work using and sharing tasks in
the same project, Movicon offers the possibility to distribute work in different projects independently
where the Team Leader can have, in their own Parent Project, all the resources of the Child Projects
of its collaborators, who can also completely work independently.
The Father Project is provided with all its children's resources internally, without any resource name
distinction or duplication, as the name difference is governed by the child project's path. Therefore,
for instance, a VAR0001 may co-exist in the parent project as well as in the child project because
individualized by the project's name and path.
Note: This architecture provides the automatic startup of child projects in Run when the
Parent project Run is started up. This option is found in the Project's "Child Project Options
Settings" properties.
659
M O V I C O N _ P R O G R A M M E R _ G U I D E
Distributed Run
The Father-Child Project relationship is very useful for modular systems or machines where, for
instance, the plant is divided into zones which can also be independent from one to another. In a
situation like this you can create more projects, one for each zone, and then integrate them into one
Father project from which you can access the pages and the variables of the Child projects.
Example:
An automation line is composed of 3 independent machines. Each machine has its own project run
locally on its PC. The machines are then integrated into a production line and linked to a main
Supervision PC.
The big advantages Movicon gives you not only involve drastic development time reductions but also
the chance to create a main supervision project such as the "Parent Project" and three
"Child Projects" representing the three individual machines, which reside in local PCs.
In this way, the parent project can automatically be provided with all the individual variables of the
various child projects, to produce general summary screen layouts. By using these general layout
screens, residing in the parent project, you can then open the screens of each individual
machine by simply opening the child project screens, which reside locally in the machines' PCs, in
the father project. Not only do you save time but you get the advantage of having any future
modifications executed on the machines will automatically be executed in the main
supervisor as well.
660
Note: In the example indicated for this architecture, the automatic child project startup with
the Parent project run startup, option provided in the Project "Child Project Options Settings"
properties, is not required (being independent projects). However, the child projects must be
entered with the Server project's (Supervisor) IP address in their settings.
C H I L D
P R O J E C T S
Note: In the example indicated for this architecture, the automatic child project startup with
the Parent project run startup, option provided in the Project "Child Project Options Settings"
661
M O V I C O N _ P R O G R A M M E R _ G U I D E
properties, is not required (being independent projects). However, child projects must be
entered with the Server project's (Supervisor) IP address in their settings.
In this context it is important to specify that the port number set in the Parent
project's networking services are different from the ones set for child projects and
the child projects' ports are different from each other. For instance, if you had two
child projects called ProjectA and ProjectB, ProjectA's port would be set to the 12233 value,
ProjectB's port set to the 12234 value and the Parent Project's port would be set to the 12235
value. You must also keep in mind that any server projects corresponding to the various
child projects should have the same port value set for the various clients. Therefore in our
example, ProjectA's Server's port would be set to the 12233 value and ProjectB's Server's
port would be set to the 12234 value. If this is not done correctly, you may have some
problems when a Web Client or a Client needs to be connected to the Parent project. In fact,
if you open a child screen from the Parent project, and since the screen's variable has to be
connected to the network server configured within the child project, Movicon will run the
network services for that specific child project. If the child project uses the same port as the
parent, this will cause them to have conflicts with each other.
662
C H I L D
P R O J E C T S
for example:
..\Screen 1
..\VAR00001
..\Basic Script 1
..\Menu 1
It must be taken into account that there could be different nesting levels. For instance, if you have a
"Father Project" with two "child projects, "Child Project 1" and "Child Project 2" you can access the
"Child Project 2" resources from "Child Project 1" by using the following syntax:
..\ChildProjectName\ResourceName
For instance:
..\ChildProject2\Screen 1
..\ChildProject2\VAR00001
..\ChildProject2\Basic Script 1
..\ChildProject2\Menu 1
The other possibility would be to have a father project and a child project which itself has a further
child project. Therefore you would have a "Father Project", a "Child Project" and a "Child Project2".
In this case the syntax for accessing the "Child Project 2's resources" from the "Father Project"
would be:
ChildProjectName\ChildProjectName2\ResourceName
for instance:
ChildProject\ChildProject2\Screen 1
ChildProject\ChildProject2\VAR00001
ChildProject\ChildProject2\Basic Script 1
ChildProject\ChildProject2\Menu 1
The syntax for accessing the resources of the "Father Project" from the "Child Project2" would be:
..\..\ResourceName
for instance:
..\..\Screen 1
..\..\VAR00001
..\..\Basic Script 1
..\..\Menu 1
Caution! If local screen variables have been set in the screen you are working in,
the syntax to access the parent project variables may be different. When the
parent project variable has the same name as the local variable you must use
the following syntax:
..\..\<variable name>
The suffix"..\" is used for returning back one hierarchy on the variable's access.
The hierarchy is:
Local Screen Variables -> Project Variables -> Parent Project Variables
It is also possible to use variables between Parent and Child project in basic
script expressions of objects. In this case however, you must take into
consideration that local variables are not supported in basic script expressions.
Therefore if you want to insert a basic script expression in a Child project's
object, the syntax would be for example:
[VAR00001] + [VAR00002] -> variables are loaded from the Child project
[..\VAR00001] + [..\VAR00002] -> variables are loaded from the Parent project
[..\..\VAR00001] + [..\..\VAR00002] -> no variables will be loaded because
there is an error in the reference
663
M O V I C O N _ P R O G R A M M E R _ G U I D E
Database Viewer
Data from the Child Project's Database can be displayed by the Parent Project. By using the
execution properties of the "Log Window", "DataLogger Window" and "TraceDB Window"
objects you can select the 'Child Project' name to be linked in order to view its data.
664
26. Networking
The Networking exploits the potentialities of protocols
capable of going on Ethernet networks for interlinking
Movicon workstations in Client/Server mode.
It is more than often that the distributed architecture of process control require plants to include
multiple workstations, control or display stations which are used through one or two PCs linked up
together in Ethernet network. Today's Ethernet network is the most used means of communication
due to its hi-performances/low cost ratio.
This means, however, that more tools are needed for interlinking more stations capable of sharing
process data.
Movicon nevertheless is able to satisfy these Networking connectivity requirements by exploiting the
TCP/IP, UDP, and HTTP protocols which are also used on the Ethernet network as being the most
widely used and fastest.
Two or more Movicon stations can be interlinked with just a few simple mouse clicks.
The remote link functions (Networking) are enabled in Runtime only
when the appropriate option on each hardware key of each PC station
(Client or Server) is active.
The variables in use in a Client and exchanged with the server will
naturally be in use in the server as well.
665
M O V I C O N _ P R O G R A M M E R _ G U I D E
666
N E T W O R K I N G
For instance, let's suppose we need to check the correct running of the communication towards the
PC connect in net whose IP address is 198.162.200.14, therefore we shall write:
PING 192.168.200.14
<ENTER>
DOS window responding to the call made should appear showing the connection which was carried
out:
Only in this way can we be certain that the network has been installed correctly to be able to
connect data of the two Movicon stations.
667
M O V I C O N _ P R O G R A M M E R _ G U I D E
in write. This means that when a variable is set with "write" mode, a further change to this variable
on the Server side will overwrite it again with the Client's value after "Timeout" expires even when it
has not changed on the Client side.
It must be taken into consideration that if a variable is exchanged in "read" or "read/write" mode
when put in use on the Client, it is subscribed to the Server which updates it and then as soon as the
variable goes in use, its value will be updated on the Client side. If, however, a variable is exchanged
with "write" mode, nothing is notified to the Server when it goes in use unless it undergoes a
variation. In this case, you will notice that it will take a few seconds from the moment in which the
variable goes in use to the moment in which it is updated on the Server. This time is the one set in
the "Timeout (msec)" used for refreshing variables.
The first Movicon project must be run as Service and has to manage field communications. It
must be a Network Server and all the its project variables must be exposed to the Clients.
The second project must be a Network Client of the previous project, it must enable the
"Local Transport" and it mustn't enable any communication driver. When the Client project is
run, it will acquire the variables from the Network Server project.
The Terminal Server session must run the Network Client project and NOT the Network
Server project, which is however managed as service.
The Movicon license must be NET type (network license) to enable a number of users equal
to the maximum number of Terminal Server connections desired at the same time.
Cases in which the Movicon Service is launched in a Windows Terminal
Server system, MoviconService.exe module, from remote control
(Desktop Remoto), it will not be necessary to have a NET key as Movicon
can work with a normal key without going into Demo Mode. However the
Movicon.exe and MoviconRunTime.exe modules will need to have a NET
licence in order to launched by remote control without going into Demo
mode.
668
N E T W O R K I N G
The use of the Network Server-Client configuration is necessary because only one project must
execute the communication drivers. If the Terminal Server runs a new project session which has
been enabled with drivers there will be communication conflicts. Therefore the project, run from the
Terminal Server, must not have its communication drivers enabled and thus must retrieve data from
the field by exchanging variables through Networking from the Server project.
You must take into account that Log files will be created independently from both the Server and
Client projects. Therefore it will be necessary that the two ODBC connections are different (if the two
project names are different so will the ones for default be for the ODBC connections). If you want to
display the Server project's Historical Log from the Client project you must use the grid object.
As regards to DataLoggers and Recipe with the need for one data source only, you will have to
enable the registration in the Server project, set the Client project's ODBC connections to the Server
project's database and disable the DataLogger/Recipe registration in the Client project.
Starting from the 11.0.1018 and 11.1.1055 versions the local protocol can also be used in Windows
8/7 operating systems or later versions by launching the Server project as service. However you will
need to heed the following rules:
1.
2.
3.
The service must be started up by a user with administrator rights and not a "LocalSystem"
user (default user)
If the Windows UAC is enabled, the Client project must be started up with the "Run As..."
specifying a Administrator User. It is for this reason that the "with Windows 8/7, the Local
Transport networking requires Administrator privileges. Please, run Movicon as
Administrator." message appears in the Client project in cased when the local protocol is
active.
If the Windows UAC is not enabled, the user who starts up the Client project does not have
to be administrator but must be inserted in the 'Local Policy Settings' relating to the 'Create
Global Object' configuration parameters.
Warning message has only been inserted in the 11.1 version and appears
only when an error generates while installing the local protocol.
The Screen and basic script "OpenSafe" command uses the local protocol
for connecting to the instance variables in run mode. It is for this reason
that the instance in run mode must have privileges for opening the local
protocol port in listening mode.
Caution! In order to permit the Client project connect to Server correctly
using the "Local Transport" protocol, there should not be any sessions,
such as design mode, opened in Movicon. Otherwise the Server network
services will not initialize properly causing the Client to switch into
timeout when connecting to the Server.
When executing the "Attach to Process" command a dialog window will open to insert the Server
to be connected to. The Server can be indicated by its set IP address or its name, or by searching for
it in the tree of connections available in the network to which the computer is connected.
Caution! the server's name or its IP address must be specified without
placing the "\" char. at the beginning.
After having set and confirmed the Server with OK, a second window will open requesting User
authentication. The User name and password are obligatory only when the project being run has
been enabled with the User management, otherwise click on the OK button straight away. When the
669
M O V I C O N _ P R O G R A M M E R _ G U I D E
project has been enabled with the User management, the user must have administrator level (level
1023) in order to be authenticated and granted connection. Furthermore the project must be
enabled for remote debugging. This is done by enabling the "Debugger" option in the project's
"Networking Server" properties (default = false).
After this procedure the project is started up in the same mode as the non startable child project.
Therefore the variables in the controls are connected in dynamic mode ([\\NET]), the alarm, historic
data viewer windows and the scheduler window are connected to the Networking Server. In addition
to this all the project logic is not executed.
The remote debug provides the following functionalities:
The Watch window allows the data relating to the Server project to be displayed and to
monitor the variables in the Server
The 'Scripts' new Watch window allows you to verify which Scripts have been loaded in
memory and the total execution time of those in run mode. The debug window is opened by
double clicking on a script
A debug can be executed on the local and project IL logic (you can view the logic executed
locally in the "Local IL Logic Window")
The remote process can be restarted (not possible for the service). This possibility is
proposed when disconnecting from the Server. A window opens where you can restart the
project on the Server
Analyses the project statistics with the right debug window (not supported on WinCE)
4.
The remote debug messages have the lowest priority, they do not influence the normal
running of the system where network traffic is concerned
The project to be connected to must be enabled with the "Networking Server" option (as well
as the "Debugger" option) in the Networking Services settings
The Networking default transport is used for connecting in remote debug, this is the one
selected in the "Client Network Settings" of the project to be connected to. This same
transport must also be enabled in the Server's "Networking Service" otherwise any attempt to
connect will fail
The screen's file path and name can be entered in the command line instead of those of the
project and are exploited by Movicon to execute the remote project debugging
Local
TCP
UDP
HTTP
Some of the advanced protocol options may slow down
communications when dealing with big packets ("Sealing" and
"Enable Encryption" properties), or with supplementary operations
which the Server and Client must execute before sending packets
("Enable Compression" property).
670
N E T W O R K I N G
Network Server
This property is used for enabling or disabling the Network Server for the project in question.
Default Log On User
This property allows you to set the User that the Server project is to use for any anonymous remote
connections. Therefore any anonymous Client trying to connect to the Network Server will be
authenticated with the credentials of the user entered in this property. This option is only used when
the user management is active in the Server project and behaves in the following way:
A Web Client project will be automatically authenticated with the user set as "Default Log On
User" in the Server. Therefore no login window will appear.
A Network Client project without any user name entered for connecting to Server (Network
Client Settings -> User), will be authenticated with the same user set as the "Default Log On
User" in the Server. Therefore no "Network Server 'ServerName' Authentication failed"
message will appear in the Client log window. Also "Alarm Windows" and "Scheduler
Windows" will be authenticated using the user entered as the "Default Log On User" in the
Server.
Debugger
This property is used for activating the debug function for the Networking communications.
Max # Clients
The maximum number of Client Stations, which can connect to the Server at the same time, is
entered in this edit box.
Max # Failing Actions
The maximum number of error packets which can arrived from a Client Station before it put into
quarantine is entered in this edit box.
Network Server Threading Pool
Number of threads to be used for handling Server packets. When inserting a number in the negative
the subdivision of threads will be done based on the number of processors in the PC.
Routing Table
This property is used for re-addressing messages on another Server. In this case the PC works as a
bridge. This maybe useful in situations where the destination Server is not visible from the source
Server, for instance, when the destination Server is part of a local Lan and access is gained through
a Server connected to internet.
Example:
Requested variable monitoring get (Local_I1, 0), Result = 1
b. Cancellation of a variable from the list of the one subscribed. Means that the variable in
client is no longer in use.
Example:
Stopped variable monitoring (Local_I1, 0), Result = 1
c. The network client has sent a request to the network server asking for a variable value.
The network server will send the value only if if has changed. This type of request occurs
for all subscribed variables by clients when the timeout, set in the client rules, expires, or
671
M O V I C O N _ P R O G R A M M E R _ G U I D E
beforehand if the variable changed in the network server: in this case the network server
sends notification to the network client about variable changed, therefore the network client
will send a request to read new value.
Example:
Requested variable monitoring poll (Local_I1, 0), Result = 1
d. The network client has sent a variable value to the network server. Means that the
variable has changed value in the network client.
Example:
Requested variable set (Local_I1, 0), Result = 1
Example:
Requested Open Screen (Screen1), Result =
It would be best to leave the network client project with its local transport
enabled, as this transport uses a shared memory block which is much more
faster than the local network communication when using the TCP transport.
Enable
This property let's you enable or disable the use of the Local Transport for networking between
Server-Client stations.
672
N E T W O R K I N G
Timeout (ms)
This property allows to enter the timeout in milliseconds for the response of a message sent to a
remote station. When this time expires a error message will be generated.
Inactivity (ms)
The set value (default 10 sec.) is used for keeping the resource active in the sockets so that to
avoid having to repeatedly recreate it on the Server for the different Clients. In addition, this value is
multiplied by 30 (default 10000 x 30 = 5 min) for managing the disconnection of inactive Clients.
When a Client connection remains inactive for the time set here, it will be disconnected and
reconnected only when the next request is made.
673
M O V I C O N _ P R O G R A M M E R _ G U I D E
None
MD5
CRC32
Adler
674
N E T W O R K I N G
Ver. 4
Ver. 5
Enable Authentication
This property is used for enabling the Socks authentication for the Transport.
Authentication
This property is used for selecting the authentication type to be executed. The choices are:
No Authentication
User Code
675
M O V I C O N _ P R O G R A M M E R _ G U I D E
None
MD5
CRC32
Adler
676
N E T W O R K I N G
None
MD5
CRC32
Adler
677
M O V I C O N _ P R O G R A M M E R _ G U I D E
Version
This property is used for selecting the Socks version to be used. The choices are:
Ver. 4
Ver. 5
Enable Authentication
This property is used for enabling the Socks authentication for the Transport.
Authentication
This property is used for selecting the authentication type to be executed. The choices are:
No Authentication
User Code
678
N E T W O R K I N G
The fields shown in the Alias window have the following meanings:
Server: Name of the Server to which the project has to connect to when the Alias Table is
not enabled. This is the name which the Server was set with in the "Network Server"
property of the "Variable Network Client Properties"
Alias: Name of the Server in which the connections must be re-addressed.
Using the Alias Table is very handy also in the designing and debug phases.
You can, in fact, quickly re-route the Server's name in project tests. In
addition, by knowing the plant server's name in advance you can insert it in
the project and use it's Alias for internal testing in the office.
679
M O V I C O N _ P R O G R A M M E R _ G U I D E
The Server's answer timeout (expressed in ms) after a message has been sent from the Client is
entered in this property. An error message will be generated when the Timeout has expired.
This value is also used by the Client project as polling time for asking the Server for variables in use
notifications.
User
This property is used for entering the name of the user with which the Client will represent itself to
the Server. This setting is only significant when the Server project has the 'Password Management'
enabled. In this case the user must also be present in the Server project to be acknowledged. By
doing this the Client acquired the rights associated to the user in question, and can get access to
variables based on these rights.
Ping Time (ms)
This property is used for setting the ping time to be used while connecting to the Server (the "0"
value avoids the use of the ping time).
Transport
This property is used for selecting the Transport (Protocol) type to be used by the Client for
communicating with the Server.
Priority
This property is used for associating a priority level to the connection in question The values are
from 0 to 100. The higher the number, the higher the priority therefore the highest priority is a 100.
RAS Station
This property is used for selecting a RAS connection (which must be created beforehand) to connect
to Server exploiting telephone lines.
Enable RAS Station
This property is used for enabling the use of a RAS station to connect to the Server exploiting
telephones lines.
680
N E T W O R K I N G
"Incoming Connection" on the PC Server, so that when the Client makes a call and connection is
established, the two PCs will be linked as if they were networking with each other.
To add "RAS Stations" you need to use the "Add new RAS Station" command.
The RAS Connection is a Operating System function that allows a
Server-Client type connection between two stations using a connection via
Modem. One the connection has been established the TCP/IP protocol can
be used for exchanging data between Server and Client. The RAS
connection can be created from the "Control Panel - Network
Connections". However, the configuration procedure may change slightly
according to the Operating System being used (ie. Windows 32/64 bit).
The RAS Station must be created only on the PC acting as Client, while an "RAS Incoming
Connection" must be configured on the PC Server which will allow it to respond to the Client's calls
automatically.
For further information on how to set up a "RAS Connection" please consult the relevant form on the
"Web Support Center".
Be careful not to confuse a "RAS Station" with a "RAS Connection". The
"RAS Station" is infact a component of the Movicon project, which is used
for setting up communication parameters between Server and Client. The
"RAS Connection", however, is a Operating System Setup which is used for
establishing a physical connection between Server and Client.
681
M O V I C O N _ P R O G R A M M E R _ G U I D E
The time count starts the moment in which all the variables connected to the Server are no longer in
use.
Retry Hold Time (sec)
The Retry Hold Time, before re-dialing when connection fails, is entered in this property.
Prompt Before Connecting
When enabling this property a confirmation window will appear each time Movicon execute a
connection. In this case the operator must confirm or abort the call.
Show Dlg
When enabling this property a window will appear during the calling phase showing the current
status of the connection.
Connection Variable
A numeric variable from the project's RealTimeDB can be entered here. Through the variable's
settings you can control the RAS station connection and disconnection during runtime. When
setting the variable with a value that is not zero, Movicon will make the RAS call to connect by using
the RAS station settings. When setting this variable to zero, Movicon will close any connections
currently in use. The variable can return to zero when the user decides to hang up on the call being
made.
If this field is left empty, Movicon will connect/disconnect according to whether variables are in use
or not in the project. Movicon will make calls in cases where at least one variable is in use and must
connect to a RAS server.
The connection to a RAS station can be controlled using the command
variable, even when the RAS station has not been associated to any
Client Rules. In this case you just need to have this option enabled on
your license.
682
N E T W O R K I N G
certain Server it verifies whether one exists with the same Server
name on the Client Rules list. In this case the connection is carried
out according to the settings specified in the Client Rules,
otherwise the Client's general settings will be used.
When a IP address is specified. the name of the "Client Rules"
should be the same as the IP address.
The name is also essential for being able to identify and access properties and methods of the Client
Rules through the Basic Script functions.
683
M O V I C O N _ P R O G R A M M E R _ G U I D E
684
27. Redundancy
Movicon embeds powerful automatic functions to
support the Hot Backup of critical stations workstations
redundantly connected in network. Slave intervention,
re-entry, data synchronization are managed in
completely in automatic.
Some critical processes under supervision and control require emergency station intervention, known
as Secondary Server, when the main PC unit, known as Primary Server, crashes.
This ensures that the process's supervision and control service will continue to function when the
Master supervision station suddenly becomes unavailable or crashes.
The redundancy management, in a supervision and control system, has
the task of preventing data and control functionality of the plant.
The redundancy functions are enabled in runtime only when the
Redundancy and Networking option in each hardware key of every
PC station (Primary or Secondary) have been enabled.
685
M O V I C O N _ P R O G R A M M E R _ G U I D E
The redundancy concept can be applied to both software and hardware to stop the system loosing
any data or functionalities when transferring control over to the secondary backup component from
the Primary component.
The redundancy concept can be applied to the following components in automation systems:
PLC
CPU
I/O Cards
Connections
Bus
Network Cable
Serial
Computer
Display System
Control System
The Redundancy functions embedded in Movicon support the Backup functionalities in your
computer, allowing all the communication, display and control functions from the Primary PC Server
to be transferred to a Secondary Server entirely in automatic.
This proprietary technology adopted by Movicon to perform these functions permits very fast
synchronization times of up to less than a second when great amounts of data are involved. This is
due to synchronizing data acquired during the emergency take over period by transmitting data in
binary format instead of database format structures.
Any one of these functions can be kept on Stand-by in the secondary station to activate when the
Primary station crashes to safeguard against losing plant system control.
The Movicon redundancy control system requires two PC stations connected in network based on
TCP/IP, with Primary and Secondary Server functions:
"Normal" Conditions
In normal working conditions, both the Primary and Secondary Servers are operative in the plant
according to distinguished functionalities.
The Primary Server is dedicated to manage the driver's communication and historically log data on
hard disk, according to the normal functioning of each Movicon application.
The Secondary Server is kept on stand-by and operative to carry out the same functions as the
Primary in independent mode, except for the following different operating modes:
686
R E D U N D A N C Y
The drivers of the secondary server are put on Stand-by and do not communicate directly.
Operability of the secondary server is based on mirroring the variable memory areas, which
are shared in automatic and transparent mode on the Primary server. As a consequence a
command towards the field can be performed both on the Primary or Secondary indifferently,
but change page performances must be done locally as each workstation processes its own
graphic functions locally
The Secondary's historical logs (Data Logger, Recipes and Log) do not work directly, to
ensure absolute seamless recorded data. The system's redundancy functions make sure that
collected and recorded data from the Primary of Secondary Server is archived in the same
identical and transparent mode used in these Servers. The synchronization mechanism
ensures complete data integrity and time precision, and is independent from the Data Base
type being used (SQL Server, MS Access, IMDB, etc) on the Primary and on the Secondary .
The cache memory shows the alarm situation of the primary's alarms and updates by
mirroring the primary's cache for the same reasons as above
The General IL Logic will be placed in pause mode on the Secondary project, while the Local
IL logic assoicated to the Scree or object will however be executed.
the Event list and the Events in script variables will not be executed in the Secondary Server
"Emergency" Conditions
When the primary server stops working (crashed, error, hardware damages), the secondary server
will go into action immediately and communicate with the driver on stand-by and the execution all of
the project's logic and Events is reactivated. The configurable response time is immediate to the
second.
The historical engines will start to record the plant data directly the moment it enters into service to
assess how much data has to be sent to the primary server the moment it returns into action. This
will allow you to optimize the historicals' synchronizing times.
Once the Primary server re-enters into action it will automatically synchronize the historicals' status
and the alarm situation in order to completely restore its functionality and archives to avoid any data
loss.
The system, by exploiting its own technology, will only send the data recorded during the emergency
period to the primary server by transferring the data in binary mode without using any database
structures.
Once synchronization has been completed, which is automatically done by the redundancy
management embedded in the system, the secondary server will return on Stand-by.
For correct use of the redundancy management you must install and
configure the network form and the TCP/IP protocol in the operating system
being used beforehand. For more information on how to do this please
refer to the section on Networking.
Data Synchronization
The redundancy management optimizes those projects which have many Data Loggers and a high
sampling frequency because they have to manage large volumes of historical data. This
management mainly limits memory used for data synchronization files, to avoid any system memory
saturation in cases where large amounts data MBytes have to be synchronized. Two properties have
been provided in the redundancy to deal with this allowing data synchronization to be managed with:
Max Historical Cache
Max. Nr. Historical Cache Files
The data synchronization files are created in the project's "DATA" folder. This files signify:
File
Extension
.dmr
Description
Cache file
project's
Logger.
Struttura XML
for
the
Data
687
M O V I C O N _ P R O G R A M M E R _ G U I D E
.hlr
.tbr
System Diagnostics
Movicon gives out information system messages when the Secondary Server has entered into action,
the re-entry of the Primary Server and the data being synchronized etc.
This information will be displayed on both systems and recorded in the Historical Log automatically.
This will enable the operator to always have the information s/he needs to carry out an accurate
analysis to valuate how the critical system is working.
Status Variable
The redundancy management also provides the programmer the option to use a status variable, in
order to inform the logic on the operating status of the Primary and Secondary Servers. For further
information please refer to the "Status Variable " property from the "Redundancy Settings".
Some Basic Script functions dedicated to the Redundancy management have also been provided.
688
R E D U N D A N C Y
Redundancy Restrictions
The Redundancy management used in a critical plant situation has some restrictions as regards to
how some of the project's functionalities work and which the programmer should keep in mind.
This would be best done by considering those Movicon functions which are not critical and not
managed in redundancy.
These functions must be evaluated carefully as their non redundancy use
may effect the system backup management in a critical situation.
The functions not subject to Movicon project redundancy are:
Function
Description
System Variables
Trend Output
Furthermore, you must keep in mind that while the IL Logic associated to the project is executed
only on the active Server, the screen or designs' Local IL Logic is always executed on both the
Primary and Secondary Servers independently from which one is active. To avoid any problems you
need to manage the Local IL Logic shrewdly by using, for example, the screens' local variables.
Please also remember that the Event and Alarm managements are disabled in the Secondary Server
when in 'Stand-by' mode. For instance, this will mean that Alarm Areas used for symbol animations
('Variable Is Alarm Group' property from the symbol's Dynamic 'Background Color' and 'Dynamic
Text and Edge Color' property groups) will not have any effect in the Secondary Server when in
'stand-by'.
When using the communication driver's basic script functions you will need to introduce the right
controls in the codes. In this case, for example, before executing the functions for creating and the
task management, it will be necessary to verify whether the station is communicating (verify whether
there are any errors and its quality status). Otherwise, the driver may not be loaded because being
used by another Server. You can also refer to the appropriate status variables to see if the
Secondary Server has driver control.
Caution: The Redundancy function and the data synchronization
mechanism may present criticalities when the total amount of data to be
managed is very high. Therefore, it is advised you carefully read the section
on "Data Synchronization" and to also consider the hardware characteristics
of the PC being used.
System Requirements
A redundant system must be based on a configuration which allows the network connection of two
PCs, which do not have to be necessarily identical to the hardware's configuration.
Both systems should at least give the same performances and have the same memory capacity
while having identical redundancy functionalities.
It is fundamental that both systems are correctly installed with the network card and TC/IP protocol,
on which the whole redundancy management is based.
689
M O V I C O N _ P R O G R A M M E R _ G U I D E
None
Primary
Secondary
When the "None" option is selected the Redundancy functionality will not be activated.
Server
The name or the IP address of the Primary Server is entered here. This property is set only in the
Secondary Server project.
The IP address or Server name which is to be set in this redundancy field is also used as Backup
Network Server for each variable that is not set with a Backup Network Server.
Backup Server
The name or IP address of the Primary Server is entered in this box. This property is set only in
Secondary Server projects.
The Secondary Server will attempt to connect to the Primary backup Server when the main Primary
Server is not available. Once the connection remains connected to the backup Server, and failure to
do so, an attempt will be made to connect to the main Primary Server. Failure of both connection
procedures to one of the two primary Servers will activate the Secondary Server. When the Backup
Server is not specified only the main Primary Server will be used. The 6 bit in the status variable
indicates that the primary server is connected through the Backup Server. In cases where the
Secondary is the active Server, the 6 bit will blink each time the secondary controls the presence of
the backup server.
Timeout
This edit box is used for entering the timeout after which the Secondary Server will take over control
when the Primary Server crashes, disconnected etc.
Retries
The number of connection retries the Secondary Server should carry out before going into action is
entered in this box.
Status Variable
This box is used for selecting one of the variables from the Movicon Real Time DB which will be used
as the Redundancy's status variable. The meaning of each bit of the selected variable depends on
the Server where the project is being run:
690
Bit 0: Primary Server. This bit is set at true only in the project set as Primary Server
Bit 1: Secondary Server. This bit is set at true only in the project set as Secondary Server
Bit 2: Active Server. This bit is set at true only in the Server project active at that moment
Bit 3: Secondary Connected. This bit will be set at true only in Primary Server projects when
the Seconddary project is connect to the Primary Server.
Bit 4: Synchronization in course. This bit is set at true in both projects, Primary and
Secondary, when synchronization is taking place between the Secondary Server and Primary
Server
Bit 5: Drivers startup on Secondary. This bit will be true in projects set as Primary Servers
when the Communication Drivers in the Secondary are activated due to an error in the
Primary Server.
Bit 6: Secondary Server. This bit will be true when the Secondary Server is connected to the
Primary Backup Server. It will start blinking when controlling the presence of the Secondary
Backup Server
Bit 7: not used
R E D U N D A N C Y
691
M O V I C O N _ P R O G R A M M E R _ G U I D E
692
Movicon is an application based both on the OPC Client and OPC Server standards.
As Client it can interface with all the OPC Serves with follow the 1.0A and 2.0 standards; as Server it
allows all or part of the project variables to be shared with other applications and notifies them of
events such as: Alarms, messages, system information and variable changes within the project.
In view of the increasing consolidation of the OPC standard in industrial automation, this technology
must be considered as a communication mode with bus network devices or with other local or
remote applications only.
693
M O V I C O N _ P R O G R A M M E R _ G U I D E
DCOM Settings
The connection to a OPC network Server involves the usual necessity to setup the Windows DCOM
services so that Clients are allowed access to the Servers. To get easy access to the DCOM
configuration window use the "Edit DCOM Settings" command in the "Commands window" from
the "Project Explorer" or from the text menu which appears by right mouse clicking on the name of
the interested OPC.
694
O P C
( O L E
F O R
P R O C E S S
C O N T R O L )
695
M O V I C O N _ P R O G R A M M E R _ G U I D E
696
O P C
( O L E
F O R
P R O C E S S
C O N T R O L )
697
M O V I C O N _ P R O G R A M M E R _ G U I D E
Local ID
This edit box allows you to set the Group with a numeric ID value to localize the strings sent by the
Server. Normally the default zero value done not need changing.
Subscribed item Tag
When inserted a RealtimeDB variable in the static group property you can dynamically subscribe
Items to the OPC Server.
The subscription of a variable dynamically linked to an OPC Item through its "Dynamic I/O address"
property can also be managed dynamically when the name of a group from the static OPC resource,
for which the subscription variable has been set, is set in the variable's "OPC Group" property.
- the group's subscription is forced when a currently non-subscribed
variable's OPC address is changed.
- The license counts all the variables associated to the OPC Item
independently from the subscription status towards the field.
698
Default Server: No conversions will be done following the read or write of an item when
this option box is enabled. In this case we advise you to use a Movicon variable of the same
type set in the Item properties
Short, Long, Float, Double, etc.: According to the option box checked, the corresponding
conversion will be carried out on the item, and therefore the project variable assigned, to
contain the data in the format indicated here
O P C
( O L E
F O R
P R O C E S S
C O N T R O L )
699
M O V I C O N _ P R O G R A M M E R _ G U I D E
When selecting the Movicon Server you will be provided with a list of the variables enabled for being
shared with Clients.
700
O P C
( O L E
F O R
P R O C E S S
C O N T R O L )
1) enable the OPC XML Server (Real Time DB resoure's "OPC XML DA Server - Enable OPC Server"
property )
2) enable the "Enable OPC Server" option from the "Options" property group of the variables to be
published.
3) enable the "OPC XML DA Server" License option
701
M O V I C O N _ P R O G R A M M E R _ G U I D E
702
703
M O V I C O N _ P R O G R A M M E R _ G U I D E
The window for the project's IL Logic debugging does not fully support the
changes which can however be monitored with the local IL Logic debug.
Once the IL Logic modifications have been applied in runtime (project IL
Logic and/or Local Screen IL Logic), to make it persistent for the next
project startup, you will have to delete the <compiled></<compiled>
nodes from the respective ".movils" (Project IL Logic) and ".movscr"
(Screen IL Logic) files.
Real Time DB
Variables and Structure prototypes can be added.
The eliminated variables continue to be managed by the Runtime session until the next application
startup.
Not all of the variable properties support on-line changes. These properties are:
Menu Resources
The on-line changes are applied to these resources after the first consecutive change page has been
executed.
Screen Resources
The on-line changes are applied when the screen is reloaded into memory. If the screen was already
active when the changes took place, you will have to close it, wait until it is unloaded from memory
and then re-open it.
Shortcut Resources
The on-line changes are applied to these resources after the first consecutive change page has been
executed.
Basic Script Resources
The Basic Script must be unloaded from memory with the "Unload" command because it will acquire
modifications upon the next startup.
String Table
The changes made in development mode for each column are loaded only when the column is
activated in the Project in Runtime mode.
Alarm Resources
Project alarm lists can also be modified Online in order to add new alarms, delete or modify existing
ones.
However it is not possible to add new alarm Templates because this would need the use the file
".movrealtimedb". Online modifications can only be done to alarms using the ".movalr" alarm file,
and therefore will need to be created in the usual way or from the "Variable Name".
When the project is saved after modifying the alarm list, the RunTime module will re-initialize the
Alarm Manager where upon the alarm list will be reloaded without needing to refresh or change
pages in order to reload the screen. During the reinitialization phase alarm transactions may get
lost. Once re-initialized the alarm manager will realign alarms with the variable statuses. In the
project's Historical Log and Output Window a message will show indicating that alarms have been
reloaded and initialized.
DataLogger/Recipe Resource
Project DataLogger/Recipe lists can be modified On-line as well. Therefore new DataLoggers or
Recipes can be added, existing one deleted or modified.
However it is not possible to add new DataLogger/Recipe Templates because this would need the
use the file".movrealtimedb", Online modifications can only be done to DataLogger/Recipe using the
".movdlr" DataLogger file, and therefore will need to be created in the usual way.
When the project is saved after modifying the DataLogger/Recipe list, the RunTime module will reinitialize the DataLogger/Recipe Manager where upon the DataLogger/Recipe list will be reloaded
without needing to refresh or change pages in order to reload the screen. During the reinitialization
phase Datalogger alarm transactions may get lost. Once the DataLogger/Recipe managment has
been re-initialized it will continue working normally. In the project's Historical Log and Output
704
O N - L I N E
C H A N G E S
T O
P R O J E S T S
Window a message will show indicating that the DataLoggers/Recipes have been reloaded and
initialized.
To view the modification in the "DataLogger-Recipe Window" associated to the DataLogger/Recipe
modified you will need to perform a page change in the Movicon instance in run mode in order to
reload the screen again.
In cases where the DataLogger/Recepe's "Table Name" property is changed, a new table will be
created with the chosen name instead of renaming the existing table on database. This is
consistent with changes made in the conventional way.
705
M O V I C O N _ P R O G R A M M E R _ G U I D E
706
The XML files listed above must be inserted in the Movicon installation file, being where the
executable files reside.
All the key values which can be inserted in the configuration files are listed and described in the
appropriate tables found in the "Configuration Key List" section.
707
M O V I C O N _ P R O G R A M M E R _ G U I D E
main items are listed in a tree structure of key classifications on the left, the values of the key
selected on the left are shown in the right pane.
When referring to the table describing the keys mentioned in the "Configuration Key List"
paragraph, you should select the key you are interested in by browsing through the tree structure on
the left in the window. Once you have found the key, select it to view its already set values in the
right pane. If the value you are interested in has not been set you can add it by activating the New
command found in the Edit menu or with a right mouse click. The value you wish to insert must be
one of they types specified in the key description table ("Type" column).
Any changes to just inserted or already existing values can be made by selecting the Edit command
from the Edit menu or by double-clicking on the name of the value. In the window which appears
you select the Hexadecimal or Decimal data Base and enter the value.
All the key values that Movicon uses can be searched for or inserted starting with this path:
HKEY_CURRENT_USER\Software\Progea Automation 11.3\MOVICON
When Movicon is started up as a Windows service the following configuration key will be used instead
when:
HKEY_USERS\.DEFAULT\Software\Progea Automation 11.3\MOVICON
If you are using PowerHMI as scada the path where the keys are to be search for is:
HKEY_CURRENT_USER\Software\Progea Automation 11.3\POWERHMI
This HKEY_USERS\.DEFAULT\ key is actually used by programs and services that are started up by
the "Local System" user and therefore by Movicon when started up as service under the "Local
System" user.
708
M O V I C O N
C O N F I G U R A T I O N
K E Y S
Please bare in mind that the following keys listed below can be used with
the last Movicon version but some of them may not be supported by
previous versions.
You must also take into consideration that the major part of the keys listed below are
not presented in the configuration file or Windows registry. In fact Movicon does not
create them in the installation phase. When a key is not present Movicon uses the
default value, which is shown in the Default column in the tables listed below. Therefore
it is at the programmer's discretion to create the keys and associate them to the values
desired if different from the ones for default.
The Windows registry keys are not used in the Movicon CE version to read
the attributes which allow modifications to change the way they work. In
order to modify the configuration key default values you must use the ".ini.
Configuration File as described in the relating Movicon section for WinCE.
Registry Keys Development
Registry Keys User Interface
Registry Keys Communications
Registry Keys Historicals
Registry Keys Generals
Registry Advanced Keys
Speech Synthesis Keys
SourceSafe Keys
MS ActiveSync Keys
Value
AppLook
Type
DWORD
Description
Application
working
environment
look:
Default
Win32
/64
Win
CE
0 = VS.NET
1 = Office
2003
2 = Office XP
General
MaxUndoLevel
DWORD
Number of
undo or redo
levels of
operations
executed in
project design
mode.
20
General
CreateSharedVariables
DWORD
Area type
where to
insert new
variables:
0 = Not
Shared
1 = Area Flag
709
M O V I C O N _ P R O G R A M M E R _ G U I D E
General
NotSharedRetentive
DWORD
"Retentive"
option value
when a new
variable is
inserted:
0 = Not
Retentive
1 = Retentive
General
MRUCount
DWORD
Maximum
number of
projects
listed in
recent files
under the
"File" menu
item and in
the "Recent"
tab after
executing the
"File-Open"
command.
General
Trace
DWORD
Shows the
identifiers
called by the
application in
the Output
window's
"Trace Help"
folder of the
argument
selected with
the Dynamic
Help window
when active.
0 = Enabled
1 = Disabled
General
DefaultAlphaBlend
DWORD
Transparency
percentage
factor of the
application
windows.
Valid only
with Windows
2000 OS or
later.
80
General
AnimationDelay
DWORD
Trigger in
milliseconds
for showing
script editor
windows.
General
AnimationTime
DWORD
Time in
milliseconds
for showing
controls. Not
used in
application
resources for
the time
100
710
M O V I C O N
C O N F I G U R A T I O N
K E Y S
being.
General
ContInser
DWORD
Enables the
continuous
insertion of
objects on
screens.
0 = New
selection must
be made from
the 'Object'
window after
each object is
inserted.
1 = Enabled
General
NumWatchWindows
DWORD
Number of
watch Tabs in
the Project
Debug
window
(Watch
window) when
the project is
run from the
development
mode
(minimum
value = 1).
General
RulerSize
DWORD
Screen side
ruler widths in
pixels.
18
DoNotAskAgai
n
*.*
DWORD
Values that
deactivate
confirm
request
windows,
which appear
after certain
operations are
carried out in
programming,
are saved in
this key. If
the "Do not
ask again"
option is
marked
before these
windows are
closed, the
window in
question will
no longer be
shown again.
To restore the
initial
situation just
cancel the
711
M O V I C O N _ P R O G R A M M E R _ G U I D E
values in this
registry key.
General
StringSep
SZ
/ character
used for
separating
string table
fields, when
imported or
exported from
text files.
TAB
General
StoreCryptProject
DWORD
Sets the
predefined
value which
the "Crypted
Project"
property must
obtain a new
project is
being created.
Standard
language
operating
system:
0
0 = New
projects will
not be saved
cryted
1 = New
projects will
be saved
crypted
General
StoreCryptProjectResources
DWORD
Sets the
predefined
value which
the "Crypted
Project
Resources"
property must
obtain when a
new project is
being
created.
0 = New
projects will
be saved
without
crypted
resources.
1= New
projects will
be saved with
crypted
resources.
General
712
StoreUnicodeProject
DWORD
Sets the
predefined
value to the
"Unicode
Project"
property,
when a new
project is
created.
Unicode
language
operating
M O V I C O N
C O N F I G U R A T I O N
0 = New
projects will
not be saved
in unicode.
1 = New
projects will
be saved in
unicode.
General
StoreZippedProject
DWORD
Sets
predefined
value to the
"Zipped
Project"
property when
creating new
project is
created.
K E Y S
system:
1
32768
32768
0 = New
projects will
not be saved
compressed.
1= New
projects will
be saved
compressed.
ExportCE
CheckFileTimeAndDate
DWORD
Enables data
control of files
while
exporting
projects in
WinCE.
0 = Disabled
1 = Enabled
General
DefaultNewNumInput
DWORD
Sets the
predefined
byte number
value for the
Input area
(shared area),
when creating
a new
project.
Note:
minimum
value = 10.
General
DefaultNewNumOutput
DWORD
Sets the
predefined
byte number
value for the
Output area
(shared area),
when creating
a new
project.
Note:
713
M O V I C O N _ P R O G R A M M E R _ G U I D E
minimum
value = 10.
General
DefaultNewNumFlag
DWORD
Sets the
predefined
byte number
value for the
Flag area
(shared area),
when creating
a new
project.
Note:
minimum
value = 10.
32768
General
MaxStatObjects
DWORD
Max. number
of Handle
objects used
for project
statistics
when running
projects from
the
developing
environment.
1000
General
MaxArraySize
DWORD
Max. size to
be obtained
by variables
in byte arrays
with fixed
lengths.
4096
General
DisableDockedAnimation
DWORD
Disables the
docked
window
animations.
Therefore,
when the
mouse is
positioned a
tab, the
corresponding
window will
appear on
screen
already open.
0 = Docked
window
animation is
disabled.
1 = Docked
window
animation is
enabled.
Note:
Animations of
these
windows
remain
disabled when
714
M O V I C O N
C O N F I G U R A T I O N
K E Y S
working in a
server
terminal
session or
when the
symbol library
window is
open.
Softkey
General
Trace
DWORD
MaxVariableToOpenLightDBVariable DWORD
Setting this
value to "1"
will enable the
"SoftKey.Log"
log file
registration in
the
"C:\Windows"
folder.
Value
Type
Description
Default
Win32 Win
/64
CE
General
TooltipTimeAutoPop
DWORD
5000
General
TooltipTimeInitial
DWORD
200
General
UsePCSpeaker
DWORD
715
M O V I C O N _ P R O G R A M M E R _ G U I D E
General
AlarmSound
STRING
General
CheckCoveredOnClick
DWORD
General
ShowTooltipPreview
DWORD
'Alarm.
wav'
TooltipTimeFadeIn
DWORD
General
TooltipTimeFadeOut
DWORD
716
M O V I C O N
General
BlinkLedKeyboard
DWORD
C O N F I G U R A T I O N
K E Y S
0 = Blink disabled
1 = Blink enabled
Note:
Activating the blink might
compromise application
stability in devices which do
not use standard drivers for
managing keyboards.
General
BlinkTypeFast
DWORD
500
General
BlinkTypeMedium
DWORD
1000
General
BlinkTypeSlow
DWORD
2000
General
NumberShade
DWORD
Win32/
64:
64
WinCE:
16
General
BrightnessOffset
DWORD
50
General
StepBrightness
DWORD
General
TraceCommentFont
SZ
MS
Sans
Serif
General
TraceCommentFontSize
DWORD
Note:
The size of the window on
screen is in relation to this
value. The size "8" is the
minimum size for the
default font. For reduce the
window dimension it's
necessary to use a different
font, such as the "Small
Font".
717
M O V I C O N _ P R O G R A M M E R _ G U I D E
General
DBFilterFont
SZ
MS
Sans
Serif
General
DBFilterFontSize
DWORD
Note:
The size of the window on
screen is in relation to this
value. The size "8" is the
minimum size for the
default font. For reduce the
window dimension it's
necessary to use a different
font, such as the "Small
Font".
General
MDITabs
DWORD
General
MDITabsAutoColor
DWORD
General
NumericPadFont
SZ
MS
Sans
Serif
718
M O V I C O N
General
NumericPadFontSize
DWORD
C O N F I G U R A T I O N
K E Y S
Win32/
64/CE:
14
PocketP
C:
8
General
AlphaNumericPadFont
SZ
MS
Sans
Serif
General
AlphaNumericPadFontSi
ze
DWORD
Win32/
64/CE:
14
MS
Sans
Serif
Win32/
64/CE:
14
PocketP
C:
8
General
GetPasswordFont
SZ
General
GetPasswordFontSize
DWORD
PocketP
C:
8
NOTE:
the image on the top
left of the password
window will not appear
if this key is used.
This will avoid any
overlapping of edit
boxes and texts of in
the window when
changing size
719
M O V I C O N _ P R O G R A M M E R _ G U I D E
General
PasswordExpiredFont
SZ
MS
Sans
Serif
Win32/
64/CE:
14
NOTE:
the chosen font type
must support the sizes
set in the
"PasswordExpiredFont
Size" value
the image on the top
left of the password
window will not appear
if this key is used.
This will avoid any
overlapping of edit
boxes and texts of in
the window when
changing size
General
PasswordExpiredFontSi
ze
DWORD
PocketP
C:
8
NOTE:
the image on the top
left of the password
window will not appear
if this key is used.
This will avoid any
overlapping of edit
boxes and texts of in
the window when
changing size
General
AlarmCommentFont
MS
Sans
Serif
General
AlarmCommentFontSiz
e
default
'8'
General
ShowSIP
DWORD
MouseCursor
Visible
DWORD
720
M O V I C O N
General
DontUseDecorativeFont
DWORD
C O N F I G U R A T I O N
K E Y S
0 = Decorative fonts
1 = No Decorative fonts
Note:
When this parameter is set
at 1, the following attributes
are forced when a new font
is created:
lfOutPrecision=OUT_RASTE
R_PRECIS
lfClipPrecision=CLIP_STROK
E_PRECIS
lfQuality=DRAFT_QUALITY
General
ScrollLastAlarmText
DWORD
General
ShowPad
DWORD
General
UseMouseGestureOnSc
reen
DWORD
Zoom In
Zoom Out
Zoom To
Reset Zoom
Refresh
721
M O V I C O N _ P R O G R A M M E R _ G U I D E
General
EnableSysTrayMessage
DWORD
Platform
SymbolsPath
SZ
OldStretchImageSize
DWORD
General
HighQualityStretchIma
ges
DWORD
722
M O V I C O N
C O N F I G U R A T I O N
K E Y S
General
NoAlarmStatusOnACK
DWORD
General
UseGroupDescription
DWORD
Note:
The symbol name has
priority over the description
in build 1056 and onwards;
while previous versions
gave priority to the
symbol's description.
Therefore you will need to
set this key to value 1 when
wishing to restore previous
behaviour.
General
ReloadResources
DWORD
723
M O V I C O N _ P R O G R A M M E R _ G U I D E
RowsOneColor
DWORD
General
Restore3DButtonLook
DWORD
BasicScript
EscapeKeyDownFreeUI
DWORD
General
SelectAllTextOnEdit
DWORD
General
724
WebServiceClientBlockUI
OnLoading
DWORD
M O V I C O N
C O N F I G U R A T I O N
K E Y S
Value
UseRegistry
Type
DWORD
Description
Enables use of Windows
configuration registry to search
for installed OPC Servers. This
shows listed those OPC Server
1.0 which still used this method.
Defaul
t
Win32 Wi
/64
nCE
DeadSocketTimeout
DWORD
General
MaxTimeStartupDrivers
DWORD
5000
General
DontRemoveOPCItems
DWORD
OPCClient
WriteMaxBuffer
DWORD
1 = buffer management is
disabled.
725
M O V I C O N _ P R O G R A M M E R _ G U I D E
Value
Type
Description
Default
Win32
/64
Win
CE
General
ODBCQueryTimeOut
DWORD
15
General
ODBCLoginTimeout
DWORD
15
General
TimeToWaitAfterODBCError
DWORD
Waiting Time in
seconds before
retrying a command
towards the database
which generated error.
10
General
ODBCMaxReadingChars
DWORD
2048
General
MaxLogEntries
DWORD
100
General
MaxLogFiles
DWORD
10
726
M O V I C O N
General
IMDBMaxHMemory
DWORD
C O N F I G U R A T I O N
K E Y S
String =
Microsoft.
SQLSERV
ER.MOBIL
E.OLEDB.
Win32/64
:
1677721
6
WinCE:
4194304
IMDBMaxLMemory
DWORD
Win32/64
:
6710886
4
WinCE:
4194304
Trace
DWORD
Enabling of registration
in the OPC Client log of
information relating to
events received for
value change items
and items written to
OPC servers.
0 = Only base
information is traced.
1 = All information is
traced.
General
ADOCEProvider
SZ
727
M O V I C O N _ P R O G R A M M E R _ G U I D E
3.0
General
ADOCEDataSourceExt
SZ
.sdf
General
ODBCTokenForSpaces
SZ
[]
BasicScript
Trace
DWORD
Value
General
728
MaxAppInstances
Type
DWORD
Description
Maximum number
of application
instances which
can be executed
at the same time.
0 = no instances
will be started up.
Default
100
Win32
/64
Win
CE
M O V I C O N
General
ILSleep
DWORD
C O N F I G U R A T I O N
Time in
milliseconds
between the
execution of one
group of
instructions and
the next. The
group of
instructions' size
is set with
"MaxILInstruction"
parameter.
K E Y S
Win32/64:
10
WinCE:
50
Note:
In cases where
the number of
instructions in an
object's Il logic is
lower than this
value, the sleep
time set will still
be respected.
General
MaxILInstruction
DWORD
The number of
instructions
processed before
sleep time goes
into action, equal
to the value set in
the "ILSleep"
parameter.
100
General
ILLogicPriority
DWORD
Priority of the
thread which
processes the
project's IL logic.
This parameter
has no influence
on the priority
with which the IL
logic contained in
the screen or
object is
processed. This
value can be set
from 0 to 255,
where 0 is given
to the project's IL
logic with the
highest priority
over the rest.
Win32/64:
0
WinCE.
255
Note:
WinCE is a
multithreading
and determinstic
operating system,
therefore when
too many high
priorty project IL
logic will block all
the other O.S.
threads which
have lower
priorties.
729
M O V I C O N _ P R O G R A M M E R _ G U I D E
General
TimerEventFrequence
DWORD
VBA design
"OnTimer" event
execution
frequency. The
value entered
corresponds to
the number of
times which the
procedure must
be executed a
second.
Movicon PDF
Writer
Note:
Values 1 to 10 are
allowed.
General
InstallComponents
DWORD
Enables the
installation and
registration of the
ADOCE and SQL
Server CE optional
components at
the application
startup.
0 = the ADOCE
and SQL Server
CE components
are installed and
registered only
when the project
being run needs
them.
1= the ADOCE
and SQL Server
CE components
are installed and
registered at the
application startup
with any project.
General
DisablePublicSymOnDesign
DWORD
General
730
PdfPrinter
SZ
M O V I C O N
General
PdfViewer
SZ
C O N F I G U R A T I O N
K E Y S
Value
UseLFH
Type
DWORD
Description
Enabling the use of
Windows functionalities
called LFH (Low
Fragmentation Heap,
available only for some
Windows versions). This
functionality allows memory
to be used more efficiently.
Default
Win32/
64
Win
CE
MaxMemoryLoad
DWORD
General
MaxDTMessagesPurge
DWORD
20
General
MaxProcessingLogLine
DWORD
100
731
M O V I C O N _ P R O G R A M M E R _ G U I D E
Win32/64:
1
General
SleepCounter
DWORD
Application performance
optimization value.
General
GeneralTimeout
DWORD
General
MaxSymbolCache
DWORD
10000
0 = Disabled
0 = Max. Num. of objects
that can be put in the
cache
General
General
UseOffScreenMem
MaxCacheFont
DWORD
DWROD
0 = Cache manager
disabled
Note:
The font cache keeps a map
to speed things up in the
most simplest way
possible. However, some of
the most common font
styles are also managed in
732
WinCE:
0
M O V I C O N
C O N F I G U R A T I O N
K E Y S
General
FloatingPointPrecision
DWORD
Some Examples:
6 figure default
precision:
The "100.000,12"
floating point value
is converted into
"100.000" text,
because "0,10"
difference has not
meaning.
The "5200908"
floating point value
is converted into
"5200910" text,
because the
difference of "2"
has no meaning.
8 figure custome
precision:
The "100.000,12"
floating point value
converted into
"100.000,12" text,
therefore not
precision is lost in
this conversion.
The "5200908"
floating point value
is converted into
"5200908" text,
therefore not
precision is lot in
this conversion.
This value will also be used
for recording values with
floating points on
733
M O V I C O N _ P R O G R A M M E R _ G U I D E
General
MaxAvailVirtual
DWORD
5000000
Note:
Please refer to the manual
for further information on
how resources are managed
in a "low memory
condition".
General
MaxGestureSpeedRate
DWORD
200
Value
HKEY_CURRENT_USER\Software\V
oice\VoiceText\Local PC
HKEY_CURRENT_USER\Software\
Voice\
VoiceText\
Local Computer
734
Mode
Mode
Type
BYNAR
Y
BYNARY
Description
Default Win32
/64
Win
CE
-
M O V I C O N
C O N F I G U R A T I O N
K E Y S
Value
Type
Description
Default Win32
/64
Win
CE
VSSSettings
UserName
SZ
User name to be
used for connecting
to the SourceSafe
database. If not
specified the name
of the user logged in
the operating
system will be used.
The default value is
an empty string.
""
VSSSettings
Password
SZ
Password to be used
for connecting to the
SourceSafe
database. Must
coincide with the
one set for the
SourceSafe User.
The default is an
empty string.
""
VSSSettings
DefaultPath
SZ
""
735
M O V I C O N _ P R O G R A M M E R _ G U I D E
VSSSettings
AutoCheckIn
DWORD
Consent disablement
of Auto check of
resources when
project closes. The
automatic check is
disabled when the
key value is set to
zero.
VSSSettings
DefaultRoot
SZ
""
VSSSettings
SymbolGallery
SZ
Name of the
SourceSafe project
for the symbol
library. The default
value corresponds to
the name of the
product followed by
the "symbols" suffix.
The same folder tree
structure, with the
various symbol
categories filed in
the installation
folder in the
computer, will then
be created in the
SourceSafe project.
""
VSSSettings
CheckOutCommen
t
DWORD
Consents the
SourceSafe dialog
window to be
displayed for
entering a comment
every time a "Check
Out for Edit..."
command is
executed in a
project resource.
VSSSettings
CheckInComment
DWORD
Consents the
SourceSafe dialog
window to be
displayed for
entering a comment
every time a "Check
In" command is
executed in a
project resource.
736
M O V I C O N
VSSSetting
s
Enabled
DWORD
C O N F I G U R A T I O N
K E Y S
Valore
DeviceInstallPath
Tipo
SZ
Descrizione
Path used for
creating the
"InstallDir"
value in the
Windows CE
configuration
registry.The
"InstallDir"
value
contained the
path in which
the runtime
has been in
installed and is
created from
the product
installation
packet. Gets
used on
project
Start/Stop
command.
Default
SOFTWARE
\Apps\Prog
ea
Automation
MovCE
Win32
/64
Win
CE
-
737
M O V I C O N _ P R O G R A M M E R _ G U I D E
Platform
DeviceExecutable
SZ
Name of
runtime
application
installed in the
Windows CE
desvice. Gets
used on
project
Start/Stop
command.
MovCE.exe
Platform
LocalDriverDeviceSetup
SZ
Relating path
where files are
searched for
communication
driver setups.
MovCESetu
p
Platform
LocalPocketPCSetupPath
SZ
Relating path
where files for
PocketPC
application
setups are
searched for.
This path is
used when the
project Startup
command fails
and consents
to finding the
installation cab
file for
Windows CE
pocketPC
platforms.
MovCESetu
p\Movce.PP
C.ini
Platform
LocalHPCDeviceSetup
SZ
Relating path
in which files
for setting up
applications
for the SDK
Standard
platform are
searched for.
This is used
when the
project's
Startup
command fails
and consents
the installation
cab file search
for Windows
CE SDK
standard
platforms.
MovCESetu
p\Movce.S
SDK.ini
Platform
DeviceBootFile
SZ
Name of the
boot file. This
is used after
project
uploading
during the
search for the
boot file.
\MovCE.bo
ot
738
M O V I C O N
ExportCE
CheckFileTimeAndDate
C O N F I G U R A T I O N
K E Y S
739
M O V I C O N _ P R O G R A M M E R _ G U I D E
740
At project startup the General Logic is run and continues running cyclically until the project
stops. The Local Logic, however, is run only when the object containing it is active, ie. when
loading a screen in RAM
The General Logic run has priority over the Local Logic
The Logic is edited through the "Logic Explorer" window which displays the logic associated to the
component selected at that moment.
741
M O V I C O N _ P R O G R A M M E R _ G U I D E
The Movicon Logic Editor should be used as a normal Windows standard text editor. The
programmer, while inserting the program, should naturally respect the programming syntaxes when
entering logic instruction for variable combinations.
The programming has been made easier by the possibility to insert all the
instruction by using the appropriated commands from the Insert Menu
found in the 'Logic Explorer' window. This makes editing easier for the
not-so-expert programmer by guiding them through the necessary
procedures.
Any syntax errors made during programming unguided by the Insert Menu will be indicated and
highlighted in the compilation phase. However, you can use the 'Compile-Check Syntax' command
which is available from the 'Logic Explorer' window to check to see if there are any errors.
The opening of the Logic window determines the displaying of the empty editing area with the cursor
positioned at the top left. You can then proceed with writing the logic program by respecting the
Movicon Editor's programming syntaxes.
Program editing works with the ordinary procedures of a normal text editor, apart from the fact that
the programming syntaxes are automatically acknowledged and represented with default colors.
You are unlimited with the number of comment texts that can be written
as long as they are preceded at the beginning of the line with the '//'
character.
Access to the variables is only permitted by using the Variable's name. You
cannot access to variables through their absolute addresses (even when the
variables are mapped in the Input, Output and Flag shared areas).
The IL logic instructions have also been adapted to the AWL syntax of the Step7. Therefore some
instructions may be written in three different syntaxes: Movicon standard syntax, English Step7
syntax, German Step7 syntax. You can use on of these three syntaxes in mixed mode in the same
listed IL logic. For further information on the instruction please consult the relevant tables.
Unsupported Variables
Some variable types cannot be used in the Movicon IL Logic especially those listed below:
742
Double Variables (64 bit double precision): these variables cannot be used in as the
ACCU1 and ACCU2 registered in 32 bit
String and Byte Array type variables: these variables cannot be used as their format is
not supported in IL Logic
I L
L O G I C S
( I N S T R U C T I O N S
L I S T )
Variable Access
You can address variables in the IL Logic which have been declared in a different hierarchical level in
respect to that of the object in which the logic has been inserted, such a Father or Child project
RealTimeDB Variables with the same Local screen variable name. You can use the
'..\<VariableName>' and '<ChildProjectName>\<VariableName>' suffixes tor indicate the variables.
When the name of the variable is indicated only, a search is made for the context in which the logic
is executed.
743
M O V I C O N _ P R O G R A M M E R _ G U I D E
The jump label, which must always be preceded by the ":" character, can be either positioned at the
front or at the back of the jump instruction.
ATTENTION! the programmer must take care not to insert closed jump
loops otherwise this will block the General Logic with out any warning from
Movicon.
744
I L
L O G I C S
( I N S T R U C T I O N S
L I S T )
FLOAT
L KF 124,5
L TEMPER
*
T HT_TEMPERT
INT
Value
ACCU1
ACCU2
L VAR00001
L VAR00002
+
T VAR00003
345
89
345
89
434
434
0
345
89
89
434
31.2.6. Constants
In the IL Logic you can use numeric constants preceded by the following suffixes:
KD
KH
KF
VAR00001
=
745
M O V I C O N _ P R O G R A M M E R _ G U I D E
VAR00002
BE
VAR00003
BEC
746
Cycle_Machine
Start_Motor
Out_Motor1
I L
L O G I C S
( I N S T R U C T I O N S
L I S T )
31.3.2. OR Logic
To combine in parallel two Movicon binary variables together (boolean sum) you need to use the OR
or OR NOT instructions. The OR NOT instruction performs the OR operation with the associated
variable in negative (contact closed).
Example: to get "Out_Motore1" output when any one of "Start_Motor" and "Cycle_Machine" inputs
are at logic status '1' logic, you need to do as follows:
O
O
=
Cycle_Machine
Start_Motor
Out_Motor1
Ciclo_Auto
Start_Motor
Ciclo_Man
Start_Motor
Out_Motor1
Cycle_Machine
Start_Motor
Out_Motor1
Example 2: the 'Out_Motor1' variable goes to '1' only when both the 'Cycle_Machine' and
'Start_Motor' variables go to state '1' at the same time, after which it will remain at '1' until the
'Cycle_Machine' variable turns to state '0', independently of the 'Start_Motor' value.
A
A
S
Cycle_Machine
Start_Motor
Out_Motor1
AN Cycle_Machine
R Out_Motor1
747
M O V I C O N _ P R O G R A M M E R _ G U I D E
Start_Timer
T 1.30
There are 1000 timers available from 0-999. The Timers are 'local' logic, therefore each 'General'
and 'Local' logic provide 1000 timers for use. This means, for example, that the '0 Timer' can be used
internal the logic of each Movicon object without creating any malfunctioning.
Movicon
Instruct.
Step7
GER
Instruct.
U
Operands
Descriptions
Step7
ENG
Instruct.
A
AND
I,O,F,T,Not
Shared
OR
I,O,F,T,Not
Shared
Combination of OR logic
between binary variables.
Bit interrogation on signal
"1"
AND NOT
AN
AN
UN
I,O,F,T,Not
Shared
OR NOT
ON
ON
ON
I,O,F,T,Not
Shared
LATCH
I,O,F,T,Not
Shared
SET
I,O,F,Not
Shared
RESET
I,O,F,Not
Shared
Bracket AND
A(
A(
U(
Bracket OR
O(
O(
O(
748
I L
L O G I C S
( I N S T R U C T I O N S
L I S T )
JU
JU
SPA
LABEL
Unconditional jump to
specified label. The program
flow will be transferred to
the label position ":".
JUMP
Conditioned
JC
JC
SPB
LABEL
Timer
= T 0.10
749
M O V I C O N _ P R O G R A M M E R _ G U I D E
//
//
//
//
Movicon
Instuct.
L, LC
Step7
ENG
Instuction
L, LC
Step7
GER
Instuction
L, LC
LOAD
TRANFER
T, TC
T, TC
T, TC
AND Word
AW,
AWC
AW, AWC
UW, UWC
750
Operand
Description
Byte,
Word,
DWord
from any
area.
Constants
KD,KH,KF
Byte,
Word,
DWord
from any
area.
I L
L O G I C S
( I N S T R U C T I O N S
L I S T )
OR Word
OW,
OWC
OW, OWC
OW, OWC
OR
Exclusive
XOW,
XOWC
XOW,
XOWC
XOW,
XOWC
ACCU
Exchange
TAK,
TAKC
TAK, TAKC
TAK, TAKC
Content
of
two
accumulators Accu1 and
Accu2 exchanged (Accu1
goes to Accu2 and vice
versa).
TAKC = Accumulators
exchanged if CLR = 1
Complement
1
KEW,
KEWC
INVI,
INVIC
INVI,
INVIC
Calculation
of
the
Complement to "1" (NOT
operation) on contents of
accumulator Accu1. The
result is placed in Accu1.
KEWC = Complement to 1
upon CLR
BCD
Convers.
BCD,
BCDC
ITB, ITBC
ITB, ITBC
Decimal
conversion
DCB,
BCDC
BTI, BTIC
BTI, BTIC
Swap Byte
SWAPB,
SWAPBC
CAW,
CAWC
TAW,
TAWC
Swap Word
SWAPW,
SWAPWC
CAD, CADC
TAD, TADC
751
M O V I C O N _ P R O G R A M M E R _ G U I D E
Example: If you wish to transfer the 255 numeric constant to the "Data1" variable only when the
"Data2" variable is equal to zero or on the contrary, if you wish to transfer the 0 numeric constant to
the "Data1" variable you need to set as follows:
L Data1
L KD 0
==
L KD 255
TC Data2
//
//
//
//
//
L Data1
L KD 0
><
TC Dato2
//
//
//
//
The compare operations are largely employed in all applications. The outcome of the comparison,
which always determines a CLR, can activate any successive instruction or command type.
Movicon
Instruct.
Step7 ENG
Instruction
Step7 GER
Instruction
Equal
==
==
==
"Equality" comparison
between the data contained
in the two accumulators. If
Accu1 = Accu2, CLR is set at
1.
Different
><
><
><
"Difference" comparison
between the data contained
in the two accumulators. If
Accu1 is different from
Accu2, CLR is set at 1.
Greater
>
>
>
Lower
<
<
<
Greater
or Equal
>=
>=
>=
Lower or
Equal
<=
<=
<=
752
Operand
Description
I L
L O G I C S
( I N S T R U C T I O N S
L I S T )
Data1
Data2
Data3
Movicon
Instruct.
Step7 ENG
Instruction
Step7 GER
Instruction
Operand
Description
Sum
+, +C
+, +C
+, +C
Subtraction
-, -C
-, -C
-, -C
Moltiplication
*, *C
*, *C
*, *C
Division
/, /C
/, /C
/, /C
753
M O V I C O N _ P R O G R A M M E R _ G U I D E
I, IC
Byte,
Word,
DWord
from any
area.
Decrement
D, DC
Byte,
Word,
DWord
from any
area.
Increment
ACCU1
INC
INC
INC
ACCU1 increment by
specified quantity (e.g. to
increment ACCU1 by 4,
the syntax is = INC 4 )
Decrement
ACCU1
DEC
DEC
DEC
ACCU1 decrement by
specified quantity (e.g. to
decrement ACCU1 by 4,
the syntax is = DEC 4 )
Shift to
Right
>>, >>C
SRD, SRDC
SRD, SRDC
Shift to Left
<<, <<C
SLD, SLDC
SLD, SLDC
754
I L
L O G I C S
( I N S T R U C T I O N S
L I S T )
//
//
//
//
Movicon
Instruct.
Step7 ENG
Instruction
Step7 GER
Instruction
Operand
Description
Floating
Point
FLOAT
DTR
DTR
Preset for
calculations with
numbers in
floating point
format. The
following
mathematical
numbers will be
considered in
floating point
format. This is a
modal
instruction and
can be
deactivated
using INT
instruction.
Integer
INT
RND
RND
Preset for
calculation with
integers. The
following
mathematical
numbers will be
considered
integers. Active
by default
unless otherwise
specified.
755
M O V I C O N _ P R O G R A M M E R _ G U I D E
Sin
SIN,
SINC
SIN, SINC
SIN, SINC
Calculation of
Sine of number
contained in
Accu1. The
result is placed
in Accu1.
The value of the
function is
express in
Radiant.
Cosin
COS,
COSC
COS, COSC
COS, COSC
Calculation of
Cosine of
number
contained in
Accu1. The
result is placed
in Accu1.
The value of the
function is
express in
Radiant.
ArcSin
ASIN,
ASINC
ASIN,
ASINC
ASIN,
ASINC
Calculation of
ArcSine of
number
contained in
Accu1. The
result is placed
in Accu1.
ArcCosin
ACOS,
ACOSC
Tangent
TAN,
TANC
ArcTangent
Hyperbolic
Sin
756
ATAN,
ATANC
SINH,
SINHC
ACOS,
ACOSC
ACOS,
ACOSC
Calculation of
ArcCosine of
number
contained in
Accu1. The
result is placed
in Accu1.
TAN, TANC
TAN, TANC
Calculation of
Tangent of
number
contained in
Accu1. The
result is placed
in Accu1.
The value of the
function is
express in
Radiant.
ATAN,
ATANC
ATAN,
ATANC
Calculation of
ArcTangent of
number
contained in
Accu1. The
result is placed
in Accu1.
Calculation of
Hyperbolic Sine
of number
contained in
Accu1. The
result is placed
in Accu1.
I L
L O G I C S
( I N S T R U C T I O N S
L I S T )
Hyperbolic
Cosin
COSH,
COSHC
Calculation of
Hyperbolic
Cosine of
number
contained in
Accu1. The
result is placed
in Accu1.
Hyperbolic
Tangent
TANH,
TANHC
Calculation of
Hyperbolic
Tangent of
number
contained in
Accu1. The
result is placed
in Accu1.
Exponential
EXP,
EXPC
Power
POW,
POWC
Logarithm
"e"
LOGE,
LOGEC
Logarithm
10
LOG,
LOGC
Square
Root
SQRT,
SQRTC
EXP, EXPC
EXP, EXPC
Exponential
calculation of
natural number
"e" with
exponent
contained in
Accu1. The
result is placed
in Accu1.
Exponential
calculation of
Accu1 raised to
the power of
Accu2.
The result is
placed in Accu1.
LN, LNC
LN, LNC
Calculation of
natural
logarithm (base
"e") of number
contained in
Accu1. The
result is placed
in Accu1.
Calculation of
base 10
Logarithm of
number
contained in
Accu1.
The result is
placed in Accu1.
SQRT,
SQRTC
SQRT,
SQRTC
Calculation of
square root of
number
contained in
Accu1.
The result is
placed in Accu1.
757
M O V I C O N _ P R O G R A M M E R _ G U I D E
758
32. Synapses
The synapse allow complex or not so complex logic to
be entered within screens using graphical links between
various objects.
Movicon has a powerful engine for processing logic internally within screens. The Synapse are tools
left at the programmer's discretion for entering this type of logic. Their use permits the programmer
to graphically connect objects on screen to each other and program logic using basic script code
associable to each object.
Each object can be configured with a determined number of inputs and outputs (the synapse), which
will be linked to other symbols using the connector objects. The input and output status can be read
within the basic script code of each object and the appropriate output values can be written as a
consequence and propagated to the other graphically linked objects.
Each symbol containing synapse can be saved in the Symbol Library and reused in other projects.
There are already fully working symbols containing synapse logic in this library, among which you
will find components for creating "PIDs" for instance.
Creating the graphics: this phase consists of creating the graphical part then after having
inserted the objects you need on screen, you should proceed with creating the Synapse (or
connector points) to be associated to each object. This points will then be linked to the
synapse of the various objects using the connector object (see "Inserting Synapse" and
"Connecting Synapses")
Inserting Script Code: this phase consists of inserting basic script code internal each object
to which one or more synapse has been associated. This will permit information to be
transmitted between the various objects during runtime mode (see "Synapse Logic
Programming")
The graphical part is the most easiest to accomplish, compared to inserting code in each of the
objects needing you to have sufficient know how on the basic script functions (see "Synapse Logic
Programming"). However, programmers with little know how can still complete these tasks easily by
using the Synapse symbols from the Symbol Library, which are already tested, functionable and
modifiable in all their parts. After having inserted a symbol containing synapse from the Symbol
Library, you can replace the variables, used within, with those from the project you are developing.
759
M O V I C O N _ P R O G R A M M E R _ G U I D E
Add: this button adds a new synapse, by associating it to the selected object.
Upon pressing this button another dialog window will open to allow you to
configure the synapse as described below.
Edit: this button allows you to edit the synapse selected in the list. Upon
pressing this window the same dialog window used for inserting a new synapse
will show as the editable properties are the same ones at this moment.
Delete: this button allows you to delete the synapse selected in the list and
therefore its association to the object selected.
As mentioned above, the "Add" button is used for inserting a new synapse which will be configured
to define its type and graphical aspect. Once a synapse has been created it can then be edited
afterwards using the "Edit" command. The Synapse configuration window is as shown below:
Name
760
S Y N A P S E S
This editbox is used for assigning the synapse with a name. Its name must be unique and different
from the other synapses defined for the object you have selected. An error message will appear, If
you insert a name that has been already given to another synapse.
Type
This selection box permits you to establish whether the synapse should be input or output:
Input: the synapse is considered as an input point for the object in which it is inserted and
can be connected to other output synapse in the same screen.
Output: the synapse is considered as an output point for the object in which it is inserted
and can be connect to other input synapse in the screen.
Position
These controls are needed for establishing the synapse's position, presented by a small colored dot,
within the object in which it has been inserted. The position is provided with a selection dot in which
to apply the synapse and any eventual offset in the X and Y coordinates for moving the dot within
the object. The position options are:
top left
top right
bottom right
bottom left
at the top
on the right
at the bottom
to the left
in the middle
You must consider that the synapse's initial position is always on the edge of the rectangle that
surrounds the object it is associated to. However, you can associate a movement offset starting from
this initial position:
X: this editbox establishes the synapse's horizontal movement. This movement is always
towards the right with positive numbers and towards the left with negative numbers,
independently from the position assigned to the synapse.
Y: this editbox establishes the synapse's vertical movement. This movement is always
towards the bottom with positive numbers and towards the Top with negative numbers,
independently from the position assigned to the synapse.
by Pixel: The synapse's offset will be calculated in pixels when this check box is enabled.
It is not possible to position the synapses outside the symbol's perimeter (of
the surrounding rectangle). In cases where a X and Y offset has been
assigned making the synapse go outside the object, it will still be kept
inside.
Back Color
This button is used for assigning the synapse a color. When clicking this button a color will show
enabling you to pick the one desired. By assigning different colors to the synapses allows you to
visually tell Input and Output synapses apart.
Show Name
This option box is used for displaying the name of the assigned synapse at the side of the small
coloured circle. The name's position follows the position assigned to the synapse and the text is
positioned inside the symbol in which the synapse has been associated.
761
M O V I C O N _ P R O G R A M M E R _ G U I D E
This diagram below shows connected synapse objects. The "Out" synapse are in yellow and the "IN"
synapses are in Blue.
If the objects are moved, their Connector lines will change position and shape accordingly. Below is
described how the synapse connectors are inserted or modified:
Adding Connectors
The "Connector" objects are available from the Toolbox "Advanced Shapes" group. Unlike other
objects, these objects remain valid while being inserted until another object type is selected or
restoring the "Pointer" in the toolbox. You will find that this will speed up synapse connecting
operations of the various drawings and symbols on screen.
A new connector must always start from an Out synapse and finish at an In synapse. A grey square
will appear within the synapse to indicated that it is selectable, on the contrary a no entry sign will
appear to indicate that the Connector cannot be connected at that point, or that there is no synapse,
or the synapse is not the input/output type consented at that moment.
It is important to remember that each synapse can be connected with more than one connector and
therefore more than one object. This allows one single out synapse value to be shared with more
objects at the same time, simplifying code which controls logic.
Modifying a Connector
Modifying a connector inserted on screen can be done by simply selecting it and dragging one of its
ends to another synapse of the same type (input/output. In order to do this, you need to first
restore the point if not already done so, using the "Pointer" command from the toolbox. After having
clicked on the connector line to be changed, if you move on to one of the two synapse connected,
the mouse pointer will change shape indicating that the connector can be dragged. Press and keep
pressed the mouse key to drag the connector end to another synapse.
Deleting a connection
In order to delete a connection restore the mouse pointer, if not done so already, using the 'Pointer'
command from the toolbox. Select the connector to be deleted and cancel it with the "Canc"
keyboard key or use the "Delete" command from the Edit menu which appears with a right mouse
click.
Deleting an object containing connected synapse will automatically delete all of the Connectors in the
object.
Connector Properties
A Connector object is a normal line with all the effects and properties available for this type of
object. Therefore, please refer to the relating section describing object properties.
762
S Y N A P S E S
To modify the connector properties, select the one desired and then use its property window.
763
M O V I C O N _ P R O G R A M M E R _ G U I D E
Properties:
SynapseBackColor (DrawCmdTarget Property)
SynapseValue (DrawCmdTarget Property)
SynapseValueFromID (DrawCmdTarget Property)
SynapsisVisible (DrawCmdTarget Property)
SynapsisExecution (SynopticCmdTarget Property)
Methods:
GetConnectorObjectConnected (DrawCmdTarget Function)
GetNumConnectionsOnSynapse (DrawCmdTarget Function)
GetNumSynapsis (DrawCmdTarget Function)
GetObjectConnectedOnSynapse (DrawCmdTarget Function)
GetSynapseName (DrawCmdTarget Function)
GetSynapsePoint (DrawCmdTarget Function)
HasSynapsis (DrawCmdTarget Function)
IsSynapseConnected (DrawCmdTarget Function)
SynapsePassExecution (DrawCmdTarget Function)
GetObjectByUniqueID (SynopticCmdTarget Function)
SetSynapsisVisible (SynopticCmdTarget Function)
764
S Y N A P S E S
It is clear from this chart that only one connector object belonging to one group has been set in a
tab order to allow quicker order selecting. The final execution flow is therefore determined by the
logic connections created between the various synapse, but is given execution priority over those
groups containing connector objects assigned given lower tab orders compared to the others.
The command to start the synapse logic execution can be given in different ways as follows:
Synapse Logic Execution form Screen
There are two execution properties available in the screens, which consent you to manage the
synapse logic execution start:
Execute Synapse: When enabled, this property will active the execution of any synapse
logic upon Screen load. The logic will only be executed once.
Synapses Cyclic Execution: When enabled, this property will activate the cyclic execution
of any synapse logic when the Screen is active. The synapse logic needs to be executed at
least once before the cyclic execution activates, therefore you will need to enable the
"Execute Synapse" property as well or invoke the start command through one of the other
methods described below.
765
M O V I C O N _ P R O G R A M M E R _ G U I D E
Synapse Visibility
You may find it useful not to have the synapse and their connectors visible on screen during the
runtime mode. This can be done by disabling the screen's "Show Synapses" style property, or by
using the appropriated "SetSynapsisVisible" basic script function.
766
Logicon: is a soft logic project development which has ben implemented in Movicon and
therefore can be opened as a Movicon MDI window.
ProConOs: is a soft logic runtime module. Once the project has been created it must be
compiled and transferred to this module for running. ProConOs is available for both Windows
32/64 bit and WinCE versions.
ProConOs OPC Server: is the soft logic's OPC Server which consents tags to be exchanged
between the ProConOs runtime and Movicon.
767
M O V I C O N _ P R O G R A M M E R _ G U I D E
The soft logic project will be created with the same of the Movicon project but with the ".mwt"
extension. In addition, a new folder will be created with the same name of the project within which
all the soft logic project files will be inserted.
The ".mwt" project file and the soft logic folder must have the
exact same name of the Movicon project.
There are two "Soft Logic" resource command selections available in the "Command" pane in the
"Project Explorer" window:
Soft Logic OPC Server Configurator
This command allows you to open the ProConOS OPC Server configuration window. The ProConOS
OPC Server is the channel which consents Movicon application tag communication with Soft Logic.
The OPC Server must therefore be configured to allow Movicon projects and the ProConOS SoftLogic
to communicate with each other correctly (see "ProConOs OPC Server Configuration").
Synchronization Variable Database
This command allows the Soft Logic tags to be synchronized with those of the Movicon project. Tags
can be synchronized each time modifications are done to the global tag table in the Soft Logic. This
synchronization consents missing tags to be imported within the Movicon project and, for each tag
imported, the dynamic link is set automatically to the tag in the Soft Logic (see "Variable Database
Synchronization").
Soft Logic Compilation: this command is activated each time the Movicon project is saved
only on the condition that the Soft Logic editor be previously opened at least once in the
opened project.
Soft Logic Compilation, Stop, Upload and Restart: this command is activated every
time the Movicon project switches from design to run mode only on the condition that Soft
Logic editor be previously opened at least once in the opened project. Movicon manages a 10
sec. timeout when uploading the SoftLogic after which the project is started even when no
Upload termination notifications have been received from the Soft Logic.
768
S O F T
L O G I C
resource. Each resource can be set connect to a different Soft Logic or PLC. The name or the
resource must be the same one set in the ProConOs OPC Server.
Modifications to the OPC Server name do not require you to re-enter or
modify the dynamic addresses of each already imported tag. Modifications
will be displayed automatically and applied when the project is saved.
Default Variable Group Name
This edit box permits you to customize the default name to be used for the Movicon Tag group which
contain the Soft Logic tags. Other sub-groups will be created within this group reflecting the same
group hierarchy in the Soft Logic.
When importing tags automatically, Movicon will insert the OPC link to the Soft Logic tags in the in
the "Fixed I/O address" tag properties. During this phase you will not be able make tag selections to
be imported as all tags existing in the RealTimeDB will be imported.
Once the Soft Logic project has been created you will not be able to import other Movicon variables.
Importing Soft Logic tags to the Movicon RealTimeDB
Importing soft Logic tags to Movicon can be done at any time using the "Synchronize Variable
Database" command from the "Project Explorer Window's command pane. This command gets
enabled automatically each time a tag's "OPC" option is enabled in the Soft Logic "Gobal Variables"
resource. If this command should become disabled, just enable the property of any Soft Logic
variable or check this option again. "Synchronize Tag Database command activation will import all
those Soft Logic tags with enabled OPC and not already present in the Movicon RealTimeDB. The
imported tags will be created with the same names of those from the Soft Logic and with the "Fixed
I/O address" properties already compiled with the corresponding OPC links. These tags will then be
769
M O V I C O N _ P R O G R A M M E R _ G U I D E
inserted in a tag group with the same name set in the "Nome Gruppo Tag di Default" property. Other
sub-groups will be created within this group reflecting the same group hierarchy in the Soft Logic.
New tags can be created in the Soft Logic using the "Data Types"
resource. These types of tags can be "ARRAY", "STRING" and
"STRUCT". The tags which have been declared with a "Data Type"
in a custom "Global Variables" resource will not be imported
automatically to the Movicon RealTimeDB.
Start the OPC configurator using the "Soft Logic OPC Server Configurator" command found in
the "Commands" drop down window at the bottom right of the "Project Explorer" window, or
from the Windows "Start - All programs - KW Software - ProConOS OPS server 2.1 desktop
OPC Configurator" menu. This configurator window will appear:
2.
Right click on the "OPCProject" and select "New Workspace..." or "Open Workspace..." if you
have a workspace already. This will open a browse window where you must select the Soft
Logic project in question. This will change the name of the "Workspace" to the project's
name.
Now right click on the project's name (Workspace) and ass a new resource using the "New
Resource..." command. Change the name of the new resource by inserting the one defined
in the Movicon "OPC Server Resource Name SoftLogic" property (or as an alternative you can
insert an name of your choice and then also insert it the Movicon "OPC Server Resource
Name SoftLogic" property. Keep the resource name selected and select the "ARM_L40" item
from the "Resource Type" list on the right.
3.
770
S O F T
L O G I C
4.
Click on "Settings..." button to open the dialog window below and select the communication
port option desired. If you don't have any field devices you can select "Simulation1" to test
the project in simulation mode. Otherwise select "TCP/IP" if communicating through Ethernet
and specify the device's IP address. Confirm with OK to close the window to go back to the
above window.
5.
Right click on the "OpcProject" item and invoke the "Save Workspace" command. This will
create a file with the resource name in the Soft Logic project folder (ie. "TestResource") with
the ".opc" extension containing the OPC settings. This file will the one used by the ProConOs
OPC Server for exchanging data with the field devices and the Movicon OPC Client.
In cases where a Windows CE device has to be used and therefore the OPC Server, the
ProConOs will be executed on the WinCE device, the ".opc" file ("TestResource.opc" as an
example) must be copied to the "OPCProjects" folder from the OPC Server ProConOs
installation folder in the WinCE device.
6.
771
M O V I C O N _ P R O G R A M M E R _ G U I D E
772
34. Index
35.
A
Accelerators
Accelerators Properties
Alarm Window
Alarm
Alarm
Alarm
Alarm
Alarm
Alarm
Alarms
Alarms Properties
B
Bugbase ......................................... 29
Buttons and Hot Regions
C
Charts
Charts ................................................394
Charts Settings ...................................395
Charts Properties
Chart
Chart
Chart
Chart
Child Projects
Client Profile
ComboBox
Alarms Commands...............................497
Change Language ................................504
Command List .....................................497
Help Commands ..................................504
Menu Commands .................................504
Report Commands ...............................505
Screen Commands ...............................514
Script Commands ................................512
System Commands ..............................518
Users Commands ................................520
Variables Commands ...........................521
Commands Schedulers
D
Data Loggers
773
M O V I C O N _ P R O G R A M M E R _ G U I D E
Historics
Hour Selector
DataLogger Window
Displays
Dynamic Variables
E
Embedded Screens
G
Gauges
Graphic Interface
Grid
H
Historical Log
774
I
IMDB
L
ListBox
Log Window
I N D E X
Menu
ODBC
Menu Properties
Menu
Menu
Menu
Menu
Menu's Project
N
Network Client Settings
Networking
OPC
P
Project Settings
Project Windows
Public Symbols
R
RAS
Recipes
775
M O V I C O N _ P R O G R A M M E R _ G U I D E
Recipes Properties
Registy of Windows
Reports
S
Scaling Variables
Screens
Screens Properties
776
SoftLogic
Strings Table
Structure of a Project
Structure Variables
Support
Symbols
I N D E X
Synapses
System Variables
T
Tool Bars
TraceDB Window
TraceDB
TraceDB
TraceDB
TraceDB
TraceDB
TraceDB
Trends
U
Updates .......................................... 29
User and Password
V
Variables (Tags)
Trends Properties
777
M O V I C O N 1 1
Movicon is a trademark of Progea, related to the HMI/SCADA platform entirely developed and
produced by Progea. 2012 All Rights reserved.
No part of this document or of the program may be reproduced or transmitted in any form
without the express written permission of Progea.
Information in this document is subject to change without notice and is not binding in any way for the
company producing it.
Via XX Settembre, 30
Tecnocity Alto Milanese
20025 Legnano (MI) Italy
Tel. +39 0331 486653
Fax +39 0331 455179
Email: [email protected]
778