Vtscadalevel2 Parte B
Vtscadalevel2 Parte B
Figure B-4 The Add New List dialog with a sample name.
4. Select OK.
The new list is visible and selected in the List Manager
5. Use the boxes in the right panel to select which application will be included in this
list.
Note: You must select applications for your list before closing the List Manager. An
empty list will not be saved.
6. Select OK to save your work.
The list is created and populated with applications. It may not seem like anything has happened,
but look again. The list navigation tools are now active, and you are viewing the default list, All
Applications. Your application still counts as one of "All Applications". Click any of the list nav-
igation tools to view the new list.
Adding an application to a list will activate (but not run) that application.
Manage the applications in a list
An application can belong to many lists. Every application will always be part of the "All Applic-
ations" list.
1. Open the List Manager dialog.
2. Select the list you want to manage.
(Illustrated in the previous set of instructions)
3. In the right panel, add or remove check marks beside application names.
Advanced • 292
B Advanced Configuration Topics
Figure B-6 Type a new name into the dialog that opens.
Delete a list
If you remove all the applications from the list it is deleted automatically. There is no such thing
as an empty list.
An easier method is to Select the Remove Lists tool below the panel of list names.
293 • Advanced
B Advanced Configuration Topics
For the majority of applications, there is no need to create extra alarm databases, but locations
that maintain large distributed systems might choose to do so. For those that do, it is possible to
create display groups so that alarms from several, but not all, databases can be viewed at the
same time.
Database groups are defined as an application property, AlarmDatabaseGroups. Multiple
groups can be defined within the single property, each with a list of databases. Separate the
groups with semi-colons and database names within each group by commas.
Property name: AlarmDatabaseGroups
Section: System
Value: Northeast Group:NorEast,NorWest;Southwest Group:SouWest, SouEast
Advanced • 294
B Advanced Configuration Topics
Section: System
Default: AlarmDatabaseGroups =
<ListFormats>
<Format name="AlarmStandard" label="AL_StandardFormatLabel">
<list name="History" label="AL_HistoryListLabel">
<Single>SingleSet1</Single>
<Double>DoubleSet1</Double>
</list>
... more list definitions...
</Format>
... more format definitions...
</ListFormats>
</AlarmList>
295 • Advanced
B Advanced Configuration Topics
l Each list definition within each ListFormat will contain two versions, Single and
Double. This selection is controlled by the operator by toggling the Row Height
option.
l The single version and the double version each specify a ColumnFormat.
l Two ListsFormats may each contain a list with the same name such as "History",
but these are separate definitions. Different column formats can be specified for
History (and any other list) in different ListFormats.
l ColumnFormats specify the display modules to be shown in the column cells, the
order of the columns from left to right and the default width of each column.
For example, an alarm popup uses the "PopupStandard" list format, which contains only one list:
"Unacked". In the Alarm Page, the default is to show the AlarmStandard format, containing His-
tory, Active, Unacked, etc, but if an operator chooses to view only the System Event DB, then
the "EventStandard" list format will be selected automatically limiting the selection to just the His-
tory list.
Application properties are used to set the text used for the labels of lists and columns in the user
interface. For example:
AL_HistoryListLabel = History
The column widths specified in the XML file are the initial default widths only. Once the alarm list
has been viewed by a user, the widths are retained for that user. Any further modifications to the
column sizes in the XML file will affect only new users who have never viewed the alarm list.
To test the column sizes, you muse either sign in as a new user, or delete the retained files and
reload the page. To delete the retained files, follow these instructions:
1. Switch to a different page so the alarm list isn't being displayed
2. Using a file explorer, navigate to the application's \Data\Retained folder
3. Filter this folder by *DrawAlarmList-AlarmList-ColWidths*
4. Delete all the files that match the filter
5. Switch to the page with the alarm list - the column widths should now match what
is in the XML file
Column Format Definitions:
The set of lists shown in the Alarm Page is predefined, but you may alter the appearance of any
list.
For each list, History, Active, etc. two sets of column formats are defined. Two are required so
that the operator may use the Row Height button to switch between a list with one item per
column and a list with (in some cases) two.
Advanced • 296
B Advanced Configuration Topics
In the ColumnFormats section of the XML file, these are given generic names. The display name
is set in the second section of the file. An example of the format follows:
<?xml version="1.0" encoding="ISO-8859-1"?>
<AlarmList>
<ColumnFormats>
<Format name="SingleSet1">
<Column width="160">AlarmCellX</Column>
<Column width="26">AlarmCellY</Column>
...
</Format>
<Format name="DoubleSet1">
<Column width="26">AlarmCellX</Column>
...
Each "<Format" section sets the columns to be included. Columns are displayed in the list from
left to right in the order found in the Format section.
The width sets the default size to be used by that column. Changes to column widths by the oper-
ator are stored on a per-operator, per-session basis, overriding your defaults. There are three
ways to specify the width of a column:
l Column width = "30". Sets the specific number of pixels to be used by the column.
l Column width = 30%. This column will occupy 30% of the area remaining after the
columns with specific width settings have been accounted for. The total of per-
centages should be 100 or less. See next option.
l No width specification. All columns with no width specification will share equally
the space remaining after columns with a specific or percentage width have been
accounted for.
The example text, "AlarmCellX", "AlarmCellY", etc. must be replaced, either by one of the
VTScada modules provided to format and display the contents of each cell in an alarm list, or by
a module of your own creation. See link under Related Information.
Example 1:
For the standard alarm page display of unacknowledged alarms, move the name and
description to the first column.
This will require a change of the ColumnFormat ordering, but the first step is to discover which
ColumnFormat is used by the Unacked list in a standard display. Fortunately, the names in the
XML file make this easy to find:
Under <ListFormats> find <Format name="AlarmStandard" ...> You can safely assume that this
is the standard format. Within that section, find the list named "Unacked":
<list name="Unacked" label="AL_UnackedListLabel">
<Single>SingleSet2</Single>
<Double>DoubleSet2</Double>
</list>
From the above, it is clear that ColumnFormats SingleSet2 and DoubleSet2 are used. These
can be copied from the original file, together with enclosing XML specifiers and reordered. The
file you save to your application as "AlarmListFormats.XML" should look like the following. Only
the two column formats are being overridden in your application. All others will continue to use
the default XML file. Don't forget to import file changes to add your version of the XML file to the
application.
297 • Advanced
B Advanced Configuration Topics
Advanced • 298
B Advanced Configuration Topics
299 • Advanced
B Advanced Configuration Topics
2. Create a new I/O and Calculations tag as a child of the Workstation Status tag.
The remaining steps refer to the configuration of this tag.
3. On the ID tab, set the mode to Analog.
4. On the I/O tab, set the Read Address to FreeDiskSpaceC
(Or, FreeDiskSpaceD if monitoring a D: drive. Refer to Workstation Status Driver
I/O Addressing)
5. On the Scaling tab, ensure that both Unscaled and Scaled process data values
range from 0 to 100.
The numbers chosen do not matter, so long as both the unscaled range and the
scaled range match.
If you prefer to work in Mb or Gb rather than bytes, configure the scaling as appro-
priate.
6. On the logging tab, either disable logging, or if you choose to log this tag, set the
deadband to a value of at least 1Mb (1048576) if not 10Mb (10485760).
There is no need to log every one-byte change in the available space.
7. On the Alarms tab, select a Low Alarm priority as appropriate.
8. Configure the setpoint of that Low Alarm to be 52428800
(50Mb in this example. You may choose a setpoint as seems appropriate.)
Advanced • 300
B Advanced Configuration Topics
3. Group the four widgets into a new Tag Widget named Station Stats.
(Ensure that the selected tag is the station, not the driver.)
4. Make note of the overall size of the widget (bottom left of the Idea Studio).
You will need to know the height later. When creating this example my widget was 410 x
27 pixels.
5. Open the widget for editing and move the four Numeric Values about 50 pixels to the right.
6. Add text to the left of the Numeric Values. Set the paragraph to be right-justified.
7. Set the data source of the text to be Linked Tag\Name.
(You will need to set the Widget's Drawn Context to one of the stations in order to see a
name.)
8. Adjust the size and location to be approximately as shown:
301 • Advanced
B Advanced Configuration Topics
9. Close the widget editing tab to return to the Station Monitoring page.
10. Delete the widget from the page.
11. Drag a Tag List widget to the page (Tools > Standard Library)
12. Open the Properties dialog.
13. Click the Plus (+) button to start.
14. In the Widget Selection dialog, set the Type to your Station tag type and click OK.
When the pop-up palette of widgets appears, your Station Stats widget should be the first
in the list of Recent Items.
15. Select the Station Stats widget.
16. Open the Filter / Sort tab.
17. For this example, you want both stations, so there is no filtering to be done.
18. The default sort order is alphabetic, which seems reasonable for now.
19. Open the Table Layout tab.
20. In the Cell Settings, set the minimum height to be the same or a few pixels taller than the
Station Stats widget.
(This is why you noted the widget height earlier.)
21. Set the number of rows to Best Fit.
22. Set the row spacing to 1.
23. Set the number of columns to 1.
24. Click OK.
25. Adjust the size of the overall widget so that there are two rows as shown, then add labels
above each column:
Advanced • 302
B Advanced Configuration Topics
There are many ways to use a Tag List widget, but you can simplify the configuration (and gain
better control) by creating your own widget to fill each row. You are free to use any widget you
like for the cells, not just the Numeric Value that was shown here.
More Expressions
"More" in the sense that there are expressions here, in addition to those shown in the chapter
titled "Expressions". But these are the answers to the exercises in that chapter that did not spell
out how to write the required expression.
303 • Advanced
B Advanced Configuration Topics
General Process
1) In all cases, the first step is to create a Recipe Book Tag. This will hold your recipes, and
define the communication link to the PLC. (Refer to Tag Structure for Recipes)
2) A recipe needs ingredients, each of which is stored in a Recipe Ingredient Tag. These
should be created as child tags of your RecipeBook\Ingredients tag.
Advanced • 304
B Advanced Configuration Topics
Each Recipe Ingredient is a two-tag structure where the parent Ingredient tag holds the overall
description of what the ingredient is, and a child I/O tag holds the I/O address and other para-
meters required to write a value for that ingredient to the PLC.
Optionally, some or all of your Recipe Ingredients can use a Recipe Proportions Tag. Use these
when ingredient amounts should be multiplied by a given factor from one batch to another, or
when amounts can vary proportionally to each other.
Tip: In each Recipe Book, there is only one Ingredient tag structure for each ingredient, no
matter how many recipes or recipe versions call for that ingredient in varying amounts
(including the amount of zero).
305 • Advanced
B Advanced Configuration Topics
3. Three more ingredients are required. Create a Recipe Ingredient tag for each of:
Water (addr: 40214, units: ml, max: 2000)
Brew Time (addr: 40215, units: minutes, max: 1440)
Brew Temp (addr: 40216, units: deg, max 100)
Cream and sugar are added to cups after the coffee is brewed and poured, and therefore as part
of a second, consecutive process. You can absolutely string batches together, brewing the cof-
fee in one process and then automatically starting the next process when the PLC signals that
the first has completed. But we won't attempt that for our first recipe.
3) After creating the Recipe Book tag and a set of Recipe Ingredient tags, open The
Recipe Page to set, retrieve, edit, and store ingredient amounts for each recipe in the
Recipe Book. (It is possible, but rarely necessary, to build your own recipe page using
the library of Recipe Management Widgets
After setting values for the ingredients that are included in a recipe, save them to a new recipe
name. The option to set a version number is available only if you selected that feature when you
created the Recipe Book tag.
Tip: Any ingredient that is not used in a given recipe should have a blank (or zero) value.
Advanced • 306
B Advanced Configuration Topics
8. Let's make coffee: Click the Run button to start the batch.
9. Leave the Batch Number as 1 and write a note when prompted.
Fortunately, the simulator will ignore the time you specified and finish within a few
seconds. The results are displayed at the bottom of the Recipe page.
Feel free to experiment with alternate recipes (the simulator won't provide samples for tasting).
Each time you change the ingredient amounts and use Save As, you create a new recipe, or (if
configured in the parent Recipe Book tag) a new version of an existing recipe.
What if you want to double or triple the batch?
You need to add a Recipe Proportions Tag to each ingredient that can scale. There are two
ways to specify proportions: by multiples or as a percentage of a whole.
Note: Proportions are sometimes specified as decimal values (1.5 for a batch and a half).
Can your PLC work with floating point values? In this exercise, the simulator is configured
for standard Modbus and doesn't support /float addressing. We're stuck with integers for
our coffee proportions because that is all that our simulated PLC will support.
307 • Advanced
B Advanced Configuration Topics
Page Shuffling
You can configure your application to show a series of pages in order, automatically. (In other
words, a slide show.) To do so, you must configure a set of related application properties; there
is no user-interface tool for this feature. Examples are provided with the property descriptions.
Begin by creating the list of pages to be included in the automated display. (PageShuffleList,
PageShuffleEnable) Set the display time for each page (PageShuffleDelay) (either one time for
all, or a distinct time for each) and a duration for which shuffling will be disabled when an oper-
ator action such as a key-press or mouse movement is detected (PageShufflePauseDuration).
You can also set a list of realms for which shuffling is enabled (PageShuffleRealms). All selected
realms will display the same set of pages for the same duration - there are no realm-specific con-
figuration options.
PageShuffleList
Comma-separated list of page modules to cycle between. Do not specify page titles. This list
must contain the declared module name for each page, which can be obtained from
AppRoot.SRC or (in most cases) from the name of the source code file holding that page.
For example, the Overview page is declared as Overview in AppRoot.SRC and is also the
name of the source code file:
[ (PAGES)
Overview Module "Pages\Overview.SRC";
]
Figure B-8 (Code snippet from AppRoot.SRC of most applications)
Section: System
Default: PageShuffleList =
Example:
PageShuffleList = Page1,Page2("TagName"),Page3
- where Page2 has its first parameter set to TagName
PageShuffleEnable
Controls whether automatic page shuffling is enabled. Only specified pages will shuffle.
(Where "shuffle" means "display in sequence automatically with a specified delay")
Section: System
Default: PageShuffleEnable = 0
Advanced • 308
B Advanced Configuration Topics
PageShuffleDelay
Controls the length of time each page is displayed when shuffling is enabled. Either a single
delay to display all pages in PageShuffleList or a comma-separated list of delays to apply to
each page (in which case it must contain the same number of entries as PageShuffleList).
(Where "shuffle" means "display in sequence automatically with a specified delay")
Section: System
Default: PageShuffleDelay =
Example:
PageShuffleDelay = 30,45,30
- length of time to show each page
PageShufflePauseDuration
Amount of time to pause page shuffling when mouse or keyboard actions are detected.
(Where "shuffle" means "display in sequence automatically with a specified delay")
Section: System
Default: PageShufflePauseDuration = 60
Example:
PageShufflePauseDuration: 60
- pause the shuffling for 1 minute if the mouse is moved
PageShuffleRealms
Either a single realm name or a comma separated list of realms for which the shuffling is
enabled. To add the logged off and non-realm users to the list add a blank entry after a comma
at the end of the list. The order of the realms does not relate to the order of the PageShuffleList
and PageShuffleDelay settings
(Where "shuffle" means "display in sequence automatically with a specified delay")
Note: PageShuffleRealms is optional. If not specified, page shuffling applies to all realms.
Section: System
Default: PageShuffleRealms =
Example:
PageShuffleRealms = WEST,,
- only users in the WEST realm or no realm or when logged off will see shuffling
309 • Advanced
C Sites & Maps
Advanced • 310
C Sites & Maps
To disable all maps, open your Setup.INI file and locate the [SlippyMapRemoteTileSourceN] sec-
tions (where N is a number from 1 to 4). Comment-out every property in each of the sections by
adding a semicolon at the beginning of each line. DO NOT DELETE PROPERTIES. If you do,
and then decide to re-enable maps, you will need to reinstall VTScada. Better to simply disable
the properties by adding semicolons. Save the edited file and restart VTScada.
1Tags designed to contain other tags. Includes Polling drivers and DFS stations, Con-
text tags and user-defined types derived from Context tags, Stations, Analog Statistics
and Digital Statistics.
311 • Advanced
C Sites & Maps
Tip: There are three situations where it is helpful to set Exclude from Site List on your Con-
text tags:
- When requesting a Go To Page on any Context tag (or other container type) from the
Tag Browser or Alarm Page, the Sites page will be included in the list of possible pages
and might be the default.
- The above is also true for child tags of the Context tag.
- Context tags (and new types created from them) are always included in the list of a Sites
List Display Options. This may not be appropriate if the Context represents equipment
rather than a site.
Note: Customers upgrading from a version of VTScada released prior to 12.0 might
expect the following behavior: Clicking the bottom-most node in a sites hierarchy would
open the Site Details page as a pop-up. If an intermediate node in the sites hierarchy con-
tained I/O as well as child sites, the I/O values were displayed below the child sites in the
Sites List portion of the Sites Page.
The Site Details page now opens within the same page, occupying the space where the
map was displayed. You can override this behavior by adding the property
OpenSitesAsPopup, setting its value to 1.
The in-page Site Details page also includes an Open as Popup button in its title bar, provid-
ing a way for those who prefer to have the page open as a pop-up to continue opening it as
such.
Advanced • 312
C Sites & Maps
Figure C-4 Key parts of the hierarchy: Countries -> Regions -> Volcanoes -> Stations -> Equipment
Countries --> Display as a Folder
These are not drawn on maps (monitoring stations are.) Countries are treated as
"Folders" within the site list and are used only to organize the monitoring stations.
Note that if there is only a single site, VTScada will automatically navigate into that site.
There must be at least two sites configured as folders.
313 • Advanced
C Sites & Maps
Figure C-6 Navigating into Iceland. Regions are not shown (set to only display child tags).
Advanced • 314
C Sites & Maps
The "self" button indicates that this is the parent site. The self button is shown only for
sites that contain both I/O and child sites, and then only when you have navigated into that
site.
Stations --> Display as a Site
These are configured to be sites, always and only. They need latitude and longitude para-
meters to be placed on a map and they can be configured to (when clicked) open either
the built-in Site Details page or a parameterized page of your choice.
315 • Advanced
C Sites & Maps
The Site Details page is automatically generated for you by VTScada. It can be opened within
the Sites page or as a pop-up page. You may choose to use pages of your own creation instead,
on a site-by-site basis.
Figure C-9 Example for a Polling Driver site, as viewed within the Sites page
There are four methods that operators can use to open this page:
l Click on a site that is included in the list of the Sites page.
l If you use the Site Draw widget to draw a Polling tag or DataFlow RTU, then oper-
ators can click on the Site Draw to open this page.
l If you have drawn any of the available site types as a Site Icon or Site Summary,
(this includes a pin, drawn on a Site Map), then operators can open the Site
Details page by clicking on the icon or pin.
l You can draw the page within any other application page. In general, this method
is discouraged in favor of the previous three. You are likely to encounter scaling
problems when the Site Details is drawn inside a standard VTScada page.
Components of the Site Details page:
Title Bar Controls
Visible only when the Site Details is viewed as a component of the Sites page, not as a
pop-up.
Tabs:
Every Site Details page has two tabs: I/O and Map. The map is simply a Site Map, show-
ing the location of the station.
Advanced • 316
C Sites & Maps
I/O Section:
All of the I/O tags associated with the site are shown at the bottom of the page. These are
grouped into separate columns according to the type of I/O: analog or digital, input or out-
put. Input tags that allow writing are still considered input tags. Selector switch tags are
included with the digital outputs.
Any unacknowledged alarm on an I/O tag will be indicated by the color red. Red text for
analog tags and a red dot for digitals. Controls are provided for all output tags associated
with the station.
You can control the colors used for digital values (Digital Input, Digital Status and Pump Status).
The application properties are included in the following table, which also shows the default color
for each state.
317 • Advanced
C Sites & Maps
2 blue DigitalIndicator2Color
3 purple DigitalIndicator3Color
alarm active red (blinking if unac- DigitalIndicatorAlarmColor
knowledged)
bad quality orange BadQualityColor
Tip: While you can certainly create custom site details pages for Context tags, it's far
easier to keep track of which page is for which type of site if you first turn your Context tags
into custom types. (Design Your Own Tags ).
Advanced • 318
C Sites & Maps
319 • Advanced
C Sites & Maps
In this example, everything that you see on the Pump Control page is drawn within a Tag Wid-
get, designed to show child tags of the user-defined tag, SupplyPump.
Advanced • 320
C Sites & Maps
Figure C-10 If the Context has been turned into a new type, use the Manage Types dialog (Modify a Cus-
tom Type).
2. For each instance of your site tag, select the page to use.
321 • Advanced
C Sites & Maps
Figure C-11 Selection of a custom details page. The page must take a parameter matching this tag type.
Method 2: Configure the Site Summary or Site Icon widget that displays your site tag.
1. If your site is linked to a Site Summary widget or Site Icon widget, then configure
that widget to use the custom site details page.
Advanced • 322
C Sites & Maps
Figure C-12 This option gives more control over matching tags to parameters.
Advanced Configuration:
The default page selection dialog has a filter for "all pages" or "site pages", meaning those
that take a site tag as the first parameter.
You can add either of the following two properties in the Edit Properties page of the Applic-
ation Configuration dialog to restrict this filter:
LimitPageListToSitesPages
System section. Set to 1 (TRUE) to prevent access to the "all pages" option in
the page selection dialog for all users.
LimitPageListToSitesPagesIfRealmUser
System section. Set to 1 (TRUE) to prevent access to the "all pages" option in
the page selection dialog if the user belongs to a security group.
Site Map
A Site Map is a dynamically-loaded map, primarily used to show the location of any of the site-
related tags: Polling drivers, DataFlow RTU drivers, MultiSmart™ stations, MPE™ Duplexer sta-
tions, or MPE™ SC stations. You can also link a Context tag (or a user-created type derived
from a Context tag) to a map by adding the properties "Latitude" and "Longitude" to the para-
meter list. A Site Map is a standard part of the menu, and is built into every automatically-gen-
erated lift station details page and into the Site Details page. While you can add extra Site Maps
to pages within your application using the Site Tools palette or the Menu, it is usually not neces-
sary or beneficial to do so.
323 • Advanced
C Sites & Maps
In addition to the Site Map page, maps are also an optional part of the Sites page and the Site
details page. If viewed in a Sites page, you can choose to add a legend to the map. This is the
Site Legend widget, which can be drawn on any of your application pages.
Figure C-13 Use the controls at the upper right to zoom or to select the map style.
Advanced • 324
C Sites & Maps
The currently selected site is indicated by a pulsing beacon. This is useful when the Show All
Sites option is enabled, allowing more than the currently selected site to be seen.
Display Control
Use the scroll wheel of your mouse or the plus and minus buttons at the upper right corner of the
map to change the scale. For each magnification level, a new set of map tiles must be down-
loaded to your workstation. A reset button is provided below the scale, allowing you to return
quickly to the original display.
Note: You can set a default scale factor for each site tag in the Site Display tab of its con-
figuration panel.
Sites:
Sites are displayed using markers, either the default pin or a shape of your own creation. Open
the Site Map page for a specific tag to access the Update Location button to place or move the
site.
Any of the following tags can be a site when configured to have Latitude and Longitude values,
and to be shown on a map:
325 • Advanced
C Sites & Maps
l Context tags and user-defined types based on Context tags, if they have site prop-
erties.
l Polling drivers.
l DataFlow RTU drivers.
l MultiSmart™ stations.
l MPE™ Duplexer stations.
l MPE™ SC stations.
Overlapping Sites:
It is typical for sites to be near together. At a close scale, it is easy to tell one from another, but
when viewing a larger area, only one pin can be seen.
If sites appear to overlap, a click on the pin icon will open a menu of sites near that location.
Choose the site that you want to view in more detail.
Note: The setting SitesPageIconLoadTime is the time interval VTScada waits to see if a
particular site icon has finished loading on a map. The default is 0.1. If this is too short, the
following symptoms may occur. On a map with many site icons, if any icons overlap, click-
ing on the overlapping area might cause both of the site pages to open in addition to a site
selection dialog. Increasing this timeout to 1 second can alleviate this problem.
Connectors:
Connectors are displayed as a line or pipe between two Sites. The color and style of the con-
nector is configurable, but not the width. Connectors are displayed only when two sites with lat-
itude and longitude values have been selected, and when the connector is configured to be
shown. Only Context tags or user defined types derived from a Context tag can be connectors. A
connector will remain visible if you zoom in to a map tile between two sites.
Because a connector is based on a Context tag, it can have user-defined properties and child
I/O tags.
Slippy Map
The map is sometimes referred to as a "slippy map" because of the way it can be moved within
its frame. Operators can pan and zoom to change the area displayed.
Advanced • 326
C Sites & Maps
The map display is built of "tiles" - static images. At each higher magnification level, four times
the number of tiles are used for a given area. As the operator moves the display or changes mag-
nification level, new tiles must be downloaded. After being downloaded, they will be cached loc-
ally on your computer. These tiles are not distributed with VTScada, therefore your server must
have an active Internet connection to be able to download tiles that have not been cached.
It is possible to switch from map view to satellite view, or to a different map provider. See the
task list at the end of this topic.
Any instance of the tag types listed above can be located on a Site Map as a pin. Operators can
click on the pin to open the associated Site Details Page. Instructions for create your own pin
shapes are provided elsewhere. Refer to the list of tasks at the end of this topic.
The primary site associated with a map will be marked by an animated bubble. The head of the
standard marker pin uses the same color-indication system as the Site Draw Drawing Method
and described by the Site Legend widget.
(c) OpenStreetMap Contributors © [CARTO]
The copyright notices at the bottom corner of every map are each click-able links, allowing you
to learn more about the source of the tiles you are viewing.
Map tiles are downloaded only once and cached on your hard drive. In a networked application,
they are downloaded only the primary server. All other servers and workstations copy from
there. If you believe that newer images are available, delete the files from sub-folders of
C:\VTScada\Data\SlippyMapTiles. New tiles will be downloaded the next time you view the map.
Available controls for the map include: (*)
Control Action
Show All Sites A check box to enable or disable pin display for sites other than the root.
Update Site Location After clicking this button, the next click within the map area will re-locate
the site.
Magnification Control (+) and (-) buttons. Provides a way to increase or decrease the mag-
nification (zoom level) one step at a time.
Reset A button below the magnification control slider. Resets the scale and loc-
ation to the original view, as seen when the map was opened.
Map Selection Opens a list of maps configured in your Setup.INI file.
Legend Display Toggles the display of a legend describing the colors in a site icon (pin)
Click on any pin Opens the Site Details page for that tag, as appropriate for the type.
Click and drag Relocate the focus of the map.
Mouse-wheel Zoom in or out.
Double-click Zoom in, one step, at the location clicked.
(*) Some controls will not be available, depending on how the map is viewed.
327 • Advanced
C Sites & Maps
Click the Map Selection tool, available on any map, to choose an alternate tile source. A pop-up
will open, showing a preview of each. Your choice of map is stored with your user account and
will be the map you see regardless of which workstation you use. Other users can make their
own selection.
As an advanced feature, it is possible to change the list of available maps as you see fit. You can
change to another source, including:
l Any other third-party provider of map tile images.
l Satellite image tiles rather than map tiles.
You are free to edit your Setup.INI file to change map sources, add new ones, or remove
options. Note that changes to Setup.INI do not take effect until VTScada is restarted. Map
sources are stored in sections headed [SlippyMapRemoteTileSourceN] where N must be a num-
ber starting at 1 and increasing consecutively for each source.
Caution: Do not edit tile sources from CARTO, unless you are removing those sources.
CARTO maps are supplied by licensing agreement and include an API key that is unique
to each VTScada installation. API keys cannot be shared.
Note: To disable all maps, edit your Setup.INI file to add a comment character (a semi-
colon) to the beginning of every line in every SlippyMapRemoteTileSourceX section.
In all cases, the images that make up the map (or satellite view) are square tiles, downloaded to
the folder C:\VTScada\Data\SlippyMapTiles\MapTypeN where N is a number starting at 1 and
matching the number for the SlippyMapRemoteTileSourceN property.
Within each folder, sub-folders are used for each zoom level, with the numeric folder name cor-
responding to the zoom level. Map tiles should use the .PNG file format.
If you change the URL for a map source, you must delete all existing tiles from the previous
source. New map tiles are downloaded only when not found on your workstation.
If a URL is not going to be used because you have a static tile set on a server, a URL must still
be provided. Use a placeholder such as "Localhost".
A copyright attribution should be included with the tile source. This will become a click-able link
on the map.
Procedure:
1. Stop VTScada.
2. Using a text editor, open the file, Setup.INI
3. Search for [SlippyMapRemoteTileSource1]
4. Copy the entire section changing the 1 to the next unused number and editing
properties are required.
Advanced • 328
C Sites & Maps
(At time of writing this will be [SlippyMapRemoteTileSource5], but that may vary.)
5. Save the file.
6. Restart VTScada and run your application.
Note: Do not skip numbers when defining tile sources. If you have [ SlippyMapRe-
moteTileSource1], [ SlippyMapRemoteTileSource2] and [SlippyMapRemoteTileSource4],
then only the first two will be available for users to select.
Troubleshooting:
l No map or satellite image is shown.
Check for typos in the setting of SlippyMapRemoteTileSourceN, where N is a
number matching the selected map.
Ensure that the computer can connect to the Internet.
Bulk Downloads of Map Tiles
The tool to begin a bulk download of map tiles can be found in the Application Configuration dia-
log, Edit Properties page, under the Display tab (using the basic mode of the Edit Properties
page).
Notes:
l The button is enabled only while your application is running.
l If the provider of your currently selected map style does not allow bulk downloads
under their terms of service, you will be warned upon opening the tool. The start
button will be disabled.
329 • Advanced
C Sites & Maps
Caution: Depending on the area and the zoom level that you select, a bulk download can
include nearly 450Mb of map tiles. The tool limits the area or zoom level or both so that no
more can be downloaded in a single session.
Controls within the Bulk Download dialog
l The larger map (to the left) defines the area for which tiles will be downloaded.
l The smaller map (to the right) defines the zoom level.
While not displayed numerically, zoom levels range from 2 (far) to 18 (near). The
zoom level of this map must always be greater than or equal to the zoom level of
the area selection map.
(New York was chosen for the focus of this map because it contains detail down to
the nearest zoom level, which may not be the case in your selected area. This
does not affect the area for which you will be downloading tiles.)
l Tiles will be downloaded for the entire area in the larger window, for all zoom levels
from that shown in the area selection map down to that shown in the zoom level
map.
l The depth bar indicates the range of zoom levels that will be included, where the
furthest zoom level (2) is to the left and the nearest (18) is to the right.
l You can resize the Bulk Download dialog as needed to match the area selection
window to the area of the map you are interested in.
l The display of Total Tiles tells you the number and disk space required. The estim-
ated time will update during the download.
Advanced • 330
C Sites & Maps
For networked applications, ensure that the map tiles are copied to the primary server. All other
workstations and backup servers will copy their tiles from the current primary server rather than
downloading the tiles from the Internet. If using the advanced mode of the Edit Server Lists dia-
log, look for SlippyMapService.
The names of the folders and the map tiles match the area and zoom factor viewed and are not
unique to your computer or VTScada in any way.
VTScada will expect the map tiles to use the .PNG file format.
Troubleshooting:
l The steps were followed, but the map is not displayed.
331 • Advanced
C Sites & Maps
Ensure that the tile images are in the folder "Data\SlippyMapTiles" under your
VTScada installation.
Ensure that you are attempting to view an area that matches what was saved in
the map tiles.
Custom Map Icons
You can create your own custom map icons (pins). For example, you may wish to provide visual
clues to help operators identify sites when more than one is displayed on a map.
Figure C-14 Custom map icons showing flags rather than pins.
Each icon is a Tag Widget that you create. To function as a map icon, various parameters will
need to be set and mapping-related VTScada widgets will need to be included. A pulse beacon
will be added automatically for you. When an operator clicks your icon, it will open a site page (or
your custom page). You do not need to add a hotbox.
Note: VTScada will not add animation to the colors within your icon. If you want the func-
tions of a Site Icon Widget, add one to your custom map icon. Be sure to edit the site icon
widget's properties to useLinked Tag Properties. Alternatively, you could add an Alarm Pri-
ority Icon, or you could write expressions that will control the color of shapes within your
icon.
General Steps to Create a Custom Map Icon:
1. Create a new Tag Widget.
2. When prompted for a name, choose one that will help you remember what the wid-
get is for.
3. When prompted to select tag types, choose only the types that this icon will be
used with.
For example, Context, Polling Driver or your user-defined types.
Advanced • 332
C Sites & Maps
4. Add the graphics that you want for your custom icon.
See the following list of key details.
5. Instruct your site tag to use that widget instead of the built-in pin using one of the
following methods.
Use Your Custom Map Icon
There are four ways to select the custom map icon:
Note: After changing the selected icon, you may need to refresh the map or update a
site's location before the new icon will load in place of the old.
To use the icon for a specific site that has display / site properties.
a. Open the tag's configuration folder.
b. Within the Display tab, choose the custom map icon widget.
Note: this assumes that, when creating the widget, you configured it to be a tag-
widget for the type of site you are now trying to configure.
If the site is a custom type, ensure that the type definition includes site para-
meters, including Custom Map Icon.
333 • Advanced
C Sites & Maps
To use the icon for a group of sites that are the children or grandchildren of a spe-
cific Context tag:
a. Ensure that the parent tag has been assigned the site display parameters.
b. Ensure that the icon widget can be linked to all the child tag types.
c. Set the Custom Map icon property to the name of your widget.
Advanced • 334
C Sites & Maps
Parameters
Give your widget the following parameters to take advantage of all the available features. Para-
meter names need not match those shown here, but you are advised to use these names for clar-
ity and simplicity. What does matter is the order.
Not all parameters need be created, but none can be skipped from the middle of the list. If your
widget is to have a ZoomLevel parameter, it must also have the three preceding parameters.
DisableTrend
(Status) Should exist and be selected using the Values tool in the Widget Properties rib-
bon. This will prevent the HDV window opening when an operator clicks the icon to open a
map.
DisableNavigation
(Status) Should exist if you want to allow developers to choose whether operators can
right-click the widget to open the pop-up tools dialog.
DisableTooltip
(Status) Should exist if you want to allow developers to choose whether operators will see
a tooltip with the tag's name and description when they hover the pointer over the widget.
ZoomLevel
(Short with allowed values ranging from 2-18) With this parameter, your widget can know
what the current zoom level of the map is because VTScada will automatically set its
value. The value, "2", corresponds to the furthest out that an operator can zoom on any
map and "18" is the closest in.
A possible use for this information is to set the opacity property of component parts to use
ZoomLevel in an expression that will be become zero, thereby hiding the icon, or portions
of it, when the operator has zoomed past a given value.
ConnectorAngle
(Double with allowed values ranging from 0-360) If your site is configured as a Connector,
this is the angle at which the connector is drawn, from the start site to the end site.
ConnectorColor
(Color) If your site is configured as a Connector, this the color of the connector.
Example:
1. Open the Idea Studio
2. Click the File button, then New
3. Select Tag Widget.
4. Provide a name for the widget.
For simplicity of use, avoid spaces.
5. Make note of the name.
This is the file name, and therefore the module name that you must provide when
using the icon. You may change the title of this widget later, but the file name will
remain the same and will continue to be the module name.
Note: Note: If you have previously created a page or widget of the same name, then the
new file name will have a "0" or "1" appended to the end.
335 • Advanced
C Sites & Maps
6. Select all the types of site for which you might use the map icon (Polling driver, Sta-
tion tag, custom types...).
The new widget will be created, and will open in the Idea Studio.
7. Delete the Tag Icon marker (yellow diamond).
8. Ensure that the Widget Properties ribbon is open.
9. Click, Manage Parameters in the Widget Properties ribbon.
10. In the Parameters tab, click Add.
11. Set the name to "ZoomLevel," and the type to "Short".
Any of the numeric options would work, but short is the most appropriate.
A description is recommended.
12. Click OK to save the new parameter and close the properties dialog.
13. Add the image(s) that you wish to use for the pin.
l For reference, the Site Icon marker is 14x14 pixels. A Pulse Beacon will
extend to 82x82 pixels. Your pin should be somewhere within this range of
dimensions.
l You may wish to add a Site Icon to the custom icon pin. This provides a
visual indication to operators, showing the status of the site and also allows
them to click on the pin to open the related Site Page. Note that the Site
Icon's data source must be linked to the Drawn Tag.
14. Adjust the position of all objects so that the center of the overall bounding box of all
objects coincides with the location that you wish to use as the pin-point. The loc-
ation of the objects within the Idea Studio does not matter for custom map icons.
Advanced • 336
C Sites & Maps
Use Theme
Choose whether the borders of the map should use the VTScada color theme
Text Color
Specify the color to be used for the labels below the map.
Disable Zoom Buttons, Disable Reset Button, Disable Style Button, Disable Legend
Button
Use the listed controls to hide any of the tools labeled in the following image, which would
otherwise be available on your map.
"Zoom Buttons" refers to the controls for the display scale. "Style" refers to the tool for
map selection.
337 • Advanced
D Languages
D Languages
VTScada ships with English phrases for all parts of the program and with both French and Sim-
plified Chinese for (most) phrases that are visible to operators. Translations are not provided for
phrases used by development tools including the Tag Browser, Application Configuration dia-
logs and Idea Studio.
Use the Languages panel of the Application Configuration dialog to create new translations for
your application, or to modify phrases used in any installed language. All phrases (labels) used
throughout VTScada may be translated here, including those for the development tools.
Your account must have the Application Configuration privilege to be able to modify phrases.
For long phrases, a compressed font will be used automatically so that you can see more char-
acters. Hover over a phrase to see a tool-tip containing the full text in your default system font.
Phrases and descriptions can not contain line breaks.
Changes are not saved until you click the Apply button.
Select your language for the VTScada Application Manager (VAM)
Your selection here affects only the labels in the VAM. Application names remain unchanged.
Remember that Trihedral provides translations only for operator-interface phrases. Many of the
tasks performed with the VAM are for developers and therefore no translation is provided.
1. Expand the menu, located at the top, left of the VAM.
2. Open the Settings dialog
3. Select your preferred language.
Enable a language other than English for your application
1. Open the Application Configuration dialog.
2. Select the Languages panel.
3. Select all languages that you want to make available in your application.
Figure D-1 Detail from Edit Properties, showing FR - Français added to the allowed languages.
Advanced • 338
D Languages
How it works:
All text used in VTScada and in your application is stored in language databases (csv files). This
includes the entire VTScada user interface, text that you place on any page or widget, and tag
properties such as area, description, and engineering units. All text.
For most users, this is invisible. With the possible exception of a few characters such as degree
symbols that need to be updated to UTF-8, you should not notice any difference from earlier ver-
sions of VTScada. Continue to work as you always have.
Note: Those who write expressions that generate text will need to be aware of, and use,
phrase-handling functions. Refer to Multilingual Expressions in the documentation.
Note: If you want to display your application in a language other than US English, use the
information that follows in this topic.
When making any change to text that you have written (in any language) always use the
phrase editor rather than editing the text directly.
Language CSV files
VTScada ships with three language files: en.csv, fr.csv and cn.csv, all stored in the \Languages
folder. Do not edit these files because they will be over-written by later updates to VTScada.
When you change a phrase, or when you add a new CSV file for another language, your work is
saved to the \Languages sub-folder of your application. This file is part of your application and
will not be damaged by VTScada updates.
About using Excel to edit language CSV files
Caution: DO NOT USE EXCEL TO EDIT LANGUAGE .csv FILES.
By default, Excel will alter the structure of the file for its purposes. This will destroy the file
so far as VTScada is concerned.
Use only a text editor that can be configured for Unicode UTF-8.
Caution: You must ensure that your editor is configured to save the file using Unicode,
UTF-8. Failure to do so will result in VTScada showing non-printable characters.
DO NOT USE NOTEBOOK OR EXCEL TO EDIT LANGUAGE .csv FILES.
339 • Advanced
D Languages
Add languages
Your application is uni-lingual until you add a new language .csv file. None of the multilingual fea-
tures will be visible before this step.
To add a new language:
1. Create a folder named Languages within your application's folder, if one does not
already exist.
2. Using a text editor that can be configured to use Unicode UTF-8, create a new file
within the Languages folder of your application.
3. Name the file XX.CSV, where XX are two or more letters identifying the language
you want to add.
Examples: FR.CSV or en-GB.CSV
4. Within the file, add a line that will fully identify the language and the variant. For
example en-us for US English, en-gb for English, United Kingdom, or fr-ca for
Canadian French.
5. Add a second line, which is the language name as it appears in that language. You
may need to configure Windows to set an alternate keyboard configuration.
Example for a French Canadian language file, FR.CSV:
#LanguageID,fr-ca
#LanguageName,Français
Figure D-3 Detail from Edit Properties, showing FR - Français added to the allowed languages.
9. Select the new language in the list of those available.
Translated phrases for the new language may be added at your convenience. In general, you
should ensure that the new language was added successfully before adding phrases to it.
Add and Edit Phrases using the Languages Panel of Application Configuration.
1. Open the Application Configuration dialog.
2. Select the Languages panel.
Advanced • 340
D Languages
Figure D-4 Detail from the Languages panel, showing only the controls
Filter
Enter a word or phrase to search for and limit the display to only those occurrences of the
matching value. Leading and trailing wildcards are added automatically if neither is spe-
cified. Press <Enter> or the filter button after typing a value into this field.
341 • Advanced
D Languages
Caution: New phrases are not shown in a filter until after you select the Apply button. Do
not create the same phrase twice, thinking that it somehow failed to save.
Hide OEM Phrases
When selected, the display is limited to only those phrases defined in the current applic-
ation. Phrases from underlying layers (including VTScada) are hidden.
Hide Completed Phrases
Relevant only when at least two languages are selected. Completed phrases are those for
which a translation is available in all selected languages.
Note: If you select the Hide Completed Phrases option while viewing only one language,
then the grid will be empty.
Edit Phrases
There are two ways to edit a phrase:
l Click twice on the phrase in the list, then begin editing.
This is the most straight-forward method, but does not provide a way to edit the
description attached to the phrase.
l Click once on the phrase, then click the Edit button to open the Phrase Editor dia-
log. All languages that you have selected for viewing will be shown.
Figure D-6 The Phrase Definition Editor. Click where indicated to open an editing field.
Descriptions are used to guide translators, providing context for words that might have several
definitions.
Insert Phrases
Also opens the Phrase Editor dialog. All fields will be empty until you create your phrase.
Phrases that contain commas will automatically be saved within quotation marks. Phrases that
contain quotation marks will have those symbols "escaped" by doubling the quotation mark.
Each new phrase is assigned an automatically-generated key. You will need this value if using
the \GetPhrase function to display your text in a label elsewhere in VTScada. Note the copy
icon, available for each selected phrase.
Advanced • 342
D Languages
Phrases cannot be deleted. There is no mechanism to search out every place in code where a
phrase might be used, thus making it likely that a deleted phrase would break some part of the
user interface.
Tip: The Key column is useful if you have created your own phrases and need to know
how to refer to them in your label expressions. Use the "View" button to display this
column.
The Key column is essential if you are searching for VTScada labels and properties such
as "DialerLocation" by name. Use the arrows within the dialog to change the order in which
columns are shown.
Copy / Paste Columns
343 • Advanced
D Languages
Figure D-7 Choose the target format and what information to include when exporting
Caution: The exported file will contain a version identification code. Do not delete this
information. You cannot synchronize your application with a file that does not contain a
valid version identifier.
The exported file will always include the key for each phrase. Take care not to edit the key.
When synchronizing the file back into your application, phrases are matched to keys. A new
phrase is created if no matching key exists.
Within the CSV file, wrap phrases in double quotes if they include a comma, a literal quotation
mark, or use double quotation marks to signify a single quotation mark. For example, "Show a
""+"" rather than label" will be displayed as Show a "+" rather than label. (Do not wrap phrases in
quotation marks when using the phrase editor.)
Phrases are never deleted when synchronizing. Entries that have no key value are ignored.
Figure D-8 When adding new entries to the CSV file, start after the first three rows.
Note:
The first three lines in the exported file are reserved for use by VTScada. Do not edit these
except to add columns for new languages.
The second column is reserved for use by VTScada. In general, do not edit, and leave
blank for new entries. This holds a category number for each phrase, which is used only
when translating the core VTScada user-interface phrases. Category numbers are used
to set the priority of work when translating phrases by identifying where in the user-inter-
face the phrase is used. Category values are assigned as follows, where operator-facing
phrases are the highest priority category.
1: Operator
Advanced • 344
D Languages
2: Demo pages
3: Configuration
4: Activation
5: System
6: Trace
7: Debug
% Codes
Numeric % codes such as %0 and %1 are non-defined replaceable parameters. These
are used where VTScada will substitute information into a generic phrase. For example,
"Alarms muted until %0 %1". This message is displayed when an operator mutes alarms
for a defined length of time. When displayed, the time when muting ends will be shown
instead of %0 and the date when muting ends will be shown instead of %1.
Text % codes such as %N, %A, and others are defined replaceable parameters.
Phrase Editor
When more than one language is available for an application, this dialog will open automatically
each time that VTScada detects that you type a new word or phrase in any field that will become
part of the user interface. (Tag names and area properties are used in code, and therefore never
translated.) You can disable the automatic opening feature of the editor, instead relying on the
editor button, shown circled in the following image.
345 • Advanced
D Languages
Figure D-9 Opening the Phrase Editor for the Description field of a tag.
The language at the top of the list is the default for your application, as set in the Display tab of
the Edit Properties dialog. Other languages are available as configured in the Edit Properties dia-
log.
Click as indicated to edit descriptions and phrases. Descriptions are encouraged as they are use-
ful to guide translators, or to help other developers select which definition of a given phrase or
word applies. (See following image.)
It is often the case that one word or phrase can have several definitions (a homograph). For
these, click the plus sign (circled in following image) to add new columns as needed for each
definition. Each column matches a unique phrase with a unique key. For the default language
(top row), every entry must be the same. Editing one will result in all changing to match.
VTScada will automatically find all matching phrases in your default language. The selected
column indicates which translation is used in a given instance.
Advanced • 346
D Languages
347 • Advanced
E VTScada Color Palette
Prior to version 10.2, the color palette (shown following) provided the full range of colors avail-
able for use.
All VTScada functions that require a color value will still recognize numbers from the color
palette. Use the following chart as a guide when selecting which number to use.
Advanced • 348
Notes
Notes
Advanced • 349
Notes
350 • Advanced
Notes
Advanced • 351
G Index
G Index
.
.Dynamic 20
.Startup 20
A
Account 120
accounts 122
add-in 199
Add Parameter Expression 71
add parameter expresson 71
add start condition 71
addin 199
AlarmDatabaseGroups 293
AlarmListFormats.XML. 295
alternate storage locations 180
alwaysShowShelved 298
ancestor 259
Application privilege 120
application privileges 128
B
binding 260
bulk download 329
C
Callable Subroutines 266
Called 260
child module 259
color palette 348
ColumnFormats 297
Configuration 19
Connector Properties 67
create new type 64
Create New Type 77
custom map icons 332
Advanced • 352
G Index
353 • Advanced
G Index
Advanced • 354
G Index
R
read-only workstation 135
realm area filtering 139
Realm Area Filtering 139
realm filtering 139
Realm Filtering 139
realm tag filtering 139
REALMAREAS, config.ini section 142
redefine type 79
redundant storage locations 180
refresh 213
remove start condition 71
rename privileges 131
Report tag 194
report tools library 198
reports - create using code 216
Role 120
Rule 120
rule scope 131
S
satellite maps 327
script tags 271
Section names 20
security rules 131
Security, Best Practices 120
SecurityManager-Admin 20
Settings.Dynamic 19
Settings.Startup 19
Setup.INI 19, 25
shuffle 308
Site Details page 315
Site List page 311
Site Map 323
Site Properties 67
Sites 311
355 • Advanced
G Index
Advanced • 356
G Index
Workstation.Startup 19
X
XLReporter 175
357 • Advanced