Академический Документы
Профессиональный Документы
Культура Документы
Version 5.1
May 2010
All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical
means, including photocopying and recording, without permission in writing from GE Intelligent Platforms, Inc.
The information contained in this manual is believed to be accurate and reliable. However, GE Intelligent Platforms,
Inc. assumes no responsibilities for any errors, omissions or inaccuracies whatsoever. Without limiting the foregoing,
GE Intelligent Platforms, Inc. disclaims any and all warranties, expressed or implied, including the warranty of
merchantability and fitness for a particular purpose, with respect to the information contained in this manual and the
equipment or software described herein. The entire risk as to the quality and performance of such information,
equipment and software, is upon the buyer or user. GE Intelligent Platforms, Inc. shall not be liable for any damages,
including special or consequential damages, arising out of the user of such information, equipment and software, even
if GE Intelligent Platforms, Inc. has been advised in advance of the possibility of such damages. The user of the
information contained in the manual and the software described herein is subject to the GE Intelligent Platforms, Inc.
standard license agreement, which must be executed by the buyer or user before the use of such information, equipment
or software.
Notice
©2010 GE Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Intelligent Platforms, Inc.
Microsoft® is a registered trademark of Microsoft Corporation, in the United States and/or other countries.
All other brands or names are property of their respective holders.
We want to hear from you. If you have comments, questions, or suggestions about our documentation, send them to the
following email address:
doc@ge.com
Table of Contents
About this Guide ...............................................................................................................................1
Introduction .......................................................................................................................................1
Getting Started..................................................................................................................................5
iii
Building a SCADA System
Phasing ....................................................................................................................................... 38
iv
Building a SCADA System
Overphasing ........................................................................................................................... 40
Moving Blocks............................................................................................................................. 68
v
Building a SCADA System
Using Go To................................................................................................................................ 72
vi
Building a SCADA System
Index ...............................................................................................................................................97
vii
About this Guide
Building a SCADA System is intended for process engineers responsible for designing and building a
process database. This manual shows engineers how to create, modify, and delete blocks and chains. It
also teaches the skills engineers need to sort, query, and optimize iFIX® databases.
Reference Documents
For related information about iFIX, refer to the following documents:
Understanding iFIX
Writing Scripts
Creating Recipes
Introduction
iFIX® provides process information for plant managers, supervisors, and operators in the form of
reports, displays, archived data, alarms, messages, and statistical charts. The sources of this
information are OPC servers or process hardware — the controllers, sensors, motors, switches, and
other devices — required to manufacture your product.
iFIX reads process information from these devices and saves it in one or more process databases
residing on your SCADA servers. The database plays an integral part in your industrial automation
strategy; it is the primary source of process data for most iFIX applications. Whether you collect
historical values or generate shift reports, iFIX enables you to create a database that supports your
specific industrial control and automation needs.
Database Manager
Your main tool for creating and managing process databases is Database Manager. This program lets
you open and configure the database of any SCADA server. You can also:
1
Building a SCADA System
Understanding a Database
Every SCADA server loads a process database at start-up. Once loaded, the database:
• Receives values from an I/O driver or OLE for Process Control (OPC) server.
• Manipulates values according to its configuration (a control strategy).
• Compares the values to alarm limits you define.
• Outputs adjusted values to the I/O driver or OPC server.
• Sends alarms to operator displays, printers, files, and network alarm destinations.
The following figure illustrates how values enter a database, travel through a sequence of blocks, and
exit the database as output.
• Receiving values either from another block, OPC server, or directly from an I/O driver.
• Manipulating values according to its configuration.
• Comparing incoming values against pre-defined limits.
• Scaling process values to a specified range.
• Performing calculations.
• Outputting values back to the I/O driver or OPC server.
iFIX provides different types of blocks, each capable of performing a unique function. For a brief
description of each block, refer to the section Block Types and Descriptions.
By default, when you install iFIX, it creates an empty database for your SCADA server. Using
Database Manager, you can add the blocks you require to this database.
2
Building a SCADA System
Understanding Chains
Blocks by themselves perform specific tasks in the database. By combining two or more blocks
together, you can form chains. Each chain performs the tasks of its component blocks by passing data
from one block to the next. When properly configured, chains can generate alarms, acquire data, and
verify, automate, and maintain a process. In automating large processes involving a number of I/O
devices, a database can contain many chains, each designed to automate and maintain a specific
function or process step.
Each chain can contain up to 30 blocks, with each block configured to perform a specific processing
function. Note that some blocks are designed to work in chains while others are designed to operate on
their own. Specific types of blocks, their functions, and their relationship to one another are
summarized in the section Block Types and Descriptions.
Familiarize yourself with the available blocks. Having a good understanding of the blocks and their
capabilities allows you to quickly design optimum strategies for your application.
• Scanning individual blocks in the chain, reading new I/O values and returning values to the
process hardware.
3
Building a SCADA System
The following figure shows SAC reading process values, sending these values through database
chains, and returning the output values.
For information on trending data, creating scripts and schedules, and archiving data, refer to the
following topics:
4
Building a SCADA System
For more information on collecting historical values, refer to the Trending Historical Data manual. For
more information on trending real-time data for operators, refer to the Creating Pictures manual.
These blocks also let you archive data to a relational database. Once the relational database receives
and stores the process data, you can query it to retrieve and analyze any information. For more
information on setting up and using a relational database, refer to your ODBC manuals and the Using
SQL. For more information on process database blocks, refer to the iFIX Database Reference.
IMPORTANT: If you are working in a secure environment and using the Electronic Signature option,
you must be aware of the impact of unsigned writes to the process database. Unsigned writes can
originate from scripts, schedules, and writes from a relational database. Refer to the Implications of
Database Writes With Electronic Signature section of the Using Electronic Signatures manual for
detailed information.
Sample Application
To help you understand how to create process databases for yourself, this manual uses a sample
application for manufacturing fertilizer and monitoring chemical consumption and equipment usage.
The blocks and chains that comprise the application were developed by the Enviro company which
collects sludge generated by municipal sewage plants and converts it into different grades of
agricultural fertilizer in briquette form. The Enviro company's manufacturing process encompasses:
• Continuous control
• Batch control
• Discrete parts
Getting Started
You can begin creating process databases by verifying that your SCADA servers are set up and
5
Building a SCADA System
To get started:
From the Database Manager, you can open databases from SCADA nodes with iFIX 3.0 or greater
installed. You cannot add, modify, or delete blocks in databases from earlier versions of iFIX, such as
iFIX 2.5 or FIX32.
To exit from the program, in Classic view, select Exit from the File menu or in Ribbon view, click the
Database Manager button, and then click Exit.
NOTE: Connections to remote SCADA servers are established with a physical node name, not logical
node names. Logical and physical node names are identical unless you enable SCADA redundancy.
For more information about this feature, refer to the Mastering iFIX manual.
The following topics provide more information about the database spreadsheet:
6
Building a SCADA System
By configuring these properties you can customize the spreadsheet as needed. To learn more about
these properties, refer to the chapters Locating and Displaying Data and Querying and Sorting Data.
To change multiple fields for a particular block, you can double-click the block to display its dialog
box. To change the same field for multiple blocks, you can find and replace data in a spreadsheet
column. Refer to the chapter Locating and Displaying Data to learn more about finding and replacing
data.
Exchanging Data
Database Manager also lets you edit blocks by copying or exporting them. Whenever you complete
these tasks, the program converts the selected blocks into comma separated value (CSV) format,
enabling you to paste or import the data into your favorite text editor or spreadsheet. Once you edit the
data, you can copy or import the data back to Database Manager.
Often a quicker way to convert blocks into CSV format is by holding down the Control key and
dragging and dropping the blocks from Database Manager and into Microsoft® Excel. The blocks you
move appear in CSV format, allowing you to edit them. When you finish, you can drag them back. To
learn more about using Excel with the Database Manager, refer to the section Copying and Pasting
Blocks.
7
Building a SCADA System
Printing Print the database while you configure a block or start another iFIX program.
preferences
Saving Save the current spreadsheet settings or the process database when you exit
preferences Database Manager.
Editing Open block dialog boxes in view or modify mode when you double-click a cell in
preferences the spreadsheet. In view mode, you can examine the block configuration but not
modify it. The block and its chain remain on scan at all times. In modify mode,
you can examine and change the block configuration. The block and its chain are
placed off scan even if you do not modify the block.
You also have the option to place edited blocks and chains on scan automatically
when you finish editing them. By default, this option is disabled and Database
Manager prompts you to place modified blocks on scan.
8
Building a SCADA System
To learn how to create database blocks, refer to the section Adding Blocks. For information on using
standard VBA naming conventions when creating tags, refer to VBA Naming Conventions. For
information on verifying and correcting database errors, refer to the section Verifying Databases.
After you have this data, you are ready to design a database. To help illustrate how to do this, this
chapter walks you through the process of designing a chain for the Enviro company, introduced in the
section Sample Application. Using these examples, you should be able to create your own blocks and
chains for your process database.
As you read this chapter, you may find it helpful to skip ahead and learn how to add a block with
Database Manager so that you can create the sample chains described here. By creating sample chains,
working with Database Manager, and correcting errors, you learn how to avoid mistakes before you
create your actual database.
The key elements of this application also apply to processes in other industries, such as chemical
processing, food processing, and even discrete parts manufacturing.
9
Building a SCADA System
Designing a Chain
Once you know the tasks you want to accomplish, you can design the chains for your database. The
easiest and most efficient way to design a functional chain is to use the following design steps:
To design a chain:
1. Analyze your process and make a record of the data you need, including:
• I/O addresses of the device controller (a wiring list)
• Device types
• Signal conditioning
• The EGU range
2. Design an automation strategy that explains how you want your process automated. For
example:
• What types of alarms and alarm limits do you want to establish?
10
Building a SCADA System
The example presented in the following subsections illustrates the thought process involved in
designing a simple chain.
Sludge from the collection tank is periodically pumped into a large tank where water is added to make
the sludge easier to mix. A sensor in the tank registers the sludge's pH level. If the sludge is acidic, a
device controller turns on a pump that adds an alkaline solution into the tank to raise the pH; if the
sludge is alkaline, the device controller turns on a pump that adds an acidic solution into the tank to
lower the pH. In either case, the sludge's pH is properly adjusted according to the grade of fertilizer
that is needed before it is pumped to the filter press. The following figure shows the pH adjustment
tank and its equipment.
11
Building a SCADA System
pH Adjustment Tank
The next step is to design a chain that examines and adjusts the sludge's pH by:
Once you complete these tasks, you can add blocks to monitor pH fluctuations, chemical usage, pump
usage, down time, and other statistical information. You can also historically trend this information,
print it in reports, and display it to operators.
Although this analysis describes how the process works, it lacks important information about your
control devices. You need to add detailed information on I/O driver or OPC server addresses, the type
of controller equipment, signal conditioning, and maximum ranges the equipment can accept. In short,
record all detailed information on how the process equipment operates.
After you obtain this information, you can go on to write a detailed analysis of your process. The
following table presents a sample analysis of the pH monitoring and adjustment process.
12
Building a SCADA System
Notice how this automation strategy incorporates an alarming plan for handling process upsets, such as
extreme pH fluctuations (rate of change). This helps to assure that empty drums of acidic and alkaline
solutions do not go unnoticed and equipment failures do not interrupt your treatment process.
13
Building a SCADA System
The algorithm forms the basis of your chain; it identifies the order in which the process proceeds,
where each step acquires information, and how iFIX gathers, processes, and verifies information.
When matching blocks to steps, select a block that can perform the function of a step. In many cases,
one block type can handle more than one step, whereas some steps may include too many functions or
too many complex operations for any one block.
For your pH adjustment process, the following blocks satisfy the algorithm:
1. An Analog Input block can receive analog signals from the pH sensor's address.
14
Building a SCADA System
2. The Analog Input block can also accommodate the alarming requirements, so this task is
assigned to this block.
3. The pumps are turned on or off based upon the value that the Analog Input block receives
from the pH sensor. The block required for this step must be able to monitor an analog input
and, depending on the value of the input, open or close a digital output point.
The digital outputs are sent directly to the acid and alkali pump addresses. The On-Off
Control block can perform this function.
Since the On-Off Control block can turn the pumps on and off without the use of any other
block, this completes step 3.
At this point you've identified the blocks that can perform all the steps in your algorithm.
15
Building a SCADA System
The flowchart is a visual representation of the chain and shows the instructions you will enter into each
block as you add them to the database. The following figure shows a flowchart for the pH adjustment
process.
Chain Flowchart
Typically, your chain designs are seldom perfect the first time you implement them. With Database
Manager, you can always re-evaluate the design of your chain, add blocks, remove blocks, modify
block configurations, or change block types to those that accommodate more sophisticated automation
functions.
The best approach to re-evaluating the design of your chain is to examine the original automation
algorithm and determine if other blocks provide more flexibility or features over the existing blocks.
For example, after testing the sample chain, Enviro engineers found it works well most of the time, but
every so often the adjustment process exceeds acceptable pH limits by pumping in too much acidic
solution, which lowers the pH beyond acceptable limits. The following figure illustrates this problem.
Sample pH Problem
You want the capability of pumping in acid at short intervals. In the original design, iFIX scans the
chain every four minutes. This allows the acid more time to react with the sludge before more acid
enters the tank. An additional improvement would be to shorten the chain's scan time, providing more
pH sampling to determine which solution needs to be pumped into the tank.
16
Building a SCADA System
By re-examining the automation algorithm, you can determine where to make improvements to the
chain. Reproduced below is the original automation algorithm that called for the On-Off Control block.
• If the pH is below 5.5, turn on the pump to add an alkaline solution. If the pH is above 8.5,
turn on the pump to add an acid solution.
• Acid pump digital address: 1:1:40004:8
• Alkaline pump digital address: 1:1:40004:5
• If the pH is between 5.5 and 8.5, stop all pumps.
What you want to do is modify this algorithm to run the acid pump for shorter intervals, giving the acid
time to decrease the pH before the acid is turned on again. To do this, you need to examine if other
blocks can perform this task.
One block capable of turning a pump on or off is the Program block. You can replace the On-Off
Control block with the Program block. However, the Program block cannot establish direct digital
contact with the acid and alkali pumps. For this you need to use two Digital Output blocks, one for
each pump.
The following figure shows the replacement of the On-Off Control block with the Program block and
the two Digital Output blocks, and represents how information passes from one block to the next.
Chain Modification
NOTE: The figure Chain Modification illustrates how the data flows from one block to another, not
the actual chain structure.
The following figure provides the new programming instructions required to operate the Program and
Digital Output blocks.
17
Building a SCADA System
Modified Flowchart
With this modification and with the Analog Input block's scan time reduced to one minute, the chain
handles pH adjustment more efficiently by allowing the Program block to run short programs that
adjust the pH. The following figure shows how the modified chain handles pH adjustment.
With the pH adjustment complete, you might want to consider how to provide more control over the
monitoring process. For example, if your operators need to monitor pH fluctuations, you can use a
chart to provide a real-time trend for operators.
Data trended by a chart is not stored. To store the real-time data use a Trend block. Then with a chart
you can view these values directly on an operator display. The following figure shows the same control
chain with a Trend block added to the chain.
18
Building a SCADA System
Adding other blocks, such as the Statistical Data block, allows you to display statistical data in a graph.
You can also create chains that collect data for monitoring purposes. These types of chains usually
receive inputs from an I/O driver or OPC server through an input block but may not return the inputs,
since no process adjustment is required. The following figure shows a sample monitoring chain design.
• The size of the database that you can construct is limited by the amount of memory you have
available in your computer.
19
Building a SCADA System
• Plan your database carefully. A database that implements a good scan time and phasing
scheme will provide better system performance than the same database that has its blocks
scanned all at once.
• iFIX provides a number of features that can aid in processing large databases:
• Exception-based processing (triggered by a change at the I/O address).
• One shot processing.
• Long scan times (up to 24 hours with phasing configurations of up to HRS:HRS,
HRS:MIN, MIN:MIN, MIN:SEC, and so forth).
• Subsecond processing.
For more information on these topics, refer to the section Scan Times.
Analog Register and Digital Register blocks also have specific addressing and configuration
requirements:
If your I/O driver or OPC server supports structured data types (Timers, Counters, etc.), these
data types only support an offset of 0 for Analog and Digital registers.
20
Building a SCADA System
Database Options
The following table summarizes the differences among all the blocks. For detailed information on
blocks, refer to the iFIX Database Reference.
21
Building a SCADA System
Block Summary
Boolean (BL) x x
Calculation (CA) x x
Fanout (FN) x x
22
Building a SCADA System
Block Summary
Text (TX) x x
Timer (TM) x x
Totalizer (TT) x x
Trend (TR) x x
Most primary blocks, listed in the following table, also include a scan time. The scan time controls
when SAC scans the blocks in the database. Refer to the section Scan Times to learn more about them.
23
Building a SCADA System
Analog Alarm Provides read/write access to analog data and lets you set and acknowledge
(AA) alarms.
Analog Input (AI) Provides read/write access to analog data and lets you set alarm limits.
Analog Output Sends analog data to an I/O driver or OPC server when the upstream block,
(AO) an operator, a Program block, a script, or an Easy Database Access (EDA)
program supplies a value.
Analog Register Provides read/write access to analog data only when a Data link connected to
(AR) the block appears on an operator display.
Digital Alarm Provides read/write access to digital data and lets you set and acknowledge
(DA) alarms.
Digital Input (DI) Provides read/write access to digital data and lets you set alarm limits.
Digital Output Sends digital data to an I/O driver or OPC server when the upstream block,
(DO) an operator, a Program block, a script, or an Easy Database Access (EDA)
program supplies a value.
Digital Register Provides read/write access to digital data only when a Data link connected to
(DR) the block appears on an operator display.
Multistate Digital Retrieves digital data for up to 3 inputs from an I/O driver or OPC server,
Input (MDI) combines the inputs into one raw value, and lets you set alarm limits.
Text (TX) Lets you read and write a device's text information.
24
Building a SCADA System
Note that the first block in the chain is a primary block. This block is the primary source of data for the
next block in the chain and determines the scan time for the entire chain. The following table lists the
available standard secondary blocks.
Calculation Performs mathematical calculations using values from the upstream block and
(CA) up to seven other constants or block values.
Event Action Monitors values or alarm conditions of the upstream block and performs actions
(EV) based on the upstream block's output.
Extended Allows you to collect up to 600 real-time values from an upstream block. You
Trend (ETR) can display these values as a graph by adding charts to your pictures.
Fanout (FN) Sends the value it receives from its upstream block to up to four additional
blocks.
Signal Select Samples up to six inputs, manipulating the inputs according to a user-selected
(SS) mode, and outputs a value to the next block.
Totalizer (TT) Maintains a floating-point total for values passed to it from upstream blocks.
This block sends values up to six digits in precision to other blocks. It can
display up to fifteen digits of precision in an operator display.
Trend (TR) Allows you to collect up to 80 real-time values from an upstream block. You
can display these values as a graph by adding charts to your pictures.
25
Building a SCADA System
Control Blocks
The Function:
block...
Dead Time Delays the transfer of an input value to the next block in the chain for up to 255
(DT) seconds. It can store up to 60 values of incoming variables and sends values on a
first in/first out basis.
Lead Lag Lets you simulate process dynamics and includes a digital approximation of the
(LL) exponential equations for lead lag. This block is useful in feed-forward strategies.
PID (PID) Compares analog inputs to a user-defined set point and sends out incremental
adjustments to bring the process variable closer to the set point.
Ramp (RM) Increases or decreases values to a target value at a specified rate. You can enter
the target values manually or they can be retrieved from other blocks. You can
define three distinct stages for the ramp process.
Ratio/Bias Lets you change incoming signals by adding a constant (bias) and/or by
(RB) multiplying a constant (ratio) after subtracting an offset from the signal. This
block uses less memory and executes faster than the Calculation block.
Pareto (PA) Accepts, calculates, and sorts the frequency of up to eight input values. You can
display these values in an operator display with filled rectangles to create a bar
chart.
Statistical Adjusts a process variable based on calculations of the average offset and the
Control (SC) rate of deviation from a target value, XBARBAR. This block is activated if an
alarm is generated by a Statistical Data block.
26
Building a SCADA System
Statistical Data Observes data from operator input or other blocks and performs statistical
(SD) calculations. This block allows for alarming based on standard SPC techniques.
Batch Blocks
Device Control Coordinates the opening and closing of digital devices based upon user-
(DC) defined conditions.
Program (PG) Runs short programs for batch operations or to increase the degree of
automation in an application.
SQL Blocks
SQL Data Identifies the data to send and retrieve between the process database and your
(SQD) relational database.
SQL Trigger Triggers the execution of SQL commands and defines how your relational
(SQT) database interacts with the process database.
For more information about how these blocks work and how to use them, refer to the Using SQL
manual and the iFIX Database Reference.
27
Building a SCADA System
You can create a Database Dynamo by using the Database Dynamo Toolkit. After you create one, iFIX
treats your Database Dynamo like any other block in the process database. This feature enables iFIX to
process alarms from the Dynamo, along with the other alarms in the system. Database Dynamos also
enable you to:
GE Intelligent Platforms also makes the following Database Dynamos available in the iFIX product:
Analog Input with Essentially the same as an Analog Input block, but will also calculate a
Freeform Scaling slope for EGU limit values when signal conditioning does not apply.
(AIS)
Analog Register 2 Reads and writes analog values to process hardware. Use the AR2 block
(AR2) if you exceed the limit for the number of AR blocks and need a loadable
block with similar functionality.
Digital Register 2 Reads and writes digital values to process hardware. Use the DR2 block
(DR2) if you exceed the limit for the number of DR blocks and need a loadable
block with similar functionality.
Extended Trend Allows you to collect up to 600 real-time values from an upstream block.
(ETR) You can display these values as a graph by adding charts to your
pictures.
16 Bit Digital Status Monitors up to 16 bits in a digital register, and enables or disables 16
(D16) independent messages.
Group Alarm (GAB) Organizes and consolidates the display of alarm information within a
large system.
28
Building a SCADA System
Interval Timer (ITM) Provides a way to time intervals (normally a digital input). It also
includes a GATE input that can be used to disable the timing without
having to place the chain off scan.
Momentary Digital Sends a brief pulse to a digital output (for example, to start a motor).
Output (MDO)
Improved PID (PI2) Essentially the same functionality as the PID block, with more options.
Text Register (TXR) Monitors devices where the raw data is an ASCII string. Similar to the
Text block (TX), but not scanned.
Text Lookup Block Monitors a status or command register in a PLC. Allows the operator to
(TXT) see and enter meaningful strings.
Use the Database Dynamo Configuration Utility (BTKCFG.exe) to add the Database Dynamos in the
above table to iFIX. After iFIX is restarted, you will then be able to add blocks of these types in the
iFIX Database Manager.
1. Double-click the Btkcfg.exe file to launch the Database Dynamo Configuration Utility. By
default, this file is located in the iFIX install folder, C:\Program Files\Proficy\Proficy iFIX.
2. In the Available Database Dynamos list, select the Dynamo that you want to add and click
Add (or optionally, click Add All). This moves the specified Database Dynamos to the
Configured Database Dynamos list.
3. On the File menu, click Save.
4. Restart iFIX. After iFIX restarts, you will then be able to add the blocks in the above table
29
Building a SCADA System
IMPORTANT: Use caution in removing Database Dynamos (loadable blocks). If you use the
Database Dynamo Configuration Utility (BTKCFG.exe) to remove a loadable block but do not remove
the block from the iFIX database, an error message appears in the Alarm History that a block type is
missing and the blocks are not loaded.
1. Double-click the Btkcfg.exe file to launch the Database Dynamo Configuration Utility. By
default, this file is located in the iFIX install folder, C:\Program Files\Proficy\Proficy iFIX.
2. In the Configured Database Dynamos list, select the Dynamo that you want to remove and
click Remove (or optionally, click Remove All). This moves the specified Database Dynamos
to the Available Database Dynamos list.
3. On the File menu, click Save.
4. Restart iFIX.
1. Double-click the Btkcfg.exe file to launch the Database Dynamo Configuration Utility. By
default, this file is located in the iFIX install folder, C:\Program Files\Proficy\Proficy iFIX.
2. In the Configured Database Dynamos list, select the Dynamo that you want to change the slot
number for.
3. In the Slot Number field, enter a new number. You can enter any number between 50 to 149
that is not in use. For more information on slot numbers, refer to the Understanding Slot
Numbers section.
4. On the File menu, click Save.
5. Restart iFIX.
• Add a Database Dynamo block to an iFIX system. After you add the blocks, you must save
your configuration to modify or update the FIX.INI file.
• Remove a Database Dynamo block from an iFIX system. After you remove the blocks, you
must save your configuration to modify or update the FIX.INI file.
• List the installed Database Dynamo blocks in an iFIX system.
NOTE: Installing optional Database Dynamo blocks only copies the files to the hard disk.
These optional block types must be configured using this utility in order for them to appear in
the Proficy iFIX Database Manager.
A Database Dynamo block is an optional block that provides additional functionality to an iFIX
database. When configured, it appears in the Proficy iFIX Database Manager block listing and can be
30
Building a SCADA System
NOTE: In a networked iFIX system, the Database Dynamo Blocks must be installed and configured on
all nodes. Be aware that after you add or remove blocks, you must save your configuration to modify
or update the FIX.INI file.
The database contains approximately 100 slots into which Database Dynamo blocks can be added.
These slots are numbered from 50 to 149. Slots 1 to 49 are reserved for GE Intelligent Platforms
database blocks.
The Database Dynamo Configuration Utility generates a default slot for the Database Dynamo that you
are adding to the database. Use this slot. If you must change the Database Dynamo slot, select the
Dynamo in the configured column and enter a new value for the slot in the Slot field.
NOTE: Once a slot is selected, it should never be changed. If you must change the slot, export the
database to an ASCII file first. Change the slot of the block. Delete the database and import the ASCII
file into a new database.
Use the following commands and buttons to manage Database Dynamo blocks:
• Save – saves the current configuration. Select Save from the File menu or select the Toolbar
Save button. The FIX.INI does not get modified or updated until you save the configuration.
NOTE: If the Database Dynamo Configuration Utility (BTKCFG.exe) detects that the
FIX.INI file is locked when user clicks on OK to save, then the BTKCFG program will warn
you and then will save the modified FIX.INI file as FIXINI.SAV instead.
• Exit – exits the Database Dynamo Configuration Utility. Select Exit from the File menu.
• Help – provides access to Database Dynamo online documentation (this help system).
The Database Dynamo Configuration Utility contains the following columns and buttons:
• Available Column – lists the Database Dynamo blocks that are available on your hard drive.
• Configured Column – lists the Database Dynamo blocks that are configured in your iFIX
system. These block types are available in the Database Manager.
• Add button – allows you to add some or all of the Database Dynamo blocks to your iFIX
system. To add a Database Dynamo to the Configured list, select the Dynamo in the Available
column and click the Add button.
NOTE: After you add or remove blocks, you must save your configuration to modify or
update the FIX.INI file.
• Remove button – allows you to remove one or all of the Database Dynamo blocks from the
Configured list. To remove a Database Dynamo, select the Dynamo in the Configured list and
click the Remove button. Note that removing a Dynamo from your iFIX configuration does
not remove it from the hard drive.
31
Building a SCADA System
NOTE: If you need to remove a Database Dynamo, delete all blocks of that type from the
process database and use the Database Dynamo Configuration Utility (BKTCFG.exe) to
remove the block and update the FIX.INI.
The Database Dynamo Configuration Utility (BTKCFG) supports the following command-line
parameters:
• /ABTK_NAME – This command line parameter allows you to add a loadable block to the
system without actually running the configuration program. In this command line, replace
NAME with the actual block name. There must be no space(s) between /A and the loadable
block name.
• /NXXX – This command line parameter allows you to determine the slot number when used
with the /ABTK_NAME command. Replace XXX with the slot number. There must be no
space(s) between /N and the slot number. Refer to the Understanding Slot Numbers section
for more information.
NOTE: If you do not specify a slot number with the /N command line, you will get the next
available slot.
Example
NOTE: If the block has already been configured, it should NOT be configured again.
Block Fields
Whenever you add a block, its configuration dialog box appears. The dialog box fields and controls
represent locations in the block called fields. These fields store the information you enter into the
dialog box. This information includes such data as the block's name, description, scan time, I/O
address, and scan status.
Other block fields receive information from your process hardware or from other blocks. For example,
a primary block's current value comes from an I/O device. However, a secondary block receives its
current value from an upstream block.
format _ name
The format indicates the type of data that the field stores. The following table lists the available
formats:
32
Building a SCADA System
Field Formats
Refer to the Creating Pictures manual for more information on Data links, objects in pictures, and
charts.
The name indicates the specific information in the field. For example, the current value of a block is
identified by the name:
CV
The combination of the field format and the field name provides you with the information you want.
For example, if you want the current value of a block displayed as a number, you select the field
F_CV. If you want the current value of a block displayed as text, you select the field A_CV.
Scan Times
All primary blocks have a scan time. The scan time determines how often SAC processes the block and
sends the current value to the next block in the chain. SAC processes all secondary blocks chained to a
primary block according to the primary block's scan time.
33
Building a SCADA System
• Time-based processing
• Exception-based processing
• One shot processing
Time-based processing is best used when you want to regularly scan a block. If you only need to scan a
block when its value changes, use exception-based processing instead. Similarly, you can use one shot
processing if you need to scan a block when the process database initially loads.
1 to 60 seconds 1 second
1 to 60 minutes 1 minute
1 to 24 hours 1 hour
SAC scans chains with hour and minute scan times based on the system clock of the local SCADA
server. Scan times are set relative to midnight (00:00:00 hours). SAC scans chains with second and
subsecond scan times based on the computer's start up time, as the following tables describes.
You can assign a time-based scan time to a block by completing its Scan Time field with the following
34
Building a SCADA System
format:
time unit
The following table lists the valid units and their abbreviations. If you do not enter a unit of time, iFIX
assumes the unit is seconds.
Unit Entry
Minutes M
Hours H
3H
Because SAC processes this scan time based to the system clock, it scans the block at 0:00, 3:00, 6:00,
9:00, and 12:00 regardless of when you place it on scan.
• Assign scan times larger than the poll rate assigned in the I/O driver. This ensures that the I/O
driver has time to read and send new values to SAC before SAC scans each block again. See
your I/O driver manual for more information about the poll rate.
• Phase (stagger) scan times to reduce the risk of overloading the CPU. Refer to the section
Phasing to learn more about phasing.
• Assign critical process chains a more frequent scan time than non-critical chains. If you need
to have a chain scanned every 2 minutes, assign a 2-minute scan time, not a 5-second scan
time. Remember that very short scan times require more CPU time and SAC processing than
longer scan times.
• If a chain does not need processing at a set time, assign exception-based processing. Doing so
will require less CPU time and improve performance.
• A change in a process value greater than the defined exception dead band; or
• An unsolicited message from your process hardware.
Using exception-based processing generally requires less CPU time and improves performance
because SAC does not have to scan blocks at defined intervals. However, if a block's value changes
very frequently, time-based processing may be more efficient.
35
Building a SCADA System
You can use exception-based processing only if your I/O driver supports it. Consult your I/O driver
client manual to learn if your I/O driver supports exception-based processing.
NOTE: The SM2 driver supports exception-based processing; the SIM driver does not support
exception-based processing.
CAUTION: Do not assign the same I/O address to exception-based and time-based blocks. Doing so
will cause the exception-based blocks to occasionally miss an incoming value.
While you can use exception-based processing with most blocks, certain blocks perform better with
exception-processing than others. You can use the following blocks in exception-based chains as
needed:
• Fanout • Timer
• Histogram • Totalizer
Typically, the blocks listed in the following table are used as stand-alone blocks and have limitations
when incorporated in an exception-based chain.
When you add the block... In an exception-based chain, do not use the...
The Boolean, Calculation, Event Action, and Signal Select blocks can use values from multiple blocks,
but SAC only processes them according to their upstream primary block's scan time. Therefore, use
these blocks with care in exception-based chains.
36
Building a SCADA System
For example, the following figure shows a sample chain containing a Calculation block that receives
values from Analog Input blocks outside the chain.
In this chain, if SAC scans AI1 by exception, then CA1 only accesses values from the remaining
Analog Input blocks when that exception occurs. CA1 does not access values based upon the scan
times of the Analog Input blocks outside the chain. This means that regardless of whether AI2 and AI3
change in value, CA1 does not recalculate its output unless triggered by AI1.
The following figure shows an improved chain design using the blocks from the previous figure. This
chain allows CA1 to recalculate its value whenever an exception occurs to any of the Analog Input
blocks and ensures all blocks are processed before the recalculating the output.
PID, Lead Lag, and Dead Time blocks use the local computer's system time to define a time constant.
For this reason, it is recommended not using them in exception-based chains.
Analog Alarm and Digital Alarm blocks support exception-based processing. However, you must leave
the Re-alarm Time and the Delay Time fields unmodified; otherwise, SAC places these blocks (and
their chains) off scan when iFIX starts or when you reload the database. SAC processes exception-
based Analog Alarm and Digital Alarm blocks only when an operator acknowledges an alarm from the
iFIX WorkSpace. If an operator acknowledges the alarm with the Remote Acknowledge field, SAC
does not process the block.
You can assign an exception-based scan time to a block by selecting Process by Exception from the
block's dialog box. If you are configuring an exception-based chain with multiple primary blocks, you
must enter 0 in the Scan Time field of every primary block that does not start the chain, and select the
Off Scan option button.
Configuring the primary blocks that do not start the chain in this manner ensures that SAC processes
the chain properly.
37
Building a SCADA System
Any block with a scan time may be configured for one shot processing. However, the same restrictions
that apply to exception-based chains also apply to one shot-based chains.
Phasing
Phasing staggers the time at which SAC scans your blocks. This is particularly important for large
databases because it can dramatically improve performance. Even for small databases, phasing blocks
results in more efficient use of CPU time.
For example, if you have 3 unphased blocks with a 5-second scan time, SAC processes all 3 blocks at
the same time. The following figure shows the CPU usage when SAC processes these blocks
simultaneously.
By phasing these blocks, you specify when SAC processes each block. For example, if you specify a 1-
second phase for the first block, SAC scans the block as the following figure shows:
38
Building a SCADA System
If you specify a 2-second phase for Block 2, and a 3-second phase for Block 3, you can avoid
processing the blocks simultaneously and evenly distribute the block processing and the CPU work
load, as the following figure shows.
Normally, when you specify a phase for a block with a second or subsecond scan time, SAC offsets the
block's initial scan by the phase time when iFIX starts or when the database is reloaded. However,
SAC ignores the phase when:
39
Building a SCADA System
Hours Hours:Minutes
Minutes Minutes:Seconds
Seconds Seconds
Subseconds Subseconds
For example, if the scan time is 5 minutes, you enter a phase of 1 minute and 30 seconds as follows:
1:30
Overphasing
You can also overphase your blocks. An overphased block is one that has a larger phase than scan
time. For example, assume you have the chain shown in the Exception-Based Chain Processing figure.
In this chain, AI2 and AI3 have 5-second scan times. AI1 is overphased with a 5-second scan time and
a 10-second phase. This delays AI1 by 10 seconds and ensures that SAC scans AI2 and AI3 before
AI1. This means that the Calculation block receives the most recent values on which to perform its
functions.
SAC only lets you overphase blocks with second or subsecond scan times. For blocks with a scan time
of a minute or more, you can create an initial offset from the time that SAC would normally scan the
block. For example, assume you want to scan a block every 6 hours with an offset of 2 hours and 10
minutes. You can configure the offset by entering the following phase in the Phase field:
2:10
Because the scan time is linked to the system clock, SAC always scans the block at 2:10, 8:10, 14:10,
and 20:10 regardless of when it was placed on scan. Also remember, SAC scans blocks with scan
times of one minute or longer immediately when iFIX starts or when the database is reloaded. To
forego this initial scan, start SAC with the S command line parameter. Refer to the section Controlling
SAC Startup in the Setting up the Environment manual for more information on specifying SAC
command line parameters.
Block Modes
Blocks can receive data from the following sources:
• Other blocks.
40
Building a SCADA System
You can control from where a block receives data by setting its mode, as the following figure shows:
Placing a block in Manual mode does not place it off scan; SAC still processes the block using its last
value. Manual mode only prevents a block from receiving data from an I/O driver, an OPC server, or
the upstream block. SAC also scans exception-based blocks when they change mode (from Automatic
to Manual mode or vice versa). While in Manual mode, SAC accepts any input within the EGU range
and immediately scans the block. No deadband checking is made on these values.
You can toggle a block's mode from an operator display by adding an object to the display and then
using the Toggle Tag Auto/Manual Expert from the Task Wizard. To display a block's mode from an
operator display, add a Data link that references the block's A_AUTO field. If you have enabled in-
place data entry when configuring the data link, you can then modify that block's mode from the
operator display by clicking on the Data link and entering AUTO or MANL. You can also modify a
block's mode from the Database Manager by entering AUTO or MANL in the Curr Mode column for
the selected block.
The exact function of certain blocks depends on their mode, as the following table describes
41
Building a SCADA System
Analog Reads and writes data every Receives data from operators entering values,
Input scan cycle. scripts, Program blocks, recipes, or Easy
Database Access (EDA) programs, but does not
output values.
Device Executes all statements Suspends execution until the block is placed in
Control without interruption. Automatic mode.
Digital Reads and writes data every Receives data from operators entering values,
Input scan cycle. scripts, Program blocks, recipes, or EDA
programs, but does not output values.
PID Performs PID adjustments. Suspends automatic PID outputs. This allows
Set points can be changed you to change the output from the block. Block
through a Data link in this values, such as the set point and tuning
mode. parameters, can be changed from the keyboard.
Program Executes all statements Suspends execution of its statements until the
without interruption. block is placed in Automatic mode. When the
block is switched back to Automatic mode, it
continues from where it stopped.
Statistical Performs online statistical Suspends online data observations. Used for off-
Data process control on incoming line statistical process control.
data from other blocks.
Blocks placed into Manual mode enter PMAN mode. The block remains in this state until SAC scans
the block again. While in PMAN mode, SAC continues to scan the block according to its scan time and
phase. Manual entries from an operator or a Program block force SAC to scan the block immediately
and put it into Manual mode. Scans after a manual entry depend on the block's scan time.
42
Building a SCADA System
For blocks with short scan times, the next scan time occurs relative to the manual entry. For example,
suppose SAC scans the block AI1 at 1:15:30. This block has a 30-second scan time and a 5-second
phase. If an operator puts AI1 into Manual mode and enters a value at 1:15:45, SAC scans the block
immediately and resets AI1's next scan to 1:16:15 and every 30 seconds thereafter. If the operator
subsequently enters another value at 1:15:50, SAC scans AI1 again and reset AI1's next scan to
1:16:20 and every 30 seconds thereafter.
For blocks with scan times of a minute or longer, SAC synchronizes the next scan to the system clock.
For example, assume AI2 has a one hour scan time and a 30-minute phase. If an operator placed the
block into Manual mode and enters a value at 15 minutes past the hour, SAC scans AI2 immediately
and on the half hour.
For blocks with short scan times, this means that the next scan time occurs relative to the last scan. For
example, suppose SAC scans AI1 at 1:15:30. This block has a 30-second scan time. If an operator
changes the block's mode to Automatic, SAC:
For blocks with long scan times, SAC synchronizes the next scan to the system clock. For example,
assume AI2 has a one hour scan time and a 30-minute phase. If an operator places the block into
Automatic mode, SAC:
• From the iFIX WorkSpace, you select an object connected to a primary block and you run a
script that places the block off scan.
• You modify a block with Database Manager. Modifying a block while SAC is processing that
block's chain places the entire chain off scan. As an option, you can set up Database Manager
to automatically place the modified block and its chain on scan when you finish editing it.
Refer to the section Setting Database Manager Preferences to learn more about Database
Manager options.
• You delete any block within a chain. Refer to the section Deleting Blocks to learn more about
removing blocks from the process database.
43
Building a SCADA System
• Statements in Program blocks, Event Action blocks, or an EDA program place a chain's
primary block off scan.
• You connect the blocks in a chain incorrectly and SAC cannot scan the chain. Use Database
Manager's Verify command to determine which blocks are improperly chained. Refer to the
section Verifying Databases to learn about examining your database for errors.
• A Program block finishes processing its statements and exits, the Program block does not
execute again until the database is reloaded or the block is turned off and placed back on scan.
• You can place a block off scan from the Scan Status column displayed in the spreadsheet.
• An operator clicks an object with a VBA script that places a block off scan. You can quickly
add such a script to an object with the Turn Tag Off Scan button. To use this button, you must
first drag it from the CommandTasks toolbar category onto a toolbar. To learn how to display
toolbar categories and add a button to a toolbar, refer to the section Customizing Toolbars in
the Understanding iFIX manual.
Placing a primary block off scan turns that block's entire chain off scan. You can put the chain back on
scan by:
• Opening an operator display, selecting an object connected to the chain's primary block, and
running a script that places the block on scan.
• Setting up a Program or an Event Action block that places the chain back on scan.
• Changing the text in the Scan status column from OFF to ON.
• Adding or modifying a block with Database Manager or the iFIX WorkSpace. Depending on
the options selected, both programs can automatically place the block on scan.
• An operator clicks an object with a VBA script that places a block on scan. You can quickly
add such a script to an object with the Turn Tag On Scan button. To use this button, you must
first drag it from the CommandTasks toolbar category onto a toolbar. To learn how to display
toolbar categories and add a button to a toolbar, refer to the section Customizing Toolbars in
the Understanding iFIX manual.
44
Building a SCADA System
I/O Drivers
In order for each primary block in the database to receive data, you must connect to your I/O using an
I/O driver. The driver you select depends on your process hardware. GE Intelligent Platforms sells
drivers for many types of hardware. Contact your GE Intelligent Platforms Sales Representative, or
refer to our web site at at http://www.ge-ip.com/support for a list of available drivers.
After you purchase a driver and install it, you can start specifying I/O points you want the current
block to use. If the I/O point does not exist, Database Manager starts your I/O driver configuration
program so you can add it. Refer to your I/O driver documentation to learn how to add an I/O point to
your driver configuration.
iFIX supplies an OPC Client I/O driver, as well as two simulation drivers.
The OPC Client driver provides the interface and communications protocol between OLE for Process
Control servers and iFIX.
Simulation Drivers
You can use the SIM and SM2 to test your chains before you connect to real I/O. The simulation
drivers are matrixes of addresses. Database blocks read values from and write values to these
addresses. If one block writes to a specific address, other blocks can read the same value from the same
address. You can save these values when you save the process database; however, iFIX removes them
from memory when SAC starts or you reload the database.
• Provide a matrix of addresses that database blocks can read from and write to.
• Support analog and digital database blocks.
• Support text blocks.
45
Building a SCADA System
Provides three independent sets of registers. Provides one set of registers shared by both
Analog blocks automatically access the analog, digital, and text blocks.
analog registers, digital blocks automatically
use the digital registers, and Text blocks
automatically access the text registers.
Changing a register in one set does not Changing an analog register in the SIM driver
change the same register in the other set. For modifies the register for analog, digital, and text
example, if you change the value of the reads. For example, if you change the value of the
analog register 1000, the value of the digital analog register 1000, you also modify the value of
register 1000 is unchanged. the same digital register.
Provides 20,000 analog, 20,000 16-bit Provides 2000 analog and digital registers, a total
digital registers, and 20,000 text registers. of 32,000 bits.
Stores analog values in 4-byte (32-bit) Stores analog values in 16-bit integer registers,
floating point registers, numbered 0 to numbered 0 to 2000. Incoming 32-bit values are
19999. Incoming values are not scaled. scaled to 16-bit values (0 - 65535).
Digital values are stored in 16-bit integer Digital values are stored in 16-bit integer registers,
registers, numbered 0 to 19999. numbered 0 to 2000.
Text values are stored in 8-bit registers Text values are stored in the same area as analog
numbered 0 to 19999. Each register holds and digital values, numbered 0 to 2000.
one text character for a total of 20,000 bytes
of text.
Supplies a C API that allows applications to Does not support a C API for accessing SIM
access SM2 analog, digital, and text values. values.
Supports latched data for Analog Input, Does not support latched data.
Analog Alarm, Digital Input, Digital Alarm
and Text blocks when a simulated
communication error is enabled.
46
Building a SCADA System
Can read and write the individual alarm Cannot read and write the individual alarm status
status of each SM2 register. of any SIM register.
Does not provide alarm counters. Provides alarm counters that show the general
alarm state of a SCADA server. For more
information, refer to the Using Alarm Counters
chapter of the Implementing Alarms and Messages
manual.
1. In the Database Manager, in the Driver field for the primary block, select OPC - OPC Client
vx.xx from the list.
2. Click the Browse button next to the I/O Address field. The Browse I/O Address dialog box
appears.
3. Select an I/O point from an available server and group, and then click OK to exit the dialog
box. The I/O Address field will display the following:
Server;Group;ItemID[;AccessPath]
When you click out of the I/O Address field, ;No Access Path will be appended to the existing
text, like this:
Server;Group;ItemID;NoAccessPath
4. If applicable, from the Signal Conditioning list, select a format for mapping the values
coming from your process hardware.
5. If applicable, from the Hardware Options list, select a device control addressing format for the
database block. This selection is overridden if you select a datatype from the Requested
Datatype list on the Item Configuration page of the OPC Client I/O driver Power Tool.
For detailed information, refer to the OPC Client Driver online help.
• Generating a repeating pattern of random and predefined values to help you test your chains.
• Using alarm counters to show the general alarm state of your SCADA server.
47
Building a SCADA System
For analog values, the register ranges from 0 to 1999. The bit is not used.
For digital values, the register ranges from 0 to 1999. The bit is 0 to 15. The full range of register/bit
settings is 0:0 to 1999:15.
NOTE: The SIM driver does not support analog scaling (A_SCALE_* and F_SCALE_* database
fields).
0:0
50:2
63:15
The SIM driver shares only one set of registers for Analog and Digital blocks. As a result, you can
address all 2000 registers as analog or digital values. The following table shows the digital bit values
when a SIM register contains an analog value.
When the Analog Value is... The Bits for Digital Values are...
48
Building a SCADA System
When the Analog Value is... The Bits for Digital Values are...
Database Manager does not accept entries into the Hardware Options and Signal Conditioning fields
when using the SIM driver. In addition, the SIM driver supports:
To help you test your database with simulated input, the SIM driver provides a set of registers that
generate a repeating pattern of random and predefined values. For example, you could ramp a value to
simulate the performance of specific chains or you might generate a series of random numbers to test
the entire database.
49
Building a SCADA System
register:bit
Example
To ramp a value with the RA register, enter the following text in the I/O Address field:
RA
RA Ramp a value from 0 to 100% of the EGU range at a rate Read only
controlled by the RY register.
RB Count from 0 to 65535 at a rate of twenty counts per second. Read only
RC Shift one bit through a 16-bit word at a rate controlled by the Read only
RZ register.
RD Generate a sine wave from 0 to 100% of the EGU range at a rate Read only
controlled by the RY register.
RE Generate a sine wave from 0 to 100% of the EGU range at a rate Read only
controlled by the RY register. The sine wave is delayed 90
degrees relative to the RD register.
RF Generate a sine wave from 0 to 100% of the EGU range at a rate Read only
controlled by the RY register. The sine wave is delayed 180
degrees relative to the RD register.
RG Generate random values between 25% and 75% of the EGU Read only
range.
RH Ramp up a value to 100% of the EGU range and then ramp it Read only
down to 0% again at a rate controlled by the RJ register.
50
Building a SCADA System
RJ Control the ramp speed (in cycles per hour) for the value in Numeric
register RH. The default value is 60 (1 cycle per minute). Value (2 to
3600)
RY Control the speed (in cycles per hour) at which new values are Numeric
generated for registers RA, RD, RE, and RF. By default, the RY Value (2 to
register is set to 60 (1 cycle per minute). 3600)
RZ Control the speed (in bits per minute) that the register RC Numeric
changes its value. By default, the RZ register is set to 180 (3 bit Value (2 to
shifts per second). 1200)
All SIM registers support Analog Input, Analog Register, Digital Input, and Digital Register blocks.
However, as the following table describes, certain blocks provide optimum performance when used
with certain registers.
Analog Register RA, RD, RE, RF, RF, RH, RI, RJ, RK, RX, RY, and RZ
NOTE: The RB and RC registers support Digital Register offsets of A_0 to A_15.
51
Building a SCADA System
• You have more test data than the SIM driver can hold.
• You want to determine how the database responds to 32-bit values.
• You need to access the driver from a C program.
The SM2 driver matrix consists three independent sets of registers, one for analog values, one for
digital values, and one for text values. Analog database blocks read from and write to analog registers
only. Once a block writes a value, other analog blocks can read the value from the register written to.
Digital database blocks work the same way, reading and writing from the digital registers. iFIX clears
all SM2 values when iFIX starts.
The SM2 driver does not use the Hardware Options or Signal Conditioning fields.
The SM2 driver provides an S register to simulate a communication error. Using this register, all
analog and digital reads return an error as if communication to the process hardware has been lost.
NOTE: The SM2 driver latches data when a simulated communication error is enabled.
52
Building a SCADA System
You can access SM2 analog, digital, and text values through the C API that the driver supplies. The
file SM2API.H describes the API and the functions reside in the file SM2API.LIB. You can link this
library file to your C application to access the API's functions. You can find both files in your Base
path. By default, this path is C:\Program Files\Proficy\Proficy iFIX\ or C:\IFIX\, depending where you
installed iFIX.
NOTE: You must have the iFIX Integration (EDA) Toolkit installed to use this API.
Example
Suppose you are using the SM2 driver to store data from a legacy system. Using the C API and a
number of preconfigured analog blocks, you can extract your data from the legacy system and store it
in your process database.
C API Functions
UINT16 GetAnalog(UINT16 GetAnalog reads an analog value (32-bit float) to the register
index, FLOAT *data); indicated by 'index'.
FE_OK is returned if the operation succeeds.
FE_IO_ADDR is returned if the register index is out of range.
FE_RANGE is returned if the analog value exceeds the range of
a 32-bit float.
NOTE: GetAnalog and GetDouble access the same table in the
SM2.
UINT16 SetAnalog(UINT16 SetAnalog writes an analog value (32-bit float) to the register
index, FLOAT data); indicated by 'index' and causes an exception for the specified
register even if the data has not changed.
FE_OK is returned if the operation succeeds.
FE_IO_ADDR is returned if the register index is out of range.
NOTE: SetAnalog and SetDouble access the same table in the
SM2.
UINT16 GetDouble(UINT16 GetDouble reads an analog value (64-bit float) to the register
index, DOUBLE *data); indicated by 'index.'
FE_OK is returned if the operation succeeds.
FE_IO_ADDR is returned if the register index is out of range.
NOTE: GetAnalog and GetDouble access the same table in the
SM2.
53
Building a SCADA System
C API Functions
UINT16 SetDouble(UINT16 SetDouble writes an analog value (64-bit float) to the register
index, DOUBLE data); indicated by 'index' and causes an exception for the specified
register even if the data has not changed.
FE_OK is returned if the operation succeeds.
FE_IO_ADDR is returned if the register index is out of range.
NOTE: SetAnalog and SetDouble access the same table in the
SM2.
UINT16 GetDigital(UINT16 GetDigital reads 16 digital values (all 16 bits in one of the
index, UINT16 *data); 20,000 digital registers) to the register indicated by 'index'.
FE_OK is returned if the operation succeeds.
FE_IO_ADDR is returned if the register index is out of range.
NOTE: The API can only read and write the entire 16 bit
digital register at one time. If you want to change 1 bit, you can
read the register, modify the desired bit and write the register.
However, when you modify a single bit, ensure that only one
thread in one application is accessing a digital register at one
time.
UINT16 SetDigital(UINT16 SetDigital writes 16 digital values (all 16 bits in one of the
index, UINT16 data); 20,000 digital registers) to the register indicated by 'index' and
causes an exception for all 16 bits of the specified register even
if the data has not changed.
FE_OK is returned if the operation succeeds.
FE_IO_ADDR is returned if the register index is out of range.
NOTE: The API can only read and write the entire 16 bit
digital register at one time. If you want to change 1 bit, you can
read the register, modify the desired bit and write the register.
However, when you modify a single bit, ensure that only one
thread in one application is accessing a digital register at one
time.
54
Building a SCADA System
C API Functions
UINT16 SetDigitalEx(UINT SetDigitalEx writes 16 digital values (all 16 bits in one of the
index, UINT16 data, UINT16 20,000 digital registers) to the register indicated by 'index' and
mask) causes an exception for specific bits selected from a mask. An
exception is triggered for the bits set in the mask even if the
data has not changed.
FE_OK is returned if the operation succeeds.
FE_IO_ADDR is returned if the register index is out of range.
NOTE: The API can only read and write the entire 16 bit
digital register at one time. If you want to change 1 bit, you can
read the register, modify the desired bit and write the register.
However, when you modify a single bit, ensure that only one
thread in one application is accessing a digital register at one
time.
55
Building a SCADA System
C API Functions
UINT16 SetText(UINT16 SetText writes the text specified by `data' to text registers
index, char *data, int size) starting at the register indicated by `index'. The number of
characters to write is indicated by `size'. Exception-based
processing is not supported for text values. SetText does not
automatically add a null terminator to the text being written. If
you require null-terminated strings, make sure your program
adds a null terminator prior to writing the text.
FE_OK is returned if the operation succeeds.
FE_IO_ADDR is returned if the register index is out of range.
UINT16 GetText(UINT16 GetText reads the text specified by `data' from text registers
index, char *data, int size) starting at the register indicated by `index'. The number of
characters to read is indicated by `size'. GetText does not
automatically add a null terminator to the text being read. If you
require null-terminated strings, make sure your program adds a
null terminator after reading text.
FE_OK is returned if the operation succeeds.
FE_IO_ADDR is returned if the register index is out of range.
56
Building a SCADA System
C API Functions
57
Building a SCADA System
58
Building a SCADA System
Using the preceding table, you can see that if a driver returns a HIHI alarm to a block that is in HI
alarm, iFIX changes the alarm state to HIHI because the driver alarm is more severe. However, if the
alarms are of equal severity, iFIX does not change the alarm state of the block. For example, if the
block is in HI alarm and the driver returns a LO alarm, the block's alarm state does not change because
both alarms have equal severity. Once an operator acknowledges the HI alarm, iFIX changes the
block's alarm state.
NOTE: If you set a communication error to the S register with the SetCommError function, then all
59
Building a SCADA System
SM2 registers show a COMM alarm status. When examining the alarm status of text, only the status of
the first character (byte) is read. You can control the alarm status functions of the SM2 driver using its
C API only. Refer more information about this API, refer to the Using the SM2 C API section.
ServerName;GroupName;ItemID;AccessPath
where ServerName is the name of your OPC server, GroupName is the name of the OPC group you
want to access, and ItemID is the name of the OPC item you want to read or write. Including the
AccessPath is optional and instructs the server how to access its data. For more information about
connecting to your OPC server, refer to your OPC PowerTool documentation.
Signal conditioning converts the data received from the process hardware into a format that is easily
recognizable by operators. You can apply signal conditioning by selecting the type you want to use
from a block's Signal Conditioning field.
Suppose you have a 700-gallon water tank and you want to display how much water is in the tank. You
can display the tank's water level as:
For this example, assume the I/O driver sends an unsigned integer to the process database (that is, 0 to
65535). The following table lists sample high and low EGU limits you could assign to the input block.
These settings scale the incoming values to display the tank's water level in percent filled and in
gallons.
60
Building a SCADA System
Percent 0 to 100
Gallons 0 to 700
The following figure shows the values that are displayed when the tank is full, half full, and empty.
Scaling Values
You can change the EGU limits' precision by editing the High Limit and Low Limit fields. When you
change the precision, Database Manager modifies all references to the current block throughout the
database. For example, if you create an Analog Input block with EGU limits of 0.0 to 100.0 and then
change the precision to 0.00 to 100.00, Database Manager searches the database for all references to
this block and makes the appropriate changes. In this case, a Program block that contains the following
step:
is adjusted to read:
61
Building a SCADA System
To change the EGU limits' range, you must change all references to this block manually. For example,
if you create an Analog Input block with limits of 0.0 to 100.0 and then change the range to 0.0 to
700.0, all references to this block's EGU limits are unaffected until you edit them. In this case, assume
you have a Program block that outputs a value equal to half of this block's original range, as shown
below:
You must modify this Program block's SETOUT statement to reflect the new range, as shown below:
Database Manager accommodates the EGU limit formats listed in the table Available EGU Limits.
Each format is accurate to six digits. Because of compiler limitations, round-off errors may occur in
the seventh digit. The following figure shows sample values and their accuracy.
NOTE: Refer to your I/O driver manual for additional integer ranges supported by your equipment.
62
Building a SCADA System
You can establish a connection with a different server by opening a different database. Once you select
the new server you want to connect to, Database Manager disconnects from the existing server and
opens the selected server's current database.
NOTE: From the Database Manager, you can open databases from SCADA nodes with iFIX 3.0 or
greater installed. You cannot add, modify, or delete blocks in databases from earlier versions of iFIX,
such as iFIX 2.5 or FIX32.
You can also disconnect from a SCADA server by closing the database. If the database has unsaved
changes, Database Manager prompts you to save them before breaking the connection.
Adding Blocks
After you open or create a new database, you can begin adding blocks to your database. Database
Manager lets you add blocks by:
63
Building a SCADA System
• Right-clicking a cell in the spreadsheet and selecting Add block from the pop-up menu.
• Clicking the Add button from Database Manager's toolbar (Classic view).
• Clicking Add in the Blocks group on the Home tab (Ribbon view).
• Entering the name of a nonexistent block in the Next field of a block dialog box and clicking
the arrow button. Refer to the VBA Naming Conventions section of the Writing Scripts
manual for information on appropriate names.
• Using the Generate Wizard.
When any of the first four methods are used, you can select the type of block you want to add. Once
you do this, a block configuration dialog box appears. By completing the dialog box and clicking OK,
you can add the block to the database. For more information on completing a block configuration
dialog box, refer to the iFIX Database Reference help.
NOTE: Whenever you add or delete a block in the database, we recommend you resolve your pictures.
For more information about resolving pictures, refer to the Creating Pictures manual.
For the block type, you can select an existing or a new block. This selection determines the specific
values assigned to each block created. For example, when you select a new block, the Wizard creates
blocks with default values. However, when you select an existing block, the Wizard creates blocks
with values of the selected block. This option lets you create many similar blocks quickly without
having to reconfigure them later.
When specifying the block names, you must enter a prefix, suffix, starting number, ending number,
and increment value. The Generate Wizard uses this information to systematically assign names to the
blocks it creates. For example, the following values create blocks with the names F1T1 through F20T1.
F 1 20 1 T1
The Generate Wizard cannot create a block with a name that already exists. If the information you
specify results in an existing block name, the Wizard skips that block and continues on to the next one.
Using the Generate Wizard, you also have the option of customizing up to 5 fields. Customizing these
fields lets you fine tune the block's configuration. For example, if you need to create 50 Digital Input
blocks, each one will have a different I/O address. You can use the Generate Wizard to assign these
addresses if they occur in a sequential order.
You can customize a field by selecting it and entering a prefix, suffix, starting number, ending number,
and increment value. The Wizard handles this information identically to the block name values you
entered. If the resulting sequence of field values ends before the Wizard creates all the new blocks, the
sequence repeats from the beginning. For example, suppose you want to create 10 Analog Input
blocks, AI1 through AI10 and you customize the I/O address of each block with the following
information:
64
Building a SCADA System
N 10 50 10 :7
Block Address
AI1 N10:7
AI2 N20:7
AI3 N30:7
AI4 N40:7
AI5 N50:7
AI6 N10:7
AI7 N20:7
AI8 N30:7
AI9 N40:7
AI10 N50:7
You also have the option of enabling the Use Custom Format check box. When you enable this check
box, the Wizard lets you enter multiple patterns for the five fields you have selected. A pattern acts as
a programming statement for generating a range of numeric or string values. The following table lists
the syntax for each type of pattern.
65
Building a SCADA System
Pattern Types
Notice that the difference between literals and constants is minor. Both are strings and can be up 40
characters. However, quotation marks (" ") are required for constants when the string contains any
mark of punctuation or non-alphanumeric symbol such as an angle bracket or a colon. If the string
contains only numbers or letters, the quotation marks are optional.
Also notice that negative and floating point numbers are not supported within patterns. You can
generate these types of numbers by enclosing a minus sign or a decimal point in quotation marks
outside of the pattern. Negative increments are not supported. Consider the following examples:
"-"<1:10:1> -1 -2 -3 -4 -5 -6 -7 -8 -9 -10
By combining different pattern types, you can generate a wide range of block field entries. For
66
Building a SCADA System
example, if you want to customize the Description field for a group of blocks, you could enter a pattern
such as Alarm Status from Area <"A", "B", "C">. Notice that the text outside the pattern does not
require quotation marks.
Duplicating Blocks
Another way you can add similar blocks to the database is by duplicating them. Like the Generate
Wizard, you can duplicate multiple blocks. However, you cannot customize specific block fields; you
can only specify a new name for the duplicated blocks. As a result, the new blocks are identical to the
original ones.
For example, suppose you have an Analog Input block monitoring the speed of a pump and want to
monitor five other pumps in a similar way. By duplicating the block, you can reproduce it and create
the additional blocks you need.
Copying and pasting between Database Manager and a third-party application lets you quickly modify
a block from your text editor or spreadsheet. You can also create new blocks with your third-party
application and paste them into Database Manager. This feature can be helpful when you do not have
access to iFIX and you want to create new blocks for later inclusion into the process database.
When you copy blocks to the clipboard, Database Manager converts and saves them in comma
separated value (CSV) format. Once saved on the clipboard, you can paste the blocks into any
application that supports CSV files.
Pasting blocks into Excel requires you to configure the program so that it converts and displays the
data correctly. You also need to configure Excel when you drag and drop data from Database Manager
or import a database saved in CSV format.
To configure Excel:
Pasting CSV-based blocks into Database Manager converts and adds them to the process database in
memory. If the names of these blocks are already in use, Database Manager prompts you to replace the
67
Building a SCADA System
existing blocks with the ones you are pasting. If you do not replace them, Database Manager generates
an error for each duplicate block. You can avoid creating these errors by loading a database that does
not contain the blocks you are pasting or by modifying the names of the blocks prior to pasting them
into Database Manager.
Database Manager also displays errors if you attempt to paste a block from Excel that is not in the
correct format. The easiest way to ensure the block is in the correct format is to export a block of that
type from the process database or paste a block into Excel, modify it, and paste the modified block
back into Database Manager.
Moving Blocks
In addition to sharing blocks by copying and pasting them, you can cut and paste them. Cutting blocks
from the database is similar to copying them; the main difference is that cut blocks are physically
moved and placed on the clipboard, allowing you to move blocks to other databases.
Prior to removing blocks from their chains, Database Manager takes each chain off scan. Make sure
you place the chain on scan when you finish editing it. iFIX provides several ways to do this. For more
information about placing a block or chain on scan, refer to the section Placing Blocks On and Off
Scan.
If you cut a block from the middle of the chain, Database Manager attempts to connect the two
portions of the chain, as the following figure shows.
68
Building a SCADA System
Modifying Blocks
You can modify any database block displayed in the spreadsheet. Typically, you need to modify a
block:
NOTE: While you can modify Analog Register and Digital Register blocks, we do not recommend that
you modify the current value of these blocks using Database Manager. To learn more about using
Analog Register and Digital Register blocks, refer to the section Working with Analog and Digital
Blocks.
Deleting Blocks
Whenever you find that specific blocks are no longer needed, you can delete them from the database.
Database Manager lets you delete blocks by selecting:
• The blocks you want to remove and cutting them without subsequently pasting them
• The Delete button from the Blocks group on the Home tab (Ribbon View).
The difference between these methods is the Delete button in Classic View or Delete in Ribbon view
removes the selected blocks completely and does not let you retrieve them if you change your mind.
By cutting blocks, you instruct Database Manager to save a copy on the clipboard allowing you to
paste them back into the database until the next copy or cut occurs.
Regardless of the method you choose to remove the blocks, Database Manager displays a message box
with the following text:
Click Cancel to retain the blocks and continue using Database Manager. If you click Delete All,
Database Manager deletes the blocks and takes the chains containing them off scan. Make sure you
place the chain on scan when you finish editing it. iFIX provides several ways to do this. For more
information about placing a block or chain on scan, refer to the section Placing Blocks On and Off
Scan.
If the deleted block was in the middle of the chain, Database Manager attempts to connect the two
portions of the chain as the Removing a Block from a Chain figure shows.
69
Building a SCADA System
Saving a Database
When you finish making changes to a database, you can save the database to disk. By saving the
database, you enable the SCADA server to reload the database in memory when you restart iFIX.
Make sure you have enough disk space available when saving your database to disk. If your SCADA
server does not have enough disk space, you may lose the changes you have just made. For example, if
you build a 3MB database, make sure you have 3MB of free disk space available.
The -N command line parameter enables you to save a database on a remote SCADA server. The -D
command line parameter enables you to save a database to another PDB file name. Both command line
parameters are optional; if you do not use them, you save the current database on the local SCADA
server.
When you save a database from a VBA script, use routines similar to the following:
nodename = "MIXER1"
database = "BACKUP"
End Sub
End SubRefer to the Database Manager online help system for more information about the RUNTASK
from the Program block. For information about the Shell function, refer to the iFIX Automation
Interfaces Help file.
70
Building a SCADA System
how to accomplish these tasks. Refer to the following topics for detailed information:
With Database Manager, you can search in any spreadsheet column for text by selecting the column
head of the column you want to search in. You must also enter a search string. The string is the text
you want to locate in the selected column. You can enter up to 29 alphanumeric characters for the
search string.
Once you enter the text you want to locate, Database Manager locates the first occurrence of the string
in the selected column. To locate subsequent occurrences, you can repeat this process.
Find Options
You can toggle the case sensitivity of a search using the Match Case option. When this option is
enabled, Database Manager searches for the exact text and case you enter. The search string is not case
sensitive when you disable the option. For example, selecting the Tag Name column and entering the
search string:
AI
• ai
• Ai
• aI
You can also find whole or partial words with the Match Whole Word Only option. Database Manager
treats the search string as a whole word when you enable the option. By disabling the option, you can
find the specified string inside other words. For example, if you search for the string "line" with the
Match Whole Word Only option disabled, Database Manager matches the following descriptions with
the search string:
71
Building a SCADA System
Replacing Data
In addition to finding text, you can find and replace it. Finding and replacing text is similar to just
finding it. Both tasks require you to select the cell or column you want to search in and enter a search
string. However, when finding and replacing data, you can also enter a replacement string. This text is
the data with which you want to replace the search string.
Find Options
You can enter up to 29 alphanumeric characters for both the search and replacement strings. Both
strings also accept the Match Case and Match Whole Words Only options. However, while you can
toggle the case sensitivity of the search string with the Match Case option, the replacement string is
always case sensitive. This means that when replacing data, Database Manager inserts text exactly as
you enter it.
You also have the option to replace the text in the current selection (a cell or column) or the current
column. The Selection option button lets you replace text in the current selection. The Entire Column
option button lets you replace text in the entire column.
Using Go To
While working with your database, you may want to display the text in a specific row or column.
When the number of rows or columns is small, using the scroll bars to move through the spreadsheet is
a quick way to display the necessary information.
However, as the spreadsheet grows, you may find scrolling through it slow and time-consuming. To
speed up locating information, you can jump to any row or column. You can also jump to any block in
the spreadsheet when do not know the block's row number by entering its name instead.
By automatically updating the spreadsheet, you can troubleshoot your database by monitoring specific
blocks. Should you identify an error, you can correct it and immediately see your change's effect.
You can temporarily disable the automatic refresh option by pausing the spreadsheet. Pausing updates
instructs the Database Manager to stop updating the screen. It does not affect SAC or the scan status of
the blocks in the database.
NOTE: Database Manager automatically pauses updating the screen when you add, modify, delete, or
generate blocks or when you print, reload, or import the database.
In addition to automatically refreshing the screen, you can manually update it whenever you want to
refresh the values in the spreadsheet. Manually updating the screen can be particularly helpful when
you automatically update the spreadsheet infrequently, and can be used in conjunction with the
automatic refresh option to update the screen more frequently than every 5 seconds.
72
Building a SCADA System
By completing these tasks, you can create a custom display for yourself and other database developers.
• Cell text
• Spreadsheet grid
• Row and column head background and text
73
Building a SCADA System
Using this feature, you can display related information without resizing or rearranging the spreadsheet
columns. For example, if you configure the Type column to stop scrolling, you can easily relate block
values, names, and types, allowing you to identify the block containing the values in each column.
When you create a non-scrolling column, all columns to the left of it no longer scroll until you unlock
them.
The columns you can select correspond to common and block-specific fields. Columns corresponding
to common block fields appear with only the field name. For example, the following text appears for
the common field Current Value:
Curr Value
type fieldname
The type is a two or three-character abbreviation for the block type and the fieldname is the name of
74
Building a SCADA System
the block field. For example, suppose you see the following text:
AI Smooth
AI is the block abbreviation and identifies the field as an Analog Input specific field. The text Smooth
indicates the field name and corresponds to a block field (in this case the A_SMOTH field). The Block
Type Abbreviations table lists the abbreviations for each block.
NOTE: If you remove a column from the spreadsheet that Database Manager uses to sort data, the
column is also removed from the sort order.
By saving spreadsheet layouts, you eliminate the need to recreate them. Database Manager saves your
spreadsheet layout in format files residing in the FIX Local path by default. These files have the
extension .FMT.
Loading a format file is like creating a spreadsheet layout. It appears in the Properties dialog box,
allowing you to modify it as needed. In addition, when Database Manager opens the format file, the
program replaces the current set of spreadsheet columns with the ones listed in the format file. If a
block does not include a field that corresponds to one of the new columns, the text "----" appears in
that cell.
Type A_NAME
Description A_DESC
75
Building a SCADA System
If you prefer a different default arrangement of the spreadsheet columns, you can override the preset
default layout with your own by saving the current settings. You can also restore the original layout as
the default by loading the format file and selecting Save Settings from the Tools menu.
5. Click OK. A message should appear indicating that the "DllUnregisterserver" succeeded.
6. Click OK.
7. Repeat steps 3-6 to properly unregister these files:
• Fixdb32IOAddress.ocx
• Fixdb32Tagname.ocx (making the appropriate substitution for the file name)
8. From the Start menu, click Run. The Run dialog box appears.
9. In the Open field, enter:
REGSVR32 "C:\Program Files\Proficy\Proficy iFIX\Fixdb32egu.ocx"
10. Click OK. A message should appear indicating that the "DllRegisterserver" succeeded.
11. Click OK.
12. Repeat steps 8-11 to properly register these files:
76
Building a SCADA System
• Fixdb32IOAddress.ocx
• Fixdb32Tagname.ocx (making the appropriate substitution for the file name)
13. Restart the iFIX WorkSpace.
14. Start the Proficy iFIX Database Manager, open a tag, and confirm all of the proper tag
information appears.
The following topics provide more detailed information about querying and sorting a database.
Once you know the information you want to display, you can construct the query using the following
syntax:
or
where column is a column heading you want to display, enclosed in curved brackets, operator is one of
the relational operators listed in the table Relational Operators, and value is a number or string
enclosed with quotation marks (" ").
77
Building a SCADA System
Relational Operators
Operator Meaning
= Equal to
!= Not equal to
Case Sensitivity
Strings entered in a query are not case sensitive. For example, a query such as:
retrieves blocks with names that start with AI. It also retrieves blocks with names that start with:
• Ai
• ai
• aI
When entering a number, the block's EGU range determines the maximum and minimum values you
can enter. The following table lists these limits. To learn more about the EGU range, refer to the
section Understanding EGU Limits.
78
Building a SCADA System
to display all the blocks in security area Packaging with a scan time of 3 seconds.
Boolean Operators
AND Select the block when both query A and query B are true. A AND B
NOT Invert query. If query A is true, its value becomes false. NOT A
NOR Select the block when both query A and query B are false. A NOR B
XOR Select the block if query A and query B are not both true or A XOR B
both false.
NAND Select the block when query A and query B are not both true. A NAND
B
79
Building a SCADA System
{Tag Name} ="A*" Every block whose name that begins with an "A."
Other operators, such as the greater than (>) or less than (<) operators, treat wildcards literally.
{Scan Time} > No blocks, because the question mark is treated literally and "1M" through
"?M" "9M" have a lesser ASCII value than "?M".
{Scan Time} = All blocks with a scan time from 1 minute to 9 minutes.
"?M"
Grouping Queries
You can group queries together using parenthesis. For example, consider the following query:
Database Manager evaluates this query from left to right. Expressions enclosed in parenthesis are
treated as a unit. Consequently, as Database Manager evaluates the above query, it retrieves every
block that begins with an "A." From this list of blocks, the program then displays all the Analog Input
or Analog Output blocks.
Be careful where you place parenthesis in a query. The following query yields a very different
spreadsheet compared to the query given above.
This query displays every Analog Input block that begins with an "A" and every Analog Output block
in the database.
Editing a Query
After you create a query, it remains the current query until you change it. Using this feature, you can
append a new query to the existing one and re-query the database. For example, suppose you create the
following query:
80
Building a SCADA System
This query displays all the Analog Input blocks in the Boston alarm area. By appending the query:
you can display only those Analog Input blocks in the alarm area which have a LOLO alarm value less
than or equal to ten.
For example, to find blank cells in the Description column use the query:
This query displays all the blocks in the database that have no text in their Description fields.
One way to refine a query is to start with a simple query and append other queries to it. For example,
the following query displays all the Analog Input blocks in the database.
{Type} = "AI"
Once Database Manager retrieves these blocks, you can refine the query by adding other queries to it.
For example, you could add the following query to display only the Analog Input blocks with a scan
time of two seconds:
Similarly, you could increase the number of blocks in the spreadsheet by displaying all the Analog
Input blocks and then, to the original query, add all Analog Output blocks in the database with the
following query:
OR {Type} = "AO"
81
Building a SCADA System
Loading a query is like entering one. It appears in the Enter Query field, allowing you to refine or
expand the query as needed. In addition, when Database Manager opens the query file, the program
retrieves the blocks that match the specified criteria.
For example, suppose you want to sort the spreadsheet by the Type and Scan Time columns in
ascending order. Once you select these columns:
• Database Manager sorts the spreadsheet by the Type column alphabetically (ascending order).
82
Building a SCADA System
• Next, the program sorts the Scan Time column in numeric order.
Loading a sort order is like entering one. It appears in the Properties dialog box, allowing you to
modify it as needed. In addition, when Database Manager opens the sort order file, the program re-
sorts the spreadsheet.
Before loading a sort order, verify that the columns Database Manager sorts on appear in the
spreadsheet. If the columns do not appear, add them. For more information about adding columns to
the spreadsheet, refer to the chapter Locating and Displaying Data.
NOTE: Because the Tag Name column only contains unique data, Database Manager never needs to
sort beyond this column. For this reason, when you save or load a sort order containing the Tag Name
column, Database Manager ignores any column that follows. Ignored columns are not saved or
loaded.
Managing Databases
Database Manager lets you manage your process databases in many different ways. For example, you
can verify them to ensure they do not contain any errors. You can also reload, import, and export your
databases as needed. This chapter describes all these management tools.
• Verifying Databases
• Reloading Databases
• Displaying a Database Summary
• Exporting Databases
• Importing Databases
83
Building a SCADA System
Verifying Databases
You can ensure a process database contains no configuration errors by verifying it. Verifying a
database also ensures that iFIX can process each block and that the database functions as you intend.
While verifying a process database, Database Manager ensures that each block:
If Database Manager detects no errors, it displays a message box to inform you. However, if it
encounters errors, the Verify Database dialog box appears. This dialog box lists each error and the
block that contains it. The following table lists the possible verification errors and how to resolve them.
tagname a:tagname b The block, tagname b, has Remove one or more links to
Tag is in more than more than one upstream tagname b.
one chain block linked to it. Tagname a
identifies one of these blocks.
tagname:Tag is not in You may have a secondary Remove the secondary block or add a
any chain block that is not in any chain primary block to the start of the
or is the first block in a chain. chain.
tagname: Block not The block, tagname, chains Create a block with the name
found for NEXT to a block that does not exist. specified in the Next field or enter the
name of a block that exists.
tagname:Chains to The block, tagname, contains Change the name in the Next field or
itself its own name in its Next leave it blank. If you want to
field. repeatedly perform a task, use a
Program block instead.
tagname: is not The block, tagname, does not Create the block or change the
defined exist and another block reference to a block that exists.
references it.
fieldname No such The field, fieldname, does not Change the reference to a field that
field in FDT exist and it is referenced by a exists.
block in the database.
84
Building a SCADA System
Exceeding MAX chain The database contains a chain Redesign this chain by breaking it
size of 30 with more than 30 blocks. into two smaller chains or remove
any unnecessary blocks.
Correcting Errors
You can correct any error by double-clicking it to display the associated block configuration dialog
box.
To correct errors:
Reloading Databases
Even though you can create multiple databases for a SCADA server, Database Manager can load and
display only one of them at a time. You can load any database residing on the current SCADA server
by selecting Reload from the Database menu. Reloading a database lets you:
Using the SCU, you can select the default database to load on start-up. When you load another
database, it remains in memory until you restart iFIX. Refer to the Setting up the Environment manual
for more information about specifying the database to load on start-up.
85
Building a SCADA System
nodename = "MIXER1"
database = "BACKUP"
load_pdb = System.ProjectPath + "\DBBLOAD" + " -N" + nodename + " -D" +
database
return_value = Shell (load_pdb, 0)
End Sub
The -N command line parameter enables you to reload a database on a remote SCADA server. The -D
command line parameter enables you to reload a database other than the currently loaded one. Both
command line parameters are optional; if you do not use them, you reload the open database on the
local SCADA server.
For information about using the Shell function from a script, see the Visual Basic help system.
CAUTION: The DBBLOAD system task does not prompt you to save changes to the database. Be sure
you save your database before executing a script that reloads the database. Otherwise, you will lose
all your changes.
• Size in bytes.
• Serial number.
• Contents.
• I/O count.
Using this information can help you manage your databases. For example, knowing the database's
serial number can help you determine if someone modified your database since its last save. The serial
number is a unique code that Database Manager creates whenever you add or delete a block. By
writing down the serial number after you modify the database, you can subsequently compare the
current number to the previous one.
High-level documentation about the database can also help you manage your databases. You can
provide this level of information by displaying the database's contents. The contents lists by block type
the number of blocks used and allocated. A used block is one you have configured. An allocated block
is a placeholder in memory. To make efficient use of memory and improve performance, all SCADA
servers pre-allocate 10 blocks at a time when you initially create a block of a specific type, as the
following figure shows.
86
Building a SCADA System
As an option, you can restrict your process database to a specific number of I/O blocks (intended for
small applications that do not require many I/O points). In this environment, the I/O count lets you
determine how many I/O blocks are in use.
Exporting Databases
You can export the current process database to a comma separated value (CSV) or GDB text file.
Typically, you export a database when you want to:
For example, you could export your process database in CSV format and import the data into
Microsoft Excel. By importing the file into Excel, you can:
NOTE: If you export the iFIX Database into CSV format and open the CSV file in Microsoft Excel, you
may notice that some Numeric fields containing decimals display without the decimal in Excel. For
example, 100.01 displays as 100.01, however 100.00 displays as 100 in Excel. In order to display the
entire number including the decimal (for instance: 100.00), update the cell format to a Numeric
format.
For more information using these features, refer to your Excel documentation.
Database Manager exports all the blocks displayed in the spreadsheet. As a result, you can query the
database to display only the blocks you want to export. For example, to export all the Analog Input
blocks in the database, use the query:
{TYPE} = "AI"
For more information about querying the database, refer to the section Understanding Query Syntax.
The DBExporter.exe command allows you to export all tags currently loaded on local or remote node
to a comma separated value (CSV) or GDB text file. When no command parameters are specified,
DBExporter.exe exports tags on local node to PDB name.csv to local PDB path. Typically, this path is:
C:\Program Files\Proficy\Proficy iFIX\PDB.
87
Building a SCADA System
Syntax
Parameters
The following table lists the command line parameters available for the DBExporter.exe exporter tool.
Parameter Description
/NNodeName Optionally, specify the remote SCADA node name that you want to to
export the database from. Replace NodeName with the actual node name.
/OOutputFileName Optionally, specify the output file name with full path or no path. If no path
is specified, output file is created in local PDB path. Typically, this path is:
C:\Program Files\Proficy\Proficy iFIX\PDB. The file name portion requires
the file extension: .csv or .gdb.
Replace OutputFileName with the actual output file name. For example:
MyFile.csv.
/F Optionally, allows you to run a fast export. The export runs as fast as
possible, maximizing CPU usage up to 100%.
/R Optionally, allows you to skip header information (that includes the node
name, database name, file name, and date and time of the export), in the
output file.
Error Codes
The following table describes the error codes and descriptions DBExporter.exe exporter tool.
Code Result
0 Successfully exported.
2 Invalid commands.
3 Invalid node.
88
Building a SCADA System
Code Result
7 Empty database.
9 Exporting failure. The export file had an open or write error, EDA call failure, or other
similar type error during the export process.
You can also enter comments into the export file by typing an exclamation point (!) as the first
character on a line.
For more intricate editing of the export file, you need to understand the file format. For example, an
export file saved in CSV format lists each row of the spreadsheet as one row in the CSV file. Each
block's fields appear delimited by commas. The first two fields of each block are:
A_NAME, A_TAG
You only need to enter values for these two fields when creating new blocks. If no additional field
values are present, Database Manager creates the block using the default block values. However, by
adding these optional values to a block entry, you can complete specific dialog box fields when the
block is imported. For example, the following line creates an Analog Input block with a scan time of 1
minute:
AI, AI2, , , , 1M
The first two lines of each block entry are required and contain the block type and block name.
Without these lines, Database Manager will not add the block to the database when you subsequently
89
Building a SCADA System
import it.
Subsequent lines in a block entry appear for each field on the block's configuration dialog box.
Including these additional lines is optional. If no additional lines are present, Database Manager creates
the block using the default block values. However, by adding these optional lines to a block entry, you
can complete specific dialog box fields when the block is imported. For example, to set the scan time
of the block AI1 to 5 seconds, the export file should contain the following information:
Analog Alarm AA
Analog Input AI
Analog Output AO
Analog Register AR
Boolean BL
Calculation CA
Dead Time DT
Device Control DC
Digital Alarm DA
Digital Input DI
Digital Output DO
Digital Register DR
Event Action EV
90
Building a SCADA System
Fanout FN
Histogram HS
Lead Lag LL
On-Off Control BB
Pareto PA
PID PID
Program PG
Ramp RM
Ratio/Bias RB
Signal Select SS
Statistical Control SC
Statistical Data SD
Text TX
Timer TM
Totalizer TT
91
Building a SCADA System
Trend TR
Importing Databases
Using Database Manager, you can import any database into memory. Importing a database merges it
with the database currently in memory.
NOTE: Before you import a database, stop any I/O drivers or OPC servers you may have running.
1. Export a database. For more information about exporting a database, refer to the section
Exporting Databases.
2. Change the order in which the blocks are listed in the export file. For more information on a
database's scanning order, refer to the section Changing a Database's Scanning Order.
3. In Classic view, on Database Manager's toolbar, click the New button.
-Or-
In Ribbon view, click the Database Manager button, and then click New.
4. Import the edited export file.
This process ensures that only the original database resides in memory when Database Manager
imports your database.
Import errors encountered by Database Manager are stored in the file IMPORT.ERR. This file resides
in the Database path.
92
Building a SCADA System
Advanced Topics
After you put a database into production, you may find that SAC scans certain blocks in an order you
did not intend. This chapter explains how you can fine-tune your database and change the scanning
order.
This chapter also describes how to customize Database Manager's toolbar and Tools menu.
Customizing the toolbar lets you select only the toolbar buttons you require. Customizing the Tools
menu lets you add menu items that launch other applications from Database Manager. Refer to sections
Customizing the Toolbar and Customizing the Tools Menu for more information on these features.
Also assume that by default SAC scans AI1 first, AI2 second, and AI3 third. Because SAC scans AI1
first, it processes the entire chain, computing the value of the Calculation block, before it scans AI2
and AI3. If either of these values change during the current scan cycle, the Calculation does not receive
them until AI1 is processed again.
Changing the scanning order addresses this potential problem. By scanning AI1 last, you ensure SAC
has updated values for both AI2 and AI3 prior to computing the value of the Calculation block.
You can also phase the blocks so that SAC scans AI1 last. To learn more about phasing, refer to the
Phasing section.
1. Regardless of their order in the database, SAC processes blocks that output a value to an I/O
device (using a Cold Start value). SAC does not examine these values for alarm conditions.
2. SAC updates all primary blocks according to the scan time and phase. Blocks with the same
scan time and phase update in the following order.
93
Building a SCADA System
Suppose you create the five identical Analog Input blocks, shown in the following figure. SAC scans
these blocks in the order shown.
Now, assume you delete the third Analog Input block because you no longer need it. This creates an
empty space in the database, as the following figure shows. SAC now scans the blocks as shown.
94
Building a SCADA System
You subsequently discover you need to add two new Analog Input blocks, AI6 and AI3. The first new
block, AI6, fills in the space left by deleting a block. The second new block, AI3, is added after AI5.
SAC now scans the blocks in the order shown by the following figure.
For example, using the blocks in the Sample Calculation Chain figure, you can ensure SAC scans AI1
after AI2 and AI3 as follows:
For more information about completing these tasks, refer to the sections Exporting Databases and
Importing Databases.
Once you remove a button, you can always add it back to the toolbar. Adding custom buttons is not
supported. By default, the toolbar comes pre-configured with all the available buttons added for you.
95
Building a SCADA System
By customizing Database Manager's Tools menu, you can add menu items that launch any iFIX or
third-party application. You can also arrange and delete these menu items as needed.
Once you specify this information, Database Manager creates the menu item and saves it as part of its
default configuration. You can subsequently select the menu item to launch the associated application.
96
Index
A block modes
B described ........................................................ 2
97
Building a SCADA System
Statistical Process Control (SPC) ................. 26 command line parameters (BTKCFG) ..............32
98
Building a SCADA System
99
Building a SCADA System
setting preferences ..........................................8 deleting blocks from the process database ........70
100
Building a SCADA System
101
Building a SCADA System
M optional blocks..................................................21
memory overriding
102
Building a SCADA System
before you begin creating ...............................5 overriding the default spreadsheet layout .....75
103
Building a SCADA System
104
Building a SCADA System
function...........................................................3 example.........................................................94
saving SCU
databases from a script or Program block ..... 70 searching a database spreadsheet ......................71
105
Building a SCADA System
described....................................................... 82 trending
saving ........................................................... 83 U
summary ....................................................... 27 V
toolbar W
106
Proficy* HMI/SCADA - iFIX
CHANGE MANAGEMENT AND iFIX
Version 5.1
May 2010
All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical
means, including photocopying and recording, without permission in writing from GE Intelligent Platforms, Inc.
The information contained in this manual is believed to be accurate and reliable. However, GE Intelligent Platforms,
Inc. assumes no responsibilities for any errors, omissions or inaccuracies whatsoever. Without limiting the foregoing,
GE Intelligent Platforms, Inc. disclaims any and all warranties, expressed or implied, including the warranty of
merchantability and fitness for a particular purpose, with respect to the information contained in this manual and the
equipment or software described herein. The entire risk as to the quality and performance of such information,
equipment and software, is upon the buyer or user. GE Intelligent Platforms, Inc. shall not be liable for any damages,
including special or consequential damages, arising out of the user of such information, equipment and software, even
if GE Intelligent Platforms, Inc. has been advised in advance of the possibility of such damages. The user of the
information contained in the manual and the software described herein is subject to the GE Intelligent Platforms, Inc.
standard license agreement, which must be executed by the buyer or user before the use of such information, equipment
or software.
Notice
©2010 GE Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Intelligent Platforms, Inc.
Microsoft® is a registered trademark of Microsoft Corporation, in the United States and/or other countries.
All other brands or names are property of their respective holders.
We want to hear from you. If you have comments, questions, or suggestions about our documentation, send them to the
following email address:
doc@ge.com
Table of Contents
About this Guide ............................................................................................................................... 7
Introduction ....................................................................................................................................... 7
Features ........................................................................................................................................ 8
Limitations ..................................................................................................................................... 9
Pictures Folder........................................................................................................................ 20
Security Folder........................................................................................................................ 20
iii
Change Management and iFIX
Check In...................................................................................................................................... 36
Destroy ....................................................................................................................................... 39
Label ........................................................................................................................................... 43
iv
Change Management and iFIX
Quick Start: Configuring iFIX with Integrated Change Management Support ................................55
Logging In ................................................................................................................................... 63
Index ............................................................................................................................................... 73
v
Change Management and iFIX
vi
About this Guide
If you develop iFIX pictures or projects, you can use Proficy* Change Management within iFIX to
help you manage your iFIX project files, and track changes to these files.
This help system describes how to use Change Management features in the iFIX WorkSpace. The help
includes the following sections:
• Introduction
• Configuring iFIX with Change Management
• Using Change Management from the iFIX WorkSpace
• Information for Proficy Machine Edition Users
• Quick Start: Configuring iFIX with Integrated Change Management Support
• Quick Tour: Using Proficy Change Management Features in iFIX
For more information on using Change Management outside of iFIX, refer to the Proficy Change
Management online help.
Introduction
Version controlled files provide fast recovery and reduce the cost and risk of downtime. The Proficy
Change Management add-on for the iFIX product provides version control for your iFIX project files.
Change Management with Proficy Machine Edition also provides audit trails for tracking changes,
security for preventing unauthorized changes, and scheduled backups to ensure you always have the
latest files.
If you purchase the Change Management feature for iFIX, Change Management is integrated into your
iFIX development environment. To access Change Management functions in the iFIX WorkSpace
environment, you use the right-click menu on the WorkSpace system tree, as illustrated in the
following figure. Or, in Ribbon view only, you may access project level Change Management
functions on the Administration tab, in the Proficy Change Management group, in the Manage Project
list.
7
Change Management and iFIX
Features
When you use Proficy Change Management with iFIX, you can do the following:
• Manage all iFIX project files, including configuration files, FIX Desktop, and non-iFIX
project files (such as .OCXs, .DLLs, and .EXE files) from the iFIX WorkSpace.
• Use all Change Management features from the right-click Manage menu from the iFIX
WorkSpace tree.
• Perform a text compare of pictures (including VBA), process databases, Dynamos, SCU files,
and user.fxg changes.
• Use the Proficy Change Management Client to run scheduled backups of your iFIX project
files and report back the changes.
• Capture information on who, when, and why iFIX project files were modified. The audit trail
displays in the Proficy Change Management (PCM) History window (also available from the
right-click Manage menu).
• Identify changes between versions using the PCM History window.
• Automatically log in to the Change Management Server from the iFIX WorkSpace, when you
synchronize your user names and passwords across the products.
• Label iFIX files, folders, or projects with specific text string identifiers.
• Optionally require iFIX electronic signatures when checking out or checking in files to the
Change Management Server (from the right-click menu) in the iFIX WorkSpace.
• Include predefined comments for the operators to select when entering an electronic signature.
The comments you display can reside in a different table than the other iFIX electronic
signatures.
8
Change Management and iFIX
Limitations
When using Proficy Change Management with iFIX, be aware of the following limitations:
• In order to use the integrated Change Management features within iFIX, you must have
Proficy Change Management 5.8 or 5.9 installed.
• Running the Proficy Change Management (PCM) Server or the Client/Scheduler on iFIX 5.1
nodes is not supported on Microsoft Windows Vista or Windows Server 2008, since Proficy
Change Management 5.8 and 5.9 do not support these Windows versions.
• In order to use the integrated Change Management features within iFIX, you must have
administrative rights on the iFIX Client computer.
• Project-specific folders created for multiple users, such as those described in the Best
Practices for Managing Multiple iFIX Users section in the Optimization guide, cannot be
managed with Proficy Change Management features in iFIX. Project-specific folders are
typically used by Terminal Server users.
• Do not check in any iFIX files which contain special characters, as detailed in the following
Microsoft article: http://office.microsoft.com/en-us/access/HA102146111033.aspx. For
example, if you attempt to check in an iFIX tag group file with a special characters such as the
% character, an error message appears. This error a result of the inability to check files with
special characters into the Visual SourceSafe application that is used by Proficy Change
Management.
• When using Terminal Services with iFIX, Proficy Change Management is supported only
from the console session – not from a remote connection.
• While you can add, check in, check out, and get Proficy Batch Execution files from the
Change Management Server, the version of the Batch Execution files is not retained. Since
there is no version recorded, a version number for these files does not appear in the PCM
History window.
• Proficy Batch Execution files are added or checked in to the base iFIX project folder on the
Change Management Server. For example, if your project name is FIX1, then the Batch
Execution files are checked in to the base FIX1 project folder in Machine Edition. They are
not checked into the APP folder, or a separate Batch Project folder at this time.
• In the PCM History window, when displaying the differences in the FIX Desktop Files, all
files except the *.hgp files for the Historical Display are compared.
• In the PCM History window, when displaying the differences of the Security folder, all files
except the display.dov file (if it exists) are compared.
• In the PCM History window, when doing a Text compare, changes to ActiveX Controls or
Chart Configuration are not included.
• Depending on the number of FIX Desktop files you have, it may take a longer time to perform
Change Management functions with these files than with other iFIX files. This is because for
FIX Desktop all files are managed together, instead of individually. For a list of the files in
the FIX Desktop folder that you can manage, refer to the FIX Desktop Folder section.
• Because the FIX Desktop files are saved as one file, individual FIX Desktop files cannot be
viewed individually from within the Proficy Change Management application.
• Be aware that the Change Management application's Server Trim utility removes labels from
iFIX projects, folders, security files, FIX Desktop files, Historical Assignment files, and user
add-on files. It does, however, leave your labels on individual iFIX files.
9
Change Management and iFIX
• Files from a remote location cannot be added to your Change Management project. If you
want to use a network path, you must use a mapped network drive.
• Security files that point to a remote security path or a non-local iFIX path cannot be added to
the Change Management Server. Make sure that the primary and backup security path in the
Security application's Configuration dialog point to the iFIX Local folder. For instance, if you
install iFIX to the default folder, this path is: C:\Program Files\Proficy\Proficy iFIX\LOCAL.
• If multiple users want to manage iFIX files from the WorkSpace, and each user wants the
ability to check out the entire project, the project paths (including the drive letter) must be the
same on all computers. Also, the iFIX user names and passwords must be the same on the
Change Management Server.
• If you Get an iFIX project from the Change Management Server, you must restart iFIX. If the
SCU files you get do not map to your current path (the paths are different), the project will not
start in iFIX. You must update the SCU file. Refer to the Get Other Project section for more
details.
• While iFIX is running, you cannot get security files, the current SCU, or the User.fxg file
from the iFIX WorkSpace. You can, however, use the Get Other Project command to copy
these files to another location, and then update the SCU to run the project.
• You currently cannot manage the iFIX WorkSpace's Help & Information folder, or the files it
contains.
• The Proficy Change Management Server is only available in English. You can run the Proficy
Change Management Client that is installed with iFIX in English and other single byte
operating systems. Double or multiple byte operating systems are not supported.
For more information on these steps, refer to Overview of iFIX Configuration Steps section.
10
Change Management and iFIX
1. Add users for the integrated iFIX feature. If you want to use the automatic login feature,
Change Management user names and passwords should match the iFIX ones.
2. Configure user privileges.
For more information on these steps, refer to Overview of Change Management Server Configuration
Steps section.
To log in to the Change Management Server when iFIX starts up, select the Logon at WorkSpace
Startup check box in the Change Management User Preferences. Otherwise, with this check box
cleared, you can right-click the node name in the system tree, point to Manage, and then click Logon.
If the Prompt for User Name and Password at Logon check box is selected, the Change Management
Logon dialog box appears, as shown in the following figure.
If you clear the Prompt for User Name and Password at Logon check, you can automatically log on to
the Change Management Server without this dialog box. You must synchronize your iFIX and Change
Management users properly to do so, however. When automatic login is configured properly, no
Change Management Logon dialog box appears, unless the automatic logon fails due to an invalid user
name or password. For information on automatically logging in users, refer to the Automatic Logon to
the Change Management Server section.
After you log in, the Connection status in the bottom right-hand corner of the iFIX WorkSpace
changes from red to green and status bar reads: "Connected to PCM Server Name" as illustrated in the
following figure (where Name refers to the actual server name).
11
Change Management and iFIX
TIP: If you have a very large iFIX project, you most likely do not want to enable the Logon at
WorkSpace Startup. If it is selected, it may take several additional seconds or minutes (depending on
the size of your project) for the WorkSpace to start up.
Logging Off
To log off from the Change Management Server from the iFIX WorkSpace, right-click the node name,
point to Manage, and select Logoff. When you are disconnected from the Change Management Server,
the bottom right-hand corner of the iFIX WorkSpace the status bar reads: "PCM Not Connected" and
appears in red, as illustrated in the following figure.
After you log on to the Change Management Server from iFIX, the Manage commands are available
from the right-click menu on files and folders that store custom information about your projects and
work environment.
For instance, the Picture folder and individual pictures within that folder all display the Manage right-
click menu option when selected. Applications such as the Cross Reference Tool do not. However,
with the integrated Change Management functionality, you can double-click on an application in the
system tree, such as the Cross Reference Tool, to start it.
The following table describes the items in the WorkSpace's system tree from which the Manage right-
click menu is available.
12
Change Management and iFIX
Application Validator X
Database folder X
Database\Process Database\*.pdb X
Documents folder X
13
Change Management and iFIX
FIX Recipes X
Globals folder X
Globals\User folder X
14
Change Management and iFIX
Pictures folder X
Picture\Picture files X
Security folder X
Security\Login application X
Security\Security Files X
Security\Setup application X
15
Change Management and iFIX
For example, the following table shows the picture file icon with the different indicators you will
encounter while working with integrated Change Management features in iFIX.
Icon Status
File is not checked in to Change Management Server. It resides on the local computer, as
a writable file.
File resides on the Change Management Server, but is not checked out.
16
Change Management and iFIX
The following sections explain more on each subfolder in the system tree, and any restrictions:
TIP: When a path appears in the following sections, such as the iFIX PIC folder, it refers to a folder in
the path where you installed the iFIX product. For instance, if you installed iFIX to the default
location, the iFIX PIC folder is located in the C:\Program Files\Proficy\Proficy iFIX\PIC path.
Be aware that you can only manage application support files collectively. You cannot manage these
files individually.
17
Change Management and iFIX
Database Folder
From the Database folder you can manage the Process Database (*.PDB) files in the iFIX PDB folder.
The AlarmAreas.AAD is checked silently in with the *.PDB files.
Each .PDB file can be managed separately. If the .PDB file that you check out is different than the last
one that was loaded in the Database Manager, when you try open that .PDB file in the Database
Manager, a message box appears asking you to reload the database.
Documents Folder
From the Documents folder you can manage Microsoft Excel or Word files in the iFIX APP folder.
Each file can be managed at the individual file level.
Be aware that you can only manage FIX Desktop files collectively. You cannot manage these files
individually. Depending on the number of FIX Desktop files you have, it may take longer to perform
Change Management functions with FIX Desktop files than with other iFIX files.
The files from the older RCP.exe application, the *.RCX and *.RCY files, cannot be managed.
18
Change Management and iFIX
Globals Folder
From the Globals folder in the WorkSpace system tree, you can manage globals in the User.fxg file.
This file is stored locally in the PIC folder, whose default path is: C:\Program Files\Proficy\Proficy
iFIX\PIC. Other *.fxg files in the PIC folder are excluded. If you choose to manage the User.fxg file,
you must close the WorkSpace and restart it in order to save User.fxg locally. The User.fxg file is not
saved until the WorkSpace restarts.
• Chart Group Wizard files (*.CSV) contained in the iFIX HTR folder.
• Historical Assignment files (*.CFG and *.DAT) contained in the iFIX HTR folder.
Each individual chart group or historical assignment file appears separately under the Historical
Configuration folder.
• Binary I/O Driver Configuration Files (*.yyy, where yyy is the driver acronym).
• IGS Driver files (*.OPF).
IMPORTANT:
• To manage driver configuration files, you must add the driver in the SCU's SCADA
Configuration dialog box. To add the I/O driver from the SCU, in the Configure menu, click
SCADA. In the I/O Driver Definition area, click the browse (...) button to select the I/O driver
name, and then click Add.
• Be aware that configuration files for 7.x series drivers saved outside of the iFIX database
directory cannot be managed from the integrated iFIX with Change Management
environment. If you installed iFIX to the default location, the path to the iFIX database
directory is: C:\Program Files\Proficy\Proficy iFIX\PDB.
• Color Tables (*.FTB) contained in the iFIX PIC folder. The Tables.lst file is checked in
silently with the *.FTB files.
19
Change Management and iFIX
Each individual color table and tag status file appears separately under the Picture Support folder.
IMPORTANT: Be aware that the iFIX WorkSpace saves color table files (*.FTB) on exit only. So, if
you try to get the latest version from the Change Management Server, it may appear as if the get did
not work properly. Restart the WorkSpace, and your color tables should get updated. For more
information refer to the Tips for Getting Color Table (*.FTB) files section.
Pictures Folder
From the Pictures folder you can manage:
Each individual picture file (*.GRF) appears separately under the Picture folder.
• Toolbar Categories (*.TBC) contained in the iFIX LOCAL folder. Only categories created by
the logged in user are shown, along with the iFIX default .TBC files.
• Toolbars (*.TBX) contained in the iFIX LOCAL folder.
The Node_Association.dat files that are associated with the .TBC or .TBX file are silently checked in
with these files.
Each individual toolbar or toolbar category appears separately under the Project Toolbar folder.
Reports Folder
From the Reports folder you can manage Crystal Report files (*.rpt) contained in the APP folder. Each
individual report appears separately under the Reports folder.
Schedules Folder
From the Schedules folder you can manage event schedules (*.evs) in the iFIX PDB folder. Each
individual schedule appears under the Schedules folder.
Security Folder
From the Security folder you can manage the following iFIX security Files: *.UTL, *.AUT, *.DOV,
and the SANAMES.CFG files.
20
Change Management and iFIX
In order to check in and check out security files, the iFIX user must have the Security Configuration
application feature assigned to it, in addition to the Change Management feature.
TIP: For information on configuring users and application feature selection, refer to the
Understanding iFIX Security section in the Implementing Security electronic book.
While iFIX is running, you cannot get security files from the iFIX WorkSpace. The Get feature, from
both the right-click menu and from the PCM History window, is unavailable for Security Files. You
can, however, use the Get Other Project command to copy these files to another location, and then
update the SCU to run the project.
Be aware that security files that point to a remote security path or non-local iFIX path cannot be added
to the Change Management Server. Make sure that the primary and backup security path in the
Security application's Configuration dialog point to the iFIX Local folder. For instance, if you install
iFIX to the default folder, this path is: C:\Program Files\Proficy\Proficy iFIX\LOCAL.
Also, be aware that you can only manage security files collectively. You cannot manage these files
individually.
• Initialization files (*.INI) contained in the iFIX LOCAL folder. Be aware that you can only
manage the *.INI collectively. You cannot manage these files individually.
• SCU files (*.SCU) contained in the iFIX LOCAL folder. The *.SCU files can be managed
individually.
In order to check in and check out system configuration (*.SCU) files, the iFIX user must have the
System Configuration application feature assigned to it, in addition to the Change Management
feature.
TIP: For information on configuring users and application feature selection, refer to the
Understanding iFIX Security section in the Implementing Security electronic book.
While iFIX is running, you cannot get the current SCU. The Get feature, from both the right-click
menu and from the PCM History window, is unavailable for SCU files. You can, however, use the Get
Other Project command to copy these files to another location, and then update the SCU to run the
project. If you get an .SCU file that does not map to your current path (the paths are different), the
project will not start in iFIX. You must update the SCU file. Refer to the Get Other Project section for
more details.
21
Change Management and iFIX
The .TGS files, that are created when you resolve tags in a picture, are not managed. The .TGS files
are mainly used for speeding up run mode performance.
For an quick overview of the entire setup process, refer to the Setting up iFIX for Use with Change
Management section.
NOTE: Each set of steps is listed in the order that they should be performed.
6. If you want to use Windows security, select the Use Windows Security check box, and, in the
Full Name and Domain fields, enter the login name and domain name of the Windows user
account you want to use.
22
Change Management and iFIX
7. If you want to limit the time the operator remains logged into iFIX, in the Login Timeout
field, enter a timeout value.
8. Under the Application security area, click Modify. The Application Feature Selection dialog
box appears.
9. In the Available list box, select Change Management, and then click Add.
NOTE: To add all the security areas to the current account, click Add All.
To confirm that any remote project paths appear as mapped network drives:
To confirm that all security paths are mapped to the iFIX Local path:
1. Start iFIX.
2. Open the System Configuration (SCU) application.
3. On the Configure menu, click Security. The Security Configuration dialog box appears.
4. On the Edit menu, click Configuration. The Configuration dialog box appears.
5. Confirm that the Security Path and Backup Path both point to the iFIX Local path. If you
install iFIX to the default location, this path is: C:\Program Files\Proficy\Proficy
iFIX\LOCAL.
If the paths do not point to the local install path, make adjustments so that they do.
23
Change Management and iFIX
7. If you always want a Logon dialog box to display when a user logs on to the Change
Management Server from the iFIX WorkSpace, select the Prompt for User Name and
Password check box.
For information on how to configure automatic login, refer to the Automatic Logon to the
Change Management Server section.
8. In the Change Management Project Name field, enter the name of your project.
If an integrated iFIX project folder is not already created on the Change Management Server,
this is name of the project folder that will be created when you log in to the Change
Management Server for the first time. It is recommended that you create your projects through
iFIX this way, rather than through the Change Management Server.
9. Optionally, if you want to require that the user enter comments when checking in or checking
out files, select the Require comments to check in and check out files check box.
10. If you want to enable iFIX electronic signatures, enter the electronic signature options. For
more information on how to do this, refer to the iFIX Electronic Signatures and Change
Management section.
11. Click OK.
TIP: If you have a very large iFIX project, you most likely do not want to enable the Logon at
WorkSpace Startup. If it is selected, it may take several additional seconds or minutes (depending on
the size of your project) for the WorkSpace to startup.
24
Change Management and iFIX
With automatic logon, no dialog box appears requesting your logon credentials. Instead, when you
choose to logon, either at the WorkSpace start up or from the system tree's right-click menu, the logon
occurs automatically. If the automatic logon fails due to an invalid user name or password, the Change
Management Logon dialog box does appear, however.
To enable automatic logon to the Change Management Server from iFIX, from the iFIX User
Preferences dialog box on the Change Management tab, you must clear the Prompt for User Name and
Password at Logon check box.
For automatic logon to work properly, the user you log into iFIX with must also be defined on the
Change Management Server. The user name and password defined in on both servers must be
identical.
TIP: In iFIX, user names and passwords are not case-sensitive. However, in Proficy Change
Management, passwords are case-sensitive. When in iFIX, it is recommended that you enter both the
user name and password all in the same case, so that it is less likely you will run into issues later.
Similarly, when creating your iFIX users, you should be aware of the limitations set on the Change
Management passwords. You do not want to create an iFIX user with a password that Change
Management does not support. For more information on creating passwords in Change Management,
refer to the "Working with users" topic in the Proficy Change Management help.
When the user names and passwords do not match in both applications, or the iFIX user you are logged
in as is not defined as a user on the Change Management Server (or vice versa), after an error message,
the Logon dialog box appears, even with the Prompt for User Name and Password at Logon check box
cleared.
If the user name and password entered for the electronic signature is rejected, iFIX does not perform
the check out or check in file command on the Change Management Server.
Comments can be entered into both the Electronic Signature dialog box and Check In/Out dialog box.
The comments included with the Electronic Signature dialog box are tracked with other iFIX electronic
signatures, and appear in the same audit trail.
If you want to use electronic signatures for checking in files to the Change Management Server from
25
Change Management and iFIX
the iFIX WorkSpace, open the User Preferences dialog box, click the Change Management tab, and
enter the options you want in the Electronic Signature Options area.
For more information about electronic signatures in iFIX, refer to the What are Electronic Signatures?
section in the Using Electronic Signatures electronic book.
1. If the iFIX WorkSpace is open and you are logged into the Change Management Server, log
off. To do this, right-click the node name in the system tree, select Manage and then click
Logoff.
NOTE: You cannot make changes to the Change Management setting in iFIX while logged on
to the Change Management Server.
6. In the Electronic Signature Options area, select the type of type of electronic signature you
want to enable:
• Perform Only – the operator (the "performer") that initiated the action must
electronically sign for that action.
• Perform and Verify – the operator (the "performer") that initiated the action must
electronically sign for that action and another individual (the "verifier") must
electronically sign to validate the action.
By default, the electronic signature Type is set to None.
7. If you want to allow the operator to repeatedly sign for successive actions by supplying only a
password, when electronic signatures are enabled, select the Allow Continuous Use check
box.
Continuous use applies only to the person performing an action and does not affect the person
verifying an action.
8. If you want to provide a different set of predefined comments in the drop-down list, do the
following:
• For the Perform Only comments, click Create Default Perform Comments Table
• For the Perform and Verify comments, click Create Default Perform Comments
Table
Alternatively, you can enter a name for the table in each of these fields.
26
Change Management and iFIX
9. If you created your own comment tables, configure them. Refer to the steps in the Comment
Tables, Electronic Signatures, and Change Management section for more information.
10. Click OK.
11. Restart the iFIX WorkSpace.
The table names you enter in the Perform Comments Table Name and Verify Comments Table Name
fields can be the same as the ones you use for your other iFIX applications, or you can configure
Change Management specific comment tables. If you click the button to create a table, Change
Management specific tables are created:
• ChangeManagementPerformComments
• ChangeManagementVerifyComments
However, you can also enter the name of the table you want to use into the edit box for the Perform
Comments Table Name and Verify Comments Table name fields from the User Preferences dialog
box's Change Management tab. You do not have to use the button to create the table, if you already
have one created. If not, you can create it by clicking the corresponding Create Default Comments
Table button.
IMPORTANT: The operator can enter text in the Comment field regardless of whether you configure
a comment table and create pre-defined comments. The custom tables are provided if you want to
customize the drop-down list that displays. Custom tables are saved as part of the User.fxg file. If you
choose to manage the User.fxg file, you must close the WorkSpace and restart it in order to save
User.fxg locally. The User.fxg file is not saved until the WorkSpace restarts.
• ChangeManagementPerformComments
27
Change Management and iFIX
• ChangeManagementVerifyComments
The comment tables you create are listed in the System Tree of the WorkSpace, in the Globals
folder, in the User category.
28
Change Management and iFIX
NOTE: Each set of steps is listed in the order that they should be performed.
TIP: For more information on creating passwords in Change Management, refer to the
"Working with users" topic in the Proficy Change Management help.
6. Click OK.
7. In the Navigator, right-click Access Control and select Check In Access Control.
1. In the Navigator, right-click Access Control and select Check Out Access Control.
2. Double-click the User folder to view all users.
3. Right-click user that you just created in the previous set of steps, and select Add to Group,
and then Administrators.
IMPORTANT:
• Members of the Administrator group can perform any operation in Change
Management, the Scheduler, or projects stored in the folder. You must be an
Administrator if you want to run schedules and have full check in and check out
rights on the iFIX project files. The Administrator group has full manage rights,
including check out rights.
• If you want to give a user a subset of permissions (for example, just check in/check
out privileges), it is recommended that you create a group that only has Check
in/Check out set to TRUE, and then assign that user to the group.
• Permissions are "additive." So, if a user belongs to 3 groups and if any those three
groups a permission set to TRUE, the user gets that permission. The permissions that
the iFIX WorkSpace uses include: Check In and Out, Get, Label, Override Checkout,
Change Password, and Edit Project List.
4. In the Navigator, right-click Access Control and select Check In Access Control.
29
Change Management and iFIX
Logoff Allows you to log off from the Change Management Server.
This option is available only from the node name folder (the top level folder) in the
system tree.
Add All Allows you to add all of your iFIX project files from the selected node to the
iFIX Files Change Management Server.
This option is available only from the node name folder (the top level folder) in the
system tree.
Add Allows you to add a file or folder to the Change Management Server.
Check Out Allows you to lock a file, folder, or project from the Change Management Server.
Another logged in user cannot modify that item or items until you check the item or
items back in.
Optionally, if the file or folder on your local computer is newer than the one in the
Change Management Server, you can leave the local copy of the file or folder and
still lock the files on the Change Management Server with the Check In – so that no
one else can edit them.
To copy files when checking out, clear the "Don't overwrite local file(s) with
managed copy" check box in the Check Out dialog.
Check In Allows you to copy your local file, folder, or project from your local SCADA to the
Change Management Server.
After you check the item or items back in, they can be edited by other users.
30
Change Management and iFIX
Check Out Allows you to view whether the file is checked out from the Change Management
Status Server, and the name of the user currently working on the file.
Undo Allows you to leave the files in the Change Management Server without copying
Check Out your changes to it.
The Undo Check Out command releases the files so that other users can work on
them.
Destroy Allows you to permanently remove a file from the Change Management Server.
You can optionally remove the file from your local drive, or delete it as well.
Get Latest Allows you to copy the latest version of the selected folder, file, or project from the
Change Management Server to your local computer. If a version already exists on
your local computer, it is overwritten.
The file or files get copied to your local computer with writable attributes. The
status file or files on the Change Management remains the same. No Check Out
occurs when you get the latest version.
If you get the entire project, be aware that you must restart iFIX so that it starts with
the SCU and security files you get, which lets you work on the project.
Get Other Allows you to copy an entire iFIX project from the Change Management Server to
Project your local computer. You cannot copy another project to your local iFIX install
path.
NOTE: If you later want to run this project in iFIX, you need to update the SCU.
Click the How Do I button in the Get Other Project section for more information.
This option is available only from the node name folder (the top level folder) in the
system tree.
Label Allows you to assign a user defined text string to a specific version of a file, folder,
or project in the Change Management Server.
History Allows you to view the revision history of a file, folder, or project.
Report
TIP: If a Change Management feature is not available for a selected item in the system tree, the right-
click menu or menu option appears disabled. For a list of items in the system tree for which the
Manage menu is available, refer to the Summary of Items Managed in the System Tree section.
31
Change Management and iFIX
• All users install iFIX to the same folder. This ensures that the SCU files start iFIX properly on
all developers' computers.
• Remote paths for shared files use mapped network drives.
Create a Project
It is recommended that you create a Change Management project for an iFIX node within the iFIX
WorkSpace. Although you can create integrated iFIX project folders within the Proficy Machine
Edition product, if the name does not exactly match the one you enter on your iFIX SCADA node,
problems can arise. For more information on how projects are defined in both projects, refer to the
Projects in Change Management vs. iFIX section.
When you configure your Change Management settings in the iFIX User Preferences dialog box, you
define a project name. As soon as you login to the Change Management Server from the iFIX
WorkSpace, that new project is created.
Typically, the Change Management project name that you enter into the iFIX User Preferences is the
same name as your iFIX node name. But, you can enter any name.
1. From the iFIX WorkSpace, disconnect from the Proficy Change Management Server if you
are already connected. For more information, refer to the Logging Off section.
2. In Classic view, on the WorkSpace menu, click User Preferences.
-Or-
In Ribbon view, on the Home tab, in the Workspace group, click Settings and then click User
Preferences.
3. Click the Change Management tab.
4. Select the Enable Change Management Server Connection check box, if it is not already
select.
5. In the Change Management Server field, enter the name of the server. For instance, if your
server was named MyServer, enter MyServer in this field.
6. If you want to log on to the Change Management Server when you start the iFIX WorkSpace,
select the Logon at WorkSpace Startup.
TIP: For large projects, it is recommended that you clear this check box, since it will take
iFIX longer to start, depending on the size of the project.
7. If you always want a Logon dialog box to display when a user logs on to the Change
Management Server from the iFIX WorkSpace, select the Prompt for User Name and
Password check box.
For information on how to configure automatic login, refer to the Automatic Logon to the
Change Management Server section.
32
Change Management and iFIX
8. In the Change Management Project Name field, enter the name of your project. If name
already exists, enter a new one to create a new project.
As soon as you login to the Change Management Server from the iFIX WorkSpace, that new
project is created.
9. Optionally, if you want to require the user to enter comments when checking in or checking
out files, select the Require comments to check in and check out files check box.
10. If you want to enable iFIX electronic signatures, enter the electronic signature options. For
more information on how to do this, refer to the iFIX Electronic Signatures and Change
Management section.
11. Click OK.
12. From the WorkSpace, logon to the Change Management Server to create the project on the
Change Management Server. For logon steps, refer to the Logging into the Change
Management Server from iFIX section.
Add Files
The Add and Add All Files options from the Manage menu allows you to add all of your iFIX project
files from the selected node to the Change Management Server. When you choose to add a file, folder,
or entire project, the Add Files dialog box appears, as shown in the following figure. You can enter a
comment, as well as choose whether you want to keep the local copy checked out and/or writable.
NOTE: Files from a remote location cannot be added to your Change Management project, unless you
map the drive. Additionally, security files that point to a remote security path or non-local iFIX path
cannot be added to the Change Management Server. Make sure that the primary and backup security
path in the Security application's Configuration dialog point to the iFIX Local folder. For instance, if
you install iFIX to the default folder, this path is: C:\Program Files\Proficy\Proficy iFIX\LOCAL.
33
Change Management and iFIX
1. In the iFIX WorkSpace system tree, right-click the node name, and from the Manage menu,
select Add All Files in Project. The Add File dialog box appears.
2. Optionally, in the Comment text box, enter a comment. The comment can be no longer than
255 characters. The comments you enter are recorded on the Change Management Server.
3. Optionally, select the Keep Local Copy check box if you want to keep a writable version of
the project files on your local computer. Otherwise, clear the Keep Local Copy check box to
remove the local files after you add them to the Change Management Server.
4. Optionally, select the Keep Check Out check box, if you want to add the files, and check them
out to your local computer.
5. Click OK. A status box appears on screen as the files get added.
1. In the iFIX WorkSpace system tree, right-click the file or folder name, and from the Manage
menu, select Add. The Add File dialog box appears.
2. Optionally, in the Comment text box, enter a comment. The comment can be no longer than
255 characters. The comments you enter are recorded on the Change Management Server.
3. Optionally, select the Keep Local Copy check box, if you want to keep a writable version of
the project files on your local computer. Otherwise, clear the Keep Local Copy check box to
remove the local files after you add them to the Change Management Server.
4. Optionally, select the Keep Check Out check box, if you want to add the files, and check them
out to your local computer.
5. Click OK. A status box appears on screen as the files get added.
Check Out
The Check Out option from the Manage menu allows you to allows you to lock a file, folder, or project
from the Change Management Server. Another logged in user cannot modify that item or items until
you check the specified item or item back in.
Optionally, if the file or folder on your local computer is newer than the one in the Change
Management Server, you can leave the local copy of the file or folder, and still lock the files on the
Change Management Server with the Check Out option so that no one else can edit them.
To copy files from the Server to your local computer when checking out, clear the Don't overwrite
local file(s) with managed copy check box in the Check Out dialog, as shown in the following figure.
Be aware that if you are checking out pictures and there are pictures are open the WorkSpace with the
same name, you need to close them and re-open them in the WorkSpace to view the Server versions
locally.
34
Change Management and iFIX
If you try to open a read-only file on your local computer, that resides on the Change Management
Server, but is not checked out, the Change Management - Open dialog box appears, as shown in the
next figure. If you click Yes to this dialog box, the Check Out dialog box also appears.
If you try to open a file that is checked out by another user, or by you on another computer, you cannot
modify that item or items until the user checks the specified item or items back in, giving up source
control. The following message box appears.
1. In the iFIX WorkSpace system tree, right-click the file, folder, or project that you want to
check out, and on the Manage menu, select Check Out. The Check Out dialog box appears.
2. If you want to copy the files from the Change Management Server to your local computer
35
Change Management and iFIX
when checking them out, clear the Don't overwrite local file(s) with managed copy check box.
3. Optionally, in the Comment text box, enter a comment. The comment can be no longer than
255 characters. The comments you enter are recorded on the Change Management Server.
NOTE: If comments are required, the OK button in this dialog box does not become available
until you enter a comment. Comments are required when you enable them in the iFIX User
Preferences dialog box, on the Change Management tab, by selecting the Require Comments
to Check In and Check Out Files check box.
4. Click OK. A status box appears on screen as the files check out.
Check In
The Check In option from the Manage menu allows you to copy a file, folder, or project from your
local SCADA to the Change Management Server. After you use the Check In command, you release
your control on that file, folder, or project so that another user can work on that file, folder, or project.
The following figure displays an example of the Check In dialog box.
IMPORTANT: You must perform a Check Out (copy a writable version of the file, project, or folder
from the Change Management Server to your computer), before you can perform a Check In (copy
your version of the file, project, or folder from your computer back to the Change Management
Server).
1. In the iFIX WorkSpace system tree, right-click the file, folder, or project that you want to
copy to the Change Management Server, and on the Manage menu, and select Check In. The
Check In dialog box appears.
2. Optionally, in the Comment text box, enter a comment. The comment can be no longer than
255 characters. The comments you enter are recorded on the Change Management Server.
36
Change Management and iFIX
NOTE: If comments are required, the OK button in this dialog box does not become available
until you enter a comment. Comments are required when you enable them in the iFIX User
Preferences dialog box, on the Change Management tab, by selecting the Require Comments
to Check In and Check Out Files check box.
3. Optionally, select the Keep Local Copy check box, if you want to keep a writable version of
the project files on your local computer. Otherwise, clear the Keep Local Copy check box to
remove the local files after you add them to the Change Management Server.
4. Optionally, select the Keep Check Out check box, if you want to check in the files, and check
them out to your local computer.
5. Click OK. A status box appears on screen as the files check in.
This feature is helpful if you want to check out a file, but another user is working on it. When you
determine the user name, you can either wait for the person to check in the file, or inform that user that
you need to make changes and that he needs to check in the file.
For example, in the following figure, a user name KATHY has the ChartGroupDemo.grf file checked
out. The Label indicates that she's working on the BETA version of the file.
37
Change Management and iFIX
1. In the iFIX WorkSpace system tree, right-click the file whose status you want to view, and
from the Manage menu, select Check Out Status. The Check Out Status dialog box appears.
2. Review the Logon User field to see the user name who has the file checked out.
3. Review the other fields you are interested in, and click OK when you finish.
38
Change Management and iFIX
IMPORTANT: If you clear the Don't overwrite local file(s) with managed copy check box for a check
out, you must reload the file to view the changed file on the local computer.
1. In the iFIX WorkSpace system tree, right-click the file, folder, or project that you want to
undo changes on, and on the Manage menu, select Undo Check Out. The Undo Check Out
dialog box appears.
2. If you want to undo the check out on the Server without changing the updated files on your
local computer, make sure the Don't overwrite local file(s) with managed copy check box is
selected.
Clear this check box if you want to undo the check out on the Change Management Server,
and then replace the files on your local computer with the versions on the Change
Management Server. If you clear this check box, be aware that you must reload the file to
view the changed file on your local computer.
3. Click OK. A status box appears on screen as undo check out proceeds.
Destroy
The Destroy option from the Manage menu allows you to permanently remove a file from the Change
Management Server. You can optionally remove the file from your local drive, or delete it as well.
WARNING: After you destroy a file, there is no history of the file on the Change Management Server.
A destroyed file is permanently lost and cannot be recovered.
39
Change Management and iFIX
To destroy a file:
1. In the iFIX WorkSpace system tree, right-click the file you want to delete, and on the Manage
menu, select Destroy.
2. If you want to keep the version of the file on your local drive, select the Remove only from
Change Management server check box. Otherwise, to delete the local version of the file as
well, clear this check box.
3. Click OK. A status box appears on screen as the file is removed.
Get Latest
You can copy the latest version of a file, folder, or project from the Change Management Server to
your local computer by using the:
If a version already exists on your local computer, when you get the file, that version is overwritten.
The file or files get copied to your local computer with writable attributes. If you are checking out
pictures, and pictures with the same name are open in the WorkSpace, you need to close them and re-
open them to view the Server versions locally. The status file or files on the Change Management
remains the same. No Check Out occurs when you get the latest version.
If you get the entire project, be aware that you must restart iFIX so that it starts with the SCU and
security files you get, and you can work on the project.
IMPORTANT:
• If the SCU paths in the project you get from the Change Management Server are not mapped
to the path of your local iFIX install, you will not be able to start iFIX with this project.
• For example, say the SCU project path is mapped to D:\Program Files\Proficy\Proficy iFIX,
but your local iFIX install is installed to C:\Program Files\Proficy\Proficy iFIX. You must
open this SCU in the System Configuration utility to update this paths before you can run this
project locally. You should confirm the correct paths exist in the Path Configuration, Task
Configuration, Network Configuration, Local Startup Definition, and SQL Task
40
Change Management and iFIX
To get the latest version of a file, folder, or project from the right-click menu:
1. In the iFIX WorkSpace system tree, right-click the file, folder, or project that you want to get,
and from the Manage menu, and select Get Latest.
2. If you selected a project, a message box appears indicating that iFIX must be restarted. To
continue:
• Click Yes. Another message appears to confirm the shut down. The PCM Utility
window appears, displaying the status in the background.
• Click OK. You are prompted to save any files with unsaved changes. Click Yes for
each file you want to save.
• If you suspect that the install paths do not match your local iFIX installation path,
modify the SCU file so that it contains the correct paths in the Path Configuration,
Task Configuration, Network Configuration, Local Startup Definition, and SQL
Task Configuration dialog boxes.
• Restart iFIX.
3. If you retrieved a color table file that you want to work on, restart the WorkSpace so that it
loads properly and you can view it.
To get a version of a file, folder, or project from the PCM History window:
1. In the iFIX WorkSpace system tree, right-click the file, folder, or project that you want to
obtain a version from the Change Management Server, and on the Manage menu, click
History Report. The PCM History window appears.
2. In the PCM History window, select the version of the file, folder, or project that you want to
get from the Change Management Server, and click Get.
3. Click OK to continue. A status box appears on screen as the selected file, folder, or project is
copied to your local computer.
4. If you retrieved a color table file that you want to work on, restart the WorkSpace so that it
loads properly and you can view it.
5. If you retrieved an entire project, restart iFIX.
41
Change Management and iFIX
NOTE: If you notice that your files are not updated, verify that you have enough available memory to
complete the operation. Low memory prevents the files from being copied to your local computer.
The following figure shows an example of the Get Other Project dialog box. In this example, iFIX is
installed to the C:\Program Files\Proficy\Proficy iFIX folder, so the Project Destination was changed
to C:\ProjectB. This project will not run in iFIX until the SCU information is modified so that it runs in
the proper path.
Select the Delete all existing files under Project Destination check box if you want to delete all existing
files under the project you specify. If you select this check box, it is strongly recommended that you
also select the Initialize Project Destination with iFIX default files check box.
Selecting the Initialize Project Destination with iFIX default files check box deploys all iFIX default
system files to the project you specify. If you plan to start iFIX with this project, it is strongly
recommended that you select this check box.
42
Change Management and iFIX
Label
The Label option from the Manage menu allows you to assign a user defined text string to the latest
version of a file, folder, or project in the Change Management Server. When you assign a label at the
project or folder level, that label only applies to the select project or folder. For instance, if you apply a
label at the project level, all folders and files in that project are not individually labeled. Only the
project folder is labeled.
From the PCM History window, you can compare a labeled version of a project, file, or folder in the
Change Management Server with the version on your local computer. You can also compare two
labeled versions of the same file in the Change Management Server. The Apply Label dialog box is
illustrated in the following figure.
Be aware that if you run the Change Management Server Trim utility, labels on from iFIX projects,
folders, security files, FIX Desktop files, Historical Assignment files, and user add-on files are
removed. Labels on individual iFIX files remain, however. For more information on labels in iFIX and
Change Management, refer to the Labeling Differences section.
1. In the iFIX WorkSpace system tree, right-click the file, folder, or project that you want to
display a history report on, and from the Manage menu, select Label. The Apply Label dialog
box appears.
2. In the Label field, enter the text string for the label you want to use. Be aware that the label
you enter can be no longer than 31 characters.
3. Click OK.
History Report
The History Report option from the Manage menu allows you to view the revision history of a file,
folder, or project:
• If you select a folder, the history of Change Management actions in iFIX is detailed for the
individual folder, as well as all the files in that folder.
43
Change Management and iFIX
• If you select a file, only the actions for that file display.
• If you select a project, only the label changes to the project display. A change history of all
folders and files in the project does not display. You can, however, compare your local project
with a labeled version in the Change Management Server from this window.
When you select the History Report option, the PCM History window appears. You can also get files,
or versions of files from this window. For detailed information on this window, refer to the
Understanding the Proficy Change Management History Window section.
1. In the iFIX WorkSpace system tree, right-click the file, folder, or project that you want to
display a history report on, and from the Manage menu, select History Report. The PCM
History window appears.
2. Scroll through the list to view the history of Change Management actions on the selected
item.
IMPORTANT: It is recommended that you check in picture files when they are not open in
the WorkSpace. Otherwise, a managed picture on the Change Management Server will show
a difference at the Binary level, between the open and closed states, even if you did not modify
anything in the picture.
For instance, you can compare your local project to the latest version of the project in the Change
Management Server, or any labeled version. You must be logged into the Change Management Server
in order to use the History window.
Additionally, from the PCM History window, you can get a specific version of a project, file, or folder
from the Change Management Server. Getting an entire project requires that you shut down iFIX in the
process. Every node should have it's own project in the Change Management Server.
To open the PCM History window, right-click a file, folder, or project in the Proficy iFIX WorkSpace
system tree. From the Manage menu, choose History Report. The History window displays the change
history for the selected project, folder, or file in the iFIX WorkSpace system tree. The following figure
is an example of the window that appears.
44
Change Management and iFIX
The change history for a selected project only includes label changes to the project. For instance, say
you label a project 3 times, and then you right-click the top level Project folder for the node, select
Manage, and choose History Report. The PCM History window appears with four rows: one for the
latest project, and one for each of the three labels you added. If you want to compare the differences
between your local project and one on the Change Management Server, click the Difference button.
The summary report lists all the files and folders for the project, and whether changes exist.
In the PCM History window, the change history for a folder includes all the files that appear in the
iFIX WorkSpace system tree under that folder, as well as the folder label changes. For example, for the
Pictures folder, the PCM History window displays the change history for every single picture and the
PIC folder.
The following sections describe the parts of the Change Management History window and the
information it contains.
Spreadsheet Columns
The spreadsheet that appears in the Change Management History window displays all versions of the
selected file or folder. The following table describes the columns in the spreadsheet.
45
Change Management and iFIX
Column Description
Name
Version The version number of the file in the Change Management Server. All files
start at version number 1, and then go on to 2, 3, 4, 5, and so on, with each
change that you check in to the Change Management Server.
Path The relative path of the iFIX folder or file name within the current Change
Management project.
User The name of the Change Management user who performed the action on the
file.
Label A user defined text string that you can assign to a specific version of a file,
folder, or project in the Change Management Server.
For example, you could label a collection of files in a folder or project with
"Beta Release" as the text string. Later, you can read down all the files
labeled "Beta Release" from the Change Management Server.
Date/Time The time that the action occurred on the Change Management Server
computer. The time appears with the local region settings defined on the
Change Management Server.
Action The type of action performed on the file or folder in the Change
Management product. For instance, these actions include: Add, Label, Get
Latest, Get, Check Out, Check In, and Undo Check Out.
Check In Comment optionally entered by the Change Management user when the
Comments check in action was performed. The maximum number of characters in this
field is 255.
You can sort files in the spreadsheet based on a column name, in ascending or descending order. To
sort in ascending order, click the column heading once. To sort in descending order, click the same
heading again.
You can move column headings to different locations by clicking and dragging the column heading to
the desired location. Two red arrows appear when you can drop the heading to the new column.
46
Change Management and iFIX
All sorting options and moved column headings are refreshed the next time you open the Change
Management History window.
Details Button
Provides details for the selected row. For instance, if the Check In Comments column appears too long
to be easily read in the spreadsheet, select the row and click the Details button to open a dialog box
that displays the Check In Comments in a larger visible area.
You can also double-click a row to display the Details dialog box. This dialog box displays comments
in a larger area and includes the label for the folder, if one exists.
Difference Button
Displays the differences between two versions of the same file or folder in a summary report:
• Select two different versions of the same file or folder in the spreadsheet, and click Difference to
report the differences between the versions.
• Select a single file or folder in the spreadsheet to compare that version from the Change
Management Server with the version saved on your local drive.
The History window displays previous versions of iFIX files if they are being stored on the Change
Management Server.
Ctrl or Shift click to select two items in the spreadsheet. You cannot select a folder and a file at the
same time in the spreadsheet. You must select two different versions of the same file or same folder, or
one version of the file or folder (to compare with the one on your local drive). If the action you want to
perform is invalid, the button is unavailable.
IMPORTANT: When displaying the differences of FIX Desktop folder, all files except the *.hgp files
for the Historical Display are compared. When displaying differences of the Security folder, all files
except the display.dov file (if it exists) are compared.
This check box appears only when you select a single picture file (to compare a specific version with
the one on your local computer), or two versions of the same picture file (to compare two different
versions). This check box is not available for folders or projects, such as the entire iFIX picture folder
or project folder. By default, when this check box appears, it is cleared.
When you clear this check box and click Difference, a binary compare is performed that indicates if
any differences are found in the picture. If there is a difference found, a red row displays in the
summary report.
When you select this check box, and then click Difference, an ASCII compare is performed that lists
whether differences are found in the picture, as well as details on each change in that picture. These
details include VBA script, Dynamo, process database, and user.fxg changes. They do not include
changes to ActiveX Controls or Chart Configuration changes. The ASCII compare may take longer
than the binary (default) compare. If there are changes, details on each change appears in the summary
report that displays.
47
Change Management and iFIX
Get Button
Retrieves a copy of the selected file, folder, or project in the spreadsheet to your local iFIX folder.
Each item is copied with writable attributes. Getting an entire project requires that you shut down iFIX
in the process.
Report Button
Exports the currently displayed spreadsheet into an .html, .xml, .csv, or .txt file.
Help Button
Exit Button
The Details, Difference, Get, and Report commands are also available from the right-click menu.
Select a file or folder in the spreadsheet and optionally use the right-click commands instead of the
buttons to perform the required tasks. Be aware that if an action is invalid for the selected items, the
action on the right-click menu is also unavailable.
The ASCII compare is only available for some types of iFIX files, such as pictures and SCU files.
ASCII is the default compare type for SCU files. For pictures and the user.fxg file, ASCII is an option.
The following table lists the compare functionality available for each iFIX file type in the PCM
History window.
Be aware that VBA script, Dynamo, process database, and user.fxg changes are included in ASCII
summary reports from iFIX.
TIP: If you only want to run a binary compare on iFIX files such as SCU file, you can use the Machine
Edition Scheduler to run an iFIX Compare event. For more information, refer to the Scheduled
Backups section.
The ASCII compare is a feature in the integrated iFIX with Change Management environment; it is
currently not available in the Change Management product.
48
Change Management and iFIX
49
Change Management and iFIX
50
Change Management and iFIX
Every SCADA iFIX node that you want to include on the Change Management Server should have it's
own integrated project folder in the Change Management Server. The Project Name that you enter in
the iFIX User Preferences's Change Management tab, should map to an integrated project folder name
on the Change Management Server. These names should always be the same.
TIP: If you create your Change Management project from the iFIX User Preferences's Change
Management tab, you ensure that these project names are always same. It is recommended that you
create your project from iFIX, rather than from the Machine Edition application. For more
information, refer to the Add Files section.
Typically, each integrated iFIX project folder in Change Management name represents an iFIX node
name. But, the node name does not always have to be used. For instance, if you use the default node
51
Change Management and iFIX
name of FIX when you create your iFIX node, you will not be able to use that name for your project in
Change Management. "FIX" is a reserved name in Change Management. In this case, if you try to
enter FIX in the iFIX User Preferences's Change Management tab, an error message appears and you
would have to enter another name.
Do not try to check in multiple iFIX projects into the same integrated iFIX project folder on the
Change Management Server.
IMPORTANT: Be aware when working in Machine Edition, that you should not delete iFIX projects
or files from the hard drive of the Microsoft Visual Sourcesafe server computer without using the
Visual SourceSafe client.
For more information on configuring the Change Management project name in iFIX, refer to the
Overview of iFIX Configuration Steps section on this help file. For more information on projects in
Change Management, refer to the "Integrated iFIX Projects folder" topic in the Machine Edition online
help.
Labeling Differences
In Proficy Change Management, you currently can only create labels at the file level. However, if you
are using the iFIX WorkSpace with the integrated Change Management features, you can label files at
the project and folder level.
Labeling files, folders, and projects helps you identify a version of a file or files with a specific string.
For example, in the iFIX WorkSpace, you could label a collection of files in a folder or project with
"Beta Release" as the text string. Later, you can read down all the files with the version labeled "Beta
Release" from the Change Management Server in the PCM History window.
Be aware that once you run the Change Management Server Trim utility, labels on from iFIX projects,
folders, security files, FIX Desktop files, Historical Assignment files, and user add-on files are
removed. Labels on individual iFIX files remain, however.
For more information on labeling and Change Management, refer to the "Using Version Labels" topic
in the Proficy Machine Edition online help.
Scheduled Backups
In Proficy Machine Edition, you run two types of iFIX scheduled events:
• iFIX Compare – Checks if your local iFIX project files are different from the ones on the
Change Management Server. This option was available for 3.5 projects, although with iFIX
3.5 this event only compared the iFIX backup (.fbk) file. With iFIX 4.0, this event compares
the entire iFIX project, file by file, for differences.
• iFIX Compare and Backup – Checks if your local iFIX project files are different from the
ones on the Change Management Server. If the ones on your local drive are newer, or do not
exist yet on the Change Management Server, these files are checked in. This option is
available only for iFIX 4.0.
52
Change Management and iFIX
Both of these events use binary compares, which means that the log file only lists the files that
changed. Details on what changes occur in the files are not reported.
TIP:
• After the "iFIX Compare" or "iFIX Compare and Backup" event runs the binary compare, if
you want more information about the specific changes in each file, you can run an ASCII
compare for some file types in iFIX.
• For example, if you want details of the changes in your picture files, not including VBA script
changes, you can use the PCM History window and select the Text Compare check box
(which runs an ASCII compare) to generate a summary report with changes. For more
information on this option, refer to the Understanding the Proficy Change Management
History Window section.
• Additionally, some file compares that you run in iFIX are ASCII compares, which provide
more information, by default. Refer to the Summary of Binary vs. ASCII Compare
Functionality section for a list the compare formats available for each file type in the PCM
History window.
If you want to run the "iFIX Compare" and "iFIX Compare and Backup" events, you must have the
Proficy Machine Edition Client and Scheduler Components installed on your SCADA Server (at a
minimum). These install programs are not found on the iFIX product CD. You need to install them
from the Proficy Machine Edition CD.
After the scheduled event runs for "iFIX Compare" and "iFIX Compare and Backup" events, a log file
is written to the following folder:
The steps that follow describe how to add an "iFIX Compare" or "iFIX Compare and Backup" event in
Proficy Machine Edition. For more detailed information, refer to the "Scheduler Event Properties"
topic in the Proficy Machine Edition online help.
5. Double-click the event you added in step 4 to open the Event Properties dialog box.
6. In the Event Type field, select iFIX Compare.
7. In the Computer Name field, enter the name of the iFIX SCADA computer.
NOTE: Machine Edition supports computer names that include numbers (0-9), lowercase
letters (a-z), uppercase letters (A-Z), or the dash (-) symbol. If you leave this field blank or
53
Change Management and iFIX
enter a period "." in this field, the event executes on all computers the schedule is run on.
10. If Manually is not selected, enter a day and time to start the event.
11. Click OK.
12. In the Navigator, right-click Scheduler Event List and select Check In Access Control.
5. Double-click the event you added in step 4 to open the Event Properties dialog box.
6. In the Event Type field, select iFIX Compare and Backup.
7. In the Computer Name field, enter the name of the iFIX SCADA computer.
NOTE: Machine Edition supports computer names that include numbers (0-9), lowercase
letters (a-z), uppercase letters (A-Z), or the dash (-) symbol. If you leave this field blank or
enter a period "." in this field, the event executes on all computers the schedule is run on.
10. If Manually is not selected, enter a day and time to start the event.
11. Click OK.
12. In the Navigator, right-click Scheduler Event List and select Check In Access Control.
54
Change Management and iFIX
55
Change Management and iFIX
In these steps, we add a user named PAUL. His password is ge, in all lowercase letters. The user exists
on both the iFIX SCADA and on the Change Management Server. iFIX Security is enabled on the
SCADA node, and PAUL has access to all iFIX features, including the Change Management feature.
Additionally, PAUL is also an administrator on the Change Management Server. The Administrator
group includes privileges for all of the following features used in iFIX: Check In, Check Out, Get,
Label, Override Checkout, Change Password, and Edit Project List.
As an Administrator, PAUL can also run schedules. We will schedule an iFIX Backup and Restore
event to occur daily, at 11:30 pm, starting next Monday.
When Paul logs in to the Change Management Server when he starts iFIX. No Logon dialog box
displays. No iFIX electronic signatures are required to check in files.
These steps assume that you already installed Proficy iFIX, Machine Edition, Change Management,
and the Scheduler. You must know the name of your Change Management Server and the name of
your iFIX SCADA node to proceed.
56
Change Management and iFIX
57
Change Management and iFIX
1. Open the Security Configuration application, if it is not already open. iFIX must be running.
2. Click the Configuration button on the Security toolbox. The Configuration dialog box
appears.
3. Select Enabled to enable security.
4. On the File menu, click Save.
58
Change Management and iFIX
59
Change Management and iFIX
60
Change Management and iFIX
1. In the Navigator, right-click Access Control and select Check Out Access Control.
2. Double-click the User folder to view all users.
3. Right-click the user named PAUL, and select Add to Group, and then Administrators.
4. In the Navigator, right-click Access Control and select Check In Access Control.
When an FIX Compare and Backup event runs, Machine Edition checks if your local iFIX project files
are different from the ones on the Change Management Server. If the ones on your local drive are
newer, these files are checked in. This option is available only for iFIX 4.0.
If you want to run either of the "iFIX Compare" or the "iFIX Compare and Backup" event, you must
have the Proficy Machine Edition Client and Scheduler Components installed on your SCADA Server.
These install programs are not found on the iFIX product DVD. You need to install them from the
Proficy Machine Edition CD.
61
Change Management and iFIX
5. Double-click the event you added in step 4 to open the Event Properties dialog box.
6. In the Event Type field, select iFIX Compare and Backup.
7. In the Computer Name field, enter the name of the iFIX SCADA computer.
NOTE: Machine Edition supports computer names that include numbers (0-9), lowercase
letters (a-z), uppercase letters (A-Z), or the dash (-) symbol. If you leave this field blank or
enter a period "." in this field, the event executes on all computers the schedule is run on.
You are now ready to use Change Management features from within the iFIX WorkSpace. For tips on
how to get started, refer to the Quick Tour: Using Proficy Change Management Features in iFIX
section.
62
Change Management and iFIX
• Logging In
• Viewing the Connection to the Change Management Server
• Using Change Management Features in iFIX
• Adding Files
• Checking Out Files
• Checking In Files
• Understanding Electronic Signatures
• Using the Change Management History Window
Logging In
To log in to the Change Management Server from iFIX, you do so at startup, or by simply right-
clicking the node name, pointing to Manage, and selecting Logon. If the Logon dialog is configured to
display, it appears as shown in the following figure.
For more information on how to configure logon options, refer to the Overview of iFIX Configuration
Steps and Automatic Logon to the Change Management Server sections.
63
Change Management and iFIX
After you successfully log into the Change Management Server, the iFIX WorkSpace displays:
Connected PCM Server ServerName. ServerName is the actual Proficy Change Management Server's
name. The status area changes to green, as shown in the following figure.
Once the status area changes to green, you can begin using Change Management features in the iFIX
WorkSpace.
64
Change Management and iFIX
In Ribbon view, you may access Change Management features in the same way as in Classic view or
you may access project level file operations via the ribbon on the Administration tab, in the Proficy
Change Management group.
In both Classic and Ribbon views, you must be logged into the Proficy Change Management Server in
order to view the Change Management commands.
For more information on how to use the Change Management right-click menu command in the iFIX
WorkSpace, refer to the Using Change Management from the iFIX WorkSpace section.
Adding Files
To add a file or files to the Change Management Server, in the iFIX WorkSpace tree right-click the
file, folder, or project you want to add, then select Manage and then Add (or "Add All Files in Project"
for a project). The Add Files dialog box appears, as shown in the following figure. Click OK to add
your file or files.
65
Change Management and iFIX
You can enter a comment, as well as choose whether you want to keep the local copy checked out
and/or writable. The Keep Local Copy check box is unavailable for projects; by default, this check box
is selected for projects.
NOTE: Files from a remote location cannot be added to your Change Management project, unless you
map a drive to that location. Additionally, security files that point to a remote security path or non-
local iFIX path cannot be added to the Change Management Server. Make sure that the primary and
backup security paths in the Security application's Configuration dialog point to the iFIX Local folder.
For instance, if you install iFIX to the default folder, the paths should both be: C:\Program
Files\Proficy\Proficy iFIX\LOCAL.
Optionally, if the file or folder on your local computer is newer than the one in the Change
Management Server, you can leave the local copy of the file or folder and still lock the files on the
Change Management Server with the Check In – so that no one else can edit them.
To check out a file or folder from the Change Management Server, in the iFIX WorkSpace system tree,
right-click the file, folder, or project that you want to check out, and on the Manage menu, select
Check Out. The following figure displays an example of the Check Out dialog box.
66
Change Management and iFIX
To copy files when checking out, clear the Don't overwrite local file(s) with managed copy check box
in the Check Out dialog.
Optionally, in the Comment text box, enter a comment. The comment can be no longer than 255
characters. The comments you enter are recorded on the Change Management Server. If comments are
required, the OK button in this dialog box does not become available until you enter a comment.
Comments are required when you enable it in the iFIX User Preferences dialog box, on the Change
Management tab, by selecting the Require Comments to Check In and Check Out Files check box.
Checking In Files
The Check In option from the Manage menu allows you to copy a file, folder, or project from your
local SCADA to the Change Management Server. After you perform Check In command, that file,
folder, or project is available so that another user can work on that file, folder, or project.
To check in a file or folder to the Change Management Server, in the iFIX WorkSpace system tree,
right-click the file, folder, or project that you want to copy to the Change Management Server, and on
the Manage menu, and select Check In. The following figure displays an example of the Check In
dialog box.
67
Change Management and iFIX
IMPORTANT: You must perform a Check Out (copy a writable version of the file, project, or folder
from the Change Management Server to your computer), before you can perform a Check In (copy
your version of the file, project, or folder from your computer back to the Change Management
Server).
Optionally, in the Comment text box, enter a comment. The comment can be no longer than 255
characters. The comments you enter are recorded on the Change Management Server. If comments are
required, the OK button in this dialog box does not become available until you enter a comment.
Comments are required when you enable it in the iFIX User Preferences dialog box, on the Change
Management tab, by selecting the Require Comments to Check In and Check Out Files check box.
Optionally, you can also select the Keep Local Copy check box, if you want to keep a writable version
of the project files on your local computer (by default, this check box is selected). Otherwise, clear the
Keep Local Copy check box to remove the local files after you add them to the Change Management
Server.
When you check out or check in a file, the Electronic Signature dialog box appears first. If only a
Perform signature is required, the following Electronic Signature dialog box appears:
68
Change Management and iFIX
If Perform and Verify signatures are required, the following Electronic Signature dialog box appears
instead:
69
Change Management and iFIX
These Electronic Signature dialog boxes are the same ones used by the iFIX product in other areas, and
work the same way.
After the Electronic Signature dialog box appears, and the signatures have been accepted, the Check
In/Out dialog box appears.
For more information on using iFIX electronic signatures and Change Management, refer to the iFIX
Electronic Signatures and Change Management and Comment Tables, Electronic Signatures, and
Change Management sections.
70
Change Management and iFIX
You open the PCM History window by right-clicking a file, folder or project in the iFIX WorkSpace
system tree, pointing to Manage, and then clicking History Report. The following figure is an example
of the window that appears.
For more information on using the PCM History window, refer to the History Report and
Understanding the Proficy Change Management History Window sections.
71
Index
A check out, undo ........................................................ 38
add files to the Change Management Server ........... 33 comment tables, Change Management .................... 27
Application Support Files folder ............................. 17 connection, Change Management Server ................ 64
73
Change Management and iFIX
74
Index
setting up ................................................................. 10 U
items managed in the system tree ........................ 12 User Preferences, Change Management .................. 58
T V
75
Proficy* HMI/SCADA - iFIX
CREATING PICTURES
Version 5.1
May 2010
All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical
means, including photocopying and recording, without permission in writing from GE Intelligent Platforms, Inc.
The information contained in this manual is believed to be accurate and reliable. However, GE Intelligent Platforms,
Inc. assumes no responsibilities for any errors, omissions or inaccuracies whatsoever. Without limiting the foregoing,
GE Intelligent Platforms, Inc. disclaims any and all warranties, expressed or implied, including the warranty of
merchantability and fitness for a particular purpose, with respect to the information contained in this manual and the
equipment or software described herein. The entire risk as to the quality and performance of such information,
equipment and software, is upon the buyer or user. GE Intelligent Platforms, Inc. shall not be liable for any damages,
including special or consequential damages, arising out of the user of such information, equipment and software, even
if GE Intelligent Platforms, Inc. has been advised in advance of the possibility of such damages. The user of the
information contained in the manual and the software described herein is subject to the GE Intelligent Platforms, Inc.
standard license agreement, which must be executed by the buyer or user before the use of such information, equipment
or software.
Notice
©2010 GE Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Intelligent Platforms, Inc.
Microsoft® is a registered trademark of Microsoft Corporation, in the United States and/or other countries.
All other brands or names are property of their respective holders.
We want to hear from you. If you have comments, questions, or suggestions about our documentation, send them to the
following email address:
doc@ge.com
Table of Contents
About this Guide ...............................................................................................................................1
Introduction .......................................................................................................................................1
Getting Started..................................................................................................................................2
Using Toolbars........................................................................................................................11
iii
Creating Pictures
Closing a Picture..................................................................................................................... 25
Replacing a Picture................................................................................................................. 33
iv
Creating Pictures
v
Creating Pictures
Preloading Pictures................................................................................................................. 85
vi
Creating Pictures
Adding Text............................................................................................................................. 98
vii
Creating Pictures
viii
Creating Pictures
ix
Creating Pictures
Accessing the Animations Dialog Box and Using Common Animations ..............................428
x
Creating Pictures
xi
Creating Pictures
Accessing Tag Status, Quick Trend, and Tag Control Panel Pictures .................................473
xii
Creating Pictures
xiii
Creating Pictures
xiv
Creating Pictures
xv
Creating Pictures
xvi
Creating Pictures
Notes for Users Familiar with the FIX Product ..................................................................... 606
xvii
About this Guide
The Creating Pictures manual is intended for process control engineers, integrators, and developers
responsible for designing and creating operator displays, and configuring the development and run-
time environments. The manual assumes familiarity with the process database and the iFIX®
WorkSpace.
Reference Documents
For related information on iFIX®, refer to the following manuals:
Introduction
iFIX® allows developers and process engineers to create dynamic pictures with minimal effort. By
providing an open-environment, ActiveX format, iFIX lets you incorporate internet controls (OCXs),
reuse elements from other sources (such as bitmaps), or embed other OLE automation applications into
your pictures.
While creating pictures in the Proficy iFIX WorkSpace, you can utilize features that give you the
control you need to customize your drawings. You can view your pictures by merely switching to the
run-time environment with the click of a mouse.
Joe. Joe is a system developer for a small shop. He is slightly intimidated by Visual Basic and
would prefer not to learn scripting to create and control his pictures. However, he wants to
take advantage of VBA's capabilities by customizing a few objects in his picture.
Joe's Solution. Using iFIX Experts, Joe attaches scripts to the objects in his picture without
leaving his development screen or entering the VBA environment. Experts give him a simple
means to perform the processes he wants.
Janet. Janet is a Process Manager for a large processing plant. She is well-versed in VBA, and
1
Creating Pictures
is more than eager to unleash the power of iFIX using her knowledge of Visual Basic.
Specifically, Janet wants the ability to override the default property settings of a series of
existing objects and create her own properties, including complex animations from several
different data sources and algorithms. She also wants to add custom controls and toolbars to
simplify the process for her developers.
Janet's Solution. iFIX provides the tools that Janet needs to fully customize her environment
and fine-tune the control she has over her application. Using the Animations dialog box, she
animates certain properties of her objects by specifying a data source and conversion method.
Then, by writing VBA scripts, she overrides existing defaults, inserts custom controls, and
creates a development toolbar that saves her developers time.
Having all the power you need doesn't mean it should be difficult to use. Developing complex pictures
using process automation software was once a tedious and intimidating venture, as it required you to
use proprietary command languages and graphics formats that, in the end, gave you limited flexibility.
iFIX offers an alternate solution – an easy-to-implement and use, object and task-oriented development
tool that lets you create pictures with purpose.
This manual details all of the concepts introduced in the above example. The following table helps you
locate specific concepts throughout the various chapters.
The run-time Working with Objects in the Run- Running Your Pictures
environment time Environment
Getting Started
This chapter shows you how to start creating and drawing pictures right away. Some of the basic
concepts of iFIX pictures are also described.
2
Creating Pictures
For Ribbon view, click the WorkSpace button, select New, and then click Picture. Or, click Picture in
the New group, on the Home tab.
By default, the Create Picture Wizard appears and guides you through the picture creation process.
If a single untitled picture appears when you click the New Picture button, the Create Picture wizard
has been disabled. Enable it by selecting the following check box on the Picture Preferences tab of the
User Preferences dialog box: Show Picture Wizard from New Picture Menu.
For more information on the Create Picture wizard, refer to the Using the Create Picture Wizard
section in the Implementing Pictures in Your Process chapter.
• Dock the system tree on the other side of the screen by dragging it
• Set the system tree to float on top of your picture by dragging it away from the sides of the
screen.
• Hide the system tree completely so that the picture appears to fit the full screen.
For more information on using the system tree of the WorkSpace, refer to the Using the Proficy iFIX
WorkSpace chapter of the Understanding iFIX manual.
If the picture you opened has links to an external data source, such as a Proficy Historian server, which
is not configured in the WorkSpace, you will receive an error message indicating that the data source is
not configured in WorkSpace.
3
Creating Pictures
Saving Pictures
In Classic view, to save your drawing, click the Save button on the Standard toolbar. In Ribbon view,
to save your drawing, click the Application button, and then click Save. You can save your picture as
either a .GRF file or .SVG file. Both file types are stored, by default, in the PIC folder in the path
where iFIX is installed, but only .GRF files are displayed in the system tree. You can save .SVG files
in any location but you cannot open them in iFIX Workspace, as these files are used for exporting to
third-party applications, such as Proficy Real-Time Information Portal.
When saving picture files, as either file type, you must follow the guidelines of VBA naming
constraints. For example, do not use:
Also, we recommend that you do not use any names that are common to other objects, functions,
statements, or methods in Visual Basic, as you may cancel one of the keywords in the code. For more
information on VBA Naming Conventions, refer to the VBA Naming Conventions section in the
Writing Scripts manual.
Although bitmaps are a common graphic format, they are limited in that once you create the image,
there is very little you can do to change it. You can erase or partially erase a bitmap, or paint a new
bitmap on top of the old one. But changing bitmaps takes almost as much time as creating them.
iFIX pictures, on the other hand, work with objects instead of individual pixels. An object-oriented
graphic consists of an image and image attributes, such as size, color, and position, that define the
properties of the object. By providing this object-oriented foundation, iFIX precludes your having to
work with individual pixels. Rather, you interact with tools, menus, and dialog boxes to add and
change object properties, while iFIX automatically adjusts the object and its property data for you.
This gives you an enormous amount of control and flexibility when drawing and modifying your
pictures.
For example, many other graphics packages allow you to save object-oriented graphics as a Windows
Metafile. iFIX allows you to import the metafile (in .WMF format) into a picture. The advantage of
using a .WMF format is that the imported image consists of individual objects, giving you greater
control of your picture.
The following figures illustrate some additional examples of the control and flexibility you have with
iFIX pictures.
4
Creating Pictures
5
Creating Pictures
• Shapes – Shapes are integral to adding precise detail to your pictures. Shapes include
rectangles, rounded rectangles, ovals, lines, polylines, polygons, arcs, chords, pies, and pipes.
• Text – Text added to an iFIX picture becomes an object, containing properties that allow you
to format or control the text.
• Bitmaps – Bitmaps are images constructed of dot matrixes. They can be imported into an
iFIX picture and controlled like any other object.
• Charts – Charts are compound objects made of lines, text, and rectangles that display real-
time and historical trend data.
• Data links – Data links display text and values from process databases.
• Alarm Summaries – An Alarm Summary object displays real-time alarm status information
based on your alarming and SCADA configuration. An Alarm Summary object is a Proficy
iFIX OCX.
• Push Buttons – A push button is a tool that lets you execute an action easily with the click of
a mouse. A push button is an OCX supplied Microsoft.
• Timers – Timers perform an action based on a specified time duration.
• Events– Events allow you to perform an operation based on a specific action.
• Variables – Variables allow you to specify different values that let you store and display
process data in various ways.
• ActiveX Controls – compiled software components based on the component object model
(COM). Any imported ActiveX control (OCX) becomes an iFIX object in the WorkSpace.
• Applications – Any OLE-compatible application, such as a Microsoft Excel spreadsheet, can
be imported as a document object within the Proficy iFIX WorkSpace.
• Animations – When you animate an object's properties, iFIX adds animation objects to the
object containing those properties.
An iFIX picture can contain many types of objects. The following figure illustrates the concept of
objects inside an iFIX picture.
6
Creating Pictures
• Properties
• Methods
• Events
Properties
All objects have properties. Properties are object attributes you can control, such as the foreground fill
color or the object's size or position. These properties can be modified by animating the object or by
writing a script.
A method is a task that affects one or more objects. For example, a rectangle can be moved, rotated,
and scaled, and these are all methods of the rectangle.
An event is a signal that an object generates that we respond to. For example, if you click the left
mouse button or press a key on the keyboard, the object generates an event which you would respond
to, typically by executing a script. Note that the action which triggers an event does not have to be a
7
Creating Pictures
Typically, when drawing pictures you work with properties more than methods and events. However,
you may want to access an object's methods and events in order to write scripts for the objects you
create. For more information on properties, refer to the Controlling Object Properties chapter.
• Resize Handles – Allow you to resize an object. These automatically appear when you
initially add most objects.
• Reshape Handles – Allow you to reshape an object. These automatically appear when you
initially add lines, arcs, chords, and pies.
• Rotate Handles – Allow you to rotate an object. These handles appear only when you rotate a
particular object (excluding ovals, rounded rectangles, charts, and bitmaps).
The following example illustrates a rectangle with resize handles. There are four diagonal handles, two
left and right handles, and two top and bottom handles, as shown. When you initially add an object,
object handles appear. If you select outside the object, its handles disappear. Place the cursor on the
object and click (select) the object to display the handles again.
8
Creating Pictures
Object Handles
For examples of reshape and rotate handles, refer to the Reshaping Objects and Rotating Objects
sections, respectively. When you display the object's handles, you can control that object on the screen.
Notice that when you display the handles, that object's name is highlighted in the system tree. The
following table shows each cursor that is available, where it can be accessed in the iFIX WorkSpace,
and what the cursor allows you to do.
Anywhere on your screen. Alerts you that the system is working and no
input can currently be processed.
9
Creating Pictures
10
Creating Pictures
Anywhere when adding data Adds a data link, current date, or current time.
links, current date, or current
time.
Using Toolbars
iFIX provides both WorkSpace and Picture toolbars to help you perform various functions. Although
both WorkSpace and Picture toolbars help you perform actions in your picture, the Picture toolbars
contain specific tools to help you create and modify objects and their properties. The following table
describes the Picture toolbars available to you for drawing pictures.
NOTE: Although hidden by default, you can access and use toolbars in Ribbon view. To access a
toolbar in Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and then click
Toolbars. You can also open a toolbar from the WorkSpace tree, by opening the Project Toolbar Files
folder and double-clicking the toolbar you want to open.
Shapes From the Insert tab, in Add shapes to your pictures. Refer to the Adding
the Shapes group, in the Objects to Pictures section for a list of the shapes you
Shapes list. create.
Edit From the Home tab, in Perform basic functions with objects, including
the Clipboard and cutting, copying, pasting, and undoing an action. Refer
Editing groups. to the Performing Basic Functions with Objects
section for more information on these functions.
Tools From the Format tab, in Perform functions with objects in your pictures such
the Arrange group. as aligning or grouping them. Refer to the Performing
Advanced Functions with Objects section for a
description of the functions you can perform.
Experts From the Tools tab, in Perform advanced functions with objects in the picture
the Tasks/Experts or the picture itself, such as rotate, scale, or position.
group, from the Refer to the Using Wizards and Experts section for
Tasks/Experts list. more information on using experts.
11
Creating Pictures
Toolbox From the Format tab, Select the most commonly used toolbar buttons from a
all groups and from the resizable box. Refer to the Using the Toolbox section
Tools tab, in the for more information.
Tasks/Experts group.
CAD From the Format tab, in Perform functions with line objects in the picture, such
Toolbar the Picture group, in the as extending and trimming lines, converting lines to
Drawing Tools list. polylines, converting lines to pipes, or adding/deleting
connection points. Refer to the Performing Advanced
Functions with Objects section for more information
on these functions.
To show or hide a Picture toolbar, select Toolbars from the WorkSpace menu, select Picture in the
Owner area, and then select or deselect the appropriate toolbars. You must have a picture open in order
to select Picture from the Owner area. For more information on toolbars, refer to the Understanding
Toolbars section of the Understanding iFIX manual.
You can also create your own toolbars, or write scripts for custom buttons in toolbars. For more
information on creating and customizing toolbars, refer to the Understanding Toolbars chapter of the
Understanding iFIX manual. For information on writing scripts to customize toolbars, refer to the
Writing Scripts manual.
If you would rather select buttons from specific toolbars, simply deselect the Toolbox in the Toolbars
dialog box.
The following table lists the names of the toolbar buttons found in the Toolbox. The layout of the cells
in the table mimics the layout of the corresponding buttons in the Toolbox. The following layout is the
default layout of the Toolbox.
12
Creating Pictures
You can also access this menu by right-clicking the object in the Pictures directory of the system tree.
This is an effective way to view or adjust properties for invisible objects (which only appear in the
system tree) added during animation.
NOTE: The pop-up menu for objects differs somewhat from the picture pop-up menu. Refer to the
Using the Picture Pop-up Menu section for more information on the picture pop-up menu.
The following table shows the functions that are available from the object pop-up menu. Depending on
the object you have selected, additional operations may be available.
13
Creating Pictures
Animations Display the Animations dialog box, which allows you to animate the
properties of an object or several objects.
Resize Display handles around the object so you can resize it.
Reshape Display handles around the object so you can reshape it.
Rotate Display rotate handles around the object so you can move the object around its
center of rotation.
Add Connection Display a square green cursor with a smaller square inside it and a crosshair
Point when you are close to or moving over the object. This menu item displays as
Add Point when you right-click a polyline or pipe object.
Delete Display a square, solid red cursor with a cross hair when you are close to a
Connection connection point that can be deleted. When not close, the cursor becomes a
Point red square with a minus sign and a crosshair. This menu item displays as
Delete Point when you right-click a polyline or pipe object.
Split Polyline Display a splitting cursor that changes to black when you are close to the
polyline. A black cursor indicates that you can split the polyline at that point.
Split Pipe Display a splitting cursor that changes to a contrasting color when you are
inside the edge of the pipe. A colored cursor indicates that you can split the
pipe at that point.
Undo Cancel the previous operation. If a particular task cannot be undone, the Undo
command is unavailable after you complete the action.
Cut Remove the object from the picture and places it into the clipboard.
Copy Create a duplicate copy of the object and place it into the clipboard.
14
Creating Pictures
Duplicate Create a duplicate copy of the object and place it slightly offset from the
original.
Bring to Front Move the selected object to the front or top of the picture.
NOTE: This function may not work as expected with Enhanced Charts. For
more information, see Use Z-Order to Layer Controls.
Send to Back Move the selected object to the back or bottom of the picture.
NOTE: This function may not work as expected with Enhanced Charts. For
more information, see Use Z-Order to Layer Controls.
Color Define fade, foreground, background, and edge colors using a color palette.
15
Creating Pictures
Edit Script Open the Visual Basic Editor, which allows you to edit Visual Basic scripts.
KeyMacros Open the Key Macro Editor, which allows you to add and edit key macros.
Property Display the Properties Window, which allows you to view and change
Window property values.
Elbow Style Specify an elbow style for a pipe object. These styles include:
• Round – Applies rounded edges to the bends in a pipe object.
• Square – Applies squared edges to the bends in a pipe object.
16
Creating Pictures
Start Cap Style Specify a start cap style for a pipe object. These styles include:
• Round – Applies a rounded cap at the starting point of the pipe object.
• Square – Applies a square cap at the starting point of the pipe object.
• Horizontal Diagonal – Applies a horizontally diagonal cap at the
starting point of the pipe object.
• Vertical Diagonal – Applies a vertically diagonal cap at the starting
point of the pipe object.
End Cap Style Specify an end cap style for a pipe object. These styles include:
• Round – Applies a rounded cap at the ending point of the pipe object.
• Square – Applies a squared cap at the ending point of the pipe object.
• Horizontal Diagonal – Applies a horizontally diagonal cap at the
ending point of the pipe object.
• Vertical Diagonal – Applies a vertically diagonal cap at the ending
point of the pipe object.
Modify Pipe Open the Modify Pipe Characteristics dialog box, which allows you to edit the
Characteristics styles of pipe objects.
Edit Place a text cursor in the push button object to allow you to enter text.
CommandButton
Object
Depending on the object you add, the pop-up menu may vary to include operations specific to that
object. For example, if you add a chart, you can access the Chart Configuration dialog box from the
object pop-up menu.
When you associate database tags with an object, you can switch to the Proficy iFIX WorkSpace run-
time environment to view and test the object's configuration. The run-time object provides a menu you
can display by right-clicking the object. The options on the menu depend on the number of tags you
associate with the object.
If you have associated tags with your objects, the following functions are available from the object
pop-up menu in the run-time environment.
17
Creating Pictures
Tag Status Open the Tag Status picture of the tag associated with the selected objet.
If multiple tags are associated with the selected object, open the Tag Status
picture of the first associated tag, or open the Tag Control Panel picture, which
lists the Tag Status pictures of all tags associated with the selected object.
Quick Trend Open the Quick Trend picture of the tag(s) associated with the selected object(s).
The Quick Trend picture displays up to eight pens when multiple tags are
associated with the selected object(s).
18
Creating Pictures
You can also display a different set of properties by selecting the object or picture from the drop-down
list at the top of the window.
To display the Properties window of an object, right-click the object and select Property Window from
the pop-up menu. You can also access this menu by right-clicking the object in the Pictures directory
in the system tree, or by selecting Property Window from the View menu.
For more information on selecting properties, refer to the Controlling Object Properties chapter.
There are two color boxes you can choose from depending on how you want to apply colors. The first
option is a Select Color box that lets you select fade, foreground, background, or edge colors for a
19
Creating Pictures
specific object. This dialog box, shown in the following figure, is accessed by right-clicking the object,
pointing to Color then choosing Fade, Foreground, Background, or Edge from the menu.
NOTE: Refer to the Setting Gradient Fill Properties section, for more information about accessing the
Select FadeColor and Select ForegroundColor dialog boxes.
The second option is the Color Selection box. This box is modeless, allowing you to select different
shapes in your picture while the dialog box remains on your screen. You can color as many objects as
you like using this box, and you can choose which property of the selected object or objects you want
to modify. Additionally, you can use a color palette to customize a color set. The Color Selection
dialog box, shown in the following figure, is accessed by clicking the Color button on the Tools
toolbar (Classic view) or on the Format tab in the Styles group (Ribbon view) or the Toolbox, if
enabled.
20
Creating Pictures
NOTE: Any time you open the Select Color or Color Selection dialog box, the undo stack is removed.
For more information on applying color to your pictures, refer to the Working with Color section.
In Classic view, to access the Find Mouse Coordinates Tool, click the following icon in the iFIX
WorkSpace, on the Utilities toolbar:
In Ribbon view, you may access the Find Mouse Coordinates Tool from the Tools tab, in the
Tasks/Experts group, in the Pictures list or from the Applications tab, in the Utilities group, in the
Utilities list.
The Find Mouse Coordinates Tool appears in the WorkSpace, as shown in the following figure.
To stop tracking the cursor, click anywhere in the WorkSpace. To start tracking again, click the
Resume tracking button. To copy the cursor coordinates to the clipboard, click the Copy coordinates
21
Creating Pictures
button. After you copy the coordinates to the clipboard, you can paste them into your OpenPicture
command, for example, as the coordinates for the top left corner of your picture.
To access the Basic Animation dialog box, double-click on an object or select Animations from the
object's right-click menu.
You can also access the Advanced Animations dialog box by clicking the Configure button in the
Basic Animation dialog box. The Advanced Animations dialog box, shown in the following figure,
allows you to access all of the property animations available to the selected object and also provides a
more detailed interface for adding or modifying property animations.
22
Creating Pictures
To always open the Advanced Animations dialog box by default, clear the Always Show Basic
Animation dialog check box in the Picture Preferences tab of the User Preferences dialog box.
NOTE: Any time you open the Animations dialog box, the undo stack is removed. This is because
certain property changes take effect even if the dialog box is closed using the Cancel button.
Refer to the Animating Object Properties chapter for more information on animating objects.
To view screen regions in the WorkSpace, select Screen Regions from the View menu (Classic view)
or on the View tab, in the Picture group, select Screen Regions (Ribbon view). When this feature is
23
Creating Pictures
enabled, each time you click on an object in a picture, the screen region it occupies changes color.
NOTE: When using screen regions to optimize a picture, the picture should be displayed as it would
be during production. Screen regions are calculated based on the viewport, and since the viewport is
ultimately defined by the picture window, any changes to the window size cause the size of the screen
regions to change.
• Showing a Picture
• Refreshing a Picture
• Refreshing a Thumbnail
• Closing a Picture
• Using the Picture Pop-up Menu
• Using the Picture Properties Window
• Defining the Picture Height and Width
• Setting the Picture Background and Fade Color
• Setting Gradient Fill Properties
• Viewing Your Picture in the Run-time Environment
Showing a Picture
If you have more than one picture open in the WorkSpace, you can easily view a picture that is behind
another one by doing one of the following:
Another effective strategy for showing multiple pictures is using the tiling and cascading functions,
described in the Tiling and Cascading Pictures section.
Refreshing a Picture
You can refresh a picture by right-clicking the picture name in the system tree and selecting Refresh
from the pop-up menu. You can also select Refresh from the View menu (Classic view) or from the
View tab, in the Picture group, in the View list (Ribbon view). When you refresh a picture, iFIX
repaints the current picture on the screen.
Refreshing a Thumbnail
You can refresh a thumbnail by right-clicking the picture name in the system tree and selecting Refresh
24
Creating Pictures
Thumbnail from the pop-up menu. When you refresh a thumbnail, iFIX saves the picture with a
thumbnail (if it did not already exist), and repaints the current thumbnail on the System Tree.
Closing a Picture
You can close a picture by right-clicking the picture name in the system tree and selecting Close from
the pop-up menu.
The following table shows the functions that are available from the picture pop-up menu.
Animations Display the Animations dialog box that lets you animate properties of the
picture.
Undo Cancel the previous operation. If a particular task cannot be undone, the Undo
command is unavailable after you complete the action.
Paste Place the most recently copied object into your picture.
Bring to Front Move the selected picture to the front of the stack.
Send to Back Move the selected picture to the back of the stack.
Space Evenly Tile the open pictures in one of the following ways:
• Horizontal
• Vertical
Zoom Change the width and height of the viewport by 50%, 150%, or 200% of the
window size, or return the viewport size to 100% of the window size. The
viewport is described in the Implementing Pictures in Your Process chapter.
Default View Restore the original view of the picture before the window's size was changed.
25
Creating Pictures
Fit Picture to Resize the picture to fit inside the picture window, if necessary.
Window
Fit Window to Resize the window to fit the size of the picture, if necessary.
Picture
Update Window Preserve the current view of the picture so that, after being saved, it will look
Location exactly the same way it did on the screen as when you closed it.
KeyMacros Open the Key Macro Editor, which allows you to view and edit key macros.
Picture Display the Edit Picture dialog box, which allows you to change window
properties.
Edit Script Open the Visual Basic Editor, which allows you to edit Visual Basic scripts.
Enable Scripts Reference all selected objects into Visual Basic scripts.
NOTE: The pop-up menu for pictures differs somewhat from the object pop-up menu. Refer to the
Using the Object Pop-up Menu section for more information on the object pop-up menu.
26
Creating Pictures
The Picture Preferences dialog box contains the default picture preferences that apply to newly created
pictures.
For more information on using color in your pictures, refer to the Working with Color section.
Like the behavior of other fill styles, you can animate the gradient effect with the shape; for example,
rotate, scale, fill, and translate with the shape; however, you cannot animate gradient effects in your
picture.
You can right-click an object and apply the individual gradient fill properties after you have set the fill
style to Gradient. You can also apply the properties all at once using the gradient preview dialog box.
The gradient preview dialog box for shapes contains the tools you need to preview and apply gradient
fill properties.
The type of object you select determines the properties available for your use. For example, pipe
objects have a different gradient preview dialog box where the properties specific to pipe objects are
available, as well as gradient fill properties. For other shapes, only gradient fill properties are available.
Clicking the Foreground or Fade color buttons opens the Select Color box where you can choose the
colors you want to apply to your shape or pipe. For more information about choosing colors for your
shapes, refer to Using the Color Box.
When you choose Fade from the Color pop-up menu on a shape object, the Gradient preview tab of the
Select FadeColor dialog box appears. The fields on this dialog box allow you to apply gradient fill
properties to the object. These fields are available only when you select a single shape object. If you
select multiple objects, you can only choose a color from the Select Color dialog box.
27
Creating Pictures
When you choose Fade from the Color pop-up menu on a pipe object, the Gradient preview tab of the
Select FadeColor dialog box appears. The fields on this dialog box allow you to apply pipe and
gradient fill properties to the pipe object.
These dialog boxes offer a central place to apply gradient fill properties rather than making individual
changes using the right-click pop-up menu. However, you cannot make gradient fill changes to
28
Creating Pictures
For more information about making changes to multiple pipe objects, refer to Modifying Pipe
Characteristics.
The following sections describe the different gradient fill features that you can apply to your shape
objects.
Fade Type
Fade type blends the fade color with the foreground and background colors to produce the three-
dimensional appearance in the shape. You can apply the following fade types to your objects and
pictures:
Linear The foreground color fades to the fade color from one end of the shape to the
other.
Reflected The foreground color converges to the fade color in the center of the shape in
a linear fashion.
NOTE: This fade type may not display in long, narrow rectangular shapes.
Radial The foreground color is darkest around the edges and recedes radially towards
the center.
Concentric The foreground color is darkest along the edges and center with a concentric
band of fade color in between.
Linear Reflected
29
Creating Pictures
Radial Concentric
When you use gradient fill, you can change the way colors are mixed to achieve different effects. The
blend percentage is the amount of fade color that is applied to the fade type. The higher the percentage,
the more fade color is visible. The following diagrams show different blend percentages.
30
Creating Pictures
Gradient angle is the angle, in degrees, of the gradient brush. The default gradient angle is 0° and is
always on the right side of the shape. You can apply as precise an angle as you need using the Gradient
Angle slider.
31
Creating Pictures
• Click the Switch to Run button on the Standard toolbar (Classic view).
• Click Switch to Run in the WorkSpace group on the Home tab (Ribbon view).
• Press CTRL+W on your keyboard.
You can also control other preferences at run-time using the User Preferences dialog box. Refer to the
Using the Proficy iFIX WorkSpace chapter of the Understanding iFIX manual for more information on
iFIX WorkSpace preferences and on switching environments.
32
Creating Pictures
Replacing a Picture
To replace a picture with another picture, use the Replace Picture Expert, located on the Experts
toolbar (Classic view) or on the Tools tab, in the Tasks/Experts area, click Tasks/Experts (Ribbon
view). This Expert allows you to close a picture and replace it with another picture in both the
configuration and run-time environments. If desired, you can specify an alias to the picture that is
automatically assigned as the new picture name. For more information on Experts, refer to the Using
Process Assistants to Expedite Pictures chapter.
• Zoom
• Default View
• Full View
• Fit Picture to Window
• Fit Window to Picture
Refer to the Controlling a Picture's Magnification section for more information on specifying viewing
options.
When you tile two or more pictures, iFIX arranges each picture so that they do not overlap and resizes
each window so that all the pictures fit in the available client area. You can tile pictures horizontally or
vertically. To do this select Tile Horizontal or Tile Vertical from the Window menu. Both methods of
tiling are shown in the following figures.
33
Creating Pictures
Tiling Horizontally
Tiling Vertically
34
Creating Pictures
You can open as many pictures as you want, limited only by the amount of memory in your computer.
When you cascade two or more pictures, the pictures are staggered and resized equally so that you can
select each picture by its title bar. This is illustrated in the following figure. To cascade pictures, select
Cascade from the Window menu.
Cascading Pictures
35
Creating Pictures
If you want to create a full screen picture without a title bar make sure that you deselect the Title bar
check box.
NOTE: If you intend to autoscale pictures created without titlebars, the picture must be started
titleless.
There are many additional style options for the picture window. For more information on these
window properties, refer to the Planning Your Pictures section.
Overview Checklist
The list below describes the tasks to create a picture.
To create a picture:
1. In Classic view, on the Standard toolbar, click the New Picture button.
-Or-
In Ribbon view, click the WorkSpace button, select New, and then click Picture.
2. Using the Shapes toolbar, add objects to the picture. In Ribbon view you may also add objects
form the Insert tab from the Shapes group. If you want to use a pre-configured object, add a
Dynamo. If you want to attach a script to the object, run an Expert.
3. Using the Animations dialog box, modify or animate the object's properties.
4. If desired, write an event-based script for your pictures and objects.
5. In Classic view, on the WorkSpace menu, click Switch to Run to view your picture in the run-
time environment.
-Or-
In Ribbon view, from the Home tab, in the WorkSpace group, click Switch to Run.
6. In Classic view, on the WorkSpace menu, click Switch to Configure to switch back to the
configuration environment.
-Or-
In Ribbon view, from the Home tab, in the WorkSpace group, click Switch to Configure.
36
Creating Pictures
How Do I...
In the Proficy iFIX WorkSpace, you can perform the following steps with pictures:
1. In Classic view, in the iFIX WorkSpace, on the Edit menu, click Picture.
-Or-
In Ribbon view, on the Home tab, in the Editing group, click Properties, and then click
Picture.
2. In the Window Width field, enter a picture width in logical units.
3. In the Window Height field, enter a picture height in logical units.
1. In Classic view, in the iFIX WorkSpace, on the Edit menu, click Picture.
37
Creating Pictures
-Or-
In Ribbon view, on the Home tab, in the Editing group, click Properties, and then click
Picture.
2. Select the Gradient enabled check box and then select the fade type you want to apply to the
gradient.
NOTE: The Gradient enabled check box is automatically selected in this dialog box if it has
been selected in the Picture Preferences tab of the User Preferences dialog box.
1. In Classic view, in the iFIX WorkSpace, on the Edit menu, click Picture.
-Or-
In Ribbon view, on the Home tab, in the Editing group, click Properties, and then click
Picture.
2. Select the Gradient enabled check box and then select the fade type you want to apply to the
gradient.
3. Move the Gradient Angle slider to the angle you want applied to the fade type.
1. In the iFIX WorkSpace, right-click any area in the picture outside of an object, point to Zoom
and choose the desired magnification.
2. To zoom out, repeat step 1.
1. In the iFIX WorkSpace, adjust the picture window size and location.
2. Right-click any area in the picture outside of an object and choose Update Window Location.
3. Save the picture. When you open the picture later, or switch back to the configuration
environment after viewing it at run-time, the picture will appear with the same size and
location you set in step 1.
1. In Classic view, in the iFIX WorkSpace, on the Standard toolbar, click the Open Picture
Folder button.
38
Creating Pictures
-Or-
In Ribbon view, on the Home tab, in the WorkSpace group click Open Picture Folder.
2. Select the folder that contains your iFIX pictures.
NOTE: The PIC folder is the default folder location.
3. Click OK. A window opens that displays thumbnails, if they exist, for all pictures and
dynamo sets.
1. In Classic view, in the iFIX WorkSpace, on the Edit menu, click Picture.
-Or-
In Ribbon view, on the Home tab, in the Editing group, click Properties, and then click
Picture.
2. Select or clear one or more check boxes corresponding to the window properties you want to
enable or disable.
Resolving Pictures
To resolve a picture:
1. In Classic view, in the iFIX WorkSpace, on the Utilities toolbar, click the Resolve Files
button.
-Or-
In Ribbon view, on the Application tab, in the Utilities group, click Utilities, and then click
Resolve Files.
2. In the File Types area, select the Pictures check box.
3. In the Directories area, verify that your picture directory is correct. If not, enter the correct
path in the Pictures field.
4. In the Resolve Files area, select the picture file you want to resolve. To select every file in the
list, click Select All.
5. Click the Update Picture Files button.
NOTE: You will not be able to view thumbnails if you are using Windows Vista and the Vista
Basic Theme for your display.
1. In Classic view, the iFIX WorkSpace, on the Utilities toolbar, click the Save Files With
Thumbnail Preference button.
39
Creating Pictures
-Or-
In Ribbon view, on the Application tab, in the Utilities group, click Utilities, and then click
Save Files With Thumbnail Preference.
2. In the File Types area, select the Pictures and/or Dynamo Sets check box.
3. In the Directories area, verify that your directory is correct. If not, enter the correct path in the
directory field.
4. In the Save Files With area, select the picture or dynamo file you want to save. To select
every file in the list, click Select All.
5. Click OK.
1. In Classic view, in the iFIX WorkSpace, from the Insert menu, select Bitmap.
-Or-
In Ribbon View, on the Insert tab, in the Objects/Links group, click Objects Links, and then
click Bitmap.
2. In the Files of type field, select Win Metafile (*.wmf) and select the folder where the file
resides.
3. Click Open.
TIP: If you want to insert a Windows Metafile (WMF) as a grouped object and not as a flat
Bitmap, do not import it directly. Instead, insert the WMF picture into Microsoft Excel using
the Insert menu. Right-click the picture and select Edit Picture. A message box appears
requesting that you convert the picture to a Microsoft drawing object. Click Yes, and then
copy the converted object from Excel. In the iFIX WorkSpace, and select Paste > Paste
Special. From the Paste Special dialog box, select Enhanced Metafile and click OK. The
grouped object should now appear in your picture.
40
Creating Pictures
1. In the iFIX WorkSpace, run the Create Picture Wizard and create a custom picture.
2. Proceed through the wizard until you reach the Define Custom Picture Attributes page.
3. Select or clear the check boxes for the following attributes:
• Show Title Bar – Adds a title bar to your picture.
• Show System Menu – Adds system menus to your picture.
• Resizable – Adds sizing borders to the picture.
• Always on Top – Configures the window so that it is always on top when you open
it.
• Allow this picture to be cached – Configures the window so that when it is opened
and closed it is held in memory and, when reopened, is read from memory.
4. Click the Background Color button to set the actual background color of the picture. This
color appears in the preview pane.
1. In the iFIX WorkSpace, run the Create Picture Wizard and create a custom picture.
2. Proceed through the wizard until you reach the Define Custom Picture page.
3. Select this option to enter specific dimensions for your custom picture.
4. You must enter all four dimensions: Top, Width, Left, and Height.
5. Select Percentage Units or Pixel Units. The default is set from the previous time the wizard
was run and saved.
• In the iFIX WorkSpace system tree, right-click on a picture and choose Picture. The Edit
Picture dialog box appears. In the Edit Picture dialog box, you can apply the following
modifications to the picture:
• Change the window size
• Change the window styles
• Set the gradient and fade type
• Set the background color
• Set the fade color
• Set the blend percentage
41
Creating Pictures
• In the Edit Picture dialog box, enter a picture width and height (in logical units) in the Window
Width and Window Height fields, respectively. See the Creating Pictures manual for more
information on logical units.
• In the Edit Picture dialog box, select the check box of the Window Style you want to enable.
Use the What’s This? help for information on each window style.
• In the Edit Picture dialog box, select the Gradient enabled check box and then select the fade
type you want to apply to the picture.
• In the Edit Picture dialog box, click the Background Color button and select the color you want
from the Select BackgroundColor dialog box.
• In the Edit Picture dialog box, click the Fade Color button and select the color you want from
the Select FadeColor dialog box.
• In the Edit Picture dialog box, move the Blend slider to the percentage you want applied to the
fade color.
• In the Edit Picture dialog box, move the Gradient Angle slider to the angle you want applied to
the fade type.
• In the Edit Picture dialog box, click the Disable caching for this picture check box. For more
information on picture caching, refer to the Creating Pictures manual.
42
Creating Pictures
1. In the iFIX WorkSpace, run the Create Picture Wizard and create a custom picture.
2. Proceed through the wizard until you reach the Define Custom Picture page.
3. Select the Use Dimensions of Existing Picture option to copy the dimensions from another
picture.
4. Click the Browse (...) button to browse existing .GRF files, beginning at your default iFIX
pictures directory. If you enter a filename directly into the field, the filename is checked for
existence and validity.
NOTE: The existing picture should be able to fit without scroll bars in the work area of the
WorkSpace in configure mode. If the existing picture is larger than the work area of the
WorkSpace in configure mode, the Create Picture wizard will create a new picture that is the
size of the work area in configure mode, not the size of the existing picture in run mode.
1. In Classic view, in the iFIX WorkSpace, click the New Picture button on the toolbar.
-Or-
In Ribbon view, click the WorkSpace button, select New, and then click Picture.
2. Select either Create Picture from a Predefined Configuration, or Create a Custom Picture.
3. Select the Show WorkSpace Appearance Page check box and click Next.
4. Select the options you want to set:
• WorkSpace Full Screen in Run Mode – When you select this option, the
WorkSpace hides its title bar, menu bar, and status bar in the run environment. If you
clear this option, you can select any of the other options on the page.
• Show WorkSpace Title Bar – Displays the title bar across the top of the screen in
run mode.
• Show WorkSpace Menu Bar – This is available only if Show WorkSpace Title Bar
is enabled. Select this option to display the menu bar across the screen under the title
bar in run mode.
• Show Status Bar – Displays the status bar across the bottom of the screen in run
mode.
The preview pane reflects the currently selected WorkSpace options. Changing these options
affects existing pictures.
43
Creating Pictures
1. In Classic view, in the iFIX WorkSpace, on the Utilities toolbar, click the Find Mouse
Coordinates button .
-Or-
In Ribbon view, on the Applications tab, in the Utilities group, click Utilities, and then click
Find Mouse Coordinates.
2. Drag the mouse to the location you want to find the coordinates for. As you move the mouse,
the coordinates change in the Find Mouse Coordinates dialog box.
3. When the mouse cursor is in the location you want, click in the WorkSpace, and then click the
Copy coordinates button to copy the cursor coordinates to the clipboard.
To stop tracking the cursor, click anywhere in the WorkSpace. To start tracking again, click
the Resume tracking button.
1. In Classic view, in the iFIX WorkSpace, on the Format menu, select Grid Settings.
-Or-
In Ribbon View, on the Format tab, in the Arrange group, click Grid, and then click Grid
Settings.
2. Select the Show the Grid check box and click OK.
1. In Classic view, in the iFIX WorkSpace, on the Format menu, select Grid Settings.
-Or-
In Ribbon View, on the Format tab, in the Arrange group, click Grid, and then click Grid
44
Creating Pictures
Settings.
2. Clear the Show the Grid check box and click OK.
1. In the iFIX WorkSpace, select the object(s) you want to snap to a grid point.
2. In Classic view, on the Format menu, select Snap Objects to Grid.
-Or-
In Ribbon view, on the Format tab, in the Arrange group, click Grid, and then click Snap
Objects to Grid.
1. In Classic view, in the iFIX WorkSpace, on the Format menu, select Grid Settings.
-Or-
In Ribbon View, on the Format tab, in the Arrange group, click Grid, and then click Grid
Settings.
2. In the Grid Interval field, enter the desired spacing for the grid, in pixels.
1. In Classic view, on the WorkSpace menu, select User Preferences and click the Picture
Preferences tab.
-Or-
In Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and then click User
Preferences.
2. In the Window Properties area, select the Grid Enabled check box.
3. In the Properties area, enter a value in the Grid Interval field. The value must be entered in
logical units.
45
Creating Pictures
To expedite the process of creating pictures and groups of pictures, you can use the Create Picture
wizard. This wizard allows you to configure the size, location, and properties of your pictures. You can
also use and create predefined configurations of pictures. For more information on the Create Picture
wizard, refer to the Using the Create Picture Wizard section.
• Document
• Viewport
• Window
The Document
A picture is a document object. When you open a new picture in iFIX, you create a document. The
document is the ActiveX container for your iFIX picture. Look at the document as the entire landscape
of your picture.
The document has a logical coordinate system. To understand what this means, let's go back to the
discussion of object-oriented graphics in the Getting Started section. This section discussed how iFIX
uses object-oriented, rather than pixel-based, graphics. iFIX's picture sizing methodology works in a
similar way. A logical picture size means that your document size is based on logical units, not pixels.
The unit of measurement is arbitrary; you can use any logical units you want. iFIX makes this possible
by calculating a one-to-one relationship between the pixel size of your monitor and the logical units of
your document, while maintaining the dpi (dots per inch) ratio of your monitor.
For example, a standard VGA monitor consists of 640x480 pixels. In iFIX, the default size of your
picture, viewed with this monitor, is not 640x480. Rather, it is 100x75 (logical units), as illustrated in
the following calculation.
46
Creating Pictures
Autoscaling
An iFIX document establishes the logical-units-to-pixels ratio when you create a new picture, and
automatically adjusts the ratio when you change the resolution of your screen. This way, your picture
appears to scale no matter what monitor you view it on. When you make any changes to the document,
viewport, or window size, iFIX maintains the 4:3 ratio so that your objects maintain a consistent size
on your screen.
To create pictures that autoscale the same on all nodes, it is critical that you create pictures that have a
dpi (dots per inch) aspect ratio of 4:3. As long as the ratio is 4:3, you can create pictures on any node
and they will autoscale correctly.
CAUTION: By default, the document width and height are set to 100 and 75 respectively. We strongly
discourage changing this ratio. These settings are strictly intended for advanced users. If you choose
to change these settings, the ratio should be four horizontal units by three vertical units. These settings
are found in the User Preferences dialog box.
The Viewport
The viewport is the mapping system in the iFIX document. Like the document, it is a logical system; it
reads the picture's logical coordinates to determine its size, and then maps the coordinates onto the
window. The type of coordinate system is not relevant to the viewport; the viewport converts an
arbitrary measurement and delivers it to the window in the dimensions that you specify.
Taking the example above, a picture with a width of 100 logical units and a height of 75 logical units
maintains a logical ratio with coordinates 0, 0 at the top left corner of the picture. This is illustrated in
the following diagram.
47
Creating Pictures
Look at the viewport as the lens of a camera. For example, if you have a picture containing a circle and
a rectangle, and you define the viewport to begin as shown in the following picture:
CAUTION: If you resize a picture, then modify the viewport width or height, the picture's logical
coordinate system will be remapped. If this happens, objects in your pictures may appear skewed when
resizing or autoscaling. To avoid this problem, we recommend that you do not modify the viewport
height or width once you have resized a picture.
48
Creating Pictures
The Window
The window is the available screen area of the document; it sets the boundaries for what you can
display in your picture. The window preserves a portion of the screen for various window decorations,
such as title bars and sizing borders, for displaying your picture. If the document is the landscape, and
the viewport is the camera lens, than the window is the viewfinder; it is what you actually see on the
screen. For more information on window decorations, refer to the Selecting Window Properties
section.
The following figure shows the relationship between the window and screen in an iFIX picture.
49
Creating Pictures
The default window and document properties are displayed in the Picture Preferences tab of the User
Preferences dialog box. These properties are applied when you create a new picture. The new picture's
viewport is automatically set to display the maximum viewable amount of your picture at a 100%
zoom ratio. For more information on zooming, refer to the Controlling a Picture's Magnification
section.
To change the size of your window for all new pictures to be created, select a window size in the
Window Size field. If you want to modify the default document width or height (100 x 75), make sure
that the ratio between the width and height remains at 4:3. You can select any units you wish; however,
if you choose not to maintain the 4:3 ratio, objects with an identical width and height will not appear as
such in the window. For more information on the logical-units-to-pixels ratio, refer to the section, The
Document.
Once you create a picture, you can change its size by entering the desired logical units in the Edit
Picture dialog box.
In the Edit Picture dialog box, you can specify any logical units to represent the size your picture. iFIX
automatically maintains the ratio between logical units and pixels to preserve the size of the objects on
the screen.
You can have a window that is full screen, half the height of your screen, half the width of the screen,
or one quarter of the screen's size. These sizes are illustrated in the following figures.
50
Creating Pictures
51
Creating Pictures
52
Creating Pictures
53
Creating Pictures
By manually adjusting the size of the window, you can quickly change the view of your picture.
Before you do so, make sure you know what document components you are changing in the picture.
The following table shows what key sequences or mouse actions change your picture size, and what
part of the document you actually modify.
Shift Clicking and dragging the Adjusts the size of The window and
mouse on an edge of the the picture the viewport.
window
Ctrl+Shift Clicking and dragging the Adjusts the size of The window.
mouse on an edge of the the picture
window
54
Creating Pictures
• If you will be using the WorkSpace full screen in Run mode, maximize the WorkSpace in
Configure mode in Classic view by selecting Full Screen from the WorkSpace menu. To
maximize the WorkSpace in Configure mode in Ribbon view, on the Home tab, in the
WorkSpace group, click Full Screen.
• Float or hide toolbars. To modify settings for toolbars, in Classic view, select the Toolbars
option from the WorkSpace menu. In Ribbon view, on the Home tab, in the WorkSpace
group, click Settings and then click Toolbars.
• Float or hide the system tree. To toggle the display of the system tree, in Classic view, select
System Tree from the WorkSpace menu. In Ribbon view, on the Home tab, in the WorkSpace
group, click Show/Hide and then click System Tree.
• Set the Windows taskbar to appear the same as when iFIX is in the run-time environment. To
toggle the display of the Windows taskbar, click the right mouse button in the taskbar and
select Properties.
TIP: For Ribbon view, to ensure access to the taskbar, after you set the toggle property,
minimize and then maximize the WorkSpace.
• Set the Status bar to the same appearance as when iFIX is in the run-time environment. To
toggle the display of the status bar, in Classic view, select Status Bar from the WorkSpace
menu. In Ribbon view, on the Home tab, in the WorkSpace group, click Show/Hide and then
click Status Bar.
If you set run-time protection to hide the title bar or the menu bar, you will not be able to set up the
configure mode to appear exactly as it would in run mode. To set run-time protection, access the
Environment Preferences tab in the User Preferences dialog box.
When you open an existing picture in Run mode, the picture will adjust to the WorkSpace run-time
preferences and settings that are currently enabled.
55
Creating Pictures
Most of the functions described can be accessed using the View menu or tab, or using the picture pop-
up menu. You can also change certain picture properties using VBA. Refer to the Writing Scripts
manual for more information.
The viewing area of a picture is like an adjustable camera lens; it allows you to magnify or reduce the
image on the screen. Magnifying an image (zooming in) lets you work on detailed areas of your
picture. Reducing an image (zooming out) lets you work on the overall structure of the picture.
You can choose four different percentages of magnification when zooming in and out of pictures –
50%, 100%, 150%, or 200%. By default, the viewport is set at 100% view magnification, giving you
the maximum viewable amount of your picture. When you change the magnification of the picture
using the zoom function, you change the width and height of the picture's viewport, but not the size of
the objects in the picture. Objects appear to get bigger or smaller, allowing you to view more or less
detail, but they are actually the same size.
NOTE: You can accomplish the same function of a zoom by simply pressing CTRL/SHIFT while
clicking and dragging a corner of the window. This makes the object appear to change shape without
changing the viewport, just like a zoom. Refer to the Key Sequences that Change the Picture Size table
in the Determining a Window Size section.
After making changes to your window, you may decide that you prefer the original view. To restore
the original view, use one of the following methods:
• Right-click the picture and select Default View from the pop-up menu.
• Select Default View from the View menu (Classic view).
• Click View and then Default View from the Picture group on the View tab (Ribbon view).
• Your picture will appear as you originally created it before making any changes.
If you make the size of your window smaller, you can return the window to full view by selecting Full
View. The Full View function expands the size of the window and changes the viewport. You can also
perform a full view by pressing <Shift> and dragging the window to fill the screen of the window.
If you adjust the window size of your picture, you may want the objects in the picture to be accurately
represented within the new window size. To fit the picture to the new window, use one of the
following methods:
• Right-click the picture name in the system tree and select Fit Picture to Window from the
pop-up menu.
• Select Fit Picture to Window from the View menu (Classic view).
• Click Window and then Fit Picture to Window from the Picture group on the View tab
(Ribbon View).
• The picture is adjusted to the new window size, so that the objects in the picture are the same
size relative to the new window.
56
Creating Pictures
To adjust the size of the window to fit as much of your picture as possible:
• right-click the picture name in the system tree and select Fit Window to Picture from the pop-
up menu,
• select Fit Window to Picture from the View menu (Classic view), or
• click Window and then Fit Window to Picture from the group Picture on the View tab
(Ribbon View)
If the viewport stretches beyond the boundary of the picture, scroll bars are added to the picture.
NOTE: Scroll bars are also added if a picture is created using the Picture wizard in Classic view and
then opened in Ribbon view. If this occurs, from the Property Window, select True for the
RecalculateViewport property.
The Update Window Location function allows you to retain a specific picture configuration,
maintaining the document, window, and viewport sizes that you create. When you open the picture
later, or switch back to the configuration environment after viewing it at run-time, the picture appears
exactly as it did on the screen when you originally created it.
In this way, Update Window Location is not the same as saving your picture. Saving alone does not
retain window properties, and does not guarantee that your picture will look exactly the same when
you re-open it again at a later date. So be sure to save your picture after you have updated the window
location to your exact specifications.
Update Window Location is an effective way to create pop-up windows for your application that
appear exactly the same, regardless of what resolution they are viewed on. To use this function,
employ one of the following methods:
• Right-click the picture in the system tree and select Update Window Location from the pop-
up menu.
• Select Update Window Location from the View menu (Classic view).
• Click Window and then Update Window Location from the Picture group on the View tab
(Ribbon View).
• Next, save your picture.
To show or hide the decorations listed above, select or deselect the appropriate check boxes in the Edit
Picture dialog box. The window decorations enabled by default appear on the Picture Preferences
57
Creating Pictures
Additionally, you can add the following window properties to your picture:
• Always on Top – Configures the window so that it is always on top when you open it. You
can select this feature in the Edit Picture dialog box, from the picture preferences tab in the
User Preferences dialog box and the Property Window.
• Click and Stick Enabled – Allows you to view which objects can be selected, can perform
actions, or can have actions performed on them. You can select this feature from the picture
preferences tab in the User Preferences dialog box. You cannot select this feature from the
Property Window.
• Grid Enabled – Displays a grid on the window. You can select this feature in the Edit Picture
dialog box, from the picture preferences tab in the User Preferences dialog box and the
Property Window.
• Snap to Grid – Allows objects to snap to a grid point in a grid. You can select this feature
from the picture preferences tab in the User Preferences dialog box and the Property Window.
• Runtime Visible – Allows you to run a picture in memory without a visible display in the
run-time environment. You can select this feature in the Edit Picture dialog box and the
Property Window.
• Disable caching for this picture – allows you to disable picture caching for an individual
picture. You can select this feature in the Edit Picture dialog box. See the Using Picture
Caching section for more information about picture caching.
Each of the available properties can be turned on or off, allowing you to create the exact look and feel
you want. For example, you can:
• Simulate dialog boxes by creating a window with the title bar and system menu enabled.
• Create a tool palette for operators using a window with the sizing borders and system menu
disabled.
• Create an opening title screen by creating a window with the full screen enabled, and the other
window properties disabled.
• Simulate an alarm condition where an object makes a sound when the cursor passes over an
object. Do this by creating a window with Click and Stick Enabled selected.
Use the following table as a guideline to help you define your picture properties.
58
Creating Pictures
Toolbar Titlebar
System Menu
Resizeable
Always on Top
For more information on the window and screen in an iFIX document, refer to the section, The
Window.
• Highlight Timeout Interval – When Click and Stick is enabled, this time period defines how
long before the highlight around an object disappears when it is not selected.
• Grid Interval – When the grid is enabled this interval, entered in logical units, determines the
distance between the dots in the grid.
• Using Click and Stick – Click and Stick allows you to view which objects can be selected,
highlighted, or modified at run-time. As the mouse moves over an object, a single highlighted
box clicks around the object if it is selectable. If the object is highlighted, use the mouse to
select or stick the object and it becomes the current object. To enable or disable Click and
Stick, select or deselect the Click and Stick Enabled check box.
59
Creating Pictures
The sections that follow describe some of the strategies that you can use.
• Design Tips
• Finding and Replacing Data in Pictures
• Using Process Assistants
• Working with Color
• Securing Your Pictures
Design Tips
We recommend that you keep the following tips in mind when designing your pictures:
• Use the tools that iFIX provides you to accomplish the job. Using the tools available to
you helps you quickly implement your process development strategy. Examples: using
Dynamo objects for common object groups; using screen regions to determine color schemes;
using Find and Replace to locate and change data; using Experts to add scripts to objects.
• Get data once. Because iFIX allows you to obtain your data from a variety of sources and use
that data throughout the open environment of the Proficy iFIX WorkSpace, you only need to
hook to that data source once. So, for example, if you want to attach a data source to many
objects in your picture, you can do so by distributing the data from one object throughout your
picture. There is no need to fetch data again or retransform that data to assign or animate
properties throughout your picture.
• Use color only when it enhances the picture and makes it easier to use. Overusing colors,
or using an ineffective color strategy, can do more harm than good to your picture design. For
help in designing a coloring strategy, refer to the Working with Color section.
• Instead of creating pictures to monitor points, use the Scheduler. Using pictures to
monitor the value of a point can be ineffective, as scripts may run continuously and never run
to completion. Rather than run a looping script, the Scheduler waits for an event to occur
before it triggers a point. For more information on the Scheduler, refer to the Mastering iFIX
manual.
• Use the extensive resources available to you for help. The Help and Information folder in
the system tree contains comprehensive information to help you learn about a concept or
perform a procedure. This information includes Automation Interfaces and Database Manager
help, as well as a complete electronic book with context-sensitive help.
60
Creating Pictures
To search and replace data in your pictures, select Find and Replace from the Edit menu (Classic view)
or on the Home tab, in the Editing group, click Find and Replace, and complete the appropriate fields
on the Find and Replace dialog box. For detailed information on Finding and Replacing data, refer to
the Finding and Replacing Data section in the Understanding iFIX manual.
• Wizards
• Experts
• Dynamos
• Global Subroutines
• Toolbars
For more information on how Process assistants can help you develop your pictures more easily, refer
to the Using Process Assistants to Expedite Pictures chapter.
• View colors by name. By clicking a tab, you can view all of the available colors by name,
giving you an easy way to select across a color spectrum without choosing from a palette.
• Customize your colors. You can assign unique colors and create a custom palette. If you are
using named colors, you can give the color a specific name.
• Color as you go. Using the Color Selection dialog box, you can edit as many objects as you
like while the dialog box remains on your screen.
• Select which property you want to modify. You can select the property you want to modify
(foreground, background, or edge color).
• Animate your colors using a Color Expert. Using one of the Color Experts on the Experts
toolbar, you can animate a foreground, background, or edge color with ease.
• Selecting a fade, foreground, background, or edge color for a specific object using the modal
61
Creating Pictures
Select Color dialog box. The modal color box is used to apply a color only to the object
selected. Once you select a color, you click OK and the dialog box closes.
• Selecting a color to one or more objects, or designing a custom color set, using the modeless
Color Selection dialog box. The modeless color box is used to color as many objects as you
like, as it stays on your screen as you jump from object to object in your picture.
The following sections detail how to incorporate colors into your pictures using both methods.
You can specify fade, foreground, background, and edge colors using the modal Select Color box,
shown in the following figure.
This dialog box is accessed by right-clicking an object, pointing to Color and selecting Foreground,
Background, or Edge from the pop-up menu. It is also accessed when you click either the Foreground
or Fade button on the Select Color dialog box shown below. This dialog box contains two tabs that let
you choose your color from a palette or from a list of names. You select a color by either clicking the
color in the palette or by clicking the name in the list.
You can specify all of the gradient fill settings at one time using the Select FadeColor dialog box, as
shown in the following diagram.
62
Creating Pictures
The Select FadeColor dialog box is accessed by right-clicking an object, pointing to Color, and
selecting Fade from the pop-up menu. This dialog box also appears if you select Foreground from the
pop-up menu when the object's fill style is Gradient. When you click either the Foreground or Fade
color button the Select Color dialog box appears, as shown in the first diagram above.
Default color selections appear in the Shape Preferences tabbed page of the User Preferences dialog
box.
NOTE: You can also specify a background color for your picture using the Edit Picture dialog box or
Shape Preferences tabbed page. For more information, refer to the Setting the Picture Background
and Fade Colors section.
You can specify foreground, background, and edge colors to as many objects as you like using the
modeless Color Selection box, shown in the following figure.
63
Creating Pictures
Because the Color Selection box remains on your screen as you add or modify objects in your picture,
you can make changes to your objects without having to exit and re-enter the dialog box. To access the
Color Selection dialog box, click the Color button on the Tools toolbar (Classic view) or on the Format
tab, in the Styles group (Ribbon view) or the Toolbox, if enabled.
The Color Selection dialog box contains two tabs that allow you to display the default system colors in
either a color palette or a list. To select a color, click a color in the palette or click a name in the list.
The ColorSet field displays the current default color set being used, and it also contains any custom
sets you may have created. You can create a new custom set from the list provided, or create your own
custom set using a customized palette. All palettes are automatically saved when the Proficy iFIX
WorkSpace shuts down.
In the Property field, you can choose the foreground, background, or edge property to assign to the
selected color. That property changes when you change a color in the dialog box.
If you tie a custom color to the foreground of an object and duplicate the object, the custom color link
will not be retained in the duplicates of the object. The duplicates will only take the color of the custom
color at the time they were duplicated, future changes to the custom color will only update the original
object.
Each color in the color box is named based on its location in the color spectrum. Changing a color in a
palette changes the name of that color in the name list. When creating custom color sets, you can
assign custom names to colors. Each color name appears in a list, allowing you to select across
multiple palettes quickly and easily. If an object uses a named color and the color is deleted or
renamed, the object reverts to the 24-bit color value.
The list of named colors is saved when the Proficy iFIX WorkSpace shuts down.
The Edit Color palette is a grid of colors ranging from red to violet that let you select a custom color of
64
Creating Pictures
your choice. You can select any color from the palette by clicking the mouse. A four-mark cursor
appears.
The slider to the right of the matrix is called a mixer bar. To specify the shade of the color spectrum
you selected in the matrix, adjust the mixer bar. A black arrow appears next to the area you have
selected. You can also change the shade of the color by adjusting the mixer bar up and down, as the
following figure shows.
Color Experts are convenient process assistants that help you easily animate colors of your objects. By
entering a data source and specifying certain options, you can make foreground, background, or edge
colors behave in a way that benefits your process application. For information on the dialog fields on
the Expert, click Help on the dialog box. For more details on the Experts that iFIX provides, refer to
the Using Process Assistants to Expedite Pictures chapter.
When specifying background colors for your objects, be aware that certain colors or fill patterns may
not work effectively, as they may be hidden or offset by the foreground. You can also set a background
color for your pictures. For more information, refer to the Setting the Picture Background and Fade
Color section.
65
Creating Pictures
Secure Containment
iFIX offers a unique security feature called secure containment, which protects your pictures in the
Proficy iFIX WorkSpace in the event that a third-party control fails.
For example, if you add an OCX to your picture in the Proficy iFIX WorkSpace, and the OCX crashes,
an exception is created. The Proficy iFIX WorkSpace detects this exception and isolates it so that your
system keeps running. By securing your application as part of the Proficy iFIX WorkSpace, iFIX
ensures that your pictures are saved even during an unlikely, yet potentially troublesome, event.
The sections that follow describe the aspects of the Create Picture Wizard.
Special Considerations
It is recommended that you ensure the following characteristics are the same for both the machine on
which you create the pictures and the machine on which you deploy the pictures:
• Monitor resolution
• Desktop Theme (especially for users who have a mixed Windows environment)
• Font
• WorkSpace Full Screen in Run Mode
• UI configuration (Title bar height, window border size, status bar)
• Environment Protection settings (title bar, menu bar)
After you have created a picture with the Create Picture Wizard, you will need to understand the
concepts found in the following sections to resize, relocate, or change the attributes of the picture:
66
Creating Pictures
Menu Bar Select New from the File menu, then select Picture from the New list.
(Classic view
only)
Ribbon Click the WorkSpace button, select New, and then click Picture.
(Ribbon view
only)
System Tree Click the right mouse button on the Pictures folder in the System tree.
Task Wizard Click the Task Wizard button from the Standard toolbar. Select Picture from the
Task Categories list box. Select Create Picture Wizard from the Tasks list.
Experts Click the Create Picture Wizard button from the Experts toolbar.
Toolbar
Standard Click the Create Picture Wizard button from the Standard toolbar.
Toolbar
Toolbox Click the Create Picture Wizard button from the Toolbox.
NOTE: To access the Create Picture wizard from the Menu Bar, the Ribbon, the System Tree, or the
Standard toolbar, you must have the Show Picture Wizard from New Picture Menu check box enabled.
You can enable this option in the Picture Preferences tab of the User Preferences dialog box.
As you can see in the Introduction Page of the Create Picture Wizard, there are several elements of the
Create Picture wizard that you will see on every page, including the following:
Preview Pane – Shows a picture configuration based on the currently selected options.
Help Button – Launches the Help topics for the Create Picture wizard.
Cancel Button – Exits the Create Picture wizard without creating any new pictures, or changing
WorkSpace appearance.
Finish Button – Creates the new pictures that you have specified, and sets the WorkSpace
appearance as you have specified. This button is only enabled when the wizard has enough
67
Creating Pictures
Many implementations of iFIX require a configuration of pictures that need to occupy certain areas of
the screen. These pictures have different uses; some of the pictures within the configuration may be
standard across the installation, and some of the pictures may differ depending on the node or the day.
The Create Picture wizard provides you with a number of predefined configurations, which you can
modify to suit your needs. Each configuration consists of some combination of the following default
pictures:
Main – Occupies the entire client screen space, excluding any application title bars, menu bars,
headers, footers, and left navigation pictures. You can use the sizes tab to change the
height, width, and position of this picture.
Header – Runs across the top of the configuration. You can change the height of this picture.
Footer – Runs across the bottom of the configuration. You can change the height of this picture.
Left – Runs along the left side of the configuration. You can change the width of this picture.
Faceplate – Typically used as a pop-up or informational window. You can select the screen
location of this picture, but the size is controlled by the configuration. This picture is
created separately from the other default pictures.
Additionally, the Create Picture wizard now provides two predefined configurations for the most
common handheld device screen resolutions: 240x320 and 320x240. These forms are specifically
designed for handhelds that have Terminal Services capabilities. For more information on using them
with Terminal Server, refer to Optimizing New iFIX Pictures for Use with Terminal Service Capable
Devices.
Once you have created pictures of the correct size and shape, you can use them as templates. You can
open them, edit them, and save them as different pictures to suit your needs.
Custom Picture
When you choose to create a custom picture, you can set all the properties for that picture as you step
through the wizard. The end result is a single picture of the size, location, and name that you define in
the Create Picture wizard.
68
Creating Pictures
Select this option to create the same picture that would ordinarily be created in the WorkSpace if you
did not have the Create Picture wizard enabled. This picture will take on the size and properties that
are currently set in the WorkSpace, and named Untitled.
When you invoke the Create Picture wizard, the Introduction page appears, as shown in the following
figure. On this page, you select the type of picture that you want to create. You also can elect to exit
the wizard and disable its access from the menu bar, the system tree, and the Standard toolbar. For a
description of each type of picture, see the Types of Pictures in the Create Picture Wizard section.
After you complete the Introduction page and click Next, the WorkSpace Appearance page appears, as
shown in the following figure. This page allows you to set the visibility of the Title Bar, the Menu Bar,
and the Status Bar in run mode, and whether the WorkSpace will be full screen in run mode.
NOTE: This page only appears if you selected the Show WorkSpace Appearance Page check box on
the Introduction page.
69
Creating Pictures
If you change the settings on this page, the WorkSpace preferences are automatically updated in your
system when you exit the wizard. You should only need to complete the WorkSpace Appearance page
once. The next time you use the Create Picture wizard, you can clear the check box on the Introduction
page for Show WorkSpace Appearance Page. For more information on setting WorkSpace preferences,
refer to the Setting User Preferences section in the Understanding iFIX manual.
The wizard then steps you through other pages, depending on whether you are creating a custom
picture or pictures from a predefined configuration. These pages allow you to specify the size, location,
attributes, and filename of each picture you create.
Once you have completed the picture specification pages, the Summary page appears, as shown in the
following figure. This page presents a layout preview of the pictures you are creating, and lists the
filename of each picture. From this page you can return to the picture specification pages, or click
Finish to generate the pictures and add them to the system tree.
70
Creating Pictures
For information about modifying the attributes of pictures once you have created them, refer to the
Using Basic Functions in Pictures section.
How Do I...
In the Proficy iFIX WorkSpace, you can perform the following steps with the Create Picture Wizard:
• Use any of the following methods in the iFIX WorkSpace to access the Create Picture Wizard:
• Menu Bar – On the File menu, point to New and then click Picture (Classic View
71
Creating Pictures
only).
• Ribbon – Click the WorkSpace button, select New, and then click Picture (Ribbon
View only).
• System Tree – Right-click the Pictures folder in the System tree and select New
from the pop-up menu.
• Task Wizard – Click the Task Wizard button on the Standard toolbar, select Picture
from the Task Categories list box, then select Create Picture Wizard from the Tasks
list.
• Experts Toolbar – Click the Create Picture Wizard button on the Experts toolbar.
• Standard Toolbar – Click the New Picture button on the Standard toolbar.
• Toolbox – Click the Create Picture Wizard button on the Toolbox.
NOTE: To access the Create Picture Wizard from the Menu Bar, the Ribbon, the System Tree,
or the Standard toolbar, you must have the Show Picture Wizard from New Picture Menu check
box enabled on the Picture Preferences tab of the User Preferences dialog box.
72
Creating Pictures
6. The next pages in the Wizard depend on the type of picture you chose to create. Follow the
procedures associated with Step 3.
7. Click Next. If you are creating pictures from a predefined configuration, select which of the
pictures in the configuration you want to create, and specify the filename for each picture on
the Select Filenames page.
• To disable a picture, clear the check box next to the generic name. Disabled pictures
will not be created.
• Enter a filename in the field next to each enabled picture.
• If you are creating a custom picture, enter a filename in the Custom field.
8. Click Next. The Summary page lists the configuration name, the generic pictures that will be
created when you click Finish, and the filename of each picture.
9. Optionally, select the Do Not Show Wizard check box to prevent the wizard from running the
next time you select New Picture from the File menu.
10. Click Previous to change your pictures, or Finish to exit and add the new picture files to your
system tree.
1. In Classic view, in the iFIX WorkSpace, click the New Picture button.
-Or-
In Ribbon view, click the WorkSpace button, select New, and then click Picture.
2. On the Introduction page, select Create Picture(s) from a Predefined Configuration. Click
Next. The Choose Configuration page appears.
NOTE: If you selected the Show WorkSpace Appearance Page check box on the Introduction
page, the WorkSpace Appearance page appears before the Choose Configuration page.
73
Creating Pictures
8. Optionally, select the Do Not Show Wizard check box to prevent the wizard from running the
next time you select New Picture from the File menu.
9. Click Previous to change your configuration, or Finish to exit and add the new pictures to
your system tree.
1. In the Create Picture Wizard, from the Choose Configuration page, click the Modify
Configuration button. The Modify Configuration dialog box appears.
NOTE: The Create Picture Wizard's Choose Configuration page is only available if you
select Create Picture(s) from a Predefined Configuration in the Introduction page.
2. On the Attributes tab, select the attributes for each picture within the configuration.
3. On the Sizes tab, change the size or position of each picture.
4. To save your modified configuration, select one of the following options:
• Save – Saves the changes for this picture only.
• Save As – Saves the current options as a new configuration. When you select this
option, the Enter New Configuration Name dialog box appears. Enter the name for
the new configuration (up to 80 characters) in the Name field, then click OK to
return to the Modify Configuration dialog box.
5. Click Return to Wizard. If you have unsaved changes, choose whether you want to save them
or not. Click Yes to save the changes for this picture only, or click No to cancel the changes
you made to the configuration and reset the attributes and sizes to their previous settings
6. The Choose Configuration page of the Create Picture Wizard reappears. Notice that the name
you entered (if you saved the configuration under a new name) is displayed in the list on the
Choose Configuration page.
TIP: If you mistakenly save a predefined configuration, select the unwanted configuration
from the list on the Choose Configuration page and click Delete Configuration.
1. In Classic view, click the New Picture button on the Standard toolbar.
-Or-
In Ribbon view, click the WorkSpace button, select New, and then click Picture.
2. On the Introduction page, select Create a Custom Picture.
NOTE: If you selected the Show WorkSpace Appearance Page check box on the Introduction
page, the WorkSpace Appearance page appears before the Choose Configuration page.
74
Creating Pictures
4. Click Next.
5. Select the attributes that you would like for the picture.
6. Click Next.
7. Specify a filename for the picture, then click Next. The Summary page lists the filename of
the picture that will be created when you click Finish.
8. Optionally, select the Do Not Show Wizard check box to prevent the wizard from running the
next time you select New Picture from the File menu.
9. Click Previous to change your picture, or Finish to exit and add the new picture to your
system tree.
1. In Classic view, in the iFIX WorkSpace, click the New Picture button on the toolbar.
-Or-
In Ribbon view, click the WorkSpace button, select New, and click Picture.
2. Proceed through the Create Picture Wizard until the Choose Configuration page appears.
NOTE: You must select Create Picture(s) from a Predefined Configuration from the
Introduction page to be able to change the attributes of predefined pictures.
For example, the Header picture is adjacent to the Main picture along the top of the Main
picture. If you change the height of the Main picture, the bottom border of the Header picture
remains adjacent to the top border of the Main picture, and the height of the Header stretches
to occupy the space from the top of the screen to the top of the Main picture.
75
Creating Pictures
1. In Classic view, in the iFIX WorkSpace, click the New Picture button on the toolbar.
-Or-
In Ribbon view, click the WorkSpace button, click New, and click Picture.
2. Proceed through the Create Picture Wizard until the Choose Configuration page appears.
NOTE: You must select Create Picture(s) from a Predefined Configuration from the
Introduction page to be able to change the attributes of predefined pictures.
76
Creating Pictures
Cut Remove the bitmap from the picture and places it into the clipboard.
Duplicate Create a duplicate copy of the bitmap and place it slightly offset from the
original.
Bring to Front Move the selected bitmap to the front or top of the picture.
Send to Back Move the selected bitmap to the back or bottom of the picture.
Load Image Load a primary or secondary bitmap, either from a file or from the
clipboard, that can be displayed in your picture.
Button Styles Assign a button style (No Button, PushButton, or MultiState) to the bitmap.
77
Creating Pictures
Edge Style Assign an edge style (None, Sunken, Raised, Etched, Bump) to the bitmap.
Edit Script Open the Visual Basic Editor, which allows you to edit Visual Basic scripts.
Property Window Display the Properties Window, which allows you to view and change
property values.
Let's say you want to import a bitmap, and then be able to easily view a different image related to the
first. You can do this using the Load Image operation from the bitmap's pop-up menu as follows:
1. In Classic view, on the Shapes toolbar, click the Bitmap button, if enabled.
-Or-
In Ribbon view, on the Format tab, in the Insert group, click Objects/Links and then click
Bitmap.
-Or-
If the Toolbox is enabled, click the Bitmap button on the Toolbox.
2. Select the desired directory and bitmap and click Open. The image is added to the picture with
object handles.
3. With the image selected, right-click the mouse and select Load Image - Secondary from the
object's pop-up menu.
4. Select the file from the Open File dialog box, and click Open.
5. To switch from one image to another, right-click the bitmap and select Display Primary or
Display Secondary from the pop-up menu.
Bitmaps can also be resized. To resize an imported bitmap, select it and then drag one of the sizing
handles in any direction. Bitmaps can be resized with little or no loss in picture quality.
NOTES:
• You can copy another object as a bitmap and paste it into another graphics application such
as Microsoft Paint, or copy and paste an existing object as a bitmap. You can also change the
properties of a bitmap by selecting the bitmap, and then selecting a property from the Object
menu.
• Bitmaps up to 24-bit graphics resolution are supported. If a picture contains a large 24-bit
bitmap, there may be a short delay when opening the picture in iFIX.
78
Creating Pictures
For more information, refer to the Animating Object Properties chapter. Refer to the Implementing
Alarms and Messages manual for detailed information on how to employ an alarming strategy.
Still, external to iFIX software, there are some guidelines that you should abide by to make iFIX
perform more effectively for your specific needs.
The two easiest ways to optimize the performance of your pictures are to make your pictures open
faster and update faster. Common to both attributes are:
Processor Speed – The faster the machine's processor, the faster your applications perform.
RAM – To avoid disk swapping, your computer must have enough memory to contain all
applications, databases, and cached pictures. If the computer does not have enough
memory, Windows swaps the applications to disk.
To optimize the speed at which iFIX initially displays pictures, iFIX includes a Resolve feature,
described in the Resolving Pictures section that follows. To further optimize the speed at which your
pictures are dynamically updated based on changes in process conditions, try doing one or more of the
following:
79
Creating Pictures
Resolving Pictures
Database information for each data source in a picture is saved as part of the picture file on disk. When
a picture is displayed in the run-time environment, and the database information is not up-to-date, iFIX
queries the database and resolves the tag definitions. This can be a time-consuming process which
slows the opening of the picture.
Resolving pictures removes the need for iFIX to query the database. Therefore, resolved pictures open
faster in the run-time environment. The Resolve feature is available for both pictures and schedules,
and can be accessed using the Utilities toolbar or the Picture category of the Task Wizard (Classic
view), or on the Applications tab, in the Utilities group, in the Utilities list (Ribbon view).
When you resolve a picture that requires autoscaling, the iFIX Resolve Task Wizard now opens the
picture while resolving.
NOTE: If you delete tags from the process database after you resolve a picture, you need to run
Resolve again.
Blinking Alarms
Instead of using blinking alarms, use a color-by alarm or color-by value strategy to indicate alarm
status. Blinking is a very time-intensive operation because the blinking object and the surrounding
objects need to be redrawn each time the picture is refreshed at the specified picture refresh rate, even
though the information in the object has not changed. For more information on employing a color-by
alarm strategy, refer to the Implementing Alarms and Messages manual.
You can update pictures from the following versions with this utility:
• FIX 5.65
• FIX 6.0
• FIX 6.12
• FIX 6.15
• FIX v7.0
The following sections detail how to use the Picture Converter utility.
For more information on the Picture Converter and other migration tools, refer to the Migrating from
FIX32 to iFIX guide (MG.chm). The MG.chm file can be found on your iFIX product DVD in the
MigrationTools folder, or with your installed iFIX documentation. By default, this folder is:
80
Creating Pictures
C:\Program Files\Proficy\ProficyDoc\1033\iFIX.
For more information on the Picture Converter and other migration tools, refer to the to the Migrating
from FIX32 to iFIX guide (MG.chm). The MG.chm file can be found on your iFIX product DVD in
the MigrationTools folder, or with your installed iFIX documentation. By default, this folder is:
C:\Program Files\Proficy\ProficyDoc\1033\iFIX.
1. On the Migration Tools toolbar, click the Picture Converter button, the second button on the
toolbar. The Picture Converter appears.
2. On the File menu, click Set Destination Directory. Or, you can click the Set Destination
Directory button on the toolbar. The Destination Registry dialog box appears.
3. Enter or Browse for the iFIX PIC folder. If you installed iFIX to the default location, the path
to this folder is C:\Program Files\Proficy\Proficy iFIX\PIC.
4. Click OK.
5. On the File menu, click Open ODF File to Convert. Or, you can click the Select ODF Files
button on the toolbar. The Select Picture Files for Conversion dialog box appears.
6. Select the ODF file(s) for the FIX picture(s) that you want to convert, and click Open. A
message box appears requesting a color palette selection.
7. If you have a custom color palette stored as a .PLT file, click Custom to select it. Otherwise,
click Default. The picture conversion process begins.
8. The overall progress is tracked in the status bar, and messages appear in the bottom half of the
screen as the conversion completes. Additionally, error and warning information is written to
the PictureName.log file, where PictureName refers to the actual name of the picture file.
Only MultiPen charts will be converted – since only MultiPen charts exist in the iFIX object set,
any other type of chart contained in a 6.x picture will be ignored. More specifically, the
following charts will be ignored: Multi-bar, XY Plot, X-Bar, R-Bar, S-Bar, and Histogram
charts. A warning will be logged.
Tag Groups and variable references are not converted – the object and its dynamic property
will be created in the new iFIX picture, but the animation will be tied to a data source that
doesn't exist. A warning will be logged.
Command language code will not be converted to Visual Basic code – command language
scripts will be pasted into the appropriate event on the iFIX object. Each line will be
commented out since the code will undoubtedly not compile under Visual Basic. You will
81
Creating Pictures
Alarm Summary objects are converted without properties – Alarm Summary objects will be
created in the new iFIX picture and correctly placed, but the other properties such as Node,
Filtering, etc. will not be converted. A warning will be logged.
Charts with no pens will not be converted – if a chart exists that no pens can be created for,
because the sources of the pens could not be connected to or because of other problems, the
chart will not be created in the new iFIX picture. A warning will be logged.
Dynamo Sets must be upgraded by the user – to upgrade a 6.x Dynamo Set, the user must first
rename the set to have the picture .odf extension. Use the Picture Converter utility to
upgrade the renamed Dynamo Set. All the prompts will be lost. Open the new iFIX picture
containing the Dynamo objects and drag them into a new iFIX Dynamo Set.
Group tags are not upgraded – the Group Tag property of groups in 6.x pictures will be ignored
when creating the group in the new iFIX picture.
Tag Group conversion – the first character of tag groups will be changed from a `?' to a `@' to
correspond with the new iFIX naming convention.
Picture properties Grid Settings and Security Area are not converted.
Numeric data entry is the only type converted – Datalinks using other types of data entry will
be converted to datalinks using numeric data entry. iFIX does not convert any other types of
data entry for datalinks. This includes slider entry, pushbutton entry, and ramp value entry.
Datalink Setpoints are converted to comments within VBA click events – to complete the
conversion, examine the comments and add the appropriate VBA code to handle these
parameters.
Font size may appear 1 pt smaller – in some cases font size will appear 1 pt smaller in the new
iFIX picture.
Text on buttons may be clipped – since the space allowed for text in 6.x buttons and iFIX
buttons differs greatly, text in iFIX buttons may be clipped. You can fix this by making the
button bigger or making the font smaller.
• To avoid distortion of the caption text, create a new iFIX button instead of resizing a bitmap
82
Creating Pictures
button.
• To use a picture containing a bitmap button on screens of different resolutions, convert a new
picture for each resolution.
• To make a bitmap button always appear on top, stack the button object so that it is on the top.
There are two types of pictures you can cache: run-time pictures and preload pictures. Run-time
pictures are loaded into the cache when they are closed. When the number of cached pictures exceeds
the cache size setting, the oldest picture is dropped from the cache and is replaced with the most
recently closed picture. Preload pictures are loaded when the WorkSpace is started and have a property
of AlwaysLoaded. They are never dropped from the cache while you are in run mode.
In a new installation of iFIX, picture caching is enabled by default with a picture count of five. In
upgrades to iFIX 2.5 and later, picture caching is not enabled by default.
• System Requirements
• Enabling Picture Caching
• Preloading Pictures
• Run-time Pictures
System Requirements
System requirements for picture caching depend on the number of pictures you choose to cache.
The current version of iFIX requires 128 megabytes of physical memory to run. However, as your
cache size increases, your memory requirements will increase. Use the following as a guide for
memory requirements when caching pictures. Memory should increase:
• 2 to 3 times the file size for each picture that does not include bitmaps and controls.
• 3 to 4 times the file size for each picture that includes bitmaps and controls.
For example, a 2 megabyte file that does not include bitmaps and controls requires a 4 to 6 megabyte
increase in memory. A 2 megabyte file that includes bitmaps and controls requires an increase in the
memory of 6 to 8 megabytes.
83
Creating Pictures
If you disable picture caching, the most recently used cache is disabled, no pictures will be preloaded,
and all pictures will be fully closed when the file is closed.
NOTE: Picture caching, by default, is disabled when you upgrade from a previous version of iFIX to
the current version. If you are installing iFIX 2.6 or later for the first time, picture caching, by default,
is enabled, with a default cache size of five.
Most users will not notice any difference in the way the system behaves with cache enabled. However,
if you have done extensive VBA scripting in your application, there will be a few minor differences in
the system behavior. If you are upgrading from a previous version of iFIX, you should review and
understand these changes before enabling picture caching. See the Making Changes to Pictures at Run
Time section of this document for more information.
84
Creating Pictures
Preloading Pictures
You can preload frequently used pictures directly into the picture cache when the WorkSpace starts in
run mode. In order to do this, you need to modify the FixUserPreferences.ini file, located in the
C:\Program Files\Proficy\Proficy iFIX\LOCAL directory. Use a text editor to modify this file. The
following two configuration parameters are located in the [AppPreloadPicturePreferences] section of
the FixUserPreferences.ini file. These parameters are required to preload pictures.
TotalPreloadPicturePath=<nn>
85
Creating Pictures
PicturePath#0=Firstpicture.grf
TotalPreloadPicturePath indicates the number of pictures you want to preload in the cache.
PicturePath#N indicates the file name of each picture you want to preload. For example, to preload two
pictures into the cache, enter the following lines to the FixUserPreferences.ini file:
[AppPreloadPicturePreferences]
TotalPreloadPicturePath=2
PicturePath#0=Firstpicturename.grf
PicturePath#1=Secondpicturename.grf
NOTE: The WorkSpace will only preload pictures when picture caching is enabled and the Start
WorkSpace in Run mode check box is enabled. WorkSpace does not preload pictures when switching
from configure mode to run mode.
Ensure that the number of pictures you enter to preload in the FixUserPreferences.ini file does not
exceed the Cache Size you have set in the WorkSpace User Preferences dialog box.
Save and close the FixUserPreferences.ini file after making your changes. Restart the WorkSpace to
load the new preferences settings.
Preloaded pictures are designated as always loaded by definition. They will not be dropped from the
cache while you are in run mode. Displays are preloaded only when the WorkSpace is initially started
in run mode.
Run-time Pictures
At run time, you can also cache pictures that you open and then close.
When picture caching is enabled, the WorkSpace maintains a list of the most recently closed files.
When you close a file, that document is placed on the list of most recently closed files. If this list of
closed files exceeds the cache size, the first file closed is unloaded from memory and completely
closed. However, preloaded pictures are not dropped from the cache. You can view a list of cached
pictures by pressing Ctrl + Shift + C. The following figure shows the picture caching process.
86
Creating Pictures
NOTE: You cannot delete a picture that is closed into the cache. You must wait until that picture is
dropped or flushed from the cache before deleting.
Picture Caching only functions when the WorkSpace is in run mode. If you switch to configure mode,
the most recently closed cache is flushed and any files in the cache are fully closed. All preloaded
pictures in the loaded state are then closed. If you switch back to run mode, pictures in the preload list
are not loaded into memory.
If you disable picture caching, the most recently used cache is disabled, no pictures are preloaded, and
all pictures are then fully closed when the file is closed.
87
Creating Pictures
When you enable picture caching, some of your run-time changes are preserved while your picture
remains cached. If you change any object properties (such as foreground color) through VBA or make
changes to a chart through a chart dialog in run mode, you will still see those changes when you close
the picture and reopen it from cache. However, your changes are not written to the stored file, and once
the picture drops from the cache, your changes are lost. If you use scripts to make those changes, you
should retest your displays with caching enabled.
All other behavior involving tag groups, or changing alarm summary sort or filter configurations, are
not preserved regardless of whether picture caching is enabled or disabled.
1. Right-click the picture name in the system tree, or right-click any area in the picture outside of
an object to display the pop-up menu.
2. Select Picture... to display the Edit Picture dialog.
3. Check the Disable caching for this picture check box from the Edit Picture dialog box.
Resizing Pictures
You can resize a picture in configure mode, so that every time you go into run mode the picture
appears in the location you want it to.
You can also resize a picture through VBA. For instance, you can create a push button with code
behind it that, when clicked in run-mode, resizes the picture. The steps below provide more details.
1. In Classic view, in configure mode, on the WorkSpace menu, click User Preferences.
-Or-
In Ribbon View, on the Home tab, in the WorkSpace group, in the Settings list, click User
Preferences.
2. Click the Picture Preferences tab.
3. In the Window Properties area, make sure that the Title and Resizable check boxes are
selected.
NOTE: After you resize the picture, you can enable these options again, if required.
88
Creating Pictures
6. When the picture is in the desired location, right-click it and select Update Window Location.
7. Click Close Full Screen.
8. Save the picture.
TIP: If you want to restore the default picture height and width values, in configure mode,
right-click the picture and select Full View. You can now repeat steps 4-8 to resize the picture
again.
dTopPct = 20
dLeftPct = 20
dHeightPct = 50
dWidthPct = 50
End Sub
NOTE: You can modify the dTopPct, dLeftPct, dHeightPct, and dWidthPct resize percentage
values to the values specific to the picture you want to resize.
89
Creating Pictures
AlwaysShowMaximized=1
If you later change the value from a 1 to a 0, or remove the line altogether, the iFIX WorkSpace starts
in the mode it was last open in. For instance, if the window was minimized and you shut it down, when
you restart the WorkSpace it will re-appear minimized. It does not matter if the WorkSpace was last in
configure mode or run mode.
You can also add user preferences to this file to control certain behavior.
Use caution when making changes to the FixUserPreferences.ini file, and ensure that you are changing
the correct settings. You must shut down iFIX before making your changes to this file, and then restart
it for the new settings to take effect.
90
Creating Pictures
Each action has both slow and fast settings. The setting is determined by whether you are using the
SHIFT or CTRL keys, a combination of both, or neither, depending on the action. The following table
indicates which keys or key combinations to use for these actions:
NOTE: To perform either of the rotate actions, right-click the object and choose Rotate, then press
either the SHIFT or CTRL key and use the rotate handles that appear.
91
Creating Pictures
92
Creating Pictures
Shapes Toolbar
93
Creating Pictures
Shapes Toolbar
94
Creating Pictures
Shapes Toolbar
By default, all of the buttons in the above table appear in the Toolbox when you create or open a
picture. If you have the Toolbox enabled, you can add objects to your pictures by clicking the
appropriate button on the Toolbox.
TIP: To add multiple objects of the same type, double-click the appropriate button on the Toolbox.
When you are done adding the objects, press ESC, click another button, or click the pointer selection
tool in the Toolbox. For information on which buttons allow multiple creation, refer to the previous
table.
A powerful feature of iFIX is the capability to add ActiveX controls (OCXs) to your pictures. ActiveX
controls provide functionality to your pictures without your having to write complex code. Because of
its open architecture, iFIX allows you to drag and drop any third-party object (OCX) into your
displays.
NOTE: Because third-party objects are self-contained applications in themselves, you should be
aware that problems that occur from these components are beyond the control of GE Intelligent
Platforms. However, iFIX does provide Secure Containment, which seals off a crashed ActiveX control
and allows iFIX to run normally.
Drawing Shapes
Once you select a shape (that is, a rectangle, rounded rectangle, oval, line, polyline, polygon, arc,
chord, pie, or pipe), it is easy to add it to a picture.
95
Creating Pictures
Some shapes are drawn by defining a series of points using the mouse.
To draw an arc:
96
Creating Pictures
Adding a Chart
You can choose to add either a Standard Chart or an Enhanced Chart to your picture. To add a chart to
your picture, click the desired chart button on the Shapes toolbar (Classic view) or on the Insert tab, in
the Charts group, select the desired Chart (Ribbon view). If you have the Toolbox enabled, click the
button on the Toolbox. The cursor becomes a plus sign. Click and drag the mouse in an area of the
picture where you want to place the chart. A chart appears on the screen, and also in the system tree.
By double-clicking the chart, you can define properties for the chart using the Chart Properties dialog
box. The properties available depend on the data source selected. Chart Properties are detailed fully in
the Trending Historical Data manual.
If you choose a real-time data source, certain properties are enabled or disabled, as shown in the
following table. Real-time data sources can also include T_DATA from Trend blocks.
Duration Enabled
Interval Disabled
To plot real-time data, you must define a real-time data source. To do this, for Standard Charts, click
the Chart tab, for Enhanced Charts, click the Data Sources tab, on the Chart Configuration dialog box
and, at the top of the tabbed page, enter a real-time data source in the Data Source field. Use Data
Server.node.tag.field format. You can also use a local node alias by selecting THISNODE from the
list. Alternately, you can click the Browse button to display the Expression Builder, which allows you
to search global data sources through a data source browser. To learn how to use the Expression
Builder and define data sources, refer to the Animating Object Properties chapter.
Once you have defined a real-time data source, you can define how the data is presented. For Standard
Charts, using the data area of the Chart tabbed page, you can configure pen properties, pen styles, X
and Y axis properties, time ranges, grid styles. You can also define general chart properties such as a
name and description, scroll direction, attributes, and appearance. For Enhanced Charts, you can use
the multiple tabs available to configure every attribute of the chart's appearance and data
representation.
For Standard Charts only, default settings for charts are set in the Chart Preferences tabbed page of the
97
Creating Pictures
User Preferences dialog box. For more information on using charts and applying chart properties, refer
to the Trending Historical Data manual.
The duration and number of samples determine how F_CV real-time values are trended in a chart. For
example, if you set the number of samples to 600 and the duration to one minute, then the chart
displays a value for every second. In this example, the trend array holds a maximum of 600 seconds of
data, or 10 minutes. You can change the duration to any value under or equal to 10 minutes, and the
trend line continues to be plotted. However, if you change the duration to a value greater then 10
minutes the trend is cleared, and the data is plotted based upon the new duration and number of
samples. The following table illustrates this example, and provides a few more.
NOTE: Be aware that if you want to change the duration from a small value, such as 10 minutes, to
larger value, such as an hour, and back, then it is highly recommended that you use either ETR
(Extended Trend Blocks) or Historical data.
24 hours 600 samples 1 hours of data, 1 value for every 144 seconds
Adding Text
A text object is a collection of characters within an invisible rectangle. To add text to your picture,
click the Text button on the Shapes toolbar (Classic view) or on the Insert tab, in the Objects/Links
group, on the Objects/Links list click Text (Ribbon view). If the Toolbox is enabled, click the button
on the Toolbox.
The default font properties for text are defined on the Shape Preferences tabbed page of the User
Preferences dialog box. To change a font option for new objects, make the appropriate selections in the
Font area. For example, to change the size of the font, enter a point size in the Font Size field.
If you use text with an italic font style in your pictures, the text may not always appear as expected. If
the text appears clipped in your picture, use the handles to resize the text block. Selecting a different
font may also correct this problem.
98
Creating Pictures
• Double-clicking the text object and placing the cursor where you want to make your edits.
• Right-clicking the text object and selecting Edit Text from the pop-up menu that appears.
• Editing the Caption property. For instance, you can do this by right-clicking the text object
and selecting Property Window. In the Caption field, enter your changes and press Enter.
For more information on Shape Preferences, such as how to change the text color, style, and size, refer
to the Coloring and Styling Objects section.
After completing the Datalink dialog box, click the mouse in the location where you want to place the
data link. Once you add a data link, you can access the Datalink dialog box by selecting DataLink
Custom Page from the data link's pop-up menu.
The initial size of the data link is determined both by the formatting settings you choose in the Datalink
dialog box and by the font settings in the User Preferences dialog box. To change the size of the font,
access the User Preferences dialog box through the WorkSpace menu (Classic view) or from the Home
tab, in the WorkSpace group, in the Settings list, click User Preferences (Ribbon view), and set the font
properties on the Shape Preferences tab. Once you have created a data link, you can resize it by
clicking on it and dragging the handles, and reformat it using the Datalink dialog box.
NOTE: If you add a data link by selecting Datalink from the Insert menu (Classic view) or from the
Insert tab, in the Objects/Links group, in the Objects/Links list and clicking Datalink (Ribbon view),
you first sketch the location and size of the data link, then complete the Datalink dialog box. In this
case the size of the data link is determined by your initial sketch.
You can display data from any valid data source using your data link. In the Source field, enter the data
source you want. You can also select from the Expression Builder by clicking the Browse button.
99
Creating Pictures
To allow operators to enter data into the data link, select In-Place from the Type field's drop-down
menu. This lets you enter data in-place, meaning you can display data as you enter it in the Type field.
In the run-time environment, data entered is written to the appropriate database tag during the next
scan cycle. When you enable data entry, you can require that operators confirm that they want this data
to be written to the database before it is sent. To require confirmation, select the Confirm check box.
To help you configure data, use the Data Entry Expert. This Expert lets you determine which data
source the data link receives its data from, and how that data appears.
If you use the Data Entry Expert on a data link, you must set the Data Entry Type value in the Datalink
dialog box to None. If you set this value to In-Place, unexpected results may occur.
Use the Data Entry Expert to create the following types of data entry:
• Numeric/Alphanumeric
• Slider
• Pushbutton
• Ramp
NOTE: Do not name your picture after one of Data Entry Expert types. Picture names can conflict
with the script variable names used with the Data Entry Expert. For instance, if you name your picture
Pushbutton.grf and also use the Pushbutton data entry method, when you enter run mode, an error
message appears. If you rename the picture, Pushbutton1.grf, the error message does not appear,
since the picture name is now different than the data entry method.
You can access the Data Entry Expert from the Task Wizard. For more information on the fields of the
Expert, click the Help button. For more information on using the Task Wizard, refer to the Using
Experts and the Task Wizard section in the Understanding iFIX manual.
You can also create custom types of entry in VBA. For more information on VBA, refer to the Writing
Scripts manual.
Formatting Data
iFIX lets you format the data you want to display in the data link. First, you must choose one of the
following types of data to display:
• Raw
• Numeric
• Alphanumeric
To display data in its raw (or native, C code) format, select the Raw Format check box. You can then
edit the format by entering a C format string in the Format field. You can also enter a string of any
kind preceding the raw format string (to introduce what the data string represents, for example).
To format numeric data, first select Numeric from the Type field's drop-down menu. Next, enter an
integer from 0 to 7 to represent the:
• Whole digits – the number of digits displayed before the decimal point.
100
Creating Pictures
• Decimal digits – the number of digits displayed after the decimal point. This value is rounded
off to fit into the number of digits specified for the Data link.
The following table shows some examples of how formatted numbers affect the way the data link
displays in the run-time environment.
2 4 12.1234
1 6 1.123456
6 1 123456.1
0 7 .1234567
7 0 1234567
NOTE: To format a data link to display scientific notation, first select a F_CV, E_CV or A_CV field,
enable the Raw Format check box, and specify %e in format field. F_CV and E_CV datalinks using %e
raw format, by default, display 6 places after the decimal point. To display more places after the
decimal point, for example 15, change %e to %1.15e. A_CV datalinks using %e raw format will
always display 15 places after decimal point. To display a leading zero in the link, use the F_CV field
and the raw format similar to %02.2f.
To format alphanumeric (or text) data, first select Alpha-Numeric from the Type field's drop-down
menu. Next, enter in the appropriate fields the number of lines and the number of characters per line
you want to display in the Data link. You can also justify the data to the left, right, or center, by
making the appropriate selection from the Justify field.
Be aware that float point precision can differ between a datalink and what is shown in the Database
Manager. In order to synchronize the two, use the following .INI file setting in the
FixUserPreferences.ini file in the iFIX Local folder:
[AppRunPerferences]
AllowPrecisionAdjustment=0
A value of 0 indicates that there is no special precision adjustment for a datalink, and it will be the
same precision as the Database Manager displays. The default behavior is to allow datalink precision
adjustment.
When using tag groups in data links and using raw format strings, you must be sure to match data types
between the values and the format string.
For example, if the tag used is going to be replaced by the value of Fix32.Thisnode.AI1.F_CV, the
format string must be %f, or some derivative (i.e. %7.2f). The default when entering a tag group is %s,
or string. If you do not adjust this and the types do not match, no formatting will occur and you will
101
Creating Pictures
The Error Configuration area of the Datalink dialog box lets you determine how error conditions are
displayed by the data link should they appear. You can configure the output to derive its value from:
• An error table, or
• The current value.
For more information on output values and definitions, refer to the Classifying Animations Errors
section.
You can also display system information using the data link. To do this, add a data link to your picture
as described in this section. When selecting a data source, use the format FIX32.node:system:system
field. This data link can display a number of different system parameters of a particular node. Refer to
the iFIX Database Reference help for a list of system parameters.
If you are attempting to use the DataChange Event in a data link, you cannot create the VBA object
(such as Private Sub Format1_DataChange) by selecting Edit Script from the right-click menu.
To use the DataChange event with a data link, you must use the DataChange event with the Format
child object.
NOTE: These steps assume that the Format object name is Format1.
102
Creating Pictures
To add a historical data link to your picture, in Ribbon view, from the Insert tab, in the Objects/Links
group, in the Objects/Links list, click Historical Datalink. In Classic view, click the Datalink Stamper
button on the Shapes toolbar. If the Toolbox is enabled, click the button on the Toolbox. In the
Historical Datalink dialog box, specify your choices for the following settings:
After completing the Historical Datalink dialog box, click the mouse in the location where you want to
place the historical data link. After you add a historical data link, you can access the Historical
Datalink dialog box by selecting DataLink Custom Page from the historical data link's pop-up menu.
After you have created a data link, you can resize it by clicking on it and dragging the handles.
IMPORTANT: Be aware that Historical Datalinks or Historical Animations that use Sample or
Interpolated data from Proficy Historian may display a Lookup or Format error status of “Unknown”,
when the local computer's time is ahead of the Proficy Historian Server's time. (The “Unknown”
Lookup or Format data symbols are defined in the User Preferences, on the Animations Data Error
Defaults tab.)
You can display data from any valid data source using your historical data link. In the Source field,
enter the data source you want. You can also select from the Expression Builder by clicking the
Browse button.
Depending on the historical mode that you choose from the Historical Mode list, you can configure the
start date and time as well as the duration. If you choose the Current Value historical mode, you can
only configure the update rate for the historical data link. For all other historical modes, to determine
the start date for the historical data link, you can choose either a fixed, specific date, or a certain
number of days before the current date. Similarly, for the start time, you can choose either a fixed,
specific time, or a certain number of hours before the current time.
If you want to specify the time zone you can do so in the Time Zone area. To set the duration, or the
time range for the display, select the number of days, hours, minutes and seconds in the Duration area.
To set the rate at which the data is updated, set the update rate in the Update Rate area.
By default, the historical datalink displays with a timestamp. The timestamp is in the regional date and
time format configured for your system. If you do not want to display the timestamp with the data in
any of your historical datalinks, in the User Preferences dialog box, on the Shape Preferences tab, in
the Historical Datalink area, clear the Show Timestamp With Data check box. Changes made on the
User Preferences dialog box only apply to new Historical Datalinks and do not effect existing
historical datalinks. If you only want to hide the timestamp for the particular historical datalink you are
configuring, clear the Show Timestamp With Data check box on the Historical Datalink dialog box for
103
Creating Pictures
that historical datalink. Or, from the Property Window, for the Show Timestamp property, select False.
This change applies only to the selected historical datalink and is not subject to changes on the User
Preferences dialog box.
The historical datalink can be animated. To animate the historical datalink, from the right-mouse
menu, select Animations. Complete your animation configuration selections on the Basic Animations
dialog box.
To add an Alarm Summary object to your picture, click the Alarm Summary button on the Shapes
toolbar (Classic view) or on the Insert tab, in the Objects/Links group, in the Objects/Links list, click
Alarm Summary (Ribbon View). If the Toolbox is enabled, click the button on the Toolbox.
The Alarm Summary object appears as a spreadsheet that you can modify in both the configuration and
run-time environments. For example, you can resize the object using the object's handles, resize the
columns in the spreadsheet, or select rows in the spreadsheet in both environments. Additionally, you
can perform many functions using the object's pop-up menu.
Before you add an Alarm Summary object to a picture, verify that specific alarming services and
networking options are enabled. Refer to the Understanding the Alarm Summary Object section in the
Implementing Alarms and Messages manual for more information on using the Alarm Summary
object.
NOTE: Inserting an alarm summary into a VBA form may cause unpredictable results when opening
the picture or switching environments from run-time to configuration or vice versa.
• In Classic view, click the Push Button button on the Shapes toolbar.
-Or-
In Ribbon view, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click Push Button.
-Or-
104
Creating Pictures
If you have the Toolbox enabled, click the button on the Toolbox.
• Boolean
• Byte
• Short
• Long
• Float
• Double
• String
In Classic view, to create a Variable object, click the Variable object button on the Shapes toolbar. In
Ribbon view, from the Insert tab, in the Objects/Links group, in the Objects/Links list, click Variable.
If the Toolbox is enabled, click the button on the Toolbox. Next, complete the fields on the Create a
Variable Object dialog box. To name a variable object, enter the name in the Variable Name field. The
name must be consistent with VBA conventions. For more information on the various fields, click the
Help button.
You have three choices on the Insert dialog box for inserting an OLE object: Create New, Create from
File, and Create Control.
The Create New option button allows you to select from a list of objects registered on the local node.
To add a specific object, double-click it from the Object Type list box. For more information on adding
controls, refer to the Create a Control for an OLE Object section that follows.
The Create from File option button lets you insert the contents of a file into a new object in your
picture. You can either select a file from the File field or click the Browse button to select a file from
any available directory.
The Create Control option button allows you to add an ActiveX Control (OCX) to a new object in your
picture. Click Add Control to display a browse dialog where you can select an OCX installed on the
105
Creating Pictures
local node. When you select the file, a new object is inserted into your picture with the specified
control. When you switch to the run-time environment, you activate the object with the control you
selected.
If the "Application Data Control" appears in the list of OLE objects you can insert into a picture, be
aware that you cannot use this control in a picture. This control is actually a control panel applet and is
not insertable. Do not use this control.
When adding third-party controls to a iFIX picture, some controls may display a message similar to the
following:
The reason you get this message is because you are adding a control that you do not have the license
for. We recommend that you delete the control from your picture or install the license for this control
and re-insert the control.
To animate the String property of an OLE Control, you must ensure that the data source is of a string
type by doing one of the following:
To add a Microsoft list box to an iFIX picture in configure mode, use the OLE Object named
Microsoft Forms 2.0 ListBox. The steps below describe how to do this.
1. In Classic view, from the iFIX WorkSpace, on the Insert menu, click OLE Object.
-Or-
In Ribbon View, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click OLE Object.
2. In the Object Type list, select the Microsoft Forms 2.0 ListBox.
3. Click OK.
To add a Microsoft combo box to an iFIX picture in configure mode, use the OLE Object named
Microsoft Forms 2.0 ComboBox. The steps below describe how to do this.
1. In Classic view, from the iFIX WorkSpace, on the Insert menu, click OLE Object.
106
Creating Pictures
-Or-
In Ribbon View, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click OLE Object.
2. In the Object Type list, select the Microsoft Forms 2.0 ComboBox.
3. Click OK.
IMPORTANT:
• In run mode, iFIX only supports one open picture with a single Proficy Portal control in it. If
you have multiple instances of the same picture open and each instance includes a Portal
Control, only the active picture updates the Portal Control.
• In run mode, you must be logged in as a Windows Administrator if you want to save an image,
by right-clicking the picture and selecting Save as Image.
• For best performance in Windows Vista, it is recommended that when you insert a Proficy
Portal control into your iFIX picture, that you do not insert any other ActiveX controls into
the same picture.
When using the Proficy Portal control in iFIX, you should configure your Proficy Portal users with
limited rights, because the control uses the PASSWORD parameter to build the URL to the Proficy
Real-Time Information Portal display. When using the PASSWORD parameter in Proficy Portal, the
URL can be viewed in the Internet Explorer history with a clear text password. For information on the
PASSWORD parameter, search for "PASSWORD Parameter" in the Proficy Real-Time Information
Portal online help. For information on creating users and limiting rights, search for the "Defining Roles
and Users" and "Securing Proficy Portal" topics in the Proficy Portal online help.
1. In Classic view, from the iFIX WorkSpace, on the Insert menu, click OLE Object.
-Or-
In Ribbon View, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click OLE Object.
2. In the Object Type list, select ProficyPortalControl Control.
3. Click OK. The Proficy Real-Time Information Portal control appears in the picture.
4. Double-click the control to configure the properties.
5. In the Server Name field, enter the name or IP address of the Proficy Portal server to which
you want to connect.
6. In the Virtual Directory field, enter the virtual directory of the Proficy Portal server. By
107
Creating Pictures
7. In the User Name, enter the Proficy Portal user name. Include the domain name with the user
name, if one is required on the Proficy Portal Server.
If a domain name is required, in the User Name field, enter:
domain\user
where domain is the name of the domain and user is the name of the user.
8. In the Password field, enter the password.
NOTES:
• If you enter the User Name and Password, you will not be prompted to enter the user
and password again when you switch to configure mode.
• The Show Displays button is not available until after you enter a Server Name, Virtual
Directory, and User Name.
To insert a Plant Applications Dynamo into a picture, first, locate the Dynamo Sets folder, which is in
the iFIX WorkSpace, under the System Tree. Expand the Dynamo Sets folder to display the Dynamo
sets. The Plant Applications Dynamos are in the Dynamos folder. Double-click on the
PlantApplications Dynamo set. The PlantApplications.fds file displays. From the file, drag and drop
the desired Dynamo into your picture. Then, complete the Dynamo configuration as prompted.
Refer to the following table to determine where you can find more information about the Plant
Applications Dynamos.
Plant Applications Dynamo For more information, in the Plant Applications ebook,
refer to the chapter:
108
Creating Pictures
Plant Applications Dynamo For more information, in the Plant Applications ebook,
refer to the chapter:
109
Creating Pictures
• Editing objects
• Renaming objects
• Changing Object Names in Scripts
<Alt> and <arrow key> Move from one object handle to another around an object.
<Shift> and any of the Accelerate the operation. For example: <Shift> plus <Ctrl> and an
above arrow key quickly reshapes an object.
Selecting Objects
You can select an object by clicking it with the mouse. Objects can be selected in the picture itself or
in the system tree. The selected object remains selected until you click another object. When you select
an object, the object's handles appear, permitting you to change the object's size. For more information
on object handles, refer to the Using Basic Drawing Tools section.
You can select multiple objects by enclosing two or more objects in a rectangle selector, or by
selecting the first object and then control-clicking additional objects. The following figure shows both
methods.
110
Creating Pictures
Moving Objects
You can move any object in a picture by clicking and dragging it to its new location. To move an
object quickly, hold down the Shift key and click and drag the object.
Nudging
Sometimes you need to move an object more precisely to better control its placement in the picture.
iFIX lets you move an object in small increments using the arrow keys. This concept is called nudging.
To nudge an object, select it and press an arrow key. The object moves one pixel in the direction
indicated by the arrow key. By repeatedly pressing the arrow keys, you can slowly move the object to
any desired location. To accelerate the movements, press Shift and an arrow key simultaneously.
111
Creating Pictures
Editing Objects
Naturally, you will occasionally make errors when you draw your pictures. Or, conversely, you may
create something that you want to apply everywhere in your picture In either case, iFIX's editing
functionality lets you quickly update how objects look in your picture.
From the Home tab, in the Editing group, Undo an actions performed on
click Undo. an object.
By default, the buttons in the above table appear in the Toolbox when you create or open a picture. If
you have the Toolbox enabled, simply click the button on the Toolbox that corresponds to the editing
function you want. These functions, as well as the other available editing functions, are detailed in the
following sections.
Cutting Objects
When you cut an object, you remove the object from the picture and place it into the Clipboard. Once
an object is in the Clipboard, it can be retrieved by pasting it back into the picture.
To cut an object, in Classic view, click the Cut button on the Edit toolbar. In Ribbon view, on the
Home tab, in the Clipboard group, click Cut. If the Toolbox is enabled, click the button on the
Toolbox.
Deleting Objects
Unlike cutting an object, deleting an object permanently removes it from the picture, unless you undo
the operation. To delete an object, select the object and press Delete. Or, select Delete from the object's
pop-up menu.
iFIX lets you copy objects in two ways: by placing a duplicate copy of the object into the clipboard for
pasting into your picture, or by duplicating the object. To copy an object, use one of the following
methods:
112
Creating Pictures
Duplicating an object is the easier method of copying and pasting, as it combines the copy-and-paste
action into one step by avoiding copying the object to the clipboard. To duplicate an object, select the
object you want to copy and select:
A second object with identical properties of the original appears slightly offset from the original. In the
following figure, the oval to the lower right is a duplicate of the original.
Duplicating an Object
You can copy any iFIX object using the copy or duplicate methods, including bitmaps and OCXs.
Undoing Actions
iFIX has a number of actions that cannot be undone. If a particular task cannot be undone, the Undo
command in the Edit menu is unavailable after you complete the action. For example, if you try to
undo moving a chart, the command is unavailable. Typically, actions involving Standard Charts and
Historical Data Links cannot be undone.
Renaming Objects
When you add an object to your picture, iFIX automatically names the object in the system tree and
numbers it in the order it was created. For example, the second rectangle added to your picture would
be titled Rect2 in the Pictures directory. To more easily recognize your objects, or to assign a specific
name that represents a common property in your process, you can give it an alternate name.
113
Creating Pictures
To rename an object, right-click the object name in the system tree and select Property Window from
the pop-up menu. Place the cursor in the second column of the Name row and enter a name. You can
also select Animations from the pop-up menu and rename the object from the Animations dialog box.
IMPORTANT: When you rename an object, avoid the use of underscores in the name. Underscores
my cause problems with scripts associated with the object. For more information, refer to the VBA
Naming Conventions section of the Writing Scripts manual.
By default, if you change the name of an object that has script associated with it, iFIX automatically
renames the event name and the references to the object within the script for that object. Therefore, you
do not have to explicitly do anything in your scripts to make these objects work.
However, if you are indirectly referencing any object names in a script from another object (for
example, setting Rect1.HorizontalPositional from the click event on Oval1), this reference is not
renamed.
1. In the WorkSpace, perform a Find and Replace to rename all objects. We do not recommend
that you use the Include Scripts option in the Find and Replace feature from the Workspace to
perform this function. Doing so will replace objects that we are automatically renaming.
2. In the Visual Basic Editor, perform a Find and Replace to change any specific object
references.
NOTE: Renaming objects in the Property Window can greatly affect how your scripts run using VBA.
For more information, refer to the Writing Scripts manual.
114
Creating Pictures
Many of the advanced functions described in this section can be performed using the Tools toolbar.
The following table shows you which functions are available and how they are used.
NOTE: Although hidden by default, you can access and use toolbars in Ribbon view. To access the
Tools toolbar in Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and then click
Toolbars. You can also open a toolbar from the WorkSpace tree, by opening the Project Toolbar Files
folder and double-clicking the toolbar you want to open.
From the Format tab, in the Arrange group, click Align objects to the left
Align, and then click Align Left. edge.
From the Format tab, in the Arrange group, click Align objects to each
Align, and then click Align Horizontal Center. other's horizontal center.
From the Format tab, in the Arrange group, click Align objects to the right
Align, and then click Align Right. edge.
From the Format tab, in the Arrange group, click Align objects to the top
Align, and then click Align Top. edge.
115
Creating Pictures
From the Format tab, in the Arrange group, click Align objects to each
Align, and then click Align Vertical Center. other's vertical center.
From the Format tab, in the Arrange group, click Align objects to the
Align, and then click Align Bottom. bottom edge.
From the Format tab in the Arrange group, click Group objects.
Group Objects.
From the Format tab in the Arrange group, click Ungroup objects.
Ungroup Objects.
From the Format tab in the Arrange group, click Bring an object in front of
Bring to Front. another.
From the Format tab in the Arrange group, click Send an object to the back
Send to Back. of another.
From the Format tab, in the Arrange group, click Vertically space objects
Space Evenly, and then click Space Evenly evenly.
Vertical.
From the Format tab, in the Arrange group, click Horizontally space objects
Space Evenly, and then click Space Evenly evenly.
Horizontal.
From the Format tab, in the Styles group, click Apply color to an object
Color. or objects.
From the Format tab, in the Font group, click Apply a font to a text
Font. object or objects.
From the Format tab, in the Arrange group, click Turn picture grid on and
Grid, and then click Toggle Grid. off.
From the Format tab, in the Picture group, click Select layers for objects.
Layers, and then click Set Layer.
From the Format tab, in the Picture group, click Display layers for
Layers, and then click Display Layer. selected objects.
116
Creating Pictures
By default, all of the buttons in the above table appear in the Toolbox. If you have the Toolbox
enabled, click the button on the Toolbox.
The iFIX configuration environment provides a CAD (computer assisted drawing) toolbar with
functions for manipulating line and polyline objects. The following table shows you which functions
are available and how they are used.
From the Format tab, in the Picture Extend a selected line to intersect
group, click Drawing Tools, and with another selected line. Refer to
then click Extend Lines. Extending Lines for more
information.
From the Format tab, in the Picture Trim the selected lines to the
group, click Drawing Tools, and intersection point. Refer to
then click Trim Lines. Trimming Lines for more
information.
From the Format tab, in the Picture Convert the selected lines to a
group, click Drawing Tools, and polyline object. Refer to Converting
then click Convert Lines to Polyline. Lines to Polyline for more
information.
From the Format tab, in the Picture Change the selected line(s) to
group, click Drawing Tools, and horizontal. Refer to Making Lines
then click Make Lines Horizontal. Horizontal or Vertical for more
information.
From the Format tab, in the Picture Change the selected line(s) to
group, click Drawing Tools, and vertical. Refer to Making Lines
then click Make Lines Vertical. Horizontal or Vertical for more
information.
From the Format tab, in the Picture Convert the selected line(s) or
group, click Drawing Tools, and polyline(s) to a pipe object. Refer to
then click Convert Line/Polyline to Converting Lines and Polylines to
Pipe. Pipe for more information.
117
Creating Pictures
From the Format tab, in the Styles Open the Modify Pipe
group, click Pipe Styles, and then Characteristics dialog box for the
click Modify Pipe Characteristics. selected pipes. Refer to Modifying
Pipe Characteristics for more
information.
From the Format tab, in the Picture Add a connection point to anchor
group, click Drawing Tools, and the selected connector to a shape.
then click Add Connection Point. Refer to Adding and Deleting
Connection Points for more
information.
From the Format tab, in the Picture Delete a connection point anchor
group, click Drawing Tools, and from the selected connector. Refer
then click Delete Connection Point. to Adding and Deleting Connection
Points for more information.
From the Format tab, in the Insert Draw a connecting line between two
group, click Connectors, and then shapes. Refer to Using the
click Line Connector. Connector Tools for more
information.
From the Format tab, in the Insert Draw a right angle connecting line
group, click Connectors, and then between two shapes. Refer to Using
click Right Angle Line Connector. the Connector Tools for more
information.
From the Format tab, in the Insert Draw a connecting pipe between
group, click Connectors, and then two shapes. Refer to Using the
click Pipe Connector. Connector Tools for more
information.
The iFIX configuration environment provides a translation toolbar with functions for exporting and
importing language files. The following table shows you which functions are available and how they
are used.
118
Creating Pictures
NOTE: Translation functions are not available from the Ribbon in Ribbon view. To access these
functions, you must display the Translation Toolbar. To access this toolbar in Ribbon view, on the
Home tab, in the WorkSpace group, click Settings, and then click Toolbars. You can also open a
toolbar from the WorkSpace tree, by opening the Project Toolbar Files folder and double-clicking the
toolbar you want to open.
Resizing Objects
Objects other than lines, arcs, chords, and pies are automatically added with resize handles, and the
default operation available through their pop-up menu is Resize. Any object can be resized, including
those with points. However, for lines, arcs, chords, and pies, you must select Resize from the pop-up
menu; it is not selected automatically. When you resize an object, the object changes shape uniformly,
without changing its shape.
NOTE: Ovals, rounded rectangles, charts, and bitmaps do not have the Resize option in the pop-up
menu, but do have resize handles, allowing you to resize these objects.
To resize an object, simply select the object and click and drag one of its handles.
Rotating Objects
Objects naturally rotate around a center of rotation, designated by a dot enclosed with a circle. When
you select Rotate from an object's pop-up menu, the object displays its center of rotation, and rotation
handles showing the direction you can rotate the object. See the following figure.
119
Creating Pictures
Rotation Handles
To rotate an object around its center of rotation, click and drag one of the object's rotation handles.
You can also rotate an object using the Rotate Expert, which allows you to specify minimum and
maximum angles of rotation. To use the Expert, click the Rotate Expert from the Expert toolbar
(Classic view) or on the Tools tab, in the Animations group, click Rotate (Ribbon view) or the
Toolbox, if enabled. For help on the fields of the Expert, click the Help button.
iFIX also lets you rotate objects based on a selected center of rotation. To change the center of rotation,
click and drag the default center of rotation to the desired location in the picture. When you place the
cursor over the center of rotation, the cursor becomes a crosshair. Now when you click and drag one of
the object's handles, the object rotates around the new center of rotation. This is illustrated in the
following figure.
To relocate the object's default center of rotation, click the current center of rotation. The cursor
becomes a crosshair, and another crosshair appears at the object's center. Move the center of rotation
over the crosshair inside the object.
120
Creating Pictures
You can rotate any object except ovals, rounded rectangles, and charts.
NOTE: You can resize or rotate an object by animating it. For more information on animating an
object, refer to the Animating Object Properties chapter.
Reshaping Objects
When you create an object that consists of points, the object is added to your picture with reshape
handles, and the default operation available through the pop-up menu is Reshape. The following figure
illustrates an object with reshape handles. For polygons and polylines, objects are added with resize
handles, because you do not need reshape handles in order to reshape these objects. You can move the
points in the object to reshape the object at 15-degree increments.
Reshape Cursors
121
Creating Pictures
For lines, arcs, chords, and pies, you can reshape the object by clicking and dragging a reshape cursor
on the object.
To reshape polygons and polylines, you add points to or delete points from the shape. When you add a
point, the cursor changes to a circle with a plus sign inside. If the cursor is black, you can add a point
to the polygon or polyline. If the cursor is white, you cannot, because the cursor is not close enough to
the object's edge. Move the cursor closer until it turns black or becomes partially black, as the
following figure shows.
Adding and deleting points can be performed using a circular cursor. A plus sign inside the circle
indicates that you are adding a point; a minus sign in the circle indicates that you are deleting a point.
Adding a Point
After you add a point, all the points in the object are displayed as small plus signs. You can click any
of these plus signs and drag the mouse to adjust the size or position of the point it represents. This, in
turn, changes the overall shape of the object.
Deleting a point is similar to adding a point, except the cursor changes to a circle with a minus sign
inside. A black cursor means you can delete a point; a white cursor means you cannot. When the cursor
is white, move it over the point you want to delete until it turns black. You can then delete that point.
See the following figure.
122
Creating Pictures
Deleting a Point
• Fade color
• Foreground color
• Background color
• Background style
• Edge color
• Edge style
• Edge width
• Fill style
123
Creating Pictures
The following table shows the color and style properties that can be changed for each object that you
can add to a picture.
Current * * * * * * * *
Time
Current * * * * * * * *
Date
Rectangle * * * * * * * *
Rounded * * * * * * * *
Rectangle
124
Creating Pictures
Oval * * * * * * * *
Chord * * * * * * * *
Polygon * * * * * * * *
Pie * * * * * * * *
Pipe * * * * * * *
Arc * * *
Line * * *
Polyline * * *
Text * * * * * * *
Push
Button
OLE * * * * * * *
Object
Data * * * * * * * *
Link
Alarm
Summary
Variable
Object
Timer
Object
Event
Object
125
Creating Pictures
Charts * * * * *
Bitmaps * *
NOTE: If you apply an edge style other than solid, and then change the edge width to a value greater
than 1, the edge style will not appear as defined in the Properties Window. This is because Microsoft
Windows does not permit edge styles to be applied to edge widths greater than 1. Therefore, make sure
your edge widths are no greater than 1 for lines that are not solid.
To select or change object properties for a shape, select the shape and do one of the following:
To set a property using the object pop-up menu, right-click the object in the picture (or by clicking the
name in the system tree) and select the property from the pop-up menu. For more information on the
pop-up menu and the options you have for each property, refer to the Using the Object Pop-up Menu
section.
Depending on the object you are working with, specific property options are also available under the
Object menu. To access these properties, select the object, and then select the appropriate property
from the Object menu. When you do not have an object selected, the Object menu is disabled.
The following table lists the properties that are available from the Shape Preferences tabbed page on
the User Preferences dialog box. This dialog box displays the default property value for new objects,
unless that value is changed by any of the means outlined in this section.
Shape Preferences
126
Creating Pictures
Edge Width Applies an edge width to lines in Any width, entered in pixels.
objects.
NOTE: Edge widths do not
autoscale.
127
Creating Pictures
Shape Preferences
Hit Test Size With Click and Stick enabled, Any logical units.
determines the minimum distance the
cursor can be from a shape before the
shape can be selected (known as a hit
test).
Blend Percent Applies a percentage of blending Any number from 0 through 100.
between the foreground color and the
fade color.
128
Creating Pictures
For more information on selecting properties using the Properties Window, refer to the Controlling
Object Properties chapter. You can also dynamically change the color, fill, and edge styles of an object
by animating it. For more information on animations, refer to the Animating Object Properties chapter.
Aligning Objects
To help create and maintain attractive pictures, you can align objects to a grid or in relation to each
other. The following sections show you how to align objects in your pictures.
Each picture maintains an invisible grid that you can use to align objects precisely as you create them.
By enabling the Snap to Grid function, you can align objects with minimal effort, as objects stick (or
snap) to the nearest grid point. When this function is disabled, you can align objects visually by
displaying the grid and moving objects with the mouse, or by selecting the object you want to snap to a
grid point and in Classic View, selecting Snap Objects to Grid from the Format menu. In Ribbon view,
select the object, and on the Format tab in the Arrange group, in the Grid List, click Snap Objects to
Grid.
When you display the grid, an evenly-spaced array of dots appear in the background of the picture.
These dots represent the intersection of the grid lines, measured in pixels.
The Grid Settings dialog box lets you quickly set your options for using a grid. You can elect to show
the grid, enable the Snap to Grid function, and define the grid's spacing using this dialog box. In
Classic view, you can also select Snap to Grid from the Format menu, without using the Grid Settings
dialog box. In Ribbon view, you can enable the Snap to Grid function from the Format tab, in the
Arrange group, on the Grid list, by clicking Snap to Grid. If enabled, the Snap to Grid function works
whether or not you display the grid. To disable Snap to Grid, deselect the Snap to Grid check box on
the Grid Settings dialog box.
If enabled, the Snap to Grid function works whether or not you display the grid. To disable Snap to
Grid, deselect the Snap to Grid check box on the Grid Settings dialog box.
Default settings for Grid Enable and Snap to Grid can be entered in the Picture Preferences tabbed
page of the User Preferences dialog box.
NOTE: Snap to Grid does not work by nudging objects. You must use the mouse.
The following illustration shows an object moved with the grid displayed and Snap to Grid enabled.
The box to the lower left shows the outline of the object as it is being moved to that position. Notice
that the object sticks to the grid points.
129
Creating Pictures
IMPORTANT: You can also align two or more objects in relation to each other using the Align
buttons on the Tools toolbar or the Toolbox, if enabled. When using these buttons, you can vertically
align the top, bottom, or center of the objects and horizontally align the left, right, or center of the
objects, as the following figure shows. In Ribbon view, you can also align objects using options from
the Align list, in the Arrange group in the Format tab.
Original
Picture
130
Creating Pictures
Horizontal
Alignment
Vertical
Alignment
Another way you can align objects is to space them. In Classic view, you can space two or more
objects vertically or horizontally with the Space Evenly Vertical and Space Evenly Horizontal buttons
on the Tools toolbar. In Ribbon view, you may access these options on the Format tab, in the Arrange
group, in the Space list. Both methods create an equal amount of spacing between each object; the
difference is that vertical spacing creates rows, and horizontal spacing creates columns. Both types of
alignment are illustrated in the following figure.
131
Creating Pictures
Vertical Spacing
Horizontal Spacing
Another way to align objects in your picture is to position them. Positioning places the object where
you want it, based on either relative or absolute alignment and the horizontal or vertical axis. In Classic
view, you can position your objects using the Position Expert located on the Experts toolbar, or in
Ribbon view from the Tools tab, in the Animations group, click Animations. If the Toolbox is enabled,
click the button on the Toolbox. For help on the Expert fields, click the Help button on the Expert.
Alternately, you can scale an object. Scaling actually changes the dimensions of the object's height or
width, as you specify. To scale an object, use the Scale Expert located on the Experts toolbar or the
Toolbox, if enabled, or in Ribbon view from the Tools tab, in the Animations group, click Animations.
For help on the Expert fields, click the Help button on the Expert.
Flipping Objects
One simple way to change the way your objects appear in relation to each other is to flip them. When
you flip an object, the object reflects along its vertical or horizontal axis and reappears as a mirror
image of the original.
132
Creating Pictures
There are two ways to flip an object. You can flip an object simply by dragging a handle of an object
from one side to its opposite side. The drawback to this approach is that it also stretches the object. The
following figure shows a manually-flipped object that was accidentally reshaped.
A more effective way to flip an object is to use the Flip Horizontal and Flip Vertical method. This
method flips the object while maintaining its original size and shape. The following figure illustrates
this effect.
You can split a polyline or pipe into two or more objects. The following sections show you how it's
done.
133
Creating Pictures
Split Polyline
Figure 1 shows the selected polyline with reshape handles. In Figure 2, the arrow points to the
splitting cursor, which turns black when it is close to the polyline.
Figure 3 shows that the polylines still appear joined, however the reshape handles now surround only
the polyline on the left. Figure 4 shows the polylines separated. You can now move the individual
polylines around the picture or choose to delete one of them.
134
Creating Pictures
Split Pipe
Figure 1 shows the selected pipe with reshape handles. In Figure 2 the arrow points to the splitting
cursor, which changes to a contrasting color when the cursor is inside the pipe.
In Figure 3, the arrow points to the split you created in the original pipe object. Note that the reshape
handles now surround only the pipe on the left. Figure 4 shows the pipes separated. You can now move
the individual pipes around the picture or choose to delete one of them.
NOTE: When you split a polyline or pipe, you create a new object. Therefore, if you undo a polyline or
pipe split, the new object is deleted first and you must perform a second undo action to revert to the
original object.
135
Creating Pictures
Joining two or more lines can be tedious and time-consuming if it is done manually and
if there are many lines in your picture that need to be joined. Using the Extend Lines
button on the CAD Toolbar (Classic view) or Extend Lines, in the Drawing Tools list, in
the Picture group, on the Format tab (Ribbon view), you can easily extend single or
multiple lines to an intersection point.
on-line off-line
Each intersection of lines can involve only two lines whether the intersection point is on-line or off-
line. If you select more than two lines, then more than one intersection point is involved and a separate
operation for each intersection is required. For more information about intersecting multiple lines to
multiple intersection points, see Intersecting Lines to Multiple Intersection Points.
The following diagrams show an example of extending and intersecting a single line (line 1) with the
intersection point located on another line (line 2). This is an example of an on-line intersection point.
136
Creating Pictures
The following diagrams show examples of extending and intersecting two lines (lines 1 and 2) with an
intersection point that is not located on either source line (off-line). When the intersection point of two
lines is found at a point off the two source lines, both lines are extended to the intersection point.
IMPORTANT: Lines may appear to be perfectly vertical or horizontal, but if they are even slightly off,
they will extend well beyond the boundaries of your computer screen. In the following diagram, the
"horizontal" lines were extended to the intersection points on the vertical line, but also extend to the
right, past the edge of the viewing area on the computer screen.
For this reason, it is best to use the Make lines horizontal and/or Make lines vertical buttons on the
CAD Toolbar (Classic View) or from the Format tab, in the Picture group, in the Drawing Tools list
(Ribbon view) before extending lines to the intersection points. For more information, see Making
Lines Horizontal or Vertical.
137
Creating Pictures
In cases where there is more than one potential intersection point, the closest intersection point is
always used. However, an on-line intersection point always takes precedence over an off-line
intersection point, regardless of it's proximity to the intersecting lines, and the number of lines and
intersection points. The following diagrams show examples of these rules.
In the first example, the blue circle indicates the closest of the two intersection points, and because
there is no on-line intersection point, only lines 2 and 3 are extended to the closest intersection point.
Line 1 does not intersect with line 3.
In this example, the blue circle indicates the on-line intersection point, and because on-line intersection
points take precedence over off-line intersection points, line 3 is extended to the on-line point on line
1. Line 2 does not intersect with line 3.
In the following example, lines 1 and 5 connect with the off-line intersection point (in the upper left
corner), because there is no on-line point to take precedence. Line 4 goes through the off-line
intersection points to connect with the on-line point on line 1 and lines 2 and 3 go through the off-line
138
Creating Pictures
In the next example, lines 1 and 6 connect with the off-line intersection point (in the upper left corner),
because there is no on-line point to take precedence. Lines 2, 4, and 5 go through the off-line points to
the on-line points on lines 6 and 1. Line 3 connects only with the first on-line intersection point on line
5.
The final example below, shows line 5 going through the off-line intersection points (red circles) to the
on-line intersection point in the top left corner on line 1. Lines 3 and 4 intersect at the off-line point on
the right because there is no on-line intersection point to take precedence. If you click the Extend Lines
button again, lines 2 and 3 are extended to line 5 where on-line intersection points exist.
139
Creating Pictures
After you have intersected lines in your picture, you can trim the intersected lines to
remove unnecessary portions. Trimming lines can be tedious and time-consuming if it is
done manually and if there are many lines in your picture that need to be trimmed. Using
the Trim Lines button on the CAD Toolbar (Classic view) or Trim Lines in the Drawing
Tools list, in the Picture list, in the Picture group, on the Format tab (Ribbon view), you
can easily trim single or multiple lines. The following diagrams show examples of
trimmed intersected lines.
NOTE: Regardless of the trim option set in the User Preferences dialog box, the shortest portion of the
line from the intersection point will always be trimmed first.
140
Creating Pictures
The following diagrams show an example of creating a single polyline from individual lines.
The lines are drawn, as in Figure 1, and then all are selected. When you click the Convert Lines to
Polyline button, it extends the lines (as shown in Figure 2), and then it trims the lines (as shown in
Figure 3). For more information, refer to Extending Lines to Intersect and Trimming Lines at the
Intersection.
Figure 4 shows the points of the polyline. The points of a polyline are determined when two lines are
connected and have the same intersection point at the start or end point.
The following diagrams show an example of creating multiple polylines from individual lines.
141
Creating Pictures
As with converting lines to a single polyline, the selected lines are first extended to the intersection
points and then trimmed. In this example, two polylines have been created.
Figure 4 shows the points of each polyline; that is, points 1-1 through 1-6 are the points of Polyline 1
and points 2-1 through 2-3 are the points of Polyline 2. The points of a polyline are determined when
two lines are connected and have the same intersection point at the start or end point.
142
Creating Pictures
Creating pipe objects from lines and polylines is simplified using the Convert Lines and
Polylines to Pipe button on the CAD toolbar (Classic View) or Convert Lines and
Polylines to Pipe, in the Drawing Tools list, in the Picture group, on the Format tab
(Ribbon view). Create the required lines and polylines, or select existing lines and
polylines, then convert them to pipes.
The new pipe object inherits the property values, animation settings, and VBA scripts from the original
line/polyline object. The pipe-specific properties have the default values configured in the User
Preferences dialog box. You can change the pipe-specific properties using the Modify Pipe
Characteristics dialog box.
143
Creating Pictures
The following diagrams show examples of converting lines and polylines to pipes.
You can modify the characteristics of pipe objects by using either the Modify Pipe
Characteristics dialog box, or the Select Color dialog box when you choose Fade from
the Color pop-up menu. The same pipe properties are available on both dialog boxes.
To access the Modify Pipe Characteristics dialog box, use one of the following methods:
144
Creating Pictures
To access the Select Color dialog box, right-click a pipe object, point to Color and choose Fade.
Whichever dialog box you choose to access, you can define the same characteristics for your pipe
objects.
NOTE: If you select multiple pipe objects, you cannot access these dialog boxes with the right-click
pop-up menu. You can, however, use the Modify Pipe button on the CAD Toolbar (Classic view) or
Modify Pipe Characteristics in the Pipe Styles list, in the Styles group on the Format tab (Ribbon view)
to change characteristics of multiple pipe objects, as shown in the following illustration.
In these dialog boxes you can change the appearance of the selected pipes, including the foreground
and fade colors, blend percentage, edge and fill styles, thickness and edge width, the appearance of the
start and end caps, and elbow style. If you select more than one pipe, the changes are applied to all
pipes. Note that if you select Gradient as the fill style, the only fade type available for pipe objects is
reflected.
The following diagrams show different combinations of cap and elbow styles.
NOTE: Elbow styles must be either all round or all square; you cannot mix elbow styles on a single
pipe object.
145
Creating Pictures
Horizontal diagonal start cap, Vertical diagonal end cap, and round elbows
146
Creating Pictures
If the Always Show Connection Nodes check box on the User Preferences dialog box is selected, the
default connection points and points that you add to shapes are always visible. If this check box is
cleared, the connection points are not visible, but can be displayed using one of the following methods:
• Select a connector and move it towards the shape to anchor it to a certain connection point on
the shape.
- Or -
• Select the shape and click either the Add Connection Point button or Delete Connection Point
button on the CAD Toolbar.
You can add new connection points to a shape or use the default connection points to anchor a
connector. For more information about anchoring, refer to Using the Connector Tools.
In Figure 1, the red arrow points to the Add Connection Point cursor that appears when you are
adding a connection point. The black arrow in Figure 2 points to the new connection point.
NOTE: The shape you are adding a connection point to must be selected. Reshape handles appear
around the shape when it is selected.
Most shapes are provided with default connection points and allow you to add custom connection
points. The following table lists the different shapes, the number of default connection points and the
number of custom connection points that can be added.
Default Custom
Object Connection Connection
Points Points
147
Creating Pictures
0
Pipes, Lines, Polylines 0
3
Arcs 0
3
Pies, Chords 13
8
Text, Datalink 8
8
Rectangles, Round Rectangles, Ovals, 8
Polygons
2
Line Connector, Right Angle Line Connector, 0
Pipe Connector
NOTE: Pipes, lines, and polylines display connection nodes only at their end points and only when a
connector object attempts to connect or is connected to the object. At no other time are connection
nodes visible for these objects, regardless of whether the Always Show Connection Nodes check box is
selected.
You can delete connection points that you add to a shape but you cannot delete default connection
points. The following diagrams show you how to delete a connection point.
148
Creating Pictures
In Figure 1, the black arrow points to the custom connection point you added. The red arrow in Figure
2 points to the Delete Connection Point cursor that appears when you move the cursor over a
custom connection point. The gold arrow in Figure 3 points to the cursor that appears when you
move the cursor over a default connection point, to indicate that the connection point cannot be
deleted.
NOTE: The shape you are deleting a connection point from must be selected. Reshape handles appear
around the shape when it is selected.
Connectors are used to connect two shape objects together. This is helpful
when you want to move your shapes around the picture but keep them
connected. If only one of the connector's ends is anchored to a shape object,
whenever that shape is moved, the connector object follows it. If both ends of
the connector are anchored to two shapes, it will stretch or shrink itself when
one of the shapes is moved or resized.
Line Connector
The Line Connector tool allows you to draw a straight line to connect two shapes, as illustrated in the
following figure.
149
Creating Pictures
The Right Angle Line Connector tool allows you to draw a right angle line to connect two shapes, as
illustrated in the following figure.
Pipe Connector
The Pipe Connector tool allows you to draw a pipe connector between two shapes, as illustrated in the
following figure.
150
Creating Pictures
Moving Connectors
You can move your connector to any position simply by selecting it and dragging it to a spot anywhere
in the picture. However, there will be times when you want to be more precise about positioning the
connector. There are a number of ways you can do this:
Using the SHIFT or CTRL keys, or a combination of both, while moving, scaling, or rotating your
connectors provides you with an extra level of precision when performing these actions. You can
change that level of precision by changing the settings for these actions by increasing or decreasing the
number of pixels or degrees your connector moves, scales, or rotates. For more information about
changing these settings, see the Changing the Nudge Settings section in Changing Picture Settings in
the FixUserPreferences.ini file.
When you click and drag a connector handle, only the selected end of the connector moves as you drag
it, and the connector itself is stretched or shrunk, depending on how you move the connector. When
you release the mouse button, the connector handle is placed at that position. However, if you place the
connector handle near a connection point on an object, the connector handle snaps to that connection
point. This is very useful when anchoring a connector. For more information about anchoring, see
Anchoring Connectors.
151
Creating Pictures
When you press the CTRL key and click and drag a connector handle the connector is moved, stretched,
or shrunk similar to clicking and dragging; however, when you hold down the CTRL key and drag the
connector in an arc formation, the connector only moves in 15 degree increments. That is, as you drag
the connector handle through a 90 degree arc, there are only six positions it can be dropped on. As you
drag it through 180 degrees, there are 12 positions it can be dropped on, and so forth.
If you drop the connector handle near a connection point on an object when you are holding down the
CTRL key, it will not snap to the connection point; it will simply drop at the indicated position. If you
want the connector handle to snap to a connection point, you must click and drag it without using the
CTRL key.
Use the arrow keys to move the connector horizontally and vertically in the picture. The number of
pixels the connector moves each time you press an arrow key depends on the SlowNudgeMoveOffset
setting in the FixUserPreferences.ini file.
When you press the SHIFT key and one of the arrow keys, the connector moves horizontally or
vertically, depending on the arrow key used. The number of pixels the connector moves is defined in
the FastNudgeMoveOffset setting in the FixUserPreferences.ini file.
When you press the CTRL key and the up or down arrow keys, the connector moves or scales vertically,
depending on the position of the connector and the arrow key used. If you press the left or right arrow
key while pressing the CTRL key, the connector moves or scales horizontally. For example, if you draw
a horizontal connector, it will move vertically when you use the up or down arrow key with the CTRL
key, and will scale horizontally when you use the left or right arrow key with the CTRL key. If you
draw a vertical connector, it will scale vertically when you use the up or down arrow key with the CTRL
key, and will move horizontally when you use the left or right arrow key with the CTRL key.
When scaling the connector, only the end moves. For example, if you draw a pipe connector from left
to right, the right side of the connector (the end) stretches or shrinks when you use the CTRL key and
left or right arrow key. If you rotate the connector 180 degrees, the left side becomes the end and the
connector will be scaled from that side. The number of pixels the connector moves or is scaled when
you use the CTRL key with the arrow keys depends on the SlowNudgeMoveOffset and
SlowNudgeScaleOffset settings in the FixUserPreferences.ini file.
When you press SHIFT + CTRL and one of the arrow keys, the connector moves or scales horizontally or
vertically, depending on the position of the connector and the arrow key used. For example, if you
draw a horizontal connector, it will move vertically when you use the up or down arrow key with the
SHIFT + CTRL keys, and will scale horizontally when you use the left or right arrow key with the SHIFT
+ CTRL keys. If you draw a vertical connector, it will scale vertically when you use the up or down
arrow key with the SHIFT + CTRL keys, and will move horizontally when you use the left or right arrow
key with the SHIFT + CTRL keys. The number of pixels the connector moves or scales when you use the
SHIFT + CTRL keys with the arrow keys depends on the FastNudgeMoveOffset and
FastNudgeScaleOffset settings in the FixUserPreferences.ini file.
152
Creating Pictures
The + or - keys
Use the + or - keys to rotate your connector. When you right-click the object and choose Rotate, four
rotate handles appear around the object. Use the + key on the number keypad to rotate the connector in
a counter clockwise direction; use the - key on the number keypad to rotate the connector in a
clockwise direction. The number of degrees the connector rotates each time you press the + or - key
depends on the SlowNudgeRotateOffset setting in the FixUserPreferences.ini file.
When you press the SHIFT key and either the + or - key, the connector rotates either counter clockwise
or clockwise, depending on the key used. The number of degrees the connector moves is defined in the
FastNudgeRotateOffset setting in the FixUserPreferences.ini file.
Anchoring Connectors
You must add connection points to shapes or use the default connection points to anchor the connector.
Anchoring a connector allows you to move the shapes around the picture until you are satisfied with
their locations, while keeping them connected. The connector stretches and reshapes itself as you move
or resize the shapes.
In Figure 1, the green arrow points to the line connector and the black arrows point to connection
points you added. For information about adding connection points, refer to Adding and Deleting
Connection Points.
Figure 2 shows the anchored connector. When you select the connector and move the cursor over the
handles, the cursor becomes a crosshair. Click and drag each connector handle to a connection point.
The handles change to red and black when the connector is anchored.
153
Creating Pictures
All shapes have a bounding box that defines the outside boundary of the shape. The bounding box is
visible when a shape is selected and dragged. The following picture shows the bounding box of a pipe
connector that is being moved. Only the bounding box moves while you're dragging the connector.
When you let go of the mouse button, the shape then moves and the bounding box disappears.
As you add shapes to your picture, the shape that was drawn last is always placed "on top." This means
that the bounding box of the newest shape may overlap an existing shape. When you are adding pipe
and line connector shapes to your picture, this overlap can prevent you from selecting the previously
drawn shape.
For example, you have anchored both a pipe connector and a line (or right angle line) connector to two
shapes, and the bounding box of the pipe connector is on top because you drew it last. As the following
picture shows, the line connector is positioned within the pipe connector's bounding box; therefore,
you cannot select it.
You must either move the pipe connector so that its bounding box no longer overlaps the line
connector or right-click the pipe connector and choose Send to Back. This allows you to select and
154
Creating Pictures
move the line connector and anchor it to the desired connection points.
NOTE: To allow shapes to be selectable at all times, regardless of the location of a shape's bounding
box, clear the Always Show Connection Nodes check box on the Drawing Options tab of the User
Preferences dialog box.
• Stacking
• Bringing to Front and Sending to Back
• Layering and Visibility
• Grouping and ungrouping
Stacking
Stacking allows you to place one object on top of another so that it forms a more complex, multi-
dimensional figure.
It is an effective method for taking simple, existing objects and forming more intuitive ones. For
example, by stacking two ovals and two rectangles, you can create a picture that resembles a pump, as
depicted in the following figure.
To form more precise connections, such as the two rectangles meeting flush with the edge of the
outside circle in the figure above, try nudging the object exactly where you want it. For more
information on moving objects and nudging, refer to the Moving Objects section.
You can stack as many objects as you want. The object on top does not have to cover the other object
completely and does not alter its properties.
155
Creating Pictures
You can move multiple objects in a stack so that they keep their relative position to each other, as the
following figure shows.
When you create multiple objects in a picture, you can easily resize one or more of the objects to
match the size of another resized object. For example, lets say you add an oval to your picture. Next,
you add a rectangle, and then you manually resize the rectangle. You can make the oval the same size
as the rectangle by selecting both objects and using the Make Same Size function. By default, Make
Same Size resizes the objects in the picture according to the most recently modified object's
dimensions. If you want to resize objects using the dimensions of any other object, you must select that
object and resize it first.
You can establish layering using the Set Layer and Display Layers buttons on the Tools toolbar
(Classic view) or from the Format tab in the Picture group, in the Layers list (Ribbon view). Setting a
layer assigns a layer to a selected object. Displaying layers, on the other hand, applies to the entire
picture, and determines what layers are displayed in your picture.
The following illustration shows two objects, Oval1 and Rect1, added to a picture.
156
Creating Pictures
Then, display layers are set to 1. The following figure shows what is displayed based on the layering
that was assigned.
Next, the same objects are grouped, and layers are assigned to the objects as follows:
Then, display layers are set to 1. The grouped object is displayed, including one of its member objects
(the oval).
Layers are controlled by the LayerName property, which can be animated using the Misc tab in the
Advanced Animations dialog box, or by writing VBA scripts. In addition to the examples cited above,
you can also effectuate the layering function in the run-time environment. After assigning layers to a
set of objects, the objects appear at run-time according to the layering you have set.
What appears on your screen, whether you are in the configuration or run-time environments, is
determined by the Visible property. However, this is only true if the layer assigned to that object is
displayed. For example, if you assign the Visible property for an object to True, but that object does
not appear in your picture, it is probably because the object is assigned to a layer that is not displayed
(the LayerName property takes precedence over the Visible property).
You can also set conditions for the Visible property using the Visibility Expert. This Expert lets you
157
Creating Pictures
assign a data source to the property, or create an expression using conditional values and relational
operators. To use the Visibility Expert, click the Visibility Expert button on the Experts toolbar
(Classic view), or access the Visibility Expert from the Tools tab, in the Animations group (Ribbon
View). If the Toolbox is enabled, click the button on the Toolbox. For help on the Expert fields, click
the Help button on the Expert.
When you set the Layer property through VBA, the layers are related to the property number by a bit
mask. In the following equation, n is the layer number that you want to display:
picture.displaylayer = 2n-1
For example, if you want to display layer 3, picture.displaylayer would be equal to 23-1, which is
simplified to 22, which is equal to 4. So, you would use the following VBA code:
picture.displaylayer = 4
If you want to display layer 4, picture.displaylayer would be equal to 24-1, which is simplified to 23,
which is equal to 8. So, you would use the following VBA code:
picture.displaylayer = 8
The power of grouped objects is that they let you create custom objects which you can reuse without
building new ones from scratch. Like other objects, grouped objects have properties you can modify
and control. You can manipulate a group as an object while maintaining individual object properties
and animations. However, grouped objects do not need to be permanent. You can always destroy a
grouped object by ungrouping it. When you ungroup it, the rubber band containing the objects in the
group is deleted, but the member objects are not.
You can nest a group inside another group. For example, you can create a pump from a group of
rectangles and ovals and group them. When you group these objects, the Proficy iFIX WorkSpace adds
a group name (Group 1) to the system tree for the group object and lists the individual objects that
comprise the group one level down from the group name. The following figure illustrates this concept.
158
Creating Pictures
If you draw a valve (Polygon1), a connector (PolyLine1), and group it with the pump (Group1),
another object named Group 2 is created which contains the first group (the pump) and the objects
used to create the valve (the Polygon1 and PolyLine1), as the following figure shows.
Once you create a grouped object, you can manipulate it like any other individual object, including
moving, cutting, copying, and resizing it. Keep in mind, however, that when you ungroup an object,
any changes you make to it affect the member objects. For example, if you resize a group before you
ungroup it, you resize each individual object in the group.
Changing a group's animations, however, does not affect the member objects when you ungroup. To
change the properties of individual objects, you must drill down into the group to select the object you
want, without ungrouping the object.
Drilling down allows you to meticulously control complex grouped objects. To drill down, select Enter
DrillDown from the object pop-up menu and select the object in the group that you want to change.
You can also hold down the shift key and click the object in the group that you want to change.
Drilling down also lets you change the order in which the objects are stacked within the group.
For example, suppose you want to change the color and size of the polygon (the valve) in the following
figure.
One way to do this would be to ungroup, make changes to the polygon, and regroup the objects.
However, this can be tedious and time-consuming, particularly if you have many objects in the group
that you need to change. In addition, if the group contains animations or scripts, the animation settings
and the scripts are destroyed when you ungroup the object.
159
Creating Pictures
A more effective way to modify the polygon is to drill down into the group and make changes without
ungrouping. This approach saves time because you don't have to ungroup and then regroup, and
consequently you preserve any animations or scripts you have assigned to the group.
When you drill down into a group to change an object, a box of dashed lines appear around the group.
Any additional groups will also display a dashed line box. To change only a specific object in a group,
first select the group that contains that object. Then right-click the group and select Enter DrillDown
from the pop-up menu. Now you can select the object you want. You can also hold down the shift key
and click the object in the group that you want to select, as the following figure illustrates.
160
Creating Pictures
Acknowledged
Unacknowledged
161
Creating Pictures
Containing
Allows you to configure the Alarm Summary object to display only those alarms that contain the text
string entered in the Description field.
Not Containing
Allows you to configure the Alarm Summary object to display all alarms that do not contain the text
string entered in the Description field.
Containing Only
Allows you to configure the Alarm Summary object to display all alarms that contain an exact match
of the text string entered in the Description field.
Allows you to enter the text description for which to filter alarms. You can use the asterisk (*)
wildcard character to match substrings; for example, my* would filter the description "mynode". You
can also use the question mark (?) wildcard character to match individual characters; for example,
myno?e would also filter the description "mynode".
Containing
Allows you to configure the Alarm Summary object to display only those alarms that contain the text
string entered in the Description field.
Not Containing
Allows you to configure the Alarm Summary object to display all alarms that do not contain the text
string entered in the Description field.
Containing Only
Allows you to configure the Alarm Summary object to display all alarms that contain an exact match
of the text string entered in the Description field.
Allows you to enter the text description for which to filter alarms. You can use the asterisk (*)
wildcard character to match substrings; for example, my* would filter the description "mynode". You
can also use the question mark (?) wildcard character to match individual characters; for example,
myno?e would also filter the description "mynode".
162
Creating Pictures
Available
Lists the alarm areas that are currently available. To filter alarms by alarm area, select the area(s) from
this list and select the In or Not In option button.
In
Allows you to filter alarms by the alarm areas that are currently selected in the Available list. When
this option is selected, the Alarm Summary object displays only those alarms from the selected alarm
areas.
Not In
Allows you to filter alarms by the alarm areas that are currently selected in the Available list. When
this option is selected, the Alarm Summary object ignores all alarms from the selected alarm areas.
Allows you to add an alarm area name to the Available list, if it does not appear by default. Enter the
alarm area name in this field and click Add to add it to the list.
Add Button
Allows you to add an alarm area name to the Available list, if it does not appear by default. Enter the
alarm area name in the Add Area Not Currently In List field and click this button to add it to the
Available list.
Name
163
Creating Pictures
Operator
Item Description
<> Allows you to configure the Alarm Summary object to display only
those alarms that are not equal to the value of the field to the right.
For example, if the not equal operator is used in conjunction with the
Time In field, and the value in the Time In field is 10:00:00, then the
Alarm Summary object will display all alarms that did not first occur
at 10:00:00.
> Allows you to configure the Alarm Summary object to display only
those alarms that are greater than the value of the field to the right.
For example, if the greater than operator is used in conjunction with
the Time In field, and the value in the Time In field is 10:00:00, then
the Alarm Summary object will display only those alarms that first
occurred after 10:00:00.
>= Allows you to configure the Alarm Summary object to display only
those alarms that are greater than or equal to the value of the field to
the right. For example, if the greater than or equal to operator is used
in conjunction with the Time In field, and the value in the Time In
field is 10:00:00, then the Alarm Summary object will display all
alarms that first occurred at or after 10:00:00.
< Allows you to configure the Alarm Summary object to display only
those alarms that are less than the value of the field to the right. For
example, if the less than operator is used in conjunction with the
Time In field, and the value in the Time In field is 10:00:00, then the
Alarm Summary object will display only those alarms that first
occurred before 10:00:00.
<= Allows you to configure the Alarm Summary object to display only
those alarms that are less than or equal to the value of the field to the
right. For example, if the less than or equal to operator is used in
conjunction with the Time In field, and the value in the Time In field
is 10:00:00, then the Alarm Summary object will display all alarms
that first occurred at or before 10:00:00.
Date In
The date when the block first generated the alarm – used as a condition to filter alarms.
164
Creating Pictures
Operator
Item Description
<> Allows you to configure the Alarm Summary object to display only
those alarms that are not equal to the value of the field to the right.
For example, if the not equal operator is used in conjunction with the
Time In field, and the value in the Time In field is 10:00:00, then the
Alarm Summary object will display all alarms that did not first occur
at 10:00:00.
> Allows you to configure the Alarm Summary object to display only
those alarms that are greater than the value of the field to the right.
For example, if the greater than operator is used in conjunction with
the Time In field, and the value in the Time In field is 10:00:00, then
the Alarm Summary object will display only those alarms that first
occurred after 10:00:00.
>= Allows you to configure the Alarm Summary object to display only
those alarms that are greater than or equal to the value of the field to
the right. For example, if the greater than or equal to operator is used
in conjunction with the Time In field, and the value in the Time In
field is 10:00:00, then the Alarm Summary object will display all
alarms that first occurred at or after 10:00:00.
< Allows you to configure the Alarm Summary object to display only
those alarms that are less than the value of the field to the right. For
example, if the less than operator is used in conjunction with the
Time In field, and the value in the Time In field is 10:00:00, then the
Alarm Summary object will display only those alarms that first
occurred before 10:00:00.
165
Creating Pictures
Item Description
<= Allows you to configure the Alarm Summary object to display only
those alarms that are less than or equal to the value of the field to the
right. For example, if the less than or equal to operator is used in
conjunction with the Time In field, and the value in the Time In field
is 10:00:00, then the Alarm Summary object will display all alarms
that first occurred at or before 10:00:00.
Date Last
The date when the block last generated the alarm – used as a condition to filter alarms.
Containing
Allows you to configure the Alarm Summary object to display only those alarms that contain the text
string entered in the Description field.
Not Containing
Allows you to configure the Alarm Summary object to display all alarms that do not contain the text
string entered in the Description field.
Containing Only
Allows you to configure the Alarm Summary object to display all alarms that contain an exact match
of the text string entered in the Description field.
Description
Allows you to enter the text description for which to filter alarms. You can use the asterisk (*)
wildcard character to match substrings; for example, my* would filter the description "mynode". You
can also use the question mark (?) wildcard character to match individual characters; for example,
myno?e would also filter the description "mynode".
Available
Lists the nodes that are currently available. To filter alarms by node, select the node from this list and
select the In or Not In option button.
166
Creating Pictures
In
Allows you to filter alarms by the nodes that are currently selected in the Available list. When this
option is selected, the Alarm Summary object displays only the available nodes.
Not In
Allows you to filter alarms by the nodes that are currently selected in the Available list. When this
option is selected, the Alarm Summary object ignores all alarms from the selected alarm areas.
Operator
Item Description
<> Allows you to configure the Alarm Summary object to display only
those alarms that are not equal to the priority listed on the right.
>= Allows you to configure the Alarm Summary object to display only
those alarms that are greater than or equal to the priority listed on the
right.
<= Allows you to configure the Alarm Summary object to display only
those alarms that are less than or equal to the priority listed on the
right.
Allows you to select an INFO, LOLO, LOW, MEDIUM, HIGH, HIHI, or CRITICAL priority
condition to filter the alarms.
167
Creating Pictures
Operator
Item Description
<> Allows you to configure the Alarm Summary object to display all
alarms that are not generated from the tagname entered in the
Tagname field.
Tagname
Allows you to enter a tagname for which you want to filter alarms.
Operator
Item Description
<> Allows you to configure the Alarm Summary object to display only
those alarms that are not equal to the value of the field to the right.
For example, if the not equal operator is used in conjunction with the
Time In field, and the value in the Time In field is 10:00:00, then the
Alarm Summary object will display all alarms that did not first occur
at 10:00:00.
> Allows you to configure the Alarm Summary object to display only
those alarms that are greater than the value of the field to the right.
For example, if the greater than operator is used in conjunction with
the Time In field, and the value in the Time In field is 10:00:00, then
the Alarm Summary object will display only those alarms that first
occurred after 10:00:00.
168
Creating Pictures
Item Description
>= Allows you to configure the Alarm Summary object to display only
those alarms that are greater than or equal to the value of the field to
the right. For example, if the greater than or equal to operator is used
in conjunction with the Time In field, and the value in the Time In
field is 10:00:00, then the Alarm Summary object will display all
alarms that first occurred at or after 10:00:00.
< Allows you to configure the Alarm Summary object to display only
those alarms that are less than the value of the field to the right. For
example, if the less than operator is used in conjunction with the
Time In field, and the value in the Time In field is 10:00:00, then the
Alarm Summary object will display only those alarms that first
occurred before 10:00:00.
<= Allows you to configure the Alarm Summary object to display only
those alarms that are less than or equal to the value of the field to the
right. For example, if the less than or equal to operator is used in
conjunction with the Time In field, and the value in the Time In field
is 10:00:00, then the Alarm Summary object will display all alarms
that first occurred at or before 10:00:00.
Time In
The time that the block first generated the alarm – used as a condition to filter alarms.
Operator
Item Description
169
Creating Pictures
Item Description
<> Allows you to configure the Alarm Summary object to display only
those alarms that are not equal to the value of the field to the right.
For example, if the not equal operator is used in conjunction with the
Time In field, and the value in the Time In field is 10:00:00, then the
Alarm Summary object will display all alarms that did not first occur
at 10:00:00.
> Allows you to configure the Alarm Summary object to display only
those alarms that are greater than the value of the field to the right.
For example, if the greater than operator is used in conjunction with
the Time In field, and the value in the Time In field is 10:00:00, then
the Alarm Summary object will display only those alarms that first
occurred after 10:00:00.
>= Allows you to configure the Alarm Summary object to display only
those alarms that are greater than or equal to the value of the field to
the right. For example, if the greater than or equal to operator is used
in conjunction with the Time In field, and the value in the Time In
field is 10:00:00, then the Alarm Summary object will display all
alarms that first occurred at or after 10:00:00.
< Allows you to configure the Alarm Summary object to display only
those alarms that are less than the value of the field to the right. For
example, if the less than operator is used in conjunction with the
Time In field, and the value in the Time In field is 10:00:00, then the
Alarm Summary object will display only those alarms that first
occurred before 10:00:00.
<= Allows you to configure the Alarm Summary object to display only
those alarms that are less than or equal to the value of the field to the
right. For example, if the less than or equal to operator is used in
conjunction with the Time In field, and the value in the Time In field
is 10:00:00, then the Alarm Summary object will display all alarms
that first occurred at or before 10:00:00.
Time Last
The time when the alarm condition or status last changed – used as a condition to filter alarms.
• General Tab
• Visibility Tab
170
Creating Pictures
• Size Tab
• Miscellaneous Tab
• Position Tab
• Color Tab
• Style Tab
• Rotate Tab
• Fill Tab
• Gradient Tab
• Text Tab
• Behavior Tab
• Appearance Tab
• Picture Tab
The General tab of the Advanced Animations dialog box displays the following items:
Name
Allows you to enter a name for the selected object. The name that you specify appears in the
WorkSpace system tree and in the Name row of the VBA Property window.
Description
Allows you to enter a description for the selected object. The description that you specify appears in
the ToolTip for the object (provided that the Enable ToolTips option is enabled) and in the Description
row of the VBA Property window.
Help Context ID
Allows you to enter a help context ID for the selected object if you are creating your own context-
sensitive, picture-specific help files. See the Mastering iFIX manual for more information.
Enable Tooltips
Select this check box to display an on-screen description of the object when the pointer pauses on it.
Enable Highlight
Select this check box to display a highlight around the object when the pointer is over it.
Enable Select
Select this check box to allow operators to select the object at run-time.
171
Creating Pictures
The Visibility tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for the Visible Property area appears directly below the Properties area.
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
172
Creating Pictures
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Table to
Range, Format, or Object, the bottom half the dialog box changes
accordingly.
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Exact Match Allows you to specify that incoming data must exactly match the
configured input value in the lookup table in order to format the data
as the corresponding output value.
Range Comparison Allows you to specify that incoming data must fall within a range of
input values in the lookup table in order to format the data as the
corresponding output value.
Insert Row Inserts a new row into the data conversion table.
173
Creating Pictures
Item Description
Modify Row Displays the New Level Dialog Box so that you can modify an
existing row in the data conversion table.
Advanced Displays the Advanced Lookup Options Dialog Box that allows you
to configure several more lookup options.
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
174
Creating Pictures
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
175
Creating Pictures
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Size tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
176
Creating Pictures
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
Animation Properties
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Range to
Table, Format, or Object, the bottom half the dialog box changes
accordingly.
177
Creating Pictures
Item Description
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Minimum Input Allows you to specify the low limit value for incoming data.
Minimum Output Allows you to apply linear signal conditioning to the data by
mapping the range of input values specified in the Minimum and
Maximum Input fields to a range of output values. Enter the
minimum value, in logical units, for the output range in this field.
Maximum Input Allows you to specify the high limit value for incoming data.
Maximum Output Allows you to apply linear signal conditioning to the data by
mapping the range of input values specified in the Minimum and
Maximum Input fields to a range of output values. Enter the
maximum value, in logical units, for the output range in this field.
Fetch Input Range on Select this check box to automatically fetch the minimum and
Open maximum input values for the data source at run-time.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
178
Creating Pictures
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
179
Creating Pictures
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
180
Creating Pictures
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Miscellaneous tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
Animation Properties
181
Creating Pictures
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Table to
Range, Format, or Object, the bottom half the dialog box changes
accordingly.
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Exact Match Allows you to specify that incoming data must exactly match the
configured input value in the lookup table in order to format the data
as the corresponding output value.
Range Comparison Allows you to specify that incoming data must fall within a range of
input values in the lookup table in order to format the data as the
corresponding output value.
Insert Row Inserts a new row into the data conversion table.
182
Creating Pictures
Item Description
Modify Row Displays the New Level Dialog Box so that you can modify an
existing row in the data conversion table.
Advanced Displays the Advanced Lookup Options Dialog Box that allows you
to configure several more lookup options.
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
183
Creating Pictures
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
184
Creating Pictures
Item Description
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Position tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
185
Creating Pictures
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Range to
Table, Format, or Object, the bottom half the dialog box changes
accordingly.
186
Creating Pictures
Item Description
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Minimum Input Allows you to specify the low limit value for incoming data.
Minimum Output Allows you to apply linear signal conditioning to the data by
mapping the range of input values specified in the Minimum and
Maximum Input fields to a range of output values. Enter the
minimum value, in logical units, for the output range in this field.
Maximum Input Allows you to specify the high limit value for incoming data.
Maximum Output Allows you to apply linear signal conditioning to the data by
mapping the range of input values specified in the Minimum and
Maximum Input fields to a range of output values. Enter the
maximum value, in logical units, for the output range in this field.
Use Offset Select this check box to perform an animation on an object in its
current position, not in the absolute position specified by the logical
unit value in the Minimum Output field.
Fetch Input Range on Select this check box to automatically fetch the minimum and
Open maximum input values for the data source at run-time.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
187
Creating Pictures
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
188
Creating Pictures
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
189
Creating Pictures
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Color tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
190
Creating Pictures
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Table to
Range, Format, or Object, the bottom half the dialog box changes
accordingly.
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Exact Match Allows you to specify that incoming data must exactly match the
configured input value in the lookup table in order to format the data
as the corresponding output value.
Range Comparison Allows you to specify that incoming data must fall within a range of
input values in the lookup table in order to format the data as the
corresponding output value.
Insert Row Inserts a new row into the data conversion table.
191
Creating Pictures
Item Description
Modify Row Displays the New Level Dialog Box so that you can modify an
existing row in the data conversion table.
Advanced Displays the Advanced Lookup Options Dialog Box that allows you
to configure several more lookup options.
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
192
Creating Pictures
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
193
Creating Pictures
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Style tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
194
Creating Pictures
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Table to
Range, Format, or Object, the bottom half the dialog box changes
accordingly.
195
Creating Pictures
Item Description
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Exact Match Allows you to specify that incoming data must exactly match the
configured input value in the lookup table in order to format the data
as the corresponding output value.
Range Comparison Allows you to specify that incoming data must fall within a range of
input values in the lookup table in order to format the data as the
corresponding output value.
Insert Row Inserts a new row into the data conversion table.
Modify Row Displays the New Level Dialog Box so that you can modify an
existing row in the data conversion table.
Advanced Displays the Advanced Lookup Options Dialog Box that allows you
to configure several more lookup options.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
196
Creating Pictures
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
197
Creating Pictures
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
198
Creating Pictures
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Rotate tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
199
Creating Pictures
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Range to
Table, Format, or Object, the bottom half the dialog box changes
accordingly.
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Minimum Input Allows you to specify the low limit value for incoming data.
Minimum Output Allows you to apply linear signal conditioning to the data by
mapping the range of input values specified in the Minimum and
Maximum Input fields to a range of output values. Enter the
minimum value, in logical units, for the output range in this field.
Maximum Input Allows you to specify the high limit value for incoming data.
200
Creating Pictures
Item Description
Maximum Output Allows you to apply linear signal conditioning to the data by
mapping the range of input values specified in the Minimum and
Maximum Input fields to a range of output values. Enter the
maximum value, in logical units, for the output range in this field.
Fetch Input Range on Select this check box to automatically fetch the minimum and
Open maximum input values for the data source at run-time.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
201
Creating Pictures
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
202
Creating Pictures
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Fill tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
203
Creating Pictures
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Range to
Table, Format, or Object, the bottom half the dialog box changes
accordingly.
204
Creating Pictures
Item Description
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Minimum Input Allows you to specify the low limit value for incoming data.
Minimum Output Allows you to apply linear signal conditioning to the data by
mapping the range of input values specified in the Minimum and
Maximum Input fields to a range of output values. Enter the
minimum value, in logical units, for the output range in this field.
Maximum Input Allows you to specify the high limit value for incoming data.
Maximum Output Allows you to apply linear signal conditioning to the data by
mapping the range of input values specified in the Minimum and
Maximum Input fields to a range of output values. Enter the
maximum value, in logical units, for the output range in this field.
Fetch Input Range on Select this check box to automatically fetch the minimum and
Open maximum input values for the data source at run-time.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
205
Creating Pictures
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
206
Creating Pictures
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
207
Creating Pictures
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Gradient tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
208
Creating Pictures
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Table to
Range, Format, or Object, the bottom half the dialog box changes
accordingly.
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Exact Match Allows you to specify that incoming data must exactly match the
configured input value in the lookup table in order to format the data
as the corresponding output value.
Range Comparison Allows you to specify that incoming data must fall within a range of
input values in the lookup table in order to format the data as the
corresponding output value.
Insert Row Inserts a new row into the data conversion table.
209
Creating Pictures
Item Description
Modify Row Displays the New Level Dialog Box so that you can modify an
existing row in the data conversion table.
Advanced Displays the Advanced Lookup Options Dialog Box that allows you
to configure several more lookup options.
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
210
Creating Pictures
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
211
Creating Pictures
Item Description
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Text tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
212
Creating Pictures
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Format to
Range, Table, or Object, the bottom half the dialog box changes
accordingly.
213
Creating Pictures
Item Description
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
Type Allows you to configure whether or not operators can enter data into
the animation at run-time. To allow operators to enter data into
animation and write a new value to the database tag during the next
scan cycle, select In-Place from the list. To prohibit data entry at
run-time, select None.
Confirm When selected, requires operators to confirm that they want to write
data to the database after they have entered a new value into the
animation at run-time.
This option is only available if In-Place is selected in the Data Entry
Type list.
Raw Format Allows you to enter data in its raw (or native C code) format. If this
check box is enabled, you can edit the format by entering a C
format string in the Format field.
Format Allows you to enter a C format string to display data in its raw,
native C code format. You can also enter a string of any kind
preceding the raw format string (for example, to introduce what the
data string represents).
This option is only available if Raw Format is selected.
Justify Allows you to justify the alignment (left, center, or right) of data in
the animation.
This option is only available if the Raw Format check box is
cleared.
214
Creating Pictures
Item Description
Lines Allows you to enter the number of lines that you want to display in
an alpha-numerically formatted animation.
This option is only available if the Raw Format check box is
cleared.
Chars/Line Allows you to enter the number of characters per line that you want
to display in an alpha-numerically formatted animation.
This option is only available if the Raw Format check box is
cleared.
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
215
Creating Pictures
Item Description
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
216
Creating Pictures
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Behavior tab of the Advanced Animations dialog box displays the following items:
217
Creating Pictures
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
218
Creating Pictures
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Table to
Range, Format, or Object, the bottom half the dialog box changes
accordingly.
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Exact Match Allows you to specify that incoming data must exactly match the
configured input value in the lookup table in order to format the data
as the corresponding output value.
Range Comparison Allows you to specify that incoming data must fall within a range of
input values in the lookup table in order to format the data as the
corresponding output value.
Insert Row Inserts a new row into the data conversion table.
219
Creating Pictures
Item Description
Modify Row Displays the New Level Dialog Box so that you can modify an
existing row in the data conversion table.
Advanced Displays the Advanced Lookup Options Dialog Box that allows you
to configure several more lookup options.
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
220
Creating Pictures
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
221
Creating Pictures
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Appearance tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
222
Creating Pictures
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Range to
Table, Format, or Object, the bottom half the dialog box changes
accordingly.
223
Creating Pictures
Item Description
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Minimum Input Allows you to specify the low limit value for incoming data.
Minimum Output Allows you to apply linear signal conditioning to the data by
mapping the range of input values specified in the Minimum and
Maximum Input fields to a range of output values. Enter the
minimum value, in logical units, for the output range in this field.
Maximum Input Allows you to specify the high limit value for incoming data.
Maximum Output Allows you to apply linear signal conditioning to the data by
mapping the range of input values specified in the Minimum and
Maximum Input fields to a range of output values. Enter the
maximum value, in logical units, for the output range in this field.
Fetch Input Range on Select this check box to automatically fetch the minimum and
Open maximum input values for the data source at run-time.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
224
Creating Pictures
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
225
Creating Pictures
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming new data points between the starting and
ending values. All data points are estimated except the starting point and the ending point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
226
Creating Pictures
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
The Picture tab of the Advanced Animations dialog box displays the following items:
Properties
Provides options that allow you to select the properties that you want to animate. For a brief
description of each property, read the property description on the right side of the dialog box.
Animate
Select this check box to open dynamic settings for the visible property. When selected, the Dynamic
Setting for Property area appears directly below the Properties area.
Data Source
Data source refers to a reference to a source of information, such as iFIX tagnames and historical files,
or other OPC-compliant data servers. A data source may also consist of iFIX objects (such as shapes,
charts, and variables) or 3rd party OLE controls.
Expression refers to constants, data sources, or a combination of constants and data sources that are
connected with one or more operators. Use the Browse (...) button to open the Expression Builder
dialog box. Use the Quick Modify button to modify a database block directly without launching the
Database Manager.
227
Creating Pictures
Item Description
Data Conversion Allows you to select the type of data conversion to apply to the data
from the source listed in the Data Source field. A data conversion
defines how the incoming data should be processed or formatted so
that your objects behave according to the properties you have
assigned to them. You can apply any of the following data
conversion:
• Range – uses a range of values on which to animate an
object.
• Table – attempts to match the incoming value from the data
source to an entry in a lookup table. If a match occurs, the
selected property is changed to match the output value.
• Format – provides several options for formatting text data.
• Object – processes the data received from the data source at
its exact value.
NOTE: If you change the Data Conversion option from Table to
Range, Format, or Object, the bottom half the dialog box changes
accordingly.
Output Error Mode Allows you to configure how an animation behaves if an error
occurs. Depending on the type of data conversion, the output error
mode can be any of the following:
• Use Current Output – Displays the data exactly as it
appeared in when the error occurred.
• Use Error Table – Displays an error message that matches
the current error, based on the error definitions in the
Animations Data Error Defaults tab of the User Preferences
dialog box.
• Use Minimum Value – Displays the lowest possible value
that is valid for the data source when an error occurs.
• Use Maximum Value – Displays the highest possible value
that is valid for the data source when an error occurs.
Exact Match Allows you to specify that incoming data must exactly match the
configured input value in the lookup table in order to format the data
as the corresponding output value.
Range Comparison Allows you to specify that incoming data must fall within a range of
input values in the lookup table in order to format the data as the
corresponding output value.
Insert Row Inserts a new row into the data conversion table.
228
Creating Pictures
Item Description
Modify Row Displays the New Level Dialog Box so that you can modify an
existing row in the data conversion table.
Advanced Displays the Advanced Lookup Options Dialog Box that allows you
to configure several more lookup options.
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
229
Creating Pictures
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
230
Creating Pictures
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Toggle Source
Allows you to enter a data source or expression to provide an additional animation to an object.
Toggle Value
Allows you to specify a second output color to which you want to convert the input value or range of
values in the lookup table, based on the value of the data source in the Toggle Source field.
231
Creating Pictures
Table
Allows you to override the default lookup table completely and use a user-defined lookup table that is
defined in the User Global page.
Toggle Rate
Allows you to modify the blink rate of the animations that are tied to the selected object, if you have
specified a second data source through the Toggle Source field.
Unmatched Level
Allows you to specify the color value for the data if the conversion does not match a level that is
defined in the lookup table.
Allows you to specify the allowable deviation from the exact match table. For example, if the exact
match table has a configured level of 20, and you enter a tolerance of .1, then the conversion will
proceed even with a value of 19.9.
• General Tab
• Operator Tab
• Filter Tab
• Sort Tab
• Color Tab
• Column Tab
• Display Tab
The General tab of the Alarm Summary Configuration dialog box contains the following item:
Description
Displays the font selected for the column headings in the Alarm Summary object. Only the font name
appears in this field. Click the browse (...) button to change the font name, style, size, or script.
After you select a new font and click Apply or OK, the font gets applied to the Alarm Summary object
– in both configure and run mode. If the font is larger than the area allowed, the height of the area is
232
Creating Pictures
adjusted.
Click to select a font name, style, size, and script for the column headings in the Alarm Summary
object.
Status Bar
Displays the font selected for the status bar in the Alarm Summary object. Only the font name appears
in this field. Click the browse (...) button to change the font name, style, size, or script.
After you select a new font and click Apply or OK, the font gets applied to the Alarm Summary object
– in both configure and run mode. If the font is larger than the area allowed, the height of the area is
adjusted.
Click to select a font name, style, size, and script for the text in the status bar of the Alarm Summary
object.
The Operator tab of the Alarm Summary Configuration dialog box displays the following items:
Item Description
Allow Alarm When selected, allows operators to acknowledge alarms through the
Acknowledgement Alarm Summary object at run-time. The operator can right-click the
object and acknowledge the currently selected alarm, all of the alarms that
match the current filter, or all of the alarms that are currently displayed on
the screen.
Allow Run Time When selected, allows operators to change the filter and sort configuration
Configuration of the Alarm Summary object at run-time.
Enable Column When selected, allows operators to click the heading of any of the Alarm
Quick Sort Summary object’s columns to sort alarms by the attribute listed in that
column.
233
Creating Pictures
Item Description
Display Right When selected, allows operators to right-click the Alarm Summary object
Mouse Menu and select from a list of related commands.
Allow Acknowledge When selected, this feature allows operators to acknowledge all alarms for
All Alarms the Alarm Summary object. By default this option is enabled.
IMPORTANT: The iFIX Electronic Signature option does not support
Acknowledge All Alarms capability. If you are operating in a regulated
environment, GE Intelligent Platforms encourages you to clear the Allow
Acknowledge All Alarms check box.
The Filter tab of the Alarm Summary Configuration dialog box displays the following items:
Allows you to choose the column of the Alarm Summary object that you want to add a filter condition
to. To add the filter condition, select the column name from this list and click the Add Filter Condition
button or Insert Filter Condition button. Note that the Insert Filter Condition button is available only if
you have a previously defined filter condition.
Allows you to add a filter condition to the Alarm Summary object’s column that is selected in the
Columns field. Select a field and click Add Filter Condition to open the associated dialog box:
When you add the filter condition, it appears at the end of the Display Alarms Where list. The Alarm
Summary object supports up to nine filter conditions.
234
Creating Pictures
Allows you to add a filter condition to the Alarm Summary object’s column that is selected in the
Columns field. Select a field and click Insert Filter Condition to open the associated dialog box:
When it is inserted, the filter condition appears before the currently-selected filter condition in the
Display Alarms Where list. The Alarm Summary object supports up to nine filter conditions.
Lists all configured filter conditions. You can modify, delete, or add relational and comparison
operations to these filter conditions by clicking the buttons on the right.
Additional Buttons
The following buttons are included next to the Display Alarms list box:
Item Description
Modify Opens the Modify Area Dialog Box. This dialog box allows you to edit the
filter condition that is currently selected in the Display Alarms Where list.
Remove Allows you to delete the filter condition that is currently selected in the
Display Alarms Where list.
And Use this button to logically connect two expressions that must both be true.
Or Use this button to logically connect two expressions where only one of the
conditions in the expression can be true.
( Use this button to logically group two or more expressions. This button must
be used in conjunction with the ) operator.
235
Creating Pictures
Item Description
) Use this button to logically group two or more expressions. This button must
be used in conjunction with the ( operator.
The Sort tab of the Alarm Summary Configuration dialog box displays the following items:
Sort By
Allows you to select the attribute (column) of the Alarm Summary object you want to sort by.
Ascending
Sorts the rows of the Alarm Summary object’s spreadsheet in the ascending order of the attribute that
is currently displayed in the Sort By field.
Descending
Sorts the rows of the Alarm Summary object’s spreadsheet in the descending order of the attribute that
is currently displayed in the Sort By field.
The Color tab of the Alarm Summary Configuration dialog box displays the following items:
Item Description
Unacknowledged Select this check box to display all unacknowledged alarms in the Alarm
Alarm Color Summary object with the selected color. This check box overrides all
entries listed in the Foreground Alarm Color grid.
Foreground Alarm Allows you to modify the foreground color and attributes for the alarms
Color grid displayed in the Alarm Summary object.
236
Creating Pictures
Item Description
Color By Priority Select this option to color the background of alarms using the alarm priority.
Color By Status Select this option to color the background of alarms using the alarm status.
Blink to Color Select this check box to define a blink color for the background. You set the
color for the blink in the Background Color grid, in the second column.
Background Color Allows you to modify the background color for the alarm. The first column
grid is the background color, while the second column (if Blink to Color is
enabled) is the blink color for the background.
Specifies whether the Alarm Summary object’s run indicator blinks while the spreadsheet is not
paused.
Specifies whether the Alarm Summary object’s pause indicator blinks while the spreadsheet is paused.
Specifies whether the Alarm Summary object’s pause indicator blinks when new alarms are received
while the spreadsheet is paused.
The Column tab of the Alarm Summary Configuration dialog box displays the following items:
Columns Area
Item Description
Available Lists the columns that are available to be added to the Alarm Summary
Columns object. To add a column, select the column name and click Add. The name
of the column appears in the Selected Columns list, and appears in the Alarm
Summary object at run-time.
Add Allows you to add the currently selected column in the Available Columns
list to the Alarm Summary object.
237
Creating Pictures
Item Description
Remove Allows you to remove the currently selected column in the Selected Columns
list from the Alarm Summary object.
Selected Columns Lists the columns that appear in the Alarm Summary object at run-time. To
remove a column from the list, select the column name and click Remove.
To change the order of the columns, select the column name and use the up
and down arrows to move the column to the desired positon.
Up Moves the selected column name up in the Selected Columns list. This has
the effect of moving the column to the left in the Alarm Summary object at
run-time.
Down Moves the selected column name down in the Selected Columns list. This
has the effect of moving the column to the right in the Alarm Summary
object at run-time.
Item Description
User Defined Allows you to assign a different ASCII (A_) block field to the User Defined
Field 1 Field 1 column. The default field is A_CUALM. This field is available only
if the User Defined Field1 column has been added to the Selected Columns
list.
<> (first instance) Changes the ASCII (A_) block field that is represented by the User Defined
Field 1 entry in the Selected Columns list to the field currently entered in the
User Defined Field.
User Defined Allows you to assign a different ASCII (A_) block field to the User Defined
Field 2 Field 2 column. The default field is A_AUTO. This field is available only if
the User Defined Field2 column has been added to the Selected Columns list.
<> (second Changes the ASCII (A_) block field that is represented by the User Defined
instance) Field 2 entry in the Selected Columns list to the field currently entered in the
User Defined Field 2 field.
User Defined Specifies the text displayed in the header of the Alarm Summary object’s
Field Name 1 User Defined Field1 column. The text you specify cannot match the text of
any existing column header, including the text used in the User Defined
Field2 column header. The maximum length of this name is 50 characters.
238
Creating Pictures
Item Description
User Defined Specifies the text displayed in the header of the Alarm Summary object’s
Field Name 2 User Defined Field2 column. The text you specify cannot match the text of
any existing column header, including the text used in the User Defined
Field1 column header. The maximum length of this name is 50 characters.
The Display tab of the Alarm Summary Configuration dialog box displays the following items:
Display Settings
Item Description
Show Headers Shows/Hides the column names of the Alarm Summary object.
Show Scroll Bars Enables/Disables horizontal and vertical scroll bars for the Alarm Summary
object.
Show Row Shows/Hides the row numbers for each row in the Alarm Summary object.
Numbers
Reverse Color on Select this check box to allow for the reversal in color (between foreground
Acknowledge and background) of the acknowledged alarms visible in the Alarm Summary
object. The foreground and background colors are defined on the Color tab.
When this check box is selected, the blink rate is set to 0. When cleared, the
blink rate is set back to the default of 1.
Show Status Bar Shows/Hides the status bar of the Alarm Summary object.
Show Grid Lines Shows/Hides the spreadsheet grid of the Alarm Summary object.
Blink Unack When selected, the Alarm Summary object flashes new unacknowledged
Alarms alarms at run-time. The rate at which the unacknowledged alarms flash is
defined by the value in the Blink Rate field.
239
Creating Pictures
Item Description
Show Current Select this option to show the current alarm status in the Alarm Summary
Alarm Status window.
Show Latched Select this option to show the latched alarm status in the Alarm Summary
Alarm Status window.
Refresh Settings
Item Description
Alarm Refresh Allows you to configure how often the Alarm Summary object examines the
Interval queue for new alarms at run-time.
Data Refresh Allows you to configure how often the Alarm Summary object updates the
Interval alarm values currently displayed at run-time.
Blink Rate If the Blink Unack Alarms check box is selected, allows you to configure
how often an unacknowledged alarm flashes at run-time.
When Blink Unack Alarms is selected, the alarm background alternates
between Foreground color and Background color at the speed set in the Blink
Rate field.
By default, this value is 1. When using a blink rate of 0, an unacknowledged
alarm’s background will be steadily colored in the foreground color.
Selection Allows you to configure how long a row in the spreadsheet remains selected
Timeout at run-time.
General
Item Description
Object Name Allows you to enter a name for the selected object. The name that
you specify appears in the WorkSpace system tree and in the Name
row of the VBA Property window.
240
Creating Pictures
Item Description
Description Allows you to enter a description for the selected object. The
description that you specify appears in the ToolTip for the object
(provided that the Enable ToolTips option is enabled) and in the
Description row of the VBA Property window.
Enable Tooltip Select this option to display an on-screen description of the object
when the pointer pauses on it. You can only use this in conjunction
with the Enable Highlight option.
Enable Highlight Select this option to display a highlight around the object when the
pointer is on it. To use the ToolTip option, you must also select this
option.
Enable Select Select this check box to allow operators to select the object at run-
time.
Color
Item Description
Foreground Check Box Select this option to animate the foreground color property of the
selected object. If this check box is selected, a Foreground Color
property animation already exists for this object.
To modify the existing animation, click the Foreground Color
Expert button. To remove the Foreground Color animation, clear the
check box.
Foreground Button Click this button to animate the foreground color property of the
selected object. If the Foreground check box is selected, click this
button to modify the existing foreground color animation.
NOTE: Lines, polylines, and bitmaps do not have foreground color
properties.
Edge Check Box Select this option to animate the edge color property of the selected
object. If this check box is selected, an Edge Color property
animation already exists for this object.
To modify the existing animation, click the Edge Color Expert
button. To remove the Edge Color animation, clear the check box.
241
Creating Pictures
Item Description
Edge Button Click this button to animate the edge color property of the selected
object. If the Edge check box is selected, click this button to modify
the existing edge color animation.
Background Check Box Select this option to animate the background color property of the
selected object. If this check box is selected, a Background Color
property animation already exists for this object.
To modify the existing animation, click the Background Color
Expert button. To remove the Background Color animation, clear
the check box.
Background Button Click this button to animate the background color property of the
selected object. If the Background check box is selected, click this
button to modify the existing background color animation.
Movement
Item Description
Position Check Box Select this option to animate the Horizontal or Vertical Position
property of the selected object.
If this check box is selected, a Position property animation already
exists for this object.
To modify the existing animation, click the Position Expert button.
To remove the Horizontal or Vertical Position animation, clear the
check box.
Position Button Click this button to animate the Horizontal or Vertical Position
property of the selected object.
If the Position check box is selected, click this button to modify the
existing Position animation.
Scale Check Box Select this option to animate the Uniform Height and Width Scale
property of the selected object. These animations allow you to scale
the object proportionally, by height, or by width.
If the Scale check box is selected, a Scale property animation already
exists for this object.
To modify the existing animation, click the Scale Expert button. To
remove the Scale animation, clear the check box.
242
Creating Pictures
Item Description
Scale Button Click this button to animate the Uniform Height and Width Scale
property of the selected object. These animations allow you to scale
the object proportionally, by height, or by width.
If the Scale check box is selected, click this button to modify the
existing Scale animation.
Rotate Check Box Select this option to animate the RotationAngle property of the
selected object. This animation allows you to define the angle of
rotation. If the Rotation check box is selected, a RotationAngle
property animation already exists for this object.
To modify the existing animation, click the Rotation Expert button.
To remove the RotationAngle animation, clear the check box.
NOTE: Ovals, rounded rectangles, and charts do not have rotation
properties.
Rotate Button Click this button to animate the RotationAngle property of the
selected object. This animation allows you to define the amount to
rotate an object. If the RotationAngle check box is selected, click this
button to modify the existing RotationAngle animation.
NOTE: Ovals, rounded rectangles, and charts do not have rotation
properties.
Fill
Item Description
Fill Percentage Check Select this option to animate the Fill property of the selected object.
Box You can animate both the Horizontal and Vertical Fill properties
and specify whether the Fill animates based on a percentage.
If the Fill check box is selected, a Fill property animation already
exists for this object. To modify the existing animation, click the Fill
Expert button. To remove the Fill animation, clear the check box.
Fill Percentage Button Click this button to animate the Fill property of the selected object.
You can animate both the Horizontal and Vertical Fill properties and
specify whether the Fill animates based on a percentage. If the Fill
check box is selected, click this button to modify the existing Fill
animation.
243
Creating Pictures
Visibility
Item Description
Visible Check Box Select this option to animate the Visible property of the selected
object. This animation allows you to make an object visible or
invisible. If the Visibility check box is selected, a Visible property
animation already exists for this object.
To modify the existing animation, click the Visibility Expert button.
To remove the Visibility animation, clear the check box.
Visible Button Click this button to animate the Visible property of the selected
object. This animation allows you to make an object visible or
invisible. If the Visibility check box is selected, click this button to
modify the existing Visibility animation.
Additional Animations
Item Description
Advanced Animations Select this option to open the Advanced Animations dialog box.
Check Box This dialog box allows you to access all of the property animations
available to the selected object and also provides a more detailed
interface for adding or modifying property animations.
If this check box is selected, one or more advanced animations
already exist for this object.
To modify the existing animations, click the Configure button. To
delete the existing Advanced Animations, clear this check box.
Configure Click this button to open the Advanced Animations dialog box. This
dialog box allows you to access all of the property animations
available to the selected object and also provides a more detailed
interface for adding or modifying property animations.
If the Advanced Animations check box is selected, one or more
advanced animations already exist for this object.
To modify the existing animations, click the Configure button. To
delete the existing Advanced Animations, clear this check box.
244
Creating Pictures
Command
Item Description
Click Check Box Select this option to specify one or more click commands for your
object. If this check box is selected, a command script already exists
for this object.
To modify the existing command script, click the Click button to
launch the Multiple Command Script Wizard. To delete the existing
script, clear this check box.
Click Button Click this button to specify one or more click commands for your
object. If the Click check box is selected, click this button to modify
the script in the Multiple Command Script Wizard.
• General Tab
• Chart Tab
The General tab of the Chart Configuration dialog box displays the following items:
Name
Description
Help Context ID
Allows you to attribute a help context ID for your own help files.
Highlightable
Selectable
245
Creating Pictures
Modifiable
Scroll Direction
Item Description
Scroll Right to Left Specifies that when you scroll the chart, it will do so from right to
left.
Scroll Left to Right Specifies that when you scroll the chart, it will do so from left to
right.
Reset Allows you to assign a reset value for a left-to-right scroll. The data
and its time shifts according to this percentage when the data plot
reaches the right edge of the chart.
Appearance
Item Description
Refresh Rate Allows you to specify how quickly a chart updates the data plot at
run time.
Historical Update Rate Allows you to specify the rate at which the historical chart is
updated. The default rate of zero disables the chart from being
automatically updated. The rate format is hh:mm:ss. The rate limit is
one hour.
Foreground Color To change the foreground color, click this button to open the Select
Color dialog box.
Background Color To change the background color, click this button to open the Select
Color Dialog box.
Show Multiple Values Allows you to display all of the chart pen's axes at run time.
Show Multiple Times Allows you to display all of the chart pen's time scales at run time.
Show Time Cursor Allows you to display all of the chart pen's time cursors at run time.
246
Creating Pictures
Item Description
Show Time Cursor Tool Allows you to display the pens’ time cursor ToolTips at run time.
Tips
Zooming
Item Description
Horizontal Allows you to zoom into a chart on its horizontal axis at run time.
Vertical Allows you to zoom into a chart on its vertical axis at run time.
Both Allows you to zoom into a chart on both its horizontal and vertical
axes at run time.
The Chart tab of the Chart Configuration dialog box displays the following items:
Data Sources
Allows you to add a pen to your chart by double-clicking a blank field in the list. This in turn allows
you to select a data source for the pen.
Allows you to apply any properties that you select from this dialog box to all pens in a chart.
Pen Tab
Item Description
High Limit Allows you to enter the high limit value defined for the selected data source.
Low Limit Allows you to enter the low limit value defined for the selected data source.
Number of Allows you to specify the number of decimal places the pen displays for
Decimal Places to EGU limits. Enter a number from 0-7.
Display
Fetch Limits Specifies whether or not to automatically retrieve the low and high limits
assigned to the selected data source at run time.
247
Creating Pictures
Item Description
Show Line Specifies whether or not to display the trend line for the selected data source.
Constant Line Specifies whether or not to display a constant horizontal line at the current
value of the pen.
Show Gaps Specifies whether or not to display a blank space to represent an area in a
plot where there is no data.
Use Regional Specifies whether or not to use the Windows Regional Settings. Disabling
Settings this feature allows you to enter user-defined decimal place settings. By
default, this feature is enabled.
Maximum Allows you to specify how many data points will be displayed in the chart
Display Points over a given span duration.
Line Style Allows you to apply a style to the pen’s plot line. The options are:
• Solid – Applies a solid pen line style.
• Dash – Applies a dashed pen line style.
• Dot – Applies a dotted pen line style.
• DashDot – Applies a dash-dot combination line style.
• DashDotDot – Applies a dash-dot-dot combination line style.
Line Color Allows you to specify the color of the pen's plot line.
Line Width Allows you to specify the width of a pen’s plot line.
Marker Style Allows you to specify a style for the pen’s marker type.
248
Creating Pictures
Item Description
Historical Mode Allows you to determine how iFIX selects data from a historical data source
and displays it in the chart, and determines what each displayed value
represents. The options are:
• Sample – The last valid value found is trended, up to and including
the start of the interval.
• Avg – The average of all valid data found during the interval is
trended, starting at the beginning of the interval, 12:00:00. In this
case, 4.5 is trended from 12:00:00 to 12:10:00.
• High – The highest valid data point value found during the interval is
trended, starting at the beginning of the interval, 12:00:00. In this
case, 9.0 is trended from 12:00:00 to 12:10:00.
• Low – The lowest valid data point value found during the interval is
trended, starting at the beginning of the interval, 12:00:00. In this
case, 0.0 is trended from 12:00:00 to 12:10:00.]
• Interpolated – The data is interpreted by assuming that the line
between two values is a straight line. All points along that line are
estimated except the starting point and the ending point. Available for
Historian only.
Time Tab
Item Description
Fixed Date Specifies whether or not to enter a specific date on which to start the display,
in the format MM/DD/YY (month/day/year).
Days Before Now Specifies whether or not to enter a number of days prior to today to start the
display. Allows you to enter the number of days prior to today to start the
display. For example, if you want to define a time group to display data
collected two days before the current date, enter 2.
Fixed Time Specifies whether or not to designate a specific time to start the display,
based on a 24 hour clock.
Lock Time Locks the current Fixed Time, even if you change the time zone in the Date
and Time Properties dialog box in the Control Panel. This field is available
only when you designate a specific time to start the display using the Fixed
Time field.
249
Creating Pictures
Item Description
Duration Before Specifies whether or not to enter the duration prior to the current time to start
Now the display. The minimum duration for a display is 0 seconds; the maximum
is 23 hours, 59 minutes, and 59 seconds.
Time Zone Allows you to select the time zone to associate with the start time. You can
select a specific time zone, or you can select the client time (time zone for
your computer), the server time (time zone used by the Historian server), or
the collector time (time zone of the collector machine). The default time
zone is that of the client machine. This field is available only when Historian
is being used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Saving This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel. This field is available
only when Historian is being used.
Days Allows you to enter the duration for the display, which determines how
much data to display on the x axis. The minimum duration for a display is 1
second; the maximum is 99 days, 23 hours, 59 minutes, and 59 seconds.
Display Displays milliseconds on the time axis and time cursor in the chart and
Milliseconds milliseconds in the (Interval) Time field when Historian is being used. This
field is available only when Historian is being used.
X-Axis Tab
Item Description
Show X Axis Specifies whether or not to display the x axis in the chart.
Number of Allows you to specify how many labels the x axis will contain. You can enter
Labels a maximum of 21 labels.
Number of Ticks Allows you to specify how many ticks the x axis will contain. You can enter
a maximum of 21 ticks.
Show Date Allows you to display the current date in the x axis of the chart.
250
Creating Pictures
Item Description
Allow Reset of Lets you control changes to the limits on the x (time) axis in a chart. Initially,
Axis Limits the limits are set to match the time specified on the Time tab of the Chart
Configuration dialog box. However, when you select this check box, you
enable the time axis limits of your chart to be reset after you right-click the
object to zoom out. The chart resets the time axis limits to the values of the
Start Time and End properties.
Show Title Specifies whether or not to display the title of the x axis in the chart.
Title Allows you to specify a title for the x axis in the chart. You can enter a title
of up to 255 characters.
Y-Axis Tab
Item Description
Show Y Axis Specifies whether or not to display the y axis in the chart.
Number of Allows you to specify how many labels the y axis will contain. You can enter
Labels a maximum of 21 labels.
Number of Ticks Allows you to specify how many ticks the x axis will contain. You can enter
a maximum of 21 ticks.
Allow Reset of Lets you control changes to the limit on the y (value) axis in a chart. Initially,
Axis Limits the limits are set to match the High and Low limits specified on the Pen tab
of the Chart Configuration dialog box. However, when you select this check
box, you enable the value axis limits of your chart to be reset after you right-
click the object to zoom out. The chart resets the value axis limits to the
values of the HiLimit and LoLimit properties.
Show Title Specifies whether or not to display the title of the x axis in the chart.
Title Allows you to specify a title for the x axis in the chart. You can enter a title
of up to 255 characters.
251
Creating Pictures
Grid Tab
Item Description
Show Horizontal Specifies whether or not to display the horizontal grid in a chart.
Grid
Number of Lines Allows you to specify the number of lines in the horizontal grid. The
(Horizontal) maximum number of lines you can have in your grid is 21.
Grid Style Allows you to apply a style to the chart’s horizontal grid line. The options
(Horizontal) are the same as for the chart's line styles.
Show Vertical Specifies whether or not to display the vertical grid in a chart.
Grid
Number of Lines Allows you to specify the number of lines in the vertical grid. The maximum
(Vertical) number of lines you can have in your grid is 21.
Grid Style Allows you to apply a style to the chart’s vertical grid line. The options are
(Vertical) the same as for the chart's line styles.
Legend Tab
Item Description
Value Allows you to enter the number of characters that represents the length of
the value.
252
Creating Pictures
Item Description
High Limit Specifies whether or not to display a data high limit value in the legend.
Low Limit Specifies whether or not to display a data low limit value in the legend.
High Over Range Specifies whether or not to display the high data value of a pen in a specified
time range.
Low Over Range Specifies whether or not to display the low data value of a pen in a specified
time range.
Average Over Specifies whether or not to display the average data value of a pen in a
Range specified time range.
Order Allows you to display the items you select in any order in the legend (left to
right). To rearrange the order in the list, select the item and click the Up or
Down arrow.
Property
Displays the color property (foreground, background, or edge) for which you are currently defining a
color.
Color Set
Lists all color sets that are currently configured on your system. You can add your own color set by
clicking the New Color Set button, naming the color set, and customizing the individual colors within
the set.
Color Tab
Allows you to attribute a color for the selected object. To change an object’s color, click the Color tab,
select a color from the color box, and click OK. Optionally, you can attribute a named color by
clicking the Name tab, selecting the name of a color from the list, and clicking OK.
253
Creating Pictures
Name Tab
Displays the named colors of the color set listed in the Color Set list. To change the name of a color,
double-click it from the list and enter a new name in the highlighted field.
Customize Color
Allows you to create a unique color from one of the available color sets listed in the ColorSet list.
NOTE: This button is disabled if the System Default color set is selected.
Allows you to add a custom color set to the ColorSet list. This button displays the Add ColorSet dialog
box.
The Create Picture Wizard guides you when creating pictures in Configure mode that will appear the
way you intend in Run mode. Each page in the Wizard includes the following elements:
• Preview Pane – Shows a picture configuration based on the currently selected options.
• Help Button – Launches the Help topics for the Create Picture Wizard.
• Cancel Button – Exits the Create Picture Wizard without creating any new pictures, and
without changing WorkSpace appearance.
• Previous Button – Returns you to the previous page in the Wizard.
• Next Button – Sends you to the following page in the Wizard.
• Finish Button – Creates the new pictures that you have specified, and sets the WorkSpace
appearance that you have specified. This button is only enabled when the Wizard has
collected enough information to successfully create new pictures.
The Create Picture Wizard dialog box displays three paths to create new pictures. For more
information on the screens that appear when you select a path, refer the following sections:
Indicates whether you want to view the WorkSpace Appearance page in the wizard. This page only
needs to be accessed once per WorkSpace session.
254
Creating Pictures
Do not show this Wizard from the new picture menu and Exit now
Prevents the wizard from running the next time you select New Picture from the File menu. The Finish
Button changes to an OK button, and allows you to close the wizard.
When you select the Create Picture(s) from a Predefined Configuration option in the first screen of the
Create Picture Wizard, the wizard then displays the following screens:
Item Description
WorkSpace Full Screen in When you select this option, the WorkSpace hides its title bar, menu
Run Mode bar, and status bar in the run environment. If you clear this option,
you can select any of the other options on the page.
Show WorkSpace Title Displays the title bar across the top of the screen in run mode.
Bar
Show WorkSpace Menu This is available only if Show WorkSpace Title Bar is enabled.
Bar Select this option to display the menu bar across the screen under
the title bar in run mode.
Show Status Bar Displays the status bar across the bottom of the screen in run mode.
This screen provides you with predefined picture configurations. You can select a configuration as is,
or modify it through the Modify Configuration button. When you highlight a configuration name in the
list box, the preview pane displays the configuration.
There are five generic names for predefined pictures: Main, Header, Footer, Left Navigation, and
Faceplate. If you create a custom picture, the generic name is Custom. The background color of the
generic name corresponds to the color of the picture in the preview pane.
Item Description
Modify Configuration Opens the Modify Configuration Dialog Box that allows you to
specify attributes and sizes for your picture.
Delete Configuration Deletes the selected configuration from the Choose Configuration
list.
255
Creating Pictures
The Select Filename(s) page allows you to assign a filename to each picture in the configuration. Valid
filenames must:
• be alphanumeric
• begin with an alphabetic character
• contain no more than 31 characters
• contain none of the following characters: spaces, @, &, $, #, !, or %
• have a .grf extension
Summary Screen
This page summarizes the settings that will be used to create the picture.
Do not show this Wizard from the new picture menu Check Box
Prevents the wizard from running the next time you select New Picture from the File menu (Classic
view) or from the WorkSpace button (Ribbon View). The Finish Button changes to an OK button, and
allows you to close the wizard.
When you select the Create a Custom Picture option in the first screen of the Create Picture Wizard,
the wizard then displays the following screens:
Item Description
WorkSpace Full Screen in When you select this option, the WorkSpace hides its title bar, menu
Run Mode bar, and status bar in the run environment. If you clear this option,
you can select any of the other options on the page.
Show WorkSpace Title Displays the title bar across the top of the screen in run mode.
Bar
Show WorkSpace Menu This is available only if Show WorkSpace Title Bar is enabled.
Bar Select this option to display the menu bar across the screen under
the title bar in run mode.
Show Status Bar Displays the status bar across the bottom of the screen in run mode.
256
Creating Pictures
Allows you to define a picture by either specifying dimensions or using the dimensions of an existing
picture. The dimensions that you enter are checked for range. The preview pane updates to show the
picture that you are defining. Valid ranges for dimensions:
Item Description
Use Specified Dimensions Selecting this check box allows you to specify the dimensions used
to create the picture.
Left Distance from the left of the screen to the left edge of the picture.
Top Distance from the top of the screen to the top edge of the picture.
Width Distance from the left edge of the picture to the right edge of the
picture.
Height Distance from the top edge of the picture to the bottom edge of the
picture.
Percentage Units Indicates the size and location of the picture is based on percentage
of the screen.
Pixel Units Indicates the size and location of the picture is based on the number
of pixels.
Use Dimensions of Allows you to use an existing picture as the template for a new
Existing Picture picture.
Edit Box Enter the picture name that you want to use the dimension of, or
click the browse (...) button to select it.
Item Description
257
Creating Pictures
Item Description
Always on Top Configures the window so that it is always on top when you open it.
Allow this Picture to be Configures the window so that when it is opened and closed it is
Cached held in memory and, when reopened, is read from memory.
Background Color Click the Background Color button to set the actual background
color of the picture. This color will not appear in the preview pane,
since the colors in the preview pane are used only in the Create
Picture Wizard.
Summary Screen
This page summarizes the settings that will be used to create the picture.
Do not show this Wizard from the new picture menu Check Box
Prevents the wizard from running the next time you select New Picture from the File menu (Classic
view), or from the Application Button (Ribbon View). The Finish Button changes to an OK button,
and allows you to close the wizard.
When you select the Create a Default Untitled Picture option in the first screen of the Create Picture
Wizard, no additional screens appear. Click Finish to create your picture.
Allows you to specify the input data type for which you want to configure a custom lookup table. You
can create a custom lookup table for the following data types: Boolean, integer, float, and string values.
258
Creating Pictures
Allows you to specify the output data type that corresponds to the input data type specified in the
Source Property Type field. You can specify the following data types as output values: Boolean,
integer, float, string, and color.
Exact Match
Allows you to specify that incoming data must exactly match the configured input value in the lookup
table in order to format the data as the corresponding output value.
Range Comparison
Allows you to specify that incoming data must fall within a range of input values in the lookup table in
order to format the data as the corresponding output value.
Grid
Allows you to configure the lookup table for this property. Double-click any cell in the table to
configure the input data, output data, and toggle (blink to) data.
Insert Row
Modify Row
Displays the New Level Dialog Box so that you can modify an existing row in the data conversion
table.
Delete Row
Advanced
Displays the Advanced Lookup Options Dialog Box that allows you to configure several more lookup
options.
259
Creating Pictures
Source
Item Description
Edit Box Allows you to enter a data source or expression for this Data link.
Data source refers to a reference to a source of information, such as
iFIX tagnames and historical files, or other OPC-compliant data
servers. A data source may also consist of iFIX objects (such as
shapes, charts, and variables) or 3rd party OLE controls. Single
lettered tags named A through P are not allowed.
Expression refers to constants, data sources, or a combination of
constants and data sources that are connected with one or more
operators.
Browse Button Use the Browse (...) button to open the Expression Builder dialog
box.
Quick Modify Button Use the Quick Modify button to modify a database block directly
without launching the Database Manager.
Data Entry
Item Description
Type Allows you to configure whether or not operators can enter data into
the Data link at run-time. To allow operators to enter data into the
link and write a new value to the database tag during the next scan
cycle, select In-Place from the list. To prohibit data entry at run-time,
select None.
Confirm When enabled, requires operators to confirm that they want to write
data to the database after they have entered a new value in a Data
link at run-time. Note that this option is only available if In-Place is
selected in the Data Entry Type list.
Allows you to specify how errors are processed for this Data link. To accept an input value and return
a corresponding output value, select Use Current Output. To use values from a lookup table, select
Use Error Table. If an incoming input value matches an entry in the table, that output value is returned.
For more information on different error configurations, see the Creating Pictures electronic book.
260
Creating Pictures
Formatting
Item Description
Raw Format Allows you to enter data in its raw (or native C code) format. If this
check box is enabled, you can edit the format by entering a C format
string in the Format field.
Format Allows you to enter a C format string to display data in its raw,
native C code format. You can also enter a string of any kind
preceding the raw format string (for example, to introduce what the
data string represents).
Displays when the Raw Format check box is selected.
Type Allows you to configure whether the data represented by the Data
link should be formatted as numeric or alphanumeric data. To
format numeric data, select Numeric from this list and enter an
integer from 0 to 7 in the Whole Digits and Decimal fields. To
format alpha-numeric data, select Alpha-Numeric from this list and
enter the number of lines and the number of characters per line that
you want to display in the Data link.
Displays when the Raw Format check box is cleared.
Justify Allows you to justify the alignment of the Data link’s text. Text can
be aligned to the left, center, or right of the Data link.
Displays when the Raw Format check box is cleared.
Lines Allows you to enter the number of lines that you want to display in
an alpha-numerically formatted Data link.
Displays when the Raw Format check box is cleared.
Char/Lines Allows you to enter the number of characters per line that you want
to display in an alpha-numerically formatted Data link.
Displays when the Raw Format check box is cleared.
Window Width
Specifies the width of the iFIX picture that is currently open. Picture width is measured in logical
units. See the Creating Pictures electronic book for more information on logical units.
261
Creating Pictures
Window Height
Specifies the height of the iFIX picture that is currently open. Picture height is measured in logical
units. See the Creating Pictures electronic book for more information on logical units.
Window Styles
Item Description
Title Bar Select this check box to display the title bar of the currently opened
picture.
System Menu Select this check box to display the system menu controls in the title
bar of the currently opened picture. These controls allow you to
perform such window-related actions as Restore, Move, Size,
Minimize, Maximize, Close, and Next.
Resizable Select this check box to indicate that the picture can be resized.
Always on Top Select this check box to indicate that the current picture is displayed
on top of all other windows.
Runtime Visible Select this check box to indicate that the current picture can be
viewed in the run-time environment.
Gradient
Item Description
Gradient Enabled Select this check box to apply a gradient to the background color of
the current picture.
Linear Select this option to apply a linear gradient fade type to the
background of the current picture. This option is available only
when the Gradient enabled check box is selected.
Reflected Select this option to apply a reflected gradient fade type to the
background of the current picture. This option is available only
when the Gradient enabled check box is selected.
Radial Select this option to apply a radial gradient fade type to the
background of the current picture. This option is available only
when the Gradient enabled check box is selected.
262
Creating Pictures
Item Description
Concentric Select this option to apply a concentric gradient fade type to the
background of the current picture. This option is available only
when the Gradient enabled check box is selected.
Background Color Use this button to open the Select BackgroundColor dialog box to
configure the background color of the picture that is currently open.
Blend Slider Use this slider to set the percentage of fade color to blend with the
current picture’s background color. The higher the percentage, the
more fade color is visible. This slider is available only when the
Gradient enabled check box is selected.
Fade Color Use this button to open the Select FadeColor dialog box to configure
the fade color of the picture that is currently open.
Gradient Angle Slider Use this slider to set the angle of the gradient for the current
picture’s background color. This slider is available only when the
Gradient enabled check box is selected.
Message Reflection
Some messages are normally sent to the parent control. Under normal conditions, these messages are
actually reflected back to the sending control, so that the control can handle its own message. This
message reflection can be handled by the container, which will reflect the messages back as events.
However, some controls cannot handle message reflection.
If your picture contains OLE controls, and those controls are behaving poorly, try disabling the
Message Reflection check box.
Select this check box to indicate that when you close the current picture, it will NOT be loaded into the
cache. With this check box selected, the picture file will always be opened directly from the disk drive.
If you clear this check box, picture caching is enabled for the current picture, if you also enabled it in
the User Preferences dialog box on the Picture tab. With picture caching enabled, iFIX reads and opens
the previously opened picture from memory.
263
Creating Pictures
• Subsets Tab
• Axis Tab
• Font Tab
• Color Tab
• Plotting Style Tab
• Exporting Enhanced Chart Dialog Box
The General tab of the Enhanced Chart Configuration dialog box displays the following items:
Main Title
Subtitle
Object Name
Allows you to enter an object name for your chart. This name appears in the system tree. It must be
unique and is limited to the standard object naming conventions.
Description
Allows you to add a description for your chart, which is the standard object description shared by all
object types.
Highlightable
Selectable
Allows you to select the chart at run time. By default, this option is selected.
Modifiable
264
Creating Pictures
Zooming
Item Description
Horizontal Allows you to zoom into a chart along its horizontal axis at run time.
Vertical Allows you to zoom into a chart along its vertical axis at run time.
Both Allows you to zoom into a chart along both its horizontal and
vertical axes at run time.
Appearance
Item Description
Chart Update Rate Allows you to specify how quickly a chart updates the data plot at
run time. When used for real-time data, the fastest update rate is 0.1
seconds and the slowest is 1800 seconds. When used for historical
data, the fastest update rate is 5 seconds and the slowest is 1800
seconds.
This value is not used for Histogram and SPC charts. They update at
the rate of their data sources.
For XY charts, this rate specified applies to both real-time and
historical data sources.
NOTE: If you choose to use a real-time data source for your XY or
line/multiline chart, be aware that when you view it in run mode, the
first data points will not be plotted until the time specified in the
Chart Update Rate field has elapsed. Therefore, there will be a lag
time between when you open the chart in run mode and when the
data is plotted; the first data point does not immediately display.
This applies to tag group substitution, as well.
Historical Update Rate Allows you to specify the rate at which the historical chart is
updated. The default rate of zero disables the chart from being
automatically updated. The format is hh:mm:ss. The fastest update
rate is five seconds, the slowest, 1800 seconds, or thirty minutes.
NOTE: This field is not available for XY charts.
265
Creating Pictures
Item Description
Number of Points Allows you to specify the number of points in the chart. Limits the
chart's data display for each data source to no more than the number
specified.
NOTES:
Show Time Cursor Allows you to display the time cursor and time cursor legend for the
chart data sources at run time.
Show Time Cursor Tool Allows you to display the time cursor tool tips for the chart data
Tips source at run time.
Display Milliseconds Displays milliseconds on the time axis and time cursor in the chart
and milliseconds in the (Interval) Time field.
NOTE: This field is not available for XY charts.
Enable Advanced Allows you to improve the visual quality of the chart by permitting
Graphics the use of bitmap/gradient styles, drop-shadow, 3D effects, a variety
of plotting style lines and improved font appearance. Disabling this
option removes smoothing from fonts and graphics (Anti-Aliasing),
as well as disabling transparencies (Alpha Blending) and removing
Bitmap and Gradient functionality.
IMPORTANT: Enabling Advanced Graphics may affect chart
plotting performance.
266
Creating Pictures
Duration
Item Description
Allows you to enter the number of days for the duration of the
Days display. This field can be used in conjunction with the following
field.
The duration for the display determines how much data to display on
the x axis. The minimum duration for a display is 0 seconds; the
maximum is 365 days, 23 hours, 59 minutes, and 59 seconds. The
durations apply to all chart data sources.
Allows you to enter the number of hours, minutes and seconds for
Time the duration for the display. This field can be used in conjunction
with the preceding field.
Export
Snapshot
Click to get a maximized static snapshot of the chart, presented at full-screen size.
The Data Sources tab of the Enhanced Chart Configuration dialog box displays the following items:
267
Creating Pictures
Item Description
Data Source Allows you to add a data source to your chart by double-clicking a blank field
Selection List in the list.
Acceptable data sources:
• X Bar, R Bar, and S Bar – SD block (Statistical Data)
• Histogram – HS block (Histogram)
• Line/Multiline – Any block
• XY – Any block, except SD, HS, ETR, SQT, SQD, or PA
Any changes made to the Data Sources List are applied immediately; clicking
Cancel does not undo any changes.
Allowable number of data sources, by chart type:
• X Bar, R Bar, S Bar, and Histogram – one
• XY – two (one for the X axis and one for the Y axis)
• Line/Multiline – multiple
Move Up Allows you to move the selected data source up in position in the list.
Move Down Allows you to move the selected data source down in position in the list.
X Axis
Allows you to select the data source to use for the X axis.
NOTES:
• By default, the data source at the top of the Data Sources List is used for the X axis.
• Any changes made to the X axis selection are applied immediately; clicking Cancel does not
undo any changes.
268
Creating Pictures
Select this check box to apply all Time and Legend tab choices to all data sources.
NOTES:
• Apply to All Data Sources does not remain checked once you click Apply or Ok.
• For XY charts, this check box is selected by default and cannot be cleared.
Data Tab
Item Description
High Limit Specify the high limit value for the selected data source.
Low Limit Specify the low limit value for the selected data source.
Fetch Select this check box to specify that at run-time, the low and high limits of the
Limits selected data source are retrieved. Clear the check box to activate the High and Low
Limit fields.
Show Determines whether a blank space or a line is displayed to represent an area in a plot
Gaps where there is no data.
NOTE: This field is not available for XY charts.
Interpolate Causes the lines between plotted data to display as slopes, rather than flat lines. In
Data the following illustration, the line on the left uses interpolated data. The line on the
right does not.
Maximum Specify the number of data points to display for a data source over a given duration;
Display the duration is indicated on the General Tab. This number cannot exceed the number
Points specified on the General Tab in the Number of Points field.
NOTE: This field is not available for XY charts.
269
Creating Pictures
Item Description
Auto Causes the intervals to automatically adjust, based on the Duration and Number of
Adjust Points specified on the General tab, resulting in evenly spaced data display. This
Interval option is automatically selected. If you choose Trend from the Historical Mode list,
you cannot disable this option.
NOTE: This field is not available for XY chart, because the intervals are already
automatically adjusted.
Historical Allows you to determine how iFIX selects data from a historical data source and
Mode displays it in the chart, and determines what each displayed value represents. The
options are:
• Sample – The last valid value found is trended, up to and including the start
of the interval.
• Avg – The average of all valid data found during the interval is trended,
starting at the beginning of the interval, 12:00:00.
• High – The highest valid data point value found during the interval is
trended, starting at the beginning of the interval, 12:00:00.
• Low – The lowest valid data point value found during the interval is trended,
starting at the beginning of the interval, 12:00:00.
• Interpolated – The data is interpreted by assuming that the line between two
values is a straight line. All points along that line are estimated except the
starting point and the ending point.
• Trend – The raw data for the minimum and maximum values for each
interval is returned.
NOTE: This field is not available for XY charts.
Time Tab
NOTES:
• The following fields are only available if the data source is historical.
• For XY charts, configuration choices made for the X axis data source are also applied to the
Y axis data source.
Item Description
Fixed Date Specifies whether to enter a specific date on which to start the display.
Days Before Now Specifies whether to enter the number of days prior to today to start the
display. Allows you to enter the number of days prior to today to start the
display. For example, if you want to define a time group to display data
collected two days before the current date, enter 2.
270
Creating Pictures
Item Description
Fixed Time Specifies whether to designate a specific time to start the display, based on a
24 hour clock.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start the display using the Fixed Time
field.
Duration Before Specifies whether to enter the duration prior to the current time to start the
Now display. The minimum duration for a display is 0 seconds; the maximum is
23 hours, 59 minutes, and 59 seconds.
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel. This field is available
only when Historian is being used.
Interval Specifies the amount of time between data collection. The value of this field
must be less than the value entered in the Duration area on the General tab.
If you are using a historical data source, the Interval value defaults to a time
that results in evenly spaced data based on the Duration and Number of
Points specified on the General tab. If you enabled Auto Adjust Interval, you
cannot change the default. However, if you did not enable Auto Adjust
Interval, you can enter a different interval. Nonetheless, if the Interval you
enter results in more samples being returned from Historian than the Number
of Points specified on the General Tab, the Interval will be still be adjusted
so that the returned samples equals the Number of Points defined.
NOTES:
• This field is not available for XY charts.
• If the Auto Adjust Interval check box is selected, this field is not
available.
Legend Tab
NOTE: For XY charts, selections made on the Legend tab for the selected data source apply to all
data sources.
271
Creating Pictures
Item Description
Description Specifies that a description of the data source appears in the legend.
Quality Specifies that a description of the quality of the data source appears in the
legend. This option is not available for histogram charts.
Value Specifies that the value of the chart's data source appear in the legend. This
option is not available for histogram charts.
Low Limit Specifies that the low limit specified on the Data Source Data tab appears in
the legend.
High Limit Specifies that the high limit specified on the Data Source Data tab appears in
the legend.
Export
Snapshot
Click to get a maximized static snapshot of the chart, presented at full-screen size.
The Chart Style tab of the Enhanced Chart Configuration dialog box displays the following items:
Border Style
Item Description
272
Creating Pictures
Numeric Precision
NOTE: Even though you set the numeric precision, the number of decimal points specified does not
appear on the chart unless it is necessary. For example, if you specified the use of two decimal places,
but all of the data values in your chart are whole numbers, decimal points would not be used because
they are not necessary. This setting does not apply to the axes graduations and ticks.
Item Description
Miscellaneous
Item Description
Mark Data Points Specifies whether each individual data point is plotted on the chart.
Show Plotting Specifies whether the legend appears on the chart. The plotting style legend
Style Legend shows the line type or point type, color, and data source.
Show Data Specifies whether the data source legend appears on the chart. The data
Source Legend source legend appears at the bottom of the chart and includes the tag name
and other items specified on the Legend tab of the Data Sources tab.
Extend Y Axis Specifies whether Y Axis ticks are extended across the chart.
Ticks
273
Creating Pictures
Item Description
Include Data Specifies whether data labels are placed next to data points. The labels have
Labels the number of decimal places specified in the Numeric Precision field.
NOTE: This option is available only for XY charts.
Grid Lines
Description
Item
Grid in Front of Specifies that the grid appears in front of the data.
Data
NOTE: You can choose only one line display option from the following four choices.
X Specifies that only grid lines for the X-axis display on the chart.
Y Specifies that only grid lines for the Y-axis display on the chart.
Both Specifies that grid lines for both the X and Y-axes display on the chart.
NOTE: You can only choose one line style from the following five options.
One Pixel Specifies that grid lines are one pixel thick. This setting is primarily for
printing, because it only affects the look of a printed chart.
NOTE: The following settings apply to all data sources legends and not to any individual data source.
274
Creating Pictures
Item Description
Source Specifies the column width of the data source name in the legend.
Description Specifies the column width of the data description in the legend.
Quality Specifies the column width of the data quality in the legend.
Value Specifies the column width of the data value in the legend.
Low Limit Specifies the column width of the low limit in the legend.
High Limit Specifies the column width of the high limit in the legend.
Order Allows you to display the items you select in any order in the legend (left to
right). To rearrange the order in the list, select the item and click the Up or
Down arrow.
Item Description
Auto Specifies that the orientation of the X-axis label is determined by iFIX.
NOTE: This option is not available for XY charts.
Display
NOTE: The Display fields are not available for the XY chart.
Item Description
275
Creating Pictures
Item Description
Table Specifies that the table portion of the chart is displayed in a table.
Both Specifies that both the graph and table portions of the chart are displayed.
Export
Snapshot
Click to get a maximized static snapshot of the chart, presented at full-screen size.
The Subsets tab of the Enhanced Chart Configuration dialog box, which appears only when
configuring a Line Chart, displays the following items:
Item Description
Subset Selection Allows you to select which subsets will always show in the graph. Those data
List sources not selected become part of the scrolling subsets.
Select All Allows you select all data sources to use as subsets.
Clear All Allows you clear all selected data sources from the subsets to graph.
Scrolling Subsets
Specifies the number of subsets to view in one group. If zero is selected, no scroll bar appears.
Example
Assuming there are four data sources, then the following results occur:
276
Creating Pictures
Export
Snapshot
Click to get a maximized static snapshot of the chart, presented at full-screen size.
The Axis tab of the Enhanced Chart Configuration dialog box displays the following items:
Labels
Item Description
Y Axis
Item Description
Auto Allows iFIX to automatically scale the Y-axis so that all data points are within the
visible area of the chart.
277
Creating Pictures
Item Description
Use Data Select to allow iFIX to automatically determine the minimum and maximum axis
Source limits using the limits of all selected data sources.
Limits
Min Allows you to specify the minimum value for the Y-axis.
NOTE: When you select this option the maximum axis value will be automatically
scaled based on the data points in the chart and padding field.
Max Allows you to specify the maximum value for the Y-axis.
NOTE: when you select this option the minimum axis value will be automatically
scaled based on the data points in the chart and padding field.
Padding Allows you to set the percentage of the total range of the Y-axis allocated to
providing space above and below the highest and lowest data points when the axis
values are automatically scaled. Padding prevents the data points from intersecting
with the top or the bottom of the chart. Acceptable values: 0-100.
Your selection for Auto, Min, Max, or Min/Max determines if and where padding
is applied. The selections have the following results:
• Auto – padding is applied to both the bottom and the top of the range.
• Min – padding is applied to the top of the range.
• Max – padding is applied to the bottom of the range.
• Min/Max – padding is not applied.
X Axis
NOTE: The X Axis fields are only available for the XY chart.
Item Description
Use Data Select to allow iFIX to automatically determine the minimum and maximum axis
Source limits using the limits of all selected data sources.
Limits
Clear the checkbox to allow iFIX to automatically scale the X-axis so that all data
points are within the visible area of the chart. In effect, this enables auto-scaling.
278
Creating Pictures
Item Description
Padding Allows you to set the percentage of the total range of the X-axis allocated to
providing space above and below the highest and lowest data points. Padding
prevents the data points from intersecting with the top or the bottom of the chart.
Acceptable values: 0-100.
NOTE: For XY charts, for the X axis, Use Data Source Limits must not be selected
for padding to apply.
Export
Snapshot
Click to get a maximized static snapshot of the chart, presented at full-screen size.
The Font tab of the Enhanced Chart Configuration dialog box displays the following items:
Item Description
Font Styles
Item Description
Main Title Specifies the font style for the chart's main title. You can also specify if the
title is bold, italic, underlined, or any combination.
Sub-Title Specifies the font style for the chart's sub-title. You can also specify if the
title is bold, italic, underlined, or any combination.
Subset / Point / Specifies the font style for the chart's subset, point, and axis labels. You can
Axis Labels also specify if the title is bold, italic, underlined, or any combination.
279
Creating Pictures
Item Description
Table Data Specifies the font style for the chart's table data.
Export
Snapshot
Click to get a maximized static snapshot of the chart, presented at full-screen size.
The Color tab of the Enhanced Chart Configuration dialog box displays the following items:
Viewing Style
Item Description
Monochrome Specifies that the chart displays in black, gray and white.
NOTE: The axes, legends and time cursor appear in color, even if this
option is selected.
Monochrome and Specifies that the chart displays in black, gray and white and includes
Symbols symbols in the legend.
NOTE: The axes, legends and time cursor appear in color, even if this
option is selected.
Graph Attributes
Item Description
Desk Foreground Select to allow specification of the color of the title, sub-titles, and legends.
Desk Background Select to allow specification of the color of the area behind the graph, table,
title, sub-titles, and legends.
280
Creating Pictures
Item Description
Shadow Color Select to allow specification of the color of the drop shadow, if present.
Graph Foreground Select to allow specification of the color of the graph grid.
Table Foreground Select to allow specification of the color of the table's data.
Table Background Select to allow specification of the color of the table's interior.
Color buttons Click to choose the desired color for selected graph attributes. Double-click a
color button to define a custom color.
Pre-set Styles
Item Description
Light Inset
(Bitmap /
Gradient
selected)
Medium Inset
(Bitmap /
Gradient
selected)
281
Creating Pictures
Item Description
Dark Inset
(Bitmap /
Gradient
selected)
Light Shadow
(Bitmap /
Gradient
selected)
Medium
Shadow
(Bitmap /
Gradient
selected)
Dark Shadow
(Bitmap /
Gradient
selected)
Light Line
(Bitmap /
Gradient
selected)
282
Creating Pictures
Item Description
Medium Line
(Bitmap /
Gradient
selected)
Dark Line
(Bitmap /
Gradient
selected)
Light No Border
(Bitmap /
Gradient
selected)
Medium No
Border
(Bitmap /
Gradient
selected)
Dark No Border
(Bitmap /
Gradient
selected)
Export
283
Creating Pictures
Snapshot
Click to get a maximized static snapshot of the chart, presented at full-screen size.
The Plotting Style tab of the Enhanced Chart Configuration dialog box displays the following items:
Line Style
Item Description
Subset Selection Allows you to select the data source your Color, Point Type, and Line Type
List selections will apply to.
Colors Click to choose the desired color for the selected data source. Double-click a
color button to define a custom color.
Point Type Specifies the point type for the selected data source.
NOTE: Point types appear in the chart only if the Chart Plotting Style
includes points, such as Point + Line, for example.
Line Type Specifies the line type for the selected data source.
NOTE: The following styles are available only for Line/Multiline and XY Charts.
Item Description
Area Specifies that the area under the plot line is filled with the color selected in
the Line Style area.
284
Creating Pictures
Item Description
285
Creating Pictures
Item Description
Point + Best Fit Specifies that data is presented showing all data points and plots a best fit
Curve curve for all points in the chart.
Point + Best Fit Specifies that data is presented showing all data points and plots a best fit
Curve II curve for only the currently visible points in the chart.
Point + Best Fit Specifies that data is presented showing all data points and plots a best fit line
Line for all points in the chart.
Point + Best Fit Specifies that data is presented showing all data points and plots a best fit line
Line II for only the currently visible points in the chart.
286
Creating Pictures
Item Description
Point + Line Specifies that data is presented using points and lines.
Point + Spline Specifies that data is presented using points and splines.
Data Shadows
Item Description
Off Specifies that there are no shadows for the chart data.
Shadow Specifies that there are shadows for the chart data.
NOTE: Shadows can be applied only to Line/Multiline charts that use Area
or Bar for their Plotting Style and to Histograms.
287
Creating Pictures
Export
Snapshot
Click to get a maximized static snapshot of the chart, presented at full-screen size.
The Exporting Enhanced Chart dialog box displays the following items:
Export
Item Description
Export Destination
Item Description
288
Creating Pictures
Export Size
Item Description
No Specific Size Specifies that no specific size is used for the exported chart.
(only available if
WMF is selected
in Export)
Pixel Specifies the unit of measure for the exported chart. This option is auto-
(available only if selected for BMP, JPG and PNG file format and cannot be deselected.
BMP, JPG, or
PNG is selected in
Export)
Millimeters Specifies that the size for the exported chart is measured in millimeters.
Inches Specifies that the size for the exported chart is measured in inches.
Points Specifies that the size for the exported chart is measured in points.
The following fields are available only if Clipboard or File is selected in Export Destination.
DPI Specifies the dots per inch. The higher the number the better the quality.
Export
The Export Enhanced Chart dialog box displays the following items:
289
Creating Pictures
Export What
Item Description
Data and Labels Exports the chart's data along with the data labels.
Export Style
Item Description
Subsets/Points Specifies that data is exported with one row for the point data and one
(only available if additional row for each subset.
Table is selected)
Points/Subsets Specifies that data is exported with one row for each point and an additional
(only available if column for each subset.
Table is selected)
Numeric Precision
Item Description
Current Precision Exports the data using the level of numeric precision specified on the Chart
Style tab.
Maximum Exports the data using the highest level of numeric precision available on the
Precision Chart Style tab, which is seven decimal places.
290
Creating Pictures
Export
Time Definition
Item Description
Click to set the time to now. The value displayed in this field is applied after
clicking OK.
Start Time – Date Enter the date of the start time. The format for the day comes from your local
regional settings.
Start Time – Enter the time of the start time. The format for the time comes from your
Time local regional settings.
NOTE: The Start Time Date and Time settings apply to all objects that
contain historical animations.
End Time – Date Enter the date of the end time. The format for the day comes from your local
regional settings. This field is only available if you did not select Define
Duration.
End Time – Time Enter the time of the end time. The format for the time comes from your local
regional settings. This field is only available if you did not select Define
Duration.
NOTE: The End Time Date and Time settings apply to all objects that
contain historical animations.
Define Duration Select to define the duration of the data, in days, hours, minutes, and seconds.
Clear this check box to define the duration using the Start Time and End
Time fields.
Days Enter the number of days for the duration. This field is only available if you
selected Define Duration.
Hours Enter the number of hours for the duration. This field is only available if you
selected Define Duration.
Mins Enter the number of minutes for the duration. This field is only available if
you selected Define Duration.
291
Creating Pictures
Item Description
Secs Enter the number of seconds for the duration. This field is only available if
you selected Define Duration.
Item Description
Hours Select the number of hours for the historical update rate.
Mins Select the number of minutes for the historical update rate.
Secs Select the number of seconds for the historical update rate.
Scroll Rates
Item Description
Scroll as % of Select to set the scroll rate as a percentage of duration. Clear this check box
Duration to enter an exact value for the scroll rate. For example, 1.25 hours, or 75
minutes.
Slow Enter the slow scroll value in this field, or use the arrows to increase or
decrease the value. The Slow Scroll Value applies to both the Forward and
Backward Slow Scroll buttons. By default, this value is set to 25 percent.
If the Scroll as % of Duration check box is selected, this value is a
percentage. For example, if you enter 10, it means 10 percent of the total
duration is used for the scroll.
If the Scroll as % of Duration check box is cleared, the number you enter is
an exact value. For example, if you enter 1.2 and then select the Minutes
option, the scroll will be a value of 1.2 minutes.
NOTE: This value cannot be greater than the value you enter in the Fast
field.
Slow – Days Select to set the unit of measure as days. This field is only available if you
did not select Scroll as % of Duration.
Slow – Hours Select to set the unit of measure as hours. This field is only available if you
did not select Scroll as % of Duration.
292
Creating Pictures
Item Description
Slow – Mins Select to set the unit of measure as minutes. This field is only available if you
did not select Scroll as % of Duration.
Slow – Secs Select to set the unit of measure as seconds. This field is only available if you
did not select Scroll as % of Duration.
Fast Enter the fast scroll value in this field, or use the arrows to increase or
decrease the value. The Fast Scroll Value applies to both the Forward and
Backward Fast Scroll buttons. By default, this value is set to 50 percent.
If the Scroll as % of Duration check box is selected, this value is a
percentage. For example, if you enter 10, it means 10 percent of the total
duration is used for the scroll.
If the Scroll as % of Duration check box is cleared, the number you enter is
an exact value. For example, if you enter 1.2 and then select the Minutes
option, the scroll will be a value of 1.2 minutes.
NOTE: This value cannot be greater than the value you enter in the Slow
field.
Fast – Days Select to set the unit of measure as days. This field is only available if you
did not select Scroll as % of Duration.
Fast – Hours Select to set the unit of measure as hours. This field is only available if you
did not select Scroll as % of Duration.
Fast – Mins Select to set the unit of measure as minutes. This field is only available if you
did not select Scroll as % of Duration.
Fast – Secs Select to set the unit of measure as seconds. This field is only available if you
did not select Scroll as % of Duration.
Select this check box to shows a grid of evenly spaced dots to help you guide the placement of objects
for precise vertical or horizontal alignment.
Snap to Grid
Select this check box to force the top left corner of every object you create or move to stick to the
closest grid point.
293
Creating Pictures
Grid Interval
Specifies the amount of space, in pixels, between each evenly spaced dot in the grid.
Source
Item Description
Edit Box Allows you to enter a data source or expression for this historical
data link.
A data source is a reference to a source of information, such as
historical files.
an expression includes constants, data sources, or a combination of
constants and data sources that are connected with one or more
operators.
Browse Button Use the Browse (...) button to open the Expression Builder dialog
box.
Select this check box to specify that the Historical Datalink include the time stamp with the data. The
time stamp appears only at run-time. By default, this check box is selected.
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
294
Creating Pictures
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone associated with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how iFIX selects and fetches data from a historical data source and,
determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
295
Creating Pictures
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest is 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
296
Creating Pictures
Item Description
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Available
Lists the alarm areas that are currently available. To filter alarms by alarm area, select the area(s) from
this list and select the In or Not In option button.
In
Allows you to filter alarms by the alarm areas that are currently selected in the Available list. When
this option is selected, the Alarm Summary object displays only those alarms from the selected alarm
areas.
Not In
Allows you to filter alarms by the alarm areas that are currently selected in the Available list. When
this option is selected, the Alarm Summary object ignores all alarms from the selected alarm areas.
Allows you to add an alarm area name to the Available list, if it does not appear by default. Enter the
alarm area name in this field and click Add to add it to the list.
Add Button
Allows you to add an alarm area name to the Available list, if it does not appear by default. Enter the
alarm area name in the Add Area Not Currently In List field and click this button to add it to the
Available list.
297
Creating Pictures
Attributes Tab
Item Description
Always on Top Configures the window so that it is always on top when you open it.
Allow this Picture to be Configures the window so that when it is opened and closed it is
Cached held in memory and, when reopened, is read from memory.
Background Color Click the Background Color button to set the actual background
color of the picture. This color will not appear in the preview pane,
since the colors in the preview pane are used only in the Create
Picture Wizard.
Sizes Tab
Item Description
Left Distance from the left of the screen to the left edge of the picture.
Top Distance from the top of the screen to the top edge of the picture.
Width Distance from the left edge of the picture to the right edge of the
picture.
Height Distance from the top edge of the picture to the bottom edge of the
picture.
Percentage Units Indicates the size and location of the picture is based on percentage
of the screen.
Pixel Units Indicates the size and location of the picture is based on the number
of pixels.
Help
298
Creating Pictures
Save
Save As
Saves the current options as a new configuration. When you select this option, the Enter New
Configuration Name dialog box appears. Enter the name for the new configuration (up to 80
characters) in the Name field, then click OK to return to the Modify Configuration dialog box.
Return to Wizard
Closes the Modify Configuration dialog box and returns to the Create Picture Wizard.
Preview
Start Cap
Specifies the start cap you want to apply to the selected pipe. Start caps can be round, square,
horizontal-diagonal, or vertical-diagonal. Start caps are determined by the point where you start the
pipe drawing.
End Cap
Specifies the end cap you want to apply to the selected pipe. End caps can be round, square,
horizontal-diagonal, or vertical-diagonal. End caps are determined by the point where you end the pipe
drawing.
Elbow
Specifies the elbow style you want to apply to the selected pipe. Elbow styles can be either round or
square.
Foreground
Click this button to open the Select Color dialog box where you can choose the foreground color for
the selected object.
Blend Slider
Move this slider to apply the desired amount of fade color to the selected foreground type.
299
Creating Pictures
Fade
Click this button to open the Select Color dialog box where you can choose the fade color for the
selected object.
Edge Style
Specifies the edge style you want to apply to the selected pipe. Edge styles for pipes can be either solid
or none.
Fill Style
Specifies the fill style you want to apply to the selected pipe. Fill styles for pipes can be either solid or
gradient. If you select Gradient, the fade type of the pipe defaults to reflected, and cannot be changed.
Thickness
Specifies the thickness you want to apply to the selected pipe. Pipe thickness can range from 10 to 300
pixels.
Edge Width
Specifies the edge width, in pixels, you want to apply to the selected pipe. Edge widths can range from
1 to 200 pixels.
Low
If configuring an exact match data conversion table, this field allows you to specify the exact value that
incoming data must match in order to format the data as the corresponding output value. If configuring
a range comparison data conversion table, this field allows you to specify the low value of the range
that incoming data must match in order to format the data as the corresponding output value.
High
Allows you to specify the high value of the range that incoming data must match in order to format the
data as the corresponding output value.
Primary
Allows you to specify the output value to which you want to convert the input value or range of values
in the lookup table.
Toggle
Allows you to specify a second output value to which you want to convert the input value or range of
values in the lookup table, essentially providing a second animation for the object.
300
Creating Pictures
Property
Displays the color property (foreground, background, or edge) for which you are currently defining a
color.
Color Set
Lists all color sets that are currently configured on your system. You can add your own customized
color set by clicking the Color button on the Toolbar to bring up the Color Selection dialog box, then
clicking the New Color Set button.
Color Tab
Allows you to attribute a color for the selected object. To change an object’s color, click the Color tab,
select a color from the color box, and click OK. Optionally, you can attribute a named color by
clicking the Name tab, selecting the name of a color from the list, and clicking OK.
Name Tab
Displays the named colors of the color set listed in the Color Set list. To change the name of a color,
double-click it from the list and enter a new name in the highlighted field.
Property
Displays the color property (foreground, background, or edge) for which you are currently defining a
color.
Color Set
Lists all color sets that are currently configured on your system. You can add your own color set by
clicking the New Color Set button, naming the color set, and customizing the individual colors within
the set.
Color Tab
Allows you to attribute a color for the selected object. To change an object’s color, click the Color tab,
select a color from the color box, and click OK. Optionally, you can attribute a named color by
clicking the Name tab, selecting the name of a color from the list, and clicking OK.
Name Tab
Displays the named colors of the color set listed in the Color Set list. To change the name of a color,
301
Creating Pictures
double-click it from the list and enter a new name in the highlighted field.
Property
Displays the color property (foreground, background, or edge) for which you are currently defining a
color.
Color Set
Lists all color sets that are currently configured on your system. You can add your own customized
color set by clicking the Color button on the Toolbar (Classic view) or on the Format tab, in the Styles
group, by clicking Color Selections (Ribbon view) to bring up the Color Selection dialog box, then
clicking the New Color Set button.
Color Tab
Allows you to attribute a color for the selected object. To change an object’s color, click the Color tab,
select a color from the color box, and click OK. Optionally, you can attribute a named color by
clicking the Name tab, selecting the name of a color from the list, and clicking OK.
Name Tab
Displays the named colors of the color set listed in the Color Set list. To change the name of a color,
double-click it from the list and enter a new name in the highlighted field.
Preview
Linear
Select this option to apply a linear fade effect to the selected fade color.
Reflected
Select this option to apply a reflected fade effect to the selected fade color.
Radial
Select this option to apply a radial fade effect to the selected fade color.
302
Creating Pictures
Concentric
Select this option to apply a concentric fade effect to the selected fade color.
Foreground
Click this button to open the Select Color dialog box where you can choose the foreground color for
the selected object.
Blend Slider
Move this slider to apply the desired amount of fade color to the selected fade type.
Fade
Click this button to open the Select Color dialog box where you can choose the fade color for the
selected object.
Move this slider to apply the desired angle of fade color to the selected fade type.
Item Description
Preview Displays a preview of the object with the properties you select.
Linear Select this option to apply a linear fade effect to the selected fade color.
Reflected Select this option to apply a reflected fade effect to the selected fade color.
Radial Select this option to apply a radial fade effect to the selected fade color.
Concentric Select this option to apply a concentric fade effect to the selected fade color.
Foreground Click this button to open the Select Color dialog box where you can choose
the foreground color for the selected object.
303
Creating Pictures
Item Description
Blend Slider Move this slider to apply the desired amount of fade color to the selected fade
type.
Fade Click this button to open the Select Color dialog box where you can choose
the fade color for the selected object.
Gradient Angle Move this slider to apply the desired angle of fade color to the selected fade
Slider type.
Item Description
Property Displays the color property (foreground, background, or edge) for which you are
currently defining a color.
Color Lists all color sets that are currently configured on your system. You can add your
Set own customized color set by clicking the Color button on the Toolbar to bring up the
Color Selection dialog box, then clicking the New Color Set button.
Color Allows you to attribute a color for the selected object. To change an object’s color,
Tab click the Color tab, select a color from the color box, and click OK. Optionally, you
can attribute a named color by clicking the Name tab, selecting the name of a color
from the list, and clicking OK.
Name Displays the named colors of the color set listed in the Color Set list. To change the
Tab name of a color, double-click it from the list and enter a new name in the highlighted
field.
How Do I...
The following sections explain how to work with pictures in the Proficy iFIX WorkSpace:
Click a section above for steps on how to use or configure this part of a picture.
304
Creating Pictures
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the desired chart button.
-Or-
In Ribbon view, on the Insert tab, in the Charts group, click the desired chart type.
-Or-
If the Toolbox is enabled, click the Chart button on the Toolbox.
The cursor changes to a plus sign.
2. Click and drag the mouse to define an area of the picture where you want to place the chart,
and release the mouse.
TIP: To add multiple charts, double-click the desired chart button on the Toolbox. When you
are done adding charts, press ESC, click another button, or click the pointer selection tool in
the Toolbox.
In the Proficy iFIX WorkSpace, you can perform the following steps to add, draw, or create objects:
305
Creating Pictures
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the Text button.
-Or-
In Ribbon view, on the Insert tab, in the Object/Links group, click Object/Links, and then
click Text.
-Or-
If the Toolbox is enabled, click the Text button on the Toolbox.
The cursor changes to an I-beam.
2. Position the cursor where you want the text to appear.
3. Enter the text you want. Use <Backspace> to delete the text and <Enter> to start a new line.
TIPS:
• To add multiple text objects, double-click the Text button on the Toolbox. Place the
cursor where you want to add the first text object and enter your text. Click outside the
text object or press ESC, and then place the cursor where you want to add the second
object. Repeat these steps for each text object you want to add.
When you are done adding text objects, click the Text button again, the pointer selection
tool, or another button in the Toolbox.
• To edit the text within a text object, you can double-click the text object, or right-click
the text object and select Edit Text from the pop-up menu that appears.
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the Bitmap button.
-Or-
In Ribbon view, on the Insert tab, in the Object/Links group, click Object/Links, and then
click Bitmap.
-Or-
If the Toolbox is enabled, click the Bitmap button on the Toolbox.
The cursor changes to a plus sign.
306
Creating Pictures
2. Select a file from the Open dialog box and click Open.
TIP: To add multiple bitmaps, double-click the Bitmap button on the Toolbox. When you are
done adding bitmaps, press ESC, click another button, or click the pointer selection tool in
the toolbox.
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the Datalink Stamper
button.
-Or-
In Ribbon view, from the Insert tab in Objects/Links group, click Objects/Links, and then
click Datalink.
-Or-
If the Toolbox is enabled, click the Datalink button on the Toolbox.
2. In the Source field, enter a data source for the data link. To use the Expression Builder, click
the Browse button.
3. To enable data entry on the data link, select In-Place from the Type field’s drop-down menu.
If you want confirmation from the operator when the value is changed, select the Confirm
check box.
4. In the Formatting area, select the type of data you want to display from the Type field’s drop-
down menu.
For numeric data, enter an integer between 0 and 7 to represent the number of whole digits
(those before the decimal point) and decimal digits (those after the decimal point) in the
Whole Digits and Decimal fields, respectively. If needed, justify the data by making the
appropriate selection from the Justify drop-down menu.
Although you can enter an integer between 0 and 40 in the Whole Digits field, when you view
the data link in Run mode the number of digits is truncated to at most 7.
For alphanumeric data, enter the number of lines and the number of characters per lines in the
Lines and Chars/Lines fields, respectively. If desired, justify the data by making the
appropriate selection from the Justify drop-down menu.
For raw data, select the Raw Format check box and enter the format in the Format field.
NOTE: To format a data link to display scientific notation, first select a F_CV, E_CV or
A_CV field, enable the Raw Format check box, and specify %e in format field. F_CV and
E_CV datalinks using %e raw format, by default, display 6 places after the decimal point. To
display more places after the decimal point, for example 15, change %e to %1.15e. A_CV
datalinks using %e raw format will always display 15 places after decimal point. To display a
leading zero in the link, use the F_CV field and the raw format similar to %02.2f.
5. In the Error Configuration area, select how you want output errors to be defined in the Output
Error Mode field. To define errors through an error table, select Use Error Table. To define
errors using the current output value, select Use Current Output.
6. Click OK. The cursor changes to a stamper.
307
Creating Pictures
7. Position the cursor where you want to place the data link, and click the mouse. The data link
appears in the picture. The size of the data link is determined both by the settings you chose in
the Datalink dialog box and by the font size you set in the User Preferences dialog box.
TIP: In Classic view, access the User Preferences dialog box from the WorkSpace menu. In
Ribbon view, access User Preferences from the Home tab, in the WorkSpace group, in the
Settings list. Set the font size on the Shape Preferences tab.
NOTE: If you create a data link by selecting Datalink from the Insert menu (Classic View), or
by selecting it from the Insert tab, in the Objects/Links group, in the Objects/Links list
(Ribbon view), you will first sketch the size of the data link, then configure the content of the
data link as described in steps 2 through 5.
3. In Classic view, on the Standard toolbar, click the Task Wizard button.
-Or-
In Ribbon view, on the Tools tab, in the Tasks/Experts group, click the Tasks/Experts dialog
box launcher.
4. From the Task Categories list, select Data Entry Expert and click Perform Task.
5. In the Data Source field, enter a data source for the data link. To use the Expression Builder,
click the Browse button.
6. In the Choose Data Entry Method area, select the appropriate data entry option.
7. Set the values of the fields corresponding to the data entry method you chose.
8. Click OK.
1. In Classic view, in the Proficy Pulse WorkSpace, on the Shapes toolbar, click the Historical
Datalink Stamper button.
-Or-
In Ribbon view, from the Insert tab in Objects/Links group, click Objects/Links, and then
click Historical Datalink.
-Or-
If the Toolbox is enabled, click the Historical Datalink button on the Toolbox.
2. In the Source field, enter a data source for the historical data link. To use the Expression
Builder, click the Browse button.
308
Creating Pictures
TIP: To display a one-hour average in your historical data link, in Historian, create a
calculation tag to calculate the one-hour average. Then, select the tag that you created when
choosing the data source for your historical data link.
3. To display a time stamp with the historical datalink, select the Show Time stamp With Data
check box. To hide the time stamp, clear the Show Time stamp With Data check box.
4. From the Historical Mode list, select the data type to display. If you selected Current Value,
go to step 9. Otherwise, proceed to step 5.
5. In the Start Date area, choose select either Fixed Date or Days Before Now to set when the
date for the display to begin and enter the desired time or value.
6. In the Start Time area, choose either Fixed Time or Duration Before Now to set the start time
for the data display and enter the desired time or value.
7. Optionally, to configure the historical datalink to open at the Fixed Time and to ignore
changes to the time zone in the Date and Time Properties dialog box in the Control Panel,
select Lock Time.
8. Optionally, to adjust for daylight saving time, if it is not already selected, click Adjust for
Daylight Savings Time and select a time zone from the Time Zone list.
9. In Duration area, select or enter the time range for the data.
10. In the Update Rate area, select or enter the update rate for the data.
11. Click OK. The cursor changes to a stamper.
12. Position the cursor where you want to place the historical data link, and click the mouse. The
historical data link appears in the picture.
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the Time button.
-Or-
In Ribbon view, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click Current Time.
-Or-
If the Toolbox is enabled, click the Time button on the Toolbox.
The cursor changes to a stamper.
2. Position the cursor where you want the time to appear and click again.
TIP: To add multiple instances of the current time, double-click the Time button on the
Toolbox. When you are done adding instances, press ESC, click another button, or click the
pointer selection tool in the Toolbox.
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the Date button.
309
Creating Pictures
-Or-
In Ribbon view, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click Current Date.
-Or-
If the Toolbox is enabled, click the Date button on the Toolbox.
The cursor changes to a stamper.
2. Position the cursor where you want the date to appear and click again.
TIP: To add multiple instances of the current date, double-click the Date button on the
Toolbox. When you are done adding instances, press ESC, click another button, or click the
pointer selection tool in the Toolbox.
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the appropriate button.
-Or-
In Ribbon view, on the Insert tab, in the Shapes group, click Shapes, and then click the
desired shape.
-Or-
If the Toolbox is enabled, click the button on the Toolbox.
The cursor changes to a plus sign.
2. Place the cursor where you want to draw the shape.
3. Click and drag in the picture until the shape is the desired size.
TIP: To add multiple rectangles, rounded rectangles, ovals, pipes, or lines, double-click the
appropriate button on the Toolbox. When you are done adding the objects, press ESC, click
another button, or click the pointer selection tool in the Toolbox.
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the Polyline or Polygon
button.
-Or-
In Ribbon view, on the Insert tab, in the Shapes group, click Shapes, and then click Polyline
or Polygon.
-Or-
If the Toolbox is enabled, click the button on the Toolbox.
The cursor changes to a plus sign.
2. Place the cursor where you want to start your polyline or polygon.
310
Creating Pictures
3. Click once for each point you want in the polyline or polygon. Double-click to end the shape.
TIP: To add multiple polylines or polygons, double-click the appropriate button on the
Toolbox. When you are done adding the objects, press ESC, click another button, or click the
pointer selection tool in the Toolbox.
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the Arc, Chord, or Pie
button.
-Or-
In Ribbon view, on the Insert tab, in the Shapes group, click Shapes, and then click the Arc,
Chord, or Pie.
-Or-
If the Toolbox is enabled, click the button on the Toolbox.
The cursor changes to a plus sign.
2. Position the cursor where you want the first point of the shape to appear and click the mouse.
3. Drag the cursor where you want the second point of the shape to appear and click the mouse.
4. Move the cursor to define the height and width of the shape and click again.
TIP: To add multiple arcs, chords, or pies, double-click the appropriate button on the
Toolbox. When you are done adding the objects, press ESC, click another button, or click the
pointer selection tool in the Toolbox.
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the Variable Object
button.
-Or-
In Ribbon view, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click Variable.
-Or-
If the Toolbox is enabled, click the Variable Object button on the Toolbox.
2. Complete the fields on the Create a Variable Object dialog box. For more information on
these fields, click Help.
1. In Classic view, in the iFIX WorkSpace, on the Insert menu, click the OLE Object.
311
Creating Pictures
-Or-
In Ribbon View, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click OLE Object.
2. Select the Create from File option.
3. In the File field, enter a directory path and file name, or click Browse to search available
drives for a file.
1. In Classic view, in the iFIX WorkSpace, on the Insert menu, click the OLE Object.
-Or-
In Ribbon View, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click OLE Object.
2. Select the Create New option.
3. In the Object Type list box, double-click the object you want to create.
1. In Classic view, in the iFIX WorkSpace, on the Insert menu, click the OLE Object.
-Or-
In Ribbon View, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click OLE Object.
2. Select the Create Control option.
3. Click OK to create the control.
1. In Classic view, in the iFIX WorkSpace, on the Shapes toolbar, click the Timer Object button.
-Or-
In Ribbon view, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click Timer.
-Or-
If the Toolbox is enabled, click the Timer button on the Toolbox.
2. Complete the fields on the Create a Timer Object dialog box.
312
Creating Pictures
1. In Classic view, on the Shapes toolbar, click the Event Object button.
-Or-
In Ribbon view, from the Insert tab, in the Objects/Links group, click Objects/Links, and then
click Event.
-Or-
If the Toolbox is enabled, click the Event Object button on the Toolbox.
2. Complete the fields on the Event Object dialog box.
313
Creating Pictures
To select one or more commands using the Multiple Command Script Wizard:
1. In the Basic Animation dialog box, click the Click button or select the Command check box.
The Multiple Command Script Wizard appears.
2. Choose a command from the Select Action to Append list. The Expert associated with the
command you chose appears.
3. Complete the Expert with your desired settings and information.
4. Click OK. The Expert closes and appears in the Configured Actions list box of the Multiple
Command Script Wizard.
5. Optionally, repeat steps 2-4 if you want to add additional commands to your scripted
command sequence.
6. When you have finished choosing your command sequence, click OK to return to the Basic
Animation dialog box.
Manipulating Objects
In the Proficy iFIX WorkSpace, you can perform the following steps to manipulate objects:
314
Creating Pictures
Moving Objects
To move an object:
315
Creating Pictures
1. In the iFIX WorkSpace, right-click the object you want to copy, and click Copy.
2. Click anywhere in the picture to de-select the object.
3. Right-click the picture and select Paste.
4. Move the object to where you want it in the picture.
TIPS:
• If you want to copy and paste a Windows Metafile (WMF) from another application and
retain its group properties in the iFIX WorkSpace, do not use the right-click Cut and Paste
options. If you do, the pasted object will not be a grouped object, and instead will be a flat
Bitmap.
• To insert a WMF as grouped object, you can use Microsoft Excel . In Excel, use the Insert
menu to insert the WMF picture into a new spreadsheet. Right-click the picture and select
Edit Picture. A message box appears requesting that you convert the picture to a Microsoft
drawing object. Click Yes, and then copy the converted object from Excel. In the iFIX
WorkSpace, and select Paste > Paste Special. From the Paste Special dialog box, select
Enhanced Metafile and click OK. The grouped object should now appear in your picture.
Renaming Objects
To rename objects:
1. In the iFIX WorkSpace system tree, right-click the object and choose Property Window. The
Properties dialog box appears.
2. Place the cursor in the second column of the Name row and enter a name.
Rotating Objects
To rotate an object:
1. In the iFIX WorkSpace, right-click the object you want to rotate and choose Rotate from the
pop-up menu that appears.
2. Click and drag one of the rotation handles in the direction that you want to rotate the object.
1. In the iFIX WorkSpace, right-click the object you want to rotate and choose Rotate from the
pop-up menu that appears.
2. Click and drag the object’s center of rotation and move it to the desired location in your
picture. The cursor becomes a crosshair.
3. To relocate the object’s original center of rotation, click the current center of rotation and
316
Creating Pictures
Reshaping Objects
To reshape an object:
1. In the iFIX WorkSpace, select the object. Reshape handles appear around the object.
2. Click and drag a reshape cursor. As you drag, the object changes shape.
1. In the iFIX WorkSpace, right-click the object, point to Color, and choose Fade.
2. In the Fade Type area, select the fade type you want to apply to the object.
- Or -
If the object already has a gradient style applied to it, right-click the object, point to Fade Type
and choose the fade type you want to apply.
NOTE: Selecting a fade type in the Select FadeColor dialog box automatically sets the object’s
fill style to Gradient, regardless of the setting in the User Preferences dialog box.
1. In the iFIX WorkSpace, right-click the object, point to Color, and choose Fade. The Select
FadeColor dialog box appears.
2. Move the Gradient Angle slider to change the angle of the gradient. The gradient angle moves
around the shape in a counter-clockwise direction, starting from the right side of the shape, as
you increase the angle.
NOTE: Changing the gradient angle has no effect on a radial or concentric fade type.
Gradient angle applies only to the linear and reflected fade types.
3. Click OK.
1. In the iFIX WorkSpace, control-click the lines you want to intersect with each other.
2. In Classic view, on the CAD Toolbar, click the Extend Lines button.
-Or-
In Ribbon view, on the Format tab, in the Picture group, click Drawing Tools, and then click
Extend Lines.
317
Creating Pictures
1. In the iFIX WorkSpace, control-click the intersected lines you want to trim.
2. In Classic view, on the CAD Toolbar, click the Trim Lines button.
-Or-
In Ribbon view, on the Format tab, in the Picture group, click Drawing Tools, and then click
Trim Lines.
1. In the iFIX WorkSpace, control-click the lines you want to make horizontal.
2. In Classic view, on the CAD Toolbar, click the Make Lines Horizontal button.
-Or-
In Ribbon view, on the Format tab, in the Picture group, click Drawing Tools, and then click
Make Lines Horizontal.
1. In the iFIX WorkSpace, control-click the lines you want to make vertical.
2. In Classic view, on the CAD Toolbar, click the Make Lines Vertical button.
-Or-
In Ribbon view, on the Format tab, in the Picture group, click Drawing Tools, and then click
Make Lines Vertical.
1. In the iFIX WorkSpace, control-click the lines you want to convert to a polyline.
2. In Classic view, on the CAD Toolbar, click the Convert Lines to Polyline button.
-Or-
In Ribbon View, on the Format tab, in the Picture group, click Drawing Tools, and then click
Convert Lines to Polyline.
1. In the iFIX WorkSpace, control-click the lines or polylines you want to convert to pipes.
318
Creating Pictures
2. In Classic view, on the CAD Toolbar, click the Convert Lines and Polylines to Pipe button.
-Or-
In Ribbon view, on the Format tab, in the Picture group, click Drawing Tools, and then click
Convert Lines and Polylines to Pipe.
• In the iFIX WorkSpace, right-click the line or polyline you want to convert to a pipe and
choose Convert to Pipe.
1. In the iFIX WorkSpace, select the pipe object(s) you want to modify.
2. In Classic view, on the CAD Toolbar, click the Modify Pipe button.
- Or -
In Ribbon view, from the Format tab, in the Styles group, in the Pipe list, click Modify Pipe
Characteristics.
- Or -
- Or -
- Or -
Control-click multiple pipes and in Classic View, click the Modify Pipe button on the CAD
toolbar. In Ribbon view, from the Format tab, in the Styles group, in the Pipe list, click Modify
Pipe Characteristics.
NOTE: The changes you make are applied to all of the selected pipe objects.
319
Creating Pictures
1. In the iFIX WorkSpace, select the shape object you want to add connection points to.
2. In Classic view, on the CAD Toolbar, click the Add Connection Point button.
-Or-
In Ribbon view, on the Format tab, in the Picture group, click Drawing Tools, and then click
Add Connection Point.
3. Add the required connection points to the shape object.
NOTE: If the Always Show Connection Nodes check box on the User Preferences dialog box is
selected, the default connection points and points that you add to shapes are always visible. If
this check box is cleared, the connection points are not visible, but can be displayed either
when you select a connector and move it towards the shape to anchor it to a certain connection
point on the shape, or, in Classic view, by selecting the shape and clicking either the Add
Connection Point button or Delete Connection Point button on the CAD Toolbar. In Ribbon
view, select the shape and on the Format tab, in the Picture group, in the Drawing Tools list,
click either Add Connection Point or Delete Connection Point.
1. In the iFIX WorkSpace, select the shape object you want to delete connection points from.
2. In Classic view, on the CAD Toolbar, click the Delete Connection Point button.
-Or-
In Ribbon View, on the Format tab, in the Picture group, click Drawing Tools, and then click
Delete Connection Point.
3. Delete the connection points, as required.
1. In Classic view, in the iFIX WorkSpace, on the CAD Toolbar, click the line connector button
you want to use to connect your shapes.
-Or-
In Ribbon view, on the Insert tab, in the Connectors group, click Connectors, and then click
the desired line connector.
You can choose from the Line Connector Tool, the Right Angle Line Connector, or the Pipe
Connector.
2. Draw a connector between two shapes.
3. Select the connector. The ends of the connector change to green squares.
4. Drag the end of the connector to the connection point. The connector end changes to a red
square when it is anchored to the connection point. If it is not anchored to the connection
point, it stays green.
320
Creating Pictures
NOTE: When you are anchoring a connector object, it is automatically sent to the back of the
object you are anchoring it to. The connector handles, however, are still visible and can be
selected and moved. When the anchoring process is completed, you can right-click the
connector object and choose Bring to Front.
5. Repeat steps 3 and 4 to anchor the connector to the second shape. The shapes can be moved
around the picture but remain connected. The connector stretches and reshapes as the shapes
are moved.
1. In the iFIX WorkSpace, right-click the polygon or polyline and choose Add Point.
2. Position the cursor between two of the object’s points. Make sure the cursor is black or
partially black.
3. Click the mouse to add the new point.
1. In the iFIX WorkSpace, right-click the polygon or polyline and choose Delete Point.
2. Position the cursor over the point you want to delete. Make sure the cursor is black.
3. Click the mouse to delete the point.
To split a polyline:
1. In the iFIX WorkSpace, right-click the polyline you want to split and choose Split Polyline.
The cursor becomes a splitting cursor. When you are close to the polyline, the splitting cursor
changes to black.
2. Click the spot on the polyline where you want to split it. New reshape handles appear on one
piece of the split polyline. You can use these handles to reshape the polyline or move it to a
new location in the picture.
NOTE: When you split a polyline or pipe, you create a new object. Therefore, if you undo a
polyline or pipe split, the new object is deleted first and you must perform a second undo
action to revert to the original object.
To split a pipe:
1. In the iFIX WorkSpace, right-click the pipe you want to split and choose Split Pipe. The
cursor becomes a splitting cursor. When you are inside the edges of the pipe, the splitting
cursor changes color.
2. Click the spot on the pipe where you want to split it. New reshape handles appear on one
piece of the split pipe. You can use these handles to reshape the pipe or move it to a new
321
Creating Pictures
• In the iFIX WorkSpace, right-click the object and do one of the following:
• Select the desired property from the pop-up menu.
• Select Property Window from the pop-up menu and enter a property value in the
second column of the Properties Window.
322
Creating Pictures
Flipping Objects
To flip an object:
323
Creating Pictures
1. In the iFIX WorkSpace run-time environment, select the object you want to view the Tag
Status picture for.
2. Right-click the object and choose Tag Status. The Tag Status picture appears.
To view a Tag Status picture from the Tag Control Panel picture:
1. In the iFIX WorkSpace run-time environment, select the object(s) you want to view Tag
Status pictures for.
2. Right-click the objects and choose Tag Status. Another menu appears listing the first tag
found and the Tag Control Panel item.
NOTE: When you select multiple objects, the first associated tag of the first object selected is
displayed in the right-click menu.
3. Choose Tag Control Panel. The Tag Control Panel picture appears.
4. Click the Tag Status button for the Tag Status picture you want to view.
1. In the iFIX WorkSpace run-time environment, select the object you want to view Tag Status
picture for.
2. Right-click the object and choose Tag Status. The Tag Status picture appears.
3. Click the Quick Trend chart to select it, then right-click and choose Quick Trend. The Quick
Trend picture for the tag appears.
NOTE: Only tags that have an F_CV field associated with it will display a Quick Trend chart
in the Tag Status picture.
324
Creating Pictures
1. In the iFIX WorkSpace run-time environment, select the object you want to view the Quick
Trend picture for.
2. Right-click the object and choose Quick Trend. The Quick Trend picture appears, displaying
up to eight pens for the associated database tags.
NOTE: You can also select multiple objects and view a single Quick Trend picture for up to
eight tags.
To view a Quick Trend picture from the Tag Control Panel picture:
1. In the iFIX WorkSpace run-time environment, select the object(s) you want to view Quick
Trend pictures for.
2. Right-click the objects and choose Tag Status. Another menu appears listing the first tag
found and the Tag Control Panel item.
NOTE: When you select multiple objects, the first associated tag of the first object selected is
displayed in the right-click menu.
3. Choose Tag Control Panel. The Tag Control Panel picture appears.
4. Click the Quick Trend button for the Quick Trend picture you want to view.
1. In the iFIX WorkSpace run-time environment, select the object(s) you want to view a Tag
Control Panel picture for.
2. Right-click the objects and choose Tag Status. Another menu appears listing the first tag
found and the Tag Control Panel item.
NOTE: When you select multiple objects, the first associated tag of the first object selected is
displayed in the right-click menu.
3. Choose Tag Control Panel. The Tag Control Panel picture appears.
4. You can view Tag Status and Quick Trend pictures for the tags associated with the object(s)
you selected, as well as other tag information.
1. In the Tag Control Panel picture, click the Add Row button. The Expression Builder appears
with only the FIX Database tab available.
2. Use the Expression Builder to create a tag whose information you want to view.
3. Click OK on the Expression Builder. The tag is added to the list on the Tag Control Panel
325
Creating Pictures
picture.
• In the Tag Control Panel picture, select the tag you want to delete and click the Delete Selected
Row(s) button.
NOTE: A tag that is associated with an object is removed only from the Tag Control Panel
picture; it is not removed from the object.
1. In the Tag Control Panel picture in WorkSpace's runtime environment, select the tags you
want to save to a tag list, by holding down the Control key and clicking each row you want to
include in the list.
2. Click the Save Tag List button. The Save As dialog box appears.
3. Save the tag list to the location you want.
1. In the Tag Control Panel picture in WorkSpace's runtime environment, click the Load Tag
List button. The Open dialog box appears.
2. Locate the tag list you want to load and click Open. The tag list you selected is displayed in
the Tag Control Panel picture, overwriting the current list.
1. In Ribbon view, in run mode, click the Historical tab, and then click Configuration. The
Global Time Control dialog box appears.
2. In the Time Definition area, enter the Start Time.
3. Either choose an End Time or define the Duration of the display:
• To set the End Time, in the End Time area, enter a date.
• To set the Duration:
a. Select the Define Duration check box.
b. In the Days list, select the number of days.
c. Select the number of hours, minutes and seconds in their respective lists.
4. In the Historical Update Rate area, select the number of hours, minutes, and seconds from
their respective list, for the update rate.
5. In the Scroll Rates area, either set the scroll rate as a percentage of the duration or as a fixed
326
Creating Pictures
amount.
• To set the scroll rate as a percentage of the duration:
. Select Scroll as % of Duration check box.
a. In the Slow list, enter a value for the slow scroll speed.
b. In the Fast list, enter a value for the fast scroll speed.
• To set the scroll rate as a fixed amount:
. If necessary, clear the Scroll as % of Duration check box.
a. In the Slow area, select the unit of measurement: days, hours, minutes, or
seconds.
b. Enter the value for the unit selected.
c. In the Fast area, select the unit of measurement: days, hours, minutes, or
seconds.
d. Enter the value for the unit selected.
6. Click OK to apply changes to all open pictures.
To hide the historical datalink time stamp for all historical datalinks:
NOTE: The following procedure applies only to historical datalinks created after you
perform this procedure. Existing historical datalinks will not be affected.
1. In Classic view, in the iFIX WorkSpace, from the WorkSpace menu, select User Preferences.
-Or-
In Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and then click User
Preferences.
2. Click the Shape Preferences tab.
3. In the Historical Datalink area, clear the Show Timestamp With Data check box.
To hide the historical datalink time stamp for a single historical datalink:
Method 1
1. Double-click the historical datalink. The Historical Datalink dialog box appears.
2. Clear the Show Timestamp With Data check box.
3. Click OK.
Method 2
1. From the right-mouse menu of the historical datalink, select Property Window. The Property
Window appears.
2. For the ShowTimeStamp property, select False.
327
Creating Pictures
328
Creating Pictures
4. In the Style area, select a historical mode from the Historical Mode field.
Naming a Chart
To name a chart:
329
Creating Pictures
4. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the General tab and in the Description field, enter a chart description.
330
Creating Pictures
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Chart Style tab and in the Miscellaneous area, select Show Data Source Legend.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Chart Style tab and in the Miscellaneous area, select Show Plotting Style Legend.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the General tab, and in the Main Title field, enter a title for the chart.
3. Optionally, in the Subtitle field, enter a subtitle for the chart.
4. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Plotting Style tab and in the Line Style area, click the desired color. To create a
custom color, double-click a color.
NOTE: The selected color is applied to the X and Y axis markers, Data Sources table items,
and graph lines and points.
3. Line Charts Only: In the Chart Plotting Style area, select the desired style.
4. Line Charts Only: Select a Point Type.
NOTE: Point types appear only if the Chart Plotting Style includes points, such as Point +
331
Creating Pictures
6. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the General tab and, in the Chart Update Rate field, enter a refresh rate in seconds.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Chart Style tab and in the Border Style area, click the desired border style.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Subsets tab and in the Scrolling Subsets area, choose the number of subsets to view
in one group.
3. To add a subset to a graph select it from the Baseline Subsets to Graph list.
4. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Data Sources tab and in the Data Sources List do one of the following:
332
Creating Pictures
a. In the Start Time area, in the Date section, select either Fixed Date or Days Before
Now and enter the desired date or value.
b. In the Time section, select either Fixed Time or Duration Before Now and enter the
desired time or value.
c. Optionally, to configure the chart to open at the Fixed Time and to ignore changes to
the time zone in the Date and Time Properties dialog box in the Control Panel, select
Lock Time.
d. Optionally, to adjust for daylight saving time, if it is not already selected, click
Adjust for Daylight Savings Time and select a time zone from the Time Zone list.
e. In the Interval section, in the Time field, enter the desired interval.
NOTE: The value for the Interval field cannot exceed the value entered in the
Duration area on the General Tab.
f. To apply all of the preceding settings to all historical data sources, select Apply To
All Data Sources, and then click Apply.
10. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Axis tab and in the X Axis Label field, enter a label for the X axis.
3. In the Y Axis field, enter a label for the Y axis.
4. Line/Multiline Charts only: Select Linear or Log format for the Y axis units.
5. To use automatically generated limits for the Y axis, select Use Data Source Limits.
333
Creating Pictures
6. To specify which values you want to set for the Y axis, clear the Use Data Source Limits
check box and select Min, Max, or Min/Max.
7. Enter the desired value in the Min and/or Max fields.
8. Select Auto if you want the chart to dynamically resize to the values plotted.
NOTE: Auto is available only if Use Data Source Limits is selected.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Chart Style tab and in the Grid Lines area, click Grid in Front of Data to make the
grid lines appear in front of the data.
3. Click which, if any, grid lines you want to display on the chart.
4. Click the desired style for the grid lines.
5. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Color tab and in the Viewing Style area, select Color, Monochrome, or
Monochrome + Symbols.
3. To design your own custom color graph:
a. In the Graph Attributes area, click the attribute you want to change the color for.
b. Click the desired color for the selected attribute. To create a custom color, double-
click a color.
c. Repeat steps a and b until you have modified all desired attributes.
4. To use a pre-set style:
a. Select Bitmap/Gradient Styles.
b. Click the desired Bitmap/Gradient style.
5. Click OK.
334
Creating Pictures
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Data Sources tab and then the Legend tab.
3. In the Items area, select the items that you want to appear in the data sources Legend.
4. To apply your selections to all data sources, select Apply To All Data Sources.
5. To change the order in which the selected items appear, on the Chart Style tab, in the Legend
Column Width area, in the Order list, select the item you want to move. Use the Up arrow to
move the item's location to the right or the Down arrow to move the item's location to the left.
6. To change the width of a data source legend column, in the Legend Column Width area, enter
the desired column width in the corresponding column field. For example, to change the
width of the Source column of the data source legend, enter the desired width in the Source
field.
7. In the Miscellaneous area, select Show Data Source Legend.
8. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the General tab.
3. Select the attributes (Hightlightable, Selectable, Modifiable), if any, you want to permit at run
time.
4. In the Zooming area, select the desired zoom function.
5. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the General tab and in the Appearance area, select Display Milliseconds.
3. Click OK.
335
Creating Pictures
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the General tab and in the Appearance area, select Enable Advanced Graphics.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click Export.
3. In the Export area, select the desired file format type.
4. In the Export Destination area, select the desired export location. If you chose File, click
Browse to set the destination.
5. For Export options EMF, WMF, BMP, JPG, and PNG only, configure the export size. To do
so:
a. If applicable, select the unit of measure.
b. Enter the export size in the Width fields.
c. Select the DPI.
d. If desired, click Large Font.
6. Click Export. If you selected the EMF, WMF, BMP, JPG, or PNG formats for export, your
data is exported. Otherwise, the Exporting Enhanced Chart dialog box appears.
7. On the Exporting Enhanced Chart dialog box, in the Export What area, select whether you
want to export only the data or the data with its labels.
8. In the Export Style area, choose to export the data in either list or table format. If you chose
List, in the Delimited area, select either Tab or Comma. If you chose Table, in the Row vs
Column area, select either Subsets/Points or Points/Subsets.
9. In the Numeric Precision area, choose your level of precision.
10. Click Export.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Chart Style tab and in the Miscellaneous area, select Extend Y Axis Ticks.
3. Click OK.
336
Creating Pictures
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the General tab and, in the Object Name field, enter a name for the chart.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Chart Style tab and in the Miscellaneous area, clear the Show Plotting Style Legend
check box.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Chart Style tab and in the Miscellaneous area, clear the Show Data Source Legend
check box.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Font tab and in the Chart Font Size area, select a size for the chart's fonts.
3. In the Font Styles area, select a font type for the Main Title, Sub-Title, Subset / Point / Axis
Labels, and Table Data.
4. Optionally, select a font face for the Main Title, Sub-Title, Subset / Point / Axis Labels, and
Table Data.
NOTE: To help you visualize how your choices look, an example is displayed in the Sample
field.
5. Click OK.
337
Creating Pictures
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Chart Style tab and in the Numeric Precision area, select the desired level of
precision.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Chart Style tab and in the Display field, select the desired data display format.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Plotting Style tab and in the Chart Plotting Style area, select a plotting style that
includes "Points" in the name.
3. Select a Point Type for each data source.
4. Choose a color for each data source.
5. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the Chart Style tab and in the Miscellaneous area, select Mark Data Points.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
338
Creating Pictures
2. Click the Chart Style tab and in the Miscellaneous area, select Include Data Labels.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the General tab and in the Appearance area, select Show Time Cursor.
3. Click OK.
1. In the iFIX WorkSpace picture, double-click the chart. The Enhanced Chart Configuration
dialog box appears.
2. Click the General tab and in the Appearance area, select Show Time Cursor Tool Tips.
3. Click OK.
339
Creating Pictures
In Ribbon view, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click Datalink.
-Or-
If the Toolbox is enabled, click the Datalink button on the Toolbox.
The cursor changes to a plus sign.
3. Click and drag the mouse to define the size of the Data link. The Datalink dialog box appears.
4. In the Source field, enter the data source Fix32.node.System.A_SACPR.
5. From the Type drop down menu in the Data Entry area, select In-Place.
6. Complete the remainder of the Datalink dialog box.
7. Switch to the run-time environment and enter the SCADA server’s alarm priority.
• In Classic view, in the iFIX WorkSpace, from the Shapes toolbar, select the Alarm Summary
button.
-Or-
In Ribbon view, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click Alarm Summary.
-Or-
If the Toolbox is enabled, click the Alarm Summary button on the Toolbox.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Column tab.
3. From the Available Columns list, double-click the user-defined field you want to add to the
spreadsheet.
4. In the user-defined field, assign the A_ALMOCCUR block field. In the user-defined field
name, type a name for the column header.
340
Creating Pictures
In the Proficy iFIX WorkSpace, you can perform the following steps to change the general appearance
of your working area:
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Display tab.
3. Select Blink Unack Alarms.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Column tab.
3. Double-click the columns in the Available Columns box to add them to the object.
4. Double-click the columns in the Selected Columns box to remove them from the object.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Column tab.
3. Select the column you want to move from the Selected Columns box.
4. Click the up arrow button to move the column left in the spreadsheet.
5. Click the down arrow button to move the column right in the spreadsheet.
341
Creating Pictures
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Column tab.
3. From the Available Columns list, double-click the user-defined field you want to add to the
spreadsheet.
4. Enter a block field name you want to assign to the user-defined field in the User Definable
Columns area and click the <> button. The maximum length of the field name is 50
characters.
To show or hide column headings, scroll bars, row numbers, grid lines, or the status
bar:
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Display tab.
3. Select the check boxes of the items you want to display.
4. Clear the check boxes of the items you want to hide.
In the Proficy iFIX WorkSpace, you can perform the following steps with fonts, colors, and styles:
To configure fonts for the Alarm Summary column headings and status bar:
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. On the General tab, in the Fonts area, click the browse (...) button next to either the Alarm
Column Headings or Status bar field. The font dialog box appears.
3. Select the font name, style, size, and/or script that you want to use.
4. Optionally, repeat steps 2 and 3 for the other configurable field.
342
Creating Pictures
5. Click OK to accept your changes and close the Font dialog box.
6. In the Alarm Summary Configuration dialog box, click Apply.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Color tab.
3. Select the Unacknowledged Alarm Color check box to enable it.
4. Click the option’s color button. The Select Color dialog box appears.
5. Select a color for unacknowledged alarms, then click OK.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Color tab.
3. Select the font button for the alarm you want to configure.
4. Select the font and style from the dialog box that appears.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Color tab.
3. In the Foreground Alarm Color area, double-click the color of an alarm. The Select Color
dialog box appears.
4. Select a new color for the alarm and then click OK.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Color tab.
3. In the Background Alarm Color area, next to the alarm priority or status, double-click the
343
Creating Pictures
In the Proficy iFIX WorkSpace, you can perform the following steps with alarms:
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Filter tab.
3. Select the column you want to add to your filter condition.
4. Click Add Filter Condition and complete the dialog box that appears.
NOTE: The Alarm Summary object supports up to ten filter conditions.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Filter tab.
3. Select the portion of the filter condition you want to modify.
4. Click OR, AND, or NOT to change the Boolean operator.
344
Creating Pictures
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Sort tab.
3. Select the attribute you want to sort by.
4. Select whether you want to sort alarms in ascending or descending order.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Filter tab.
3. Double-click each column you want to filter on and complete the dialog box that appears.
NOTE: The Alarm Summary object supports up to ten filter conditions.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Filter tab.
3. From the Display Alarms Where box, select the portion of the filter condition you want to
delete and click Remove.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Filter tab.
3. From the Display Alarms Where box, highlight the portion of the filter condition where you
want to insert a new condition.
4. From the Fields box, select the column you want to add to the filter condition.
5. Click Insert Filter Condition and complete the dialog box that appears.
NOTE: The Alarm Summary object supports up to ten filter conditions.
345
Creating Pictures
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Filter tab.
3. From the Display Alarms Where box, select the portion of the filter condition you want to
modify.
4. Click Modify. The Modify Area dialog box appears.
5. In the Modify Area dialog box, enter the required changes and click OK.
Acknowledging Alarms
In the Proficy iFIX WorkSpace, you can perform the following steps with alarm acknowledgments:
• For a single alarm, right-click the object in the iFIX WorkSpace and select Acknowledge
from the pop-up menu.
• For all alarms, right-click the object in the iFIX WorkSpace and select Acknowledge All from
the pop-up menu.
• For all alarms currently displayed on the screen, right-click the object in the iFIX WorkSpace
and select Acknowledge Page from the pop-up menu.
346
Creating Pictures
4. In the Source field, enter the data source you want to use. Use the A_CUALM field name
when entering a data source to show the current alarm.
5. Complete the remainder of the Datalink dialog box.
In the Proficy iFIX WorkSpace, you can perform the following steps with the default settings:
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Click Reset. The default settings get applied to the selected Alarm Summary object.
TIP: Only the settings in the selected Alarm Summary object get restored. If you want other
Alarm Summary objects that you create after this one to also use the same default settings,
click Save. This saves your Alarm Summary settings to the AlarmSummary.ini file in the
LOCAL folder (by default: C:\Program Files\Proficy\Proficy iFIX\LOCAL), so that
subsequent Alarm Summary objects will apply these default settings when you first drop the
object into your picture.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Click Save. This saves the currently selected Alarm Summary object's settings into the
AlarmSummary.ini file in the LOCAL folder (by default: C:\Program Files\Proficy\Proficy
iFIX\LOCAL), so that subsequent Alarm Summary objects that you add to your pictures will
use these settings by default.
In the Proficy iFIX WorkSpace, you can perform the following steps with the run-time settings and
properties:
347
Creating Pictures
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Display tab.
3. Enter the number of seconds the Alarm Summary object should wait before deselecting an
alarm.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Operator tab.
3. Select the check box of each property you want to enable.
4. Clear the check box of any property you want to disable.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Display tab.
3. Enter the number of seconds the Alarm Summary object should wait before reading its queue
for new alarms.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Display tab.
3. Enter the rate, in seconds, that the Alarm Summary object should flash unacknowledged
alarms.
348
Creating Pictures
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Display tab.
3. Enter the number of seconds the Alarm Summary object should wait before updating the
alarm values displayed on the screen.
To show the latched or current alarm status in the Alarm Summary window:
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Display tab.
3. Select the Show Current Alarm Status or Show Latched Alarm Status option.
4. Click Apply.
1. In the iFIX WorkSpace, double-click the Alarm Summary object. The Alarm Summary
Configuration dialog box appears.
2. Select the Display tab.
3. Select the Reverse Colors on Acknowledge tab check box.
NOTE: This check box is available only when the Blink Unack Alarms is selected. When you
select this check box, the Blink Rate changes to 0. The foreground and background colors are
defined on the Color tab.
4. Click Apply.
349
Creating Pictures
Ungrouping Objects
To ungroup an object:
1. In the iFIX WorkSpace, right-click the group you want to animate, and select Animations.
The Basic Animation dialog box appears.
2. Click the appropriate Expert button.
3. Enter the configuration information for the Animation Expert.
1. In the iFIX WorkSpace, select the group containing the object you want to modify.
2. Right-click the group and choose Enter DrillDown. A box appears around the group.
3. Select the object in the group you want to change.
4. Make the changes you require. When finished, deselect the object and the group. The box
disappears.
350
Creating Pictures
1. In the iFIX WorkSpace, select the object you want to set a layer for.
2. In Classic view, on the Tools toolbar, click the Set Layer button.
-Or-
In Ribbon view, on the Format tab, in the Picture group, click Layers, and then click Set
Layer.
-Or-
If the Toolbox is enabled, click the Set Layer button on the Toolbox.
3. Click the button that represents the number of the layer you want to assign. To assign multiple
layers, select the Allow for Multiple Layers check box and then click the numbered buttons,
or click Select All. If you make a mistake, click Deselect All and repeat this step.
4. Click OK.
1. In Classic view, in the iFIX WorkSpace Tools toolbar, click the Display Layers button.
-Or-
In Ribbon view, on the Format tab, in the Picture group, click Layers, and then click Display
Layer.
-Or-
If the Toolbox is enabled, click the Display Layers button on the Toolbox.
2. Click the button that represents the layer you want to display. To select all possible layers to
be displayed, click Select All Layers. If you make a mistake, click Deselect All Layers and
repeat this step.
3. Click OK.
Using Color
In the Proficy iFIX WorkSpace, you can perform the following steps with colors:
351
Creating Pictures
The following sections provide information about color selection for modal windows.
1. In the iFIX WorkSpace, right-click the object, point to Color, and choose Fade. The Select
FadeColor dialog box appears.
2. Click the Fade button. The Select Color dialog box appears.
3. Select a color and click OK. To select a name, click the Name tab and select a color name
from the list.
1. In the iFIX WorkSpace, right-click the object, point to Color, and choose Foreground. The
Select ForegroundColor dialog box appears.
2. Select a color and click OK. To select a name, click the Name tab and select a color name
from the list.
1. In the iFIX WorkSpace, right-click the object, point to Color, and choose Foreground. The
Select ForegroundColor dialog box appears.
2. Click the Foreground button. The Select Color dialog box appears.
3. Select a color and click OK. To select a name, click the Name tab and select a color name
352
Creating Pictures
1. In the iFIX WorkSpace, right-click the object, point to Color, and choose Background. The
Select BackgroundColor dialog box appears.
2. Select a color and click OK. To select a name, click the Name tab and select a color name
from the list.
1. In the iFIX WorkSpace, right-click the object, point to Color, and choose Edge. The Select
EdgeColor dialog box appears.
2. Select a color and click OK. To select a name, click the Name tab and select a color name
from the list.
1. In the iFIX WorkSpace, right-click any area in the picture outside of an object and choose
Picture. The Edit Picture dialog box appears.
2. Click the Background Color button. The Select BackgroundColor dialog box appears.
3. Select the color you want and click OK.
1. In the iFIX WorkSpace, right-click any area in the picture outside of an object and choose
Picture.
2. Click the Fade Color button.
3. Select the color you want and click OK.
1. In the iFIX WorkSpace, right-click any area in the picture outside of an object and choose
Picture. The Edit Picture dialog box appears.
2. Select the Gradient enabled check box and then select the fade type you want to apply to the
gradient.
3. Move the Blend slider to increase or decrease the amount of fade color you want applied to
the fade type. The higher the percentage, the more fade color is visible.
353
Creating Pictures
1. In the iFIX WorkSpace, right-click the object, point to Color, and choose Fade. The Select
FadeColor dialog box appears.
2. Move the Blend slider to increase or decrease the amount of fade color you want applied to
the fade type. The higher the percentage, the more fade color is visible.
1. In the iFIX WorkSpace, right-click an object, point to Color, and choose Fade, Foreground,
Background, or Edge. The applicable Select Color dialog box appears.
- Or -
Select an object and click the Color button in the Toolbox. The Select Color dialog box
appears.
2. In the Color Set field, select a color set from the list box.
The following sections provide information about color selection for modeless windows.
1. In Classic view, in the iFIX WorkSpace, on the Tools toolbar, click the Color button.
-Or-
In Ribbon view, on the Format tab, in the Styles group, click Color Selection.
-Or-
If the Toolbox is enabled, click the Color button on the Toolbox.
354
Creating Pictures
2. In the Property field, select the property you want. Use the drop-down menu if necessary.
3. Select a color from the Color Selection dialog box.
1. In the iFIX WorkSpace, right-click an object, point to Color, and choose Fade, Foreground,
Background, or Edge. The applicable Select Color dialog box appears.
- Or -
Select an object and click the Color button in the Toolbox. The Select Color dialog box
appears.
2. In the Color Set field, select a color set from the list box.
1. In Classic view, in the iFIX WorkSpace, on the Tools toolbar, click the Color button.
-Or-
In Ribbon view, on the Format tab, in the Styles group, click Color Selection.
-Or-
If the Toolbox is enabled, click the Color button on the Toolbox.
2. Click either the Color tab to display the color palette, or the Name tab to display a list of
colors.
3. Click New Color Set.
4. Enter a palette name in the Name field and click OK. The palette name is added to the Color
Set list box.
1. In Classic view, in the iFIX WorkSpace, on the Tools toolbar, click the Color button.
-Or-
Ribbon view, on the Format tab, in the Styles group, click Color Selection.
-Or-
If the Toolbox is enabled, click the Color button on the Toolbox.
2. From the Color Set field, select a color set.
3. Click the Customize Color button.
NOTE: The Customize Color button is not available if you selected System Default as the
355
Creating Pictures
color set.
4. Click a location in the palette that most closely represents the color you want.
5. Specify the shade of the color spectrum by clicking the mixer bar to the right of the palette
and click OK. For a more precise selection, adjust the slider by clicking and dragging it.
6. Enter a specific name to identify your color.
356
Creating Pictures
• Wizards
• Experts
• Dynamos
• Global Subroutines
• Toolbars
• Wizards consist of a series of dialog boxes that guide you through a process and engage you
in dialog that helps you understand that process.
• Experts consist of one dialog box that requires minimum input to quickly perform a task.
They provide an easier way to animate objects or execute scripts, tasks that you can also
accomplish using the Basic Animations dialog box.
iFIX Wizards and Experts were created to help both advanced and novice users. Advanced users can
carry the process to additional steps, perhaps by using a powerful feature of VBA, re-entering an
Expert after performing another function, or learning a new feature by implementing it.
Novice users can run a Wizard or Expert in an effort to complete a more complicated task without
adapting to new concepts or technology. Although the underlying foundation of Wizards and Experts
is Visual Basic, you never need to be exposed to or versed in VBA to use these tools.
Ultimately, employing Wizards and Experts in your picture development means you can complete
desired tasks and enjoy the results.
Running Wizards
iFIX provides the following Wizards:
357
Creating Pictures
Manager.
• Backup and Restore – Access through the iFIX menu on the Programs menu of the Start
menu.
• Create Picture – Access through the Task wizard, using one of the following methods:
• by right-clicking on the Pictures folder in the system tree,
• by selecting New from the File menu in the WorkSpace (Classic view),
• by clicking Picture in the New group, on the Home tab (Ribbon view),
• by clicking the WorkSpace button, selecting new and clicking Picture (Ribbon view),
or
• from one of the following toolbars: Experts, Standard, or Toolbox.
NOTE: To access the Create Picture wizard from the Menu Bar, the Ribbon, the System Tree,
or the Standard toolbar, you must have the Show Picture Wizard from New Picture Menu
check box enabled on the Picture Preferences tab of the User Preferences dialog box.
• Multiple Command Script – Access from the Command category of the Task Wizard, the
Click Event button in the Basic Animation dialog box, or the Run Wizard button in the Key
Macro Editor or Scheduler.
The following table shows how these Wizards can be used in iFIX.
Wizards in iFIX
Resolving a picture Task Wizard Run the Resolve utility. For more information, refer
to the Resolving Pictures section. To learn how to
use the Task Wizard, refer to the Using Experts and
the Task Wizard section of the Understanding iFIX
manual.
Building a database Generate Wizard Add blocks to your database. For more information,
refer to the Working with the Process Database
chapter in the Building a SCADA System manual.
Managing your Backup and Archive all of your iFIX configuration files. For
files Restore Wizard more information, refer to the Backing up and
Restoring Files section of the Understanding iFIX
manual.
Creating a picture Create Picture Set the sizes, locations, and properties of an
or set of pictures Wizard individual picture or a group of pictures. For more
information, refer to the Using the Create Picture
Wizard section in this manual.
358
Creating Pictures
Wizards in iFIX
Running Experts
You can easily access iFIX Experts in the WorkSpace while you are drawing your pictures. In our
online help, Experts are included in procedures to help you expedite your task. For more information
on how to complete the dialog fields in the Expert, use the Help provided with the Expert (in some
instances, you must click the Help button and access a procedures window). The following table shows
some examples of Experts used in iFIX.
To run an Expert, click the appropriate button on the Experts toolbar, complete the dialog fields and
click OK.
iFIX gives you a convenient organizer to access, customize, and run Experts – the Task Wizard. The
Task Wizard allows you to choose a category relating to what action you want to perform, and then
select a task specific to that category. All Experts can be accessed from the Task Wizard, but some are
not available from the Experts toolbar. These Experts can be accessed on the Buttons tabbed page of
the Customize Toolbars dialog box and added to a toolbar. In Ribbon view, all Experts can be accessed
via the Tasks/Experts launch button on the Tools tab in the Tasks/Experts group.
359
Creating Pictures
For more information on adding buttons to a toolbar, refer to the Customizing Toolbars section of the
Understanding iFIX manual.
The following table shows you which Experts are available on the Task Wizard and the Experts
toolbar, and what functions they perform:
iFIX Experts
Visibility From the Tools tab, in the Make an object visible or invisible.
Animations group, click
Visibility.
Edge Color From the Tools tab, in the Change the edge color of an object.
Animations group, click Edge
Color.
Foreground Color From the Tools tab, in the Change the foreground color of an
Animations group, click object.
Foreground Color.
Background Color From the Tools tab, in the Change the background color of an
Animations group, click object.
Background Color.
360
Creating Pictures
iFIX Experts
Create Picture From the Tools tab, in the Create, size, and locate a group of
Wizard Tasks/Experts group, click pictures.
Picture and then click Create
Picture Wizard.
Open Picture From the Tools tab, in the Open a new picture on an object's click
Tasks/Experts group, click event.
Commands and then click
Open Picture.
Close Picture From the Tools tab, in the Close a picture on an object's click
Tasks/Experts group, click event.
Commands and then click
Close Picture.
Replace Picture From the Tools tab, in the Close an open picture and replace with
Tasks/Experts group, click a new picture on an object's click
Commands and then click event.
Replace Picture.
Open Digital Tag From the Tools tab, in the Open a digital point on an object's
Tasks/Experts group, click click event.
Commands and then click
Open Digital Tag.
Close Digital Tag From the Tools tab, in the Close a digital point on an object's
Tasks/Experts group, click click event.
Commands and then click
Close Digital Tag.
Toggle Digital Tag From the Tools tab, in the Toggle a digital point on an object's
Tasks/Experts group, click click event.
Commands and then click
NOTE: In this expert, use the F_CV
Toggle Digital Tag.
field as the data link. Using the A_CV
field may cause unpredictable results.
361
Creating Pictures
iFIX Experts
Alarm Horn From the Tools tab, in the Enable, disable, or silence the alarm
Tasks/Experts group, click horn. Also prompt for alarm horn
Commands and then click status in run mode and toggle the horn
Alarm Horn. status between enable and disable.
The following table shows you the additional Experts available from the Task Wizard (but not from the
Experts toolbar) and what functions they perform:
Write Value to From the Tools tab, in the Write a value you
Tag Tasks/Experts group, click select to the specified
Commands and then Write database tag.
Value to Tag.
Turn Tag Off From the Tools tab, in the Turn a specified
Scan Tasks/Experts group, click database tag off scan.
Commands and then Turn Tag
Off Scan.
362
Creating Pictures
Set Tag Auto From the Tools tab, in the Set a specified
Tasks/Experts group, click database tag to
Commands and then Set Tag automatic.
Auto.
Set Tag Manual From the Tools tab, in the Set a specified
Tasks/Experts group, click database tag to
Commands and then Set Tag manual.
Manual.
Disable Alarm From the Tools tab, in the Disable all new
Tasks/Experts group, click alarms in the
Commands and then Disable specified picture.
Alarms.
Enable Alarm From the Tools tab, in the Enable all new
Tasks/Experts group, click alarms in the
Commands and then Enable specified picture.
Alarms.
363
Creating Pictures
Add Database From the Applications tab, in the Add a new database
Block Process Database group, click block without
Blocks and then click Add opening Database
Database Block. Manager.
Database Save From the Applications tab, in the Save the database.
Process Database group, click
Save Database.
Data Entry Data Entry From the Tools tab, in the Enter the data source
Tasks/Experts group, click that the data entry
Tasks/Experts. Select Data Entry gets written to.
from the Task Categories menu
and Data Entry from the Task
list. Click Perform Task.
Resolve Files From the Tools tab, in the Resolve files before
Tasks/Experts group, click you enter into the
Tasks/Experts. Select Picture run-time
from the Task Categories menu environment.
and Resolve Files from the Task
list. Click Perform Task.
Refresh Rate From the Tools tab, in the Change the refresh
Tasks/Experts group, click rate for a selected
Picture and then click Refresh object or an entire
Rate Expert. picture.
364
Creating Pictures
Export Key From the Tools tab, in the Export all of the key
Macros Tasks/Experts group, click macros in the
Picture and then click Export selected object,
Key Macros. picture, or user
global page to a
.CSV file.
Save Files with From the Tools tab, in the Save thumbnails of
Thumbnail Tasks/Experts group, click existing pictures and
Preference Tasks/Experts. Select Picture dynamo sets.
from the Task Categories menu
and Save Files with Thumbnail
Preference from the Task list.
Click Perform Task.
Report Print Crystal From the Tools tab, in the Prints a specified
Report Tasks/Experts group, click Crystal Report.
Commands and then click Print
Crystal Report.
You can also create your own Experts to help you automate processes that you do often. This can be
done through VBA scripts. For more information on creating your own Experts, refer to the Writing
Scripts manual. To learn how to use the Task Wizard, refer to the Using Experts and the Task Wizard
section of the Understanding iFIX manual.
IMPORTANT: If you are working in a secure environment and using the Electronic Signature option,
you must be aware of the impact of unsigned writes to the process database. Unsigned writes can
originate from scripts Refer to the Implications of Database Writes With Electronic Signature section
of the Using Electronic Signatures manual for detailed information. When you use certain Experts,
such as Toggle Digital, you are prompted to sign if the associated tag is configured for electronic
signature. For complete information on a secure environment and electronic signatures, refer to the
Using Electronic Signatures manual.
Re-entering Experts
All of the Experts in the Animation category of the Task Wizard have re-entrance functionality,
allowing you to exit the Expert, make any changes you want within your picture, and then go back into
the Expert to resume inputting data to complete the task. These Experts include the following:
• Fill
• Foreground Color
• Edge Color
• Background Color
365
Creating Pictures
• Rotate
• Scale
• Visibility
• Position
You can also re-enter the Data Entry Expert, located in the Data Entry category of the Task Wizard.
NOTE: The Data Entry Expert writes a script to a selected object; therefore, it will not retain its re-
entrance functionality if you change the code. Instead, it will act as though there are no data entry
parameters, and will therefore write over the existing script.
Some of the iFIX Experts generate VBA code. Occasionally, a conflict can occur between the VBA
code generated by the Expert and the VBA code for a picture, variable, or globals page because of
naming conflicts. When a conflict like this occurs, the solution is to change the name of your picture,
variable, of globals subroutine.
For example, do not name a picture after one of Data Entry Expert types. Picture names can conflict
with the script variable names used with the Data Entry Expert. For instance, if you name your picture
Pushbutton.grf and also use the Pushbutton data entry method, when you enter run mode, an error
message appears. If you rename the picture, Pushbutton1.grf, the error message does not appear, since
the picture name is now different than the data entry method.
When you open the wizard and select a command, the Expert associated with the command will
appear. The selections you make in the Expert automatically create a VBA script that is run when the
trigger event occurs. Each time you add a command in the wizard, its corresponding Expert will
appear, enabling you to append the Expert's VBA script to the scripts created by the previous
commands in the sequence.
You can use the wizard to delete or re-order commands in the sequence. When you do this, the VBA
script associated with the affected commands will be automatically deleted or re-ordered to reflect the
new sequence displayed in the wizard.
1. In the Key Macro Editor, Scheduler, or the Basic Animation dialog box, access the Multiple
Command Script Wizard.
2. Add one or more commands by either selecting one from the Select Action to Append list, or
clicking the Append Action button to add the currently selected command.
3. Optionally, move a command to a different position in the sequence by selecting it and
clicking the Up or Down arrow button.
4. Optionally, delete a command from the sequence by selecting it and then clicking the Delete
Action button, or delete all commands by clicking the Delete All Actions button.
366
Creating Pictures
5. Optionally, modify a command by clicking the Modify a Selected Action button. When the
Expert for the associated command appears, make your changes to the Expert's settings and
click OK.
NOTES:
• Although the Multiple Command Script Wizard's purpose is to fully automate the VBA
command scripting process, you can manually edit scripts generated by the wizard with the
VB Editor. You may add or edit VBA scripts anywhere before the Scripts Authoring Tool
header line (***** Scripts Authoring Tool *****), or directly between a "WizardEnd" and a
“Wizard[x]=” statement. Do not edit any of the commented areas in the wizard-generated
script. If the Multiple Command Script Wizard detects an improperly customized VBA script,
you may encounter an error.
• The Multiple Command Script Wizard does not check the command sequence to make sure
commands occur in a logical order.
Experts Summary
The following experts are available for use in iFIX.
Animation Experts
• Color Experts
• Fill Expert
• Position Expert
• Rotate Expert
• Scale Expert
• Visibility Expert
• Display Layers Expert
• Set Layer Expert
Command Experts
• Selecting a Command
• Acknowledge Alarm
• Acknowledge All Alarms
• Alarm Horn
• Close Digital Tag
• Close Picture
• Disable Alarm
• Enable Alarm
• Locate Object
• Open Digital Tag
367
Creating Pictures
• Open Picture
• Print Crystal Report
• Ramp Tag Value
• Replace Picture
• Set Tag Auto
• Set Tag Manual
• Toggle Digital Tag
• Toggle Tag Auto/Manual
• Toggle Scan
• Turn Tag Off Scan
• Turn Tag On Scan
• Write Value to Tag
Database Experts
Picture Experts
Report Experts
368
Creating Pictures
Create Objects
• Variable Object
• Timer Object
• Event Object
Animation Experts
The following list summarizes the Animation Experts available in Proficy Pulse:
• Color Experts
• Fill Expert
• Position Expert
• Rotate Expert
• Scale Expert
• Visibility Expert
• Display Layers Expert
• Set Layer Expert
IMPORTANT: Be aware that Historical Animations that use Sample or Interpolated data from
Proficy Historian may display a Lookup or Format error status of “Unknown”, when the local
computer's time is ahead of the Proficy Historian Server's time. (The “Unknown” Lookup or Format
data symbols are defined in the User Preferences, on the Animations Data Error Defaults tab.)
Color Expert
Lets you set the way the selected object(s) color is animated in the runtime environment. There are
three color experts:
Data Source
Allows you to enter the data source that animates the selected object(s) color property. Click the
browse button (...) to view all of data sources available in your system. Click the down button to view
the last data sources you used. Click the modify database block button to modify the selected data
source. You can add a database block by entering a new database block tag name and tabbing off this
field. The Quick Add dialog box appears and allows you to enter the appropriate values for the added
block.
369
Creating Pictures
Color By
Item Description
Current Allows you to enter a value or range of values and assign each a unique color in the
Value Color Threshold table to the right. When the current value of the data source falls
within or on that color definition, the selected object(s) change to that color.
Current Allows you to set up color thresholds to visually alert operators that a data source is in
Alarm a particular alarm state. This differs from the Latched Alarm option in how it handles
multiple alarm states. Selecting current alarm always displays the color assigned to
the current alarm.
Latched Allows you to set up color thresholds to visually alert operators that a data source is in
Alarm a particular alarm state. This differs from the Current Alarm option in how it handles
multiple alarm states. When a data source is in more than one alarm state that has
defined thresholds, the latched alarm strategy displays the color assigned to the
unacknowledged alarm of the highest priority. If there are no unacknowledged alarms,
it displays the color of the current alarm.
New Alarm
Item Description
Blink on Sets the selected object(s) to blink every time the data source registers a new alarm.
New The object stops blinking when the alarm is acknowledged. This setting overrides
Alarm the blinking settings defined for individual thresholds. The object blinks between
the color of the threshold table and the blink on a new alarm color.
Blink on Sets the color for the blink on new alarm if the Blink on New Alarm check box is
New selected.
Alarm
Color
Color Threshold
Item Description
Range If the value of the data source falls within a specified threshold range in the table
below, the selected object(s) change to the associated color.
Exact Match If the value of the data source exactly matches a threshold value in the table
below, the selected object(s) change to the associated color.
370
Creating Pictures
Item Description
Exact Match Lets you enter an allowable deviation from the current value of a data source.
Tolerance For example: If the current value is 10, and the tolerance is 5, the range that the
color will display is from 5 to 15.
Color List Allows you to animate an object’s color based on a specified value. To assign
Box values, click a cell within the Maximum, Minimum, and Value columns and
enter a value. To assign colors, double-click a cell within the Color and Blink To
columns and select a color from the color box.
No Blink Removes a blink color assigned to the selected row in the color table threshold.
Insert Row Inserts a new row into the color threshold table.
Delete Row Deletes the selected row of the color threshold table.
Use Shared Allows you to use a color table that is defined in globals or any color table that is
Threshold defined in a picture, which will be open in conjunction with the current picture.
Table
Shared Table Allows you to enter the data source for the shared color table. The shared table
data source must be a color threshold table found in the global user page or in
another picture.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
371
Creating Pictures
Item Description
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
372
Creating Pictures
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
373
Creating Pictures
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Allows you to select a different object in the Workspace while the Color Expert is still displayed. Click
this button and that object’s color animation parameters appear in the Color Expert. You can then
apply the parameters to a new selection.
Fill Expert
Lets you set the way the horizontal or vertical fill for the selected object(s) is animated in the runtime
environment.
Data Source
Allows you to enter the data source that animates the selected object’s fill property. Click the browse
button (...) to view all of data sources available in your system. Click the down button to view the last
data sources you used. Click the modify database block button to modify the selected data source. You
can add a database block by entering a new database block tag name and tabbing off this field. The
Quick Add dialog box appears and allows you to enter the appropriate values for the added block.
Fill Properties
Direction
Fills the selected object(s) vertically. You can select the Vertical and Horizontal check boxes to fill the
selected object(s) both horizontally and vertically.
Item Description
Vertical Fills the selected object(s) vertically. You can select the Vertical and Horizontal
check boxes to fill the selected object(s) both horizontally and vertically.
374
Creating Pictures
Direction Settings
Item Description
Vertical Fill Sets the vertical fill direction: Bottom to Top, Top to Bottom, Top and
Direction Bottom from Center.
Horizontal Fill Sets the horizontal fill direction: Left to Right, Right to Left, Left and
Direction Right from Center.
Input Ranges
Item Description
Lowest Input Sets the minimum input value from the data source. The valid range is
Value dependent on the valid range of the data source. The default value is 0.
Highest Input Sets the maximum input value from the data source. The valid range is
Value dependent on the valid range of the data source. The default value is 100.
Fetch Limits at Fetches the low and high EGU limits from the data source automatically at
Runtime runtime.
Fill Percentages
Item Description
Minimum Allows you to calculate the amount you want the object filled when the data
Percentage source equals the lowest input value.
Maximum Allows you to calculate the amount you want the object filled when the data
Percentage source equals the highest input value.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
375
Creating Pictures
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
376
Creating Pictures
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
377
Creating Pictures
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Allows you to select a different object in the Workspace while the Fill Expert is still displayed. Click
this button and that object’s fill animation parameters appear in the Fill Expert. You can then apply the
parameters to a new selection.
Position Expert
Lets you set the way the selected object(s) vertical or horizontal position is animated in the runtime
environment.
Data Source
Allows you to enter the data source that animates the selected object’s position property. Click the
browse button (...) to view all of data sources available in your system. Click the down button to view
the last data sources you used. Click the modify database block button to modify the selected data
source. You can add a database block by entering a new database block tag name and tabbing off this
field. The Quick Add dialog box appears and allows you to enter the appropriate values for the added
block.
Position
Item Description
Vertical Moves the selected object(s) vertically. You can select the Vertical and Horizontal
check boxes to move the selected object(s) both horizontally and vertically.
Horizontal Moves the selected object(s) horizontally. You can select the Vertical and Horizontal
check boxes to move the selected object(s) both horizontally and vertically.
378
Creating Pictures
Position Type
Item Description
Relative Allows you to set the selected object(s) start and end positions relative to its current
position in the runtime environment.
Absolute Allows you to make the selected object(s) movement always start and end in the same
position.
Input Values
Item Description
Lowest Input Sets the minimum input value from the data source. The valid range is
Value dependent on the valid range of the data source. The default value is 0.
Highest Input Sets the maximum input value from the data source. The valid range is
Value dependent on the valid range of the data source. The default value is 100.
Fetch Limits at Fetches the Low and High EGU limits from the data source automatically at
Runtime runtime.
Minimum Offset Allows you to modify the distance that you want the object to move from its
origin when the data source value equals the lowest input value. Available
when you select the Relative Position.
This item is only available when the Relative option is selected.
Maximum Offset Allows you to specify the distance you want the object to move from its
origin when the data source value equals the highest input value.
This item is only available when the Relative option is selected.
Start Allows you to specify the position in the iFIX Workspace that you want the
object to move to when the data source value equals the lowest input value.
Available when you select Absolute as the position type.
This item is only available when the Absolute option is selected.
379
Creating Pictures
Item Description
End Allows you to specify the position in the iFIX Workspace that you want the
object to move to when the data source value equals the highest input value.
Available when you select Absolute as the position type.
This item is only available when the Absolute option is selected.
Get Value Button Allows you to select the object(s) in the iFIX Workspace and move the
(Minimum Offset) object(s) to the start or minimum offset position that you want. The position
is entered in the field to the left.
Get Value Button Allows you to select the object(s) in the iFIX Workspace and move the
(Maximum Offset) object(s) to the end or maximum offset position that you want. The position
is entered in the field to the left.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
380
Creating Pictures
Item Description
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
381
Creating Pictures
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Allows you to select a different object in the Workspace while the Position Expert is still displayed.
Click this button and that object’s position animation parameters appear in the Position Expert. You
can then apply the parameters to a new selection.
382
Creating Pictures
Rotate Expert
Lets you set the way the selected object(s) rotate in the runtime environment.
Data Source
Allows you to enter the data source that animates the selected object’s rotate property. Click the
browse button (...) to view all of data sources available in your system. Click the down button to view
the last data sources you used. Click the modify database block button to modify the selected data
source. You can add a database block by entering a new database block tag name and tabbing off this
field. The Quick Add dialog box appears and allows you to enter the appropriate values for the added
block.
Input
Item Description
Lowest Input Sets the minimum input value from the data source. The valid range is
Value dependent on the valid range of the data source. The default value is 0.
Highest Input Sets the maximum input value from the data source. The valid range is
Value dependent on the valid range of the data source. The default value is 100.
Fetch Limits at Fetches the Low and High EGU limits from the data source at runtime.
Runtime
Output
Item Description
Minimum Angle Allows you to enter the value, in degrees, of the angle that you want the
of Rotation in object to rotate to when the data source equals the lowest input value. The
Degrees default value is 0.
Maximum Angle Allows you to enter the value, in degrees, of the angle that you want the
of Rotation in object to rotate to when the data source equals the highest input value. The
Degrees default value is 360.
NOTE: When the Minimum Angle is set to 0 and the Maximum Angle is set
to 360, the selected object(s) rotate counter clockwise. When the Minimum
Angle is set to 360 and the Maximum Angle is set to 0, the selected object(s)
rotate clockwise.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
383
Creating Pictures
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
384
Creating Pictures
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
385
Creating Pictures
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Allows you to select a different object in the Workspace while the Rotate Expert is still displayed.
Click this button and that object’s rotate animation parameters appear in the Rotate Expert. You can
then apply the parameters to a new selection.
Scale Expert
Lets you set the way the selected object(s) scale is animated in the runtime environment.
Data Source
Allows you to enter the data source that animates the selected object’s scale property. Click the browse
button (...) to view all of data sources available in your system. Click the down button to view the last
data sources you used. Click the modify database block button to modify the selected data source. You
can add a database block by entering a new database block tag name and tabbing off this field. The
Quick Add dialog box appears and allows you to enter the appropriate values for the added block.
Scale Parameters
Item Description
Scale Direction Lets you select the direction to scale the object. The options are dependent on
which dimension you choose to scale.
386
Creating Pictures
Input
Item Description
Lowest Input Sets the minimum input value from the data source. The valid range is
Value dependent on the valid range of the data source. The default value is 0.
Highest Input Sets the maximum input value from the data source. The valid range is
Value dependent on the valid range of the data source. The default value is 100.
Fetch Limits at Fetches the Low and High EGU limits from the data source at runtime.
Runtime
Output
Item Description
Minimum Allows you to enter the value, in degrees, of the amount that you want the
Percentage object to scale to when the data source equals the lowest input value.
Maximum Allows you to enter the value, in degrees, of the amount that you want the
Percentage object to scale to when the data source equals the highest input value.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
387
Creating Pictures
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
388
Creating Pictures
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
389
Creating Pictures
Item Description
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Allows you to select a different object in the Workspace while the Scale Expert is still displayed. Click
this button and that object’s scale animation parameters appear in the Scale Expert. You can then apply
the parameters to a new selection.
Visibility Expert
Lets you set the visibility conditions for the selected object(s) in the runtime environment.
Data Source
Allows you to enter the data source that animates the selected object’s visibility property. Click the
browse button (...) to view all of data sources available in your system. Click the down button to view
the last data sources you used. Click the modify database block button to modify the selected data
source. You can add a database block by entering a new database block tag name and tabbing off this
field. The Quick Add dialog box appears and allows you to enter the appropriate values for the added
block.
Lets you select the desired logical comparison. The selected object is visible when:
< Data source value is less than the entry in the Value field.
> Data source value is greater than the entry in the Value field.
= Data source value equals the entry in the Value field. This comparison lets you enter a
Tolerance amount.
<= Data source value is less than or equal to the entry in the Value field.
>= Data source value is greater than or equal to the entry in the Value field.
<> Data source value is not equal to the entry in the Value field.
390
Creating Pictures
Condition Value
Enter the number you want to compare with the data source value.
Tolerance
Allows you to enter the allowable deviation from the entry in the Value field.
Condition Expression
View Visibility Condition
Click this button to view the condition you set in the Visibility Condition field.
Visibility Condition
When you click the View Visibility Condition button, this field displays the visibility condition you
have set.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
391
Creating Pictures
Item Description
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Standard Deviation – The standard deviation of all valid data found during the specified
392
Creating Pictures
interval.
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
393
Creating Pictures
Layer Numbers
Allows you to select the layer numbers to display. The button for the selected layer appears depressed.
Lets you set which layers the selected object(s) display in. For example, if you have a series of objects
that make up the foreground of a picture and another series of objects that make up the background,
you can set the layer for the foreground objects to Level 1 and set the layer for the background objects
to Level 2. Then you can display just the foreground objects, just the background objects, or both at the
same time. See the Display Layer Expert for information on displaying layers.
Layer Numbers
Allows you to select the layer number for the selected object. The object is displayed when that display
layer is set. The button for the selected layer appears depressed.
Select All
Allows you to specify that the object will display in every layer. This button is enabled only if you
selected the Allow for Multiple Layers check box.
Deselect All
Allows the user to specify that the object will not display in any layer. This button is enabled only if
you select the Allow for Multiple Layers check box.
Command Experts
The following list summarizes the Command Experts available in iFIX. You can select a single
command Expert from the Experts toolbar, or you can use the Multiple Command Script Wizard to
build an object's command script with more than one Command Expert.
• Acknowledge Alarm
394
Creating Pictures
Acknowledges a new alarm for the specified database tag. This expert uses the AcknowledgeAlarm
subroutine.
Data Source
Allows you to enter the data source whose alarm you want to acknowledge. Click the browse button
(...) to view all of data sources available in your system. Click the down button to view the last data
sources you used. Click the Modify Database Block button to modify the selected data source. You can
add a database block by entering a new database block tag name and tabbing off this field. The Quick
Add dialog box appears and allows you to enter the appropriate values for the added block.
Allows you to acknowledge the alarms only on the selected object’s database tags. To make an object
selectable, open the object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
395
Creating Pictures
Acknowledges all new alarms in the specified picture. This expert uses the AcknowledgeAllAlarms
subroutine.
Picture Name
Allows you to specify the name of the picture whose alarms you want to acknowledge. Click the
browse button (...) to view all of the pictures available in your iFIX picture path.
Allows you to view all of the saved pictures in your iFIX picture path.
Allows you to acknowledge all of the alarms in the current picture. When this check box is enabled,
the Picture Name field is disabled.
Lets you configure an object to enable, disable, or silence the alarm horn. You can also toggle the
alarm horn between enable and disable, and prompt for horn status in run mode. This expert uses the
following subroutines:
• AlarmHornEnabled
• AlarmHornEnabledToggle
• AlarmHornSilence
Silence Horn
Enable Horn
Disable Horn
Displays a dialog box in run mode that shows the current status of the Alarm Horn. You can also
silence the alarm horn from this dialog box.
396
Creating Pictures
Closes the specified digital tag. This expert uses the CloseDigitalPoint subroutine.
Data Source
Allows you to enter the digital tag you want to close (for example, set to 1). Click the browse button
(...) to view all of data sources available in your system. Click the down button to view the last data
sources you used. Click the Modify Database Block button to modify the selected data source. You can
add a database block by entering a new database block tag name and tabbing off this field. The Quick
Add dialog box appears and allows you to enter the appropriate values for the added block.
Allows you to close only the selected object’s digital blocks. To make an object selectable, open the
object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Closes the specified picture. If there are multiple instances of a picture open, all instances of that
picture are closed. This expert uses the ClosePicture subroutine.
Picture Name
Allows you to specify the name of the picture you want to close. Click the browse button (...) to view
all of the pictures available in your iFIX picture path.
Browse (...)
Allows you to view all of the saved pictures in your iFIX picture path.
Use Alias
Allows you to use the picture’s alias name instead of its filename.
Picture Alias
Allows you to enter an optional alias for your picture instead of the name from the Picture Name field.
Allows you to close the current picture in the runtime environment. When this check box is enabled,
the Picture Name field is disabled.
Disables the alarm for the specified database tag. This expert uses the DisableAlarm subroutine.
397
Creating Pictures
Data Source
Allows you to enter the data source whose alarm you want to disable. Click the browse button (...) to
view all of data sources available in your system. Click the down button to view the last data sources
you used. Click the Modify Database Block button to modify the selected data source. You can add a
database block by entering a new database block tag name and tabbing off this field. The Quick Add
dialog box appears and allows you to enter the appropriate values for the added block.
Allows you to disable the alarms only on the selected object’s database tags. To make an object
selectable, open the object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Enables the alarm for the specified database tag. This expert uses the EnableAlarm subroutine.
Data Source
Allows you to enter the data source whose alarm you want to enable. Click the browse button (...) to
view all of data sources available in your system. Click the down button to view the last data sources
you used. Click the Modify Database Block button to modify the selected data source. You can add a
database block by entering a new database block tag name and tabbing off this field. The Quick Add
dialog box appears and allows you to enter the appropriate values for the added block.
Allows you to enable the alarms only on the selected object’s database tags. To make an object
selectable, open the object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Finds the object you specify. You can set it to find the object in one picture or in all open pictures. This
expert uses the LocateObject subroutine.
Object Name
Allows you to specify the name of the object that you want to locate.
Allows you to search for the object in the currently active document.
398
Creating Pictures
Opens the selected digital tag. This expert uses the OpenDigitalPoint subroutine.
Data Source
Allows you to enter the digital tag you want to open (for example, set to 0). Click the browse button
(...) to view all of data sources available in your system. Click the down button to view the last data
sources you used. Click the modify database block button to modify the selected data source. You can
add a database block by entering a new database block tag name and tabbing off this field. The Quick
Add dialog box appears and allows you to enter the appropriate values for the added block.
Allows you to open only the selected object’s digital blocks. To make an object selectable, open the
object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Opens the specified picture. This expert uses the OpenPicture subroutine.
Picture Name
Allows you to specify the name of the picture you want to open. Click the browse button (...) to view
all of the pictures available in your iFIX picture path.
Allows you to view all of the saved pictures in your iFIX picture path.
Picture Alias
Allows you to enter an optional alias for your picture instead of the name from the Picture Name field.
Allows you to be able to choose the picture to open in the runtime environment. When this check box
is enabled, the Picture Name field is disabled.
Allows you to open a new instance of a picture, if the picture is already open in the WorkSpace when
you run the OpenPicture subroutine.
399
Creating Pictures
Top
Allows you to specify the topmost position that you want to open the picture. The default is 0.
Left
Allows you to specify the leftmost position that you want to open the picture. The default is 0.
Allows you to be able to use tag group substitution invoked on the picture being opened.
Allows you to specify the file to be used for the tag group substitution.
Using this option will prompt the user for the tag group file to be used for the substitution after the
picture is opened. If both this and the select picture in run mode check box are selected, two prompts
will appear. First the picture and second the Tag Group File.
Allows you to specify the name of the Tag Group file you want to use for Tag Group Substitution.
Click the browse button (...) to view all of the Tag Group Files available in your iFIX picture path.
This is the button directly to the right of the Tag Group Browse button (…). Allows you to launch the
Tag Group Editor. If a Tag Group File is specified, this file will be opened when the Tag Group Editor
is launched.
Ramps the specified database tag by a percentage or actual value that you define. This expert uses the
RampValue subroutine.
Data Source
Allows you to enter the data source whose value you want to ramp. Click the browse button (...) to
view all of data sources available in your system. Click the down button to view the last data sources
you used. Click the Modify Database Block button to modify the selected data source. You can add a
database block by entering a new database block tag name and tabbing off this field. The Quick Add
dialog box appears and allows you to enter the appropriate values for the added block.
Ramp by Percentage
400
Creating Pictures
Ramp by Value
Ramp Value
Allows you to ramp only the selected object’s database tag value. To make an object selectable, open
the object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Replaces the specified picture with another picture that you select. If the picture you select is already
open in the WorkSpace, another instance of that picture opens. This expert uses the ReplacePicture
subroutine.
Picture to Replace
Allows you to specify the name of a currently open picture you want to replace. Click the browse
button (...) to view all of the pictures available in your iFIX picture path.
Allows you to view all of the saved pictures in your iFIX picture path.
Picture Alias
Allows you to use the picture’s alias name instead of its filename.
Allows you to replace the current picture in the runtime environment. When this check box is enabled,
the Picture to Replace field is disabled.
The name of the new picture file to open. Click the browse button (...) to view all of the pictures
available in your iFIX picture path.
401
Creating Pictures
Allows you to view all of the saved pictures in your iFIX picture path.
Allows you to be able to use tag group substitution invoked on the picture being opened.
Allows you to specify the file to be used for the tag group substitution.
Using this option will prompt the user for the tag group file to be used for the substitution after the
picture is opened. If both this and the select picture in run mode check box are selected, two prompts
will appear. First the picture and second the Tag Group File.
Allows you to specify the name of the Tag Group file you want to use for Tag Group Substitution.
Click the browse button (...) to view all of the Tag Group Files available in your iFIX picture path.
This is the button directly to the right of the Tag Group Browse button (…). Allows you to launch the
Tag Group Editor. If a Tag Group File is specified, this file will be opened when the Tag Group Editor
is launched.
Sets the specified database tag to automatic. This expert uses the SetAuto subroutine.
Data Source
Allows you to enter the data source whose current mode you want to set to auto. Click the browse
button (...) to view all of data sources available in your system. Click the down button to view the last
data sources you used. Click the Modify Database Block button to modify the selected data source.
You can add a database block by entering a new database block tag name and tabbing off this field.
The Quick Add dialog box appears and allows you to enter the appropriate values for the added block.
Allows you to change the current mode to auto only on the selected object’s database tags. To make an
object selectable, open the object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
402
Creating Pictures
Sets the specified database tag to manual. This expert uses the SetManual subroutine.
Data Source
Allows you to enter the data source whose current mode you want to set to manual. Click the browse
button (...) to view all of data sources available in your system. Click the down button to view the last
data sources you used. Click the Modify Database Block button to modify the selected data source.
You can add a database block by entering a new database block tag name and tabbing off this field.
The Quick Add dialog box appears and allows you to enter the appropriate values for the added block.
Allows you to change the current mode to manual only on the selected object’s database tags. To make
an object selectable, open the object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Toggles the specified digital tag between open and closed. This expert uses the ToggleDigitalPoint
subroutine.
Data Source
Allows you to enter the digital tag you want to toggle (for example, from 0 to 1 and vice versa). Click
the browse button (...) to view all of data sources available in your system. Click the down button to
view the last data sources you used. Click the Modify Database Block button to modify the selected
data source. You can add a database block by entering a new database block tag name and tabbing off
this field. The Quick Add dialog box appears and allows you to enter the appropriate values for the
added block.
Allows you to toggle only the selected object’s digital blocks. To make an object selectable, open the
object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Toggles the specified database tag on and off scan. This expert uses the ToggleScan subroutine.
Data Source
Allows you to enter the data source whose scan you want toggle on and off and vice versa. Click the
browse button (...) to view all of data sources available in your system. Click the down button to view
the last data sources you used. Click the Modify Database Block button to modify the selected data
403
Creating Pictures
source. You can add a database block by entering a new database block tag name and tabbing off this
field. The Quick Add dialog box appears and allows you to enter the appropriate values for the added
block.
Allows you to toggle the scan from on to off and vice versa only on the selected object’s database tags.
To make an object selectable, open the object’s property page and set the property ‘IsSelectable’ to
True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Toggles the specified database tag between auto and manual. This expert uses the ToggleManual
subroutine.
Data Source
Allows you to enter the data source whose current mode you want to toggle from auto to manual and
vice versa. Click the browse button (...) to view all of data sources available in your system. Click the
down button to view the last data sources you used. Click the Modify Database Block button to modify
the selected data source. You can add a database block by entering a new database block tag name and
tabbing off this field. The Quick Add dialog box appears and allows you to enter the appropriate values
for the added block.
Allows you to toggle the current mode from auto to manual and vice versa only on the selected
object’s database tags. To make an object selectable, open the object’s property page and set the
property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Turns the specified database tag off scan. This expert uses the OffScan subroutine.
Data Source
Allows you to enter the data source whose scan you want to turn off. Click the browse button (...) to
view all of data sources available in your system. Click the down button to view the last data sources
you used. Click the Modify Database Block button to modify the selected data source. You can add a
database block by entering a new database block tag name and tabbing off this field. The Quick Add
dialog box appears and allows you to enter the appropriate values for the added block.
Allows you to turn the scan off only the selected object’s database tags. To make an object selectable,
404
Creating Pictures
open the object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Turns the specified database tag on scan. This expert uses the OnScan subroutine.
Data Source
Allows you to enter the data source whose scan you want to turn on. Click the browse button (...) to
view all of data sources available in your system. Click the down button to view the last data sources
you used. Click the Modify Database Block button to modify the selected data source. You can add a
database block by entering a new database block tag name and tabbing off this field. The Quick Add
dialog box appears and allows you to enter the appropriate values for the added block.
Allows you to turn the scan on only the selected object’s database tags. To make an object selectable,
open the object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Writes a value you select to the specified database tag. This expert uses the WriteValue subroutine.
Data Source
Allows you to enter the data source you want to write to. Click the browse button (...) to view all of the
data sources available in your system. Click the down button to view the last data sources you used.
Click the Modify Database Block button to modify the selected data source. You can add a database
block by entering a new database block tag name and tabbing off this field. The Quick Add dialog box
appears and allows you to enter the appropriate values for the added block.
Value
Allows you to specify the value to write to the current value of the database block. The default is 0.
Allows you to write only to the selected object’s database tag’s value. To make an object selectable,
open the object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
Alpha-Numeric
405
Creating Pictures
Numeric
Enabled when your database tag only allows numeric data entry.
Lets you select a data source and associate a data entry method for your object.
Data Source
Allows you to enter the data source that the new value will be written to. Click the browse button (...)
to view all of data sources available in your system. Click the down button to view the last data sources
you used. Click the modify database block button to modify the configuration of the selected data
source. You can add a database block by entering a new tag name and tabbing off this field. The Quick
Add dialog box appears and allows you to enter the appropriate values for the new block.
NOTE: If the tag requires electronic signatures, the data source will not update until the action is
successfully signed for.
Item Description
Numeric/Alphanumeric Allows the operator to set a tag’s value by entering it directly at run
Entry time. You can configure the following options for the
Numeric/Alphanumeric Entry Method:
• Numeric Entry Option – Allows the operator to change a
tag’s value by entering it in a field in the picture. This allows
the operator to enter numeric values only.
• Alphanumeric Entry Option – Allows the operator to change
a tag’s value by entering it in a field in the picture. This allows
the operator to enter both numeric and alphanumeric values.
• Low Limit – Allows you to enter a value (up to seven decimal
places long) that represents the lowest value the operator can
enter. The valid range is dependent on the valid range of the
data source. The default value is 0.
• High Limit – Allows you to enter a value (up to seven decimal
places long) that represents the highest value the operator can
enter. The valid range is dependent on the valid range of the
data source. The default value is 1 for digital blocks, and 100
for analog blocks.
• Fetch Limits Check Box – Fetches the Low and High EGU
limits from the data source automatically at runtime. This
disables the high and low limit text boxes.
406
Creating Pictures
Item Description
Slider Entry Allows the operator to change a tag’s value by moving a slider control
or entering an integer value at run time. You can configure the
following options for the Slider Entry Method:
• Low Limit – Allows you to enter a value that represents the
lowest value the operator can enter. The valid range is
dependent on the valid range of the data source. The default
value is 0.
• High Limit – Allows you to enter a value that represents the
highest value the operator can enter. The valid range is
dependent on the valid range of the data source. The default
value is 1 for digital blocks, and 100 for analog blocks.
NOTE: The slider allows the operator to enter an integer value
or to move the slider to an integer value. If you would like the
operator to be able to enter a decimal value, use the
Numeric/Alphanumeric entry method.
• Fetch Limits Check Box – Fetches the Low and High EGU
limits from the data source automatically at runtime. This
disables the high and low limit textboxes.
• Write Continuously – Allows the operator to change the value
of the tag continuously in real time. As the operator moves the
slider control, the value of the tag updates both in the slider
control dialog box and at the data source.
NOTE: If the tag requires electronic signatures, the data
source will not update until the action is successfully signed
for, even if you select Write Continuously.
Pushbutton Entry Allows the operator to set a tag’s value to 0 or 1. This is mainly used
for Digital Output blocks. At run time, the operator is given two
pushbuttons. One button, when clicked, sets the value to 0, the other
sets the value to 1.
You can configure the following options for the Pushbutton Entry
Method:
• Open Button Title – Allows you to enter a title (up to 12
characters long) for the pushbutton that sets the value to 0.
• Close Button Title – Allows you to enter a title (up to 12
characters long) for the pushbutton that sets the value to 1.
407
Creating Pictures
Item Description
Ramp Entry Allows the operator to ramp a tag’s value up or down by two different
percentages at run time. You can configure the following options for
the Ramp Entry Method:
• Low Limit – Allows you to enter a value (up to seven decimal
places long) that represents the lowest value the operator can
enter. The valid range is dependent on the valid range of the
data source. The default value is 0.
• High Limit – Allows you to enter a value (up to seven decimal
places long) that represents the highest value the operator can
enter. The valid range is dependent on the valid range of the
data source. The default value is 1 for digital blocks and 100
for analog blocks.
• Fetch Limits Check Box – Fetches the Low and High EGU
limits from the data source automatically at runtime. This
disables the high and low limit textboxes.
• Ramp Percentage 1 – Allows you to enter a percentage that
defines how much to ramp a value. The operator can ramp the
tag’s value up or down.
• Ramp Percentage 2 – Allows you to enter a percentage that
defines how much to ramp a value. The operator can ramp the
tag’s value up or down.
Database Experts
Lets you add a new database block to your database without having to open Database Manager.
Data Source
Allows you to enter the tagname of the block you want to add to your database. Click the browse
button (...) to view all of data sources available in your system. Click the down button to view the last
data sources you used. Click the modify database block button to modify the selected data source. You
can add a database block by entering a new database block tag name and tabbing off this field. The
Quick Add dialog box appears and allows you to enter the appropriate values for the added block.
408
Creating Pictures
Add
Applies and saves any changes you have made and then closes this expert.
Database Reload
Lets you reload the current database without having to open Database Manager.
NOTE: The database in memory is replaced. No check is made to see if the database has been
modified.
Database Save
Lets you save your database without having to open Database Manager.
Lets you modify a new database block in your database without having to open Database Manager.
Data Source
Allows you to enter the tagname of the block that you want to modify in your database. Click the
browse button (...) to view all of data sources available in your system. Click the down button to view
the last data sources you used. Click the modify database block button to modify the selected data
source. You can add a database block by entering a new database block tag name and tabbing off this
field. The Quick Add dialog box appears and allows you to enter the appropriate values for the added
block.
Modify
Applies and saves any changes you have made and then closes this expert.
Retrieves the value from the specified database tag. This expert uses the ReadValue subroutine.
Data Source
Allows you to enter the data source you want to read the value from. Click the browse button (...) to
view all of data sources available in your system. Click the down button to view the last data sources
you used. Click the Modify Database Block button to modify the selected data source. You can add a
database block by entering a new database block tag name and tabbing off this field. The Quick Add
dialog box appears and allows you to enter the appropriate values for the added block.
Allows you to read only the selected object’s database tag’s value. To make an object selectable, open
the object’s property page and set the property ‘IsSelectable’ to True.
NOTE: Before the action can be performed in the runtime environment, you must first click on the
object to select it.
409
Creating Pictures
Picture Experts
Lets you export all of the key macros in the selected object, picture, or user global page to a .CSV file.
Object
The object, picture, or user global page from which you want to export key macros. You cannot edit
this field from the expert.
Lets you include key macros for all child objects. By default the Recursive (Include Children) check
box is selected.
File Name
The name of the file to which you want to save your key macros. Click the browse button (...) to view
all of the existing .CSV files. If you do not include a path, the .CSV file is saved to your Proficy iFIX
directory.
Browse (...)
Allows you to view all of the .CSV files in your iFIX picture path.
Append to File
If you enter or browse to an existing file name, select the Append to File check box to add key macros
to the end of an existing .CSV file.
Export
410
Creating Pictures
Window Location
Item Description
Top The preferred top window edge location of the picture being generated. The location
Unit, pixel or percent, is determined by the Pixels check box.
Left The preferred left window edge location of the picture being generated. The location
Unit, pixel or percent, is determined by the Pixels check box.
Height The preferred window height of the picture being generated. The dimension Unit, pixel
or percent, is determined by the Pixels check box.
Width The preferred window width of the picture being generated. The dimension Unit, pixel
or percent, is determined by the Pixels check box.
Pixels Determines whether the window location units are pixel or percent.
Window Styles
Item Description
Titlebar Defines whether or not the picture window has a title bar.
System Menu Defines whether or not the picture window has a system menu.
Resizable Defines whether or not the picture window is resizable using the mouse.
Always On Defines whether or not the picture window is always on top of other picture
Top windows.
Background Color
Picture Name
411
Creating Pictures
Lets you change the refresh rate for a selected object or an entire picture. By default, the refresh rate is
set to 0.5.
You can modify the refresh rate to fast or slow values. For example, you might want to give faster
refresh rates to objects where you enter data sources.
Selected Objects
Select this option button to apply changes to the refresh rate for the selected object.
Entire Picture
Select this option button to apply changes to the refresh rate for the entire picture.
Tolerance
Specifies the current connection’s rounding factor. Typically, iFIX uses this value when comparing a
process value to a target value. If the process value is within the specified tolerance, iFIX assumes the
two values are equal. For example, if the target value is 1.0, the tolerance is 0.1, and the current value
of a data source is 0.8, iFIX does not assume the two values are equal because the data source is not
within the specified tolerance. The value must within the range 0.9 to 1.1 to equal the target value.
Deadband
Specifies the maximum fluctuation you want for the current connection before iFIX updates it. By
entering a dead band value, you create a +/- dead zone around the connection’s current value. As long
as the value is within this range, iFIX does not update the value. However, once the value exceeds the
maximum or minimum dead band, the value is updated.
Refresh Rate
Specifies the rate at which iFIX updates the current connection. iFIX updates the connection no faster
than the specified speed. For speeds less than 1 second, iFIX updates no faster than once every 50
milliseconds. For speeds greater than 60 seconds, iFIX updates no faster than once every 60 seconds.
Lets you resolve files before you enter into the Runtime environment. If you do not resolve your files
before switching to the Runtime environment, the Workspace queries the database and resolves all the
tag definitions. This can be a time consuming process that slows down opening a picture. By using the
Resolve Expert to resolve your files, you can improve the speed of opening pictures.
412
Creating Pictures
File Types
Item Description
Pictures Allows you to specify that you want to resolve pictures. Displayed in the list box
below will be the names of all the pictures saved in your iFIX picture path.
Schedules Allows you to specify that you want to resolve schedules. Displayed in the list box
below will be the names of all the schedules saved in your iFIX schedule path.
Directories
Item Description
Picture Directory Specifies the directory where the pictures that you want to resolve are
located.
Update Picture Files Refreshes the picture names in the file list if you change the path in the
Button Picture Directory field.
Schedule Directory Specifies the directory where the schedules that you want to resolve are
located.
Update Schedule Files Refreshes the schedule names in the file list if you change the path in
Button the Schedule Directory field.
Resolve Files
Allows you to select the files you want to resolve. Hold down the <CTRL> button to select multiple
files, or click the Select All button to select all of the files. The file names displayed are all of the files
saved in your iFIX picture and/or schedule directories.
Select All
Deselect All
Allows you to save thumbnail images of existing pictures. If you chose not to save existing pictures
(files) with thumbnails, you cannot view the images from the system tree.
413
Creating Pictures
File Types
Item Description
Pictures Populates the Save Files With list box with a list of all of the pictures (*.grf
files) saved in your iFIX picture path.
Dynamo Sets Populates the Save Files With list box with a list of all of the dynamo sets
(*.fds files) saved in your iFIX picture path.
Directories
Item Description
Pictures Specifies the directory where the pictures that you want to save with a
Directory thumbnail are located.
Refresh Picture Refreshes the picture names in the file list if you change the path in the
List Pictures Directories field.
Dynamo Sets Specifies the directory where the Dynamo sets that you want to save with a
Directory thumbnail are located.
Refresh Dynamo Refreshes the names of the Dynamo in the file list if you change the path in
Set List the Dynamo Sets Directories field.
Save Thumbnails
NOTE: This setting overrides the Save thumbnail setting on the Picture Preferences tab in the User
Preferences dialog box.
Allows you to select the files you want to save with a thumbnail. Hold down the <CTRL> button to
select multiple files, or click the Select All Button to select all of the files. The file names displayed are
all of the files saved in your iFIX picture and/or Dynamo sets directories.
Select All
Deselect All
414
Creating Pictures
Report Experts
For more information, refer to "The Cross Reference Tool" chapter of the Mastering iFIX ebook.
Lets you select a Crystal Report, preview it, and print it.
Select Report
Allows you to open a Crystal Report for printing. You can only select reports that were created with
Crystal Reports.
Preview Report
Allows you to display a preview of the report. From the Preview window, you can print the report.
Report Name
Prints the Crystal Report you specify. This expert uses the PrintReport subroutine.
Select Report
Allows you to search the iFIX picture path for the report you want to print.
Report Name
Print All
Allows you to print only the pages of the selected report that you specify. This option is ignored in
415
Creating Pictures
Crystal XI.
From Page
Specifies the first page in a range of pages that you want to print only when you select Print Selected
Pages. This option is ignored in Crystal XI.
To Page
Specifies the last page in a range of pages that you want to print only when you select Print Selected
Pages. This option is ignored in Crystal XI.
Prompt User
Allows you to specify if you want to be prompted when the report is finished printing. This option is
ignored in Crystal XI.
Collate
Prints the report in the proper binding order. This option is ignored in Crystal XI.
Number of Copies
The number of copies that you want printed. This option is ignored in Crystal XI.
Create Objects
The following Create Objects are available from the toolbox in the iFIX WorkSpace:
• Variable Object
• Timer Object
• Event Object
Variable Object
You can insert a variable object in an iFIX picture. The variable object can belong to the current
picture or you can set it as a global object that is available to your entire system.
Variable Name
Allows you to specify the name of the new variable object. The variable name must consist of
alphanumeric values and must begin with a letter.
Variable Type
Allows you to specify the variable object’s type. Click the down button to view the list of types.
Assign Variable
416
Creating Pictures
Allows you to connect the variable object’s current value to a database block.
Data Source
Only enabled when the Assign Variable check box is checked, this allows you to enter the data source
to connect the variable to. Click the browse button (...) to view all of data sources available in your
system. Click the down button to view the last data sources you used. Click the modify database block
button to modify the selected data source. You can add a database block by entering a new database
block tag name and tabbing off this field. The Quick Add dialog box appears and allows you to enter
the appropriate values for the added block.
Local Variable
Global Variable
Timer Object
You can insert a timer object in an iFIX picture. The timer object performs an operation based on an
interval of time. You must enter VB code into the timer object’s event for anything to actually occur. If
you select the Edit Script button, VBE automatically launches and the cursor is positioned to the
timer’s OnTimeOut event. You can then enter code for the new timer object. If you select OK, the
timer object is created but you will have to go in at a later date and enter the VB code for the timer.
The timer object event that is invoked is the OnTimeOut event. The timer has four different types of
triggers for the OnTimeOut event:
• 0 – One Shot
• 1 – Continuous
• 2 – Daily
• 3 – Monthly
The default trigger type is Continuous. If you want to use a different trigger type, you will have to set
the timer’s TriggerType property to the correct number. For Example:
MyTimer.TriggerType = 0
Timer Name
Timer Description
417
Creating Pictures
Start Time
Allows you to specify the start time for the Timer. The format must be in the following format:
Interval
Edit Script
Applies and saves changes you have made, launches VBE to the timer object’s OnTimeOut event, and
closes the expert.
Event Object
You can insert an event object in an iFIX picture. The event object performs an operation when its
event type is triggered. You must enter VB code into the object’s event for anything to actually to
occur. If you select the Edit Script button, VBE automatically launches and the cursor appears at the
event type that you select for the event object. You can then enter code for that event. If you select OK,
the event object is created but you will have to go in at a later date and enter the VB code for the event.
Event Source
Allows you to enter the data source to connect the event object to. Click the browse button (...) to view
all of data sources available in your system. Click the down button to view the last data sources you
used. Click the modify database block button to modify the selected data source. You can add a
database block by entering a new database block tag name and tabbing off this field. The Quick Add
dialog box appears and allows you to enter the appropriate values for the added block.
Item Description
418
Creating Pictures
Item Description
Event Type Allows you to specify the type for the event object. The valid entry types
are:
• On Data Change – when the value of data source for the object
changes.
• On True – when the value of the data source for the object changes to
True.
• On False – when the value of the data source for the object changes
to False.
• While True – while the value of the data source for the object is True.
• While False – while the value of the data source for the object is
False.
Interval Specifies the time interval in milliseconds. Only enabled when the Event
Type is While True or While False.
The Historical Properties tab allows you to set the parameters for a query that fetches historical data
from Proficy Historian. The tab contains the following items:
NOTE: The following fields, with the exception of the Update Rate fields, are only available if you
select a Historical Mode other than Current Value.
Start Date
Item Description
Fixed Date Specifies whether to enter a specific start date for the query of the data
source.
Days Before Specifies whether to enter the number of days prior to today to fetch data
Now from Proficy Historian. For example, if you want to display data collected for
the data source two days ago, enter 2.
Start Time
Item Description
Fixed Time Specifies whether to designate a specific time to start. If selected, allows you
to enter an explicit start time.
419
Creating Pictures
Item Description
Lock Time Locks the Fixed Time, even if you change the time zone in the Date and
Time Properties dialog box in the Control Panel. This field is available only
when you designate a specific time to start using the Fixed Time field.
Duration Before Specifies whether to enter the duration prior to the current time to start. The
Now minimum duration is 0 seconds; the maximum is 23 hours, 59 minutes, and
59 seconds.
Time Zone
Item Description
Time Zone Allows you to select the time zone to associate with the start time. You can
select the client time (time zone for your computer), the server time (time
zone used by the Historian server), or the tag time (uses the time zone bias of
the tag, which is set in Historian). The default time zone is that of the client
machine. This field is available only when Historian is used.
Adjust for Adjusts the time if the zone you selected is experiencing daylight saving.
Daylight Savings This field works only if you selected the Automatically adjust clock for
Time daylight saving changes check box located on the Time Zone tab of the
Date/Time Properties dialog box in the Control Panel.
Historical Mode
• Allows you to determine how Proficy Analytic Client selects and fetches data from a
historical data source and, determines what each displayed value represents. The options are:
• Sample – The last valid value found, up to and including the start of the specified interval.
• Avg – The average of all valid data found during the specified interval.
• High – The highest valid data point value found during the specified interval.
• Low – The lowest valid data point value found during the specified interval.
• Interpolated – The data is interpreted by assuming that the line between two values is a
straight line. All points along that line are estimated except the starting point and the ending
point.
• Current Value – The current value of the data point.
IMPORTANT: The Current Value may update at a rate different from the rate set in the
Update Rate field. The update rate is not set solely by the rate entered in the Update Rate
field. It also depends on the collection rate, the rate for querying Historian, and the time
required to request an update from the Historian server and send it back to the client. As a
result, the time it takes to display the updates may be longer than anticipated. Additionally,
please be aware that the timestamp for this mode represents the timestamp from the Historian
server, not the client.
• Std Deviation – The standard deviation of all valid data found during the specified interval.
420
Creating Pictures
• Total – The total of all valid data found during the specified interval.
Duration
The duration determines the time range for the historical data source. The minimum duration for a
fetch is one second; the maximum is 365 days, 23 hours, 59 minutes, and 59 seconds.
Item Description
Days Allows you to enter the number of days. This field can be used in
conjunction with the other fields in this area.
Hours Allows you to enter the number of hours for the duration for the data
fetch query. This field can be used in conjunction with the other
fields in this area.
Mins Allows you to enter the number of minutes for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Secs Allows you to enter the number of seconds for the duration for the
data fetch query. This field can be used in conjunction with the other
fields in this area.
Update Rate
Allows you to specify the rate at which the data is updated. The default rate is five seconds. Zero is
permitted for a one-time fetch. The fastest update rate is five seconds, the slowest, 1:59:59.
Item Description
Hours Allows you to enter the number of hours for the rate of data update.
This field can be used in conjunction with the other fields in this
area.
Mins Allows you to enter the number of minutes for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Secs Allows you to enter the number of seconds for the rate of data
update. This field can be used in conjunction with the other fields in
this area.
Edit Script
Applies and saves changes you have made, launches VBE to the event type you selected for the event
421
Creating Pictures
Using Dynamos
As you develop a system of operator displays, you may want to use an object you created for one
picture in several other pictures. iFIX offers a convenient way to save custom-built objects and
application scripts into a higher-level reusable object set, called Dynamo objects. Dynamo objects
allow you to customize your pictures by creating a consistent design across your operator displays.
iFIX provides a wide selection of pre-built Dynamos that use the most common shapes and objects in
the process automation industry today. You can also build and save your own Dynamos in the
WorkSpace using the Build Dynamo Wizard, and then dragging the new Dynamo into a set for use in
other pictures. Using existing Dynamo Sets can expedite your picture development, thereby increasing
the performance of your entire operation.
For more information on Dynamo objects, refer to Working with Dynamo Objects chapter.
422
Creating Pictures
Properties make objects either visible or invisible. Visible objects are those that contain properties you
can see, such as a color or style fill. These are attributes that you can control in several ways. Invisible
objects, also called animation objects, are those that are added to objects during animation, such as
rotation, and scaling. When you animate an object, invisible objects are added to your pictures
automatically, without your control, and displayed in the system tree. Both visible and invisible
properties can be modified using either the Properties window or the Animations dialog box.
NOTE: Read-only properties cannot be modified directly. For example, to change the bottom edge of
a rectangle (a read-only property), you would have to change the rectangle's height property to affect
the edge property.
One way you can manually enter a property value for a visible or invisible object or animation is with
the Properties window, shown in the following figure. This window displays the object properties you
can modify (read-only properties do not appear). Because the window is modeless, it stays on your
screen as you change property values or select other objects to modify. This allows you to view
properties as you make other changes to your picture.
423
Creating Pictures
To use the Properties window, enter property values in the window's right-hand column and press
Enter. Some properties let you select a value from a list instead of entering it. In these cases, when you
select the cell, a drop-down list box appears. To hide the Properties Window, right-click a cell in the
window and select Hide from the pop-up menu.
You can also change property values with the Advanced Animations dialog box. When you access the
Advanced Animations dialog box, the selected object's properties are displayed. Only the properties
that accept data appear in the dialog box; read-only properties do not appear. To display read-only
properties, use the Visual Basic Editor. For more information on using the Visual Basic Editor, refer to
the Writing Scripts manual.
The Advanced Animations dialog box groups similar properties together into categories. Each category
is represented by a tab in the dialog box. Certain tabs appear only if the selected object has the
associated properties. For example, the Text tab appears only for text objects; only text objects have
font and font style properties.
424
Creating Pictures
General The object's name, description, and behavior at run-time, as well as a help context
ID.
Size The height, the width, the percentage to resize the object by, the direction to resize
the object in, and whether the object is uniformly resized.
Misc The object's layer in a picture, as well as numerous properties specific to certain
object types..
Color The foreground color, background color, and edge color of the object, as well as
edge and grid properties specific to a chart object.
Style The fill style, the edge style, and the line width, as well as properties specific to
rounded rectangle, pipe, and chart objects. Not all objects have a fill style. Refer to
the Coloring and Styling Objects section for more information.
Rotate The angle of rotation of an object and the unit of measure for the angles. Ovals,
rounded rectangles, and charts do not have rotation properties.
Text The font size, the font style, the font name, and the text displayed by the object.
Text properties apply only to text objects.
Behavior The behavior of the object's sizing, scaling, alignment, and text properties. There
are also properties specific to chart objects.
Gradient The fade color, fade type, gradient angle and blend percentage to use for the
gradient fill. Pipe objects do not have fade type and gradient angle properties.
Fill The direction to fill the object, and the percentage to fill the object.
Appearance The background and foreground colors , and the background style and caption of a
button object.
Variable The variable type, and the initial and current values of a variable object.
425
Creating Pictures
For a complete list of properties that you can animate, and the objects the properties apply to, refer to
Object Properties.
NOTE: When entering R, G, B values in the Advanced Animations dialog box, the values must be
enclosed in parentheses.
For more detail on the Animations dialog box, refer to the Animating Object Properties chapter.
For more detailed information on animating objects, refer to the Animating Object Properties chapter.
For more information on using scripts to customize objects, refer to the Writing Scripts manual. For
information on iFIX methods, properties, and events, refer to the iFIX Automation Interfaces Help file.
This chapter describes animations, and how they give you the power to design custom pictures and
dynamic displays.
426
Creating Pictures
• Building Expressions
In order to animate an object, you must connect to one of these data sources. In some cases, you can
make a direct connection to a data source. In other instances, such as with Animation Experts, you
connect an object to an animation object, and then connect the animation object to the data source.
NOTE: Because animations change object properties, you can only use a property in an animation if
the property accepts data. Read-only properties cannot be used. You can display the available
properties by opening the Animations dialog box or the Properties window.
To specify a data source, you enter the appropriate syntax in the Data Source field of the Animations
dialog box. Then, by specifying a conversion method for the data, you tell iFIX how you want to
process the data so that you can achieve the desired effect. For more information on selecting data
sources, and specifying syntax and conversion types, refer to the Defining Data Sources section.
427
Creating Pictures
Expert Select the appropriate Expert from the Experts toolbar, the Task Wizard, or the
Toolbox (Classic and Ribbon views), or from the Tools tab, in the Animations
Group, or by clicking the Animations Dialog Box Launcher (Ribbon view).
Advanced Click the Configure button on the Basic Animations dialog or, if configured,
Animations the Advanced Animations dialog appears when you double-click the object.
dialog box
For some objects, such as OCXs, Alarm Summaries, Data links, and charts, you
must right-click the object and select Animations from the pop-up menu.
Click the tab that contains the property you want to use. You can find a
description of the dialog box tabs in the Entering Property Values Manually
section. The Animations dialog box is available for every object (and every
property of that object) in iFIX. For a description of what each property does,
refer to the Property Description in the Properties area.
428
Creating Pictures
Caption (text objects only) Text Change the text displayed by a text object.
429
Creating Pictures
You can fill an object based on an analog input value or rotate an object based on a SIM or SM2
register value. You can also dynamically scale objects by animating the height and/or width of an
object. When scaling objects in this manner, be careful of the data source you select. For example, if
you animate a rectangle's height based on a variable's current value (data source is
User.Variable1.CurrentValue), the object is resized in the configuration environment to match the
variable's value. Since the WorkSpace is in the configuration environment, the value is set to zero and
the rectangle is resized to look like a horizontal line. When you switch to the run-time environment,
the variable receives new values based on the variable's configuration and the size of the rectangle
changes. When you switch back to the configuration environment, the rectangle appears as a line again
because the variable's value is reset to zero.
The same effect results using the Scale Expert and you select the current value of a variable as the data
source.
• Linear – Accepts any input data from a process database, and returns a corresponding output
value (Example: Animating the foreground color of an oval). Refer to the Understanding
Signal Conditioning section of the Building a SCADA System manual for more detail on how
the Linear object works.
• Lookup – Accepts any input data from a process database and presents that value to each
entry in a lookup table to determine whether that value is in a range. If that value matches the
range, the Lookup object then returns the corresponding output value. If the value does not
match the range, it moves to the next row in the table and returns that output value (Example:
Blinking the color of a rectangle based on a toggle rate).
• Format – Accepts any input data from a database and returns a string as an output value
(Example: Creating a caption for a text object).
The most common animation object is the Lookup object, which is used primarily to apply color. This
application is further described in the Animating Properties Using Color section. For more information
on animation object properties, refer to the iFIX Automation Interfaces Help file.
Most of your connections to data sources are through animation objects. However, you do not need an
animation object to animate an object. For example, if another object contains a property that provides
the desired animation, you can connect to that property. This is because every object has the ability to
perform permanent connections from one of its properties to another. Essentially, the animation object
only transforms data from the property of one object to the property of another object.
1. Select an object.
2. In Classic view, click the appropriate Expert on the Experts toolbar, the Task Wizard, or the
Basic Animation dialog box.
430
Creating Pictures
-Or-
In Ribbon view, on the Tools tab, in the Animations group, click Animations and choose the
appropriate Expert.
3. In the Data Source field, enter the data source you want to use to dynamically set property
values.
4. If appropriate, select the type of data conversion you want to use and complete the related
fields.
5. If appropriate, on the Historical Properties tab, select the start date and time, the time zone,
the historical mode, duration, and update rate.
For a list of commonly-used properties, refer to the Commonly-Used Properties for Animations table
in the Understanding Data Sources section.
To learn more about the fields on the Expert, click the Help button on the Expert. For more
information on iFIX Experts and the Task Wizard, refer to the Using Process Assistants to Expedite
Pictures chapter.
Additionally, you can access some Experts from the Basic Animation dialog box. To open the Basic
Animation dialog box, select Animations from the object's right-click menu.
In the Advanced Animations dialog box, each category is represented by a tab. You can select one or
more properties from these tabs as needed. For example, suppose you want to horizontally fill a tank
and change the foreground color simultaneously. To do this, you would select the
HorizontalFillPercentage property on the Fill tab and the ForegroundColor property on the Color tab.
Regardless of whether you select one property or seventeen, you must connect to a data source for each
property so that the necessary data can be retrieved and processed. The data source for one property
can be completely different than that of another property. For more information about data sources,
refer to the following topics:
431
Creating Pictures
The following table lists the syntax for each data source type.
432
Creating Pictures
A VBA event N/A. When you animate objects with a VBA script, the script handles all of
the animation by directly changing the appropriate properties.
Some third-party OPC servers require characters in their syntax that are not parsable by the Expression
Editor. If the OPC server syntax uses any characters that do not appear in the list of valid characters
below, the server syntax must be enclosed within single quotes (`) as follows:
ServerName.'Device:MyAddress'
In this example, ServerName is the name used to identify the third-party OPC server, and single quotes
surround Device:MyAddress, the part of the syntax that contains the unparsable character(s). If an
unparsable character is not enclosed in single quotes, an error message displays.
Valid Characters: all alphanumeric characters, hyphen (-), underscore (_), exclamation point (!), less
than (<), greater than (>), pound (#), percent (%), dollar sign ($), ampersand (&), forward slash (/),
backslash (\), pipe (|), opening bracket ([), closing bracket (]), and single quote (`).
NOTE: You will have to remove the added single quotes from any VBA scripts for operation to
succeed.
If a single quote (`) or a backslash (\) is a literal part of the addressing string syntax, it must be
preceded by a backslash (\) in order for the character to be passed to the server as part of the address.
433
Creating Pictures
Refer to the documentation supplied with third-party OPC servers for information on server-specific
syntax.
You can select data sources from the Expression Builder dialog box by clicking the tab you want and
selecting the source from the list. For example, to select an iFIX tag AI1 in the SCADA server
SCADA01:
If an existing object contains properties, you can also select those properties from a list. For example,
to select the Width property of a picture window:
As you make selections from the Expression Builder, the text in the lower window changes to match
your selections, enabling you to create an expression. If applicable, the tolerance, deadband, or refresh
rate also appear in this window. The section Building Expressions describes how to create expressions,
and describes the components of the Expression Builder.
To filter data sources, enter the data source string in the Filter field and click Filter. (For the FIX32
Database tabbed page, the Filter button appears as an F.) To select from the list box, click the down
arrow to the right of the field. You can also search for wildcard entries by using an asterisk in the field.
For example, to view all of the F_ fields for blocks, enter F_* in the Filter field.
To find all occurrences starting with a particular string, enter String* in the Filter field, where String is
the text that you want to search for. For example, enter AI* to find all tags starting with AI.
To find all occurrences which contain a particular string, enter *String* in the Filter field, where String
is the text that you want to search for. For example, enter *motor* to find all tags containing the string
"motor" in the name.
You can also search for a string with a single unknown character by using the question mark wildcard
(?). For example, the search string TAN? locates the string TANK.
434
Creating Pictures
The following table lists the types of data conversions you can specify in the Data Conversion area of
the Animations dialog box.
Range A range of values on which to animate an object. You can enter the minimum and
maximum input and output values. When you enter a range of values, the input
values are mapped into the output values, allowing you to apply linear signal
conditioning. For information on signal conditioning, refer to the Understanding
Signal Conditioning section in the Building a SCADA System manual.
You can also specify if input is allowed to the range.
Table A lookup table. Using a lookup table is like using a spreadsheet, as the following
figure shows.
When completing a lookup table, you can define a single lookup value or a range
of lookup values for each row in the table. In addition, you need to enter an
output value. Depending on the selected property, this value may be a color,
string, fill style, edge style, or numeric value. When the incoming value from the
data source matches an entry in the table, it changes the selected property to
match the output value.
The buttons below the lookup table help you modify the appearance of the table.
You can insert, modify, or delete rows in the table by clicking the appropriate
buttons. Or, by clicking the Advanced button, you can assign toggle values, a
shared lookup table, a toggle rate, and a tolerance value for exact match
thresholds. For more information on these advanced options, refer to the
Animating Properties Using Color and Classifying Animations Errors sections.
For more information on using the toggle rate, refer to the Using Blinking
Thresholds section.
435
Creating Pictures
Object No signal conditioning. The data received from the data source is processed or
displayed at that exact value.
The following table data conversion has been set up for the FillStyle property of an oval.
0 25 0-Solid
26 50 2-Horizontal
51 75 3-Vertical
76 100 1-Hollow
Using these definitions, the oval fill style appears as shown in the following table.
Less than 25
436
Creating Pictures
Between 26 to 50
Between 51 to 75
Between 76 to 100
The following table details the error output you can define for a particular data conversion type.
The data Lets you define Which gives you the following options...
conversion... errors using...
437
Creating Pictures
The data Lets you define Which gives you the following options...
conversion... errors using...
Format • Current Output Display messages in a Data link for any of the
following errors:
• Error Table
• Communication Failure
• Data Uncertain
• Unknown Failure
• Device Failure
• Out of Space
• Configuration Error
• Custom messages for any of the above
as entered in User Preferences.
For more information on the output fields, refer to the Animating Properties Using Color section.
NOTE: Error handling in iFIX is global, not per-object. You can choose the behavior of a single
object based on an error condition; however, because of performance reasons, the error classification
is applied system-wide.
iFIX provides predefined error defaults that you can customize for your needs. The Animations Data
Error Defaults tabbed page of the User Preferences dialog box contains the default OPC error strings
and values that display when an error occurs. The tabbed page is divided into three areas:
• Linear Animation Object Defaults – Contains six numeric, OPC failure strings based on the
Linear object using a Range data conversion.
• Format Animation Object Defaults – Contains six OPC strings based on the Format object
using a Format data conversion. The error string is displayed in a Data link.
• Lookup Animation Object Defaults – Contains six numeric table, string table, and color
table entries based on the Lookup object using a Table data conversion.
The error defaults are global, resulting in better system performance. You can modify the defaults to
make error messages more intuitive for your specific process. For example, when a device error
occurs, Data links display by default the text "XXXX". To create a more intuitive message for device
error messages in the future, enter an alternate string in the Device field of the Format Animation
Object Defaults area. For example:
438
Creating Pictures
By changing the defaults, you can configure error messages with the text and color that you want,
thereby customizing your error handling scheme. For more information on the fields of the Animations
Error Defaults tabbed page, refer to the online help.
When animating the color of an object, you must define a color threshold. A color threshold is either a
color and value combination or a color and alarm combination. You can define the following types of
color thresholds:
For each type of threshold, specify one or more rows in a lookup table. When coloring by analog
value, each row in the lookup table defines a color and either a single value or a range of values that
you want to associate with the color. When coloring by alarm, each row defines the color and the
associated alarm.
NOTE: Any time a data source changes, iFIX refreshes the color tables. To avoid problems when
modifying a color table, be certain that all your changes are correct.
The following sections show you how to define color thresholds using the methods introduced above.
Refer to the Specifying Data Conversions section for information on how to use lookup tables.
For example, let's say a factory controls a tank of water for cleaning and manufacturing purposes.
When the water in the tank falls below 1000 gallons, the pumps from the main water supply turn on
and refill the tank. When the water in the tank rises above 9000 gallons, the pumps shut off. The
thresholds for this tank are shown in the following figure.
439
Creating Pictures
When operators see the tank change color, they can also determine whether the pumps have turned on
(blue) or off (red). To color an object by analog value, select the Range Comparison option button on
the Color Expert and edit the minimum and maximum values of the lookup table as desired.
For more detailed information on animating objects, refer to the Animating Object Properties chapter.
When the value is not in the table, the object is colored black.
Using digital values lets you define thresholds based on an exact match and a tolerance. When you
specify an exact match, you declare that you only want to change an object's color when the data
source exactly matches the threshold value you have assigned to that color, plus or minus a specified
tolerance (the allowable deviation from that value). Tolerances only apply to table conversions where
the configuration is set to exact match.
440
Creating Pictures
NOTE: How the output data is displayed depends on how you classify error handling in the Advanced
Animations dialog box. For more information, refer to the Classifying Animations Errors section.
To color an object by digital value, select the Exact match option button on the Color Expert and
assign digital values to the colors you want to use. If desired, enter a tolerance value in the Exact
Match Tolerance field. The default tolerance is 0. If you are using VBA, set the Tolerance property of
the Lookup object.
When the data source is an iFIX process database, tag alarms can also provide data on more than just
control limits. For example, suppose that the speed at which the tank fills is crucial to the process. To
effectively monitor this condition, you could set up another threshold using the Rate of Change alarm
state.
For more information on coloring by current alarms, refer to the Implementing Alarms and Messages
manual.
For more information on coloring by latched alarms, refer to the Implementing Alarms and Messages
manual.
To assign a blinking threshold using the Color Expert, double-click the Blink To cell in the row of a
value and select the color you want to assign to the threshold. You can access the Color Expert via the
toolbox or by selecting the Color Animation button in the Basic Animation dialog box. Using the
Advanced Animations dialog box, you can also define blinking threshold values using the New Level
dialog box. Click the Toggle option button in the Output area and enter the output value of the blinking
threshold in the field.
You can also set a selected object to blink every time the data source registers a new alarm. The object
stops blinking when the alarm is acknowledged. This setting overrides the blinking settings defined for
individual thresholds. With the Blink on New Alarm check box selected, you can set the color for the
blink by clicking the Blink on New Alarm Color check box.
For examples of how to use blinking thresholds in your alarming scheme, refer to the Implementing
441
Creating Pictures
Blinking Rate
The rate at which objects blink is defined in Advanced Lookup Options dialog box. This dialog box
also lets you select the source and value of the toggle rate that causes the blinking action. The
configurable blink speed allows you to set the threshold to blink at a set rate, in seconds. To set the
blink speed, enter a value in the Toggle Rate field.
For more information on advanced options with the lookup table, refer to the Specifying Data
Conversions section.
On the Color Expert, click the Use Shared Table check box and then, in the Shared Table field, enter
the data source for the shared color table. Click the Browse button to make a selection from a Picture
or a Global data source available in your system.
You can open the Color Expert by clicking on the Color Expert button in the toolbox, or by selecting a
specific Color Animation in the Basic Animation dialog box.
When you write a script to animate an object, the script must define:
The parameters you specify vary depending on the type of data conversion you want to use. For
example, if you want to use a Table data conversion, the parameters are cells of the table. Alternately,
if you want to use a Range data conversion, the parameters are the minimum and maximum input and
output values.
After defining these items in your script, you must connect the data source to the object you want to
animate.
442
Creating Pictures
For more information on writing scripts that animate the properties of an object, refer to the Writing
Scripts manual.
To animate the member objects of a group, drill down to the object in the group that you want to
animate and complete the necessary entries in the appropriate Expert. If the group has an animated
property, and one of its member objects has the same property animated in a different way, the most
recent animation takes precedence. For example, if you animate the group's ForegroundColor property,
and then in turn animate a nested object's ForegroundColor property, you will see the nested object's
animation when you run the picture.
You can also use the Basic Animation dialog box to animate a grouped object or member objects in a
group. For more information on working with grouped objects and their members including drilling
down, refer to the Creating Complex Objects section.
Modifying Animations
There may be times when you must change the animations you create. Modifying animated objects is
similar to creating them. The main difference is that when you open either of the Animation dialog
boxes, any properties that have been dynamically changed are indicated by a selected check box
(Basic) or an arrow on its corresponding tab (Advanced), as the following figures show.
443
Creating Pictures
To modify an existing Animation in the Basic Animation dialog box, click the Expert button associated
with that animation. This opens the Expert dialog box and allows you to make changes to that
animation. Clearing the check box deletes the existing animation.
To modify an existing animation in the Advanced Animations dialog box, select the tab containing the
property you want to change and click Animate. Perform any required modifications and click OK.
Deleting Animations
When you no longer need an animation, you can delete the animation or the object that contains the
animation. Deleting animations removes the animation from the property to which it was assigned.
CAUTION: Deleting an animation permanently destroys your selections. Do not delete an animation
444
Creating Pictures
unless you understand the effect it will have on your objects and pictures.
Building Expressions
As described earlier, there are many data sources you can use to animate the properties of an object.
Another valuable option is to use an expression. An expression is a data value or multiple data values
connected with one or more operators. Using the Expression Builder, you can create specific
expressions that access data from unique sources. This gives you more flexibility when assigning
dynamic object properties.
• Numeric constants.
• Strings enclosed in quotation marks (" ").
• iFIX tags.
• Proficy Historian tags.
• OPC server I/O addresses.
• Picture properties.
• Object properties.
The Expression Builder dialog box is divided into multiple tabs, which are described in the following
table.
The Displays...
tab...
FIX Any SCADA servers to which your computer is communicating. Use a data server
Database as a data source when you want to animate an object or an iFIX tag. The tabbed page
includes Node Names, Tag Names, and Field Names windows to help you specify
your selections.
Pictures The pictures residing on your computer. The Objects window displays each object in
the picture. Use one of these objects as a data source when you want to animate an
object with a picture or object property value. The Properties window displays the
properties for the selected object so that you can select a specific property.
Globals Global data sources. The tabbed page includes Objects and Properties windows to
help you specify your selections.
445
Creating Pictures
The Displays...
tab...
Data Third party OPC servers. Data source connections to data servers fire at run-time
Servers only.
Alarm A filtered list of SCADA servers that your computer is communicating with. The
Counters tabbed page includes the Alarm AreaTag Names window that displays a filtered list
of alarm areas on the selected SCADA and alarm counter tags. The Alarm Counter
Field Names window displays a filtered list of fields available from the selected
area.
Proficy Any Proficy Historian Server to which your computer is communicating. Use a
Historian Proficy Historian Server data source when you want to animate an object. The
tabbed page includes Node Names and Tag Names windows to help you specify
your selections.
When you select a data source, it appears in the field at the bottom of the dialog box. You can add
strings by typing them into the field. You can also add operators and numeric constants by typing them
into the field, or by clicking the operator buttons on the right side of the dialog box while the cursor is
in the field. To display the operator buttons, click the Mathematical Functions button.
NOTE: If you have created an object-to-object connection, such as the fill percentage of one tank to
another, or created a connection to a data source, the animated properties display in boldface in the
Properties list of the Pictures tab for the selected object.
The Filter fields and buttons allow you to filter data sources. For more information, refer to the
Filtering Data Sources section. Additionally, you can specify a tolerance, deadband, and refresh rate in
the appropriate fields. These functions are described later in this section.
For more information on selecting data sources from the Expression Builder dialog box, including
examples, refer to the Selecting Data Sources from a List section.
To show or hide the tab... Set this property to TRUE or FALSE, respectively...
Pictures ShowPicturesTab
446
Creating Pictures
To show or hide the tab... Set this property to TRUE or FALSE, respectively...
Globals ShowGlobalsTab
For more information on modifying VBA scripts, refer to the Writing Scripts manual.
All three of these characteristics apply to a particular connection; they are not global. For example, if
you connect the object RECT2.PROP1 to source FIX32.NODE.TAG.F_CV, you can specify different
refresh rates for the rectangles properties, even though the object references the same database tag.
To enter a refresh rate enter a rate, in seconds, in the Refresh Rate field. Refer to the following table to
determine how fast the connections will update based on the refresh rate you enter.
Refresh Rates
If you choose a refresh rate Then the data source connection will update no faster
of... than...
447
Creating Pictures
To enter a tolerance or deadband limit, enter a value in the Tolerance or Deadband fields, respectively.
NOTE: The Tolerance setting in the Expression Builder is for the expression only. To set the tolerance
for an Exact Match Lookup Table, you must use the Animations Dialog box. For more information,
refer to the Classifying Animations Errors section.
For more information on refresh rate, refer to the Increasing the Refresh Rate section in the Setting up
the Environment manual.
value
where value is a constant or a data source and operator is a mathematical, relational, or boolean
symbol.
• Mathematical operators
• Relational operators
• Boolean operators
To access these operators, click the Mathematical Functions button on the Expression Builder dialog
box and select them from the expanded operator keypad. You can also add numerals to your
expressions by clicking the appropriate numeral in the Numeric area.
In addition to these operators, the Expression Builder allows you to select a set of functions. These
functions are not shown on the expanded operator keypad and must be entered manually. The
following table summarizes the available functions and their syntax. All trigonometric functions
require values entered in radians.
448
Creating Pictures
For more information on these functions, refer to the Working with Functions section in the Creating
Recipes manual.
The operators and their associated syntax are described in the following sections with examples of
each.
Mathematical Operators
Mathematical operators let you add, subtract, multiply, and divide two or more values. Using these
operators, you can create a mathematical expression. You can also change the operator's order of
precedence in the mathematical expression by using parentheses.
Mathematical expressions are evaluated by determining the data value on each side of the
mathematical operator and then performing the mathematical operation. For example, consider the
following expression:
5+Fix32.SCADA1.AI1.F_CV
449
Creating Pictures
When this expression is evaluated, the current value of the iFIX tag AI1 is determined and then it is
added to 5. If the value is 50, for example, the expression evaluates to 55.
Because of the way the expressions are evaluated, the values on both sides of an operator must both be
either a numeric value or a string, but not one of each. You cannot, for example, add the descriptive
string "Pump1 for Main Water Supply" to the data source Fix32.SCADA1.AI1.F_CV. However, you
can add that same string to the data source Fix32.SCADA1.AI1.A_DESC.
The syntax for each mathematical operator in provided in the following table:
Operator Syntax
Expression Value
Fix32.SCADA1.AI5.F_CV*OPC1.N35 The product of the iFIX tag AI1 and the I/O
address N35. If the tag's value is 100, and the I/O
point's value is 50, the expression evaluates to
5000.
450
Creating Pictures
Expression Value
Relational Operators
Relational operators let you compare two values to determine how they relate to each other.
Operator Syntax
Relational operators are commonly used in boolean conditions to determine if part or all of an
expression is true or false. An example:
Fix32.SCADA1.AI1.F_CV = 50
451
Creating Pictures
When this expression is evaluated, the value of the left side of the operator is compared to the right
side. If the two values match, the condition is true. Otherwise, it is false.
You can compare any data value to any other data value. For example, consider the following boolean
conditions:
Condition Value
3>1 TRUE
Boolean Operators
Operator Syntax
OR condition OR condition
The AND operator is used when both parts of the expression must be true. For example, suppose that
in a factory, several ingredients need to be mixed together for up to 5 minutes while the mixture is
being heated to 200 degrees. When both of these conditions (5 minutes and 200 degrees) are true, you
want to create an expression to display the following text:
452
Creating Pictures
Mixing...
To accomplish these tasks, a rectangle object, MixTime, has been set up as a progress bar to show the
time elapsed as a percentage. A text object, Temperature, has also been animated to show the current
temperature.
Next, a text object needs to be created for the Mixing message. This object needs its Visible property
animated with the following expression:
This expression is true only when the mixing time is less than 5 minutes and the temperature is less
than 200 degrees. When either condition is no longer true, the mixer stops and the message is no longer
visible.
Example: OR Operator
Now suppose you want to display instructions to the operator about the next stage of the process when
mixing stops. To do this, you can create another text object and animate its Visible property with the
following expression:
Unlike AND or OR, the NOT operator does not connect two boolean conditions. Instead, it inverts the
value of a condition. For example, if the following condition is true:
Alarms.Tank3.HorizontalFillPercentage>80
NOT Alarms.Tank3.HorizontalFillPercentage>80
When evaluating an expression, iFIX defines an order of precedence for each operator. The order of
precedence determines which operators (and the values on each side of the operator) are evaluated
first. The following table lists each operator from highest to lowest precedence.
Operator Precedence
*, /, AND 2
+, - (subtraction), OR 3
453
Creating Pictures
Operator Precedence
=, <> 5
You can change the order of precedence by enclosing an expression in parentheses. Parentheses are
regarded with the highest priority; thus all expressions within the parentheses are evaluated first.
Operators with the same precedence are evaluated in the order they appear from left to right.
Expression Value
6+4/2 8
(6+4)/2 5
The GETBIT function allows for bit-level manipulations of data. The GETBIT function has the
following syntax:
The source token is promoted to the closest unsigned integer data representation that maintains its
length. The corresponding zero based range of bits (bit zero is the most significant bit) is extracted
from the source and an integer is returned which corresponds to the value these bits define if they
existed starting in the least significant bit of their own integer. For example:
GETBIT ( 8, 4,N.T.F)
IMPORTANT: Be aware that you must have spaces in between the operator and operands in
expressions.
Modifying Expressions
You can modify an expression by editing the entry in the Data Source field of either the Expert, or the
Animations or Expression Builder dialog boxes. We recommend using the Expression Builder, as you
can more easily enter new data sources by selecting or typing them into the field. To delete an
expression, right-click the expression and select Delete.
454
Creating Pictures
How Do I...
In the Proficy iFIX WorkSpace, you can perform the following steps with animations, properties, and
expressions:
• Experts – In the iFIX WorkSpace, select the appropriate Expert from the Experts toolbar, or
the Task Wizard (Classic or Ribbon views) or on the Tools tab, in the Animations group,
Animations list (Ribbon view). If the Toolbox is enabled, click the button on the Toolbox.
• Basic Animation dialog box – In the iFIX WorkSpace, double-click an object or select
Animations from the right-click menu. This dialog box contains many commonly used
animations. For a listing of all animations available to an object, use the Advanced
Animations dialog box.
• Advanced Animations dialog box – Click the Configure button on the Basic Animation
dialog box; or, if configured, the Advanced Animations dialog box appears when you double-
click an object in the iFIX WorkSpace or select Animations from the right-click menu.
NOTE: To configure the Advanced Animations dialog box to always appear when you
double-click an object or select Animations from the right-click menu, clear the Always Show
Basic Animation dialog box option on the Picture Preferences Tab of the User Preferences
dialog box.
455
Creating Pictures
3. Select the check box of the animation property that you want to add to your object. The
associated Animation Expert dialog box opens.
If the Animation that you want to add is not listed in the Basic Animation dialog box, click
the Configure button to open the Advanced Animations dialog box. The Advanced
Animations dialog box contains all available animations for the selected object. For more
information on creating objects in the Advanced Animation dialog box, refer to the Working
with Advanced Animations Overview.
1. In the iFIX WorkSpace, right-click an object and select Animations. The Basic Animation
dialog box appears.
2. Click the button of the animation property that you want to modify. The associated Animation
Expert dialog box opens.
456
Creating Pictures
IMPORTANT: If you select the check box, you will delete your animation. To modify an
animation, you must click the button to access the Expert dialog box.
3. Make any required modifications to the animation and click OK to return to the Basic
Animation dialog box.
1. In the iFIX WorkSpace, right-click the group you want to animate, and select Animations.
The Basic Animation dialog box appears.
2. Click the appropriate Expert button.
3. Enter the configuration information for the Animation Expert.
1. In the iFIX WorkSpace, select Animations from the object’s right-click menu. The Basic
Animation dialog box appears. If a property contains an animation, the check box is selected.
2. Clear the check box to delete the animation.
Based on your User Preferences settings, you may be prompted to acknowledge this action by
clicking Yes. To configure whether or not you are prompted upon deleting an animation,
modify the Prompt on Delete option in the Picture Preferences tab of the User Preferences
dialog box.
IMPORTANT: To delete all animations you configured in the Advanced Animations dialog
box, clear the Advanced Animations check box. If you have assigned multiple animations from
the Advanced Animations dialog box, be aware that you will be deleting all of those
animations. If you have multiple animations assigned in the Advanced Animations dialog box,
it is recommended that you delete them separately within the Advanced Animations dialog box
itself.
1. In the iFIX WorkSpace, double-click the object you want to modify. The Basic Animation
457
Creating Pictures
1. In the iFIX WorkSpace, double-click the object you want to modify. The Basic Animation
dialog box appears.
2. Click the Configure button. The Advanced Animations dialog box appears.
3. Select the tab containing the animation you want to delete. Look for tabs with arrows to help
you navigate to properties that have been animated.
4. Clear the Animate check box for the property that contains the animation you want to delete.
5. Click OK to save your changes and close the dialog box.
1. In the iFIX WorkSpace, double-click the object you want to modify. The Basic Animation
dialog box appears.
NOTE: For some objects, you must right-click the object and select Animations from the pop-
up menu.
Modifying Properties
In the Proficy iFIX WorkSpace, you can perform the following steps with property modifications:
458
Creating Pictures
1. In the iFIX WorkSpace, right-click the object you want to modify and choose Property
Window. The Properties dialog box appears.
2. Locate the property you want to change in the left column of the window and double-click its
row.
3. If the property lets you enter a new value, enter that value and press Enter. After you enter the
new value, the object changes to reflect your entry.
NOTE: If the property displays a drop-down list, select the new value from the list. If the
property is a Boolean value, double-clicking will automatically toggle the value. If the
property displays an ellipsis button, click the button to open the appropriate dialog box where
you can make the required changes.
1. In Classic view, in the iFIX WorkSpace, from the WorkSpace menu, select User Preferences.
-Or-
In Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and then click User
Preferences.
2. Click the Picture Preferences tab.
3. In the Window Properties area, select the Click and Stick Enabled check box.
4. In the Properties area, enter a value in the Highlight Timeout Interval field to define the time
period. The value must be entered in seconds.
1. In the iFIX WorkSpace, double-click an object. The Basic Animation dialog box appears.
2. Open the Advanced Animations dialog box, or click the appropriate Expert in the Basic
Animation dialog box.
459
Creating Pictures
If you are using the Advanced Animations dialog box, select the tab containing the property
you want to change and select the applicable Animate check box. The dialog box expands to
display the applicable animation properties.
3. Click the Browse button to the right of the Data Source field.
4. Click the appropriate tab containing the data source you want.
5. In the Filter field, enter a data source name or select one from the drop-down list. If desired,
use the asterisk wildcard character to search for data source names.
6. Click Filter or, if you are on the FIX Database or Alarm Counters tabbed page, click F.
Creating Expressions
To create an expression:
1. In the iFIX WorkSpace, double-click an object. The Basic Animation dialog box appears.
2. Click the Configure button. The Advanced Animations dialog box appears.
3. Select the tab containing the property you want to change and select the appropriate Animate
check box.
4. Click the Browse button to the right of the Data Source field.
5. Click the appropriate tab and select the data source you want.
6. If you want to combine another data source in the expression, click the Mathematical
Functions button and enter an operator.
Modifying Expressions
To modify an expression:
1. In the iFIX WorkSpace, double-click an object. The Basic Animation dialog box appears.
2. Click the Configure button. The Advanced Animations dialog box appears.
3. Select the tab containing the property you want to change and select the appropriate Animate
check box.
4. Click the Browse button to the right of the Data Source field.
5. Select the desired data source.
6. If you want to combine another data source in the expression, click the Mathematical
Functions button and enter an operator using the expanded keypad.
7. Select another data source or enter a numeric value, string, or Boolean condition. Repeat steps
4 to 6 until you create the desired expression.
Deleting Expressions
To delete an expression:
1. In the iFIX WorkSpace, double-click an object. The Basic Animation dialog box appears.
2. Click the Configure button. The Advanced Animations dialog box appears.
460
Creating Pictures
1. In the iFIX WorkSpace, double-click the object you want to modify. The Basic Animation
dialog box appears.
2. Click Configure. The Advanced Animations dialog box appears.
3. Click the tab containing the property you want to change, and select the Animate check box
next to that property.
4. From the Data Conversion list, select Range.
5. In the Minimum Input and Minimum Output fields, enter the minimum input and output
values, as needed.
6. In the Maximum Input and Maximum Output fields, enter the maximum input and output
values, as needed.
7. If you want the selected object to read a value from the data source when the picture opens,
select the Fetch Input Range on Open check box.
8. If you want to perform an animation on an object in its current position, not in the absolute
position specified by the logical unit value in the Minimum Output field, select the Use Offset
check box.
1. In the iFIX WorkSpace, double-click the object you want to modify. The Basic Animation
dialog box appears.
461
Creating Pictures
1. In the iFIX WorkSpace, double-click the object you want to modify. The Basic Animation
dialog box appears.
2. Click Configure. The Advanced Animations dialog box appears.
3. Click the tab containing the property you want to change, and select the Animate check box
next to that property.
4. From the Data Conversion list, select Format.
5. In the Type field, specify whether you want to write data to the database. In-Place allows the
user to write to the database.
6. Select the Confirm check box if you want operators to confirm each entry they make.
7. From the Justify list, select how to justify the data on the screen.
8. From the Type list, select the type of data.
9. If the data type is alphanumeric, enter the number of lines to display in the Lines field and the
number of characters per line in the Chars/Line field. If the data type is numeric, enter a value
of 0 to 7 in the Whole Digits field and 0 to 5 in the Decimal field.
10. Select the Raw Format check box if you want to display data in its raw format.
462
Creating Pictures
1. In Classic view, in the iFIX WorkSpace, from the WorkSpace menu, select User Preferences.
-Or-
In Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and then click User
Preferences.
2. Click the Animations Data Error Defaults tab.
3. Enter the desired numeric value or text string based on the following guidelines:
• For range conversions, enter a numeric string in the appropriate fields of the Linear
Animation Object Defaults area.
• For format conversions, enter a text string in the appropriate fields of the Format
Animation Object Defaults area.
• For table conversions, enter a numeric or string value in the appropriate Numeric
Table Entries or String Table Entries fields, respectively. To assign a color to the
new entry, click the corresponding field in the Color Table Entries column and select
a color from the Select Color dialog box.
1. In the iFIX WorkSpace, double-click the object you want to modify. The Basic Animation
dialog box appears.
2. Click Configure. The Advanced Animations dialog box appears.
463
Creating Pictures
Because the iFIX configuration environment is fully integrated with the Proficy iFIX WorkSpace,
running your pictures is simply a matter of switching environments. You do not have to start another
application or leave your picture. Just click the Switch to Run button on the Standard toolbar (Classic
view), or on the Home tab in the WorkSpace group, click Switch to Run (Ribbon view), or press
Ctrl+W. This launches you into the run-time environment. The Proficy iFIX WorkSpace system tree
disables, and the objects in your picture activate. To return to your drawing, select Switch to Configure
from the WorkSpace menu (Classic view), or on the Home tab in the WorkSpace group, click Switch
to Configure (Ribbon view), or press Ctrl+W again.
When working with your pictures in the run-time environment, you have many of the same iFIX
WorkSpace menus available as you did in the configuration environment. The operations you can
perform are dependent on two factors: the type of document that you have open, and the access
privileges you are allowed. For example, typically operators will employ some degree of
environmental protection to implement a secure run-time environment. In this case, some of the
Proficy iFIX WorkSpace menus may not be available because access to specific functions was not
granted. For more information on how to implement this type of security, refer to the Implementing
Security manual.
The following sections provide detail on the operations you can perform with your pictures while in
the run-time environment. For more information on the run-time environment of the Proficy iFIX
WorkSpace, refer to the Understanding iFIX manual.
464
Creating Pictures
Enable Tooltips EnableTooltips Enable tooltips for the object at run-time. Text
for the highlight comes from the Description
property.
Enable Highlight HighlightEnabled Highlight the object at run-time. When the cursor
passes over the object, a single-lined box
surrounds the object.
Enable Select IsSelectable Select the object at run-time. When you select the
object, a double-lined box surrounds the object.
Each of the properties can also be animated so that you can perform more specific actions. For more
information on animating object properties, refer to the Animating Object Properties chapter.
Some objects can be modified at run-time by writing and executing Visual Basic scripts. For more
detail on writing scripts to control objects at run-time, refer to the Writing Scripts manual.
For more information on working with Alarm Summary objects in the run-time environment, refer to
the Working with the Alarm Summary Object section of the Implementing Alarms and Messages
manual.
465
Creating Pictures
• Displaying time cursor tooltips to determine plot values and time stamps.
For more information on working with charts in the run-time environment, refer to the Working in the
Run-time Environment section of the Trending Historical Data manual.
Locating Objects
The Locate Object Expert lets you search for an object in the current document or any open documents
in the Proficy iFIX WorkSpace while in the run-time environment. Simply open the Expert and type
the object's name in the Object's Name field. You can access this Expert from the Command Category
of the Task Wizard.
• Synchronize the time for all historical data sources to the times displayed in the Start Time
and End Time fields (by clicking any of the controls on the Global Time Control). This
synchronization applies to all open pictures where GlobalTimeSync is set to true. The
parameters in the Global Time Control do not persist when you exit run mode.
• Set the historical data sources to end at the current time (using the Set to Current Time button)
NOTE: If the historical data source in an object is configured for Current Value mode, the
Set to Current button has no effect on it.
• Scroll through the historical data, either forward or backward, quickly or slowly (using the
Scroll buttons).
To use the Global Time Control, the GlobalTimeSync picture property must be set to true. By default,
GlobalTimeSynch is set to true on all pictures. If the GlobalTimeSync is not set to true, than the Global
Time Control and its control buttons has no effect on the open pictures. The GlobalTimeSync property
can be accessed via the picture's Property Window.
To configure the Global Time Control, click Configuration on the Historical tab. This opens the Global
Time Control Configuration dialog box. There, you can set the start time and end time for the historical
displays, as well as the update and scroll rates.
Clicking OK applies the parameters set in the Global Time Control to all open pictures.
The Global Time Control is enabled for all pictures, by default. If you do not want operators to be able
to configure the Global Time Control, then disable this option, by setting GlobalTimeSync to false, via
the Properties window.
To display the Historical tab, which contains the Global Time Control, you can either:
466
Creating Pictures
Click the Historical tab, which will cause it to display until you click elsewhere.
-Or-
Clear the Minimize the Ribbon option from the Quick Access Toolbar, which causes the Historical tab
to display until you leave run mode.
The Global Time Control has several buttons which control the display. They are pictured in the
following image and detailed in the following table.
Button Description
Fast Scroll Back. By default, this scroll value is a percentage of the duration
(either the Duration you entered directly in the Global Time Control
Configuration dialog box, or the duration calculated from the End Time-
Start Time in the Global Time Control Configuration dialog box). Otherwise,
this scroll value is the number of days, hours, minutes, or seconds as defined
in the Global Time Control Configuration dialog box.
Slow Scroll Back. By default, this scroll value is a percentage of the duration
(either the Duration you entered directly in the Global Time Control
Configuration dialog box, or the duration calculated from the End Time-
Start Time in the Global Time Control Configuration dialog box). Otherwise,
this scroll value is the number of days, hours, minutes, or seconds as defined
in the Global Time Control Configuration dialog box.
Apply the settings from the Global Time Control Configuration dialog box to
all open, or subsequently opened pictures, that have the GlobalTimeSync
picture property set to true.
NOTE: If you have scrolled in your picture, either forward or back, after
you click Apply, the time period displayed in the picture is reset to the period
specified in the Global Time Control Configuration dialog box; the time to
which you scrolled is no longer displayed.
467
Creating Pictures
Button Description
Pause the Historical Update of objects that have a historical update rate
configured. Objects that do not have a historical update rate configured are
not affected.
NOTE: Even though a picture is paused, you can still scroll forward or
back.
Set the End Time of the Global Time Control to the Current Time.
Slow Scroll Forward. By default, this scrolls the time frame as a percentage
of the duration (either the Duration you entered directly in the Global Time
Control Configuration dialog box, or the duration calculated from the End
Time- Start Time in the Global Time Control Configuration dialog box).
Otherwise, this scroll value is the number of days, hours, minutes, or seconds
as defined in the Global Time Control Configuration dialog box.
Fast Scroll Forward. By default, this scrolls the time frame as a percentage of
the duration (either the Duration you entered directly in the Global Time
Control Configuration dialog box, or the duration calculated from the End
Time- Start Time in the Global Time Control Configuration dialog box).
Otherwise, this scroll value is the number of days, hours, minutes, or seconds
as defined in the Global Time Control Configuration dialog box.
NOTE: Changes made using the Global Time Control apply to historical data sources in all open
pictures which have the GlobalTimeSync property set to true.
The time frame of the data displayed is adjusted to represent the time of your local time zone.
Example
• Duration = 1 hour
• End Time = 10:00 a.m.
• Update Rate = 10 minutes
• Slow Scroll Percentage = 10%
Clicking Apply applies these settings to all objects containing historical animations within any open
picture that has the Global Time Control enabled.
In this example, with the preceding parameters configured in the Global Time Control, causes the
following to occur:
• Historically animated objects display historical values between 9:00 a.m. and 10:00 a.m.
468
Creating Pictures
• After 10 minutes, the picture updates, with historical animations displaying values between
9:10 a.m. and 10:10 a.m.
• Clicking Slow Scroll moves the time window for historical animations forward or backward
by 6 minutes
Limitations
If you apply a short update rate to pictures that contain a large number of objects with Historical
Animations, you may experience performance issues – your objects may not update at the expected
rate.
NOTE: When using the Use Database Tag(s) for Item(s) Selected in Run Environment option in the
experts, make sure that the object is highlightable, but not selectable. If the object is selectable when
the script is fired, the script looks at that object for a data source and fails when it cannot find one.
Open a digital tag Use Database Tag(s) for Item(s) Open Digital Tag
Selected in Run Environment
Close a digital tag Use Database Tag(s) for Item(s) Close Digital Tag
Selected in Run Environment
Toggle a digital tag Use Database Tag(s) for Item(s) Toggle Digital Tag
Selected in Run Environment
Write a value to a tag Use Database Tag(s) for Item(s) Write Value to Tag
Selected in Run Environment
469
Creating Pictures
Ramp a value to a tag Use Database Tag(s) for Item(s) Ramp Value to Tag
Selected in Run Environment
Turn a tag on scan Use Database Tag(s) for Item(s) Turn Tag On Scan
Selected in Run Environment
Turn a tag off scan Use Database Tag(s) for Item(s) Turn Tag Off Scan
Selected in Run Environment
Set a tag to automatic mode Use Database Tag(s) for Item(s) Set Tag Auto
Selected in Run Environment
Set a tag to manual mode Use Database Tag(s) for Item(s) Set Tag Manual
Selected in Run Environment
Toggle a tag between Use Database Tag(s) for Item(s) Toggle Tag
automatic and manual mode Selected in Run Environment Auto/Manual
Acknowledge all alarms Acknowledge All Alarms for Current Acknowledge All
Picture in Run Environment Alarms
For more information on alarm acknowledgment, refer to the Implementing Alarms and Messages
manual.
The following table lists the automation interfaces available for working with multiple picture
470
Creating Pictures
instances.
OpenPicture Subroutine Opens the specified picture. Can be configured to open multiple
instances of a specified picture.
OpenTGDPicture Opens a picture with the specified tag group file. Can be configured
Subroutine to open multiple instances of a picture with different tag group files.
ReplacePicture Subroutine Closes a picture and replaces it with another picture. If the picture
you select is already open in the WorkSpace, another instance of that
picture opens.
ClosePicture Subroutine Closes the specified picture. If there are multiple instances of a
picture open, all instances of that picture are closed. If a different
alias is assigned to each instance, you can close one instance using
an alias.
Open_QT_Pic_Ex Method Opens a Quick Trend Picture for the selected object(s) with a set of
pens based on the first eight (8) valid tags. Can be configured to
open multiple instances of a Quick Trend Picture.
Open_TCP_Pic_Ex Opens a Tag Control Panel Picture that displays up to 20 of the valid
Method tags associated with the currently selected object. Can be configured
to open multiple instances of a Tag Control Panel Picture.
Open_TS_Pic_Type_Ex Specifies the type of Tag Status picture to open. Can be configured
Method to open multiple instances of a Tag Status Picture.
Open_TS_Pic_Ex Method Opens the Tag Status Picture for first found tag for the selected
object(s). Can be configured to open multiple instances of a Tag
Status Picture.
Additionally, the following experts allow you to work with multiple picture instances:
471
Creating Pictures
script in the main picture (not the instance). Alternatively, you can edit the VBA script in the main
picture (not the instances) in run mode using the steps below.
To edit a VBA script of a picture with multiple instances open in run mode:
1. In Classic view, in the iFIX WorkSpace, from the WorkSpace menu, select Visual Basic
Editor.
-Or-
In Ribbon view, on the Home tab, in the WorksSpace group, click the Visual Basic Editor.
2. In the Project tree display, browse to the project you want to edit the script of. Be sure to
select the project with the asterisk (*) next to it. For multiple instances, the asterisk indicates
which instance is one you can save changes to. Changes to projects with the same name, but
without the asterisk, will not be maintained when you switch back to configure mode.
3. In the Project tree, in your selected project, right-click the object you want to edit and select
View Code. The code will appear in the main editing window.
4. On the Run menu, select Design Mode.
5. Make your VBA script changes.
6. On the Run menu, select Exit Design Mode.
7. Close the VBA Editor.
Now, when you go back to configure mode, you will be able to save your changes.
You can access these pictures when the WorkSpace is in run mode.
IMPORTANT: If you create a new iFIX project in the SCU, the TagStatus subdirectory (located in the
PIC directory) is not copied to the new project path. You must copy the TagStatus folder to the new
PIC directory. For more information about creating new projects, refer to the topic Create a Project
for Each User Type.
In addition to these pictures, if you select an object (or objects) with one or more associated tags, the
title bar of the iFIX picture displays the tag name of the first tag it finds when the picture opens in run
mode.
472
Creating Pictures
If you have a single database tag associated with an object, the picture's title bar displays the name of
that tag when that object is selected. The following diagram indicates a single associated database tag.
Where:
If there are multiple database tags associated with an object, the picture's title bar displays the name of
the first tag it finds, as well as a plus (+) sign to indicate that there are more associated tags. The
following diagram shows a plus sign after the tag name to indicate multiple associated tags.
Open a Tag Control Panel picture to view a list of the tags associated with the selected object(s).
NOTES:
• An object's IsSelectable property must be set to True so you can select it in the run-time
environment, and the object must be selected to display the tag information in the title bar.
• If you clear the Title bar check box in the Edit Pictures dialog box for the current picture, the
title bar, including the picture and tag name information, will not be displayed in the run-time
environment. This is also true for all new pictures, when the Title Bar check box is cleared on
the Picture Preferences tab on the User Preferences dialog box.
Accessing Tag Status, Quick Trend, and Tag Control Panel Pictures
Tag Status, Quick Trend, and Tag Control Panel pictures are available only when the WorkSpace is in
run mode. If a selected object has one or more associated tags, you can right-click the object and
choose the picture type from the menu. You can also select multiple objects and right-click to choose
the picture type, as well.
NOTES:
• In order to use the Tag Status features, an object must be selectable in the run-time
environment. For information about making an object selectable, refer to Animating an
Object's Properties.
• You do not have to group objects in configuration mode to access tag status right-click
features in run mode. Simply select multiple objects in run mode prior to accessing the right-
click menu.
The following figure shows the right-click menu that appears if at least one tag is associated with the
473
Creating Pictures
selected object(s). If only one tag is associated and you choose Quick Trend, the Quick Trend picture
for that tag appears. If there is more than one associated tag, the Quick Trend picture displays a
different pen for each valid tag.
Right-click Menu
If only one tag is associated and you choose Tag Status, the Tag Status picture for that tag appears. If
an object (or objects) has more than one associated tag, then initially, the above right-click menu
appears. When you choose Tag Status, however, a right-click menu like the following one appears.
This right-click menu allows you to choose the first tag found (in this example, Fix32.THISNODE.ar)
or you can choose Tag Control Panel, which will open the Tag Control Panel picture for this object (or
group of objects).
IMPORTANT: If the VBA Add-on utility has been installed on your machine, and it is configured to
use the RMouseClick Event, the above right-click menus will not be available and you will not be able
to access tag status functionality. Only the VBA utility right-click menu will be available. It is
recommended, however, that you use the Tag Status features because Proficy iFIX 4.0 and greater
does not support the VBA Add-on utility.
The following diagram illustrates what a typical Tag Status picture looks like for an AI database tag
type. All database tags types have their own Tag Status picture and contain similar information.
474
Creating Pictures
Some tags (that is, database blocks) are designed to work in chains while others are designed to operate
on their own. Tags that can work in chains display the fields Prev Block and Next Block in the Tag
Status picture. If the tags associated with the selected object are configured to work in a chain, the next
and/or previous tag in the chain is displayed in the appropriate fields. You can click these fields to
move through the chain and view the data for the associated tags.
Each Tag Status picture contains a real-time trending chart for the selected database tag. The trending
charts are set up to display a 5-minute duration with a 1-second update rate, to a total of 300 viewable
points on the chart. You can enlarge the trending chart by first selecting it then right-clicking and
choosing Quick Trend from the menu. This view of the Quick Trend chart displays only the pen for the
selected tag, even if multiple tags are associated with the object.
Acronym Description
BB On-Off Control
475
Creating Pictures
Acronym Description
DC Device Control
EV Event Action
FN Fanout
HS Histogram
PA Pareto
PG Program
TX Text
476
Creating Pictures
In this case, there are two AO tags with the same value. These are displayed as a single pen.
For information about Quick Trend charts that appear in Tag Status pictures, refer to Quick Trend
Charts in Tag Status Pictures.
From the Tag Control Panel picture you can also access the Tag Status or Quick Trend pictures
associated with the selected tags. However, if the tag does not have an F_CV field associated with it, a
Quick Trend chart will not be available. For information on tags that can display a Quick Trend chart,
refer to the section Quick Trend Charts in Tag Status Pictures.
477
Creating Pictures
For example, if the Tag Control Panel picture is full, but you want to view the Quick Trend picture for
another tag, you can delete a tag and add the tag with the information you want to access. The next
time you open this Tag Control Picture the proper tags will be listed; that is, tags you deleted will be
visible again and tags you added will not exist.
478
Creating Pictures
Translating text is limited to replacing text captions, button captions, object descriptions, the Alarm
Summary object, and certain properties in charts. You cannot switch the language for overall system
text such as dialog box titles, menus, error strings, and so on.
IMPORTANT:
• If iFIX is running on a computer under English (or another western language) regional
settings, you can only display translated text strings for western languages.
• If you want to display both Japanese and English (or other western languages), you must set
the regional setting to Japanese. You cannot display other non-western languages, such as
Chinese or Russian; you can only display Japanese and western languages.
• If you want to display both Chinese and English (or other western languages), you must set
the regional setting to Chinese. You cannot display other non-western languages, such as
Japanese or Russian; you can only display Chinese and western languages.
• You cannot switch between multiple eastern languages without changing the regional
settings. For example, you cannot switch between Chinese and Japanese.
• If you are using double-byte languages, (for example, Chinese or Japanese), you must be
running iFIX on a computer with a native operating system and the appropriate regional
settings configured. On the Advanced tab of the Regional and Language Options dialog on
Control Panel, configure the Languages for non-Unicode programs field with the target
language. You must also make sure that you set the applicable font on the Shape Preferences
tab on the User Preferences dialog box.
• If the translated text for a single-byte language displays as a series of ????, you must
configure the Languages for non-Unicode programs field with the target language and select
the applicable font, as above. However, you do not require a native operating system for
single-byte languages.
• You must restart your computer and Proficy iFIX after you make changes to the Regional
Settings.
• For pictures created in iFIX 4.0 that include Alarm Summary objects, you need to export your
language file again, so that the Alarm Summary information is included. The Alarm Summary
object originally was not included in iFIX 4.0 language translation files.
• It is recommended that you only use either global picture translation or individual picture-
level translation in your pictures. If you mix both settings, your users could get undesirable
results when opening pictures in different languages.
• Use caution when using this feature with iFIX WebSpace. It is recommended that you set the
language at the individual picture-level in the iFIX WorkSpace, instead of using the global
479
Creating Pictures
configuration. That way, you can ensure that only certain pictures open in a specified
language (and not the same language settings for all users and all pictures). For an example
of the picture-level settings and how you might want to use them with the iFIX WebSpace,
refer to the second example in the Examples of How to Switch Between Languages section.
• The iFIX WebSpace Server should match the regional settings and native operating system
language of the iFIX SCADA Server.
This feature is very useful if you develop your picture(s) in one language (in configure mode), but
want to provide the text in a different language for operators viewing the picture (in run mode). Using
this feature, you can have the same picture available in multiple languages.
This feature is also useful for changing the language of the text that appears in a picture in configure
mode. You can export text strings, translate them, and import the translated text back into your original
picture so that your picture's default text strings now appear in the translated language in configure
mode. For instance, use this feature if you want to translate the text for the Tag Status, Quick Trend,
and Tag Control Panel pictures. For more information on these picture types, see Using Tag Status and
Quick Trend Pictures.
NOTES:
• Only the iFIX WorkSpace supports changing the language of the displayed picture text. You
cannot set the language when opening a picture in Desktop View, whether you are opening a
.ODF file (a FIX Desktop picture) with the OPENPIC command or a .GRF file with the
WSPROXY OPENPIC command (used to open an iFIX picture from View).
The Translation Toolbar is available to support these features. This toolbar allows you to export or
import all of the text from a picture into a language specific .CSV file. You can then add translations
and font requirements to these .CSV files to use when you open the corresponding pictures. For more
information about the Translations Toolbar, refer to Manipulating Objects Using Toolbars. For more
information on how to use the toolbar to export or import a .CSV file, see Exporting and Importing
Language Files.
IMPORTANT: If list separator is comma in your local regional settings, you can use Microsoft Excel
to edit your .CSV files. Otherwise, it is recommended that you use Notepad to edit your .CSV files. It is
important that you use the proper text editor, so that the list separator, a comma, gets saved properly
using your operating system's native regional settings. If you are unsure of your settings, use Notepad
to edit your .CSV files.
When you change the language in run mode using the global language setting, all pictures that you
open from that point on will open in the specified language, as long as there is a language file for that
language. If you change the global language setting, pictures that are opened from that point forward
480
Creating Pictures
open in the new language, but previously opened pictures do not change to the new language. You
must close and reopen those pictures for the new language to take effect. The language changes only
when opening the picture in run mode.
NOTE: If a language file does not exist, the picture text appears in the picture's default language; that
is, the language in which it was created.
To configure the global picture language settings, select the Translate Picture on Open check box on
the Picture Preferences tab of the User Preferences dialog box. When you select this check box the
Language list is enabled and you can choose the language that you want the text strings to appear in
when the picture opens in run mode. You can also use the SetLanguage global subroutine in VBA.
NOTE: When the Translate Picture on Open check box is selected, the TranslateOnOpen and
LanguageDesired properties in the Properties window for individual pictures cannot be changed.
For example, you have pictures that only administrators look at and these pictures are displayed in
French in run mode. You have another group of pictures that only operators look at and you want to
display these pictures in Spanish when in run mode. All of the pictures were developed in English, in
configure mode. In this case, each picture can have specific language settings. French and Spanish
language files with translated text must exist for the appropriate pictures the administrators and
operators will view in run mode.
To configure the language settings at the picture level, use the TranslateOnOpen and LanguageDesired
properties on the active picture. You can access these properties on the Properties window in the
Proficy iFIX WorkSpace or from a VBA script while in configure mode. Be aware that in order to set
these properties, the Translate Picture On Open check box on the Picture Preferences tab of the User
Preferences dialog box must be cleared. If this check box is not cleared, the global picture language
settings override the individual picture settings.
You can also use SwitchLanguage to change the language programmatically in VBA.
NOTE: When you use the individual picture language settings, opening a picture in run mode for the
first time is slower than it would normally take without caching enabled. If you enable picture caching,
after the picture has been opened and cached, the next time you open it in run mode there is no delay.
For more information about picture caching, refer to Using Picture Caching.
481
Creating Pictures
Export location
Specifies the folder that the language files are exported to. The language files are exported to the PIC
folder of your Proficy iFIX installation location. Language files for Tag Status, Quick Trend, and Tag
Control Panel pictures are exported to the TagStatus subfolder of the main PIC folder.
Select Pictures
Lists all of the pictures in the PIC folder or in the TagStatus subfolder of the main PIC folder.
Select Language
Specifies the language you want to use for naming the language file.
Select All
Click this button to select all of the pictures in the list.
Deselect All
Click this button to clear your selections from the list.
Export
Click this button to perform the language files export.
Exit
Click this button to close the Language File Exporter dialog box without saving any of your changes.
482
Creating Pictures
files.
These .CSV files reside in the same location that your pictures are found in, which by default, is the
PIC folder of your iFIX installation location, or in the TagStatus subfolder of the main PIC folder.
Exported language files are saved in the following format:
PictureName_LangLetter.csv
where:
• PictureName is the name of the picture whose language file you are exporting, and
• LangLetter is the acronym for the language the picture is being translated into.
For example, if the picture name is Circles and you select German for the language, the exported
language file name will be Circles_DE.csv. For more information on the available language letters, see
the section Language Letter Acronyms.
Proficy iFIX Workspace provides a Translation Toolbar that allows you to:
After you export a language file, open it in Notepad or Microsoft Excel and translate the appropriate
text strings. If the global or picture level language setting is configured for the same language you
translated the text strings into, the iFIX WorkSpace reads the translated .CSV file when the picture
opens in run mode and displays the text strings in the translated language.
If you exported more than one language file for a single picture, the target language file is the file with
the language that matches the LanguageDesired property defined for the individual picture. For
example, if you exported language files in Spanish, Italian, and French for the picture Circles.grf , and
the LanguageDesired property is set to Spanish, the picture's text is displayed in Spanish in run mode.
To view the translated text in Italian or French, you must close the picture, change the
LanguageDesired property to the appropriate language, and then reopen the picture in run mode.
Every time you export a language file, a log file is also created. These log files are created for each
picture that you export a language file for, even if you are exporting language files for multiple
pictures. For example, you have 20 pictures in your PIC folder and you use the Language File Exporter
dialog box to export German language files for all 20 pictures. iFIX creates a separate log file for each
language file with the format:
PictureName_LangLetterExport.log
483
Creating Pictures
You can also choose to create a language file for a single picture without having to change the defined
language setting, whether it is at the global or the picture level. For example, the global language
setting is defined for French and you have already created French language files for your 20 pictures,
Circles1.grf through Circles20.grf. You now want your Polish operators to view Circles10.grf in their
native language in run mode. Use the Language File Exporter dialog box to export a Polish language
file for Circles1.grf. The operators can then set the LanguageDesired property for Circles10.grf to
Polish before opening it in run mode.
NOTE: In order to set the LanguageDesired property, the Translate Picture On Open check box on
the Picture Preferences tab of the User Preferences dialog box must be cleared. If this check box is not
cleared you cannot define individual picture language settings.
IMPORTANT: The language selected in the LanguageDesired property must match the language
letter acronym in the language file name in order for the language file to be imported properly.
NOTE: Be aware that if you only want to switch languages in run mode, you do no need to import any
translations. Importing translations is an option available if you want to update the original pictures
with translated text, so that the translations replace the original text in configure mode.
If you have a global language set for all pictures, you cannot change the LanguageDesired property. In
order to change the language setting at the picture level, you must clear the Translate Picture On Open
check box on the Picture Preferences tab of the User Preferences dialog box.
Importing a language file is useful if you want to save the picture with the translated text strings. For
example, you have a French version of iFIX and want to replace the text strings in the Tag Status and
Quick Trend pictures with French strings and only view these pictures in French. After the translation
is complete and you have imported the language file(s), save the pictures with the new text strings. In
this case, both configure and run mode pictures will appear in the translated language. There is no need
to change language files in run mode.
484
Creating Pictures
1027 CA Catalan
1029 CS Czech
1030 DA Danish
1031 DE German
1032 EL Greek
9 EN English
1034 ES Spanish
1035 FI Finnish
1038 HU Hungarian
1040 IT Italian
1041 JA Japanese
1042 KO Korean
1043 NL Dutch
1044 NO Norwegian
1045 PL Polish
1049 RU Russian
3098 SR Cyrillic
1050 HR Croatian
485
Creating Pictures
1051 SK Slovak
1053 SV Swedish
1054 TH Thai
1055 TR Turkish
1057 IN Indonesian
1060 SL Slovenian
1069 EU Basque
1036 FR French
2070 PT Portuguese
Example 1 shows you how to set the script at the global level (with SetLanguage). That is, all pictures
that have an exported language file for the set language will display the text in that language when
opened in run mode.
Example 2 shows you how to set the script to open a specific picture in run mode (with
TranslateOnOpen, LanguageDesired, and SwitchLanguage) and display the text in the desired
language.
Example 3 shows you how to switch the language for a single open picture, dynamically in run mode
486
Creating Pictures
(with SwitchLanguage).
TIP: If you want to re-use these examples be sure that you review the important items listed on the
Translating Picture Text topic before doing so, to ensure your configuration is correct.
Example 1: Configure Global Language for all Pictures to Open in Run Mode
The following example shows you how to create a picture that allows you to globally switch between
languages while in run mode, in this case English and Spanish. After you switch the language the first
time, any picture you open from that point onward displays in the specified language, provided a
language file exists. You must close the picture and click another language button to switch the
language again. With this example, you must manually open and close your pictures in run mode.
NOTE: This example assumes that English is the default language that the pictures are created in.
IMPORTANT: If you are using the iFIX WebSpace, it is recommended that you configure the
language settings at the individual picture-level. If you instead configure them globally using this
example, you will reset the language across all pictures for all users. This may be undesirable for your
web users. For steps on picture-level configuration, refer to the second example below.
1. In the iFIX WorkSpace configure mode, open the User Preferences and click the Picture
Preferences tab.
2. In the Cache area, clear the Enable Picture Caching check box if is enabled. This check box
must be disabled if you want to re-open the same picture in the new language, after changing
the languages.
3. In the Picture Translation area, select the Translate Picture on Open check box, and in the
Language drop-down list select Default.
4. Create a new picture with two push buttons labeled "Open Pictures in English" and "Open
Pictures in Español", as in the following picture.
Language Buttons
5. In configure mode, right-click the Open Pictures in English push button and choose Edit
Script. The Visual Basic Editor appears.
487
Creating Pictures
7. Repeat steps 5 and 6, with the Open Pictures in Español button, but replace the SetLanguage
LANG_English line with SetLanguage LANG_Spanish.
8. Close the Visual Basic Editor and save the picture with a unique name.
9. Export Spanish language files for the pictures that have text you want displayed in Spanish.
For steps, refer to the Exporting Multiple Language Files section.
10. In Notepad, open the Spanish language CSV file for the picture that you generated in the
previous step, and provide translations for the picture text.
11. Switch to run mode.
12. Click the Open Pictures in Español button and then open any picture that you created a
Spanish language files for. Close any picture that was open before you clicked the button, and
re-open it in the WorkSpace. Any English picture text should display in Spanish in both cases,
if both pictures have Spanish CSV files. If you open the iFIX User Preferences and review the
Picture Preferences tab, the Language drop-down for the Translate on Open Setting will now
be set to Spanish.
13. Close any open pictures except the push button picture with the language settings.
14. Click the Open Pictures in English button and then reopen each picture. The text displays in
English. If you open the iFIX User Preferences and review the Picture Preferences tab, the
Language drop-down for the Translate on Open Setting will be set to English.
NOTES:
• Only one instance of a picture can be open at a time; you must close a picture before opening
it to display the text in a different language.
• If a picture does not have a language file for the language you are displaying in, the text will
remain in the default language in which it was created.
• You can create as many push buttons as you want to switch between multiple languages.
The following example shows you how to create a picture with push buttons that allow you to open
another picture in run mode and display its text in the desired language; in this case English and
Spanish. In this example, only the picture, MyPicture, will open when either of the buttons is clicked
and you can easily switch between English and Spanish. The OpenPicture command will open multiple
instances of the same picture, so that you can have more than one language version of a picture open at
the same time.
NOTE: This example assumes that English is the default language that the pictures are created in.
IMPORTANT: If you are using the iFIX WebSpace to open a picture, be aware that other pictures
already open do not change languages when you open a picture. The language changes only when you
open the picture.
TIP: If you want to re-use this example be sure that you review the important items listed on the
Translating Picture Text topic before doing so.
488
Creating Pictures
2. Create a picture with two push buttons labeled "Open MyPicture in English" and "Open
MyPicture in Español", as in the following picture.
Language Buttons
3. In configure mode, right-click the Open MyPicture in English push button and choose Edit
Script. The Visual Basic Editor appears.
4. Enter the following script to set the TranslateOnOpen, LanguageDesired, and
SwitchLanguage:
Dim pic As Object
pic.Translateonopen = False
pic.LanguageDesired = 9
pic.SwitchLanguage
5. Repeat steps 3 and 4, with the Open MyPicture in Español button, but replace the
pic.LanguageDesired = 9 line with pic.LanguageDesired = 1034 (1034 is the
enumeration that represents Spanish, where as 9 represents English).
NOTE: For a listing of the enumerations for all supported languages (also called LCIDs)
refer to the Language Letter Acronyms table in the Exporting and Importing Language Files
topic.
6. Close the Visual Basic Editor and save the picture with a unique name.
7. Export a Spanish language file for MyPicture.grf.
8. Open the language file in Notepad and translate the picture text to Spanish.
NOTE: If list separator is comma in your local regional settings, you can use Microsoft Excel
to edit your .CSV files. Otherwise, it is recommended that you use Notepad to edit your .CSV
489
Creating Pictures
files. It is important that you use the proper text editor, so that the list separator, a comma,
gets saved properly using your operating system's native regional settings. If you are unsure
of your settings, use Notepad to edit your .CSV files.
9. Make sure the Translate Picture on Open check box on the Picture Preferences tab of the User
Preferences dialog box is cleared.
10. Switch to run mode and open the picture with the push buttons.
11. Click the Open MyPicture in Español button. MyPicture.grf opens with the text displayed in
Spanish.
12. From the Window menu, choose Tile Vertical to view both pictures.
13. Click the Open MyPicture in English button. The text in MyPicture.grf displays in English.
NOTES:
• If a picture does not have a language file for the language you are displaying in, the text will
remain in the default language in which it was created.
• You can create as many push buttons as you want to switch between multiple languages. Be
sure that you review the important items listed on the Translating Picture Text topic before
doing so, however.
Example 3: Switch the Language of Single Picture to a Desired Language in Run Mode
In the following example, two buttons are created to dynamically switch the language on the currently
open picture in run mode regardless of the TranslateOnOpen and LanguageDesired properties. In this
example, the SwitchLanguage method is used to perform this task.
Language Buttons
3. In configure mode, right-click the Switch to English push button and choose Edit Script. The
490
Creating Pictures
5. Repeat steps 3 and 4, with the Switch to Español button, but replace the
Me.SwitchLanguage 9 line with Me.SwitchLanguage 1034 (1034 is the
enumeration that represents Spanish, where as 9 represents English).
NOTE: For a listing of the enumerations for all supported languages (also called LCIDs)
refer to the Language Letter Acronyms table in the Exporting and Importing Language Files
topic.
6. Close the Visual Basic Editor and save the picture with a unique name.
7. Add some English text to the picture, and save the picture.
8. Export a Spanish CSV language file for your picture, so you can provide translations for the
text you added in the previous step. For steps, refer to the Exporting a Single Language File
section.
9. Open the CSV language file in Notepad and translate the picture text to Spanish.
NOTE: If list separator is comma in your local regional settings, you can use Microsoft Excel
to edit your .CSV files. Otherwise, it is recommended that you use Notepad to edit your .CSV
files. It is important that you use the proper text editor, so that the list separator, a comma,
gets saved properly using your operating system's native regional settings. If you are unsure
of your settings, use Notepad to edit your .CSV files.
10. Make sure the Translate Picture on Open check box on the Picture Preferences tab of the User
Preferences dialog box is cleared.
11. Switch to run mode and toggle between the two languages:
• Click the Switch to Español button. Your picture displays text in Spanish.
• Click the Switch to English button. Your picture displays text in English.
NOTES:
• If a picture does not have a language file for the language you are displaying in, the text will
remain in the default language in which it was created.
• You can create as many push buttons as you want to switch between multiple languages. Be
sure that you review the important items listed on the Translating Picture Text topic before
doing so, however.
How Do I...
In the Proficy iFIX WorkSpace, you can perform steps when working with picture text languages:
491
Creating Pictures
If you use the global language setting, it is recommended that you do not implement language settings
at the individual picture-level.
NOTE: You will also need to export language CSV files for each picture and provide translations in
each of these files using Notepad or Microsoft Excel to support this feature. A link to these steps is
provided below.
IMPORTANT: If you are using the iFIX WebSpace, it is recommended that you configure your
language settings at the individual picture-level. If you instead configure them globally using the steps
below, all users will have the same language settings for all pictures, after the script is run. This may
be undesirable for your web users. For steps on picture-level configuration, refer to the Configuring
Language Settings for an Individual Picture section.
To configure default language for all pictures when opened in run mode:
If you use the individual picture-level settings, it is recommended that you do not implement the
global, default language settings.
492
Creating Pictures
NOTE: You will also need to export a language CSV file for the picture and provide translations for
this file in Notepad or Microsoft Excel to support this feature. These steps are included below.
To configure the language for a single picture when opened in run mode:
1. In the iFIX WorkSpace configuration mode, open the picture with the text strings you want to
translate.
2. In Classic view, on the WorkSpace menu, click User Preferences.
-Or-
In Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and then click User
Preferences.
3. Click the Picture Preferences tab and make sure the Translate Picture On Open check box is
cleared. (If it is cleared, the LanguageDesired and TranslateOnOpen properties at the picture-
level can be changed from the Properties window.)
4. Click OK.
5. Right-click anywhere in the picture and choose Property Window.
6. From the LanguageDesired property, select the language you want to use for the language
CSV file.
NOTE: If you are entering this information programmatically in VBA instead of using the
Property window, you can find a listing of the enumerations for all supported languages (also
called LCIDs) in the Language Letter Acronyms table in the Exporting and Importing
Language Files topic.
7. From the TranslateOnOpen property, select True so that the displayed picture text will be
automatically translated when the picture is opened in run mode.
8. Save the picture.
9. On the Translation Toolbar, click the Export language file button. The language CSV file is
saved to the PIC folder.
10. Open the language CSV file in Notepad or Microsoft Excel and translate the text strings.
IMPORTANT: If list separator is comma in your local regional settings, you can use
Microsoft Excel to edit your .CSV files. Otherwise, it is recommended that you use Notepad
to edit your .CSV files. It is important that you use the proper text editor, so that the list
separator, a comma, gets saved properly using your operating system's native regional
settings. If you are unsure of your settings, use Notepad to edit your .CSV files.
11. Open the picture in run mode. The picture’s text strings are displayed in the translated
language.
1. In the WorkSpace configuration mode, open the picture you want to export a language file
for.
2. In Classic view, on the WorkSpace menu, click User Preferences.
493
Creating Pictures
-Or-
In Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and then click User
Preferences.
3. Click the Picture Preferences tab and make sure the Translate Picture On Open check box is
cleared. If it is selected, the LanguageDesired and TranslateOnOpen properties in the
Properties window cannot be changed.
4. Click OK to close the User Preferences dialog box.
5. Right-click in the picture (in an area without any objects) and choose Property Window.
6. From the LanguageDesired list, select the language that you want to generate a CSV for.
7. From the TranslateOnOpen list, select Yes.
8. Display the Translation toolbar, if it is not already open. To do so:
a. In the tree view area, open the Project Toolbar Files folder and then the Toolbars
folder.
b. Double-click TranslationToolbar to open the toolbar.
9. On the Translation toolbar, click the Export language file button. A message appears letting
you know the language file was successfully exported.
You can now open the language file in Notepad or Microsoft Excel and translate the text
strings for the picture.
IMPORTANT: If list separator is comma in your local regional settings, you can use
Microsoft Excel to edit your .CSV files. Otherwise, it is recommended that you use Notepad
to edit your .CSV files. It is important that you use the proper text editor, so that the list
separator, a comma, gets saved properly using your operating system's native regional
settings. If you are unsure of your settings, use Notepad to edit your .CSV files.
1. In the iFIX WorkSpace, display the Translation toolbar, if it is not already open. To do so:
a. In the tree view area, open the Project Toolbar Files folder and then the Toolbars
folder.
b. Double-click TranslationToolbar to open the toolbar.
2. On the Translation toolbar, click the Export multiple language files button.
3. In the Select pictures list, select the check box for each picture you want to export a language
file for.
4. If applicable, select the Always overwrite existing export files check box. If you are exporting
a language file for a picture that already has a language file for the selected language, the
existing language file will be automatically overwritten. If you clear this check box, you will
be prompted to replace the existing language file. Click Yes to replace it and No to keep it.
5. From the Select language list, choose the language that you want to provide translations for.
6. Click Export. A separate language file is created for each picture you selected.
You can now open each language file in Notepad or Microsoft Excel, and translate the text
494
Creating Pictures
2. Provide translations in the Translated Text segments, and make adjustments to fonts and point
sizes as necessary.
3. Save the file.
1. If you have not already done so, in Notepad or Microsoft Excel, open the picture’s language
file and translate the applicable text strings.
IMPORTANT: If list separator is comma in your local regional settings, you can use
Microsoft Excel to edit your .CSV files. Otherwise, it is recommended that you use Notepad
to edit your .CSV files. It is important that you use the proper text editor, so that the list
separator, a comma, gets saved properly using your operating system's native regional
settings. If you are unsure of your settings, use Notepad to edit your .CSV files.
2. In the iFIX WorkSpace configuration mode, open the picture whose language file you
translated.
3. If applicable, set the LanguageDesired property to the same language letter acronym used in
the language file name.
4. Display the Translation toolbar, if it is not already open. To do so:
a. In the tree view area, open the Project Toolbar Files folder and then the Toolbars
folder.
b. Double-click TranslationToolbar to open the toolbar.
5. On the Translation toolbar, click the Import language file button. The picture text is
immediately displayed in the translated language from the language file.
NOTE: Importing language files is useful if you want to save your pictures with the
translated text strings.
495
Creating Pictures
A tag group is composed of a symbol, a corresponding substitution, and an optional description field.
Symbols are placeholders for data sources or text in a picture. Substitutions are alphanumeric character
strings that replace symbols in a picture. A tag group file is a binary file that consists of the symbols,
substitutions, and descriptions for each tag group.
You use symbols in areas of your picture where data points are needed to represent specific process
values. A substitution can be a tagname or text, depending on where the corresponding symbol is being
used in a picture. For example, if you want to change a button label when a picture opens, you would
enter text for the substitution.
You can create several tag group files that associate symbols with specific substitutions in the run-time
environment.
Your real-time control strategy calls for operators to monitor the temperature in each furnace. This
strategy calls for you to develop three operator displays. You realize, however, that the only difference
between the displays are the tagnames that reference different databases.
You can use the Tag Group Editor to cut development time and save a considerable amount of disk
space by creating one picture and three tag group files. In the picture, you assign symbols in place of
tagnames and then, at run time, call a tag group file to replace the symbols with real tagnames. You
call a different tag group depending upon which cookie furnace you want to display.
You enter data into the Tag Group Editor spreadsheet to associate symbols with substitutions. You
then save the data in a tag group file, with the extension TGD. When a picture opens, or when a new
picture replaces the current picture, iFIX reads the tag group file and replaces the symbols with the
corresponding substitutions, as defined in the tag group file.
NOTE: The Recipe Builder requires the .TGE file format when using tag group files. As such, the
Recipe Builder uses the FIX32 Tag Group Editor (TGE.EXE). The iFIX Tag Group Editor
(TagGroupEditor.exe) is used for creating tag groups in iFIX pictures in .TGD file format. The Recipe
Builder cannot use these newer .TGD files.
496
Creating Pictures
In Ribbon view, on the Applications tab, in the Utilities group, click Tag Group Editor.
497
Creating Pictures
To open an existing tag group file, click the Open button. To open a new, empty tag group file, click
the New button.
You can have only one tag group file open at a time. If you made changes to a file that is currently
open, you will be prompted to save it.
To save a tag group file, click the Save button. Tag group files are automatically saved with the .TGD
extension in the Proficy iFIX\PIC directory.
NOTE: The tag group file must be located in the Proficy iFIX\PIC directory for tag group
substitutions to work correctly.
NOTE: You can access these columns only when a row is active. Click a row to make it active.
498
Creating Pictures
Symbol The text that is replaced by a substitution (Required field) Can contain up to
string. 60 characters. The first character
must be a letter.
Substitution The tagname or text of the substitution, (Required field) Can contain up to
depending upon where the corresponding 60 characters.
symbol is being used in the picture.
NOTE: It is strongly
NOTE: Be sure to enter the text exactly as recommended that you use the
you want it to appear in the picture. If the fully qualified name for the
substitution needs to be in a specific tagname.
format, make sure the text is formatted
correctly.
Description The text that describes the function of the (Optional field) Can contain up to
tag group. 60 alphanumeric characters,
including special characters, such
as -(*)&+% and spaces.
Cut the contents of the cell where the insertion point is positioned, and move
it to the Clipboard.
Copy the contents of the cell where the insertion point is positioned, and
place it on the Clipboard.
Paste the contents of the Clipboard into the cell where the insertion point is
positioned.
499
Creating Pictures
Delete the contents of the cell where the insertion point is positioned.
Retrieve all the symbols from your picture and insert them into the Symbol
column of the spreadsheet.
NOTE: Use this button only if all the substitutions in the tag group file are
tagnames and none are text.
Retrieve the fully qualified name for all tags entered in the Substitution
column.
You can also use some special functions to automate data entry or to manipulate the data in the
spreadsheet. These functions are described in the sections that follow.
• Data system
• Node
• Tag
• Field
Fix32.THISNODE.AI1.F_CV
500
Creating Pictures
In this example, Fix32 is the name of the data system, THISNODE is the node name, AI1 is the
tagname, and F_CV is the field name.
NOTE: It is strongly recommended that you use the fully qualified names of tags for substitutions in a
spreadsheet.
Double-clicking the item number in the Tag Group Editor spreadsheet displays the Data Entry dialog
box, from which you can:
• Access the Data Source Browser expression builder to define the substitution.
• Create the data source for a substitution tagname.
• Retrieve the fully qualified name for a substitution tagname.
You can sort the data in any column in the Tag Group Editor spreadsheet.
IMPORTANT: GE Intelligent Platforms ships two Tag Group Editors: one is for use with pictures and
the other is for use with recipes. The Tag Group Editor discussed in this manual is intended for use
with pictures. To use the Tag Group Editor with recipes, double-click the icon for the TGE.EXE
program, located in your iFIX root directory.
You may have so many symbols in a picture that entering all of them into the spreadsheet would be
very time-consuming. To automatically retrieve all the symbols from a picture and insert them into the
spreadsheet, you can use the Get Symbols From Picture button on the Tag Group Editor toolbar. The
Symbols column is cleared and all of the symbols from the picture, including symbols that are used in
a picture's script, are automatically inserted into the spreadsheet. You can then alphabetically sort the
symbols by clicking the Symbol column heading.
NOTE: If you add new symbol substitutions on text, pushbutton, or variable objects to a picture, these
symbols will NOT be read into the Tag Group Editor until the picture is resaved. New symbols on the
objects in question will only be read into the Tag Group Editor when the picture is saved.
501
Creating Pictures
You can also use tag group symbols with the following picture methods in a script:
• TagGroupValue
• TagGroupSubstitution
1. Create a picture that uses symbols in areas where data points are needed to represent a
specific process value. For more information, refer to Creating and Opening Pictures.
2. Create several different tag group files that associate the symbols in the picture with different
tags.
3. Assign the tag group file to load when a picture opens, or when a new picture replaces an
existing one. For more information, refer to Assigning a Tag Group File to a Picture Event.
NOTE: When defining symbols in the Symbol column of the Tag Group Editor, you only need to enter
the symbol name, not the @ signs.
Example
You want to enter a data link in a picture that displays the value of a temperature output block. You
will use this picture three times to show three similar processes. To use a symbol called Temperature in
the picture, enter the following for the data link:
@Temperature@
502
Creating Pictures
When the iFIX software reads text in this format, it identifies the text as a tag group symbol. When a
picture opens, or a new picture replaces the current one, the symbol is replaced with the assigned
substitution.
In the Symbol column of the Tag Group Editor you would enter:
Temperature
• Make sure there is an @ sign at the beginning and end of the symbol to denote where the
symbol name begins and ends.
• Keep track of your @ signs if you are using a symbol in a tagname.
For example, if you want @Tag1@ to be the symbol in a partial text substitution, you must enter:
@Tag1@Ready
Be careful when using a partial substitution in a data source. If the source of a substitution does not
currently exist in the data system, a connection will be forced. However, you will only know that this
has occurred when you receive an error message at run time. This can happen if you made a
typographical error when you entered a substitution or if you entered duplicate data.
For example, you enter a partial substitution as the source for a data link, as follows:
Fix32.@tag1@
However, in the tag group file, you entered the following substitution for @tag1@:
Fix32.THISNODE.AI1.F_CV
When this substitution occurs, the data source is now Fix32.Fix32.THISNODE.AI1.F_CV. Since the
data system thinks that this source can be created, it will force the connection.
For more information about using symbols for partial substitutions, see Syntax Guidelines for Symbols
in Pictures.
503
Creating Pictures
504
Creating Pictures
Fix32.THISNODE.AI1.F_CV + 10
@tag1@
However, you can use partial substitutions to represent each part of the expression. For example, if you
want to use symbols for the complex expression above, you would use two symbols, as follows:
@tag1@ + @tag2@
where the substitution for @tag1@ would be Fix32.THISNODE.AI1.F_CV, and the substitution for
@tag2@ would be 10.
You can also assign the tag group file to load when a new picture replaces an existing one.
The Tag Group Editor saves these connections, along with information identifying the version number
of the picture and the tag group file, and the identifying strings after substitution, in the tag group
storage file (.TGS). There is only one tag group storage file per node.
505
Creating Pictures
To use an OPC address substitution with Symbols in the Tag Group Editor:
1. In the iFIX Tag Group Editor's Substitution field, paste the OPC address name.
2. Remove the quotes from the address name.
3. On the Tag Group Editor's File menu, click Resolve Tags.
• You can enter tag group information into an application, such as Microsoft Excel or a text
editor, that you are more familiar with and then import this information into the Tag Group
Editor.
• You can generate a report by printing the comma separated value (.CSV) file as a text file.
The report provides a list of all symbols, substitutions, and descriptions defined in the Tag
Group Editor spreadsheet. This list can help you verify your tag groups before you implement
them into your SCADA strategy.
Each line in your text file represents one row when opened in the Tag Group Editor. Use the following
rules when formatting your text file:
• Enter the information in the same order as it appears in the Tag Group Editor spreadsheet:
symbol, substitution, description.
• The symbols, substitutions, and descriptions that you enter into your text file have the same
length limitations as the corresponding component in the Tag Group Editor spreadsheet.
• Use a list separator to separate each component of the tag group. You must use the list
separator that is defined through Regional Settings, Number tab, in Control Panel. In most
cases, this is a comma (,).
• Do not include comments or blank lines in your CSV file. If you do, a message appears at the
506
Creating Pictures
point that the Tag Group Editor first encounters either a comment or a blank line, and the file
will stop loading.
• The first line of your CSV file must contain only the total number of lines, or tag group
entries, in the tag group file. For example, if your CSV file contains six tag groups, the first
line of the file should be the following:
"6"
If your CSV file does not contain this line, it will not open in the Tag Group Editor.
• If the name of a symbol, substitution, or description contains a quotation mark (") or the same
list separator defined through Regional Settings in Control Panel, you must do the following:
• Enclose that item in quotation marks.
• Type an extra quotation mark before each quotation mark within that item.
For example, if you are entering a symbol named OVEN"TEMP1 into your text editor, you
must type "OVEN""TEMP1" as your symbol name.
Each line in a CSV file represents a row in the Tag Group Editor spreadsheet, except the first line. The
first line of a CSV file represents the total number of tag groups contained in the tag group file. The
following example depicts a CSV file created by the Tag Group Editor.
"3"
"OVENTEMP1", "Fix32.THISNODE.AI1.F_CV", "Oven 1 current temperature"
"OVENTEMP2", "Fix32.THISNODE.AI2.F_CV", "Oven 2 current temperature"
"OVENTEMP3", "Fix32.THISNODE.AI3.F_CV", "Oven 3 current temperature"
As this example shows, tag group components are separated by a list separator and enclosed in
quotation marks. The Tag Group Editor does this as a safeguard even though the only items that
require quotation marks are list separators used within an item, and other quotation marks. In fact, you
can delete the quotation marks around any component that does not contain a defined list separator or
quotation mark.
507
Creating Pictures
Enter the path to the directory containing your 6.x CSV files. The path must end with a backslash (\).
Select the files you want to convert. You can select more than one file by pressing and holding down
the <CTRL> key.
Click this button to update the contents of the CSV File List. You must click this button after you enter
a file path in the 6.x .CSV File Directory box.
Select All
Click this button to select all of the files in the CSV File List.
Deselect All
Click this button to deselect all of the currently selected files in the CSV File List.
Symbol
Enter a symbol that is defined in your picture. Do not enter the starting and ending delimiters (@). For
example, if you enter @tag1@ as a symbol in a picture, you only have to enter tag1 in the spreadsheet.
Valid values – Can contain up to 60 alphanumeric characters. The first character must be a letter. This
field is mandatory.
Substitution
Enter a substitution for the defined symbol. You can enter a tagname or text, depending upon where
the corresponding symbol is being used in a picture. Click Browse to open the Expression Builder.
Click Modify Database Block to modify a database block directly without opening the Database
Manager.
508
Creating Pictures
Valid values – Can contain up to 60 alphanumeric characters. The first character must be a letter. This
field is mandatory.
Browse
Click Modify Database Block to modify a database block directly without opening the Database
Manager.
Click Get Full Name to get the fully qualified name for a tag. For example, if you enter AI1 in the
Substitution field and have an AI1 database block defined in your database, the Default Data
System.Node.AI1.Field is automatically entered when you click the Get Full Name button. Use this
button when you want to perform a full tag substitution.
Description
Valid values – Can contain up to 60 alphanumeric characters, including special characters, such as –
(*)&+% and spaces. This field is optional.
Symbol
Enter a symbol that is defined in your picture. Do not enter the starting and ending delimiters (@). For
example, if you enter @tag1@ as a symbol in a picture, you only have to enter tag1 in the spreadsheet.
Valid values – Can contain up to 60 alphanumeric characters. The first character must be a letter. This
field is mandatory.
Substitution
Enter a substitution for the defined symbol. You can enter a tagname or text, depending upon where
the corresponding symbol is being used in a picture. Click Browse to open the Expression Builder.
Click Modify Database Block to modify a database block directly without opening the Database
Manager.
IMPORTANT: It is recommended that you use the fully qualified tagnames or explicitly use the F_CV
field in the substituted text.
Valid values – Can contain up to 60 alphanumeric characters. The first character must be a letter. This
field is mandatory.
509
Creating Pictures
Click Get Full Name to get the fully qualified name for a tag. For example, if you enter AI1 in the
Substitution field and have an AI1 database block defined in your database, the Default Data
System.Node.AI1.Field is automatically entered when you click Get Full Name. Use this button when
you want to perform a full tag substitution.
Description
Valid values – Can contain up to 60 alphanumeric characters, including special characters, such as –
(*)&+% and spaces. This field is optional.
How Do I...
Click any of the following links for more information about the Tag Group Editor:
1. In Classic view, in the iFIX WorkSpace, on the toolbar, click the Tag Group Editor button.
-Or-
In Ribbon view, on the Application tab, in the Utilities group, click Tag Group Editor.
510
Creating Pictures
• You can have only one tag group file open at a time. If you made changes to a file that is
currently open, you will be prompted to save it. The iFIX Tag Group Editor replaces the
currently open file with a new, empty tag group file.
• The tag group file must be located in the C:\Program Files\Proficy\Proficy iFIX\PIC
directory for tag group substitutions to work correctly.
• You can use an existing tag group file as a template from which to create a new tag
group file. When you are ready to save your changes, make sure that you save this file
with a different file name.
1. In Classic view, in the iFIX WorkSpace, on the toolbar, click the Tag Group Editor button.
-Or-
In Ribbon view, on the Application tab, in the Utilities group, click Tag Group Editor.
2. Click the Open toolbar button. The Open dialog box appears. By default, it is set to the
C:\Program Files\Proficy\Proficy iFIX\PIC path.
3. Select the tag group file that you want to open, and click Open.
TIPS:
• You can have only one tag group file open at a time. If you made changes to a file that is
currently open, you will be prompted to save it. The iFIX Tag Group Editor replaces the
currently open file with the file that you selected.
• The tag group file must be located in the C:\Program Files\Proficy\Proficy iFIX\PIC
directory for tag group substitutions to work correctly.
1. In the iFIX Tag Group Editor, click the Set Font toolbar button.
2. Select the font, font style, and size that you want to be displayed in the Tag Group Editor, and
click OK.
511
Creating Pictures
1. In the iFIX Tag Group Editor, click the Save toolbar button. If you haven't previously saved
the file, the Save As dialog box appears. By default, it is set to the C:\Program
Files\Proficy\Proficy iFIX\PIC path.
2. Enter a file name, and click Save. The file will be saved with a .TGD extension.
TIPS:
• If you left a symbol cell blank, you must fill in the missing information before you can save the
tag group file. When you have finished, click the Save toolbar button again.
• If you left a substitution cell blank, choose Yes to save the file. Choose No to fill in the missing
substitution before you save.
• The tag group file must be located in the C:\Program Files\Proficy\Proficy iFIX\PIC
directory for tag group substitutions to work correctly.
Once the iFIX Tag Group Editor opens a tag group file, it cannot open another until the active file is
closed.
1. In the iFIX Tag Group Editor, click the Open toolbar button. The iFIX Tag Group Editor
closes the active file and opens the file that you selected.
2. If you made changes to the active file, you will be prompted to save it.
1. In the iFIX Tag Group Editor, click Exit on the File menu.
2. If you made changes to a file that is currently open, you will be prompted to save it before the
iFIX Tag Group Editor closes.
512
Creating Pictures
1. In Classic view, in the iFIX WorkSpace, on the toolbar, click the Tag Group Editor button.
-Or-
In Ribbon view, on the Application tab, in the Utilities group, click Tag Group Editor.
2. Create a new tag group file.
3. Make sure the picture for which you are creating a tag group file is open in the Proficy iFIX
WorkSpace.
4. Click the Get Symbols From Picture button on the toolbar. The Symbols column is filled in
with the symbols defined in the picture.
TIP: You can also enter a symbol directly into the symbol cell.
1. In Classic view, in the iFIX WorkSpace, on the toolbar, click the Tag Group Editor button.
-Or-
In Ribbon view, on the Application tab, in the Utilities group, click Tag Group Editor.
2. In the iFIX Tag Group Editor, enter either a tagname or text directly into a substitution cell.
3. If you are substituting a tagname for a symbol, click the Get Full Name button. The fully
qualified name for that tag is inserted into the substitution cell.
For example, if you enter AI1 in a substitution cell and click the Get Full Name button next to
it, FIX32.THISNODE.AI1.F_CV automatically appears in the substitution cell. If the data
source does not exist, a message will appear asking if you want to create it.
TIP: If you want to retrieve all of the fully qualified names at once, enter all of the tagnames
into the spreadsheet, and click the Get Full Name column heading. The fully qualified names
for all of the tagnames are automatically inserted into the Substitution column.
1. In Classic View, in the iFIX WorkSpace, on the toolbar, click the Tag Group Editor button.
-Or-
In Ribbon view, on the Application tab, in the Utilities group, click Tag Group Editor.
2. In the main window, enter the description directly into the description cell.
513
Creating Pictures
1. In Classic view, in the iFIX WorkSpace, on the toolbar, click the Tag Group Editor button.
-Or-
In Ribbon view, on the Application tab, in the Utilities group, click Tag Group Editor.
2. Double-click a row number. The Data Entry dialog box appears.
3. In the Symbol box, enter the text you want to use for the symbol.
4. From the Substitution list, select a tagname, or do one of the following:
• Click Browse to open the Expression Builder dialog box.
• Click Modify Database Block to create the data source. You must enter a tagname
before you can use this button.
• Click Get Full Name to retrieve the fully qualified name. You must enter a tagname
before you can use this button.
5. In the Description box, enter text that describes the function of the tag group substitution, and
click OK.
• Editing a Cell
• Deleting the Contents of a Cell
• Inserting a Row
• Deleting a Row
• Sorting Data Alphabetically in a Column
• Searching and Replacing Substitutions
• Using OPC Server Address Substitution in the Tag Group Editor
Editing a Cell
To edit a cell:
1. In the iFIX Tag Group Editor, select the cell. The text in the cell is highlighted.
2. Enter text over the highlighted text.
1. In the iFIX Tag Group Editor, select the cell that contains the data you want to delete.
514
Creating Pictures
2. Click the Delete Cell Contents toolbar button. The content of the cell is deleted.
Inserting a Row
To insert a row:
Adding a Row
To add a row:
• In the iFIX Tag Group Editor, click the Add Row toolbar button. An empty row is
added to the end of the spreadsheet.
Deleting a Row
To delete a row:
1. In the iFIX Tag Group Editor, select a cell in the row you want to delete.
2. Click the Delete Row toolbar button. The row that contains the insertion point is deleted.
1. In the iFIX Tag Group Editor, click the heading of the column that you want to sort.
2. The column is sorted in ascending order. If you click the column heading again, the column
will be sorted in descending order.
1. In the iFIX Tag Group Editor, export your tag group file as a CSV file.
2. Open the CSV file in a third-party spreadsheet or text editor.
3. Use the text editor's find and replace functionality (usually found on the Edit menu) to make
multiple changes to tagname substitutions.
4. When you have finished making changes, save the file as a CSV file, and exit the text editor.
5. Open the CSV file in the Tag Group Editor.
6. On the File menu, click Save As to re-save the CSV file as a tag group (.TGD) file.
515
Creating Pictures
iFIX requires the following workaround to use the OPC Server address substitution with the Tag
Group Editor (TagGroupEditor.exe). The steps below describe how to use an OPC address substitution
with Symbols in the Tag Group Editor.
To use an OPC address substitution with Symbols in the Tag Group Editor:
1. In the iFIX Tag Group Editor's Substitution field, paste the OPC address name.
2. Remove the quotes from the address name.
3. On the File menu, click Resolve Tags.
1. In Classic view, in the iFIX WorkSpace, on the toolbar, click the Tag Group Editor button.
-Or-
In Ribbon view, on the Application tab, in the Utilities group, click Tag Group Editor.
2. On the File menu, click Resolve Tags.
3. Enter a picture file name, and click Open.
4. Enter a tag group file name, and click Open. The operation is performed.
TIP: You can select more than one file by pressing and holding the <CTRL> key while you
select files from the list.
• Assigning a Tag Group Substitution to Occur When a Picture Replaces Another Picture
1. In the iFIX WorkSpace, open the picture from which you want to open another picture.
2. Select a button or shape from which you want to open the picture.
3. In Classic view, from the iFIX WorkSpace Toolbox, click the Open Picture Expert button.
-Or-
In Ribbon view, on the Tools tab, in the Tasks/Experts group, click Commands, and then click
Open Picture.
516
Creating Pictures
4. Enter the file name, or alias, of the picture that you want to open.
5. Enter the position for the picture to open in. The default position is 0,0.
6. Select the Enable Tag Group Substitution check box.
7. Enter the name of the tag group file that you want to apply to the picture upon opening, and
click OK.
8. Save the changes you made to the picture, and switch to the runtime environment.
When you click the object, the picture that you selected to open displays, and the symbols in
the picture are replaced with the substitutions that you defined in the tag group file.
TIPS:
• If you want to choose the picture to open at runtime, select the Select Picture to Open in
Run Mode check box. When you switch to the runtime environment and click the object,
the Open dialog box appears.
• If you want to choose the tag group file to load at runtime, select the Tag Group File in
Run Mode check box. When you switch to the runtime environment and click the object,
the picture to which you want to assign a tag group file appears, and then the Please
Select a Tag Group Definition (TGD) File dialog box appears.
• You can open the iFIX Tag Group Editor from the Open Picture Expert dialog box by
clicking the Tag Group Editor button.
Assigning a Tag Group Substitution to Occur When a Picture Replaces Another Picture
To assign a tag group substitution to occur when a picture replaces another picture:
1. In the iFIX WorkSpace, open the picture that you want to replace.
2. Select a button or shape from which you want to replace the picture.
3. In Classic view, from the iFIX WorkSpace Toolbox, click the Replace Picture Expert button.
-Or-
In Ribbon view, on the Tools tab, in the Tasks/Experts group, click Commands, and then click
Replace Picture.
4. Enter the file name, or alias, of the picture that you want to replace.
5. Enter the file name of the picture that you want to make the replacement with.
6. Select the Enable Tag Group Substitution check box.
7. Enter the name of the tag group file that you want to apply to the replacement picture upon
opening, and click OK.
8. Save the changes you made to the picture, and switch to the runtime environment.
When you click the object, the picture that you selected gets replaced by the replacement
picture, and the symbols in the replacement picture are replaced with the substitutions that
you defined in the tag group file.
TIPS:
• If you want to replace the current picture at runtime, select the Replace Current Picture
517
Creating Pictures
in Run Mode check box. When you switch to the runtime environment and click the
object, the current picture closes and the replacement picture appears.
• You can open the iFIX Tag Group Editor from the Open Picture Expert dialog box by
clicking the Tag Group Editor button.
The iFIX Tag Group Editor lets you convert multiple tag group files created in version 6.x of FIX.
6. Select the files you want to convert, and click OK. The files will be saved with a .TGD
extension.
1. In the iFIX Tag Group Editor, on the File menu, click Save As. The Save As dialog box
appears. By default, it is set to the C:\Program Files\Proficy\Proficy iFIX\PIC path.
2. From the Save as type list, select CSV Files (*.CSV).
3. Enter a file name, and click Save. The file will be saved with a .CSV extension.
TIP: The tag group file must be located in the C:\Program Files\Proficy\Proficy iFIX\PIC
directory for tag group substitutions to work correctly.
518
Creating Pictures
You can create Dynamo objects out of both simple custom objects and objects with animations. In
objects with animations, you can assign meaningful user prompts to Dynamo properties. These user
prompts appear in the Dynamo Properties dialog box that opens when you double-click the Dynamo or
when you first copy the Dynamo into a new picture.
• Dynamo ID – You cannot edit this field; it is a system assigned value. This value is a
Globally Unique Identifier (GUID). The identifier is the same for a Master Dynamo in a
Dynamo Set and all instances of the Dynamo object throughout all pictures. Use this identifier
to identify instances of a Dynamo object with the Master Dynamo in a Dynamo Set.
• Dynamo Description – Provides a short description of the specific usage of the given
Dynamo Instance. The number of characters that you can enter in this description are recorded
in the Max_Dynamo_Desc_Length field. The Dynamo Description can be different for each
Dynamo Instance. For the Master Dynamo, the description is empty and read-only.
• Master – You cannot edit this field; it is a system assigned value. When True, the selected
Dynamo is a Master Dynamo (within a Dynamo Set). When False, this Dynamo is a Dynamo
Instance (within a picture).
• Max_Dynamo_Desc_Length – You cannot edit this field; it is a system assigned value that is
currently set to 40 characters. This field describes the maximum number of characters that
you can enter into the Dynamo Description property, which is currently set at 40 characters.
• Revision – You cannot edit this field; it is a system assigned number for the revision. When
you save a Master Dynamo inside of a Dynamo Set, and the Master Dynamo contains
changes, the revision number is incremented. It's only when the Master Dynamo changes and
then you save the Dynamo Set that this number increments on the Master Dynamo. iFIX uses
Dynamo revision numbers during an update to determine when a Master Dynamo is newer
than the Dynamo Instances created from it. Revision numbers are not updated when a
Dynamo Instance within a picture is modified. During an update, when a Dynamo Instance
does not equal the Master Dynamo revision number (that is, the revision number of the
Dynamo Instance is lower than the Master Dynamo), the revision number on the Dynamo
Instance is updated to match the Master Dynamo.
When you create a Dynamo and save it in a Dynamo Set, you create a Master Dynamo. You can use
this Master Dynamo in your system pictures by dragging the Dynamo object from the Dynamo Set into
a picture. If you assigned User Prompts to the Dynamo's Object Properties, the Dynamo's Property
dialog box appears. This dialog box allows you to change the data sources for the Dynamo's properties.
You can create a report of Dynamo objects in your pictures, or pictures that contain specific Dynamos,
by using the Cross Reference Tool. A Quick Report is generated when you run the Quick Dynamo
Updater or the Dynamo Updater Wizard, both of which are available from the Dynamo Toolbar
(Classic View) or on the Tools tab, in the Dynamos group, in the Dynamos list (Ribbon View).
519
Creating Pictures
A Dynamo Instance is a Master Dynamo that has been placed into a picture. A Dynamo Instance can
be uniquely identified with one and only one Master Dynamo. Dynamo Instances exist only within
iFIX pictures. When placed into a Dynamo Set, a Dynamo Instance becomes a Master Dynamo,
possibly replacing a pre-existing Master Dynamo or simply becoming a new Master Dynamo based
upon the option selected by the user. Each Dynamo Instance can have its own Dynamo description,
describing how the Instance is used in the picture.
When a group containing Dynamo Instances is promoted to a Master Dynamo, as in the case when it is
dragged into a Dynamo Set, the contained Dynamo Instances are converted to standard group objects.
You are warned about this occurrence during Master Dynamo creation and the user is allowed the
option of cancelling the operation.
If a Dynamo Instance has been resized since the last Master Dynamo update, that size is maintained on
the next update. The overall height and width of the entire Dynamo Instance remains the same. The
relative size of internal objects is adjusted accordingly. Be aware that not all dimensions resize,
however. For example, for a pipe object, you can resize the height and width, but not the thickness of
the actual pipe.
IMPORTANT: Be advised that if you delete a Master Dynamo and there are pictures with Dynamo
Instances derived from that Master Dynamo, you will no longer be able to use the Dynamo Updater to
update those Instances. Use caution when deleting any Master Dynamo in a Dynamo Set.
Pre-built Dynamos, which are not considered Dynamo objects, include the following Dynamo Sets:
• Historical
• Miscellaneous
• Motors
• Pipes
• PipesAnim
• Pumps
• PumpsAnim
• Tanks
520
Creating Pictures
• TanksAnim1
• TanksAnim2
• Valves
• ValvesAnim
However, you may convert Dynamos created before iFIX 4.5 to objects using the Dynamo Converter
tools. After the Dynamos have been converted, you may then use the Quick Dynamo Updater, the
Dynamo Updater Wizard, and the Cross Reference Tool to update Dynamo instances.
Yes No
521
Creating Pictures
Yes No
Historical X
Miscellaneous X
Motors X
Pipes X
Pipes Anim X
Pipes Large X
Pipes Small X
Pumps X
Pumps Anim X
Pumps Large X
Pumps Small X
Storage Tanks X
522
Creating Pictures
Yes No
Switches Large X
Switches Medium X
Switches Small X
Tanks X
Tanks Anim1 X
Tanks Anim2 X
Up Down Buttons X
Valves X
Valves Anim X
523
Creating Pictures
available from the Dynamo Toolbar (Classic and Ribbon views) or on the Tools tab, in the
Dynamo group, in the Dynamo list (Ribbon view).
When converting Dynamos inside a picture, those Dynamos are replaced with the Master Dynamo
objects used in the conversion process. This replacement is not a merge; if you made changes to the
Dynamo, they are overwritten by the Master Dynamo.
1 User Use the Dynamo Sets Converter to convert old Dynamo Sets.
Limitations
There are a few limitations when using the Dynamo Converter tools:
• IMPORTANT: You must backup all Dynamo Sets and pictures before conversion.
• IMPORTANT: All group objects are listed on the Select Dynamo tab of the Dynamo
Converter. The groups are nested, and may therefore contain Dynamo objects, in addition to
legacy Dynamos. If you select the top-level groups without absolute certainty that all sub-
level groups contain legacy Dynamos, the conversion will produce unexpected results.
• Pictures in a shared directory that are currently open by another user are not available for
conversion. A picture must be able to be opened and saved, which requires that no one else
524
Creating Pictures
NOTE: Although hidden by default, you can access and use toolbars in Ribbon view. To access the
Dynamo toolbar in Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and then
click Toolbars. You can also open a toolbar from the WorkSpace tree, by opening the Project Toolbar
Files folder and double-clicking the toolbar you want to open.
From the Tools tab, in the Open the Build Dynamo Wizard.
Dynamos group, click Dynamos, This wizard allows you to create
and then click Build Dynamo. a Dynamo object from a selected
object or objects.
From the Tools tab, in the Open the Quick Dynamo Updater
Dynamos group, click Dynamos, dialog box. This dialog box
and then click Quick Dynamo allows you to find and update
Updater. Dynamo Instances on all open
pictures or on a single active
picture.
525
Creating Pictures
From the Tools tab, in the Open the Convert Dynamo Sets
Dynamos group, click Dynamos, dialog box. This dialog box
and then click Convert Dynamo allows you to select Dynamo Sets
Sets. to convert.
NOTE: The Dynamo Wizard toolbar is not accessible when a Dynamo Set is active.
526
Creating Pictures
If you are creating a Dynamo from an object with no animations, the Build Dynamo Wizard dialog box
appears. By default, the Build Dynamo Wizard assigns the object a sequential Dynamo name. In the
Build Dynamo Wizard you can rename the Dynamo, as well as enter text describing the Dynamo and
the object itself.
When a group containing Dynamo objects is promoted to a Master Dynamo, as in the case when it is
dragged and dropped into a Dynamo Set, the contained Dynamo objects (instances) will be converted
to standard group objects. A message prompts you about this occurrence, and allows you to cancel the
operation.
If you are creating a Dynamo from an object with no animations, the Build Dynamo Wizard dialog box
appears. By default, the Build Dynamo Wizard assigns the object a sequential Dynamo name. In the
Build Dynamo Wizard you can rename the Dynamo, as well as enter text describing the Dynamo and
the object itself.
If you are creating a Dynamo object with animations, the Build Dynamo with User Prompts dialog box
appears. For more information on how to use this dialog box to create your Dynamo object, refer to the
Creating Dynamo Objects with Animations section.
527
Creating Pictures
The object(s) retains the animation properties associated with an object or group when you create the
Dynamo object. During Dynamo object configuration, the Build Dynamo with User Prompts dialog
box lets you assign meaningful user prompts to Dynamo properties.
For example, if you created a tank with several iFIX objects and used a rectangle as the animated fill
portion of the tank, that rectangle is connected to an animation object whose source may be a database
tag. Instead of displaying Rect1.VerticalFillPercentage as the animated property in the Dynamo's
property dialog box, the Build Dynamo Wizard lets you name Rect1.VerticalFillPercentage to
something more meaningful to Dynamo users, like Tank Fill. In this example, you would enter Tank
Fill in the User Prompt field.
These user prompts appear in the Dynamo Properties dialog box when the Dynamo is double-clicked
or when the Dynamo is first copied into a new picture. This allows you to quickly modify the data
source associated with the property, if necessary.
The following sections describe the information displayed in the columns of this dialog box, including:
• Object Properties
• Current Setting
• User Prompts
Object Properties
The Object Properties column, shown in the Build Dynamo with User Prompts dialog box, displays the
objects that comprise the Dynamo object and their animated properties. The basic format for an Object
Property is shown below:
528
Creating Pictures
Object Name.Property
Where Object Name is the name of the object that is animated, and Property is the property of the
object that is animated.
You may also have some animated object properties that reside within groups. In this case, the object
property displays as shown below:
The following tables describe the properties of objects that you can animate. These properties are all
viewed on the Advanced Animations dialog box.
Visible Tab
Size Tab
529
Creating Pictures
Misc Tab
530
Creating Pictures
531
Creating Pictures
532
Creating Pictures
533
Creating Pictures
534
Creating Pictures
535
Creating Pictures
536
Creating Pictures
Position Tab
Color Tab
537
Creating Pictures
Style Tab
538
Creating Pictures
539
Creating Pictures
540
Creating Pictures
Rotate Tab
541
Creating Pictures
Text Tab
FontName Specifies the font family used Time, Date, Text, Datalink
to display text.
FontSize Specifies the font size used to Time, Date, Text, Datalink
display text.
FontStyle Specifies the font style used to Time, Date, Text, Datatlink
display text.
Behavior Tab
542
Creating Pictures
StrikeThrough Specifies whether the text has Time, Date, Text, Datalink
a strike through it.
543
Creating Pictures
Gradient Tab
544
Creating Pictures
FadeType Specifies the fade type used for Time, Date, Rectangle,
the gradient fill. Rounded Rectangle, Oval,
Chord, Polygon, Pie, Text,
Datalink, Chart
Fill Tab
545
Creating Pictures
Appearance Tab
Picture Tab
Variable Tab
546
Creating Pictures
Current Setting
The Current Setting column, shown in the Build Dynamo with User Prompts Dialog Box, displays the
source or data source currently assigned to the associated object property.
For example, you create a tank that is made up of a group of rectangles and you assign the
VerticalFillPercentage of the interior rectangle, RectInt, with the data source
FIX32.NODE.TAG.FIELD. When you select the tank group and apply the Build Dynamo Wizard,
FIX32.NODE.TAG.FIELD appears in the Current Setting column for the
RectInt.VerticalFillPercentage object property.
In addition to representing the data source of an animated property, the current setting column may
also display text for a text object.
The Dynamo user can change the current setting when he places the Dynamo in a picture or double-
clicks it.
User Prompts
The User Prompts column in the Build Dynamo with User Prompts dialog box, shown in the following
figure, allows you to enter prompts for Dynamo properties.
These user prompts appear in the Dynamo Properties dialog box when the Dynamo is double-clicked
or when the Dynamo is first copied into a new picture. This allows you to quickly modify the data
source associated with the property.
For example, if you create the tank described in the Current Setting section and apply the Build
Dynamo Wizard, the Build Dynamo with User Prompts dialog box appears as shown in the following
figure.
547
Creating Pictures
Build Dynamo with User Prompts Dialog Box - Entering User Prompts
In this example, enter Tank Fill in the User Prompt field. Tank Fill describes the property for the
Dynamo. Tank Fill is more descriptive to users than RectInt.VerticalFillPercentage. The Dynamo
properties display, as shown in the following figure, if the user double-clicks the Dynamo.
548
Creating Pictures
You can configure a Dynamo to allow partial substitution for property values. For example, you may
want to allow the user to enter a different NODE.TAG for a Dynamo property value but keep a static
field. To do this, you need to enter the User Prompt surrounded by brackets and use asterisks for static
values.
IMPORTANT: When using tag group symbols as partial substitutions, the Build Dynamo Wizard does
not automatically resolve the tags.
The following example illustrates how you might use partial substitution for a Dynamo's property
setting.
This example assumes that you have a datalink named Datalink1 in the group of objects that you are
converting to a Dynamo. In the Build Dynamo with User Prompts dialog box, enter the User Prompt as
shown below:
549
Creating Pictures
DynamoProperty CurrentSetting
The Dynamo property Measurement Tag always uses the F_CV field for any tag the user enters.
In some cases, you may want all of the Dynamo object properties to use the same setting. For example,
you may want a tank's fill and color properties to be animated by the same database tag. To do this,
enter the same User Prompt for each object property.
If you use the same user prompt for multiple Dynamo properties, when you view the Dynamo Property
dialog box, only one property displays. The value entered for the Dynamo property is used for all the
object properties that you assigned that user prompt to.
Example: Assigning the Same User Prompt for Multiple Object Properties
In this example, you create a Dynamo that allows the user to enter one tag that animates both the
vertical fill percentage and the foreground color of Rect1. In the Build Dynamo with User Prompts
dialog box, enter the User Prompt as shown below:
When you enter a different tag in the Current Setting column, the tag animates both the fill percentage
and color.
In some cases, you may not want to display any user prompts for an object that contains animations.
For example, you may have a complex Dynamo object with user prompts provided through scripting,
rather than manual user entry. To allow for this, in the Build Dynamo User Prompt dialog box, do not
enter a user prompt in any object property. Leave all user prompt fields empty.
If you do not enter user prompts in any of the object property fields of the Build Dynamo User Prompt
dialog box, then no prompts display when you add the Dynamo Instance to a picture.
550
Creating Pictures
Example 1
For example, you may want to create a Dynamo that contains a command button that when clicked,
runs the following command script:
ToggleDigitalPoint "FIX32.SCADA01.DO1.F_CV"
And, you may want to allow the Dynamo users to change the tagname for the ToggleDigitalPoint
command.
To allow Dynamo users to change the tagname for the ToggleDigitalPoint command:
1. Add a Variable object for each command script to the Dynamo group.
2. Set the Variable object's VariableType property to String and its InitialValue property to the
tagname.
3. Change the command script parameter in the script to VariableName.InitialValue.
Example 2
Assume that you have two push buttons in your Dynamo. One has the command script: WriteValue
"50", "FIX32.NODE.TAG.F_CV". The other has the following command script: ToggleDigitalPoint
"FIX32.NODE.DIGTAG.F_CV".
To allow users to be able to set the tags when they use the Dynamo object:
1. In Classic view, use the Variable toolbar button on the Toolbox to insert a Variable object.
-Or-
In Ribbon view, on the Insert tab, in the Objects/Links group, click Objects/Links, and then
click Variable.
2. When the Create a Variable Object dialog box appears:
a. Name the Variable object WriteVal.
b. Select Variable Type String.
c. Select Local Variable.
d. Click OK.
3. Select the Variable object that you inserted in the System Tree, and select Property Window
from the right-click menu.
4. In the Property Window for the Variable object, set the Initial Value property to
FIX32.NODE.TAG.F_CV.
551
Creating Pictures
5. Insert another Variable object and follow steps 1 through 4 above. Name the Variable object
ToggleVal and set the Initial Value property of this Variable object to
FIX32.NODE.DIGTAG.F_CV.
6. For the two pushbuttons, open the Visual Basic Editor and change the command scripts as
follows:
• WriteValue "50", WriteVal.InitialValue
• ToggleDigitalPoint ToggleVal.InitialValue
7. Close the editor and add the two Variable objects to the Dynamo group by selecting them in
the System Tree and dragging and dropping them into the group.
When you select the Create Dynamo toolbar button, the Create Dynamo with User Prompts displays:
WriteVal.InitialValue FIX32.NODE.TAG.F_CV
ToggleVal.InitialValue FIX32.NODE.DIGTAG.F_CV
If you set your User Prompts to Write Tag and Toggle Tag, the Dynamo Properties dialog box displays
the following:
For more information on using VBA to customize Dynamos for your specific needs, refer to the
Writing Scripts manual.
552
Creating Pictures
NOTE: Dynamos in Pre-built Dynamo Sets earlier than iFIX 4.5 and Dynamos created before iFIX
4.5 are not Dynamo objects. This means you cannot use the Quick Dynamo Updater, the Dynamo
Updater Wizard, and the Cross Reference Tool to update instances of pre-built Dynamos or Dynamos
created earlier than iFIX 4.5 within existing pictures. Only Dynamo objects can be updated with these
tools. However, you may convert Dynamos created before iFIX 4.5 to objects using the Dynamo
Converter tools. After the Dynamos have been converted, you may then use the Quick Dynamo
Updater, the Dynamo Updater Wizard, and the Cross Reference Tool to update Dynamo instances.
To open an existing Dynamo Set in the iFIX WorkSpace, open the Dynamo Sets folder from the
system tree and double-click the set.
To create a new Dynamo Set, click the New Dynamo Set button on the Standard toolbar (Classic view)
or on the Tools tab, in the Dynamos group, in the Dynamos set, click New Dynamo Set (Ribbon view).
A blank document opens always on top and half the window size, and the Dynamo Set is added to the
Dynamo Sets folder in the system tree. When you save a Dynamo Set, it is given an .FDS extension
and stored in this folder.
To accommodate the unique requirements of Dynamo objects, objects behave slightly different in a
Dynamo Set than they do in a picture. For example, when you click an object in a picture and drag that
object to another location within the picture, you move the object. However, if you drag and drop that
same object into a Dynamo Set, you copy the Dynamo object to the set, as the following figure shows.
IMPORTANT: Be advised that if you delete a Master Dynamo and there are pictures with Dynamo
Instances derived from that Master Dynamo, the links to those Instances will be lost when the Master
Dynamo is deleted. Use caution when deleting any Master Dynamo in a Dynamo Set.
553
Creating Pictures
Cut Remove the object from the dynamo and place it into the clipboard.
Copy Create a duplicate copy of the object and place it into the clipboard.
Duplicate Create a duplicate copy of the object and place it slightly offset from the
original.
Edit Script Open the Visual Basic Editor, which allows you to edit Visual Basic
scripts.
Property Window Display the Properties Window, which allows you to view and change
property values.
If you assigned User Prompts to the Dynamo's Object Properties, the Dynamo Properties dialog box
554
Creating Pictures
appears after you drop in the Dynamo object. This dialog box allows you to change the data sources
for the Dynamo's properties.
In general, when updating a Dynamo Instance inside a Picture, that Instance is replaced with the
Master Dynamo it is being updated from. This replacement is not a merge; if you have made changes
to the Dynamo Instance, it is overwritten by the Master Dynamo.
Limitations
There are a few limitations when using the Dynamo Updater tool:
• Pictures in a shared directory that are currently open by another user are not available to be
updated. A picture must be able to be opened and saved, which requires that no one else have
the file open.
• If you rotated an instance of a Master Dynamo object within a picture, you must review the
Dynamo Instance and modify it after the update.
• Resized Dynamos do update, however, not all dimensions resize. For example, for a pipe
object, you can resize the height and width, but not the thickness of the actual pipe when you
resize it.
• Animations on any object type will map only to an object of the same type.
• Animation Data Sources from an existing Dynamo Instance are maintained as long as a
similar object still exists in the Master Dynamo.
• Dynamo descriptions are unique to the Instance and are not overwritten during an update.
• Existing connections made via use of Graphical Connection Nodes are maintained whenever
possible.
• It is possible for you to have changed a Master Dynamo so significantly that it is impossible
to perform an update and maintain all the data.
• For example, if you update a Dynamo to contain only one data source based animation but a
previous version had three data source based animations, a best guess match is made about
which one of the three data sources to use. A report is then generated based on your settings.
The "best guess" approach makes comparisons between common properties. For example, a
Fill Animation’s data source is copied over only to another Fill Animation. If no Fill Animation
exists, the data source is likely to be dropped. For multiple Fill Animations, additional
comparisons such as the Animation Name are made.
555
Creating Pictures
Dynamos:
• The Quick Dynamo Updater lets you conduct a basic search for Dynamo Instances that are
not synchronized with their associated Master Dynamos in the active picture or all open
pictures.
• The Dynamo Updater Wizard gives you finer control over which Dynamos and pictures to
include in the search, lets you specify a log file in which to record search results, and enables
you to specify the update behavior that the Dynamo Updater should use during the
replacement process.
• The Cross Reference Tool's Report Wizard enables you to search for Dynamos in pictures, or
pictures containing specified Dynamos.
The Dynamo Updater examines the version differences between Dynamo Instances and their
associated Master Dynamos, and then updates the Dynamo Instances based on the update behavior you
specify.
You can also select the Dynamo object and click the Build Dynamo button on the Dynamo Toolbar to
update Dynamo user prompts (Classic view) or on the Tools tab, in the Dynamos group, in the
Dynamos list, click Build Dynamo (Ribbon view).
Additionally, you can right-click the Dynamo object and select Property Window to update overall
properties in the Dynamo.
If you want to modify a Master Dynamo in a Dynamo Set, drag the Dynamo object from the Dynamo
Set and into a picture and make your changes. When you are finished, drag-and-drop the Dynamo
object from the picture, back into the Dynamo Set. A message appears asking you if you want to
overwrite the Master Dynamo and update it. While you can also edit some Dynamo Properties from
the Dynamo Set window, it's better to drag-and-drop the Dynamo into a picture to make the update and
then drag-and-drop it back into the Dynamo set. Ensure that you remove the updated Dynamo object
from the picture and replace it with an instance of the Master Dynamo, and then you can update other
instances of Dynamo objects.
556
Creating Pictures
Property Description
Dynamo A read-only field listing the name of the Dynamo object. You cannot edit this
Name field.
Dynamo A description of the specific usage of the given Dynamo Instance. The maximum
Description number of characters that you can enter in this description are recorded in the
Max_Dynamo_Desc_Length field. The Dynamo Description can be different for
each Dynamo Instance. For the Master Dynamo, the description is empty and
read-only.
Dynamo If the Dynamo contains animated properties, the Dynamo Properties dialog box
Property displays the animated properties and lets you change their current setting.
Current Each property contains a Current Setting column. The Current Setting column
Setting contains the value or data source assigned to the Dynamo property. The first time
you use the Dynamo, it displays the original values assigned to the properties
when the Dynamo was created.
If the current setting is a data source, you can select the Browse (...) button to
launch the Expression Builder and select a new data source. You can also select
the Quick Modify button to modify the data source value itself.
You may later decide to change the user prompts that appear in the Dynamo Properties dialog box.
You can do this by selecting the Dynamo object (in a picture or Dynamo Set), and clicking the Build
Dynamo button from the Dynamo toolbar (Classic view) or by selecting Build Dynamo from the
Dynamo list, in the Dynamo group, on the Tools tab (Ribbon view). When the Dynamo has animated
properties, the Build Dynamo with User Prompts dialog box appears. The User Prompts appear in
brackets, { }. To change the User Prompt, delete or modify the contents of the User Prompt field and
click OK.
When a Dynamo object in a picture is converted to individual objects, the link to the Master Dynamo
no longer exists. You cannot use the Quick Dynamo Updater, the Dynamo Updater Wizard, and the
Cross Reference Tool to update this instance of the Dynamos object. Only Dynamo objects can be
updated with these tools.
557
Creating Pictures
Name
A read-only field that displays the object name of the selected Dynamo for informational purposes.
You cannot edit this field.
Description
A read-only field that displays the object description of the selected Dynamo for informational
purposes. You cannot edit this field.
Select this option to create a new master Dynamo from the selected object.
Select this option to add the selected object to the Dynamo Set without creating a Master Dynamo
object.
558
Creating Pictures
Specify a name for the Dynamo in this field. The name you specify must satisfy the following
conditions:
• It must begin with an alphabetic character, and must contain only alphanumeric characters.
• It cannot be blank, and cannot contain any spaces.
• The maximum number of characters is 64.
• The name cannot be changed while a script is running or paused.
• The name cannot contain reserved VBA names. See the Microsoft VBA help system for more
information on VBA reserved words.
Dynamo Description
Optionally, specify a description of the Dynamo Instance in this field. The Dynamo Description can be
different for each Dynamo Instance. For the Master Dynamo, the description is empty and read-only.
Object Description
Specify a name for the Dynamo in this field. The name you specify must satisfy the following
conditions:
• It must begin with an alphabetic character, and must contain only alphanumeric characters.
• It cannot be blank, and cannot contain any spaces.
• The maximum number of characters is 64.
• The name cannot be changed while a script is running or paused.
• The name cannot contain reserved VBA names. See the Microsoft VBA help system for more
information on VBA reserved words.
Dynamo Description
Optionally, specify a description for the Dynamo Instance in this field. The Dynamo Description can
be different for each Dynamo Instance. For the Master Dynamo, the description is empty and read-
only.
Object Description
559
Creating Pictures
Object Property
Current Setting
Displays the value, such as the tagname or command script variable, that is currently assigned to the
object property.
User Prompt
The User Prompt fields allow you to enter Dynamo prompts for each object property so you can re-use
the Dynamo in multiple displays. A Dynamo prompt should be meaningful, so that when it is placed in
a picture, the user can enter the unique properties for the Dynamo.
Update Behavior
The Update Behavior area lets you specify how the Dynamo Updater should reconcile a data source
mismatch between a Master Dynamo and Dynamo Instance. Select one of the following options:
• Update Dynamo, and use Master Dynamo data sources – If you want to update
mismatched Dynamo Instances, but do not want to apply any new data sources from the
Master Dynamo. This option uses all data sources from the Master Dynamo, and no data
sources from the Dynamo Instance.
• Update Dynamo, and try to match up data sources – If you want to update mismatched
Dynamo Instances using new data sources from the Master Dynamo.
• For example, if a Master Dynamo object contains only one data source (user prompt) based on
an animation, but a previous version (an instance of that Dynamo) includes three data sources
based on animations, a best guess match is made. For the best guess, iFIX decides which one of
the three data sources to use in the instance, and a report is generated based on your settings.
o If the object type differs between the Master Dynamo and the Instance, there is no attempt to
update the data sources in the animation for that object.
• Do not Update Dynamo – If you only want to view a report of mismatched Dynamos and
make no actual updates.
• Prompt for Choice – If you want a prompt to display with your options each time a
mismatched Dynamo is found. This option is the default.
560
Creating Pictures
Dynamo Name
A read-only field that displays the Dynamo name for informational purposes. You cannot edit this
field.
Dynamo Description
Optionally, specify a description of the Dynamo Instance in this field. The Dynamo Description can be
different for each Dynamo Instance. For the Master Dynamo, the description is empty and read-only.
The Dynamo Property list box displays each property assigned to the Dynamo. For each Dynamo
Property:
• The Current Setting field displays a value, such as the tagname or command script variable,
that is currently assigned to the object property.
• The User Prompt field allows you to enter Dynamo prompts for each object property, so you
can re-use the Dynamo in multiple displays. A Dynamo prompt should be meaningful, so that
when it is placed in a picture, the user can enter the unique properties for the Dynamo.
Click the button next to this field to select a path containing the Dynamo Sets you want to convert.
Displays the Dynamo Sets that exist in the Current Dynamo Set Path. You can expand Dynamo Sets to
display the individual legacy Dynamos (top-level group objects) contained in each Dynamo Set. The
Dynamo Sets list box is where you select the legacy Dynamos or Dynamo Sets you want to convert.
Click either the Select All button or the Clear All button to quickly select or de-select all the Dynamos
in every listed Dynamo Set.
Convert
After you have selected at least one legacy Dynamo, the Convert button becomes available. When you
click the Convert button, the Dynamo Sets Converter examines the selected Dynamos and opens the
Dynamo Sets Converter dialog box, where you can convert Dynamos.
NOTE: If the selected Dynamo Set is open before the conversion process begins, it will not be saved;
close all Dynamo Sets before conversion to ensure that changes are saved.
561
Creating Pictures
Item Description
Selected Group Displays the Dynamo Instances that were selected for conversion. This list is
Objects to Convert generated from the Dynamo Sets Converter dialog box.
– List Box
Selected Group Displays the name, object description, dynamo description, revision, file
Objects to Convert name, and full name of the Dynamo Set selected in the conversion list.
– Table
Item Description
Conversion Displays the date, time, and status of each Dynamo conversion attempted as
Progress Status – part of the automated Dynamo Convert process.
Log Display
Run Conversion
Launches the conversion process, which converts existing Dynamos to Dynamo objects.
NOTE: While the conversion process is running, the Run Conversion button changes to a Cancel
Conversion button, allowing you the option of canceling the conversion while it is in progress.
The Options for the Conversion area lets you specify how the Dynamo Converter should reconcile a
mismatch between a Master Dynamo and Dynamo. Select one of the following options:
• Convert to Dynamo but do not update Dynamo – If you want to convert the Dynamo to a
Dynamo object, but do not want to link it to the Master Dynamo. Use this option if you want
562
Creating Pictures
Apply
Applies the selected adjustment option to a single Dynamo object in the conversion.
Apply to All
Applies the selected adjustment option to all Dynamo objects in the conversion.
The Convert Behavior tab lets you set how Dynamos are handled when the object structure of a Master
Dynamo and a Dynamo do not match. You can select from the following options:
• Convert Dynamo, but do not update Dynamo (Don't link to Master Dynamo) – If you
want to convert the Dynamo to a Dynamo object, but do not want to link it to the Master
Dynamo. Use this option if you want to use this Dynamo to create a new Master Dynamo.
• Convert Dynamo, then update Dynamo (Link to Master Dynamo). Try to match up data
sources – If you want to convert the Dynamo to a Dynamo object, and want to link it to the
Master Dynamo.
• Do not convert Dynamo – If you only want to view a report of mismatched Dynamos and
make no actual conversions. Dynamos that are not mismatched are converted.
• Prompt for choice – If you want to be prompted each time a mismatch is detected.
Item Description
Save Status Trail Select this check box to save a text log of the Dynamo Converter's
Check Box activities. If you do not check this box, the remaining options on the
Convert Options Tab are unavailable.
Save Status Trail Edit Specify a folder, path, and file name for the Dynamo Converter's log
Box file, or click the Browse button to select a file location.
Save Status Trail Click this button to select a path and filename for the Dynamo
Browse Button Converter's log file.
563
Creating Pictures
Item Description
Append/Overwrite Choose Append or Overwrite to either append the new results to the
Options existing status trail log, or overwrite the log file with the new results. If
no log exists, either option will create a new status trail log file.
Item Description
Current Dynamo Set Click the button next to this field to select a path containing the Dynamo
Path Sets you want to convert.
Master Dynamo List Displays the Master Dynamos that exist in the selected Dynamo Sets. The
Box Master Dynamo list box is where you select the Master Dynamos within
selected Dynamo Sets you want to convert with the Dynamo Converter
Wizard. Only one Master Dynamo can be selected for conversion.
Current Picture Path Click the button next to this field to select a path containing the pictures
you want to convert.
Pictures List Box Displays the pictures that exist in the Current Picture Path. The Pictures
list box is where you select the pictures and group objects you want to
convert with the Dynamo Converter Wizard.
Pictures Select Click either the Select All button or the Clear All button to quickly select
All/Clear All or de-select all the pictures and group objects in the Pictures List Box.
The View Settings tab displays the options that have been selected from the Convert Behavior, Convert
Options, and Select Dynamos tabs.
Back/Next Buttons
Click the Back or Next buttons to navigate back and forth between tabs. Alternatively, you can click
on a tab directly.
564
Creating Pictures
After you have selected one Master Dynamo and at least one group object in the picture in the Select
Dynamos Tab, the Run Convert button becomes available. Click the Run Convert button to begin the
conversion process.
Item Description
Selected Group Displays the group objects that were found to not be Dynamos. This list is
Objects to convert generated from the Quick Dynamo Converter dialog box or the Dynamo
– List Box Converter Wizard dialog box.
Selected Group Displays the name, object description, dynamo description, revision, file
Objects to convert name, and full name of the Dynamo and Master Dynamo associated with the
– Table selected Dynamo.
Item Description
Convert Behavior Displays the currently selected behavior that the Dynamo Converter should
use when the number of data sources differs between a Master Dynamo and
Dynamo.
Maintain Size Select to retain the current size of the Dynamo Instance.
Conversion Displays the date, time, and status of each Dynamo and Master Dynamo
Progress Status – conversion attempted as part of the automated Dynamo conversion process.
Log Display
565
Creating Pictures
Run Conversion
Launches the conversion process, which converts legacy Dynamos into Dynamo objects. Conversions
are made based on the Convert Behavior setting.
NOTE: While the conversion process is running, the Run Conversion button changes to a Cancel
Conversion button, allowing you the option of canceling the conversion while it is in progress.
The Update Behavior tab lets you set how Dynamos are handled when the number of data sources in a
Master Dynamo and a Dynamo Instance Object do not match. You can select from the following
options:
Item Description
Update Dynamo, If you want to update mismatched Dynamo Instances, but do not want to
and use Master apply any of the data sources from the Dynamo Instance. This option uses
Dynamo data all data sources from the Master Dynamo, and no data sources from the
sources Dynamo Instance.
Update Dynamo, If you want to update mismatched Dynamo Instances using data sources
and try to match up from the Dynamo Instance and a best guess matching algorithm.
data sources
For example, if a Master Dynamo object contains only one data source
(user prompt) based on an animation, but a previous version (an instance of
that Dynamo) includes three data sources based on animations, a best guess
match is made. For the best guess, iFIX decides which one of the three data
sources to use in the instance, and a report is generated based on your
settings.
If the object type differs between the Master Dynamo and the Instance,
there is no attempt to update the data sources in the animation for that
object.
Do not update If you only want to view a report of mismatched Dynamos and make no
Dynamo actual updates.
Prompt for choice If you want a prompt to display with your options each time a mismatched
Dynamo is found. This option is the default.
566
Creating Pictures
Item Description
Save Status Trail Select this check box to save a text log of the Dynamo Updater's
Check Box activities. If you do not check this box, the rest of the options on the
Update Options Tab is unavailable.
Save Status Trail Edit Specify a folder, path, and file name for the Dynamo Updater's log file,
Box or click the Save Status Trail Browse button to select a file location.
Save Status Trail Click this button to select a path and filename for the Dynamo Updater's
Browse Button log file.
Append/Overwrite Choose Append or Overwrite to either append the new results to the
Options existing status trail log, or overwrite the log file with the new results. If
no log exists, either option will create a new status trail log file.
Item Description
Current Dynamo Click the button next to this field to select a path containing the Dynamo
Set Path Sets you want to update.
Dynamo Sets List The Dynamo Sets List Box displays the Dynamo Sets that exist in the
Box Current Dynamo Set Path. You can expand Dynamo Sets to display the
individual Dynamos contained in each Dynamo Set. The Dynamo Sets List
Box is where you select the Dynamos or Dynamo Sets you want to update
with the Dynamo Updater Wizard.
Dynamo Sets Click either the Select All button or the Clear All button to quickly select or
Select All/Clear All de-select all the Dynamos in every listed Dynamo Set.
Current Picture Click the button next to this field to select a path containing the pictures
Path you want to update.
Pictures List Box The Pictures List Box displays the pictures that exist in the Current Picture
Path. The Pictures List Box is where you select the pictures you want to
update with the Dynamo Updater Wizard.
Pictures Select Click either the Select All button or the Clear All button to quickly select or
All/Clear All de-select all the pictures in the Pictures List Box.
567
Creating Pictures
The View Settings tab displays the options that have been selected from the Update Behavior, Update
Options, and Select Dynamos tabs.
Back/Next Buttons
Click the Back or Next buttons to navigate back and forth between tabs. Alternatively, you can click
on a tab directly.
After you have selected at least one Dynamo and one picture in the Select Dynamos Tab, the Launch
Updater button becomes available. When you click the Launch Updater button, the Dynamo Updater
Wizard examines the selected Dynamos and pictures and opens the Dynamo Updater dialog box,
where you can update mismatched Dynamo Instances and Master Dynamo revisions according to the
options you have set.
Item Description
Dynamo Instances Displays the Dynamo Instances that were found to be a different revision
Mismatched With from their associated Master Dynamo. This list is generated from the Quick
Revision Of Dynamo Updater dialog box or the Dynamo Updater Wizard dialog box.
Master Dynamo –
List Box
Dynamo Instances Displays the name, object description, dynamo description, revision, file
Mismatched With name, and full name of the Dynamo Instance and Master Dynamo
Revision Of associated with the Dynamo selected in the mismatch list.
Master Dynamo –
Table
Item Description
Update Behavior Displays the currently selected behavior that the Dynamo Updater should
use when the number of data sources does not match between a Master
Dynamo and Dynamo Instance.
568
Creating Pictures
Item Description
Maintain Size Select to retain the current size of the Dynamo Instance.
Maintain Captions Select to retain existing captions for all Dynamo Instances.
Update Progress The Update Progress Status bar graphically displays the progress of the
Status Dynamo Update process.
Update Progress Displays the date, time, and status of each Dynamo Instance and Master
Status – Log Dynamo modification attempted as part of the automated Dynamo Update
Display process.
Run Update
Launches the update process, which reconciles the revision differences between associated Dynamo
Instances and Master Dynamos. Updates are made based on the Update Behavior setting.
NOTE: While the update process is running, the Run Update button changes to a Cancel Update
button, allowing you the option of canceling the update while it is in progress.
The Data Source Adjustments area lets you specify how the Dynamo Updater should reconcile a data
source mismatch between a Master Dynamo and Dynamo Instance. Select one of the following
options:
• Update the Dynamo, and use Master Dynamo data sources – If you want to update
mismatched Dynamo Instances, but do not want to apply any of the data sources from the
Dynamo Instance. This option uses all data sources from the Master Dynamo, and no data
sources from the Dynamo Instance.
• Update the Dynamo and try to match up the Data Sources – If you want to update
mismatched Dynamo Instances using data sources from the Dynamo Instance and a best guess
matching algorithm.
• For example, if a Master Dynamo object contains only one data source (user prompt) based on
an animation, but a previous version (an instance of that Dynamo) includes three data sources
based on animations, a best guess match is made. For the best guess, iFIX decides which one of
the three data sources to use in the instance, and a report is generated based on your settings.
• If the object type differs between the Master Dynamo and the Instance, there is no attempt to
update the data sources in the animation for that object.
• Do not update Dynamo – If you only want to view a report of mismatched Dynamos and
make no actual updates.
569
Creating Pictures
Apply
Applies the selected adjustment option to a single Dynamo object in the update.
Apply to All
Applies the selected adjustment option to all Dynamo objects in this update.
Name
A read-only field that displays the Dynamo name for informational purposes. You cannot edit this
field.
Dynamo ID
A read-only field that displays the Dynamo ID for informational purposes. You cannot edit this field.
Description
A read-only field that displays the Dynamo Instance description for informational purposes. You
cannot edit this field.
Select this option to overwrite the existing Master Dynamo with the updated one. The Dynamo ID
does not change when you overwrite the Master Dynamo and your links to existing Dynamos remain.
Optionally, specify a description of the object in this field. A new Dynamo ID is generated, and your
links to existing Dynamos Instances no longer exist.
570
Creating Pictures
Allows you to select which group objects to convert to Dynamo objects. Your choice is selected on the
active picture.
Propagates the object selected on the picture to the Select Group Object(s) list.
NOTE: The object(s) must be selected on picture prior to clicking this button.
Run Convert
Launches the conversion process, which converts old Dynamos (group objects) into Dynamo objects.
Conversions are made based on the Convert Behavior settings.
How Do I...
The following sections provide information on how to work with Dynamo objects:
571
Creating Pictures
1. In the iFIX WorkSpace system tree, double-click the Project Toolbar Files item to open the
folder.
2. Double-click the Toolbars folder to view a list of toolbars.
3. Double-click the DynamoToolbar icon to open the Dynamo Toolbar. The six-button Dynamo
Toolbar now appears in the WorkSpace.
1. In the iFIX WorkSpace, select the custom object or group of objects that you want to convert
to a Dynamo.
2. In Classic view, on the Dynamo toolbar, click the Build Dynamo button.
-Or-
In Ribbon view, on the Tools tab, in the Dynamos group, click Dynamos, and then click Build
Dynamo.
-Or-
Right-click the selected objects and choose Dynamo.
• If the custom object properties are not animated or set to specific values, the Build
Dynamo Wizard dialog box appears, allowing you to name the Dynamo, and provide
descriptions for the Dynamo and object.
• If the object properties are animated, the Build Dynamo with User Prompts dialog
box appears. For more information, refer to the Creating a Dynamo with User
Prompts section.
572
Creating Pictures
3. In the Dynamo Name field, enter the name you want use for this Dynamo.
4. Optionally, in the Dynamo Description field, enter a description for this Dynamo.
5. Optionally, in the Object Description field, enter a description for this object.
6. Click OK.
TIP: When you first create a Dynamo in the WorkSpace, it is not a Master Dynamo. If you
immediately want to create a Master Dynamo object(s), instead of using the Build Dynamo
Wizard, drag-and-drop the object(s) to a Dynamo set. The Add Object to Dynamo Sets dialog
box appears for each object. Select the Create a New Master Dynamo option in each dialog
box, and click OK. These actions create the Dynamo object(s) and add them to the set as a
Master Dynamo(s). Or, you can create the Dynamo object, and then drag-and-drop it into the
Dynamo Set to create a new Master Dynamo.
1. In the iFIX WorkSpace, within a picture, select the custom object or group that you want to
convert to a Dynamo.
2. In Classic view, on the Dynamo toolbar, click the Build Dynamo button.
-Or-
In Ribbon view, on the Tools tab, in the Dynamos group, click Dynamos, and then click Build
Dynamo.
-Or-
Right-click the selected objects and choose Dynamo.
NOTE: You must have an object with at least one animation for the Build Dynamo with User
Prompts dialog box to appear. Otherwise, the generic Build Dynamo Wizard dialog box
appears, requesting only a name.
3. In the Dynamo Name field, enter the name you want use for this Dynamo.
4. Optionally, in the Dynamo Description field, enter a description for this Dynamo.
5. Optionally, in the Object Description field, enter a description for this object.
6. In the User Prompt field, for each object property, enter a prompt to display in the Dynamo
User Interface that the Build Dynamo Wizard creates.
The prompt can be up to 127 characters long. Surround the prompt with brackets if you are
using partial substitution. Use asterisks (*) for static values. If you do not enter a User
Prompt, the Build Dynamo Wizard uses the property name of the animation for that object
property, and no prompt appears. If you want to ensure that the same prompt is used across
multiple properties, make sure that all prompts match. For more information, refer to the
Displaying One Dynamo User Prompt for Multiple Object Properties section.
7. Click OK.
8. To test your Dynamo User Interface, double-click the Dynamo. The Dynamo Properties
dialog box with User Prompts appears.
TIP: When you first create a Dynamo in the WorkSpace, it is not a Master Dynamo. If you
573
Creating Pictures
immediately want to create a Master Dynamo object(s), instead of using the Build Dynamo
Wizard, drag-and-drop the object(s) to a Dynamo set. The Add Object to Dynamo Sets dialog
box appears for each object. Select the Create a New Master Dynamo option in each dialog
box, and click OK. These actions create the Dynamo object(s) and add them to the set as a
Master Dynamo(s). Or, you can create the Dynamo object, and then drag-and-drop it into the
Dynamo Set to create a new Master Dynamo.
Displaying One Dynamo User Prompt for Multiple Dynamo Object Properties
To display one Dynamo user prompt for multiple Dynamo object properties:
• In the Build Dynamo with User Prompts dialog box, for each Dynamo property, enter the same
value in the User Prompt field.
For example, enter Tagname for the User Prompt if you want the Tagname to be the same for
all three properties, as shown in the following table.
• In the Build Dynamo with User Prompts dialog box, for each Dynamo property, do not enter a
value in the User Prompt field.
1. In the iFIX WorkSpace, select the custom object or group that you want to convert to a
Dynamo.
2. In Classic view, on the Dynamo toolbar, click the Build Dynamo button.
-Or-
In Ribbon view, on the Tools tab, in the Dynamos group, click Dynamos, and then click Build
Dynamo.
NOTE: You must have an object that supports animations for the Build Dynamo with User
Prompts dialog box to appear. Otherwise, the generic Build Dynamo Wizard dialog box
appears, requesting only a name.
574
Creating Pictures
3. Optionally, in the Dynamo Description field, enter a description for this Dynamo.
4. Optionally, in the Object Description field, enter a description for this object.
5. In the User Prompt field(s), enter the User Prompt surrounded by brackets {} and use
asterisks (*) for static values.
6. Click OK.
To do this, for each command script, add a Variable object to the Dynamo group and change the
command script parameter as described in the example below.
NOTE: The following steps assume you have the command script: ToggleDigitalPoint
“FIX32.NODE.TAG.F_CV” on the click event of an oval.
1. Create a local variable object (for example, call it MyVar). Set the Variable Type to String.
Do not assign it a data source.
2. Right-click the object, and click Property Window on the shortcut menu. Set the InitalValue
property to a value such as FIX32.NODE.TAG.F_CV.
3. In the WorkSpace system tree, select the variable object and drag it to the Dynamo Set group.
4. Right-click the oval, and click Edit Script on the shortcut menu.
5. Modify the oval’s click event script from ToggleDigitalPoint “FIX32.NODE.TAG.F_CV” to
ToggleDigitalPoint MyVar.InitialValue.
6. On the Dynamo toolbar, click the Build Dynamo button. The Build Dynamo with User
Prompts dialog box appears.
7. Enter a User Prompt for MyVar.InitialValue. This allows the user to change the parameter for
the ToggleDigitalPoint command by changing the value of the variable.
8. Click OK.
1. In Classic view, from the WorkSpace toolbar, click the Cross Reference Tool button.
-Or-
In Ribbon view, on the Applications tab, in the Utilities group, click Utilities, and then click
Cross Reference Tool.
2. Generate a report with the Quick Report or Report Wizard.
To generate a report with the Quick Report:
a. From the File menu, select Quick Report. T
b. From the Object Tree, select a picture or a Dynamo Set. This allows you to search a
single picture for Dynamos, or all pictures containing Dynamos within a specified
set.
575
Creating Pictures
1. In the iFIX WorkSpace, in a picture or Dynamo Set, right-click the Dynamo object (Instance
or Master) and select Property Window. The Property window appears in the WorkSpace.
NOTE: If you double-click a Dynamo, a dialog box does not display. Instead, the VBA Editor
appears. You must right-click the Dynamo object to view the properties.
2. For each Dynamo object, provide property updates as needed. The Dynamo-specific
properties include:
• Dynamo ID – You cannot edit this field; it is a system assigned, unique value. This
value is a Globally Unique Identifier (GUID). If you have not dragged the Dynamo
Instance to a Dynamo Set to create a Master Dynamo, this number is a series of zeros.
576
Creating Pictures
1. In the iFIX WorkSpace, within a picture, double-click the Dynamo object (the Dynamo
Instance). The Dynamo Properties dialog box appears.
2. For each Dynamo property, enter an appropriate data source.
If necessary, use the scroll bar to page through the list. If you are entering a tagname, you can
launch the Expression Builder by clicking the Browse (...) button to select from a list of tags.
3. Select OK to accept the data sources.
TIPS:
• You can add a new tag by entering it in the Current Setting field and pressing Tab to
move the cursor off the field. A dialog box appears allowing you to create the tag.
• You can modify a tag by entering the tagname in the Current Setting field and
clicking the Quick Modify button to the right of the field.
The following example demonstrates how to configure a Dynamo’s properties from another object’s
edit event in configuration mode or click event in run mode.
Using a Dynamo named Dynamo2 that has a User Prompt named “Rect Fill,” the following example
displays the original value of the property in a message box and on the click of the message box OK
button. It also changes the value and displays the new value in a message box.
577
Creating Pictures
Dim x As String
GetFormEditDynamo
‘Initialize the data type array with the Dynamo2 Dynamo information, and
the User Prompt ‘whose Value you are looking to change.
x = NewEditDynamoForm.DynamoPromptValue
MsgBox x
NewEditDynamoForm.DynamoPromptValue = "FIX32.MYNODE.RAMP.F_CV"
x = NewEditDynamoForm.DynamoPromptValue
2. Switch to run mode and click on the command button. The first message box displays the
current data source for the Dynamo “Rect Fill” property.
3. Click OK. The second message box displays the new data source for the Dynamo “Rect Fill”.
578
Creating Pictures
2. Right-click the Dynamo object, and select Convert to Objects. The Dynamo attribute is
removed and the objects return to their original state. You can now make changes to
individual object properties.
3. Remove EasyDynamo variables.
In the WorkSpace System Tree, if an object has a + icon next to it, click the icon. The
animation object displays. If the animation object has a + icon next to it, click the icon. If the
animation object contains an EasyDynamo variable, delete the EasyDynamo variable.
• Alternatively, if you did not create a Dynamo object yet, you can still drag-and-drop
the object(s) to the set. The Add Object to Dynamo Sets dialog box appears for each
object you add. Select the Create a New Master Dynamo option and click OK in each
dialog box that appears. These actions create the Dynamo object(s) and add them to
the set as a Master Dynamo(s). If you want to change the Dynamo description, object
579
Creating Pictures
1. Open a Dynamo Set. For details, refer to the Opening Dynamo Sets section.
2. From the Dynamo Set, drag-and-drop or copy and paste the Master Dynamo object into the
picture.
Each new Dynamo object that you add to a picture (not a Dynamo Set) becomes a new
Dynamo Instance.
NOTE: Pre-built Dynamos and Dynamos created in versions of iFIX before 4.5 are not
considered Dynamo objects. You cannot update these Dynamos like you can with Master
Dynamo objects.
2. In Classic view, on the Dynamo toolbar, click the Build Dynamo button.
-Or-
In Ribbon view, on the Tools tab, in the Dynamos group, click Dynamos, and then click Build
Dynamo.
User Prompts appear in brackets, { }. If the User Prompt has partial substitution, the User
Prompt appears in brackets, while static values are represented as asterisks.
3. In the User Prompt fields, modify the entries as necessary. You can delete the brackets when
modifying User Prompts.
580
Creating Pictures
4. Click OK.
5. To test your changes, double-click the Master Dynamo object to view the Dynamo Properties
dialog box and observe the Dynamo Properties column.
IMPORTANT: The only way to modify the user prompts of a Master Dynamo is by manually
editing them through the Properties Window, as described below. Do not try to modify the
user prompts by using the Build Dynamo wizard. The Build Dynamo wizard only creates a
new Master Dynamo and breaks the connection between the selected Master Dynamo and any
Instances.
1. In the iFIX WorkSpace system tree, browse to the Dynamo Sets folder. Double-click the
folder name to view the contents.
2. In the Dynamo Sets folder, locate the Dynamo Set and Master Dynamo that you want to
update.
3. Using the plus (+) symbol, expand the item to locate the Lookup table and view the Easy
Dynamo variable.
4. Right-click the EasyDynamo variable that contains the user prompts that you want to update
and select Property Window. The Properties window appears.
5. In the CurrentValue field, enter the current value of the user prompt between the quotation
marks and the brackets, { }. For example, here you would edit the text MyPrompt to change
the user prompt text:
ForegroundColor.Blink="{MyPrompt}"
6. Likewise, in the InitialValue field, enter the initial value for the new user prompt between the
quotation marks and the brackets.
7. After you finish your changes, save the Dynamo Set.
To convert a legacy Dynamo,or a Dynamo created before iFIX 4.5, using the Quick
Dynamo Converter:
581
Creating Pictures
5. Select the Master Dynamo. The selected Master Dynamo is highlighted in the Dynamo Set.
6. Select the Group Object(s).
7. Click Run Convert. After a few moments, the Dynamo Converter dialog box displays with an
on screen report of the conversion.
8. Click Run Conversion to complete the conversion. A Dynamo Caution message box appears
if you did not select the prompt to hide it.
9. Click OK to continue. The progress of the conversion displays in the Status area. If you
selected the "Prompt for Choice" option, and any data sources or contained object structures
are mismatched between the Master Dynamo and the legacy Dynamos, the Dynamo
Converter - Conversion Adjustment Option dialog box appears.
10. If the Dynamo Converter - Conversion Adjustment Option dialog box appears, select an
option and click Apply:
• Convert to Dynamo but do not update Dynamo – If you want to convert the
Dynamo to a Dynamo object, but do not want to link it to the Master Dynamo. Use
this option if you want to use this Dynamo to create a new Master Dynamo.
• Convert to Dynamo, then update Dynamo – If you want to convert the Dynamo to
a Dynamo object, and want to link it to the Master Dynamo.
• Do not convert to Dynamo – If you only want to view a report of mismatched
Dynamos and make no actual conversions of mismatched Dynamos. Dynamos that
are not mismatched are converted.
11. Repeat step 10 each time the Dynamo Converter - Conversion Adjustment Option dialog box
appears. This allows you to approve each Dynamo object conversion individually. Otherwise,
select an option and click Apply to All to use the same option for all Dynamo object
conversions, and review the report later.
12. Review the report, and click Close to exit.
NOTE: The Quick Dynamo Converter does not save open pictures after conversion. If you
want to save the open pictures, you must do so manually.
To convert legacy Dynamos,or Dynamos created before iFIX 4.5, using the Dynamo
Converter Wizard:
1. In Classic view, on the Dynamo toolbar, click the Dynamo Converter Wizard button.
-Or-
In Ribbon View, on the Tools tab, in the Dynamos group, click Dynamos, and then click
Dynamo Converter Wizard.
2. On the Convert Behavior tab, select a conversion adjustment option:
• Convert to Dynamo but do not update Dynamo – If you want to convert the
Dynamo to a Dynamo object, but do not want to link it to the Master Dynamo. Select
this option if you want to use this Dynamo to create a new Master Dynamo.
• Convert to Dynamo, then update Dynamo – If you want to convert the Dynamo to
a Dynamo object, and want to link it to the Master Dynamo.
• Do not convert to Dynamo – If you only want to view a report of mismatched
582
Creating Pictures
• The Dynamo Converter Wizard allows you to select picture files whether the file is
open or closed. During the conversion process, the wizard opens picture files and
saves them on close. If a picture is already open, the wizard does not save the picture
file, and the file is kept open in the WorkSpace. For these open pictures, you must
manually close and save them.
• If you are using Proficy Change Management with iFIX, be aware that pictures need
to be checked out (even if closed), otherwise the Dynamo Converter Wizard will not
convert these files. If you do not check out the files, the picture files in the Select
Dynamos tab appear in red and you are unable to select them.
8. Click Next and, on the View Settings tab, review your settings.
9. Click Run convert. After a few moments the Dynamo Converter Progress dialog box appears
with a report of the Dynamos to convert.
NOTES:
• If no Master Dynamo or legacy Dynamos from your selection require conversion, the
Run Conversion button is unavailable.
• You can click a legacy Dynamo in the Quick Dynamo Report list to view its name,
description, revision number, and associated Master Dynamo information.
10. Click Run Conversion. A Dynamo Caution message box appears if you did not select the
prompt to hide it.
11. Click OK to continue. The progress of the conversion displays in the Status area. If there are
mismatched between the Master Dynamo and the legacy Dynamo, and you selected the
Prompt for Choice option in step 2, the Dynamo Converter - Conversion Adjustment Option
583
Creating Pictures
To convert legacy Dynamo Sets, or Dynamo Sets created before iFIX 4.5, using the
Dynamo Sets Converter:
NOTE: If you are using Proficy Change Management with iFIX, be aware that pictures need
to be checked out (even if closed), otherwise the Dynamo Converter Wizard will not convert
these files. If you do not check out the files, the picture files in the Select Dynamos tab appear
in red and you are unable to select them.
1. In Classic view, click the Convert Dynamo Sets button on the Dynamo toolbar.
-Or-
In Ribbon View, on the Tools tab, in the Dynamos group, click Dynamos, and then click
Convert Dynamo Sets.
2. Verify that the correct path appears in the Dynamo Set Path field. If not, either use the browse
button to locate the correct folder, or enter the path directly in the Dynamo Set Path field.
3. From the Dynamo Sets list box, select the Dynamo Set(s) to convert, or choose Select All to
select all Dynamo Sets.
4. Click Convert. The Dynamo Sets Converter Progress dialog box appears.
5. Click Run Conversion. The progress of the conversion displays in the Status area.
6. Click Close.
1. Open the Dynamo Set that contains the Master Dynamo object that you want to update. For
details, refer to the Opening Dynamo Sets section.
584
Creating Pictures
4. If user prompts are associated with the Dynamo object, the Dynamo Properties dialog box
appears. Enter the required information and click OK,
5. In the picture, make the required changes to the Dynamo object you just copied in.
TIP: To select a single object within a Dynamo object, with the Dynamo object selected, on
the right-click menu, select the Enter Drill-down option. A box appears around the group.
Select the object in the group you want to change and make your changes.
6. When finished, deselect the object and the group. The box disappears.
7. Select the Dynamo again, and drag-and-drop the Dynamo back to the same Dynamo Set. The
Overwrite Master Dynamo dialog box appears.
8. Select Overwrite the Existing Master Dynamo option.
NOTE: If you select the Create a New Master Dynamo instead, all instances created from the
old Master Dynamo will no longer be linked to the new Master Dynamo. And, a new Dynamo
ID number will be generated.
9. Click OK. The Master Dynamo is updated in the Dynamo Set. You may need to scroll slightly
to view the Master Dynamo in the Dynamo Set document.
10. If you want to update the Dynamo Instances in your pictures so that they reflect the new
settings in the Master Dynamo, use the steps in the following sections:
• Updating Dynamo Instances Using the Quick Dynamo Updater
• Updating Dynamo Instances Using the Dynamo Updater Wizard
• Updating Dynamo Instances Using the Cross Reference Tool
585
Creating Pictures
3. In Classic view, on the Dynamo toolbar, click the Quick Dynamo Updater button.
-Or-
In Ribbon view, on the Tools tab, in the Dynamos group, click Dynamos, and then click
Quick Dynamo Updater.
4. Select an update option:
• If you want to update the Dynamo objects on a single, selected picture only, select
the Dynamos on Active Picture option. If no active pictures are selected in the
WorkSpace (for instance, a Dynamo set is selected instead), this option is
unavailable.
• If you want to update the Dynamo objects on all pictures, select the Dynamos on All
Open Pictures option.
5. Click OK. After a few moments, the Dynamo Updater dialog box displays with an on screen
report of the update.
TIP: You can click a Dynamo Instance in the Quick Dynamo Report list to view its name,
description, revision number, and associated Master Dynamo information.
5. Click Run Update to complete the update. A Dynamo Caution message box appears if you did
not select the prompt to hide it.
6. Click OK to continue. The progress of the update displays in the Status area. If any data
sources are mismatched between the Master Dynamo and the Dynamo Instances, the Dynamo
Updater - Update Behavior dialog box appears.
NOTE: By default, Prompt for Choice is selected as the Update Behavior. You can change
the Update Behavior so that you will not be prompted to choose an update action for each
mismatched Dynamo Instance. For more information, refer to the Changing Dynamo Instance
Update Options section.
7. If the Dynamo Updater - Update Behavior dialog box appears, select an option and click
Apply:
• Update the Dynamo, and use Master Dynamo data sources – If you want to
update mismatched Dynamo Instances, but do not want to apply any of the data
sources from the Dynamo Instance. This option uses all data sources from the Master
Dynamo, and no data sources from the Dynamo Instance.
• Update the Dynamo and try to match up the Data Sources – If you want to
update mismatched Dynamo Instances using data sources from the Dynamo Instance
and a best guess matching algorithm.
For example, if a Master Dynamo object contains only one data source (user prompt)
based on an animation, but a previous version (an instance of that Dynamo) includes
three data sources based on animations, a best guess match is made. For the best
guess, iFIX decides which one of the three data sources to use in the instance, and a
report is generated based on your settings.
If the object type differs between the Master Dynamo and the Instance, there is no
attempt to update the data sources in the animation for that object.
• Do not update Dynamo – If you only want to view a report of mismatched
Dynamos and make no actual updates.
8. Repeat step 7 each time the Dynamo Updater - Update Behavior dialog box appears. This
allows you to approve each Dynamo object update individually. Otherwise, select an option
586
Creating Pictures
and click Apply to All to use the same option for all Dynamo object updates, and review the
report later.
9. Review the report, and click Close to exit.
NOTE: The Quick Dynamo Updater does not save open pictures after update.
1. In Classic view, on the Dynamo toolbar, click the Dynamo Updater Wizard button.
-Or-
In Ribbon view, on the Tools tab, in the Dynamos group, click Dynamos, and then click
Dynamo Updater Wizard.
2. On the Update Behavior tab, select an update option:
• Update the Dynamo, and use Master Dynamo data sources – If you want to
update mismatched Dynamo Instances, but do not want to apply any of the data
sources from the Dynamo Instance. This option uses all data sources from the Master
Dynamo, and no data sources from the Dynamo Instance.
• Update the Dynamo and try to match up the Data Sources – If you want to
update mismatched Dynamo Instances using data sources from the Dynamo Instance
and a best guess matching algorithm.
• For example, if a Master Dynamo object contains only one data source (user prompt)
based on an animation, but a previous version (an instance of that Dynamo) includes
three data sources based on animations, a best guess match is made. For the best guess,
iFIX decides which one of the three data sources to use in the instance, and a report is
generated based on your settings.
If the object type differs between the Master Dynamo and the Instance, there is no
attempt to update the data sources in the animation for that object.
• Do not Update Dynamo – If you only want to view a report of mismatched
Dynamos and make no actual updates.
• Prompt for Choice – If you want a prompt to display with your options, each time a
mismatched Dynamo is found. This option is the default.
3. Click Next.
4. On the Update Options tab, if you want to create a log file of the update process, select the
Save Status Trail Info check box, and enter a path in the Path field, if you want to change the
default path and file name. Select Append to add to an existing log file, or Overwrite to create
a new one.
5. Click Next.
6. On the Select Dynamos tab, in the Dynamo Sets area, select the Dynamos that you want to
search for. Click Select All to select all Dynamo Sets.
7. On the Select Dynamos tab, in the Pictures area, select the pictures you want to search in.
Click Select All to select all pictures.
The Dynamo Updater Wizard allows you to select picture files whether the file is open or
587
Creating Pictures
closed. During the update process, the wizard opens picture files and saves them on close. If a
picture is are already open, the wizard does not save the picture file, and the file is kept open
in the WorkSpace.
If you are using Proficy Change Management with iFIX, be aware that pictures needs to be
checked out (even if closed), otherwise the Dynamo Updater Wizard will not update these
files. When this happens, the picture files in the Select Dynamos tab appear in red and you are
unable to select them.
8. Click Next and, on the View Settings tab, review your settings.
9. Click Launch Updater. After a few moments the Dynamo Updater dialog box appears with a
report of the Dynamos to update.
NOTES:
• If no Dynamo Instances from your selection require updating, the Launch Updater
button is unavailable.
• You can click a Dynamo Instance in the Quick Dynamo Report list to view its name,
description, revision number, and associated Master Dynamo information.
10. Click Run Update. A Dynamo Caution message box appears if you did not select the prompt
to hide it.
11. Click OK to continue. The progress of the update displays in the Status area. If any data
sources are mismatched between the Master Dynamo and the Dynamo Instances, and you
selected the Prompt for Choice option in step 2, the Dynamo Updater - Update Behavior
dialog box appears.
12. If the Dynamo Updater - Update Behavior dialog box appears, select an option and click
Apply:
• Update the Dynamo, and use Master Dynamo data sources – If you want to
update mismatched Dynamo Instances, but do not want to apply any of the data
sources from the Dynamo Instance. This option uses all data sources from the Master
Dynamo, and no data sources from the Dynamo Instance.
• Update the Dynamo and try to match up the Data Sources – If you want to
update mismatched Dynamo Instances using data sources from the Dynamo Instance
and a best guess matching algorithm.
For example, if a Master Dynamo object contains only one data source (user prompt)
based on an animation, but a previous version (an instance of that Dynamo) includes
three data sources based on animations, a best guess match is made. For the best
guess, iFIX decides which one of the three data sources to use in the instance, and a
report is generated based on your settings.
If the object type differs between the Master Dynamo and the Instance, there is no
attempt to update the data sources in the animation for that object.
• Do not update Dynamo – If you only want to view a report of mismatched
Dynamos and make no actual updates.
13. Repeat step 11 each time the Dynamo Updater - Update Behavior dialog box appears. This
allows you to approve each Dynamo object update individually. Otherwise, select an option
and click Apply to All to use the same option for all Dynamo object updates, and review the
report later.
After a few moments, the Dynamo Updater dialog box displays with an on screen report of
588
Creating Pictures
the update.
14. Review the report, and click Close to exit.
1. In Classic view, from the WorkSpace toolbar, click the Cross Reference Tool button.
-Or-
In Ribbon view, on the Applications tab, in the Utilities group, click Utilities, and then click
Cross Reference Tool.
2. Generate a report with the Quick Report or Report Wizard.
To generate a report with the Quick Report:
a. From the File menu, select Quick Report.
b. From the Object Tree, select a picture or a Dynamo Set. This allows you to search a
single picture for Dynamos, or all pictures containing Dynamos within a specified
set.
c. Select the Dynamos Option. Click Search.
- Or -
To generate a report with the Report Wizard:
a. From the Tool menu, select Report Wizard.
b. Select the Dynamos in Pictures or Pictures Containing Dynamos option.
c. On the Pictures tab, select the Pictures that you want to search.
d. On the Dynamo Sets tab, select the Dynamo Sets that you want search for.
e. Click OK.
If you did not earlier select the prompt to refrain from a reminder message, a message box
appears indicating that you cannot access the iFIX WorkSpace when the Cross Reference
Tool is running.
3. Click OK to continue. Wait a few moments for a report to generate in the Cross Reference
Tool.
NOTE: You cannot access the Proficy iFIX WorkSpace while the Cross Reference Tool
generates a report. After the report completes, you are able to access the Proficy iFIX
WorkSpace again.
4. On the Tool menu, select Dynamo Updater. The iFIX WorkSpace appears in the foreground
and the Dynamo Updater dialog box appears.
5. In the Quick Dynamo Report area, review the Dynamos to be updated and click Run Update.
A Dynamo Caution message box appears if you did not select the prompt to hide it.
TIP: You can click a Dynamo Instance in the Quick Dynamo Report list to view its name,
description, revision number, and associated Master Dynamo information.
6. Click OK to continue. The progress of the update displays in the Status area. If any data
sources are mismatched between the Master Dynamo and the Dynamo Instances, the Dynamo
589
Creating Pictures
7. If the Dynamo Updater - Update Behavior dialog box appears, select an option and click
Apply:
• Update the Dynamo, and use Master Dynamo data sources – If you want to
update mismatched Dynamo Instances, but do not want to apply any of the data
sources from the Dynamo Instance. This option uses all data sources from the Master
Dynamo, and no data sources from the Dynamo Instance.
• Update the Dynamo and try to match up the Data Sources – If you want to
update mismatched Dynamo Instances using data sources from the Dynamo Instance
and a best guess matching algorithm.
For example, if a Master Dynamo object contains only one data source (user prompt)
based on an animation, but a previous version (an instance of that Dynamo) includes
three data sources based on animations, a best guess match is made. For the best
guess, iFIX decides which one of the three data sources to use in the instance, and a
report is generated based on your settings.
If the object type differs between the Master Dynamo and the Instance, there is no
attempt to update the data sources in the animation for that object.
• Do not update Dynamo – If you only want to view a report of mismatched
Dynamos and make no actual updates.
8. Repeat step 7 each time the Dynamo Updater - Update Behavior dialog box appears. This
allows you to approve each Dynamo object update individually. Otherwise, select an option
and click Apply to All to use the same option for all Dynamo object updates, and review the
report later.
After a few moments, the Dynamo Updater dialog box displays with an on screen report of
the update.
9. Review the report, and click Close to exit.
590
Creating Pictures
1. In the iFIX WorkSpace system tree, open the Dynamo Sets folder.
591
Creating Pictures
2. Double-click the set you want to open. A window opens with the Dynamo Set (.fds file)
displayed.
TIP: To create a new Dynamo Set to open, in the iFIX WorkSpace, on the Standard toolbar,
click the New Dynamo Set button. Add Dynamo objects to the blank document to build the set.
Each new Dynamo object that you add to the set becomes a Master Dynamo. Save the
Dynamo Set.
1. In Classic view, in the iFIX WorkSpace, on the Standard toolbar, click the New Dynamo Set
button.
-Or-
In Ribbon view, click the WorkSpace button, select New, and click Dynamo Set.
2. Add Dynamo objects to the blank document to build the set.
1. In the iFIX WorkSpace, open an existing Dynamo Set or create a new one.
2. Drag-and-drop or copy and paste the Dynamo object you created with the Build Dynamo
Wizard into the Dynamo Set.
If more than one object is selected, the Add Object to Dynamo Sets dialog box appears.
3. If the Add Object to Dynamo Sets dialog box appears, select the Create a New Master
Dynamo option and click OK. The Dynamo is added to the set as a Master Dynamo.
Each new Dynamo object that you add to the set becomes a Master Dynamo.
4. Save the Dynamo Set.
592
Creating Pictures
For example, you can use one key macro to acknowledge an alarm in a display, and then other key
macros to switch views between different pictures of your plant. The key macro feature lets you add
custom functionality to objects within a single operator display, to the display itself, or to all operator
displays.
This chapter describes how to create and manipulate key macros in the Proficy iFIX WorkSpace, using
the Key Macro Editor.
For example, you might design a series of key macros that open up different pictures of pumps on your
plant floor. All that an operator needs to do to monitor pumps at run time is press a key on his
industrial keyboard to switch between iFIX pictures, rather than use a mouse to open up each picture
manually. Key macros not only save time, but also allow you to easily standardize actions based on
specific keystrokes.
Use of key macros, however, is not restricted to users of industrial keyboards. Any user who wants to
automate routine tasks, group multiple sequential tasks into one function, manage alarming and
operator messaging, run applications, control database blocks, or manipulate files by the use of a key
combination can use key macros. The following figure shows examples of how you might use key
macros.
593
Creating Pictures
• Understand how to create pictures and use experts in the Proficy iFIX WorkSpace
• Be familiar with your process database
• Understand how to work with objects in the run-time environment
594
Creating Pictures
You can also start the Key Macro Editor by selecting Add or Edit from the Key Macros option in the
right-click menu. You access the right-click menu after selecting an object, picture, or user global
page. You can select an object or picture from the system tree or drawing area. You can select the user
global page from the system tree.
Initially, the Key Macros Apply To field displays the object, picture, or user global page that was
selected when you opened the Key Macro Editor.
595
Creating Pictures
NOTE: You can only access these columns when a row is active. Click a row to make it active.
Key Define the key assignment for the macro. The key combination can include one
Combination key or a combination of keys. For example: F1, Ctrl+A, or Ctrl+Shift+H are all
possible key macros.
Action Define the expert that you want to run for the key macro. The expert
automatically launches after you select it from the drop-down list.
An expert consists of a dialog box that requires minimum input to quickly create
a script to perform a task. For example, the OpenPicture expert requires you to
enter the picture name that you want to open in the dialog box.
If you select Custom, the Microsoft Visual Basic Editor opens so you can enter
a custom script.
Run Expert Re-run the expert defined in the Action cell. You can re-run the expert to
modify the expert's parameters.
For example, you can use the Run Expert button to change the name of the
picture that is opened with the OpenPicture expert. You do not need to know
Visual Basic to run an expert.
VB Editor Access the Microsoft Visual Basic Editor so that you can view or modify the
VBA script behind the key macro.
NOTE: It is highly recommended that you do not modify the code that an expert
created because the format of those comments and code written by the expert is
used when re-running the expert.
Description Enter text that describe the function of the key macro. Can contain up to 60
alphanumeric characters, including special characters, such as -(*)&+% and
spaces.
The Description field is optional.
596
Creating Pictures
Cut the active row or rows, and move them to the Clipboard.
Copy the active row or rows, and place them on the Clipboard.
Keep the Key Macro Editor on top of the Proficy iFIX WorkSpace. By
default, this button is selected.
• Use the drop-down list next to the Key Macros Apply To field to view the most recently used
shape, picture, or the user global page. The Key Macro Editor stores up to ten items in the
most recently used list.
NOTE: If you want to modify the number of items that appear in the most recently used list,
edit the \\HKEY_CURRENT_USER\Software\VB and VBA Program
Settings\FDKeyMacros\AddressMRU\MaxEntries values in the Windows Registry.
• Use the browse button to select an object, picture, or user global page.
• Use the Global Key Macros button to switch immediately to the user global page, if you want
to define a system wide key macro.
The Key Macros Apply To field and its related buttons are described in the following figure.
597
Creating Pictures
• Keep on Top – Keeps the Key Macro Editor on top of the Proficy iFIX WorkSpace. By
default, Keep on Top is enabled.
• Always Save User.fxg on Navigate – Every time you make changes to the user global page
and then navigate to a picture or object, you save the changes without being prompted. The
User.fxg file contains your system wide key macros. If you do not save the User.fxg file on
navigation, global key macros will not be saved to disk until you shut down the WorkSpace.
You are prompted to save the User.fxg during the shutdown.
• Always Save Key Macros on Navigate – Every time you browse to another shape, picture,
or the user global page, you save the key macros that are configured without being prompted.
This preference does not save the picture, however. The Always Save Key Macros on
Navigate option is a good development tool, if you want to safely design key macros and do
not want to modify your pictures until you close the picture or the WorkSpace.
You can have any combination of these preferences enabled at the same time. For instance, you can
select Always Save User.fxg on Navigate and Always Save Key Macros on Navigate if you want to
enable both in the Key Macro Editor. With both selected, you will not see a prompt asking you to save
either the User.fxg file or the key macros since both will be saved automatically.
NOTE: These preferences do not automatically save the picture file. You can save the picture file
(.GRF file) yourself at any time, or when prompted when you close the picture or the WorkSpace.
598
Creating Pictures
• Selecting an Expert
• Writing Custom Key Macros
When you are defining your key macros, keep in mind that object level key macros can override
picture and global level key macros. Also, picture level key macros can override global key macros.
For example, you can define a global level key macro that executes no matter what picture is open (or
even if no picture is open), unless it is overridden by an object or picture level key macro.
For instance, say you define a picture level key macro as F2 to close a picture, and a global level key
macro as F2 to replace a picture. When you are in run-time mode and select F2, the close picture key
macro will run. The close picture key macro runs because the picture level key macro takes precedence
over the global level key macro. So be careful if you are using the same key macro at different levels.
Also, use care if you are assigning key macros to objects within a group. iFIX does not check for key
macros at the group level, unless the group is selected. For example, say you are in run time and you
select Object A which is inside Group A, and the group contains a key macro of F5, as shown in the
following figure. However, the picture also contains a key macro of F5. In this case, if you press F5,
the picture's F5 key macro would run, and not Group A's. If instead you select Group A and then press
F5, the group's key macro would run and not the picture's. As you can see, if you assign the same key
macro to different objects within the same group and to the group itself, the operator could become
confused.
599
Creating Pictures
As another example, say Group A is part of Group C, as shown in the previous figure. Both Group C
and the picture have a key macro of F7 assigned to them. If you are in run time and select Group A and
then press F7, the picture's F7 key macro would run and not Group C's. The system does take into
account the group hierarchy.
As another example, say Object B is within Group B, and the group contains a key macro of F8 but the
object, picture, or user global does not contain a key macro of F8. In this case, if you are in run time
and select Object B and then press F8, nothing happens. You would need to select the group before
pressing F8 for the key macro to execute. You cannot run a group's key macros by selecting an object
within a group. If you are creating Dynamo objects, be sure to keep that in mind.
600
Creating Pictures
If you add a key macro to a shape or Dynamo object within a picture or to a picture itself, the key
macro is saved with the picture file.
If you add a key macro to a user global page, the key macro is available to all displays. Key macros
that apply "globally" live in the user global file, User.fxg.
NOTE: If you add key macros during run mode, when you switch back to configure mode those key
macros are gone.
• Backspace
• Alt
• Caps Lock
• Spacebar
NOTE: Key codes that cannot be applied in the Key Macro Editor can be added using the interface
methods.
The Shift or Control keys cannot be used alone. Alphanumeric keys are only valid with Ctrl or
Ctrl+Shift.
When you click the Key Combination cell of an active row, you open the Keyboard dialog box, as
shown in the following figure.
The Keyboard dialog box lets you define a keystroke assignment quickly and easily. Use your mouse
to select the keys on the Keyboard dialog box, or enter the key combination in the text box. If you
make a mistake, click Clear to start over.
You are not limited to the keys that appear in the Keyboard dialog box. For example, if the keyboard
on your computer has an F18 key, when you hit this key the system recognizes and displays it in the
601
Creating Pictures
text box, even though the key is not included in the Keypad in the Keyboard dialog box. There are
some keys that are not valid though. If you select an invalid key, when you close the Keyboard dialog
box, you will get an error message. See the following table for guidelines you can use when defining
key macros.
Key Guideline
Delete Use alone or in combination with the Ctrl and/or Shift key.
Function keys Use alone or in combination with the Ctrl and/or Shift key.
Insert Use alone or in combination with the Ctrl and/or Shift key.
Arrow keys Use alone or in combination with the Ctrl and/or Shift key.
Number pad Use alone or in combination with the Ctrl and/or Shift key.
keys
Symbols Use alone or in combination with the Ctrl and/or Shift key.
Selecting an Action
Select an action for a specified key macro by doing one of the following:
602
Creating Pictures
• Click the Run Wizard button to use the Multiple Command Script Wizard.
• Click the VB Editor button to open the Visual Basic Editor.
The Multiple Command Script Wizard enables you to use Experts to automatically create a scripted
action, or series of actions, for the key macro. Alternatively, you can use the Visual Basic Editor to
create a custom scripted action.
The following Experts are available for use with key macros through the Multiple Command Script
Wizard:
• Custom
• AcknowledgeAlarm
• AcknowledgeAllAlarms
• AlarmHorn
• CloseDigitalPoint
• ClosePicture
• DataEntry
• DisableAlarm
• EnableAlarm
• LocateObject
• GenerateReport
• OpenDigitalPoint
• OpenPicture
• RampAValue
• ReplacePicture
• SetTagAuto
• SetTagManual
• ToggleDigitalPoint
• ToggleScan
• ToggleTagAutoManual
• TurnTagOffScan
• TurnTagOnScan
• WriteToADatabasePoint
603
Creating Pictures
NOTE: If you modify the expert generated code, you should delete the Expert generated comments in
the VBA script.
For information on the VBA scripts and Experts, refer to the following sections:
• Writing Scripts
• iFIX Automation Reference
• Experts Summary
•
Managing Macros
The Key Macro Editor provides the tools necessary to manage and refine key macros. You can use
these tools to:
In addition, you can also manage key macros in the WorkSpace by:
• Copying and pasting key macros from one object to another object.
• Copying and pasting key macros from one picture to another picture.
• Copying and pasting an object containing key macros.
604
Creating Pictures
To create an empty key macro in the Key Macro Editor, you select Custom in the Action drop-down.
This functionality is different from the VBA Key Up/Key Down events that only have access to key
combinations not used by the WorkSpace.
NOTE: When you create a key macro for Ctrl+F4, a user logged in as guest may not be able to use
Ctrl+F4 as expected. To overcome this restriction, assign the Enable Task Switching application
feature to that user's account.
• Right-click on an object or picture from the system tree or drawing area, or right-click the
user global page from the system tree to display a menu with the Key Macros option.
NOTE: The Key Macros option is not available in the right-click menu for variable, timer, or
event objects.
• Determine if an object, picture, or user global contains a key macro by looking at the System
Tree.
• Search and replace for a key macro within a picture.
• Search and replace for a key macro within a user global.
• Copy all key macros for an object.
605
Creating Pictures
• The User Interface to the Key Macro Editor is re-designed both visually and functionally.
• Key macros are now object-based, as well as picture-based and global-based.
• The Key Macro Apply To field allows you to select a user global by clicking the Global Key
Macros button. If you add a key macro to a user global page (User.fxg file), the key macro is
available to all displays.
• You can now use the F10 key for key macros.
NOTE: Unless you enable task switching, the key macro Shift+F10 will not work.
Enter the object, picture, or user global page to which you want to apply key macros. You can type the
name directly into the Key Macros Apply To field or you can:
• Click the drop-down arrow next to the Key Macros Apply To field to select from the most
recently used list.
• Click the browse button to open the browse box to select another object, picture, or the user
global page.
• Click the Global Key Macros button to apply key macros to the user global page.
Spreadsheet
• Key Combination – Defines the key assignment for the macro. Can include one or multiple
606
Creating Pictures
keys.
• Action – Defines the expert that you want to run for the key macro. The expert automatically
launches after you select it. If you select Custom, the Microsoft Visual Basic Editor opens so
you can enter a custom script.
• Run Expert – Button that re-runs the expert defined in the Action cell so you can modify the
expert’s parameters.
• VB Editor: Button that provides access to the Microsoft Visual Basic Editor so that you can
view or modify the VBA script behind the key macro.
NOTE: It is highly recommended that you do not modify the code created by an expert
because the expert’s code is used when re-running the expert.
• Description – Text that describes the function of the key macro. Can contain up to 60
alphanumeric characters, including special characters, such as -(*)&+% and spaces. The
Description field is optional.
A key combination can consist of most keyboard keys except: Backspace, Alt, Caps Lock, or the
Spacebar. The Shift or Control keys cannot be used alone. Alphanumeric keys are only valid with Ctrl
or Ctrl+Shift.
How Do I...
The following sections provide steps on how to use iFIX Key Macro Editor:
607
Creating Pictures
1. In Classic view, in the iFIX WorkSpace, click the Key Macro Editor button.
-Or-
In Ribbon view, on the Applications tab in the Utilities group, click Key Macro Editor.
2. Click in the first empty row of the spreadsheet.
3. Click the Key Combination cell to define the keystrokes for the key macro.
4. Select an action from the drop-down list.
5. Optionally, in the Description field, enter a description of the key macro.
6. Click OK.
1. In the iFIX Key Macro Editor main window, click anywhere in the row of the key macro that
you want to copy.
NOTE: If you want to copy multiple rows, hold the Shift key while you click the rows that you
want to copy. To select multiple rows that are not located next to each other, hold the Ctrl key
while you click each row.
1. From the iFIX Key Macro Editor main window, click the Global Key Macros button.
2. Define your keystroke assignment, assign an action, and enter a description.
3. Click OK.
NOTE: Global key macros are saved in the user global file, User.fxg.
608
Creating Pictures
1. From the iFIX Key Macro Editor main window, click the Key Combination cell in an active
row. The Keyboard dialog box appears.
2. Use the mouse to select keys on the Keyboard dialog box, or enter the key combination in the
text box. You are not limited to the keys that appear just in the Keyboard dialog box.
For example, if the keyboard on your computer has an F18 key, when you hit this key the
system recognizes and displays it in the text box, even though the key is not included in the
Keypad in the Keyboard dialog box.
NOTE: A key combination can consist of most keyboard keys except: Backspace, Alt, Caps
Lock, or the Spacebar. The Shift or Control keys cannot be used alone. Alphanumeric keys
are only valid with Ctrl or Ctrl+Shift.
3. Click OK.
1. In the iFIX Key Macro Editor main window, click anywhere in the row of the key macro that
you want to delete.
2. On the Key Macro menu, click Delete Row.
NOTE: If you want to delete multiple key macros, hold the Shift key while you click the rows
that you want to delete. To select multiple rows that are not located next to each, hold the Ctrl
key while you click each row. A confirmation message box appears if more than one row is
highlighted when deleting.
To delete all key macros for a given object, picture, or user global page:
1. In the iFIX Key Macro Editor main window, on the Key Macro menu, click Delete All Rows.
A confirmation message box appears.
2. Click Yes to continue.
1. In the iFIX WorkSpace, from the system tree or drawing area, click the object, picture, or user
global page from which you want to export key macros.
2. In Classic view, on the iFIX WorkSpace toolbar, click the Key Macro Editor button.
-Or-
609
Creating Pictures
In Ribbon View, on the Applications tab in the Utilities group, click Key Macro Editor.
3. On the Key Macros menu, click Export.
NOTE: You cannot import .CSV files. The exported .CSV file is intended to be used for cross-
referencing key macros in Excel.
By default the Recursive (Include Children) check box is selected. This allows you to include
key macros for all pictures and objects if you select the user global page, or all objects within
a picture and the selected picture if you select a picture.
4. In the File Name field, enter a path and name for the .CSV file. If you do not include a path,
the .CSV file is saved to your Proficy iFIX directory.
If you enter or browse to an existing file name and click the Append to File check box, the
key macros are added to the end of the existing .CSV file.
5. Click Export.
Selecting an Action
NOTE: You must have a key combination defined before you can select an action.
1. In the iFIX Key Macro Editor main window, click the Run Wizard button. The Multiple
Command Script Wizard appears.
2. Choose a command from the Select Action to Append list. The Expert associated with the
command you chose appears.
3. Complete the Expert with your desired settings and information.
4. Optionally, repeat steps 2 and 3 if you want to add additional commands to your scripted
command sequence.
5. When you have finished choosing your command sequence, click OK.
1. In the iFIX Key Macro Editor main window, click the VB Editor button. The Visual Basic
Editor appears.
2. Create your custom script in the VB Editor, then click OK.
For more information on the Multiple Command Script Wizard, see The Multiple Command Script
Wizard. For more information on creating custom scripts, see the iFIX Automation Interfaces Help.
610
Creating Pictures
1. In the iFIX WorkSpace, from the system tree or drawing area, right-click the object that
contains the key macros that you want to copy. A pop-up menu appears.
2. On the Key Macros menu, click Copy to copy all key macros for the object.
3. Right-click the object to which you want to copy the key macros. A pop-up menu appears.
4. On the Key Macros menu, click Paste.
1. In the iFIX WorkSpace, in the system tree, right-click the picture that contains the key macros
that you want to copy. A pop-up menu appears.
2. On the Key Macros menu, click Copy.
3. Right-click the picture to which you want to copy the key macros. A pop-up menu appears.
4. On the Key Macros menu, click Paste.
NOTE: When you copy and paste key macros between pictures, you copy and paste those at
the picture level and not at the object level.
1. In the iFIX WorkSpace, from the system tree or drawing area, select the object.
2. Hold the Control key down and drag and drop the object to the desired location. The pasted
the object brings the key macros with it.
NOTE: You can copy and paste objects when the source and destination do not appear on the
screen simultaneously, by using the right-click menu.
611
Creating Pictures
To browse to another object, picture, or user global page in the Key Macro Editor:
1. In the iFIX Key Macro Editor main window, click the browse button next to the Key Macros
Applies To field.
2. Select the object, picture, or user global page to which you want to apply key macros.
• Click the plus sign next to a picture to view the objects contained in the picture.
• Click the minus sign next to a picture to collapse the expanded view.
3. Click OK.
To select a key macro from the most recently used list in the Key Macro Editor:
1. In the iFIX Key Macro Editor main window, click the drop-down arrow next to the Key
Macros Apply To field. A list box opens with the most recently used items.
2. Select a shape, picture, or the user global page from the most recently used list.
NOTE: Up to ten items are stored in the most recently used list.
1. In the iFIX Key Macro Editor main window, click the Global Key Macros button. The word
User appears in the Key Macros Apply To field.
2. Enter your key macros for the user global page.
1. In the iFIX Key Macro Editor main window, on the Preferences menu, click Always Save
Key Macros on Navigate.
2. Be sure that a check mark appears next to the Always Save Key Macros on Navigate option in
the Preferences menu.
1. In the iFIX Key Macro Editor main window, on the Preferences menu, click Always Save
User.fxg on Navigate.
2. Be sure that a check mark appears next to the Always Save User.fxg on Navigate option in the
Preferences menu.
612
Creating Pictures
1. In the iFIX WorkSpace, from the system tree or drawing area, right-click the object that
contains the key macros that you want to copy. A pop-up menu appears.
2. On the Key Macros menu, click Copy.
3. Right-click the object, picture, or user global to which you want to paste the key macros. A
pop-up menu appears.
4. On the Key Macros menu, click Paste.
To determine where key macros exist from the WorkSpace system tree:
1. In the WorkSpace system tree, look for a key in the upper left corner of the object, picture, or
613
Creating Pictures
1. In the iFIX Key Macro Editor main window, click the Key Combination cell in an active row.
The Keyboard dialog box appears.
2. Use the mouse to select the key or key combination that you want to deactivate.
3. Click OK.
4. Click Custom from the Action drop-down list. The Microsoft Visual Basic Editor launches.
5. If a script was previously defined for the key or key combination, comment out the contents
of the script and save the script.
NOTE: Do not comment out the procedure’s declaration if you want the key to be handled. If
you do, the key macro will be removed.
By commenting out the contents of the script, you are disabling the action for the key or key
combination, not the key macro itself. This functionality is different from the VBA Key
Up/Key Down events that only have access to key combinations not used by the WorkSpace.
6. If no script was previously defined for the key or key combination, do not enter a new script.
7. On the File menu, click Close and Return to WorkSpace Application. This closes the Visual
Basic Editor and returns you to the Key Macro Editor main window.
8. Optionally, when you return to the Key Macro Editor main window, you can enter a
description for the key macro.
1. In the iFIX WorkSpace, from the system tree or drawing area, click the object, picture, or user
global page from which you want to export key macros.
2. Click the Export Key Macros button on your toolbar.
NOTE: The Export Key Macros button is a custom toolbar option. If it does not display in
your toolbar, you will need to add it.
The Export Key Macros dialog box appears. By default the Recursive (Include Children)
check box is selected. This allows you to include key macros for all pictures and objects if
you select the user global page, or all objects within a picture and the selected picture if you
select a picture.
3. In the File Name field, enter a path and name for the .CSV file. If you do not include a path,
the .CSV file is saved to your Proficy iFIX directory.
If you enter or browse to an existing file name and click the Append to File check box, the
614
Creating Pictures
key macros are added to the end of the existing .CSV file.
4. Click Export.
1. From the iFIX WorkSpace system tree, click the picture in which you want to search for key
macros.
2. On the Edit menu, click Find and Replace. The Find and Replace dialog box appears.
3. In the Find What field, enter the key or key combination that you want to search for.
4. Select the Include Scripts check box.
You need to select Include Scripts so that Procedure Declaration and Display String properties
for key macros appear in the match list. Both properties are used in key combinations.
1. From the iFIX WorkSpace system tree, within the Globals folder, click the User item.
2. On the Edit menu, click Find and Replace. The Find and Replace dialog box appears.
3. In the Find What field, enter the key or key combination that you want to locate.
4. Select the Include Scripts check box.
You need to select Include Scripts so that Procedure Declaration and Display String properties
for key macros appear in the match list. Both properties are used in key combinations.
615
Index
. adding bitmaps................................................306
adding aligning
617
Creating Pictures
objects to the grid ....................................... 129 assigning pictures to a security area ................ 40
analog values .................................................. 356 assigning tag group files to a picture event.....506
Animation Experts Summary ......................... 369 Basic Animation dialog box ...........................457
animations bitmap
618
Creating Pictures
Chart Configuration dialog box ........................ 97 Select Color dialog box ............................... 61
619
Creating Pictures
620
Creating Pictures
using the Build Dynamo Wizard ................ 528 Data Entry Expert ...........................................406
creating tag group files ................................... 511 configuring output error mode ..................... 99
621
Creating Pictures
user preferences for the Key Macro Editor. 599 disabling .......................................................... 44
622
Creating Pictures
623
Creating Pictures
for key macros ............................................ 603 using the Expression Builder dialog box ....446
Export Key Macros button on toolbar ............ 614 filter conditions ...............................................344
without launching the Key Macro Editor ... 615 filters ...............................................................344
624
Creating Pictures
625
Creating Pictures
I examples .....................................................594
importing tag group files ................................ 519 tips and tricks ..............................................606
inserting rows ................................................. 516 Keyboard Dialog Box Main Window .............607
K disabling .....................................................615
626
Creating Pictures
layering modifying
adding to pictures......................................... 92
627
Creating Pictures
aligning to each other ................................. 129 performing basic functions with .................109
628
Creating Pictures
opening tag group files ................................... 519 disabling for individual pictures .................. 88
overview pictures
P cascading ..................................................... 33
how to use symbols with ............................ 504 configuring language settings .....................493
629
Creating Pictures
optimizing load performance ...................... 506 with the Create Picture wizard ..................... 68
630
Creating Pictures
properties R
631
Creating Pictures
632
Creating Pictures
selecting show................................................................342
Set Tag to Auto Expert ................................... 402 starting the Key Macro Editor ........................596
633
Creating Pictures
substitution table
retrieving the fully qualified name ............. 501 creating and opening tag group files ...........499
using symbols for the current value of a entering data into the spreadsheet ...............501
variable object ........................................ 505
exiting .........................................................513
substitutions, partial
interface ......................................................498
See partial substitutions .............................. 504
OPC Server address substitution ................507
substitutions, partial........................................ 504
resolving tags ..............................................506
symbol format
retrieving symbols from a picture ...............501
in pictures ................................................... 503
retrieving the fully qualified name for a
in spreadsheet ............................................. 503 substitution .............................................501
using for the current value of a variable creating and opening ...................................499
object ...................................................... 505
defined ........................................................497
where to use in pictures .............................. 503
634
Creating Pictures
introduction ................................................ 497 tips and tricks for key macros .........................606
635
Creating Pictures
user preferences for the Key Macro Editor..... 599 window properties ........................................... 39
636
Creating Pictures
Generate...................................................... 357 Z
637
Proficy* HMI/SCADA - iFIX
CREATING RECIPES
Version 5.1
May 2010
All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical
means, including photocopying and recording, without permission in writing from GE Intelligent Platforms, Inc.
The information contained in this manual is believed to be accurate and reliable. However, GE Intelligent Platforms,
Inc. assumes no responsibilities for any errors, omissions or inaccuracies whatsoever. Without limiting the foregoing,
GE Intelligent Platforms, Inc. disclaims any and all warranties, expressed or implied, including the warranty of
merchantability and fitness for a particular purpose, with respect to the information contained in this manual and the
equipment or software described herein. The entire risk as to the quality and performance of such information,
equipment and software, is upon the buyer or user. GE Intelligent Platforms, Inc. shall not be liable for any damages,
including special or consequential damages, arising out of the user of such information, equipment and software, even
if GE Intelligent Platforms, Inc. has been advised in advance of the possibility of such damages. The user of the
information contained in the manual and the software described herein is subject to the GE Intelligent Platforms, Inc.
standard license agreement, which must be executed by the buyer or user before the use of such information, equipment
or software.
Notice
©2010 GE Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Intelligent Platforms, Inc.
Microsoft® is a registered trademark of Microsoft Corporation, in the United States and/or other countries.
All other brands or names are property of their respective holders.
We want to hear from you. If you have comments, questions, or suggestions about our documentation, send them to the
following email address:
doc@ge.com
Table of Contents
About this Guide ...............................................................................................................................1
Using Formulas.........................................................................................................................2
Recipe Variables.......................................................................................................................4
i
Creating Recipes
Keywords ................................................................................................................................ 10
Using Formulas........................................................................................................................... 12
Saving a Recipe.......................................................................................................................... 27
ii
Creating Recipes
Deleting Recipes......................................................................................................................... 32
iii
Creating Recipes
Verifying a Recipe................................................................................................................... 51
iv
Creating Recipes
Recipe Security............................................................................................................................... 80
Syntax ..................................................................................................................................... 83
Recognized by ........................................................................................................................ 83
Description .............................................................................................................................. 83
Syntax ..................................................................................................................................... 83
Recognized by ........................................................................................................................ 83
Description .............................................................................................................................. 83
Syntax ..................................................................................................................................... 84
Recognized by ........................................................................................................................ 84
Description .............................................................................................................................. 84
v
Creating Recipes
Syntax ..................................................................................................................................... 84
Recognized by ........................................................................................................................ 84
Description .............................................................................................................................. 84
Syntax ..................................................................................................................................... 85
Recognized by ........................................................................................................................ 85
Description .............................................................................................................................. 85
Syntax ..................................................................................................................................... 85
Recognized by ........................................................................................................................ 85
Description .............................................................................................................................. 86
Syntax ..................................................................................................................................... 86
Recognized by ........................................................................................................................ 86
Description .............................................................................................................................. 86
Syntax ..................................................................................................................................... 86
Recognized by ........................................................................................................................ 87
Description .............................................................................................................................. 87
Syntax ..................................................................................................................................... 87
Recognized by ........................................................................................................................ 87
Description .............................................................................................................................. 87
Syntax ..................................................................................................................................... 87
Recognized by ........................................................................................................................ 88
vi
Creating Recipes
Description .............................................................................................................................. 88
Syntax ..................................................................................................................................... 88
Recognized by ........................................................................................................................ 88
Description .............................................................................................................................. 88
File Format.............................................................................................................................. 89
Troubleshooting .............................................................................................................................. 94
vii
Creating Recipes
viii
Creating Recipes
ix
Creating Recipes
x
Creating Recipes
xi
Creating Recipes
xii
About this Guide
Creating Recipes is intended for process control engineers responsible for designing and creating
recipes. The manual assumes that you understand the industrial process, including device controllers
and I/O equipment. You should also be familiar with the process database, how it works in an iFIX®
system, and terms such as blocks and chains.
Reference Documents
For related information about iFIX, refer to the following manuals:
Recipe Builder
Recipe system tasks:
Recipe Upload program
Recipe Download program
1
Creating Recipes
Using Formulas
These features provide you with flexibility when creating recipes. For example, adding formulas to
recipes allows you to represent a block value as a mathematical expression or in relation to another
block value. This feature enables you to create recipes in terms natural for your industry, thereby
making the recipes understandable by any process engineer and enabling you to develop recipes faster.
Recalculating Formulas
When you enter or change a formula, the Recipe Builder automatically recalculates its value. This
feature enables you to experiment with possible recipe values by making "on-the-fly" changes.
Overriding Formulas
To help you respond to changing process conditions, you can override a formula by entering a process
value. This value is used in place of the formula until the override value is cleared.
2
Creating Recipes
Understanding Recipes
Before you begin using the Recipe Package, review the sections for more information on some central
concepts:
As the previous figure suggests, any recipe you create or modify with the Recipe Builder can be saved
as either a master or a control recipe. Saving recipe information as a master recipe enables you to
modify it later without restriction. Saving recipe information as a control recipe restricts the operator to
modifying process values within specific limits.
Unless otherwise stated, the term recipe applies to both master and control recipes.
Recipe Items
Each recipe consists of one or more recipe items. A recipe item is a process value that is identified by a
tagname. A tagname consists of a SCADA node name, database block name (also called a tag), and the
3
Creating Recipes
Each recipe item contains nine fields. These fields define the item and include information such as the
recipe item identifier, description, value, and the unit of measure (UOM).
Recipe Variables
In addition to recipe items, you can include variables in a recipe. A variable is an internal string or
numeric value that is never downloaded to the database. For example, you can represent the
temperature of your process using a numeric constant, say 50. You can assign this constant to a
tagname or, if you prefer, you can assign this value to a variable and then assign the variable to the
tagname as the following table shows:
Identifier Formula
#Temp 50
SCADA1:T16F1.F_CV #Temp
While using variables to represent process values is helpful, variables are more powerful when
incorporated into a formula. A formula is like a programming assignment statement. It enables you to
specify how to represent a value for a recipe item or variable. The chapter Working with Formulas
provides more information on using formulas and variables.
4
Creating Recipes
The following table lists the chapters you can refer to for more information on each steps.
Creating Recipes
Gather the necessary information and plan out your recipes. Developing an Application
Strategy
5
Creating Recipes
Creating Recipes
Save the data as a master or control recipe. Using the Save As Command
Create or modify the operator displays for recipe downloading Downloading and Uploading
and uploading. Recipes
Developing a Recipe
When you are ready to start developing recipes, obtain the following information about your process:
• The process unit and database block names used by the recipe.
• The value you want to download to each database block.
• The block names for any upload or download interlock.
• The recipe items you plan to verify.
• The process values you want operators to be able to change.
Once collected, you can create a recipe by entering the necessary information into the Recipe Builder.
To help you develop your recipes, this chapter explains how to create a sample recipe for making beer.
By developing this sample recipe yourself, and using the same steps for your own recipes, you can
learn how to develop recipes for your needs.
6
Creating Recipes
As you can see, beer production begins by cooking malt and cereal in water separately and then these
mixtures are combined into one and cooked again. The resulting liquid is strained and hops are added
to create a wort. The wort is cooled and then yeast is added. By allowing the liquid to ferment, beer is
produced.
Typically when making beer, recipes are used while doing the following tasks:
Assume now you want to create a recipe that is downloaded when the wort is ready to be fermented.
Let's look more closely at this part of the process.
7
Creating Recipes
Fermenting Beer
This example describes a beer fermentation process. When fermenting beer, as described in the
Developing an Application Strategy section, the following steps occur:
After the beer is fermented, it is aged, bottled and ready for shipment.
Open the transfer valve to move the wort from the brew XCV1F1.F_CV 0
kettle to the fermenter.
Weigh out 150 pounds of yeast and add to wort. W16S1.F_CV 150
With this information, you can now create a recipe for fermenting beer by selecting the appropriate cell
in the Recipe Builder spreadsheet and typing the information into it. Press Enter when you finish
typing. The following figure shows the sample recipe.
8
Creating Recipes
Sample Recipe
You can also enter the tagname of the download interlock into the Recipe Builder. Once defined, the
Recipe Builder automatically examines the value of this tagname during a download and if the
interlock is inactive, the program downloads the recipe. In the sample recipe, you would enter the
tagname ILK1.F_CV for the download interlock. For more information about entering the download
interlock, refer to the section Defining the Upload and Download Interlocks.
Preferred Fields
Also consider the field referenced by the recipe item. Typically, as in the sample recipe, the Current
Value field is referenced (F_CV). However, any field that operators can read from or write to can also
be uploaded from or downloaded to. For example, assume the alarm limits for the fermenter's set point
vary depending on the type of beer being produced. In this situation, the sample recipe could download
the alarm limits (F_HI and F_LO) to an Analog Input block.
When specifying a field, use the F_ field for numerical values and the A_ field for text values.
9
Creating Recipes
Using Variables
In addition to tagnames, recipes may include variables. Variables represent internal string or numeric
values that are never downloaded to the database. When you create a variable, you give it a name. All
variable names begin with a number sign (#) and can be up to 15 alphanumeric or underscore
characters. Each name you assign to a variable must be unique.
Variables are most helpful when used in a formula to replace a numeric or string constant, particularly
if the value is used throughout the recipe. Consider the following example:
In the above example, the variable #Temp is used in two recipe items. The benefit of using a variable
this way is that it allows you to make global changes quickly. If the recipe requires a different value for
#Temp, you can change it once instead of many times.
For more information about overriding a variable with a command line parameter, refer to the section
Overriding the Calculated Value.
Keywords
Certain variable names are reserved. These reserved names are called keywords. Keywords allow
access to information about the recipe. For more information about variables and keywords, refer to
the chapter Working with Formulas.
10
Creating Recipes
In this setup, the recipes Beer1 and Beer2 are used to make beer and download to the SCADA servers
FERMENT1 and FERMENT2, respectively. The Beer1 recipe defines the following items:
Identifier Formula
FERMENT1:ILK1.F_CV 0
FERMENT1:XCV1F1.F_CV 0
FERMENT1:W16S1.F_CV 150
FERMENT1:T16F1.F_CV 55
FERMENT1:K16F1.F_CV 132
Identifier Formula
FERMENT2:ILK1.F_CV 0
11
Creating Recipes
Identifier Formula
FERMENT2:XCV1F1.F_CV 0
FERMENT2:W16S1.F_CV 150
FERMENT2:T16F1.F_CV 55
FERMENT2:K16F1.F_CV 132
Notice that in this implementation, two recipes are required because each recipe has hard-coded node
name references. With the local node alias feature, you eliminate the need for two recipes. Instead, you
create one recipe for both SCADA servers, as the following example shows:
Identifier Formula
THISNODE:ILK1.F_CV 0
THISNODE:XCV1F1.F_CV 0
THISNODE:W16S1.F_CV 150
THISNODE:T16F1.F_CV 55
THISNODE:K16F1.F_CV 132
After creating this recipe, share the directory that it resides in and map the recipe paths of both
SCADA servers to the shared directory. By making these changes, you shorten the development cycle
and later, when the recipe needs changing, you keep your maintenance time to a minimum because you
only have to make the changes once. For information on changing the recipe paths, refer to the section
Understanding Recipe Paths.
To use the local node alias feature, login as an Administrator and select the Local Node Alias check
box in the System Configuration Utility (SCU). Refer to the Setting up the Environment manual for
more information. To learn about other uses for local node aliasing, refer to the Mastering iFIX
manual.
Using Formulas
Formulas enable you to combine variables with numeric or string constants, functions (such as LOG,
SIN, or SQRT), and keywords. By using variables and formulas together you can represent process
values in terms that are natural for your industry.
IMPORTANT: In formulas, you must include a space following a variable name. The space separates
the variable name from whatever follows it. The following example shows the correct syntax. In this
12
Creating Recipes
For example, in the sample recipe you could create a variable called #Yeast to represent the amount of
yeast needed during fermentation. You can represent this amount with the following formula:
#Lbs_Per_Barrel * #STD_BATCH
where #Lbs_Per_Barrel is the amount of yeast needed for every barrel of beer produced and
#STD_BATCH is a keyword for the standard batch size. From the information in the section
Fermenting Beer, you can learn:
1.5*100
While you could assign this mathematical expression to the variable #Yeast, you may want to create a
variable for the yeast per barrel value so that you can adjust it as process conditions change. The
resulting recipe is shown in the following figure:
For more information about using formulas in your recipes, refer to the chapter Working with
Formulas.
13
Creating Recipes
In this situation, you might save the sample recipe as a master recipe. By doing this, you can easily
modify the recipe by changing the necessary process values. By saving each change to a separate
control recipe, you can easily create hundreds of additional recipes. Each additional recipe you create
in no way affects the original recipe. This feature protects recipes from accidental or unauthorized
changes.
Typically, control recipe access is provided to operators through a special window called the Recipe
Operations window. Depending on how you set up this window, it can restrict operators from
modifying control recipes or it can enable operators to modify control recipes within predefined limits.
Information such as the tag group assignment or the batch size cannot be modified from the Recipe
Operations window regardless of how you set up the window. However, you can set up the window to
allow operators to override specific values prior to downloading.
Keep in mind that you do not have to choose between saving a recipe as just a master recipe or a
control recipe. You can save a recipe in both formats and provide yourself the benefits of using both
types of recipes.
If you decide to save recipes in both formats, you may want to establish specific naming conventions
to help update your control recipes more easily. The following figure shows two possible naming
conventions.
Naming Conventions
Another aspect to consider is the format you want to save the recipe in, binary or text. While binary
recipes are functionally the same as the equivalent text recipes, binary recipes are faster to upload and
download. In addition, binary recipes are more secure because they can only be opened and modified
using the Recipe Builder. Text recipes, on the other hand, can be opened and modified with any third-
party spreadsheet or text editor.
14
Creating Recipes
To help clarify explanations in this manual, the term master recipe refers to master text and master
binary recipes unless otherwise stated. Similarly, the term control recipes refers to both control text
and control binary recipes.
Other Considerations
In addition to the features already described, you may want to consider which recipe items you want to
allow operators to change. With the Recipe Builder, you can make specific columns in the spreadsheet
non-modifiable. For more information about doing this, refer to the section Modifying a Column.
The Recipe Builder also provides several advanced features that you may find helpful when creating
recipes. These features enable you to assign tag groups, keep an audit trail, scale the batch size,
override a value, and verify one or more recipe items. Using these features is optional.
Overriding a Value
As process conditions change, operators may need to adjust a recipe by overriding the calculated
values. When overriding a value, you specify a value to use in place of the calculated value. For more
information about overriding a value, refer to the section Overriding the Calculated Value.
15
Creating Recipes
16
Creating Recipes
If you attempt to start the Recipe Builder and you do not have rights for the Recipe Development
window, the Recipe Operations window appears.
To obtain the rights to display the Recipe Development window, consult your system administrator.
Once the Recipe Builder starts, you can begin creating a new recipe by entering data into each cell.
You can also create a new recipe by selecting the New command. When you select this command, the
Recipe Builder closes the open recipe, prompting you to save any unsaved changes, and then displays a
blank recipe.
In addition to starting the Recipe Builder with a blank recipe, you can automatically open a master or
control recipe by double-clicking an icon from the Master Recipe or Control Recipe subfolders,
located in the WorkSpace system tree.
To save your changes, select the Yes button. To exit the program without saving them, select the No
button. To resume using the Recipe Builder, select the Cancel button.
17
Creating Recipes
Name Description
Recipe A row of buttons that perform common recipe functions such as clearing all
Buttons override values and downloading recipes. For more information on these
buttons, refer to the section Working With Recipe Buttons.
Recipe Header A set of fields that display recipe information, such as the standard batch size
and the batch unit of measure. The section Recipe Header provides more
information about these fields.
Text Editing An area where you can enter text into the spreadsheet.
Box
Recipe Two display fields that show the recipe's batch size and the type of audit trail
Display Area currently selected. The section Scaling the Batch Size provides more
information on this area.
Spreadsheet A display area that shows the recipe items and variables. For information about
the spreadsheet columns, refer to the section Spreadsheet Columns.
The Recipe Operations and Recipe Development windows represent the two modes of the Recipe
Builder. The Recipe Operations window provides limited control recipe access and is intended for the
operator who must download control recipes or override a formula. The Recipe Development window
18
Creating Recipes
provides full access to all recipes and is intended for the process engineer who must create, modify,
and maintain master and control recipes.
The main differences between the two windows are summarized below
Available menus Only the File, Window, and Help menus are available.
Recipe header All header fields are displayed. These fields cannot be edited.
Spreadsheet Cannot change whether a column is modifiable or the order that columns
appear in the spreadsheet.
Opening and saving Only control recipes can be opened and saved. Note that the Save As
recipes command is not available, preventing operators from creating new control
recipes.
Unless otherwise stated, the descriptions in this manual apply to the Recipe Development window
only.
NOTE: The menus, fields, buttons, and commands that appear in the Recipe Operations window
function in a similar manner to the descriptions provided in this manual. The main difference is that
you can only open control recipes in the Recipe Operations window.
Recipe Buttons
Download Transfer recipe items from the open recipe to one or more <Alt>D
process databases.
19
Creating Recipes
Recipe Buttons
Upload Copy the process values from one or more databases to the <Alt>U
open recipe.
Search Search and/or replace data in the selected spreadsheet column. <Alt>S
Clear Remove all override values for the open recipe. <Alt>C
Overrides
Units field — enables you to enter a description of the process unit the recipe affects. You can
enter up to 40 alphanumeric characters into this field.
Product field — allows you to specify a description of the product being made. You can enter up
to 40 alphanumeric characters into this field.
Standard Batch Size field — allows you to enter the standard amount of the product that this
recipe produces. You can enter any value from 0.0000001 to 9,999,999.0 into this field.
Batch UOM field — enables you to enter the batch unit of measure. You can enter up to four
alphanumeric characters into this field.
Spreadsheet Columns
The Recipe Builder spreadsheet displays a predefined set of columns. When you first start the Recipe
Builder, it displays the following columns:
Item column — contains the item number of the recipe item or variable. This number can help
you reference a specific row and is not downloaded to the database.
Identifier column — enables you to enter a recipe variable name or a recipe item tagname. A
variable name is an alphanumeric string, up to 15 characters in length, beginning with the #
character. An example of a variable name is: #myNamedVar. Each variable name you enter
must be unique.
20
Creating Recipes
section Defining Tagnames and Variables. For more information about symbols, refer to the
section Assigning Tag Groups.
Only recipe items are downloaded to the database. Recipe variables are never downloaded.
You can enter text into this field using the text editing box or by double-clicking a cell in
this column. When you double-click a cell, the Field Select dialog box appears. This dialog
box allows you to select a node-tag-field combination.
Formula column — displays the formula of the recipe item or variable. You can represent a
formula by combining one or more of the following:
Function Log(234) or
Lookup (#COLOR,1,2,3,4,5)
Variable #COLOR
For more information on formulas, functions, and keywords, refer to the chapter Working
with Formulas.
Calc Val column — displays the current value of the recipe item or variable. The Recipe Builder
automatically recalculates the value of all recipe items and variables, and updates this
column when you enter or change a formula.
Whenever the text ?????? appears in the Calc Val column, the recipe item or variable is
undefined. The Recipe Builder does not download recipes with undefined recipe items or
variables.
NOTE: When you download a recipe, only a recipe item value is sent to the database.
Recipe variables are never downloaded.
Override Val column — allows you to enter an alphanumeric value in place of the recipe item's
or variable's calculated value. Any formulas that reference an overridden variable are
recalculated using the override value. When the recipe is downloaded, the override value is
sent in place of the calculated value. For more information about overriding the calculated
value, refer to the chapter Working with Formulas.
Description column — contains text describing the recipe item or variable. The following table
shows how the Recipe Builder completes this column when you initially enter an identifier:
21
Creating Recipes
Tagname Reads the Description field of the specified block and displays this text
in the Description column.
You can enter up to 40 alphanumeric characters into any cell of this column. If you complete
the Description column before specifying a tagname, the Recipe Builder does not overwrite
the text you entered. If you want to update the text for a tagname with the text from the
block's Description field, double-click a cell in the Description column.
UOM column — contains the unit of measure for a recipe item or variable. The following table
shows how the Recipe Builder completes this column when you initially enter an identifier:
You can enter up to four alphanumeric characters into any cell of this column. If you
complete the UOM column before specifying a tagname, the Recipe Builder does not
overwrite the text you entered. If you want to update the text for a tagname with the text
from the block's EGU tag, double-click a cell in the UOM column.
Override Lo Lim and Override Hi Lim columns — defines the highest and lowest possible
override value an operator can enter into the Override Value column. The Recipe Builder
verifies the override value is within the high and low limit range before it accepts the
override value.
The following two tables show the possible override limits and examples of how you can
combine the limits.
To learn how to define the high and low limits, refer to the section Entering Override
Limits.
NOTE: When the calculated value of a recipe item or a variable is a string constant, you must set both
override limits to either Unrestricted or Restricted.
Override Limits
Unrestricted Enter any value less than or equal to the high limit and greater than or equal to
the low limit. If both override limits are unrestricted any value can be entered.
The Recipe Builder sets both override limits to unrestricted for any recipe item
or variable you add.
An absolute Enter an override value less than or equal to the high limit and greater than or
value equal to the low limit. Any value outside the limit range generates an error.
22
Creating Recipes
Override Limits
A relative Enter an override value based on the calculated value plus or minus the
percentage percentage specified in the high and low limit columns. For example, if the
calculated value is 100 and the high and low limits are 10%, the operator can
enter a value from 90 to 110.
A relative Enter an override value based on the calculated value plus or minus the
difference difference specified in the high and low limit columns. Relative difference
limits end with a minus sign (-). For example, if the calculated value is 100
and the high and low limits are 20-, the operator can enter a value from 80 to
120.
Restricted Enter an override value that is less than or equal to the calculated value (when
the high limit is restricted). If the low limit is restricted, the operator can enter
an override value that is greater than or equal to the calculated value. If both
override limits are restricted no override value can be entered.
When the Calculated The Override Low Limit And the Override High
Value is... is... Limit is...
25 Unrestricted 50
50 10 Unrestricted
35 10 50
35 -5 3-
35 21- 50
50 1% 5-
50 Restricted 1%
100 5- 10%
Verify column — controls recipe verification. This feature enables the Recipe Package to verify
that specific recipe item values have been written to your process equipment. The Recipe
Package handles recipe verification by reading the target block fields and comparing their
values against the values in the recipe. When the two values match, the recipe item is
23
Creating Recipes
verified. For more information about recipe verification, refer to the section Verifying a
Recipe.
You can enable and disable recipe verification for each recipe item in the spreadsheet. To
enable it, enter ON. To disable it, enter OFF. By default, recipe verification is disabled.
1. Select a cell in the Identifier column and type a tagname, variable name, or a tag group
symbol name.
If you prefer, you can double-click a cell in the Identifier column to display the Field Select
dialog box.
2. Select the corresponding cell in the Formula column and enter a formula for the recipe item.
When you complete your entry, the text in the Calc Val column changes to reflect the
formula's value.
3. Modify the text in the Description and UOM columns as needed. Notice, that if you enter a
tagname the text from the specified block's Description and EGU Tag fields are automatically
inserted for you.
4. Modify the override limits as needed. By default, the override limits are sent to Unrestricted.
If you want to change them, refer to the section Entering Override Limits for instructions.
5. Modify the Verify column as needed. By default, recipe verification is disabled for each
recipe item you add to the recipe. To enable it, select a cell in the Verify column and type ON
in the text editing box. Keep in mind, it is recommended that you only verify Analog Register,
Digital Register, and Text blocks. For more information about recipe verification, refer to the
section Verifying a Recipe.
• Opening a Recipe
• Saving a Recipe
• Using the Save As Command
• Inserting Recipe Items or Variables
• Copying Recipe Items or Variables
• Moving Recipe Items or Variables
24
Creating Recipes
Other related, but optional tasks, include creating recipe reports and storing recipe-related information
to a file. These operations let you save recipes and related data by creating text files with specific file
extensions. Instructions for completing each task is described at the end of this chapter.
Opening a Recipe
Whenever you need to make changes to a recipe, you can use the Recipe Builder to open one of the
following types of recipes:
• Master recipes
• Control recipes
• ASCII text versions of master and control recipes
• Backup versions of master, control, and text recipes
You can open master and control recipes by selecting them from the WorkSpace system tree or by
starting the Recipe Builder and selecting the Open command from the File menu. To open text and
backup recipes, you must use the Open command in the Recipe Builder.
When you select the Open command, a dialog box appears. The exact dialog box and the type of recipe
you can open depends on whether you select the Open command from the Recipe Operations window
or the Recipe Development window.
Recipe list box — displays the control recipes you can open.
Recipe Name field — allows you to enter the name of the control recipe you want to open.
Open button — opens the control recipes you selected from the Recipe list box or that you
entered in the Recipe Name field.
1. On the File menu, click Open. The Open Control Recipe dialog box appears.
2. Select the recipe you want to open from the list box and select the Open button. The Recipe
Builder opens the recipe and displays it on the screen.
25
Creating Recipes
If you prefer, in the Recipe Name field, enter the name of the recipe and click Open, or
double-click a recipe name. Regardless of the method you choose, the Recipe Builder opens
the recipe and displays it on the screen.
Recipe Types
When the standard Open dialog box appears, select the recipe you want to open and click OK.
If you have made changes to the old recipe and have not saved them, the Recipe Builder prompts you
to save your changes. If you do not want to save your changes, click No. To continue working with the
recipe, click Cancel.
26
Creating Recipes
Click Yes to save your changes to disk. If you attempt to save a recipe when you have no privileges to
do so, a message box with following text appears:
The logged-in user does not have the RECIPE SAVE application feature
Consult your system administrator to acquire the necessary rights to save the recipe.
Saving a Recipe
When you finish making changes to a recipe, you need to save the recipe to disk. By saving the recipe,
you make your changes permanent.
The Recipe Builder only saves master and control recipes in either binary or text format. Each time
you save a recipe, the Recipe Builder automatically creates a backup of the original file called
recipe.^xx. The exact extension depends on the type of recipe you are saving. The Recipe Types table
lists the possible extensions for backup recipes.
If you are working with recipes from a previous version of FIX software, you must use the Save As
command to save your data as text recipes if you plan to use them with iFIX. For more information on
completing this task, refer to the section Using the Save As Command.
To save an existing master or control recipe, select Save from the File menu. If the audit trail is
enabled when you select this command, the Recipe Mod Log dialog box appears. This dialog box
displays the Mod Log field and the Save button.
Save button
The Save button enables you to store the recipe to disk. Master recipes are stored to the master recipe
path and control recipes are stored to the control recipe path.
1. On the File menu, click Save. The Recipe Mod Log dialog box appears.
2. In the Mod Log field, enter the text you want.
3. Click Save. The Recipe Builder saves the recipe to disk.
27
Creating Recipes
• Master recipe
• Control recipe
• Master text recipe
• Control text recipe
If you do not change the name or recipe type, the Save As command makes a backup copy of the
original and overwrites the original recipe.
However, when you change the recipe's name or type, the Save As command does not overwrite the
original recipe — it creates a new one. This feature lets you create control recipes from master recipes
and master recipes from control recipes. It also lets you create multiple versions of a master or control
recipe by repeatedly saving it with different names.
The Save As command is also useful when saving a new recipe. When saving this type of recipe, the
command allows you to create a recipe by specifying a name and a recipe type.
When you select Save As, the Recipe Mod Log dialog box appears, if the audit trail is enabled. For
more information about this dialog box, refer to the section Saving a Recipe.
After you enter the text you want in the Mod Log field, select the Save As button. The standard Save
As dialog box appears. To save the recipe, type its name in the File Name field and click OK.
For information on the file format of a recipe text file and how to edit it, refer to the chapter Text
Recipe Format.
The following figure illustrates how the Recipe Builder renumbers the spreadsheet.
28
Creating Recipes
The Recipe Builder allows you to copy a recipe item or variable by selecting Copy from the Edit
menu. When you select this command, the Recipe Builder copies the entire row of the selected item to
the clipboard.
After copying the recipe item or variable, you can insert it into the recipe as many times as you need
using the Paste command. Each time you paste a copied item, the Recipe Builder inserts it above the
currently selected row and renumbers the spreadsheet as shown in the Renumbering the Recipe
Spreadsheet figure.
29
Creating Recipes
If you prefer, you can copy data from a third-party application (such as Excel) and paste it into the
Recipe Builder. When you do this, the Recipe Builder reads the data from the standard system
clipboard and pastes the data into the recipe. The Recipe Builder pastes the data in the order of the
spreadsheet column format starting with the first column in the recipe. Before pasting data into a
specific column, the Recipe Builder evaluates its syntax for that column. If the syntax is invalid or if
the Recipe Builder has difficulty pasting the data into a column, the error dialog box described
previously in step 3 appears.
To avoid this situation, set up the columns in your third-party application to match the display format
of the recipe. Make sure that the data in the columns that correspond to the Identifier and Formula
columns conforms to the syntax for each column. Also make sure the column that corresponds to the
Verify column contains the text ON or OFF. For more information about identifier and formula syntax
refer to the section Spreadsheet Columns.
The number of columns you paste into the recipe can be greater or less than the number of columns in
use by the display format. If the number of columns you are pasting is greater than the number of
columns in use, the extra columns are not used. If the number of columns is less than the number of
columns in use, the Recipe Builder either leaves the corresponding cell blank or uses the default value
for the cell if it has one.
You can leave any cell in the third-party spreadsheet blank. When you paste a row with blank cells into
the Recipe Builder, the program either leaves the corresponding cell blank or uses the default value for
the cell if it has one.
The Recipe Builder allows you to move a recipe item or variable by selecting the Cut and Paste
commands from the Edit menu. When you select Cut, the Recipe Builder copies the entire row of the
selected item and removes it from the recipe. Once removed, you can move the recipe item or variable
by opening a recipe and selecting Paste.
To move a recipe item or variable from one row of the spreadsheet to another:
If you prefer, you can move data from a third-party application (such as Excel) and paste it into the
Recipe Builder. Moving data from a third-party application is similar to copying it. If you cut the data
to the standard system clipboard, the Recipe Builder can paste the data into the recipe. For more
information about pasting data from a third-party application, refer to the section Copying Recipe
Items or Variables.
30
Creating Recipes
To copy and move every recipe item and variable in a recipe, use the Copy All command. After
copying the entire recipe, you can insert them into the target application using the Paste command.
To copy and move an entire recipe from the Recipe Builder to another application:
1. On the Edit menu, click Copy All. The Recipe Builder copies every row in the recipe.
2. Start your target application. For instructions on how to do this, refer to that application's
user's manual.
3. Once the application starts, open the spreadsheet you want to paste the recipe into.
4. On the Edit menu from your spreadsheet program, click Paste.
If you prefer, you can copy and move data from a third-party application (such as Excel) and paste it
into the Recipe Builder. For information about moving data from a third-party application to the
Recipe Builder, refer to the section Copying Recipe Items or Variables.
You can delete a recipe item or variable from a recipe by selecting the Delete Item command. You can
also delete an item by selecting Cut from the Edit menu instead of Delete Item. The main difference
between these commands is that when you delete a recipe item or variable with Cut, you can paste
back into the recipe if you accidentally remove the wrong item or if you change your mind. When you
select Delete Item, the recipe item or variable is irretrievable.
Using <Delete>
Alternatively, you can delete any row in the spreadsheet by selecting the identifier and deleting it by
pressing <Delete>. When you do this, a message box appears displaying the following text:
Select the Yes button to delete the row or the No button to abort the procedure. If you select the Yes
button, the Recipe Builder deletes the selected item and does not renumber the rows in the spreadsheet.
31
Creating Recipes
Deleting Recipes
As your needs change, you may find you no longer need certain recipes. When you decide that a
specific recipe is not necessary, you can delete it using the Delete command. This command also
deletes all files associated with this recipe.
When you select the Delete command, the Delete Recipe dialog box appears. This dialog box has the
following controls:
Recipe Name field — enables you to enter the name of the recipe you want to delete.
Recipe list box — displays the available recipes in the current path that you can delete.
Delete button — deletes the specified master and control recipes and their associated files.
To delete a recipe:
1. On the File menu, click Delete. The Delete Recipe dialog box appears.
2. Type the name of the recipe you want to delete.
If you prefer, you can select the recipe to delete by selecting it from the list box. The file you
select appears in the Recipe Name field.
NOTE: Do not attempt to delete files from a file server while they are in use. If you do, the
Recipe Builder displays an error message box informing you that the files could not be
deleted.
When the Recipe Builder creates a report, it starts with the data from the current recipe and stores the
report in a file named recipe.RCR, where recipe is the name of the open recipe. The path that the
report is stored in depends on the type of recipe opened.
When the open recipe is a... The Recipe Builder stores the report in...
To create a report, select the Report command. This command enables you to select and arrange the
columns for the report using the Report Format dialog box. When you select the Report command, this
32
Creating Recipes
Available Columns list box — lists the columns you can add to the report. If the list box is
empty, all the available columns are in use.
Column Layout list box — controls which columns appear in the report and the order that these
columns appear. By default, all the columns currently displayed in the recipe appear in the
same order that they appear in the recipe.
Using this dialog box, you can customize the report by selecting only those columns you want to
include, changing a column heading, or changing a column width. When you change a column heading
for a report, the corresponding heading in the recipe does not change. This means if you close and re-
open the Report Format dialog box, the Recipe Builder re-reads the recipe column headings and any
changes you made are lost.
Similarly the width of each column in the report is independent of the display format column width.
This means changing either column width does not affect the other.
NOTE: When the report is created, the Recipe Builder uses the last character of each column to
separate the individual columns. It does this by placing a space in this position. This means that if you
specify a column width of 15 only 14 characters appear in the report. To display the 15th character
specify a width of 16.
1. On the File menu, click Report. The Report Format dialog box appears.
2. If necessary, add or delete the columns to include for the report. Use the following table as a
guide.
3. If necessary modify the column widths and heading, and arrange the columns for the report.
Use the following table as a guide.
4. Click OK. The Recipe Builder creates a report from the current recipe and stores it in the
appropriate recipe path.
To... Then...
Add a column to 1. From the Available Columns list box, select the column you want to add.
the report. 2. Select the Add button. The selected column appears in the Column Layout
list box and disappears from the Available Columns list box.
If you prefer, you can add a column to the report by double-clicking a
column in the Available Columns list box.
Remove a 1. From the Column Layout list box, select the column you want to remove.
column from the 2. Select the Delete button. The selected column disappears from the Column
report. Layout list box and appears in the Available Column list box.
33
Creating Recipes
To... Then...
Arrange a 1. In the Column Layout list box, select the column you want to move.
column in the 2. To move the column up in the list box and to left in the report, select the up
report. arrow button. To move the column down and to the right, select the down
arrow button.
Change a 1. In the Column Layout list box, select the column you want to modify.
column heading 2. Select the Modify button. The Report Column Details dialog box appears.
in the report.
3. In the Column Heading field, type up to 39 characters for a column heading
and select the OK button. The Report Column Details dialog box
disappears and the Recipe Builder changes the heading in the Column
Layout list box.
Change a 1. In the Column Layout list box, select the column you want to modify.
column width in 2. Select the Modify button. The Report Column Details dialog box appears.
the report.
3. In the Column Width field, type the column width you want and select the
OK button. The Report Column Details dialog box disappears and the
Recipe Builder changes the column width in the Column Layout list box.
NOTE: A width of less than two does not show any characters.
When you save this information, the Recipe Builder stores it in a recipe note file in the recipe control
path. Recipe note files are ASCII text files and by convention are named recipe.RCN. Master and
control recipes share the same recipe note file.
Select the Notes command from the File menu. This command starts the Windows Notepad
application. If a note file does not already exist for the recipe, a message box with the following text
appears:
Click Yes to create a note file with the name recipe.RCN. To abort the procedure, click No.
Once the program starts, you can enter the information you want to save. For information on how to
add and modify text with Notepad, refer to your Microsoft Windows documentation.
When you are ready to save the note file, select Save from the File menu. If you are working with a
34
Creating Recipes
new, untitled recipe, make sure you save the file with a .RCN extension and that the name of the note
file and the recipe match; otherwise, the Recipe Builder will not be able to locate the note file
subsequently. Also, make sure you save the note file in the control recipe path.
For example, if you plan to name the current recipe BEER, save the note file with the name
BEER.RCN.
1. In a text editor, open the rcp.ini file. If you installed iFIX to the default location, this file is
located in the C:\Program Files\Proficy\Proficy iFIX\Local folder.
2. In the [startup] section, change notes.disable to 1. (0 is the default.)
3. Save the changes and close the rcp.ini file. The Notes command in the File Menu will be
grayed out.
Using the Recipe Builder, you can do these tasks by locating the information you need and displaying
it. This chapter explains how to locate and display information by searching and replacing data or
jumping to a specific location within a spreadsheet. The chapter also includes instructions for
customizing a spreadsheet to display only the columns you want, and saving and loading these custom
display formats, setting the default startup window, and switching between Recipe Operations and
Recipe Development windows.
35
Creating Recipes
Locating Substrings
When searching and replacing data, the Recipe Builder can locate each occurrence of the string you are
searching for. The string you enter can be the entire contents of a cell or can be a part of a longer
string. By entering a piece of a longer string (called a substring), you can quickly modify an existing
recipe for a different node or a different set of blocks. For example, you could search the Identifier
column and change all the node names in a recipe from FERMENT1 to FERMENT2.
If you enter a substring and the Recipe Builder finds multiple occurrences of this string, a message box
appears displaying text similar to the following:
CAUTION: Select the No button to abort the search, select the Yes button to replace the current cell
or select the All button to replace every occurrence in the column.
The following table provides additional examples of searching and replacing substrings.
Replacing Substrings
When the And the And the column The resulting data is...
search replacement contains...
string is... data is...
CV LO FERMENT1:T16F1.F_CV FERMENT1:T16F1.F_LO
50 75 15050 17575
1 55 111 555555
11 55 111 551
NOTE: When searching and replacing data in a recipe with more than 400 recipe items, the node may
lose sessions. The sessions are re-established when the search is complete.
Before the Recipe Builder can search for a specific piece of text, you must select the column you want
it to search and the data to search for (called the search string). Before you search and replace data, you
must select the column to search, a search string, and the new data that replaces the search string. This
data is called the replacement string.
36
Creating Recipes
You can select the column to search by selecting a cell. When you select a cell, the Recipe Builder
assumes you want to search the column the cell belongs to, starting with the row that follows the
selected cell.
You can specify the search string and the replacement string by selecting the Search button. When you
select this button, the Search and Replace dialog box appears.
Unlike other dialog boxes that prohibit you from selecting a cell in the spreadsheet, you can switch
between the spreadsheet and the Search and Replace dialog box once the dialog box appears. This
feature enables you to search a part of one column and then select a cell in a different column and
continue searching and replacing data.
The Search and Replace dialog box has the following controls:
Search for field — enables you to enter a search string of up to 100 characters. Wildcard
characters (such as * or ?) are treated as text.
The characters you enter into this field remain until you enter a different search string. This
feature allows you to search for multiple occurrences of the search string by selecting the
Search Next or Search Previous buttons.
If the Recipe Builder cannot find a match for the search string in the selected column, a
message box appears displaying the following text:
Replace with field — allows you to enter up to 100 characters as the replacement data. Wildcard
characters (such as * or ?) are treated as text.
The characters you enter into this field remain until you change them. This feature allows you
to search and replace for multiple occurrences of the search string by selecting either the
Replace Next or the Replace Previous buttons. Completing this field is optional.
NOTE: The Recipe Builder only uses the text in this field when you select the Replace Next or
Replace Previous buttons. If you do not select either button, the program does not replace any
data.
Case Sensitive check box — controls whether the search string is case-sensitive. When you select
the check box, the search string is case-sensitive. When you clear the check box, the search
is not case-sensitive. The following table shows how case sensitivity affects Recipe Builder
searches.
Case Sensitivity
When case sensitivity And the search string The Recipe Builder searches
is... is... for...
Wrap Around check box — enables you to search an entire column by selecting any cell. When
37
Creating Recipes
you select this check box, the Recipe Builder automatically wraps and continues searching
the selected column when it reaches the spreadsheet's beginning or end. The following
figure shows how this works when searching forward.
When the Wrap Around check box is cleared, the Recipe Builder searches the selected column until it
reaches end (when searching forward) or beginning (when searching backward) of the spreadsheet.
Search Next button — instructs the Recipe Builder to search forward for the next occurrence of
the search string in the selected column starting at the selected row.
Search Previous button — instructs the Recipe Builder to search backward for the next
occurrence of the search string in the selected column starting at the selected row.
Replace Next button — instructs the Recipe Builder to search forward for the next occurrence of
the search string and replace it.
Replace Previous button — instructs the Recipe Builder to search backward for the next
occurrence of the search string and replace it.
38
Creating Recipes
6. When you finish searching the selected column, you can return to the spreadsheet by selecting
a cell. The Search and Replace dialog box remains on the screen. Alternatively, you can close
the dialog box by selecting the Exit button.
To... Then...
Search forward for an occurrence of the search string. Select the Search Next
button.
Search backward for an occurrence of the search string. Select the Search Previous
button.
Search forward for an occurrence of the search string and replace it. Select the Replace Next
button.
Search backward for an occurrence of the search string and replace Select the Replace
it. Previous button.
Continue searching a column when the Recipe Builder reaches the Select the Wrap Around
spreadsheet's beginning or end. check box.
When you select the Go To Item button, the Go To dialog box appears. You can switch between the
spreadsheet and the Go To dialog box, allowing you to jump to different locations in the recipe. You
may find this feature most helpful when you need to modify many different recipe items throughout
the spreadsheet.
The Go To dialog box contains the Item Number field and the Go button. The Item Number field
allows you to enter the number of the row you want to jump to. When you select the Go button, the
Recipe Builder jumps to the specified row.
39
Creating Recipes
than 32,000 rows, the Recipe Builder allows you to enter a row number equal or less than the last row
in the spreadsheet. If you enter a larger number, the Recipe Builder jumps to the last row of the
spreadsheet after displaying the following text in a message box:
If you enter a negative number or if you enter non-numeric characters, the Recipe Builder displays an
error message box, indicating that your entry was invalid.
Recipe Paths
How you define the master and control recipe paths depends on your process and your needs. It is
recommended that you accept the defaults unless you plan to have a file server with iFIX or unless the
paths conflict with another path already in use. If you must redefine the recipe paths, make sure that
each path is unique. Doing this keeps master recipe files separate from control recipe files.
40
Creating Recipes
• Provides one location for storing master recipes, making updates to them quick and easy.
• Enables operators to use the control recipes they need without relying on the file server.
Should the file server become unavailable, operators can continue working.
If you plan on working in one window more than another, you can set the Recipe Builder to
automatically display either the Recipe Development or Recipe Operations window on startup. Select
the Start in Dev Window command to automatically display the Recipe Development window on
startup. To automatically display the Recipe Operations window, select the Start in Op Window
command.
If you attempt to switch to a window, but your system administrator has not assigned you rights to use
it, a message box appears indicating you do not have the necessary rights. To proceed, contact your
system administrator.
41
Creating Recipes
Applying Fonts
The Recipe Builder enables you to control how the text in the spreadsheet appears by applying a font
to it, changing the font style, or adjusting the point size. You can do any of these operations by
selecting the Font command. When you select this command, the standard Font dialog box appears.
The exact font, style, and point size you select depends on your needs and the fonts installed on your
node. However the following guidelines provide helpful tips for applying fonts effectively:
NOTE: Make sure the font you select for the recipe is available on all nodes. If the font you select is
not available on another node, the operating system substitutes the System font for it when you open
the recipe, ignoring the font, point size, and style you selected.
1. Assign a tag group to the open recipe. For more information on how to do this, refer to the
section Assigning Tag Groups. To learn how to create a tag group, refer to the section
Creating a New Tag Group File.
2. Enter a symbol name in the Identifier column that is defined in the assigned tag group file.
3. Select one of the commands listed in the following table.
Show Enables you to substitute tag group tagnames for symbol names.
Tagnames
command
Show Symbols Disables tagname substitution and displays only the symbol names you entered.
command If you save the recipe with this command selected, the Recipe Builder
automatically displays the symbol names in the recipe.
If the symbol specified in the recipe is undefined in the tag group or if the symbol is associated with a
nonexistent tagname, and you select the Show Tagnames command, the Recipe Builder has no
tagname to display. In this situation, no tagname substitution occurs.
42
Creating Recipes
You can customize the spreadsheet displayed in both windows by adding and removing only the
specific columns you want. By selecting the Edit Display Formats command, you can add a column to
or remove a column from the spreadsheet. This command also allows you to edit the text of each
column heading and control whether the column is modifiable.
When you select Edit Display Formats from the Window menu, the Window Display Format dialog
box appears. This dialog box has the following controls:
Available Columns list box — lists the columns you can add to the spreadsheet. If the list box is
empty, all the available columns are in use.
Column Layout list box — lists the columns currently displayed in either the Recipe Operations
window or the Recipe Development window. By default, the columns in the Recipe
Development window appear. The list box displays the columns in the same order as they
appear in the recipe and indicates which columns are modifiable.
The following table provides instructions for using the Window Display Format dialog box.
To... Then...
Add a column to the 1. From the Available Columns list box, select the column you
spreadsheet. want to add.
2. Select the Add button. The selected column appears in the
Column Layout list box and disappears from the Available
Columns list box.
If you prefer, you can add a column to the spreadsheet by
double-clicking a column in the Available Columns list box.
Remove a column from the 1. From the Column Format list box, select the column you want
spreadsheet. to remove.
2. Select the Delete button. The selected column disappears from
the Column Layout list box and appears in the Available
Columns list box.
Arrange a column in the 1. In the Column Layout list box, select the column you want to
spreadsheet. move.
2. To move the column up in the list box and to the left in the
recipe, select the up arrow button. To move the column down
and to the right, select the down arrow button.
43
Creating Recipes
To display the columns from Select the Switch to OP button. The columns from the Recipe
the Recipe Operations Operations window appear in the Column Layout list box.
window.
To display the columns from Select the Switch to DEV button. The columns from the Recipe
the Recipe Development Development window appear in the Column Layout list box.
window.
Modifying a Column
Besides adding and removing columns, the Recipe Builder lets you customize the spreadsheet by
restricting input into specific columns and by changing a column heading. For example, if you want
operators to change only override values, make the other columns in the Recipe Operations window
non-modifiable.
You can modify columns attributes using the Column Details dialog box. This dialog box displays the
Column Heading field and the Modifiable check box.
Follow the instructions in the following table to use the Column Details dialog box.
1. On the Window menu, click Edit Display Format The Window Display Format dialog box
appears.
2. From the Column Layout list box, select the column you want to modify.
3. Select the Modify button, or in the Column Layout list box, double-click the column. The
Column Details dialog box appears.
To... Then...
Modify the column Enter the heading you want for the selected column in the Column
heading. Heading field.
44
Creating Recipes
When you finish using the Column Details dialog box you can apply the changes you have made.
1. From the Column Details dialog box, click OK. The Recipe Builder updates the Column
Layout list box to reflect the changes you made.
2. From the Window Display Format dialog box, click OK. The Recipe Builder updates the
spreadsheet for the selected column.
• The column layout (including the specific columns in the spreadsheet, the column headings,
column width, and which columns are modifiable).
• The font, style, and point size of the text in the spreadsheet.
• The type of tag group substitution that is enabled (whether the recipe shows symbol names or
tag group tagnames).
The Recipe Builder also uses the data in the format file to determine the order to display each column.
By saving the current spreadsheet format, you make it permanent. After saving a display format, you
can load it as needed.
You can save the current format using the Save Display Formats command. When you select this
command, the standard Save As dialog appears. To save the display format, type its name in the File
Name field and click the OK button.
After you select the Load Display Formats command, the standard Open dialog appears. To load the
display format, type its name in the File Name field and click the OK button.
45
Creating Recipes
2. Customize the spreadsheet as described in the sections Adding and Removing Columns and
Modifying a Column.
3. Save your customized format to the file, DEFAULT.RFT. The Recipe Builder overwrites the
preset defaults. The next time you start the Recipe Builder, it automatically loads the new set
of defaults you saved to the format file.
If, for any reason, you need to display a recipe using the preset defaults, load the original format file as
described in the section Loading Format Files.
This chapter provide detailed explanations of each method. It includes the following sections:
46
Creating Recipes
The window being displayed determines the type of recipe you can open and subsequently download,
as the following table shows:
Regardless of the window you download a recipe from, the process is the same and is summarized in
the following steps.
To download a recipe:
The sections Starting the Download, Checking for Errors Before Downloading, and Displaying
Download Results describe each step of the download process. Refer to these sections for more
information about the download process.
IMPORTANT: Make sure no recipes are downloading when you reload a process database.
Unexpected results can occur if the Recipe Builder attempts to download during a database reload.
If the audit trail is enabled, the Download dialog box appears. The following figure provides a
flowchart of the first part of the download process.
47
Creating Recipes
1. Click the Download button. If the audit trail is enabled, the Download dialog box appears.
2. In the Batch ID field, enter an identifier for the download of a recipe. This identifier can be up
to 10 characters. The text you enter into the Batch ID field appears in all recipe messages,
uniquely identifies the download, and is assigned to the keyword #BATCH_ID for the current
download. If you do not want to specify a batch ID, you can leave this field blank.
3. In the Remarks field, enter up to 20 characters explaining why the recipe is being
downloaded. The text you enter is included in all recipe messages when the audit trail is
enabled and is assigned to the keyword #REMARKS for the current download. If you do not
want to enter any text, you can leave this field blank.
48
Creating Recipes
Notice that the program examines all recipe items and variables for an identifier and a value. Variables
are not downloaded, however. If the formula of a recipe item references a variable, that variable must
exist in the recipe and must have a value, otherwise the download aborts.
Also notice that the Completion Status field is updated prior to downloading. Refer to the section
Defining the Completion Status Indicator for more information about possible Completion Status field
values.
Handling Errors
Should the Recipe Builder find errors prior to downloading the recipe, it displays an error message box
with the following text:
You can display these errors by selecting the View button on the message box. When you select this
button, the Precheck Error List dialog box appears and displays a list of errors.
49
Creating Recipes
Common download precheck errors include an active download interlock, downloading to a node that
is not running SAC, attempting to download a recipe item without a formula or override value, and
attempting to download to a tagname that does not exist. To correct these, or any other errors, you
must cancel the download first. For additional information about handling precheck errors, refer to the
section Understanding Audit Trail and Error File Messages.
NOTE: If the Recipe Builder encounters precheck errors for the upload or download interlock, the
Item No. field in the Precheck Error List dialog box is left blank for that block. To correct the error for
either interlock, open the database and make the necessary changes or change the interlock with the
Advanced Options dialog box.
If none of the recipe items have verification enabled, the Recipe Builder displays the following text
when it successfully downloads the recipe:
NOTE: If you notice alarm entries missing from an alarm file after a recipe is downloaded, the alarm
file queue may not be large enough. To correct this problem, increase the size of the Alarm File Queue
so that it is larger than the recipe. For example, if the recipe has 100 recipe items, the queue size
should be at least 101. For information on how to increase the size of an alarm queue, refer to the
section Modifying the Alarm Queues in the Implementing Alarms and Messages manual.
If the Recipe Builder was unable to download one or more of the recipe values to the database, the
Download Error List dialog box appears.
NOTE: The information listed in this dialog box reflects the state of the recipe at the time of the
download. If you modify the recipe after the Download Error List dialog box appears, the information
displayed in the dialog box will not reflect the current state of the open recipe.
Common causes for write errors are if the target block is in Automatic mode instead of Manual mode,
if the block is off scan, or if the block is assigned to a security area that is not defined in the recipe user
account on the target node. For additional information about handling download write errors, refer to
the section Understanding Upload and Download Messages. For information about using the recipe
user account, refer to the chapter Recipe Security.
The following figure shows what happens when recipe verification is enabled.
50
Creating Recipes
Notice that when a write error occurs, the Download Error List dialog box appears.
Verifying a Recipe
If no write errors occur, the Recipe Builder begins verifying each recipe item that has verification
enabled. Using the Verify column in the spreadsheet, you can select the recipe items you want to
verify.
The Recipe Builder handles recipe verification by reading the target block field and comparing its
current value in the database against the value in the recipe. When the two values match, the recipe
item is verified.
IMPORTANT: Because the Recipe Package reads and writes from the same set of blocks, you can
only verify recipe items that specify blocks with an input and output capability. These blocks include
the Analog Input, the Analog Alarm, the Analog Register, the Digital Input, the Digital Alarm, the
Digital Register, and the Text block. Attempting to verify a recipe that contains any other type of block
can produce unexpected results.
When verifying Digital Register blocks, make sure the type of formula agrees with the type of field
specified in the identifier. Only use strings with the A_CV field and only use numeric values with the
F_CV field. If you do not, the Recipe Builder cannot verify the block's value. For example, if you
specify the field A_CV, enter a string formula that matches the label for the appropriate state of the
block, such as "OPEN".
If one or more recipe items reference an Analog Register or Digital Register block, you may
experience difficulty verifying these items. To resolve this problem, create an Analog Input block for
each poll record referenced by the recipe. Make sure the scan time of the Analog Input block is shorter
than the access time of the poll record it is assigned to. This setup ensures that the I/O driver does not
time out and stop polling the poll record. By continuously polling each address, you ensure that data is
51
Creating Recipes
As it verifies a recipe, the Recipe Package continually reads the values of the target blocks until each
recipe item that you selected is verified or the time-out interval expires. All recipe items must verify at
the same time in order to verify a recipe successfully. For example, consider the following.
In this example, the recipe is verified only on the third pass through it, because only on the third pass
are all recipe items verified. When one or more recipe items are not verified, as shown above, the
Recipe Builder starts from the beginning of the recipe and attempts to verify each recipe item you have
selected again.
The time-out interval specifies the amount of time the Recipe Builder spends verifying the recipe. If
this interval expires without verifying the recipe, a time-out error occurs and the verification process
ends.
NOTE: The time-out interval you specify applies to the local node. All recipes downloaded from the
local node will use this time-out interval.
If the time-out interval expires, the Recipe Builder displays the Verification Error List dialog box.
NOTE: The information listed in the Verification Error List dialog box reflects the state of the recipe
at the time of the download. If you modify the recipe after the Verification Error List dialog box
appears, the information displayed in the dialog box will not reflect the current state of the open
recipe.
Common verification errors include attempting to verify a block that is off scan or attempting to verify
blocks on a node that does not have SAC running. For additional information about handling
verification errors, refer to the section Understanding Upload and Download Messages.
1. From the Recipe Builder, on the File menu, click Exit. If necessary, save any changes you
have made to the current recipe.
52
Creating Recipes
2. In a text editor, open the RCP.INI file. This file resides in the Local path. You should see the
following text:
[startup]
startup.mode=2
verification.timeout=30
3. Modify the time-out interval by changing the value from 30 to some other value. Possible
values for the time-out interval are from 1 to 65,535 seconds.
4. After modifying the time-out interval, save the RCP.INI file and restart the Recipe Builder.
5. With the new time-out interval, try downloading the recipe again.
For information about verification errors, refer to the section Verifying a Recipe.
When the Recipe Builder uploads a recipe, it replaces recipe item formulas that contain numeric or
string constants. Formulas containing variables, mathematical expressions, keywords, or recipe
functions are not replaced.
CAUTION: If the Recipe Builder cannot read a process value from the database, it clears the existing
formula for that recipe item without inserting a new value to indicate that the associated tagname
could not be read or could not be found in the database. Before saving the uploaded recipe, make sure
you examine your recipe for completeness. If any formulas are blank, do not save the recipe or you will
overwrite the formulas saved in the file.
Aside from these differences, uploading a recipe is similar to downloading a recipe except that recipe
verification is not available. The recipe upload process is summarized below.
To upload a recipe:
The sections Starting the Upload Process, Checking for Errors Before Uploading, Displaying Upload
Results describe each portion of the upload process. Refer to these sections for more information about
the upload process.
53
Creating Recipes
As you can see, this process is similar to the steps taken when downloading a recipe. For example, just
as with downloading, the Recipe Builder examines the database to ensure the specific blocks exist.
Similarly, the Completion Status field is updated when the upload process begins. The Completion
54
Creating Recipes
Status Values table describes the possible values and their meaning.
Should the Recipe Builder detect an error, it displays an error message box with the following text:
You can display these errors by selecting the View button on the message box. When you select this
button, the Precheck Error dialog box appears and displays a list of errors.
Common upload precheck errors include an active upload interlock or an attempt to upload from a
tagname that does not exist. To correct these, or any other errors, you must cancel the upload first. For
additional information about handling precheck errors, refer to the section Understanding Audit Trail
and Error File Messages.
NOTE: If the Recipe Builder encounters precheck errors for the upload or download interlock, the
Item No. field in the Precheck Error List dialog box is left blank for that block. To correct the error for
either interlock, open the database and make the necessary changes or change the interlock with the
Advanced Options dialog box.
Notice that when a read error occurs, the Upload Error List dialog box appears.
NOTE: The information listed in this dialog box reflects the state of the recipe at the time of the
upload. If you modify the recipe after the Upload Error List dialog box appears, the information
displayed in the dialog box will not reflect the current state of the open recipe.
Common upload read errors include an active upload interlock or uploading from a block that is off
scan. For additional information about handling upload read errors, refer to the section Understanding
Upload and Download Messages.
55
Creating Recipes
When an operator uploads or downloads a recipe from an operator display, the Recipe Package uploads
or downloads each recipe item. No dialog or message boxes appear to inform you about the status of
the recipe during the upload or download. Any errors that occur are not saved unless you enable the
audit trail or use the Error File command line parameter.
When uploading a recipe, the Recipe Package automatically saves the recipe. If the Recipe Upload
system task cannot read a process value from the database, it clears the existing formula for that recipe
item.
If the recipe being downloaded has recipe items with verification enabled, these recipe items are
verified as part of the download process. Refer to the sections Displaying Download Results, Verifying
a Recipe, and Changing the Verification Time-out Interval for more information about recipe
verification.
In addition, if security has been enabled, iFIX compares the security areas of the target blocks to the
security areas assigned to the Recipe user account. If the security system finds a match, it downloads
the recipe value. Otherwise, the value is not written to the database.
Similarly, iFIX compares the security area of the operator display against the security areas assigned to
the currently logged in user. If a match is found, iFIX opens the display. Neither the security rights to
recipe application features nor the security area of the recipe is examined.
To upload or download a recipe from an operator display, create a picture with the necessary objects.
For each object you want to use for uploading or downloading include a script with the Shell function.
This function, when executed, starts the recipe system task you specify.
For example, you may want to add push button objects to upload and download recipes. The following
sample script shows how you can download a recipe:
To create an upload script, define a variable called upload in place of the download variable and
substitute the reference to RCPDOWN with RCPUP as follows:
If you have enabled the audit trail for the recipe, you may also want to include the Batch ID and
Download Remarks parameters. To learn more about the command line parameters for the Recipe
Upload and Recipe Download programs, refer to the appendix Command Line Parameters. For more
56
Creating Recipes
information about the Shell function, refer to the Microsoft Visual Basic Reference Help system.
When you upload or download from a Program block, no dialog or message boxes appear to inform
you about the status of the recipe during the upload or download. Any errors that occur are not saved
unless you enable the audit trail or use the Error File command line parameter.
When uploading a recipe, the Recipe Package automatically saves the recipe. If the Recipe Upload
system task cannot read a process value from the database, it clears the existing formula for that recipe
item.
If the recipe being downloaded has recipe items with verification enabled, these recipe items are
verified as part of the download process. Refer to the sections Displaying Download Results, Verifying
a Recipe, and Changing the Verification Time-out Interval for more information about recipe
verification.
In addition, if security has been enabled, iFIX compares the security areas of the target blocks to the
security areas assigned to the Recipe user account. If the security system finds a match, it allows the
block's process value to change. Otherwise, no value is written to the database. Neither the security
rights to recipe application features nor the security area of the recipe is examined.
To help troubleshoot the use of the RUNTASK command, you should include the Error File parameter
with the Recipe Upload and Recipe Download programs. Using this parameter enables the Recipe
Package to record errors in an error file called recipe.RCE. The file resides in the Control Recipe path
(when working with control recipes) or the Master Recipe path (when working with master recipes).
You can display the contents of this file using a text editor.
57
Creating Recipes
Command Action
To download the recipe at a different time, change the time in the WAITFOR command.
Alternatively, you can configure a Program block to upload or download a recipe when a specific
event occurs. For example, assume you want to download a recipe when the download interlock
becomes inactive. To do this, use commands similar to the following:
Command Action
To learn about the command line parameters for the Recipe Upload and Recipe Download programs,
refer to the chapter Command Line Parameters.
dialogdisplaytime=1000
You can construct a formula by entering one or more of the formula items listed in the following table
into the Formula column of the spreadsheet.
58
Creating Recipes
Formula Items
Formula Examples
Keyword #BATCH
By combining the items listed above, you can represent a value as best fits your needs. For example,
the sample recipe, you may remember, requires 150 pounds of yeast to be added during fermentation.
You can represent this amount as a numeric constant by entering 150 in the Formula column for the
appropriate tagname. If you prefer, you can also assign this value to a variable and then use the
variable as the formula for the block as shown below:
Identifier Formula
#Yeast 150
FERMENT1:Q16F1.F_CV #Yeast
You could also represent the quantity as a mathematical expression such as 100*1.5. Assuming 100 is
the standard batch size and 1.5 is the amount of yeast required for every barrel of beer produced, you
can also represent the quantity with the following keyword and variable as follows:
#STD_BATCH*#Lbs_Per_Barrel
59
Creating Recipes
In addition to the syntax of these items, all strings in a formula must be enclosed in quotation marks ("
") and you must precede a number less than one with a leading zero (for example, 0.5).
Functions
When you select the function... The Recipe Builder calculates the... Syntax
In addition to the functions listed in the previous table, the Recipe Builder also provides the Lookup
and Index functions. These functions help you locate a value within a list.
The Lookup function locates and uses the nth value in a list, where n is a zero-based integer. You can
use the following syntax for this function:
60
Creating Recipes
The Lookup function also allows you to substitute a variable name or keyword anywhere you can use a
number or string value.
When the Recipe Builder evaluates the Lookup function, it uses the value of number to select the
appropriate value from the list. For example, consider the following:
#Yeast 3 3
When the Recipe Builder evaluates this function, it uses the value of the variable #Yeast to determine
the value of the function. The following table lists the possible values of the function.
0 0
1 150
2 300
3 450
4 600
The Index function is similar to the Lookup function. The Index function locates the position of a
number or string within a list. The position of each item is zero-based. As a result, the first item
evaluates to zero, the second item to one, the third item to two, and so on. You can use the following
syntax for this function:
The Index function also allows you to substitute a variable name or keyword anywhere you can use a
number or string value.
61
Creating Recipes
When the Recipe Builder evaluates this function, it searches for a match between number or string and
the accompanying list. If it does not find a match, the value of function equals the number of items in
the list. If it finds a match, the function equals the position of the located item in the list.
When the Recipe Builder evaluates these recipe items, it searches the list for the value of #Beer_Type.
Since the value of #Beer_Type is "Ale", the Index function yields a value of one. The following table
lists all possible values of the function.
"Dark Beer" 0
"Ale" 1
"Mead" 2
"Stout" 3
NOTE: The Index function does non-case sensitive string matching when string values are specified.
iFIX supports the international formats supported in Windows. The recommended list separator for the
Index and Lookup functions is a semicolon (;).
Operator Precedence
The Recipe Builder provides a set of operators common to many spreadsheet programs. The following
table lists the available formula operators from high to low precedence. The Recipe Builder uses the
precedence of an operator to determine which operator to evaluate first. An operator with a higher
precedence is evaluated first. Operators with the same precedence are evaluated in the order they occur
in the formula from the left to right.
62
Creating Recipes
Formula Operators
( ) (parentheses) (expression) 1
You can change the order in which the Recipe Builder evaluates a formula by enclosing a portion of it
in parentheses. Expressions enclosed in parentheses have the highest precedence of any part of the
formula.
63
Creating Recipes
Formula Value
5*3^2 45
(5*3)^2 225
Recipe Keywords
#BATCH Current batch Select the Set Batch Size from the Options menu. The
size Batch Size dialog box appears.
Complete the Batch Size field in the dialog box.
#BATCH_ID Batch ID With the audit trail enabled, select the Download button
from the Recipe Builder. The Download dialog box
appears.
Complete the Batch ID field in the dialog box.
#REMARKS Download With the audit trail enabled, select the Download button
remarks from the Recipe Builder. The Download dialog box
appears.
Complete the Download Remarks field in the dialog
box.
#BATCH_UOM Batch unit of Complete the Batch UOM field in the recipe header.
measure
#PRODUCT Name of the end Complete the Product field in the recipe header.
product
64
Creating Recipes
Recipe Keywords
#SCALE Batch scaling 1. Complete the Standard Batch Size field in the recipe
factor header.
2. Select the Set Batch Size from the Options menu. The
Batch Size dialog box appears.
3. Complete the Batch Size field in the dialog box. The
Recipe Builder automatically calculates the scaling
factor dividing the #STD_BATCH by #BATCH.
#STD_BATCH Standard batch Complete the Standard Batch Size field in the recipe
size header.
#TAG_GROUP Assigned tag 1. Select the Assign Tag Group from the Option menu.
group file name The Assign Tag Group dialog box appears.
2. Complete the Tag Group File name field in the dialog
box.
#UNITS Process unit Complete the Units field in the recipe header.
used by the
recipe
NOTE: The keyword #BATCH_ID and #REMARKS always appear blank in the recipe, but the text you
enter for each keyword is downloaded to the database when you assign either keyword to a tagname.
The Recipe Builder allows you to use a keyword containing a string value in place of a string constant.
For example, consider the following formula:
In this example the value of the keyword #PRODUCT is used in place a string constant.
You can also substitute a keyword with a numeric value for an actual number. For example:
INT(#BATCH)
This formula calculates the integer value of the current batch size.
Just as you can use keywords in place of string and numeric constants, you can use variables in place
of string and numeric values. For example, in place of the #BATCH in the previous example, you can
use the variable #YEAST.
65
Creating Recipes
Deleting Variables
Be careful about deleting a variable. If you delete a variable that another variable or recipe item
references, the Recipe Builder displays the text ?????? in the Calc Val column of the item that
referenced the deleted variable. While the Recipe Builder displays this text, the recipe cannot be
downloaded. To fix this situation, do one of the following actions:
• Edit the formula of the recipe item or variable that references the deleted variable.
• Create a variable with the same name as the variable you deleted.
• Override the recipe item or variable that references the deleted variable.
To avoid deleting variables that are referenced by another item in the spreadsheet, search the Formula
column for the variable name before you delete it from the recipe.
Creating Formulas
Once you know the keywords, operators, and functions you want to use, you can define a formula by
selecting a cell in the Formula column of the spreadsheet and entering the formula into the text editing
box.
If your recipe has a value that is repeatedly reused, you may find it helpful to represent the value with a
variable at the top of the spreadsheet. While you do not have to keep variables at the beginning of the
spreadsheet, doing so makes maintaining and customizing a recipe easier.
When you finish editing the formula, press <Enter>. The Recipe Builder automatically recalculates all
recipe formulas in the order they occur.
If the Recipe Builder cannot recalculate a formula (for example, when one or more variables
referenced by the formula are undefined) an error message box appears displaying the following text:
The Recipe Builder also stops recalculating all formulas that come after the incalculable formula. The
following figure shows an example of this and how to correct the error.
66
Creating Recipes
Recalculating Formulas
You cannot change a recipe item with a field type of A_ and a string formula to an F_ field. If you
attempt to do this, the following error message appears:
#STD_BATCH*0.5
By representing the batch size with this formula, you can adjust its value by changing the value in the
Standard Batch Size field or the scaling factor represented by the numeric constant 0.5.
However, you may find circumstances when using a formula is inappropriate. For example, suppose
you are making beer for an upcoming holiday. Assume for this product that you need to lower the
temperature that the beer ferments at and increase the fermentation time.
Using the Recipe Builder, you can adjust the formulas for the temperature set point and fermentation
time. Alternatively, you can override the calculated value for these items. When you override a value,
you specify a process value to use in place of the recipe item's or variable's calculated value.
You can enter an override value by selecting the appropriate cell in the Override Val column and
typing the new value in the text editing box. The range of values you can enter into the Override Val
column depends on the high and low override limits defined for a specific recipe item or variable. To
set the override limits for a recipe item or variable, refer to the section Entering Override Limits.
67
Creating Recipes
After you enter an override value, the Recipe Builder continues recalculating the formula of the
overridden item. All recipe items that reference the overridden recipe item or variable are recalculated
using the override value.
The Recipe Builder also warns you when attempting to scale overridden recipe items and variables by
displaying a message box with the following text:
Select the Clear All button to clear all override values or select the Continue button to keep the
overrides in effect and set the batch size. To quit without making any changes, select the Cancel
button. For more information on scaling batches, refer to the section Scaling the Batch Size.
To enter an override limit into the Override Lo Lim column or the Override Hi Lim column, select a
cell in either column and type the limit you want in the text editing box.
The following table provides guidelines for entering values in each column. If you are entering values
from the text editing box, follow the guidelines below.
Override Limits
Unrestricted U
An absolute value The value you want to use. For example, to set the low limit to 50, type
50<Enter> in the Override Lo Lim column.
A relative percentage The percentage of the calculated value you want to use. Be sure to
of the calculated value include a percent sign (%) after the percentage. For example, to set the
high limit to 10%, type 10%<Enter> in the Override Hi Lim column.
A relative difference The difference from the calculated value you want to use followed by a
from the calculated minus sign (-). For example, to set the high limit to 10 over the
value calculated value type 10-<Enter> in the Override Hi Lim column.
Restricted R
For more information about override limits, refer to the section Spreadsheet Columns.
68
Creating Recipes
If you prefer, you can enter the override limits using the Override Limit dialog box. To display this
dialog box, double-click a cell in either override limit column.
When the Override Limit dialog box appears, select the appropriate radio button and, if there is a field
to the right of the button, use the guidelines in the table Override Limits to enter a value into that field.
Deleting Overrides
When you want to remove an override value, select it and press <Delete>. To delete all the override
values in use, select the Clear Overrides button. When you select this button, a message box with the
following text appears:
Select the Yes button to delete every override value. To retain the override values select the No button.
Advanced Features
The Recipe Builder provides some advanced features that you may find helpful when using recipes.
The following table lists each feature, the command associated with it, and the section to refer to for
more information.
Scaling the batch size of a recipe Set Batch Size Scaling the Batch Size
69
Creating Recipes
enables you to scale the batch size of a recipe. When scaling the batch size, the Recipe Builder
preserves the relative proportions among the recipe items and variables being scaled.
The Recipe Builder allows you to scale a recipe's batch size in the Recipe Development window. The
first step in scaling a batch is to complete the Standard Batch Size field in the recipe header. The
Recipe Builder assigns the batch size value you enter to the #STD_BATCH keyword. The program
then uses the specified value to calculate the scaling factor. For more information on the Standard
Batch Size field, refer to the section Recipe Header.
After you define the standard batch size, you must define the current batch size of the recipe. You can
define this quantity with the Set Batch Size command.
When you select this command the Batch Size dialog box appears. This dialog box contains the Batch
Size field. This field allows you to specify a value for the current batch size from 0.000001 to
9,999,999.0.
1. On the Options menu, click Set Batch Size. The Set Batch Size dialog box appears.
2. In the Batch Size field, enter the amount of the product you want to make.
When you select the OK button on the Set Batch Size dialog box, the Recipe Builder assigns the value
you entered to the #BATCH keyword and displays it in the Batch Size field of the recipe display area,
as the following figure shows. The Recipe Builder also divides #BATCH by #STD_BATCH to
compute the scaling factor. The result of this calculation is stored in the #SCALE keyword.
The next step is to multiply the formula of each recipe item you want to scale by #SCALE. Once this is
done, you can scale a batch by changing the current batch size. The following figure shows how to use
#SCALE in a recipe.
70
Creating Recipes
Scaling a Batch
If you attempt to change the batch size of a recipe item or variable with an overridden formula, the
Recipe Builder warns you by displaying a message box with the following text:
Select the Clear All button to clear all override values or select the Continue button to keep the
overrides in effect and set the batch size. To quit without making any changes, select the Cancel
button.
Tag groups enable you to put generic symbols in the Identifier column of a recipe. A symbol is a label
defined in the Tag Group Editor. In a recipe, a symbol represents a tagname. During a download or
upload, the Recipe Builder reads the tag group file assigned to the recipe and substitutes the tagnames
for the symbols in the recipe. By having different tag group files for each product you want to make,
you can create one, multi-purpose recipe that functions with many different locations and different
equipment.
For example, suppose you want the option of switching among three fermenters. One way you could
do this is to duplicate the sample recipe for the second and third fermenters. These recipes would be
identical to the sample recipe except for the tagnames that control the fermenting time, the temperature
set point, and the scale set point.
However, by creating three tag groups you can save yourself the need of creating the two additional
recipes. And since the production lines share the same recipe, when you update a recipe for one line,
you update it for every line using that recipe.
71
Creating Recipes
Each tag group you plan to use lists the tagnames required for the fermenter used by the recipe as
shown below:
The sample recipe would then be modified replacing the specific tagnames with tag group symbols.
Symbols can have a length of 32 characters and must have the following format:
?string
where string is a 31-character string. The string must begin with a single alphabetic character and can
be followed by one or more alphanumeric characters. Each symbol must be unique. For more
information about tag groups and symbols, refer to the chapter Using the Tag Group Editor.
One way you might use symbols in the sample recipe is to replace T16F1.F_CV, K16F1.F_CV, and
W16F1.F_CV with the symbols ?BeerTemp, ?BeerTime, and ?YeastWeight respectively. The
following figure shows the resulting sample recipe and the tag groups. Notice that each tag group uses
the same symbol but associates a different tagname with it. For example, in the Fermenter 1 tag group
the symbol ?BeerTemp is associated with the tagname T16F1.F_CV but in the Fermenter 3 tag group
the same symbol is associated with the tagname T16F3.F_CV.
72
Creating Recipes
• Create a list of the symbols defined for the tag groups you want to use. Make sure the tag
group symbols are identical across each tag group. After you create this list, enter the tag
group symbols in the Identifier column of the recipe.
• Define the symbols in the recipe first and create the tag group with the Tag Group Editor.
After you enter the symbols into the recipe and create the tag group file, you can assign the tag group
to the recipe using the Assign Tag Group command. This command is only available from the Recipe
Development window. When you select the command the Assign Tag Group dialog box appears. This
dialog box contains the Tag Group Filename field. This field allows you to enter the name of the tag
group file you want to use for this recipe. Tag group files are stored in the Picture path and have the
extension .TGE.
1. On the Options menu, click Assign Tag Group. The Assign Tag Group dialog box appears.
2. In the Tag Group Filename field, enter the tag group file you want to assign to the recipe, or
select the browse (...) button to the right of the field and double-click the tag group file you
want to assign to the recipe from the list that appears.
73
Creating Recipes
After you assign a tag group to a recipe, you can display the tagnames by selecting the Show
Tagnames command. To display the symbol names again, select the Show Symbols command. For
more information about these commands, refer to the section Displaying Tag Group Tagnames.
NOTE: If you download or upload a recipe with a symbol name defined, the Recipe Builder substitutes
the tagname for the corresponding symbol prior to reading or writing a value.
You can complete each of these tasks using the Advanced Options command. When you select this
command, the Advanced Options dialog box appears.
The following sections describe the dialog box controls and how to complete the dialog box.
Download field — defines the tagname or tag group symbol that acts as a download interlock for
the recipe. When you download a recipe, the Recipe Builder verifies that the value of the
block is zero. This means that the interlock is inactive. If the value of the block is non-zero,
the interlock is active and the Recipe Builder aborts the download process.
Upload field — defines the tagname or tag group symbol that acts as an upload interlock for the
recipe. When you upload a recipe, the Recipe Builder verifies that the value of the block is
zero. This means the interlock is inactive. If the value of the block is non-zero, the interlock
is active and the Recipe Builder aborts the upload process.
By default, the F_CV field is assigned to the interlock tagname when no field name is specified.
However, you can enter any F_ field for the tagname (such as F_04 for a Digital Register block).
To define the upload and download interlocks for the current recipe:
1. On the Options menu, click Advanced Options. The Advanced Options dialog box appears.
74
Creating Recipes
2. In the Download field, enter the tagname or tag group symbol of the block that acts as a
download interlock for the recipe. In the Upload field, enter the tagname or symbol of the
block that acts as an upload interlock. If you prefer, you can select the browse (...) button to
the right of either field and select the tagname from the dialog box that appears.
To define the completion status indicator, enter the tagname or tag group symbol of an analog block in
the Completion Status group box. The Recipe Builder monitors the recipe's progress when you specify
the block to use as the completion status indicator in the Completion Status group box.
By default, the F_CV field of the block is assigned to the tagname if you do not specify a field name.
However, you can specify any F_ field for the tagname (such as F_02 for an Analog Register block).
Completing the group box is optional. When you leave it blank, the Recipe Package does not monitor
the completion status of an upload or download.
1. On the Options menu, click Advanced Options. The Advanced Options dialog box appears.
2. In the Completion Status group box, enter the tagname of the block that acts as the completion
status indicator for the recipe, or select the browse (...) button and select the tagname from the
dialog box that appears.
The tagname referenced is written to during an upload or download. The following table lists
the possible values for the completion status indicator.
75
Creating Recipes
4 Completed with Successfully written all recipe values to the database and
verification errors. completed the verification process. However, one or
(download only) more blocks could not be verified because the time-out
interval expired.
Once you define this indicator, you can use it to post messages on an operator display using Visual
Basic for Applications. For example, when downloading a recipe from an operator display you could
create a button labeled "Recipe Status." By selecting this button, operators could monitor the progress
of a downloaded recipe by examining the value of the completion status indicator. The script for this
button would include the following:
To select a security area for a recipe, complete the Security Area group box. This group box defines
the security area for the recipe. By default, the security area is set to NONE.
1. On the Options menu, click Advanced Options. The Advanced Options dialog box appears.
76
Creating Recipes
2. In the Security Area group box, enter the appropriate text as indicated below. You can enter
up to 20 alphanumeric characters into the group box.
• To assign the recipe to every security area, type ALL.
• To assign the recipe to no security area, type NONE.
• To assign the recipe to a specific security area, type the security area name in the
group box.
If you prefer, click the browse (...) button and select a security area from the dialog
box that appears. Use the scroll bar or arrow keys to locate the security area you want.
Press the OK button to complete the selection.
Using the Audit Trail group box, you can select the type of audit you want. By selecting the audit trail
type, you instruct the Recipe Package to send the recipe information you want tracked as a message to
any alarm destination configured to receive it. Recipe messages are recorded along with any other
message the alarm destination is configured to receive. The alarm files that store recipe messages
reside in the Alarms path and are named yymmdd.ALM.
To set up an alarm destination to receive recipe messages, select the recipe message alarm areas you
need from the Application Message Routing dialog box of the SCU. For more information about
configuring alarm destinations, assigning alarm areas, or routing alarms, refer to the Implementing
Alarms and Messages manual.
Below is a summary of the Audit Trail group box. By making a selection from this group box you
control the type of audit trail the Recipe Builder keeps. Both types of audit trails enable the Recipe
Package to track the information described below to the available alarm destinations.
• When changes to master or control recipes are saved and the name of the logged in user that
saved the recipe.
• The text entered into the Recipe Mod Log dialog box.
• When a recipe is uploaded or downloaded and the name of the logged in user that uploaded or
downloaded the recipe.
• When an upload or download fails and why.
• The Recipe Package records this information whenever a recipe is saved, uploaded, or
downloaded. By default, the Summary Audit Trail radio button is selected.
Detail Audit Trail option button — tracks all the summary information listed above. In addition,
the Recipe Package also tracks the following download information:
77
Creating Recipes
Using the Recipe Builder, you can enable or disable the audit trail for the open recipe.
1. On the Options menu, click Advanced Options. The Advanced Options dialog box appears.
2. Select either the Summary Audit Trail radio button or the Detail Audit Trail radio button to
select the type of audit trail you want. To disable the audit trail, select the No Audit Trail
radio button.
date The date when a recipe was uploaded, downloaded, or saved. This field is
included if the SCU is set up to include the date in recipe messages. Refer to
the section Setting up the Alarm and Message Format in the Implementing
Alarms and Messages manual for information on setting the format of these
messages.
time The time when a recipe was uploaded, downloaded, or saved. This field is
included if the SCU is set up to include the time in recipe messages. Refer to
the section Setting up the Alarm and Message Format in the Implementing
Alarms and Messages manual for information on setting the format of these
messages.
recipe_filename The name of the recipe file that was uploaded, downloaded, or saved.
tag_group_name The file name of the tag group assigned to the recipe. This field is blank if no
tag group is assigned to the recipe.
78
Creating Recipes
user The name of the logged in user. If security is disabled, this field is left blank.
79
Creating Recipes
The following table describes each field. Detailed messages are sent while downloading a recipe.
date The date when a recipe downloaded. This field is included if the SCU is set up to
include the date in recipe messages. Refer to the section Setting up the Alarm and
Message Format in the Implementing Alarms and Messages manual for
information on setting the format of these messages.
time The time when a recipe downloaded. This field is included if the SCU is set up to
include the time in recipe messages. Refer to the section Setting up the Alarm and
Message Format in the Implementing Alarms and Messages manual for
information on setting the format of these messages.
batch_id The batch id the operator specifies when downloading a recipe. The batch id is
included only when downloading a recipe and is used to identify the download of
the recipe.
description A description of the recipe item or variable. This description matches the text that
appears in the Description cell for the downloaded item.
Recipe Security
If you plan on using recipes with iFIX, you may find it useful to restrict access to one or more aspects
of the Recipe Package. iFIX security enables you to restrict access to the following items:
80
Creating Recipes
For more information about securing Recipe Builder application features, refer to the Implementing
Security manual.
You can protect a recipe by assigning a security area to it. For more information about assigning a
security area to a recipe, refer to section Selecting a Security Area. Also make sure that each operator
has rights to the security areas he or she needs. Without these rights, an operator cannot open a recipe
once you assign a security area to it.
iFIX protects against writing to individual blocks by comparing the security areas assigned to a block
with those assigned to the logged in user. Since recipes can be scheduled to download when no one is
logged in, a special user account called RECIPE is used. When the Recipe Package attempts to write a
value, the security system examines the rights assigned to the Recipe user account instead of those
assigned to the currently logged in user. If the security area of the target block matches one security
area defined in the Recipe user account, the recipe value downloads. Otherwise, the value is not
written to the database.
NOTE: An unsigned write occurs when a database tag is configured for electronic signature, but you
write a value directly to that tag during a recipe download without capturing a signature. If you are
working in a secure environment with the Electronic Signature option enabled, you must be aware of
the impact of unsigned writes to the process database. Unsigned writes can originate from recipe
downloads. Refer to the Implications of Database Writes With Electronic Signature section of the
Using Electronic Signatures manual for detailed information.
The security system also allows recipes to be uploaded regardless of who, if anyone, is logged in
currently. Be aware that using "RECIPE" as a domain user account is not supported in the Proficy iFIX
product. If you do attempt to use RECIPE as a domain user name, you will be able to download a
recipe on a SCADA node, but not on a View node.
For more information on creating a Recipe user account, refer to the section Creating a Recipe User
Account in the Implementing Security manual.
IMPORTANT: iFIX security loads the Recipe user account into memory the first time a recipe is
downloaded from a node. If you modify this account, the node continues to use the account in memory.
To force the node to re-read the new version of the Recipe user account, log out the current user, log
in with the Recipe user account, and then log out again. Once you log out of the Recipe user account,
the current user can log in again. Alternatively, you can force the node to re-read the Recipe user
account by shutting down and restarting iFIX.
81
Creating Recipes
Each of these programs allows you to specify command line parameters that allow you to start each
program with preset values.
You can specify command line parameters in the Task Configuration dialog box of the SCU. This
dialog box enables you to configure which programs iFIX automatically starts. Refer to the Setting up
the Environment manual for more information on this dialog box.
You can also specify command line parameters using the Program block's RUNTASK command in the
Proficy iFIX Database Manager, using the Command Language Editor in FIX Desktop Draw, or using
the Shell function in a Visual Basic for Applications (VBA) script.
When using command line parameters with the Program block or in the Command Language Editor,
use the following general syntax:
To create an upload script, define a variable called upload in place of the download variable and
substitute the reference to RCPDOWN with RCPUP as follows:
Under Windows, you can also specify a command line parameter using the operating system's Run
command. To learn how to use this command, refer to your Windows documentation.
If you mistype the command line for the Recipe Download and Recipe Upload system tasks, the
programs abort. On the other hand, if the command line for the Recipe Builder contains errors, a blank,
untitled recipe opens.
The remainder of the chapter describes each command line parameter. Refer to these sections for more
information.
82
Creating Recipes
Syntax
/bbatch_size
Recognized by
The Recipe Download program.
Description
The Batch Size parameter allows you to specify the batch size for a master recipe. The Recipe
Download program uses the value specified with the parameter to calculate the values that it
downloads in place of the batch size stored in the recipe.
This parameter can only be used with master and master text recipes and cannot be used in a recipe
that contains override values.
Syntax
/ccontrol_recipe
Recognized by
All recipe programs.
Description
The Control Recipe parameter allows you to specify the name of the control recipe you want to use
with a recipe program. The exact function of the parameter depends on the recipe program.
Recipe Builder Automatically opens the specified control recipe and displays it in the
spreadsheet.
Recipe Upload program Uploads the specified control recipe from the database.
83
Creating Recipes
Syntax
/e
Recognized by
The Recipe Download and Recipe Upload programs.
Description
The Error File parameter enables the Recipe Download or Recipe Upload programs to record in an
error file the tagname of any recipe item that does not upload or download. The error file is a text file
and by convention is named recipe.RCE. The error file for master recipes resides in the Master Recipe
path. The error file for control recipes resides in the Control Recipe path.
It is strongly recommended to use this parameter whenever you upload or download a recipe.
NOTE: Each upload or download of a recipe overwrites the error file when the Error File parameter
is used.
Syntax
/ffilename
Recognized by
All recipe programs.
Description
The Command Line File parameter enables you to specify a list of command line parameters in a text
file called a command line parameter file. The parameters included in the file are treated as if you
entered them on the command line. This allows you to enter very long command lines.
You can create parameter files using a text editor. The name of the parameter file can be any valid 8.3
file name; however, the Recipe Package assumes the parameter file you specify resides in the Local
path. If the file resides in a different path, you must include the complete path along with the file name.
The following examples illustrate this.
84
Creating Recipes
RCPUP /fC:\BEER.TXT
Notice in the first example, the Recipe Download system task reads the file BEER.TXT from the Local
path for its command line parameters. In the second example, the Recipe Upload task reads the same
file from the root directory.
The Command Line File parameter cannot be used with any other parameters. Similarly, you cannot
include the Command Line File parameter in the file specified.
Both of these examples cause an error message box to appear. If the Recipe Upload or Recipe
Download system tasks had been used instead, the error would appear in the audit trail as an aborted
upload or download.
Syntax
/gtag_group_filename
Recognized by
The Recipe Download and Recipe Upload programs.
Description
The Tag Group parameter enables you to temporarily change the tag group assignment of a master
recipe. When specified, the Recipe Download or Recipe Upload programs use the set of tags from the
specified file instead of the tag group assigned to the recipe.
This parameter can only be used with master and master text recipes.
Batch ID Parameter
Syntax
/ibatch_id
Recognized by
The Recipe Download program.
85
Creating Recipes
Description
The Batch ID parameter allows you to specify the batch ID to include in a recipe message when the
audit trail is enabled. A batch ID can be up to 10 alphanumeric characters and is recorded in the recipe
message when you download a recipe.
Syntax
/mmaster_recipe
Recognized by
All recipe programs.
Description
The Master Recipe parameter allows you to specify the master recipe you want to use with a recipe
program. The exact function of the parameter depends on the recipe program.
Recipe Builder Automatically opens the specified master recipe. If the Recipe Builder
automatically starts up with the Recipe Operations window, the parameter is
ignored. Instead, the Recipe Builder opens a blank, untitled recipe.
NOTE: If the Recipe Builder is already running, this parameter is ignored.
Recipe Upload Uploads the specified master recipe from the database.
program
Syntax
/rremarks
86
Creating Recipes
Recognized by
The Recipe Download program.
Description
The Download Remarks parameter enables you to include download remarks in a recipe message when
the audit trail is enabled. The remarks you include can be up to 30 alphanumeric characters and are
included in a recipe message when the recipe downloads.
Syntax
/xmaster_text_filename
Recognized by
The Recipe Builder and Recipe Download program.
Description
The Master Text Recipe parameter allows you to specify the master text recipe you want to use with a
recipe program. The exact function of the parameter depends on the recipe program.
Recipe Builder Automatically opens the specified master text recipe and displays it in the
spreadsheet. If the program automatically starts up in the Recipe Operations
window, this parameter is ignored. Instead, the Recipe Builder opens a blank,
untitled recipe.
Syntax
/ycontrol_text_filename
87
Creating Recipes
Recognized by
The Recipe Builder and Recipe Download program.
Description
The Control Text Recipe parameter allows you to specify the control text recipe you want to use with a
recipe program. The exact function of the parameter depends on the recipe program.
Recipe Builder Automatically opens the specified control text recipe and displays it in
the spreadsheet.
Recipe Download Downloads the specified control text recipe to the database.
program
Override Parameters
Syntax
variable = value
Recognized by
The Recipe Download program.
Description
An override parameter enables you to temporarily override a variable's formula. While the Recipe
Download program does not limit you to the number of override parameters you can include, the
command line can only be 128 characters. To use a command line longer than 128 characters, specify
the override parameters in a text file and download these values with the Command Line File
parameter.
#TEMP=65
88
Creating Recipes
Batch ID Parameter x
Override Parameter x
File Format
Master text and control text recipes share the same format and have the following general format:
89
Creating Recipes
• File header
• Recipe header template
• Recipe header
• Recipe item template
• List of recipe items
File Header
The first line of each master text or control text recipe is a file header. This header includes the date
and time the recipe was created, node and logged in user that created the recipe, and the binary recipe
that the text recipe was created from.
;HEADER TEMPLATE:
;Recipe Type
;Units
;Product
;Standard Batch Size
;Batch UOM
;Security Area
;Completion Status
;Download Interlock
;Upload Interlock
;Audit Trail Support
;Tag Group
;Batch Size
Recipe Header
Following the recipe header template is the recipe header section. This section begins with the
following line:
[header]
90
Creating Recipes
Information from the Recipe header fields and certain dialog boxes immediately follows this line.
These fields appear in the same order as the recipe header template shown above. Each field is on its
own line and ends with a comma. If the field is blank, the line in the recipe contains only the comma.
If you edit a text recipe, you can omit any information you want but the commas must be included, as
shown in the above example.
;ITEM TEMPLATE:
;Identifier
;Formula
;Calculated Value
;Override Value
;Description
;UOM
;Override Low Limit
;Override High Limit
;Verify
[item #]
where # is row number of the item in the spreadsheet. Immediately following this line is the recipe
item or recipe variable information. The order of this information matches the recipe item template
shown above. Each field is on its own line and ends with a comma. If the field is blank, the line in the
recipe contains only the comma.
91
Creating Recipes
[ITEM 2]
#Yeast,
#Lbs_Per_Barrel*#STD_BATCH
150.0
,
,
,
RESTRICTED,
RESTRICTED,
OFF
If you edit the text recipe, you can omit any information you want but the commas must be included.
• Each line in the file can be up to 256 characters. The Recipe Builder ignores any extra
characters beyond that limit.
• Specific characters have a special meaning when used in a master text or control text recipe.
The following table lists these characters.
; (semicolon) Start a comment. The Recipe Builder ignores all characters following the
semicolon to the end of the line. Comments can appear anywhere in the text file.
92
Creating Recipes
\ (back slash) Cancel the meaning of a special character. For example, the Recipe Builder
treats the following text as a comma:
\,
For example, to have the value 9,999 appear in the Standard Batch Size field,
enter the following in the text file:
9\,999
Recipe Files
The following table lists the types of files available in the Recipe Package, the extension for each file
type and the path each file resides in.
Error file RCE Master Recipe path (when working with a master recipe) or
Control Recipe path (when working with a control recipe)
Recipe report RCR Master Recipe path (when working with a master recipe) or
Control Recipe path (when working with a control recipe)
93
Creating Recipes
Troubleshooting
The following table lists the messages that the Recipe Builder displays. Along with the message, the
response to the error or the message's meaning is included. When user action is required, be sure to
select the OK button on the message box to acknowledge you have read the message before taking the
recommended action.
Are you sure you want to clear The Recipe Builder is about to delete all the values in the
all overrides? Override Value column of the recipe. Select the Yes button to
delete these values or the No button to abort the procedure.
Are you sure you want to The Recipe Builder is about to delete the recipe recipe_name
delete recipe recipe_name? and all the files associated with it. Select the Delete button to
delete these files or select the Cancel button to abort the
procedure.
Bad arccosine expression The Recipe Builder is attempting to calculate the arccosine of a
(operand < -1 or > 1?) number that is greater than one and less than negative one.
Retype the formula using a value that is between 1 and -1.
Bad arcsine expression The Recipe Builder is attempting to calculate the arcsine of a
(operand < -1 or > 1?) number that is greater than one and less than negative one.
Retype the formula using a value that is between 1 and -1.
Bad audit trail support option You opened a text recipe with an invalid entry in the audit trail
field. Valid entries are: No Audit Trail, Summary Audit Trail,
and Detailed Audit Trail. Modify the text recipe using the
guidelines in the section Editing a Text Recipe.
Bad base-10 log expression The Recipe Builder is attempting to calculate the base 10 log of
(operand <=0?) a number that is less than one. Retype the formula using a value
that is greater than or equal to one.
Bad division expression The Recipe Builder is attempting to divide two numbers.
(divide by zero?) However, the divisor is invalid and may equal zero. Retype the
formula using a value for the divisor that is non-zero.
Bad natural log expression The Recipe Builder is attempting to calculate the natural log of a
(operand <= 0?) number that is less than or equal to zero. Retype the formula
using a value that is greater than zero.
94
Creating Recipes
Bad square root express The Recipe Builder is attempting to calculate the square root of a
(operand < 0?) negative number. Retype the formula using a value greater than
or equal to zero.
Can't delete Recipe file The Recipe Builder cannot delete the recipe file, filename. The
filename. Do you want to file may have one or more attributes set to prevent deletion or
continue deleting the files for may be in use (for example, from a file server). Select the Yes
this recipe? button to continue deleting recipe files or select the No button to
stop deleting files.
Can't open display format file While starting, the Recipe Builder could not locate its display
format file, DEFAULT.RFT. The file may not exist or may have
been renamed. To create the file, customize the display format as
needed and save it in the Local path.
Cannot display the Security The Recipe Builder is unable to display the list of available
Areas list security areas. The SANAMES.CFG file (which includes the list
of security area names) may be damaged or renamed. Consult
your system administrator before proceeding.
Cannot fetch data due to bad The Recipe Builder cannot upload from the database because it
node:tag.field cannot read from the requested tagname. The block in memory
may be corrupt or there may be a communications problem. Try
reloading the database and, if the block resides on a remote
node, make sure network communications are functioning
properly.
Cannot open a non-recipe file The Recipe Builder cannot open the specified file because it is
not a recipe or does not have a recognizable extension. For a list
of recipe extensions, refer to the chapter Recipe Files.
Cannot open clipboard The Recipe Builder is unable to locate or use the system
clipboard file. The file may have been renamed or is corrupt.
Cannot read data from The Recipe Builder cannot upload data from the database. There
database may be a communications problem or the database in memory
may be corrupt. Try reloading the database and, if the block
resides on a remote node, make sure network communications
are functioning properly.
Cannot read from clipboard The Recipe Builder is unable to paste data from the system
clipboard. Try copying a single row to the clipboard and pasting
it back into the recipe.
95
Creating Recipes
Cannot save a backup recipe You attempted to save a master backup or a control backup
file recipe. Select a different recipe type and try saving the recipe
again.
Cannot save a non-recipe file The extension you specified does not have a recognizable
extension. For a list of recipe extensions, refer to the chapter
Recipe Files.
Cannot save an untitled recipe You attempted to save a new recipe from the Recipe Operations
file window. Switch to the Recipe Development window and try
saving the recipe again.
Cannot set batch size (reason) You entered a batch size in the Set Batch Size dialog box that:
• Is greater than 9,999,999.0,
• Is less than 0.0000001,
• Contains a negative number, or
• Contains non-numeric data.
• Retype the batch size you want and try again.
Cannot set tag group (Cannot You attempted to delete or re-assign a tag group while the
delete tag group assignment Recipe Builder is substituting tagnames for symbol names. Click
while substitutions are on) the Cancel button on the Assign Tag Group dialog box and then
select Show Symbols from the Window menu. Once this
command is selected, you can delete or re-assign the tag group
assignment.
Cannot set the interlock (Only You entered a field type for the upload or download interlock
F_ fields are allowed) that the Recipe Builder does not allow. Use only F_ fields for
interlock tagnames.
Cannot write to clipboard. The Recipe Builder is unable to copy or cut any data to the
system clipboard. Try copying a single row to the clipboard and
pasting it back into the recipe.
Changing the formula or You are changing an override limit while an override value is in
override limit will clear the effect for the current recipe item or variable. Select the Yes
override value. Continue? button to clear the override value and change the override limit
or select the No button to abort the operation.
96
Creating Recipes
Circular reference detected. You have a set of formulas that reference each other. Modify
one of these formulas so that is contains a numeric or string
constant or references a different variable.
Column is not modifiable. The Recipe Builder was unable to replace any data in the
selected column because it is not modifiable. Select a different
column or modify the display format and make the selected
column modifiable.
Do you want to save this You selected the Exit command before saving any changes to
recipe? the recipe. To save your changes and quit the Recipe Builder,
select the Yes button. To quit without saving any changes, select
the No button. To return to the Recipe Builder without quitting,
select the Cancel button.
Editor spawn failed The Recipe Builder was unable to start the text editor it uses to
create and modify recipe note files. Close one or more
applications and try again. If the problem persists, restart the
computer.
Error number checking this You attempted to enter data into the Calc Val column. This
item: Field cannot be modified column displays the value of a recipe item's or variable's formula
and cannot be modified directly.
Error number checking this You entered a field type that the Recipe Builder does not allow.
item: Only F_ and A_ fields Use only A_ and F_ fields for tagnames you add to the recipe.
are allowed
Error number checking this You attempted to add or delete a recipe item or variable while
item: Recipe is in TAGNAME the Recipe Builder is substituting tagnames for symbol names.
MODE Select Show Symbols from the Window menu and then add or
delete the recipe items and variables you want.
Error reading display format The Recipe Builder attempted to load a display format file that
file, check version contains the wrong version number or has been corrupted.
Recreate the file by customizing the display format and saving it
to a file.
Error number setting this item: You entered a value in the Verify column that the Recipe
Bad verify option (on or off) Builder does not recognize. Type ON or OFF in any cell of this
column.
97
Creating Recipes
Error number setting this item: You attempted to add more than 850 recipe items. Only 850
Cannot add node.tag.field to recipe items can be added to one recipe.
recipe. Has maximum number
The message also appears when you search a recipe with 850
been reached?
items because the Recipe Builder creates a temporary entry in
the spreadsheet during the search. Since all rows are filled, the
search generates the error. To avoid the message, remove one of
the recipe items.
Error number setting this item: You attempted to create a variable with a name that is reserved
Cannot use a keyword for a for a keyword. Enter a different name and try again. For a list of
variable name reserved keywords, refer to the Recipe Keywords table.
Error number setting this item: You attempted to create a variable or a recipe item with a name
Identifier is already defined in that is already in use. Enter a different name and try creating the
the recipe item again.
Error number setting this item: You entered a formula that does not conform to the syntax that
Improperly formed formula the Recipe Builder recognizes. Retype the formula using the
guidelines in the chapter Working with Formulas.
Error number setting this item: You entered an override limit that does not conform to the
Improperly formed override syntax the Recipe Builder recognizes. Refer to the section
limit Entering Override Limits and retype the override limit.
Error number setting this item: You entered an override value that does not conform to the
Improperly formed override syntax the Recipe Builder recognizes. Make sure any string you
value enter is enclosed in quotes and retype the override value.
NOTE: Formulas, keyword, and variables cannot be entered
into the Override Value column.
Error number setting this item: You entered a relative percentage or a relative difference
No calculated value to base override limit for a recipe item or variable. However, the Recipe
override limit on Builder cannot calculate the range of acceptable values for this
column because the formula of the current recipe item or
variable is empty or invalid. Complete or correct the item's
formula and then enter an override limit.
Error number setting this item: You attempted to enter an override value when both override
Override value cannot be limits are set to RESTRICTED. To change the value of the
modified recipe item, either change an override limit and then enter an
override value or change the item's formula.
98
Creating Recipes
Error number setting this item: You entered an override value that is greater than the override
Override value is above the high limit allows. Enter a lower override value to try again.
override high limit
Error number setting this item: You entered an override value that is less than the override low
Override value is below the limit allows. Enter a higher override value to try again.
override low limit
Error number setting this item: You entered a mark of punctuation for a variable name that the
Variable name must start with Recipe Builder does not recognize. Retype the variable name
# and contain only starting it with a number sign (#) followed by no more than 14
alphanumeric and underscore alphanumeric or underscore (_) characters.
characters
Error number setting this item: You entered a variable name that is over 15 characters, including
Variable name too long the number sign (#). Shorten and retype the variable name.
Error while reading tag group The tag group file assigned to the recipe is unreadable. Select a
file different tag group or recreate the tag group you want to use. To
create a tag group, refer to the chapter Using the Tag Group
Editor.
Expression is too deeply You have a set of formulas that reference variables chained over
nested 14 rows. Modify the formulas so that they reference few
variables.
Invalid entry. Please enter the You selected a control recipe from the Open Control Recipe
name of an item in the list dialog box that does not exist or could not be found. Either copy
box. the control recipe into the Control Recipe path or select a recipe
from the list box.
Invalid item number You entered a negative number or nonnumeric data in the Go To
dialog box. Retype the row number you want to jump to and try
again.
Keyword is not defined in The keyword in the formula does not have a value. Refer to the
recipe section Understanding Recipe Keywords to learn how to set the
value of each keyword.
99
Creating Recipes
Mismatched datatype Either you entered a string constant into the formula or override
value column when the associated tagname references an F_
field or you attempted to set an absolute, percentage, or
difference override limit for a string constant. To correct this,
enter a formula or override value that evaluates to a numeric
value and then enter the override limit.
No column selected You selected a button on the Search and Replace dialog box
without first selecting a column. Select the column you want to
search and then click a button on the dialog box to search for or
replace data in the recipe.
No formula to evaluate You have a formula that references a variable with no value.
Modify the formula of the appropriate variable so that the
Recipe Builder can calculate it.
No item selected in error list You selected the Go To Item button from an error list dialog box
without first selecting an item in the list box. Select an error in
the dialog box and then click the Go To Item button.
No tag group assignment or You selected the Show Tagnames command before creating or
tag group file does not exist assigning a tag group to the recipe. To create the tag group, refer
to the chapter Using the Tag Group Editor. To assign the tag
group, select Assign Tag Group from the Options menu and
enter the name of the tag group in the dialog box that appears.
No value entered for override You selected an absolute, a percentage, or a difference override
limit limit from the Override dialog box without entering a value for
the type of limit you selected. Complete the field associated with
the type of limit you selected and try again.
Note file [filename] not found. The Recipe Builder could not locate the note file for the current
Create it? recipe. Select the Yes button to create the file and start Notepad.
Select the No button to return to the recipe.
100
Creating Recipes
Paste error for `tagname': text You are pasting a recipe item or variable into the recipe that may
Keep this item, discard it or already exist, does not have a valid formula, or contains text in
undo the paste? the Verify column other than YES or NO. Select the Keep Item
button to retain the valid parts of the recipe item being pasted or
select the Discard Item button to prevent the entire recipe item
from being pasted into the recipe. To cancel the entire operation,
select the Undo Paste button.
Precheck did not complete The Recipe Builder could not complete its examination for
(reason) errors during an upload or download. Restart your computer and
try again.
RCP.INI contains a bad The Recipe Builder's startup file, RCP.INI, contains a
verification time-out value; verification time-out value that:
using default
• Is greater than 65535,
• Is less than 1,
• Contains a negative number, or
• Contains non-numeric data.
Because the time-out value is invalid, the Recipe Builder uses its
default value of 30 seconds. To change the time-out value, edit
RCP.INI using the instructions in the section Changing the
Verification Time-out Interval.
Recalculation failed at Item The Recipe Builder cannot calculate the value of the formula in
#row_number. Error number: row row_number. Examine this formula and make sure it
text conforms to formula syntax. For more information about
formulas, refer to the chapter Working with Formulas.
Recipe has no items You attempted to upload or download while the spreadsheet was
empty. Either open a recipe or enter the tagnames you want to
upload from or download to.
Replace text? The Recipe Builder is about to replace the specified search string
with the specified replacement string. Select the Yes button to
replace each occurrence of the search string in the selected cell.
Select the All button to replace each occurrence of the search
string in the selected column. Select the No button to stop
replacing data.
Row is beyond end of recipe You entered a row number in the Go To dialog box that was
greater than the last row in the spreadsheet. Retype the row
number you want to jump to and try again.
101
Creating Recipes
Search string was found x The Recipe Builder is about to replace the specified search string
times. Replace each one? with the specified replacement string. However, it located
multiple occurrences of the search string. Select the Yes button
to replace each occurrence of the search string in the selected
cell. Select the All button to replace each occurrence of the
search string in the selected column. Select the No button to stop
replacing data.
Tag group file does not exist The Recipe Builder cannot locate the specified tag group file.
Either the tag group does not exist or does not reside in the
Picture path. Try copying the file to this path or create it with the
Tag Group Editor.
Tagname does not exist. The Recipe Builder cannot locate the tagname you want to add
Continue? to the recipe in the specified database. Select the No button to
abort the operation or select the Yes button to add the tagname.
If you add the tagname, make sure you add the block to the
database or you will be unable to download or upload the recipe.
Text not found The Recipe Builder could not find the specified search string in
the selected column.
The column width must be You entered a report column width that:
between 1 and 100.
• Is greater than 100,
• Is less than 1,
• Contains a negative number, or
• Contains nonnumeric data.
Retype the column width you want and try again.
The editor is already running You selected the Notes command while the text editor used to
create and modify recipe note files was already in use. Select the
OK button on the message box; the Recipe Builder automatically
switches you back to the text editor. Modify your recipe note
files as needed. To quit the text editor and return to the Recipe
Builder, select the Exit command from the File menu.
There are recipe items with You are attempting to scale the batch size while one or more
OVERRIDE VALUES. override values are in use. Select the Continue button to proceed
or select the Cancel button to abort the operation. To clear all
overrides and scale the batch size, select the Clear All button.
102
Creating Recipes
This change will destroy this You are deleting the current recipe identifier. This results in the
recipe item. Continue? deletion of the entire recipe item or variable. Select the Yes
button to delete the recipe item or variable. Select the No button
to abort the operation.
This column can't be You attempted to enter data into a column that is non-
modified. Check the display modifiable. To make the column modifiable, refer to the section
format. Modifying a Column. After making the column modifiable, try
entering data into the column again.
Unauthorized access You attempted to start the Recipe Builder without the security
attempted rights to the Recipe Development or the Recipe Operations
windows. Consult your system administrator before proceeding.
Using internal display format The Recipe Builder is using the default display format because it
could not find the file DEFAULT.RFT. To load this file on
startup, make sure the file resides in the Local path and restart
the Recipe Builder.
Variable is not defined in You entered a variable name in the formula column that is not in
recipe the Identifier column. Create the variable by entering its name in
a blank cell of the Identifier column.
You can only switch to the You attempted to display the Recipe Operations window with an
Operations window with a untitled recipe, a master recipe, a master text recipe, or a backup
CONTROL recipe recipe open in the spreadsheet. Either open a control recipe or
save the current recipe as a control recipe before switching to the
Recipe Operations window.
You can open only Control You specified a command line parameter to open a master recipe
Recipes in the Operations or a master text recipe when the Recipe Builder starts. However,
window the Recipe Builder is set up to automatically display the Recipe
Operations window. To display the specified recipe, select the
OK button to open the Recipe Operations window and switch to
the Recipe Development window and open the recipe. To set up
the Recipe Builder to automatically display the Recipe
Development window, switch to the Development window and
select the Start in DEV Window from the Window menu.
You do not have Security The Recipe Builder attempted to display the Recipe
Privileges to run RECIPE Development window. However, your user account does not
DEVELOPMENT feature contain the necessary privileges to display this window. Consult
your system administrator before proceeding.
103
Creating Recipes
You do not have Security You attempted to download a recipe without the necessary
Privileges to run RECIPE security rights to do so. Consult your system administrator
DOWNLOAD feature before proceeding.
You do not have Security The Recipe Builder attempted to display the Recipe Operations
Privileges to run RECIPE window. However, your user account does not contain the
OPERATIONS feature necessary privileges to display this window. Consult your
system administrator before proceeding.
You do not have Security You attempted to save a recipe without the necessary security
Privileges to run RECIPE rights to do so. Consult your system administrator before
SAVE feature proceeding.
You do not have Security You attempted to create a report or save a master text or control
Privileges to run RECIPE text recipe without the necessary security rights to do so. Consult
TEXT OUTPUT feature your system administrator before proceeding.
You do not have Security You attempted to upload a recipe without the necessary security
Privileges to run RECIPE rights to do so. Consult your system administrator before
UPLOAD feature proceeding.
You do not have Security The Recipe Builder cannot complete the operation you selected
Privileges to run this RECIPE because you do not have the necessary application feature in
feature your user account. Consult your system administrator before
proceeding.
You must have at least one You attempted to remove all the columns from the display
column displayed format or from a report. The Recipe Builder requires at least one
column for display formats and reports.
Your untitled recipe report You are creating a report for an untitled recipe. To save the
will be saved to "untitled.rcr". report with the name UNTITLED, select the Yes button. To
Continue? abort the process select the No or Cancel buttons.
NOTE: If you subsequently name the recipe, the Recipe Builder
will not be able to locate the report you created. To enable the
Recipe Builder to locate the report, create a new report or
rename the existing one so that the recipe name and the report
name match.
104
Creating Recipes
If the recipe is not complete, it displays an error message box with one of the following lines of text:
where text is the reason that the upload or download aborted. These messages also appear in the error
file when uploading or downloading a recipe with a Program block or a VBA script.
The following table lists the reasons for the aborted upload or download and the response to the error.
Message Action
bad completion status flag The analog block defined as the completion status indicator is
undefined or cannot be read from or written to. Make sure the
block exists in the database and that the block is in a mode that
allows it to be read from and written to (for example, Analog
Input blocks should be in Manual mode).
bad error file name One of the following command line parameters was not
specified:
• Control Recipe parameter
• Master Recipe parameter
• Master Text Recipe parameter
• Control Text Recipe parameter
Include the appropriate command line parameter and try again.
bad or active interlock The upload or download interlock specified for the recipe is
active or does not exist. Make sure the interlock is inactive
before you try again. If the specified tagname does not exist,
create the necessary block in the database or specify a different
tagname.
105
Creating Recipes
Message Action
bad override parameter The Recipe Builder does not recognize the command line
parameter specified in a script or a Program block. Refer to the
chapter Command Line Parameters for a list of recognized
command line parameters and modify the script or Program
block as needed.
bad override parameter variable The variable name specified in the command line does not exist
name in the recipe. Re-type the command line and try again.
cannot change batch size in The Batch Size parameter was specified in the command line
control recipe while downloading a control or control text recipe. This
command line parameter can only be used with master and
master text recipes. Either download a master recipe or omit the
Batch Size parameter from the command line and try again.
cannot change tag group in The Tag Group parameter was specified in the command line
control recipe while uploading or downloading a control or control text
recipe. This command line parameter can only be used with
master and master text recipes. Either upload or download a
master recipe or omit the Tag Group parameter from the
command line and try again.
cannot open parameter file The parameter file specified in the command line does not exist
or could be opened. By default, the Recipe Package assumes
the file resides in the Local path. Either create a parameter file
and save it in the Local path or copy the parameter file to this
path.
cannot open recipe file The Recipe Builder cannot open the specified recipe. Make
sure you specified the name of the recipe in the command line
and try again. Also make sure the recipe exists in the correct
recipe path. If it does not, create it.
cannot read recipe file The Recipe Builder cannot read the specified recipe. Try
specifying the backup version of the recipe.
cannot recalculate recipe The Recipe Download or Recipe Upload system task cannot
recalculate the formula of each recipe item. Make sure the
syntax of each formula is valid. Refer to the chapter Working
with Formulas for information on formulas.
106
Creating Recipes
Message Action
cannot set batch ID The Recipe Package attempted to set the Batch ID. However, it
encountered a memory or internal error. Exit from any
applications not in use and restart the Recipe Builder.
cannot set batch ID on upload The Batch ID parameter was specified to the Recipe Upload
system task. This task does not recognize this command line
parameter. Omit the parameter and try again.
cannot set batch size The Recipe Download system task cannot set the current
recipe's batch size because the batch size:
• Is greater than 9,999,999.0,
• Is less than 0.0000001,
• Contains a negative number, or
• Contains non-numeric data.
Retype the batch size you want and try again.
cannot set batch size on upload The Batch Size parameter was specified to the Recipe Upload
system task. This task does not recognize this command line
parameter. Omit the parameter and try again.
cannot set batch size with The Recipe Download system task cannot scale the recipe with
overrides override values in effect. Click the Clear Overrides button to
remove all overrides and try downloading the recipe again.
cannot set override value The Recipe Download system task cannot set one or more
override parameters. The values specified are out of range, do
not conform to a syntax that the Recipe Download task
recognizes, or are the wrong data type (for example, entering
string data for a F_ field). Verify all the values specified and try
to download the recipe again.
cannot set overrides on upload One or more override parameters were specified to the Recipe
Upload system task. This task does not recognize these
command line parameters. Omit the parameters and try again.
cannot set remarks The Recipe Package attempted to set the download remarks for
the specified recipe. However, it encountered a memory or
internal error. Exit from any application not in use and restart
the Recipe Builder.
107
Creating Recipes
Message Action
cannot set remarks on upload The Download Remarks parameter was specified to the Recipe
Upload system task. This task does not recognize this command
line parameter. Omit the parameter and try again.
cannot set tag group The Recipe Download system task cannot locate the tag group
assigned to the recipe or specified by the Tag Group parameter.
Make sure the tag group exists in the directory defined by the
Picture path.
cannot upload to a text file The Master Text Recipe or Control Text Recipe parameter was
specified to the Recipe Upload system task. Master and Control
Text recipes cannot be uploaded using this task. Upload the
recipe from the Recipe Builder instead.
cannot use parameter file with The Command Line File parameter was included in the
other parameters command line with other command line parameters. Delete the
Command Line File parameter or remove the other command
file parameters from the command line.
cannot write recipe file The specified recipe was uploaded but cannot be saved. Make
sure there is enough space on the disk to save the recipe and try
again.
missing batch size The Batch Size parameter was specified without including a
batch size. Include the batch size and try again.
missing parameter file name The Command Line File parameter was specified without an
accompanying file name. Include the name of the parameter file
and try again.
missing recipe file name One of the following command line parameters was specified
without an accompanying recipe name:
• Control Recipe parameter
• Master Recipe parameter
• Master Text Recipe parameter
• Control Text Recipe parameter
Include the name of the recipe you want to upload or download
and try again.
108
Creating Recipes
Message Action
missing remarks The Download Remarks parameter was specified without any
accompanying text. Include the appropriate text and try again.
missing tag group file name The Tag Group parameter was specified without a tag group
file. Include the name of the tag group file to use and try again.
No RECIPE user found. Run The Recipe user account does not exist on the node you are
the Security Configuration downloading from. Consult your system administrator before
program and add a user called proceeding.
`RECIPE' to this node and all
referenced SCADA nodes
not a recipe file type The file specified is not a recipe. Re-enter the name of the
recipe to upload or download and try again.
If you are using the Recipe Upload system task, make sure it is
a master or control recipe. The Upload task cannot upload
master text or control text recipes.
recipe path not found The Recipe Package cannot locate the recipe path specified in
the SCU. Make sure the master and control recipe paths exist or
change the recipe paths to point to the directories where your
master and control recipes reside.
undefined recipe item The formula for one or more recipe items cannot be evaluated
or the identifier has not been entered. Complete the identifier
and formula of each item and try uploading or downloading the
recipe again.
unknown parameter The Recipe Package does not recognize the command line
parameter specified in a script or a Program block. Refer to the
chapter Command Line Parameters for a list of recognized
command line parameters and modify the script or Program
block as needed.
The following table lists the common messages that appear in this dialog box. Along with the message,
the response to the error or the message's meaning is included.
109
Creating Recipes
Message Action
Bad value You are downloading a value to a field that cannot be written to or the
value being written is invalid. Make sure the field can be written to and
that the field exists.
Cannot write to this You are downloading a value to a field that cannot be written to. Try
field downloading to a different field.
Current block mode You are downloading to a database block that is in Automatic mode.
does not allow writes Put the block in Manual mode and download the recipe again.
Field name returns You are uploading or downloading a recipe with one or more symbols
wrong data type defined and no tag group assignment. Assign the appropriate tag group
and try uploading or downloading the recipe again.
Field's value not The Recipe Builder cannot upload the recipe or verify the specified
known recipe item because it cannot read a value from the specified block.
Make sure SAC and your I/O driver are running. Also make sure the
block is on scan.
Illegal option, Please The data type of the formula does not match the specified field. For
re-enter example, you may have specified a string constant for a F_ field. Either
change the formula or the field you are downloading to.
Tagname is not defined Either the specified tagname cannot be written to or it may not exist.
Verify that the tagname exists and can be written to.
The field cannot be You are downloading to a field that cannot be written to or the
written due to security necessary security area rights are not assigned to the Recipe user
or field access account on the target SCADA server. Consult with your system
restrictions. administrator and add the security areas of the block you are
downloading to the Recipe user account.
Value out of range You are downloading a value that is greater than the block accepts.
Change the formula or override value of the specified recipe item and
try downloading the recipe again.
110
Creating Recipes
NOTE: The Recipe Builder requires the .TGE file format when using tag group files. As such, the
Recipe Builder uses the FIX32 Tag Group Editor (TGE.EXE). Be aware there is another Tag Group
Editor (TagGroupEditor.exe) for creating tag groups in iFIX pictures in .TGD file format. The Recipe
Builder cannot use these newer .TGD files.
fixpath\TGE.EXE
For example, if the Tag Group Editor resides in the default Base path, C:\Program
Files\Proficy\Proficy iFIX, you could start the program by entering the following text in the Run dialog
box:
When the program starts, the Tag Group Editor displays a blank, untitled spreadsheet.
Alternatively, when a tag group file is already open, you can create a new tag group file by selecting
the New command. When you select this command, the Tag Group Editor closes the active tag group
file, prompts you to save any unsaved changes, and then displays a blank spreadsheet.
111
Creating Recipes
Menu Bar — contains menus that control the file input, output, and editing commands for the
spreadsheet. These menus include the File menu, the Edit menu, the Font! menu, and the
Help menu. The Font! menu lets you set the font used to display text in the Tag Group
Editor.
Menu Bar Commands — contains the commands necessary for creating, managing, and
formatting your tag group files. The following table summarizes these commands.
Edit
Search and Replace Searches substitution column for specific text and
Substitutions... optionally replaces it with another.
Symbol — specifies the text that is replaced by a substitution string. Each symbol can be
alphanumeric text up to 31 characters long.
Substitution — specifies the text that replaces a symbol. This field can be up to 95 characters
long and is usually a tagname. It is recommended that you use the fully qualified name of
any tag for substitution in a spreadsheet.
112
Creating Recipes
Description — describes the function of the tag group. The description field is optional and can
contain up to 71 characters, including special characters, such as -(*)&+% and spaces.
To specify the tag group file to open, enter the name of the tag group file you want to open in the File
Name field and click OK. The Tag Group Editor opens the specified tag group file.
If you prefer, you can double-click the tag group file you want to open from the File Name list box.
The Tag Group Editor opens the specified tag group file. The File Open command can also be useful
as a tool that lists all available tag group files.
NOTE: You can also import a tag group report (*.CSV file) into a tag group spreadsheet using the
Open command. Refer to the section Importing and Exporting Tag Group Reports for more
information on working with tag group reports.
If you made changes to the old tag group file and have not saved them, the Tag Group Editor prompts
you with the standard "Save Changes?" dialog box. Select Yes to save your changes to disk. If you do
not want to save your changes, select No. To continue working with the tag group file, select Cancel.
NOTE: The Tag Group Editor does not automatically create back-up files. If you need back-up files,
you must create them manually.
NOTE: When you enter tagnames into the substitution column, iFIX does not check the format or
validity of the tagnames. Be sure to double-check the format and spelling of all tagnames entered into
113
Creating Recipes
When creating a second tag group file, you do not have to list the symbols in the exact order as the first
tag group file. However, they must have identical symbol names for the correct substitutions to take
place. For example, if one file represents the digital limit switch for the fuel intake valve of furnace A
as FIVLIMITSWITCH, then the symbol FIVLIMITSWITCH of furnace B's tag group file must
represent the same type of digital limit switch.
The following sections describe how to enter data into the Symbol, Substitution, and Description
columns of the spreadsheet.
Defining Symbols
Symbols are place holders for tagnames in recipes. When you enter a symbol into any of these
applications, you must type a question mark prior to the symbol name. This allows iFIX to differentiate
tag group symbols from ordinary text. However, when defining symbols in the symbol column of the
Tag Group Editor, you only type the symbol name.
For example, to use a place holder called "TEMPERATURE" to represent the tagnames of three
similar temperature output blocks, type the following into the symbol column:
TEMPERATURE
If you want to implement this symbol into a recipe, type the following into the Identifier column of a
recipe spreadsheet:
?TEMPERATURE
When iFIX reads text in this format, it identifies the text as a tag group symbol and replaces each
occurrence of the symbol with the correct substitution.
NOTE: You do not have to define a symbol's substitution before entering another symbol, but
you cannot enter data into a substitution cell without first defining its symbol. For example,
you can enter all of your symbols into the spreadsheet as a first step, and then enter their
substitutions as another step.
If you plan to import or export comma separated files, you should not use the word SYMBOL
as a tag group symbol name. Refer to the section Importing and Exporting Tag Group
Reports for more information on working with tag group reports and comma separated files.
114
Creating Recipes
Defining Substitutions
Substitutions are tagnames that replace symbols in recipes. When typing a substitution, it is important
to keep in mind that the Tag Group Editor simply replaces the exact data it finds in the symbol column
with the exact data it finds in the substitution column. Double-check to be sure that the data you enter
in all cells is typed correctly and the tagname is properly formatted.
3. Press ENTER to enter the data into the desired cell. If you have not defined the adjacent
Symbol cell, an error message appears and instructs you to do so first.
Defining Descriptions
The description cell offers a way to describe the function of a specific tagname substitution. The
description field is optional, and is not involved in the functionality of the Tag Group Editor. However,
it can be a powerful tool to help you organize and keep a record of tag groups that you create. It can
also be a useful visual aid when printing a report. Each description cell can contain up to 71
alphanumeric characters.
1. Double-click the cell you want to modify. The Edit Cell Data dialog box appears.
2. Type the correct text into the edit field of the dialog box.
3. Click OK to incorporate the new changes. If you make a mistake, click Cancel to revert to the
original cell data.
115
Creating Recipes
NOTE: You can also use the Edit Cell Data dialog box to delete an entire row from the spreadsheet by
double-clicking any cell in the row you want to delete, deleting all text from the edit field, and clicking
OK.
Deleting a Row
You can delete an entire row from a tag group file by selecting the Delete Row command from the Edit
menu. When you select Delete Row, the symbols, substitutions, and descriptions you delete are
irretrievable.
For this reason, the Tag Group Editor provides a search and replace function that allows you to locate
tagname substitutions quickly by searching the spreadsheet for a specified tagname and replacing it.
1. On the Edit menu, click Search and Replace Substitutions. The Search and Replace Tagnames
dialog box appears.
2. In the Search For field, enter the tagname you want to search for. If you choose, you can use
asterisk wildcard characters (*) to represent one or more characters in the node name or tag
name you are searching for.
3. In the Replace With field, enter the tagname you want to use as a replacement for the tagname
in the Search For field. If you choose, you can use asterisk wildcard characters (*) to
represent one or more characters in the new node name or tag name you want to use.
4. Click Replace to begin the search and replace procedure. A message appears inside the Search
and Replace Tagnames dialog box and reports the number of occurrences that changed. For
example, the following text appears when occurrence is replaced.
1 occurrence(s) changed
When you finish searching for and replacing a tagname substitution, you can return to the spreadsheet
by selecting a cell. The Search and Replace Tagnames dialog box remains on the display until you
deselect Search and Replace Substitutions from the Edit menu or until you close it.
116
Creating Recipes
NOTE: The Search and Replace Substitutions command only functions with Node:Tag substitutions. If
you enter text into either of the Search and Replace fields that is not in Node:Tag format, it prompts
you to enter a valid tagname.
IMPORTANT: iFIX includes two Tag Group Editors: one is for use with pictures and the other is for
use with recipes. The Tag Group Editor discussed in this manual is intended for use with recipes. To
use the Tag Group Editor with pictures, select the Tag Group Editor button from the WorkSpace.
To save an existing tag group file, select Save from the File menu. The updated file writes over any
previously-saved tag group file.
If you are saving a new tag group file, the Tag Group Editor prompts you to enter a name for the tag
group file by displaying the Save As dialog box. Enter a new file name into the File Name field and
select Save. The Save As command can also be used to save a tag group file under a different name or
to create a backup tag group file.
NOTE: You can also report a tag group file using the Save and Save As commands. Refer to the
section Importing and Exporting Tag Group Reports for more information on working with tag group
reports.
1. On the File menu, click Delete. The File Delete dialog box appears.
2. In the File Name field, type the name of the tag group file you want to delete, and click OK. If
you prefer, in the Tag Group list box, you double-click the tag group file to select it. A
confirm deletion message box appears.
3. Click Delete. The Tag Group Editor deletes the specified tag group file.
NOTE: You can also delete tag group reports (*.CSV files) using the Delete command. Refer
to the section Importing and Exporting Tag Group Reports for more information on working
with tag group reports.
117
Creating Recipes
Editor. The Tag Group Editor recognizes files with a .CSV file extension as tag group reports.
Tag group reports have several benefits. A large tag group file can be saved as a tag group report,
opened in a text editor or word processor, and printed as a text file. The printout provides an on-paper
list of all symbols, substitutions, and descriptions defined in the Tag Group Editor spreadsheet. This
list can help you verify your tag groups before you implement them into your SCADA strategy. Tag
group reports also allow you to enter tag group information into an application you are more familiar
with, such as Microsoft Excel or a text editor, and then import this information into the Tag Group
Editor.
If you prefer to use a text editor, you must follow some simple formatting rules to make sure that the
text file is successfully imported into the Tag Group Editor. In general, each line of the text file should
be typed similarly to the following:
In this example, OVENTEMP is the name of a tag group symbol, OVEN1:TOV01.F_CV is the
substitution, and OVEN1 CURRENT TEMPERATURE is the description.
If you are using a text editor, and the name of a symbol, substitution, or description contains a
quotation mark ( " ) or the same list separator defined in the Regional Settings control panel, you must
enclose that item in quotation marks. Also, you must type an extra quotation mark before each
quotation mark within that item. For example, if you are entering a symbol named OVEN"TEMP into
your text editor, you must type "OVEN""TEMP" as your symbol name.
Each line in your text file represents one row when imported into the Tag Group Editor. The
information should always be typed in the same order as it appears in the Tag Group Editor
spreadsheet (symbol, substitution, description). A list separator must be used to separate each
component of the tag group. You must use the same list separator defined in the Number tab of the
Regional Settings control panel. In most cases, this will be a comma ( , ). If you do not want to include
a description, type a list separator after the substitution and leave the rest of the line blank.
The symbols, substitutions, and descriptions that you type into your text file have the same length
limitations as the corresponding component in the Tag Group Editor spreadsheet. Be careful not to
exceed this length; otherwise, when you import a component into the Tag Group Editor that exceeds its
maximum length, a blank space is displayed in the corresponding cell and an error message is
generated.
The Tag Group provides a text file in the Picture path, TGEIMP.ERR, that contains a list of errors that
occurred during the import of a comma separated file. After you import a comma separated file, be
sure to open this file and verify any errors. Note that if that no errors occurred during the import, this
file will not exist.
NOTE: If a row in a comma separated file does not contain at least a symbol, The Tag Group Editor
does not import the entire row of the file.
If you want to include comment statements in your text file, you must enclose each line of the
118
Creating Recipes
comment in brackets ( [ ] ). Information in brackets is not imported into the Tag Group Editor, but
remains in the file to be displayed or printed by a text editor. For example, you may want to include
comments in the text file that display the name of the tag group file, the date the file was created, and
each date that the file is modified.
NOTE: Including comments in your CSV file is optional. Comments and blank lines can be embedded
anywhere within the file. If you save the CSV file from a spreadsheet, such as Microsoft Excel,
comments must start in the first column.
As long as these simple formatting rules are followed, any text file saved with a .CSV extension can be
read into the Tag Group Editor.
1. On the File menu, click Open. Select the directory that contains the tag group report you want
to import from the Directories list box.
2. Select the List Files of Type drop-down box and click the Tag Group Reports (*.CSV) option.
3. From the File Name list box, double-click the name of the report that you want to read in. The
Tag Group Editor imports the specified tag group report into the active spreadsheet.
If you import a tag group report into an existing tag group file, the new information is inserted after the
last row of data in the spreadsheet.
If you open a file and no entries appear in the spreadsheet, the list separator used by the file may be
different from the list separator defined by the computer's Regional Settings control panel. To resolve
this conflict, change the separator in the control panel and open the .CSV file again.
119
Creating Recipes
As the previous figure shows, all data is separated with a list separator and enclosed in quotation
marks. The Tag Group Editor does this as a safeguard even though the only items that require
quotation marks are list separators and other quotation marks. In fact, you can delete the quotations
around any component that does not contain a defined list separator or quotation mark if you want.
NOTE: The tag group report also provides a line with the text SYMBOL, SUBSTITUTION, and
DESCRIPTION. This line is provided for readability only. When importing a report, the Tag Group
Editor ignores any line that begins with the word SYMBOL. If you plan to use reports, do not name
any of your symbols with the word SYMBOL.
1. Open the tag group file (*.TGE) that you want to export.
2. On the File menu, click Save As.
3. Select the Save File as Type drop-down box and click the Tag Group Reports (*.CSV) option.
4. In the File Name field, type a report name and click OK.
120
Creating Recipes
• Go To Dialog Box
• Open Control Recipe Dialog Box
• Override Low/High Limit Dialog Box
• Precheck Error List Dialog Box
• Recipe Mod Log Dialog Box
• Report Column Details Dialog Box
• Report Format Dialog Box
• Set Batch Size Dialog Box
• Window Display Format Dialog Box
Download
The Download field lets you define the tagname or symbol that acts as a download interlock for the
current recipe. When you download a recipe, the Recipe Builder verifies that the interlock is inactive.
If the interlock is active, the download process aborts.
Upload
The Upload field lets you define the tagname or symbol that acts as an upload interlock for the current
recipe. When you upload a recipe, the Recipe Builder verifies that the interlock is inactive. If the
interlock is active, the upload process aborts.
Completion Status
The Completion Status field lets you enter the tagname of an analog block. This block acts as a
completion status indicator. During an upload or download, the Recipe Builder stores a number (from
zero to four) in the block. The meaning of these values is as follows:
0 Is in progress.
121
Creating Recipes
1 Aborted.
Item Description
Summary Audit Trail The Summary Audit Trail button tracks when:
• Changes to master recipes and control recipes are
saved and the name of the logged in user that saved
the recipe.
• A recipe is uploaded or downloaded and the name of
the logged in user that uploaded or downloaded the
recipe.
• An upload or download fails and why.
The Summary Audit Trail button also tracks the text entered into the
Mod Log field on the Recipe Mod Log dialog box.
The Recipe Builder records this information whenever a recipe is
saved, uploaded, or downloaded.
Detail Audit Trail The Detail Audit Trail button tracks the same summary information
that the Summary Audit Trail button does. The Detail Audit Trail
button also tracks the following additional information:
• The recipe item values that were downloaded.
• The variables that were present in the recipe.
• The recipe items that failed to download and why.
No Audit Trail The No Audit Trail button disables the audit trail for the current
recipe.
Security Area
The Security Area field lets you assign a security area to a recipe. You can enter up to 20
alphanumeric characters into this field. Once you assign a security area to a recipe, it can be opened
only if the logged in user has rights to that security area.
122
Creating Recipes
Column Heading
The Column Heading field lets you change the column heading of any column in the spreadsheet or in
a recipe report. You can enter up to 39 characters into this field.
Modifiable
The Modifiable check box controls whether the text in the selected column is modifiable. When you
select the check box, the text is modifiable. When you clear the check box, the text is not modifiable.
Batch ID
The Batch ID field lets you enter an identifier for the download of the current recipe. This identifier
can be up to 10 characters. The text you enter is added to the audit trail, uniquely identifies the
download, and is added to the keyword #BATCH_ID. Entering data into the field is optional.
Download Remarks
The Download Remarks field lets you enter up to 20 characters explaining why the current recipe is
being downloaded. The text you enter is added to the audit trail and is assigned to the keyword
#REMARKS. Entering data into the field is optional.
123
Creating Recipes
The Download/Upload Error List dialog box displays the following items:
Error List
The Error list box displays the upload, download, or verification errors that the Recipe Builder
encountered during an upload or download. Each error is identified by tagname and row number.
To correct an error, use the buttons directly beneath the Error list box.
Go To Item Button
Use this button to move the cell selector to the highlighted tagname in the recipe.
• Select a node from the Node Selection list box, a tag from the Tag Selection list box, a field
from the Field Selection list box, and click OK.
• Type a node, tag, and field combination in the Selection field using the node:tag.field format.
• Use the asterisk wildcard character to filter through the network for a specific node, tag, and
field combination.
NOTE: Only nodes configured in the System Configuration Utility (SCU) appear in the Node Selection
list box.
Filter Fields
The Filter field lets you search for a specific selection in the Node Select, Tag Select, and Field Select
dialog boxes.
124
Creating Recipes
Use the asterisk wildcard character in combination with the Filter button to search for a specific
selection quickly and easily. To search for a tagname, type the search specification in the Filter field
and select the Filter button.
Filter Button
The Filter button lets you search for a specific tagname in the Node Select, Tag Select, and Field Select
dialog boxes.
Use the asterisk wildcard character in combination with the Filter field to search for a specific tagname
quickly and easily. To search for a tagname, type the search specification in the Filter field and select
the Filter button.
Go To Dialog Box
The Go To dialog box lets you jump to a specific row. The Go To dialog box displays the following
item:
Item Number
The row number that you want to jump to. After entering a row number, select the Go button to jump
to the specified row.
125
Creating Recipes
Drives
The Drives list box shows the name of the drive you have selected.
Network
The Network button allows you to connect to a shared network folder.
Unrestricted Limit
When either override limit is unrestricted, the operator can enter any override value that is less than or
equal to the high limit and greater than or equal to the low limit. If both override limits are
unrestricted, any override value can be entered.
Restricted Limit
When the high override limit is restricted, the operator can enter an override value that is less than or
equal to the recipe item's calculated value. When the low override limit is restricted, the operator can
enter an override value for the high limit that is greater or equal to the calculated value. If both
override limits are restricted, no override value can be entered.
Absolute Limit
The Absolute Limit field lets you enter a numeric constant as the high or low override limit. When an
absolute limit is used, the operator can enter an override value less than or equal to the high limit and
greater than or equal to the low limit.
126
Creating Recipes
Percentage Limit
The Percentage Limit field lets you enter a percentage as the high or low override limit. When a
percentage limit is used, the operator can enter an override value equal to the recipe item's calculated
value plus or minus the specified percentage.
Difference Limit
The Difference Limit field lets you enter a relative difference as the high or low override limit. When
a difference limit is used, the operator can enter an override value equal to the recipe item's calculated
value plus or minus the specified difference.
The Precheck Error List dialog box displays the following items:
Available Buttons
Use the buttons directly beneath the Error list box to proceed with or cancel the upload or download:
Save Errors Store the contents of the list box to the file recipe.RCE. This file resides in
button either the master recipe path or control recipe path, depending on the type of
recipe you are working with.
127
Creating Recipes
The Recipe Mod Log dialog box displays the following items:
Save As
The Save As button provides you with access to the Save Recipe As dialog box. Enter the name you
want to save the recipe as.
Column Heading
The Column Heading field lets you change the column heading of any column in the spreadsheet or in
a recipe report. You can enter up to 39 characters into this field.
Column Width
The Column Width field lets you define the length of a column in a recipe report. You can enter any
value between 1 and 100 into this field.
128
Creating Recipes
Up Arrow and Move the selected column up or down in the Column Layout list box.
Down Arrow
buttons
Add button Move the selected column from the Available Columns list box to the
Column Layout list box.
Modify button Change the column heading and either the column width (when modifying
the format of a report) or whether the column is modifiable (when modifying
the format of the spreadsheet).
Delete button Remove a column from the Column Layout list box.
Switch To button Toggle between the display format of the Recipe Development window and
Recipe Operations window.
129
Creating Recipes
The Search and Replace dialog box displays the following items:
Search for
The Search for field lets you enter a search string of up to 100 characters. Wildcard characters (such as
* and ?) are treated as text.
After entering a search string, select the Search Next button to search forward for the next occurrence
of the search string in the selected column. Select the Search Previous button to search backward for
the next occurrence of the search string.
Replace with
The Replace with field lets you enter a replacement string of up to 100 characters. Wildcard characters
(such as * or ?) are treated as text.
After entering a replacement string, select the Replace Next button to search forward for the next
occurrence of the search string and replace it. Select the Replace Previous button to search backward
for the next occurrence of the search string and replace it.
Case Sensitive
The Case Sensitive check box lets you control whether the search for the search string is case sensitive.
Select the check box for a case sensitive search. Clear the check box for a non-case sensitive search.
Wrap Around
The Wrap Around check box lets you search an entire column, either forward or backward, no matter
where you start in the column. When you select this check box, the Recipe Builder automatically
wraps and continues searching the selected column when it reaches the spreadsheet's beginning or end.
When the check box is cleared, the Recipe Builder searches the selected column until it reaches the
spreadsheet's end or the beginning.
Batch Size
Enter any batch size from 0.000001 to 9,999,999.0 into the Batch Size field.
130
Creating Recipes
The Window Display Format dialog box displays the following items:
Up Arrow and Move the selected column up or down in the Column Layout list box.
Down Arrow
buttons
Add button Move the selected column from the Available Columns list box to the
Column Layout list box.
Modify button Change the column heading and either the column width (when modifying
the format of a report) or whether the column is modifiable (when modifying
the format of the spreadsheet).
Delete button Remove a column from the Column Layout list box.
Switch To button Toggle between the display format of the Recipe Development window and
Recipe Operations window.
131
Creating Recipes
How Do I...
Click any of the following links for more information about Recipe's step-by-step procedures:
• Downloading Recipes
• Uploading Recipes
• Scheduling Recipes for Automatic Upload and Download
• Uploading and Downloading from an Operator Display
Downloading Recipes
1. In the iFIX WorkSpace system tree, in the FIX Recipes folder, double-click New Recipe. The
Recipe Operations or Recipe Development window appears.
2. On the File menu, click Open. If you are in the Recipe Operations window, the Open Control
Recipe dialog box appears. If you are in the Recipe Development window, the Open Recipe
dialog box appears.
TIP: To change the type of recipes that appear in the Open Recipe dialog box from the Recipe
Development window, in the List Files of Type drop-down list, select Master Recipe (*.rcm)
or Control Recipe (*.rcc). Be aware that the Open Control Recipe dialog box from the Recipe
Operations dialog box only displays control recipes.
3. Select the recipe you want to download. The recipe displays in the spreadsheet.
4. Click the Download button from the recipe header. The Download dialog box appears.
5. Enter the necessary information in the Download dialog box.
6. Click OK.
NOTE: Prior to downloading a recipe, the Recipe Builder performs error checking. If the
Recipe Builder detects an error, the download aborts and the Precheck Error List dialog box
appears. If the Recipe Builder detects no errors, the download begins. When the Recipe
Builder completes the download, it displays the results in a message or the Download Error
132
Creating Recipes
Uploading Recipes
1. In the iFIX WorkSpace system tree, in the FIX Recipes folder, double-click New Recipe. The
Recipe Operations or Recipe Development window appears.
2. On the File menu, click Open. If you are in the Recipe Operations window, the Open Control
Recipe dialog box appears. If you are in the Recipe Development window, the Open Recipe
dialog box appears.
• TIP: To change the type of recipes that appear in the Open Recipe dialog box from
the Recipe Development window, in the List Files of Type drop-down list, select Master
Recipe (*.rcm) or Control Recipe (*.rcc). Be aware that the Open Control Recipe dialog box
from the Recipe Operations dialog box only displays control recipes.
3. Select the recipe you want to upload. The recipe displays in the spreadsheet.
4. Select the Upload button from the recipe header. The Recipe Builder starts the uploading
process.
NOTE: Prior to uploading a recipe, the Recipe Builder performs error checking. If the
Recipe Builder detects an error, the upload aborts and the Precheck Error List dialog box
appears. If the Recipe Builder detects no errors, the upload begins. When the Recipe Builder
completes the upload, it displays the results in a message or the Upload Error List dialog box.
1. In Classic view, on the iFIX WorkSpace application toolbar, click the Database Manager
button.
-Or-
In Ribbon view, on the Application tab, in the Process Database group, click Database
Manager.
2. Select the SCADA server you want to connect to.
3. Click OK. Once Database Manager connects to the selected SCADA server, the program
opens the server's current database and the Database Manager window appears.
4. In Classic view, in Database Manager, on the Blocks menu, click Add.
-Or-
In Ribbon view, in Database Manager, on the Home tab, in the Blocks group, click Add.
5. Select the PG Program Block and click OK. The Program dialog box appears.
6. Enter a Tag Name and Description, and add a RUNTASK command in the Programming
Statements area. The syntax for this command is:
RUNTASK task_parameters
133
Creating Recipes
For example, this command would perform a recipe download for the control recipe named
BEER, and include an error file:
7. You can also combine the RUNTASK statement with other Program block statements (such
as WAITFOR) to schedule an upload or download automatically.
For example, if you add the first line to the Programming Statements area, the recipe would
also wait for the TIME variable to equal 12 hours, before recipe download occurs:
1. In the iFIX WorkSpace, create a picture with the necessary objects (such as a Push Button
link) or modify an existing picture by adding objects.
2. Include a command script with the RUNTASK command for each object that will trigger an
upload or download. The syntax for this command is:
RUNTASK task parameters.
For example, this command would perform a recipe download for the control recipe named
BEER, and include an error file:
This command would perform a recipe upload for the control recipe named BEER, and
include an error file:
3. When in run mode, select the appropriate object to start the upload or download process.
When selected, the associated command script executes and uploads or downloads the
specified recipe.
134
Creating Recipes
1. Select a cell in the Recipe window's Identifier column and type a tagname, variable name, or a
symbol name.
NOTE: If you prefer, you can double-click a cell in the Identifier column to display the Field
Select dialog box.
2. Select the corresponding cell in the Formula column and enter a formula for the recipe item.
When you complete your entry, the text in the Calc Val column changes to reflect the
formula’s value.
3. Modify the text in the Description and UOM columns as needed. Notice that if you enter a
tagname the text from the specified block’s Description and EGU Tag fields are automatically
inserted for you.
4. Modify the override limits as needed. By default, the override limits are sent to
UNRESTRICTED.
5. Modify the Verify column as needed. By default, recipe verification is disabled for each
recipe item you add to the recipe. To enable it, select a cell in the Verify column and type ON
in the text editing box. It is recommended that you only verify Analog Register, Digital
Register, and Text blocks.
1. In the Recipe window's spreadsheet, select a cell from the row where you want to insert a
recipe item or variable.
2. On the Edit menu, click Insert Item. The Recipe Builder inserts a blank row above the row
you selected and renumbers the spreadsheet.
NOTE: You can add up to 3500 recipe items to a recipe.
1. In the Recipe window's spreadsheet, select a cell from a row that you want to delete.
2. On the Edit menu, click Delete Item. The Recipe Builder removes the selected item from the
recipe and renumbers each row in the spreadsheet.
You can also delete a recipe item or variable by selecting Cut from the Edit menu. The main
difference between these commands is that when you delete a recipe item or variable with
Cut, you can paste it back into the recipe if you accidentally remove the wrong item or if you
change your mind. When you select Delete Item, the recipe item or variable is irretrievable.
135
Creating Recipes
1. With a recipe loaded in the Recipe window's spreadsheet, on the File menu, select Report.
The Report Format dialog box appears.
2. Use the Column Layout List Box buttons to add or delete report columns. Also use these
buttons to arrange the columns in the report and modify the column widths and headings.
3. Click OK. The Recipe Builder creates a report from the current recipe and stores it in the
appropriate recipe path.
1. In the Recipe window, on the File menu, select Notes. The Recipe Builder starts Notepad.
If a note file does not already exist for the current recipe or if the Recipe Builder cannot locate
the note file in the control recipe path, the Recipe Builder prompts you to create a new one.
Select the No button to create an untitled note file. To create a note file with a name that
matches the current recipe, select the Yes button.
• In the Recipe window's spreadsheet, enter OFF in the Verify column. By default, recipe
verification is disabled.
1. Save the data you want to import in a text file and copy it into the master recipe path or
control recipe path.
2. If you are not already in development mode in the Recipe window, on the Window menu,
select Switch to DEV. The Recipe Development window appears.
136
Creating Recipes
3. In the Recipe Development window, on the File menu, click Open. The standard Open dialog
box appears.
4. From the List Files of Type drop-down list, select either master text recipes or control text
recipes.
5. Select the text file you want to open. The Recipe Builder imports the data.
1. If you are not already in development mode in the Recipe window, on the Window menu,
select Switch to DEV. The Recipe Development window appears.
2. From the File menu, click Save As. If the audit trail is enabled, the Recipe Mod Log dialog
box appears.
If the audit trail is disabled, the standard Save As dialog box appears. Go to step 4.
3. Enter the reason for exporting the recipe, and click Save As. The standard Save As dialog box
appears.
4. Select either master text recipes or control text recipes from the List Files of Type drop-down
box.
5. Type the name for the exported recipe in the File Name field, and select the OK button. The
Recipe Builder exports the recipe to a text file.
6. Start your third-party application and open the text file with it.
1. In the Recipe window, on the File menu, click Report. The Report Format dialog box appears.
2. Select the column you want to modify from the Column Format list box.
3. Click Modify. The Report Column Details dialog box appears.
4. In the Column Heading field, edit the text as needed.
5. In the Column Width field, edit the text as needed.
6. From the Report Column Details dialog box, click OK. The Recipe Builder updates the
Column Layout list box to reflect the changes you made.
7. Repeat steps 4 through 6 until you have modified each report column.
8. From the Report Format dialog box, click OK. The Recipe Builder updates the report format.
137
Creating Recipes
1. In the Recipe window, on the Window menu, click Edit Display Format. The Window
Display Format dialog box appears.
2. Use the Column Layout List Box buttons to add or delete spreadsheet columns. Also use these
buttons to modify the column heading, make a column modifiable, arrange the columns in the
spreadsheet, and toggle between the display format of the Recipe Development window and
the Recipe Operations window
3. Select the OK button. The Recipe Builder saves the display format in memory.
Modifying a Column
1. In the Recipe window, on the Window menu, click Edit Display Format. The Window
Display Format dialog box appears.
2. From the Column Format list box, select the column you want to modify.
3. Click Modify, or double-click the column name in the Column Layout list box. The Column
Details dialog box appears.
4. In the Column Heading field, edit the text as needed.
5. Select the Modifiable check box to make the column modifiable. To make the column non-
modifiable, clear the check box.
6. Select the OK button from the Column Details dialog box. The Recipe Builder updates the
Column Layout list box to reflect the changes you made.
7. From the Window Display Format dialog box, click OK. The Recipe Builder updates the
spreadsheet.
1. In the Recipe window's spreadsheet, select the column you want searched.
2. Select the Search button. The Search and Replace dialog box appears.
3. In the Search for field, enter the text you want to locate. If you want to search and replace
data, enter the replacement data in the Replace with field.
4. Use the Search Next and Search Previous buttons to search forward and backward in the
column. Use the Replace Next and Replace Previous buttons to search and replace data in the
column.
5. When you finish searching the selected column, you can return to the spreadsheet by selecting
a cell. The Search and Replace dialog box remains on the screen. To close the dialog box,
select the Exit button.
138
Creating Recipes
1. In the Recipe window's spreadsheet, double-click a cell in the Override Lo Lim column or the
Override Hi Lim column that is in the row you want to update. The Override Low Limit or
Override High Limit dialog box appears.
• TIP: For Restricted and Unrestricted Limits, you can also select the cell, type R for
Restricted or U for Unrestricted, and press Enter. This assigns the Restricted or Unrestricted
Limit without opening the Override Low Limit or Override High Limit dialog box.
A relative percentage of the The percentage of the calculated value you want to use. Be sure
calculated value to include the percent sign (%).
A relative difference from the The difference from the calculated value you want to use
calculated value followed by a minus sign (-).
4. Click OK.
1. In the Recipe window's spreadsheet, select the appropriate cell in the Override Val column.
2. Type a value in the text editing box. The range of values you can enter into the Override Val
139
Creating Recipes
column depends on the high and low override limits defined for a specific recipe item or
variable.
• In the Recipe window's spreadsheet, select the appropriate cell and press <Delete>.
NOTE: To delete all the override values in use, select the Clear Overrides button.
1. In the Recipe window's spreadsheet, select the appropriate cell in the Formula column.
2. Type the formula you want into the text editing box. When typing the formula, you can
combine one or more of the following items:
Function Log(234) or
Lookup (#COLOR;1;2;3;4;5)
Variable #COLOR
To modify a formula:
1. In the Recipe window's Formula column, select the appropriate cell, and press INSERT. The
Recipe Builder highlights the text in the text editing box.
2. Type the new text you want. The Recipe Builder replaces the original text with the text you
enter.
140
Creating Recipes
1. In the Recipe window, on the Options menu, click Assign Tag Group. The Assign Tag Group
dialog box appears.
2. In the Tag Group Filename field, enter the tag group file that you want to assign to the recipe.
- Or -
To the right of the Tag Group Filename field, select the browse (...) button and double-click
the tag group file you want to assign to the recipe from the list that appears.
After you assign a tag group to a recipe, you can display the tagnames by selecting Show
Tagnames from the Window menu. To display the symbol names again, select Show Symbols
from the Window menu.
1. In the Recipe window, on the File menu, click Exit. If necessary, save any changes you have
made to the current recipe.
2. With a text editor such as Notepad, open the RCP.INI file. This file resides in the directory
pointed to by the local path.
When you open the file, you should see the following text:
[startup]
startup.mode=2
verification.timeout=30
3. Modify the timeout interval by changing it from 30 to some other value. Possible values for
the timeout interval are from 1 to 65535 seconds.
4. After modifying the timeout interval, save the RCP.INI file and restart the Recipe Builder.
1. In the Recipe window, on the Options menu, click Advanced Options. The Advanced Options
dialog box appears.
2. In the Completion Status field, enter the tagname of the block that acts as the completion
141
Creating Recipes
status indicator for the recipe, or click the browse (...) button and select the tagname from the
dialog box that appears.
By default, the F_CV field of the block is assigned to the tagname if you do not specify a field
name. However, you can specify any F_ field for the tagname (such as F_02 for an Analog
Register block).
To define the upload and download interlocks for the current recipe:
1. In the Recipe window, on the Options menu, click Advanced Options. The Advanced Options
dialog box appears.
2. In the Download field, enter the tagname or symbol of the block that acts as a download
interlock for the recipe. In the Upload field enter the tagname or symbol of the block that acts
as an upload interlock. If you prefer, you can select the browse (...) button to the right of
either field and select the tagname from the dialog box that appears.
By default, the F_CV field is assigned to the tagname when no field name is specified.
However, you can enter any F_ field for the tagname (such as F_04 for a Digital Register
block).
1. In the Recipe window, on the Options menu, click Advanced Options. The Advanced Options
dialog box appears.
2. Select either the Summary Audit Trail button or the Detail Audit Trail button to select the
type of audit trail you want.
1. In the Recipe window, on the Options menu, click Advanced Options. The Advanced Options
dialog box appears.
2. Select the No Audit Trail button.
1. In the Recipe window, on the Options menu, click Advanced Options. The Advanced Options
dialog box appears.
2. In the Security Area field, enter the appropriate text. To assign the recipe to:
• Every security area, type ALL.
• No security area, type NONE.
• A specific security area, type the security area name in the Security Area field.
142
Creating Recipes
If you prefer, click the browse (...) button and select a security area from the dialog box that
appears. Use the scroll bar or arrow keys to locate the security area you want. Press the OK
button to complete the selection.
1. In the Recipe window, on the Options menu, click Set Batch Size. The Set Batch Size dialog
box appears.
2. In the Batch Size field, enter the amount of the product you want to make.
3. From the Set Batch Size dialog box, click OK. The Recipe Builder assigns the value you enter
to the #BATCH keyword. The Recipe Builder also divides #BATCH by #STD_BATCH to
compute the scaling factor. The result of this calculation is stored in the #SCALE keyword.
• Multiply the formula of each recipe item you want to scale by #SCALE. Once this is done,
you can scale a batch by changing the current batch size.
• In the Recipe window, in the Standard Batch Size field, type the standard amount of the
product that this recipe produces. The Recipe Builder assigns the value you enter to the
#STD_BATCH keyword.
Movement Keys
• The ALT key activates the menu bar.
• The left and right arrow keys move between menus.
• The up and down arrow keys move through menu commands.
• The ENTER key selects a command or dialog box button and records field entries.
• The TAB key moves the selection box or cursor through all dialog box fields, list boxes, check
boxes, and buttons.
• The PAGE UP and PAGE DOWN keys shift the spreadsheet up or down to display additional
rows.
143
Creating Recipes
Keyboard Accelerators
Task Accelerator
144
Creating Recipes
145
Index
A Changing the verification timeout interval .....141
C using .............................................................81
147
Creating Recipes
148
Creating Recipes
149
Creating Recipes
importing tag group reports ............................ 119 modifying a column heading ............................44
Inserting a recipe item or variable .................. 135 Modifying a recipe note file ...........................136
keywords O
M changing .......................................................62
150
Creating Recipes
P recipe buttons
preferred blocks for recipe verification ..............9 in Recipe Development window ...................19
151
Creating Recipes
152
Creating Recipes
using with program block ............................. 57 downloading from an operator display .........56
153
Creating Recipes
154
Creating Recipes
155
Creating Recipes
uploading recipes from Recipe Builder in the Recipe Development window .............17
described.........................................................4
156
Proficy* HMI/SCADA - iFIX
DISCOVER AND AUTO CONFIGURE OVERVIEW
Version 5.1
May 2010
All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical
means, including photocopying and recording, without permission in writing from GE Intelligent Platforms, Inc.
The information contained in this manual is believed to be accurate and reliable. However, GE Intelligent Platforms,
Inc. assumes no responsibilities for any errors, omissions or inaccuracies whatsoever. Without limiting the foregoing,
GE Intelligent Platforms, Inc. disclaims any and all warranties, expressed or implied, including the warranty of
merchantability and fitness for a particular purpose, with respect to the information contained in this manual and the
equipment or software described herein. The entire risk as to the quality and performance of such information,
equipment and software, is upon the buyer or user. GE Intelligent Platforms, Inc. shall not be liable for any damages,
including special or consequential damages, arising out of the user of such information, equipment and software, even
if GE Intelligent Platforms, Inc. has been advised in advance of the possibility of such damages. The user of the
information contained in the manual and the software described herein is subject to the GE Intelligent Platforms, Inc.
standard license agreement, which must be executed by the buyer or user before the use of such information, equipment
or software.
Notice
©2010 GE Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Intelligent Platforms, Inc.
Microsoft® is a registered trademark of Microsoft Corporation, in the United States and/or other countries.
All other brands or names are property of their respective holders.
We want to hear from you. If you have comments, questions, or suggestions about our documentation, send them to the
following email address:
doc@ge.com
Table Of Contents
Discover and Auto Configure Overview ........................................................................................... 7
Set Up Windows XP, Windows Vista or Windows Server 2008 Firewall for Remote OPC Servers
................................................................................................................................................... 21
Discovery Agent Selection Wizard - Select Local or Remote OPC Server ........................... 48
iii
Discover and Auto Configure
Discovery Agent Selection Wizard - Select an OPC Data Access Server ............................. 49
Discovery Agent Selection Wizard - Select an RSLogix 5 or RSLogix 500 .EAS File ........... 57
Discovery Agent Selection Wizard - Select an RSLogix 5000 .L5K File ............................... 61
Extracting Tag Information from an RSLogix 5000 ControlLogix .L5K File .......................... 62
Rerunning the Discovery Agent for the IGS Driver for an RSLogix .L5K Project .................. 62
iv
Table Of Contents
IGS Driver............................................................................................................................... 79
Summary .................................................................................................................................... 80
How Do I… ................................................................................................................................. 80
Using the iFIXColumns.txt File to Modify iFIX Columns in the Spreadsheet ......................... 82
Using the iFIXColumns.txt File to Modify iFIX Columns in the Spreadsheet ......................... 83
Drivers ............................................................................................................................................ 89
Troubleshooting ............................................................................................................................. 92
v
Discover and Auto Configure
Index ............................................................................................................................................... 97
vi
Discover and Auto Configure Overview
The Discover and Auto Configure is a tool that you use to extract tag information from PLC
programming software files or OPC servers and then add the tags to your target application's database.
Using this tool saves you valuable time and effort when creating tags for your driver(s) and application
database because you no longer need to manually create the individual tags.
The Discover and Auto Configure uses wizards to make it easy for you to extract tag information from
a source file or OPC server and then add that tag information to your target application database. The
Select a Discovery Agent wizard takes you through the necessary steps to:
The Discovery Agent is specific to the programming software you are extracting information from. For
example, the Siemens S7 Discovery Agent can be used only with Siemens .s7p project files and the
OPC Discovery Agent can be used only with OPC servers. The extracted tag information is used to
create new tags in your database and assist in configuring drivers.
After the tag information is extracted, it is displayed in a spreadsheet. From this spreadsheet you
choose the tags you want to add to the target database. The toolbar provides access to another set of
wizards that you can run individually or as a single wizard. These wizards allow you to:
Assumptions and Preconditions for Using the Discover and Auto ConfigureThe following conditions
must be met before you can use the Discover and Auto Configure.
This information is specific to the Siemens S7 Discovery Agent and Proficy ™ iFIX ® .
Drivers:
• The GE Intelligent Platforms SI7 version 7.2x or the Industrial Communications Solution (InCoSol)
S7A version 7.2x driver is installed on the same machine as the Discover and Auto Configure.
• The channel and device information for the selected driver are configured. If the channel
and/or device you want is not available, you can launch the driver configuration tool and add
the required information.
7
Discover and Auto Configure
• The driver you are using must be running so that it can be configured if necessary, but does
not have to be communicating with the PLC hardware.
• The PLC is configured using the appropriate programming software and the project files
associated with the project are accessible to the Discover and Auto Configure. This includes
all the other files in the sub-directories within the project directory.
NOTE: If the project files are located on a shared (mapped) drive on a remote machine, that
shared drive must have the allow Read/Write/Modify/Full Control option enabled; otherwise,
the project cannot be opened.
• The computer that the Discover and Auto Configure is installed on does not have to be
connected to the PLC hardware. This tool is independent of the actual PLC communications.
The driver handles all communications with the PLC hardware.
This information is specific to the OPC Discovery Agent and Proficy iFIX.
Drivers
• The iFIX OPC Client Driver version 7.3x driver is installed on the same machine as the
Discover and Auto Configure. This driver is automatically installed with iFIX 4.0 or greater.
• The iFIX OPC Client Driver must be running so that it can be configured if necessary, but
does not have to be communicating with the OPC Servers.
OPC Servers
• OPC servers support OPC Data Access specification v1.0a and v2.05 on both the local and
remote machine.
• OPC servers support browsing of OPC tags.
• OPC server software is installed on the local or remote computer.
• OPC servers on a remote computer must be accessible through the local area network.
• OPC servers on both the local and remote computer(s) must be correctly set up for DCOM
communications, including any Windows Firewall settings, DCOM settings, OPC Server /
OPC Client settings, and any other network settings.
• Connection to the data source (that is, a PLC or some other data source) may be required in
order to browse the tags in the selected OPC server.
• If you are browsing OPC servers on a remote machine, then OPCENUM must reside and be
registered on that remote machine for the browse to work correctly. While most OPC server
applications install and register this file, some may not. You can download this file from
www.opcfoundation.org. Currently, it is contained within the OPC Core Components 2.00
Redistributable 2.30.msi file. After you download the file, run the .msi program and follow
the instructions on screen to install it. You must do this on each of the remote machines you
intend to browse. For more detailed information, refer to Setting Up DCOM for Discovery of
Remote OPC Servers.
8
Implementing Alarms and Messages
This information is specific to the Allen-Bradley PLC-5 / SLC 500 / MicroLogix Discovery Agent and
Proficy iFIX.
Drivers:
• The GE Intelligent Platforms ABR version 7.2x driver is installed on the same machine as the
Discover and Auto Configure.
• The channel and device information for the selected driver are configured. If the channel
and/or device you want is not available, you can launch the driver configuration tool and add
the required information.
• The driver you are using must be running so that it can be configured if necessary, but does
not have to be communicating with the PLC hardware.
• The computer that the Discover and Auto Configure is installed on does not have to be
connected to the PLC hardware. This tool is independent of the actual PLC communications.
The driver handles all communications with the PLC hardware.
• For the ABR driver to run, you need the appropriate RSLinx ® software installed and
configured. Please refer to the ABR Driver Documentation for a complete list of ABR Driver
requirements.
This information is specific to the IGS - Industrial Gateway Server Discovery Agent and Proficy iFIX.
Drivers:
• The GE Intelligent Platforms IGS version 7.41 and 7.51 or greater driver is installed on the
same machine as the Discover and Auto Configure.
• The channel and device information for the selected driver are configured. If the channel
and/or device you want is not available, you can launch the driver configuration tool and add
the required information.
• The driver you are using must be running so that it can be configured if necessary, but does
not have to be communicating with the PLC hardware.
9
Discover and Auto Configure
• The PLC is configured using the appropriate programming software (RSLogix ™ 5000) and
the project export files (with the .L5K extension) associated with the project are accessible to
the Discover and Auto Configure.
NOTE: If the project files are located on a shared (mapped) drive on a remote machine, that
shared drive must have the allow Read/Write/Modify/Full Control option enabled; otherwise,
the project cannot be opened.
• The computer that the Discover and Auto Configure is installed on does not have to be
connected to the PLC hardware. This tool is independent of the actual PLC communications.
The driver handles all communications with the PLC hardware.
• The driver must be added to the iFIX SCU (System Configuration Utility), in the Configured
I/O Drivers list before it can be configured to run in iFIX and be used with the Discover and
Auto Configure.
NOTE: If iFIX is running, you must shut down and restart iFIX for your changes to take effect.
• The driver you use must be running so that it can be configured if necessary, but does not
have to be communicating with the PLC hardware.
• The necessary driver configuration file is set as the default to load on driver startup.
• The default configuration file is open.
• The default configuration file for the locally installed driver is used by the Discover and Auto
Configure when you are working with the Device (or Group) Selection page of the Driver
Wizard. If you connect to a remote driver's Power Tool, its configuration file is not displayed
in the Device (or Group) Selection page of the Driver Wizard.
• The driver's Auto Create option is enabled. This allows the database to automatically add I/O
addresses to the driver configuration. For more information, refer to the online help for the
selected driver.
Target Applications
10
Implementing Alarms and Messages
IMPORTANT:
• The Discover and Auto Configure, the Discovery Agent, the target application, and the target
driver must all be installed and running on the same machine.
• The Discover and Auto Configure does not support remote configurations; however, the OPC
Discovery Agent supports connections to remote OPC servers, as described above.
Supported Software
Operating System
• Windows NT 4.0 with Service Pack 5 or greater
• Windows 2000
• Windows XP
• Windows 2003
• Windows Vista
• Windows 2008
OPC Servers
Any OPC server that supports the OLE for Process Control specification v1.0a or v2.05.
NOTE: Using a Human-Machine Interface (HMI) software package is not required to use the OPC
Client. However, if you choose to use an HMI software package, select one of the following:
• FIX for Windows NT version 6.15 or greater. Latched data support requires FIX 6.15 with a
special SACDLL SIM. Contact Technical Support to obtain the SIM.
11
Discover and Auto Configure
Supported Hardware
The following families of PLC's are supported by the Discover and Auto Configure:
• Allen-Bradley PLC-5
• SLC 500
• MicroLogix
• S7-300
• S7-400
12
Implementing Alarms and Messages
13
Discover and Auto Configure
14
Implementing Alarms and Messages
15
Discover and Auto Configure
16
Implementing Alarms and Messages
17
Discover and Auto Configure
18
Implementing Alarms and Messages
• 1.0a
• 2.0x
AI Analog Input
19
Discover and Auto Configure
AA Analog Alarm
AR Analog Register
AO Analog Output
DI Digital Input
DA Digital Alarm
DR Digital Register
DO Digital Output
TX Text
In Addition, if you are using the Allen-Bradley PLC-5/SLC 500/MicroLogix Families Discovery
Agent you can also use the iFIX Productivity Pack for Allen-Bradley (ABP, ABT, and ABC blocks)
that was specially created for Allen-Bradley hardware and the ABR driver. You can use these blocks
with the corresponding Allen-Bradley Memory /File types.
You can use the Database Dynamos that are supplied with iFIX, or you can create your own using the
Build Dynamo Wizard.
NOTES:
• Database Dynamos must exist in your iFIX application in order for them to appear in the
Block Type list on the Block Type and Scan Time Wizard. For more information about
Database Dynamos, refer to the Understanding Database Dynamos topic in the iFIX
electronic books
• If you are using an existing iFIX database that contains datablocks of a type not supported by
the Discover and Auto Configure, those datablocks are not affected when you add new
20
Implementing Alarms and Messages
datablocks with the Discover and Auto Configure. Any datablocks already existing in your
database are still supported by iFIX.
• Setting Up Windows XP, Windows Vista or Windows Server 2008 Firewall for Discovery of
Remote OPC Servers
• Setting Up DCOM for Discovery of Remote OPC Servers
GE Intelligent Platforms recommends that you enter these settings on the local machine running the
OPC Client, as well as on the remote machine that has the OPC server you want to use.
21
Discover and Auto Configure
4. Click the Add Port button. The Add a Port dialog box appears. The following figure shows an
example of this dialog box in Microsoft Windows XP.
22
Implementing Alarms and Messages
23
Discover and Auto Configure
11. Navigate to the System32 folder. This folder is found under the operating system folder
(usually Windows or WINNT).
12. In the System32 folder, select the OPCENUM.exe file, and then click the Open button.
In the Add a Program dialog box the path field displays the full path to, and including, the
OPCENUM.exe file.
24
Implementing Alarms and Messages
25
Discover and Auto Configure
14. Complete steps 9-13 for each OPC server that you want to access.
NOTES:
• You must also add the GE Intelligent Platforms OPC Client driver by adding the file
OPCDrv.exe into the Exceptions list.
• If any OPC server that you want to use is a dll surrogate (an in-process dll and not an .exe),
you must add \system32\dllhost.exe into the Exceptions list.
• OPCENUM must reside on the remote machine with the OPC server. While most OPC Server
applications install and register this file, some do not. You can download this file from
www.opcfoundation.org. Currently it is contained within the OPC Core Components 2.00
Redistributable 2.30.msi file. After you download OPCENUM, run the .msi file.
26
Implementing Alarms and Messages
OPC servers, you can use the Windows utility, DCOMCNFG.EXE for configuring DCOM
applications. DCOMCNFG.EXE is usually located in your operating system’s \system32 folder.
When OPC Servers register, they set up initial custom DCOM security settings to enable users on the
network to access and launch the Server. On large networks, it is recommended that you modify these
settings to avoid confusion and inadvertent changes to a running OPC Server.
If Firewall security is enabled on Windows XP, Windows Vista, or Windows Server 2008, you must
also modify or add items to the Exceptions list. Refer to Setting Up Windows XP or Vista Firewall for
Discovery of Remote OPC Servers.
IMPORTANT NOTES:
• It is recommended that all Discover and Auto Configure users be members of the
Administrators group. To facilitate this, it is recommended that you create a users group to
contain individual users that need to access remote OPC servers.
For example, create a group named “DAC” and add those users who will log into the
operating systems and access remote OPC servers. Add the users Tom, Denise, and Harry
into the DAC group. Each of these users will also be added into the Administrators group.
This DAC group should also contain the following built-in security principals:
INTERACTIVE; NETWORK; SYSTEM.
• To make any OPC Client / OPC Server application work via DCOM, changes need to be
made on both sides, especially if you intend to use Asynchronous I/O communications.
• OPCENUM must reside on the remote machine with the OPC server. While most OPC Server
applications install and register this file, some do not. You can download this file from
www.opcfoundation.org. Currently it is contained within the OPC Core Components 2.00
Redistributable 2.30.msi file. After you download OPCENUM, run the .msi file.
• This section applies to OPC servers that need to use DCOM communications, regardless of
whether the OPC server uses Serial or Ethernet devices.
• If OPC communications is confined to a single machine (that is, using COM, but not DCOM),
it continues to work properly without making changes to DCOM settings.
• If you do not plan to use the Discover and Auto Configure to connect remotely to OPC
servers, then you may not need to change your DCOM settings.
• If this is the first time you are connecting to (or allowing connections from) other machines
on the network, you must run the Windows Network Wizard (from Start > Control Panel) to
set up your computer to run on your network. This allows you to share resources on your
computer with other computers on your network. It is recommended that you run the Network
Setup Wizard before modifying the DCOM settings.
DCOM Settings
The following procedures provide general guidelines for configuring DCOM settings. Differences
between Windows 2000, Windows 2003, Windows XP, Windows Vista, and Windows Server 2008
are noted.
27
Discover and Auto Configure
1. From the Start menu, select or type Run. The Run dialog box appears.
2. Type: dcomcnfg and click OK.
In Windows 2000, the Distributed COM Configuration Properties dialog box appears.
In Windows Server 2003, Windows XP, Windows Vista, and Windows Server 2008, the
Component Services dialog box appears.
IMPORTANT: Be careful when making any system-wide security changes. Any inadvertent changes
may affect the entire system and may cause some or all programs to stop working.
1. On the Component Services dialog box, expand Component Services, then expand the
Computers item.
2. Right-click My Computer and choose Properties. The My Computer Properties dialog box
appears.
3. Click the COM Security tab. There are four permissions on this dialog box.
You may need to make changes to the Edit Limits… for Access Permissions and Launch and
Activation Permissions.
Do not change the Edit Default… settings, since this will change the default settings for all
programs and applications running on the computer.
4. Click Access Permissions > Edit Limits… The Access Permission dialog box appears.
i. Select the user labeled ANONYMOUS LOGON, and then select the Allow check box
for Remote Access.
NOTE: This setting is necessary for applications that use OPCenum.exe to function
and also for some OPC Servers and OPC Clients that set their DCOM ‘Authentication
Level’ to ’None’ to allow anonymous connections. If you do not use such applications,
you may not need to enable remote access for anonymous logon users.
ii. Select the user labeled Everyone, and then select the Allow check box for Remote
Access.
IMPORTANT: Since “Everyone” includes all authenticated users, it is
recommended to add these permissions to a smaller subset of users. One way of
doing this is to create a Group named “DAC” and add all user accounts to this
Group that will access any OPC server. Then substitute “DAC” everywhere that
“Everyone” appears in the entire DCOM configuration dialogs.
28
Implementing Alarms and Messages
iii. Click OK to close the Access Permissions dialog box and return to the My Computer
Properties dialog box.
5. Click Launch and Activation Permissions > Edit Limits… The Launch Permission dialog box
appears.
For each user or group (preferably add the “DAC” group) that needs to launch or activate the
OPC server, or participates in OPC / DCOM communications, make sure that the Local
Launch, Remote Launch, Local Activation, and Remote Activation check boxes are selected.
6. Click OK to save your changes, then click OK again to save and close the My Computer
Properties dialog box.
It is recommended that all Discover and Auto Configure users be members of the Administrators
group.
IMPORTANT: Since the “Everyone” group includes all authenticated users, it is recommended to
add these permissions to a smaller subset of users.
It is recommended that you create a group to contain individual users that need to access remote OPC
servers. It is also recommended that all Discover and Auto Configure users be members of the
Administrators group.
For example, create a group named “DAC” and add those users who will log into the operating
systems and access remote OPC servers. Add the users Tom, Denise, and Harry into the DAC group.
Each of these users will also be added into the Administrators group. This DAC group should also
contain the following built-in security principals: INTERACTIVE; NETWORK; SYSTEM. Then
substitute “DAC” everywhere that “Everyone” appears in the entire DCOM configuration dialogs.
In Windows 2000
29
Discover and Auto Configure
7. In the Use custom access permissions area, click Edit. The Registry Value Permissions for
Access Permission dialog box appears.
8. Click the Add button. The Add Users and Groups dialog box appears.
9. From the Names list, select the DAC group and click the Add button. The DAC group
displays in the Add Names list.
10. Set Type of Access to Allow Access, then click OK to return to the Registry Value
Permissions dialog box. The DAC group is now displayed.
11. Click OK.
12. In the Use custom launch permissions area, click Edit. The Registry Value Permissions for
Launch Permission dialog box appears.
13. Click the Add button. The Add Users and Groups dialog box appears.
14. From the Names list, select the DAC group and click the Add button. The DAC group
displays in the Add Names list.
15. Set Type of Access to Allow Launch, then click OK to return to the Registry Value
Permissions dialog box. The DAC group is now displayed.
16. Click OK.
17. In the Use custom configuration permissions area, click Edit. The Registry Value Permissions
for <selected OPC server> dialog box appears.
18. Click the Add button. The Add Users and Groups dialog box appears.
19. From the Names list, select the DAC group and click the Add button. The DAC group
displays in the Add Names list.
20. Set Type of Access to Full Control, then click OK to return to the Registry Value Permissions
dialog box. The DAC group is now displayed.
21. Click OK.
22. In the <Selected OPC Server> Properties dialog box, click OK.
23. Repeat steps 2 through 22 for each OPC server you need to access remotely.
24. When you are done, click OK to close the Distributed COM Configuration Properties dialog
box.
In Windows 2003
1. Access the DCOM configurator (dcomcnfg.exe). The Component Services dialog box
appears.
2. Expand the Component Services item, then expand the Computers item, and then expand the
My Computer item.
3. Select the DCOM Config object. A list of applications displays.
4. Right-click the OPC server you want to modify and choose Properties. The <Selected OPC
Server> Properties dialog box appears.
5. Click the General tab. The Authentication Level should be left as “Default”. This uses the
default authentication rules that are set in the system-wide DCOM settings.
6. Click the Location tab and make sure that the Run Application on this computer check box is
selected.
30
Implementing Alarms and Messages
7. Click the Security tab and select the Customize option for each of the permissions in this
dialog box and edit them as described in the following steps.
8. In the Launch Permissions area, click Edit. The Launch Permissions dialog box appears.
9. Click the Add button. The Select Users and Groups dialog box appears.
10. Click the Advanced Button. The Select Users and Groups dialog box appears.
11. Click the Find Now button. In the search results, select the DAC group and click OK. The
Select Users and Groups dialog box displays the DAC group.
12. Click OK to return to the Launch Permission dialog box. The DAC group is displayed in the
Group or user names list.
13. Select the DAC group and select the Allow check box for Launch Permission.
14. Click OK to return to the <Selected OPC Server> Properties dialog box.
15. In the Access Permissions area, click Edit. The Access Permission dialog box appears.
16. Click the Add button. The Select Users and Groups dialog box appears.
17. Click the Advanced Button. The Select Users and Groups dialog box appears.
18. Click the Find Now button. In the search results, select the DAC group and click OK. The
Select Users and Groups dialog box displays the DAC group.
19. Click OK to return to the Access Permission dialog box. The DAC group is displayed in the
Group or user names list.
20. Select the DAC group and select the Allow check box for Access Permission.
21. Click OK to return to the <Selected OPC Server> Properties dialog box.
22. In the Configuration Permissions area, click Edit. The Change Configuration Permission
dialog box appears.
23. Click the Add button. The Select Users and Groups dialog box appears.
24. Click the Advanced Button. The Select Users and Groups dialog box appears.
25. Click the Find Now button. In the search results, select the DAC group and click OK. The
Select Users and Groups dialog box displays the DAC group.
26. Click OK to return to the Change Configuration Permission dialog box.
27. Select the DAC group and select the Allow check boxes for Full Control and Read,
28. Click OK to return to the <Selected OPC Server> Properties dialog box.
29. Click OK.
30. Repeat steps 2 through 29 for each OPC server you need to access remotely.
31. When you are done, close the Component Services dialog box.
1. Access the DCOM configurator (dcomcnfg.exe). The Component Services dialog box
appears.
2. Expand the Component Services item, then expand the Computers item, and then expand the
My Computer item.
3. Select the DCOM Config object. A list of applications displays.
31
Discover and Auto Configure
4. Right-click the OPC server you want to modify and choose Properties. The <Selected OPC
Server> Properties dialog box appears.
5. Click the General tab. The Authentication Level should be set to “Default,” if it is not already.
This uses the default authentication rules that are set in the system-wide DCOM settings.
6. Click the Location tab and make sure that the "Run Application on this computer" check box
is selected.
7. Click the Security tab and select the Customize option for each of the permissions in this
dialog box and edit them as described in the following steps.
8. In the Launch and Activation Permissions area, click Edit. The Launch Permission dialog box
appears for Windows XP, or the Launch and Activation Permission dialog box appears for
Windows Vista or Windows Server 2008.
9. Click the Add button. The Select Users or Groups dialog box appears.
10. Click the Advanced Button. Another Select Users or Groups dialog box appears.
11. Click the Find Now button. In the search results, select the DAC group and click OK. The
Select Users or Groups dialog box displays the DAC group.
12. Click OK to return to the Launch Permission dialog box. The DAC group is displayed in the
Group or user names list.
13. Select the DAC group and then select the Allow check boxes for Local Launch, Remote
Launch, Local Activation, and Remote Activation permissions.
14. Click OK to return to the <Selected OPC Server> Properties dialog box.
15. In the Access Permissions area, click Edit. The Access Permission dialog box appears.
16. Click the Add button. The Select Users or Groups dialog box appears.
17. Click the Advanced Button. Another Select Users or Groups dialog box appears.
18. Click the Find Now button. In the search results, select the DAC group and click OK. The
Select Users or Groups dialog box displays the DAC group.
19. Click OK to return to the Access Permission dialog box. The DAC group is displayed in the
Group or user names list.
20. Select the DAC group and then select the Allow check boxes for Local Access and Remote
Access permissions.
21. Click OK to return to the <Selected OPC Server> Properties dialog box.
22. In the Configuration Permissions area, click Edit. The Change Configuration Permission
dialog box appears.
23. Click the Add button. The Select Users or Groups dialog box appears.
24. Click the Advanced Button. Another Select Users or Groups dialog box appears.
25. Click the Find Now button. In the search results, select the DAC group and click OK. The
Select Users or Groups dialog box displays the DAC group.
26. Click OK to return to the Change Configuration Permission dialog box. The DAC group is
displayed in the Group or user names list.
27. Select the DAC group and then select the Allow check boxes for Full Control and Read
permissions.
28. Click OK to return to the <Selected OPC Server> Properties dialog box.
32
Implementing Alarms and Messages
For more information about the standard toolbars and menus, refer to Toolbars and Menus.
When you are working in the spreadsheet, you may find that the number of extracted tags is too great
to process in one sitting. Therefore, you have the opportunity to save your work and exit the
application, then reopen the file and continue working on it at another time. If you make changes to the
spreadsheet (for example, create tag names), and do not save your work before exiting the application,
you are prompted to save your work as a .DAC file. For more information, see To save a .DAC file.
It is also possible that the source of your tag information has changed since you performed the tag
extraction. If this is the case, you have the ability to rerun the Discovery Agent to extract the tag
information from the source again. You can also use this feature to run the Discovery Agent tool on a
33
Discover and Auto Configure
new source to display the differences between them. For more information, see Rerunning the
Discovery Agent for a Siemens .S7P Project or Rerunning the Discovery Agent for an OPC Server.
The Discover and Auto Configure provides a number of ways to search for tags displayed in the
spreadsheet. Searching can be accomplished by using one of the following features:
• Find
• Filter
• Sort
The System TreeThe system tree displays the tags extracted by the Discovery Agent. The following
diagram is an example of the system tree showing the tags extracted from a Siemens S7 project file.
Tags extracted by the Siemens S7 Discovery Agent are categorized by the PLC programming software.
The project file is separated into two programs according to the CPU information. Each program has a
separate list for its symbols and datablocks. You can select the CPU level to display all symbols and
datablocks for that CPU, or you can expand each level to select an individual symbol or datablock to
display in the spreadsheet.
Discover and Auto Configure System Tree for a Siemens .S7P project
When you use the OPC Discovery Agent, the individual tag information does not automatically display
in the system tree; only the top level initially displays. This is because when the Discover Agent
retrieves all of the data from a remote machine the process can be slow due to large amounts of
information. As you expand each level, the OPC Discovery Agent gets and displays the data for that
level.
34
Implementing Alarms and Messages
The following figure displays an example of the system tree showing the tags extracted from a remote
OPC server.
Discover and Auto Configure System Tree for a Remote OPC Server
When the information for a remote OPC server displays in the system tree, the remote machine name
or TCP/IP address is appended to the OPC server name. In the above example, 3.26.61.47 represents
the TCP/IP address of the remote machine that the OPC server resides on. When you use an OPC
server located on a remote machine, the system tree display uses the format <ipaddress>\<OPC server
name> or <machine name>\<OPC server name>. The remote machine name or TCP/IP address is
entered in the Select Local or Remote OPC Server page of the Discovery Agent Selection Wizard.
The following figure displays an example of the system tree showing the tags extracted from a local
OPC server.
Discover and Auto Configure System Tree for a Local OPC Server
When the information for a local OPC server displays in the system tree, the display format is
<.>\<OPC server name>, where the period (.) represents the local machine. The local machine is
selected in the Select Local or Remote OPC Server page of the Discovery Agent Selection Wizard.
The SpreadsheetThe Discover and Auto Configure spreadsheet displays the information about the tags
you selected to display. In this spreadsheet, you can view the original tag information and select the
individual tags you want to add to your database.
Each of these sections can be expanded and collapsed horizontally to show or hide the columns of tag
information. Click the >> Discovery Agent << cell or the >> Target Application << cell to expand and
collapse these sections.
35
Discover and Auto Configure
The Discovery Agent SectionThe Discovery Agent section of the spreadsheet displays the raw tag
information as it exists in the source. The displayed columns depend on the source you extracted the
tag information from. For more information, see the specific Discovery Agent help topics.
The Select column of check boxes is available for all Discovery Agents and target applications and
affects both sections of the spreadsheet. For more information, see Selecting Tags to Add to the
Database.
The Status column is also available for all Discovery Agents. This column name is different depending
on the Discovery Agent you are using. When you rerun the Discovery Agent on the same source, the
status of the tags is displayed as New, Not Found, Modified, or Blank. When you run the Discovery
Agent on a new source, the status of all tags displays as New. The following table describes each of the
statuses.
Tag Statuses
Status Description
A new tag found by the Discovery Agent during the extraction process
that did not previously exist in the current system tree.
New
NOTE: If you are running the Discovery Agent for the first time, all tag
statuses are displayed as New.
Not Found The tag name, which previously existed in the current system tree, was
not found when the Discovery Agent was rerun on the source.
The tag, which previously existed in the current system tree, was found
Modified when the Discovery Agent was rerun, but some or all of the tag's
information has been modified.
(Blank) No change.
NOTE: The status field is for information purposes only and does not affect your ability to add tags to
or modify tags in the target database.
IMPORTANT: When you are using the OPC or IGS Discovery Agent, the individual tag information
does not automatically display in the system tree; only the top level initially displays. As you expand
each level, the OPC or IGS Discovery Agent gets and displays the data for that level. For this reason,
the OPC or IGS Item Status column may not display the status you expect.
Because the OPC or IGS Server is browsed only when requested (that is, when a branch is expanded),
when you rerun the OPC (or IGS) Discovery Agent, the OPC or IGS Item Status field updates only
those items already displayed in the spreadsheet. When you browse for items for the very first time, the
status field will always display New, regardless of whether there were changes to the OPC or IGS
36
Implementing Alarms and Messages
Server since the first time it was browsed. Only those items already displayed in the spreadsheet show
an updated status.
The Target Application SectionThe target application section of the spreadsheet displays the tag
information the way it will appear in your database. The information in these columns is added
automatically when you define the tags selected from the Discovery Agent section or can be entered
manually. The displayed columns depend on the target application you are adding the tags to. For more
information, see the specific target application help topics.
TIP: After you have added the tag(s) to the database, view the status of the tags in the target
application section. If the tags were successfully added to the database, the Status column displays
OK. A small red square in a cell indicates bad data. Hover the mouse pointer over the red square to
display a pop-up explanation for the bad data. You can double-click in the cell and change the bad
data to valid data, then update the tag information in the database.
FindThe Discover and Auto Configure provides a Find dialog box where you can enter search criteria
to help you find the tag(s) you want. You can enter full words or enter a partial word in the search
field; however, if you use only a partial word, such as "int", every instance of that letter combination is
located.
You can search for the tag information that exactly matches the case entered in the search criteria. For
example, if you enter your search criteria in lower case, the tag information must also be in lower case.
You can also set the search criteria to match the contents of an entire cell; only the cell that exactly
matches the search criteria is found.
The Find feature saves the last 10 searches in a list box, allowing you to repeat a search without having
to re-enter your search criteria. As you enter more search items and exceed the limit of 10, the last item
on the list is deleted.
FilterThe Discover and Auto Configure provides a filter row in the spreadsheet that removes items
from the display that do not match the filter criteria. You can filter tag information based on one
column or any combination of columns. Filtering begins as soon as you move the cursor to another cell
or press ENTER. Wildcards are not supported.
SortThe Discover and Auto Configure provides the ability to sort column information displayed in the
spreadsheet by clicking on the column heading. Sorting the displayed data can make it easier to
understand and find what you are looking for. All the data in the spreadsheet is sorted based on the
values of the first sort column. Within that sort, the data is sorted based on the values of the second
column, and so on.
You can sort the column values in both ascending and descending order. Ascending is the default.
Ascending means that numeric data is sorted from lowest-to-highest and character data is sorted from
A-to-Z. Descending means the numeric data is sorted from highest-to-lowest value and character data
is sorted from Z-to-A.
Names that are surrounded by quotes are sorted separately from names that do not have quotes. That is,
when sorted in ascending order, names with quotes are listed first; when sorted in descending order,
names with quotes are listed last.
You can also sort the Select column of check boxes to group all selected tags together either at the
beginning of the list (ascending) or at the end (descending).
37
Discover and Auto Configure
Number of RowsThe Number of Rows field displays the total number of rows currently displayed in
the spreadsheet.
Number of Selected RowsThe Number of Selected Rows field displays the total number of
selected rows.
In addition, the Discover and Auto Configure provides a search feature and a right-click menu to make
selections from. For more information on the Find feature, see Discover and Auto Configure
Application.
The Standard ToolbarThe following table describes the standard toolbar options. These options are
available with every Discovery Agent and target application.
Locate and load the .DAC file you want to work with.
Save the .DAC file that is currently open. If the .DAC file does not
already exist, the Save As dialog box appears.
Open the Save As dialog box where you can browse to the location you
want to save your .DAC file in.
To view the toolbar buttons specific to the iFIX target application, see The iFIX Wizards Toolbar and
Right-Click Menu.
38
Implementing Alarms and Messages
The Standard MenusThe following table describes the standard menu options. These options are
available with every Discovery Agent and target application.
File
Edit
39
Discover and Auto Configure
NOTES:
NOTES:
View
Select to show the status bar.
Status Bar Select again to hide the status bar.
NOTE: The status bar is displayed by
default.
40
Implementing Alarms and Messages
Help
About Discover and Auto Open the About Discover and Auto
Configure Configure dialog box.
The Right-Click MenuThe following table describes the common right-click menu options. These
options are available with every Discovery Agent and target application. For information about the
right-click menu options for your target application, refer to the toolbar and right-click menu help topic
for your specific target application.
Select All
Select all of the rows displayed in the spreadsheet.
Unselect All
Clear the Select check boxes of all the selected rows.
NOTES:
41
Discover and Auto Configure
NOTES:
The Discover and Auto Configure also allows you to save the spreadsheet you are working on so that
you can open it at another time and continue selecting and defining tags to add to your database.
1. From the toolbar, click the Find in Spreadsheet button. The Find dialog box appears.
2. In the Find what field, enter the search criteria to find the tag(s) you want.
3. If applicable, select the Match case and/or the Match entire cell contents check boxes.
4. Click Find Next. When an item that matches the search criteria is found, the spreadsheet cell
is selected. Continue clicking the Find Next button until you find the item you want.
• Click a column heading to sort the displayed items in ascending order. Click the column
heading again to sort the items in descending order.
42
Implementing Alarms and Messages
1. From the system tree, expand the branch you want to select items from, then select the
applicable level to display the tags in the spreadsheet. For example, for Siemens projects, you
can;
• Select the highest level, which displays all symbols and datablocks.
• Select the Symbols level to display the tags in that Symbol Table.
• Select the Datablocks level to display a list of database blocks.
IMPORTANT: When you use the OPC Discovery Agent, the individual tag information does
not automatically display in the system tree; only the top level initially displays. This is
because getting all of the data from a remote machine can be slow due to large amounts of
information. As you expand each level, the OPC Discovery Agent gets and displays the data
for that level.
2. In the spreadsheet, select the check box of each tag you want to add to the database. Each row
is highlighted in yellow to indicate that it has been selected.
TIPS:
- Or -
- Or -
- Or -
Select the first row and drag the mouse pointer to the last tag you want to add that is
displayed in the current window.
- Or -
Select the check box of the first tag, hold down the SHIFT key and then select the
check box of the last tag you want to add.
- Or -
With the cell cursor on the appropriate Select cell, press the space bar.
43
Discover and Auto Configure
- Or -
With the cell cursor on the appropriate Select cell, press the space bar to clear it.
• To clear all selections, right-click anywhere in the spreadsheet and choose Unselect
All.
Right-click anywhere in the spreadsheet and choose Clear Selected Rows. The
information displayed in the selected rows on the target application side of the
spreadsheet is cleared.
- Or -
Right-click anywhere in the spreadsheet and choose Clear All Rows. The information
displayed in all rows on the target application side of the spreadsheet is cleared.
- Or -
1. Extract the tag information from your project file if you haven't already done so. The tag
information is displayed in the spreadsheet.
2. Click the Save As button. The Save As dialog box appears.
3. Browse to the directory where you want the .DAC file to be located.
4. In the File name field, enter a unique name for your .DAC file and click Save.
1. Launch the Discover and Auto Configure. Step 1 of the Discovery Agent Selection Wizard
appears.
2. Click Cancel to close the wizard. The Discover and Auto Configure application appears with
no information displayed in the spreadsheet.
3. Click the Open button. The Open dialog box appears.
4. Locate and select the .DAC file you want to open and click Open. The .DAC file opens and
displays the tag information in the spreadsheet and system tree.
44
Implementing Alarms and Messages
1. Extract the tag information from your project file or OPC server if you haven't already done
so. The tag information is displayed in the spreadsheet.
2. From the File menu, choose Export to .CSV. The Save As dialog box appears.
3. Browse to the directory where you want the .CSV file to be located.
4. In the File name field, enter a unique name for your .CSV file and click Save.
NOTE: Only the tags or OPC items that are currently displayed in the spreadsheet are
exported.
IMPORTANT: When you use the Discover and Auto Configure on a non-English computer
(that is, the operating system is any language other than English), and you use MS Excel® to
view your exported .CSV file, you must use Excel's ImportData Wizard to import the file
information, otherwise your data may not display properly.
The default English regional settings define the list separator as a comma (,). Non-English
regional settings may use a semicolon (;) as the list separator. Excel uses commas as the list
separator for .CSV (comma separated value) files. Therefore, if you open the .CSV file directly
in Excel on a non-English operating system, the data may not display properly.
1. Start MS Excel.
2. From the Data menu, point to External Data and choose Import Text File. The Import Text
File dialog box appears.
3. From the Files of Type list, choose All Files (*.*) to display the .CSV file you want to view.
4. Select the .CSV file and click Import. The Text Import Wizard appears.
5. Follow the steps of the Text Import Wizard to define the list separator you want to use (for
example, comma).
6. Click Finish to import the data from the .CSV file to Excel. The data is displayed in the Excel
spreadsheet.
Discovery Agents
This section provides you with information about the Discovery Agents that are available to you for
extracting tag information. The following is a list of Discovery Agents currently available:
45
Discover and Auto Configure
The Discovery Agent Selection Wizard takes you through the steps required to select a Discovery
Agent and to extract the desired tag information from the selected source; for example a Siemens S7P
project file, or an OPC server.
The following table lists the wizard steps and indicates whether they are applicable to all Discovery
Agents or if they are specific to only one.
Welcome All
Select an RSLogix 5000 .L5K File IGS - Industrial Gateway Server Discovery Agent
Summary All
46
Implementing Alarms and Messages
IMPORTANT: If you do not have a specific Discovery Agent installed on your computer, the steps
that apply to that Discovery Agent are not available.
NOTE: Click the Back button at any time to make changes to your selections.
You select the OPC Discovery Agent on the Select a Discovery Agent page of the Discovery Agent
Selection Wizard.
This section explains how to use the Discovery Agent Selection Wizard to choose the OPC Discovery
Agent and to extract item information from an OPC server. When you click the Finish button at the
end of the wizard the item information is extracted from the selected OPC server, is read by the
Discover and Auto Configure, and is then displayed in the spreadsheet.
The following table describes the columns exclusive to the OPC Discovery Agent that are displayed in
the spreadsheet.
47
Discover and Auto Configure
Fully Qualified The I/O address of the item, as returned by the OPC server. This
ItemID information can be copied to the Description field in the target
(Comments) application section of the spreadsheet .If the call fails, this field is left
blank.
The OPC client driver uses this field to auto-generate the I/O address
field in the target database tab. If this field is blank, the driver will not
auto-generate the I/O address. You must then enter the I/O address
manually.
OPC Tag Status The status of each item since it was last scanned from the OPC server.
For more information on tag statuses, see The Discovery Agent Section
in the Discover and Auto Configure Application topic.
After selecting the items you want to add to the database and using the applicable iFIX wizards, the
I/O addresses are automatically created in the target application section of the spreadsheet. Using the
server and group you selected from the Driver Wizard, the application converts each fully qualified
item ID into an I/O address that can be used by iFIX and the OPC Client driver.
If you select or enter a remote machine name, the machine name is validated when you attempt to go to
the next page in the wizard. If the remote machine name is not valid, the following message displays:
The Remote Machine Name is not available. Please select or enter a different Machine Name.
IMPORTANT: You must have Administrative rights on the remote machine you are accessing to be
able to access the remote registry.
Click Next to go to the Select an OPC Data Access Server page or click Back to return to the Select a
Discovery Agent page.
NOTE: Click the Back button at any time to make changes to your selections.
48
Implementing Alarms and Messages
If the OPC server you want to use is not listed, see the Browse Failure section below for information
on how to remedy the problem.
TIPS:
• If you see the server you want to use, you do not have to wait until the search is complete. You
can double-click the server or select it and press ENTER.
• If you did not find the OPC server you wanted and either installed it or corrected an issue of
remote access, you can click the Search Again button to start browsing again.
• You can click the Program Name or Description column headers to sort in ascending or
descending order.
Click Cancel to return to the Select Local or Remote OPC Server page.
The Discover and Auto Configure uses various methods for browsing local and remote machines for
OPC servers.
When browsing for OPC servers on the local machine, three methods are used:
• OPCEnum.exe - this is a tool provided by the OPC Foundation that helps clients browse local
or remote machines. The Discover and Auto Configure installs this utility on your local
machine as part of the product installation.
• Browse the Windows Registry for OPC servers.
• By CatagoryID - any OPC 1.0 and 2.0 server that is registered with the Windows
StdComponentCategoriesMgr as an OPC 1.0 or OPC 2.0 CATID Server displays with this
method. This method is not supported for use with remote machines.
When browsing for OPC servers on a remote machine, two methods are used:
• OPCEnum.exe - this is a tool provided by the OPC Foundation that helps clients browse local
or remote machines. The Discover and Auto Configure installs this utility on your local
machine as part of the product installation.
• Browse the Windows Registry for OPC servers. You must have Administrator rights to be
able to do this on a remote machine.
All servers that are found using any of the above methods are displayed in this list.
49
Discover and Auto Configure
Browse Failure
If no servers were found on the machine, the message "No servers were found on the machine"
displays. You must then verify that either the correct machine name/TCP/IP address was entered in the
previous page or that the OPC server(s) are correctly installed on the given machine.
If one or more methods fail, a message box displays indicating the methods used and which ones
succeeded or failed. It also displays an error message indicating the reason for failure, as returned by
the system. Any server(s) found are listed. You can select a server from the list or remedy the reason
for the failure and rerun the search.
One possible remedy includes modifying your DCOM settings, even if your OPC server is running
locally. For more information about DCOM settings, refer to Setting Up DCOM for Discovery of
Remote OPC Servers.
Extracting tag information from an OPC server on the local machine | Extracting tag information from
an OPC server on a remote machine
It is possible that the source of your tag information has changed since you performed the tag
extraction. If this is the case, you can rerun the OPC Discovery Agent to extract the tag information
again. You can also use this feature to run the OPC Discovery Agent on a new OPC server.
1. Launch the Discover and Auto Configure application. The Discovery Agent Selection Wizard
appears.
2. Click Next. The Select a Discovery Agent page appears.
3. From the list, select the OPC Discovery Agent and click Next. The Select Local or Remote
OPC Server page appears.
4. Select Use Local OPC Server to choose an OPC server that is installed on the local machine.
5. Click Next. The Select an OPC Data Access Server page appears, displaying a list of the OPC
servers installed on the local machine.
NOTE: If no servers are found, verify that the OPC server(s) you want to access are properly
installed on the local machine. For more information, see Discovery Agent Selection Wizard -
Select an OPC Data Access Server.
6. Choose the OPC server you want to extract item information from and click OK. The
Summary page appears.
7. Click Finish. The OPC Discovery Agent extracts item information from the selected OPC
server. When you select or expand a branch in the system tree, the item information displays
in the Discover and Auto Configure spreadsheet.
IMPORTANT: You must have Administrative rights on the remote machine you are accessing to be
able to access the remote registry.
50
Implementing Alarms and Messages
1. Launch the Discover and Auto Configure application. The Discovery Agent Selection Wizard
appears.
2. Click Next. The Select a Discovery Agent page appears.
3. From the list, select the OPC Discovery Agent and click Next. The Select Local or Remote
OPC Server page appears.
4. Select Use Remote OPC Server to select an OPC server that is installed on a remote machine.
5. In the Remote machine name or TCP/IP address field, enter the name or TCP/IP address of
the remote computer.
- Or -
Browse the Network list and select the computer name with the OPC server you want to use.
The computer name automatically appears in the Remote machine name or TCP/IP address
field.
6. Click Next. The Select an OPC Data Access Server page appears, displaying a list of the OPC
servers installed on the remote machine.
NOTE: If no servers are found, verify that the OPC server(s) you want to access are properly
installed on the local machine. For more information, see Discovery Agent Selection Wizard -
Select an OPC Data Access Server.
7. Choose the OPC server you want to extract item information from and click OK. The
Summary page appears.
8. Click Finish. The OPC Discovery Agent extracts item information from the selected OPC
server. When you select or expand a branch in the system tree, the item information displays
in the Discover and Auto Configure spreadsheet.
IMPORTANT: When you are using the OPC Discovery Agent, the individual tag information does not
automatically display in the system tree; only the top level initially displays. As you expand each level,
the OPC Discovery Agent gets and displays the data for that level. For this reason, the OPC Item
Status column may not display the status you expect.
Because the OPC Server is browsed only when requested (that is, when a branch is expanded), when
you rerun the OPC Discovery Agent, the OPC Item Status field updates only those items already
displayed in the spreadsheet. When you browse for items for the very first time, the status field will
always display New, regardless of whether there were changes to the OPC Server since the first time it
was browsed. Only those items already displayed in the spreadsheet show an updated status.
1. Launch the Discover and Auto Configure application and follow the Discovery Agent
Selection Wizard steps to extract item information from the OPC server. The item information
is displayed in the Discovery Agent section of the spreadsheet.
NOTE: The OPC Item Status column displays New for all rows.
2. Perform any applicable tasks you need to in the spreadsheet, including selecting tags, defining
tags for the target database, saving a .DAC file, adding tags to the database, and so on.
3. From the File menu, choose Run Discovery Agent. You are prompted with the question "Do
51
Discover and Auto Configure
NOTE: The Step 7 project file (.s7p) and all files associated with the Step 7 project, including all the
other files in the sub-directories within the project directory, must be accessible to the Siemens S7
Discovery Agent and have the Read/Write/Modify/Full Control option enabled.
You select the Siemens Discovery Agent on the Select a Discovery Agent page of the Discovery Agent
Selection Wizard.
This section tells you how to use the Discovery Agent Selection Wizard to choose the Siemens
Discovery Agent and to extract database tag information from a Siemens .S7P project file. When you
click the Finish button at the end of the wizard the database tag information is extracted from the
selected project file, is read by the Discover and Auto Configure, and then displayed in the
spreadsheet.
The following table describes the columns exclusive to the Siemens S7 Discovery Agent that are
displayed in the spreadsheet.
52
Implementing Alarms and Messages
Siemens Tag The status of each tag since it was last scanned from the .s7p project
Status file. For more information on tag statuses, see The Discovery Agent
Section in the Discover and Auto Configure Application topic.
Click Next to go to the Summary page or click Back to return to the Select a Discovery Agent page.
NOTE: Click the Back button at any time to make changes to your selections.
IMPORTANT: The Step 7 project file (.s7p) and all files associated with the Step 7 project, including
all the other files in the sub-directories within the project directory, must be accessible to the Siemens
S7 Discovery Agent. Project files must have the Read/Write/Modify/Full Control option enabled;
otherwise, the project cannot be opened (whether the project files reside on a local or remote
computer).
1. Launch the Discover and Auto Configure application. The Discovery Agent Selection Wizard appears.
2. Click Next. The Select a Discovery Agent page appears.
3. From the list, select the Siemens S7 Discovery Agent and click Next. The Select a Siemens
S7P Project page appears.
53
Discover and Auto Configure
4. Enter the full path and file name of the .S7P project file you want to extract tag information
from, or click the Browse button to locate the file you want.
NOTE: If the project files are located on a shared (mapped) drive on a remote machine, that
shared drive must have the allow Read/Write/Modify/Full Control option enabled, otherwise
the project cannot be opened.
5. Click Next. The Summary page appears displaying a summary of the selections you made in
the previous wizard pages.
6. Click Finish. The Siemens S7 Discovery Agent extracts all of the tag information from the
selected project file and displays it in the Discover and Auto Configure application.
1. Launch the Discover and Auto Configure application and follow the Discovery Agent
Selection Wizard steps to extract tag information from the source file. The tag information
displays in the Discovery Agent section of the spreadsheet.
NOTE: The Tag Status column displays New for all rows.
2. Perform any applicable tasks you need to in the spreadsheet, including selecting tags, defining
tags for the target database, saving a .DAC file, adding tags to the database, and so on.
3. From the File menu, choose Run Discovery Agent. You are prompted with the question "Do
you want to run the Discovery Agent again?"
4. Click Yes. The Discovery Agent Selection Wizard opens at the Select a Siemens .S7P Project
File page and the location of the current source file is displayed.
5. Click Next to go to the Summary page, and then click Finish. The tag information is extracted
from the source file again. The Discovery Agent tool compares the tag information from the
new extraction with the tags displayed in the spreadsheet and then updates the spreadsheet.
The status of each tag is updated in the spreadsheet. The status can be New, Modified, Not
Found, or blank (that is, no change). For more information, refer to the Discovery Agent
Section of the Discover and Auto Configure Application topic.
6. Click the Tag Status column to sort the statuses and view the differences.
You select the Allen-Bradley PLC-5/SLC 500/MicroLogix Families Discovery Agent on the Select a
Discovery Agent page of the Discovery Agent Selection Wizard.
This section tells you how to use the Discovery Agent Selection Wizard to choose the Allen-Bradley
54
Implementing Alarms and Messages
PLC-5/SLC 500/MicroLogix Families Discovery Agent and how to extract symbol information from a
Rockwell RSLogix .EAS file. When you click the Finish button at the end of the wizard the symbol
information is extracted from the selected file, is read by the Discover and Auto Configure application,
and then displayed in the spreadsheet.
The following table describes the columns exclusive to the Allen-Bradley PLC-5/SLC 500/MicroLogix
Families Discovery Agent that are displayed in the spreadsheet.
Allen-Bradley The status of each symbol since it was last scanned from the .EAS file.
PLC Tag Status For more information on tag statuses, see The Discovery Agent Section
in the Discover and Auto Configure Application topic.
Type Description
A ASCII
55
Discover and Auto Configure
Type Description
B Binary
BT Block Transfer
C Counter
CT ControlNet Transfer
D BCD
F Float
I Input
MG Message Control
N Integer
O Output
PD PID control
R Control
56
Implementing Alarms and Messages
Type Description
S Status
ST String
R Timer
IMPORTANT:
• Generally, only the file or memory types supported by the GE Intelligent Platforms ABR
Driver v7.2x or above are supported by this Discovery Agent.
• The Discovery Agent will not perform any Address Range checking. You need to make sure
that the imported addresses match those in the PLC.
• The Discovery Agent imports all the file or memory types in the above table, regardless of the
type of PLC (for example, PLC-5, SLC 500, or MicroLogix) that you configured. The PLC
may only support a sub-set of the above file or memory types. Therefore, when configuring
your driver, you need to map it to the device with the appropriate PLC type. Otherwise, you
may get errors when trying to add tags to iFIX or the driver configurations.
You also need to enter a name for the PLC you are extracting the symbol information for. The wizard
uses this name to determine whether the PLC is a new device being imported into the project, or it is a
device already existing in the project. The latter case can happen if you re-run the discovery agent to
update an existing device. You can conveniently select the name from the drop-down list if it is an
existing device in the project.
NOTE: You can extract symbols from only one EAS file a time. To extract symbols from more devices,
rerun the Discovery Agent.
Click Next to go to the Summary page or click Back to return to the Select a Discovery Agent page.
NOTE: Click the Back button at any time to make changes to your selections.
57
Discover and Auto Configure
1. Launch the Discover and Auto Configure application. The Discovery Agent Selection Wizard
appears.
2. Click Next. The Select a Discovery Agent page appears.
3. From the list, select the Allen-Bradley PLC-5/SLC 500/MicroLogix Families Discovery
Agent and click Next. The Select an RSLogix .EAS File page appears.
4. Enter the full path and file name of the .EAS file you want to extract symbol information
from, or click the Browse button to locate the file you want.
5. Enter or select a name for the device.
6. Click Next. The Summary page appears displaying a summary of the selections you made in
the previous wizard pages.
7. Click Finish. The Allen-Bradley PLC-5/SLC 500/MicroLogix Families Discovery Agent
extracts all of the symbol information from the selected .EAS file and displays it in the
Discover and Auto Configure application.
1. Launch the Discover and Auto Configure application and follow the Discovery Agent
Selection Wizard steps to extract symbol information from the source file. Or, you can Open
an existing DAC Project File for the Allen-Bradley PLC-5/SLC 500 /MicroLogix Discovery
Agent that you previously saved.
The symbol information displays in the Discovery Agent section of the spreadsheet.
NOTE: The Tag Status column displays New for all rows.
2. Optionally, perform any applicable tasks you need to in the spreadsheet, including selecting
tags, defining tags for the target database, saving a .DAC file, adding tags to the database, and
so on.
3. From the File menu, choose Run Discovery Agent. You are prompted with the question "Do
you want to run the Discovery Agent again?"
4. Click Yes. The Discovery Agent Selection Wizard opens at the Select an RSLogix .EAS file
page and the location of the current source file is displayed.
5. Click Next to go to the Summary page, and then click Finish. The symbol information is
extracted from the source file again. The Discovery Agent tool compares the symbol
information from the new extraction with the symbols displayed in the spreadsheet and then
updates the spreadsheet.
The status of each tag is updated in the spreadsheet. The status can be New, Modified, Not
58
Implementing Alarms and Messages
Found, or blank (that is, no change). For more information, refer to the Discovery Agent
Section of the Discover and Auto Configure Application topic.
6. Click the Tag Status column to sort the statuses and view the differences.
You select the IGS - Industrial Gateway Server Discovery Agent on the Select a Discovery Agent page
of the Discovery Agent Selection Wizard.
This section tells you how to use the Discovery Agent Selection Wizard to choose the IGS - Industrial
Gateway Server Discovery Agent and how to extract symbol information from a Rockwell RSLogix
.L5K file for ControlLogix PLCs. When you click the Finish button at the end of the wizard the
symbol information is extracted from the selected file, is read by the Discover and Auto Configure, and
then displayed in the spreadsheet.
The following table describes the columns exclusive to the IGS - Industrial Gateway Server Discovery
Agent that are displayed in the spreadsheet.
Status The status of each tag since it was last scanned from the .L5K file. For
more information on tag statuses, see The Discovery Agent section in
the Discover and Auto Configure Application topic.
59
Discover and Auto Configure
IMPORTANT:
• This Discovery Agent supports only the file or memory types supported by the GE Intelligent
Platforms IGS driver version 7.41 and 7.51 or greater.
• The Discovery Agent does not perform any Address Range checking. You need to make sure
that the imported addresses match those in the PLC.
• The Discovery Agent imports all the file or memory types that are supported by the IGS
driver. The PLC may only support a sub-set of the memory types. Therefore, when
configuring your driver, you need to map it to the device with the appropriate PLC type.
Otherwise, you may get errors when trying to add tags to iFIX or the driver configurations.
• The IGS driver configuration tags displayed in the tree view and spreadsheet are not limited
to ControlLogix PLCs. You can browse all the configured channels and devices in your IGS
Server.
• When you are using the IGS Discovery Agent, the individual tag information does not
automatically display in the system tree; only the top level initially displays. As you expand
each level, the IGS Discovery Agent gets and displays the data for that level. For this reason,
the IGS Item Status column may not display the status you expect.
• Because the IGS Server is browsed only when requested (that is, when a branch is expanded),
when you rerun the IGS Discovery Agent, the IGS Item Status field updates only those items
already displayed in the spreadsheet. When you browse for items for the very first time, the
status field will always display New, regardless of whether there were changes to the IGS
Server since the first time it was browsed. Only those items already displayed in the
spreadsheet show an updated status.
• Import New RSLogix 5000 .L5K File – if you want to add a new device and import an .L5K
file.
• Browse Current IGS Driver Configuration – if you want to browse existing IGS driver
configurations. In this case, you do not add or rescan the existing devices.
NOTE: The GE Intelligent Platforms IGS driver version 7.51 has the ability to add additional
protocols when setting up the IGS driver configuration. When you browse your current IGS
driver configuration to populate the DAC items, the browse now includes items in the IGS
driver configuration created under any of these additional protocols.
• Rescan Existing Device Tags from .L5K File – if you want to rescan an existing device.
This triggers an IGS driver database tag update for the existing device that you select.
Click Next to go to the next page, or click Back to return to the previous page.
NOTE: Click the Back button at any time to go back to make changes to your previous selections.
60
Implementing Alarms and Messages
After you enter the name for the .L5K file, the Device name, IP address, and slot number from the
.L5K file automatically appear in this dialog box, if available. By default, the Controller name found in
the .L5K file is used as your device name.
If these are not available or you want to change these values, you need to manually enter the name of
the PLC or Device you are extracting the tag information for, along with the IP address and the CPU
slot number.
Select the ControlLogix Ethernet channel from the drop-down list. If you want to add a new
ControlLogix Ethernet channel, type in the channel name. A new channel is added to the IGS
configuration. The Device or PLC that you enter is added to this channel.
NOTES:
• You can extract tags from only one .L5K file a time. To extract tags from more devices, rerun
the Discovery Agent.
• If you have multiple Ethernet modules in your PLC project, the Discovery Tool obtains the IP
address of the first ENET module found in your .L5K file. If it cannot find the IP address in
your .L5K file, this field remains blank. You must then manually enter the IP address for
proper communications to your PLC.
• Similarly, if you have multiple CPU modules in your PLC project, the Discovery Tool obtains
the slot number for the first controller module found in your .L5K file.
• In the Channel drop-down list, the Discovery Tool displays only the channels in the IGS that
have been configured for ControlLogix Ethernet driver communications.
Click Next to go to the Summary page or click Back to return to the previous page.
NOTE: Click the Back button at any time to make changes to your selections.
This triggers the IGS driver to perform a database tag update for the existing device that you select.
NOTE: You can rescan tags from only one .L5K file a time. To rescan tags from more devices, rerun
the Discovery Agent.
Click Next to go to the Summary page or click Back to return to the previous page.
61
Discover and Auto Configure
1. Launch the Discover and Auto Configure application. The Discovery Agent Selection Wizard
appears.
2. Click Next. The Select a Discovery Agent page appears.
3. From the list, select the IGS - Industrial Gateway Server Discovery Agent and click Next. The
Select an Action page appears.
4. Select the Import New RSLogix 5000 .L5K File option and click Next. The Select an
RSLogix 5000 .L5K File page appears.
5. Enter the full path and file name of the .L5K file you want to extract symbol information
from, or click the Browse button to locate the file you want.
6. Enter a name for the device if it does not automatically appear when you enter or select the
.L5K file. By default, the Controller name found in the .L5K file is used as your device name.
7. Enter the Device IP address and CPU slot number if it does not automatically appear when
you enter or select the .L5K file. By default, the IP Address found for the first ENET module
will be used as your IP address. Similarly, by default, the slot number for the first controller
module found in your .L5K file will be used as the CPU slot number.
8. Select a ControlLogix channel from the drop-down list.
9. Click Next. The Summary page appears displaying a summary of the selections you made in
the previous wizard pages.
10. Click Finish. The IGS - Industrial Gateway Server Discovery Agent extracts all of the symbol
information from the selected .L5K file and displays it in the Discover and Auto Configure
application.
Rerunning the Discovery Agent for the IGS Driver for an RSLogix .L5K
Project
It is possible that the source of your tag information has changed since you performed the tag
extraction. If this is the case, you can rerun the IGS - Industrial Gateway Server Discovery Agent to
extract the tag information again. You can also use this to add a new device.
IMPORTANT: When you are using the IGS Discovery Agent, the individual tag information does not
automatically display in the system tree; only the top level initially displays. As you expand each level,
the IGS Discovery Agent gets and displays the data for that level. For this reason, the IGS Item Status
column may not display the status you expect.
Because the IGS Server is browsed only when requested (that is, when a branch is expanded), when
you rerun the IGS Discovery Agent, the IGS Item Status field updates only those items already
displayed in the spreadsheet. When you browse for items for the very first time, the status field will
always display New, regardless of whether there were changes to the IGS Server since the first time it
was browsed. Only those items already displayed in the spreadsheet show an updated status.
62
Implementing Alarms and Messages
1. Launch the Discover and Auto Configure application and follow the Discovery Agent
Selection Wizard steps to extract tag information from the source file. Or, you can open an
existing DAC Project File for the IGS - Industrial Gateway Server Discovery Agent that you
previously saved.
The tag information displays in the Discovery Agent section of the spreadsheet.
NOTE: The Tag Status column displays New for all rows.
2. Optionally, perform any applicable tasks you need to in the spreadsheet, including selecting
tags, defining tags for the target database, saving a .DAC file, adding tags to the database, and
so on.
3. From the File menu, choose Run Discovery Agent. You are prompted with the question "Do
you want to run the Discovery Agent again?"
4. Click Yes. The Discovery Agent Selection Wizard opens at the Select an Action page.
5. If you want to rescan an existing device, select the Rescan Existing Device Tags from .L5K
File option. If you want to add a new device, select the Import New RSLogix 5000 .L5K
Configuration File option.
6. Click Next to go to the Summary page, and then click Finish. The tag information is extracted
from the source file again. The Discovery Agent tool compares the tag information from the
new extraction with the symbols displayed in the spreadsheet and then updates the
spreadsheet.
The status of each tag is updated in the spreadsheet. The status can be New, Modified, Not
Found, or blank (that is, no change). For more information, refer to the Discovery Agent
Section of the Discover and Auto Configure Application topic.
6. Click the Tag Status column to sort the statuses and view the differences.
Click Finish to complete the Discovery Agent Selection Wizard, or click Back to return to the previous
page.
NOTE: Click the Back button at any time to make changes to your selections.
When you click Finish, the Discover and Auto Configure extracts the tag or item information you want
and displays it in the left side of the spreadsheet. You are now ready to select the tags or items you
want to add to the database and to define the information so that the selected driver can use it.
63
Discover and Auto Configure
Target Applications
This section provides you with information about the target applications that are available to you to
add the selected database tags to. Each target application has its own database to store its database tags
and their information. The following are the target applications currently available:
The Discover and Auto Configure application provides the ability to add and remove iFIX database
columns displayed in the target application side of the spreadsheet. You can even rename iFIX column
names. For more information, refer to the Modifying iFIX Columns in the Spreadsheet section.
Alternatively, a text file, called iFIXColumns.txt is installed with the application and is located in the
same directory as the application. This file also contains the default iFIX database columns and
descriptive information to help you add columns to the spreadsheet. You can add additional columns or
you can remove columns, including the default columns, by deleting them or simply hiding them by
using this text file as well. For more information about using the iFIXColumns.txt file, refer to the
Using the iFIXColumns.txt File to Modify iFIX Columns in the Spreadsheet section.
NOTES:
• If the Discover and Auto Configure application is open when you make a change to the
iFIXColumns.txt file, you must exit and restart the application for the changes to take effect.
• If you delete the iFIXColumns.txt file, the application will regenerate the file with the default
columns.
The following table describes the default Proficy HMI/SCADA - iFIX columns displayed in the target
application section of the spreadsheet.
Tag Name The name of the tag as it will appear in your database..
Type The assigned database block type. For more information, see Block
Type and Scan time Wizard.
64
Implementing Alarms and Messages
Description Descriptive information about the tag. This information can be added
manually or copied from the Comment column. For more information,
see Tag Name and Description Wizard.
Scan Time The scan time assigned to the tags. For more information, see Block
Type and Scan Time Wizard.
Driver The selected driver that will use the tags added to the database. For
more information, see Driver Wizard.
I/O Address The I/O Address automatically assigned to the tag by the selected
driver device.
H/W The hardware option for the tag. You manually enter this information.
Depending on the driver you are using, the Hardware option field may
be assigned automatically for I/O addresses with certain datatypes.
Hardware options must match the hardware options available in the
database for the driver that you selected.
Signal Cond The signal conditioning option for the tag. You manually enter this
information. Depending on the driver you are using, the signal
conditioning field may be assigned automatically for I/O addresses
with certain datatypes. Signal conditioning options must match the
signal conditioning options available in the database for the driver that
you selected.
Last Action Status Flag that indicates whether the tag was successfully added to your
database.
For more information, refer to the Proficy HMI/SCADA - iFIX electronic books.
65
Discover and Auto Configure
dialogs as a wizard, you are provided with Next and Back buttons to move forward and backward
through the dialog boxes. When you open an individual dialog box, you simply click OK to save your
changes and close the dialog box.
iFIX Wizards ToolbarThe iFIX Wizards toolbar buttons are available only when your target
application database is Proficy iFIX and you have selected at least one tag in the spreadsheet.
Launch the series of dialog boxes starting with the Tag Name and
Description Wizard. When you are finished with each Wizard, click
Next.
Apply the changes you make to the tag information in the spreadsheet to
the tag in the iFIX Process Database.
iFIX Right-Click MenuThe iFIX right-click menu options are available whenever your target
application database is Proficy iFIX.
66
Implementing Alarms and Messages
Add to iFIX
Add the selected tags to the iFIX Process Database.
Modify in iFIX
Apply the changes you make to the tag information in the
spreadsheet to the tag in the iFIX Process Database.
You can choose not to add a prefix or suffix to the tag name in the Tag Name and Description Wizard;
however, the Discover and Auto Configure may make changes to the tag name, based on which
characters are recognized as valid. For more information about naming conventions, refer to Tag Name
and Description Wizard.
67
Discover and Auto Configure
Select this check box to indicate that you want to add a prefix and/or suffix to all of the currently
selected tags you are adding to your database. You can also choose whether to truncate the tag name to
the first 30 characters or the last 30 characters.
Specifies the prefix to add to the tag names when adding tags the database. Prefixes must follow the
iFIX naming conventions. The maximum number of characters is 30.
Specifies the suffix to add to the tag names when adding tags to the database. Suffixes must follow the
iFIX naming conventions. The maximum number of characters is 30.
Specifies that if the tag names exceed 30 characters, the names will be truncated to the first 30
characters when added to the database. These 30 characters include any prefix or suffix added to the
tag name.
Specifies that if the tag names exceed 30 characters, the names will be truncated to the last 30
characters when added to the database. These 30 characters include any prefix or suffix added to the
tag name.
Specifies the character that will replace all invalid characters in a symbol name. The default is an
underscore ( _ ).
Specifies the character that will replace the first character, if it is not a valid iFIX character. The
default is a capital letter A.
For more information on character substitutions, refer to the Naming Conventions section.
Select this check box to indicate that you want to copy the discovered comment to the Description field
and/or add a prefix to the Description field when it is copied.
Select this check box to indicate that if a selected tag has any information in its Comments field, that
the first 40 characters will be copied to the Description field for the corresponding tag in the iFIX
section of the spreadsheet. The maximum length of the iFIX Description field is 40 characters. These
40 characters include any Description Prefix you specify.
68
Implementing Alarms and Messages
NOTE: OPC servers do not store comments about OPC items; therefore, the OPC Discovery Agent
cannot browse comments from OPC Servers. However, the Fully Qualified ItemID is stored and can be
copied to the Description field in the iFIX section of the spreadsheet. If you select this check box, but
no Fully Qualified ItemID was found, the Description field remains blank unless you enter a prefix. In
this case, only the prefix displays in the Description field.
Description Prefix
Specifies the prefix to add to the description when the tags are added to the database. Prefixes must
follow the iFIX naming conventions. The maximum number of characters is 40.
Naming ConventionsIn most cases the names of the tags that are extracted from a PLC project file or
OPC Server will not follow the same naming conventions as the target application you are adding the
tags to. Therefore, when tag information is added to the target application section of the spreadsheet,
the tag names must follow the same naming conventions as your target database application;
otherwise, the tag creation in the target database application will fail. These rules are valid whether you
are adding prefixes and/or suffixes in the Tag Name and Description Wizard, or making the changes
manually in the spreadsheet.
iFIX tag names must begin with a letter or a number and can be a maximum of 30 characters. Tag
names can also include the following special characters:
( | ) Pipes
Conversion Process
Prefixes and suffixes that you add using the Tag Name and Description Wizard must follow the
naming conventions of Proficy iFIX. You can choose not to add a prefix or suffix to the tags; however,
69
Discover and Auto Configure
be aware that the Discover and Auto Configure will automatically convert tag names that do not follow
the naming conventions. The conversion process is as follows:
• Whether a valid prefix and/or suffix is added, the Name is checked before being added to the
target application section of the spreadsheet. Using the default character substitution, any
invalid characters are replaced with an underscore ( _ ). For example, you have added the
prefix MyTag. Therefore, the tag name "Counter2" is changed to MyTag_Counter2_. The
quotation marks are invalid characters and are changed to underscores.
• If the first character is not a valid iFIX character, it is replaced with the first character
substitution you defined. For example, you have not added a prefix or suffix and you are
using the default first character substitution (the letter A) and the default character substitution
(an underscore). Therefore, the tag name "Counter2" is changed to ACounter2_. The
quotation marks are invalid characters; the first invalid character is changed to an A because it
is not a valid iFIX character, and the second invalid character is changed to an underscore.
• The tag name is checked for uniqueness. If the tag name already exists within this Discovery
tool, the last character(s) of the tag name are replaced with a number to aid in the uniqueness.
The number that is appended replaces the last character(s) in the tag name. The numbering
starts at 1 and increments by 1 for each duplicate tag name, up to 99,999. For example:
• The first tag name is MyTag_AAAAAAAAAAAAAAAAAAAAAAAA.
• The next tag name is a duplicate of the first, so it will change to
MyTag_AAAAAAAAAAAAAAAAAAAAAAA1.
• The next duplicate will change to
MyTag_AAAAAAAAAAAAAAAAAAAAAAA2.
• The tenth duplicate will change to
MyTag_AAAAAAAAAAAAAAAAAAAAAA10 and so on.
Select this check box to indicate that you want to choose a block type to assign to all of the currently
selected tags you are adding to your database. Selecting this check box enables the Block Type list.
Block Type
Specifies the type of block you want to assign to all of the currently selected tags in the spreadsheet.
This list is available only when the Block Type check box is selected.
NOTE: iFIX must be installed and running to display a list of valid block types.
Select this check box to indicate that you want to set either a scan time or exception-based processing
70
Implementing Alarms and Messages
for the currently selected tags you are adding to your database. This check box is not available if you
select an AO, AR, DO, or DR block type.
Select this check box to indicate that you want to use exception-based processing to scan the tags after
they have been added to your database. Exception-based processing means that the blocks are
processed by exception, not at scheduled time intervals.
When you select this check box, an E is displayed in the Scan Time field and you cannot change it or
access the Phase At field.
For more information about exception-based processing, see the Understanding Exception-Based
Processing topic in the iFIX online help.
Scan Time
Specifies the scan time to use for time-based processing. Time-based processing means that the blocks
are processed at a scheduled time interval. The format for scan times is:
time unit
Valid units are M (minutes) and H (hours). If you do not enter a unit of time, it is assumed that the unit
is seconds.
3M
30
For more information about time-based processing, see the Understanding Time-Based Processing
topic in the iFIX online help.
Phase At
Specifies the phase time to use for time-based processing. Phasing staggers the time at which the
blocks are scanned. The phase time must have the same unit or one unit lower than the scan time unit.
For example, if the scan time is 3 minutes and you want to the scan phased at 1 minute 30 seconds,
enter:
1:30
0:30
For more information about phasing, see the Phasing topic in the iFIX online help.
71
Discover and Auto Configure
Driver Wizard
The Select Driver page of the Driver Wizard is where you select the driver that the database adds the
tags to. On this page you will find a list of the available drivers you can add the tags to; that is, the
drivers that are installed on your computer and are associated with the Discovery Agent you used. This
page also displays a brief description of the selected driver.
The Group Selection page is where you select the OPC Client driver server and the group that the OPC
items will be added to. On this page you will find a system tree-like list of the existing servers and
groups that have been configured for the OPC Client driver that match the ProgID of the OPC server
you are working with. The list of servers and groups that display are from the OPC Client driver
configuration that match either the version dependent or version independent OPC server ProgID, and
the local or remote machine (including remote machine name) selected in the Discovery Agent Wizard.
When this dialog box opens, the OPC Discovery Agent checks to see if the OPC server you are
working with already exists in the iFIX OPC Client driver. If it does not exist, the server and a group,
with default settings, are automatically added to the OPC Client driver configuration. However, if the
server exists but it has no groups configured for it, a group is added, with default settings. The server
and group are then displayed in the selection tree. The new server and group are enabled and the OPC
Client driver configuration is saved automatically.
If the group you want does not exist or requires changes, you can open the Add/Modify OPC Group
dialog box to make additions or changes to the groups.
Alternatively, you can launch the OPC Client driver Power Tool where you can add or change servers
and groups; however, if you add a server with a ProgID that is different from the OPC server you are
working with, it will not display. When you complete your changes in the Power Tool, return to this
page and click the Refresh button to update the servers and groups.
Display only. Specifies the OPC server that the items you are adding to the database originated from.
When you use a remote OPC server, the remote machine name or TCP/IP address is appended to the
OPC server name. A remote OPC Server name uses the format <ipaddress>\<OPC server name> or
<machine name>\<OPC server name>. For example, 3.6.9.12\Intellution.IntellutionGatewayServer.
A local OPC Server name uses the format <.>\<OPC server name>, where the period (.) represents the
local machine. For example, .\Intellution.IntellutionGatewayServer.
Displays the servers and associated groups that are currently configured for the OPC Client driver.
72
Implementing Alarms and Messages
Use this button to open the Add New OPC Group dialog box where you can add a new group
configuration for the selected OPC Client server.
View Properties
Display only. Specifies the configuration properties of the selected OPC Client server. This button is
available only when you have selected a server.
Modify Group
Use this button to open the Modify OPC Group dialog box where you can change the configuration of
the selected group. This button is available only when you have selected a group.
Use this button to open the OPC Client Driver's Power Tool where you can add or change the desired
server and/or group.
Refresh
Use this button to refresh the server and group list after modifying the driver's Power Tool.
Click OK to go to the Summary page if you are using the iFIX - All Wizards feature. If you are using
the Driver Wizard alone, click OK to update the currently selected items in the target application
section of the spreadsheet. Click Back to return to the Select Driver page.
The Add/Modify OPC Group dialog box is where you can add a new group to a server displayed in the
OPC Driver - Group Selection dialog box, or modify an existing group. Any groups you add using this
dialog box are automatically displayed in the list on the Group Selection dialog box. A group is
automatically enabled after you add it.
The fields available for configuration on this dialog box are the same whether you use the Add New
Group button or the Modify Group button on the Group Selection dialog box; the only difference is
that the button you click determines the title of the dialog box.
This dialog box is the same as the properties viewer for groups on the GE Intelligent Platforms OPC
Client Power Tool. This provides you with the same configuration fields, allowing you to bypass the
OPC Client Power Tool. However, group information that you add or change in this dialog box is
automatically updated in the Power Tool.
NOTES:
• Changes to a server can only be made in the OPC Client Power Tool.
• Some OPC Servers do not allow group names to be changed. An error message is displayed if
this is the case.
For detailed information about configuring OPC Client groups, refer to the OPC Client driver online help.
73
Discover and Auto Configure
Working with Servers and Groups for the OPC Client Driver
Selecting a server and a group | Adding servers or groups to the driver | Viewing server properties
1. Select the OPC client driver you want to add the database tags to and click Next. The OPC
Client - Group Selection page appears.
2. From the list of servers, expand the server with the group you want and select the desired
group.
If the server or group information you want is not available, refer to the procedures To add an
OPC group and To add or change a server or group using the Power Tool.
3. Click OK. The server, group, and item information is added to the I/O Address field in the
target application section of the spreadsheet for the selected items.
NOTE: The Driver Wizard does not automatically generate an I/O address for a tag with a
blank Fully Qualified Item ID field in the Discovery Agent section of the spreadsheet. If you
selected one of these tags to add to iFIX, the I/O Address field remains blank, or contains the
ServerX.GroupY name only when the Driver Wizard completes. You can double-click the I/O
Address field and manually enter an I/O address before or after adding the tag to iFIX or you
can enter an I/O address directly in Database Manager after the tag has been added to iFIX.
1. If the server or group you want is not available, click the Run OPC Power Tool button. The
I/O Driver Server Connection dialog box appears, allowing you to connect to the OPC Client
Driver Power Tool.
IMPORTANT: Make sure you connect to the locally installed OPC Client driver. If you
connect to a remote driver, the changes you make to its configuration file will not display in the
OPC Client- Group Selection page.
2. In the Power Tool, add the required server and/or group information and save your changes.
For more information about adding servers and groups, refer to the OPC Client Driver online
help.
3. On the OPC Driver - Group Selection page of the Driver Wizard, click the Refresh button to
refresh the list of servers and groups. Your changes now appear in the list.
On the OPC Driver - Group Selection page, select the server you want to view and click View
Properties. The iFIX OPC Client Server Properties dialog box appears.
NOTE: If you need to make changes to the server properties, see To add or change a server or
group using the Power Tool.
74
Implementing Alarms and Messages
1. From the list of servers and groups on the OPC Driver - Group Selection dialog box, select
the server that you want to add a group to.
2. Click the Add New Group button. The Add New OPC Group dialog box appears.
3. Configure the group, as required. For more information, refer to the OPC Client Driver online
help.
4. Click OK to save your changes and return to the OPC Driver - Group Selection dialog box.
The new group appears below the selected server.
1. From the list of servers and groups on the OPC Driver - Group Selection dialog box, select
the group you want to change.
2. Click the Modify Group button. The Modify OPC Group dialog box appears.
3. Configure the group, as required. For more information, refer to the OPC Client Driver online
help.
4. Click OK to save your changes and return to the OPC Driver - Device Selection dialog box.
Siemens S7 Drivers
The S7A Driver - Device Selection page of the Select Driver Wizard is where you select the channel
and device of the S7A driver that the tags will be added to. On this page you will find a system tree-
like list of the existing channels and devices that have been configured for the S7A driver. If the
channel and/or device you want does not exist, you can launch the S7A Driver Power Tool to add the
necessary information.
Display only. Specifies the name of the driver selected on the Select Driver page, that is, S7A.
Display only. Specifies the program name that the tags you are adding to the database originated from.
Use this button to open the S7A Driver Power Tool to add or change the desired channel and/or device.
Refresh
Use this button to refresh the channel and device list after modifying the S7A driver's configuration file
with the Power Tool.
75
Discover and Auto Configure
Click OK to go to the Summary page if you are using the iFIX - All Wizards feature. If you are using
the Driver Wizard alone, click OK to update the currently selected items in the target application
section of the spreadsheet. Click Back to return to the Select Driver page.
The SI7 Driver - Device Selection page of the Select Driver Wizard is where you select the channel
and device of the SI7 driver that the tags will be added to. On this page you will find a system tree-like
list of the existing channels and devices that have been configured for the SI7 driver. If the channel
and/or device you want does not exist, you can launch the SI7 Driver Power Tool to add the necessary
information.
Display only. Specifies the name of the driver selected on the Select Driver page, that is, SI7.
Display only. Specifies the program name that the tags you are adding to the database originated from.
Use this button to open the SI7 Driver Power Tool to add or change the desired channel and/or device.
Refresh
Use this button to refresh the channel and device list after modifying the SI7 driver's configuration file
with the Power Tool.
Click OK to go to the Summary page if you are using the iFIX - All Wizards feature. If you are using
the Driver Wizard alone, click OK to update the currently selected items in the target application
section of the spreadsheet. Click Back to return to the Select Driver page.
Selecting a channel and a device | Adding channels and devices to the driver
1. Select the S7A driver and click Next. The S7A Driver - Device Selection page appears.
2. Expand the channel with the device you want and select the desired device.
If the channel or device information you want is not available, refer to the procedure To add
channel and device information to the driver.
3. Click OK. The driver and device information is added to the target application section of the
spreadsheet for the selected tags.
NOTE: The Driver Wizard does not automatically generate an I/O address for a tag with a
data type such as VAT or None. If you selected one of these tags to add to iFIX, the I/O
Address field remains blank when the Driver Wizard completes. You can double-click the I/O
76
Implementing Alarms and Messages
Address field and manually enter an I/O address before or after adding the tag to iFIX or you
can enter an I/O address directly in Database Manager after the tag has been added to iFIX.
1. If the channel and/or device you want is not available, click the Run S7A Power Tool button.
The S7A Driver Power Tool Server Connection dialog box appears, allowing you to connect
to the driver.
IMPORTANT: Make sure you connect to the locally installed S7A driver. If you connect to a
remote driver, the changes you make to its configuration file will not display in the S7A
Driver - Device Selection page.
2. In the S7A Driver Power Tool, add the applicable channels and/or devices you require and
save your changes. For more information about adding channels and devices, refer to the S7A
Driver online help.
3. On the S7A Driver - Device Selection page, click the Refresh button to refresh the list of
channels and devices. Your changes now appear in the list.
Selecting a channel and a device | Adding channels and devices to the driver
1. Select the SI7 driver and click Next. The SI7 Driver - Device Selection page appears.
2. Expand the channel with the device you want and select the desired device.
If the channel or device information you want is not available, refer to the procedure To add
channel and device information to the driver.
3. Click OK. The driver and device information is added to the target application section of the
spreadsheet for the selected tags.
NOTE: The Driver Wizard does not automatically generate an I/O address for a tag with a
data type such as VAT or None. If you selected one of these tags to add to iFIX, the I/O
Address field remains blank when the Driver Wizard completes. You can double-click the I/O
Address field and manually enter an I/O address before or after adding the tag to iFIX or you
can enter an I/O address directly in Database Manager after the tag has been added to iFIX.
1. If the channel and/or device you want is not available, click the Run SI7 Power Tool button.
The SI7 Driver Power Tool Server Connection dialog box appears, allowing you to connect to
the driver.
IMPORTANT: Make sure you connect to the locally installed SI7 driver. If you connect to a
remote driver, the changes you make to its configuration file will not display in the SI7 Driver
- Device Selection page.
2. In the SI7 Driver Power Tool, add the applicable channels and/or devices you require and
save your changes. For more information about adding channels and devices, refer to the SI7
Driver online help.
77
Discover and Auto Configure
3. On the SI7 Driver - Device Selection page, click the Refresh button to refresh the list of
channels and devices. Your changes now appear in the list.
The ABR Driver - Device Selection page of the Select Driver Wizard is where you select the channel
and device of the ABR driver that the tags will be added to. On this page you will find a system tree-
like list of the existing channels and devices that have been configured for the ABR driver. If the
channel and/or device you want does not exist, you can launch the ABR Driver Power Tool to add the
necessary information.
Display only. Specifies the name of the driver selected on the Select Driver page; that is, ABR.
Display only. Specifies the file name of the .EAS export file.
Use this button to open the ABR Driver Power Tool to add or change the desired channel and/or
device.
Refresh
Use this button to refresh the channel and device list after modifying the ABR driver's configuration
file with the Power Tool.
Click OK to go to the Summary page if you are using the iFIX - All Wizards feature. If you are using
the Driver Wizard alone, click OK to update the currently selected items in the target application
section of the spreadsheet. Click Back to return to the Select Driver page.
1. Select the ABR driver and click Next. The ABR Driver - Device Selection page appears.
2. Expand the channel with the device you want and select the desired device.
If the channel or device information you want is not available, refer to the procedure To add
channel and device information to the driver.
3. Click OK. The driver and device information is added to the target application section of the
spreadsheet for the selected tags.
NOTE: The Driver Wizard does not automatically generate an I/O address for a tag with
Memory Types that have indirect addresses such as N7:[N100:3]. If you select one of these
tags to add to iFIX, the I/O Address contains an ***Error*** when the Driver Wizard
78
Implementing Alarms and Messages
completes. In the Spreadsheet, you can double-click the I/O Address field and manually enter
an I/O address before adding the tag to iFIX. Or, after adding the tag to iFIX, you can enter
an I/O address directly into Database Manager.
1. If the channel and/or device you want is not available, click the Run ABR Power Tool button.
The ABR Driver Power Tool Server Connection dialog box appears, allowing you to connect
to the driver.
IMPORTANT: Make sure you connect to the locally installed ABR driver. If you connect to a
remote driver, the changes you make to its configuration file will not display in the ABR
Driver - Device Selection page.
2. In the ABR Driver Power Tool, add the applicable channels and/or devices you require and
save your changes. For more information about adding channels and devices, refer to the
ABR Driver online help.
3. On the ABR Driver - Device Selection page, click the Refresh button to refresh the list of
channels and devices. Your changes now appear in the list.
IGS Driver
The IGS Driver - Device Selection page of the Select Driver Wizard is where you can view the channel
and device configuration of the IGS driver. On this page you will find a system tree-like list of the
existing channels and devices that have been configured for the IGS driver. If you want to modify the
communication properties of any channel or device, you can launch the IGS Driver Power Tool to add
the necessary information.
Display only. Displays the current IGS driver configuration in tree view. You will see all configured
channels and devices. To modify any properties for existing channels or devices, use the Run IGS
Power Tool button.
NOTE: You cannot move selected tags to a different device, because the tags were already configured
in the IGS driver when you imported the .L5K file.
Use this button to open the IGS Driver Power Tool to add or change the desired channel and/or device.
79
Discover and Auto Configure
Refresh
Use this button to refresh the channel and device list after modifying the IGS driver's configuration file
with the Power Tool.
Click OK to go to the Summary page if you are using the iFIX - All Wizards feature. If you are using
the Driver Wizard alone, click OK to update the currently selected items in the target application
section of the spreadsheet. Click Back to return to the Select Driver page.
1. If the channel and/or device you want is not available, click the Run IGS Power Tool button.
The IGS Driver Power Tool Server Connection dialog box appears, allowing you to connect
to the driver.
IMPORTANT: Make sure you connect to the locally installed IGS driver. If you connect to a
remote driver, the changes you make to its configuration file do not display in the IGS Driver
- Device Selection page.
2. In the IGS Driver Power Tool, add or modify communication properties of the applicable
channels and/or devices you require and save your changes. For more information about
adding channels and devices, refer to the IGS Driver online help.
3. On the IGS Driver - Device Selection page, click the Refresh button to refresh the list of
channels and devices. Your changes now appear in the list.
Summary
The Summary page displays a summary of the selections you made on all of the wizards. This page is
displayed only when the iFIX - All Wizards is run. If you want to make any changes, you can choose
to click the Back button to return to a wizard, or click Finish and manually edit the spreadsheet. For
more information, refer to Modifying Tag Information in iFIX.
How Do I…
NOTE: The column settings that you modify using these steps do not change other existing
projects (.DAC files) or new projects. The modified settings apply only to the current project.
1. On the View menu, click Target Column Settings, and then select Current Project. The
Column Settings - Current Project dialog box appears.
2. Select the Available column that you want to display.
3. Optionally, if you want to give this column another name, enter a name in the Column Name edit box.
80
Implementing Alarms and Messages
4. Click the Add button. This moves the column name from the Available Columns list box to
the Display Columns list box. If you entered another name in the Column Name edit box, that
new name appears in the Display Columns list box, instead of the actual name.
NOTE: The order in which the columns appear in the Display Columns list box determines
the order of the columns in the spreadsheet.
3. Optionally, use the up and down arrows to move in the Display Columns list box to change
the column order.
4. Click OK.
NOTE: The column settings that you modify using these steps do not change other existing
projects (.DAC files) or new projects. The modified settings apply only to the current project.
1. On the View menu, click Target Column Settings, and then select Current Project. The
Column Settings - Current Project dialog box appears.
2. In the Display Columns list box, select the column that you want to remove, and click the
Remove button. This moves the column name from the Display Columns list box to the
Available Columns list box.
IMPORTANT: The following columns can not be removed: Tag Name, Type, Driver, I/O
Address, H/W, and Signal Cond.
NOTE: The order in which the columns appear in the Display Columns list box determines
the order of the columns in the spreadsheet.
3. Click OK.
NOTE: The column settings that you modify using these steps do not change other existing
projects (.DAC files) or new projects. The modified settings apply only to the current project.
1. On the View menu, click Target Column Settings, and then select Current Project. The
Column Settings - Current Project dialog box appears.
2. In the Display Columns list box, select the column that you want to rename.
3. Enter the new name in the Column Name edit box and then click in another field.
4. Click OK.
1. On the View menu, click Target Column Settings, and then select Default Settings for
HMI/SCADA iFIX. The Column Settings - Default Project dialog box appears.
2. To remove a column, in the Display Columns list box, select the column that you want to
remove, and click the Remove button. This moves the column name from the Display
Columns list box to the Available Columns list box.
3. To add a column, in the Available Columns list box:
Select the column that you want to display.
81
Discover and Auto Configure
Optionally, if you want to give this column another name, enter a name in the
Column Name edit box.
Click the Add button. This moves the column name from the Available Columns list
box to the Display Columns list box. If you entered another name in the Column
Name edit box, that new name appears in the Display Columns list box, instead of
the actual name.
NOTE: The order in which the columns appear in the Display Columns list box
determines the order of the columns in the spreadsheet.
4. Optionally, use the up and down arrows to move in the Display Columns list box to change
the column order.
5. Click OK.
IMPORTANT: Changes made to the Default Settings for Proficy HMI/SCADA - iFIX take affect for
new projects and only after a restart of the Discovery and Auto Configure utility.
NOTES:
The recommended way to add or remove columns is through the user interface, using the
Target Column Settings command in the View menu. For steps, refer to the Modifying the
iFIX Columns in the Spreadsheet section.
If you manually edit the iFixColumns.txt file and subsequently use the Target Column Settings
command in the View menu, the default settings in the iFixColumns.txt file are overwritten.
Any comment lines (lines that begin with a semicolon) are removed when the iFixColumns.txt
file is overwritten.
For more information on the iFIX database fields, refer to the iFIX Database Reference e-
book, in the "Database Block Field Reference" section, and look for the fields in the section
for the individual block.
1. Open the iFIXColumns.txt file that is installed in the same location as the Discover and Auto
Configure application. By default, this location is C:\Program Files\Proficy\Discovery. The
default columns are listed, as well as information to help you use the file.
2. Add the DisplayName and Field for the column you want to add to the spreadsheet. For
example, to add the column Low EGU, enter the following in the iFIXColumns.txt file:
Low EGU, A_ELO
NOTE: The order in which the columns appear in this file determines the order of the
columns in the spreadsheet.
3. Save the iFIXColumns.txt file and open the Discover and Auto Configure application. The
new column displays on the target application side of the spreadsheet.
82
Implementing Alarms and Messages
NOTES:
• If there is an error in a row you added to the iFIXColumns.txt file, (for example, you
entered the Field information incorrectly) the row is ignored and the column is not
added to the spreadsheet.
• If the information you added to the iFIXColumns.txt file exceeds 100 characters in a
line, the information beyond the first 100 characters is ignored and is not added to
the spreadsheet.
• If the Discover and Auto Configure application is open when you make a change to
the iFIXColumns.txt file, you must exit and restart the application for the changes to
take effect.
• If you delete the iFixColumns.txt file, the application will regenerate the file with the
default columns.
1. Open the iFIXColumns.txt file that is installed in the same location as the Discover and Auto
Configure application. By default, this location is C:\Program Files\Proficy\Discovery. The
default columns and any other columns you may have added are listed, as well as information
to help you use the file.
2. To permanently remove a column from the spreadsheet, delete the column information.
3. To hide a column, insert a semi colon (;) at the beginning of the row for the column you want
to hide.
4. Save your changes and open the Discover and Auto Configure application. The column you
removed or hid is no longer displayed on the target application side of the spreadsheet.
NOTES:
The recommended way to add or remove columns is through the user interface, using the
Target Column Settings command in the View menu. For steps, refer to the Modifying the
iFIX Columns in the Spreadsheet section.
If you manually edit the iFixColumns.txt file and subsequently use the Target Column Settings
83
Discover and Auto Configure
command in the View menu, the default settings in the iFixColumns.txt file are overwritten.
Any comment lines (lines that begin with a semicolon) are removed when the iFixColumns.txt
file is overwritten.
For more information on the iFIX database fields, refer to the iFIX Database Reference e-
book, in the "Database Block Field Reference" section, and look for the fields in the section
for the individual block.
1. Open the iFIXColumns.txt file that is installed in the same location as the Discover and Auto
Configure application. By default, this location is C:\Program Files\Proficy\Discovery. The
default columns are listed, as well as information to help you use the file.
2. Add the DisplayName and Field for the column you want to add to the spreadsheet. For
example, to add the column Low EGU, enter the following in the iFIXColumns.txt file:
Low EGU, A_ELO
NOTE: The order in which the columns appear in this file determines the order of the
columns in the spreadsheet.
3. Save the iFIXColumns.txt file and open the Discover and Auto Configure application. The
new column displays on the target application side of the spreadsheet.
NOTES:
• If there is an error in a row you added to the iFIXColumns.txt file, (for example, you
entered the Field information incorrectly) the row is ignored and the column is not
added to the spreadsheet.
• If the information you added to the iFIXColumns.txt file exceeds 100 characters in a
line, the information beyond the first 100 characters is ignored and is not added to
the spreadsheet.
• If the Discover and Auto Configure application is open when you make a change to
the iFIXColumns.txt file, you must exit and restart the application for the changes to
take effect.
• If you delete the iFixColumns.txt file, the application will regenerate the file with the
default columns.
84
Implementing Alarms and Messages
1. Open the iFIXColumns.txt file that is installed in the same location as the Discover and Auto
Configure application. By default, this location is C:\Program Files\Proficy\Discovery. The
default columns and any other columns you may have added are listed, as well as information
to help you use the file.
2. To permanently remove a column from the spreadsheet, delete the column information.
3. To hide a column, insert a semi colon (;) at the beginning of the row for the column you want
to hide.
4. Save your changes and open the Discover and Auto Configure application. The column you
removed or hid is no longer displayed on the target application side of the spreadsheet.
NOTE: For more information on the Historian fields or other database fields, refer to the iFIX
Database Reference e-book, in the "Database Block Field Reference" section, and look for the field in
the section for the individual block.
85
Discover and Auto Configure
1. On the View menu, select Target Column Settings, and point to Current Project or Default
Settings for Proficy HMI/SCADA - iFIX. The Current Project applies to the currently open
project only. The Default Settings apply to any new projects you open the next time you
restart the DAC tool; changing the Default Settings does not change your currently open
project.
The Column Settings dialog box appears.
2. Click the Quick Select button and click the Select All Historian Fields option. The Historian
related fields (HistTagDesc, Collect, and CollectionInterval) appear in the Available Columns
list on the left of this dialog box.
3. To add these columns to your spreadsheet, while they are still selected, click the Add button.
The Historian fields now appear in the Display Columns field on the right side of this dialog
box.
1. In the spreadsheet, select the tags you want to add to your database.
2. On the iFIX Wizards toolbar, click the iFIX - All Wizards button. The Tag Name
Generation Wizard appears.
3. Use each of the wizard dialog boxes, adding and selecting the applicable information to define
your tags.
4. Click the Next and Back, and OK buttons to move through each of the dialog boxes.
5. On the Summary page, click Finish. The tags are added to the target application section of the
spreadsheet.
1. In the spreadsheet, select the tags you want to add to your database.
2. On the iFIX Wizards toolbar, click the Tag Name Generation Wizard button. The Tag
Name Generation Wizard appears.
3. If applicable, in the Tag Name Prefix field, enter a prefix for the names of the tags you are
adding to your database.
4. If applicable, in the Tag Name Suffix field, enter a suffix for the names of the tags you are
adding to your database.
5. Select the Use first 30 characters option or the Use last 30 characters option to limit the tag
name to either the first 30 characters or the last 30 characters, respectively.
6. If applicable, enter a character that will replace all invalid characters in a tag name when a
valid iFIX prefix and/or suffix is added. The default is an underscore ( _ ).
86
Implementing Alarms and Messages
7. If applicable, enter a character that will replace the first character in a tag name if it is not a
valid iFIX character. The default is the capital letter A.
8. If applicable, select the Copy the discovered Comment to the iFIX tag description check box
to copy the information stored in the tag's Comment field to the Description field in the target
application section of the spreadsheet.
NOTE: OPC servers do not store comments about OPC items; therefore, the OPC Discovery
Agent cannot browse comments from OPC Servers. However, the Fully Qualified ItemID is
stored and can be copied to the Description field in the iFIX section of the spreadsheet. If you
select this check box, but no Fully Qualified ItemID was found, the Description field remains
blank unless you enter a prefix. In this case, only the prefix displays in the Description field.
9. Click OK. The tags are added to the target application section of the spreadsheet.
1. In the spreadsheet, select the tags you want to add to your database.
2. If applicable, generate tag names.
3. On the iFIX Wizards toolbar, click the Block Types and Scan Times Wizard button. The
Block Types and Scan Times Wizard appears.
4. Select the Block Type check box.
5. From the Block Type list, select the type of block you want to assign to all the tags you are
adding to your database.
NOTE: iFIX must be installed and running to display a list of valid block types.
6. Click OK. In the HMI/SCADA section of the spreadsheet, the Type field for each of the
selected tags displays the selected block type.
NOTE: All of the selected tags are assigned the same block type. You can change the block
type for individual tags by double-clicking in the Type field and entering a new block type.
1. In the spreadsheet, select the tags you want to add to your database.
2. If applicable, generate tag names.
3. On the iFIX Wizards toolbar, click the Block Types and Scan Times Wizard button. The
Block Types and Scan Times Wizard appears.
4. Select the Scan Time check box. This check box is not available if you select an AO, AR,
DO, or DR block type.
If applicable, select the Process by Exception check box to assign exception-based processing
to the selected tags. The Scan Time field displays an E. If this check box is selected, the Scan
Time and Phase At fields are not available. Selecting this check box means that your
HMI/SCADA application will scan the tags using exception-based processing.
87
Discover and Auto Configure
6. If applicable, in the Scan Time field, enter a scan time to assign to the selected tags. The
HMI/SCADA application will scan the tags using time-based processing.
7. If applicable, in the Phase At field, enter a phase time to use in addition to the scan time.
NOTE: If you enter a phase time, all of the selected tags will be phased at the same time. You
can change the phase time for individual tags by double-clicking in the Scan Time field and
entering a new phase time.
Selecting a Driver
To select a driver:
1. In the spreadsheet, select the tags you want to add to your database.
2. On the iFIX Wizards toolbar, click the Driver Wizard button. The Select Driver page of
the Select Driver Wizard appears.
3. From the list of available drivers, select the driver you want.
NOTES:
• The available driver(s) depends on the Discovery Agent you are using.
• If the appropriate driver is not installed on the target application, an error message
is displayed. For information about this error message, refer to Troubleshooting the
Driver Wizard.
NOTE: The Driver Wizard does not automatically generate an I/O address for a tag with a
data type such as VAT or None or a blank Fully Qualified ItemID. If you selected one of these
tags to add to iFIX, the I/O Address field remains blank when the Driver Wizard completes.
You can double-click the I/O Address field and manually enter an I/O address before or after
adding the tag to iFIX or you can enter an I/O address directly in Database Manager after
the tag has been added to iFIX.
5. Click the Add to iFIX button. The tag information is added to the Database Manager. If the
88
Implementing Alarms and Messages
tags are successfully added to the database, the Status column in the target application section
displays OK with a green background. You may need to use the horizontal scroll to view this
column. If the tags were not successfully added to the database, the Status column displays
Tag Creation Failed with a red background.
NOTES:
• A small red square in a cell indicates bad data; for example, the scan time is out of
range or the I/O address is invalid. Hover the mouse pointer over the red square to
display a pop up explanation for the bad data. If necessary, you can change the data
to valid values. For more information, see Modifying Tag Information in iFIX.
• iFIX does not allow duplicate tag names to exist in the database. If you attempt to
add a tag with a tag name that already exists in the database, a red square appears
in the cell with the message: "Name already exists in database as an alarm area or
tag."
6. After you successfully add your tags to the iFIX database, you can view them and work with
them in the Database Manager. For more information, refer to the section Working with the
Process Database in the iFIX online help.
NOTE: When you add tags to the iFIX Database Manager with the Discover and Auto
Configure, SAC (Scan, Alarm, and Control program in iFIX) is not automatically stopped and
restarted; therefore, the added tags remain OFF SCAN. You must save and reload the process
database or you can manually set the tags to ON SCAN as well as make any other necessary
changes to the individual tags.
1. In the target application section of the spreadsheet, double-click the specific cell you want to
change. The cursor is positioned in the cell, and you can add, remove, or modify the tag
information for the individual tag.
2. Click the Modify in iFIX button. The changes you made are applied to the tag information in
the database.
Drivers
This section provides you with information about the drivers that the selected database tags can be
added to. Each driver is associated with a Discovery Agent and a target application that has its own
database in which to store its tags and their information.
NOTE: The driver must be added to the iFIX SCU (System Configuration Utility), in the Configured
I/O Drivers list before it can be configured to run in iFIX and be used with the Discover and Auto
89
Discover and Auto Configure
Configure. If iFIX is already running, you must shutdown and restart iFIX for the changes to take
effect.
The following are the drivers currently supported by each Discovery Agent, and the associated target
application:
90
Implementing Alarms and Messages
The SI7 driver supports datablock numbers up to 8191. If you add more than 8191 datablocks to the
target database for the SI7 driver, the database will fail the I/O addresses that exceed this number.
For detailed information, including information on supported data types and memory/file type
information, refer to the Supported File Types topic and the ABR documentation.
For detailed information on the driver, refer to the IGS online help.
The S7A driver supports datablock numbers up to 4095. If you add more than 4095 datablocks to the
target database for the S7A driver, the database will fail the I/O addresses that exceed this number.
91
Discover and Auto Configure
Troubleshooting
This section provides information for troubleshooting problems that you may encounter when you are
using the Discover and Auto Configure.
Possible reasons for the Discovery Agent or target application not being installed or not registered are:
• The Discovery Agent's or target application's .dll files were manually unregistered.
• The Discovery Agent(s) files (.dll's) were deleted.
• Another application that the Discover and Auto Configure is dependent on, such as iFIX,
AGLINK (for Siemens), or OPC Proxies, was deleted or uninstalled or unregistered.
Possible reasons for loading errors for the Discovery Agent or target application are:
• The target application or Discovery Agent was registered properly, but is no longer found on
the system (deleted or uninstalled), or was moved.
• The Target or Discover Agent .dll file is there, but another component is missing, such as
iFIX, the AGLink .dll.
• You may not have the correct version of the Discovery Agent or Target .dll. For example, you
install version 2.0 of the Discover and Auto Configure over version 1.0 (that is, without
uninstalling version 1.0). If a file is locked or the tool is running, not all files are overwritten.
In this case, some files will be from version 1.0 and some from version 2.0. In this case, a
"Loading" error displays.
If no target applications are registered, the following message displays when you click Next on the
Discovery Agent Selection Wizard Welcome page:
"There were no Target Applications found. Please install the Target Application that you want to use
and restart this tool."
92
Implementing Alarms and Messages
Solution
The Discover and Auto Configure application shuts down and you must install or reinstall the target
application, or reregister the target .dll.
If no Discovery Agents are registered, the following message displays when you click Next on the
Discovery Agent Selection Wizard Welcome page:
"There were no Discovery Agents found. Please install the Discovery Agent that you want to use and
restart this tool."
Solution
The Discover and Auto Configure application shuts down and you must install or reinstall the
application, or register the Discovery Agent .dll.
If neither a target application nor Discovery Agent(s) are registered, the following message displays
when you click Next on the Discovery Agent Selection Wizard Welcome page:
"There were no Discovery Agents or Target Applications found. Please install the Discovery Agent and
Target Applications that you want to use and restart this tool."
Solution
The Discover and Auto Configure application shuts down and you must install or reinstall the
applications, or register the target application and Discovery Agent .dlls.
If the target application does not load, the following message displays when you click Next on the
Discovery Agent Selection Wizard Welcome page:
"Could not load Target: 'TARGETNAME'. Please install the Target Application that you want to use
and restart this tool."
Solution
The Discover and Auto Configure application shuts down and you must install or reinstall the target
application.
If the Discovery Agent doesn't load, the following message displays when you click Next on the
Discovery Agent Selection Wizard Welcome page:
"Could not load Discovery Agent. Please install the Discovery Agent that you want to use and restart
this tool."
93
Discover and Auto Configure
Solution
The Discover and Auto Configure application shuts down and you must install or reinstall the
application.
Problem #1: Remote OPC Server running as a service does not display correct
configuration
Some OPC servers should be run as a service when you connect to them remotely. When you are
connecting to one of these remote OPC servers, the Discover and Auto Configure populates the system
tree with the item information extracted from the OPC server. However, the configuration displayed is
not what is known to be used on the remote OPC server.
Solution
The DCOM identity of the OPC server may require modification. Refer to your specific OPC server's
documentation for remote DCOM configuration settings.
If no servers were found on the machine, the message "No servers were found on the machine"
displays. You must then verify that either the correct machine name/TCP/IP address was entered if you
are browsing remote OPC servers, or that the OPC server(s) are correctly installed on the given
machine.
If one or more browse methods fail, a message box displays indicating the methods used and which
ones succeeded or failed. It also displays an error message indicating the reason for failure, as returned
by the system. Any server(s) found are listed. You can select a server from the list or remedy the
reason for the failure and rerun the search. For more information about browse methods, refer to
Discovery Agent Selection Wizard - Select an OPC Data Access Server.
Solution
One possible remedy is modifying your DCOM settings, even if your OPC server is running locally.
For more information about DCOM settings, refer to Setting Up DCOM for Discovery of Remote OPC
Servers.
Where <OPC Server name> is the name of the remote OPC Server you are attempting to connect to.
94
Implementing Alarms and Messages
Solutions
• Some OPC Servers require that the user (or a group containing that user) that is logged into
the local machine and attempting to connect to the remote OPC server machine, be added to
the Default Access Permission list in the remote machine's DCOM configuration.
For more information, refer to Setting Up DCOM for Discovery of Remote OPC Servers.
If the appropriate driver(s) for the Discovery Agent and target application are not installed on the target
application, an error message displays, instructing you to install the driver.
Solution(s)
• If you are running the Driver Wizard as a stand-alone dialog box, close the error message to
close the Driver Wizard. You can continue using the selections made on the other wizards,
however, the driver related fields are not filled in on the spreadsheet.
• If you are running the iFIX - All Wizards and you close the error message, the Driver Wizard
closes, but the Summary page appears. Click Finish to fill in all but the driver related fields on
the spreadsheet. If you click the Back button on the Summary page, the Driver Wizard
reappears, checks for the driver again and displays the error message again if you have not yet
installed the driver. Close the error message again to display the Block Type and Scan Time
Wizard.
• To select a driver from the Select Driver page, the driver must be installed on the same
computer as Proficy iFIX and added to the iFIX SCU's Configured I/O Drivers list. The driver
must be on the list of supported drivers for the Discovery Agent and target application. For
more information, see Supported Software.
• After the driver is installed, the Auto-Create option on the driver's Power Tool must be set to
ON. When you change the Auto-Create option, you must restart the driver and iFIX for the
change to take effect.
For more information about installing the driver and adding it to the SCU, and about the Auto-
Create option for the driver, refer to the specific I/O driver online help.
When the Device Selection page of the Driver Wizard opens for your selected driver, the configuration
information defined in the default configuration file for the locally installed driver displays. You can
open the driver's Power Tool from this wizard page to make additions or changes to the driver
configuration. However, only changes made to the configuration file for the local driver are displayed.
If you connect to a driver installed on a remote machine and make changes to its configuration, those
changes are not visible on the Device Selection page.
95
Discover and Auto Configure
Solution
When you click the Run <Driver Name> Power Tool button on the Device Selection page, the I/O
Driver Server Connection dialog box opens. Make sure that you select the Use Local <Driver Name>
option to connect to the driver installed on the local machine.
If you receive an error (or pop-up message) related to an unsigned digital certificate, the certificate
may be related to third-party components. For instance, errors related to AGLink *.dll files are related
to third-party API or .dll files. Consult the Help from your driver vendor for more information.
96
Index
. D
A rerunning........................................................ 51, 54
All iFIX Wizards ............................. 67, 70, 72, 75, 80 select a local or remote machine .......................... 48
B selecting ............................................................... 47
C OPC ..................................................................... 47
97
Discover and Auto Configure
troubleshooting .................................................... 95 I
view OPC driver server properties....................... 74 iFIX fields as columns ....................................... 82, 83
selecting ............................................................... 88 O
98
Discover and Auto Configure
selecting a channel and device ................................. 76 extracting from a project file ............................... 53
supported OPC Data Access Specifications ............ 19 view OPC driver server properties........................... 74
99
Discover and Auto Configure
wizards ................................................... 47, 67, 70, 72 Tag Name and Description .................................. 67
100
Proficy* HMI/SCADA - iFIX
DRIVER SERVER
Version 5.1
May 2010
All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical
means, including photocopying and recording, without permission in writing from GE Intelligent Platforms, Inc.
The information contained in this manual is believed to be accurate and reliable. However, GE Intelligent Platforms,
Inc. assumes no responsibilities for any errors, omissions or inaccuracies whatsoever. Without limiting the foregoing,
GE Intelligent Platforms, Inc. disclaims any and all warranties, expressed or implied, including the warranty of
merchantability and fitness for a particular purpose, with respect to the information contained in this manual and the
equipment or software described herein. The entire risk as to the quality and performance of such information,
equipment and software, is upon the buyer or user. GE Intelligent Platforms, Inc. shall not be liable for any damages,
including special or consequential damages, arising out of the user of such information, equipment and software, even
if GE Intelligent Platforms, Inc. has been advised in advance of the possibility of such damages. The user of the
information contained in the manual and the software described herein is subject to the GE Intelligent Platforms, Inc.
standard license agreement, which must be executed by the buyer or user before the use of such information, equipment
or software.
Notice
©2010 GE Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Intelligent Platforms, Inc.
Microsoft® is a registered trademark of Microsoft Corporation, in the United States and/or other countries.
All other brands or names are property of their respective holders.
We want to hear from you. If you have comments, questions, or suggestions about our documentation, send them to the
following email address:
doc@ge.com
Table of Contents
About this Guide ............................................................................................................................... 9
Methods ............................................................................................................................................ 9
Syntax ....................................................................................................................................... 9
Remarks ................................................................................................................................. 10
Syntax ..................................................................................................................................... 10
Remarks ................................................................................................................................. 10
Syntax ..................................................................................................................................... 11
Remarks ................................................................................................................................. 11
Syntax ..................................................................................................................................... 11
Settings ................................................................................................................................... 12
Syntax ..................................................................................................................................... 13
Syntax ..................................................................................................................................... 13
Syntax ..................................................................................................................................... 14
Syntax ..................................................................................................................................... 14
Remarks ................................................................................................................................. 15
Syntax ..................................................................................................................................... 15
iii
Driver Server Help
Syntax ..................................................................................................................................... 15
Remarks ................................................................................................................................. 16
Syntax ..................................................................................................................................... 16
Remarks ................................................................................................................................. 17
Syntax ..................................................................................................................................... 17
Remarks ................................................................................................................................. 17
Syntax ..................................................................................................................................... 18
Remarks ................................................................................................................................. 18
Syntax ..................................................................................................................................... 18
Settings ................................................................................................................................... 19
Syntax ..................................................................................................................................... 19
Settings ................................................................................................................................... 20
Remarks ................................................................................................................................. 20
Syntax ..................................................................................................................................... 21
Remarks ................................................................................................................................. 21
Syntax ..................................................................................................................................... 21
Syntax ..................................................................................................................................... 22
Settings ................................................................................................................................... 22
Syntax ..................................................................................................................................... 23
iv
Driver Server Help
Remarks ................................................................................................................................. 23
Syntax ..................................................................................................................................... 24
Remarks ................................................................................................................................. 24
ReadData Method....................................................................................................................... 24
Syntax ..................................................................................................................................... 24
Settings ................................................................................................................................... 25
Remarks ................................................................................................................................. 27
Syntax ..................................................................................................................................... 28
Syntax ..................................................................................................................................... 28
Syntax ..................................................................................................................................... 29
Syntax ..................................................................................................................................... 29
Remarks ................................................................................................................................. 30
Syntax ..................................................................................................................................... 30
Syntax ..................................................................................................................................... 31
Syntax ..................................................................................................................................... 31
Syntax ..................................................................................................................................... 32
Syntax ..................................................................................................................................... 32
Settings ................................................................................................................................... 33
v
Driver Server Help
Remarks ................................................................................................................................. 35
Properties ....................................................................................................................................... 35
Syntax ..................................................................................................................................... 35
Syntax ..................................................................................................................................... 35
Syntax ..................................................................................................................................... 36
Syntax ..................................................................................................................................... 36
Syntax ..................................................................................................................................... 37
Syntax ..................................................................................................................................... 37
Syntax ..................................................................................................................................... 38
Syntax ..................................................................................................................................... 38
Syntax ..................................................................................................................................... 39
Name Property............................................................................................................................ 39
Syntax ..................................................................................................................................... 39
Syntax ..................................................................................................................................... 40
Syntax ..................................................................................................................................... 40
Visible Property........................................................................................................................... 41
Syntax ..................................................................................................................................... 41
vi
Driver Server Help
Settings ................................................................................................................................... 41
Example ...................................................................................................................................... 42
IDriver Message.......................................................................................................................... 43
Index ............................................................................................................................................... 45
vii
Driver Server Help
viii
About this Guide
The OSDK Type Library Reference is intended for programmers who are proficient in the Microsoft®
Visual Basic® programming language.
The following sections provide more details on how to use the methods and properties associated with
the OSDK Type Library.
Method Summary
Property Summary
Obtaining an Interface Pointer to the Server Object
OPC Client Only
Methods
AddChannel Method
Adds a channel object to the server configuration, optionally setting channel properties.
Syntax
Handle = object.AddChannel Properties PropertyData Errors
Part Description
Handle A long integer value specifying the channel object handle assigned by the
server.
9
Driver Server Help
Part Description
Remarks
Any channel properties not specified will be set to a default value.
AddDatablock Method
Adds a datablock to the specified device's configuration, optionally setting datablock properties.
Syntax
Handle = object.AddDataBlock DeviceHandle Properties PropertyData Errors
Part Description
Handle A long integer value specifying the channel object handle assigned by the
server.
DeviceHandle A long integer expression specifying the handle of the device of which to add
the device.
Remarks
Any datablock properties not specified will be set to a default value.
10
Driver Server Help
Syntax
Handle = object.AddDevice ChannelHandle Properties PropertyData Errors
Part Description
Handle A long integer value specifying the channel object handle assigned by the
server.
ChannelHandle A long integer expression specifying the handle of the channel to which to
add the device.
Remarks
Any device properties not specified will be set to a default value.
CopyDevice Method
Copies or moves the specified device to the specified channel's configuration.
Syntax
Error=object.CopyDevice DeviceHandle, bstrName, ChannelHandle bMove
11
Driver Server Help
Part Description
DeviceHandle A long integer expression specifying the handle of the device to copy or
move.
bstrName A string expression that specifies the name of the device to copy or move.
ChannelHandle A long integer value specifying the handle of the channel to add the device
to.
Settings
The settings for bMove are:
Setting Description
Setting Description
12
Driver Server Help
DebugMessage Method
Sends a debug message to the I/O Server event window.
Syntax
object.DebugMessage Message
Part Description
Message A string expression that specifies the text you want to display in the I/O
Server event window as a debug message.
ErrorMessage Method
Sends an error message to the I/O Server event window.
Syntax
object.ErrorMessage Message
Part Description
13
Driver Server Help
Part Description
A string expression that specifies the text you want to display in the I/O
Message Server event window as an error message.
FileNew Method
Creates an empty configuration.
Syntax
object.FileNew
Part Description
FileOpen Method
Opens and loads the specified configuration file.
Syntax
object.FileOpen [= string]
Part Description
14
Driver Server Help
Part Description
Remarks
If the specified file does not exist, a new configuration file is created with the specified file name. If an
existing .csv file is specified, the file is imported.
FileSave Method
Saves changes to the file specified in the FullConfigFileName property.
Syntax
object.FileSave
Part Description
FileSaveAs Method
Saves changes to the specified file.
Syntax
object.FileSaveAs [= string]
15
Driver Server Help
Part Description
Remarks
A configuration file specified with the I/O Driver’s acronym as the extension will be saved as a
reloadable binary file, a “.csv” extension will be saved as a comma separated value text file, and a
“.txt” extension will result in the server window’s log being written to a text file.
GetChannels Method
Returns all configured channels as handles and names.
Syntax
NumChannels = object.GetChannels ChannelHandles ChannelNames
Part Description
16
Driver Server Help
Remarks
The handles and names retrieved with this method can be used in an application to populate a tree
view. The handles are used in methods such as SetProperyData and GetPropertyData.
GetDataBlocks Method
Returns all configured datablocks on the specified device as handles and names.
Syntax
NumDataBlocks = object.GetDataBlocks DeviceHandle DataBlockHandles DataBlockNames
Part Description
A long integer expression specifying the handle of the device from which
DeviceHandle to retrieve the datablocks.
Remarks
The handles and names retrieved with this method can be used in an application to populate a tree
view. The handles are used in methods such as SetProperyData and GetPropertyData.
17
Driver Server Help
GetDevices Method
Returns all configured devices on the specified channel as handles and names.
Syntax
NumDevices = object.GetDevices ChannelHandle DeviceHandles DeviceNames
Part Description
A long integer expression specifying the handle of the channel from which
ChannelHandle to retrieve the devices.
Remarks
The handles and names retrieved with this method can be used in an application to populate a tree
view. The handles are used in methods such as SetProperyData and GetPropertyData.
GetNameSpace Method
Returns the namespace type for the OPC server. Namespaces can be hierarchical or flat. The OPC
Client Tree Browser is an example of a hierarchical namespace; it has three levels off the root, server,
group, and item. A flat namespace is one that has only one level off the root.
Syntax
NameSpace = object.GetNameSpace(lChannelHandle)
18
Driver Server Help
Part Description
IChannelHandle A long integer expression specifying the handle of the OPC server from
which to retrieve the namespace.
Settings
The settings for NameSpace are:
Setting Description
0 Hierarchical namespace
1 Flat namespace
GetProperties Method
Returns all properties for the specified type of object.
Syntax
NumProperties = object.GetProperties ObjectType Properties
19
Driver Server Help
Part Description
Settings
The settings for ObjectType are:
Setting Description
1 Driver object
Channel object
2
3 Device object
4 DataBlock object
Remarks
This method allows an OLE Automation controller to retrieve all exposed properties for each server object.
These property strings are used as properties in methods such as SetProperyData and GetPropertyData.
20
Driver Server Help
GetPropertyData Method
Returns data for each specified property on the specified object.
Syntax
Errors = object.GetPropertyData ObjectHandle Properties PropertyData
Part Description
ObjectHandle A long integer expression specifying the handle of the object (channel,
device or datablock) to return property data for.
Remarks
When retrieving data for a single property, the property string may be specified as a string instead of a
one-dimensional array. In this case, PropertyData will be returned as a single VARIANT and not an
array.
InfoMessage Method
Sends an information message to the I/O Server event window.
Syntax
object.InfoMessage Message
21
Driver Server Help
Part Description
Message A string expression that specifies the text you want to display in the I/O
Server event window as an information message.
IsBrowseSupported Method
Returns if the OPC server supports browsing.
Syntax
Browsable = object.IsBrowseSupported(lChannelHandle)
Part Description
An integer value that indicates whether the OPC server supports browsing.
Browsable
IChannelHandle A long integer value that evaluates to the handle of the OPC server you
want to browse.
Settings
The settings for Browsable are:
22
Driver Server Help
Setting Description
Poll Method
Polls all datablocks on the specified channel, device or datablock object.
Syntax
object.Poll ObjectHandle
Part Description
ObjectHandle A long integer value specifying a server object handle received from
server methods such as AddChannel() or GetDevices().
Remarks
The Poll method can be used to demand poll datablocks on the server by configuring the datablocks
with a disabled poll time and calling Poll() with the appropriate datablock handle.
Quit Method
Shuts down the server.
23
Driver Server Help
Syntax
object.Quit
Part Description
Remarks
The Quit method can be used to explicitly issue a shutdown request to the server. If the server is
connected to a FIX client or clients, this method will return an error.
ReadData Method
Returns the polled data for the specified datablock.
Syntax
Data = object.ReadData DataBlockHandle RequestedDataType ItemOffset SubItemOffset Count
SignalConditioning HighEgu LoEgu TimeStamp Quality
Part Description
24
Driver Server Help
Part Description
ItemOffset A long integer expression specifying the offset of the desired data
from the start of the datablock.
SubItemOffset An integer expression specifying the offset of the desired data from
the start of the data item.
Settings
The settings for RequestedDataType are:
25
Driver Server Help
Setting Description
Setting Description
26
Driver Server Help
Setting Description
Remarks
The RequestedDataType settings are of type VARTYPE (an enumeration type used in VARIANT,
TYPEDESC, OLE property sets, and safe arrays) and represent the minimum supported for this server.
See your I/O Server documentation for more details regarding this setting.
The SignalConditioning settings represent the minimum supported for this server. See your I/O Server
documentation for more details regarding this setting.
The TimeStamp part is returned as a Time value. The Quality part is returned as an integer representing
OLE for Process Control (OPC) Quality flags. Please reference the OLE for Process Control Version
1.0 Specification for more information.
RemoveChannel Method
Removes the specified channel from the server configuration.
27
Driver Server Help
Syntax
object.RemoveChannel ChannelHandle
Part Description
ChannelHandle A long integer value specifying a channel object handle received from a
server method such as AddChannel().
RemoveDataBlock Method
Removes the specified datablock from the specified device’s configuration.
Syntax
object.RemoveDataBlock DeviceHandle DataBlockHandle
Part Description
DeviceHandle A long integer expression specifying the handle of the device from
which to remove the datablock.
28
Driver Server Help
RemoveDevice Method
Removes the specified device from the specified channel’s configuration.
Syntax
object.RemoveDevice ChannelHandle DeviceHandle
Part Description
ChannelHandle A long integer value specifying a channel object handle received from a
server method such as AddChannel().
DeviceHandle A long integer expression specifying the handle of the device to remove
SetPropertyData Method
Sets data for each specified property on the specified object.
Syntax
Errors = object.SetPropertyData ObjectHandle Properties PropertyData
29
Driver Server Help
Part Description
ObjectHandle A long integer expression specifying the handle of the object (channel,
device or datablock) to set property data for.
Remarks
When setting data for a single property, the property string may be specified as a string instead of a
one-dimensional array, and the property data value may also be specified as a single VARIANT
instead of a one-dimensional array.
Start Method
Starts server polling.
Syntax
object.Start
30
Driver Server Help
Part Description
Stop Method
Stops server polling.
Syntax
object.Stop
Part Description
Switch Method
Switches the specified channel or device object to/from backup.
Syntax
object.Switch ObjectHandle
Part Description
31
Driver Server Help
A long integer value specifying a server object handle received from server
ObjectHandle methods such as AddChannel() or GetDevices().
WarnMessage Method
Sends a warning message to the I/O Server event window.
Syntax
object.WarnMessage Message
Part Description
Message A string expression that specifies the text you want to display in the I/O
Server event window as a warning message.
WriteData Method
Writes the specified data to the specified datablock.
Syntax
object.WriteData DataBlockHandle ItemOffset SubItemOffset SignalConditioning HighEgu LoEgu
Data
Part Description
32
Driver Server Help
Part Description
ItemOffset A long integer expression specifying the offset from the start of the
datablock to write to.
SubItemOffset An integer expression specifying the offset from the start of the data
item to write to.
Settings
The settings for SignalConditioning are:
33
Driver Server Help
Setting Description
34
Driver Server Help
Remarks
The SignalConditioning settings represent the minimum supported for this server. See your I/O Server
documentation for more details regarding this setting.
Properties
Application Property
Returns the Application object. Read only.
Syntax
object.Application
Part Description
ConfigFileName Property
Returns the active configuration file name. Read only.
Syntax
object.ConfigFileName
35
Driver Server Help
Part Description
ConfigFilePath Property
Returns the path specification for the active configuration file. Read only.
Syntax
object.ConfigFilePath
Part Description
DefaultConfigFileName Property
Sets or returns the default configuration file name.
Syntax
object.DefaultConfigFileName [= string]
36
Driver Server Help
Part Description
string A string expression that evaluates to the server default configuration file path.
DefaultConfigFilePath Property
Sets or returns the default path specification for configuration files.
Syntax
object.DefaultConfigFilePath [= string]
Part Description
string A string expression that evaluates to the server default configuration file path.
FileSaved Property
Returns the saved state of the configuration file. Read only.
Syntax
object.FileSaved
37
Driver Server Help
Part Description
FullConfigFileName Property
Returns the file specification for the active configuration file, including path. Read only.
Syntax
object.FullConfigFileName
Part Description
FullDefaultConfigFileName Property
Returns the file specification for the default configuration file, including path. Read only.
Syntax
object.FullDefaultConfigFileName
38
Driver Server Help
Part Description
FullName Property
Returns the file specification for the application, including path. Read only.
Syntax
object.FullName
Part Description
Name Property
Returns the name of the application. Read only.
Syntax
object.Name
39
Driver Server Help
Part Description
Path Property
Returns the path specification for the application's executable file. Read only.
Syntax
object.Path
Part Description
Running Property
Returns a value indicating whether the server is started or stopped. Read only.
Syntax
object.Running
40
Driver Server Help
Part Description
Visible Property
Sets or returns a value indicating whether the main server window is visible or hidden.
Syntax
object.Visible [= boolean]
Part Description
Settings
The settings for boolean are:
Setting Description
41
Driver Server Help
Example
Public iDrv As New ITKServer
Early binding has better performance, but late binding allows more diversity.
3. iBrowseOPCServer Interface
4. iDriverMessage Interface
5. Sample Application
IBrowseOPCServer Interface
Lets the OPC Client determine if browsing on the OPC server. If browsing is supported, the interface
lets the OPC Client browse the server for item ids and access paths.
NOTE: You can only use the IsBrowseSupported and GetNameSpace methods from this interface. The
other methods are for internal use and not supported for third-party development.
42
Driver Server Help
IDriver Message
Lets the driver send messages to the I/O Server’s event window. Visual Basic applications can also use
this interface to send messages to the event window.
Sample Application
To assist you in creating a Visual Basic application, we supply source code for a sample application.
This source code shows you how to:
43
Index
A G
FileSaved property................................................... 37 R
RemoveDevice method............................................ 29
45
Driver Server Help
S V
46
Proficy* HMI/SCADA - iFIX
ENHANCED FAILOVER
Version 5.1
May 2010
All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical
means, including photocopying and recording, without permission in writing from GE Intelligent Platforms, Inc.
The information contained in this manual is believed to be accurate and reliable. However, GE Intelligent Platforms,
Inc. assumes no responsibilities for any errors, omissions or inaccuracies whatsoever. Without limiting the foregoing,
GE Intelligent Platforms, Inc. disclaims any and all warranties, expressed or implied, including the warranty of
merchantability and fitness for a particular purpose, with respect to the information contained in this manual and the
equipment or software described herein. The entire risk as to the quality and performance of such information,
equipment and software, is upon the buyer or user. GE Intelligent Platforms, Inc. shall not be liable for any damages,
including special or consequential damages, arising out of the user of such information, equipment and software, even
if GE Intelligent Platforms, Inc. has been advised in advance of the possibility of such damages. The user of the
information contained in the manual and the software described herein is subject to the GE Intelligent Platforms, Inc.
standard license agreement, which must be executed by the buyer or user before the use of such information, equipment
or software.
Notice
©2010 GE Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Intelligent Platforms, Inc.
Microsoft® is a registered trademark of Microsoft Corporation, in the United States and/or other countries.
All other brands or names are property of their respective holders.
We want to hear from you. If you have comments, questions, or suggestions about our documentation, send them to the
following email address:
doc@ge.com
Table of Contents
Terms You Should Know When Working with Enhanced Failover and LAN Redundancy .............. 2
Active SCADA............................................................................................................................... 4
SCADASync.exe........................................................................................................................... 5
SCADARoleMgr.exe ..................................................................................................................... 5
SCADASyncMonitor.exe .............................................................................................................. 5
iFIXNotification.exe ....................................................................................................................... 5
Differences Between Enhanced Failover and Failover in Previous iFIX Releases ...................... 8
iii
Enhanced Failover
iv
Table Of Contents
Scenario 4: iFIX Network to Primary SCADA from the Client Unavailable ............................28
v
Enhanced Failover
SCADA Failover...................................................................................................................... 63
Communication Status............................................................................................................ 82
vi
Table Of Contents
vii
About this Guide
The Enhanced Failover e-book is intended for process control engineers, integrators, and developers
responsible for designing and creating operator displays, and configuring the development and run-
time environments. The manual assumes familiarity with the process database, the iFIX WorkSpace,
and the System Configuration Utility (SCU).
A configuration checklist is provided in the Checklist for Enhanced Failover Configuration section as
overview. If you are familiar with iFIX, this should get you started quickly in making your updates.
The only changes between iFIX 5.0 and the current version of iFIX are the addition of the Enhanced
Failover Runtime Information (SCADASync) tags, and various server enhancements (that do not
require any configuration changes). For more information on the SCADASync tags, refer to the
Runtime Information Fields for Enhanced Failover section.
1
Enhanced Failover
Term Description
Enhanced Failover The process of switching the active SCADA node from a waiting,
standby SCADA node, when the active SCADA node becomes
unavailable for processing data.
Active SCADA The fully functioning SCADA node in run mode. The active node sends
the process database to standby node. All iClients retrieve their data and
alarms from the active SCADA. The active SCADA generates alarms.
Standby SCADA The “Idle” SCADA·node in run mode. Updates to the standby SCADA
are based on database synchronization updates pushed from the active
node. The standby node replaces the concept of the backup node in
previous versions of iFIX, prior to iFIX 5.0.
Physical Node The physical node (also called the local node) is the local iFIX node
name, and should be unique within your iFIX network.
Logical Node A logical node is a pair of SCADA nodes configured to use Enhanced
Failover. A client using a logical node obtains data from the active
SCADA node in the pair.
Primary SCADA The first node that you configure in your primary and secondary pair in
configure mode. This is the node that goes active when you start iFIX,
but may not always be the active node.
Secondary SCADA The second node that you configure in your primary and secondary
pair.
Synchronization A process that occurs on the active SCADA node, where the iFIX
process database and all files in the PDB folder changed from the last
update are copied to the standby node.
The actual process name of the iFIX application that performs the
database synchronization is SCADASync.exe. The ScadaRoleMgr.exe
works in tandem with the SCADASync.exe, and assigns the roles
during failover.
2
Enhanced Failover
Term Description
iFIX Client node Operators view process data received from a SCADA Server using a
client (SCADA or iClient node).
The client obtains data and alarms from the active SCADA node:
• A client automatically switches over to the newly active
SCADA when a failover occurs.
• Any VBA script on the client continues to execute when a
failover occurs. If the VBA script is reading data while the
failover occurs, the VBA script may return an error.
• The Alarm Summary shows the same number of alarm and
acknowledge states after a failover occurs. The real-time trend
shows some gap in the line chart.
The following components are included in the iFIX Enhanced Failover configuration:
• Active SCADA
• Standby SCADA
• Logical SCADA
• iClient Connections
• Dynamic Connections
• SCADASync.exe Process
• SCADARoleMgr.exe Process
• SCADASyncMonitor.exe
• iFIXNotification.exe Application
• SCADASync.log and ScadaRoleMgr.log Files
• Network Status Display (NSD) tags (optional)
• Enhanced Failover Runtime Information (SCADASync) tags (optional)
3
Enhanced Failover
Active SCADA
The Active SCADA scans its database, communicates with the PLCs, and generates alarms.
Periodically, it sends its database to the standby SCADA over the dedicated SCADA Synchronization
network.
Standby SCADA
The Standby SCADA is ready to take the place of the Active node if the need arises. SAC does not
poll the database or generate alarms on this node. Instead, the Standby SCADA receives database and
alarm information from the Active node.
The SCADA pair consists of a Primary node which is the preferred node in the pair, and a Secondary
node which is the backup node in the pair, each having a role/status. When Enhanced Failover is
running, one node will be Active, and the other node will be in Standby. The Active node functions as
a normal SCADA node. SAC is processing the database and alarms are being generated on the Active
node. Additionally, the Active SCADA node periodically sends database and alarm information to its
partner, the Standby node.
iClient Connections
iClient nodes allow operators to obtain data and alarms from the Active SCADA node. Clients must be
connected to the SCADA in “Active” mode to change data, acknowledge alarms, or write data to the
PLC.
It is required that you have a dedicated network connection for SCADA synchronization and a separate
connection for iFIX Client connections. iFIX Clients follow the Active SCADA. When a failover
occurs, the Clients are notified to connect to the new active SCADA. For more information on
configuring iClients, refer to the Configuring iClients sections.
If you use Enhanced Failover, the Dynamic Connections check box is selected by default when you
enable TCP/IP networking in the SCU. Do not disable Dynamic Connections if you are using
Enhanced Failover. In this instance, Dynamic Connections on each node in the SCADA pair must be
4
Enhanced Failover
enabled for iClients to failover to partner SCADA in a timely fashion. For more information, refer to
Enable TCP/IP Networking in the SCU section.
For more information on Dynamic Connections, refer to the Configuring Remote Nodes section of the
Setting Up the Environment e-book.
SCADASync.exe
SCADASync.exe is the process name of the iFIX application that performs the synchronization.
For more information on this process, refer to the What is Enhanced Failover? and What Happens
when a Failover Occurs? sections.
SCADARoleMgr.exe
SCADARoleMgr.exe is a process that decides if the computer will be active or standby.
For more information on this process, refer to the What is Enhanced Failover? and What Happens
when a Failover Occurs? sections.
SCADASyncMonitor.exe
The SCADA Sync Monitor (SCADASyncMonitor.exe) displays information about the primary and
secondary SCADA Servers. You can use it for viewing diagnostic information about your Enhanced
Failover configuration, or for troubleshooting issues with your Enhanced Failover configuration. For
more information on this application, refer to the Enhanced Failover Diagnostics with the SCADA
Sync Monitor section.
iFIXNotification.exe
iFIX Notification (iFIXNotification.exe) notifies a user on a Client that it is only able to communicate
with a standby SCADA node. You cannot write to a standby SCADA node, and a standby SCADA
node does not generate any alarms. Since this limits what the operator can do, a modal message box
appears informing the user about the condition until the active node becomes available again. For more
information, refer to the iFIXNotification.exe and Enhanced Failover section.
5
Enhanced Failover
The active node continuously pushes a copy of the memory-based Process database (PDB) to the
standby node. This process is called synchronization, by which real-time data such as setpoints, the tag
database, and alarms are synchronized between the SCADA node pair. The active node synchronizes
its process database with the standby node. SCADASync.exe is the process name of the iFIX
application that performs the synchronization. SCADARoleMgr.exe is a process that decides if the
computer will be active or standby.
SCADASync.exe will use any available network connection for the synchronization; however, you
should prioritize network usage to separate your real-time SCADA network from the synchronization
network. It is strongly recommended that you use a dedicated network between the primary and
secondary SCADA nodes for synchronization traffic. If the SCADA nodes are physically close to each
other, then a crossover cable can be used. Additionally, it is further recommended that the network
components (LAN adapters, hubs, switches, cables, etc.) used for synchronization of the SCADA pair
support a minimum 1 Gigabit Ethernet.
The following figure shows an example of an Enhanced Failover configuration that includes two
networks: a dedicated network for SCADA-to-SCADA traffic, and a second network, LAN 1, which
is for iFIX networking.
6
Enhanced Failover
Simple Enhanced Failover Example: One LAN and One Dedicated Network
Operators view the process data received from a SCADA Server using an iClient. Should the active
SCADA Server become unavailable, process data will become unavailable to the operator at the
iClient workstation. Enhanced Failover increases the chance that data will continue to be available the
iClient, despite a failure in the active SCADA node component.
Enhanced Failover allows you to connect an iClient to both the primary and secondary SCADA Server
pair that are connected to the same PLC(s). The iClient computer establishes and maintains the
connections to both the primary and secondary SCADA Server, either of which can be the active
server or the standby server. When the active SCADA Server fails and the standby becomes active, the
iClient nodes automatically fail over to the newly active SCADA Server.
You can use Enhanced Failover and LAN Redundancy either individually or together. If both are being
utilized and the network connection on the iClient to active SCADA is lost, iFIX tries to failover to the
backup network path (LAN2), if available first, then failover to the partner SCADA occurs.
A standby SCADA will automatically take over the active role from its partner SCADA when any of
the following conditions (failures) occur:
7
Enhanced Failover
If a SCADA node cannot communicate or detects a problem with its partner, it becomes the Active
node. If both SCADA nodes are Standby or both nodes are Active, the Primary node becomes Active.
When using Maintenance Mode, both SCADAs will be Active.
Roles can also be changed manually by changing values of the NSD (network status display) tags:
A_SWITCHSCADAROLE or F_SWITCHSCADAROLE. These NSD tags provide the ability to force
a SCADA to a particular role or to display information about the SCADAs or Clients.
Some of the differences between the Enhanced Failover features provided between iFIX 5.0 and
greater and in previous iFIX releases (before iFIX 5.0) include:
• Updated Licensing
8
Enhanced Failover
Updated Licensing
Enhanced Failover is a keyed option in iFIX 5.0 and greater. New and upgrade customers must ensure
this option is enabled on your key before starting iFIX. You can check if this option is enabled through
the Proficy License Viewer.
Before iFIX 5.0, generated alarms could vary based on differences in timing of the two independent
nodes. This process was improved, so that such inaccuracies are minimized.
If you are upgrading from a previous iFIX release, prior to iFIX 5.0, make sure you read the Enhanced
Failover and Upgrading section of the iFIX Getting Started guide, for a complete list of items that you
should evaluate.
• The SAC database processing task is in standby mode, and no longer processing the database.
• Outputs are not being written to the PLC.
• Interactive or programmatic process database changes are not allowed, as they would be
overwritten by the synchronization process.
• The Alarm ODBC client is not writing messages to the relational database.
This means that you can no longer use your standby node (which used to be called a backup node) as
your development node, if you did so in the past.
9
Enhanced Failover
It is strongly recommended that you use Jumbo Frames technology on the dedicated network. Jumbo
Frames technology allow Ethernet frame of 9000 Bytes for the Payload to compare to frame of 1500
bytes for the Payload without the Jumbo Frames.
For more information on the NSS fields, refer to the Network Status Server Fields section.
For more information on these runtime information fields, refer to the Runtime Information Fields for
10
Enhanced Failover
General Limitations
When using Enhanced Failover with iFIX, be aware of the following general limitations:
• If you did not purchase a key that supports Enhanced Failover, you will not be able to use this
feature in iFIX. Do not use a standby SCADA Server as a development node. The standby
SCADA node must be a dedicated standby node.
• The SCADA pair must be configured identically.
• You cannot make database modifications to the standby node. Data cannot be written to a
standby node; you can only read data from the standby node. However, you can use
Maintenance Mode on the primary node to temporarily suspend synchronization between the
two SCADA nodes, so that you can make changes to your database while SAC is still
running.
• iFIX I/O drivers do not support redundant communication with multiple SCADA nodes. iFIX
only supports synchronization of the Simulation (SIM) and Simulation 2 (SM2) I/O drivers.
All SIM and SM2 driver information is synchronized between the active and standby nodes.
• I/O drivers (6.x and 7.x versions) reading data between the SCADA pair is not supported. The
I/O drivers on the active and standby SCADA nodes run independently of each other (for
example, they have separate poll tables). Both SCADAs are reading data from the PLC/RTU
network at all times. Therefore, the driver configurations running on both SCADA nodes
should be identical.
NOTE: Be aware that if your driver is utilizing Access Time for its datablock/poll records, on
the standby SCADA, these datablock/poll records will time-out.
• The iFIX OPC data server and the Alarm & Event server running on the SCADA nodes is
supported; however, the iFIX OPC servers do not support logical names. OPC clients will not
automatically switch to the active node.
• The Proficy Historian collectors should be running on both the active and standby iFIX
SCADA nodes and configured in Proficy Historian as redundant collectors. For more
information about working with Proficy Historian, refer to the Proficy Historian and
Enhanced Failover section.
• You should not have your Proficy Historian Archiver running on either computer in SCADA
pair when using Enhanced Failover or LAN Redundancy.
• If you upgraded from a version of iFIX before iFIX 5.0, and previously used the SCADA
Failover feature, you will need to reconfigure some settings in the SCU (the data transport for
synchronization) before Enhanced Failover will work. For more information, refer to the
Enhanced Failover and Upgrading section in the iFIX Getting Started guide.
• If you use Terminal Services with iFIX, be aware that a Terminal Server cannot reside on
either the primary or secondary iFIX SCADA nodes configured for Enhanced Failover. If the
SCADA Server and Terminal Server run on the same machine, that machine becomes a single
source of failure.
11
Enhanced Failover
• The primary and secondary SCADA pair must be the same version (major and minor) of
iFIX. For example, if the primary SCADA has iFIX 5.0 installed, the secondary SCADA must
have iFIX 5.0 installed. The iClient nodes can be any version of iFIX.
• You can have up to three network cards (a primary, secondary, and tertiary network path)
configured for SCADA-to-SCADA communication.
• If the iClient cannot access the active node through iFIX networking, but can access the
standby SCADA through iFIX networking, the iClient will use the data on the standby node.
This will allow the Alarm summary to display the current value, but it won't get any new
alarms until it can access the active node.
• Dynamic Connections on the SCADA pair must be enabled for iClients to failover to partner
SCADA in a timely fashion.
• The primary and secondary SCADA computers must be physically next to each other, in the
same location/room.
Unsynchronized Items
Enhanced Failover only provides for database and alarm synchronization. The following items are not
synchronized between the active and standby node with the Enhanced Failover feature enabled:
• Classic Historian configuration (collection group) and collected data from Classic Historian
are not synchronized.
• The background scheduler running on both SCADA nodes is not synchronized.
• I/O drivers (other than SM2 and SIM) are not synchronized.
• System Extension Toolkit (STK) modules are not synchronized.
• The alarm printer, file, and history queues are not synchronized.
• The Auto Alarm Manager (AAM) queue is not synchronized.
• Any EDA background programs are not synchronized, unless the program is aware of the
redundant SCADA setup.
• iFIX Pictures are not synchronized.
• Background schedules are not synchronized.
• VBA scripting variables.
12
Enhanced Failover
Synchronized Items
iFIX items that are synchronized as part of the database synchronization include the:
• Process Database
• SQL trigger (SQT) tasks
• SIM driver registers
• SIM signal generators and parameters
• SM2 driver registers
• Alarm counters
• Alarm logging to ODBC (relational database)
NOTE: AR and DR blocks are synchronized between nodes, however the data for these blocks resides
in the driver's image table. So, during a failover, the available data is supplied by the driver.
File Synchronization
In addition to synchronization of the memory-resident parts of iFIX, certain directories and files are
monitored for changes. When changes to files are detected, files are copied from the active node to the
standby node (never in the other direction). Therefore, any file changes made on the standby will not
be synchronized to the active node. If the standby should become active, files will synchronize only if
they saved after the node becomes active.
NOTE: Be aware that if you export a database from the iFIX Database Manager on the standby
SCADA or iClient (View) node, the default location will be the PDB directory of the local computer,
not the SCADA node that is active.
• The Current Alarm, Alarm Priority, Current Value, Latched Alarm, and Alarm
Acknowledgements all reside in the iFIX database. These are included as part of the database
synchronization process.
• If you used Alarm Synchronization (Alarm_sync.exe) in an iFIX release prior to 5.0, this
feature is replaced by the alarm management and database synchronization available in iFIX
5.1. Alarm_sync.exe is obsolete and should no longer be used.
13
Enhanced Failover
• With Enhanced Failover enabled, alarms are generated only on the active SCADA node.
• Since the active node is the only one generating the alarms, only its SAC process is generating
alarms.
• During the failover process, from active to standby, both the standby and active SCADA will
temporarily generate alarms until the failover is complete.
• If the iClient cannot access the active node through iFIX networking, but can access the
standby SCADA through iFIX networking, the iClient uses the data on the standby node. This
allows the Alarm Summary to update the current value and acknowledgement status, but it
does not retrieve any new alarms until it can access the active node.
During startup, if communication cannot be made to the partner node, then the node being started
becomes the active node. If you can communicate with the partner node and it's active, nothing
happens. However, if the partner node is also in standby node, the primary node becomes active.
If the secondary node starts more quickly than the primary, it will become the active SCADA node.
When the primary starts in this case, it remains on standby until a failure causes it to switch.
When iFIX starts on the iClient, it attempts to establish iFIX networking communication with its
primary and secondary SCADA Servers. If both nodes are available, the iClient establishes an iFIX
networking connection with both of them but retrieves its data and alarms only from the active
SCADA. If only one SCADA Server is available, the iClient establishes a connection with it. If neither
SCADA Server is available, the iClient polls both nodes until it establishes a connection with at least
one SCADA Server.
If an iClient loses its network connection to the active SCADA, the iClient fails over to the standby
SCADA, if available. The client remains connected to the standby SCADA until the active SCADA
becomes available to the client again. In this condition, the client displays an iFIX Notification
message indicating that the client cannot receive alarms, cannot do writes, and may display data that is
out of date. This message box closes within a minute after the iFIX networking connection to the
active SCADA is restored. The message box will remain on the screen until the connection to the
active node is restored, or until the SCADA nodes switch roles.
14
Enhanced Failover
When an alarm occurs on a SCADA Server, the alarm is sent to all iClients. The iClient accepts alarms
from the active node only, regardless of whether it is the primary or secondary SCADA. Alarms are
not generated by the standby SCADA.
At the iClient, alarms and messages display the logical node name in brackets. In the following
example, the logical node name is LNN.
However, if the message is generated by the Database Manager or because of networking problems,
node names within the alarm text display the physical node name.
When a node is configured as part of a SCADA Server pair, the Alarm Summary Queue on each
SCADA node needs to be twice as big as it would be if the node were not part of a SCADA pair. For
example, if you are generating 500 alarms, the Alarm Summary Queue must be set to 1000. If the
Alarm Summary Queue overflows, you may see alarms appear and disappear in the alarm summary.
Refer to the Implementing Alarms and Messages manual for more information on queue sizes.
15
Enhanced Failover
which SCADA Server is available. The combination of the logical node name and the physical,
primary and secondary SCADA Server names is referred to as the primary and secondary grouping.
You configure the primary and secondary grouping in the SCU of the iClient and of each SCADA
Server.
The Local Node and Local Logical Names are configured in the Local Startup Definition dialog box of
the System Configuration Utility (SCU). The primary and secondary nodes are configured in the
Failover area of the SCADA Configuration dialog box in the SCU. For iClients, the primary and
secondary groupings are configured in the Remote Nodes area of the Network Configuration dialog
box of the SCU.
With Enhanced Failover, only the real time values for the Simulation (SIM) and Simulation 2 (SM2)
drivers are synchronized between the active and standby nodes. When the database synchronization
occurs, registers update in the SM2 and SIM drivers on the standby node.
NOTE: The SM2 driver increments the retry count if its global section is in use when it tries to poll.
Because the SCADA synchronization process updates this section frequently, the SM2 polling task on
the standby node often finds the section locked.
I/O driver poll tables (other than SM2 and SIM) are not synchronized. For instance, if you have the
MBE driver running on both SCADA nodes, each driver will maintain its own set of values in its I/O
poll table for the contents of the PLC values. It is likely that each poll table will have different values
for the same registers, depending on the timing of the different polls.
Scan, Alarm, and Control (SAC) does not process blocks on the standby SCADA, so there is a
possibility that the I/O driver could stop polling, after the access time expires. This will cause the data
in the I/O poll table to be out of date until SAC starts processing the blocks again. You should balance
your need for the most recent data after a failure with the extra polling traffic on your PLC network.
NOTE: GE Intelligent Platforms 7x drivers support the use of a Primary Rate and Secondary (poll)
Rate. When the Access Time time-out occurs, if configured, polling will occur at the Secondary Rate.
This reduces network traffic, yet allows the poll table of the driver to possess fairly recent data from
the PLC in the event that the SCADA becomes the active SCADA.
Be aware that you may need to reconfigure your driver polling time and access time in the Power Tool,
depending on your needs and the configuration of the driver.
16
Enhanced Failover
Be aware that when using the Alarm ODBC Service with Enhanced Failover:
• The Alarm ODBC Service does not inform Mission Control if it is running on the active or
standby node. If the counter for the logged alarms is incrementing, then the Alarm ODBC
Service assumes it is the active node. Use the NSD fields to check if the node is active or
standby.
• In the ODBC relational database, knowing whether the active or standby node logged an
alarm message is not easily determined if only the logical node name is logged. If you choose
to log the physical node name column, however, you can determine which SCADA of the
SCADA pair logged them.
• During the process of a failover, there is a small window during which you may get duplicate
alarms, if you have a large burst of alarms when the failover is occurring (while both nodes
think they are still active). You can look for the most recent failover alarm message to see
when the when the failover occurred.
• When a SCADA node is in standby mode, the Alarm ODBC service does not send alarms to
the SQL database. To always send alarms to the SQL database, even in standby mode, you
can include a command line parameter in the fix.ini file to do so. Add a /all to the
"RUN=%ALMODBC.EXE" command in your FIX.ini file, like this:
[ALARM ODBC]
RUN=%ALMODBC.EXE /all
The following figure illustrates some examples of failover alarm messages (shown in a portion of the
Alarm History window):
Be aware of the following when working with Proficy Historian and Enhanced Failover:
• If you want to collect data and alarms from SCADAs in an Enhanced Failover pair, you can
do that in the same way as in previous versions of iFIX. To collect data, use an iFIX native
collector or use the Historian OPC collector to the iFIX OPC data server. Put one data
collector on each SCADA in the pair. Be sure to collect data by logical node name. To collect
alarms, put an alarm collector on each SCADA node.
17
Enhanced Failover
• Proficy Historian collectors currently do not support Windows Vista. So, if you want to use
Enhanced Failover and Proficy Historian, do not install iFIX on Windows Vista.
• Tags are added to the default collector selected on the SCADA node from Configure
Historian Server(s) dialog box. To access this dialog box, in the iFIX WorkSpace, in Ribbon
view, on the Administration tab, in the Proficy Historian Group, in the Configure Historian
list, click Configure Historian Server.
• Only a primary collector can be set as the default collector. Secondary collectors are not
available for selection.
• Historical data links are not affected by a SCADA Server failover since they continue to
request data from the same Proficy Historian Archiver.
• The Integrated Historian feature for iFIX allows you to add tags only from an active SCADA
node.
• With the Integrated Historian feature, iFIX always adds tags as
LogicalNodeName.TagName.F_CV except for a text block. For a text block, it is added as
LogicalNodeName.TagName.A_CV.
[SyncManager]
EnableSIMFailureButtons=0
EnablePDBSyncButtons=1
TimeSyncRateMilliSeconds=10000
[ScadaRoleMgr]
ClientConnectiondCheckInterval=60
DelayAutomaticAfterManualSwitch=5
[FileSync0]
FIXDIR=PDBPATH
Inclusion="*.*"
Exclusion="*.TMP;*.EVS;~*.*;*.foo"
IdleTime=5000
Recursive=0
[LogFile]
DeleteOnStartup=1
18
Enhanced Failover
19
Enhanced Failover
20
Enhanced Failover
21
Enhanced Failover
When you install iFIX 5.1, a shortcut to the iFIX Notification application is added to your Windows
Startup folder. The iFIX Notification application runs in the background. iFIX Notification is
responsible for displaying a message on the client when it connects to a standby node. If you are not
running iFIX, or do not use Enhanced Failover, you can delete iFIX Notification from the startup
group.
If you terminate the iFIXNotification.exe application, restarting iFIX will not automatically restart the
iFIXNotification application. You must restart Windows or manually run iFIXNotification to restart it.
After you start Windows, the iFIXNotification.exe application keeps running (listed in the Windows
Task Manager) even after iFIX shuts down. Unlike some other iFIX tasks, iFIX Notification does not
prevent iFIX from restarting.
NOTE: If you choose to activate Enhanced Failover at a later date, then you will need to reinstall
iFIX or manually add iFIX Notification to the startup group to take advantage of this feature.
22
Enhanced Failover
connection to the active SCADA is restored. For an example of this error message, refer to the
Network Failure Detection on the iClient section. If it is not possible to restore the connection for some
period of time, you can manually fail the active server so that the standby becomes active. iFIX
Notification (iFIXNotification.exe) then clears the message.
The following figure illustrates the same configuration, with an additional LAN (illustrated in purple)
for redundant LAN support.
23
Enhanced Failover
This following examples shows one Local Area Network (LAN) for iFIX networking and one
dedicated LAN between the SCADA failover pair as the Primary network for data and alarm
synchronization. Also in use is the iFIX network, as the Secondary network, for data and alarm
synchronization.
The sections that follow describe the recovery state of the primary SCADA, secondary SCADA, and
iClient should one of these scenarios occur.
24
Enhanced Failover
Item State
25
Enhanced Failover
Item State
26
Enhanced Failover
Item State
27
Enhanced Failover
Item State
Secondary SCADA Server Standby. Since active and standby nodes are
communicating over the dedicated network, they never
switch.
28
Enhanced Failover
Item State
29
Enhanced Failover
Item State
iFIX Client The iFIX Client obtains data and alarms from the
primary SCADA.
30
Enhanced Failover
Item State
31
Enhanced Failover
NOTE: After you perform all the required steps for configuration in the System Configuration Utility
(SCU), you will need to save the changes. Restart iFIX on each computer to apply the changed
settings.
For Enhanced Failover, it is required that you use one additional Gigabit-Ethernet card (or better) for
dedicated SCADA-to-SCADA synchronization traffic (for a total of at least two network cards).
Use the following checklist to confirm that your primary and secondary computers are configured
properly before continuing with the rest of the Enhanced Failover configuration. Validate that the
SCADAs, I/O drivers, and iClients function independently before continuing with the Enhanced
Failover configuration.
The next set of configuration steps describe how to enable Enhanced Failover and defines partner
nodes, so that the SCU configuration on both the primary and secondary nodes is also the same.
32
Enhanced Failover
• Each network card (NIC) should have a name. For instance, you can use iFIX, SCADA Sync,
a company network name, and so on. Did you record the IP address? The NIC slot/order or IP
address could be affected. It is desirable that both machines have the same NIC cards and NIC
order (slot). The power save settings on your computers and dedicated network card (NIC)
must be disabled. Do not use any power setting features that affect CPU clock speed.
• All network cables and connections should be correct. You must use a direct connection via a
Cat6 crossover cable, without going through any switches, hubs, or routers.
• Jumbo Frames technology must be used on the dedicated network for Enhanced Failover.
Jumbo Frames technology allows for an Ethernet frame of 9000 MTU for the payload,
compared to a frame of 1500 bytes without the Jumbo Frames
• Additional hardware requirements should be met:
• A 3 GHz Dual-Core CPU. For better performance, please consider using higher. Be
aware that the computer processor must be Dual-Core; a single hyperthreaded core is
not supported.
• A minimum of 4 GB RAM. For better performance, please consider using more.
• A minimum of 1 GB of free hard drive space. Even after allowing for an extra GB
for iFIX, it is strongly recommended that many GBs of additional free space exist on
the hard drive to avoid performance issues.
• For more hardware requirements, refer to the System Requirements tab in the IPI.
• The same version of the Windows operating system running.
• The same major and minor version of iFIX with the same SIMs installed, if any, on both the
primary and secondary nodes.
IMPORTANT: If Proficy Historian is integrated with iFIX, be sure to additionally review the
Proficy Historian and Enhanced Failover section.
• The same iFIX security configuration in the Enhanced Failover pair, plus all View/iClient
nodes connecting to the SCADA Server. In order to automatically fail over, you need to have
either security enabled on all nodes, or security disabled on all nodes. Discrepancies in
security configuration levels may result in an inability to automatically fail over.
• The same I/O drivers with the same configuration, including polling times. Confirm the I/O
drivers are listed in the same order in both SCUs, on both SCADAs.
• The same Database (.PDB) files on both the primary and secondary nodes. Both Primary and
Secondary SCADAs should be shut down when you copy the iFIX PDB and Driver files from
the Primary SCADA to the Secondary SCADA.
• The same Database Dynamos (loadable blocks) installed. Be sure that the slot numbers for
Database Dynamos are also identical. For more information on slot numbers, refer to the steps
in the Understanding Slot Numbers section in the Building a SCADA System e-book.
NOTE: Database Dynamo mismatches cause the synchronization process to fail, and may
prevent your standby computer from becoming active.
33
Enhanced Failover
NOTE: The Alarm Areas (AAD) need to be defined on the local node and then synchronized with the
partner node. Even though the LogicalName may point to the local node, in the AAD it could be
pointing to the partner node. With the desired .PDB loaded on the active SCADA, copy the
AlarmAreas.AAD file from the PDB folder on the active SCADA to the PDB folder on the standby
SCADA. File Synchronization will, by default, copy the .AAD file. You should now be able to view
Alarm Areas correctly on either SCADA node.
34
Enhanced Failover
35
Enhanced Failover
For Enhanced Failover, it is required that you use one additional Gigabit-Ethernet card (or better) for
dedicated SCADA-to-SCADA synchronization traffic (for a total of at least two network cards).
Use the following checklist to confirm that your primary and secondary computers are configured
properly before continuing with the rest of the Enhanced Failover configuration. Validate that the
SCADAs, I/O drivers, and iClients function independently before continuing with the Enhanced
Failover configuration.
The next set of configuration steps describe how to enable Enhanced Failover and defines partner
nodes, so that the SCU configuration on both the primary and secondary nodes is also the same.
36
Enhanced Failover
• The same iFIX security configuration in the Enhanced Failover pair, plus all View/iClient
nodes connecting to the SCADA Server. In order to automatically fail over, you need to have
either security enabled on all nodes, or security disabled on all nodes. Discrepancies in
security configuration levels may result in an inability to automatically fail over.
• The same I/O drivers with the same configuration, including polling times. Confirm the I/O
drivers are listed in the same order in both SCUs, on both SCADAs.
• The same Database (.PDB) files on both the primary and secondary nodes. Both Primary and
Secondary SCADAs should be shut down when you copy the iFIX PDB and Driver files from
the Primary SCADA to the Secondary SCADA.
• The same Database Dynamos (loadable blocks) installed. Be sure that the slot numbers for
Database Dynamos are also identical. For more information on slot numbers, refer to the steps
in the Understanding Slot Numbers section in the Building a SCADA System e-book.
NOTE: Database Dynamo mismatches cause the synchronization process to fail, and may
prevent your standby computer from becoming active.
37
Enhanced Failover
NOTE: The Alarm Areas (AAD) need to be defined on the local node and then synchronized with the
partner node. Even though the LogicalName may point to the local node, in the AAD it could be
pointing to the partner node. With the desired .PDB loaded on the active SCADA, copy the
AlarmAreas.AAD file from the PDB folder on the active SCADA to the PDB folder on the standby
SCADA. File Synchronization will, by default, copy the .AAD file. You should now be able to view
Alarm Areas correctly on either SCADA node.
Use the Local Startup Definition dialog box in the System Configuration Utility (SCU) to define the
physical (local) and logical node names. In the SCU, you define the local node name and logical node
name in the Local Startup Definition dialog box. The following figure shows an example of the Local
Startup Definition dialog box for a primary node named FOXBORO, and a secondary node named
ALBANY. Both areas are highlighted in the following figure. The logical node name for both is
SCADA.
To define your local and logical node names on the primary SCADA:
1. On the Start menu, point to Programs, Proficy HMI/SCADA - iFIX, and then System
Configuration. The System Configuration Utility (SCU) appears.
2. On the Configure menu, click Local Startup. The Local Startup Definition dialog box appears.
3. In the Local Node Name field, enter the unique primary node name.
4. In the Local Logical Name field, enter the common logical node name.
5. Click OK.
38
Enhanced Failover
To define your local and logical node names on the secondary SCADA:
1. On the Start menu, point to Programs, Proficy HMI/SCADA - iFIX, and then System
Configuration. The System Configuration Utility (SCU) appears.
2. On the Configure menu, click Local Startup. The Local Startup Definition dialog box appears.
3. In the Local Node Name field, enter the unique primary node name.
4. In the Local Logical Name field, enter the common logical node name.
5. Click OK.
Use the SCADA Configuration dialog box to configure these items. The following figure shows an
example of the SCADA Configuration dialog box for a primary node named FOXBORO, where a
secondary node named ALBANY is defined. The Failover area of the dialog box is highlighted in the
following figure.
39
Enhanced Failover
The next figure shows the portion of the SCADA Configuration dialog box that you edit for a
secondary node named ALBANY. The primary SCADA node name FOXBORO is defined.
40
Enhanced Failover
1. On the Start menu, point to Programs, Proficy HMI/SCADA - iFIX, and then System
Configuration. The System Configuration Utility (SCU) appears.
2. On the Configure menu, click SCADA. The SCADA Configuration dialog box appears.
3. In the Failover area, select the Enable check box.
4. In the Node area, select the Primary option.
5. In the Secondary SCADA Name field, enter the name of your secondary SCADA node.
6. Click OK.
1. On the Start menu, point to Programs, Proficy HMI/SCADA - iFIX, and then System
Configuration. The System Configuration Utility (SCU) appears.
2. On the Configure menu, click SCADA. The SCADA Configuration dialog box appears.
3. In the Failover area, select the Enable check box.
4. In the Node area, select the Secondary option.
5. In the Primary SCADA Name field, enter the name of your primary SCADA node.
6. Click OK.
The Partner Address field must be defined on both the primary and secondary SCADA nodes. You
also select which LAN adapter(s) to use for data synchronization and select their order. The two
network cards (for these two IP addresses) need to be on the same physical network, and should be
static or fixed IP addresses. All adapters listed are enabled by default. You should disable any adapter
you do not want to use for data synchronization.
LAN adapters defined in the Data Sync Transport Options dialog box in the SCU are used only for
database synchronization between the SCADA pair and are not related to LAN adapters that are
defined and set up for iFIX networking in Advanced Network Configuration dialog box. Up to three
data transport options can be configured in the Data Sync Transport Options dialog box.
If you add or remove LAN adapters at a later date, you will need to re-configure the data
synchronization transport options, as well as the network configuration settings in the SCU. The
primary, secondary, and tertiary LAN connections and partner IP address must be entered for each
LAN.
To configure your data transport options and define the IP address for the partner SCADA:
41
Enhanced Failover
2. In the SCADA Configuration dialog box, click the Data Sync Transport button. The Data
Sync Transport Options dialog box appears.
3. Select or enter your options.
The following example shows the Data Sync Transport Options dialog box for a primary node with the
Partner's Address field highlighted. In this figure, the secondary node partner, ALBANY, has an IP
address of 123.123.123.13.
The next figure shows the portion of the Data Sync Transport Options dialog box that you edit for the
secondary node, ALBANY. The primary node partner, FOXBORO, has an IP address of
123.123.123.12. Notice how the Address and Partner's Address fields are reversed.
42
Enhanced Failover
Secondary Node, Portion of Data Sync Transport Dialog Box Dialog Box Requiring Edits
In this example, all three networks are enabled: the Primary, Secondary, and Tertiary. It is not required
for all three network choices to be Gigibit-Ethernet cards; however, it is strongly recommended that
you use at least one Gigabit-Ethernet card for dedicated SCADA-to-SCADA traffic, as the Primary
data transport.
In this example, the dedicated network for SCADA-to-SCADA traffic is the Primary transport. The
Secondary and Tertiary transports in this example are used for LAN Redundancy. In the example,
LAN 2 is the secondary network, because it is the backup LAN in the Redundant LAN configuration.
LAN 1, which, as the primary LAN for the LAN Redundancy configuration, will have more network
traffic than the backup, is specified as the Tertiary network for database synchronization. The
following figure illustrates how these three transport options map to the dedicated networks, LAN 1,
and LAN 2.
NOTE: Although this example shows Enhanced Failover configured with LAN Redundancy, both
Enhanced Failover and LAN Redundancy do not have to be configured together. One can be
configured separately without the other. Primary, Secondary, and Tertiary data transport options (up
to 3 transports) can be configured even without LAN Redundancy.
43
Enhanced Failover
Item Description
Description area Lists all available LAN adapters to use in primary, secondary, and
tertiary networks in the order of priority for network usage. Up to
three LAN adapters can display in this field.
Use the Up and Down arrows to move a network adapter up or
down in the list, to change the priority levels.
The descriptions that appear here match what appears in the network
configuration for the operating system.
Enable Select this check box to use the selected LAN adapter for data
synchronization between the SCADA pair as well as to enable the
settings in the Data Sync Transport Options dialog box, such as the
timers and partner address, for configuration.
MAC Address This field is for viewing purposes only. The Media Access Control
(MAC) address represents a unique identifier for the selected
network adapter on the local computer.
Address This field is for viewing purposes only. The Address is the IP
address for the selected network adapter on the local computer.
Enter the Address in this field into the Partner Address field on the
other node in the pair.
Watchdog Time Enter a value, in seconds, indicating how long you want to wait if
you have not heard from the partner SCADA. A ping message
(data packet) is sent to the partner SCADA if there has been no
communication with the partner node in this time period.
44
Enhanced Failover
Item Description
Watchdog Timeout Enter a value, in seconds, indicating how long you want iFIX
(ScadaSync.exe) to wait before determining that this transport is not
connected.
By default, this value is 1.000 second.
Message Timeout Enter a value, in seconds, indicating how long the SCADA
synchronization data transfer services waits for an
acknowledgement from the partner SCADA (indicating that a data
packet is received successfully). If an acknowledgement is not
received by this time-out period, the retry logic initiates according to
the value of the Message Retry field.
When a message times out, the SCADA Sync Monitor (a diagnostic
program) displays a message on the debug output screen. On this
screen, the timer will show up as milliseconds. For more
information on this screen in the SCADA Sync Monitor, refer to the
Debug Log for Troubleshooting section.
By default, the Message Timeout value is 0.500 seconds.
Message Retry Enter the number of times to retry sending a data packet, if an error
or time-out occurred.
By default, this value is 3.
Bandwidth Limit Enter the number of megabytes that you want to throttle network
traffic for. By default, this value is 0 (no throttling).
If a non-dedicated network between the SCADA pair is being used
for data synchronization, this setting should be utilized so as to not
consume an inordinate amount of network bandwidth.
As an example, on a dedicated Gigabit-Ethernet, values between 20
and 30 MB/s are typical.
Reset to Defaults Click this button to replace the current settings in the Data Sync
Transport Options dialog box with the default, factory settings.
1. On the Start menu, point to Programs, Proficy HMI/SCADA - iFIX, and then System
Configuration. The System Configuration Utility (SCU) appears.
2. On the Configure menu, click SCADA. The SCADA Configuration dialog box appears.
3. In the Failover area, confirm that the Enable check box is selected. If it is not, select Enable
now.
45
Enhanced Failover
4. In the Failover area, click the Data Sync Transport button. The Data Sync Transport dialog
box appears.
5. In the Description list, highlight the network LAN adapter to use for data synchronization
between the SCADA pair.
6. Select the Enable check box.
7. If you want the enabled adapter to appear on another line (slot), you can move the adapter up
or down in the list using the up and down arrow buttons.
8. In the Partner's Address field, enter the IP address of the secondary node.
9. Leave the default settings for the rest of the fields.
10. Click OK.
1. On the Start menu, point to Programs, Proficy HMI/SCADA - iFIX, and then System
Configuration. The System Configuration Utility (SCU) appears.
2. On the Configure menu, click SCADA. The SCADA Configuration dialog box appears.
3. In the Failover area, confirm that the Enable check box is selected. If it is not, select Enable
now.
4. In the Failover area, click the Data Sync Transport button. The Data Sync Transport dialog
box appears.
5. In the Description list, highlight the network LAN adapter to use for data synchronization
between the SCADA pair.
6. Select the Enable check box.
7. If you want the enabled adapter to appear on another line (slot), you can move the adapter up
or down in the list using the up and down arrow buttons.
8. In the Partner's Address field, enter the IP address of the primary node.
9. Leave the default settings for the rest of the fields.
10. Click OK.
Configuring iClients
To configure an iClient for Enhanced Failover, in the SCU for the iClient, you must add the logical
name of the SCADA pair to the remote node list in the Network Configuration dialog box. You must
do this for all iClients, as well as the primary and secondary pairing for this SCADA node. The
following figure shows an example of the Network Configuration dialog box for an iClient node with
the fields requiring edits highlighted.
46
Enhanced Failover
After you make these changes in the Network Configuration dialog box, you need to configure the
logical node name in the Remote Network Configuration dialog box. These steps must be performed
on all iClient or View nodes that obtain data from the SCADA pair. The following example shows the
Remote Network Configuration dialog box for an iClient node with the fields requiring edits
highlighted. The primary node name is FOXBORO, while the secondary node name is ALBANY, and
logical node name is SCADA.
47
Enhanced Failover
If both nodes are available, the iClient establishes an iFIX networking connection with both of them
but will get its data and alarms only from the active SCADA. If only one SCADA Server is available,
the iClient establishes a connection with it. If neither SCADA Server is available, the iClient polls both
nodes until it establishes a connection with at least one SCADA server.
If iFIX is stopped on the active SCADA, the computer is shut down, all networking to the SCADA
fails, or a manual failover is initiated, the standby SCADA will become the active SCADA. All
iClients nodes will switch to the newly active node and will now get their data and alarms from the
newly active SCADA.
If LAN Redundancy is not enabled (only one network path is enabled for iFIX
Networking):
If the iClient loses its iFIX networking connection to the active SCADA, it fails over to the standby
SCADA, if available. The iClient remains connected to the standby SCADA until the active SCADA
becomes available to the iClient again. In this condition, the iClient displays an iFix Notification
message indicating that you will not receive alarms, cannot do writes, and displayed data may be out of
date. This message box closes within a minute after iFIX networking connection to the active SCADA
is restored. If a write is attempted in this condition, the following prompt displays: “Cannot write
value. The SCADA node is in Standby mode.” You will also receive a prompt if you attempt to modify
the database from the Database Manager on the iClient node.
If LAN Redundancy is enabled (two network paths are enabled for iFIX Networking):
If the iClient loses its iFIX networking connection to the active SCADA, the LAN redundancy feature
will switch to use the other iFIX network to continue to get data and alarms from the active SCADA. If
the second iFIX network also fails, the iClient fails over to the standby SCADA, if available. The
iClient remains connected to the standby SCADA until the active SCADA becomes available to the
iClient again. In this condition, the iClient will display an iFIX Notification message indicating that
you will not receive alarms, cannot do writes, and displayed data may be out of date. This message box
closes within a minute after iFIX networking connection to the active SCADA is restored. If a write is
attempted in this condition, the following prompt displays: “Cannot write value. The SCADA node is
in Standby mode.” You will also receive a prompt if you attempt to modify the database from the
Database Manager on the iClient node.
Steps to Configure
1. Add the remote node on the iClient.
2. Configure the logical node name (remote node) on the iClient.
IMPORTANT: If you use Enhanced Failover with LAN Redundancy, you must also update the HOSTS
file on the primary computer, the secondary computer, and all iClient computers that connect to the
active SCADA Server pair. Make sure that the HOSTS files contain static or fixed IP addresses for the
primary and secondary SCADA nodes.
1. On the Start menu, point to Programs, Proficy HMI/SCADA - iFIX, and then System
48
Enhanced Failover
1. On the Start menu, point to Programs, Proficy HMI/SCADA - iFIX, and then System
Configuration. The System Configuration Utility (SCU) appears.
2. On the Configure menu, click Network. The Network Configuration dialog box appears.
3. In the Configured Remote Nodes list, select the logical node name that you added.
4. Click Configure. The Remote Node Configuration dialog box appears.
5. Select the Enable Logical Node Name check box.
6. In the Primary Node field, enter the primary node's local node name.
7. In the Secondary Node field, enter the secondary node's local node name.
8. Click OK to close the Remote Node Configuration dialog box.
9. Click OK.
The Inactivity Timer check box allows you to specify the amount of time that an iFIX node waits
before removing a connection from its list of outgoing connections if no data activity has occurred. If
this timer expires, the session ends. By disabling this option, a switch from active to standby (and vice
versa) will occur at a faster speed when a failure is detected. The following figure shows an example of
a portion of the Advanced Network Configuration dialog box with the Inactivity check box highlighted
and disabled.
49
Enhanced Failover
1. On the Start menu, point to Programs, Proficy HMI/SCADA - iFIX, and then System
Configuration. The System Configuration Utility (SCU) appears.
2. On the Configure menu, click Network. The Network Configuration dialog box appears.
3. In the Network area, select the TCP/IP option.
4. In the Options area, click the Advanced button. Click Yes when prompted to continue. The
Advanced Network Configuration dialog box appears.
5. In the Network Timers area, clear the Inactivity Timer check box.
6. Leave the default settings for the rest of the fields in this dialog box.
7. Click OK to return to the Network Configuration dialog box.
8. Click OK.
1. On the Start menu, point to Programs, Proficy HMI/SCADA - iFIX, and then System
Configuration. The System Configuration Utility (SCU) appears.
2. On the Configure menu, click Network. The Network Configuration dialog box appears.
3. In the Network area, select the TCP/IP option.
4. In the Options area, click the Advanced button. The Advanced Network Configuration dialog
box appears.
5. In the Network Timers area, clear the Inactivity Timer check box.
6. Leave the default settings for the rest of the fields in this dialog box.
7. Click OK to return to the Network Configuration dialog box.
8. Click OK.
50
Enhanced Failover
To suppress this message from appearing on screen, edit the FilteredErrors.ini file, which is located in
the C:\Program Files\Proficy\Proficy iFIX\Local directory. Add the 1914 error code to the
FilteredErrors.ini file, as shown in the following example:
;To add an error code to be filtered increment the count and set
;the Error equal to the return code
[ErrorCodes]
Count = 4
Error1 = 1620
Error2 = 1914
Error3 = 1915
Error4 = 8517
In this example, all typical network session errors are suppressed. After you edit the
FILTEREDERRORS.INI file, restart the Proficy iFIX WorkSpace to ensure your changes take effect.
1. Open the FilteredErrors.ini file in a text editor, such as Notepad. The FilteredErrors.ini file is
typically located in the C:\Program Files\Proficy\Proficy iFIX\Local directory.
2. Add a line for your entry, as in the following example:
;To add an error code to be filtered increment the count and set
;the Error equal to the return code
[ErrorCodes]
Count = 4
Error1 = 1620
Error2 = 1914
Error3 = 1915
Error4 = 8517
51
Enhanced Failover
1. Start the Primary node and verify that it's working properly.
2. After you confirm the Primary node is working properly, shutdown the Primary node.
3. Start the Secondary node and verify that it's working properly.
4. After you confirm the Secondary node is working properly, shutdown the Secondary node.
5. Restart the Primary node.
6. Restart the Secondary node. This allows the SCADAs to start in the preferred SCADA roles:
the Primary as Active, and the Secondary as Standby.
7. Allow a minute or two for the nodes to connect, ensuring all data & alarms settle out before
the Failover status changes.
8. Confirm that the Primary SCADA starts as the Active node and all driver and PLC
communications are good. The iClients should connect to the Primary and have the ability to
change and read data. The Secondary SCADA should start up as the Standby node.
Use the following tools to help you monitor the initial status of the Enhanced Failover pair and the
network:
• Windows Task Manager, Networking tab – to see if your networking cards are doing what
they are configured to do, and that each adapter is performing appropriately.
• Windows Task Manager, Processes tab – to verify that ScadaSync.exe and ScadaRoleMgr.exe
are listed as running on both SCADAs.
• SCADA Sync Monitor – to display runtime information about the primary and secondary
SCADA Servers.
• Runtime Information Fields – to display additional runtime information available about your
primary and secondary SCADA Servers, that does not already display in the SCADA Sync
Monitor. These fields can be added to pictures or EDA applications. For example, these fields
allow you to access more information about your data sync transports than you can in the
SCADA Sync Monitor.
• Mission Control – to view the status of the Scan, Alarm, and Control (SAC) program and
whether blocks are being processed.
• NetDiag – to check network communication, particularly if you are using Enhanced Failover
with LAN Redundancy.
• For scripts in pictures that you develop, always use the logical node name, unless you
specifically need to use the physical node name.
• EDA programs should use the logical node name as well.
• Ensure the same “loadable blocks” are installed on both SCADAs in the same slots.
• When configured and running, use the SCADA Sync Monitor to check the status on the active
node. For more information on this and other uses of the SCADA Sync Monitor, refer to the
52
Enhanced Failover
• Database size
• Network speed and/or traffic
• Hardware used
You can monitor the status of the network using the NSS diagnostic fields. This feature allows you to
monitor sessions on your network, determine which nodes are active, and display the name of the local
node. In the event that a SCADA Server becomes unavailable, you can also display an error code and
text describing the current state of the connection with each SCADA Server.
53
Enhanced Failover
iFIX provides the Network Status Display (NSD) tag that you can use when designing displays for
monitoring and controlling Enhanced Failover and LAN Redundancy. This tag is not a database block.
It is a special tag residing on each networked node that displays diagnostic, failover, and network
information. Refer to the table of available Network Status Server fields in the Network Status Server
Fields section.
To access the fields, use the server.node.NSD.field syntax. In the following example, PACKER1 is the
local physical name. NSD is always the tag.
FIX32.PACKER1.NSD.A_PRIMARYSCADA_0
NOTE: TCP/IP networking must be enabled in the SCU to use NSD fields in iFIX.
For more information on the Network Status Server fields, refer to the Network Status Server Fields
section.
Monitoring Enhanced Failover Status and Initiating Manual Failover to the Standby
SCADA
Three new NSS fields have been added for Enhanced Failover: SCADAREDUN, SCADASTATUS,
and SWITCHSCADAROLE.
In addition to monitoring the SCADA status or having automatic SCADA failover, you can also
manually force a SCADA failover to occur at any time. For example, you can manually switch to the
standby SCADA node when the active SCADA node needs to be shut down for maintenance.
You may want to trigger an event when a failover occurs. For example, you may want to display a
message informing the operator of the failover, and when the operator acknowledges the message,
close a valve or sound an alarm. Use the Scheduler to create schedules to do this. Refer to the Creating
and Editing Schedules and Entries section for more information.
To trigger an event on SCADA failover, write to the A_FAILOVER or F_FAILOVER Network Status
Server field. This field is set to 1 on automatic or manual failover. You must reset it to 0 to receive
notification of subsequent failovers.
To see if any connection has had a SCADA failover, read to the F_SCADAANYFAILOVER field. It
is set to non-zero if any F_FAILOVER field is set to non-zero.
54
Enhanced Failover
To see if any connection has had a LAN failover, read to the F_LANANYFAILOVER field. It is set to
non-zero if any F_LANFAILOVER field is set to non-zero.
For more information on the Network Status Server fields, refer to the Network Status Server Fields
section.
The Network Status Server (NSS) fields are individual field names containing the specific networking
information for the NSD tag. For instance, these fields include node specific information such as the
current active node name, the logical SCADA name, the backup path, the failover status, and so on.
NSD tags and NSS field names can be inserted into an iFIX picture as a datalink, for instance, to
display networking information for troubleshooting or diagnostics.
If you do not have an iFIX key on your computer, you will not be able to access the NSD tags or NSS
fields. This is because in Demo mode, iFIX does not have networking enabled. You must have a key
on your computer that supports networking in order to display the NSD or NSS information in iFIX.
NSD tags and NSS fields are not supported in iFIX Demo mode.
You can view NSD tags and NSS field names from the iFIX WorkSpace, using the iFIX Expression
Builder. On the iFIX Database tab, select the Node name, and then NSD tag should appear in the list of
tags. When you click the NSD tag, the NSS fields should appear in the field names column, as shown
in the following figure.
55
Enhanced Failover
Field Descriptions
The following table lists the Network Status Server (NSS) fields that are available for the Network
Status Display (NSD) tag.
56
Enhanced Failover
F_ALLOWREMOTEWRITES_0 through
F_ALLOWREMOTEWRITES_200 This field is 1 if remote nodes are allowed to
write to the NSD fields on the active node, or 0
if writes are not allowed.
A_APATHSTATUS_0 through Status of the connection over the active path. This
A_APARTHSTATUS_200 is either the primary or secondary status.
F_APATHSTATUS_0 through
F_APATHSTATUS_200
57
Enhanced Failover
58
Enhanced Failover
59
Enhanced Failover
60
Enhanced Failover
61
Enhanced Failover
NSS fields can be used in datalinks, for instance, to provide information on the current status of the
SCADA network. In addition to the fields that already existed in previous releases, you can use the
following new NSS fields in datalinks to monitor and switch the SCADA status:
62
Enhanced Failover
SCADA Failover
You can identify when a SCADA Server failover has occurred using a Network Status Server tagname
(for example, (A_FAILOVER_0 through A_FAILOVER_200, F_FAILOVER_0 through
F_FAILOVER_200), or through the alarm messages.
For example, if you are communicating from an iClient named LN1_VIEW to a primary SCADA node
named FOXBORO, and the active SCADA fails over to the secondary SCADA node named
ALBANY, the message on the iClient is:
LAN Failover
You can use a Network Status Server tag (A_LANFAILOVER_0 through A_LANFAILOVER_200,
F_LANFAILOVER_0 through F_LANFAILOVER_200) or the messages to identify when a LAN
failover has occurred.
For example, if you are communicating from an iClient named LN1_VIEW over TCP/IP address
1.1.1.2 to a SCADA node named FOXBORO, and the session is lost and re-established over TCP/IP
address 198.212.170.4, the message on the iClient is:
iFIX also supplies a NetworkStatusRedundancy.GRF picture, which allows you to view the network
status information for the SCADA Server pair, as well as iFIX network LAN status.
63
Enhanced Failover
NOTE: If you want to use the NSD pictures on an iClient, you must first search and replace all
instances of THISNODE with the local iClient name in the NSD picture. The
NetworkStatusDisplay.GRF and NetworkStatusRedundancy.GRF files are provided in the Picture path
of your iClient. You need to modify these files to reference your local node name.
Pictures with links to tagnames using the logical node name always display data from the active
SCADA, regardless of whether it is the primary or secondary SCADA. This is done without requiring
the picture to be opened, closed, or replaced after failover.
If you want to access data from a specific SCADA Server using the physical node name (and have a
session established to it), you can read data from both the primary and secondary SCADA, regardless
of which one is active, but you can only write to the SCADA that is active. You cannot write to the
SCADA that is in standby mode. This is because you used the physical node name in the datalink. The
picture displays data from the physical SCADA Server specified. If communication with that SCADA
Server is lost, data for datalinks using the physical node name is not available at the iClient until the
connection is re-established with that node.
For example, if the datalink on the iClient node is using the logical node name of the SCADA pair (for
example LNN.DI_VALVE_OPEN.F_CV) and it is currently getting data from the primary SCADA
(which is the active SCADA) and a failover to the standby SCADA occurs, then the datalink still
displays data that is from the now active secondary SCADA.
However, if the datalink the iClient node is using the physical node name of the primary SCADA pair
(for example FOXBORO.DI_VALVE_OPEN.F_CV) and is currently getting data from the primary
SCADA (which is the active SCADA) and a failover to standby SCADA occurs, then the datalink
displays @@@@ and a 1914 “Connection not established” prompt displays.
If you are upgrading from a prior iFIX release, you will need to re-evaluate the NSD fields you use to
get the status. Older EDA applications created for failover scenarios may not be correct when all the
new information available in iFIX 5.1 is considered. There are new NSD fields that you may want to
evaluate for use in your applications.
64
Enhanced Failover
If you are creating new EDA applications, or modifying existing ones, you can use the following new
NSD fields in datalinks to monitor and switch the SCADA status:
With these new fields, you can control EDA applications based on the SCADA role and mode.
Issue Resolution
SCADA Failover feature is This error found in ScadaRoleMgr.log indicates that your key does
not enabled in the license not support the Enhanced Failover feature. Check your key in the
for this node. Proficy License Viewer, and contact GE Intelligent Platforms to
purchase an upgrade or replace a defective key.
You will also get a Error popup message at iFIX startup indicating
SCADA failover feature is not enabled in the license for your
node.
You must purchase the additional Enhanced Failover option
(SCADA Failover) for all SCADA nodes if you plan to use
SCADA Failover in iFIX.
The following errors appear: These errors indicate that your loadable block configurations on
one or both nodes are not configured properly. Loadable block
PDB Sync Loadable Block
configurations must be the same on both primary and secondary
<blockname> Not defined
nodes. Use the BTKCFG utility on both SCADA nodes to exactly
locally.
match your loadable block configurations.
PDB Sync Loadable Block
<blockname> Not defined
on remote node.
PDB Sync Loadable Block
Mismatch locally
<blockname> version <ver>
remote <blockname>
version <ver>.
65
Enhanced Failover
Issue Resolution
Both SCADAs are active (as Verify your Ethernet connection being utilized for SCADA
displayed in Synchronization (preferably this is a dedicated LAN connection).
ScadaSyncMonitor or as
On both SCADAs, in the Task Manager, verify that
indicated by messages in
ScadaSync.exe and ScadaRoleMgr.exe are listed.
alarm services destinations).
On both SCADAs, in the SCU, check your Failover configuration.
Check that the Data Synch Transport is configured for the
appropriate LAN adapter and the Partner’s Address is correctly
defined.
iClient with logical node Make sure that the iClient is configured properly. Refer to the
names cannot connect to a Configuring iClients section.
partner SCADA.
Make sure the iClient machine can ping the SCADA node(s) using
the iFIX node name.
Verify the Hosts files are configured correctly on all nodes.
The driver configuration is Your driver configuration or node configuration (where the driver
causing issues. For instance, is installed) could be invalid. Try running each node independently
blocks are going off scan, or before configuring Enhanced Failover to determine if the drivers
question marks appear for are configured differently on each node. They should be
data links (the default configured identically.
indication that there is no
data, and is defined in the
User Preferences).
When the active switches to Your standby node is most likely not configured properly. Your
the standby node, the blocks driver configuration could be invalid. Try running each node
go off scan and you see independently before configuring Enhanced Failover to determine
@@@@ signs or question if the drivers are configured differently on each node. Make sure
marks instead of real data. that your drivers are configured the same on each node. Validate
The node fails back to the that both systems run properly alone before reconfiguring
other node. All blocks are Enhanced Failover.
still off scan, after it fails
back.
iClient nodes display error This is an expected message if the 1914 error has not been
message number 1914, configured to be filtered. When an iClient establishes a connection
every time the active to an active SCADA Server node in run mode, the iClient starts to
SCADA switches. read data from that node. When the active SCADA Server node
switches to the partner SCADA, the iClient momentarily loses its
session with that node, causing this error to appear.
You can suppress this error from appearing on screen. For more
information on how to suppress this message and others, refer to
the Reading Data from iFIX Pictures in iClients section.
66
Enhanced Failover
Issue Resolution
Connection Not Established When any iClient loses its iFIX networking session with a remote
With Node. node, this error to appears in alarm service destinations. Check
your Ethernet connections.
Standby SCADA displays This is not a synchronization message. This message indicates that
“Connection Failover: the iFIX networking connection to the Active SCADA has failed.
failover attempted” message Check the Ethernet connection being used for iFIX networking.
every minute in alarm
services destinations.
iClient with logical node Make sure that the iClient is configured properly. Refer to the
names cannot connect to a Configuring iClients section.
partner SCADA.
Make sure the iClient machine can ping the SCADA node(s) using
the iFIX node name.
Verify the Hosts files are configured correctly on all nodes.
Failover takes a long time. Adjust the session timers. Refer to the Working with Configurable
Session Timers section in the Setting Up the Environment manual
for more information.
On iClients, alarms are Make sure that the Alarm Startup Queue is enabled and that the
being lost during failover queue size is large enough to handle the alarms. Refer to the
periods. Implementing Alarms and Messages manual for more information
on this service.
On iClients, alarms are Make sure that the Alarm Summary Queue on the node is twice as
missing from the summary big as it would normally be if the node were not part of a SCADA
link or alarms appear and server failover pair. For example, if you are generating 500 alarms,
disappear in the alarm the Alarm Summary Queue must be set to 1000. Refer to the
summary link. Implementing Alarms and Messages manual for more information
on queue sizes.
67
Enhanced Failover
Issue Resolution
You are not seeing any Use the Alarm Status Utility (almstat.exe) to check if alarms are
alarms. coming into the user queue and being taken out. To start this
utility, while iFIX is running, type the following at the command
line:
almstat
A View node or iClient Check the network connections used with iFIX networking. A
connects to a secondary network cable could be unplugged.
SCADA. The secondary
SCADA remains in standby
mode, instead of connecting
to the primary node. Alarms
do not display, and datalinks
are not updating on
secondary, View, or iClient.
1. Do you understand the architecture of your Enhanced Failover system? If not, review the
What is Enhanced Failover?, What is my SCADA Role?, and Components of Enhanced
Failover sections, for starters. Other information is also provided earlier in this e-book.
2. Once you understand the architecture, verify that each SCADA node works independently
without Enhanced Failover enabled. For tips, refer to the Testing Your Enhanced Failover
Configuration section.
3. Confirm that you configured the primary and secondary nodes appropriately. Both SCADA
computers in the pair should be configured the same way. For a helpful checklist on what to
check, refer to the Preparation Checklist for Enhanced Failover section. Be sure to investigate
each and every item in the list. If one SCADA has a different configuration, say the drivers
and polling times are different, or the Database Dynamos (loadable blocks) are not loaded in
the same slots, or network (NIC) cards are configured slightly differently, it will impact your
system.
4. Ensure that the iFIX Enhanced Failover option is enabled on both primary and secondary
SCADAs, and that your client nodes are configured properly. For more information, refer to
the Checklist for Enhanced Failover Configuration section.
5. Check the Limitations of Enhanced Failover section. Is your configuration in compliance?
6. If after all of those steps, you believe everything is configured properly, the next step is to
investigate what is occurring between the two network cards. For instance, are your network
68
Enhanced Failover
cards doing what they are configured to do? In the Windows Task Manager, use the
Networking tab to investigate if each adapter is performing appropriately. From the
Networking tab, look for:
• 1-Gigabit-Ethernet cards (or better) dedicated for SCADA-to-SCADA traffic (for a
total of two network cards, minimum). The dedicated SCADA-to-SCADA network
cards should be excluded from the iFIX-to-iFIX network (not enabled for LAN
redundancy). If either card is less than 1 Gigabyte-Ethernet, it's not a supported
configuration. Also, both network cards must be of the same speed.
• Does each network card have an Adapter name? Are both cards of the same make
and model number, and use the same drivers?
• What is the network utilization of each card and what is the state of each card? Is it
operational? Is Jumbo Frames technology used on the dedicated network for
Enhanced Failover? (Jumbo Frames technology allows for an Ethernet frame of 9000
MTU for the payload, compared to a frame of 1500 bytes without the Jumbo
Frames.) Jumbo Frames technology must be used on the dedicated network for
Enhanced Failover.
• Be aware that network card configuration is one of the top configuration issues. For
additional details, refer to the More Information on Network Card Usage section
below.
7. If after all of the network configuration checks, you believe everything is configured properly,
the next step is to investigate the networking hardware.
• Are all network cables and connections properly connected? Are you using a direct
connection via a Cat6 crossover cable, without going through any switches, hubs, or
routers?
• Do both Gigabit-Ethernet (or better) cards dedicated for SCADA-to-SCADA traffic
have the same make and model number imprinted on the actual card or recorded in
the user manual?
8. Finally, another place to investigate is in the Windows Task Manager, on the Performance
tab. What is the physical memory available and system cache? Is your computer performing at
the necessary level for Enhanced Failover configurations? Be aware that:
• The wake-up upon receiving a socket or/and request feature must be disabled on the
dedicated SCADA-to-SCADA network card.
• SpeedStep® technology is not supported and must not be enabled.
• Due to limited bandwidth and latency, it is strongly advised that you do not use
wireless networking technology in your networking solution.
• The power save settings on your computers and dedicated network card (NIC) must
be disabled. Do not use any power setting features that affect CPU clock speed.
69
Enhanced Failover
It is important to understand the use of all the network cards on the PC. It is possible to use a particular
NIC card for multiple uses by design. It is also possible to inadvertently apply the NIC card to the
incorrect uses causing undesirable results.
• Whenever a new NIC is installed, re-check all configuration items that use the NIC card. The
NIC slot/order or IP address could require changes.
• It is desirable that both machines have the same NIC cards and NIC order (slot).
• Some drivers use a NIC IP Address or slot/order number. Communication may cease after
installing another NIC card since slot/order may change. The slots should be in the same order
on both nodes.
• When copying a Driver Configuration file from one node to another, the slot/order or IP
Address may need to be changed on the PC receiving the file.
• It is required to perform SCADA synchronization on a dedicated NIC. It is recommended to
have an identical NIC on both the Primary and Secondary SCADA.
• SCADA synchronization should be tested with the “default” NIC settings. Any advanced
setting changes should be mirrored on the partner SCADA.
• SCADA synchronization can optionally include a second NIC (as a backup to the first). Often
this can be the same NIC as the iFIX Client connection.
• Typically, iFIX Client connectivity uses a different NIC then SCADA synchronization. Only
ONE NIC should be enabled in the iFIX Networking configuration (unless LAN Redundancy
is used).
• Windows Task Manager, Networking tab – to see if your networking cards are doing what
they are configured to do, and that each adapter is performing appropriately.
• Windows Task Manager, Processes tab – to verify that ScadaSync.exe and ScadaRoleMgr.exe
are listed as running on both SCADAs.
• Log Files – to investigate what error messages may be occurring.
• Error Messages – to get more information about errors that you find in the logs.
• Mission Control – to view the status of the Scan, Alarm, and Control (SAC) program and
whether blocks are being processed.
• SCADA Sync Monitor – to display runtime information about the primary and secondary
SCADA Servers.
• Runtime Information Fields – to display additional runtime information available about your
primary and secondary SCADA Servers, that does not already display in the SCADA Sync
Monitor. These fields can be added to pictures or EDA applications. For example, these fields
70
Enhanced Failover
allow you to access more information about your data sync transports than you can in the
SCADA Sync Monitor.
• NetDiag – to check network communication, particularly if you are using Enhanced Failover
with LAN Redundancy.
• SCADASync.log – for reviewing log messages that occur during the SCADA
synchronization process.
• ScadaRoleMgr.log – for debugging the active to standby node switch.
Both of these files can be found in your iFIX LOCAL directory. If you installed iFIX to the default
location, this directory location is: C:\Program Files\Proficy\Proficy iFIX\LOCAL. These logs can
store up to approximately 1024 lines. When the maximum number of lines is reached, the file is
overwritten and the log begins again, in a circular update.
TIPS:
• The SCADA Sync Monitor (SCADASyncMonitor.exe) found in your iFIX install folder can be
used to view the information that appears in these logs.
• You can configure whether the SCADASync.log log is refreshed on iFIX startup (so that it
does not get overwritten) by using the SCADASync.ini file's DeleteOnStartup key. For more
information, refer to the Customizing the Synchronization Process with SCADASync.ini
section.
• Other logs that are not specific to Enhanced Failover, but may also be helpful for reviewing
system activity include the iFIX event (.EVT) file, usually found in C:\Program Files\GE
Fanuc\Proficy iFIX\ALM folder, and the Alarm History window which you can access from
the iFIX WorkSpace (and other iFIX Alarm Type destinations such as Alarms to File and
Alarm ODBC).
SCADASync.log
To enable the logging to ScadaRoleMgr.log, in the FIX.INI file, set the following values:
[PARTNER SCADA]
RUN=%SCADAROLEMGR.EXE /L
NOTE: The /L enables the logging; /V enables verbose logging; /A enables the appending of logging
(the contents will not be clear on iFIX restart).
Adding these lines to the SCADASync.ini causes the SCADASync.log file to be appended:
[LogFile]
DeleteOnStartup=0
Adding these lines to the SCADASync.ini causes the SCADASync.log file to be cleared on startup:
[LogFile]
DeleteOnStartup=1
The following figure shows an example of the SCADASync.log file, with some messages displaying.
71
Enhanced Failover
ScadaRoleMgr.log
The following figure shows an example of the SCADARoleMgr.log file, with some messages
displaying.
Examples of system messages generated for Enhanced Failover (that can appear in the
SCADARoleMgr.log file) include:
• When the SCADA node is transitioning into the Active state. The message contains the reason
for the state transition
• When the SCADA node is transitioning into the Standby state. The message contains the
reason for the state transition
• When the partner SCADA goes offline.
• When the partner SCADA comes back online.
72
Enhanced Failover
Error Codes
Unable to rename <name1> to When iFIX performs file synchronization, it creates a temporary
<name2> file name on the destination side. After the file is built on the
destination, iFIX removes the temporary file. If iFIX cannot
remove the temporary file, this error message occurs. For
example, if someone had the file open or if the file was locked
this message could display.
File <name> cannot be When iFIX performs file synchronization, it creates a temporary
removed file name on the destination side. After the file is built on the
destination, iFIX removes the temporary file. If iFIX cannot
remove the temporary file, this error message occurs. For
example, if someone had the file open or if the file was locked
this message could display.
File <name> Access Denied This error occurs if SCADASync needed to copy a file and could
not during synchronization.
Finished Sending File %s to This message is informational. If iFIX sends a file, this message
Partner Node indicates when it is received on the partner node.
File Synchronization Transfer This error indicates that part of a file came across from the active
Error node and the standby was not able to validate it.
File Change Notification This error indicates a problem with the file synchronization. In
Error this instance, part of a file came over the network, and something
went wrong. For example, the disk was full, or the file was
write-protected. Look at the SCADA Sync Monitor for clues.
For more information, refer to the Enhanced Failover
Diagnostics with the SCADA Sync Monitor section.
73
Enhanced Failover
Error Codes
Global Section Sync - Bad This error indicates that part of the process database came across
message the network connection improperly. If iFIX cannot validate the
message, it is not used. This message is not a typical error, and
rarely displays. iFIX will automatically recover from this
message.
UDP Socket error <number> This error occurs if a network card does not initialize (for
example, if the network cable is not plugged in).
UDP Buffer allocation This error indicates that iFIX could not allocate memory for a
FAILED <text message> buffer. Call GE Intelligent Platforms Support if this message
recurs. This message is not a typical error, and rarely displays.
File <name> Received from This message is informational. It indicates that the active node’s
Partner Node saved file was copied and added to the standby node.
PDB Sync Loadable Block This error indicates the loadable block configuration on one or
<blockname> Not defined both nodes does not match. Loadable block configuration must
locally be the same on both primary and secondary nodes.
PDB Sync Loadable Block This error indicates that there are two different versions of a
<blockname> Not defined on loadable block installed. Loadable block configuration must be
remote node the same on both primary and secondary nodes. Ensure that
loadable block DLLs (BTK*.*) are the same on both nodes.
PDB Sync Loadable Block This error indicates your loadable block configuration on one or
Mismatch locally both nodes is not configured properly. Loadable block
<blockname> version <ver> configuration must be the same on both primary and secondary
remote <blockname> version nodes.
<ver>
PDB Sync Database Block This error occurs if iFIX detected a difference in the database
versions don't match for block versions on the primary and secondary nodes. Process databases
type <blockname> must be the same version of iFIX. For example, you cannot have
one database be 5.0 and the other is at 5.1. Both nodes must have
the same version of iFIX installed.
74
Enhanced Failover
Error Codes
SCADA Failover feature is This error indicates that your key does not support the Enhanced
not enabled in the license for Failover feature. Check your key in the Proficy License Viewer,
this node and contact GE Intelligent Platforms to purchase an upgrade or
replace a defective key.
You must purchase the additional Enhanced Failover option
(SCADA Failover) for all SCADA nodes if you plan to use
SCADA Failover in iFIX 5.1.
When reviewing the SAC tab in Mission Control, the Status field indicates whether SAC is in one of
the following modes:
• Run
• Standby
• Stopped
The following figure shows an example of SAC in Run mode on a primary SCADA Server. The Status
field is set to Run, and is highlighted in the following figure. Another field that you may want to
monitor is the Blocks Proc. field, which is also highlighted in the following figure. In an Active
(running) SCADA, the Blocks Proc. field is continually updating. If this number stops updating or the
Status is stopped, there may be a problem with SAC.
75
Enhanced Failover
TIP: You can view more information about SAC in the Health screen of the SCADA Sync Monitor. For
more information, refer to the Diagnostics with the SCADA Sync Monitor section.
NOTE: The fields in the Alarm Synchronization tab in Mission control are unavailable when
Enhanced Failover is configured. Use the SCADA Sync Monitor to view information regarding the
synchronization process instead.
SAC, when running, receives a write request as a result of a user action or internally via another block.
SAC processes the request and pushes the request to the driver. It is possible that at any given time you
would have a number of pending writes in the driver queue. If the driver is optimized, the goal would
be to have the writes get processed very quickly.
NOTE: Configuring the driver to perform tasks as “fast” as possible can be detrimental. Drivers
should be optimized based on the actual throughput restrictions and PLC responsiveness.
76
Enhanced Failover
The speed at which writes in the queue get processed depends primarily on the driver technology
(Serial vs. Ethernet) and the driver configuration (whether or not the driver has been properly setup or
optimized).
It is important to note that pending writes in the queue do not necessarily indicate issues. It is possible
for a driver to have pending writes as long as the count does not continue to permanently grow. It is
also possible for a driver to receive thousands of writes, have the queue count increase briefly, and
then come back down, ideally close to 0.
The following two examples describe how driver queues and the Enhanced Failover are independent of
each other.
Consider this example: the driver is in the running state on both SCADAs. The driver is very busy and
has an average 10 pending writes in the queue. When the “failover” happens, the current active node
switches from Active to Standby. SAC will be “paused” at this time.
When the Active node becomes the Standby, the driver is still running. The writes will still be
processed as fast as the driver can handle them. The driver remains independent of SAC. So while
SAC is paused and no longer processing, the driver will continue to process anything in the write
queue. If there are 10 pending writes the driver will write them to the device. If there are no
communication errors to be reported, the writes will be successful.
One possible side effect is if you have a very quick driver, the writes will likely be done by the time
the second Node is promoted to Active, but if you are using a driver connected over a serial line, then
it is possible that the two drivers will attempt writes at the same time against the same IO on the PLC
at least for the duration needed for the first driver to empty its write queue.
The driver is in the running state only on the Active SCADA (using script). When the “failover” occurs
programmatically, one driver is stopped while the other driver is started.
When a driver is stopped either programmatically or manually, the write queue will get flushed.
Therefore, if you had 10 pending writes, then stop the driver, you just lost 10 writes and the writes will
never take place.
It is important to understand that this is not a driver issue. Understanding a driver’s capability, testing,
and optimizing the driver based on actual throughput restrictions and PLC responsiveness is the best
way to ensure desired driver performance.
The SCADA Sync Monitor displays whether the selected SCADA is in active or standby state,
describes how often database synchronizations occur, whether the data synchronization networks are in
good communication, debug log messages that occur during synchronization of the databases, SAC
77
Enhanced Failover
information, and the overall system health on both nodes. You can view the status and information
from either SCADA by selecting the desired SCADA from the drop-down list box.
The following figure illustrates the SCADA Sync Monitor, with the Overall Partner Status information
appearing. The Primary, Secondary, Tertiary area in the top section appears in green, as the
communication networks are all in good health – indicating that the partner nodes are communicating
successfully to each other, and that all three networks are available. In this example, information on the
Active node is displayed. The Active node, in this case BRIGITTA, appears in the SCADA selection
drop-down list at the top of the screen.
1. Open Windows Explorer and locate the iFIX install folder. By default, this folder is:
C:\Program Files\Proficy\Proficy iFIX.
2. Double-click the ScadaSyncMonitor.exe file. The SCADA Sync Monitor appears.
3. Click the button in the toolbar for the information that you want to display. For information
on what each of these toolbar buttons represents, refer to the following table.
78
Enhanced Failover
The following table describes the functions of each of the icons in the toolbar for the SCADA Sync
Monitor. You can use the drop-down list to view the active or standby node.
Icon Function
Communication Status
The Overall Partner Status screen in the SCADA Sync Monitor allows you to view
whether the primary and secondary SCADA Server pair are communicating and
view event log messages pertaining to Enhanced Failover.
The following table describes the fields that appear in this screen.
79
Enhanced Failover
Last Sync Time The last time the PDB was sent to the partner node.
Number of Syncs The number of synchronizations that occurred since you started
iFIX.
The following table describes the fields that appear in this screen.
Last Time Sent The time the SCADA last sent a successful synchronization.
Last Date Sent The date the SCADA last sent a successful synchronization.
80
Enhanced Failover
Seconds Between The total number of seconds it takes to synchronize the active
Synchronizations database with the standby database, from beginning to end.
The value of this field is always greater than the "Duration of Last
PDB Synchronization" field.
The Seconds Between Synchronizations field is perhaps the most
valuable field to monitor on this screen.
Duration of Last PDB The total number of seconds it took to send the synchronized data
Synchronization from the active database to the standby database, over the active
network connection.
Number of PDB Blocks The number of database blocks included in the synchronization.
PDB Size in Bytes The size of the entire iFIX process database that is being
synchronized, in bytes.
Last Sending Error The number of the last error message that appeared.
Enable/Disable This button is available only on the primary node. It is not displayed
Maintenance Mode on the secondary node.
Maintenance Mode allows you to temporarily suspend
synchronization between the two SCADA nodes, so that you can
make changes to your database while the SAC is still running.
When you finish making your changes, click the Disable
Maintenance Mode button to become the active node; your changes
will now be synchronized with the standby node. For more
information, refer to the Maintenance Mode section.
NOTE: Using maintenance mode forces both SCADAs in a pair to
active status. This will place increased load on your PLC network,
as the I/O drivers on both nodes are polling at the active rate. Both
nodes will generate alarms.
81
Enhanced Failover
Communication Status
The Communication Status screen in the SCADA Sync Monitor displays information
about the bytes sent and received on each network transport.
The following table describes the fields that appear in this screen.
Bytes Sent Displays the total number of bytes sent on the network.
The maximum number that can appear in this field is 4,294,967,296.
After this number is reached, the number is reset to zero and the
counter restarts.
Bytes Received Displays the total number of bytes received on the network. If the
value for the Bytes Received field is incrementing, that indicates
good health of the network.
The maximum number that can appear in this field is 4,294,967,296.
After this number is reached, the number is reset to zero and the
counter restarts.
Bytes per Second Displays the number of bytes processed per second on the network.
Average ACK Time Displays the average time it takes the partner SCADA to
(Seconds) acknowledge the communication status on the network.
82
Enhanced Failover
Watchdog Count Displays the number of times that the watchdog timer has checked
the network connection between the primary and secondary SCADA
nodes.
Every time the watchdog updates, it is assumed that the connection
is active. If after some period of time the primary network does not
receive a watchdog update from the partner SCADA Server, the
connection is considered not running and the Watchdog times out.
The Watchdog Timeout field is configured in the Timers area of the
Data Sync Transport dialog box in the SCU. You access this dialog
box from the SCADA Configuration dialog box.
The Debug Log screen in the SCADA Sync Monitor displays detailed debug
messages. Most of these messages do not appear in the SCADASync.log. By default,
debug message are not sent to the log file. Use this screen for reviewing log
messages that occur during the SCADA synchronization process.
By default, the Debug Log screen displays debugging information. The following figure shows an
example of these debug messages in the SCADA Sync Monitor. This screen is reserved for use by GE
Intelligent Platforms Support and Development only; it does not provide valuable end-user
information.
83
Enhanced Failover
The Overall System Health screen in the SCADA Sync Monitor displays the general
health of your local and remote SCADA pair.
The following table describes the fields that appear in this screen.
iFIX Version The version of iFIX running on your local and remote nodes.
Node Status The status of iFIX running on the local and remote nodes: ACTIVE,
STANDBY, UNKNOWN.
SAC Running The status indicating whether the Scan, Alarm, and Control (SAC)
program is Running or Stopped.
84
Enhanced Failover
SAC Active The status indicating whether SAC is communicating between the
active and standby nodes. Use this field to determine the Enhanced
Failover state of the local and remote nodes: ACTIVE or
STANDBY.
SAC Tick The number of times SAC sent and/or received data.
SAC Alive The status indicating whether SAC is running (1=Yes, 0=No).
Available Memory The available memory, in bytes, on your local and remote nodes.
Total Memory The total memory, in bytes, on your local and remote nodes. Use
this field along with the "Available System Disk Space" and
"Available Memory" fields to troubleshoot disk space errors.
Available System Disk The available system disk memory, in bytes, on your local and
Space remote nodes. Use this field along with the "Total Memory" and
"Available Memory" fields to troubleshoot disk space errors.
If the available disk space is zero, it causes a failover.
Available LocPath Disk The available local path memory, in bytes, on your local and remote
Space nodes.
If the available disk space is zero, it causes a failover.
Logical Node The logical node name for the SCADA pair. The logical node name
represents a primary and standby SCADA pair. This field can be
used to determine if the active and standby pair was configured
properly in the Local Startup Definition dialog box in the SCU.
Primary Node The primary node name. This field can be used to determine if the
active and standby pair was configured properly in the Local Startup
Definition dialog box in the SCU.
Secondary Node The secondary node name. This field can be used to determine if the
active and standby pair was configured properly in the Local Startup
Definition dialog box in the SCU.
85
Enhanced Failover
The Global Memory Synchronization Status screen in the SCADA Sync Monitor
displays internal troubleshooting information for Customer Support and
Development.
If you do not have an iFIX key on your computer, you will not be able to access the SCADASync tags
or fields. This is because in Demo mode, iFIX does not allow you to enable Enhanced Failover. You
must have a key on your computer that supports Enhanced Failover in order to display the
SCADASync information within iFIX. SCADASync tags and fields are not supported in iFIX Demo
mode.
SCADASync tags contain diagnostic and network information pertaining to your Enhanced Failover
configurations. These tags are designated solely for Enhanced Failover and are not database blocks.
SCADASync tags are special tags residing on the nodes associated with your Enhanced Failover
configuration. These tags include Enhanced Failover specific information such as the name of the
currently active node, whether the Primary node is in Maintenance Mode, the logical SCADA name,
the failover status, and so on. SCADASync tags and field names can be inserted into an iFIX picture as
a datalink, for instance.
You can use SCADASync tags in the iFIX WorkSpace or EDA-based applications. To view
SCADASync tags in the iFIX WorkSpace, you must first enable Enhanced Failover in the SCU (in the
SCADA Configuration dialog box). In this same dialog box, to fully configure Enhanced Failover, you
need to set your Primary and Secondary nodes, and Data Sync Transports. For more on Enhanced
Failover configuration, refer to the Configuring a SCADA Server Pair for Enhanced Failover section.
From within the iFIX WorkSpace, you can view SCADASync tags in the iFIX Expression Builder. In
the iFIX Expression Builder, on the iFIX Database tab, select the Node name. The SCADASync tags
should then appear in the list of tags. When you click the SCADASync[0] or SCADASync[1] tag, the
fields appear in the Field Names column, as shown in the following figure.
NOTE: SCADASync[0] refers to the local node, where as SCADASync[1] refers to its partner node as
configured in the SCU of that node.
86
Enhanced Failover
The Zero-based Enhanced Failover tag, SCADASync[0], refers to the local node. For example, say you
wanted to enter a data source that allows you to force the Primary node into Maintenance Mode,so that
you can make update to a database from a remote iClient. In the picture, you could enter a data source
like this, where the Primary node name is used and the index for the SCADASync tag is [0]:
Fix32.PrimaryNodeName.SCADASync[0].A_MAINTENANCEMODE
In this instance, you would replace PrimaryNodeName with the actual name configured in the SCU (in
the Local Startup Definition dialog box). Since, it's an A_ tag, a True or False entry appears in your
picture in run mode (as opposed to the F_ tag which displays a 1 or a 0). Once you force the Primary
into Maintenance Mode, you can open the Primary database on the iClient node (assuming you have
the network privileges to do so), and make your changes. For more information on how this works,
refer to the Maintenance Mode from Remote Developer Stations section.
The one-based Enhanced Failover tag, SCADASync[1], refers to the partner node for the
SCADASync[0] tag. For example, say you want to determine what remaining disk space is available
on the partner node. You could enter a data source like this in your picture, using the Primary node
name:
Fix32.PrimaryNodeName.SCADASync[1].E_SYSTEMDISK
Fix32.SecondaryNodeName.SCADASync[1].E_SYSTEMDISK
In these instances, you would replace PrimaryNodeName or SecondaryNodeName with the actual
node names configured in the SCU (in the Local Startup Definition dialog box). Since, it's an E_ tag, a
value of up to 40 whole number digits and 16 decimal digits can display in run mode to describe the
available system disk space left on your Windows system disk drive.
87
Enhanced Failover
The following examples show SCADASync tags as defined on a local node and its partner. The
SCADA Configuration defined in the SCU for the local node and its partner is listed below each
figure. Actual field names are not displayed. Instead, they are substituted with Field1, Field2, and
Field3. The numbers 4, 5, 6, 7, 8, and 9 are shown just for example use, and are not representative of
any specific field. The node names are excluded from the SCADASync tag references, for easier
readability.
Field Descriptions
The following table lists the SCADASync fields that are available for use with the Enhanced Failover
feature in the iFIX WorkSpace.
NOTE: To view SCADASync tags in the iFIX WorkSpace, you must first enable Enhanced Failover in
the SCU (in the SCADA Configuration dialog box). SCADASync tags are not supported in iFIX Demo
mode.
SCADASync Fields
A_AVAILMEM The available memory, in bytes, of the specified node. Use this
E_AVAILMEM field along with the "A/E_SYSTEMDISK" and
"A/E_TOTALMEM" fields to troubleshoot disk space errors.
A_AVAILMEM represents a whole number, restricted only by
the number of characters you select when you add the field to
your picture.
E_AVAILMEM represents a value with up to 15-digit precision
that can be displayed, depending on how many digits you enable
for viewing.
88
Enhanced Failover
SCADASync Fields
A_AVEPDBACK The average time, in seconds, that it took for the last database
E_AVEPDBACK synchronization.
F_AVEPDBACK
A_AVEPDBACK represents a whole number, restricted only by
the number of characters you select when you add the field to
your picture.
E_AVEPDBACK represents a value with up to 15-digit precision
that can be displayed, depending on how many digits you enable
for viewing.
F_AVEPDBACK represents a floating point value can be
displayed in your picture.
89
Enhanced Failover
SCADASync Fields
A_LOCPATHDISK The available disk space where iFIX is installed, in bytes. If the
E_LOCPATHDISK available disk space is zero, it causes a failover.
A_LOCPATHDISK represents a whole number, restricted only
by the number of characters you select when you add the field to
your picture.
E_LOCPATHDISK represents a value with up to 15-digit
precision that can be displayed, depending on how many digits
you enable for viewing.
A_LOGICALNODE The logical node name for the SCADA pair. The logical node
name represents both the active and standby SCADA pair. This
field can be used to determine if the active and standby pair was
configured properly in the Local Startup Definition dialog box in
the SCU of the specified node.
90
Enhanced Failover
SCADASync Fields
A_PDBCOMPLETEMSG The total number of times it took to send the synchronized data to
E_PDBCOMPLETEMSG the partner node over the active network connection.
A_PDBNUMOFSYNCS The number of synchronizations that were sent since you started
E_PDBNUMOFSYNCS iFIX.
91
Enhanced Failover
SCADASync Fields
A_PDBRCVDDATE The last date that the iFIX database (PDB) was received by the
partner node.
A_PDBRCVDTIME The last time that the iFIX database (PDB) was received by the
partner node. This time is based on the local regional settings of
the computer receiving the information.
A_PDBSENTDATE The last date that the iFIX database (PDB) was sent to the partner
node.
A_PDBSENTTIME The last time that the iFIX database (PDB) was sent to the partner
node. This time is based on the local regional settings of the
computer requesting the information.
A_PDBSIZEINBYTES The size of the entire iFIX process database that is being
E_PDBSIZEINBYTES synchronized, in bytes.
A_PDBSIZEINBYTES represents a whole number, restricted
only by the number of characters you select when you add the
field to your picture.
E_PDBSIZEINBYTES represents a value with up to 15-digit
precision that can be displayed, depending on how many digits
you enable for viewing.
92
Enhanced Failover
SCADASync Fields
A_PDBSYNCDURATION The total number of seconds it took to send the synchronized data
E_PDBSYNCDURATION from the active database to the standby database, over the active
network connection.
A_PDBSYNCDURATION represents a whole number, restricted
only by the number of characters you select when you add the
field to your picture.
E_PDBSYNCDURATION represents a value with up to 15-digit
precision that can be displayed, depending on how many digits
you enable for viewing.
A_PRIMARYNODE The Primary node name configured on the specified node. This
field can be used to determine if the active and standby pair was
configured properly in the Local Startup Definition dialog box in
the SCU.
A_SACACTIVE The status indicating whether the Scan, Alarm, and Control
E_SACACTIVE (SAC) is processing the database.
A value of 0 represents standby, while 1 means it is actively
processing the database.
A_SACSTATUS The status indicating whether the Scan, Alarm, and Control
E_SACSTATUS (SAC) program is ready to run (1=Yes, 0=No).
A_SACTICK The number of times the Scan, Alarm, and Control (SAC)
E_SACTICK program sent and/or received data.
A_SACTICKISRUNNING The status indicating whether the Scan, Alarm, and Control
E_SACTICKISRUNNING (SAC) program is Running or Stopped (1=Running, 0=Stopped).
A_SECONDARYNODE The Secondary node name configured on the specified node. This
field can be used to determine if the active and standby pair was
configured properly in the Local Startup Definition dialog box in
the SCU.
A_STATUS The status of the specified node: STANDBY (0), ACTIVE (1), or
F_STATUS MAINTENANCE (2).
93
Enhanced Failover
SCADASync Fields
A_SYSTEMDISK The available system disk of the Windows system disk drive, in
E_SYSTEMDISK bytes, left on the specified node. Use this field along with the
"A/E_TOTALMEM" and "A/E_AVAILMEM" fields to
troubleshoot disk space errors. If the available disk space is zero,
a failover occurs.
A_SYSTEMDISK represents a whole number, restricted only by
the number of characters you select when you add the field to
your picture.
E_SYSTEMDISK represents a value with up to 15-digit
precision that can be displayed, depending on how many digits
you enable for viewing.
A_TOTALMEM The total memory, in bytes, on the specified node. Use this field
E_TOTALMEM along with the "A/E_SYSTEMDISK" and "A/E_AVAILMEM"
fields to troubleshoot disk space errors.
A_TOTALMEM represents a whole number, restricted only by
the number of characters you select when you add the field to
your picture.
E_TOTALMEM represents a value with up to 15-digit precision
that can be displayed, depending on how many digits you enable
for viewing.
94
Enhanced Failover
SCADASync Fields
A_TPORTBYTESASEC[0- The number of bytes processed, per second, on the network for
2] the specified data transport.
E_TPORTBYTESASEC[0-2]
A [0] following the field name refers to the Primary data
transport. [1] refers to the Secondary data transport. [2] refers to
the tertiary data transport. For example,
A_TPORTBYTESASEC[0] represents the number of bytes
processed by the Primary data transport.
A_TPORTBYTESASEC[] represents a whole number, restricted
only by the number of characters you select when you add the
field to your picture.
E_TPORTBYTESASEC[] represents a value with up to 15-digit
precision that can be displayed, depending on how many digits
you enable for viewing.
95
Enhanced Failover
SCADASync Fields
A_TPORTBYTESREVD[0- Displays the total number of bytes received on the network for
2] the specified data transport. If the value for the bytes received is
E_TPORTBYTESREVD[0- incrementing, that indicates good health of the network.
2]
The maximum number that can appear in this field is
4,294,967,296. After this number is reached, the number is reset
to zero and the counter restarts.
A [0] following the field name refers to the Primary data
transport. [1] refers to the Secondary data transport. [2] refers to
the tertiary data transport. For example,
A_TPORTBYTESREVD[0] represents the total number of bytes
received by the Primary data transport.
A_TPORTBYTESREVD[] represents a whole number, restricted
only by the number of characters you select when you add the
field to your picture.
E_TPORTBYTESREVD[] represents a value with up to 15-digit
precision that can be displayed, depending on how many digits
you enable for viewing.
A_TPORTBYTESSENT[0- The total number of bytes sent on the network for the specified
2] transport.
E_TPORTBYTESSENT[0-2]
The maximum number that can appear in this field is
4,294,967,296. After this number is reached, the number is reset
to zero and the counter restarts.
A [0] following the field name refers to the Primary data
transport. [1] refers to the Secondary data transport. [2] refers to
the tertiary data transport. For example,
A_TPORTBYTESSENT[0] represents the total number of bytes
sent over the Primary data transport.
A_TPORTBYTESSENT[] represents a whole number, restricted
only by the number of characters you select when you add the
field to your picture.
E_TPORTBYTESSENT[] represents a value with up to 15-digit
precision that can be displayed, depending on how many digits
you enable for viewing.
96
Enhanced Failover
SCADASync Fields
A_TPORTDOGCOUNT[0-2] The number of times that the watchdog timer has checked the
E_TPORTDOGCOUNT[0-2] network connection between the SCADA pair for the specified
data transport.
Every time the watchdog updates, it is assumed that the
connection is active. If after some period of time, the Primary
network does not receive a watchdog update from the partner
SCADA Server, the connection is considered not running and the
Watchdog times out.
The Watchdog Timeout field is configured in the Timers area of
the Data Sync Transport dialog box in the SCU. You access this
dialog box from the SCADA Configuration dialog box.
A [0] following the field name refers to the Primary data
transport. [1] refers to the Secondary data transport. [2] refers to
the tertiary data transport. For example,
A_TPORTDOGCOUNT[0] represents the watchdog count of the
Primary data transport.
97
Enhanced Failover
SCADASync Fields
A_TPORTNAKCNT[0-2] The number of times that the specified transport did not
E_TPORTNAKCNT[0-2] acknowledge a communication message (sent a NAK).
A [0] following the field name refers to the Primary data
transport. [1] refers to the Secondary data transport. [2] refers to
the tertiary data transport. For example, A_TPORTNAKCNT[0]
represents the number NAKs sent to the Primary data transport.
Field Formats
The format of the tag indicates the type of data that the field stores. The following table provides an
overview of the available formats:
98
Enhanced Failover
Field Formats
When using the following tag in a datalink (with the A_ field), the status of the primary node in your
Enhanced Failover configuration displays in run mode: STANDBY, ACTIVE, or MAINTENANCE.
For example, if the primary node were the active node, this tag would display ACTIVE:
Fix32.PrimaryNodeName.SCADASYNC[0].A_STATUS
When using the following tag in a datalink (with the F_ field), the status of the primary node in your
Enhanced Failover configuration displays in run mode: 0 for STANDBY, 1 for ACTIVE, or 2 for
MAINTENANCE. For example, if the primary node were the active node, this tag would display 1:
Fix32.PrimaryNodeName.SCADASYNC[0].F_STATUS
When using the following tag in a datalink (with the A_ field), the status of the secondary node in your
Enhanced Failover configuration displays in run mode: STANDBY, ACTIVE, or MAINTENANCE.
For example, if the secondary node were the standby node, this tag would display STANDBY:
Fix32.SecondaryNodeName.SCADASYNC[0].A_STATUS
When using the following tag in a datalink (with the F_ field), the status of the secondary node in your
Enhanced Failover configuration displays in run mode: 0 for STANDBY, 1 for ACTIVE, or 2 for
MAINTENANCE. For example, if the secondary node were the standby node, this tag would display
0:
99
Enhanced Failover
Fix32.SecondaryNodeName.SCADASYNC[0].F_STATUS
The following example shows the version of iFIX running on the primary node:
Fix32.PrimaryNodeName.SCADASYNC[0].A_IFIXVERSION
In this case, the version that displays is: 5.1.6846, which is iFIX version 5.1.
The following example displays the logical node name configured for the SCADA pair, as defined in
the SCU on the primary node:
Fix32.PrimaryNodeName.SCADASYNC[0].A_LOGICALNODE
The following example displays the primary node name configured on the secondary SCADA in the
pair, however it uses the secondary node name in the tag to reference it:
Fix32.SecondaryNodeName.SCADASYNC[0].A_PRIMARYNODE
The following example displays the secondary node name of SCADA pair, as configured in the SCU
on the primary SCADA:
Fix32.PrimaryNodeName.SCADASYNC[0].A_SECONDARYNODE
The following example displays the available system disk of the Windows system disk drive, in bytes,
left on the primary node (using the A_ field):
Fix32.PrimaryNodeName.SCADASYNC[0].A_SYSTEMDISK
The following example displays the available system disk of the Windows system disk drive, in bytes,
left on the primary node (using the E_ field):
Fix32.PrimaryNodeName.SCADASYNC[0].E_SYSTEMDISK
A_SYSTEMDISK represents a whole number, restricted only by the number of characters you select
when you add the field to your picture. E_SYSTEMDISK represents a value with up to 15-digit
precision that can be displayed, depending on how many digits you enable for viewing.
100
Enhanced Failover
Question Answer
What kind of hardware It is required that you have at least one dedicated SCADA network.
setup do I need for This network’s components (LAN adapters, hubs, routers, switches,
Enhanced Failover? cables, and so on) should all be capable of running at 1 Gigabit. You
can optionally utilize a crossover network cable if the partner
SCADAs are close to each other. You need to configure the active
and standby nodes identically. For more information, refer to the
Configure Computers for Enhanced Failover section.
Is there an iFIX security Yes. For information, refer to the Assigning Failover Security
feature for Enhanced Privileges to Users section. There is also a security area available for
Failover? Maintenance Mode. Refer to the Maintenance Mode from Remote
iClients section for more information.
101
Enhanced Failover
Maintenance Mode
Maintenance Mode allows you to temporarily suspend synchronization between the two SCADA
nodes in an Enhanced Failover pair, so that you can make changes to your iFIX database while the
Scan, Alarm, and Control (SAC) program is still running. For example, you could use Maintenance
Mode to add a database block (using a pre-existing driver I/O address) or import a database .CSV file
while SAC is running. Driver modifications are not recommended in Maintenance Mode. Any SCADA
modifications using Maintenance Mode should be planned ahead of time to minimize disruptions to
your network. If iFIX security is enabled, you are encouraged to use a security area to restrict the usage
of Maintenance Mode to specified users.
IMPORTANT: Maintenance Mode is the only valid and supported way to modify a database on the
Enhanced Failover pair, while the SAC is active. In Maintenance Mode, modifications are done on the
Primary node. If you do not go into Maintenance Mode to make your changes, you may lose the
changes you enter or corrupt the database.
You can initiate Maintenance Mode on the Primary SCADA either locally, or remotely from an
iClient. When you enter Maintenance Mode, SCADA synchronization temporarily stops;
synchronization between the SCADA pair is suspended. Physical file synchronization of the process
database (.PDB file) is included in this suspension. Changes to the .PDB file are not picked up while
SCADA synchronization is suspended. While Maintenance Mode is enabled, you make your changes
to the Primary node.
NOTE: Using Maintenance Mode forces both SCADAs in a pair to Active status. This will place an
increased load on your PLC network, as the I/O drivers on both nodes are polling at the active rate.
Both nodes will generate alarms.
When you exit Maintenance Mode, SCADA synchronization resumes. If you modified your database,
save your database. iFIX synchronizes the partner SCADAs, including the .PDB file shared between
them. The Primary SCADA becomes the active node, and all iClient (View) node connections display
the active SCADA node, now the Primary node.
However, some file changes made during Maintenance Mode are not retroactively propagated. For
example, if you entered Maintenance Mode to add or remove a new alarm area, after you exit
Maintenance Mode from the Primary node, you will need to manually copy the *.ADD files from the
active SCADA to the standby SCADA.
NOTE: In Maintenance Mode, both nodes are active which can cause two alarm entries (one from
each SCADA) in the Alarm ODBC. Proficy Historian tags continue to collect from the SCADA running
in Maintenance Mode. You can use the Historian Administrator to force a switch to the redundant
collector.
To enable Maintenance Mode, you use the SCADA Synchronization Monitor on the Primary node, or
the A_MAINTENANCEMODE or F_MAINTENANCEMODE fields for the SCADASync tag in an
iFIX picture or an EDA application. Be aware that if security is enabled on your iFIX nodes,
Maintenance Mode can only be enabled if you have access to the Maintenance Mode security area.
For local use of Maintenance Mode from the Primary SCADA, you can use either the SCADA
Synchronization Monitor or the SCADASync tag. For remote use of Maintenance Mode, you can only
use the SCADASync tag. An overview of how to use the SCADA Synchronization Monitor is outlined
below. For information on the SCADASync tag, refer to the Maintenance Mode from Remote iClients
section.
102
Enhanced Failover
1. You place the Primary node into Maintenance Mode by clicking the Enable Maintenance
Mode button in the SCADA Synchronization Monitor, or by using the
A_MAINTENANCEMODE or F_MAINTENANCEMODE fields for the SCADASync tag in
iFIX picture or an EDA application.
2. With Maintenance Mode enabled, both SCADAs in the Enhanced Failover pair switch to an
Active status. Synchronization between the SCADA pair is temporarily suspended.
3. You enter your database changes on the Primary node (either locally from the server, or
remotely from a client). When remote, you need to open the Primary database on the iClient
node (assuming you have the network privileges to do so) to make your changes. In
Maintenance Mode, all changes must be made to the database on the Primary node.
4. After your changes are complete, you take the Primary node out of Maintenance Mode by
103
Enhanced Failover
clicking the Disable Maintenance Mode button in the SCADA Synchronization Monitor or by
using the A_MAINTENANCEMODE or F_MAINTENANCEMODE fields for the
SCADASync tag in iFIX picture or an EDA application.
5. The Primary node becomes the Active node. The Secondary node becomes Standby node.
6. You save your database on the Primary node. The databases are re-synchronized.
NOTES:
• Any changes made by clients, EDA programs, or schedules to the active Secondary node are
lost when Maintenance Mode ends. For example, if you added a block to the Secondary node
database, that change would be gone when the Primary node leaves Maintenance Mode and
becomes active.
• For more up to date information on Maintenance Mode, refer to the GlobalCare
Knowledgebase.
1. In the SCU of the Primary node, on the Configure menu, click SCADA. The SCADA
Configuration dialog box appears.
2. In the Maintenance Mode Security Area field, enter your security letter.
3. Click OK.
For more information on how to set up security in iFIX, refer to the Implementing Security e-book.
If you want to enable Maintenance Mode from a remote iClient, you use the
A_MAINTENANCEMODE or F_MAINTENANCEMODE fields in a SCADASync tag within an
104
Enhanced Failover
iFIX picture or an EDA application. The Maintenance Mode fields can be used assuming you have the
access to do so, if security is enabled on your iFIX nodes.
1. In the SCU of the Primary node, on the Configure menu, click SCADA. The SCADA
Configuration dialog box appears.
2. In the Maintenance Mode Security Area field, enter your security letter.
3. Click OK.
For more information on how to set up security in iFIX, refer to the Implementing Security e-book.
Fix32.PrimaryNodeName.SCADASYNC[0].A_MAINTENANCEMODE
In these instances, you would replace PrimaryNodeName with the actual name configured in the SCU
(in the Local Startup Definition dialog box) for the primary node. Since it's an A_ tag, a True or False
entry appears in your picture in run mode (as opposed to the F_ tag which displays a 1 or a 0). For
example, here is a datalink added to a picture, with the In-Place data entry option enabled, so that you
can edit this field (and change it from TRUE to FALSE, or vice versa) in run mode:
105
Enhanced Failover
Once you force the primary into Maintenance Mode, you can open the primary database on the iClient
node (assuming you have the network privileges to do so), and make your changes.
IMPORTANT: In Maintenance Mode from the iClient, always make sure that you open the remote
database, and not the local one. Otherwise, your changes will not persist after you exit Maintenance
Mode. Any file changes to the active secondary node are lost when Maintenance Mode ends.
For more information on other SCADASync fields that you can use in your pictures, refer to the
Runtime Information Fields for Enhanced Failover section.
Client Operations
The following sections describe the operations for the iClient for Enhanced Failover scenarios:
When an alarm occurs on a SCADA Server, the alarm is sent to all connected iClients. The iClient
accepts alarms from the active node only. Alarms are not generated on the standby SCADA. In iFIX
106
Enhanced Failover
5.1, only one node is generating alarms. During failover there may be a small window where both
SCADAs are momentarily active, where both generate alarms to send to the iClient. During this period
the iClient accepts alarms only from the active node(s).
You can view alarms in the Alarm History window on the iClient.
At the iClient, alarms and messages display the logical node name in brackets. In the following
example, the logical node name is LNN.
Manager or because of networking problems, node names within the alarm text display the physical
node name.
iFIX pictures with links to tagnames on the logical SCADA always attempt to show data from the
active SCADA, regardless of whether it is the primary or standby SCADA. This is done without
requiring the picture to be opened, closed, or replaced.
When an iClient establishes a connection to an active SCADA Server node, it starts to read data from
that node. After the active SCADA Server node becomes unavailable, the iClient loses its session with
that node, causing a message box to appear with following message:
To disable this message, you can edit the FilteredErrors.ini file, which is located in the C:\Program
Files\Proficy\Proficy iFIX\Local directory, to include error number 1914. Once you have edited this
file you must restart the Proficy iFIX WorkSpace for the change to take effect.
When the iClient switches from the active to the standby SCADA node, the following events occur:
1. The links in the open pictures on the iClient display @ symbols (as the default) to indicate
that the session with the active node has been lost.
2. The standby node becomes the active node and the failed node becomes the standby node.
3. The pictures resolve automatically using the information from the new active node. This
ensures data integrity.
4. The @ signs are replaced with process data from the new active node. The node name
referenced by these links does not change; it continues to display the name of the logical
node.
5. An event message indicating that a failover has occurred is sent to all alarm destinations
configured for the iClient when failover occurs.
NOTE: You can change the default @ signs using the Comm Error setting on the Animations Data
107
Enhanced Failover
Error Defaults tab in the User Preferences dialog box of the Proficy iFIX WorkSpace.
Another instance where this message box displays is where the iClient loses all iFIX network
connections to the active SCADA, but still has an iFIX networking connection to the standby SCADA.
The network connection between the SCADA pair that is being used for data synchronization is still
established, and the iClient switches to the standby SCADA. When this occurs, an iFIX Notification
message box appears on the iClient. An example of this error message as it displays in an iFIX picture
is illustrated in the following figure. Note that while in this condition, iFIX is receiving data, but that
data may be out of date; you cannot execute a write from this iClient; you will not receive new alarms.
This message box continues to display until the iClient switches to get its data from the active
SCADA.
108
Enhanced Failover
If an iFIX WorkSpace pop-up message appears, for instance to a request to write a tag, it appears
overlapping the iFIXNotification dialog box.
NOTE: The Minimize button, the first button in the upper right corner of this dialog box, reduces this
dialog box to display the title bar only. The text "iFIXNotification" is the only text that appears in this
title bar. Clicking the Restore button, the middle button in the upper right corner, restores the dialog to
display the original state. You can also double-click the title bar to toggle between states.
The iFIXNotification message box closes within a minute after the iFIX networking connection to the
active SCADA is restored.
When a failover occurs on the SCADA node, it is automatic and seamless. iFIX sends an alarm
message whenever SCADA Server failover occurs. One of the few times a message appears on screen
during the failover is when you do not programmatically suppress the SCADA connection error
message (error number 1914). You can suppress this error from appearing on screen using the
FilteredErrors.ini file. For information on how to suppress this message and others, refer to the
Reading Data from iFIX Pictures in iClients section.
When a failover event occurs, some VBA scripts may return an error if they are executing at the time
of the failover. Real-time trends may show a small gap in the line chart. The Alarm Summary window
should show the same number of alarms and acknowledge states after the failover occurs.
If you try to write data to a standby node, an error message appears. You can only read data from a
standby node.
You cannot make database modifications to the standby SCADA. If you try to do so, a prompt
displays, such as “Cannot write value. The SCADA node is in Standby mode” or “Cannot add a block.
The SCADA node is in Standby mode.”
109
111
Index
1 Enhanced Failover ............................6, 23, 31, 39
A F
B I
E M
113
Enhanced Failover
114
Proficy* HMI/SCADA - iFIX
GETTING STARTED
Version 5.1
April 2010
All rights reserved. No part of this publication may be reproduced in any form or by any
electronic or mechanical means, including photocopying and recording, without
permission in writing from GE Intelligent Platforms, Inc.
Notice
We want to hear from you. If you have comments, questions, or suggestions about our
documentation, send them to the following email address:
doc@ge.com
Table of Contents
iii
Installing the iFIX Software ................................................................................ 27
Toolbars ............................................................................................................. 57
v
Changing Permissions for PlugAndSolve and User Globals ............................. 57
Proficy Historian................................................................................................. 58
Copy the Backed Up Files into the New Product Folder ................................... 76
vii
Understanding Environment Protection in iFIX ............................................. 91
Setting Up DCOM for Use with Remote OPC Servers .................................... 102
Handling Time Zones when Using Networked FIX 6.15 and iFIX
Nodes .............................................................................................................. 125
ix
Getting Started with iFIX
Welcome to iFIX®! Thank you for taking the time to install and use iFIX.
Before you begin installing our product, please take some time to review this Getting
Started guide. The guide includes information about the following:
• Installing iFIX
• Upgrading from earlier versions of iFIX
• Supported networking components
Reference Documents
For more information on the System Configuration Utility, troubleshooting your set-up,
working with the Proficy iFIX WorkSpace, or setting up a process database or SCADA
system after you install iFIX, please refer to the following electronic books:
1
• Installing iFIX, or iFIX with FIX Desktop.
• iFIX software requirements, including operating systems, supported regional
settings, video drivers, optimizing virtual memory, and running iFIX as a service.
• Optional installation features, including online registration, and installing
optional hardware.
• Installing iFIX with other applications including FIX Desktop, Microsoft®
Office, and Proficy Change Management.
Set-up Overview
When you are ready to begin setting up your iFIX environment, use the following steps to
set up your nodes.
1. Set up each computer you require. Use the section Hardware Requirements as a
guide and refer to the user manual that accompanies each computer for detailed
setup information.
2. Install and optimize Microsoft Windows on each computer as needed. Also make
sure you create a login account with administrator rights so you can install iFIX
later. For instructions on optimizing Windows, refer to the Optimizing Virtual
Memory section.
3. Set up the network adapters and network software required for each computer.
Refer to the Networking iFIX Nodes and Advanced Topics chapters of the
Setting Up the Environment manual for more information.
4. Install iFIX and any other hardware you may have purchased. Refer to the
Installing the iFIX Software section for instructions on installing iFIX and your
hardware key. For information on installing other hardware, refer to that
product's documentation.
5. Configure iFIX on each computer. Make sure that the user installing iFIX is a
member of the Administrators Windows group. Refer to the Configuring iFIX
Using the SCU chapter of the Setting Up the Environment manual for more
information on configuring iFIX.
Hardware Requirements
The minimum iFIX hardware requirements are:
• A 2.0 GHz Dual-Core CPU or better computer. Be aware that the computer must
be at least Dual-Core; a single hyperthreaded core is not supported. For better
performance, GE Intelligent Platforms recommends a Dual-Core based 3 GHz
computer with 4 GB memory or greater. For a list of machines tested by GE
Intelligent Platforms, refer to the Recommended Computers section.
NOTE: To use more than 4 GB of memory on a 32-bit platform (in Windows
Server 2003 or 2008), you need to use Microsoft Windows 2003 or 2008
Enterprise Server in 32-bit mode. Windows Vista and Windows XP do not support
Physical Address Extensions, so you can only use up to 4GB of memory on these
operating systems.
3
and Proficy Real-Time Information Portal, impose additional requirements. Refer
to the Important Product Information (IPI) topic in the product's electronic books
for specific system requirements. Click the System Req. tab in that product's IPI
for details.
• A DVD drive.
• a MBit TCP/IP-compatible network interface adapter for network communication
and certain I/O drivers.
NOTE: iFIX no longer supports NetBIOS.
• One free direct-connect USB port. Some touch screens, pointing devices, and I/O
drivers require a serial port. Additional ports for I/O hardware should be ordered
with the computer.
• SVGA or better color monitor with a 24-bit (16,777,216 colors) graphics card
capable of at least 1024x768 resolution.
• Two-button mouse or compatible pointing device (such as a touch screen) that is
capable of opening a context menu.
For Proficy HMI/SCADA - iFIX computers with SCADA Enhanced Failover features
enabled, the recommended minimum hardware requirements are (for both primary and
secondary computers):
IMPORTANT: The minimum requirements below assume that you are running only a
SCADA server without additional applications, such as EDA or FIX Desktop applications.
If you want to run more applications, you will need to increase your hardware support for
better performance.
settings.
• A minimum of 4 GB RAM. For better performance, please consider using more.
NOTE: To use more than 4 GB of memory on a 32-bit platform (in Windows
Server 2003 or 2008), you need to use Microsoft Windows 2003 or 2008
Enterprise Server in 32-bit mode. Windows Vista and Windows XP do not support
Physical Address Extensions, so you can only use up to 4GB of memory on these
operating systems.
IMPORTANT: You must use a direct connection via a Cat6 crossover cable,
without going through any switches, hubs, or routers.
• Jumbo Frames technology must be used on the dedicated network for Enhanced
Failover. Jumbo Frames technology allows for an Ethernet frame of 9000 MTU
for the payload, compared to a frame of 1500 bytes without the Jumbo Frames.
• A minimum of 1 GB of free hard drive space. Even after allowing for an extra
GB for iFIX, it is strongly recommended that many GBs of additional free space
exist on the hard drive to avoid performance issues.
Be aware that iFIX alarm and historical data files grow dynamically. If you plan
to perform extensive alarm or data collection on a node, you may need more disk
space on that particular node.
5
• A DVD drive.
• Primary and secondary SCADA computers located physically next to each other,
in the same location/room.
• TCP/IP-compatible network interface adapter for network communication and
certain I/O drivers.
• One free direct-connect USB port. Some touch screens, pointing devices, and I/O
drivers require a serial port. Additional ports for I/O hardware should be ordered
with the computer.
• SVGA or better color monitor with a 24-bit (16,777,216 colors) graphics card
capable of at least 1024x768 resolution.
• Two-button mouse or compatible pointing device (such as a touch screen) that is
capable of opening a context menu.
For Proficy HMI/SCADA - iFIX computers with Proficy Historian Server, the
recommended minimum hardware requirements are:
• A 2.0 GHz Dual-Core CPU or better computer. Be aware that the computer must
be at least Dual-Core; a single hyperthreaded core is not supported. For better
performance, GE Intelligent Platforms recommends a Dual-Core based 3 GHz
computer with 4 GB memory or greater.
NOTE: To use more than 4 GB of memory on a 32-bit platform (in Windows
Server 2003 or 2008), you need to use Microsoft Windows 2003 or 2008
Enterprise Server in 32-bit mode. Windows Vista and Windows XP do not support
Physical Address Extensions, so you can only use up to 4GB of memory on these
operating systems.
• Other GE Proficy products, such as Proficy Plant Applications, and Proficy Real-
Time Information Portal, impose additional requirements. Refer to the Important
Product Information (IPI) topic in the product's electronic books for specific
system requirements. Click the System Req. tab in that product's IPI for details.
• A DVD drive.
• 100 MBit TCP/IP-compatible network interface adapter for network
communication and certain I/O drivers.
• One free direct-connect USB port. Some touch screens, pointing devices, and I/O
drivers require a serial port. Additional ports for I/O hardware should be ordered
with the computer.
• SVGA or better color monitor with a 24-bit (16,777,216 colors) graphics card
capable of at least 1024x768 resolution.
• Two-button mouse or compatible pointing device (such as a touch screen) that is
capable of opening a context menu.
IMPORTANT:
• While running the iFIX WebSpace Server and the SCADA Server on the same
machine is supported, it is strongly recommended that production SCADA
Servers reside on a different machine than the iFIX WebSpace Server.
• SpeedStep® technology is not supported and must not be enabled on either
server.
7
iFIX WebSpace Server
The following minimum hardware recommendations apply when using the iFIX
WebSpace Server on a low-end machine supporting less than five iFIX WebSpace
sessions, and iFIX projects with pictures that have a small number of animation, shapes,
and bitmaps:
• A 2.0 GHz Dual-Core CPU or better computer. Be aware that the computer must
be at least Dual-Core; a single hyperthreaded core is not supported.
• SpeedStep® technology is not supported and must not be enabled.
• The power save settings on your computer must be disabled. Do not use any
power setting features that affect CPU clock speed. If you are using a
uninterruptible power supply, do not use any power save settings.
• A minimum of 2 GB RAM. For better performance, please consider using more.
NOTE: To use more than 4 GB of memory on a 32-bit platform (in Windows
Server 2003 or 2008), you need to use Microsoft Windows 2003 or 2008
Enterprise Server in 32-bit mode. Windows Vista and Windows XP do not support
Physical Address Extensions, so you can only use up to 4GB of memory on these
operating systems.
• One free direct-connect USB port. Some touch screens, pointing devices, and I/O
drivers require a serial port. Additional ports for I/O hardware should be ordered
with the computer.
• SVGA or better color monitor with a 24-bit (16,777,216 colors) graphics card
capable of at least 1024x768 resolution.
• Two-button mouse or compatible pointing device (such as a touch screen) that is
capable of opening a context menu.
The following minimum hardware recommendations apply when using the iFIX
WebSpace Server on a high-end machine that can support up to 25 clients:
• Dual Quad Core Processors, running at 2.6 Ghz. For better performance, please
consider using higher. Be aware that the computer must be Dual-Core; a single
hyperthreaded core is not supported.
• SpeedStep® technology is not supported and must not be enabled.
• The power save settings on your computer must be disabled. Do not use any
power setting features that affect CPU clock speed. If you are using a
uninterruptible power supply, do not use any power save settings.
• A minimum of 16 GB RAM. For better performance, please consider using more.
NOTE: To use more than 4 GB of memory on a 32-bit platform (in Windows
Server 2003 or 2008), you need to use Microsoft Windows 2003 or 2008
Enterprise Server in 32-bit mode. Windows Vista and Windows XP do not support
extended addressing memory mode, so you can only use up to 4GB of memory on
these operating systems.
9
for specific system requirements. Click the System Req. tab in that product's IPI
for details.
• A DVD drive.
• TCP/IP-compatible network interface adapter for network communication and
certain I/O drivers.
• One free direct-connect USB port. Some touch screens, pointing devices, and I/O
drivers require a serial port. Additional ports for I/O hardware should be ordered
with the computer.
• SVGA or better color monitor with a 24-bit (16,777,216 colors) graphics card
capable of at least 1024x768 resolution.
• Two-button mouse or compatible pointing device (such as a touch screen) that is
capable of opening a context menu.
Recommended Computers
iFIX has been tested by GE Intelligent Platforms on the following machines that were
running Microsoft® Windows® XP, Windows Server 2003, Windows Vista™, or
Windows Server 2008:
Memory Requirements
iClients and SCADA nodes require at least 128MB RAM. This configuration provides
enough memory to run iFIX applications.
If the size of your process database is over 1MB, add 1 megabyte of memory for each
megabyte of database size. For example, if your database is 2MB in size, your SCADA
server requires 130MB minimum (128+2=130).
If your picture cache size increases, your memory requirements should increase:
• 2 to 3 times the file size for each picture that does not include bitmaps and
controls.
• 3 to 4 times the file size for each picture that includes bitmaps and controls.
For example, a 2 megabyte file that does not include bitmaps and controls requires a 4 to 6
megabyte increase in memory. A 2 megabyte file that includes bitmaps and controls
requires an increase in the memory of 6 to 8 megabytes.
11
when you save a picture or a schedule. If there is insufficient disk space, the WorkSpace
may react unpredictably and you may lose your work.
To help minimize this problem, the WorkSpace warns you if you have less than 10 MB of
disk space available. Although you can continue loading the software, we recommend that
you stop iFIX, free some disk space, then restart. Otherwise, the WorkSpace may become
unstable.
The WorkSpace examines the iFIX Picture path and the Windows TEMP path when it
starts. If you change either path so that they reference different drives, for example,
D:\Program Files\Proficy\Proficy iFIX and C:\Temp, the WorkSpace requires 10 MB on
each drive.
You may find that 10MB is not enough space to protect against instability during file save
operations. You can increase this threshold by changing the FreeDiskSpace parameter in
the FixUserPreferences.ini file. This parameter sets the minimum amount of space that the
WorkSpace requires in bytes. By default, the parameter is set as follows:
[AppRunPreferences]
FreeDiskSpace=10000000
change.
iFIX runs in demo mode for two hours if the key is not installed or found. Hardware keys
from version 2.5 and older will not work with the current version of iFIX. The iFIX 2.6
SuperPro keys also do not work with iFIX 5.1. iFIX 5.1 only supports HASP M4 keys.
NOTES:
• In some cases, an electronic file update is not available for reprogramming your
key.
• If you want to upgrade an earlier version of iFIX that came with a Rainbow
SuperPro or C++ key, you will need to exchange your key for new one.
Typically, this includes SuperPro keys from iFIX 2.6, and any 2.5 or earlier
release.
• Additionally, if you want to upgrade iFIX to run with other Proficy products,
such as Proficy Change Management or Proficy Plant Applications, you will also
be required to exchange your hardware key for a new M4 key.
• You can exchange the older key by contacting your iFIX sales representative.
Be sure to file your hardware key packing slip in a safe location. The codes on this slip are
necessary for GE Intelligent Platforms to quickly duplicate the key in case it is damaged
or misplaced. You can verify that your serial number matches the serial number on the
hardware key packing slip by using the Proficy License Viewer utility to detect and
display your hardware key settings. For more information, see the License and Key
Checking section.
A hardware key is included with your iFIX software. You must install your hardware key
in order to access all the components of the iFIX software you purchased.
Typically, you install your hardware key as you install the iFIX product. Refer to the
Installing the iFIX Software section for more details. If you are upgrading from a previous
version, you usually run the electronic licensing update file for your key before installing
the newer version of iFIX.
If you insert the key after you install iFIX, it should be detected automatically when iFIX
13
starts. It is recommended that you shutdown your computer before plugging in a new
hardware key.
IMPORTANT: Do not remove the hardware key from your node while iFIX is running. If
you do, iFIX features will shut down and you will need to restart iFIX. You may also
damage the hardware key if you remove it while iFIX is running.
GE Intelligent Platforms supports the installation of the USB port hardware key only on
systems running Windows XP, Windows Server 2003, Windows Vista, or Windows
Server 2008. At this time, GE Intelligent Platforms does not support USB keys connected
through an external USB hub.
To use iFIX and other Proficy products, you must purchase the product with the desired
options from GE Intelligent Platforms. Depending on the options you buy, you may need
to replace your current key or run an update program on your existing key to enable the
options. If you are upgrading from an earlier version of iFIX, you will also need to update
or replace your key.
If you want to determine the options that are enabled on the computer you are currently
working on, use the Proficy License Viewer to view the options enabled.
NOTE: If you try to run the Proficy License Viewer when an older key is installed, an
error message appears.
TIP: The Proficy License Viewer programs can be used to provide technical support
personnel with information about your iFIX hardware key.
1. From the Start menu, point to Programs, Proficy Common, and then License
Viewer. The License Viewer appears.
2. In the Proficy Products list, select the iFIX product. The License and Key
Diagnostics area should now display the iFIX options.
If the hardware key does not install properly, you may find that even though you have
followed the installation directions for your hardware key, you see the following message
at iFIX startup:
First, check to see that your hardware key is firmly attached. Next, uninstall and reinstall
the driver for the hardware key. If this driver has been incorrectly uninstalled, it may
behave unpredictably.
If the Aladdin HASP USB key does not appear to be working, you can reinstall the
licensing to recover from the improper install. When the Aladdin HASP key is not
communicating correctly, you will notice that the indicator light at the end of the key is
off.
15
License folder on the iFIX product installation CD.
2. Click Finish when the licensing install completes.
A defective hardware key causes your Proficy product to run in Demo mode. In iFIX, that
means you will only be able run in iFIX in DEMO mode.
Be sure to check that the key is firmly attached to your USB port before assuming it is
defective. Additionally, if the indicator light at the end of the key is off, then the key is not
communicating correctly.
You can also use the License Viewer to determine if the hardware key is defective. If your
hardware key is defective, the License Viewer does not display the proper enabled
options. Or, an error message stating that a hardware key is required to view the enabled
options may appear. For more information on using the License Viewer, refer to the
License and Key Checking section.
This section describes some frequently asked questions about iFIX hardware keys.
What Does the Light At the End of the USB Key Indicate?
The light indicates that the key and the software are communicating. If this light is off, it
Yes. The USB key is automatically detected when moved to another USB port. There are
no additional screens requesting software to be installed for the Aladdin HASP USB key.
Software Requirements
The minimum iFIX (including FIX Desktop) software requirements are:
17
Microsoft Windows XP update for Daylight Saving Time (DST),
WindowsXP-KB933360-x86-ENU.exe, applied.
NOTE: For charts to plot properly in iFIX, you must install the
Windows update for Daylight Saving Time (DST), WindowsXP-
KB933360-x86-ENU.exe. While the Windows Update service does not
apply in the Windows XP Embedded environment, you can directly
obtain this download from the Microsoft web site. See KB article
KB933360 on the Microsoft Downloads web page.
• Network interface software for TCP/IP network communication and certain I/O
drivers.
• An I/O driver for SCADA servers. GE Intelligent Platforms supplies I/O drivers
for many programmable controllers or you may purchase a driver separately. Be
certain that the I/O driver you purchase is compatible with your hardware.
Contact your GE Intelligent Platforms Sales Representative or visit the GE
Intelligent Platforms web site at http://www.ge-ip.com for the latest list of drivers
and supported hardware.
• Microsoft® Internet Explorer 7 or 8. For iFIX Webspace sessions, in addition to
Microsoft Internet Explorer 7 and 8, Mozilla Firefox® 3.0, 3.1.x, or 3.5 is also
supported.
• If using the Historian Excel Add-In, Microsoft Office XP, Office 2003, or Office
2007 SP1 is required.
• If using VisiconX and Proficy Historian, you must install the Historian 3.5 OLE
DB driver.
• One of the following relational database applications, if relational database
software is used with iFIX:
• Microsoft® SQL Server 2005 (SP2 and higher).
• Microsoft® SQL Server 2008.
• Oracle® 10g.
• Oracle® 11g.
• Microsoft® Access 2000 (or higher). Microsoft Access is supported for
local installs only.
Avoid changing the time style or short date style in regional settings to values that are
outside of the standard styles provided. Changing these values to non-standard styles may
result in improperly formatting times and dates in some parts of iFIX.
iFIX supports the following short date formats, some of which may not be available in
certain language versions of Windows:
• dd/mm/yy, or dd/mm/yyyy
• dd/yy/mm, or dd/yyyy/mm
• mm/dd/yy, or mm/dd/yyyy
• mm/yy/dd, or mm/yyyy/dd
19
• yy/dd/mm, or yyyy/dd/mm
• yy/mm/dd, or yyyy/mm/dd
Avoid changing the language setting once a timer has been used in a schedule. If changed,
the date always reverts to 30/12/99, regardless of what you set the start time to be.
Language Support
The iFIX English product is supported on English, non-English single-byte, double-byte,
and Cyrillic Windows Operating Systems, running English Regional Settings. For a
detailed list of the iFIX supported Operating Systems, refer to the Software Requirements
section in this chapter.
The iFIX product is also available in other languages. The following table outlines the
currently supported languages and operating systems. For more information on the
available iFIX versions for each language, contact your regional Sales Representative.
Unsupported Items
• GE Intelligent Platforms does NOT support running the localized version of the
product on an English operating system.
• Multilingual User Interface versions of the Windows Operating Systems are not
supported by the iFIX product.
• iFIX client/server configurations with different OS languages are not supported.
For instance, connecting an English SCADA Server (on an English OS) with a
with a German View node or iClient (on a German OS) is not supported.
Video Drivers
After much testing, GE Intelligent Platforms has found that some video drivers have
unique problems that are apparent only when using these drivers. Additionally, GE
Intelligent Platforms has found that many problems with video drivers occur in both iFIX
applications and common applications, such as Excel and Word.
If you are experiencing problems with your video driver, try using it in a different mode to
find out if the problem is unique to a specific configuration.
• Contact the manufacturer to ensure you have the latest version of the video
driver. GE Intelligent Platforms has found that the latest version of third-party
21
video drivers can fix some problems.
• If the latest version of the video driver does not fix the problem, notify the video
driver manufacturer to see if they are aware of the problem.
• If all else fails to resolve the problem, contact Technical Support.
1. From the Windows Control Panel, open the System Properties dialog box:
• In Windows Vista, click the System and Maintenance link, the System
link, and then, in the Task list, click the Advanced System Settings link.
• In Windows Server 2008, click System, and then, in the Task list, click
the Advanced System Settings link.
• In all other versions of Windows, in the Control Panel, open the System
item.
2. Open the Performance Options:
6. Select Set.
7. Click OK to save the changes and exit the dialog box.
NOTE: If the paging file is set to grow dynamically, your system may experience
severe performance problems during runtime. To ensure optimal performance, be
sure that the Initial Size and Maximum Size of the paging file are the same so that
the paging file does not grow dynamically.
Windows Services
In the Windows Services control panel, do not stop the iFIX service or make changes to
the iFIX configuration. This applies to iFIX running on any operating system.
23
3. On the Start menu, point to Programs, Proficy HMI SCADA - iFIX, and then
System Configuration. The System Configuration Utility (SCU) window appears.
4. On the Configure menu, click Local Startup. The Local Startup Definition dialog
box appears.
5. In the Service area, select the Continue running after logoff check box, as
illustrated in the following figure. This configures iFIX to run as a service when
you start iFIX.
NOTE: The check boxes in the Service area of this dialog box are unavailable
while iFIX is running. You need to shut down iFIX, as you did in step 1, to update
them.
6. Additionally, if you want to start iFIX whenever you start Windows, select the
Start iFIX at system boot check box.
The Start iFIX at system boot option is available only when the Continue running
after Logoff option is selected.
7. Click OK.
8. Exit the SCU.
9. Restart iFIX.
iFIX Paths
Windows does not map network drives until a user logs in. Therefore, if you are running
iFIX as a service under Windows, all iFIX paths must be set to a local drive.
You must assign the Enable Ctrl+Alt+Del application feature to the user that is logged in
when iFIX is running as a service. Otherwise if a user logs out of the operating system
while iFIX is running as a service, no one will be able to log back in to the operating
system.
You must configure the Default Service SCU in the Startup Profile Manager if you want
to run iFIX as a service on the Terminal Server. For more information, refer to the
25
Configuring the Default Profile section in the Using Terminal Server electronic book.
You should not have the WORKSPACE.EXE file listed as a configured task in the Task
Configuration dialog box of the SCU. Instead, you should start the Proficy iFIX
WorkSpace from the Startup group for the user, or have the user start the Proficy iFIX
WorkSpace manually.
NOTE: If you do configure iFIX to run as a service, and the WORKSPACE.EXE is listed
as a configured task in the Task Configuration dialog box of the SCU, make sure you
configure WORKSPACE.EXE to run as a foreground task. To do this, on the SCU's
Configure menu, click Task List. Select the WORKSPACE.EXE task, and in the Startup
Mode area click Normal.
By default, iFIX uses the local System account when running as a service. However, you
cannot use the System account with certain applications, such as the Proficy Historian.
Fast user switching is not supported with iFIX, even if you are running iFIX as a service.
If you want to run the OPC Client driver as a service, iFIX must also run as a service.
Likewise, if you want to run iFIX as a service, the OPC Client driver must run as a
service. You cannot run one as a service, without the other also running as a service.
OPC Certification
Based on Microsoft's OLE (Object Linking and Embedding) technology, OPC (OLE for
Process Control) provides greater interoperability between control applications, field
systems and devices, and front office/backoffice applications. OPC servers, such as DCSs,
PLCs, smart field devices, and analyzers provide real-time information and can
communicate directly with the Proficy HMI/SCADA - iFIX product.
The iFIX 5.1 product is an OPC 2.05a DA enabled client, which lets iFIX retrieve data
from any OPC 1.x or 2.x (up to version 2.05a) compliant data server. To access local or
remote data from a third party OPC Server, use the iFIX OPC Client version 7.4x, which
is also in included with iFIX.
iFIX also has an iFIX OPC Server (OPC20iFIX.exe) that serves out data via OPC from
the iFIX Database.
You can find more information about OPC on the Support web site at: http://www.ge-
ip.com/support.
1. Log in to Windows with Administrator privileges. Ensure that there are no iFIX,
27
FIX, or Proficy processes running, and close any other programs that are running.
NOTE: If you plan to use the integrated Proficy Historian features in iFIX, you
must shut down Historian services and licensing prior to installing iFIX and
Historian.
2. Insert the iFIX DVD into your DVD drive. The iFIX installation screen appears.
NOTE: If this screen does not automatically appear, double-click the
InstallFrontEnd.exe file on the DVD to display it. A message may appear with a
security warning, click Run to proceed.
3. Click the "Install iFIX" link. A message box appears asking you to confirm the
install.
4. Click Yes to proceed. The install program starts and the Welcome screen
appears.
5. Click Next to continue. The license agreement screen appears.
6. Click "I accept the terms of the license agreement" if you want to continue, and
then click Next.
IMPORTANT: If a previous version of iFIX is detected, you can choose to
upgrade iFIX. For iFIX versions before 4.0, you have the choice to upgrade or
install iFIX to a completely new folder, without upgrading. If you want to
upgrade, it is suggested that you do so using the install at this point in time.
• If you are upgrading from FIX32, make sure that you choose a location
other than the folder that contains your FIX32 software, if it is installed
on the same computer. Do not install over a current FIX32 installation.
• If you enter a custom install path, be aware that the path can be no
greater than 100 characters long.
• If you want to use 6.x drivers, the iFIX compressed install path must be
no greater than 64 characters long. iFIX uses the Microsoft compression
algorithm to try to fit longer paths within this boundary. Some paths are
not compressible to the 64 character maximum length. Please be aware of
this. In addition, make sure that the registry key,
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\FileSyste
m\NtfsDisable8dot3NameCreation, is not enabled (is set to 0) when the
install folder is created. When set to 1, the compression algorithm is
disabled. Refer to Microsoft help for more information on the
GetShortPathName() compression algorithm.
• After installing a 6x driver, the driver is listed in the SCU in the Drivers
Available dialog box (which can be accessed from the I/O Driver Name
browse button in the SCADA Configuration dialog box). You need to
manually add the driver to the Configured I/O Drivers list in the SCADA
Configuration dialog box.
• If you chose a Complete or Custom install and do not have a web server
installed, a warning message appears indicating that WebSpace
component is not available for install. Click OK to close the dialog box.
29
10. Click Install. The progress of the installation displays on screen as the files are
copied. After a few minutes, when the install finishes copying the files, the
Proficy iFIX Configure Wizard dialog box appears.
11. Enter the Node Name, Node Type, and Connectivity Type, if applicable, and then
click OK. A message box appears, prompting you to install Proficy Historian.
12. If do not want to install Historian, click No and proceed to step 15.
13. If you want to install Historian, click Yes. The Historian installation screen
appears.
NOTE: If you choose not to install Historian, the following features will not
work:
• You will not be able to update the Proficy Historian tab of Database
Manager blocks.
c. Select the OPC Alarm and Event Servers you want to use and click
Next. The Select OPC Servers screen appears.
d. Select the OPC Servers you want to use and click Next. The Choose the
Program Folder screen appears.
e. Leave the default path or click Browse to select a folder, and then click
Next. The Choose the Log and Buffer Folder screen appears.
f. Leave the default path or click Browse to select a folder, and then click
Next. The Historian Server Name screen appears.
g. Enter the name of the Historian server name to use for the default, and
then click Next. The Configuration Review screen appears.
h. Click Next. The progress of the installation displays on screen as the
files are copied. The Setup Complete screen appears.
i. Click Finish. The Historian SIM installation screen appears.
j. Click Next. The license agreement screen appears.
k. Click Yes to accept the terms of the licensing agreement. The SIM
details screen appears.
l. Click Next. After completing the setup, a message dialog box appears.
m. Click OK, and then click Finish.
15. When a message box appears requesting that you view the release notes, click
Yes. Close the release notes after you finish reviewing them to resume the install.
The Setup Complete screen appears.
16. Click Finish.
17. After the install completes:
• If you have a new key, power off the computer and insert your USB key
into the appropriate port.
• If you have an older key that you are updating, use the update file and
follow the instructions from GE Intelligent Platforms to update your
key.
18. Restart the computer. As the computer restarts, log in to Windows with the same
user name (with Administrator rights).
IMPORTANT: If upgrading from FIX v7 to iFIX with FIX Desktop, do not start
iFIX yet. Refer to the Overview of Steps to Upgrade from FIX 7.x section for
information on how to proceed.
19. If you installed Historian, proceed to install the required Historian Service Pack
and SIM. The SIM provides you with the new verison of the Historian toolbar
31
that includes the Configure Historian Server button and the new VisconX button.
• Set Proficy Historian tags for collection for the iFIX database.
• Insert a Historical Data Link into your picture in the iFIX WorkSpace.
• Use VisiconX data and grid objects to access Proficy Historian data from the
iFIX WorkSpace.
Although Proficy Historian is integrated with iFIX, you do not have to use Historian in the
iFIX WorkSpace; you can choose to use Historian as a separate application. When making
your decision on how you want to use Historian, keep the following considerations in
mind.
Configuration Considerations
Although many of the features of Proficy Historian can be configured in iFIX, some
cannot. They must be configured directly in Historian. These features include:
• Security
• Alarms, if you are using them
• Collection on any field other than F_CV
• Archive compression
• Archive back-up
• Other tag properties not configurable in iFIX
• Historian parameters for Database Dynamos, or loadable blocks
• Redundancy
Other Considerations
Multiple Databases
If you are using multiple databases, you may want to use Proficy Historian separately
from iFIX. When used together, Historian does not recognize tags from the iFIX database
with the same name as different tags, even though the source is different. So, tags that
exist in your iFIX database are ignored. The data that is populated comes from Historian,
not from the iFIX database. To avoid this problem, verify that each tag has a unique name.
For example, you have a tag called AI1 in both Process Database 1 (PDB1) and Process
Database 2 (PDB2). Both tags are added to Historian as FIX.AI1.F_CV. If you reload
PDB1 and then PDB2, the AI1 tag is overwritten in Historian.
Collection Delay
When iFIX and Historian are used as an integrated application, rather than as separate
applications, it takes longer for tags to update if the Collector is running. Additions,
deletions and modifications of tags may take twice as long to display – approximately two
minutes, instead of one – than if each application was used separately.
Collectors
If you choose to use Historian, not all installed collectors will be available for selection as
the default Collector. Because this feature only supports collectors that read data from
iFIX, the collectors available for selection are limited to the following:
Electronic Signatures
If you use electronic signatures, then you should probably not use the integrated Historian
feature. If a tag requires an electronic signature in Historian and does not in iFIX, and a
user makes a change in iFIX, the user is not prompted for a password. Instead, the change
is made, bypassing Historian's electronic signature requirement.
33
Result of Not Installing Historian
If you choose not to install Historian, the following features will not work:
• iFIX database tags from Database Manager will not automatically be added,
updated, or deleted to or from Historian,
• users will not be able to update the Proficy Historian tab of Database Manager
blocks, and
• imported or exported database tags will have default values in the Historian field
but will not be used.
If you do not want to install integrated Historian, and continue using Historian as you did
before, then never do the following:
If you choose to install Historian, there are post-installation steps you will need to
perform. For more information, see Configuring iFIX to Use Proficy Historian and
Configuring Security When Using iFIX with Proficy Historian.
For Historian domain security, see "User Privileges for Starting a Collector" in the
Historian eBook.
For all other security considerations for Historian, see the chapter "Implementing
Historian Security" in the Historian eBook.
Configuration Process
Stage Description
6 In the iFIX Database Manager, add the blocks that you want to start
collecting on. Use the Proficy Historian tab to enter the information
from Historian. Save your database.
35
Configuration Process
Stage Description
Using the Discover and Auto Configure Tool with Proficy Historian
Not only can you can use the Discover and Auto Configure tool to automatically add tags
to your iFIX database, but you can also choose which tags get collected on in Proficy
Historian as well.
Additionally, you can configure the Proficy Historian description and the interval for the
collection for each tag through Discover and Auto Configure. For information adding
Proficy Historian fields in Discover and Auto Configure, refer to the Adding Proficy
Historian Fields as Columns topic.
Before you begin collection, however, you must have your Historian Server is configured,
and your iFIX Collector configured as your local, default collector.
Be aware of your license limits for Proficy Historian. Your Proficy key limits the number
of iFIX tags you are permitted to add to the Proficy Historian Server for collection. Use
care when you select which tags that you want to collect on in Discover and Auto
Configure. You do not want to exceed your license limits.
For more information on this tool, refer to the Discover and Auto Configure e-book.
NOTE: Be aware that the changes to support 15 digits of precision in iFIX 4.5 and
greater are not supported in FIX Desktop applications, such as Draw and View. If you try
to use this feature in FIX Desktop applications, you will get unexpected results.
The steps that follow explain how to install the FIX Desktop software from the product
install DVD, after you already installed iFIX.
1. Ensure that there are no iFIX, FIX, or Proficy processes running, and close any
other programs that are running.
2. Log in to Windows with Administrator privileges.
3. Insert the iFIX DVD into your DVD-ROM drive. The iFIX installation screen
appears.
NOTE: If this screen does not automatically appear, double-click the
InstallFrontEnd.exe file on the DVD to display it.
4. Click the "Install iFIX" link. A message box appears asking you to confirm the
install.
5. Click Yes to continue. The install program starts and the Welcome screen
appears.
6. Click the Modify option, and then click Next to continue. The Select Features
screen appears.
7. Select the FIX Desktop check box and click Next. The install begins.
NOTE: FIX Desktop applications are installed into the iFIX product folder. If
you installed iFIX to the default location, this folder is C:\Program
Files\Proficy\Proficy iFIX.
37
When the install completes a Maintenance Complete message box appears.
8. Click Finish.
9. Restart your computer.
IMPORTANT: If upgrading from FIX v7, do not start iFIX yet. Refer to the
Overview of Steps to Upgrade from FIX 7.x section for information on how to
proceed.
Online Registration
You can register iFIX online after you have installed the product.
1. In Classic view, from the WorkSpace's Help menu, point to Proficy iFIX
WorkSpace Help, and then GE Intelligent Platforms On the Web, and click
Register Online.
-Or-
In Ribbon view, click the WorkSpace button, and then on the Application menu,
click Options. On the Options dialog box, select Resources from the navigation
plane, and then click Register.
2. Enter the appropriate fields on the registration form, and click Next until all
pages are completed.
Additional Resources
You can access many additional resources after you install your product. To do so, use one
of the following procedures.
1. Click the Application button and then on the Application menu, click Options.
2. In the Navigation pane click Resources.
3. Click Support.
4. Click OK on the Resources page.
1. Click the Application button and then on the Application menu, click Options.
2. In the Navigation pane click Resources.
3. Click Home Page.
4. Click OK on the Resources page.
1. Click the Application button and then on the Application menu, click Options.
2. In the Navigation pane click Resources.
3. Click About.
4. Click OK.
5. Click OK.
NOTE: Because the hardware key for iFIX with FIX Desktop is different from the FIX
hardware key, remember to remove the iFIX hardware key and insert a FIX hardware key
before installing or running FIX 7.0.
39
General Notes on Installing FIX and iFIX on the Same Computer
When installing FIX 7.0 on a computer that already has iFIX installed (or vice versa) do
not elect to use the current SCU configuration when prompted during the install. If you
select to use the current SCU, both FIX and iFIX will launch with errors when you try to
run either program after the install.
To avoid these errors, install iFIX without I/O drivers. This preserves your FIX 7.0 paths
in the registry.
Each product needs to have its own Services key. FIX 7.0 runs correctly if it is not run as a
service.
The workaround for this problem is to edit the registry so that the Services key points to
the service executable in the correct path. The key is located in
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Fix. Set the ImagePath
value to the correct path for fixsrv.exe.
TotalConfigPicturePath=1
PicturePath#0=*C:\Program Files\Proficy\Proficy iFIX\PDB\PanelStart.ivs
Use the following table as a guide for installing and removing either product.
41
If you have... And you want to... Then...
Backup Files
When you save one of the following files, iFIX creates a backup file:
For new iFIX installs, be aware that you can also use the Factory Default Backup for
disaster recovery – performing a clean restore of your entire iFIX system. A clean restore
includes the files listed above along with other Factory Default files. For more
information, refer to the Using and Creating Factory Default Files section in the
Understanding iFIX electronic book.
For upgrades, be aware that you can perform a Custom Backup to backup the files listed
above before the upgrade. After the upgrade, you can restore these files with the Backup
and Restore wizard. Refer to the Overview of the Backup Process section in the
Understanding iFIX electronic book for more information.
IMPORTANT: Do not use a Full Backup from a previous release of iFIX to update the
files in the currently installed iFIX folder. Issues can occur with upgrade paths, and
possibly other files.
Optionally, after you upgrade your system with the Custom Backup, you can create a new
Factory Default Backup, that you can use for disaster recovery in replace of the original
Factory Default Backup file. This information is described in the Using and Creating
Factory Default Files and Sample BackupRestore.ini sections.
Additionally, you need to configure a few items on both iFIX and the Change
Management Server, as described in the Setting up iFIX for Use with Change
Management topic in the Change Management and iFIX e-book.
NOTE: If you want to run iFIX with other Proficy products, such as Proficy Change
Management, you will need to upgrade to an M4 key. For more information, refer to the
The Hardware Key section.
If you are upgrading an iFIX computer with the Proficy Change Management, upgrade to
Proficy Change Management 5.7 or 5.8.
iFIX WebSpace
The iFIX* WebSpace product allows you to open iFIX pictures in run mode from a web
browser. The iFIX WebSpace is a server-based, thin-client solution that eliminates the
need for Citrix MetaFrame or Windows Terminal Services.
The iFIX WebSpace Server is a keyed option that you can purchase for use with your iFIX
SCADA or Proficy Pulse client.
43
information, refer to the Viewing Pictures from a Web Browser e-book.
You can currently extract information using the following Discovery Agents:
Within Discover and Auto Configure, you can also configure the iFIX tags that you want
to collect on in Proficy Historian (through the iFIX Collector). For information on using
Discover and Auto Configure with Proficy Historian, refer to the Using the Discover and
Auto Configure Tool with Proficy Historian section.
For more information on this tool, refer to the Discover and Auto Configure e-book.
Optional Hardware
iFIX supports the following optional hardware. You may want to purchase one or more of
these items to enhance your iFIX system.
Uninstalling iFIX
To uninstall iFIX, from the Control Panel, in the Add or Remove Programs dialog box,
click the Remove button next to the "Proficy HMI SCADA - iFIX 5.1" entry. This action
launches the install program allowing you to remove the iFIX product.
If you want to uninstall other items that install along with iFIX, such as the iFIX OPC
Client, the Proficy Change Management Client API, M4 Common Licensing, Proficy
Discover and Auto Configure application, you need to uninstall these items separately.
IMPORTANT: For the Proficy Discover and Auto Configure (DAC) application, it is
recommended that you uninstall it before you uninstall the iFIX product. If you wait until
after you uninstall iFIX, the DAC uninstall will display error messages.
45
The Database and the Upgrade
Be aware that when you upgrade to iFIX 5.1, the file size of your process database file
will increase.
Also, when you upgrade your database, the high and low engineering units (EGU) fields
are converted from single precision to double precision floats. What that means, is that the
degree of accuracy (the Epsilon value) changes from +/_0.00000012 to
+/_0.00000000000000022. If you are using extreme ranges (very large or very low values)
for your EGU limits, you may possibly experience issues after an upgrade. To resolve
these issues, open the Database Manager, export your database and then re-import it. This
procedure resets the block values.
• If you are upgrading an iFIX computer with the Proficy Change Management,
upgrade to Proficy Change Management 5.7 or 5.8.
• Shut down the DEP (Data Execution Protection) feature. One way to do this is
from the Control Panel, access the System Properties. Select the Advanced tab,
and click the Settings button in the Performance area. On the Data Execution
Protection tab, select the "Turn on DEP for essential Windows programs and
services only" check box.
• Shut down all Proficy applications. It is important that no Proficy products are
running when you run the iFIX installation program.
• Save copies of your existing .INI files with your application preferences and any
custom files you create. Customized files, such as *Res.dll files, and some *.INI
files may be overwritten during an upgrade. As such, you may need to integrate
your custom changes into the newer versions of these files after you upgrade.
• Back up your existing iFIX projects. This includes the files in your LOCAL,
Config Files Backup, PIC, and PDB folders.
• It is also recommended that you create a backup copy of your Alarm ODBC
configuration file(s).
• Export a report of your system configuration (SCU), for reference. (In the SCU,
on the File menu, click Report. Refer to the Generating a System Configuration
Report section for detailed steps.)
• Export a report of your security configuration, for reference. (In the Security
Configuration application, on the File menu, click Export. Refer to the Exporting
a Report of the Security Configuration section for detailed steps.)
• If you have an application created by an Integration Toolkit, Database Dynamo
Toolkit, or System Extension Toolkit from iFIX 2.5 or earlier, and you want to
use this application with iFIX 5.1, do not uninstall iFIX. You must install iFIX
5.1 over your existing iFIX configuration. Your toolkit application will not run if
you uninstall your previous version of iFIX.
• Be sure to obtain any toolkit updates that you need, prior to installing iFIX. For
instance, if you have previously installed the iFIX Productivity Pack for Allen
Bradley, you must get the updated version prior to upgrading to iFIX 5.1.
• If you plan to use Enhanced Failover feature provided in iFIX 5.1, review the
Enhanced Failover and Upgrading section.
1. Update your license and/or hardware key. For steps refer to the Upgrading the
iFIX License section.
2. Log in to Windows with Administrator privileges.
3. Ensure that there are no iFIX, FIX, or Proficy processes running, and close any
other programs that are running.
4. Insert the iFIX DVD into your DVD-ROM drive. The iFIX installation screen
appears.
47
NOTE: If this screen does not automatically appear, double-click the
InstallFrontEnd.exe file on the DVD to display it.
5. Click the "Install iFIX" link. A message box appears asking you to confirm the
install.
6. Click Yes to continue. The install program starts and the Welcome screen
appears.
7. Click Next to continue. The license agreement screen appears.
8. Click "I accept the terms of the license agreement" if you want to continue, and
then click Next.
A message box appears indicating that a previous version of iFIX has been
detected.
10. Select Complete and then click Next. If you selected Custom instead, you will be
prompted later to select your install features, such as iFIX with FIX Desktop. The
Ready to Install Program screen appears.
11. Click Install. The progress of the installation displays on screen as the files are
copied. After a few moments, a message box appears asking if you would like to
review the release notes.
12. Click Yes to view the release notes. Close the release notes after you finish
reviewing them to resume the install. The Setup Complete dialog box appears.
13. Click Yes to restart your computer now, or No to do it later.
14. Click Finish.
NOTE: Be sure to restart your computer before starting iFIX. As the computer
restarts, log in to Windows with the same user name (with Administrator rights).
The version and type of key you have should appear imprinted on the outside of the key. If
you do not know what type of key you have, check the label on the physical key. If you
are still unsure whether you need to exchange your key for a new one, contact your iFIX
sales representative.
If you have an M1 key, you must replace it. This requires you to physically remove the
M1 key and insert the new hardware key. For steps on how to install a hardware key, refer
to the Installing the Hardware Key section. For information about replacing your key,
contact your iFIX sales representative.
For an M4 key, use the Proficy License Viewer to update your license. To perform a key
update:
• For the Proficy License Viewer, you will need to obtain a .plic update file with
specific information about your key.
For information about obtaining the .plic file, contact your sales representative. You will
receive the new licensing file by disk or by e-mail.
If you receive the error message, "Workspace encountered a problem and needs to close.
We are sorry for the inconvenience," while registering, it is probably because you have an
unsupported key, such as the Rainbow SuperPro. If you have a Rainbow SuperPro
(Sentinel) key, which was offered for iFIX 2.6 (before 2002), this key must be exchanged
for a newer key, if you want to upgrade to iFIX 5.1.
49
To update the license with the .plic file:
For more information about the new hardware key, see The Hardware Key section of this
manual.
If you configured Database Dynamos, also known as loadable blocks, or other custom
programs to run as part of iFIX startup, you should compare the new FIX.INI file in the
Local folder against the FIX.INI file stored in the Config Files Backup folder. If you find
any changes between the two files, add the necessary lines to the new FIX.INI stored in
the Local path. Do not copy the old FIX.INI over the new FIX.INI file.
NOTE: Paths with embedded path spaces in the FIX.ini require quotes. For example:
RUN="%E:\PROGRAM FILES\PROFICY\PROFICY IFIX\SysAlertQMgr.exe" /F
/NSysAlertViewer
If you choose not to upgrade and install iFIX to another path, such as the default:
C:\Program Files\Proficy\Proficy iFIX, there are a few extra steps you need to perform
before you can start the older version SCU file in iFIX 5.1. First, you must rename the
older version SCU file, so that the name is different than the default iFIX 5.1 SCU file.
For instance, if you try to start an iFIX 4.0 SCU file in iFIX 5.1 when the names of both
SCU files are the same, an error message appears instead. So, be sure to rename your iFIX
4.0 SCU file to something other than the startup default file name before opening it in the
iFIX 5.1 System Configuration Utility. After launching the SCU application, open the
older SCU file. Now you can manually update the information in it, as described in the
steps below.
Be aware that if you have a Custom Backup available of your node with the previous
version installed, you also can use that file to upgrade your SCU. During the restore, make
sure you select the Use SCU File from Archive check box. If the SCU file name you are
upgrading is the same as the iFIX 5.1 default SCU file name, you need to change the path
configuration at this point. Click on the View Project Path Configuration button to check
the current paths. In the Project Path edit box, enter the iFIX 5.1 install path. This
51
upgrades your SCU file automatically, however you still have to manually update other
SCU information in the System Configuration Utility, as described in the steps below. For
more information on the restore process, refer to the Overview of the Restore Process
section.
IMPORTANT:
• You do not need to use a Full Backup from a previous release of iFIX if you are
just upgrading the SCU file. Instead, use a Custom Backup. Make sure that you
back up the SCU only in the .fbk file and restore it only in iFIX 5.1. If you do a
Custom Backup, click “NO TO ALL” other files when restoring just the SCU file.
Do not use a Full Backup between iFIX versions. Issues can occur with upgrade
paths, and possibly other files.
• During a restore, use caution in restoring other configuration files. For instance,
if you overwrite the .INI files in your iFIX Local folder, you lose all of iFIX 5.1
.INI settings. After that is done, there may be issues that cause iFIX or certain
features not to work properly. For instance, if you overwrite the 5.1 FIX.ini file
with a 3.5 one, you need to remove or comment out the
RUN=REGISTERHELPFILES line in order to start iFIX 5.1 with this file.
NOTE: The following steps describe how to modify an SCU file with a path
outside the install path, so that you run it in iFIX.
• The Enhanced Failover feature is a keyed option in iFIX 5.1. You must purchase
the additional Enhanced Failover option (SCADA Failover) if you plan to use
SCADA Failover in iFIX 5.1. If you had purchased the Ack Failover option in
your previous version of iFIX, your key upgrade will include the new SCADA
Failover option.
• If you purchased the Failover feature when you bought a previous version of
iFIX, then your iFIX 5.1.plic license file update will enable the Enhanced
Failover option automatically. Be aware, when you use the Proficy License
Viewer in iFIX 5.1, that the part description changed from "ACK Failover" to
"SCADA Failover."
• Before installing iFIX, it is recommended that you confirm that the SCADA
Failover option is enabled on your key. iFIX 5.1 software checks the Enhanced
Failover option at startup. Without this option enabled, the Enhanced Failover
functionality will not work. An error message appears if you try to run iFIX with
53
the SCADA Failover feature.
• If your 5.1 SCADA key does not show the SCADA Failover functionality
enabled, and you purchased this additional option, please contact you sales
representative before upgrading.
• When you upgrade your iFIX SCADA node to iFIX 5.1, you will need to make
configuration changes on your iFIX 5.1 SCADA nodes for the Enhanced Failover
feature to work properly. For example, the Data Sync Transport dialog box in the
System Configuration Utility (SCU) is new in iFIX 5.1. It requires that you enter
the partner's IP address on both the primary and secondary SCADA nodes.
• You can choose to upgrade your iClent (View) nodes with Failover enabled to
iFIX 5.1, or to continue using your iClent (View) nodes with Failover enabled
from any previous version of iFIX. There are no additional steps to configure the
Enhanced Failover feature on the iClients if you already configured them in
previous releases.
• The Alarm Acknowledgement synchronization feature from previous iFIX
versions is NOT supported on SCADA nodes upgraded to 5.1. The Alarm
Acknowledgement functionality is replaced by the database synchronization and
alarm area files provided in iFIX 5.1.
• It is strongly recommended that you use a dedicated network between the
primary and secondary SCADA nodes for dedicated SCADA-to-SCADA traffic.
If the SCADA nodes are physically close to each other, then a crossover cable
can be used.
• It is strongly recommended that the network components (LAN adapters, hubs,
switches, cables, etc.) used for SCADA-to-SCADA connection of the SCADA
pair support a minimum 1 Gigabit Ethernet. This allows for a higher rate of speed
for data transfer between the primary and secondary SCADA nodes.
• In iFIX 5.1, you will need to configure a primary and a "secondary" SCADA
node. One SCADA will be in Active mode (processing data and alarms) while
the other will be in Standby mode. This is unlike previous versions of iFIX,
where you configured a primary and "backup" SCADA node and both nodes
were processing data and alarms. The concept of the SCADA pair still exists in
iFIX 5.1, but GE Intelligent Platforms does not support using your standby
SCADA as a development machine in iFIX 5.1 (for example, for database or
picture development). However, there is a maintenance mode that allows you to
upgrade your SCADA configuration without requiring a SAC restart.
• Stratus solutions will continue to be supported in iFIX 5.1. Any Stratus SCADA
nodes that you want to upgrade to use Enhanced Failover will require
configuration changes on your iFIX 5.1 SCADA nodes for the Enhanced Failover
feature to work properly (the same configuration changes as the non-Stratus
nodes).
• Custom applications or scripts that were written to synchronize databases or
alarms on previous versions of iFIX will no longer be required with Enhanced
Failover enabled. So as not to interfere with the 5.1 SCADA failover, you should
remove these custom applications or scripts from your failover configuration.
The following steps describe how to upgrade your failover system.
To configure your iFIX SCADA nodes after an upgrade, if failover was used in a
previous release:
1. On the primary SCADA node, on the Start menu, point to Programs, then Proficy
HMI/SCADA - iFIX, and then System Configuration. The System Configuration
Utility (SCU) appears.
2. On the Configure menu, click SCADA. The SCADA Configuration dialog box
appears.
3. In the Failover area, select the Enable check box if it is not already selected.
4. In the Node area, verify or select the node type: Primary or Secondary.
5. In the SCADA Name field, verify or enter the name of your partner SCADA
node.
6. Click the Data Sync Transport button. The Data Sync Transport dialog box
appears.
7. From the Description list, select the LAN adapter(s) to use for data
synchronization between the SCADA pair, then select the Enable check box.
Make sure that the LAN adapters you will not be using for data synchronization
are not enabled.
8. In the Partner's Address field, enter the IP address of the partner node.
9. Use the default settings for the rest of the fields.
NOTE: The Bandwidth Limit field in the Data Sync Transport dialog box allows
you to enter a value to throttle down or limit the synchronization rate or
55
bandwidth used. It is recommended when using a corporate, non-dedicated or
shared network (10/100 or 1GB), that you "throttle" network traffic to limit
bandwidth that the data synchronization process will consume.
However, if you previously started the iFIX OPC A&E Server with this command:
iFixOPCAESrv.exe -service
The -service option is no longer needed to run the iFIX OPC A&E Server as a service.
You should go into the Task Configuration dialog box and remove the -service command
from the startup task list.
Be aware that you can only run programs such as the iFIX OPC A&E Server as a service
if iFIX is configured to run as a service.
If you want to run the OPC Client driver as a service, iFIX must also run as a service.
Likewise, if you want to run iFIX as a service, the OPC Client driver must run as a
service. You cannot run one as a service, without the other also running as a service.
Toolbars
If your Proficy iFIX WorkSpace contains additional standard toolbars from other iFIX
versions, such as the Proficy Historian toolbar, these toolbars will appear in the iFIX
WorkSpace system tree, in the Project Toolbar Files > Toolbars folder. Double-click a
toolbar to display it in the WorkSpace.
To resolve this issue, it is recommended that you change the Appearance Scheme in the
Windows Display Properties dialog box to Windows Classic.
57
4. Click the Advanced button. The Advanced Security Settings for file name dialog
box appears, where file name refers to the name of the file you selected in step 2.
5. On the Permissions tab, for the specified user, check the Inherit from parent the
permission entries that apply to child objects. Include these with entries explicitly
defined here.
6. Repeat steps 1-5 for the other file.
Proficy Historian
Beginning with iFIX 5.0, Proficy Historian is integrated with iFIX. However, using
Historian in an integrated manner is entirely optional. Historian can still be used as a
stand-alone application. If you choose to use Historian as a stand-alone product, its
functionality is not impaired; it continues to work the same way as it did before your
upgrade. To help you decide whether or not to use Historian as an integrated component
of iFIX, see Using iFIX with Proficy Historian.
If you decide to install the integrated Proficy Historian features in iFIX at a later date, all
of the integration features, including the Historian toolbar, will be installed.
If you decide to use the integrated Proficy Historian features in iFIX, you must shut down
Historian services and licensing prior to installing iFIX and Historian and you must
choose to install Historian during the iFIX install.
After the iFIX database is upgraded, all newly added block fields for Historian are added
with default values.
you must also upgrade Proficy Historian from version 3.1 to version 3.5. If you do not
upgrade your version of Historian, it may crash unexpectedly.
When you open a picture from a previous version of iFIX in the newer version, and save
it, your picture is automatically updated to the newest version of iFIX. However, due to
the design of the VisiconX objects in iFIX 5.0 and greater, it is recommended that you
manually replace your older VisiconX objects with the newer versions.
To avoid color mapping problems, perform the following steps before saving and
resolving any pictures in iFIX 5.1.
59
To avoid color mapping problems:
1. Copy and save the tables.lst file from the older version of iFIX.
2. Install the iFIX upgrade or switch to the upgraded machine.
3. Shut down the WorkSpace.
4. Delete the tableconversion.lst file from the iFIX directory (C:\Program
Files\Proficy\Proficy iFIX).
5. Copy the original tables.lst file to the iFIX directory.
6. Restart the WorkSpace.
You can access the ActiveWindow object directly from the documents collection or by
calling the OpenPicture subroutine.
To correct the sizing and positioning, multiply the parameters in the 2.1 script by the
number of monitors.
For example:
In iFIX 2.1, you opened a picture on the second monitor of a dual monitor system by
issuing the following command:
openpicture "picture.grf",,0,50
In iFIX 2.6 and later, open a picture on the second monitor of a dual monitor system by
issuing the following command:
openpicture "picture.grf",,0,100
Database Dynamos
Database Dynamos, also known as loadable blocks, will require updates to work with iFIX
5.1. If you have old Database Dynamos on your system, the iFIX install program will
detect them, and generate a warning message. This includes any Database Dynamos that
you downloaded from the Support web site, or installed from the Allen-Bradley
Productivity Pack CD before you installed iFIX 3.x.
The GE Intelligent Platforms web site contains updated versions of the database dynamos
supplied by GE Intelligent Platforms. To obtain updated version of other dynamos, contact
the vendor of that dynamo. To obtain the current version of the Database Dynamo Toolkit,
contact your local iFIX sales representative.
NOTE: When upgrading an iFIX SCADA node with loadable blocks, always make sure
that the block slot number prior to the upgrade matches the block slot number after the
upgrade. Slots are saved inside the FIX.INI (in the [Scada] section) . If the block slot
numbers do not match after the upgrade, iFIX will be unable to load these blocks, and
eliminate them from the database. In addition, you may receive a warning message stating
that the there is a block configuration mismatch.
Historical Datalinks
Beginning with iFIX 5.1, the configuration requirements for historical datalinks changed.
To upgrade your existing historical datalinks, for each picture which contains them, open
the picture and save it. If you do not make any changes on the Historical Datalinks dialog
box, the historical datalink, by default will use CurrentValue for its Historical Mode.
Be aware that when you upgrade iFIX, the Dynamos in pre-built Dynamo sets and the
61
Dynamos created before iFIX 4.5 are not considered Dynamo objects. This means you
cannot use the Quick Dynamo Updater, the Dynamo Updater Wizard, and the Cross
Reference Tool (available in iFIX 4.5 and greater) to update instances of these Dynamos
within existing pictures. Only Dynamo objects created in the newer version of iFIX can be
updated with these tools.
• Historical.fds
• Miscellaneous.fds
• Motors.fds
• Pipes.fds
• PipesAnim.fds
• Pumps.fds
• PumpsAnim.fds
• Tanks.fds
• TanksAnim1.fds
• TanksAnim2.fds
• Valves.fds
• ValvesAnim.fds
If this happens, delete the contents of the Temp directory and run the installation again.
Next, using a text editor, you must provide translations for each of these new fields in the
exported language (.csv) file(s). This step is required because the iFIX language
translation file originally did not include the Alarm Summary object.
NOTES:
• iFIX 5.1 supports translation of the Alarm Summary object information through
the picture object, or through the Alarm Summary object. You may also want to
create new pictures which take advantage of the SwitchLanguage Method on the
Alarm Summary object itself. For more information on how to use this feature,
refer to the SwitchLanguage Method Example in the iFIX Automation
Reference.
• In iFIX 5.1, you can also change the font of the Column Headers and the Status
Bar in the Alarm Summary object for translation display purposes. This Font
changing feature is new in iFIX 5.1 and can be accessed from the General tab of
the Alarm Summary object in configure mode. You may want to update your
pictures to use this feature, as well. For more information on how to use this
feature, refer to the Configuring Fonts for the Column Headings and Status Bar
in the Creating Pictures electronic book.
1. In the WorkSpace configuration mode, open the picture you want to export a
language file for.
2. In Classic view, on the WorkSpace menu, click User Preferences.
-Or-
In Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and
then click User Preferences.
63
3. Click the Picture Preferences tab and make sure the Translate Picture On Open
check box is cleared. If it is selected, the LanguageDesired and TranslateOnOpen
properties in the Properties window cannot be changed.
4. Click OK to close the User Preferences dialog box.
5. Right-click in the picture and choose Property Window.
6. From the LanguageDesired list, select the appropriate language.
7. From the TranslateOnOpen list, select Yes.
8. On the Translation toolbar, click the Export language file button. A message
appears letting you know the language file was successfully exported.
9. You can now open the language file in a text editor and translate the text strings
for the picture.
1. In the iFIX WorkSpace, on the Translation toolbar, click the Export multiple
language files button. The Language File Exporter dialog box appears.
2. In the Select pictures list, select the check box for each picture you want to
export a language file for.
3. If applicable, select the Show Tag Status pictures check box to display and select
tag status pictures in the Select pictures list.
4. If applicable, select the Always overwrite existing export files check box. If you
are exporting a language file for a picture that already has a language file for the
selected language, the existing language file will be automatically overwritten. If
you clear this check box, you will be prompted to replace the existing language
file. Click Yes to replace it and No to keep it.
5. From the Select language list, choose the language that you want to provide
translations for.
6. Click Export. A separate language file is created for each picture you selected.
7. You can now open each language file in a text editor and translate the text strings
for the pictures.
After you upgrade to iFIX with FIX Desktop, you can run FIX Desktop Draw, View, and
HTD applications alongside the Proficy iFIX WorkSpace. All applications use the iFIX
security, database, and system configuration information.
This chapter describes how to upgrade the FIX 7.x product to iFIX 5.1 with FIX Desktop.
After you upgrade, you can continue to use your FIX32 pictures in FIX Desktop Draw and
View applications, or you can migrate and create new pictures in the Proficy iFIX
WorkSpace.
Before you upgrade, you need to follow the steps outlined in the Preparing for the
Upgrade to iFIX with FIX Desktop section. The actual upgrade steps are outlined in the
Overview of Steps to Upgrade from FIX 7.x section.
1. Convert recipes to the required format by Preparing the Recipe Files for the
Upgrade.
2. Export I/O driver information by Preparing the I/O Drivers for the Upgrade.
3. Record the enabled environmental protection options by Checking the
Environmental Protection Settings.
65
4. Be sure to save all required files by Backing Up FIX Files.
5. Compile a list of user accounts by Exporting a Report of the Security
Configuration.
6. Edit the user accounts in the report file by Adding Passwords to the .RPT File.
7. Finish by Generating a System Configuration Report.
1. Start FIX32.
2. If security is enabled, log in using a user account with Administrator rights.
3. Start the FIX32 Recipe Manager, RCP.EXE.
4. Save each master recipe as a .rcx file:
a. Open the master recipe (.RCM file).
b. On the File menu, click Save As. The Recipe Mod Log dialog box
appears.
c. Click Save As. The recipe Save As dialog box appears.
d. From the Save File As Type drop-down list, select Master text (*.rcx).
e. Confirm that the location is the RCM folder and the file name is the
same as the original file.
f. Click OK.
5. Save each control recipe as a .rcy file:
a. Open the control recipe (.rcc file).
b. On the File menu, click Save As. The Recipe Mod Log dialog box
appears.
c. Click Save As. The recipe Save As dialog box appears.
d. From the Save File As Type drop-down list, select Control text (*.rcy).
e. Confirm that the location is the RCC folder and file name is the same as
the original file.
f. Click OK.
6. Verify that you saved all recipes by inspecting the FIX32\RCC and FIX32\RCM
folders.
Later in the install process, after importing the driver files, you can verify the driver
migration and convert the process database for use with iFIX and FIX Desktop.
67
Name field.
9. From the Save as Type drop-down list, select Text Files (*.CSV).
10. Click Save.
11. Repeat steps 6-10 for each channel of the driver that is currently installed. Note
the file names and their location for later use.
12. Repeat steps 5-11 for each I/O driver installed on your system.
13. Exit the SCU.
1. Start FIX.
2. Open the Draw application.
3. On the Edit menu, click Environment. The Environment Protection dialog box
appears.
4. Inspect and record the enabled options.
After you back up the FIX files, you may also want to copy this new folder to another
location, such as a network drive or a removable media, as a safeguard until the migration
is complete.
The following table lists the files and folders that you must back up.
69
Files or Folder to Location Description of FIX32 Component
Copy
1. Create a new folder on your computer, separate from the FIX32 folder, for the
files you want to save.
2. Copy the entire PDB folder into this new folder. The PDB folder includes the
process database and driver configuration files (*.PDB, *.CSV, *.GDB, all driver
configuration files).
3. Copy the entire PIC folder, which includes all displays, display templates, tag
groups, key macros, layouts, and custom Dynamos (*.ODF, *.ODT, *.ODT,
*.TGE, *.KMX, *.LYT, and *.SBL files).
4. Copy the converted master recipe files (*.RCX) in the RCM folder.
5. Copy the converted control recipe files (*.RCY) in the RCC folder.
6. Copy the initialization settings for the Draw and View applications and report
files (Draw.ini, View.ini, *.RPT) from the LOCAL folder.
7. Copy the entire HTRDATA folder, which includes all collected historical data.
8. Copy the entire HTR folder, which includes your historical collection
preferences.
9. Copy the entire ALM folder, which includes all alarm files and event logs.
10. Copy the entire APP folder, which includes any custom data and configuration
files for your iFIX applications.
11. After you copy all of these files, you may want to back up these files to another
location, such as a network drive or a removable media, as a safeguard until the
migration is complete.
IMPORTANT: Passwords are not exported with the security configuration report; you
must re-enter the passwords manually. See the Adding Passwords to the .RPT File section
for details. This policy is for security purposes.
After you install iFIX and FIX Desktop (in the same language as the original install), you
can import this report file into your new security configuration to recreate the user
accounts on the upgraded system. You can also use this printed report as a cross reference
when you reassign the new application features to each user.
71
FIX32\Local folder. Most likely you will want to save this file to the location
where you backed up the other FIX files.
7. Use the default name for the .RPT file, which is Security.RPT.
8. Click Save.
9. Open this report in a text editor such as Notepad or Wordpad and print a copy.
If you later try to import this file into the Security Configuration application without the
passwords, none of the iFIX user accounts will require passwords. In this case, you would
need to re-enter each password manually. You can avoid this step entirely by editing each
account in the report file from a text editor before the migration.
Login-name: GUEST
Timeout: 00:00:00
Feature: View
Login-name: GUEST
Password: GUEST
Timeout: 00:00:00
Feature: View
5. Scroll down through the report and repeat steps 3 and 4 for each user in the
report.
• General node configuration information, such as the node and setup file name, as
well as SCADA, network, NLS, and security options.
• System path locations for base, local, language, database, pictures, and so on.
• SCADA configuration such as the name and number of I/O drivers.
• Alarm configuration information such as default message format, application
message routing, remote alarm areas, alarm network service, alarm summary, and
alarm history service settings.
• List of startup tasks.
• SQL configuration.
• Auto Alarm Manager configuration to send and receive alarms.
This report contains valuable reference information on your current FIX system before the
upgrade.
73
4. On the File menu, click Report. The Select Report Name dialog box appears.
5. In the File Name field, leave the default name. The default name is the node
name.
6. Click Save. A report named NodeName.RPT is saved to the Local folder. A
message appears when the save is complete.
NOTE: NodeName is the name from step 5.
7. Click OK to continue.
You can install the newest drivers from the most current Driver CD, or by obtaining the
driver file from the Proficy GlobalCare Support web site, http://www.ge-ip.com/support.
To install the driver, follow the instructions that came with your driver CD, or with your
download. If you install a driver from the web, the process generally entails extracting
files from a .EXE and running a simple install program or manually copying files. Refer to
the driver documentation for information on the install process.
After obtaining and installing the latest drivers, it is recommended that you check for the
latest patches for the iFIX product. Obtain all applicable iFIX SIMs and add-ons from the
Proficy GlobalCare Support web site, http://www.ge-ip.com/support. Install these SIMs on
top of the current iFIX installation.
IMPORTANT: You must install the most current drivers before you migrate the
Process Database (PDB) files from FIX32 to iFIX. This step is necessary so that
your FIX32 applications can migrate properly to iFIX.
1. Obtain the latest the most current Driver CD or the driver update from the
GlobalCare Support web site, http://www.ge-ip.com/support.
75
2. Follow the instructions that came with your driver CD, or the information
included with the driver download.
3. Check for the latest patches for the iFIX product. Obtain all applicable iFIX
SIMs and add-ons from the GlobalCare Support web site, http://www.ge-
ip.com/support.
4. Install these SIMs on top of the installed iFIX product.
5. Do not start iFIX.
The following table lists the files to copy from your backup folder, and the location to
copy them to (assuming you used the default iFIX directory).
*.ODF PIC
*.ODT PIC
*.TGE PIC
*.KMX PIC
*.LYT PIC
*.SBL PIC
*.RCX RCM
*.RCY RCY
HTRDATA/*.* HTRDATA
HTR/*.* HTR
ALM/*.* ALM
APP/*.* APP
To copy the backed up files into the appropriate Proficy iFIX product folders:
1. Copy the *.PDB, *.CSV, and *.GDB files from the FIX32 PDB folder into the
iFIX PDB folder.
NOTE: If you installed iFIX to the default location, the iFIX folders are located
in this path: C:\Program Files\Proficy\Proficy iFIX.
2. Copy the contents of the FIX32 PIC folder into the iFIX PIC folder.
3. Copy the *.RCX files into the iFIX RCM folder.
4. Copy the *.RCY files into the iFIX RCC folder.
77
5. Copy the Draw.ini, View.ini, *.RPT files for FI32X into the iFIX Local folder.
6. Copy the contents of the FIX32 HTRDATA folder into the iFIX HTRDATA
folder.
7. Copy the contents of the FIX32 HTR folder into the iFIX HTR folder.
8. Copy the contents of the FIX32 ALM folder into the iFIX ALM folder.
9. Copy the contents of the FIX32 APP folder into the iFIX APP folder.
1. Start the iFIX SCU, by clicking the Start button, pointing to Programs, Proficy
HMI SCADA - iFIX, and then System Configuration.
2. Verify that the Node name that appears on the main screen is correct. Refer to the
NodeName.RPT report described in the Generating a System Configuration
Report section if you are unsure of the name.
3. Double-click the Database Name to enter the database name you want to use. The
Database Definition dialog box appears. Ensure it is the same name as the
previous project.
4. Click OK. A prompt appears stating that the database does not exist.
5. Select Yes, and use the database anyway.
6. On the Configure menu, click SCADA. The SCADA Configuration dialog box
appears.
7. Verify that the required drivers appear in the Configured I/O Drivers list. If
required, add the SIM and any other required driver to the Configured I/O
Drivers list.
8. Click OK, and then Yes when prompted.
9. On the File menu, click Save.
If you need to make changes, you can make the necessary changes, save the file,
and proceed to step 24. Otherwise, import the driver configuration by following
steps 16-22.
16. Select the first channel, CHANNEL1, in the browser on the left side of the
window.
17. On the File menu, click Open. The Open dialog box appears.
18. From the Save as Type drop-down list, select Text Files (*.CSV).
19. Select the .CSV file for the channel.
20. Click Open.
21. Repeat steps 16-20 for each channel of the driver that is currently displayed.
22. Repeat steps 15-21 for each I/O driver installed on your system.
23. When you finish these tasks for all drivers, on the File menu, click Save and exit
the Driver Configurator.
24. Save and Exit the SCU.
79
Verify the I/O Driver and Database Migration
After configuring the SCU, complete the following procedure to verify the migration of
the I/O drivers and to convert the Process Database.
1. Start iFIX.
2. Start Mission Control from the Proficy iFIX WorkSpace. You can find the button
to launch Mission Control in the WorkSpace tree.
3. Examine the information on the I/O Control tab. Ensure that data is being polled.
If data is present, advance to Step 6.
4. If there is no data present, ensure that the driver is loaded and is running. Exit
Mission Control and select System Configuration to start the SCU.
5. On the Configure menu, click SCADA. The SCADA Configuration dialog box
appears.
6. Select the I/O driver and verify that the Poll Records are present. If they are not
present, repeat the steps in the Import the FIX I/O Driver Configuration
Information section.
7. Maximize the Proficy iFIX WorkSpace and then:
a. Start Database Manager from the WorkSpace System Tree.
b. Verify that the I/O addresses for your data blocks are correct.
8. Save and exit Database Manager.
Errors that occur during the database conversion are written to the error log file
(dbcvt.err). You can open this file in any text editor. Use this log file to identify
the individual tags causing the problems. Consult the online help or contact GE
Intelligent Platforms for more details on how to troubleshoot database conversion
errors.
1. From the Proficy iFIX WorkSpace, select the FIX Recipes folder in the system
tree.
2. Double-click the New Recipe icon. The Recipe Development utility appears.
3. Open each .rcx file in the iFIX RCM folder and save each file as a .rcm file.
4. Open each .rcy file in the iFIX RCC folder and save each file as a .rcc file.
5. When you are finished, exit the Recipe Development utility.
81
folder is the C:\Program Files\Proficy\Proficy iFIX\Local folder.
6. Select the file and click Open. A message box appears warning you that the
imported user accounts will not contain passwords.
IMPORTANT: Be aware that you cannot import a security file exported from
another language.
7. Click Yes to continue. Another message box appears requesting that you replace
or add this file to the existing configuration.
8. Click Replace.
IMPORTANT: Do not shut down the SCU before moving on to the next set of
steps. If you did not add passwords to the user accounts before you migrated, as
described in the Adding Passwords to the .RPT File section, you could possibly
lock yourself out, if security is enabled.
9. Continue by following the steps in the Reconfigure the Application Features and
Passwords for Each User section.
Use the Security Configuration program to open each group profile and user profile,
assign application features, and create a new password (if a password is required). Use the
printout that you created in the Exporting a Report of the Security Configuration as a
reference when reassigning the application features to users on the upgraded system. This
printout lists the original application features available for each user.
Refer to the following sections when comparing this printed list of features with the
features that appear in the Application Features Selection dialog box.
NOTE: The SCU should still be open from the previous set of steps in the Import
the Security Configuration section.
7. Click OK.
8. Click OK to exit the User Profile dialog box.
9. Repeat steps 3-8 for each user listed in the User Accounts dialog box.
10. Click OK to exit the User Accounts dialog box.
11. On the Edit menu, click Group Accounts. The Group Accounts dialog box
appears.
12. Select a group and click Modify. The Group Profile dialog box appears.
13. In the Application Features area, click Modify. The Application Feature selection
dialog box appears.
14. Add the required features. Click Add All if you want to allow this group to use
all application features.
83
15. Click OK.
16. Click OK to exit the Group Profile dialog box.
17. Repeat steps 12-16 for each group listed in the Group Accounts dialog box.
18. On the File menu, click Save to save the security configuration.
19. On the File menu in the Security Configuration program, click Exit to return to
the SCU.
20. Save and exit the SCU.
For instance, to allow a user to access Draw, you need to add the WorkSpace Configure
feature to the user's application feature list. By doing this, the user has the same access to
both Draw and the Proficy iFIX WorkSpace in configure mode.
Similarly, to allow access to the View application, you need to add the WorkSpace
Runtime feature to the user's application feature list. By doing this, the user has access to
both View and the Proficy iFIX WorkSpace in run mode.
The application feature names are different because they take into account changes to
support the iFIX system. As another example, since the FIX32 Database Builder is
replaced with the iFIX Database Manager, you need to add the Database Manager to the
user's feature list since the supported application actually changed with the upgrade.
When re-assigning these features for each user, use the following table to locate the FIX32
feature name and determine the corresponding name in iFIX with FIX Desktop.
Feature Name for FIX32 Feature Name for iFIX with FIX
Desktop
85
Feature Name for FIX32 Feature Name for iFIX with FIX
Desktop
Feature Name for FIX32 Feature Name for iFIX with FIX
Desktop
GUI Recipe Text Output Recipe Text Output from Recipe Builder
Historical Trend Display View Only Fix32 - Historical Trend Display View
Only
87
• Quality Test Manager
• Recipe Handler
• Recipe Manager
• Recipe Manager - Authorize
• Recipe Manager - Remove
• Report Creator
• Report Generator
• Report Manager
• Scheduler
• Scheduler Configuration
NOTE: iFIX does not include a separate Key Macro Editor application feature. For iFIX,
the Key Macro Editor (FDKeyMacros.exe) does not run outside of the Proficy iFIX
WorkSpace. So, security for this feature is set at the WorkSpace-level by allowing access
to the WorkSpace Configure feature. For FIX32, the Key Macro Editor (KME.exe) can
run alone without Draw running. This is why the Key Macro Editor appears as a separate
entry for FIX32 for use with FIX Desktop.
One of the biggest changes required for iFIX failover is that you include a logical node
name in your configuration. Failover in iFIX follows a different paradigm. In iFIX with
FIX Desktop, the applications on the iClient communicate to the logical node name, and
iFIX substitutes the physical node name at run time based on which SCADA server is
available. The combination of the logical node name, and physical primary and secondary
SCADA server names, is referred to as the primary and secondary pair. You configure the
primary and secondary pair in the SCU of the iClient and of each SCADA server.
For detailed instructions on configuring Enhanced Failover and LAN Redundancy, refer to
the Enhanced Failover and Redundancy e-book in the iFIX Electronic Books.
89
Enable Environmental Protection
If your FIX applications used the environment protection feature prior to the iFIX with
FIX Desktop upgrade, you need to enable it again. To enable this feature for iFIX and FIX
Desktop, use the Environment Protection tab of the User Preferences dialog box of the
Proficy iFIX WorkSpace, as shown in the following figure.
From this dialog box, you can enable the options that your applications require. When re-
entering these settings, be sure to refer back to the settings that you recorded in the
Checking the Environmental Protection Settings section, when you prepared for the iFIX
with FIX Desktop upgrade.
When you use environmental protection for iFIX with FIX Desktop, be aware that some
limitations apply to these options when View is running and the Proficy iFIX WorkSpace
is in run mode:
• Disable <Ctrl><Alt><Del>
• Disable Task Switching
If you exit the WorkSpace or View, either by shutting down one application or by
switching the WorkSpace to configure mode while View is still running, these
environmental protection settings no longer apply to the application still running.
Settings that Apply to Both the Proficy iFIX WorkSpace and View
From the Environment Protection tab of the User Preferences dialog box, the following
settings apply to both View and WorkSpace in run mode:
The only environmental protection setting that does not appear in the Environment
Protection tab of the User Preferences dialog box is as follows:
This setting is still available for FIX Desktop View, however, you must enable this setting
91
through the FixUserPreferences.INI file.
The remaining environmental protection options are new for the Proficy iFIX WorkSpace:
1. Start iFIX.
2. Shut down View and the WorkSpace if either is running.
3. If you want to use the Disable Pop-up Menu option, open the
FixUserPreferences.ini file in the C:\Program Files\Proficy\Proficy iFIX\Local
folder. In the [AppRunPreferences] section, make the following change:
PopUpMenu=0
When the PopUpMenu=1, then the right-click pop-up menu is not available.
When this value is set to 0, the pop-up menu is available in View.
4. To set the other environment settings, open the Proficy iFIX WorkSpace.
5. In Classic view, on the WorkSpace menu, click User Preferences.
-Or-
In Ribbon view, on the Home tab, in the WorkSpace group, click Settings, and
then click User Preferences.
Closing the current picture Disable Title Bar and Menu Bar.
displaying in View or the Proficy
NOTE: Be sure to also select the Full Screen
iFIX WorkSpace (in run mode).
in Run mode check box from the General tab
and clear the Title bar and Resizeable check
boxes from the Picture Preferences tab.
93
To restrict an operator from... Select this check box...
You may not be able to access remote OPC servers if these settings are not correctly set.
For more detailed information on configuring these settings, refer to the following topics:
• Setting Up the Windows XP, Vista, or Windows Server 2008 Firewall for Use
with Remote OPC Servers
• Setting Up DCOM for Use with Remote OPC Servers
It is recommended that you enter these settings on the local machine running iFIX, as well
as on the remote machine that has the OPC server you want to use.
95
Microsoft Windows XP.
4. Click the Add Port button. The Add a Port dialog box appears. The following
figure shows an example of this dialog box in Microsoft Windows XP.
9. Select the Add Program button. The Add a Program dialog box appears. The
following figure shows an example of this dialog box in Microsoft Windows XP.
97
10. Click the Browse button. A Browse dialog box appears.
11. Navigate to the System32 folder. This folder is found under the operating system
folder (usually Windows or WINNT).
12. In the System32 folder, select the OPCENUM.exe file, and then click the Open
button.
In the Add a Program dialog box the path field displays the full path to, and
including, the OPCENUM.exe file.
99
13. Click OK.
OPCENUM.exe should now be listed in the Exceptions list with its check box
selected.
14. Complete steps 9-13 for each OPC server that you want to access.
NOTES:
• If any OPC server that you want to use is a dll surrogate (an in-process dll and
101
not an .exe), you must add \system32\dllhost.exe into the Exceptions list.
• You must also add the GE Intelligent Platforms OPC Client driver by adding the
file OPCDrv.exe into the Exceptions list.
• OPCENUM must reside on the remote machine with the OPC server. While most
OPC Server applications install and register this file, some do not. You can
download this file from www.opcfoundation.org. Currently it is contained within
the OPC Core Components 2.00 Redistributable 2.30.msi file. After you
download OPCENUM, run the .msi file.
When OPC Servers register, they set up initial custom DCOM security settings to enable
users on the network to access and launch the Server. On large networks, it is
recommended that you modify these settings to avoid confusion and inadvertent changes
to a running OPC Server.
If Firewall security is enabled on Windows XP, Windows Vista, or Windows 2008, you
must also modify or add items to the Exceptions list. Refer to Setting Up the Windows XP
or Vista Firewall for Use with Remote OPC Servers.
IMPORTANT NOTES:
• It is recommended that all users that need to access remote OPC Servers be
members of the Administrators group. To facilitate this, it is recommended that
you create a users group to contain individual users that need to access remote
OPC servers.
For example, for the Discover and Auto Configure application, create a group
named “DAC” and add those users who will log into the operating systems and
access remote OPC servers. Add the users Tom, Denise, and Harry into the DAC
group. Each of these users will also be added into the Administrators group. This
DAC group should also contain the following built-in security principals:
INTERACTIVE; NETWORK; SYSTEM.
• To make any OPC Client / OPC Server application work via DCOM, changes
need to be made on both sides, especially if you intend to use Asynchronous I/O
communications.
• OPCENUM must reside on the remote machine with the OPC server. While most
OPC Server applications install and register this file, some do not. You can
download this file from www.opcfoundation.org. Currently it is contained within
the OPC Core Components 2.00 Redistributable 2.30.msi file. After you
download OPCENUM, run the .msi file.
• This section applies to OPC servers that need to use DCOM communications,
regardless of whether the OPC server uses Serial or Ethernet devices.
• If OPC communications is confined to a single machine (that is, using COM, but
not DCOM), it continues to work properly without making changes to DCOM
settings.
• If you do not plan to use iFIX to connect remotely to OPC servers, then you may
not need to change your DCOM settings.
• If this is the first time you are connecting to (or allowing connections from) other
machines on the network, you must run the Windows Network Wizard (from Start
> Control Panel) to set up your computer to run on your network. This allows
you to share resources on your computer with other computers on your network.
It is recommended that you run the Network Setup Wizard before modifying the
DCOM settings.
DCOM Settings
The following procedures provide general guidelines for configuring DCOM settings.
Differences between Windows 2003, Windows XP, Windows Vista, and Windows 2008
are noted.
103
To launch the DCOM configurator:
1. From the Start menu, select or type Run. The Run dialog box appears.
2. Type dcomcnfg and click OK. The Component Services dialog box appears.
Do not change the Edit Default… settings, since this will change the default
settings for all programs and applications running on the computer.
4. Click Access Permissions > Edit Limits… The Access Permission dialog box
appears.
a. Select the user labeled ANONYMOUS LOGON, and then select the
Allow check box for Remote Access.
b. Select the user labeled Everyone, and then select the Allow check box
for Remote Access.
IMPORTANT: Since “Everyone” includes all authenticated users, it is
recommended to add these permissions to a smaller subset of users. One
way of doing this is to create a Group named “OPC” and add all user
accounts to this Group that will access any OPC server. Then substitute
“OPC” everywhere that “Everyone” appears in the entire DCOM
configuration dialogs.
c. Click OK to close the Access Permissions dialog box and return to the
My Computer Properties dialog box.
5. Click Launch and Activation Permissions > Edit Limits… The Launch
Permission dialog box appears.
For each user or group (preferably add the “OPC” group) that needs to launch or
activate the OPC server, or participates in OPC / DCOM communications, make
sure that the Local Launch, Remote Launch, Local Activation, and Remote
Activation check boxes are selected.
6. Click OK to save your changes, then click OK again to save and close the My
Computer Properties dialog box.
It is recommended that all users requiring access to remote OPC servers be members of
the Administrators group.
105
IMPORTANT: Since the “Everyone” group includes all authenticated users, it is
recommended to add these permissions to a smaller subset of users.
It is recommended that you create a group to contain individual users that need to access
remote OPC servers. It is also recommended that all users who require access to remote
OPC Servers be members of the Administrators group.
For example, for Discovery and Auto-Assembly Component, create a group named
“DAC” and add those users who will log into the operating systems and access remote
OPC servers. Add the users Tom, Denise, and Harry into the DAC group. Each of these
users will also be added into the Administrators group. This DAC group should also
contain the following built-in security principals: INTERACTIVE; NETWORK; SYSTEM.
Then substitute “DAC” everywhere that “Everyone” appears in the entire DCOM
configuration dialogs.
In Windows 2003
appears.
9. Click the Add button. The Select Users and Groups dialog box appears.
10. Click the Advanced Button. The Select Users and Groups dialog box appears.
11. Click the Find Now button. In the search results, select the OPC group and click
OK. The Select Users and Groups dialog box displays the OPC group.
12. Click OK to return to the Launch Permission dialog box. The OPC group is
displayed in the Group or user names list.
13. Select the OPC group and select the Allow check box for Launch Permission.
14. Click OK to return to the <Selected OPC Server> Properties dialog box.
15. In the Access Permissions area, click Edit. The Access Permission dialog box
appears.
16. Click the Add button. The Select Users and Groups dialog box appears.
17. Click the Advanced Button. The Select Users and Groups dialog box appears.
18. Click the Find Now button. In the search results, select the OPC group and click
OK. The Select Users and Groups dialog box displays the OPC group.
19. Click OK to return to the Access Permission dialog box. The OPC group is
displayed in the Group or user names list.
20. Select the OPC group and select the Allow check box for Access Permission.
21. Click OK to return to the <Selected OPC Server> Properties dialog box.
22. In the Configuration Permissions area, click Edit. The Change Configuration
Permission dialog box appears.
23. Click the Add button. The Select Users and Groups dialog box appears.
24. Click the Advanced Button. The Select Users and Groups dialog box appears.
25. Click the Find Now button. In the search results, select the OPC group and click
OK. The Select Users and Groups dialog box displays the OPC group.
26. Click OK to return to the Change Configuration Permission dialog box.
27. Select the OPC group and select the Allow check boxes for Full Control and
Read,
28. Click OK to return to the <Selected OPC Server> Properties dialog box.
107
29. Click OK.
30. Repeat steps 2 through 29 for each OPC server you need to access remotely.
31. When you are done, close the Component Services dialog box.
14. Click OK to return to the <Selected OPC Server> Properties dialog box.
15. In the Access Permissions area, click Edit. The Access Permission dialog box
appears.
16. Click the Add button. The Select Users or Groups dialog box appears.
17. Click the Advanced Button. Another Select Users or Groups dialog box appears.
18. Click the Find Now button. In the search results, select the OPC group and click
OK. The Select Users or Groups dialog box displays the OPC group.
19. Click OK to return to the Access Permission dialog box. The OPC group is
displayed in the Group or user names list.
20. Select the OPC group and then select the Allow check boxes for Local Access
and Remote Access permissions.
21. Click OK to return to the <Selected OPC Server> Properties dialog box.
22. In the Configuration Permissions area, click Edit. The Change Configuration
Permission dialog box appears.
23. Click the Add button. The Select Users or Groups dialog box appears.
24. Click the Advanced Button. Another Select Users or Groups dialog box appears.
25. Click the Find Now button. In the search results, select the OPC group and click
OK. The Select Users or Groups dialog box displays the OPC group.
26. Click OK to return to the Change Configuration Permission dialog box. The OPC
group is displayed in the Group or user names list.
27. Select the OPC group and then select the Allow check boxes for Full Control and
Read permissions.
28. Click OK to return to the <Selected OPC Server> Properties dialog box.
29. Click OK.
30. Repeat steps 2 through 29 for each OPC server you need to access remotely.
31. When you are done, close the Component Services dialog box.
109
iFIX and Windows Vista
iFIX 5.1 supports Microsoft® Windows® Vista, Business, Enterprise, and Ultimate
Editions. Additionally, for iClients, iFIX supports Microsoft® Windows® Vista Ultimate
Edition. If you are upgrading your iFIX install, be aware that Microsoft does not
recommend upgrading Windows XP or 2003 to Windows Vista.
When using iFIX in Windows Vista, be aware of the following limitations when working
with these products:
• GE Intelligent Platforms OPC Client Driver – If you want to run the OPC
Client driver as a service, iFIX must also run as a service. Likewise, if you want
to run iFIX as a service, the OPC Client driver must run as a service. You cannot
run one as a service, without the other also running as a service.
If you want to run the OPC Client driver on the Microsoft Windows Vista
operating system, be sure to check with the vendor of your OPC Server software
to see if your OPC Server supports Vista.
• Third-Party OPC Servers – Be aware that at the time of the iFIX 5.1 release
there were a limited number of OPC Servers supported on Windows Vista. iFIX
was tested with the OPC20iFIX.exe (Intellution.OPCiFIX) Server – an OPC
2.05a (out of process) Data Server.
• Proficy Historian – You cannot install or use the Proficy Historian on Windows
Vista. In other words, you cannot collect iFIX data with Proficy Historian or
chart against Proficy Historian tags in Windows Vista.
• Proficy Change Management – Running the Proficy Change Management
(PCM) Server or the Client/Scheduler on iFIX 5.1 nodes is not supported on
Microsoft Windows Vista, since Proficy Change Management 5.6 and 5.7 do not
support Windows Vista.
• Terminal Server – iFIX does not support running a Terminal Server on
Windows Vista, or an upgraded server running Remote Desktop Protocol (RDP)
6.0. However, iClients installed on Windows Vista using RDP 6.0 can connect to
a server node running Windows 2000 Server, Windows 2000 Advanced Server,
or Windows Server 2003, with RDP 5.0, 5.1, or 5.2.
• Drivers and DAC – If you want to run a driver on the Microsoft Windows Vista
operating system, be sure to check with the vendor of your driver software to see
if your driver supports Vista. Your driver must support Vista to interface with the
Discover and Auto Configure (DAC) application on Windows Vista.
• Biometric Toolkit – The iFIX Biometric Toolkit is supported in Windows Vista
only if you have a biometric solution that is Windows Vista compatible.
• VisiconX – Make sure that your data sources use UNC pathing, rather than
mapped network drives. For example, use a path like this:
\\myserver\users\\mydb.mdb, instead of this: d:\myserver\users\mydb.mdb for
your data source. Otherwise, you may experience connection errors.
• PMON – The GE Intelligent Platforms diagnostic utility PMON.exe does not
work when iFIX is running as a service in Windows Vista.
• Proficy Portal Control – For best performance in Windows Vista, it is
recommended that when you insert Proficy Portal control into your iFIX picture,
that you do not insert any other ActiveX controls into the same picture.
Additionally, be aware of the following differences when working with iFIX in Windows
Vista, as opposed to other operating systems:
111
however, it is a modified version of the standard Users group. Like Power Users, the
standard Users group allows for some of the rights granted to Administrators, but not all.
As an Administrator, you have all of the rights you need to operate a SCADA node (start
and stop iFIX), as well as running iFIX as a service. However, if you want to allow a user
in the Power Users group to operate an iFIX SCADA node or run iFIX as a service, you
need to make some adjustments to the user rights.
To allow a Power User to operate an iFIX SCADA node, you need to add the individual
user or group to the "Create Global Objects" policy. If you want the user or group to run
iFIX as a service, then you need to run the GrantUserFixServiceRights command for the
user or group. A user must be a Power User or greater to run a SCADA node on Windows
Vista.
1. In Windows Vista, click the Start button, and in the Search box, type Command
Prompt and press Enter. If the Command Prompt does not appear immediately,
double-click the Command Prompt from the list of results.
2. In the Command Prompt window, type:
where FIX is the name of the service (iFIX) that you want to grant rights to, and
USERNAME is the name of the user or group that you want to grant rights to.
If you want to allow all Power Users to run iFIX as a service, type:
If you later need to revoke the right to run iFIX as a service, use the following command:
where SERVICENAME is the name of the service that you want to revoke rights from,
and USERNAME is the name of the user or group that you want to revoke rights from.
113
Windows Vista and Mapped Network Drives
In Windows Vista, when you elevate an application and it runs under a different context,
the application may or may not be related to the user who is logged in. As a result, drive
mappings are not available in an elevated session unless you specifically map them while
it is elevated.
To resolve this issue, make sure that your system data sources use UNC pathing, rather
than mapped network drives. For example, use a path like this:
\\myserver\users\\mydb.mdb, instead of this: d:\myserver\users\mydb.mdb for your data
source. Otherwise, you may experience connection errors. Be sure to select the
"Remember my password" check box in the Connection dialog box when setting up your
UNC pathing. By doing this, the next time you log in, your connection will succeed
without failing.
For example, you add a system data source (ODBC) with a mapped network drive for use
with VisiconX. When you configure a VisiconX data control and select a data source on
the Database tab, an error appears (error number -2147467259 indicates that you do have
a valid path). To resolve this issue, configure your data source with UNC pathing instead.
The "Allocation of Shareable Memory Failed" message is one of the messages that can
appear in this scenario. To resolve these types of issues, elevate the application to the
fullest privileges.
<assembly xmlns="urn:schemas-microsoft-com:asm.v1"
manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0"
processorArchitecture="X86"
name="yourappname"
type="win32"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="highestAvailable"
uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
4. Save the file in the same folder as the yourappname.exe, where yourappname is
the name of the application you want to elevate.
TIP: If yourappname.exe was built with an internal manifest, yourappname.exe
will ignore the external manifest created in the above manner. Instead, you need
rebuild the application with the new elevation information.
115
IMPORTANT: If you have run the executable before performing the above steps
and it failed to work, see this link for information on adding a manifest after the
fact: http://blogs.msdn.com/vistacompatteam/archive/2006/11/13/manifest-and-
the-fusion-cache.aspx.
• Build your application's executable (.exe) file with the elevation information built
into it. Be aware of issues with fusion cache when you use an external manifest
file. For more information, refer to the MSDN web site:
http://blogs.msdn.com/vistacompatteam/archive/2006/11/13/manifest-and-the-
fusion-cache.aspx.
For more information on User Account Control (UAC), refer to the Microsoft
web site: http://www.microsoft.com/downloads/details.aspx?familyid=ba73b169-
a648-49af-bc5e-a2eebb74c16b&displaylang=en.
To elevate a third party application that you do not own the source code for:
Microsoft recommends writing a wrapper to invoke the application's executable (.exe) file
in an elevated manner. If this is not feasible, the following is suggested:
When using iFIX in Windows Server 2008, be aware of the following limitations when
working with these products:
• GE Intelligent Platforms OPC Client Driver – If you want to run the OPC
Client driver as a service, iFIX must also run as a service. Likewise, if you want
to run iFIX as a service, the OPC Client driver must run as a service. You cannot
run one as a service, without the other also running as a service.
If you want to run the OPC Client driver on the Microsoft Windows Server 2008
operating system, be sure to check with the vendor of your OPC Server software
to see if your OPC Server supports Server 2008.
• Third-Party OPC Servers – Be aware that at the time of the iFIX 5.1 release
there were a limited number of OPC Servers supported on Windows Server 2008.
iFIX was tested with the OPC20iFIX.exe (Intellution.OPCiFIX) Server – an OPC
2.05a (out of process) Data Server.
• Proficy Change Management – Running the Proficy Change Management
(PCM) Server or the Client/Scheduler on iFIX 5.1 nodes is not supported on
Microsoft Windows Server 2008, since Proficy Change Management 5.6 and 5.7
do not support Windows Server 2008.
• Drivers and DAC – If you want to run a driver on the Microsoft Windows
Server 2008 operating system, be sure to check with the vendor of your driver
software to see if your driver supports Server 2008. Your driver must support
Server 2008 to interface with the Discover and Auto Configure (DAC)
application on Windows Server 2008.
• Biometric Toolkit – The iFIX Biometric Toolkit is supported in Windows
Server 2008 only if you have a biometric solution that is Windows Server 2008
compatible.
• VisiconX – Make sure that your data sources use UNC pathing, rather than
mapped network drives. For example, use a path like this:
\\myserver\users\\mydb.mdb, instead of this: d:\myserver\users\mydb.mdb for
your data source. Otherwise, you may experience connection errors.
• PMON – The GE Intelligent Platforms diagnostic utility PMON.exe does not
work when iFIX is running as a service in Windows Server 2008.
• Proficy Portal Control – For best performance in Windows Server 2008, it is
recommended that when you insert Proficy Portal control into your iFIX picture,
that you do not insert any other ActiveX controls into the same picture.
Additionally, be aware of the following differences when working with iFIX in Windows
117
Server 2008, as opposed to other operating systems:
As an Administrator, you have all of the rights you need to operate a SCADA node (start
and stop iFIX), as well as running iFIX as a service. However, if you want to allow a user
in the Power Users group to operate an iFIX SCADA node or run iFIX as a service, you
need to make some adjustments to the user rights.
To allow a Power User to operate an iFIX SCADA node, you need to add the individual
user or group to the "Create Global Objects" policy. If you want the user or group to run
iFIX as a service, then you need to run the GrantUserFixServiceRights command for the
user or group. A user must be a Power User or greater to run a SCADA node on Windows
Server 2008.
3. In the tree, double-click Security Settings, and then Local Policies, to view the
contents of the Local Policies folder.
4. Click the User Rights Assignment item to view the policies.
5. Double-click the Create Global Objects policy. The Create Global Object
Properties dialog box appears.
6. Click Add User or Group. The Select Users or Groups dialog box appears.
7. Enter an individual user name, or group name, such as "Power Users."
8. Click OK to add the user.
1. In Windows Server 2008, click the Start button, and in the Search box, type
Command Prompt and press Enter. If the Command Prompt does not appear
immediately, double-click the Command Prompt from the list of results.
2. In the Command Prompt window, type:
GrantUserFixServiceRights GRANT FIX USERNAME
where FIX is the name of the service (iFIX) that you want to grant rights to, and
USERNAME is the name of the user or group that you want to grant rights to.
119
Examples: Using GrantUserFixServiceRights
If you want to allow a Power User named QA1 to run iFIX as a service, type:
If you want to allow all Power Users to run iFIX as a service, type:
If you later need to revoke the right to run iFIX as a service, use the following command:
where SERVICENAME is the name of the service that you want to revoke rights from,
and USERNAME is the name of the user or group that you want to revoke rights from.
To resolve this issue, make sure that your system data sources use UNC pathing, rather
than mapped network drives. For example, use a path like this:
\\myserver\users\\mydb.mdb, instead of this: d:\myserver\users\mydb.mdb for your data
source. Otherwise, you may experience connection errors. Be sure to select the
"Remember my password" check box in the Connection dialog box when setting up your
UNC pathing. By doing this, the next time you log in, your connection will succeed
without failing.
For example, you add a system data source (ODBC) with a mapped network drive for use
with VisiconX. When you configure a VisiconX data control and select a data source on
the Database tab, an error appears (error number -2147467259 indicates that you do have
a valid path). To resolve this issue, configure your data source with UNC pathing instead.
The "Allocation of Shareable Memory Failed" message is one of the messages that can
appear in this scenario. To resolve these types of issues, elevate the application to the
fullest privileges.
<assembly xmlns="urn:schemas-microsoft-com:asm.v1"
manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0"
processorArchitecture="X86"
name="yourappname"
type="win32"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges>
121
<requestedExecutionLevel
level="highestAvailable"
uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
4. Save the file in the same folder as the yourappname.exe, where yourappname is
the name of the application you want to elevate.
TIP: If yourappname.exe was built with an internal manifest, yourappname.exe
will ignore the external manifest created in the above manner. Instead, you need
rebuild the application with the new elevation information.
IMPORTANT: If you have run the executable before performing the above steps
and it failed to work, see this link for information on adding a manifest after the
fact: http://blogs.msdn.com/Server
2008compatteam/archive/2006/11/13/manifest-and-the-fusion-cache.aspx.
• Build your application's executable (.exe) file with the elevation information built
into it. Be aware of issues with fusion cache when you use an external manifest
file. For more information, refer to the MSDN web site:
http://blogs.msdn.com/Server 2008compatteam/archive/2006/11/13/manifest-
and-the-fusion-cache.aspx.
For more information on User Account Control (UAC), refer to the Microsoft
web site: http://www.microsoft.com/downloads/details.aspx?familyid=ba73b169-
a648-49af-bc5e-a2eebb74c16b&displaylang=en.
To elevate a third party application that you do not own the source code for:
Microsoft recommends writing a wrapper to invoke the application's executable (.exe) file
• Supported Drivers
• Special Keyboard Buttons
Supported Drivers
iFIX supports the following drivers:
• Version 6.x
• Version 7.1 or higher
NOTE: Version 7.01 drivers have known issues with iFIX and are not supported.
If you want to run a driver on the Microsoft Windows Vista or Windows Server 2008
operating system, be sure to check with the vendor of your driver software to see if your
driver supports Vista.
123
and other functions. These keyboard buttons may disable certain key macros or allow
users to circumvent iFIX security measures.
It is recommended that you reprogram or disable the software that operates such special
buttons. Refer to your computer's documentation for instructions on disabling these
buttons.
Networking
This chapter provides general information about the iFIX supported network protocol,
supported network software, supported file servers, and installing network cards with
Windows. Refer to the following sections for more information:
GE Intelligent Platforms has tested and recommends 3COM plug-in boards and built-in
network adapters from Compaq, Dell, and Gateway.
If you have difficulty networking your computer, refer to the Troubleshooting chapter of
the Setting Up the Environment manual to pinpoint and resolve your problems.
If a file server becomes unavailable and an iFIX node attempts to access a file, you may
experience no response, slow response, or time-outs. These conditions are a result of
continuously polling all available drives while it waits for a response from the file server.
It is recommended that you store a backup copy of the files you need on the local node. It
is not recommended that you use the file server for files if it is susceptible to failure.
By comparison, iFIX uses time zones and adjusts the time stamp accordingly. For
example, if an iFIX node in Boston generates an alarm at 4:00 PM, another iFIX node in
Chicago displays the alarm with a time stamp of 3:00 PM.
When FIX 6.15 and iFIX transfer alarms over the network, the time zone handling is
similar to FIX 6.15 as the following table shows.
125
When... Then...
A FIX 6.15 node in Boston An iFIX node in Chicago displays the alarm
generates an alarm at 4:00 PM with a time stamp of 4:00 PM.
An iFIX node in Boston generates A FIX 6.15 node in Chicago displays the alarm
an alarm at 4:00 PM with a time stamp of 4:00 PM.
IMPORTANT: You cannot run iFIX and FIX v7 at the same time on a single computer.
Authorization: authorization.ip@ge.com
Technical Support
If you have technical problems that cannot be resolved with the information in this guide,
please contact us by telephone or email, or on the web at www.ge-ip.com/support.
Americas
Online Technical Support: www.ge-ip.com/support
Phone: 1-800-433-2682
127
Asia Pacific
Online Technical Support: www.ge-ip.com/support
Phone: +86-400-820-8208
support.jp.ip@ge.com (Japan)
customercare.cn.ip@ge.com (China)
• Have your contract number ready. Your contract number is an eight-digit number
that is a combination of your company's six-digit identification number and a
two-digit extension that identifies the product you are using. It can be found on
your invoice and in the body of your original packing list from GE Intelligent
Platforms. If you are a member of our Extended Support Services program, your
contract number is also on your customer support PhoneCard.
• Be next to your computer so that the engineer can step you through the proper
procedure.
• Be familiar with your product's documentation so that the engineer can direct you
to information on related topics.
• Have the names and version numbers of the I/O drivers in use.
Assistance
When you call for assistance with software that does not perform as you expect, the
answer usually has to do with your computer's setup. You should be able to answer the
following questions when you call:
129
Index
. D
.CSV files...................................... 67 Database Dynamos
131
recommended types ............... 125 requirements for iFIX .................. 3
G HASP ............................................ 16
getting started, iFIX ........................ 1 I
GrantUserFixServiceRights........ 111 I/O drivers
133
insufficient disk space .................. 11 overview
K iFIX installation............................ 2
keyboard, special buttons .......... 123 upgrading from iFIX to FIX
Desktop ................................. 74
L
language support ......................... 20 P
parallel port hardware key ............ 13
limitations ................................... 110
passwords
M
mappings .................................... 114 in .RPT file ................................ 72
requirements supported
135
T user globals, iFIX upgrade
considerations ........................... 57
time format, supported ................. 19
using iFIX with Microsoft Office .... 41
time zones .................................. 125
V
toolbars......................................... 57
verifying I/O driver and database
toolbars, imported ........................ 57 migration ................................... 80
U video drivers
Version 5.1
May 2010
All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical
means, including photocopying and recording, without permission in writing from GE Intelligent Platforms, Inc.
The information contained in this manual is believed to be accurate and reliable. However, GE Intelligent Platforms,
Inc. assumes no responsibilities for any errors, omissions or inaccuracies whatsoever. Without limiting the foregoing,
GE Intelligent Platforms, Inc. disclaims any and all warranties, expressed or implied, including the warranty of
merchantability and fitness for a particular purpose, with respect to the information contained in this manual and the
equipment or software described herein. The entire risk as to the quality and performance of such information,
equipment and software, is upon the buyer or user. GE Intelligent Platforms, Inc. shall not be liable for any damages,
including special or consequential damages, arising out of the user of such information, equipment and software, even
if GE Intelligent Platforms, Inc. has been advised in advance of the possibility of such damages. The user of the
information contained in the manual and the software described herein is subject to the GE Intelligent Platforms, Inc.
standard license agreement, which must be executed by the buyer or user before the use of such information, equipment
or software.
Notice
©2010 GE Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Intelligent Platforms, Inc.
Microsoft® is a registered trademark of Microsoft Corporation, in the United States and/or other countries.
All other brands or names are property of their respective holders.
We want to hear from you. If you have comments, questions, or suggestions about our documentation, send them to the
following email address:
doc@ge.com
Table of Contents
About this Guide ...............................................................................................................................1
A....................................................................................................................................................1
B....................................................................................................................................................4
C ...................................................................................................................................................5
D ...................................................................................................................................................8
E..................................................................................................................................................11
F ..................................................................................................................................................13
G .................................................................................................................................................16
H .................................................................................................................................................19
I-J ................................................................................................................................................20
K..................................................................................................................................................21
L ..................................................................................................................................................22
M .................................................................................................................................................24
N .................................................................................................................................................26
O .................................................................................................................................................27
P..................................................................................................................................................28
Q .................................................................................................................................................31
R .................................................................................................................................................31
S..................................................................................................................................................33
T ..................................................................................................................................................39
U .................................................................................................................................................41
V..................................................................................................................................................42
W.................................................................................................................................................43
X-Y ..............................................................................................................................................44
Z ..................................................................................................................................................45
iii
iFIX Automation Reference
Objects ............................................................................................................................................ 45
A ................................................................................................................................................. 45
B ................................................................................................................................................. 45
C ................................................................................................................................................. 45
D ................................................................................................................................................. 46
E ................................................................................................................................................. 46
F .................................................................................................................................................. 46
G-K ............................................................................................................................................. 47
L-N .............................................................................................................................................. 47
O ................................................................................................................................................. 47
P-Q ............................................................................................................................................. 47
R ................................................................................................................................................. 48
S ................................................................................................................................................. 48
T-U .............................................................................................................................................. 48
V ................................................................................................................................................. 49
W-Z ............................................................................................................................................. 49
A-C .................................................................................................................................................. 49
Chart Object................................................................................................................................ 50
Chord Object............................................................................................................................... 51
D-F .................................................................................................................................................. 51
iv
iFIX Automation Reference
DynamoSet Object...................................................................................................................... 52
ESignature Object....................................................................................................................... 53
G-O ................................................................................................................................................. 55
Groups Object............................................................................................................................. 56
Line Object.................................................................................................................................. 56
v
iFIX Automation Reference
Lookup Object............................................................................................................................. 57
P-S .................................................................................................................................................. 58
vi
iFIX Automation Reference
T-Z .................................................................................................................................................. 61
TimeAxis Object.......................................................................................................................... 61
Window Object............................................................................................................................ 63
Properties ....................................................................................................................................... 64
A ................................................................................................................................................. 64
B ................................................................................................................................................. 65
C ................................................................................................................................................. 66
D ................................................................................................................................................. 68
E ................................................................................................................................................. 70
F .................................................................................................................................................. 71
G ................................................................................................................................................. 72
H ................................................................................................................................................. 73
I-K ............................................................................................................................................... 74
L .................................................................................................................................................. 75
M ................................................................................................................................................. 76
N ................................................................................................................................................. 78
O ................................................................................................................................................. 78
P ................................................................................................................................................. 79
vii
iFIX Automation Reference
Q ................................................................................................................................................. 81
R ................................................................................................................................................. 81
S ................................................................................................................................................. 82
T .................................................................................................................................................. 85
U ................................................................................................................................................. 86
V ................................................................................................................................................. 87
W-Y ............................................................................................................................................. 88
Z .................................................................................................................................................. 89
Z .................................................................................................................................................. 89
A ..................................................................................................................................................... 89
Syntax ..................................................................................................................................... 89
Properties ............................................................................................................................... 89
Settings ................................................................................................................................... 90
Remarks ................................................................................................................................. 90
Syntax ..................................................................................................................................... 90
Properties ............................................................................................................................... 90
Remarks ................................................................................................................................. 90
Syntax ..................................................................................................................................... 91
Properties ............................................................................................................................... 91
Remarks ................................................................................................................................. 91
AdvancedGraphics Property....................................................................................................... 91
Syntax ..................................................................................................................................... 91
Properties ............................................................................................................................... 91
Settings ................................................................................................................................... 92
Remarks ................................................................................................................................. 92
viii
iFIX Automation Reference
AlarmHornEnabled Property....................................................................................................... 92
Syntax ..................................................................................................................................... 92
Properties ............................................................................................................................... 92
Syntax ..................................................................................................................................... 93
Properties ............................................................................................................................... 93
Syntax ..................................................................................................................................... 93
Properties ............................................................................................................................... 93
Syntax ..................................................................................................................................... 94
Properties ............................................................................................................................... 94
Syntax ..................................................................................................................................... 94
Properties ............................................................................................................................... 94
Settings ................................................................................................................................... 94
Remarks ................................................................................................................................. 95
Syntax ..................................................................................................................................... 95
Properties ............................................................................................................................... 95
Settings ................................................................................................................................... 95
Remarks ................................................................................................................................. 96
Syntax ..................................................................................................................................... 96
Properties ............................................................................................................................... 96
Settings ................................................................................................................................... 96
ix
iFIX Automation Reference
Syntax ..................................................................................................................................... 97
Properties ............................................................................................................................... 97
Settings ................................................................................................................................... 97
Syntax ..................................................................................................................................... 97
Properties ............................................................................................................................... 97
Settings ................................................................................................................................... 98
Remarks ................................................................................................................................. 98
Syntax ..................................................................................................................................... 98
Properties ............................................................................................................................... 98
Remarks ................................................................................................................................. 98
Syntax ..................................................................................................................................... 99
Properties ............................................................................................................................... 99
Remarks ................................................................................................................................. 99
Syntax ..................................................................................................................................... 99
Properties ............................................................................................................................... 99
x
iFIX Automation Reference
xi
iFIX Automation Reference
B ................................................................................................................................................... 108
xii
iFIX Automation Reference
xiii
iFIX Automation Reference
xiv
iFIX Automation Reference
xv
iFIX Automation Reference
xvi
iFIX Automation Reference
C ................................................................................................................................................... 128
xvii
iFIX Automation Reference
xviii
iFIX Automation Reference
xix
iFIX Automation Reference
xx
iFIX Automation Reference
xxi
iFIX Automation Reference
D ................................................................................................................................................... 152
xxii
iFIX Automation Reference
xxiii
iFIX Automation Reference
xxiv
iFIX Automation Reference
xxv
iFIX Automation Reference
xxvi
iFIX Automation Reference
xxvii
iFIX Automation Reference
xxviii
iFIX Automation Reference
E ................................................................................................................................................... 179
xxix
iFIX Automation Reference
xxx
iFIX Automation Reference
xxxi
iFIX Automation Reference
xxxii
iFIX Automation Reference
F .................................................................................................................................................... 201
xxxiii
iFIX Automation Reference
xxxiv
iFIX Automation Reference
xxxv
iFIX Automation Reference
xxxvi
iFIX Automation Reference
xxxvii
iFIX Automation Reference
xxxviii
iFIX Automation Reference
xxxix
iFIX Automation Reference
xl
iFIX Automation Reference
xli
iFIX Automation Reference
xlii
iFIX Automation Reference
xliii
iFIX Automation Reference
xliv
iFIX Automation Reference
xlv
iFIX Automation Reference
xlvi
iFIX Automation Reference
xlvii
iFIX Automation Reference
xlviii
iFIX Automation Reference
xlix
iFIX Automation Reference
l
iFIX Automation Reference
li
iFIX Automation Reference
lii
iFIX Automation Reference
liii
iFIX Automation Reference
liv
iFIX Automation Reference
lv
iFIX Automation Reference
lvi
iFIX Automation Reference
lvii
iFIX Automation Reference
lviii
iFIX Automation Reference
lix
iFIX Automation Reference
lx
iFIX Automation Reference
lxi
iFIX Automation Reference
lxii
iFIX Automation Reference
lxiii
iFIX Automation Reference
lxiv
iFIX Automation Reference
lxv
iFIX Automation Reference
lxvi
iFIX Automation Reference
S ................................................................................................................................................... 352
lxvii
iFIX Automation Reference
lxviii
iFIX Automation Reference
lxix
iFIX Automation Reference
lxx
iFIX Automation Reference
lxxi
iFIX Automation Reference
lxxii
iFIX Automation Reference
lxxiii
iFIX Automation Reference
lxxiv
iFIX Automation Reference
lxxv
iFIX Automation Reference
lxxvi
iFIX Automation Reference
lxxvii
iFIX Automation Reference
T ................................................................................................................................................ 403
lxxviii
iFIX Automation Reference
lxxix
iFIX Automation Reference
lxxx
iFIX Automation Reference
lxxxi
iFIX Automation Reference
lxxxii
iFIX Automation Reference
lxxxiii
iFIX Automation Reference
lxxxiv
iFIX Automation Reference
lxxxv
iFIX Automation Reference
lxxxvi
iFIX Automation Reference
lxxxvii
iFIX Automation Reference
lxxxviii
iFIX Automation Reference
lxxxix
iFIX Automation Reference
xc
iFIX Automation Reference
xci
iFIX Automation Reference
A ............................................................................................................................................... 463
B ............................................................................................................................................... 464
C ............................................................................................................................................... 464
D ............................................................................................................................................... 465
E ............................................................................................................................................... 466
F ................................................................................................................................................ 466
L ................................................................................................................................................ 470
O ............................................................................................................................................... 471
P ............................................................................................................................................... 471
Q ............................................................................................................................................... 472
R ............................................................................................................................................... 472
S ............................................................................................................................................... 473
T ................................................................................................................................................ 475
U ............................................................................................................................................... 475
Z ................................................................................................................................................ 476
xcii
iFIX Automation Reference
xciii
iFIX Automation Reference
xciv
iFIX Automation Reference
xcv
iFIX Automation Reference
C ................................................................................................................................................... 493
xcvi
iFIX Automation Reference
xcvii
iFIX Automation Reference
xcviii
iFIX Automation Reference
xcix
iFIX Automation Reference
c
iFIX Automation Reference
ci
iFIX Automation Reference
cii
iFIX Automation Reference
ciii
iFIX Automation Reference
F .................................................................................................................................................... 539
civ
iFIX Automation Reference
cv
iFIX Automation Reference
cvi
iFIX Automation Reference
cvii
iFIX Automation Reference
cviii
iFIX Automation Reference
cix
iFIX Automation Reference
cx
iFIX Automation Reference
cxi
iFIX Automation Reference
cxii
iFIX Automation Reference
cxiii
iFIX Automation Reference
cxiv
iFIX Automation Reference
cxv
iFIX Automation Reference
cxvi
iFIX Automation Reference
cxvii
iFIX Automation Reference
cxviii
iFIX Automation Reference
cxix
iFIX Automation Reference
cxx
iFIX Automation Reference
cxxi
iFIX Automation Reference
cxxii
iFIX Automation Reference
S ................................................................................................................................................... 638
cxxiii
iFIX Automation Reference
cxxiv
iFIX Automation Reference
cxxv
iFIX Automation Reference
cxxvi
iFIX Automation Reference
cxxvii
iFIX Automation Reference
cxxviii
iFIX Automation Reference
cxxix
iFIX Automation Reference
cxxx
iFIX Automation Reference
T .................................................................................................................................................... 676
cxxxi
iFIX Automation Reference
cxxxii
iFIX Automation Reference
cxxxiii
iFIX Automation Reference
C ............................................................................................................................................... 699
D ............................................................................................................................................... 699
cxxxiv
iFIX Automation Reference
K ............................................................................................................................................... 700
L ................................................................................................................................................ 700
O ............................................................................................................................................... 700
cxxxv
iFIX Automation Reference
cxxxvi
iFIX Automation Reference
cxxxvii
iFIX Automation Reference
cxxxviii
iFIX Automation Reference
cxxxix
iFIX Automation Reference
C ............................................................................................................................................... 729
D ............................................................................................................................................... 729
E ............................................................................................................................................... 729
O ............................................................................................................................................... 730
R ............................................................................................................................................... 731
S ............................................................................................................................................... 731
T ................................................................................................................................................ 731
cxl
iFIX Automation Reference
cxli
iFIX Automation Reference
cxlii
iFIX Automation Reference
cxliii
iFIX Automation Reference
cxliv
iFIX Automation Reference
cxlv
iFIX Automation Reference
cxlvi
iFIX Automation Reference
cxlvii
iFIX Automation Reference
A ............................................................................................................................................... 779
B ............................................................................................................................................... 780
C ............................................................................................................................................... 780
D ............................................................................................................................................... 781
E ............................................................................................................................................... 782
F ................................................................................................................................................ 783
G ............................................................................................................................................... 784
H ............................................................................................................................................... 786
L ................................................................................................................................................ 787
O ............................................................................................................................................... 787
R ............................................................................................................................................... 789
S ............................................................................................................................................... 790
T ................................................................................................................................................ 792
U ............................................................................................................................................... 793
A ................................................................................................................................................... 794
cxlviii
iFIX Automation Reference
B ................................................................................................................................................... 799
cxlix
iFIX Automation Reference
C ................................................................................................................................................... 800
cl
iFIX Automation Reference
D ................................................................................................................................................... 811
cli
iFIX Automation Reference
E ................................................................................................................................................... 818
F .................................................................................................................................................... 825
clii
iFIX Automation Reference
G ................................................................................................................................................... 829
cliii
iFIX Automation Reference
cliv
iFIX Automation Reference
H ................................................................................................................................................... 855
clv
iFIX Automation Reference
L .................................................................................................................................................... 864
O ................................................................................................................................................... 869
clvi
iFIX Automation Reference
R ................................................................................................................................................... 880
clvii
iFIX Automation Reference
clviii
iFIX Automation Reference
S ................................................................................................................................................... 891
clix
iFIX Automation Reference
clx
iFIX Automation Reference
T .................................................................................................................................................... 907
U ................................................................................................................................................... 908
clxi
iFIX Automation Reference
V-Z ................................................................................................................................................919
Index .............................................................................................................................................925
clxii
About this Guide
The iFIX Automation Reference is intended for integrators and programmers who want to develop
applications that access and manipulate information within the Proficy iFIX environment through a set
of automation interfaces. This help file assumes the reader is proficient in the Microsoft® Visual
Basic® programming language.
The following sections provide more details on how to use the objects, properties, methods, events,
subroutines, and database functions associated with iFIX:
Quick Reference
Object Summary
Property Summary
Method Summary
Event Summary
Examples
Subroutine Summary
Database Functions Summary
A
AboutBox Method
AckAlarm Method
AckAlarmPage Method
AckAlarmPageEx Method
AckAllAlarms Method
AcknowledgeAllAlarms Subroutine
1
iFIX Automation Reference
AcknowledgeAnAlarm Subroutine
Activated Event
ActivateWorkspaceUI Method
Active Property
ActiveDocument Property
ActiveWindow Property
Add Method
AddDataSet Method
AddEventHandler Method
AddImage Method
AddKeyMacro Method
AddLegendItem Method
AddLevel Method
AddObject Method
AddPen Method
AddPictureToStartupList Method
AddPoint Method
AddProcedure Method
AdvancedGraphics Property
AfterKillFocus Event
AlarmAck Event
AlarmAcknowledged Event
AlarmHornEnabled Property
AlarmHornEnabled Subroutine
AlarmHornEnabledToggle Subroutine
AlarmHornSilence Subroutine
2
iFIX Automation Reference
AlarmListChanged Event
AlarmRefreshInterval Property
AlarmUserdefField1 Property
AlarmUserdefField2 Property
Align Method
Alignment Property
AllowsDrillDown Property
AllowTimeAxisReset Property
AllowValueAxisReset Property
AlwaysOnTop Property
AnalogError Property
AnalogErrorTag Property
AngleUnits Property
Application Object
Application Property
ApplyProperties Property
ApplyProperty Method
Arc Object
AssignedID Property
Author Property
Autofetch Property
AutoMinMaxPaddingX Property
AutoMinMaxPaddingY Property
AutoScaleDisplayLimits Method
AutoSize Property
AutoUpdateRate Property
AverageDataValue Property
3
iFIX Automation Reference
AxisColor Property
AxisLength Property
AxisTitle Property
B
BackDropBackgroundColor Property
BackDropBackgroundStyle Property
BackDropBlend Property
BackDropBorderColor Property
BackDropBorderStyle Property
BackDropColor Property
BackDropFadeColor Property
BackDropFadeType Property
BackDropGradAngle Property
BackDropStyle Property
BackDropVisible Property
BackgroundColor Property
BackgroundEdgeColor Property
BackgroundEdgeStyle Property
BackgroundEdgeWidth Property
BackgroundStyle Property
BackupSecPath Property
BarVal Property
BasePath Property
Bitmap Object
BitmapGradientMode Property
Blend Property
4
iFIX Automation Reference
BlinkEnabled Property
BlinkRate Property
BorderTypes Property
Bottom Property
BottomCenter Property
BottomLeft Property
BottomRight Property
BottomVisibleRow Property
BoundRect Property
BringToFront Method
BuildObject Method
ButtonState Property
ButtonStyle Property
C
CacheEnabled
Cancel Property
CanConstruct Method
Caption Property
Category Property
Center Property
CenterOfRotation Property
CenterPoint Property
CenterX Property
CenterY Property
CharactersPerLine Property
Chart Object
5
iFIX Automation Reference
ChartFontSize Property
CheckAccountExpiration Method
CheckForAlarmListChanged Property
CheckforDuplicateKeyMacros Method
CheckForNewAlarms Property
CheckForSeverityIncrease Property
CheckSecurityEnabled Method
CheckSyntax Method
CheckUserApplicationAccess
CheckUserAreaAccess Method
Chord Object
ClassName Property
Clear Method
ClearUndo Method
Click Event
Close Event
Close Method
CloseDigitalPoint Subroutine
ClosePicture Subroutine
Color Property
ColorButton Object
ColorChanged Event
ColorTable Property
CombinationKey Property
Comments Property
Commit Method
CompletionStatus Property
6
iFIX Automation Reference
CompletionStatusTag Property
ConfirmDataEntry Property
Connect Method
ConnectDataSet Method
ConnectedPropertyCount Method
ConnectionFailed Property
ConstantLine Property
Construct Method
ContainedObjects Property
ContainedSelections Property
ContextID Property
ControlContainer Object
ControlOrderIndex Property
Convert_A_Group_To_A_Dynamo_By_Name Method
Convert_A_Group_To_A_Dynamo_By_Ref Method
ConvertPipe Method
ConvertSecurityAreaNameToNumber Method
ConvertSecurityAreaNumberToName Method
Copy Method
CopyAsBitmap Method
CopytoClipboard Method
Count Property
Coupled_Activate_Workspace_UI Method
Coupled_DeActivate_Workspace_UI Method
CreateDynamoByGrouping Method
CreateFromDialog Method
CreateFromProgID Method
7
iFIX Automation Reference
CreateWithMouse Method
CurrentDataSet Property
CurrentDataSource Property
CurrentDate Property
CurrentDateDay Property
CurrentDateMonth Property
CurrentDateYear Property
CurrentImage Property
CurrentPen Property
CurrentPicture Property
CurrentTime Property
CurrentTimeHour Property
CurrentTimeMinute Property
CurrentTimeSecond Property
CurrentValue Property
Cut Method
D
DataChange Event
DataEntry Property
DataItem Object
DataItems Object
DataItems Property
DataLink Object
DataRefreshInterval Property
DataServer Object
DataServers Object
8
iFIX Automation Reference
DataServers Property
DataSetColor Property
DataShadows Property
DaylightSavingTime Property
DaysBeforeNow Property
DaysOfMonth Property
DaysOfWeek Property
DblClick Event
DeActivated Event
DeActivateWorkspaceUI Method
Deadband Property
DecimalDigits Property
Default Property
DefaultDataSystem Property
DefaultExternalDatasourceUpdateRate Property
DefaultOutputValue Property
DefaultServer Property
DefaultView Method
DelAlarm Method
DeleteAllAlarms Method
DeleteAllDataSets Method
DeleteDataSet Method
DeleteImage Method
DeletePen Method
DeletePoint Method
DeleteSelectedObjects Method
DemandFire Method
9
iFIX Automation Reference
Description Property
DeselectObject Method
DeskColor Property
DestroyObject Method
DigitalError Property
DigitalErrorTag Property
DigitsOfPrecision Property
DisableAlarm Subroutine
DisableNonSelectionEvents Method
Disconnect Method
DisableAutoScale Property
DisplayLayer Property
DisplayMilliseconds Property
DisplaysControlPoints Method
DisplayStatusBar Property
DisplayString Property
DisplaySystemTree Property
Document Object
DocumentHeight Property
DocumentPath Property
Documents Property
Documents Object
DocumentWidth Property
DoesPropertyHaveTargets Method
DoExtendLines Method
DoLinesToPolyline Method
Domain Property
10
iFIX Automation Reference
DoMenuCommand Method
DoTrimLines Method
DownImageDisplayed Property
DSDescription Property
DSLegendAvgerageOverRangeColWidth Property
DSLegendCurrentValColWidth Property
DSLegendDescriptionColWidth Property
DSLegendHighLimitColWidth Property
DSLegendHighOverRangeColWidth Property
DSLegendLowLimitColWidth Property
DSLegendLowOverRangeColWidth Property
DSLegendMask Property
DSLegendQualityColWidth Property
DSLegendSourceColWidth Property
DSPosition Property
DumpProperties Method
Duplicate Method
Duration Property
Dynamo Object
Dynamo_Description Property
Dynamo_ID Property
DynamoSet Object
E
eda_add_block Function
eda_delete_block Function
eda_get_pdb_name Function
11
iFIX Automation Reference
eda_reload_databse Function
eda_save_database Function
eda_type_to_index Function
EdgeColor Property
EdgeStyle Property
EdgeWidth Property
Edit Event
EditChange Event
EditPicture Method
EditText Property
ElbowStyle Property
Enable Method
EnableAcknowledgeAll Property
EnableAlarm Subroutine
EnableAlarmAcknowledge Property
EnableAlarmDeletion Property
EnableAsVbaControl Property
EnableColumnQuickSort Property
Enabled Property
EnableEndTime Property
EnableGlobalEndTime Property
EnableGlobalScrollPercentage Property
EnableRightMouseClick Property
EnableRunTimeConfiguration Property
EnableTooltips Property
EndAngle Property
EndCap Property
12
iFIX Automation Reference
EndPoint Property
EndTime Property
EndX Property
EndY Property
Enumerate_All_Dynamos Method
Enumerate_All_Groups Method
Enumerate_Top_Level_Dynamos Method
Enumerate_Top_Level_Groups Method
ErrorMode Property
ESignature Object
Event Object
EventParameter Property
EventType Property
ExactMatch Property
ExchangePenPositions Method
Execute Method
ExecuteKeyMacro Method
ExportData Method
ExportImage Method
ExportLanguageFile Method
ExpressionEditor Object
ExtendMaxSpace Property
ExtendType Property
F
FadeColor Property
FadeType Property
13
iFIX Automation Reference
FailedSource Property
FetchDataSetLimits Property
FetchLimits Subroutine
FetchPenLimits Property
FileName Property
FillStyle Property
FilterString Property
FindAndReplaceDialog Method
FindDataSource Function
FindInString Method
FindLocalObject Subroutine
FindObject Method
FindReplace Object
FindReplaceInObject Method
FindReplaceInString Method
FitDocumentToWindow Method
FitWindowToDocument Method
FixApp Object
FixCheckApplicationAccess Method
FixCheckApplicationAccessQuiet Method
FixCheckAreaAccess Method
FixCheckAreaAccessQuiet Method
FixCheckSecurityEnabled Method
FixDataSystem Object
FixedDate Property
FixedTime Property
FixFloatPoint Object
14
iFIX Automation Reference
FixGeometryHelper Object
FixGetManualAlmDeleteEnabled Method
FixGetMyName
FixGetUserInfo Method
FixKeyMacro Object
FixLogin Method
FixLogout Method
FixPath Property
Font Property
FontName Property
FontProperties Method
FontSize Property
FontStyle Property
ForceVerticalPoints Property
ForegroundColor Property
ForegroundEdgeColor Property
ForegroundEdgeStyle Property
ForegroundEdgeWidth Property
Format Object
Format Property
FormatDataType Property
FullNameProperty
FullScreen Property
FullView Method
FullyQualifiedName Property
15
iFIX Automation Reference
G
GeneratePicture Function
Get_Last_Prompt_Value Method
Get_Last_Result_String Method
GetAllConnections Subroutine
GetBoundRect Method
GetChartEndTime Method
GetChartStartTime Method
GetColHeadings Method
GetColumnInfo Method
GetConnectionInformation Method
GetConnectionParameters Method
GetContinuousUser Method
GetCurrentDataSet Method
GetCurrentValue Method
GetCurrentValueWithQuality Method
GetDataSetByPosition Method
GetDecimalSeparator Subroutine
GetDeviceRect Method
GetDuration Method
GetErrorString Method
GetEventHandlerIndex Method
GetFormDynamoColor Subroutine
GetFormNumeric Subroutine
GetFormPushbutton Subroutine
GetFormRamp Subroutine
GetFormSlider Subroutine
16
iFIX Automation Reference
GetFullName Method
GetGlobalDuration Method
GetGlobalHistoricalUpdateRate
GetIndirectionInfo Method
GetInterval Method
GetKeyMacro Method
GetKeyMacroIndex Method
GetLevel Method
GetLocaleInfoA Subroutine
GetNumberOfDataSets Method
GetObjectInfo Method
GetPenDataArray Method
GetPenDataArrayEx Method
GetPointAt Method
GetPriorityColor Method
GetProcedureIndex Method
GetProperty Method
GetPropertyAttributes Method
GetPropertyTargets Method
GetRibbonView Method
GetSelectedAlmExt Method
GetSelectedNodeTag Method
GetSelectedRow Method
GetSelectedUserDefFields
GetSignature Method
GetSignatureAndWriteValue Method
GetStatusColor Method
17
iFIX Automation Reference
GetStatusFont Method
GetTimeBeforeNow Method
GetTimeCursorInfo Method
GetUserDefaultLCID Subroutine
GetUserID Method
GetWindowLocation Method
GlobalDuration Property
GlobalEndTime Property
GlobalFastScrollOption Property
GlobalFastScrollRate Property
GlobalHistoricalUpdateRate Property
GlobalMovingEndTime Property
GlobalMovingStartTime Property
GlobalOutputToggle Property
GlobalScrollBackFast Method
GlobalScrollBackSlow Method
GlobalScrollForwardFast Method
GlobalScrollForwardSlow Method
GlobalSlowScrollOption Property
GlobalSlowScrollRate Property
GlobalStartTime Property
GlobalTimerApply Method
GlobalTimerPause Property
GlobalToggle Property
Gradient Property
GradientAngle Property
GraphBackColor Property
18
iFIX Automation Reference
GraphForeColor Property
GraphPlusTable Property
GraphPlusTableMenu Property
GridEnabled Property
GridInFront Property
GridInterval Property
GridLinesToShow Property
GridStyle Property
GridWidth Property
Group Object
Group Method
Groups Object
Groups Property
H
HandleError Subroutine
Height Property
HelpFile Property
HelpPath Property
HideMathFunctionsButton Property
HiDisplay Property
HighestDataValue Property
HighlightedDatasource Property
HighlightEnabled Property
HiInValue Property
HiLimit Property
19
iFIX Automation Reference
HiLoDisplay Method
HiOutValue Property
HistDatalink Object
HistMode Property
HistogramChart Object
HistoricalDataSet Object
HistoricalSampleType Property
HistUpdateRate Property
HorizontalFillDirection Property
HorizontalFillPercentage Property
HorizontalGridColor Property
HorizontalGridStyle Property
HorizontalPosition Property
HorizontalScaleDirection Property
HorizontalScalePercentage Property
I-J
ImageCountProperty
ImportToolbar Method
IncludeDataLabels Property
Index Property
Initialize Event
Initialize Method
InitializeConfigure Event
InitializeList Method
InitialValue Property
InputValue Property
20
iFIX Automation Reference
InsertPoint Method
InteractiveExport Method
Interval Property
IntervalMilliseconds Property
IsColorSelectionVisible Method
IsConnected Method
IsDirty Property
IsEmpty Method
IsInterpolated Property
IsKeyMacroDefined Method
IsModifiable Property
IsNodeSignEnabled Method
IsSelectable Property
IsSelected Property
IsSignatureRequired Method
IsSignatureRequiredForList Method
IsUserFxg Subroutine
Item Method
Item Property
Justification Property
K
Keycode Property
KeyDown Event
KeyUp Event
21
iFIX Automation Reference
L
LabelBold Property
LabelColor Property
LabelFont Property
LabelItalic Property
LabelUnderline Property
LanguageDesired Property
Layer Property
LCL Property
Left Property
LeftCenter Property
Legend Object
Legend Property
LegendAvgOver Property
LegendDesc Property
LegendHeadingLine Property
LegendHigh Property
LegendHighOver Property
LegendInterval Property
LegendItemColor Property
LegendLow Property
LegendLowOver Property
LegendMode Property
LegendTag Property
LegendUnits Property
LegendUser1 Property
LegendUser10 Property
22
iFIX Automation Reference
LegendUser2 Property
LegendUser3 Property
LegendUser4 Property
LegendUser5 Property
LegendUser6 Property
LegendUser7 Property
LegendUser8 Property
LegendUser9 Property
LegendValue Property
Line Object
Linear Object
Linear Property
LineConnector Object
Lines Object
Lines Property
LinesofCode Property
ListEvents Method
ListMethods Method
ListProperties Method
ListWindowsGroupNames Method
LMouseClick Event
Load_TS_List Method
LoadedTagGroup Event
LoadImage Method
LoadTagGroupFile Method
LocateObject Subroutine
LockStartTime Property
23
iFIX Automation Reference
LoDisplay Property
LogicalToPercentage Method
LogicalToUserFormPoint Method
LogIn Subroutine
LoginGroup Property
LoginTimeout Property
LoginUserFullName Property
LoginUserName Property
LoInValue Property
LoLimit Property
Lookup Object
LoOutValue Property
LowestDataValue Property
LWL Property
M
MainTitle Property
MainTitleBold Property
MainTitleFont Property
MainTitleItalic Property
MainTitleUnderline Property
MakeLinesHorizontal Method
MakeLinesVertical Method
MakeSameSize Method
ManualMaxX Property
ManualMaxY Property
ManualMinX Property
24
iFIX Automation Reference
ManualMinY Property
ManualScaleControlX Property
ManualScaleControlY Property
MapMode Property
MarkDataPoints Property
MarkerChar Property
MarkerStyle Property
Master Property
Max_Dynamo_Desc_Length Property
MaxCharactersPerLine Property
MaxLines Property
MaxPts Property
Modify Method
ModifyColumnLength Method
MonoDeskColor Property
MonoGraphBackColor Property
MonoGraphForeColor Property
MonoShadowColor Property
MonoTableBackColor Property
MonoTableForeColor Property
MonoTextColor Property
MouseDown Event
MouseMove Event
MouseUp Event
MouseUpOffObject Event
Move Method
MultipleEGU Property
25
iFIX Automation Reference
MultipleTimes Property
MyNodeName Property
N
Name Property
NewAlarm Event
Next Property
NlsGetText Function
NlsPath Property
NoSaveOnClose Property
NumberOfCharacters Property
NumberOfHorizontalGridLines Property
NumberOfItems Property
NumberOfLines Property
NumberOfPoints Property
NumberOfTargets Property
NumberOfVerticalGridLines Property
NumHGridLines Proeprty
NumLabels Property
NumPointsToGraph Property
NumPts Property
NumRandomSubsets Property
NumScrollingSubsets Property
NumTicks Property
NumVGridLines Property
26
iFIX Automation Reference
O
Object Property
OffScan Subroutine
OnChange Event
OnChartFull Event
OnChartRefresh Event
OnFalse Event
OnPenSelect Event
OnScan Subroutine
OnTimeOut Event
OnTrue Event
OpcAccessPath Property
OpcDataSource Property
OpcProgID Property
OpcServerMachineName Property
Open Method
Open_QT_Pic Method
Open_QT_Pic_Ex Method
Open_TCP_Pic Method
Open_TCP_Pic_Ex Method
Open_TS_Pic Method
Open_TS_Pic_Ex Method
Open_TS_Pic_Type Method
Open_TS_Pic_Type_Ex Method
OpenDigitalPoint Subroutine
OpenPicture Subroutine
OpenTGDPicture Subroutine
27
iFIX Automation Reference
OriginalScreenHeight Property
OriginalScreenWidth Property
OriginX Property
OriginY Property
OutputValue Property
Oval Object
Owner Property
P
Page Property
Parent Property
ParseConnectionSource Method
Paste Method
PasteFromClipboard Method
PasteSpecial Method
Path Property
Pause Method
PauseAlarmRead Method
PauseIndicatorBlink Property
PauseIndicatorColor Property
PauseWithNewAlarmIndicatorBlink Property
PauseWithNewAlarmIndicatorColor Property
Pen Object
PenDescription Property
PenLineColor Property
PenLineStyle Property
PenLineWidth Property
28
iFIX Automation Reference
PenNum Property
Pens Property
PenType Property
PercentageToLogical Method
PercentageToPixel Method
Picture Object
PictureAlias Subroutine
PictureDefaultAlwaysOnTop Property
PictureDefaultBackColor Property
PictureDefaultHeight Property
PictureDefaultResizable Property
PictureDefaultRuntimeVisible Property
PictureDefaultSystemMenu Property
PictureDefaultTitlebar Property
PictureDefaultWidth Property
PictureHeight Property
PictureName Property
PicturePath Property
PictureWidth Property
Pie Object
PieType Property
Pipe Object
PipeConnector Object
PixelToPercentage Method
PlotOnChartRefresh Property
PlottingMethod Property
PointType Property
29
iFIX Automation Reference
Polygon Object
Polyline Object
Previous Property
PrimarySecPath Property
PrintChart Method
PrintOut Method
PrintReport Subroutine
ProcedureDeclaration Property
ProcedureName Property
Procedures Object
Procedures Property
ProcedureStatement Property
ProgId Property
ProjectPath Property
PromptToChangePassword Method
Property1 Property
Property2 Property
Property3 Property
Property4 Property
Property5 Property
Property6 Property
Property7 Property
Property8 Property
Property9 Property
Property10 Property
30
iFIX Automation Reference
Q
Quality Property
QueueEvents Property
QuickAdd Subroutine
QuickStyle Property
Quit Method
R
Radius Property
RampValue Subroutine
RandomSubsetsToGraph Property
RawFormat Property
Read Method
ReadValue Subroutine
RealTimeDataSet Object
RealTimeSPCDataSet Object
RecalculateViewport Property
Rectangle Object
Refresh Method
RefreshChartData Method
RefreshRate Property
RegCloseKey Subroutine
RegOpenKeyEx Subroutine
Remove Method
RemoveAll Method
RemoveAllLevels Method
RemoveItem Method
31
iFIX Automation Reference
RemoveKeyMacro Method
RemoveLegendItem Method
RemoveLevel Method
RemoveNonWindowsUsers Property
RemoveObject Method
RemovePictureFromStartupList Method
Replace_QT_Pic Method
Replace_TCP_Pic Method
Replace_TS_Pic Method
Replace_TS_Pic_Type Method
ReplaceDocument Method
ReplaceInString Method
ReplacePicture Subroutine
ReplaceTGDPicture Subroutine
ResetChartData Method
ResetObjectStats Method
ResetPercentage Property
ResetStats Method
ResetZoom Method
Resizable Property
ResolveSourceName Property
ResolveTagGroupFile Method
Resume Method
ResumeAlarmRead Method
RetrieveDefinition Method
RetrieveTagGroupVariables Method
Revision Property
32
iFIX Automation Reference
RevisionNumberProperty
Right Property
RightAngleLineConnector Object
RightCenter Property
RMouseClick Event
Rotate Method
RotationAngle Property
RoundnessX Property
RoundnessY Property
RoundRectangle Object
RunIndicatorBlink Property
RunIndicatorColor Property
RunObject Method
RuntimeVisible Property
S
Save Method
Save_TS_List Method
SaveAsSVG Method
Saved Property
SaveThumbnail Property
SaveToHistoryList Method
ScalesWidth Property
SchedulePath Property
Scheduler Object
ScreenHeight Property
ScreenWidth Property
33
iFIX Automation Reference
ScriptLine Object
ScriptProcedure Object
ScriptSource Object
ScrollBack Method
ScrollDirection Property
ScrollForward Method
ScrollGrid Property
ScrollItems Property
ScrollPercentage Property
ScrollTimeBack Method
ScrollTimeForward Method
SecondaryImageDisplayed Property
SecurityArea Property
SecuritySynchronizer Object
Select Method
SelectAlarmRow Method
SelectAll Method
SelectedDatasource Property
SelectedFieldName Property
SelectedNodeName Property
SelectedShapes Property
SelectedTagName Property
SelectionChanged Event
SelectionTimeout Property
SelectObject Method
SendAlarmMessages Property
SendOperatorMessage Method
34
iFIX Automation Reference
SendSignedOperatorMessage Method
SendToBack Method
SetAuto Subroutine
SetContinuousUser Method
SetCurrentValue Method
SetDispatch Method
SetDispid Method
SetDuration Method
SetFocusToComboBox Method
SetGlobalDuration Method
SetGlobalEndTimeToCurrent Method
SetGlobalHistoricalUpdateRate Method
SetIndirectionInfo Method
SetInterval Method
SetKeyCombination Method
SetLegendMask Method
SetManual Subroutine
SetNumericFormat Method
SetPenDataArray Method
SetPointAt Method
SetPriorityColor Method
SetProperty Method
SetScriptWindow Method
SetSource Method
SetStatusColor Method
SetStatusFont Method
SetStringFormat Method
35
iFIX Automation Reference
SetTabSelection Method
SetTimeBeforeNow Method
SetTimeCursorTime Method
SetWindowLocation Method
SeverityIncreased Event
ShadowColor Property
SharedTableName Property
ShellExecute Subroutine
ShowAnimations Method
ShowAxis Property
ShowBrowseDialog Method
ShowColorBox Method
ShowColorSelection Method
ShowCustomPages Method
ShowDatabaseTab Property
ShowDataServersTab Property
ShowDate Property
ShowDSLegend Property
ShowGaps Property
ShowGlobalsTab Property
ShowGridLines Property
ShowHeaders Property
ShowHistoricalTab Property
ShowHorizontalGrid Property
ShowLegend Property
ShowLine Property
ShowPicturesTab Property
36
iFIX Automation Reference
ShowPipePreviewDialog Method
ShowRowNumbers Property
ShowScrollBars Property
ShowStatusBar Property
ShowTaskWizard Method
ShowTimeAxis Property
ShowTimeAxisTitle Property
ShowTimeCursor Property
ShowTimeCursorToolTips Property
ShowTimeStamp Property
ShowTitle Property
ShowValueAxis Property
ShowValueAxisTitle Property
ShowVBAProcedure Method
ShowVerticalGrid Property
ShowVisualBasicEditor Method
SilenceAlarmHorn Method
SmoothingMode Property
SnapObjectsToGrid Method
SnapToGrid Property
SortColumnName Property
SortOrderAscending Property
Source Property
Sources Object
Sources Property
SourceValidated Property
SpaceEvenly Method
37
iFIX Automation Reference
SPCBarChart Object
SPCChartType Property
SPCInterval Property
SPCType Property
StartAngle Property
StartCap Property
StartDateMode Property
StartDateType Property
StartEvent Method
StartPoint Property
StartTime Property
StartTimeMode Property
StartTimer Method
StartTimeType Property
StartX Property
StartY Property
Status Property
StatusBar Property
StatusFontSize Property
SteppedTrend Property
StickToCursor Method
StopEvent Method
StopTimer Method
Stretch Method
StrikeThrough Property
SubTitle Property
SubTitleBold Property
38
iFIX Automation Reference
SubTitleFont Property
SubTitleItalic Property
SubTitleUnderline Property
SwitchLanguage Method
SwitchMode Method
SynchronizeSecurity Method
System Object
System Property
SystemMenu Property
T
TableBackColor Property
TableFont Property
TableForeColor Property
TagGroupSubstitution Method
TagGroupValue Method
Text Object
TextColor Property
Thickness Property
ThicknessType Property
TimeAxis Object
TimeAxis Property
TimeAxisNumLabels Property
TimeAxisNumTicks Property
TimeAxisTitle Property
TimeBeforeNow Property
39
iFIX Automation Reference
TimeCursorColor Property
TimeCursorPos Property
TimeCursorTooltipColor Property
Timeout Property
Timer Object
TimerEnabled Property
Timestamp Property
TimeZoneBiasExplicit Property
TimeZoneBiasRelative Property
Titlebar Property
ToggleDigitalPoint Subroutine
ToggleManual Subroutine
ToggleRate Property
ToggleScan Subroutine
ToggleSource Property
Tolerance Property
ToolbarManager Object
ToolbarManager Property
ToolbarPath Property
Top Property
TopCenter Property
TopLeft Property
TopRight Property
TopVisibleRow Property
TotalFilteredAlarms Property
TranslateOnOpen Property
Transparency Property
40
iFIX Automation Reference
Transparent Property
TransparentColor Property
TreatSinglePointsAsLines Property
TriggerType Property
TrimMaxLength Property
TrimType Property
Type Property
U
UCL Property
UIActivate Method
UIDeactivate Event
UIDeActivate Method
UnacknowledgedAlarmColor Property
Underline Property
Undo Method
UndoTransaction
UndoZoom Method
UnGroup Method
UniformScale Property
Units Property
UnloadTagGroupFile Method
Update_A_Dynamo_By_Name Method
Update_A_Dynamo_By_Name2 Method
Update_A_Dynamo_By_Ref Method
Update_A_Dynamo_By_Ref2 Method
UpdateBackgroundObject Method
41
iFIX Automation Reference
UpdateConnectionParameters Method
UpdateDefinition Method
UpdateOnPropChange Property
UpdateRate Property
UseDelta Property
UseDomainSecurity Property
UseLocalSecurity Property
UseMarker Property
UserDef1ColumnName Property
UserDef2ColumnName Property
UserFormPointToLogical Method
UserGlobals Object
UserPreferences Object
UserPreferences Property
UseUnacknowledgedAlarmColor Property
UWL Property
V
ValidateSignature Method
ValidateSignatureAndWriteValue Method
ValidateSource Method
Value Property
ValueAxis Object
ValueAxis Property
ValueAxisNumLabels Property
ValueAxisNumTicks Property
ValueAxisTitle Property
42
iFIX Automation Reference
ValueTimeFromXY Method
Variable Object
VariableType Property
Version Property
VerticalFillDirection Property
VerticalFillPercentage Property
VerticalGridColor Property
VerticalGridStyle Property
VerticalPosition Property
VerticalScaleDirection Property
VerticalScalePercentage Property
ViewingStyle Property
ViewportHeight Property
ViewportLeft Property
ViewportTop Property
ViewportWidth Property
Visible Property
VisibleUnacknowledgedAlarms Property
W
WhileFalse Event
WhileTrue Event
WholeDigits Property
Width Property
Window Object
WindowHeightPercentage Property
WindowLeftPercentage Property
43
iFIX Automation Reference
WindowName Property
WindowState Property
WindowTopPercentage Property
WindowWidthPercentage Property
WizardName Property
WorkSpaceStartupMode Property
Write Method
WritePictureFormatType Property
WritePictureOutLocation Property
WritePictureScalePercentage Property
WritePictureToImageFile Method
WriteValue Subroutine
X-Y
X Property
XAxisDatasetPosition Property
XAxisLabel Property
XAxisScaleControl Property
XAxisType Property
XYChart Object
XYFromValueTime Method
XYHitTest Method
Y Property
YAxisLabel Property
YAxisLongTicks Property
YAxisScaleControl Property
44
iFIX Automation Reference
Z
Zoom Method
Zoom Property
ZoomDirection Property
ZoomType Property
Objects
Object Summary
The following list contains the iFIX objects that are available to the Automation Interface. For
information on non iFIX objects, refer to the appropriate help system.
A
Alarm Summary
Application
Arc
B
Bitmap
C
Chart
Chord
Color Button
ControlContainer
45
iFIX Automation Reference
D
DataItem
DataItems
DataLink
DataServer
DataServers
Document
Documents
Dynamo
DynamoSet
E
ESignature
Event
ExpressionEditor
F
FindReplace
FixApp Object
FixDataSystem
FixFloatPoint
FixGeometryHelper
FixKeyMacroCollection
FixKeyMacro
Format
46
IFIX Automation Reference
G-K
Group
Group (DataSystem)
Groups
HistDatalink
HistogramChart
HistoricalDataSet
L-N
Legend
Line
Linear
LineChart
LineConnector
Lines
Lookup
O
Oval
P-Q
Pen
Picture
Pie
Pipe
PipeConnector
Polygon
47
iFIX Automation Reference
Polyline
Procedures
R
RealTimeDataSet
RealTimeSPCDataSet
Rectangle
RightAngleLineConnector
RoundRectangle
S
Scheduler
ScriptLine
ScriptProcedure
ScriptSource
SecuritySynchronizer
Sources
SPCBarChart
System
T-U
Tag Group
Text
TimeAxis
Timer
ToolbarManager
UserGlobals
48
IFIX Automation Reference
UserPreferences
V
ValueAxis
Variable
W-Z
Window
XYChart Object
A-C
You can also color-code alarms by alarm status and priority with the Alarm Summary object to
provide visual cues to your operators.
The Alarm Summary object is contained by the ControlContainer object and therefore will inherit
the Properties and Methods of the ControlContainer object.
For more information on the Alarm Summary object, see the "Understanding the Alarm Summary
Object" chapter in the Implementing Alarms and Messages manual.
Application Object
The Application object represents the iFIX WorkSpace application. It includes the properties and
methods that allow you to access and return top-level objects. For example, the ActiveDocument
property returns a Document object.
If you run schedules in the background, you need to be aware that there are actually two different
Application objects - one for the WorkSpace and one for FixBackgroundServer. The
FixBackgroundServer application loads and runs Scheduler documents. It will fire VBA scripts as
the WorkSpace does. However, the FixBackgroundServer application does not compete with the
single VBA thread of the WorkSpace. For more information on the FixBackgroundServer
application, see the "Scheduler" chapter in the Mastering iFIX manual.
49
iFIX Automation Reference
The main difference between the WorkSpace Application object and the FixBackgroundServer
Application object is that the FixBackgroundServer Application object does not provide access to
any windowing or display properties since FixBackgroundServer only runs in the background. The
properties that are available in FixBackgroundServer are:
• Documents
• FixPath
• FullName
• Name
• Object
• Owner
• Parent
• Path
• System
• Version
• BuildObject
• ShowVisualBasicEditor
Arc Object
The Arc object is an iFIX shape that can be added to a Picture, DynamoSet or UserGlobals object.
Bitmap Object
The Bitmap object is an iFIX shape used to store and display bitmap images that can be added to a
Picture, DynamoSet or UserGlobals object.
Chart Object
The Chart object holds information describing the real-time or historical data that is being collected
and how the data should be displayed.
50
IFIX Automation Reference
Chord Object
The Chord object is an iFIX shape that can be added to a Picture, DynamoSet or UserGlobals object.
ColorButton Object
The ColorButton object is an owner drawn push button ocx. It is associated with the color selection
dialog, which pops up when the user clicks on the button. The dialog allows the user to select a color
from a list of colors and display it on the button face.
The color of the ColorButton can be associated with a color property of an object. By passing on the
object’s dispatch pointer and the dispid of the property to the ColorButton, the user can let the
ColorButton update the property whenever the color is changed.
The ColorButton object is contained by the ControlContainer object and therefore will inherit the
Properties and Methods of the ControlContainer object.
ControlContainer Object
The ControlContainer object is a graphical shape used to support the embedding of third party
ActiveX controls and insertable OLE objects within a picture.
NOTE: If an ActiveX control has the same property or method name as a ControlContainer object
property or method, you will only be able to access the ControlContainer's property or method in VB.
This occurs because COM does not allow duplicates.
D-F
DataItem Object
The DataItem object is a member of the DataItems collection. The name of the DataItem has to be a
data source that exists somewhere in the iFIX data system. Operations available on the DataItem are
Read and Write. A Read operation will read the current value, timestamp, and quality from the data
system and store them in the Value, Timestamp, and Quality variables of the DataItem. A Write
operation will write the passed in value to the data system.
DataItems Object
The DataItems object is a user defined collection of DataItem objects. DataItem objects can be
added and removed from this collection. When adding a DataItem, the DataItem must exist within
the iFIX data system or it will not be added to the collection. DataItem names must be unique.
51
iFIX Automation Reference
DataLink Object
The Datalink object is an iFIX shape used to display data that can be added to a Picture, DynamoSet
or UserGlobals object.
DataServer Object
The DataServer object is an individual data server in the DataServers collection. This object contains
information about the data server such as the server name, OPC access path, OPC data source, OPC
prog ID, OPC server machine name, and default server status.
DataServers Object
The DataServers object is a read-only collection of installed data servers in the iFIX data system. This
is the same list of servers that can be viewed in the DataServerInstaller application.
Document Object
The Document object is the storage for the document, represented by the file name. It is a pointer to
the actual document. The type of document varies between Pictures, Schedules, User Globals, Word
Documents, Excel Spreadsheet, etc. Use the Page object to get to the object model of the underlying
type of document. Also be sure to check the Type property of the Document before using the Page
object.
Documents Object
The collection of the open documents in the WorkSpace, including Pictures, Schedules, Word
Documents, and so forth. The collection also includes the User Global Page but does not include
FactoryGlobals.
Dynamo Object
The Dynamo object is a type of object that stores re-useable work for the user. The Dynamo Object
behaves the same way as a group object, with added functionality. You can make changes to a Master
Dynamo, and update the Dynamo instances, while maintaining animation information within the
Instances.
DynamoSet Object
The DynamoSet object is a type of document (page) that stores re-useable work for the user.
52
IFIX Automation Reference
ESignature Object
The ESignature object is a COM object that implements the IESignature interface. The ESignature
object supports electronic signatures for FIX32 data sources, non-FIX32 data sources, and other
actions, such as recipe download. You can create a script or another application that prompts the
operator to enter an electronic signature using the ESignature object. This allows you to:
• Sign for other actions when writing to multiple data points, such as recipe download.
• The object can be instantiated by both VB/VBA and C/C++ code. You can call methods in the
IESignature interface to:
NOTE: Do not use scripts that use signing from the Scheduler. Signing does not work well from the
background task. This is also an important consideration when implementing scripts that call global
subroutines.
ESignature methods support the following actions for all data sources:
• Initialize and display the Electronic Signature dialog box, validate signatures, and perform
security checks based on information and settings passed in.
• Validate signatures and perform security checks for specific users based on user names,
passwords, and settings passed in, without using the Electronic Signature dialog box.
• Send a signed operator message to the audit trail, logging the signature and action.
ESignature methods support the following actions for FIX32 data sources:
• Read electronic signature settings associated with the tag directly from the process database.
• Display the Electronic Signature dialog box based on those settings, validate the signature and
perform security checks, write the value to the database or acknowledge an alarm or page of
alarms, and send the signed operator message to the audit trail.
• Validate signatures and perform security checks for specific users based on user names,
passwords, and settings passed in, without using the Electronic Signature dialog box, and then
write the value to the database or acknowledge an alarm or page of alarms and send the signed
operator message to the audit trail.
NOTE: In order to use the enumerations listed for the ESignature Object methods, you must
reference the Electronic Signature type library in VBA.
53
iFIX Automation Reference
Event Object
The Event object contains information about event-based events that are monitored by the Scheduler.
The Event object will fire a VBA event based on the evaluation of the data source. It can be
configured to fire when the value is OnTrue, OnFalse, WhileTrue, WhileFalse, or OnChange.
For more information on the Event object, see the "Scheduler" chapter in the Mastering iFIX manual.
ExpressionEditor Object
The ExpressionEditor object is an OCX that is a helpful tool in building an expression or data source.
The user can browse database tag, Picture and Global objects and properties, Historical tags, and OPC
data sources. The ExpressionEditor also has mathematical buttons to aid in building complex
expressions.
The ExpressionEditor object is contained by the ControlContainer object and therefore will inherit
the Properties and Methods of the ControlContainer object.
FindReplace Object
The FindReplace object allows you to find and replace string properties that are exposed in the
object's automation interface. FindReplace is capable of operating on a user-specified string, or
analyzing a stipulated object and manipulating all matching items found within that object.
NOTE: The FindReplace object is not accessible from clients that reside in a process outside the iFIX
WorkSpace. Any executables you create using Visual Basic will not support the FindReplace feature.
For more information on the FindReplace object and its capabilities, see the "Managing iFIX Nodes"
chapter of the Understanding iFIX electronic book.
FixApp Object
The FixApp object represents the iFIX WorkSpace application.
FixDataSystem Object
The FixDataSystem object allows users to access data systems in the iFIX architecture through Visual
Basic. Currently, the only object available in this OCX is the FixDataSystem object.
NOTE: The FindReplace object is not accessible from clients that reside in a process outside the iFIX
WorkSpace. Any executables you create using Visual Basic will not support the FindReplace feature.
FixFloatPoint Object
The FixFloatPoint object encapsulates the x and y drawing coordinates used by shapes.
54
IFIX Automation Reference
iPoint.x = 50.5
iPoint.y = 60.1
Polygon1.AddPoint iPoint
NOTE: The user must add a reference to Fix2DGeometry in the References dialog from the Tools
menu within VBE.
FixGeometryHelper Object
The FixGeometryHelper object a helper object that contains helper methods mostly associated with
geometric operations and operations on graphical objects.
FixKeyMacroCollection Object
The FixKeyMacroCollection object is a collection of key macros.
FixKeyMacro Object
The FixKeyMacro object is a key macro.
Format Object
The Format object is an animation object that converts the source data into a string. It contains
information about the connection between the data source and the input property of the format object,
and the output property of the format object and the animated property of the object being animated.
For example, you can use the Format object to animate the caption property of a text object.
G-O
Group Object
The Group object holds information describing a number of objects used as a unit. For example, you
may have two rectangles and two circles that are used to draw a pump. You can group them together so
that they function as a unit allowing you to manipulate all objects in the group as a unit instead of
individually.
55
iFIX Automation Reference
Groups Object
The Groups object is a user defined collection of Group objects. Group objects can be added and
removed from this collection. Group names must be unique.
HistDatalink Object
The HistDatalink object is an iFIX shape used to display historical data (from Proficy Historian) that
can be added to a Picture, DynamoSet or UserGlobals object. If you insert the HistDatalink into a
picture, the Expression Builder only browses historical data that you configured.
IMPORTANT: The refresh rate for the Historical Datalink object is hard-coded at 10 seconds.
HistogramChart Object
The HistogramChart object holds information describing data that is being collected from the
Histogram (HS) database block and how the data should display.
HistoricalDataSet Object
The HistoricalDataSet object is a historical data set type. It describes how the historical data archived
in Proficy Historian should display in a Line Chart.
Legend Object
The Legend object displays certain information or statistics for a Pen in a Chart.
Line Object
The Line object is an iFIX shape that can be added to a Picture, DynamoSet or UserGlobals object.
56
IFIX Automation Reference
Linear Object
The Linear object is an animation object that converts data from one form into another, effectively
performing standard signal conditioning. It contains information about the connection between the data
source and the input property of the linear object, and the output property of the linear object and the
property of the object being animated. For example, you can use the Linear object to animate the tank
level of a picture of a tank by mapping it's high and low EGU to reflect the scale of the picture.
LineChart Object
The LineChart object holds information describing the real-time or historical data that is being
collected and how the data should be displayed.
The Line/MultiLine Chart displays the trend of a variable(s) over time. In this chart, the X-Axis always
represents the time. Both real time and historical data are allowed to co-exist within the same
Enhanced Chart.
LineConnector Object
The LineConnector object is an iFIX connector that is used to join two shapes together.
Lines Object
A collection of the lines of code in one of an object's Procedures. Each line of code is a member of the
Lines collection. The following example sets the string sLine1 to the first line of code in the first Event
member of the Procedures collection for the object Rect1:
sLine1 = Rect1.Procedures.Item(1).Lines.Item(1).ProcedureStatement
Lookup Object
The Lookup object is an animation object that uses the input value to perform either a range
comparison or exact match to a table and provides the output value based on the values in the table. It
contains information about the connection between the data source and the input property of the
lookup object, and the output property of the lookup object and the animated property of the object
being animated. For example, you can use the Lookup object to blink on a new alarm.
Oval Object
The Oval object is an iFIX shape that can be added to a Picture, DynamoSet or UserGlobals object.
57
iFIX Automation Reference
P-S
Pen Object
The Pen object provides the data source connection and plotting functionality for use in a Chart
object.
Picture Object
The Picture object is a type of document (page) that stores graphical displays.
Pie Object
The Pie object is an iFIX shape that can be added to a Picture, DynamoSet or UserGlobals object.
Pipe Object
The Pipe object is an iFIX shape that can be added to a Picture, DynamoSet or UserGlobals object.
PipeConnector Object
The PipeConnector object is an iFIX connector, shaped like a pipe, that is used to join two other
shapes together.
Polygon Object
The Polygon object is an iFIX shape that can be added to a Picture, DynamoSet or UserGlobals
object.
Polyline Object
The Polyline object is an iFIX shape that can be added to a Picture, DynamoSet or UserGlobals
object.
Procedures Object
The Procedures object is a collection of VBA procedures that belong to an object, such as a Picture or
a Rectangle. Individual procedures can be accessed in the collection by using a one-based index.
Standard collection Add and Remove methods are supported as well as special methods to handle
58
IFIX Automation Reference
event procedures.
Example:
RealTimeDataSet Object
The RealTimeDataSet object holds information describing the real-time data set type and how the
data should display in a Line Chart.
RealTimeSPCDataSet Object
The RealTimeSPCDataSet object holds information describing the real-time SPC data set type and
how the data should display in a SPC Bar Chart or Histogram Chart.
Rectangle Object
The Rectangle object is an iFIX shape that can be added to a Picture, DynamoSet or UserGlobals
object.
RightAngleLineConnector Object
The RightAngleLineConnector object is an iFIX connector, formed in a right angle shape, that is
used to join two other shapes together.
RoundRectangle Object
The RoundRectangle object is an iFIX shape that can be added to a Picture, DynamoSet or
UserGlobals object.
Scheduler Object
The Scheduler object contains information about iFIX schedules. The Scheduler is the application that
displays spreadsheets and contains UI to configure Timer and Event objects.
For more information on the Scheduler object, see the "Scheduler" chapter in the Mastering iFIX
manual.
59
iFIX Automation Reference
ScriptLine Object
The ScriptLine object contains a single procedure statement from a script. A ScriptLine object is a
member of the Lines collection contained within a ScriptProcedure object.
ScriptProcedure Object
The ScriptProcedure object contains a collection of ScriptLine objects. A ScriptProcedure object is
a member of the Procedures collection contained within an object which has event scripts.
ScriptSource Object
The ScriptSource object contains a single data source string from a script. A ScriptSource object is a
member of the Sources collection contained within a ScriptProcedure object. An example of a data
source string in a procedure is: Fix32.MyNode.MyTag.F_CV.
SecuritySynchronizer Object
The SecuritySynchronizer object is a way to synchronize iFIX security with your Windows security
configuration.
You can destroy the SecurtiySynchronizer object by setting it equal to Nothing after the
SynchronizeSecurity method is called.
Sources Object
The Sources object is a collection of ScriptSource objects. The Sources object is contained within a
ScriptProcedure object. An example of a data source string in a procedure is:
Fix32.MyNode.MyTag.F_CV.
SPCBarChart Object
The SPCBarChart object holds information describing statistical data that is being collected from a
Statistical Data (SD) database block, and how the data should be displayed.
System Object
The System object contains information about the iFIX system configuration such as file paths and
login data.
60
IFIX Automation Reference
T-Z
Text Object
The Text object is an iFIX shape that can be added to a Picture, DynamoSet or UserGlobals object.
TimeAxis Object
The TimeAxis object contains time and date display information for use in the Chart Object. It also
provides the necessary information so that the Pen objects within the Chart may plot within a given
area
Timer Object
The Timer object contains information about time-based events that are monitored by the Scheduler.
The Timer object will fire the OnTimeOut event based on either a OneShot, Continuous, Daily or
Monthly time interval.
For more information on the Timer object, see the "Scheduler" chapter in the Mastering iFIX manual.
ToolbarManager Object
The ToolbarManager object holds information describing the iFIX toolbars.
UserGlobals Object
UserGlobals is a special picture that contains user-defined variables, color threshold tables and
procedures that are globally available to all pictures. UserGlobals is not visible in the WorkSpace
display area, but is listed as an entry in the system tree. UserGlobals also appears in the Visual Basic
Environment (VBE). System tree right-mouse button menu support is provided to create Variable
objects and color threshold tables, to show the UserGlobals property page and to display VBE.
UserGlobals procedures can be added in VBE.
UserGlobals variables and color threshold tables can be used in connections with other pictures.
As each new picture is created, a reference is automatically added from it to the UserGlobals object,
61
iFIX Automation Reference
allowing its procedures to be accessed. References can be added or deleted manually from within VBE
using the Tools|References… menu command.
UserGlobals procedures and declarations should be placed in standard code modules so that they are
accessible to procedures in other pictures without using the User.<procedure> scoping syntax.
Standard modules can be created from within VBE using the Insert|Module menu command.
If the UserGlobals file is not present in the base picture directory, a new empty one is created when
the WorkSpace is launched.
UserPreferences Object
The UserPreferences object holds information describing the iFIX user preferences.
ValueAxis Object
The ValueAxis object contains high and low display information for use in the Chart Object. It also
provides the necessary information so that the Pen objects within the Chart may plot within a given
area
Modify Method
Move Method
ParseConnectionSource Method
Refresh Method
Select Method
SelectObject Method
SetProperty Method
ShowCustomPages Method
StickToCursor Method
UpdateConnectionParameters Method
ValidateSource Method
Variable Object
The Variable object is used for storing information to be used elsewhere by your application. The
storage must be defined as a particular data type (float, integer, string, etc.) and can be assigned an
initial value.
62
IFIX Automation Reference
Window Object
The Window object contains information about the graphical representation of a document such as its
size and location on the screen. The Window object has properties that allow the user to set the Top
and Left position of a page object.
XYChart Object
The XYChart object holds information describing the data that is being collected and how the data
should display.
The XY Chart displays the relationship between two datasets. In the XY Chart, the data is refreshed
and plotted based on the settings for the X axis.
63
iFIX Automation Reference
Properties
Property Summary
The following list contains the iFIX properties that are available to the Automation Interface. For
information on non iFIX properties, refer to the appropriate help system.
A
Active
ActiveDocument
ActiveWindow
AdvancedGraphics
AlarmHornEnabled
AlarmRefreshInterval
AlarmUserdefField1
AlarmUserdefField2
Alignment
AllowsDrillDown
AllowTimeAxisReset
AllowValueAxisReset
AlwaysOnTop
AnalogError
AnalogErrorTag
AngleUnits
Application
ApplyProperties
64
IFIX Automation Reference
AssignedID
Author
Autofetch
AutoMinMaxPaddingX
AutoMinMaxPaddingY
AutoSize
AutoUpdateRate
AverageDataValue
AxisColor
AxisLength
AxisTitle
B
BackDropBackgroundColor
BackDropBackgroundStyle
BackDropBlend
BackDropBorderColor
BackDropBorderStyle
BackDropColor
BackDropFadeColor
BackDropFadeType
BackDropGradAngle
BackDropStyle
BackDropVisible
BackgroundColor
BackgroundEdgeColor
BackgroundEdgeStyle
65
iFIX Automation Reference
BackgroundEdgeWidth
BackgroundStyle
BackupSecPath
BarVal
BasePath
BitmapGradientMode
Blend
BlinkEnabled
BlinkRate
BorderTypes
Bottom
BottomCenter
BottomLeft
BottomRight
BottomVisibleRow
BoundRect
ButtonState
ButtonStyle
C
CacheEnabled
Cancel
Caption
Category
Center
CenterOfRotation
CenterPoint
66
IFIX Automation Reference
CenterX
CenterY
CharactersPerLine
ChartFontSize
CheckForAlarmListChanged
CheckForNewAlarms
CheckForSeverityIncrease
ClassName
Color
ColorTable
CombinationKey
Comments
CompletionStatus
CompletionStatusTag
ConfirmDataEntry
ConnectionFailed
ConstantLine
ContainedObjects
ContainedSelections
ContextID
ControlOrderIndex
Count
CurrentDataSet
CurrentDataSource
CurrentDate
CurrentDateDay
CurrentDateMonth
67
iFIX Automation Reference
CurrentDateYear
CurrentImage
CurrentPen
CurrentPicture
CurrentTime
CurrentTimeHour
CurrentTimeMinute
CurrentTimeSecond
CurrentValue
D
DataEntry
DataItems
DataRefreshInterval
DataServers
DataSetColor
DataShadows
DaylightSavingTime
DaysBeforeNow
DaysOfMonth
DaysOfWeek
Deadband
DecimalDigits
Default
DefaultDataSystem
DefaultExternalDatasourceUpdateRate
DefaultOutputValue
68
IFIX Automation Reference
DefaultServer
Description
DeskColor
DigitalError
DigitalErrorTag
DigitsOfPrecision
DisableAutoScale
DisplayLayer
DisplayMilliseconds
DisplayStatusBar
DisplayString
DisplaySystemTree
DocumentHeight
DocumentPath
Documents
DocumentWidth
Domain
DownImageDisplayed
DSDescription
DSLegendAvgerageOverRangeColWidth
DSLegendCurrentValColWidth
DSLegendDescriptionColWidth
DSLegendHighLimitColWidth
DSLegendHighOverRangeColWidth
DSLegendLowLimitColWidth
DSLegendLowOverRangeColWidth
DSLegendMask
69
iFIX Automation Reference
DSLegendQualityColWidth
DSLegendSourceColWidth
DSPosition
Duration
Dynamo_Description
Dynamo_ID
E
EdgeColor
EdgeStyle
EdgeWidth
EditText
ElbowStyle
EnableAcknowledgeAll
EnableAlarmAcknowledge
EnableAlarmDeletion
EnableAsVbaControl
EnableColumnQuickSort
Enabled
EnableEndTime
EnableGlobalEndTime
EnableGlobalScrollPercentage
EnableRightMouseClick
EnableRunTimeConfiguration
EnableTooltips
EndAngle
EndCap
70
IFIX Automation Reference
EndPoint
EndTime
EndX
EndY
ErrorMode
EventParameter
EventType
ExactMatch
ExtendMaxSpace
ExtendType
F
FadeColor
FadeType
FailedSource
FetchDataSetLimits
FetchPenLimits
FileName
FillStyle
FilterString
FixedDate
FixedTime
FixPath
Font
FontName
FontSize
FontStyle
71
iFIX Automation Reference
ForceVerticalPoints
ForegroundColor
ForegroundEdgeColor
ForegroundEdgeStyle
ForegroundEdgeWidth
Format
FormatDataType
FullName
FullScreen
FullyQualifedName
G
GlobalDuration
GlobalEndTime
GlobalFastScrollOption
GlobalFastScrollRate
GlobalHistoricalUpdateRate
GlobalMovingEndTime
GlobalMovingStartTime
GlobalOutputToggle
GlobalSlowScrollOption
GlobalSlowScrollRate
GlobalStartTime
GlobalTimeSync
GlobalTimerPause
GlobalToggle
Gradient
72
IFIX Automation Reference
GradientAngle
GraphBackColor
GraphForeColor
GraphPlusTable
GraphPlusTableMenu
GridEnabled
GridInFront
GridInterval
GridLinesToShow
GridStyle
GridWidth
Groups
H
Height
HelpFile
HelpPath
HideMathFunctionsButton
HiDisplay
HighestDataValue
HighlightEnabled
HighlightedDatasource
HiInValue
HiLimit
HiOutValue
HistMode
HistoricalSampleType
73
iFIX Automation Reference
HistUpdateRate
HorizontalFillDirection
HorizontalFillPercentage
HorizontalGridColor
HorizontalGridStyle
HorizontalPosition
HorizontalScaleDirection
HorizontalScalePercentage
I-K
ImageCount
IncludeDataLabels
Index
InitialValue
InputValue
Interval
IntervalMilliseconds
IsDirty
IsInterpolated
IsModifiable
IsSelectable
IsSelected
Item
Justification
Keycode
74
IFIX Automation Reference
L
LabelBold
LabelColor
LabelFont
LabelItalic
LabelUnderline
LanguageDesired
Layer
LCL
Left
LeftCenter
Legend
LegendAvgOver
LegendDesc
LegendHeadingLine
LegendHigh
LegendHighOver
LegendInterval
LegendItemColor
LegendLow
LegendLowOver
LegendMode
LegendTag
LegendUnits
LegendUser1
LegendUser10
LegendUser2
75
iFIX Automation Reference
LegendUser3
LegendUser4
LegendUser5
LegendUser6
LegendUser7
LegendUser8
LegendUser9
LegendValue
Linear
Lines
LinesofCode
LineType
LockStartTime
LoDisplay
LoginGroup
LoginTimeout
LoginUserFullName
LoginUserName
LoInValue
LoLimit
LoOutValue
LowestDataValue
LWL
M
MainTitle
MainTitleBold
76
IFIX Automation Reference
MainTitleFont
MainTitleItalic
MainTitleUnderline
ManualMaxX
ManualMaxY
ManualMinX
ManualMinY
ManualScaleControlX
ManualScaleControlY
MapMode
MarkDataPoints
MarkerChar
MarkerStyle
Master
Max_Dynamo_Desc_Length
MaxCharactersPerLine
MaxLines
MaxPts
MonoDeskColor
MonoGraphBackColor
MonoGraphForeColor
MonoShadowColor
MonoTableBackColor
MonoTableForeColor
MonoTextColor
MultipleEGU
MultipleTimes
77
iFIX Automation Reference
MyNodeName
N
Name
Next
NlsPath
NoSaveOnClose
NumberOfCharacters
NumberOfHorizontalGridLines
NumberOfItems
NumberOfLines
NumberOfPoints
NumberOfTargets
NumberOfVerticalGridLines
NumOfPoints
NumPointsToGraph
NumHGridLines
NumLabels
NumPts
NumRandomSubsets
NumScrollingSubsets
NumTicks
NumVGridLines
O
Object
OpcAccessPath
78
IFIX Automation Reference
OpcDataSource
OpcProgID
OpcServerMachineName
OriginalScreenHeight
OriginalScreenWidth
OriginX
OriginY
OutputValue
Owner
P
Page
Parent
Path
PauseIndicatorBlink
PauseIndicatorColor
PauseWithNewAlarmIndicatorBlink
PauseWithNewAlarmIndicatorColor
PenDescription
PenLineColor
PenLineStyle
PenLineWidth
PenNum
Pens
PenType
PictureDefaultAlwaysOnTop
PictureDefaultBackColor
79
iFIX Automation Reference
PictureDefaultHeight
PictureDefaultResizable
PictureDefaultRuntimeVisible
PictureDefaultSystemMenu
PictureDefaultTitlebar
PictureDefaultWidth
PictureHeight
PictureName
PicturePath
PictureWidth
PieType
PlotOnChartRefresh
PlottingMethod
PointType
Previous
PrimarySecPath
ProcedureDeclaration
ProcedureName
Procedures
ProcedureStatement
ProgId
ProjectPath
Property1
Property10
Property2
Property3
Property4
80
IFIX Automation Reference
Property5
Property6
Property7
Property8
Property9
Q
Quality
QueueEvents
QuickStyle
R
Radius
RawFormat
RecalculateViewport
RefreshRate
RemoveNonWindowsUsers
ResetPercentage
Resizable
ResolveSourceName
Revision
RevisionNumber
Right
RightCenter
RotationAngle
RoundnessX
RoundnessY
81
iFIX Automation Reference
RunIndicatorBlink
RunIndicatorColor
RuntimeVisible
S
Saved
SaveThumbnail
ScalesWidth
SchedulePath
ScreenHeight
ScreenWidth
ScrollDirection
ScrollGrid
ScrollItems
ScrollPercentage
SecondaryImageDisplayed
SecurityArea
SelectedDatasource
SelectedFieldName
SelectedNodeName
SelectedShapes
SelectedTagName
SelectionTimeout
SendAlarmMessages
ShadowColor
SharedTableName
ShowAxis
82
IFIX Automation Reference
ShowDatabaseTab
ShowDataServersTab
ShowDate
ShowDSLegend
ShowGaps
ShowGlobalsTab
ShowGridLines
ShowHeaders
ShowHistoricalTab
ShowHorizontalGrid
ShowLegend
ShowLine
ShowPicturesTab
ShowRowNumbers
ShowScrollBars
ShowStatusBar
ShowTimeAxis
ShowTimeAxisTitle
ShowTimeCursor
ShowTimeCursorToolTips
ShowTimeStamp
ShowTitle
ShowValueAxis
ShowValueAxisTitle
ShowVerticalGrid
SmoothingMode
SnapToGrid
83
iFIX Automation Reference
SortColumnName
SortOrderAscending
Source
Sources
SourceValidated
SPCChartType
SPCInterval
SPCType
StartAngle
StartCap
StartDateMode
StartDateType
StartPoint
StartTime
StartTimeMode
StartTimeType
StartX
StartY
Status
StatusBar
StatusFontSize
SteppedTrend
StrikeThrough
SubTitle
SubTitleBold
SubTitleFont
SubTitleItalic
84
IFIX Automation Reference
SubTitleUnderline
System
SystemMenu
T
TableBackColor
TableFont
TableForeColor
TextColor
Thickness
ThicknessType
TimeAxis
TimeAxisNumLabels
TimeAxisNumTicks
TimeAxisTitle
TimeBeforeNow
TimeCursorColor
TimeCursorPos
TimeCursorTooltipColor
Timeout
TimerEnabled
Timestamp
TimeZoneBiasExplicit
TimeZoneBiasRelative
Titlebar
ToggleRate
ToggleSource
85
iFIX Automation Reference
Tolerance
ToolbarManager
ToolbarPath
Top
TopCenter
TopLeft
TopRight
TopVisibleRow
TotalFilteredAlarms
TranslateOnOpen
Transparency
Transparent
TransparentColor
TreatSinglePointsAsLines
TriggerType
TrimMaxLength
TrimType
Type
U
UCL
UnacknowledgedAlarmColor
Underline
UniformScale
Units
UpdateOnPropChange
UpdateRate
86
IFIX Automation Reference
UseDelta
UseDomainSecurity
UseLocalSecurity
UseMarker
UserDef1ColumnName
UserDef2ColumnName
UserPreferences
UseUnacknowledgedAlarmColor
UWL
V
Value
ValueAxis
ValueAxisNumLabels
ValueAxisNumTicks
ValueAxisTitle
VariableType
Version
VerticalFillDirection
VerticalFillPercentage
VerticalGridColor
VerticalGridStyle
VerticalPosition
VerticalScaleDirection
VerticalScalePercentage
ViewingStyle
ViewportHeight
87
iFIX Automation Reference
ViewportLeft
ViewportTop
ViewportWidth
Visible
VisibleUnacknowledgedAlarms
W-Y
WholeDigits
Width
WindowHeightPercentage
WindowLeftPercentage
WindowName
WindowState
WindowTopPercentage
WindowWidthPercentage
WizardName
WritePictureFormatType
WritePictureOutLocation
WritePictureScalePercentage
WorkSpaceStartupMode
XAxisDatasetPosition
XAxisLabel
XAxisScaleControl
XAxisType
YAxisLabel
88
IFIX Automation Reference
YAxisLongTicks
YAxisScaleControl
Z
Zoom
ZoomDirection
ZoomType
YAxisScaleControl
Z
Zoom
ZoomDirection
ZoomType
Active Property
Specifies whether the specified object has focus.
Syntax
object.Active [= Boolean]
Properties
The Active property syntax has these parts:
Part Description
89
iFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
Remarks
Call this property to force the selection of a document through scripting. Also, if you open a document
as hidden, setting the document’s active state to True makes the document visible.
ActiveDocument Property
Returns the currently active document in the WorkSpace.
Syntax
object.ActiveDocument
Properties
The ActiveDocument property syntax has this part:
Part Description
Remarks
ActiveDocument is a read-only property of type Object.
ActiveDocument and document objects accessed using Application.Documents hold objects for
ActiveX Documents. These objects are called FixFileLink objects. To access the actual user document
(picture, schedule, dynamo set), the FixFileLink object contains a Page property that is the OLE
object for the actual user document.
ActiveWindow Property
Returns the currently active window in the WorkSpace or the Document object.
90
IFIX Automation Reference
Syntax
object.ActiveWindow
Properties
The ActiveWindow property syntax has this part:
Part Description
Remarks
ActiveWindow is a read-only property of type Object.
When more than one window is open in the WorkSpace, the active window property setting is the
window with the focus. If no documents are open, ActiveWindow returns nothing.
The active window is the window that appears in the foreground with a highlighted title bar.
The ActiveWindow property is useful for accessing the currently active window object.
AdvancedGraphics Property
Enables graphical enhancements such as gradients, alpha blending, and anti-aliasing for text and
graphics in an Enhanced Chart. Disable this option to increase performance.
Syntax
object.AdvancedGraphics [= Boolean]
Properties
The AdvancedGraphics property syntax has these parts:
Part Description
91
iFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
Remarks
AdvancedGraphics is a read-only property.
AlarmHornEnabled Property
Gets or sets the alarm horn enabled status.
Syntax
AlarmHornEnabled ([blnNewValue], [intErrorMode])
Properties
The AlarmHornEnabled property syntax has these parts:
Part Description
blnNewValue Boolean. (Optional). The value to which you want to set the alarm horn enable
property.
TRUE = enabled
FALSE = disabled
Return Value
Boolean. The status of the AlarmHornEnable after the call is completed.
92
IFIX Automation Reference
AlarmRefreshInterval Property
Specifies the rate at which the Alarm Summary object checks for a change in the list of alarms.
Syntax
object.AlarmRefreshInterval [= Single]
Properties
The AlarmRefreshInterval property syntax has these parts:
Part Description
Single The rate, in seconds, that the Alarm Summary will update the list of alarms. The valid
values are 0.1 to 300. The default is 0.5 seconds.
AlarmUserdefField1 Property
Specifies the value for the user defined field 1 column.
Syntax
object.AlarmUserdefField1 [= String]
Properties
The AlarmUserdefField1 property syntax has these parts:
Part Description
AlarmUserdefField2 Property
Specifies the value for the user defined field 2 column.
93
iFIX Automation Reference
Syntax
object.AlarmUserdefField2 [= String]
Properties
The AlarmUserdefField2 property syntax has these parts:
Part Description
Alignment Property
The alignment property defines the alignment of the text string within the text’s bounding rectangle.
Syntax
object.Alignment [= enumTextAlign]
Properties
The Alignment property syntax has these parts:
Part Description
Settings
The settings for enumTextAlign are:
94
IFIX Automation Reference
Remarks
Use this property to define how a Text object aligns within it’s bounding rectangle. This is useful for
aligning a column of numbers, or bar graph labels. For example, if you want to align the decimal
points in a column of data links, you can set the alignment property to “Right alignment”. Numbers
with similar precision numbers will align properly regardless of the size of the value to the left of the
decimal.
This property can also be used to control the behavior of text during a scale operation. Setting the
alignment to center for text in a dynamo or group keeps an equal relationship between itself and other
objects.
AllowsDrillDown Property
Specifies whether or not the user can drill into the Group object.
Syntax
object.AllowsDrillDown [= Boolean]
Properties
The AllowsDrillDown property syntax has these parts:
Part Description
Boolean Whether the Group object allows manipulation of it's contained objects.
Settings
The settings for Boolean are:
Value Description
95
iFIX Automation Reference
Value Description
Remarks
This property could be used to prevent users from inadvertently change the visual representation of an
object or from modifying a group’s internal animation properties.
AllowTimeAxisReset Property
Specifies how the time axis limits of a Pen are reset when you right-click a chart.
Syntax
object.AllowTimeAxisReset [= Boolean]
Properties
The AllowTimeAxisReset property syntax has these parts:
Part Description
Boolean Whether or not to reset the time axis limits in a chart to Start Time and End Time pen
properties.
Settings
The settings for Boolean are:
Value Description
True Resets the time axis limits of the chart to the StartTime and EndTime properties of a
chart’s pen.
False Resets the time axis limits of the chart to the FixedTime and FixedData properties or
the DaysBeforeNow and TimeBeforeNow properties.
96
IFIX Automation Reference
AllowValueAxisReset Property
Specifies how the value axis limits of a Pen are reset when you right-click a chart.
Syntax
object.AllowValueAxisReset [= Boolean]
Properties
The AllowValueAxisReset property syntax has these parts:
Part Description
Boolean Whether or not to reset the value axis limits in a chart to HiLimit and LoLimit pen
properties.
Settings
The settings for Boolean are:
Value Description
True Resets the value axis limits of the chart to the HiLimit and LoLimit properties of a
chart’s pen.
False Resets the value axis limits of the chart to the EGU limits of the tag associated with the
pen.
AlwaysOnTop Property
Specifies whether the specified document is to be on top of any other window owned by the
WorkSpace application. A document that has this property is always on top.
Syntax
object.AlwaysOnTop [= Boolean]
Properties
The AlwaysOnTop property syntax has these parts:
97
iFIX Automation Reference
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
This property is vital for creating pop up subpictures that will stay on top of the main display, even if
the user selects and activates the main window. By convention, the display that opens a subpicture is
responsible for closing the display if that display is closed.
AnalogError Property
Retrieves the last value written to the analog error tag by the SecuritySynchronizer object. The value is
represented as a string.
Syntax
object.AnalogError
Properties
The AnalogError property syntax has this part:
Part Description
Remarks
AnalogError is a read-only property. It is only updated by the SecuritySynchronizer object at the end
98
IFIX Automation Reference
AnalogErrorTag Property
Sets or retrieves the analog iFIX database tag and floating point field to which the last, most severe,
error code is written when the security synchronization process completes.
Syntax
object.AnalogErrorTag [= String]
Properties
The AnalogErrorTag property syntax has these parts:
Part Description
Remarks
AnalogErrorTag corresponds to the /E command line parameter of the Security Synchronizer
application.
AngleUnits Property
Specifies whether any property that requires an angle is measured in degrees or radians.
Syntax
object.AngleUnits [= enumAngleUnits]
Properties
The AngleUnits property syntax has these parts:
Part Description
99
iFIX Automation Reference
Part Description
Settings
The settings for enumAngleUnits are:
Remarks
Not all objects contain the RotationAngle property. For example, the Oval object does not have a
RotationAngle property.
The StartAngle and EndAngle properties are affected by the AngleUnits property.
Application Property
Returns a pointer to the Application object.
Syntax
object.Application
Properties
The Application property syntax has this part:
Part Description
Remarks
Application is a read-only property of type Object.
100
IFIX Automation Reference
ApplyProperties Property
Determines how to apply properties to the images in the list.
Syntax
object.ApplyProperties [= enumApplyProperties]
Properties
The ApplyProperties property syntax has these parts:
Part Description
Settings
The settings for enumApplyProperties are:
AssignedID Property
Retrieves the ID assigned to the dataset.
Syntax
object.AssignedID
Properties
The AssignedID property syntax has this part:
101
iFIX Automation Reference
Part Description
Remarks
Read-only property
Author Property
Specifies the author of the specified document.
Syntax
object.Author [= String]
Properties
The Author property syntax has these parts:
Part Description
Remarks
The default Author is the name of the currently logged-in user, in Windows.
Autofetch Property
Specifies whether to automatically fetch the low and high EGU limits on run-time initialization.
Syntax
object.Autofetch [= Boolean]
Properties
The Autofetch property syntax has these parts:
102
IFIX Automation Reference
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
Enabling the Autofetch property fetches the EGU limits of the data source at run-time. If the EGU
limits of a data source change, then this field allows the animation or chart to detect this change and
update it’s internal input range limits. This is useful if a data source needs to be modified at run-time.
AutoMinMaxPaddingX Property
Allows iFIX to automatically scale the X-axis so that all data points are within the visible area of the
XY Chart. This property only applies to XY Enhanced Charts.
Syntax
object.AutoMinMaxPaddingX [= Long]
Properties
The AutoMinMaxPaddingX property syntax has these parts:
Part Description
Long Sets the percentage added above and below the automatically determined range for the
X-axis.
103
iFIX Automation Reference
AutoMinMaxPaddingY Property
Allows iFIX to automatically scale the Y-axis so that all data points are within the visible area of the
Enhanced Chart.
Syntax
object.AutoMinMaxPaddingY [= Long]
Properties
The AutoMinMaxPaddingY property syntax has these parts:
Part Description
Long Sets the percentage added above and below the automatically determined range for the
Y-axis.
AutoSize Property
AutoSize controls whether the Text object automatically picks a new font that will fit into the
bounding rectangle as the Caption changes. If AutoSize is set to True, the size of the bounding
rectangle is recalculated. If set to False, the FontSize of the Text object is recalculated.
Syntax
object.AutoSize [= Boolean]
Properties
The AutoSize property syntax has these parts:
Part Description
Boolean Whether or not to automatically update the object's size to fit its contents.
Settings
The settings for Boolean are:
104
IFIX Automation Reference
Value Description
True Automatically resize the object to display its entire contents. (Default)
False Maintain the size of the object constant, adjust the FontSize to fit inside the bounding
rectangle.
Remarks
For controls with captions, the AutoSize property specifies whether the control automatically adjusts
to display the entire caption. For controls without captions, this property specifies whether the control
automatically adjusts to display the information stored in the control. In a ComboBox, for example,
setting AutoSize to True automatically sets the width of the display area to match the length of the
current text.
For a single-line text box, setting AutoSize to True automatically sets the width of the display area to
the length of the text in the text box.
For a multi-line text box that does not contain text, setting AutoSize to True automatically displays
the text as a column. The width of the text column is set to accommodate the widest letter of that font
size. The height of the text column is set to display the entire text of the TextBox. For a multi-line text
box that contains text, setting AutoSize to True automatically enlarges the TextBox vertically to
display the entire text. The width of the TextBox does not change.
The behavior of the object by changing the AutoSize property is dependent upon the ScalesWidth
property. The following table illustrates the dependencies:
NOTE: If you manually change the size of a control while AutoSize is True, the manual change
overrides the size previously set by AutoSize.
AutoUpdateRate Property
Specifies the automatic historical update rate of the chart.
105
iFIX Automation Reference
Syntax
object.AutoUpdateRate [=Single]
Properties
The AutoUpdateRate property syntax has these parts:
Part Description
Remarks
AutoUpdateRate is 0 by default. When the value is set to 0, autoupdate is disabled.
AverageDataValue Property
Returns the average of the currently displayed values in the Chart for the specified Pen.
Syntax
object.AverageDataValue [= Double]
Properties
The AverageDataValue property syntax has these parts:
Part Description
Remarks
This property is valid for both real-time and historical pen configurations. (See HighestDataValue and
LowestDataValue)
106
IFIX Automation Reference
AxisColor Property
Specifies the axis color.
Syntax
object.AxisColor [= Long]
Properties
The AxisColor property syntax has these parts:
Part Description
AxisLength Property
Returns the axis length in logical coordinate units.
Syntax
object.AxisLength
Properties
The AxisLength property syntax has this part:
Part Description
Remarks
AxisLength is a read-only property of type Double.
AxisTitle Property
Specifies the axis title caption.
107
iFIX Automation Reference
Syntax
object.AxisTitle [= String]
Properties
The AxisTitle property syntax has these parts:
Part Description
BackDropBackgroundColor Property
Defines the background color of a Group object when the background color pattern requires two
colors (hatched, diagnal, etc.).
Syntax
object.BackDropBackgroundColor [= Long]
Properties
The BackDropBackgroundColor property syntax has these parts:
Part Description
Remarks
The group’s background and foreground color properties apply to the children contained in the group.
The group itself is a shape and can have it’s own bounding rectangle color and style. By default this is
transparent. Enabling the BackDropVisible property activates the group’s BackDrop color properties.
The group’s bounding rectangle fill color is defined by the BackDropColor and
108
IFIX Automation Reference
BackDropBackgroundStyle Property
Defines the background style for the group’s bounding rectangle.
Syntax
object.BackDropBackgroundStyle [= enumBackgroundStyle]
Properties
The BackDropBackgroundStyle property syntax has these parts:
Part Description
Settings
The settings for enumBackgroundStyle are:
BackDropBlend Property
Specifies the percentage of BackDropFadeColor to blend with the group's BackdropColor.
Syntax
object.BackDropBlend [=Double]
109
iFIX Automation Reference
Properties
The BackDropBlend property syntax has these parts:
Part Description
Remarks
The BackDropBlend property is useful only when the group's FillStyle is set to FillStyleGradient.
BackDropBorderColor Property
Defines the back drop border color for the Group object's bounding rectangle.
Syntax
object.BackDropBorderColor [= Long]
Properties
The BackDropBorderColor property syntax has these parts:
Part Description
Long The COLORREF used to set the back drop border color.
BackDropBorderStyle Property
Sets the border style of the Group object's bounding rectangle.
Syntax
object.BackDropBorderStyle [= enumEdgeStyle]
110
IFIX Automation Reference
Properties
The BackDropBorderStyle property syntax has these parts:
Part Description
Settings
The settings for enumEdgeStyle are:
EdgeStyleSolid 0 Solid.
EdgeStyleDash 1 Dash.
EdgeStyleDot 2 Dot.
EdgeStyleDashDot 3 Dash-Dot.
EdgeStyleDashDotDot 4 Dash-Dot-Dot.
EdgeStyleNone 5 No border.
BackDropColor Property
Defines the back drop color of a group of objects.
Syntax
object.BackDropColor [= Long]
Properties
The BackDropColor property syntax has these parts:
111
iFIX Automation Reference
Part Description
Long The COLORREF used to set the group's back drop color.
Remarks
The group’s background and foreground color properties apply to the children contained in the group.
The group itself is a shape and can have it’s own bounding rectangle color and style. By default this is
transparent. Enabling the BackDropVisible property activates the group’s BackDrop color properties.
The group’s bounding rectangle fill color is defined by the BackDropColor and
BackDropBackgroundColor. The BackDropColor can be considered the foreground color of the
BackDrop fill area, therefore, is used for a solid style, and is the line color for the hatched patterns. For
non-solid styles, the BackDropBackgroundColor is the background fill area.
BackdropFadeColor Property
Specifies the fade color of a group when the FillStyle pattern is Gradient.
Syntax
object.BackdropFadeColor [=Long]
Properties
The BackdropFadeColor property syntax has these parts:
Part Description
BackdropFadeType Property
Specifies the kind of fade used for the group's gradient fill.
Syntax
object.BackdropFadeType [=enumFadeType]
112
IFIX Automation Reference
Properties
The BackdropFadeType property syntax has these parts:
Part Description
Settings
The settings for enumFadeType are:
Linear 0 Linear
Reflected 1 Reflected
Radial 2 Radial
Concentric 3 Concentric
Remarks
The GradientAngle property is useful when the FadeType is either Linear or Reflected.
BackDropGradAngle Property
Specifies the angle (in radians or degrees) of the group's gradient fill.
Syntax
object.BackDropGradAngle [=Double]
Properties
The BackDropGradAngle property syntax has these parts:
113
iFIX Automation Reference
Part Description
Remarks
In Configuration mode, BackDropGradAngle changes as you rotate the group.
The units to be used when creating the angle is specified as either degrees or radians, depending on the
value of the AngleUnits property.
BackDropStyle Property
Defines the Group object's back drop fill style.
Syntax
object.BackDropStyle [= enumFillStyle]
Properties
The BackDropStyle property syntax has these parts:
Part Description
enumFillStyle Specifies the pattern style to display for the back drop.
Settings
The settings for enumFillStyle are:
FillStyleSolid 0 Solid.
FillStyleHollow 1 Hollow.
114
IFIX Automation Reference
FillStyleHorizontal 2 Horizontal.
FillStyleVertical 3 Vertical.
FillStyleCrossHatch 6 Crosshatch.
BackDropVisible Property
Enables the Group object's back drop properties.
Syntax
object.BackDropVisible [= Boolean]
Properties
The BackDropVisible property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
115
iFIX Automation Reference
Value Description
BackgroundColor Property
Specifies the background color of an object.
Syntax
object.BackgroundColor [= Long]
Properties
The BackgroundColor property syntax has these parts:
Part Description
BackgroundEdgeColor Property
Specifies the Chart object's background edge color.
Syntax
object.BackgroundEdgeColor [= Long]
Properties
The BackgroundEdgeColor property syntax has these parts:
Part Description
116
IFIX Automation Reference
BackgroundEdgeStyle Property
Specifies the Chart object's background edge style.
Syntax
object.BackgroundEdgeStyle [= enumEdgeStyle]
Properties
The BackgroundEdgeStyle property syntax has these parts:
Part Description
Settings
The settings for enumEdgeStyle are:
EdgeStyleSolid 0 Solid.
EdgeStyleDash 1 Dash.
EdgeStyleDot 2 Dot.
EdgeStyleDashDot 3 Dash-Dot.
EdgeStyleDashDotDot 4 Dash-Dot-Dot.
EdgeStyleNone 5 No border.
BackgroundEdgeWidth Property
Specifies the Chart object's background edge width.
117
iFIX Automation Reference
Syntax
object.BackgroundEdgeWidth [= Long]
Properties
The BackgroundEdgeWidth property syntax has these parts:
Part Description
BackgroundStyle Property
Specifies whether the specified object's background style is opaque or transparent.
Syntax
object.BackgroundStyle [= enumBackgroundStyle]
Properties
The BackgroundStyle property syntax has these parts:
Part Description
Settings
The settings for enumBackgroundStyle are:
118
IFIX Automation Reference
BackupSecPath Property
Returns the backup security file path for the specified document.
Syntax
object.BackupSecPath [= String]
Properties
The BackupSecPath property syntax has these parts:
Part Description
Remarks
BackupSecPath is a read-only property of type String.
BarVal Property
Sets the bar value for the real-time SPC data set in the Enhanced Chart.
Syntax
object.BarVal [= Double]
Properties
The BarVal property syntax has these parts:
Part Description
Double The bar value for the real-time SPC data set in the RealTimeSPCDataSet Object.
119
iFIX Automation Reference
BasePath Property
Returns the iFIX base path as defined in the System Configuration Utility (SCU). This is typically the
main directory where the product is installed.
Syntax
object.BasePath
Properties
The BasePath property syntax has this part:
Part Description
Remarks
BasePath is a read-only property of type String.
BitmapGradientMode Property
Allows you to apply a bitmap or gradient style to the background of an Enhanced Chart.
Syntax
object.BitmapGradientMode [= Boolean]
Properties
The BitmapGradientMode property syntax has thse parts:
Part Description
Boolean Whether or not a bitmap or gradient style is applied to the background of the
HistogramChart, LineChart, or SPCBarChart Object.
Settings
The settings for Boolean are:
120
IFIX Automation Reference
Value Description
Blend Property
Specifies the percentage of the FadeColor to blend with the object's ForegroundColor. In the case of
a chart object, specifies the percentage of the FadeColor to blend with the object's BackgroundColor.
Syntax
object.Blend [=Double]
Properties
The Blend property syntax has these parts:
Part Description
Remarks
The Blend property is useful only when the object's FillStyle is set to FillStyleGradient.
BlinkEnabled Property
Specifies whether unacknowledged alarms in the Alarm Summary object blink. If blinking is enabled,
unacknowledged alarms blink at the rate set in the BlinkRate property.
Syntax
object.BlinkEnabled [= Boolean]
Properties
The BlinkEnabled property syntax has these parts:
121
iFIX Automation Reference
Part Description
Settings
The settings for Boolean are:
Value Description
BlinkRate Property
Specifies the rate at which the Alarm Summary spreadsheet row blinks.
Syntax
object.BlinkRate [= Integer]
Properties
The BlinkRate property syntax has these parts:
Part Description
Integer The rate, in seconds, that the speadsheet row blinks. The valid values are 1 - 10. The
default is 1 second.
Remarks
The BlinkRate property only takes effect if the BlinkEnabled property is set to True.
122
IFIX Automation Reference
BorderTypes Property
Sets the border type for the Enhanced Chart.
Syntax
object.BorderTypes enumBorderTypes
Properties
The BorderTypes property syntax has these parts:
Part Description
Bottom Property
Returns the value of the bottom edge of the shape's bounding rectangle.
Syntax
object.Bottom
Properties
The Bottom property syntax has this part:
Part Description
Remarks
Bottom is a read-only property of type Double.
123
iFIX Automation Reference
BottomCenter Property
Returns the value of the bottom center point of the shape's bounding rectangle as a FixFloatPoint.
Syntax
object.BottomCenter
Properties
The BottomCenter property syntax has this part:
Part Description
Remarks
BottomCenter is a read-only property of type Object.
BottomLeft Property
Returns the value of the bottom left point of the shape's bounding rectangle as a FixFloatPoint.
Syntax
object.BottomLeft
Properties
The BottomLeft property syntax has this part:
Part Description
Remarks
BottomLeft is a read-only property of type Object.
124
IFIX Automation Reference
BottomRight Property
Returns the value of the bottom right point of the shape's bounding rectangle as a FixFloatPoint.
Syntax
object.BottomRight
Properties
The BottomRight property syntax has this part:
Part Description
Remarks
BottomRight is a read-only property of type Object.
BottomVisibleRow Property
Specifies the last visible row in the Alarm Summary object’s spreadsheet.
Syntax
object.BottomVisibleRow
Properties
The BottomVisibleRow property syntax has this part:
Part Description
Remarks
You can use the value of BottomVisibleRow to compute the visible page size.
125
iFIX Automation Reference
BoundRect Property
Returns the top left and bottom right values of the shape's bounding rectangle.
Syntax
object.BoundRect
Properties
The BoundRect property syntax has this part:
Part Description
Remarks
BoundRect is a read-only property of type Object.
ButtonState Property
Indicates whether or not the Bitmap is pushed in the Run-time environment.
Syntax
object.ButtonState [= enumButtonState]
Properties
The ButtonState property syntax has these parts:
Part Description
Settings
The settings for enumButtonState are:
126
IFIX Automation Reference
Remarks
The ButtonState property only applies to multi-state bitmaps.
ButtonStyle Property
Specifies the behavior style of the Bitmap when used as a push button.
Syntax
object.ButtonStyle [= enumButtonStyle]
Properties
The ButtonStyle property syntax has these parts:
Part Description
Settings
The settings for enumButtonStyle are:
BitmapButtonNone 0 None.
127
iFIX Automation Reference
Remarks
This property can be used to make a three dimensional button.
CacheEnabled Property
Specifies whether caching is enabled for the picture object.
Syntax
object.CacheEnabled [= Boolean]
Properties
The CacheEnabled property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True Once you have closed a picture in run mode, the next time you open the picture in run
mode it will be read from memory cache, instead of from disk, if picture caching is
enabled globally. This is the default.
False Once you have closed a picture in run mode, the next time you open the picture in run
mode it will be read from disk, instead of from memory cache, whether or not picture
caching is enabled globally.
128
IFIX Automation Reference
Remarks
This object property directly affects the Allow this picture to be cached option in the Create Picture
wizard. However, picture caching will only truly occur if global picture caching is also enabled from
the User Preferences dialog box. This option is available in three places:
Cancel Property
Specifies whether the specified control is the Cancel button in a picture. This control can be the
pushbutton control or any control that behaves like a button.
Syntax
object.Cancel [= Boolean]
Properties
The Cancel property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True This control is the Cancel button of the picture in the Run-time environment.
False The control is not a cancel button for the picture. (Default)
Remarks
Only one control in a picture can be the Cancel button. When the Cancel property is set to True for
one control, it is automatically set to False for all other controls in the picture. When a control's
129
iFIX Automation Reference
Cancel property setting is True and the picture is the active picture, the user can choose the control by
clicking it, pressing the ESC key, or pressing ENTER when the button has the focus.
The Cancel property of a control can be set to True only if the control is a pushbutton control or any
control that behaves like a button i.e., marked with OLEMISC_ACTSLIKEBUTTON flag.
Caption Property
Specifies the caption text of the Text and Datalink objects and/or the caption of the Window or
Application object.
Syntax
object.Caption [= String]
Properties
The Caption property syntax has these parts:
Part Description
Remarks
To change the caption of a Picture or Window object, the user would do the following:
Application.ActiveWindow.Caption = "NewCaption"
Category Property
Returns a base component string which defines the general classification of a component such as
“Animation” and “Picture”.
Syntax
object.Category
Properties
The Category property syntax has this part:
130
IFIX Automation Reference
Part Description
Remarks
Category is a read-only property of type String.
Center Property
Returns the value of the center point of the shape's bounding rectangle as a FixFloatPoint.
Syntax
object.Center
Properties
The Center property syntax has this part:
Part Description
Remarks
Center is a read-only property of type Object.
CenterOfRotation Property
Specifies the point about which an object is rotated.
Syntax
object.CenterOfRotation [= Object]
Properties
The CenterOfRotation property syntax has these parts:
131
iFIX Automation Reference
Part Description
Remarks
The Object is a point of type FixFloatPoint.
An example of how to set the CenterOfRotation property for a Rectangle to (10, 20) would be:
Point.X = 10
Point.Y = 20
Rect1.CenterOfRotation = Point
CenterPoint Property
Specifies the coordinates of the object's center point.
Syntax
object.CenterPoint [= Object]
Properties
The CenterPoint property syntax has these parts:
Part Description
Remarks
The Object is a point of type FixFloatPoint.
132
IFIX Automation Reference
CenterX Property
Specifies the value of the x-coordinate of the center point of the specified object.
Syntax
object.CenterX [= Double]
Properties
The CenterX property syntax has these parts:
Part Description
CenterY Property
Specifies the value of the y-coordinate of the center point of the specified object.
Syntax
object.CenterY [= Double]
Properties
The CenterY property syntax has these parts:
Part Description
CharactersPerLine Property
Specifies the number of characters allowed per line.
133
iFIX Automation Reference
Syntax
object.CharactersPerLine [=Integer]
Properties
The CharactersPerLine property syntax has these parts:
Part Description
ChartFontSize Property
Specifies the font size for the Enhanced Chart.
Syntax
object.ChartFontSize [=enumChartFontSize]
Properties
The ChartFontSize property syntax has these parts:
Part Description
CheckForAlarmListChanged Property
Specifies whether the Alarm Summary object tracks changes to the list of alarms and fires the
AlarmListChanged event.
134
IFIX Automation Reference
Syntax
object.CheckForAlarmListChanged [= Boolean]
Properties
The CheckForAlarmListChanged property syntax has these parts:
Part Description
Boolean Whether the Alarm Summary object tracks changes to the list of alarms and fires the
AlarmListChanged event.
Settings
The settings for Boolean are:
Value Description
True Tracks changes to the list of alarms so that the AlarmListChanged event fires.
False Does not track changes to the list of alarms. Consequently the AlarmListChanged
event never fires. (Default)
Remarks
The best place to set this property is in the Initialize event handler of your picture.
CheckForNewAlarms Property
Specifies whether the Alarm Summary object tracks new alarms and fires a NewAlarm event.
Syntax
object.CheckForNewAlarms [= Boolean]
Properties
The CheckForNewAlarms property syntax has these parts:
135
iFIX Automation Reference
Part Description
Boolean Whether the Alarm Summary object tracks new alarms and fires a NewAlarm event.
Settings
The settings for Boolean are:
picture.
CheckForSeverityIncrease Property
Specifies whether the Alarm Summary object tracks when an alarm’s status increases in severity and
fires the SeverityIncreased event.
The CheckForSeverityIncrease property must be set in run mode. The value you enter here is not
persisted. In other words, when you switch from run mode to configure mode, the value changes back
to FALSE (0), which is the default. If you enter TRUE (1) in configure mode, it switches back to
FALSE (0) when you enter run mode. You must set this value in run mode.
Syntax
object.CheckForSeverityIncrease [= Boolean]
Properties
The CheckForSeverityIncrease property syntax has these parts:
Part Description
Boolean Specifies whether the Alarm Summary object tracks when an alarm’s status increases
in severity and fires the SeverityIncreased event.
Settings
The settings for Boolean are:
136
IFIX Automation Reference
Value Description
True Tracks changes to the list of alarms so that the SeverityIncreased event fires.
False Does not track changes to the list of alarms. Consequently, the SeverityIncreased
event never fires. (Default)
Remarks
The best place to set this property is in the Initialize event handler of your picture.
ClassName Property
Returns the class of the specified object.
Syntax
object.ClassName
Properties
The ClassName property syntax has this part:
Part Description
Remarks
ClassName is a read-only property of type String.
Color Property
Specifies the color of the ColorButton object.
Syntax
object.Color [= Long]
Properties
The Color property syntax has these parts:
137
iFIX Automation Reference
Part Description
ColorTable Property
Specifies whether the user is setting up a color table for the Lookup object.
Syntax
object.ColorTable [= Boolean]
Properties
The ColorTable property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
This property must be specified when using color tables so that iFIX knows to interpret the range
values as colors.
138
IFIX Automation Reference
CombinationKey Property
Indicates how the Control and Shift keys are used in defining the key combination for a key macro
object.
Syntax
object.CombinationKey [= Value]
Properties
The CombinationKey property syntax has these parts:
Part Description
Value 0 - ComboKeyNone Neither the Control or Shift key is used in combination with the key
code.
1- ComboKeyCtrl Only the Control key is used in combination with the key code.
2 - ComboKeyShift Only the Shift key is used in combination with the key code.
3 - ComboKeyCtrlShift Both the Control and the Shift key are used in combination with
the key code.
Comments Property
Specifies the comments associated with the current document.
Syntax
object.Comments [= String]
Properties
The Comments property syntax has these parts:
Part Description
139
iFIX Automation Reference
CompletionStatus Property
Retrieves the last value written to the completion status tag by the SecuritySynchronizer object.
Syntax
object.CompletionStatus [= Boolean]
Properties
The CompletionStatus property syntax has these parts:
Part Description
Boolean True (1) is written to this property only when the security synchronization process
completes.
You must manually set the value to False (0) before calling the SynchronizeSecurity
method, to see this property value change to True (1) when the synchronization
process completes.
CompletionStatusTag Property
Sets or retrieves the iFIX database tag and floating point field that indicates the status of the
completion flag.
Syntax
object.CompletionStatusTag [= String]
Properties
The CompletionStatusTag property syntax has these parts:
Part Description
140
IFIX Automation Reference
Remarks
CompletionStatusTag corresponds to the /C command line parameter of the Security Synchronizer
application.
ConfirmDataEntry Property
Specifies whether to confirm data entry.
Syntax
object.ConfirmDataEntry [= Boolean]
Properties
The ConfirmDataEntry property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ConnectionFailed Property
Returns whether the connection attempt was successful or not.
Syntax
object.ConnectionFailed
141
iFIX Automation Reference
Properties
The ConnectionFailed property syntax has this part:
Part Description
Remarks
ConnectionFailed is a read-only property of type Object.
Return Values
The ConnectionFailed property return values are:
Value Description
ConstantLine Property
Specifies whether to display a constant line for the specified Pen.
Syntax
object.ConstantLine [= Boolean]
Properties
The ConstantLine property syntax has these parts:
Part Description
142
IFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
Remarks
The value displayed in the line is the current value for the specified Pen.
ContainedObjects Property
Returns a collection of objects contained within the specified object.
Syntax
object.ContainedObjects
Properties
The ContainedObjects property syntax has this part:
Part Description
Remarks
ContainedObjects is a read-only property of type Object.
ContainedSelections Property
Returns a collection of objects contained within the current object which are currently selected.
Syntax
object.ContainedSelections
143
iFIX Automation Reference
Properties
The ContainedSelections property syntax has this part:
Part Description
Remarks
ContainedSelections is a read-only property of type Object.
ContextID Property
Specifies the context ID for the user's context sensitive help file.
Syntax
object.ContextID [= Long]
Properties
The ContextID property syntax has these parts:
Part Description
ControlOrderIndex Property
Specifies the order in which the object will be selected via the "Up" and "Down" arrow keys.
Syntax
object.ControlOrderIndex [= Long]
Properties
The ControlOrderIndex property syntax has these parts:
144
IFIX Automation Reference
Part Description
Count Property
Returns the number of items in the specified collection or the number of levels in a Lookup object.
Syntax
object.Count
Properties
The Count property syntax has this part:
Part Description
Remarks
Count is a read-only property of type Long.
CurrentDataSet Property
Returns or sets the current data set of a chart by position.
Syntax
object.CurrentDataSet
Properties
The CurrentDataSet property syntax has this part:
145
iFIX Automation Reference
Part Description
Remarks
The CurrentDataSet property is a zero-based long integer indicating the current data set of the chart.
CurrentDataSource Property
Returns the current data source.
Syntax
object.CurrentDataSource
Properties
The CurrentDataSource property syntax has this part:
Part Description
Remarks
CurrentDataSource is a read-only property of type String.
CurrentDate Property
Returns the current system date. The date string is formatted according to the "short date" format in the
Regional and Language Options in the Control Panel.
Syntax
object.CurrentDate [= String]
Properties
The CurrentDate property syntax has these parts:
146
IFIX Automation Reference
Part Description
CurrentDateDay Property
Returns the day component of the current system date.
Syntax
object.CurrentDateDay [= String]
Properties
The CurrentDateDay property syntax has these parts:
Part Description
CurrentDateMonth Property
Returns the month component of the current system date.
Syntax
object.CurrentDateMonth [= String]
Properties
The CurrentDateMonth property syntax has these parts:
Part Description
147
iFIX Automation Reference
Part Description
CurrentDateYear Property
Returns the year component of the current system date.
Syntax
object.CurrentDateYear [= String]
Properties
The CurrentDateYear property syntax has these parts:
Part Description
CurrentImage Property
Specifies the index of the image that is currently being displayed.
Syntax
object.CurrentImage [= Integer]
Properties
The CurrentImage property syntax has these parts:
Part Description
148
IFIX Automation Reference
CurrentPen Property
Specifies the current Pen by it's index in the Pens collection.
Syntax
object.CurrentPen [= Long]
Properties
The CurrentPen property syntax has these parts:
Part Description
CurrentPicture Property
Returns the currently active picture displayed in the Proficy iFIX WorkSpace.
Syntax
object.CurrentPicture[= String]
Properties
The CurrentPicture property syntax has these parts:
Part Description
CurrentTime Property
Specifies the current system time. The time string is formatted according to the "time" format in the
Regional and Language Options in the Control Panel.
149
iFIX Automation Reference
Syntax
object.CurrentTime [= String]
Properties
The CurrentTime property syntax has these parts:
Part Description
CurrentTimeHour Property
Returns the hour component of the current system time.
Syntax
object.CurrentTimeHour [= String]
Properties
The CurrentTimeHour property syntax has these parts:
Part Description
CurrentTimeMinute Property
Returns the minute component of the current system time.
Syntax
object.CurrentTimeMinute [= String]
150
IFIX Automation Reference
Properties
The CurrentTimeMinute property syntax has these parts:
Part Description
CurrentTimeSecond Property
Returns the second component of the current system time.
Syntax
object.CurrentTimeSecond [= String]
Properties
The CurrentTimeSecond property syntax has these parts:
Part Description
CurrentValue Property
Specifies the current value for the specified Pen or Variable.
Syntax
object.CurrentValue [= Double]
Properties
The CurrentValue property syntax has these parts:
151
iFIX Automation Reference
Part Description
DataEntry Property
Specifies the data entry type.
Syntax
object.DataEntry [= Integer]
Properties
The DataEntry property syntax has these parts:
Part Description
Settings
The settings for Integer are:
Value Description
0 None. (Default)
1 In line.
152
IFIX Automation Reference
DataItems Property
Returns a user defined collection of DataItem objects. DataItem objects can be added and removed
from this collection using the Add and Remove methods. When adding a DataItem, the DataItem
must exist within the iFIX data system or it will not be added to the collection. DataItem names must
be unique.
Syntax
object.DataItems
Properties
The DataItems property syntax has this part:
Part Description
Remarks
DataItems is a read-only property of type Object.
DataRefreshInterval Property
Specifies the rate at which real-time values are retrieved for tags in the current alarm list in the Alarm
Summary object.
Syntax
object.DataRefreshInterval [= Single]
Properties
The DataRefreshInterval property syntax has these parts:
Part Description
Single The rate, in seconds, at which real time values are retrieved for tags in the current alarm
list. The valid values are 0.1 - 300.0 The default is 0.5 seconds.
153
iFIX Automation Reference
DataServers Property
Returns a collection of installed data servers in the FixDataSystem.
Syntax
object.DataServers
Properties
The DataServers property syntax has this part:
Part Description
Remarks
DataServers is a read-only property of type Object.
The DataServers information is registered during installation of the OPC server using the
DataServerInstaller program.
DataSetColor Property
Sets the color used for the data set in the Enhanced Chart.
Syntax
object.DataSetColor [= Long]
Properties
The DataSetColor property syntax has these parts:
Part Description
154
IFIX Automation Reference
DataShadows Property
Sets whether shadows or 3D effects will be used in the plotting method for an Enhanced Chart.
Syntax
object.DataShadows [=enumDataShadows]
Properties
The DataShadows property syntax has these parts:
Part Description
enumDataShadows Specifies the shadow effects for the plotting method in the HistogramChart,
LineChart, SPCBarChart, or XYChart:
Valid entries:
0 – DataShadowsNone
1 – DataShadows
2 – Data3D
DaylightSavingsTime Property
Takes daylight saving time changes into account.
Syntax
object.DaylightSavingsTime [= Boolean]
Properties
The DaylightSavingsTime property syntax has these parts:
Part Description
155
iFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
Remarks
The DaylightSavingsTime property defaults to what is set in the Date/Time control panel under
“automatically adjust clock for daylight saving changes.”
DaysBeforeNow Property
Specifies the initial start date for the Chart, Pen, Lookup Object, Line, Formatted Object, or
HistoricalDataSet relative to the date the parent Picture is opened.
Syntax
object.DaysBeforeNow [= Integer]
Properties
The DaysBeforeNow property syntax has these parts:
Part Description
Remarks
DaysBeforeNow is a one-shot property.
This property is not impacted by any Global Time Control property settings.
156
IFIX Automation Reference
DaysOfMonth Property
Specifies which days in the month to run the current Timer object.
Syntax
object.DaysOfMonth [= Long]
Properties
The DaysOfMonth property syntax has these parts:
Part Description
Long The value corresponding to the bit mask for each day, where day 1 is the low order bit
and the end of the month is the 32nd bit.
Remarks
DaysOfMonth only applies if the TriggerType is set to Monthly.
DaysOfWeek Property
Specifies which days in the week to run the current Timer object.
Syntax
object.DaysOfWeek [= Long]
Properties
The DaysOfWeek property syntax has these parts:
Part Description
Long The value corresponding to the bit mask for each day, where day 1 is the low order bit.
157
iFIX Automation Reference
Remarks
DaysOfWeek only applies if the TriggerType is set to Daily.
Deadband Property
Specifies the amount a value must change by + or - before a data change is recognized.
Syntax
object.Deadband [= Single]
Properties
The Deadband property syntax has these parts:
Part Description
DecimalDigits Property
Specifies the number of digits to be displayed after the decimal point.
Syntax
object.DecimalDigits [=Integer]
Properties
The DecimalDigits property syntax has these parts:
Part Description
158
IFIX Automation Reference
Default Property
Specifies whether the specified control is the default button in a picture.
Syntax
object.Default [= Boolean]
Properties
The Default property syntax has this part:
Part Description
Settings
The settings for Boolean are:
Value Description
True The control is the Default button of the picture in the Run-time environment.
False The control is not the Default button of the picture. (Default)
Remarks
Only one control in a picture can be the default button. When Default is set to True for one control, it
is automatically set to False for all other controls in the picture. When the control's Default property
setting is True and its parent picture is active, the user can choose the command button (invoking its
Click event) by pressing ENTER. Any other control with the focus doesn't receive a keyboard event
(KeyDown, KeyPress, or KeyUp) for the ENTER key unless the user has moved the focus to another
button in the same picture. In this case, pressing ENTER chooses the button that has the focus instead
of the default button.
The Default property of a control can be set to True only if the control is a pushbutton control or any
control that behaves like a button i.e., marked with OLEMISC_ACTSLIKEBUTTON flag
DefaultDataSystem Property
Returns which is the default datasystem when a user types in a tag in an animation. For example, if the
default datasystem is "Fix32" and a users enters "AI1" into an animations dialog, the Fix32 datasystem
will resolve the tag (i.e. Fix32.AI1).
159
iFIX Automation Reference
Syntax
object.DefaultDataSystem
Properties
The DefaultDataSystem property syntax has this part:
Part Description
Remarks
DefaultDataSystem is a read-only property of type String.
The DefaultDataSytem information is registered during installation of the OPC server using the
DataServerInstaller program.
DefaultExternalDatasourceUpdateRate Property
Returns the refresh rate (in seconds) the Basic Animations dialog box uses as a default for a
connection.
Syntax
object.DefaultExternalDatasourceUpdateRate
Properties
The DefaultExternalDatasourceUpdateRate property syntax has this part:
Part Description
Remarks
DefaultExternalDatasourceUpdateRate is a read-only property of type Single.
DefaultOutputValue Property
Specifies the default output value.
160
IFIX Automation Reference
Syntax
object.DefaultOutputValue [= Variant]
Properties
The DefaultOutputValue property syntax has these parts:
Part Description
DefaultServer Property
Returns a flag signifying whether this OPC DataServer was installed as the default.
Syntax
object.DefaultServer
Properties
The DefaultServer property syntax has this part:
Part Description
Return Values
The DefaultServer property return values are:
Value Description
161
iFIX Automation Reference
Remarks
DefaultServer is a read-only property of type String.
The DefaultServer information is registered during installation of the OPC server using the
DataServerInstaller program.
Description Property
A user defined description of the specified object's function to be displayed in the object’s tooltip.
Syntax
object.Description [= String]
Properties
The Description property syntax has these parts:
Part Description
DeskColor Property
Allows you to specify the surrounding color of the Enhanced Chart, behind the title, sub-titles, and
legends.
Syntax
object.DeskColor [= Long]
Properties
The DeskColor property syntax has these parts:
Part Description
162
IFIX Automation Reference
Part Description
DigitalError Property
Retrieves the last value written to the digital error tag by the SecuritySynchronizer object. The value is
represented as a boolean.
Syntax
object.DigitalError
Properties
The DigitalError property syntax has this part:
Part Description
Remarks
DigitalError is a read-only property. It is only updated by SecuritySynchronizer at the end of the
security synchronization process. A value of 1 is written if an error is detected.
DigitalErrorTag Property
Sets or retrieves the digital iFIX database tag and floating point field to which a digital failure code is
written when the security synchronization process completes.
Syntax
object.DigitalErrorTag [= String]
Properties
The DigitalErrorTag property syntax has these parts:
163
iFIX Automation Reference
Part Description
Remarks
DigitalErrorTag corresponds to the /F command line parameter of the Security Synchronizer
application.
DigitsOfPrecision Property
Sets the number of decimal positions that are used in outputting data to the object Cursor Prompt,
Tables, Data Labels, and the Clipboard. Even though you set the numeric precision, the number of
decimal points specified does not appear on the chart unless it is necessary. For example, if you
specified the use of two decimal places, but all of the data values in your chart are whole numbers,
decimal points are not be used because they are not necessary. This setting does not apply to the axes
graduations and ticks.
Syntax
object.DigitsOfPrecision [= Long]
Properties
The DigitsOfPrecision property syntax has these parts:
Part Description
DisableAutoScale Property
Describes whether auto scaling is disabled. When you enable this setting, you override the picture's
logical units to a pixel ratio, when changing the resolution of your screen. This may be helpful for
multiple monitor configurations.
Syntax
object.DisableAutoScale [= Boolean]
164
IFIX Automation Reference
Properties
The DisableAutoScale property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True
Automatic picture scaling disabled.
DisplayLayer Property
Specifies the display layer for the current picture or dynamo set.
Syntax
object.DisplayLayer [= Long]
Properties
The DisplayLayer property syntax has these parts:
Part Description
165
iFIX Automation Reference
Remarks
The DisplayLayer property is not saved to disk, it is a transient property which is reset each time the
document is opened. To specify a particular display layer for a Picture when the picture is opened in
the Run-time environment, open the picture as "hidden" using the Open method and set the
DisplayLayer property in the pictures Activated event.
DisplayMilliseconds Property
If set, displays the millisecond component of time on the time axis and tooltip of the chart.
Syntax
object.DisplayMilliseconds [= Boolean]
Properties
The DisplayMilliseconds property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
DisplayStatusBar Property
Specifies whether the WorkSpace's Status Bar is visible.
Syntax
object.DisplayStatusBar [= Boolean]
166
IFIX Automation Reference
Properties
The DisplayStatusBar property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
DisplayString Property
Retrieves and sets the name of the procedure to execute when the key seqeunce of the key macro is
matched.
Syntax
object.DisplayString [= DisplayString]
Properties
The DisplayString property syntax has these parts:
Part Description
167
iFIX Automation Reference
DisplaySystemTree Property
Specifies whether the WorkSpace's System Tree is visible.
Syntax
object.DisplaySystemTree [= Boolean]
Properties
The DisplaySystemTree property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
DocumentHeight Property
Specifies the height of the document.
Syntax
object.DocumentHeight [= Double]
Properties
The DocumentHeight property syntax has these parts:
168
IFIX Automation Reference
Part Description
Remarks
The default DocumentHeight is 75.
DocumentPath Property
Returns the path used to store non-FIX related documents such as Word and Excel documents.
Syntax
object.DocumentPath
Properties
The DocumentPath property syntax has this part:
Part Description
Remarks
DocumentPath is a read-only property of type String.
Documents Property
Returns a collection of the documents that are open in the WorkSpace.
Syntax
object.Documents
Properties
The Documents property syntax has this part:
169
iFIX Automation Reference
Part Description
Remarks
Documents is a read-only property of type Object.
DocumentWidth Property
Specifies the width of the document.
Syntax
object.DocumentWidth [= Double]
Properties
The DocumentWidth property syntax has these parts:
Part Description
Remarks
The default DocumentWidth is 100.
Domain Property
Sets or retrieves the name of the Windows domain that acts as the source of security information for
the security synchronization process.
Syntax
object.Domain [= String]
170
IFIX Automation Reference
Properties
The Domain property syntax has these parts:
Part Description
Remarks
You must set Domain to a valid domain name when the UseDomainSecurity property is equal to
True.
This property corresponds to the domain name following the /D command line parameter of the
Security Synchronizer application.
DownImageDisplayed Property
Specifies whether the secondary image of the Bitmap is to be displayed when the mouse is down.
Syntax
object.DownImageDisplayed [= Boolean]
Properties
The DownImageDisplayed property syntax has these parts:
Part Description
Boolean Whether the secondary image is displayed on when the mouse is down.
Settings
The settings for Boolean are:
171
iFIX Automation Reference
Value Description
False The secondary image is not displayed when the mouse is down.
DSDescription Property
Sets the data set description in the HistoricalDataSet, RealTimeDataSet, or RealTimeSPCDataSet
object.
Syntax
object.DSDescription [= String]
Properties
The DSDescription property syntax has these parts:
Part Description
DSLegendAvgerageOverRangeColWidth Property
Sets the width of the Average Over Range Legend column in an Enhanced Chart.
Syntax
object.DSLegendAvgerageOverRangeColWidth [= Long]
Properties
The DSLegendAvgerageOverRangeColWidth property syntax has these parts:
Part Description
172
IFIX Automation Reference
Part Description
Long Whole number representing the width of the Average Over Range Legend column.
DSLegendCurrentValColWidth Property
Specifies the column width of the data value in the legend.
Syntax
object.DSLegendCurrentValColWidth [= Long]
Properties
The DSLegendCurrentValColWidth property syntax has these parts:
Part Description
Long Whole number representing the column width of the data value in the legend.
DSLegendDescriptionColWidth Property
Returns the top, left, and bottom-right values of the shape's bounding rectangle.
Syntax
object.DSLegendDescriptionColWidth [= Long]
Properties
The DSLegendDescriptionColWidth property syntax has these parts:
Part Description
Long Whole number representing the top, left, and bottom-right values of the shape's bounding
rectangle.
173
iFIX Automation Reference
DSLegendHighLimitColWidth Property
Specifies the column width of the high limit in the legend in an Enhanced Chart.
Syntax
object.DSLegendHighLimitColWidth [= Long]
Properties
The DSLegendHighLimitColWidth property syntax has these parts:
Part Description
Long Whole number representing the column width of the high limit in the legend in the
HistogramChart, LineChart, SPCBarChart, or XYChart Object.
DSLegendHighOverRangeColWidth Property
Specifies the column width of the high over range limit in the legend in an Enhanced Chart.
Syntax
object.DSLegendHighOverRangeColWidth [= Long]
Properties
The DSLegendHighOverRangeColWidth property syntax has these parts:
Part Description
Long Whole number representing the column width of the high over range limit in the legend
in the HistogramChart, LineChart, SPCBarChart, or XYChart Object.
DSLegendLowLimitColWidth Property
Specifies the column width of the low limit in the legend in an Enhanced Chart.
174
IFIX Automation Reference
Syntax
object.DSLegendLowLimitColWidth [= Long]
Properties
The DSLegendLowLimitColWidth property syntax has these parts:
Part Description
Long Whole number representing the column width of the low limit in the legend in the
HistogramChart, LineChart, SPCBarChart, or XYChart Object.
DSLegendLowOverRangeColWidth Property
Specifies the column width of the low over range limit in the legend in an Enhanced Chart.
Syntax
object.DSLegendLowOverRangeColWidth [= Long]
Properties
The DSLegendLowOverRangeColWidth property syntax has these parts:
Part Description
Long Whole number representing the column width of the low over range limit in the legend in
the HistogramChart, LineChart, SPCBarChart, or XYChart Object.
DSLegendMask Property
Indicates which legend items to show in the HistoricalDataSet, RealTimeDataSet, or
RealTimeSPCDataSet object.
Syntax
object.DSLegendMask [= Long]
175
iFIX Automation Reference
Properties
The DSLegendMask property syntax has these parts:
Part Description
Long A value that represents the Legend items to show in the data set:
DS_LEGEND_BITMASK_SOURCE_NAME (UINT32) – 0x00000001
DS_LEGEND_BITMASK_DESCRIPTION (UINT32) – 0x00000002
DS_LEGEND_BITMASK_CURRENT_VALUE (UINT32) – 0x00000004
DS_LEGEND_BITMASK_LOW_LIMIT (UINT32) – 0x00000008
DS_LEGEND_BITMASK_HIGH_LIMIT (UINT32) – 0x00000010
DS_LEGEND_BITMASK_AVG_OVER_RANGE (UINT32) – 0x00000020
DS_LEGEND_BITMASK_LOW_OVER_RANGE (UINT32) – 0x00000040
DS_LEGEND_BITMASK_HIGH_OVER_RANGE (UINT32) – 0x00000080
DS_LEGEND_BITMASK_QUALITY (UINT32) – 0x00000100
Remarks
DSLegendMask is a read-only property.
DSLegendQualityColWidth Property
Specifies the column width of the data quality in the legend in the Enhanced Chart.
Syntax
object.DSLegendQualityColWidth [= Long]
Properties
The DSLegendQualityColWidth property syntax has these parts:
Part Description
Long Whole number representing the column width of the data quality in the legend in the
HistogramChart, LineChart, SPCBarChart, or XYChart Object.
176
IFIX Automation Reference
DSLegendSourceColWidth Property
Specifies the column width of the data source name in the legend in an Enhanced Chart.
Syntax
object.DSLegendSourceColWidth [= Long]
Properties
The DSLegendSourceColWidth property syntax has these parts:
Part Description
Long Whole number representing the column width of the data source name in the legend in
the HistogramChart, LineChart, SPCBarChart, or XYChart Object.
DSPosition Property
DSPosition is a read-only data set property that allows you to retrieve the position of a data set in the
chart. For example, if you have one real-time data set, the DSPosition is 0. If you have two data sets in
a chart, the second data set’s DSPosition is 1.
Syntax
object.DSPosition [= Long]
Properties
The DSPosition property syntax has these parts:
Part Description
Remarks
DSPosition is a read-only property.
177
iFIX Automation Reference
Duration Property
Specifies the time duration, in seconds, to display data in the Chart, HistogramChart, LineChart, or
SPCBarChart.
Syntax
object.Duration [= Long]
Properties
The Duration property syntax has these parts:
Part Description
Long The length of time for which the Chart displays data.
Dynamo_Description Property
Returns the text description of a Dynamo object, if one exists. This property is read-only.
Syntax
DynamoObject.Dynamo_Description
Properties
The Dynamo_Description property syntax has this part:
Part Description
Return Value
String. A text description of the Dynamo object.
178
IFIX Automation Reference
Dynamo_ID Property
Returns the unique identifier (GUID) for the Dynamo Object. This property is read-only.
Syntax
DynamoObject.Dynamo_ID
Properties
The Dynamo_ID property syntax has this part:
Part Description
Return Value
String. This string represents a unique 128-bit number used as the Globally Unique Identifier (GUID)
for the Dynamo object.
EdgeColor Property
Specifies a shape's edge color.
Syntax
object.EdgeColor [= Long]
Properties
The EdgeColor property syntax has these parts:
Part Description
179
iFIX Automation Reference
EdgeStyle Property
Specifies the value representing a shape's edge style.
Syntax
object.EdgeStyle [= enumEdgeStyle]
Properties
The EdgeStyle property syntax has these parts:
Part Description
Settings
The settings for enumEdgeStyle are:
EdgeStyleSolid 0 Solid
EdgeStyleDash 1 Dash
EdgeStyleDot 2 Dot
EdgeStyleDashDot 3 Dash-Dot
EdgeStyleDashDotDot 4 Dash-Dot-Dot
EdgeStyleNone 5 No border.
180
IFIX Automation Reference
Properties
The EdgeStyle property syntax has these parts:
Part Description
Object Settings
The settings for enumBitmapEdgeStyle are:
BitmapEdgeNone 0 No edge.
Remarks
Changes to the EdgeStyle property are only visible when the EdgeWidth property of the object is set
to 1.
EdgeWidth Property
Specifies a shape's border width.
Syntax
object.EdgeWidth [= Long]
Properties
The EdgeWidth property syntax has these parts:
181
iFIX Automation Reference
Part Description
EditText Property
Specifies the text to be displayed in the combo box of the ExpressionEditor.
Syntax
object.EditText [= String]
Properties
The EditText property syntax has these parts:
Part Description
ElbowStyle Property
Specifies the elbow style to be applied to the current pipe object.
Syntax
object.ElbowStyle [= enumElbowStyle]
Properties
The ElbowStyle property syntax has this part:
Part Description
182
IFIX Automation Reference
Settings
The settings for enumElbowStyle are:
Value Description
0
ElbowStyleRound
1
ElbowStyleSquare
EnableAcknowledgeAll Property
Specifies whether Acknowledge All Alarms can be performed from the Alarm Summary object.
Syntax
object.EnableAcknowledgeAll [=Boolean]
Properties
The EnableAcknowledgeAll property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True Acknowledge All Alarms can be performed from the Alarm Summary object. (Default)
False Acknowledge All Alarms cannot be performed from the Alarm Summary object.
183
iFIX Automation Reference
Remarks
Setting EnableAcknowledgeAll to True allows the user to acknowledge all alarms from the Alarm
Summary object. Acknowledge All Alarms is not supported by electronic signature. Therefore, it is
recommend that EnableAcknowledgeAll be set to False on systems enabled for electronic signatures.
EnableAlarmAcknowledge Property
Specifies whether alarms can be acknowledged using the Alarm Summary window.
Syntax
object.EnableAlarmAcknowledge [= Boolean]
Properties
The EnableAlarmAcknowledge property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True Alarms can be acknowledged using the Alarm Summary window. (Default)
EnableAlarmDeletion Property
Specifies whether alarms can be deleted from the Alarm Summary object.
Syntax
object.EnableAlarmDeletion [= Boolean]
184
IFIX Automation Reference
Properties
The EnableAlarmDeletion property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True Alarms can be deleted from the Alarm Summary object. (Default)
Remarks
Setting EnableAlarmDeletion to True allows the user to delete alarms whether they have been
acknowledged or not.
EnableAsVbaControl Property
Specifies whether a variable object is registered in VBA and if you can use it in VBA scripts. For
example, you may want to disable the registration of some variable objects in VBA if you do not need
these objects in scripts or need to create event procedures for these objects (i.e. OnChange, OnFalse, or
OnTrue). By minimizing the number of VBA objects, you optimize performance.
Syntax
object.EnableAsVbaControl [= Boolean]
Properties
The EnableAsVbaControl property syntax has these parts:
185
iFIX Automation Reference
Part Description
Boolean Whether the object is registered in VBA and if it can be used in VBA scripts.
Remarks
An example of how to set the EnableAsVbaControl property for a picture would be:
picture_name.object_name.EnableAsVbaControl False
EnableColumnQuickSort Property
Specifies whether columns can be sorted in the Alarm Summary object.
Syntax
object.EnableColumnQuickSort [= Boolean]
Properties
The EnableColumnQuickSort property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True A left mouse click on a column header toggles the sort order of the list of alarms
between ascending and descending order.
186
IFIX Automation Reference
Remarks
Only the Node, Priority, Tagname, and Time In columns support sorting.
Enabled Property
Returns whether the Color Button or FixKeyMacro Object is enabled.
Syntax
object.Enabled
Properties
The Enabled property syntax has this part:
Part Description
Return Values
The Enabled property return values are:
Value Description
Remarks
Enabled is a read-only property of type Boolean.
EnableGlobalEndTime Property
Specifies whether the end time is utilized for the object display. When this property is false, the
combination of the GlobalStartTime and the GlobalDuration define the GlobalEndTime of the Global
Time Control.
187
iFIX Automation Reference
Syntax
object.EnableGlobalEndTime [= Boolean]
Properties
The EnableGlobalEndTime property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
EnableGlobalScrollPercentage Property
Specifies whether the scroll percentage is enabled for the Global Time Control.
Syntax
object.EnableGlobalScrollPercentage [= Boolean]
Properties
The EnableGlobalScrollPercentage property syntax has these parts:
Part Description
188
IFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
EnableEndTime Property
Specifies whether the end time is utilized or not for a Timer object.
Syntax
object.EnableEndTime [= Boolean]
Properties
The EnableEndTime property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
189
iFIX Automation Reference
EnableRightMouseClick Property
Specifies whether the right mouse menu is displayed when the user clicks in the Alarm Summary
object.
Syntax
object.EnableRightMouseClick [= Boolean]
Properties
The EnableRightMouseClick property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True The right mouse menu is displayed when the user clicks the right mouse in the
spreadsheet. (Default)
EnableRunTimeConfiguration Property
Specifies whether the user is allowed to change the Alarm Summary filter and sort in the Run-time
environment.
Syntax
object.EnableRunTimeConfiguration [= Boolean]
Properties
The EnableRunTimeConfiguration property syntax has these parts:
190
IFIX Automation Reference
Part Description
Boolean Whether the filter and sort can be changed in the run environment.
Settings
The settings for Boolean are:
Value Description
True The user can change the filter and sort in the Alarm Summary object in the Run-time
environment. (Default)
False The user is not allowed to change the filter and sort.
EnableTooltips Property
Specifies whether the tooltips are shown for the specified object.
Syntax
object.EnableTooltips [= Boolean]
Properties
The EnableTooltips property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
191
iFIX Automation Reference
Value Description
False The tooltips for the specified shape are not displayed. (Default)
Remarks
When EnableTooltips is set to True, the text displayed is the text set in the Description property for
the specified object.
EndAngle Property
Specifies which portion of the object is visible.
Syntax
object.EndAngle [= Double]
Properties
The EndAngle property syntax has these parts:
Part Description
Double The number of units to display the radial segment specifying the end of the angle.
Remarks
The Pie is merely a visible piece of an oval. The StartAngle and EndAngle properties specify which
portions of that oval will be visible. These properties define radial segments from the center of the oval
between which Pie is formed.
An EndAngle of 0 units will define a horizontal radial from the center of the oval to the right.
An EndAngle of 90 units will define a vertical radial from the center of the oval to the top of the
screen.
An EndAngle of 180 units will define a horizontal radial from the center of the oval to the left side of
the screen.
An EndAngle of 270 units will define a vertical radial from the center of the oval to the bottom of the
screen.
The units to be used when creating the angle is specified as either degrees or radians depending on the
value of the AngleUnits property.
192
IFIX Automation Reference
EndCap Property
Specifies the end cap to apply to the selected pipe object.
Syntax
object.EndCap [= enumEndCap]
Properties
The EndCap property syntax has these parts:
Part Description
Settings
The settings for enumEndCap are:
Value Description
0 EndCapRound
1 EndCapSquare
2
EndCapHorizontalDiagonal
3
EndCapVerticalDiagonal
EndPoint Property
Specifies the ending point of the object.
Syntax
object.EndPoint [= Object]
193
iFIX Automation Reference
Properties
The EndPoint property syntax has these parts:
Part Description
Remarks
The EndPoint property specifies a point object which contains an x and y double value which are
logical coordinate values equivalent to the StartX and StartY properties.
The EndPoint for the Pie also defines the end points of the line segments which define the StartAngle
and EndAngle of the object.
The EndPoint for the Arc, Chord, and Line objects is the point located at index 1.
The EndPoint for the Pie object is the point located at index 2.
EndTime Property
Specifies the last time displayed in the Chart for all pens, for a specific Pen and/or the end time for
that day to stop running the specified Timer object, in the Lookup Object, Line, Formatted Object, or
in a HistoricalDataSet object.
Properties
The EndTime property syntax has these parts:
Part Description
194
IFIX Automation Reference
Remarks
The EndTime property is a convenience property enabling the user to set the end times for all pens
displayed in the Chart. The end times that are displayed in the Chart are those for the specific pens.
Therefore, the user may not see what he/she expects because the chart's end time is overruled by each
of the pen's ending times.
This property is not impacted by any Global Time Control property settings.
Timer Syntax
object.EndTime [= Variant]
Properties
The EndTime property syntax has these parts:
Part Description
Variant The end time of that day that you want the timer to stop running.
Remarks
EndTime takes a DATE for the Timer object. EndTime is a read-only property.
EndX Property
Specifies the horizontal location of the last point in the specified shape.
Syntax
object.EndX [= Double]
Properties
The EndX property syntax has these parts:
Part Description
195
iFIX Automation Reference
EndY Property
Specifies the vertical location of the last point in the specified shape.
Syntax
object.EndY [= Double]
Properties
The EndY property syntax has these parts:
Part Description
ErrorMode Property
Specifies which mode to use if the quality of the data received by the animation object is not reliable.
Syntax
object.ErrorMode [= Long]
Properties
The ErrorMode property syntax has these parts:
Part Description
196
IFIX Automation Reference
Value Description
0 Use old.
1 Use error.
Value Description
0 Use old.
1 Use error.
50 Use min.
51 Use max.
Remarks
The ErrorMode property is related to the error defines specified in User Preferences for the animation
objects.
When a value is sent from the data system, it has an associated quality. If the quality is bad and the
user has specified 0 - Use old, the user will not see any change of data on the screen. The last good
value that the animation object sent to its target will be sent again. If the user has specified 1 - Use
error, the corresponding value specified in the User Preference will be obtained and displayed on the
screen (this is most notable when the user sees "????" or "@@@@" for datalinks). If the object is a
Linear object, and 50 - Use min or 51 - Use max are specified, the data displayed will be the minimum
or maximum ouput values, respectively.
EventParameter Property
Reserved for internal purposes.
EventType Property
Specifies the type of event for the Event object.
197
iFIX Automation Reference
Syntax
object.EventType [= Long]
Properties
The EventType property syntax has these parts:
Part Description
Settings
The settings for Long are:
Value Description
0 OnChange
1 OnTrue
2 OnFalse
3 WhileTrue
4 WhileFalse
NOTE: If you change the EventType property from the Properties window, you do not change the
script. If you change the EventType from the Modify Event Entry dialog box then you are prompted to
apply the existing script to the new event.
ExactMatch Property
Specifies if the Lookup object is a range or an exact match table.
198
IFIX Automation Reference
Syntax
object.ExactMatch [= Boolean]
Properties
The ExactMatch property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ExtendMaxSpace Property
Specifies the maximum pixel length of the space between the line to be extended and the intersection
point. If the space is greater than this number, the line will not be extended to the intersection point.
Syntax
object.ExtendMaxSpace [=Integer]
Properties
The ExtendMaxSpace property syntax has these parts:
Part Description
199
iFIX Automation Reference
Part Description
Integer The maximum number of pixels allowed between the line to be extended and the
intersection point.
ExtendType Property
Specifies the line extension option to apply to all line objects.
Syntax
object.ExtendType [=enumExtendType]
Properties
The ExtendType property syntax has these parts:
Part Description
Settings
The settings for enumExtendType are:
ShorterthanHalf 1
Extend only when the extension is shorter than half the
line.
ShorterThanSpecified 2
Extend only when the extension is shorter than the
specified pixels.
200
IFIX Automation Reference
FadeColor Property
Specifies the fade color of an object when the FillStyle pattern is Gradient.
Syntax
object.FadeColor [= Long]
Properties
The FadeColor property syntax has these parts:
Part Description
FadeType Property
Specifies the type of fade effect used for the object's gradient fill.
Syntax
object.FadeType [=enumFadeType]
Properties
The FadeType property syntax has these parts:
Part Description
201
iFIX Automation Reference
Settings
The settings for enumFadeType are:
Linear 0 Linear
Reflected 1 Reflected
Radial 2 Radial
Concentric 3 Concentric
Remarks
The GradientAngle property is useful when the FadeType is either Linear or Reflected.
FailedSource Property
Returns the source of a failed connection attempt.
Syntax
object.FailedSource
Properties
The FailedSource property syntax has this part:
Part Description
Remarks
FailedSource is a read-only property of type String.
When a user calls SetSource with "AI1+AI2" where AI1 exists and AI2 does not, FailedSource would
contain AI2 (provided that the bUseAnyway parameter was not set to True).
202
IFIX Automation Reference
FetchDataSetLimits Property
Allows the low and high limits of the selected data source to be retrieved at run-time for a
HistoricalDataSet, RealTimeDataSet, or RealTimeSPCDataSet object. Disable this property to use the
High and Low Limit properties instead.
Syntax
object.FetchDataSetLimits [= Boolean]
Properties
The FetchDataSetLimits property syntax has these parts:
Part Description
Boolean Whether to fetch the high and low limits of the data set.
Settings
The settings for Boolean are:
Value Description
FetchPenLimits Property
Specifies whether to fetch the limits for the specified Pen.
Syntax
object.FetchPenLimits [= Boolean]
Properties
The FetchPenLimits property syntax has these parts:
203
iFIX Automation Reference
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
FetchPenLimits is a one-shot property in the Run-time environment.
FileName Property
Returns the file name of the specified Document.
Syntax
object.FileName
Properties
The FileName property syntax has this part:
Part Description
Remarks
FileName is a read-only property of type String.
204
IFIX Automation Reference
FillStyle Property
Specifies the pattern that will be used to fill the interior of the shape.
Syntax
object.FillStyle [= enumFillStyle]
Properties
The FillStyle property syntax has these parts:
Part Description
Settings
The settings for enumFillStyle are:
FillStyleSolid 0 Solid.
FillStyleHollow 1 Hollow.
FillStyleHorizontal 2 Horizontal.
FillStyleVertical 3 Vertical.
FillStyleCrossHatch 6 Crosshatch.
FillStyleGradient 8 Gradient.
205
iFIX Automation Reference
Remarks
The FillStyle pattern is generated by alternating the BackgroundColor and ForegroundColor of the
shape, except when the FillStyle pattern is Gradient. When the FillStyle pattern is Gradient, the
ForegroundColor and FadeColor of the shape alternate.
FilterString Property
Specifies the expression on which the Alarm Summary object is filtering.
Syntax
object.FilterString [= String]
Properties
The FilterString property syntax has these parts:
Part Description
FixedDate Property
Specifies a fixed date for the Chart, Pen, Lookup Object, Line, Formatted Object, or
HistoricalDataSet.
Syntax
object.FixedDate [= DateTime]
Example
#1/1/2000 12:00:00 AM#
Properties
The FixedDate property syntax has these parts:
206
IFIX Automation Reference
Part Description
Remarks
FixedDate is a one-shot property.
The default value for FixedDate is the date at which the Pen or Chart was created. Although this
property is passed as a complete Date and Time datatype, the Time portion is ignored.
This property is not impacted by any Global Time Control property settings.
FixedTime Property
Specifies a fixed time in the Chart, Pen, Lookup Object, Line, Formatted Object, or
HistoricalDataSet.
Syntax
object.FixedTime [= DateTime]
Example
#1/1/2000 12:00:00 AM#
Properties
The FixedTime property syntax has these parts:
Part Description
Remarks
FixedTime is a one-shot property.
The default value for the FixedTime property is the time at which the Pen or Chart was created.
Although this property is passed as a complete Date and Time datatype, the Date portion is ignored.
207
iFIX Automation Reference
This property is not impacted by any Global Time Control property settings.
FixPath Property
Returns the requested iFIX system path for the specified path index.
Syntax
object.FixPath(ePathID as PathID)
Properties
The FixPath property syntax has these parts:
Part Description
Settings
The settings for PathID are:
208
IFIX Automation Reference
NOTE: To access these constants, add a reference to the iFIX Global System Information Type
Library in the Visual Basic Editor.
Remarks
FixPath is a read-only property of type String.
Font Property
Specifies the Font to be displayed in the ExpressionEditor.
Syntax
object.Font [= StdFont]
Properties
The Font property syntax has these parts:
Part Description
209
iFIX Automation Reference
FontName Property
Specifies the font family which will be used to display text.
Syntax
object.FontName [= String]
Properties
The FontName property syntax has these parts:
Part Description
FontSize Property
Specifies the point size for text display.
Syntax
object.FontSize [= Long]
Properties
The FontSize property syntax has these parts:
Part Description
FontStyle Property
Determines if the text will display a Bold, Italic, or combination of styles.
210
IFIX Automation Reference
Syntax
object.FontStyle [= enumFontStyle]
Properties
The FontStyle property syntax has these parts:
Part Description
Settings
The settings for enumFontStyle are:
ForceVerticalPoints Property
Sets whether point labels are forced into vertical, horizontal, or slanted orientation, or whether the
orientation is automatically determined by the Enhanced Chart object (HistogramChart, LineChart,
SPCBarChart, or XYChart Object).
Syntax
object.ForceVerticalPoints [= enumForceVerticalPoints]
Properties
The ForceVerticalPoints property syntax has these parts:
211
iFIX Automation Reference
Part Description
enumForceVerticalPoints An enumeration that represents the point label display settings in the
Enhanced Chart:
Valid entries:
0 – PointLabelAuto
1 – PointLabelVertical
2 – PointLabelHorizontal
3 – PointLabelSlanted
ForegroundColor Property
Specifies the color to be used to fill the interior of a shape.
Syntax
object.ForegroundColor [= Long]
Properties
The ForegroundColor property syntax has these parts:
Part Description
ForegroundEdgeColor Property
Specifies the foreground edge color of the Chart.
Syntax
object.ForegroundEdgeColor [= Long]
Properties
The ForegroundEdgeColor property syntax has these parts:
212
IFIX Automation Reference
Part Description
Long The COLORREF used to set the chart's foreground edge color.
ForegroundEdgeStyle Property
Specifies the foreground edge style of the Chart.
Syntax
object.ForegroundEdgeStyle [= enumEdgeStyle]
Properties
The ForegroundEdgeStyle property syntax has these parts:
Part Description
Settings
The settings for enumEdgeStyle are:
EdgeStyleSolid 0 Solid.
EdgeStyleDash 1 Dash.
EdgeStyleDot 2 Dot.
EdgeStyleDashDot 3 Dash-Dot.
EdgeStyleDashDotDot 4 Dash-Dot-Dot.
213
iFIX Automation Reference
EdgeStyleNone 5 No border.
ForegroundEdgeWidth Property
Specifies the foreground edge width of the Chart.
Syntax
object.ForegroundEdgeWidth [= Long]
Properties
The ForegroundEdgeWidth property syntax has these parts:
Part Description
Format Property
Specifies the C sprintf format string into which the input is formatted for the Format object.
Syntax
object.Format [= String]
Properties
The Format property syntax has these parts:
Part Description
214
IFIX Automation Reference
Part Description
FormatDataType Property
Specifies whether the format object is alphanumeric or numeric.
Syntax
object.FormatDataType
Properties
The FormatDataType property syntax has this part:
Part Description
Settings
FormatDataType is a read-only property of type enumFormatDataType. The settings for
enumFormatDataType are:
Constant Value
Alphanumeric 0
Numeric 1
FullName Property
Returns the full path name for the WorkSpace executable file or the specified Document object.
Syntax
object.FullName
215
iFIX Automation Reference
Properties
The FullName property syntax has this part:
Part Description
Remarks
FullName is a read-only property of type String.
FullScreen Property
Specifies whether the client area of the open document covers the entire screen.
Syntax
object.FullScreen [= Boolean]
Properties
The FullScreen property syntax has these parts:
Part Description
Boolean Whether the client area of the document covers the entire screen.
Settings
The settings for Boolean are:
Value Description
False The current document does not cover the entire screen. (Default)
216
IFIX Automation Reference
FullyQualifiedName Property
Returns the containment hierarchy for the specified object.
Syntax
object.FullyQualifiedName
Properties
The FullyQualifiedName property syntax has this part:
Part Description
Remarks
FullyQualifiedName is a read-only property of type String.
G-J
GlobalDuration Property
Specifies the time duration, in seconds, to display historical data in run mode.
Syntax
object.GlobalDuration [= Long]
Properties
The GlobalDuration property syntax has these parts:
Part Description
Long The length of time, in seconds, for which the object displays data.
217
iFIX Automation Reference
GlobalEndTime Property
Specifies the end time displayed in the Global Time Control for all historical data sources in run mode.
This property is not applied until the GlobalTimerApply method is called.
Syntax
object.GlobalEndTime [= Date]
Properties
The GlobalEndTime property syntax has these parts:
Part Description
GlobalFastScrollOption Property
Allows you to specify whether the fast scroll rate for historical data in run mode is in days, hours,
minutes, or seconds.
Syntax
object.GlobalFastScrollOption [= enumGlobalFastScroll]
Properties
The GlobalFastScrollOption property syntax has these parts:
Part Description
enumGlobalFastScroll The units in which the Global Time Control can be scrolled when the
System object's EnableGlobalScrollPercentage property is False. The
enumeration values are as follows:
0 = Days
1 = Hours
2 = Mins
3 = Secs
218
IFIX Automation Reference
GlobalHistoricalUpdateRate Property
Allows you to specify how quickly historical data sources update in run mode.
Syntax
object.GlobalHistoricalUpdateRate [= Long]
Properties
The GlobalHistoricalUpdateRate property syntax has these parts:
Part Description
GlobalOutputToggle Property
Specifies whether the table has a global toggle source.
Syntax
object.GlobalOutputToggle [= Boolean]
Properties
The GlobalOutputToggle property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
219
iFIX Automation Reference
Value Description
Remarks
If GlobalOutputToggle is set to True, the output will be toggled based on a different data source
(blink on a new alarm, for example).
GlobalSlowScrollOption Property
Allows you to specify whether the slow scroll rate for historical data in run mode is in days, hours,
minutes, or seconds.
Syntax
object.GlobalSlowScrollOption [= enumGlobalSlowScroll]
Properties
The GlobalSlowScrollOption property syntax has these parts:
Part Description
enumGlobalSlowScroll The units in which the Global Time Control can be scrolled when the
System object's EnableGlobalScrollPercentage property is False. The
enumeration values are as follows:
0 = Days
1 = Hours
2 = Mins
3 = Secs
GlobalSlowScrollRate Property
Specifies how slowly historical data can be scrolled in run mode.
220
IFIX Automation Reference
Syntax
object.GlobalSlowScrollRate [= Double]
Properties
The GlobalSlowScrollRate property syntax has these parts:
Part Description
Double The rate at which the object can be scrolled. The unit of measure depends on if the
EnableGlobalScrollPercentage Property is enabled. If it is, then the unit of measure is a
percentage. If it is not, then it is the unit of measure specified in the
GlobalSlowScrollOption property.
GlobalStartTime Property
Specifies the start time of the Global Time Control for historical data sources in all open pictures in run
mode. This property is not applied until the GlobalTimerApply method is called.
Syntax
object.GlobalStartTime [= Date]
Properties
The GlobalStartTime property syntax has these parts:
Part Description
GlobalTimerPause Property
Pauses the configured global time control settings to historical data sources in all open pictures in run
mode.
221
iFIX Automation Reference
Syntax
object.GlobalTimerPause [= Boolean]
Properties
The GlobalTimerPause property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
GlobalTimeSync Property
Specifies whether the picture will be sensitive to changes in the Global Time Control.
Syntax
object.GlobalTimeSync [= Boolean]
Properties
The GlobalTimeSync property syntax has these parts:
Part Description
Boolean Whether the picture is enabled for time synchronization with the Global Time Control.
222
IFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
GlobalToggle Property
Specifies the value that will be displayed when the source evaluates to True if the user has set up a
global toggle source.
Syntax
object.GlobalToggle [= Variant]
Properties
The GlobalToggle property syntax has these parts:
Part Description
Remarks
The value will blink between the current value and this GlobalToggle value. This overrides any blink
set up specifically in the table.
Gradient Property
Enables the gradient effect in the picture background. The gradient blends the ForegroundColor and
BackgroundColor of the picture.
Syntax
object.Gradient
223
iFIX Automation Reference
Properties
The Gradient property syntax has these parts:
Part Description
GlobalFastScrollRate Property
Specifies how quickly the historical data can be scrolled in run mode.
Syntax
object.GlobalFastScrollRate [= Double]
Properties
The GlobalFastScrollRate property syntax has these parts:
Part Description
Double The rate at which the object can be scrolled. The unit of measure depends on if the
EnableGlobalScrollPercentage Property is enabled. If it is, then the unit of measure is a
percentage. If it is not, then it is the unit of measure specified in the
GlobalFastScrollOption property.
GradientAngle Property
Specifies the angle (in radians or degrees) of the object's gradient fill.
Syntax
object.GradientAngle [=Double]
Properties
The GradientAngle property syntax has these parts:
224
IFIX Automation Reference
Part Description
Remarks
In Configuration mode, GradientAngle changes as you rotate the object.
The units to be used when creating the angle is specified as either degrees or radians, depending on the
value of the AngleUnits property.
GraphBackColor Property
Allows you to specify the background color of the graph in an Enhanced Chart.
Syntax
object.GraphBackColor [=Long]
Properties
The GraphBackColor property syntax has these parts:
Part Description
GraphForeColor Property
Allows you to specify the grid color of the graph (foreground color) in an Enhanced Chart. The grid
lines and tick marks are drawn in this color.
Syntax
object.GraphForeColor [=Long]
225
iFIX Automation Reference
Properties
The GraphForeColor property syntax has these parts:
Part Description
Long An Integer representing the color value of the grid foreground color of a
HistogramChart, LineChart, SPCBarChart, or XYChart Object.
GraphPlusTable Property
Sets whether the Enhanced Chart displays a graph, table, or both a graph and table.
Syntax
object.GraphPlusTable [=enumGraphPlusTable]
Properties
The GraphPlusTable property syntax has these parts:
Part Description
Valid entries:
0 – Graph
1 – Table
2 – BothGraphPlusTable
GraphPlusTableMenu Property
Sets the visibility of the menu in an Enhanced Chart with both a graph and table.
226
IFIX Automation Reference
Syntax
object.GraphPlusTableMenu [=enumGraphPlusTableMenu]
Properties
The GraphPlusTableMenu property syntax has these parts:
Part Description
Valid entries:
0 – Hide
1 – Show
2 – Greyed
GridEnabled Property
Specifies whether the grid is being used for the specified Picture or DynamoSet.
Syntax
object.GridEnabled [= Boolean]
Properties
The GridEnabled property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
227
iFIX Automation Reference
Value Description
GridInFront Property
Specifies that the grid appears in front of the data in an Enhanced Chart.
Syntax
object.GridInFront [= Boolean]
Properties
The GridInFront property syntax has these parts:
Part Description
Boolean Whether the grid displays in front of the data in a HistogramChart, LineChart,
SPCBarChart, or XYChart Object.
Settings
The settings for Boolean are:
Value Description
GridInterval Property
Specifies the amount of pixels between grid points.
228
IFIX Automation Reference
Syntax
object.GridInterval [= Long]
Properties
The GridInterval property syntax has these parts:
Part Description
GridLinesToShow Property
Specifies which grid lines to show in an Enhanced Chart.
Syntax
object.GridLinesToShow [=enumGridLinesToShow]
Properties
The GridLinesToShow property syntax has these parts:
Part Description
Valid entries:
0 – GridBothXY
1 – GridYAxis
2 – GridXAxis
3 – GridNone
229
iFIX Automation Reference
GridStyle Property
Specifies the style of the gird lines in an Enhanced Chart.
Syntax
object.GridStyle [=enumGridStyle]
Properties
The GridStyle property syntax has these parts:
Part Description
Valid entries:
0 – GridThin
1 – GridThick
2 – GridDot
3 – GridDash
4 – GridOnePixel
GridWidth Property
Specifies the width of each grid line in a Chart.
Syntax
object.GridWidth [= Long]
Properties
The GridWidth property syntax has these parts:
Part Description
230
IFIX Automation Reference
Part Description
Groups Property
Returns a user defined collection of Group (DataSystem) objects. Group (DataSystem) objects can
be added and removed from this collection using the Add and Remove methods. Group names must be
unique.
Syntax
object.Groups
Properties
The Groups property syntax has this part:
Part Description
Remarks
Groups is a read-only property of type Object.
Height Property
Specifies the height, in logical units, of the specified object.
Syntax
object.Height [= Double]
Properties
The Height property syntax has these parts:
Part Description
231
iFIX Automation Reference
Part Description
Remarks
For shapes, the units are in logical units defined by the Picture document size. This logical coordinate
system allows pictures to be developed and saved independently of screen resolution. It also supports
panning and zooming. Mapping logical to device units is based on the window location.
HelpFile Property
Specifies the user defined context sensitive help file which should be associated with the specified
document.
Syntax
object.HelpFile [= String]
Properties
The HelpFile property syntax has these parts:
Part Description
HelpPath Property
Returns the path of the iFIX Help files.
Syntax
object.HelpPath
Properties
The HelpPath property syntax has this part:
232
IFIX Automation Reference
Part Description
Remarks
HelpPath is a read-only property of type String.
HideMathFunctionsButton Property
Specifies whether to hide the Mathematical Functions button in the ExpressionEditor dialog box.
Syntax
object.HideMathFunctionsButton [= Boolean]
Properties
The HideMathFunctionsButton property syntax has this part:
Part Description
Settings
The settings for Boolean are:
Value Description
HiDisplay Property
Specifies the high display limit of the TimeAxis or ValueAxis.
233
iFIX Automation Reference
TimeAxis Syntax
object.HiDisplay [= Date]
Properties
The HiDisplay property syntax has these parts:
Part Description
Date The time and date to display for the Time Axis.
ValueAxis Syntax
object.HiDisplay [= Double]
Properties
The HiDisplay property syntax has these parts:
Part Description
HighestDataValue Property
Specifies the highest value for the specified Pen.
Syntax
object.HighestDataValue[= Double]
Properties
The HighestDataValue property syntax has these parts:
234
IFIX Automation Reference
Part Description
HighlightEnabled Property
Specifies whether the specified shape should have a "highlight" rectangle drawn around it when the
mouse passes over it in the Run-time environment.
Syntax
object.HiglightEnabled[= Boolean]
Properties
The HighlightEnabled property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True The object should appear highlighted in the Run-time environment when the mouse
passes over it.
False The object should not appear highlighted in the Run-time environment when the mouse
passes over it. (Default)
Remarks
The default setting for HighlightEnabled is False for all objects except Ole Controls.
235
iFIX Automation Reference
The user then has the option of setting HighlightEnabled back to False.
HighlightedDatasource Property
Specifies the datasource of the currently highlighted object.
Syntax
object.HiglightedDatasource
Properties
The HighlightdDatasource property syntax has this part:
Part Description
HiInValue Property
Specifies the upper limit on the input value.
Syntax
object.HiInValue [= Variant]
Properties
The HiInValue property syntax has these parts:
Part Description
236
IFIX Automation Reference
HiLimit Property
Specifies the upper limit for the specified Pen, HistoricalDataSet, RealTimeDataSet, or
RealTimeSPCDataSet.
Syntax
object.HiLimit [= Double]
Properties
The HiLimit property syntax has these parts:
Part Description
HiOutValue Property
Specifies the upper limit on the output value.
Syntax
object.HiOutValue [= Variant]
Properties
The HiOutValue property syntax has these parts:
Part Description
HistMode Property
Allows you to determine how iFIX selects data from a historical data source and displays it in the
chart, and determines what each displayed value represents.
237
iFIX Automation Reference
Syntax
object.HistMode [= enumHistMode]
Properties
The HistMode property syntax has these parts:
Part Description
enumHistMode An enumeration representing how iFIX selects data from a historical data
source and displays it in a HistoricalDataSet:
Valid entries:
0 – HDS_Sample
1 – HDS_Avg
2 – HDS_High
3 – HDS_Low
4 – HDS_Interpolated
13 – HDS_CurrentValue
HistoricalSampleType Property
Specifies the data retrieval mode for the specified Pen.
Syntax
object.HistoricalSampleType [= enumHTRMode]
Properties
The HistoricalSampleType property syntax has these parts:
Part Description
238
IFIX Automation Reference
Settings
The settings for enumHTRMode are:
Sample 0 Sample.
High 1 High.
Low 2 Low.
Average 3 Average.
Interpolated 4 Interpolated.
HistUpdateRate Property
Sets the historical update rate, in seconds, of the Enhanced Chart.
Syntax
object.HistUpdateRate [= Long]
Properties
The HistUpdateRate property syntax has these parts:
Part Description
Long The historical update rate, in seconds, for the HistogramChart, LineChart, SPCBarChart,
or the XYChart Object.
Remarks
This property is not impacted by any Global Time Control property settings.
239
iFIX Automation Reference
HorizontalFillDirection Property
Specifies a value representing the direction of a shape's horizontal fill.
Syntax
object.HorizontalFillDirection [= enumHorizontalDirection]
Properties
The HorizontalFillDirection property syntax has these parts:
Part Description
Settings
The settings for enumHTRMode are:
HorizontalFillPercentage Property
Specifies the percentage to horizontally fill a shape.
Syntax
object.HorizontalFillPercentage [= Double]
Properties
The HorizontalFillPercentage property syntax has these parts:
240
IFIX Automation Reference
Part Description
HorizontalGridColor Property
Specifies the color of the horizontal grid lines.
Syntax
object.HorizontalGridColor [= Long]
Properties
The HorizontalGridColor property syntax has these parts:
Part Description
HorizontalGridStyle Property
Specifies the style of the horizontal grid lines.
Syntax
object.HorizontalGridStyle [= enumEdgeStyle]
Properties
The HorizontalGridStyle property syntax has these parts:
Part Description
241
iFIX Automation Reference
Part Description
Settings
The settings for enumEdgeStyle are:
EdgeStyleSolid 0 Solid.
EdgeStyleDash 1 Dash.
EdgeStyleDot 2 Dot.
EdgeStyleDashDot 3 Dash-Dot.
EdgeStyleDashDotDot 4 Dash-Dot-Dot.
EdgeStyleNone 5 No border.
HorizontalPosition Property
Specifies a shape's distance, in logical units, from the left of the Picture or DynamoSet.
Syntax
object.HorizontalPosition [= Double]
Properties
The HorizontalPosition property syntax has these parts:
Part Description
242
IFIX Automation Reference
Part Description
Remarks
For shapes, the units are in logical units defined by the Picture document size. This logical coordinate
system allows pictures to be developed and saved independently of screen resolution. It also supports
panning and zooming. Mapping logical to device units is based on the window location.
HorizontalScaleDirection Property
Specifies if the direction in which the specified shape will expand or contract when the
HorizontalScalePercentage property is changed.
Syntax
object.HorizontalScaleDirection [= enumHorizontalDirection]
Properties
The HorizontalScaleDirection property syntax has these parts:
Part Description
Settings
The settings for enumHorizontalDirection are:
243
iFIX Automation Reference
HorizontalScalePercentage Property
Specifies the scale percentage to apply to a shape's width.
Syntax
object.HorizontalScalePercentage [= Double]
Properties
The HorizontalScalePercentage property syntax has these parts:
Part Description
Remarks
In the Configuration environment, HorizontalScalePercentage will not be set back to 100 until the
object is de-selected. Therefore, while selected, the object will contain it's current percentage value
relative to the size of the object when it was last selected. Once de-selected, the object's
HorizontalScalePercentage property will be reset back to 100.
An object’s scale percentage can be negative. This causes the object to flip over its left axis. This effect
is useful for creating differential bar graphs by using an expression in the data source that takes the
value and subtracts a setpoint. The resulting difference from the setpoint can be used to by the
HorizontalScalePercentage property. For example, you could animate a color table to change color
based on the sign of a result.
ImageCount Property
Returns the number of images loaded in the Bitmap.
Syntax
object.ImageCount
Properties
The ImageCount property syntax has this part:
244
IFIX Automation Reference
Part Description
Remarks
ImageCount is a read-only property of type Integer.
IncludeDataLabels Property
Specifies whether the data points include labels. This property only applies to XY Enhanced Charts.
Syntax
object.IncludeDataLabels [= Boolean]
Properties
The IncludeDataLabels property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
Index Property
Returns the one-based index in the collection of the specified object.
245
iFIX Automation Reference
Syntax
object.Index
Properties
The Index property syntax has this part:
Part Description
Remarks
Index is a read-only property of type Long.
InitialValue Property
Specifies the inital value for the specified variable.
Syntax
object.InitialValue [= Variant]
Properties
The InitialValue property syntax has these parts:
Part Description
InputValue Property
Specifies the data which is to be transformed by the animation object.
Syntax
object.InputValue [= Variant]
246
IFIX Automation Reference
Properties
The InputValue property syntax has these parts:
Part Description
Remarks
If you are manipulating a color threshold table within a script, the variable must be of the same type as
the threshold table.
NOTE: If you are reading an Input Value after a source change, you must allow time for the Input
Value to be updated. If iFIX has not had sufficient time to establish the new connection, the first
attempt to obtain the Event object's Input Value will result in an Automation Error. The amount of time
that iFIX requires to establish the connection depends upon the scan time of the Event object source
tag. If you need the data immediately, read from an already connected object.
Additionally, if you set a steady state tag (a tag with a static value) as the source twice in a row, there
will be no change in the Input Value and you will get an Automation Error.
Interval Property
Specifies the length of time between data points for the HistoricalDataSet, Chart, or Pen, or how often
the Timer or Event object is fired.
Properties
The Interval property syntax has these parts:
Part Description
247
iFIX Automation Reference
Properties
The Interval property syntax has these parts:
Part Description
Remarks
Interval accepts a DATE for the Timer object and a Long (specifying the number of milliseconds) for
the Event object. For the Event object, Interval only applies if the EventType property is WhileTrue
or WhileFalse
IntervalMilliseconds Property
Contains the millisecond component of the time interval between data points.
Syntax
object.IntervalMilliseconds [= Long]
Properties
The IntervalMilliseconds property syntax has these parts:
Part Description
Remarks
The IntervalMillisecond default value is 0. This is used when precision under 1 second is desired for
the returned data.
248
IFIX Automation Reference
IsDirty Property
Returns whether the contents of the object have changed since the last time the document was saved in
the Configuration envrionment.
Syntax
object.IsDirty
Properties
The IsDirty property syntax has these parts:
Part Description
Return Values
The IsDirty property return values are:
Value Description
True The object has been modified since the last time the document was saved.
False The object has not been modified since the last time the document was saved.
Remarks
IsDirty is a read-only property of type Boolean.
IsInterpolated Property
Controls whether interpolation should be used for the specified data set.
Syntax
object.IsInterpolated =[Boolean]
249
iFIX Automation Reference
Properties
The IsInterpolated property syntax has these parts:
Part Description
Boolean Whether interpolation is used for the dataset given in the object.
Settings
The settings for Boolean are:
Value Description
IsModifiable Property
Specifies whether an object can be modified.
Syntax
object.IsModifiable
Properties
The IsModifiable property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
250
IFIX Automation Reference
Value Description
IsSelectable Property
Specifies whether the specified object can be selected in the Run-time environment.
Syntax
object.IsSelectable[= Boolean]
Properties
The IsSelectable property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
False The object can not be selected in the Run-time environment. (Default)
IsSelected Property
Returns whether the specified object is selected.
251
iFIX Automation Reference
Syntax
object.IsSelected
Properties
The IsSelected property syntax has this part:
Part Description
Return Values
The IsSelected property return values are:
Value Description
Remarks
IsSelected is a read-only property of type Boolean.
Item Property
Returns a member of the specified Collection object.
Syntax
object.Item (vtIndex)
Properties
The Item property syntax has these parts:
Part Description
252
IFIX Automation Reference
Part Description
tIndex An expression that specifies the position of a member of the collection. If a numeric
expression, index must be a number from 1 to the value of the collection's Count
property.
Remarks
Item is a read-only property of type Object.
Justification Property
Specifies whether the text format is left, center, or right-justified.
Syntax
object.Justification [=enumJustification]
Properties
The Justification property syntax has these parts:
Part Description
Settings
The settings for enumJustification are:
Constant Value
LeftJustify 0
CenterJustify 1
RightJustify 2
253
iFIX Automation Reference
K-L
KeyCode Property
The ASCII value of the primary key used in defining the key combination.
Syntax
object.KeyCode [= KeyCode]
Properties
The KeyCode property syntax has these parts:
Part Description
LabelBold Property
Specifies whether the labels in an Enhanced Chart are bold.
Syntax
object.LabelBold [= Boolean]
Properties
The LabelBold property syntax has these parts:
Part Description
254
IFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
LabelColor Property
Specifies the color of the labels for the axes in a Chart.
Syntax
object.LabelColor [= Long]
Properties
The LabelColor property syntax has these parts:
Part Description
LabelFont Property
Specifies the font face of labels in an Enhanced Chart.
Syntax
object.LabelFont [= String]
Properties
The LabelFont property syntax has these parts:
255
iFIX Automation Reference
Part Description
LabelItalic Property
Specifies whether the labels in an Enhanced Chart appear in italics.
Syntax
object.LabelItalic [= Boolean]
Properties
The LabelItalic property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
LabelUnderline Property
Specifies whether the labels in an Enhanced Chart appear underlined.
256
IFIX Automation Reference
Syntax
object.LabelUnderline [= Boolean]
Properties
The LabelUnderline property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
LanguageDesired Property
Sets the language to use when opening that picture. This property applies only when a .CSV language
file for the specified language exists.
Syntax
object.LanguageDesired [= value]
Properties
The LanguageDesired property syntax has these parts:
Part Description
257
iFIX Automation Reference
Part Description
value The language ID number to be used when opening a specified picture. For a list of the ID
numbers representing each language, refer to the Language Letter Acronyms table in the
Exporting and Importing Language Files topic.
Layer Property
Specifies the hex mask of the layers the object is currently a part of.
Syntax
object.Layer [= Long]
Properties
The Layer property syntax has these parts:
Part Description
Remarks
The Layer property is used in conjunction with the DisplayLayer property of the Picture or
DynamoSet to determine which objects are visible and accessible. For example, an object who's Layer
property is set to 3 will not be visible when the DisplayLayer property of the document is set to 8.
However, the object would be visible if the DisplayLayer property of the document is set to 1, 2 or
any number who's first and second bits are set. The DisplayLayer property is also a mask of bits.
A Layer value of 3 does not signify that the object is a part of layer three, but rather a part of both
layers one and two.
LCL Property
Specifies the lower control limit (LCL) for the real-time SPC data set.
Syntax
object.LCL [= Double]
258
IFIX Automation Reference
Properties
The LCL property syntax has these parts:
Part Description
Double The lower control limit (LCL) for the RealTimeSPCDataSet Object.
Left Property
Specifies the distance, in screen percentage, between the left edge of the physical screen and the
WorkSpace in which it is contained, or specifies the position of the left edge of the Window object.
Syntax
object.Left [= Double]
Properties
The Left property syntax has these parts:
Part Description
LeftCenter Property
Returns the left center point of the shape's bounding rectangle as a FixFloatPoint.
Syntax
object.LeftCenter
Properties
The LeftCenter property syntax has this part:
259
iFIX Automation Reference
Part Description
Remarks
LeftCenter is a read-only property of type Object.
Legend Property
Returns the pointer to the Legend object for the specified Pen.
Syntax
object.Legend
Properties
The Legend property syntax has this part:
Part Description
Remarks
Legend is a read-only property of type Object.
LegendAvgOver Property
Specifies the Average Over Range field for the specified Legend.
Syntax
object.LegendAvgOver [= String]
Properties
The LegendAvgOver property syntax has these parts:
260
IFIX Automation Reference
Part Description
LegendDesc Property
Specifies the Description field for the specified Legend.
Syntax
object.LegendDesc [= String]
Properties
The LegendDesc property syntax has these parts:
Part Description
LegendHeadingLine Property
Returns the heading for the specified Legend.
Syntax
object.LegendHeadingLine
Properties
The LegendHeadingLine property syntax has this part:
Part Description
261
iFIX Automation Reference
Remarks
LegendHeadingLine is a read-only property of type String.
LegendHigh Property
Specifies the High Limit field for the specified Legend.
Syntax
object.LegendHigh [= String]
Properties
The LegendHigh property syntax has these parts:
Part Description
LegendHighOver Property
Specifies the High Over Range field for the specified Legend.
Syntax
object.LegendHighOver [= String]
Properties
The LegendHighOver property syntax has these parts:
Part Description
262
IFIX Automation Reference
LegendInterval Property
Specifies the Interval field for the specified Legend.
Syntax
object.LegendInterval [= String]
Properties
The LegendInterval property syntax has these parts:
Part Description
LegendItemColor Property
Specifies the color of the specified legend item.
Syntax
object.LegendItemColor [= Long]
Properties
The LegendItemColor property syntax has these parts:
Part Description
LegendLow Property
Specifies the Low Limit field for the specified Legend.
263
iFIX Automation Reference
Syntax
object.LegendLow [= String]
Properties
The LegendLow property syntax has these parts:
Part Description
LegendLowOver Property
Specifies the Low Over Range field for the specified Legend.
Syntax
object.LegendLowOver [= String]
Properties
The LegendLowOver property syntax has these parts:
Part Description
LegendMode Property
Specifies the Mode field for the specified Legend.
Syntax
object.LegendMode [= String]
264
IFIX Automation Reference
Properties
The LegendMode property syntax has these parts:
Part Description
LegendTag Property
Specifies the data source connected to the Legend item for the specified Pen.
Syntax
object.LegendTag [= String]
Properties
The LegendTag property syntax has these parts:
Part Description
LegendUnits Property
Specifies the engineering units for the data source connected to the Legend item for the specified Pen.
Syntax
object.LegendUnits [= String]
Properties
The LegendUnits property syntax has these parts:
265
iFIX Automation Reference
Part Description
Remarks
The LegendUnits property allows users to custom define engineering units that directly apply to the
data that they are displaying.
LegendUser1 Property
A general purpose property which can contain any user value.
Syntax
object.LegendUser1 [= String]
Properties
The LegendUser1 property syntax has these parts:
Part Description
Remarks
An example of how to set the LegendUser1 property would be:
Chart1.AddLegendItem "USER1", 2, 8
mypen.Legend.legenduser1 = "Square"
LegendUser10 Property
A general purpose property which can contain any user value.
266
IFIX Automation Reference
Syntax
object.LegendUser10 [= String]
Properties
The LegendUser10 property syntax has these parts:
Part Description
LegendUser2 Property
A general purpose property which can contain any user value.
Syntax
object.LegendUser2 [= String]
Properties
The LegendUser2 property syntax has these parts:
Part Description
LegendUser3 Property
A general purpose property which can contain any user value.
Syntax
object.LegendUser3 [= String]
267
iFIX Automation Reference
Properties
The LegendUser3 property syntax has these parts:
Part Description
LegendUser4 Property
A general purpose property which can contain any user value.
Syntax
object.LegendUser4 [= String]
Properties
The LegendUser4 property syntax has these parts:
Part Description
LegendUser5 Property
A general purpose property which can contain any user value.
Syntax
object.LegendUser5 [= String]
Properties
The LegendUser5 property syntax has these parts:
268
IFIX Automation Reference
Part Description
LegendUser6 Property
A general purpose property which can contain any user value.
Syntax
object.LegendUser6 [= String]
Properties
The LegendUser6 property syntax has these parts:
Part Description
LegendUser7 Property
A general purpose property which can contain any user value.
Syntax
object.LegendUser7 [= String]
Properties
The LegendUser7 property syntax has these parts:
Part Description
269
iFIX Automation Reference
Part Description
LegendUser8 Property
A general purpose property which can contain any user value.
Syntax
object.LegendUser8 [= String]
Properties
The LegendUser8 property syntax has these parts:
Part Description
LegendUser9 Property
A general purpose property which can contain any user value.
Syntax
object.LegendUser9 [= String]
Properties
The LegendUser9 property syntax has these parts:
Part Description
270
IFIX Automation Reference
LegendValue Property
Specifies the current data value for the Legend for the specified Pen. For a historical pen,
LegendValue specifies the pen's value when it crosses the Time Cursor.
Syntax
object.LegendValue [= String]
Properties
The LegendValue property syntax has these parts:
Part Description
Linear Property
Returns the Linear object for the specified Pen.
Syntax
object.Linear
Properties
The Linear property syntax has this part:
Part Description
Remarks
Linear is a read-only property of type Object.
Lines Property
Returns the Lines collection for the specified ScriptProcedure object.
271
iFIX Automation Reference
Syntax
object.Lines
Properties
The Lines property syntax has these parts:
Part Description
Remarks
Lines is a read-only property of type Object.
LinesofCode Property
Pass through property used to get and set the lines of code for the procedure.
Syntax
object.LinesofCode [= LinesofCode ]
Properties
The LinesofCode property syntax has these parts:
Part Description
LineType Property
Specifies the line type in a HistoricalDataSet, RealTimeDataSet, or RealTimeSPCDataSet object.
Syntax
object.LineType [= enumLineType]
272
IFIX Automation Reference
Properties
The LineType property syntax has these parts:
Part Description
enumLineType An enumeration that represents the type of line to use for the HistoricalDataSet,
RealTimeDataSet, or RealTimeSPCDataSet object.
Valid entries:
1 – Line_Dash
3 – Line_DashDot
4 – Line_DashDotDot
2 – Line_Dot
32 – Line_ExtraThickDash
34 – Line_ExtraThickDashDot
35 – Line_ExtraThickDashDotDot
33 – Line_ExtraThickDot
11 – Line_ExtraThickSolid
20 – Line_MediumDash
22 – Line_MediumDashDot
23 – Line_MediumDashDotDot
21 – Line_MediumDot
5 – Line_MediumSolid
24 – Line_MediumThickDash
26 – Line_MediumThickDashDot
27 – Line_MediumThickDashDotDot
25 – Line_MediumThickDot
10 – Line_MediumThickSolid
16 – Line_MediumThinDash
18 – Line_MediumThinDashDot
19 – Line_MediumThinDashDotDot
17 – Line_MediumThinDot
9 – Line_MediumThinSolid
28 – Line_ThickDash
30 – Line_ThickDashDot
31 – Line_ThickDashDotDot
29 – Line_ThickDot
6 – Line_ThickSolid
0 – Line_ThinSolid
LockStartTime Property
Prevents the start time from changing when the computer’s time zone is changed.
273
iFIX Automation Reference
Syntax
Object.LockStartTime [=Boolean]
Properties
The LockStartTime property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
LoDisplay Property
Specifies the low display limit of the Time Axis or Value Axis.
TimeAxis Syntax
object.LoDisplay [= Date]
Properties
The LoDisplay property syntax has these parts:
Part Description
Date The time and date to display for the Time Axis.
274
IFIX Automation Reference
ValueAxis Syntax
object.LoDisplay [= Double]
Properties
The LoDisplay property syntax has these parts:
Part Description
LoginGroup Property
Returns the first group name that the currently logged in user belongs to. If security is disabled, this
string is empty.
Syntax
object.LoginGroup GroupName
Properties
The LoginGroup method syntax has these parts:
Part Description
LoginTimeout Property
Sets or retrieves the number of seconds to be used as the iFIX security Login Timeout value for user
accounts that are created as a result of the security synchronization process.
Syntax
object.LoginTimeout [= LongInteger]
275
iFIX Automation Reference
Properties
The LoginTimeout property syntax has these parts:
Part Description
Remarks
This property corresponds to the /T command line parameter of the Security Synchronizer application.
LoginUserFullName Property
Returns the full name of the currently logged in iFIX user. If security is disabled, this string is empty.
Syntax
UserFullName = object.LoginUserFullName
Properties
The LoginUserFullName method syntax has these parts:
Part Description
LoginUserName Property
Returns the user ID of the currently logged in iFIX user. If security is disabled, this string is empty.
Syntax
UserName = object.LoginUserName
276
IFIX Automation Reference
Properties
The LoginUserName method syntax has these parts:
Part Description
LoInValue Property
Specifies the lower limit on the input value.
Syntax
object.LoInValue [= Variant]
Properties
The LoInValue property syntax has these parts:
Part Description
LoLimit Property
Specifies the lower limit for the specified Pen, HistoricalDataSet, RealTimeDataSet, or
RealTimeSPCDataSet..
Syntax
object.LoLimit [= Double]
Properties
The LoLimit property syntax has these parts:
277
iFIX Automation Reference
Part Description
LoOutValue Property
Specifies the lower limit on the output value.
Syntax
object.LoOutValue [= Variant]
Properties
The LoOutValue property syntax has these parts:
Part Description
LowestDataValue Property
Specifies the lowest value for the specified Pen.
Syntax
object.LowestDataValue [= Double]
Properties
The LowestDataValue property syntax has these parts:
Part Description
278
IFIX Automation Reference
Part Description
LWL Property
Sets the lower warning limits (LWL) for the real-time SPC data set.
Syntax
object.LWL [= Double]
Properties
The LWL property syntax has these parts:
Part Description
Double The lower warning limits (LWL) for the RealTimeSPCDataSet Object.
M-N
MainTitle Property
Specifies the main title for your Enhanced Chart.
Syntax
object.MainTitle [= String]
Properties
The MainTitle property syntax has these parts:
279
iFIX Automation Reference
Part Description
String Text that appears as the main title in the HistogramChart, LineChart, SPCBarChart, or
XYChart Object.
MainTitleBold Property
Specifies whether the main title for your Enhanced Chart appears in a bold typeface.
Syntax
object.MainTitleBold [= Boolean]
Properties
The MainTitleBold property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
MainTitleFont Property
Specifies the font face of the main title in your Enhanced Chart.
280
IFIX Automation Reference
Syntax
object.MainTitleFont [= String]
Properties
The MainTitleFont property syntax has these parts:
Part Description
The name of the font. By default, the font face is "Times New Roman."
String
MainTitleItalic Property
Specifies whether the main title for your Enhanced Chart appears in italics.
Syntax
object.MainTitleItalic [= Boolean]
Properties
The MainTitleItalic property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
281
iFIX Automation Reference
Value Description
MainTitleUnderline Property
Specifies whether the main title for your Enhanced Chart appears underlined.
Syntax
object.MainTitleUnderline [= Boolean]
Properties
The MainTitleUnderline property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ManualMaxX Property
Sets the maximum floating point value set for the X axis in an Enhanced Chart.
Syntax
object.ManualMaxX [= Double]
282
IFIX Automation Reference
Properties
The ManualMaxX property syntax has these parts:
Part Description
Double The maximum floating point value set for the X axis in a HistogramChart, LineChart,
SPCBarChart, or XYChart.
Remarks
ManualMaxX is a read-only property.
ManualMaxY Property
Sets the maximum floating point value set for the Y axis in an Enhanced Chart.
Syntax
object.ManualMaxY [= Double]
Properties
The ManualMaxY property syntax has these parts:
Part Description
Double The maximum floating point value set for the Y axis in a HistogramChart, LineChart,
SPCBarChart, or XYChart.
ManualMinX Property
Sets the minimum floating point value set for the X axis in an Enhanced Chart.
Syntax
object.ManualMinX [= Double]
283
iFIX Automation Reference
Properties
The ManualMinX property syntax has these parts:
Part Description
Double The minimum floating point value set for the X axis in a HistogramChart, LineChart,
SPCBarChart, or XYChart.
Remarks
ManualMinX is a read-only property.
ManualMinY Property
Sets the minimum floating point value set for the Y axis in an Enhanced Chart.
Syntax
object.ManualMinY [= Double]
Properties
The ManualMinY property syntax has these parts:
Part Description
Double The minimum floating point value set for the Y axis in a HistogramChart, LineChart,
SPCBarChart, or XYChart.
ManualScaleControlX Property
Sets the grid scale used for the X axis. This property only applies to XY Enhanced Charts.
Syntax
object.ManualScaleControlX [= enumManualScaleControl]
284
IFIX Automation Reference
Properties
The ManualScaleControlX property syntax has these parts:
Part Description
enumManualScaleControl An enumeration that represents the grid scale for the X axis in an
XYChart.
Valid entries:
0 – XYManScaleNone
3 – XYManScaleMinMax
ManualScaleControlY Property
Sets the grid scale used for the Y axis.
Syntax
object.ManualScaleControlY [= enumManualScaleControl]
Properties
The ManualScaleControlY property syntax has these parts:
Part Description
enumManualScaleControl An enumeration that represents the grid scale for the Y axis in a
HistogramChart, LineChart, SPCBarChart, or XYChart.
Valid entries:
0 – ManScaleNone
1 – ManScaleMin
2 – ManScaleMax
3 – ManScaleMinMax
MapMode Property
(For future use only.) Sets or retrieves the security mapping mode to be used in synchronizing
285
iFIX Automation Reference
security.
Syntax
object.MapMode [= ShortInteger]
Properties
The MapMode property syntax has these parts:
Part Description
Remarks
This property can be ignored.
MarkDataPoints Property
Specifies whether each individual data point is plotted on the Enhanced Chart.
Syntax
object.MarkDataPoints [= Boolean]
Properties
The MarkDataPoints property syntax has these parts:
Part Description
False – Indicates that each individual data point is not plotted. (Default)
286
IFIX Automation Reference
MarkerChar Property
Specifies the character to use as markers on the trend lines when the UseMarker property for the pen
to True and the MarkerStyle property is set to CharacterMarker.
Syntax
object.MarkerChar[= String]
Properties
The MarkerChar property syntax has these parts:
Part Description
MarkerStyle Property
Specifies the style to use as markers on the trend lines when the UseMarker property is set to True.
Syntax
object.MarkerStyle [= enumMarkerStyle]
Properties
The MarkerStyle property syntax has these parts:
Part Description
Settings
The settings for enumMarkerStyle are:
287
iFIX Automation Reference
Master Property
Indicates whether the specified Dynamo is a master Dynamo. This property is read-only.
Syntax
DynamoObject.Master
Properties
The Master property syntax has this part:
Part Description
Return Value
Boolean. True indicates that the Dynamo is a master Dynamo, while False indicates that it is not.
Max_Dynamo_Desc_Length Property
The maximum amount of characters that you can enter for the Dynamo object's description. This
property is read-only.
Syntax
DynamoObject.Dynamo_Max_Dynamo_Desc_Length (plMaxDynamoDescLength)
288
IFIX Automation Reference
Properties
The Dynamo_Max_Dynamo_Desc_Length property syntax has these parts:
Part Description
plMaxDynamoDescLength Long. The maximum string length of the Dynamo object description.
This length does not include a space for the NULL character. So,
some languages will require the array size to be
plMaxDynamoDescLength + 1.
MaxCharactersPerLine Property
Returns the maximum number of characters allowed per line.
Syntax
object.MaxCharactersPerLine
Properties
The MaxCharactersPerLine property syntax has this part:
Part Description
Remarks
MaxCharactersPerLine is a read-only property of type Long.
MaxLines Property
Specifies the maximum number of text lines allowed.
Syntax
object.MaxLines
289
iFIX Automation Reference
Properties
The MaxLines property syntax has this part:
Part Description
Remarks
The MaxLines property is of type Long.
MaxPts Property
Specifies the maximum number of points to be displayed for the trend line for the specified Pen.
Syntax
object.MaxPts [= Long]
Properties
The MaxPts property syntax has these parts:
Part Description
MonoDeskColor Property
When Monochrome is enabled in an Enhanced Chart, this property specifies the shade of black, gray,
or white surrounding the graph and/or table displays.
Syntax
object.MonoDeskColor [= Long]
Properties
The MonoDeskColor property syntax has these parts:
290
IFIX Automation Reference
Part Description
MonoGraphBackColor Property
When Monochrome is enabled in an Enhanced Chart, this property specifies the shade of black, gray,
or white for the graph background color.
Syntax
object.MonoGraphBackColor [= Long]
Properties
The MonoGraphBackColor property syntax has these parts:
Part Description
MonoGraphForeColor Property
When Monochrome is enabled in an Enhanced Chart, this property specifies the shade of black, gray,
or white for the graph foreground color.
Syntax
object.MonoGraphForeColor [= Long]
Properties
The MonoGraphForeColor property syntax has these parts:
Part Description
291
iFIX Automation Reference
Part Description
MonoShadowColor Property
When Monochrome is enabled in an Enhanced Chart, this property specifies the shade of black, gray,
or white for the drop shadow color.
Syntax
object.MonoShadowColor [= Long]
Properties
The MonoShadowColor property syntax has these parts:
Part Description
MonoTableBackColor Property
When Monochrome is enabled in an Enhanced Chart, this property specifies the shade of black, gray,
or white for the table background color.
Syntax
object.MonoTableBackColor [= Long]
Properties
The MonoTableBackColor property syntax has these parts:
Part Description
292
IFIX Automation Reference
Part Description
MonoTableForeColor Property
When Monochrome is enabled in an Enhanced Chart, this property specifies the shade of black, gray,
or white for the table foreground color.
Syntax
object.MonoTableForeColor [= Long]
Properties
The MonoTableForeColor property syntax has these parts:
Part Description
MonoTextColor Property
When Monochrome is enabled in an Enhanced Chart, this property specifies the shade of black, gray,
or white for the text color.
Syntax
object.MonoTextColor [= Long]
Properties
The MonoTextColor property syntax has these parts:
Part Description
293
iFIX Automation Reference
Part Description
MultipleEGU Property
Specifies whether to display the ValueAxis for each Pen in the Chart that contains multiple EGUs.
Syntax
object.MultipleEGU [= Boolean]
Properties
The MultipleEGU property syntax has this part:
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
The MultipleEGU property corresponds to the Show Multiple Values check box in the Chart
Configuration dialog box.
MultipleTimes Property
Specifies whether to display the Time Axis for each Pen in the Chart.
294
IFIX Automation Reference
Syntax
object.MultipleTimes [= Boolean]
Properties
The MultipleTimes property syntax has this part:
Part Description
Settings
The settings for Boolean are:
Value Description
MyNodeName Property
Returns the iFIX physical node name.
Syntax
object.MyNodeName MyNodeName
Properties
The MyNodeName method syntax has these parts:
Part Description
295
iFIX Automation Reference
Name Property
Specifies the name of the current object.
Syntax
object.Name [= String]
Properties
The Name property syntax has these parts:
Part Description
NOTE: The Name property for the Application object returns "Application" for internal purposes.
When attempting to identify the iFIX application, the FullName property should be used.
Next Property
Returns the next Window object.
Syntax
object.Next
Properties
The Next property syntax has this part:
Part Description
Remarks
Next is a read-only property of type Object.
296
IFIX Automation Reference
NlsPath Property
Returns the path used to store the language files used to create dialog boxes. If you to choose to
implement a native language other than English, the new language files replace the files found in this
directory.
Syntax
object.NlsPath
Properties
The NlsPath property syntax has this part:
Part Description
Remarks
NlsPath is a read-only property of type String.
NoSaveOnClose Property
Specifies whether a user will be prompted to save a picture when closing it. This property is especially
useful when you are generating objects in a picture from the VBA scripts on-the-fly, and do not want
to be prompted to save the picture when closing.
Using this property allows you to close a picture without saving it, and without a prompt to save it.
Syntax
object.NoSaveOnClose [= Boolean]
Properties
The NoSaveOnClose property syntax has these parts:
Part Description
297
iFIX Automation Reference
Part Description
Boolean True - Indicates that the user will not be prompted to save the picture when it is closed.
False - Indicates that the user will be prompted to save the picture when it is closed.
Remarks
The following example shows how to set the NoSaveOnClose property:
NumberOfCharacters Property
Returns the total number of characters for all items displayed in the Legend.
Syntax
object.NumberOfCharacters[= Integer]
Properties
The NumberOfCharacters property syntax has this part:
Part Description
Remarks
NumberOfCharacters is a read-only property of type Integer.
The number of characters for specific columns in the Legend can be set using the
ModifyColumnLength method.
NumberOfHorizontalGridLines Property
Specifies the number of horizontal grid lines in the specified Chart.
298
IFIX Automation Reference
Syntax
object.NumberOfHorizontalGridLines [= Long]
Properties
The NumberOfHorizontalGridLines property syntax has these parts:
Part Description
NumberOfItems Property
Returns the number of columns displayed in the Legend.
Syntax
object.NumberOfItems
Properties
The NumberOfItems property syntax has this part:
Part Description
Remarks
NumberOfItems is a read-only property of type Integer.
Columns can be added to and/or removed from the Legend by calling the AddLegendItem,
RemoveItem and/or the RemoveLegendItem methods.
NumberOfLines Property
Returns the number of lines being used by the specified object.
299
iFIX Automation Reference
Syntax
object.NumberOfLines
Properties
The NumberOfLines property syntax has this part:
Part Description
Remarks
NumberOfLines is a read-only property of type Long.
The value returned by the NumberOfLines property will always be less than or equal to the value of
the MaxLines property.
NumberOfPoints Property
Returns the number of points in the specified object.
Syntax
object.NumberOfPoints
Properties
The NumberOfPoints property syntax has this part:
Part Description
Remarks
NumberOfPoints is a read-only property of type Long.
NumberOfTargets Property
Returns the total number of objects which are currently connected to any of the specified object’s
properties. This object is the source of data and the “NumberOfTargets” allows a user to determine
300
IFIX Automation Reference
how many targets are connected to receive information from this object.
Syntax
object.NumberOfTargets
Properties
The NumberOfTargets property syntax has this part:
Part Description
Remarks
NumberOfTargets is a read-only property of type Long.
NumberOfVerticalGridLines Property
Specifies the number of vertical grid lines displayed in the Enhanced Chart.
Syntax
object.NumberOfVerticalGridLines [= Long]
Properties
The NumberOfVerticalGridLines property syntax has these parts:
Part Description
NumOfPoints Property
The return value depends on the object specified. For the LineChart Object, HistogramChart Object,
SPCBarChart Object, or the XYChart Object, this property returns the number of points in the
specified object. For the RealTimeDataSet Object, RealTimeSPCDataSet Object, or HistoricalDataSet
Object, this property returns the maximum display points.
301
iFIX Automation Reference
Syntax
object.NumOfPoints [= Long]
Properties
The NumOfPoints property syntax has these parts:
Part Description
Long The number of points in the specified object or the maximum display points.
NumPointsToGraph Property
A read-only property that matches the NumOfPoints property of the LineChart Object, HistogramChart
Object, SPCBarChart Object, or the XYChart Object.
Syntax
object.NumPointsToGraph [= Long]
Properties
The NumPointsToGraph property syntax has these parts:
Part Description
Remarks
NumPointsToGraph is a read-only property.
NumHGridLines Property
Specifies the number of horizontal grid lines displayed for the specified Pen.
302
IFIX Automation Reference
Syntax
object.NumHGridLines [= Long]
Properties
The NumHGridLines property syntax has these parts:
Part Description
NumLabels Property
Specifies the number of labels on the Time Axis or Value Axis.
Syntax
object.NumLabels [= Integer]
Properties
The NumLabels property syntax has these parts:
Part Description
NumPts Property
Returns the number of data points for the specified Pen.
Syntax
object.NumPts
303
iFIX Automation Reference
Properties
The NumPts property syntax has this part:
Part Description
Remarks
NumPts is a read-only property of type Long.
NumRandomSubsets Property
Sets the number of baseline subsets selected in the Enhanced Chart.
Syntax
object.NumRandomSubsets [= Long]
Properties
The NumRandomSubsets property syntax has these parts:
Part Description
Long The number of baseline subsets selected for the HistogramChart, LineChart, or
SPCBarChart.
Remarks
NumRandomSubsets is a read-only property.
NumScrollingSubsets Property
In an Enhanced Chart, specifies the number of data sources to view in one visualization of the chart, in
addition to the baseline. If zero is selected, only baseline data sources are graphed in a single
visualization and no scroll bar appears. For this property to apply, you must specify the baseline data
sources, using the RandomSubsetsToGraph property.
304
IFIX Automation Reference
Syntax
object.NumScrollingSubsets [= Long]
Properties
The NumScrollingSubsets property syntax has these parts:
Part Description
Long The number of subsets to view in one group for the HistogramChart, LineChart,
SPCBarChart, or XYChart Object.
NumTicks Property
Specifies the number of interval markers to place on each Time Axis or Value Axis.
Syntax
object.NumTicks [= Integer]
Properties
The NumTicks property syntax has these parts:
Part Description
NumVGridLines Property
Specifies the number of vertical grid lines displayed for the specified Pen.
Syntax
object.NumVGridLines [= Long]
305
iFIX Automation Reference
Properties
The NumVGridLines property syntax has these parts:
Part Description
O-P
Object Property
Reserved for internal purposes.
OpcAccessPath Property
Returns the OPC access path of the installed OPC DataServer.
Syntax
object.OpcAccessPath
Properties
The OpcAccessPath property syntax has this part:
Part Description
Remarks
OpcAccessPath is a read-only property of type String.
The OpcAccessPath information is registered during installation of the OPC server using the
DataServerInstaller program.
306
IFIX Automation Reference
OpcDataSource Property
Returns the OPC data source name of the installed OPC DataServer.
Syntax
object.OpcDataSource
Properties
The OpcDataSource property syntax has this part:
Part Description
Remarks
OpcDataSource is a read-only property of type String.
The OpcDataSource information is registered during installation of the OPC server using the
DataServerInstaller program.
OpcProgID Property
Returns the OPC ProgID of the installed OPC DataServer.
Syntax
object.OpcProgID
Properties
The OpcProgID property syntax has this part:
Part Description
Remarks
OpcProgID is a read-only property of type String.
307
iFIX Automation Reference
The OpcProgID information is registered during installation of the OPC server using the
DataServerInstaller program.
OpcServerMachineName Property
This is the name of the machine where the installed OPC DataServer resides.
Syntax
object.OpcServerMachineName
Properties
The OpcServerMachineName property syntax has this part:
Part Description
Remarks
OpcServerMachineName is a read-only property of type String.
The OpcServerMachineName information is registered during installation of the OPC server using
the DataServerInstaller program.
OriginalScreenHeight Property
Returns the screen height resolution (in pixels) when the document was created.
Syntax
object.OriginalScreenHeight
Properties
The OriginalScreenHeight property syntax has this part:
Part Description
308
IFIX Automation Reference
Remarks
OriginalScreenHeight is a read-only property of type Long.
OriginalScreenWidth Property
Returns the screen width resolution (in pixels) when the document was created.
Syntax
object.OriginalScreenWidth
Properties
The OriginalScreenWidth property syntax has this part:
Part Description
Remarks
OriginalScreenWidth is a read-only property of type Long.
OriginX Property
Returns the x coordinate for the starting position of the specified axis.
Syntax
object.OriginX
Properties
The OriginX property syntax has this part:
Part Description
309
iFIX Automation Reference
Remarks
OriginX is a read-only property of type Double.
OriginY Property
Returns the y coordinate for the starting position of the specified axis.
Syntax
object.OriginX
Properties
The OriginX property syntax has this part:
Part Description
Remarks
OriginY is a read-only property of type Double.
OutputValue Property
Specifies the data which has resulted from the animation object's transformation of the "Input Value"
data.
Syntax
object.OutputValue [= Variant]
Properties
The OutputValue property syntax has these parts:
Part Description
310
IFIX Automation Reference
Owner Property
Returns the object at the next highest level in the object hierarchy.
Syntax
object.Owner
Properties
The Owner property syntax has this part:
Part Description
Remarks
Owner is a read-only property of type Object.
The Owner property is particularly useful when an object belongs to a Group. The Owner property of
the object returns the Group.
Page Property
Returns the contents of the document.
Syntax
object.Page
Properties
The Page property syntax has this part:
Part Description
311
iFIX Automation Reference
Remarks
Page is a read-only property of type Object.
The Workspace is an OLE document container which can contain OLE documents of different types
(pictures, schedules, Word Documents, Excel Spreadsheets). The Document object does not know
about the internals of the different types of OLE documents. The Page property exists to allow you
access to the object model of the particular OLE document you are working with. Use theType
property of the Document object to identify the type of OLE document before accessing the Page
property for the Document.
Parent Property
Returns the Picture in which the specified object resides.
Syntax
object.Parent
Properties
The Parent property syntax has this part:
Part Description
Remarks
Parent is a read-only property of type Object.
If an object is contained within a Group, the Parent property returns the Picture, not the Group.
Path Property
Returns the path of the WorkSpace's executable file or the path of the Document object.
Syntax
object.Path
312
IFIX Automation Reference
Properties
The Path property syntax has this part:
Part Description
Remarks
Path is a read-only property of type String.
PauseIndicatorBlink Property
Specifies if the Alarm Summary object’s pause indicator blinks.
Syntax
object.PauseIndicatorBlink [= Boolean]
Properties
The PauseIndicatorBlink property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
313
iFIX Automation Reference
PauseIndicatorColor Property
Specifies the color of the Alarm Summary object’s pause indicator.
Syntax
object.PauseIndicatorColor [= colorref]
Properties
The PauseIndicatorColor property syntax has these parts:
Part Description
PauseWithNewAlarmIndicatorBlink Property
Specifies whether the Alarm Summary object’s pause indicator blinks when new alarms are received
while the spreadsheet is paused.
Syntax
object.PauseWithNewAlarmIndicatorBlink [= Boolean]
Properties
The PauseWithNewAlarmIndicatorBlink property syntax has these parts:
Part Description
Boolean Whether the pause indicator blinks when new alarms are received while the
spreadsheet is paused.
Settings
The settings for Boolean are:
314
IFIX Automation Reference
Value Description
PauseWithNewAlarmIndicatorColor Property
Specifies the color of the Alarm Summary object’s pause indicator when new alarms are received
while the spreadsheet is paused.
Syntax
object.PauseWithNewAlarmIndicatorColor [= colorref]
Properties
The PauseWithNewAlarmIndicatorColor property syntax has these parts:
Part Description
PenDescription Property
Specifies the description displayed in the Legend for the specified Pen.
Syntax
object.PenDescription [= String]
Properties
The PenDescription property syntax has these parts:
Part Description
315
iFIX Automation Reference
Part Description
PenLineColor Property
Specifies the color of the line for the specified Pen.
Syntax
object.PenLineColor [= Long]
Properties
The PenLineColor property syntax has these parts:
Part Description
PenLineStyle Property
Specifies the style of the line for the specified Pen.
Syntax
object.PenLineStyle [= enumEdgeStyle]
Properties
The PenLineStyle property syntax has these parts:
Part Description
316
IFIX Automation Reference
Settings
The settings for enumEdgeStyle are:
EdgeStyleSolid 0 Solid.
EdgeStyleDash 1 Dash.
EdgeStyleDot 2 Dot.
EdgeStyleDashDot 3 Dash-Dot.
EdgeStyleDashDotDot 4 Dash-Dot-Dot.
EdgeStyleNone 5 No border.
Remarks
Changes to the PenLineStyle property are only visible when the PenLineWidth property for the pen
is set to 1.
PenLineWidth Property
Specifies the width of the line for the specified Pen.
Syntax
object.PenLineWidth [= Long]
Properties
The PenLineWidth property syntax has these parts:
Part Description
317
iFIX Automation Reference
PenNum Property
Returns the index of the specified pen in the current chart's Pens collection.
Syntax
object.PenNum
Properties
The PenNum property syntax has this part:
Part Description
Remarks
PenNum is a read-only property of type Integer.
Pens Property
Returns the collection (list) of pens currently configured for the specified Chart.
Syntax
object.Pens
Properties
The Pens property syntax has this part:
Part Description
Remarks
Pens is a read-only property of type Object.
318
IFIX Automation Reference
PenType Property
Returns whether the specified Pen is a real time or historical Pen.
Syntax
object.PenType
Properties
The PenType property syntax has this part:
Part Description
Return Values
The PenType property return values are:
Historical 1 Dash.
Remarks
Pens is a read-only property of type enumHTRModes.
PictureDefaultAlwaysOnTop Property
Specifies the default Picture Always on Top preference.
Syntax
bValue = object.PictureDefaultAlwaysOnTop
Example
Dim bValue as Boolean
bValue = Application.UserPreferences.PictureDefaultAlwaysOnTop
319
iFIX Automation Reference
Properties
The PictureDefaultAlwaysOnTop property syntax has these parts:
Part Description
PictureDefaultBackColor Property
Specifies the default background color of iFIX pictures.
Syntax
lPictureDefaultBackColor = object.PictureDefaultBackColor
Example
Dim lPictureDefaultBackColor as Long
lPictureDefaultBackColor =
Application.UserPreferences.PictureDefaultBackColor
Properties
The PictureDefaultBackColor property syntax has these parts:
Part Description
PictureDefaultHeight Property
Specifies the default picture height.
320
IFIX Automation Reference
Syntax
dblPictureDefaultHeight = object.PictureDefaultHeight
Example
Dim dblPictureDefaultHeight as Double
dblPictureDefaultHeight =
Application.UserPreferences.PictureDefaultHeight
Properties
The PictureDefaultHeight property syntax has these parts:
Part Description
dblPictureDefaultHeight Double. A number between 0 and 100 that determines the default
picture height.
PictureDefaultResizable Property
Specifies the default Picture resizable preference.
Syntax
bDefaultResizable = object.PictureDefaultResizable
Example
Dim bDefaultResizable as Boolean
bDefaultResizable = Application.UserPreferences.PictureDefaultResizable
Properties
The PictureDefaultResizable property syntax has these parts:
Part Description
321
iFIX Automation Reference
Part Description
PictureDefaultRuntimeVisible Property
Specifies the default runtime visible preference.
Syntax
bPictureDefaultRuntimeVisible = object.PictureDefaultRuntimeVisible
Example
Dim bPictureDefaultRuntimeVisible as Boolean
bPictureDefaultRuntimeVisible =
Application.UserPreferences.PictureDefaultRuntimeVisible
Properties
The PictureDefaultRuntimeVisible property syntax has these parts:
Part Description
PictureDefaultSystemMenu Property
Specifies the default Picture system menu preference.
Syntax
bDefaultSystemMenu = object.PictureDefaultSystemMenu
322
IFIX Automation Reference
Example
Dim bDefaultSystemMenu as Boolean
bDefaultSystemMenu = Application.UserPreferences.PictureDefaultSystemMenu
Properties
The PictureDefaultSystemMenu property syntax has these parts:
Part Description
bDefaultSystemMenu Boolean. Determines whether the system menu appears in iFIX pictures.
Valid Entries:
1 - System menu
0 - No system menu
PictureDefaultTitlebar Property
Specifies the default Picture titlebar preference.
Syntax
bDefaultTitlebar = object.PictureDefaultTitlebar
Example
Dim bDefaultTitlebar as Boolean
bDefaultTitlebar = Application.UserPreferences.PictureDefaultTitlebar
Properties
The PictureDefaultTitlebar property syntax has these parts:
Part Description
323
iFIX Automation Reference
PictureDefaultWidth Property
Specifies the default picture width.
Syntax
dblPictureDefaultWidth = object.PictureDefaultWidth
Example
Dim dblPictureDefaultWidth as Double
dblPictureDefaultWidth = Application.UserPreferences.PictureDefaultWidth
Properties
The PictureDefaultWidth property syntax has these parts:
Part Description
dblPictureDefaultWidth Double. A number between 0 and 100 that determines the default
picture width.
PictureHeight Property
Specifies the percentage of the vertical screen that the picture extends to.
Syntax
object.PictureHeight [=dblPictureHeight]
Properties
The PictureHeight property syntax has these parts:
Part Description
dblPictureHeight Double. A number between 0 and 100 that determines the picture height.
324
IFIX Automation Reference
PictureName Property
Specifies the name or alias of the current picture.
Syntax
object.PictureName [=String]
Properties
The PictureName property syntax has these parts:
Part Description
PicturePath Property
Returns the path used to store iFIX pictures.
Syntax
object.PicturePath
Properties
The PicturePath property syntax has this part:
Part Description
Remarks
PicturePath is a read-only property of type String.
PictureWidth Property
Specifies the percentage of the horizontal screen that the picture extends to.
325
iFIX Automation Reference
Syntax
object.PictureWidth [=dblPictureWidth]
Properties
The PictureWidth property syntax has these parts:
Part Description
dblPictureWidth Double. A number between 0 and 100 that determines the picture width.
PieType Property
Specifies the constraints of the angle included between the StartAngle and EndAngle properties.
Syntax
object.PieType [= Integer]
Properties
The PieType property syntax has these parts:
Part Description
Settings
The settings for Integer are:
Value Description
326
IFIX Automation Reference
Value Description
PlotOnChartRefresh Property
This property is unavailable. It is reserved for future use.
Syntax
object.PlotOnChartRefresh
Properties
The PlotOnChartRefresh property syntax has this part:
Part Description
PlottingMethod Property
In an Enhanced Chart, this property sets the plotting method used to render the object's data.
Syntax
object.PlottingMethod [=enumGraphPlottingMethod]
Properties
The PlottingMethod property syntax has these parts:
Part Description
327
iFIX Automation Reference
Part Description
PointType Property
In an Enhanced Chart, sets the predefined point types for the HistoricalDataSet, RealTimeDataSet, or
RealTimeSPCDataSet object.
Syntax
object.PointType [=enumPointsType]
Properties
The PointType property syntax has these parts:
Part Description
328
IFIX Automation Reference
Part Description
enumPointsType An enumeration that represents the predefined point types in the Enhanced
Chart:
Valid entries:
1 – Point_Cross
6 – Point_Diamond
7 – Point_DiamondSolid
2 – Point_Dot
3 – Point_DotSolid
10 – Point_DownTriangle
11 – Point_DownTriangleSolid
0 – Point_Plus
4 – Point_Square
5 – Point_SquareSolid
8 – Point_UpTriangle
9 – Point_UpTriangleSolid
Previous Property
Returns the previous Window object.
Syntax
object.Previous
Properties
The Previous property syntax has this part:
Part Description
Remarks
Previous is a read-only property of type Object.
PrimarySecPath Property
Returns the primary security file path for the specified document.
329
iFIX Automation Reference
Syntax
object.PrimarySecPath [= String]
Properties
The PrimarySecPath property syntax has these parts:
Part Description
Remarks
PrimarySecPath is a read-only property of type String.
ProcedureDeclaration Property
Specifies the header line of the ScriptProcedure.
Syntax
object.ProcedureDeclaration [= String]
Properties
The ProcedureDeclaration property syntax has these parts:
Part Description
Remarks
An example of a header line is: Private Sub MyObject_Click().
330
IFIX Automation Reference
ProcedureName Property
(Read-Only) The name of the procedure to be executed.
Syntax
object.ProcedureName [= ProcedureName]
Properties
The ProcedureName property syntax has these parts:
Part Description
Procedures Property
Returns the Procedures collection object.
Syntax
object.Procedures
Properties
The Procedures property syntax has this part:
Part Description
Remarks
Procedures is a read-only property of type Object.
ProcedureStatement Property
Specifies the string to be used in the procedure statement for the specified ScriptLine object.
331
iFIX Automation Reference
Syntax
object.ProcedureStatement [= String]
Properties
The ProcedureStatement property syntax has these parts:
Part Description
ProgId Property
Returns the ProgID for the specified control.
Syntax
object.ProgId [= String]
Properties
The ProgId property syntax has this part:
Part Description
Remarks
ProgId is a read-only property of type String.
ProjectPath Property
Returns the path used for storing project files. If you intall iFIX to the default location, this path is
C:\Program Files\Proficy\Proficy iFIX.
Syntax
object.ProjectPath[=String]
332
IFIX Automation Reference
Properties
The ProjectPath property syntax has these parts:
Part Description
Property1 Property
A general purpose property which can contain any user value.
Syntax
object.Property1 [= Variant]
Properties
The Property1 property syntax has these parts:
Part Description
Remarks
Property1 is used internally to store information entered in the script authoring experts.
Property10 Property
A general purpose property which can contain any user value.
Syntax
object.Property10 [= Variant]
333
iFIX Automation Reference
Properties
The Property10 property syntax has these parts:
Part Description
Remarks
Property10 is used internally to store information entered in the script authoring experts.
Property2 Property
A general purpose property which can contain any user value.
Syntax
object.Property2 [= Variant]
Properties
The Property2 property syntax has these parts:
Part Description
Remarks
Property2 is used internally to store information entered in the script authoring experts.
Property3 Property
A general purpose property which can contain any user value.
334
IFIX Automation Reference
Syntax
object.Property3 [= Variant]
Properties
The Property3 property syntax has these parts:
Part Description
Remarks
Property3 is used internally to store information entered in the script authoring experts.
Property4 Property
A general purpose property which can contain any user value.
Syntax
object.Property4 [= Variant]
Properties
The Property4 property syntax has these parts:
Part Description
Remarks
Property4 is used internally to store information entered in the script authoring experts.
335
iFIX Automation Reference
Property5 Property
A general purpose property which can contain any user value.
Syntax
object.Property5 [= Variant]
Properties
The Property5 property syntax has these parts:
Part Description
Remarks
Property5 is used internally to store information entered in the script authoring experts.
Property6 Property
A general purpose property which can contain any user value.
Syntax
object.Property6 [= Variant]
Properties
The Property6 property syntax has these parts:
Part Description
336
IFIX Automation Reference
Remarks
Property6 is used internally to store information entered in the script authoring experts.
Property7 Property
A general purpose property which can contain any user value.
Syntax
object.Property7 [= Variant]
Properties
The Property7 property syntax has these parts:
Part Description
Remarks
Property7 is used internally to store information entered in the script authoring experts.
Property8 Property
A general purpose property which can contain any user value.
Syntax
object.Property8 [= Variant]
Properties
The Property8 property syntax has these parts:
Part Description
337
iFIX Automation Reference
Part Description
Remarks
Property8 is used internally to store information entered in the script authoring experts.
Property9 Property
A general purpose property which can contain any user value.
Syntax
object.Property9 [= Variant]
Properties
The Property9 property syntax has these parts:
Part Description
Remarks
Property9 is used internally to store information entered in the script authoring experts.
Q-R
Quality Property
Returns the quality of the OPC data source represented by this DataItem. The Quality property
becomes populated either from Read method of the DataItem or Group (DataSystem) object.
338
IFIX Automation Reference
Syntax
object.Quality
Properties
The Quality property syntax has this part:
Part Description
Remarks
Quality is a read-only property of type Integer.
The Value and Timestamp properties are associated with the Quality.
QueueEvents Property
Specifies whether to allow multiple entries of the same event in the event queue.
Syntax
object.QueueEvents [= Boolean]
Properties
The QueueEvents property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
339
iFIX Automation Reference
Value Description
Remarks
If a Timer event is configured to occur every 5 seconds and it takes longer than 5 seconds to execute
the event, the event will not be placed in the queue if QueueEvents is set to False. If QueueEvents is
True, the event handler will occur for each event fired once the first event is acknowledged.
QuickStyle Property
Allows you to apply a predefined chart style to an Enhanced Chart.
Syntax
object.QuickStyle [=enumQuickStyle]
Properties
The QuickStyle property syntax has these parts:
Part Description
enumQuickStyle An enumeration that represents the predefined chart style in the Enhanced
Chart:
Valid entries:
9 – DarkInset
11 – DarkLine
12 – DarkNoBorder
10 – DarkShadow
1 – LightInset
3 – LightLine
4 – LightNoBorder
2 – LightShadow
5 – MediumInset
7 – MediumLine
8 – MediumShadow
6 – MediumNoBorder
0 – NoStyle
340
IFIX Automation Reference
Radius Property
Specifies the current radius for the specified Pie object.
Syntax
object.Radius [= Double]
Properties
The Radius property syntax has these parts:
Part Description
RandomSubsetsToGraph Property
In an Enhanced Chart, this property specifies the subset of data sources to be graphed. Each specified
data source is included in the subset. For example, if you have a chart with four data sources and you
specify data sources one and two as part of the subset, then both data sources will appear in all
visualizations of the chart. On the other hand, each of the other data sources of the chart will be only
graphed in one of the chart's visualizations. For this reason, the data sources specified in this property
are also referred to as "baseline" collectively. By specifying baseline and non-baseline data sources,
you can compare data sources in different visualizations.
The data sources are specified in the form of dataset indices, separated by a comma. For example, a
value of "0, 2" specifies that data sources one and three are to be graphed in all visualizations.
Syntax
object.RandomSubsetsToGraph [= String]
Properties
The RandomSubsetsToGraph property syntax has these parts:
Part Description
341
iFIX Automation Reference
String The subsets to be graphed for the HistogramChart, LineChart, SPCBarChart, or XYChart
Object.
RawFormat Property
Specifies whether the text is a string formatted for the C programming language.
Syntax
object.RawFormat
Properties
The RawFormat property syntax has this part:
Part Description
Settings
RawFormat is a read-only property of type boolean.
Value
True
False
RecalculateViewport Property
Specifies whether persisted ratios are used when calculating the size and viewport for a picture when
opening it in the same screen resolution in which it was saved.
Syntax
object.RecalculateViewport [= Boolean]
Properties
The RecalculateViewport property syntax has these parts:
342
IFIX Automation Reference
Part Description
Boolean Whether the persisted ratios used to determine the picture's viewport are applied upon
reopening the picture in the same resolution in which it was saved.
Settings
The settings for Boolean are:
Value Description
True The ratios used to determine the picture's viewport are recalculated upon opening,
regardless of screen resolution.
False The persisted ratios used to determine the picture's viewport are applied when
(Default) reopening the picture in the same resolution in which it was saved.
Remarks
If you set this property to True, test the picture to make sure it does not cause any unexpected behavior
before saving it. When using Fit Picture To Window, this property will automatically be set to False.
RefreshRate Property
Specifies the refresh rate of the Chart or ExpressionEditor.
Syntax
object.RefreshRate [= Single]
Properties
The RefreshRate property syntax has these parts:
Part Description
343
iFIX Automation Reference
RemoveNonWindowsUsers Property
Sets or retrieves the boolean value that indicates whether or not iFIX security users who are not
configured to use Windows security will be deleted.
Syntax
object.RemoveNonWindowsUsers [= Boolean]
Properties
The RemoveNonWindowsUsers property syntax has these parts:
Part Description
Boolean The default value is False, which indicates that users who are not using Windows
security will not be deleted.
True indicates that iFIX users not using Windows security will be deleted.
Remarks
This property corresponds to the /R command line parameter of the Security Synchronizer application.
ResetPercentage Property
Specifies the percentage by which the Chart object's display is shifted when the Pen reaches the right
side of the display area when scrolling left to right.
Syntax
object.ResetPercentage [= Single]
Properties
The ResetPercentage property syntax has these parts:
Part Description
344
IFIX Automation Reference
Resizable Property
Whether or not the specified document is able to be resized.
Syntax
object.Resizable [= Boolean]
Properties
The Resizable property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ResolveSourceName Property
Returns the resolved tag name if the source is a tag group symbol.
Syntax
object.ResolvedSourceName
Properties
The ResolvedSourceName property syntax has this part:
345
iFIX Automation Reference
Part Description
Remarks
Read-only property
Revision Property
Returns the revision number for the specified Dynamo object. This property is read-only.
Syntax
DynamoObject.Revision
Properties
The Revision property syntax has this part:
Part Description
Return Value
Long. This number represents the revision number that iFIX internally assigns to the Dynamo object.
RevisionNumber Property
Returns the revision number for the specified document.
Syntax
object.RevisionNumber
Properties
The RevisionNumber property syntax has this part:
346
IFIX Automation Reference
Part Description
Remarks
RevisionNumber is a read-only property of type Long.
Right Property
Returns the value of the right edge of the shape's bounding rectangle.
Syntax
object.Right
Properties
The Right property syntax has this part:
Part Description
Remarks
Right is a read-only property of type Double.
RightCenter Property
Returns the right center point of the shape's bounding rectangle.
Syntax
object.RightCenter
Properties
The RightCenter property syntax has this part:
347
iFIX Automation Reference
Part Description
Remarks
RightCenter is a read-only property of type Object.
RotationAngle Property
Specifies the angle (in radians or degrees) by which to rotate the specified object.
Syntax
object.RotationAngle [= Double]
Properties
The RotationAngle property syntax has these parts:
Part Description
Remarks
In the Configuration environment, RotationAngle will not be set back to 0 until the object is de-
selected. Therefore, while selected, the object will contain it's current RotationAngle value of the
object when it was last selected. Once de-selected, the object's RotationAngle property will be reset
back to 0.
In the Run-time environment, the RotationAngle property displayes the object’s angle based on the
number of degrees the object had been rotated when it initially came off disk.
The units to be used when creating the angle is specified as either degrees or radians depending on the
value of the AngleUnits property.
RoundnessX Property
Specifies the horizontal roundness of a RoundRectangle.
348
IFIX Automation Reference
Syntax
object.RoundnessX [= Long]
Properties
The RoundnessX property syntax has these parts:
Part Description
RoundnessY Property
Specifies the vertical roundness of a Round Rectangle.
Syntax
object.RoundnessY [= Long]
Properties
The RoundnessY property syntax has these parts:
Part Description
RunIndicatorBlink Property
Specifies whether the Alarm Summary object’s run indicator blinks.
Syntax
object.RunIndicatorBlink [= Boolean]
349
iFIX Automation Reference
Properties
The RunIndicatorBlink property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
RunIndicatorColor Property
Specifies the color of the Alarm Summary object’s run indicator.
Syntax
object.RunIndicatorBlink [= Long]
Properties
The RunIndicatorBlink property syntax has these parts:
Part Description
350
IFIX Automation Reference
RuntimeVisible Property
Whether or not the document is visible in the Run-time environment.
Syntax
object.RuntimeVisible [= Boolean]
Properties
The RuntimeVisible property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
To display a picture that was opened with the RuntimeVisible property set to False, you must set the
active window’s Active property to True.
The following is an example of code that will set the RuntimeVisible and Active properties:
doc.ActiveWindow.Active = True
351
iFIX Automation Reference
Saved Property
Returns whether the specified document has been edited since the last time it was saved.
Syntax
object.Saved
Properties
The Saved property syntax has this part:
Part Description
Return Values
The Saved property return values are:
Value Description
True The document has not been edited since it was last saved.
False The document has been edited since it was last saved.
SaveThumbnail Property
Allows you to save a thumbnail image of an existing picture, so that you can view the image from the
system tree in the iFIX WorkSpace.
NOTE: You will not be able to view thumbnails if you are using Windows Vista and the Vista Basic
Theme for your display.
Syntax
object.SaveThumbnail [= Boolean]
352
IFIX Automation Reference
Properties
The SaveThumbnail property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True
Thumbnail image is saved with the picture.
ScalesWidth Property
Specifies whether the user is allowed to change the width of the Text or Datalink object.
Syntax
object.ScalesWidth [= Boolean]
Properties
The ScalesWidth property syntax has these parts:
Part Description
353
iFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
False The object's width cannot be changed. (There can be clipping of the text)
Remarks
The behavior of the object by changing the ScalesWidth property is dependent upon the Autosize
property. The following table illustrates the dependencies:
SchedulePath Property
Returns the path used to store iFIX schedule files.
Syntax
object.SchedulePath
Properties
The SchedulePath property syntax has this part:
Part Description
354
IFIX Automation Reference
Remarks
SchedulePath is a read-only property of type String.
ScreenHeight Property
Returns the screen resolution height in pixel units.
Syntax
object.ScreenHeight
Properties
The ScreenHeight property syntax has this part:
Part Description
Remarks
ScreenHeight is a read-only property of type Long.
ScreenWidth Property
Returns the screen resolution width in pixel units.
Syntax
object.ScreenWidth
Properties
The ScreenWidth property syntax has this part:
Part Description
355
iFIX Automation Reference
Remarks
ScreenWidth is a read-only property of type Long.
ScrollDirection Property
Specifies the direction that the Chart will scroll.
Syntax
object.ScrollDirection [= enumScrollDirection]
Properties
The ScrollDirection property syntax has these parts:
Part Description
Settings
The settings for enumScrollDirection are:
ScrollGrid Property
Specifies whether the Chart object's grid can be scrolled.
Syntax
object.ScrollGrid [= Boolean]
356
IFIX Automation Reference
Properties
The ScrollGrid property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ScrollItems Property
Specifies whether to scroll the tick marks and their labels with the data displayed for the Time Axis.
Syntax
object.ScrollItems [= Boolean]
Properties
The ScrollItems property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
357
iFIX Automation Reference
Value Description
True Scroll the tick marks and labels with the data.
False Do not scroll the tick marks and labels with the data.
ScrollPercentage Property
Specifies the percentage to scroll the Chart.
Syntax
object.ScrollPercentage [= Single]
Properties
The ScrollPercentage property syntax has these parts:
Part Description
Remarks
This value is used to scroll the Chart by using the ScrollBack and ScrollForward methods.
SecondaryImageDisplayed Property
Specifies whether a Bitmap object's secondary image at the current index is being displayed as the
primary (or mouse-up) image.
Syntax
object.SecondaryImageDisplayed [= Boolean]
Properties
The SecondaryImageDisplayed property syntax has this part:
358
IFIX Automation Reference
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
If SecondaryImageDisplayed is True, the primary image is displayed when the mouse is down. In all
other cases the primary image is displayed. If a secondary image is not loaded, the primary image is
displayed when the mouse is down.
SecurityArea Property
Specifies the Security Area for the specified document.
Syntax
object.SecurityArea [= String]
Properties
The SecurityArea property syntax has these parts:
Part Description
359
iFIX Automation Reference
SelectedDatasource Property
Returns the data source of the currently selected object.
Syntax
object.SelectedDatasource[=String]
Properties
The SelectedDatasource property syntax has these parts:
Part Description
SelectedFieldName Property
Returns the field name of the currently selected object.
Syntax
object.SelectedFieldName[=String]
Properties
The SelectedFieldName property syntax has these parts:
Part Description
SelectedNodeName Property
Returns the SCADA node from the currently selected object.
360
IFIX Automation Reference
Syntax
object.SelectedNodeName[=String]
Properties
The SelectedNodeName property syntax has these parts:
Part Description
SelectedShapes Property
Returns a collection of shapes currently selected within the specified Picture, DynamoSet or
UserGlobals document.
Syntax
object.SelectedShapes
Properties
The SelectedShapes property syntax has this part:
Part Description
Remarks
SelectedShapes is a read-only property of type Object.
SelectedTagName Property
Returns the tag name or OPC element (item) of the currently selected object.
Syntax
object.SelectedTagName[=String]
361
iFIX Automation Reference
Properties
The SelectedTagName property syntax has these parts:
Part Description
SelectionTimeout Property
Specifies the number of seconds an alarm stays selected once it is selected. The alarm becomes
deselected after the timeout period.
Syntax
object.SelectionTimeout [= Integer]
Properties
The SelectionTimeout property syntax has these parts:
Part Description
Integer The number of seconds that an alarm stay selected once it is selected. The valid range is
3 - 120 seconds. The default is 10.
SendAlarmMessages Property
Sets or retrieves the boolean value that indicates whether or not the Audit Trail messages will be sent
to iFIX alarm destinations.
Syntax
object.SendAlarmMessages [= Boolean]
Properties
The SendAlarmMessages property syntax has these parts:
362
IFIX Automation Reference
Part Description
Boolean The default value is False, which indicates that alarm messages will not be sent to
alarm destinations.
True indicates that alarm messages will be sent to alarm destinations.
Remarks
This property corresponds to the /A command line parameter of the Security Synchronizer application.
ShadowColor Property
In an Enhanced Chart, specifies of the color of the drop shadow, if present.
Syntax
object.ShadowColor [= Long]
Properties
The ShadowColor property syntax has these parts:
Part Description
Boolean
Whole number representing the color of the drop shadow in the HistogramChart,
LineChart, SPCBarChart, or XYChart Object.
SharedTableName Property
Specifies the name of the shared Lookup table.
Syntax
object.SharedTableName [= String]
363
iFIX Automation Reference
Properties
The SharedTableName property syntax has these parts:
Part Description
Remarks
For ease of use the user is able to create shared threshold tables in the global pages for its Lookup
objects to use. The Lookup object will then redirect all its lookups to this table.
"User.SharedThresholdTable1".
If the user does specify a shared table, all of its own levels are destroyed. The shared table allows for
reuse of similar tables (color by value, for example) – making all objects consistent and allowing for
any necessary changes to be made in one place.
ShowAxis Property
Specifies whether or not to display the specified Time Axis or Value Axis.
Syntax
object.ShowAxis [= Boolean]
Properties
The ShowAxis property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
364
IFIX Automation Reference
Value Description
ShowDatabaseTab Property
Specifies whether to display the database tab in the Expression Builder dialog.
Syntax
object.ShowDatabaseTab [= Boolean]
Properties
The ShowDatabaseTab property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ShowDataServersTab Property
Specifies whether to display the DataServers tab in the Expression Builder dialog.
365
iFIX Automation Reference
Syntax
object.ShowDataServersTab [= Boolean]
Properties
The ShowDataServersTab property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ShowDate Property
Specifies whether or not to display the date on the Time Axis of the Chart.
Syntax
object.ShowDate [= Boolean]
Properties
The ShowDate property syntax has these parts:
Part Description
366
IFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
ShowDSLegend Property
Sets whether the data source legends are visible or invisible in a HistogramChart, LineChart,
SPCBarChart, or XYChart Object.
Syntax
object.ShowDSLegend [= Boolean]
Properties
The ShowDSLegend property syntax has these parts:
Part Description
Boolean Whether the data source legends are visible or invisible in a HistogramChart,
LineChart, SPCBarChart, or XYChart Object.
Settings
The settings for Boolean are:
Value Description
367
iFIX Automation Reference
ShowGaps Property
Specifies whether the Pen, HistoricalDataSet, RealTimeDataSet, or RealTimeSPCDataSet should
show gaps in the line indicating errors in the data sets.
Syntax
object.ShowGaps [= Boolean]
Properties
The ShowGaps property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
Every data point has a value, timestamp, and a quality. If the quality code indicates a bad data sample,
for example, device off line or communication access error, this code indicates that the sampling
process could not get a valid reading at this point in time. With this field enabled, the Pen's data line
will show a gap in the data line that indicates that there is no valid data.
ShowGlobalsTab Property
Specifies whether to display the Globals tab in the Expression Builder dialog.
Syntax
object.ShowGlobalsTab [= Boolean]
368
IFIX Automation Reference
Properties
The ShowGlobalsTab property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ShowGridLines Property
Specifies whether gridlines are displayed for the Alarm Summary object.
Syntax
object.ShowGridLines [= Boolean]
Properties
The ShowGridLines property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
369
iFIX Automation Reference
Value Description
ShowHeaders Property
Specifies whether column headers are displayed for the Alarm Summary object.
Syntax
object.ShowHeaders [= Boolean]
Properties
The ShowHeaders property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ShowHistoricalTab Property
Specifies whether to display the Historical tab in the Expression Builder dialog.
370
IFIX Automation Reference
Syntax
object.ShowHistoricalTab [= Boolean]
Properties
The ShowHistoricalTab property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ShowHorizontalGrid Property
Specifies whether to display the Chart object's horizontal grid lines.
Syntax
object.ShowHorizontalGrid [= Boolean]
Properties
The ShowHorizontalGrid property syntax has these parts:
Part Description
371
iFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
ShowLegend Property
Specifies whether the Chart, HistogramChart, LineChart, or SPCBarChart object's Legend is
displayed.
Syntax
object.ShowLegend [= Boolean]
Properties
The ShowLegend property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
372
IFIX Automation Reference
ShowLine Property
Specifies whether the Pen should display the line representing its data points.
Syntax
object.ShowLine [= Boolean]
Properties
The ShowLine property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ShowPicturesTab Property
Specifies whether to display the Pictures tab in the Expression Builder dialog.
Syntax
object.ShowPicturesTab [= Boolean]
Properties
The ShowPicturesTab property syntax has these parts:
373
iFIX Automation Reference
Part Description
Settings
The settings for Boolean are:
Value Description
ShowRowNumbers Property
Specifies whether to display row numbers for the Alarm Summary object.
Syntax
object.ShowRowNumbers [= Boolean]
Properties
The ShowRowNumbers property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
374
IFIX Automation Reference
Value Description
ShowScrollBars Property
Specifies whether the Alarm Summary object displays both horizontal and vertical scroll bars.
Syntax
object.ShowScrollBars [= Boolean]
Properties
The ShowScrollBars property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True The horizontal and vertical scroll bars are displayed. (Default)
ShowStatusBar Property
Specifies whether the status bar is displayed for the Alarm Summary object.
375
iFIX Automation Reference
Syntax
object.ShowStatusBar [= Boolean]
Properties
The ShowStatusBar property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ShowTimeAxis Property
Specifies whether the Time Axis is displayed for the specified Chart.
Syntax
object.ShowTimeAxis [= Boolean]
Properties
The ShowTimeAxis property syntax has these parts:
Part Description
376
IFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
ShowTimeAxisTitle Property
Specifies whether the title of the Time Axis is displayed for the specified Chart.
Syntax
object.ShowTimeAxisTitle [= Boolean]
Properties
ShowTimeAxisTitle
Part Description
Settings
The settings for Boolean are:
Value Description
377
iFIX Automation Reference
ShowTimeCursor Property
Specifies whether or not to show the time cursor for the Chart, HistogramChart, LineChart, or
SPCBarChart.
Syntax
object.ShowTimeCursor [= Boolean]
Properties
The ShowTimeCursor property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ShowTimeCursorToolTips Property
Displays or hides the time cursor’s data tool tips.
Syntax
object.ShowTimeCursorToolTips [= Boolean]
Properties
The ShowTimeCursorToolTips property syntax has these parts:
378
IFIX Automation Reference
Part Description
Settings
The settings for Boolean are:
Value Description
ShowTitle Property
Sets whether or not to show the title of the specified Time Axis or Value Axis.
Syntax
object.ShowTitle [= Boolean]
Properties
The ShowTitle property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
379
iFIX Automation Reference
Value Description
ShowValueAxis Property
Specifies whether the Value Axis is displayed for the specified Chart.
Syntax
object.ShowValueAxis [= Boolean]
Properties
The ShowValueAxis property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ShowValueAxisTitle Property
Specifies whether the title of the Value Axis is displayed for the specified Chart.
380
IFIX Automation Reference
Syntax
object.ShowValueAxisTitle [= Boolean]
Properties
The ShowValueAxisTitle property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
ShowVerticalGrid Property
Specifies whether to display the Chart object’s vertical grid lines.
Syntax
object.ShowVerticalGrid [= Boolean]
Properties
The ShowVerticalGrid property syntax has these parts:
Part Description
381
iFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
SmoothingMode Property
Determines how the pipe will be drawn, either using high quality or high speed. Pipes drawn with the
high quality setting use antialiasing; their edges do not appear jagged. Pipes that use high speed do not
use antialiasing and their edges are jagged. However, their demand on system resources is not as great
as that of pipes that use high quality. If you have a large number of animated pipes, you may want to
consider using pipes with the quality high speed, to limit their use of your system resources.
Syntax
object.SmoothingMode [= enumSmoothingMode]
Properties
The SmoothingMode property syntax has these parts:
Part Description
enumSmoothingMode An enumeration that represents whether a pipe is drawn using high speed
or high quality.
Valid entries:
0 – High Quality.
1 – High Speed.
SnapToGrid Property
Specifies whether to snap objects to the grid points.
Syntax
object.SnapToGrid [= Boolean]
382
IFIX Automation Reference
Properties
The SnapToGrid property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
SortColumnName Property
Specifies the column heading of the column currently being used for sorting in the Alarm Summary
object.
Syntax
object.SortColumnName [= String]
Properties
The SortColumnName property syntax has these parts:
Part Description
383
iFIX Automation Reference
Part Description
String
The name of the column to be used for sorting.
Valid entries are:
Time In
Block Type
Tagname
Priority
Node
Ack/Time
Ack/Priority
SortOrderAscending Property
Specifies whether the sort order for the Alarm Summary object is ascending or descending.
Syntax
object.SortOrderAscending [= Boolean]
Properties
The SortOrderAscending property syntax has these parts:
Part Description
Boolean
Whether the sort is ascending or descending.
Settings
The settings for Boolean are:
Value Description
384
IFIX Automation Reference
Source Property
Specifies the source string for an animation. This field specifies where the data should be retrieved
from to drive this animation, that is, the input data source. The syntax can be either a fully qualified
string, or, when using intelligent defaults for the server, node, and field names, the valid syntax for the
FIX data server could be as simple as “AI1”.
A fully qualified string is the server name and OPC string separated by a period. For example,
FIX32.Scada1.AI1.F_CV.
Syntax
object.Source [= String]
Properties
The Source property syntax has these parts:
Part Description
Remarks
This property internally builds a connection (Connect) between the input value property of the
animation and the data source specified by this property.
Sources Property
Returns the Sources collection for the specified ScriptProcedure object.
Syntax
object.Sources
Properties
The Sources property syntax has this part:
Part Description
385
iFIX Automation Reference
Remarks
Sources is a read-only property of type Object.
SourceValidated Property
Specifies whether the source property has a valid data source connection.
Syntax
object.SourceValidated [= Boolean]
Properties
The SourceValidated property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
SPCChartType Property
Specifies the type of SPC bar chart: R-Bar, X-Bar, or S-Bar.
Syntax
object.SPCChartType [= enumSPCChartType]
386
IFIX Automation Reference
Properties
The SPCChartType property syntax has these parts:
Part Description
SPCInterval Property
Sets the SPC interval for the RealTimeSPCDataSet object.
Syntax
object.SPCInterval [= Double]
Properties
The SPCInterval property syntax has these parts:
Part Description
SPCType Property
A read-only property that determines how control limits should be set, depending on the SPC chart
type. For example, if you add a RealTimeSPCDataSet to an X-Bar Chart, the SPCType data set is also
specified as X-bar.
Syntax
object.SPCType [= enumSPCType]
387
iFIX Automation Reference
Properties
The SPCType property syntax has these parts:
Part Description
enumSPCType An enumeration that represents the upper control limits in the Enhanced Chart:
Valid entries:
1 – StatBlock_XBar
2 – StatBlock_RBar
3 – StatBlock_SBar
4 – HS_Block
Remarks
SPCType is a read-only property.
StartAngle Property
Specifies which portion of the object is visible.
Syntax
object.StartAngle [= Double]
Properties
The StartAngle property syntax has these parts:
Part Description
Double The number of units to display the radial segment specifying the start of the angle.
Remarks
The Pie is merely a visible piece of an oval. The StartAngle and EndAngle properties specify which
portions of that oval will be visible. These properties define radial segments from the center of the oval
between which the Pie is formed.
• A StartAngle of 0 units will define a horizontal radial from the center of the oval to the right.
388
IFIX Automation Reference
• A StartAngle of 90 units will define a vertical radial from the center of the oval to the top of
the screen.
• A StartAngle of 180 units will define a horizontal radial from the center of the oval to the left
side of the screen.
• A StartAngle of 270 units will define a vertical radial from the center of the oval to the
bottom of the screen.
The units to be used when creating the angle is specified as either degrees or radians depending on the
value of the AngleUnits property.
StartCap Property
Specifies the start cap to apply to the selected pipe object.
Syntax
object.StartCap [= enumStartCap]
Properties
The StartCap property syntax has this part:
Part Description
Settings
The settings for StartCap are:
Value Description
0 StartCapRound
1 StartCapSquare
2 StartCapHorizontalDiagonal
3 StartCapVerticalDiagonal
389
iFIX Automation Reference
StartDateMode Property
Specifies the HistoricalDataSet, Lookup Object, Line, Formatted Object, or Chart object's initial
starting date operational mode as either fixed or relative.
Syntax
object.StartDateMode [= enumStartMode]
Properties
The StartDateMode property syntax has these parts:
Part Description
Settings
The settings for enumStartMode are:
Remarks
StartDateMode is a one-shot property.
This property is not impacted by any Global Time Control property settings.
StartDateType Property
Specifies the Pen object's starting date operational mode as either fixed or relative .
Syntax
object.StartDateType [= enumStartMode]
390
IFIX Automation Reference
Properties
The StartDateType property syntax has these parts:
Part Description
Settings
The settings for enumStartMode are:
Relative 0 Relative.
Fixed 1 Fixed.
Remarks
Use this field to configure either a fixed starting date or a relative date. Configuring a relative start date
means that the pen will use the DaysBeforeNow property for determining the start date.
StartPoint Property
Specifies the starting point of the object.
Syntax
object.StartPoint [= Object]
Properties
The StartPoint property syntax has these parts:
Part Description
391
iFIX Automation Reference
Part Description
Remarks
The StartPoint property specifies a point object which contains an x and y double value which are
logical coordinate values equivalent to the StartX and StartY properties.
The StartPoint for the Pie also defines the end points of the line segments which define the
StartAngle and EndAngle of the object.
The StartPoint for the each object is the point located at index 0.
StartTime Property
Specifies the HistoricalDataSet, Chart, Lookup Object, Line, Formatted Object, and/or Timer
object's start time.
Chart Syntax
object.StartTime [= Date]
Properties
The StartTime property syntax has these parts:
Part Description
Timer Syntax
object.StartTime [= Variant]
Part Description
392
IFIX Automation Reference
Remarks
This property is not impacted by any Global Time Control property settings.
StartTimeMode Property
Specifies the HistoricalDataSet, Lookup Object, Line, Formatted Object, or Chart object's initial
starting time operational mode to either fixed or relative time-based.
Syntax
object.StartTimeMode [= enumStartMode]
Properties
The StartTimeMode property syntax has these parts:
Part Description
enumStartMode The starting time operational mode for the Chart or HistoricalDataSet.
Settings
The settings for enumStartMode are:
Remarks
StartTimeMode is a one-shot property.
393
iFIX Automation Reference
StartTimeType Property
Specifies the Pen object's starting time operational mode to either fixed or relative time-based.
Syntax
object.StartTimeType [= enumStartMode]
Properties
The StartTimeType property syntax has these parts:
Part Description
Settings
The settings for enumStartMode are:
Relative 0 Relative.
Fixed 1 Fixed.
Remarks
Use this field to configure either a fixed start time or a relative start time. Configuring a relative start
time mean that the pen will use the TimeBeforeNow property for determining the start time.
StartX Property
Specifies the X coordinate of the object's start point.
Syntax
object.StartX [= Double]
394
IFIX Automation Reference
Properties
The StartX property syntax has these parts:
Part Description
Double The logical coordinate value of the X coordinate of the start point.
StartY Property
Specifies the Y coordinate of the object's start point.
Syntax
object.StartY [= Double]
Properties
The StartY property syntax has these parts:
Part Description
Double The logical coordinate value of the Y coordinate of the start point.
Status Property
Returns whether the Timer and/or Event is running or stopped.
Syntax
object.Status [=Boolean]
Properties
The Status property syntax has these parts:
395
iFIX Automation Reference
Part Description
Return Values
The Status property return values are:
Value Description
StatusBar Property
Specifies the text displayed in the status bar of the WorkSpace.
Syntax
object.StatusBar [= String]
Properties
The StatusBar property syntax has these parts:
Part Description
StatusFontSize Property
Specifies the size of the font displayed for the Alarm Summary object.
396
IFIX Automation Reference
Syntax
object.StatusFontSize [= Integer]
Properties
The StatusFontSize property syntax has these parts:
Part Description
SteppedTrend Property
Specifies whether the data points are written with each Chart refresh.
Syntax
object.SteppedTrend [= Boolean]
Properties
The SteppedTrend property syntax has these parts:
Part Description
Boolean
Whether data points are written with each refresh.
Settings
The settings for Boolean are:
Value Description
True Data points are written with each refresh of the Chart, displaying a flat line.
397
iFIX Automation Reference
Value Description
StrikeThrough Property
Specifies whether the text has a strike through it.
Syntax
object.StrikeThrough [= Boolean]
Properties
The StrikeThrough property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
SubTitle Property
Allows you to enter a subtitle for your Enhanced Chart.
Syntax
object.SubTitle [= String]
398
IFIX Automation Reference
Properties
The SubTitle property syntax has these parts:
Part Description
String Text that appears as the subtitle in the HistogramChart, LineChart, SPCBarChart, or
XYChart Object.
SubTitleBold Property
Displays the subtitle for the Enhanced Chart in bold.
Syntax
object.SubTitleBold [= Boolean]
Properties
The SubTitleBold property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
399
iFIX Automation Reference
SubTitleFont Property
Specifies the font face of the subtitle for the Enhanced Chart.
Syntax
object.SubTitleFont [= String]
Properties
The SubTitleFont property syntax has these parts:
Part Description
String The name of the font. By default, the font face is "Times New Roman."
SubTitleItalic Property
In an Enhanced Chart, specifies whether the subtitle displays in italics.
Syntax
object.SubTitleItalic [= Boolean]
Properties
The SubTitleItalic property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
400
IFIX Automation Reference
Value Description
SubTitleUnderline Property
In an Enhanced Chart, specifies whether the subtitle appears underlined.
Syntax
object.SubTitleUnderline [= Boolean]
Properties
The SubTitleUnderline property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
System Property
Returns the dispatch pointer to the System object.
401
iFIX Automation Reference
Syntax
object.System
Properties
The System property syntax has this part:
Part Description
Remarks
System is a read-only property of type Object.
SystemMenu Property
Specifies whether the System Menu is enabled.
Syntax
object.SystemMenu [= Boolean]
Properties
The SystemMenu property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
402
IFIX Automation Reference
TableBackColor Property
For an Enhanced Chart, specifies the background color of the table, if displayed.
Syntax
object.TableBackColor [= Long]
Properties
The TableBackColor property syntax has these parts:
Part Description
TableFont Property
For an Enhanced Chart, specifies the font of the table, if displayed.
Syntax
object.TableFont [= String]
Properties
The TableFont property syntax has these parts:
Part Description
String The name of the font. By default, the font face is "Arial."
403
iFIX Automation Reference
TableForeColor Property
For an Enhanced Chart, specifies the foreground color of the table, if displayed.
Syntax
object.TableForeColor [= Long]
Properties
The TableForeColor property syntax has these parts:
Part Description
TextColor Property
Sets the color used as the text color for the object's titles and labels in an Enhanced Chart.
Syntax
object.TextColor [= Long]
Properties
The TextColor property syntax has these parts:
Part Description
Thickness Property
Specifies the thickness, in pixels, of the selected pipe object.
404
IFIX Automation Reference
Syntax
object.Thickness [=Integer]
Properties
The Thickness property syntax has these parts:
Part Description
ThicknessType Property
Specifies whether the thickness type for pipes can be stretched or is fixed.
Syntax
object.ThicknessType [= enumThicknessType]
Properties
The ThicknessType property syntax has these parts:
Part Description
TimeAxis Property
Returns the Pen object's Time Axis.
405
iFIX Automation Reference
Syntax
object.TimeAxis
Properties
The TimeAxis property syntax has this part:
Part Description
Remarks
TimeAxis is a read-only property of type Object.
Use this object to access Time Axis properties, which include AxisColor, AxisTitle, AxisLength,
NumLabels, NumTicks, ShowAxis, and ShowTitle.
TimeAxisNumLabels Property
Specifies the number of labels on the Time Axis.
Syntax
object.TimeAxisNumLabels [= Integer]
Properties
The TimeAxisNumLabels property syntax has these parts:
Part Description
TimeAxisNumTicks Property
Specifies the number of tick marks on the Time Axis.
406
IFIX Automation Reference
Syntax
object.TimeAxisNumTicks [= Integer]
Properties
The TimeAxisNumTicks property syntax has these parts:
Part Description
Remarks
The number of tick marks includes the left and right edge markers. The first tick is the left edge,
followed by the right edge, then the middle ticks.
TimeAxisTitle Property
Specifies the title of the specified Chart object's Time Axis.
Syntax
object.TimeAxisTitle [= String]
Properties
The TimeAxisTitle property syntax has these parts:
Part Description
TimeBeforeNow Property
Specifies the initial start time for a HistoricalDataSet, Chart, Line, Lookup Object, Formatted Object,
or Pen relative to the time the parent Picture is opened.
407
iFIX Automation Reference
Syntax
object.TimeBeforeNow [= Long]
Properties
The TimeBeforeNow property syntax has these parts:
Part Description
Remarks
This property is not impacted by any Global Time Control property settings.
TimeCursorColor Property
Specifies the color of the Chart object's Time Cursor.
Syntax
object.TimeCursorColor [= Long]
Properties
The TimeCursorColor property syntax has these parts:
Part Description
TimeCursorPos Property
Specifies the horizontal position of the Chart object's time cursor in logical units relative to the side of
the document frame (document relative not chart relative).
408
IFIX Automation Reference
Syntax
object.TimeCursorPos [= Double]
Properties
The TimeCursorPos property syntax has these parts:
Part Description
TimeCursorTooltipColor Property
Specifies the color to display as the background for the specified Pen object's time cursor tooltips.
Syntax
object.TimeCursorTooltipColor [= Long]
Properties
The TimeCursorTooltipColor property syntax has these parts:
Part Description
Timeout Property
Specifies the maximum amount of time the Chart may be paused (see Pause) before it will
automatically resume (see Resume).
Syntax
object.Timeout [= Long]
409
iFIX Automation Reference
Properties
The Timeout property syntax has these parts:
Part Description
Remarks
If the Timeout property is set to zero (0), the chart will pause and not update until the Resume method
is called.
TimerEnabled Property
Specifies the run-time operation of the Timer object.
Syntax
object.TimerEnabled [= Boolean]
Properties
The TimerEnabled property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
True If set in the Configuration environment, the Timer is started when the WorkSpace is
switched to the Run-time environment. If set from False in the Run-time environment,
nothing will happen, the user must call StartTimer.
410
IFIX Automation Reference
Value Description
False If set in the Configuration environment, the Timer will not be started when the
WorkSpace is switched to the Run-time environment. If set in the Run-time
environment, the timer will be stopped.
Timestamp Property
Returns the timestamp of the OPC data source represented by this DataItem. The Timestamp
property becomes populated either from Read method of the DataItem or Group (DataSystem)
object.
Syntax
object.Timestamp
Properties
The Timestamp property syntax has this part:
Part Description
Remarks
Timestamp is a read-only property of type Date.
The Quality and Value properties are associated with the Timestamp.
TimeZoneBiasExplicit Property
Specifies the TimeZoneBiasExplicit.
Syntax
object.TimeZoneBiasExplicit [=enumTimeZoneBiasExplicit ]
Properties
The TimeZoneBiasExplicit property syntax has these parts:
411
iFIX Automation Reference
Part Description
Remarks
The TimeZoneBiasExplicit property is only used when the TimeZoneBiasRelative property is set to
explicit time zone.
TimeZoneBiasRelative Property
Specifies the TimeZoneBiasRelative.
Syntax
object.TimeZoneBiasRelative [=enumTimeZoneBiasRelative ]
Properties
The TimeZoneBiasRelative property syntax has these parts:
Part Description
enum
TimeZoneBiasExplicit The relative time zone for a historical data set, chart, or pen.
Settings
412
IFIX Automation Reference
Remarks
If the value is explicit, it uses whatever the TimeZoneExplicitBias is.
Titlebar Property
Specifies whether the window's title bar is visible or not.
Syntax
object.Titlebar [= Boolean]
Properties
The Titlebar property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
413
iFIX Automation Reference
ToggleRate Property
Specifies the rate at which the output of the Lookup object toggles between output1 and output2. For
example, in a color table, this property is the blink rate.
Syntax
object.ToggleRate [= Single]
Properties
The ToggleRate property syntax has these parts:
Part Description
ToggleSource Property
Specifies the data source or expression used to determine if the output of the Lookup object should
toggle between output1 and output2.
Syntax
object.ToggleSource [= String]
Properties
The ToggleSource property syntax has these parts:
Part Description
Remarks
The ToggleSource property stores and exposes the fully qualified name.
414
IFIX Automation Reference
Tolerance Property
Specifies the tolerance for exact match Lookup tables.
Syntax
object.Tolerance [= Single]
Properties
The Tolerance property syntax has these parts:
Part Description
Remarks
The tolerance will work just like in an expression. If the value is within +/- tolerance, the value will
pass the condition imposed – in this case equality.
For example, the user sets up an exact match table such that an object is green when the value is 0 and
red when the value is 1. Most likely the value will end up being 0.0000009, and therefore the object
may never be green. Tolerance will prevent this.
ToolbarManager Property
Holds information describing the iFIX picture toolbars.
Syntax
object.ToolbarManager
Properties
The ToolbarManager property syntax has this part:
Part Description
415
iFIX Automation Reference
Remarks
ToolbarManager is a read-only property of type Object.
ToolbarPath Property
Returns the path used for storing toolbar files.
Syntax
object.ToolbarPath
Properties
The ToolbarPath property syntax has this part:
Part Description
Remarks
ToolbarPath is a read-only property of type String.
Top Property
Specifies the distance, in screen percentage, between the top edge of the physical screen and the
WorkSpace in which it is contained, or Specifies the position of the top edge of the Window object.
Syntax
object.Top [= Double]
Properties
The Top property syntax has these parts:
Part Description
416
IFIX Automation Reference
TopCenter Property
Returns the value of the top center point of the shape's bounding rectangle as a FixFloatPoint.
Syntax
object.TopCenter
Properties
The TopCenter property syntax has this part:
Part Description
Remarks
TopCenter is a read-only property of type Object.
TopLeft Property
Returns the top left point of the shape's bounding rectangle as a FixFloatPoint.
Syntax
object.TopLeft
Properties
The TopLeft property syntax has this part:
Part Description
Remarks
TopLeft is a read-only property of type Object.
417
iFIX Automation Reference
TopRight Property
Returns the top right point of the shape's bounding rectangle as a FixFloatPoint.
Syntax
object.TopRight
Properties
The TopRight property syntax has this part:
Part Description
Remarks
TopRight is a read-only property of type Object.
TopVisibleRow Property
Specifies the first visible row in the Alarm Summary object’s spreadsheet.
Syntax
object.TopVisibleRow
Properties
The TopVisibleRow property syntax has this part:
Part Description
Remarks
You can use the value of TopVisibleRow to compute the visible page size.
418
IFIX Automation Reference
TotalFilteredAlarms Property
Displays the total number of alarms that match the current filter. This is the same as the number
displayed in the left corner of the status bar.
Syntax
object.TotalFilteredAlarms
Properties
The TotalFilteredAlarms property syntax has this part:
Part Description
TranslateOnOpen Property
Specifies whether or not to switch the language of the selected picture when it is opened in run mode.
Syntax
object.TranslateOnOpen [= Boolean]
Properties
The TranslateOnOpen property syntax has these parts:
Part Description
Boolean Whether the picture's language is switched when opened in run mode.
Settings
The settings for Boolean are:
419
iFIX Automation Reference
Value Description
True The language is switched when the picture is opened in run mode.
False The language is not switched when the picture is opened in run mode.
Transparency Property
Specifies whether or not the Bitmap supports the transparent color.
Syntax
object.Transparency [= Boolean]
Properties
The Transparency property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
This property enables a Bitmap to have a transparent color (TransparentColor). When enabled,
bitmaps can effectively have a bleed-through area that can be used for animation and visualization.
420
IFIX Automation Reference
Transparent Property
Specifies whether or not the Chart is transparent.
Syntax
object.Transparent [= Boolean]
Properties
The Transparent property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
Setting the Transparent property to True allows the user to see what is displayed behind the Chart.
TransparentColor Property
Specifies the Bitmap object's transparent color. If transparency is enabled, this color is the see-through
color. Any pixels with this color display the screen’s background image.
Syntax
object.TransparentColor [= Long]
421
iFIX Automation Reference
Properties
The TransparentColor property syntax has these parts:
Part Description
TreatSinglePointsAsLines Property
In an Enhanced Chart, specifies whether to draw a straight horizontal line if only one point.
Syntax
object.TreatSinglePointsAsLines [= Boolean]
Properties
The TreatSinglePointsAsLines property syntax has these parts:
Part Description
Boolean Whether to draw a straight horizontal line if only one point exists in an Enhanced
Chart.
Settings
The settings for Boolean are:
Value Description
True Draws a straight horizontal line if only one point exists in an Enhanced Chart.
False Does not draw a straight horizontal line if only one point exists in an Enhanced
Chart.(Default)
422
IFIX Automation Reference
TriggerType Property
Specifies when the timer’s OnTimeOut event is retriggered.
Syntax
object.TriggerType [= Long]
Properties
The TriggerType property syntax has these parts:
Part Description
Settings
The settings for Long are:
Value Description
0 One-shot.
1 Continuous.
2 Daily.
3 Monthly.
Remarks
One-Shot The Timer triggers at the start time, then disables itself.
Continuous The Timer triggers at the start time then re-schedules the timer based on the current time
plus the configured interval.
Daily The Timer triggers at the start time for those days that have been enabled (see DaysOfWeek). If
the user has enabled end time then the timer is retriggered using the interval until the time exceeds the
configured end time.
Monthly The Timer triggers at the start time for every day the user has enabled (see DaysOfMonth).
423
iFIX Automation Reference
If the user has enabled end time then the timer is retriggered using the interval until the time exceeds
the configured end time.
TrimMaxLength Property
Specifies the maximum pixel length of the line to be trimmed. If the pixel length is greater than this
number, the line will not be trimmed.
Syntax
object.TrimMaxLength [=Integer]
Properties
The TrimMaxLength property syntax has these parts:
Part Description
Integer The maximum number of pixels allowed for the line to be trimmed.
TrimType Property
Specifies the trim option to apply to all line objects.
Syntax
object.TrimType [=enumTrimType]
Properties
The TrimType property syntax has these parts:
Part Description
424
IFIX Automation Reference
Settings
The settings for enumTrimType are:
ShorterThanSpecified 1 Trim only when the trimmed area is shorter than the
specified pixels.
Type Property
Returns the type of document that is displayed by the specified Document object.
Syntax
object.Type
Properties
The Type property syntax has this part:
Part Description
Remarks
Type is a read-only property of type Object.
This property identifies what kind of Page is opened for this document. The WorkSpace can open and
manage any OLE Active Document object. The Type property contains the OLE document type
ProgID field as found in the registry for this class. iFIX uses Fix.Picture and
FixSchedule.FixSchedulerServer.1.
U-V
UCL Property
Sets the upper control limits (UCL) for the RealTimeSPCDataSet object.
425
iFIX Automation Reference
Syntax
object.UCL [= Double]
Properties
The UCL property syntax has these parts:
Part Description
Double The upper control limits (UCL) for the RealTimeSPCDataSet Object.
UnacknowledgedAlarmColor Property
Specifies the color in which all unacknowledged alarms will be displayed in the Alarm Summary
object if the UseUnacknowledgedAlarmColor property is True.
Syntax
object.UnacknowledgedAlarmColor [= Long]
Properties
The UnacknowledgedAlarmColor property syntax has these parts:
Part Description
Underline Property
Specifies whether the text in the Text or Datalink object is underlined.
Syntax
object.Underline [= Boolean]
426
IFIX Automation Reference
Properties
The Underline property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
UniformScale Property
Specifies whether a shape scales horizontally and vertically by the same amount.
Syntax
object.UniformScale [= Boolean]
Properties
The UniformScale property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
427
iFIX Automation Reference
Value Description
True The shapes scale both horizontally and vertically by the same percentage.
False The shapes will horizontally and vertically scale independently. (Default)
Remarks
Vertical and horizontal scaling can either be performed independently of one another, or uniformly
using the same percentages. Uniform scaling is also used when the user holds the control key down
while scaling the object with the mouse.
Setting this flag to True before rubber band creation allows you to create a square from the Rectangle
object and a circle from the Oval object.
Units Property
Specifies the units descriptor field for a Pen.
Syntax
object.Units [= String]
Properties
The Units property syntax has these parts:
Part Description
UpdateOnPropChange Property
Specifies whether changes to properties in the Alarm Summary object take effect immediately. Set
this property to False if you are changing multiple properties and you want the changes to take effect
simultaneously.
Syntax
object.UpdateOnPropChange [= Boolean]
428
IFIX Automation Reference
Properties
The UpdateOnPropChange property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
UpdateRate Property
Allows you to specify how quickly a chart updates the data plot in run mode. This value is not used for
Histogram and SPC charts, as these charts update at the rate of their data sources.
Syntax
object.UpdateRate [= Long]
Properties
The UpdateRate property syntax has this part:
Part Description
Long Specifies, in Milliseconds, how quickly a chart updates the data plot in run mode.
429
iFIX Automation Reference
UseDelta Property
Specifies whether to use the absolute or relative value to set the output value.
Syntax
object.UseDelta [= Boolean]
Properties
The UseDelta property syntax has these parts:
Part Description
Boolean Whether to use the absolute or relative value to set the output value.
Settings
The settings for Boolean are:
Value Description
True The target current value is added to the calculated output value before the output value
is written to its target. (Default)
False The output value is written to its target with no current value added in.
Remarks
This property controls whether the output value of the animation is written as calculated (absolute) to
the property or if this value is used as a delta or offset from the property's initial setting (relative). This
property should be enabled if the animation is relative to the current location of the object. If the object
has a fixed screen location for animation (even if the object is moved in the Configuration
environment) then disable this property. For most position animations this property should be enabled.
If the user sets up a connection to the HorizontalPosition property and set UseDelta to True, the base
position of the object will be added to to the output value when the linear object evaluates. For
example, the input range for the object is 0 to 100, the output range is 0 to 200, and the initial position
of the object is 15. If the value of 50 comes in from the data system and UseDelta is True, the value of
115 is written to the HorizontalPosition of the object. If UseDelta is False, the value written would be
100.
430
IFIX Automation Reference
UseDomainSecurity Property
Sets or retrieves the Boolean value that indicates whether or not Windows domain security is to be
used in the security synchronization process.
Syntax
object.UseDomainSecurity [= Boolean]
Properties
The UseDomainSecurity property syntax has these parts:
Part Description
Boolean The default value is False, which indicates that Windows domain security should not
be used. True indicates that Windows domain security should be used.
Remarks
When the UseDomainSecurity property is equal to True, you must supply a valid domain name in the
Domain property.
This property corresponds to the /D command line parameter of the Security Synchronizer application.
UseLocalSecurity Property
Sets or retrieves the boolean value that indicates whether or not Windows local security is to be used in
the security synchronization process.
Syntax
object.UseLocalSecurity [= Boolean]
Properties
The UseLocalSecurity property syntax has these parts:
Part Description
431
iFIX Automation Reference
Part Description
Boolean The default value is False, which indicates that Windows local security should not be
used. True indicates that Windows local security should be used.
Remarks
This property corresponds to the /L command line parameter of the Security Synchronizer application.
UseMarker Property
Specifies whether to display markers on trend lines for the specified Pen.
Syntax
object.UseMarker [= Boolean]
Properties
The UseMarker property syntax has these parts:
Part Description
Settings
The settings for Boolean are:
Value Description
Remarks
Markers are useful for identifying lines on a black and white printer.
432
IFIX Automation Reference
UserDef1ColumnName Property
Specifies the text displayed in the header of the Alarm Summary object’s User Defined Field1
column.
Syntax
object.UserDef1ColumnName [= String]
Properties
The UserDef1ColumnName property syntax has these parts:
Part Description
String The text to display in the header of the User Defined Field1 column.
Remarks
The text you specify cannot match the text of any existing column header, including the text used in
the User Defined Field2 column.
UserDef2ColumnName Property
Specifies the text displayed in the header of the Alarm Summary object’s User Defined Field2
column.
Syntax
object.UserDef2ColumnName [= String]
Properties
The UserDef2ColumnName property syntax has these parts:
Part Description
String The text to display in the header of the User Defined Field2 column.
433
iFIX Automation Reference
Remarks
The text you specify cannot match the text of any existing column header, including the text used in
the User Defined Field1 column.
UserPreferences Property
Holds information describing the iFIX user preferences.
Syntax
object.UserPreferences
Properties
The UserPreferences property syntax has this part:
Part Description
Remarks
UserPreferences is a read-only property of type Object.
UseUnacknowledgedAlarmColor Property
Specifies whether the foreground color of unacknowledged alarms is set to the color identified by the
UnacknowledgedAlarmColor property.
Syntax
object.UseUnacknowledgedAlarmColor [= Boolean]
Properties
The UseUnacknowledgedAlarmColor property syntax has these parts:
Part Description
434
IFIX Automation Reference
Part Description
Boolean Whether the foreground color of unacknowledged alarms is set to the color in the
UnacknowledgedAlarmColor property.
Settings
The settings for Boolean are:
Value Description
True The foreground color of all unacknowledged alarms is set to the color set in the
UnacknowledgedAlarmColor property.
False The foreground color of all unacknowledged alarms is not set to the color set in the
UnacknowledgedAlarmColor property. (Default)
UWL Property
Sets the upper warning limits (UWL) for the RealTimeSPCDataSet object.
Syntax
object.UWL [= Double]
Properties
The UWL property syntax has these parts:
Part Description
Double The upper warning limits (UWL) for the RealTimeSPCDataSet Object.
Value Property
Returns the value of the OPC data source represented by this DataItem. The Value property becomes
populated either from Read method of the DataItem or Group (DataSystem) object.
435
iFIX Automation Reference
Syntax
object.Value
Properties
The Value property syntax has this part:
Part Description
Remarks
Value is a read-only property of type Object.
The Quality and Timestamp properties are associated with the Value.
ValueAxis Property
Returns the Pen object's ValueAxis.
Syntax
object.ValueAxis
Properties
The ValueAxis property syntax has this part:
Part Description
Remarks
ValueAxis is a read-only property of type Object.
ValueAxisNumLabels Property
Specifies the number of labels on the ValueAxis.
436
IFIX Automation Reference
Syntax
object.ValueAxisNumLabels [= Integer]
Properties
The ValueAxisNumLabels property syntax has these parts:
Part Description
ValueAxisNumTicks Property
Specifies the number of tick marks displayed on the Value Axis. Tick marks are evenly spaced.
Syntax
object.ValueAxisNumTicks [= Integer]
Properties
The ValueAxisNumTicks property syntax has these parts:
Part Description
ValueAxisTitle Property
Specifies the title of the Value Axis.
Syntax
object.ValueAxisTitle [= String]
437
iFIX Automation Reference
Properties
The ValueAxisTitle property syntax has these parts:
Part Description
VariableType Property
Specifies the Variable object’s data type for the data it stores. Data retrieved from a data source via
connections to its CurrentValue property will attempt to be coerced to the defined VariableType.
Syntax
object.VariableType [= enumFixVariableType]
Properties
The VariableType property syntax has these parts:
Part Description
Settings
The settings for enumFixVariableType are:
tShort 2 Short
tLong 3 Long
tFloat 4 Float
438
IFIX Automation Reference
tDouble 5 Double
tString 8 String
tBoolean 11 Boolean
Version Property
Returns the version number of the object.
Syntax
object.Version
Properties
The Version property syntax has this part:
Part Description
Remarks
Version is a read-only property of type Integer.
Version is initialized to 1 when a “page” (picture, schedule, toolbar, dynamo set, global page) is
created.
VerticalFillDirection Property
Specifies a value representing the direction of a shape's vertical fill.
Syntax
object.VerticalFillDirection [= enumVerticalDirection]
Properties
The VerticalFillDirection property syntax has these parts:
439
iFIX Automation Reference
Part Description
Settings
The settings for enumVerticalDirection are:
VerticalFillPercentage Property
Specifies the percentage of a shape's vertical fill.
Syntax
object.VerticalFillPercentage [= Double]
Properties
The VerticalFillPercentage property syntax has these parts:
Part Description
Remarks
Animating this property performs a dynamic vertical fill.
440
IFIX Automation Reference
VerticalGridColor Property
Specifies the color of the vertical grid lines displayed in the Chart.
Syntax
object.VerticalGridColor [= Long]
Properties
The VerticalGridColor property syntax has these parts:
Part Description
VerticalGridStyle Property
Specifies the style of the vertical grid lines displayed in the Chart.
Syntax
object.VerticalGridStyle [= enumEdgeStyle]
Properties
The VerticalGridStyle property syntax has these parts:
Part Description
Settings
The settings for enumEdgeStyle are:
441
iFIX Automation Reference
EdgeStyleSolid 0 Solid.
EdgeStyleDash 1 Dash.
EdgeStyleDot 2 Dot.
EdgeStyleDashDot 3 Dash-Dot.
EdgeStyleDashDotDot 4 Dash-Dot-Dot.
EdgeStyleNone 5 No border.
VerticalPosition Property
Specifies a shape's distance, in logical units, from the top of the Picture.
Syntax
object.VerticalPosition [= Double]
Properties
The VerticalPosition property syntax has these parts:
Part Description
Remarks
For shapes, the units are in logical units defined by the Picture document size. This logical coordinate
system allows pictures to be developed and saved independently of screen resolution. It also supports
panning and zooming. Mapping logical to device units is based on the window location.
442
IFIX Automation Reference
VerticalScaleDirection Property
Specifies if the direction in which the specified shape will expand or contract when the
VerticalScalePercentage property is changed.
Syntax
object.VerticalScaleDirection [= enumVerticalDirection]
Properties
The VerticalScaleDirection property syntax has these parts:
Part Description
Settings
The settings for enumVerticalDirection are:
Remarks
Scaling from center can be used to create the illusion that an object is moving towards or away from
the user.
VerticalScalePercentage Property
Specifies the scale percentage to apply to a shape's height.
443
iFIX Automation Reference
Syntax
object.VerticalScalePercentage [= Double]
Properties
The VerticalScalePercentage property syntax has these parts:
Part Description
Remarks
In the Configuration environment, VerticalScalePercentage will not be set back to 100 until the
object is de-selected. Therefore, while selected, the object will contain it's current percentage value
relative to the size of the object when it was last selected. Once de-selected, the object's
VerticalScalePercentage property will be reset back to 100.
In the Run-time environment, animating the VerticalScalePercentage property modifies the object’s
height based on the size of the object when it initially came off disk.
An object’s scale percentage can be negative. This causes the object to flip over its bottom axis. This
effect is useful for creating differential bar graphs by using an expression in the data source that takes
the value and subtracts a setpoint. The resulting difference from the setpoint can be used to by the
VerticalScalePercentage property. For example, you could animate a color table to change color
based on the sign of a result.
ViewingStyle Property
In an Enhanced Chart, specifies the viewing style: Color, Monochrome, or Monochrome and Symbols.
Syntax
object.ViewingStyle [= enumViewingStyle]
Properties
The ViewingStyle property syntax has these parts:
Part Description
444
IFIX Automation Reference
Part Description
enumViewingStyle An enumeration that represents the viewing style in the Enhanced Chart:
Valid entries:
0 – ViewColor
1 – ViewMono
2 – ViewMonoWithSymbols
ViewportHeight Property
Specifies the available vertical viewing area of the document.
Syntax
object.ViewportHeight [= Double]
Properties
The ViewportHeight property syntax has these parts:
Part Description
Remarks
ViewportHeight is a logical unit constrained to the logical document height.
NOTE: If you resize a picture, then modify the ViewportHeight property, the picture's logical
coordinate system will be remapped. If this happens, objects in your pictures may appear skewed when
resizing or autoscaling. To avoid this problem, we recommend that you do not modify the
ViewportHeight property once you have resized a picture.
ViewportLeft Property
Specifies the leftmost origin of the available viewing area of the document.
Syntax
object.ViewportLeft [= Double]
445
iFIX Automation Reference
Properties
The ViewportLeft property syntax has these parts:
Part Description
Remarks
ViewportLeft is a logical unit constrained to the logical document width.
ViewportTop Property
Specifies the topmost origin of the available viewing area of the document.
Syntax
object.ViewportTop [= Double]
Properties
The ViewportTop property syntax has these parts:
Part Description
Remarks
ViewportTop is a logical unit constrained to the logical document height.
ViewportWidth Property
Specifies the available horizontal viewing area of the document.
446
IFIX Automation Reference
Syntax
object.ViewportWidth [= Double]
Properties
The ViewportWidth property syntax has these parts:
Part Description
Remarks
ViewportWidth is a logical unit constrained to the logical document width.
NOTE: If you resize a picture, then modify the ViewportWidth property, the picture's logical
coordinate system will be remapped. If this happens, objects in your pictures may appear skewed when
resizing or autoscaling. To avoid this problem, we recommend that you do not modify the
ViewportWidth property once you have resized a picture.
Visible Property
Specifies whether the shape or the dataset appear on screen.
Syntax
object.Visible [= Boolean]
Properties
The Visible property syntax has these parts:
Part Description
447
iFIX Automation Reference
Settings
The settings for Boolean are:
Value Description
Remarks
For the RealTimeSPCDataSet Object this property is always set to TRUE, irrespective of the value to
which you set it.
VisibleUnacknowledgedAlarms Property
Displays the number of unacknowledged alarms in the currently displayed portion of the alarm
summary object. This number is not affected by the alarm summary being partially off screen; it is the
number of alarms in the scrolled region of the object.
Syntax
object.VisibleUnacknowledgedAlarms
Properties
The VisibleUnacknowledgedAlarms property syntax has this part:
Part Description
W-Z
WholeDigits Property
Specifies the number of digits to be displayed before the decimal point.
Syntax
object.WholeDigits [=Integer]
448
IFIX Automation Reference
Properties
The WholeDigits property syntax has these parts:
Part Description
Width Property
Specifies the width, in logical units, of the specified object.
Syntax
object.Width [= Double]
Properties
The Width property syntax has these parts:
Part Description
Remarks
For shapes, the units are in logical units defined by the Picture document size. This logical coordinate
system allows pictures to be developed and saved independently of screen resolution. It also supports
panning and zooming. Mapping logical to device units is based on the window location.
WindowHeightPercentage Property
Specifies the percentage of the vertical screen that the window extends to.
Syntax
object.WindowHeightPercentage [= Double]
449
iFIX Automation Reference
Properties
The WindowHeightPercentage property syntax has these parts:
Part Description
Remarks
WindowHeightPercentage is applied to the client area of the WorkSpace for window position.
WindowLeftPercentage Property
Specifies the percentage of the horizontal screen that the window originates.
Syntax
object.WindowLeftPercentage [= Double]
Properties
The WindowLeftPercentage property syntax has these parts:
Part Description
Remarks
WindowLeftPercentage is applied to the client area of the WorkSpace for window position.
450
IFIX Automation Reference
WindowName Property
Specifies the name of the Window object.
Syntax
object.WindowName [= String]
Properties
The WindowName property syntax has these parts:
Part Description
Remarks
This property stores the string representing the window name which is different than the document
name. Window names are useful for managing multiple screens. For example, if you have a main
window area and a navigation bar area, and the scripts behind the navigation bar replace whatever
picture is in the main window with a specific document, you can use the WindowName property to
store the string “main”. This allows all scripts to find the window named main and perform the
necessary replace Picture.
WindowState Property
Specifies the state of the application window of the WorkSpace.
Syntax
object.WindowState [= WinState]
Properties
The WindowState property syntax has these parts:
Part Description
451
iFIX Automation Reference
Part Description
Settings
The settings for WinState are:
WindowTopPercentage Property
Specifies the percentage of the vertical screen that the window originates.
Syntax
object.WindowTopPercentage [= Double]
Properties
The WindowTopPercentage property syntax has these parts:
Part Description
Remarks
WindowTopPercentage is applied to the client area of the WorkSpace for window position.
452
IFIX Automation Reference
WindowWidthPercentage Property
Specifies the percentage of the horizontal screen that the window extends to.
Syntax
object.WindowWidthPercentage [= Double]
Properties
The WindowWidthPercentage property syntax has these parts:
Part Description
Remarks
WindowWidthPercentage is applied to the client area of the WorkSpace for window position.
WizardName Property
Specifies the name of the script configured for the specified event.
Syntax
object.WizardName [= Variant]
Properties
The WizardName property syntax has these parts:
Part Description
453
iFIX Automation Reference
Remarks
WizardName gets set when a script authoring expert is run, however, the user can enter any name that
describes the function of the script for this object.
WorkSpaceStartupMode Property
Specifies the iFIX startup mode.
Syntax
object.WorkSpaceStartupMode [=bWorkSpaceStartupMode]
Properties
The WorkSpaceStartupMode property syntax has these parts:
Part Description
WritePictureFormatType Property
Determines the default format type for the WritePictureToImageFile method.
Syntax
object.WritePictureFormatType [=enumWritePictureFormatType]
Properties
The WritePictureFormatType property syntax has these parts:
Part Description
454
IFIX Automation Reference
Part Description
enumWritePictureFormatType An enumeration that represents the image file format for the
picture:
0 – .BMP file format
1 – .JPG file format
WritePictureOutLocation Property
Determines the default output location for the WritePictureToImageFile method.
Syntax
object.WritePictureOutLocation [=String]
Properties
The WritePictureOutLocation property syntax has this part:
Part Description
WritePictureScalePercentage Property
Determines the default scale percentage for the WritePictureToImageFile method. Currently, this
property is unavailable for use in iFIX. It is reserved for future use.
Syntax
object.WritePictureScalePercentage [=Long]
Properties
The WritePictureScalePercentage property syntax has this part:
455
iFIX Automation Reference
Part Description
X Property
The horizontal coordinate that corresponds to the given point.
Syntax
object.X [= Double]
Properties
The X property syntax has these parts:
Part Description
XAxisDatasetPosition Property
Allows you to retrieve or change the position of a X-Axis data set in an XY chart. When changed, it
will use the data set in the specified position as the data source for the X axis. This property only
applies to XY Enhanced Charts.
Syntax
object.XAxisDatasetPosition [= Long]
Properties
The XAxisDatasetPosition property syntax has these parts:
Part Description
456
IFIX Automation Reference
Part Description
Remarks
XAxisDatasetPosition is a read-only property.
XAxisLabel Property
In an Enhanced Chart, specifies the x-axis label.
Syntax
object.XAxisLabel [= String]
Properties
The XAxisLabel property syntax has these parts:
Part Description
String Text that appears as the x-axis label in the HistogramChart, LineChart, SPCBarChart, or
XYChart Object.
XAxisScaleControl Property
In the XY Chart, sets the grid scale used for the X-axis: Normal or Log. This property only applies to
XY Enhanced Charts.
Syntax
object.XAxisScaleControl [= enumScaleControl]
Properties
The XAxisScaleControl property syntax has these parts:
457
iFIX Automation Reference
Part Description
enumScaleControl An enumeration that represents the grid scale used for the X-axis in the
Enhanced Chart:
Valid entries:
1 – ScaleNormal
2 – ScaleLog
XAxisType Property
In an Enhanced Chart, specifies the type of x-axis the chart will display: time, point numbers, or point
values.
Syntax
object.XAxisType [= enumViewingStyle]
Properties
The XAxisType property syntax has these parts:
Part Description
enumViewingStyle An enumeration that describes the type of x-axis the chart will display in the
Enhanced Chart:
Valid entries:
0 – XAxisType_Time
1 – XAxisType_PointNumbers
2 – XAxisType_PointValues
Remarks
XAxisType is a read-only property.
Y Property
The vertical coordinate that corresponds to the given point.
458
IFIX Automation Reference
Syntax
object.Y [= Double]
Properties
The Y property syntax has these parts:
Part Description
YAxisLabel Property
In an Enhanced Chart, specifies the y-axis label.
Syntax
object.YAxisLabel [= String]
Properties
The YAxisLabel property syntax has these parts:
Part Description
String Text that appears as the y-axis label in the HistogramChart, LineChart, SPCBarChart, or
XYChart Object.
YAxisLongTicks Property
In an Enhanced Chart, use this property to extend/reset the length of minor grid tick marks.
Syntax
object.YAxisLongTicks [= Boolean]
459
iFIX Automation Reference
Properties
The YAxisLongTicks property syntax has these parts:
Part Description
Boolean Whether the length of minor grid tick marks are extended or reset.
Settings
The settings for Boolean are:
Value Description
True The length of minor grid tick marks are extended or reset.
False The length of minor grid tick marks are not extended or reset. (Default)
YAxisScaleControl Property
In an Enhanced Chart, sets the grid scale used for the y-axis: Normal or Log.
Syntax
object.YAxisScaleControl [= enumScaleControl]
Properties
The YAxisScaleControl property syntax has these parts:
Part Description
enumScaleControl An enumeration that represents the grid scale used for the y-axis in the
Enhanced Chart:
Valid entries:
1 – ScaleNormal
2 – ScaleLog
460
IFIX Automation Reference
Zoom Property
Specifies the current zoom percentage of the specified object.
Syntax
object.Zoom [= Double]
Properties
The Zoom property syntax has these parts:
Part Description
ZoomDirection Property
Specifies the direction to zoom in on.
Syntax
object.ZoomDirection [= enumZoomDirection]
Properties
The ZoomDirection property syntax has these parts:
Part Description
Settings
The settings for enumZoomDirection are:
461
iFIX Automation Reference
462
Methods
Method Summary
The following list contains the iFIX object methods that are available to the Automation Interface. For
information on non-iFIX methods, refer to the appropriate help system.
A
AboutBox
AckAlarm
AckAlarmPage
AckAlarmPageEx
AckAllAlarms
ActivateWorkspaceUI
Add
AddDataSet
AddEventHandler
AddImage
AddKeyMacro
AddLegendItem
AddLevel
AddObject
AddPen
AddPictureToStartupList
AddPoint
AddProcedure
463
iFIX Automation Reference
Align
ApplyProperty
AutoScaleDisplayLimits
B
BringToFront
BuildObject
C
CanConstruct
CheckAccountExpiration
CheckforDuplicateKeyMacros
CheckSecurityEnabled
CheckSyntax
CheckUserApplicationAccess
CheckUserAreaAccess
Clear
ClearUndo
Close
Commit
Connect
ConnectDataSet
ConnectedPropertyCount
Construct
Convert_A_Group_To_A_Dynamo_By_Name
Convert_A_Group_To_A_Dynamo_By_Ref
ConvertPipe
464
IFIX Automation Reference
ConvertSecurityAreaNameToNumber
ConvertSecurityAreaNumberToName
Copy
CopyAsBitmap
CopytoClipboard
Coupled_Activate_Workspace_UI
Coupled_DeActivate_Workspace_UI
CreateDynamoByGrouping
CreateFromDialog
CreateFromProgID
CreateWithMouse
Cut
D
DeActivateWorkspaceUI
DefaultView
DelAlarm
DeleteAllAlarms
DeleteAllDataSets
DeleteDataSet
DeleteImage
DeletePen
DeletePoint
DeleteSelectedObjects
DemandFire
DeselectObject
DestroyObject
465
iFIX Automation Reference
DisableNonSelectionEvents
Disconnect
DisplaysControlPoints
DoesPropertyHaveTargets
DoExtendLines
DoLinesToPolyline
DoMenuCommand
DoTrimLines
DumpProperties
Duplicate
E
EditPicture
Enable
Enumerate_All_Dynamos
Enumerate_All_Groups
Enumerate_Top_Level_Dynamos
Enumerate_Top_Level_Groups
ExchangePenPositions
Execute
ExecuteKeyMacro
ExportData
ExportImage
ExportLanguageFile
F
FindAndReplaceDialog
466
IFIX Automation Reference
FindInString
FindObject
FindReplaceInObject
FindReplaceInString
FitDocumentToWindow
FitWindowToDocument
FixCheckApplicationAccess
FixCheckApplicationAccessQuiet
FixCheckAreaAccess
FixCheckAreaAccessQuiet
FixCheckSecurityEnabled
FixGetManualAlmDeleteEnabled
FixGetUserInfo
FixLogin
FixLogout
FontProperties
FullView
G-H
Get_Last_Prompt_Value
Get_Last_Result_String
GetBoundRect
GetChartEndTime
GetChartStartTime
GetColHeadings
GetColumnInfo
GetConnectionInformation
467
iFIX Automation Reference
GetConnectionParameters
GetContinuousUser
GetCurrentDataSet
GetCurrentValue
GetCurrentValueWithQuality
GetDataSetByPosition
GetDeviceRect
GetDuration
GetErrorString
GetEventHandlerIndex
GetFullname
GetGlobalDuration
GetGlobalHistoricalUpdateRate
GetIndirectionInfo
GetInterval
GetKeyMacro
GetKeyMacroIndex
GetLevel
GetNumberOfDataSets
GetObjectInfo
GetPenDataArray
GetPenDataArrayEx
GetPointAt
GetPriorityColor
GetProcedureIndex
GetProperty
GetPropertyAttributes
468
IFIX Automation Reference
GetPropertyTargets
GetRibbonView
GetSelectedAlmExt
GetSelectedNodeTag
GetSelectedRow
GetSelectedUserDefFields
GetSignature
GetSignatureAndWriteValue
GetStatusColor
GetStatusFont
GetTimeBeforeNow
GetTimeCursorInfo
GetUserID
GetWindowLocation
GlobalScrollBackFast
GlobalScrollBackSlow
GlobalScrollForwardFast
GlobalScrollForwardSlow
GlobalTimerApply
Group
HiLoDisplay
I-K
ImportToolbar
Initialize
InitializeList
InsertPoint
469
iFIX Automation Reference
InteractiveExport
IsColorSelectionVisible
IsConnected
IsEmpty
IsKeyMacroDefined
IsNodeSignEnabled
IsSignatureRequired
IsSignatureRequiredForList
Item
L
ListEvents
ListMethods
ListProperties
ListWindowsGroupNames
Load_TS_List
LoadImage
LoadTagGroupFile
LogicalToPercentage
LogicalToUserFormPoint
M-N
MakeLinesHorizontal
MakeLinesVertical
MakeSameSize
Modify
ModifyColumnLength
470
IFIX Automation Reference
Move
O
Open
Open_QT_Pic
Open_QT_Pic_Ex
Open_TCP_Pic
Open_TCP_Pic_Ex
Open_TS_Pic
Open_TS_Pic_Ex
Open_TS_Pic_Type
Open_TS_Pic_Type_Ex
P
ParseConnectionSource
Paste
PasteFromClipboard
PasteSpecial
Pause
PauseAlarmRead
PercentageToLogical
PercentageToPixel
PixelToPercentage
PrintChart
PrintOut
PromptToChangePassword
471
iFIX Automation Reference
Q
Quit
R
Read
Refresh
RefreshChartData
Remove
RemoveAll
RemoveAllLevels
RemoveItem
RemoveKeyMacro
RemoveLegendItem
RemoveLevel
RemoveObject
RemovePictureFromStartupList
ReplaceDocument
ReplaceInString
Replace_QT_Pic
Replace_TCP_Pic
Replace_TS_Pic
Replace_TS_Pic_Type
ResetChartData
ResetObjectStats
ResetStats
ResetZoom
ResolveTagGroupFile
472
IFIX Automation Reference
Resume
ResumeAlarmRead
RetrieveDefinition
RetrieveTagGroupVariables
Rotate
RunObject
S
Save
Save_TS_List
SaveAsSVG
SaveToHistoryList
ScrollBack
ScrollForward
ScrollTimeBack
ScrollTimeForward
Select
SelectAlarmRow
SelectAll
SelectObject
SendOperatorMessage
SendSignedOperatorMessage
SendToBack
SetContinuousUser
SetCurrentValue
SetDispatch
SetDispid
473
iFIX Automation Reference
SetDuration
SetFocusToComboBox
SetGlobalDuration
SetGlobalEndTimeToCurrent
SetGlobalHistoricalUpdateRate
SetGlobalMovingEndTimeToCurrent
SetIndirectionInfo
SetInterval
SetKeyCombination
SetLegendMask
SetNumericFormat
SetPenDataArray
SetPointAt
SetPriorityColor
SetProperty
SetScriptWindow
SetSource
SetStatusColor
SetStatusFont
SetStringFormat
SetTabSelection
SetTimeBeforeNow
SetTimeCursorTime
SetWindowLocation
ShowAnimations
ShowBrowseDialog
ShowColorBox
474
IFIX Automation Reference
ShowColorSelection
ShowCustomPages
ShowPipePreviewDialog
ShowTaskWizard
ShowVBAProcedure
ShowVisualBasicEditor
SilenceAlarmHorn
SnapObjectsToGrid
SpaceEvenly
StartEvent
StartTimer
StickToCursor
StopEvent
StopTimer
Stretch
SwitchLanguage
SwitchMode
SynchronizeSecurity
T
TagGroupSubstitution
TagGroupValue
U
UIActivate
UIDeActivate
Undo
475
iFIX Automation Reference
UndoTransaction
UndoZoom Method
UnGroup
UnloadTagGroupFile
Update_A_Dynamo_By_Name
Update_A_Dynamo_By_Name2
Update_A_Dynamo_By_Ref
Update_A_Dynamo_By_Ref2
UpdateBackgroundObject
UpdateConnectionParameters
UpdateDefinition
UserFormPointToLogical
V-W
ValidateSignature
ValidateSignatureAndWriteValue
ValidateSource
ValueTimeFromXY
Write
WritePictureToImageFile
X-Y
XYFromValueTime
XYHitTest
Z
Zoom
476
IFIX Automation Reference
A-B
AboutBox Method
Opens the Help About Box for the Alarm Summary, Color Button, or ExpressionEditor object.
Syntax
object.AboutBox
Properties
The AboutBox method syntax has this part:
Part Description
AckAlarm Method
Acknowledges the alarm for the specified node and tag.
Syntax
object.AckAlarm(sNode, sTag)
Properties
The AckAlarm method syntax has these parts:
Part Description
477
iFIX Automation Reference
Part Description
Return Value
Integer. The status of the alarm acknowledgement. Return value of 0 signifies success, non-zero on
failure.
AckAlarmPage Method
Acknowledges the currently displayed page of alarms.
Syntax
object.AckAlarmPage()
Properties
The AckAlarmPage method syntax has this part:
Part Description
Return Value
Integer. The status of the alarm acknowledgement. Return value of 0 signifies success, non-zero on
failure when at least one alarm was not acknowledged.
AckAlarmPageEx Method
Acknowledges the currently displayed page of alarms and displays the Electronic Signature dialog box
if any of the tags on that page require Electronic Signatures.
Syntax
object.AckAlarmPageEx()
Properties
The AckAlarmPageEx method syntax has this part:
478
IFIX Automation Reference
Part Description
Return Value
Integer. The status of the alarm acknowledgement. Return value of 0 signifies success, non-zero on
failure when at least one alarm was not acknowledged.
AckAllAlarms Method
Acknowledges all alarms that match the current filter.
Syntax
object.AckAllAlarms()
Properties
The AckAllAlarms method syntax has this part:
Part Description
NOTE: If you are using the AckAllAlarms method on an Alarm Summary OCX, this method checks to
ensure that the Allow Acknowledge All Alarms property is enabled. If the property is disabled, no
alarms associated with that Alarm Summary OCX are acknowledged.
Return Value
Integer. The status of the alarm acknowledgement. Return value of 0 signifies success, non-zero on
failure when at least one alarm was not acknowledged.
ActivateWorkspaceUI Method
Activates the WorkSpace UI after a DeActivateWorkSpaceUI method call in the Configuration
environment.
Syntax
object.ActivateWorkspaceUI
479
iFIX Automation Reference
Properties
The ActivateWorkspaceUI method syntax has this part:
Part Description
Remarks
This method must be called when the DeActivateWorkSpaceUI method has been called in VBA
scripts that do not involve user forms.
Add Method
Adds a new:
Properties
The Add method syntax has these parts:
Part Description
Filename String. (Optional) The ProgID for the document type. The default is
“FIX.Picture”.
480
IFIX Automation Reference
Part Description
Valid entries:
1 – Load only.
2 – Load and activate the document in a hidden window.
3 – Load and display the document normally. (default)
Return Value
Object. The dispatch pointer to the added document.
Remarks
Add adds new document to the WorkSpace’s application object’s documents collection. It is
equivalent to selecting New from the File menu.
Properties
The Add method syntax has these parts:
481
iFIX Automation Reference
Part Description
Properties
The Add method syntax has these parts:
Part Description
lLineNumber Long. The line number to place the code within the event handler.
Properties
The Add method syntax has these parts:
Part Description
Return Value
Object. The dispatch pointer of the item added to the collection.
482
IFIX Automation Reference
AddDataSet Method
Allows you to add a data source to a Line Chart, Histogram Chart, or SPC Bar Chart.
Syntax
object.AddDataSet bstrSourceName [bUseAnyway]
Properties
The AddDataSet method syntax has these parts:
Part Description
bstrSourceName String. The data source tag that you want to add to the chart as the dataset.
bUseAnyway Variant. (Optional) Allows you to set an undefined object as the data source.
The value should be True or False. True indicates a UseAnyway condition. If
the data source does not exist and bUseAnyway is set to False, the AddDataSet
method generates an error.
The default for the bUseAnyway parameter is False.
Return Value
Object – the dispatch pointer of the Dataset added to the chart.
AddEventHandler Method
Adds a new event handler to the Procedures collection.
Syntax
object.AddEventHandler bstrEventName, bstrLinesOfCode, pIndex
Properties
The AddEventHandler method syntax has these parts:
483
iFIX Automation Reference
Part Description
bstrLinesOfCode String. The code to be written to the event in the form of strings.
pIndex Long. Numerical index of the procedures position in the existing collection.
Note: This index is transient, it will change as procedures are added or deleted.
AddImage Method
Loads the specified image and adds it to the end of the list. This image is always the primary image.
Syntax
object.AddImage bstrFileName
Properties
The AddImage method syntax has these parts:
Part Description
AddKeyMacro Method
Adds a new KeyMacroObject.
Syntax
AddKeyMacro (ComboKey, KeyCode)
Properties
The AddKeyMacro method syntax has these parts:
484
IFIX Automation Reference
Part Description
KeyCode Integer. The ASCII value of the main key of the key combination.
AddLegendItem Method
Adds an item to the Legend of the Chart at the specified location displaying the specified number of
characters.
Syntax
object.AddLegendItem szItem, iColumn, iNumChars
Properties
The AddLegendItem method syntax has these parts:
Part Description
485
iFIX Automation Reference
Part Description
Valid entries:
Source - Data Source name
Description - Data Source’s descriptor property
Value - Current Value at the time cursor
Units - EGU units name
Mode - Historical or real time
High Limit - High display limit
Low Limit - Low display limit
Interval - Data point interval
High Over - Highest value over the duration
Low Over - Lowest value over the duration
Avg Over - Average value over the duration
USER1 - User defined field
USER2 - User defined field
USER3 - User defined field
USER4 - User defined field
USER5 - User defined field
USER6 - User defined field
USER7 - User defined field
USER8 - User defined field
USER9 - User defined field
USER10 - User defined field
iColumn Integer. 1-based column index representing where to position the legend item.
Column 1 is furthest to the left. Maximum is 22.
iNumChars Integer. Defines the size of the display width of the column specified by iColumn.
The width is calculated by taking the average size character of the font selected
multiplied by the number of characters specified by iNumChars. Maximum is 80.
AddLevel Method
Adds a new level to the table (Lookup object).
Syntax
object.AddLevel pInput1, pOutput1, [pInput2], [pOutput2]
Properties
The AddLevel method syntax has these parts:
486
IFIX Automation Reference
Part Description
pInput1 Variant. The first input parameter. Used as the lookup value when performing exact
match lookups, and the minimum value for range comparison lookups.
pInput2 Variant. (Optional) The second input parameter. Used as maximum value for a range
lookup comparison.
pOutput2 Variant. (Optional) The secondary output value for this level. This value is used by
the lookup object as the “blink to” value at this level.
AddObject Method
Adds an object to a Group.
Syntax
object.AddObject dispObject
Properties
The AddObject method syntax has these parts:
Part Description
pdispObject Object. The object that you want to add to the group. When an object is added to a
group it is put at the top of the group's stacking order (drawing order).
Remarks
We recommend that you build groups either by using the BuildObject method on the group object, or
using the Group method on the Picture object to group the selected objects.
487
iFIX Automation Reference
AddPen Method
Adds a new Pen to the Chart object's Pens collection.
Syntax
object.AddPen(szSource, [vaUseAnyway])
Properties
The AddPen method syntax has these parts:
Part Description
szSource String. The data source tag or expression to use to fill in the data for the Pen. Any
valid historical or real-time data source expression is supported. The only
restriction is that Historical tags must not be used in an expression.
aUseAnyway Variant. (Optional) It is used to determine whether to use the data source if the
source does not exist. Values should be True or False. If source does not exist and
vaUseAnyway is False, AddPen will generate an error. The default for the
parameter is False.
Return Value
Object. The dispatch pointer of the Pen added to the Chart.
AddPictureToStartupList Method
Adds pictures to the Proficy iFIX WorkSpace's startup lists. The startup lists determine the pictures
that will be opened automatically when the WorkSpace starts.
Syntax
object.AddPictureToStartupList bstrPictureName, bMode
Properties
The AddPictureToStartupList method syntax has these parts:
488
IFIX Automation Reference
Part Description
bstrPictureName String. Name of the picture to be added to the startup list. You must include
the file path and extension
bMode Boolean. Specifies whether to open the picture when the WorkSpace starts in
the Configuration environment or in the Runtime environment.
Valid entries:
0 – AppConfigurePicturePreferences
1 – AppRunPicturePreferences
pIndex Long. Numerical index of the procedures position in the existing collection.
Note: This index is transient, it will change as procedures are added or deleted.
AddPoint Method
Adds a new data point to the object.
Syntax
object.AddPoint pdispPoint
Properties
The AddPoint method syntax has these parts:
Part Description
pdispPoint Object. An OLE object specifying a point object to add to the list of existing data
points. The point object has an (x,y) pair that contains the logical coordinate of the
data point (see FixFloatPoint).
Remarks
A point is an OLE object specifying a point object to add to the list of existing data points. The point
object has an (x,y) pair that contains the logical coordinates of the data point.
489
iFIX Automation Reference
AddProcedure Method
Adds a new Procedure to the Procedures collection.
Syntax
object.AddProcedure bstrProcName, bstrParamList, bstrLinesOfCode, pIndex
Properties
The AddProcedure method syntax has these parts:
Part Description
pIndex Long. The index within the Procedures collection that the new Procedure
occupies.
Align Method
Aligns the selected objects.
Syntax
object.Align type
Properties
The Align method syntax has these parts:
Part Description
490
IFIX Automation Reference
Part Description
Remarks
Align is a Configuration environment method only.
ApplyProperty Method
Reserved for internal purposes.
AutoScaleDisplayLimits Method
Changes the display limits configured for the Pen based on the range of the data currently in the pen’s
data array. If called on the Chart object, this method changes the display limits for all pens.
Syntax
object.AutoScaleDisplayLimits
Properties
The AutoScaleDisplayLimits method syntax has this part:
Part Description
Remarks
This method is useful for automatically zooming in or out on a data set to get a full EGU span of the
currently displayed data, particularly when the data source's value range varies widely and manual
display limit adjustments are not practical for the operator.
491
iFIX Automation Reference
BringToFront Method
Moves the selected object to the front of the display stacking order, making it the top object in the
stack. It is equivalent to selecting Bring To Front from the Format menu.
Syntax
object.BringToFront
Properties
The BringToFront method syntax has this part:
Part Description
Remarks
BringToFront is a Configuration environment method only.
If you select several objects and call BringToFront, the selected objects are placed at the top of the
stack, however, they keep their positions relative to one other. The BringToFront method is useful for
creating complex shapes and using stacking or masking techniques.
BuildObject Method
Adds a new iFIX object to the system. All iFIX objects, pictures, schedules, groups, and shapes can
contain other objects. Typically, when creating objects, you would call BuildObject on the currently
active page object (Application.ActiveDocument.Page). BuildObject adds shapes to a graphic, events
to a schedule and animations to a shape.
Syntax
object.BuildObject(bstrClassName)
Properties
The BuildObject method syntax has these parts:
Part Description
492
IFIX Automation Reference
Part Description
Valid entries:
Arc, Bitmap, Chart, Chord, Datalink, Fixevent, Format, Group, Line, Linear,
Lookup, OleObject, Oval, Pen, Pie, Polyline, Polygon, Rect, RoundRect, Text,
Fixtimer, Variable
Return Value
Object. The dispatch pointer of the object that was created.
Remarks
BuildObject inserts the desired object into the ContainedObjects collection of the object for which
BuildObject was called.
NOTE: The objects that are created in Run-mode (via scripting) are discarded (not persisted) when
the picture is switched back to configure mode.
CanConstruct Method
Checks a data source reference for valid syntax.
Syntax
object.CanConstruct bstrObjectName, bCanConstruct
Properties
The CanConstruct method syntax has these parts:
Part Description
493
iFIX Automation Reference
Part Description
bstrObjectName String. The fully qualified data source reference. For example,
Fix32.SCADA1.AI1
bCanConstruct Boolean. Returns True if data source reference is valid, False otherwise.
Remarks
This method will always return False for datasystems external to the Fix32 datasystem.
Currently, you need the FIX 6.15 Integration toolkit to create blocks directly without the Database
Manager dialog boxes.
CheckAccountExpiration Method
Checks a Windows user account and returns account password expiration information.
Syntax
object.CheckAccountExpiration(bstrUsername, pbExpired, pbCanChangePassword, pnDaysLeft)
Properties
The CheckAccountExpiration method syntax has these parts:
Part Description
494
IFIX Automation Reference
Part Description
Long. Returns the number of days left until the account password
pnDaysLeft expires.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
CheckforDuplicateKeyMacros Method
Checks the passed collection of key macros for duplicates.
Syntax
object.CheckforDuplicateKeyMacros (KeyMacrosToBeChecked, DuplicateKeyMacros)
Properties
The CheckforDuplicateKeyMacros method syntax has these parts:
Part Description
CheckSecurityEnabled Method
Checks if iFIX security is enabled on the local node.
Syntax
object.CheckSecurityEnabled(pbSecurityEnabled)
495
iFIX Automation Reference
Properties
The CheckSecurityEnabled method syntax has these parts:
Part Description
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
CheckSyntax Method
Tests the syntax of an expression in the Expression Builder.
Syntax
object.CheckSyntax szExpression
Properties
The CheckSyntax method syntax has these parts:
Part Description
Return Value
Boolean. Returns True if the syntax check was successful.
CheckUserApplicationAccess Method
Checks the user’s access to an application feature.
496
IFIX Automation Reference
Syntax
object.CheckUserApplicationAccess(bstrUserID, nApplicationID, pbAccess, [bQuiet])
Properties
The CheckUserApplicationAccess method syntax has these parts:
Part Description
Long. Numeric identifier associated with the application feature. For a list of
nApplicationID application IDs, refer to the FIXcheckApplicationAccess method.
Boolean. Returns True if the user has access to the specified application
pbAccess feature, or False if the user does not have access.
CheckUserAreaAccess Method
Checks a user’s access to a security area.
Syntax
object.CheckUserAreaAcess(bstrUserID, bstrSecurityArea, pbAccess, [bQuiet])
Properties
The CheckUserAreaAccess method syntax has these parts:
Part Description
497
iFIX Automation Reference
Part Description
Boolean. Returns True if the user has access to the specified security area,
pbAccess or False if the user does not have access.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
Clear Method
Removes all items out of the collection.
Syntax
object.Clear
Properties
The Clear method syntax has this part:
Part Description
ClearUndo Method
Removes all currently registered undo transactions from the undo stack.
498
IFIX Automation Reference
Syntax
object.ClearUndo
Properties
The ClearUndo method syntax has this part:
Part Description
Remarks
ClearUndo is a Configuration environment method only.
Close Method
Closes the Document or Window. When called off the Documents collection, this method closes all
open documents in the Proficy iFIX WorkSpace. When used with the Document object, this method
closes the Document object. This is equivalent to selecting Close from the File menu.
Properties
The Close method syntax has these parts:
Part Description
499
iFIX Automation Reference
Part Description
Remarks
This method removes the document(s) from the Documents Collection.
Note that if the Close method is called for newly created pictures with a SaveChanges option of 1 or 3,
the user is prompted to save changes regardless. This is because pictures cannot be saved as their
default name (e.g. “Untitled#”).
Part Description
Remarks
If possible, always make this call the last line in your script. Note that when the Close method is used,
and the document being closed is the document that contains the script, the call must be the last line in
the script. Otherwise, you may experience unexpected behavior when executing the script.
If the Close method is not called from picture being closed and is not the last line in your script, be
500
IFIX Automation Reference
certain that the operation is complete before the rest of the script continues to execute. Immediately
after making the call, you must relinquish the CPU by calling DoEvents. For example, the following
sample script closes all open non-hidden documents, saving changes without prompting the user, and
then open the picture TestPicture, displaying it normally.
Application.Documents.Close 1, 2
DoEvents
Commit Method
Commits changes made from the object’s initialization into the object. This method is usually called
after the BuildObject method.
Syntax
object.Commit
Properties
The Commit method syntax has this part:
Part Description
Connect Method
Connects two object’s properties together including connecting to an external data source. Once the
connection is successfully made, changes in the source’s data are automatically transferred to the
connected property. Use Connect to make animation connections to data source tags. Connect
supports expressions as the definition of a source.
Syntax
object.Connect bstrPropertyName, bstrSource, iStatus, [fTolerance], [iFlags], [fDeadband],
[fUpdateRate]
Properties
The Connect method syntax has the following parts:
501
iFIX Automation Reference
Part Description
Variant. (Optional) Used to determine how much the source needs to change
fdeadband before the exception is transferred to the connected property.
Variant. (Optional) The requested maximum update rate for this connection
fUpdateRate in seconds. This property is used as a hint to the data system for a poll rate to
the OPC server.
ConnectDataSet Method
This method is currently unavailable for use in iFIX. It is reserved for future use.
Syntax
object.ConnectDataSet ()
Properties
The ConnectDataSet method syntax has this part:
Part Description
502
IFIX Automation Reference
ConnectedPropertyCount Method
Returns the number of properties that have connections configured.
Syntax
object.ConnectedPropertyCount iConnectedPropertyCount
Properties
The ConnectedPropertyCount method syntax has the following parts:
Part Description
Construct Method
Creates an external data source object (tag reference). It displays the QuickAdd user interface that
prompts the user for the information needed to create the tag.
Syntax
object.Construct bstrObjectName, iStatus
Properties
The Construct method syntax has the following parts:
Part Description
bstrObjectName String. The fully qualified data source reference. For example,
Fix32.SCADA1.AI1
503
iFIX Automation Reference
Part Description
Convert_A_Group_To_A_Dynamo_By_Name Method
Converts an old Dynamo Instance (Group object) to a new Dynamo object. If you want a converted
Dynamo object to become a Master Dynamo, you must also select the “Make Master” option.
NOTE: If you want to be able to use the Dynamo Updater with a converted Dynamo object, you need
to call the Update_A_Dynamo_By_Name method after the
Convert_A_Group_To_A_Dynamo_By_Name method. Through this process, the Dynamo object
obtains the Dynamo_ID and Revision matched with the provided Master Dynamo.
Syntax
object.Convert_A_Group_To_A_Dynamo_By_Name (bstrGroupName, nOptions,
bstrChoiceDialogTitle, pnResultCode)
Properties
The Convert_A_Group_To_A_Dynamo_By_Name method syntax has these parts:
Part Description
504
IFIX Automation Reference
Part Description
bstrChoiceDialogTitle String. Currently not used, but available in case a future version of iFIX
needs to display a choice within a dialog box during the conversion.
505
iFIX Automation Reference
Part Description
Convert_A_Group_To_A_Dynamo_By_Ref Method
Converts an old Dynamo Instance (Group object) to a new Dynamo object. If you want a converted
Dynamo object to become a Master Dynamo, you must also select the “Make Master” option.
506
IFIX Automation Reference
NOTE: If you want to be able to use the Dynamo Updater with a converted Dynamo object, you need
to call the Update_A_Dynamo_By_Name method after the
Convert_A_Group_To_A_Dynamo_By_Name method. Through this process, the Dynamo object
obtains the Dynamo_ID and Revision matched with the provided Master Dynamo.
Syntax
object.Convert_A_Group_To_A_Dynamo_By_Ref (pIGroupDynamo, nOptions,
bstrChoiceDialogTitle, pnResultCode)
Properties
The Convert_A_Group_To_A_Dynamo_By_Ref method syntax has these parts:
Part Description
507
iFIX Automation Reference
Part Description
bstrChoiceDialogTitle String. Currently not used, but available in case a future version of iFIX
needs to display a choice within a dialog box during the conversion.
508
IFIX Automation Reference
ConvertPipe Method
Converts the selected lines and/or polylines to pipes.
Syntax
object.ConvertPipe
Properties
The ConvertPipe method syntax has this part:
Part Description
Remarks
ConvertPipe is a Configuration environment method only.
ConvertSecurityAreaNameToNumber Method
Converts the specified security area name to its corresponding area number.
Syntax
object.ConvertSecurityAreaNameToNumber(AreaName)
Properties
The ConvertSecurityAreaNameToNumber method syntax has the following parts:
Part Description
Return Value
Integer. The security area number.
509
iFIX Automation Reference
ConvertSecurityAreaNumberToName Method
Converts the specified security area number to its corresponding area name.
Syntax
object.ConvertSecurityAreaNumberToName(iAreaID)
Properties
The ConvertSecurityAreaNumberToName method syntax has the following parts:
Part Description
Return Value
String. The security area name.
Copy Method
Copies the selected objects to the Clipboard in iFIX internal format.
Syntax
object.Copy
Properties
The Copy method syntax has the following part:
Part Description
Remarks
Copy is a Configuration environment method only.
510
IFIX Automation Reference
CopyAsBitmap Method
Copies the selected objects to the Clipboard in a bitmap format.
Syntax
object.CopyAsBitmap
Properties
The CopyAsBitmap method syntax has this part:
Part Description
Remarks
CopyAsBitmap is a Configuration environment method only.
CopytoClipboard Method
Copies the collection of key macros to the Clipboard.
Syntax
object.CopytoClipboard ()
Properties
The CopytoClipboard method syntax has this part:
Part Description
Coupled_Activate_Workspace_UI Method
Activates the WorkSpace UI after a Coupled_DeActivate_Workspace_UI method call in the
Configuration environment.
511
iFIX Automation Reference
Syntax
object.Coupled_Activate_Workspace_UI(bForce)
Properties
The Coupled_Activate_Workspace_UI method syntax has these parts:
Part Description
bForce Boolean. If True, objects can be selected and moved in the currently active document.
The right mouse menu and double click events are disabled. In addition, the active
document cannot be moved, closed, maximized, or minimized. If False, objects cannot
be selected or moved in the currently active document.
Remarks
This method must be called when the Coupled_DeActivate_Workspace_UI method has been called
in VBA scripts that do not involve user forms.
Coupled_DeActivate_Workspace_UI Method
Determines whether or not a form is modeless in the Configuration environment.
Syntax
object.Coupled_DeActivate_Workspace_UI bLeaveActiveDocActive
Properties
The Coupled_DeActivate_Workspace_UI method syntax has these parts:
Part Description
bLeaveActiveDocActive Boolean. If True, objects can be selected and moved in the currently
active document. The right mouse menu and double click events are
disabled. In addition, the active document cannot be moved, closed,
maximized, or minimized. If False, objects cannot be selected or
moved in the currently active document.
512
IFIX Automation Reference
Remarks
User forms are modal by default. To make a form modeless, make the following call on form
initialization (in the form’s Activate event):
Application.Coupled_Activate_Workspace_UI True
This call must be made from a form that is activated by a toolbar script.
CreateDynamoByGrouping Method
Creates a Dynamo object using the currently selected objects.
Syntax
object.CreateDynamoByGrouping
Properties
The CreateDynamoByGrouping method syntax has this part:
Part Description
CreateFromDialog Method
Opens the Insert Object dialog box to allow the user to select which ActiveX control to create.
Syntax
object.CreateFromDialog
Properties
The CreateFromDialog method syntax has this part:
Part Description
513
iFIX Automation Reference
Remarks
Although CreateFromDialog applies to many objects in IFIX, it is only intended to be used for the
ControlContainer object.
CreateFromProgID Method
Creates an ActiveX control using its specified ProgID.
Syntax
object.CreateFromProgID bstrProgId
Properties
The CreateFromProgID method syntax has these parts:
Part Description
Remarks
CreateFromProgID allows the user to create ActiveX controls without requiring any user interface.
The ProgIDs can be found in the Insert Object dialog box that can be opened in the WorkSpace by
choosing OLE Object off of the Insert menu or by calling the CreateFromDialog method.
Although this method applies to many objects in iFIX, it is only intended to be used for the
ControlContainer object.
CreateWithMouse Method
Allows the user to create the object by using the mouse to set its size and position in the Configuration
environment.
Syntax
object.CreateWithMouse
Properties
The CreateWithMouse method syntax has this part:
514
IFIX Automation Reference
Part Description
Cut Method
Removes the selected objects out of the container and puts them on the Clipboard. This is equivalent to
selecting Cut from the Edit menu.
Syntax
object.Cut
Properties
The Cut method syntax has this part:
Part Description
Remarks
Cut is a Configuration environment method that only works when cutting objects in another document.
D-E
DeActivateWorkspaceUI Method
Determines whether or not a form is modeless in the Configuration environment.
Syntax
object.DeActivateWorkspaceUI bLeaveActiveDocActive
Properties
The DeActivateWorkspaceUI method syntax has these parts:
515
iFIX Automation Reference
Part Description
bLeaveActiveDocActive Boolean. If True, objects can be selected and moved in the currently
active document. The right mouse menu and double click events are
disabled. In addition, the active document cannot be moved, closed,
maximized, or minimized. If False, objects cannot be selected or
moved in the currently active document.
Remarks
User forms are modal by default. To make a form modeless, make the following call on form
initialization (in the form’s Activate event):
Application.DeActivateWorkspaceUI True
This call must be made from a form that is activated by a toolbar script.
DefaultView Method
Restores a document to its default configuration.
Syntax
object.DefaultView bRedraw
Properties
The DefaultView method syntax has these parts:
Part Description
bRedraw Boolean. (Optional) If True, repaint the document. (Default) If False, make the
changes but don't repaint the document.
DelAlarm Method
Deletes the alarm for the requested node and tag.
516
IFIX Automation Reference
Syntax
object.DelAlarm(sNode, sTag)
Properties
The DelAlarm method syntax has these parts:
Part Description
Return Value
Integer. The status of the alarm deletion. Return value of 0 signifies success, non-zero on failure.
DeleteAllAlarms Method
Deletes all alarms that match the current filter.
Syntax
object.DeleteAllAlarms()
Properties
The DeleteAllAlarms method syntax has this part:
Part Description
Return Value
Integer. The status of the alarm deletion. Return value of 0 signifies success, non-zero on failure when
at least one alarm was not deleted.
517
iFIX Automation Reference
DeleteAllDataSets Method
Deletes all data sets from the Enhanced Chart.
Syntax
object.DeleteAllDataSets ()
Properties
The DeleteAllDataSets method syntax has this part:
Part Description
DeleteDataSet Method
Deletes a specified data set from an Enhanced Chart.
Syntax
object.DeleteDataSet nDSPosition
Properties
The DeleteDataSet method syntax has these parts:
Part Description
nDSPosition Long. The position of the data set within chart that you want to delete from chart
object. Position is 0 based.
DeleteImage Method
Deletes both the primary and secondary images loaded at the specified index.
Syntax
object.DeleteImage nIndex
518
IFIX Automation Reference
Properties
The DeleteImage method syntax has these parts:
Part Description
nIndex Integer. The index of the image to delete. This is a one-based index.
DeletePen Method
Deletes a Pen from the Chart.
Syntax
object.DeletePen uiIndex
Properties
The DeletePen method syntax has these parts:
Part Description
DeletePoint Method
Deletes the point at the given index.
Syntax
object.DeletePoint lIndex
Properties
The DeletePoint method syntax has these parts:
519
iFIX Automation Reference
Part Description
DeleteSelectedObjects Method
Deletes the objects in the SelectedShapes collection.
Syntax
object.DeleteSelectedObjects
Properties
The DeleteSelectedObjects method syntax has this part:
Part Description
Remarks
DeleteSelectedObjects is a Configuration environment method that only works when deleting objects
in another document.
DemandFire Method
Forces the object to fire its main event.
Properties
The DemandFire method syntax has these parts:
520
IFIX Automation Reference
Part Description
bstrObjectName String. The name of the object in the schedule for which you want to fire an
event.
Properties
The DemandFire method syntax has this part:
Part Description
Remarks
For the Scheduler object, DemandFire triggers the event associated with the name of the object in the
Scheduler. For the Timer object, DemandFire fires the OnTimeOut event. For the Event object, the
event that the user has configured in the user interface fires. This can be OnTrue, OnFalse,
WhileTrue, WhileFalse, or DataChange.
You can use this method to force the action to trigger, which is useful for debugging or for complex
scheduling strategies.
DeselectObject Method
Deselects the object.
Syntax
object.DeselectObject bDeselectAll
Properties
The DeselectObject method syntax has these parts:
521
iFIX Automation Reference
Part Description
bDeselectAll Boolean. If True, all items that were selected are deselected. If False, deselects the
last selected object.
Remarks
Removes this object in its parent object's ContainedSelections collection as well as from the picture's
SelectedShapes collection.
DestroyObject Method
Deletes the object.
Syntax
object.DestroyObject
Properties
The DestroyObject method syntax has this part:
Part Description
DisableNonSelectionEvents Method
Reserved for internal purposes.
Disconnect Method
Removes a property connection that was built using Connect.
Syntax
object.Disconnect bstrPropertyName
522
IFIX Automation Reference
Properties
The Disconnect method syntax has these parts:
Part Description
bstrPropertyName String. The name of the property that has the connection.
Remarks
If more that one connection is built for a single property, this method deletes all of the connections.
DisplaysControlPoints Method
Determines whether or not a shape displays its control points for selecting, resizing, and rotating, etc.
Syntax
object.DisplaysControlPoints bDisplaysControlPoints
Properties
The DisplaysControlPoints method syntax has these parts:
Part Description
bDisplaysControlPoints Boolean. If True, the shape displays control points. If False, the shape
does not display control points.
DoesPropertyHaveTargets Method
Determines if a property has a target object connection. That is, if the local property changes, will this
change be sent to any other objects in the system. This list of subscribed connections are called targets.
Syntax
object.DoesPropertyHaveTargets bstrPropertyName, bHasTargets, iNumberOfTargets, iStatus,
iIndex
523
iFIX Automation Reference
Properties
The DoesPropertyHaveTargets method syntax has these parts:
Part Description
bstrPropertyName String. The name of the local property to check for targets.
bHasTargets Boolean. Returns True if any targets are configured for the property name.
iIndex Long. Returns the handle for the passed in property that you can pass to the
GetPropertyTargets method to obtain the list of targets associated with this
property.
DoExtendLines Method
Extends the selected lines to the intersection point(s) of another selected line.
Syntax
object.DoExtendLines
Properties
The DoExtendLines method syntax has this part:
Part Description
524
IFIX Automation Reference
DoLinesToPolyline Method
Converts the selected lines to a polyline.
Syntax
object.DoLinesToPolyline
Properties
The DoLinesToPolyline method syntax has this part:
Part Description
DoMenuCommand Method
Executes the specified menu command.
Syntax
object.DoMenuCommand iMenuCommand
Properties
The DoMenuCommand method syntax has these parts:
Part Description
525
iFIX Automation Reference
Part Description
DoTrimLines Method
Trims the selected lines to each intersection point.
Syntax
object.DoTrimLines
Properties
The DoTrimLines method syntax has this part:
Part Description
DumpProperties Method
Writes the property names and the corresponding values of an object's properties to an ASCII file.
Syntax
object.DumpProperties pbstrDumpFilename, bDumpChildren, bstrDumpProperty, bstrDumpValue
Properties
The DumpProperties method syntax has these parts:
526
IFIX Automation Reference
Part Description
pbstrDumpFilename String. The name of the file in which to store the output.
bDumpChildren Boolean. If True, the dump file will contain the object’s children’s
properties.
Duplicate Method
Copies the selected objects in the container. This is equivalent to selecting Duplicate from the Edit
menu.
Syntax
object.Duplicate
Properties
The Duplicate method syntax has this part:
Part Description
Remarks
The Duplicate method is a configure-time method. Duplicate copies any object currently selected.
Furthermore, a duplicated object also duplicates its children (contained objects). New names are
generated for each new object and all inter-object relationships (connections, containment, internal
script object references) are changed to use the new names of the duplicated objects.
EditPicture Method
Opens the Picture’s configuration dialog box.
527
iFIX Automation Reference
Syntax
object.EditPicture
Properties
The EditPicture method syntax has this part:
Part Description
Remarks
EditPicture is a Configuration environment method only.
Enable Method
Enables or disables a Color Button.
Syntax
object.Enable bEnable
Properties
The Enable method syntax has these parts:
Part Description
bEnable Boolean. If True, the Color Button is enabled. If False, the Color Button is disabled.
Enumerate_All_Dynamos Method
Returns a list (collection) of Dynamo objects, including those in groups, for a specified collection. The
specified collection is usually in picture's contained object collection or that of a Dynamo Set.
Syntax
object.Enumerate_All_Dynamos (pdispObjCollectionToSearch, ppdispObjCollectionOfDynamos)
528
IFIX Automation Reference
Properties
The Enumerate_All_Dynamos method syntax has these parts:
Part Description
Enumerate_All_Groups Method
Enumerates the Groups in the supplied list.
Syntax
object.Enumerate_All_Groups (pdispObjCollectionToSearch, ppdispObjCollectionOfDynamos )
Properties
The Enumerate_All_Groups method syntax has these parts:
Part Description
ppdispObjCollectionOfDynamos The collection of group objects that were found in the search.
Enumerate_Top_Level_Dynamos Method
Returns a list (collection) of Dynamo objects, not including Dynamos found within groups, for a
specified collection.
529
iFIX Automation Reference
Syntax
object.Enumerate_Top_Level_Dynamos (pdispObjCollectionToSearch,
ppdispObjCollectionOfDynamos)
Properties
The Enumerate_Top_Level_Dynamos method syntax has these parts:
Part Description
ppdispObjCollectionOfDynamos
The collection of Dynamo objects that were found in the
search.
Enumerate_Top_Level_Groups Method
Enumerates the top level groups in the supplied list.
Syntax
object.Enumerate_Top_Level_Groups (pdispObjCollectionToSearch,
ppdispObjCollectionOfDynamos)
Properties
The Enumerate_Top_Level_Groups method syntax has these parts:
Part Description
ppdispObjCollectionOfDynamos The collection of group objects that were found in the search.
530
IFIX Automation Reference
Remarks
We recommend that you build groups either by using the BuildObject method on the group object, or
using the Group method on the Picture object to group the selected objects.
ExchangePenPositions Method
Sets the location of a Pen within the Pens collection.
Syntax
object.ExchangePenPositions iNewPos, iOldPos
Properties
The ExchangePenPositions method syntax has these parts:
Part Description
Remarks
Note that when this method is called for a Pen, all pens starting at that index in the collection are
shifted down one (for example, their index is incremented by one).
Execute Method
Used to force execution of the KeyMacro’s associated procedure.
Syntax
object.Execute()
Properties
The Execute method syntax has this part:
531
iFIX Automation Reference
Part Description
Return Value
ExecuteKeyMacro Method
Searches the collection of the passed key combination, if a matching key macro object is found the
script associated with that key macro object is executed.
Syntax
object.ExecuteKeyMacro (ComboKey, KeyCode)
Properties
The ExecuteKeyMacro method syntax has these parts:
Part Description
KeyCode Integer. The ASCII value of the main key of the key combination.
ExportData Method
Exports the data in the Enhanced Chart in text format to the clipboard or to a file.
Syntax
object.ExportData bstrDest, enuExportStyle, [blnIncludingLabels], [blnUseMaximumPrecision]]
532
IFIX Automation Reference
Properties
The ExportData method syntax has these parts:
Part Description
bstrDest String. Empty for the system clipboard. To export to a file, use the full
path.
533
iFIX Automation Reference
Part Description
enuExportstyle Enum/Long. Specifies various styles with which the data is exported.
It can be either of type enumDataExportStyle or a corresponding
numerical value, as follows:
DataExportStyle_CommaSeparatedList (0): a comma separated list of
data.
DataExportStyle_TabSeparatedList (1): a tab separated list of data.
DataExportStyle_HorizontalTable (2): a table in which each row has
data for one dataset.
DataExportStyle_VerticalTable (3): a table in which each column has
data for one dataset.
NOTE: In order to use the enumImageFormat enumerations, you
must add the type library file for object to the references of the VBA
project. If the type library file is not included in the references, then
only numerical values are accepted. The type libraries for objects in
the Applied To list are as follows:
534
IFIX Automation Reference
Part Description
blnIncludingLabels Boolean. Specifies whether X-axis and Y-axis labels will be exported
along with data. Defaults to True if unspecified.
ExportImage Method
Takes a snapshot of the specified Enhanced Chart object and exports the resultant image to a file or the
system clipboard. You can specify the file format for the exported image.
Syntax
object.ExportImage bstrDest, enuFormat, enuSizeUnits, dblWidth, dblHeight, [lngDPI],
[blnLargeFont]
Properties
The ExportImage method syntax has these parts:
Part Description
bstrDest String. Leave empty for the system clipboard. To export to a file, use the full
path.
535
iFIX Automation Reference
Part Description
enuFormat Enum/Long. Specifies the desired image format. It can be either of type
enumImageFormat or a corresponding numerical value, as follows:
ImageFormat_WMF (0): WMF format
ImageFormat_BMP (1): BMP format
ImageFormat_JPG (2): JPG format
ImageFormat_PNG (3): PNG format
ImageFormat_EMF (5): EMF format
NOTE: In order to use the enumImageFormat enumerations, you must add the
type library file for object to the references of the VBA project. If the type library
file is not included in the references, then only numerical values are accepted.
The type libraries for objects in the Applied To list are as follows:
536
IFIX Automation Reference
Part Description
enuSizeUnits Enum/Long. Specifies in what units the image size is specified with dblWidth and
dblHeight. It can be either of type enumSizeUnits or a corresponding numerical
value, as follows:
NOTE: Not all the formats support all the units.
NOTE: In order to use the enumSizeUnits enumerations, you must add the type
library file for object to the references of the VBA project. If the type library file
is not included in the references, then only numerical values are accepted. The
type libraries for objects in the Applied To list are as follows:
Part Description
dblWidth Double. Specifies the width of the image, in the units specified in enuSizeUnits.
dblHeight Specifies the heigth of the image, in the units specified in enuSizeUnits.
lngDPI Long. Specifies the dot density of the image, in dots per inch. Defaults to 300 if
left unspecified. It must fall between 50 and 600; otherwise it will be ignored.
This parameter does not apply to WMF format if enuSizeUnits is set to
SizeUnits_NoSpecificSize.
blnLargeFont Boolean. Specifies whether large font should be used in the chart image. Defaults
to False if left unspecified.
Remarks
Regardless of format and dimension, the aspect ratio must be between 0.1 and 10.
ExportLanguageFile Method
Exports the language file for the specified picture or pictures. You can specify the language for an
individual picture, or you can specify the language for all pictures.
The method Object.ExportLanguageFile, uses the LanguageDesired property to export language files.
The method Object.ExportLanguageFile (xxxx), uses the specified language (xxxx) to export language
files.
Syntax
object.ExportLanguageFile [LanguageDesired as Long]
Properties
The ExportLanguageFile method syntax has these parts:
Part Description
538
IFIX Automation Reference
Part Description
FindAndReplaceDialog Method
Opens the WorkSpace’s Find And Replace dialog box.
Syntax
object.FindAndReplaceDialog
539
iFIX Automation Reference
Properties
The FindAndReplaceDialog method syntax has this part:
Part Description
Remarks
FindAndReplaceDialog is a Configuration environment method only.
For non-UI find and replace substitutions, see the FindReplace object.
FindInString Method
Finds the first occurrence of one string within another.
Syntax
object.FindInString bstrTargetString, lStartChar, bstrFindString, lFlags, pbstrMarkedMatchString,
plFirstChar, plCharCount, pbFound
Properties
The FindInString method syntax has these parts:
Part Description
540
IFIX Automation Reference
Part Description
pbstrMarkedMatchString String. Returns sub-string extracted from target string with marker
characters inserted.
plFirstChar Long. Returns a one-based index of first character in the target string
which is involved in the match with the find string.
plCharCount Long. Returns the number of characters in the target string which
were involved in the match of the find string.
Remarks
The pbstrMarkedMatchString, plFirstChar, and plCharCount parameters provide the user with the
information needed to perform a subsequent ReplaceInString operation.
FindObject Method
Locates an object in the system or in the specified object's ContainedObjects collection.
Syntax
system.FindObject(bstrFullyQualifiedName)
Properties
The FindObject method syntax has these parts:
Part Description
541
iFIX Automation Reference
Part Description
Return Value
Object. The dispatch pointer of the object.
Remarks
FindObject must be called off the System object when searching for data items. FindObject off any
other object looks for the specified object within scope of that object. That is, FindObject off a Group
will only look for the object within that Group.
FindReplaceInObject Method
Finds all occurrences of a string in the specified object and replaces them with another string.
Syntax
object.FindReplaceInObject pdispObject, lFlags, bstrFindString, bstrReplacementString, pbSuccess
Properties
The FindReplaceInObject method syntax has these parts:
Part Description
542
IFIX Automation Reference
Part Description
FindReplaceInString Method
Finds the first occurrence of a string within a specified string and replaces it with another.
Syntax
object.FindReplaceInString pbstrTargetString, lStartChar, bstrFindString, bstrReplacementString,
lFlags, plFirstChar, plCharCount, pbstrResultString, pbSuccess
Properties
The FindReplaceInString method syntax has these parts:
Part Description
lStartChar String. The code to be written to the event in the form of strings.
bstrReplacementString String. The string to be substituted for the first occurrence of the find
string.
543
iFIX Automation Reference
Part Description
plFirstChar Long. Returns a one-based index of the first character in the target string
which was involved in the match with the find string.
plCharCount Long. Returns the number of characters in the target string which were
involved in the match of the find string.
pbstrResultString String. Returns the new string with the specified replacement.
FitDocumentToWindow Method
Changes the size of the document so that the entire document can be seen in the window. In instances
where the document is bigger than the window and scrollbars are present, the document is shrunk so
that it fits within the window.
Syntax
object.FitDocumentToWindow [bRedraw]
Properties
The FitDocumentToWindow method syntax has these parts:
Part Description
bRedraw Boolean. (Optional) If True, repaint the document. (Default) If False, make the
changes but don't repaint the document.
FitWindowToDocument Method
Changes the size of the window (within the limits of the WorkSpace client area) to fit the size of the
document.
Syntax
object.FitWindowToDocument [bRedraw]
544
IFIX Automation Reference
Properties
The FitWindowToDocument method syntax has these parts:
Part Description
bRedraw Boolean. (Optional) If True, repaint the document. (Default) If False, make the
changes but don't repaint the document.
FixCheckApplicationAccess Method
Checks to see if the user has access to the specified application.
Syntax
object.FixCheckApplicationAccess(ApplicationID)
Properties
The FixCheckApplicationAccess method syntax has these parts:
Part Description
ApplicationID Integer Enumeration. The ID that corresponds to the application the user is
interested in.
Return Value
Long. Returns 1 if the user has access to the specified application, 0 otherwise.
FixCheckApplicationAccessQuiet Method
Checks to see if the user has access to the specified application. The
FixCheckApplicationAccessQuiet method refrains from sending a security violation message if the
user does not have access.
545
iFIX Automation Reference
Syntax
object.FixCheckApplicationAccessQuiet(ApplicationID)
Properties
The FixCheckApplicationAccessQuiet method syntax has these parts:
Part Description
ApplicationID Integer Enumeration. The ID that corresponds to the application the user is
interested in.
Return Value
Long. Returns 1 if the user has access to the specified application, 0 otherwise.
FixCheckAreaAccess Method
Checks to see if the user has access to the specified area.
Syntax
object.FixCheckAreaAccess(Area)
Properties
The FixCheckAreaAccess method syntax has these parts:
Part Description
Return Value
Long. Returns 1 if the user has access to the specified area, 0 otherwise.
546
IFIX Automation Reference
Remarks
The mapping of area number to area name can be seen in the Security Configurator under area
configuration.
FixCheckAreaAccessQuiet Method
Checks to see if the user has access to the specified area. The FixCheckAreaAccessQuiet method
refrains from sending a security violation message if the user does not have access.
Syntax
object.FixCheckAreaAccessQuiet(Area)
Properties
The FixCheckAreaAccessQuiet method syntax has these parts:
Part Description
Return Value
Long. Returns 1 if the user has access to the specified area, 0 otherwise.
Remarks
The mapping of area number to area name can be seen in the Security Configurator under area
configuration.
FixCheckSecurityEnabled Method
Checks to see if security is enabled.
Syntax
object.FixCheckSecurityEnabled()
Properties
The FixCheckSecurityEnabled method syntax has these parts:
547
iFIX Automation Reference
Part Description
Return Value
Long. Returns 1 if the security is enabled, 0 otherwise.
FixGetManualAlmDeleteEnabled Method
Returns information about whether the manual alarm deletion feature is enabled in the System
Configuration Utility (SCU).
Syntax
object.FixGetManualAlmDeleteEnabled
Properties
The FixGetManualAlmDeleteEnabled method syntax has this part:
Part Description
FixGetUserInfo Method
Returns information about the currently logged in user, including the user name and group name.
Syntax
object.FixGetUserInfo UserID, UserName, GroupName
Properties
The FixGetUserInfo method syntax has these parts:
Part Description
548
IFIX Automation Reference
Part Description
GroupName String. Returns the first group to which the user belongs.
FixLogin Method
Logs in the user using the specified user ID and password.
Syntax
object.FixLogin UserID, Password
Properties
The FixLogin method syntax has these parts:
Part Description
FixLogout Method
Logs out the user.
Syntax
object.FixLogout
Properties
The FixLogout method syntax has this part:
549
iFIX Automation Reference
Part Description
FontProperties Method
Displays the Font dialog box.
Syntax
object.FontProperties
Properties
The FontProperties method syntax has this part:
Part Description
FullView Method
Resize the document to take up the entire screen.
Syntax
object.FullView [bRedraw]
Properties
The FullView method syntax has these parts:
Part Description
bRedraw Boolean. (Optional) If True, repaint the document. (Default) If False, make the
changes but don't repaint the document.
550
IFIX Automation Reference
G-H
Get_Last_Prompt_Value Method
Mostly for internal use. Returns the value of the last prompt for choice in the dialog selection. This
value is set only during a Dynamo Update process. Advanced users developing their own tools instead
of using the Dynamo Updater Wizard or Quick Dynamo Updater may find this method useful.
Syntax
object.Get_Last_Prompt_Value
Properties
The Get_Last_Prompt_Value method syntax has this part:
Part Description
Return Value
Integer. Returns the result string of the last operation. The following table lists the possible values.
Value Description
551
iFIX Automation Reference
Get_Last_Result_String Method
Retrieves the last prompt text string for the specified Dynamo object.
Syntax
object.Get_Last_Result_String
Properties
The Get_Last_Result_String method syntax has this part:
Part Description
Return Value
String. Returns the last prompt text string for the Dynamo prompt.
GetBoundRect Method
Returns the shape's current bounding rectangle.
Syntax
object.GetBoundRect pfTop, pfLeft, pfBottom, pfRight
Properties
The GetBoundRect method syntax has these parts:
Part Description
552
IFIX Automation Reference
Part Description
Remarks
The bounding rectangle is represented in logical coordinates relative to the picture's upper left hand
corner.
GetChartEndTime Method
Returns the end time for the enhanced XY chart.
Syntax
object.GetChartEndTime [= Date]
Properties
The GetChartEndTime method syntax has these parts:
Part Description
Date The ending time for the chart. This takes the regional setting format.
GetChartStartTime Method
Returns the start time for the enhanced XY chart.
Syntax
object.GetChartStartTime [= Date]
Properties
The GetChartStartTime method syntax has these parts:
553
iFIX Automation Reference
Part Description
Date The starting time for the chart. This takes the regional setting format.
GetColHeadings Method
Returns the names of all column headings in the Alarm Summary object.
Syntax
object.GetColHeadings bstrColHeadings
Properties
The GetColHeadings method syntax has these parts:
Part Description
bstrColHeadings String. Returns a string containing the column headings of the Alarm
Summary object.
Remarks
The GetColHeadings method returns the Alarm Summary object's column headings in order,
separated by a semicolon.
GetColumnInfo Method
Returns a specific column’s name and size information.
Syntax
object.GetColumnInfo iColumn, szItemName, iNumChars
Properties
The GetColumnInfo method syntax has these parts:
554
IFIX Automation Reference
Part Description
iNumChars Integer. Returns the number of characters used to determine the column size.
GetConnectionInformation Method
Fetches a property connection information set.
Syntax
object.GetConnectionInformation iIndex, bstrProperyName, bstrSource, bstrFullyQualifiedSource,
vtSourceObjects, [fTolerance], [fDeadband], [fUpdateRate]
Properties
The GetConnectionInformation method syntax has these parts:
Part Description
bstrProperyName String. Returns the name of property for this connection index.
555
iFIX Automation Reference
Part Description
fUpdateRate Variant. (Optional) Returns the refresh rate in seconds for this
connection.
GetConnectionParameters Method
Returns the UpdateRate, Deadband and Tolerance for the specified property connection.
Syntax
object.GetConnectionParameters bstrPropertyName, [pvaUpdateRate], [pvaDeadband],
[pvaTolerance], [pvaConnectionFlags]
Properties
The GetConnectionParameters method syntax has these parts:
Part Description
pvaUpdateRate Variant. (Optional) Returns the refresh rate in seconds for this connection.
GetContinuousUser Method
Retrieves the user name of the continuous user.
Syntax
object.GetContinuousUser(bstrUserName, lcount)
556
IFIX Automation Reference
Properties
The GetContinuousUser method syntax has these parts:
Part Description
lcount Long. Returns the value of the continuous user counter. Use the counter to
determine if the continuous user has been modified since a previous call to the
GetContinuousUser method.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
GetCurrentDataSet Method
Retrieves an object reference to the current data set for the Enhanced Chart.
Syntax
object.GetCurrentDataSet
Properties
The GetCurrentDataSet method syntax has this part:
Part Description
Return Value
Object – the Dataset object retrieved.
557
iFIX Automation Reference
GetCurrentValue Method
Returns the value, time stamp, and quality information of the current data associated with the pen
object.
Syntax
object.GetCurrentValue CurrentValue, dt, lQual
Properties
The GetCurrentValue method syntax has these parts:
Part Description
CurrentValue Single. Returns the current value of the pen’s data source.
lQual Integer. Returns the OPC quality codes representing the quality of the data being
sent.
GetCurrentValueWithQuality Method
Returns the current value, time stamp, and quality information of the dataset.
Syntax
object.GetCurrentValueWithQuality CurrentValue, dt, lQual
Properties
The GetCurrentValueWithQuality method syntax has these parts:
Part Description
558
IFIX Automation Reference
Part Description
dt Variant. Returns the associated time stamp of the value if the dataset's X axis is
time. Returns a Double for any other data type.
lQual
Long. Returns the OPC quality code representing the quality of the data being
retrieved.
GetDataSetByPosition Method
Retrieves the Dataset object by position.
Syntax
object.GetDataSetByPosition nDSPosition
Properties
The GetDataSetByPosition method syntax has these parts:
Part Description
nDSPosition Long. The position of the data set that you want to retrieve from the chart object.
Position is 0 based.
Return Value
Object – the dispatch pointer of the Dataset object retrieved by position.
GetDeviceRect Method
Returns the shape's current bounding rectangle in device coordinates.
Syntax
object.GetDeviceRect plTop, plLeft, plBottom, plRight
559
iFIX Automation Reference
Properties
The GetDeviceRect method syntax has these parts:
Part Description
plBottom
Long. Returns the bottom position of the bounding rectangle.
plRight
Long. Returns the right position of the bounding rectangle.
GetDuration Method
Returns the duration for the current object.
Syntax
object.GetDuration days, hours, minutes, seconds
Properties
The GetDuration method syntax has these parts:
Part Description
560
IFIX Automation Reference
GetGlobalDuration Method
Returns the duration for the current object.
Syntax
object.GetGlobalDuration days, hours, minutes, seconds
Properties
The GetGlobalDuration method syntax has these parts:
Part Description
GetErrorString Method
Returns the error string that corresponds to the specified error number.
Syntax
object.GetErrorString(errcode)
Properties
The GetErrorString method syntax has these parts:
Part Description
errcode Long. Returns the error code generated from a method call and/or property setting.
561
iFIX Automation Reference
Return Value
String. The text string associated with the specified error code.
GetEventHandlerIndex Method
Returns the index of the Event member in the Procedures collection.
Syntax
object.GetEventHandlerIndex bstrEventName, pIndex, pFound
Properties
The GetEventHandlerIndex method syntax has these parts:
Part Description
pIndex Long. Numerical index of the procedures position in the existing collection.
Note: This index is transient, it will change as procedures are added or deleted.
GetFullname Method
Returns the full name of a user.
Syntax
object.GetFullname(bstrUsername, bstrFullname)
Properties
The GetFullname method syntax has these parts:
562
IFIX Automation Reference
Part Description
bstrUserName String. The user name of the user in Windows security or the login name of the
user in iFIX Security.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
GetGlobalHistoricalUpdateRate Method
Returns the update rate for historical data sources in run mode.
Syntax
object.GetGlobalHistoricalUpdateRate hrs, mins, secs
Properties
The GetGlobalHistoricalUpdateRate method syntax has these parts:
Part Description
GetIndirectionInfo Method
Reserved for internal use.
563
iFIX Automation Reference
GetInterval Method
Returns the interval for the current object.
Syntax
object.GetInterval days, hours, minutes, seconds
Properties
The GetInterval method syntax has these parts:
Part Description
GetKeyMacro Method
Returns a key macro object defined by key combination, if one exists.
Syntax
object.GetKeyMacro (ComboKey, KeyCode )
Properties
The GetKeyMacro method syntax has these parts:
Part Description
564
IFIX Automation Reference
Part Description
KeyCode Integer. The ASCII value of the main key of the key combination.
GetKeyMacroIndex Method
Returns the index of the key macro specified by the key combination.
Syntax
object.GetKeyMacroIndex (ComboKey, KeyCode, Index, Found )
Properties
The GetKeyMacroIndex method syntax has these parts:
Part Description
KeyCode Integer. The ASCII value of the main key of the key combination.
GetLevel Method
Gets the level properties for the specified level index of the lookup object.
Syntax
object.GetLevel iIndex, pInput1, pOutput1, [pInput2], [pOutput2]
Properties
The GetLevel method syntax has these parts:
565
iFIX Automation Reference
Part Description
pInput1 Variant. Returns the first input parameter. Used as the lookup value for exact
match lookups, and the minimum value for range comparison lookups.
Variant. (Optional) Returns the second input parameter. Used as the maximum
pInput2 value for range comparison lookups.
Variant. (Optional) Returns the secondary output value for this level. Used by the
pOutput2 lookup object as the “blink to” value at this level.
GetNumberOfDataSets Method
Retrieves the number of data sets in an Enhanced Chart.
Syntax
object.GetNumberOfDataSets ()
Properties
The GetNumberOfDataSets method syntax has this part:
Part Description
Return Value
Long – the number of data sets in the chart.
566
IFIX Automation Reference
GetObjectInfo Method
Returns a two-dimensional array containing the property values for the specified objects.
Syntax
object.GetObjectInfo(bstrObjectNames, bstrProperties)
Properties
The GetObjectInfo method syntax has these parts:
Part Description
bstrObjectNames String Array. An array of object names the user wants values for.
bstrProperties String Array. An array of property names the user wants values for.
Return Value
Variant Array. A two-dimensional array consisting of the property values corresponding to the
specified property names for the specified objects.
Remarks
GetObjectInfo will return a value of EMPTY if the user has specified an invalid object and/or
property name.
GetPenDataArray Method
Fetches the data array for the specified Pen
Syntax
object.GetPenDataArray pNumPts, pVal, ppsa, pQual
Properties
The GetPenDataArray method syntax has these parts:
567
iFIX Automation Reference
Part Description
pVal Array of variants. An array of values for each point in the pen.
ppsa Array of variants. An array of times for each point in the pen.
pQual Array of variants. An array of qualities for each point in the pen.
Remarks
The Pen data array is a set of three arrays containing the value, time stamp, and quality information for
each point. The array is ordered as drawn left to right, with the most recent data elements at the end of
the array.
GetPenDataArrayEx Method
Fetches the data array for the specified Pen
Syntax
object.GetPenDataArrayEx pNumPts, pVal, ppsa, pQual, pMilliseconds
Properties
The GetPenDataArrayEx method syntax has these parts:
Part Description
pVal Array of variants. An array of values for each point in the pen.
ppsa Array of variants. An array of times for each point in the pen.
pQual Array of variants. An array of qualities for each point in the pen.
568
IFIX Automation Reference
Part Description
Remarks
The Pen data array is a set of four arrays containing the value, time stamp (excluding milliseconds),
quality, and millisecond component of the timestamp information for each point. The array is ordered
as drawn left to right, with the most recent data elements at the end of the array.
GetPointAt Method
Returns the point at the given index.
Syntax
object.GetPointAt(lIndex)
Properties
The GetPointAt method syntax has these parts:
Part Description
Return Value
Object. An object of class FixFloatPoint, which contains the x and y logical coordinates.
Remarks
This function allows users to iterate through the data point array. The maximum index is determined
by the number of data points in the object.
GetPriorityColor Method
Returns the row background color configured for the specified alarm priority.
569
iFIX Automation Reference
Syntax
object.GetPriorityColor(PriorityId)
Properties
The GetPriorityColor method syntax has these parts:
Part Description
Return Value
OLE_COLOR. The row background color configured for the specified alarm priority.
GetProcedureIndex Method
Returns the index of the Procedure member in the Procedures collection.
Syntax
object.GetProcedureIndex bstrProcName, pIndex, pFound
Properties
The GetProcedureIndex method syntax has these parts:
570
IFIX Automation Reference
Part Description
pIndex Long. Numerical index of the procedures position in the existing collection.
Note: This index is transient, it will change as procedures are added or deleted.
GetProperty Method
Returns the value of the specified property name.
Syntax
object.GetProperty bstrPropertyName, vaValue
Properties
The GetProperty method syntax has these parts:
Part Description
Remarks
The GetProperty and SetProperty methods are useful for creating table driven property operations.
Generic import and export functions can be written given a list of property names to access (also see
ListProperties).
GetPropertyAttributes Method
Fetches a list of property attributes. For a tag reference, these are properties such as new alarm status
and property range information (EGU limits, list of strings alarm strings (HIHI, LOLO, etc)). Each
property queried may have a different set of attributes.
571
iFIX Automation Reference
Syntax
object.GetPropertyAttributes bstrFullyQualifiedName, spAttribute, vtResults, vtAttributeNames,
iStatus
Properties
The GetPropertyAttributes method syntax has these parts:
Part Description
spAttribute Integer Enumeration. The attribute of the property that you are
interested in.
Valid entries:
0 - CurrentValue
1 - Description
2 - Range
3 - LowEGU
4 - HighEGU
5 - CurrentAlarm
6 - AlarmAcknowledge
7 - AlarmLatched
Variant array of strings. This is a return value that is used to help map
tAttributesNames one fully qualified name to another. For example, if
Fix32.SCADA1.AI1.F_CV is entered, and the script needs to also fetch
the current alarm status for this tag, calling GetPropertyAttributes
with an attribute type of CurrentAlarm returns the fully qualified name
Fix32.SCADA1.AI1.A_CUALM. This can then be fetched in
conjunction with the first item parsing the string, since different OPC
servers may map alarm status into different fields.
572
IFIX Automation Reference
Part Description
GetPropertyTargets Method
Returns a list of object names that have built connections (subscribed) to a property. The targets are the
objects that are sent data when the property's value changes.
Syntax
object.GetPropertyTargets iIndex, bstrPropertyName, vtTargets
Properties
The GetPropertyTargets method syntax has these parts:
Part Description
bstrPropertyName String. Returns the property name for the specified connection index.
Remarks
This method can be used to see all objects that are connected to a property. For example, to determine
which objects are connected to a specific tag reference, call this method on the tag reference.
The returned targets variant is an array of fully qualified names of objects that have connections to this
tag. This list is only valid for those connections currently in memory. (Only for currently loaded
objects; not valid for pictures on disk).
573
iFIX Automation Reference
GetRibbonView Method
Returns if the iFIX WorkSpace ribbon is enabled.
Syntax
object.GetRibbonView
Properties
The GetRibbonView method syntax has this part:
Part Description
Return Value
Boolean. True indicates that the iFIX WorkSpace ribbon is enabled. False indicates it is not.
GetSelectedAlmExt Method
Returns the alarm extension fields (A_ALMEXT1, A_ALMEXT2) for the tag in the currently selected
alarm.
Syntax
object.GetSelectedAlmExt(AlmExt1, AlmExt2)
Properties
The GetSelectedAlmExt method syntax has these parts:
Part Description
AlmExt1 String. Returns the string configured in the alarm's first extension field.
AlmExt2 String. Returns the string configured in the alarm's first extension field.
574
IFIX Automation Reference
Return Value
Boolean. True if an alarm is selected, False if no alarm is selected.
Remarks
If no alarm is selected, AlmExt1 and AlmExt2 are set to EMPTY.
GetSelectedNodeTag Method
Returns the node and tag name corresponding to the currently selected alarm.
Syntax
object.GetSelectedNodeTag(sNode, sTag)
Properties
The GetSelectedNodeTag method syntax has these parts:
Part Description
sNode String. Returns the node name corresponding to the currently selected alarm.
sTag String. Returns the tag name corresponding to the currently selected alarm.
Return Value
Boolean. True if an alarm is selected, False if no alarm is selected.
Remarks
If no alarm is selected, sNode and sTag are set to EMPTY.
GetSelectedRow Method
Returns the information for the selected alarm in the Alarm Summary object. Note that even if a
column is not displayed, all information is still returned.
575
iFIX Automation Reference
Syntax
object.GetSelectedRow(bAcknowledged, Handle, Area, DateIn, DateLast, TimeIn, TimeLast, Node,
TagName, Priority, Status, Description, Value, ExtField1, ExtField2, UserDefField1, UserDefField2)
Properties
The GetSelectedRow method syntax has these parts:
Part Description
bAcknowledged Boolean. Returns True if the alarm has been acknowledged, False otherwise.
Handle String. Returns the unique identifier for the alarm. Specifically
<type><ipn><nodename>.
DateIn String. Returns the date when the block first generated the alarm.
DateLast String. Returns the date when the block last generated the alarm.
TimeIn String. Returns the time when the block first generated the alarm.
TimeLast String. Returns the time when the block last generated the alarm.
Node String. Returns the name of the Scada server that generated the alarm.
Status String. Returns the latched alarm for the block that is in alarm.
Description String. Returns the description field for the block in alarm.
ExtField1 String. Returns the first extension field for the block in alarm.
ExtField2 String. Returns the second extension field for the block in alarm.
576
IFIX Automation Reference
Part Description
UserDefField1 String. Returns the current value of the first "A_" field configured for this
column.
UserDefField2 String. Returns the current value of the second "A_" field configured for this
column.
Return Value
Boolean. True if an alarm is selected, False if no alarm is selected.
Remarks
If no alarm is selected, all parameters are set to EMPTY.
GetSelectedUserDefFields Method
Returns the current values in the user defined columns configured for the Alarm Summary object.
Syntax
object.GetSelectedUserDefFields(UserDefField1, UserDefField2)
Properties
The GetSelectedUserDefFields method syntax has these parts:
Part Description
UserDefField1 String. Returns the string configured in the alarm's first extension field.
UserDefField2 String. Returns the string configured in the alarm's first extension field.
Return Value
Boolean. True if an alarm is selected, False if no alarm is selected.
577
iFIX Automation Reference
Remarks
If no alarm is selected and/or there are no user defined columns, UserDefField1 and UserDefField2 are
set to EMPTY.
GetSignature Method
Displays the Electronic Signature dialog box based on the values passed in. The dialog box validates
the signing, but does not send a write request to the database or a signed operator message.
If verification is not required, only the Performed By section of the dialog box displays. If verification
is required, both the Performed By and Verified By sections display. If the tag is configured to allow
continuous use, the continuous user name appears in the Performed By user name edit box. Default
comments display based on the threshold table names passed in. If no threshold table names are passed
in, the threshold table names set in the WorkSpace User Preferences, if any, are used to display the
comment pick lists in the dialog box.
Syntax
object.GetSignature(bstrDescription, bVerify, bAllowContinuousUse, pbValidSig, bstrPerformUser,
bstrPerformUserID, bstrPerformComment, [bstrVerifyUser], [bstrVerifyUserID],
[bstrVerifyComment], [bCheckTag], [applicationId], [bstrPerformCommentTb]l,
[bstrVerifyCommentTbl], [pSecAreas], [bstrDialogCaption])
Properties
The GetSignature method syntax has these parts:
Part Description
bstrDescription String. Displays a message in the Electronic Signature dialog box that
describes the action needing a signature.
bAllowContinuousUse Boolean. Indicates whether or not the Performed By user name should
default to the name of the continuous user.
578
IFIX Automation Reference
Part Description
bstrPerformUserID String. Returns the user ID (short name) of the Performed By user.
This ID is used when sending a signed operator message.
bstrVerifyUser String. (Optional). Returns the user name of the Verified By signature.
bstrVerifyUserID String. (Optional). Returns the user ID (short name) of the Verified By
user. This ID is used when sending a signed operator message.
bstrPerformCommentTbl String. (Optional). Contains the name of the comment threshold table
to display in the Performed By comment pick list.
bstrVerifyCommentTbl String. (Optional). Contains the name of the comment threshold table
to display in the Verified By comment pick list.
bstrDialogCaption String. (Optional). Contains the caption that will display in the
Electronic Signature dialog box title bar in place of the default caption
“Electronic Signature.”
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
579
iFIX Automation Reference
GetSignatureAndWriteValue Method
Displays the Electronic Signature dialog box based on the values of the properties set in the ESignature
object by a prior call to the Initialize(), InitalizeList(), IsSignatureRequired(), or
IsSignatureRequiredForList(). Typically, you use this method when performing an electronic signature
for FIX32 data sources. The dialog box validates the signing, sends a write request to the database, and
then sends a signed operator message to the alarm system.
If verification is not required, only the Performed By section of the Electronic Signature dialog box
displays. If verification is required, both the Performed By and Verified By sections display. If the tag
is configured to allow continuous use, the continuous user name appears in the Performed By user
name edit box. Predefined comments display based on the threshold table names passed in. If no
threshold table names are passed in, the threshold table names set in the WorkSpace User Preferences,
if any, are used to display the comment pick lists in the dialog box.
Syntax
object.GetSignatureAndWriteValue(nAction, pValue, [bReadLabels], [bstrZeroLabel],
[bstrNonZeroLabel], [bstrDescription], [bstrPerformCommentTbl], [bstrVerifyCommentTbl],
[pbValidSig], [bstrDialogCaption])
Properties
The GetSignatureAndWriteValue method syntax has these parts:
Part Description
nAction Integer. Indicates the type of action to be performed. Valid entries for
nAction include:
0 – (WRITE_VAL). After validating the signature(s), the value passed
in pValue is written to the database and a signed operator message is
sent to the alarm system logging the action.
3 – (ACK_OR_REMOVE). After validating the signature(s), the
alarm is acknowledged and a signed operator message is sent to the
alarm system logging the action.
4 – (ACK_OR_REMOVE_LIST). After validating the signature(s),
the alarms in the list are acknowledged and a signed operator message
is sent to the alarm system for each alarm that was successfully
acknowledged. For a list requiring both perform and verify signatures,
if a perform signature fails the security area check for any alarm in the
list, the signature fails for the whole list of alarms and no alarms are
acknowledged. An error is generated.
580
IFIX Automation Reference
Part Description
bstrNonZeroLabel String. (Optional). The non-zero description label for the message
string. The message string displays in the Electronic Signature dialog
box and describes the action that you sign for.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
GetStatusColor Method
Returns the row foreground color configured for alarms with the specified status.
581
iFIX Automation Reference
Syntax
object.GetStatusColor(StatusId)
Properties
The GetStatusColor method syntax has these parts:
Part Description
Return Value
OLE_COLOR. The row foreground color configured for the specified alarm status.
582
IFIX Automation Reference
GetStatusFont Method
Returns the row font for alarms that have the specified status.
Syntax
object.GetStatusFont(nStatusID, lpbStrikeout, lpbUnderline, lpbBold, lpbItalic, lpnSize)
Properties
The GetStatusFont method syntax has these parts:
Part Description
583
iFIX Automation Reference
Part Description
lpbStrikeout Boolean. Returns whether the text appears with a strikeout through it.
Return Value
String. The font name of the text for the specified status.
GetTimeBeforeNow Method
Returns the initial relative start time for the current object.
Syntax
object.GetTimeBeforeNow hours, minutes, seconds
Properties
The GetTimeBeforeNow method syntax has these parts:
Part Description
584
IFIX Automation Reference
GetTimeCursorInfo Method
Returns a set of Pen information (time, value, quality) of the trend at the time where the Pen crosses
the time cursor.
Syntax
object.GetTimeCursorInfo lPenNum, pDt, pfVal, pQuality
Properties
The GetTimeCursorInfo method syntax has these parts:
Part Description
lPenNum Integer. The index for the pen for which you want the time cursor information for.
pDt Date. Returns the date represented when the pen crosses the time cursor.
pfVal Double. Returns the value represented when the pen crosses the time cursor.
pQuality Long. Returns the quality of the data represented when the pen crosses the time
cursor.
GetUserID Method
Returns the user ID (short name) from iFIX security for the given user name and password. This ID is
used when sending a signed operator message.
Syntax
object.GetUserID(bstrUserName, bstrPassword, bstrUserID)
Properties
The GetUserID method syntax has these parts:
Part Description
585
iFIX Automation Reference
Part Description
bstrPassword String. The code to be written to the event in the form of strings.
bstrUserID String. Returns the user ID (short name) of the user in iFIX security.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
GetWindowLocation Method
Retrieves the specified window’s size and location in terms of percentage of the screen.
Syntax
object.GetWindowLocation plfTopPct, plfLeftPct, plfHeight, plfWidth
Properties
The GetWindowLocation method syntax has these parts:
Part Description
plfTopPct Double. Returns the top percentage of the window relative to the WorkSpace client
area.
plfLeftPct Double. Returns the left percentage of the window relative to the WorkSpace
client area.
586
IFIX Automation Reference
GlobalScrollBackFast Method
Scrolls the Global Time Control time frame forward by the factor specified in the object's
GlobalFastScrollRate property. This method applies to historical data sources in run mode. When this
method is executed on the Global Time Control in run mode, the time frame specified in the Global
Time Control will move forward by the specified slow scroll rate.
Syntax
object.GlobalScrollBackFast
Properties
The GlobalScrollBackFast method syntax has this part:
Part Description
GlobalScrollBackSlow Method
Scrolls the Global Time Control time frame forward by the factor specified in the object's
GlobalSlowScrollRate property. This method applies to historical data sources in run mode. When this
method is executed on the Global Time Control in run mode, the time frame specified in the Global
Time Control will move forward by the specified slow scroll rate.
Syntax
object.GlobalScrollBackSlow
Properties
The GlobalScrollBackSlow method syntax has this part:
Part Description
GlobalScrollForwardFast Method
Scrolls the Global Time Control time frame forward by the factor specified in the object's
GlobalFastScrollRate property. This method applies to historical data sources in run mode. When this
method is executed on the Global Time Control in run mode, the time frame specified in the Global
587
iFIX Automation Reference
Time Control will move forward by the specified slow scroll rate.
Syntax
object.GlobalScrollForwardFast
Properties
The GlobalScrollForwardFast method syntax has this part:
Part Description
GlobalScrollForwardSlow Method
Scrolls the Global Time Control time frame forward by the factor specified in the object's
GlobalSlowScrollRate property. This method applies to historical data sources in run mode. When this
method is executed on the Global Time Control in run mode, the time frame specified in the Global
Time Control will move forward by the specified slow scroll rate.
Syntax
object.GlobalScrollForwardSlow
Properties
The GlobalScrollForwardSlow method syntax has this part:
Part Description
GlobalTimerApply Method
Applies the configured global time control settings to historical data sources in all open pictures in run
mode.
Syntax
object.GlobalTimerApply
588
IFIX Automation Reference
Properties
The GlobalTimerApply method syntax has this part:
Part Description
Group Method
Forms a Group consisting of the currently selected objects. This is equivalent to selecting Group from
the Format menu.
Syntax
object.Group
Properties
The Group method syntax has this part:
Part Description
Remarks
Group is a Configuration environment method only.
The Group method assumes that the objects selected are at the top most level. That is, grouping
objects that are selected in drill down mode groups the top-most group containing the selected object.
HiLoDisplay Method
Sets the HiDisplay and LoDisplay properties for the Time Axis of a Chart.
Syntax
object.HiLoDisplay HiDisplay, LoDisplay
Properties
The HiLoDisplay method syntax has these parts:
589
iFIX Automation Reference
Part Description
I-L
ImportToolbar Method
Imports an iFIX toolbar.
Syntax
object.ImportToolbar bstrToolbarName, bstrToolbarOwner
Properties
The ImportToolbar method syntax has these parts:
Part Description
BstrToolbarOwner String. Name of the newly imported toolbar's owner (WorkSpace, Picture, or
Scheduler)
Initialize Method
Sets the object’s data variables based on the value of the bstrDataSource parameters. If the method
encounters an error (such as bad syntax), a corresponding error code is stored in a member variable of
the object for later checking.
If the data source is FIX32 it reads electronic signature fields from the tag, and sets the associated
variables in the object with the data that was read from the tag. If an error occurs reading the settings
590
IFIX Automation Reference
from the tag, a corresponding error code is stored in a member variable of the object for later checking.
Syntax
object.Initialize(bstrDataSource)
Properties
The Initialize method syntax has these parts:
Part Description
bstrDataSource String. The fully qualified name of the data source. For example,
FIX32.NODE1.do1.F_CV or, section.node.tag.field format for FIX32 data
sources.
Return Value
This method returns an HRESULT, indicating the success or failure of the method call: S_OK for a
success or an error code for a failure.
InitializeList Method
Evaluates the data source names in the pDataSourceList parameters and determines if they represent
FIX32 data. If all data sources are FIX32, it reads the signature settings from the database for each data
source in the list and sets corresponding variables in the object.
If an error occurs reading the settings from the database, a corresponding error code is stored in a
member variable of the object for later checking.
Syntax
object.InitializeList(pDataSourceList)
Properties
The InitializeList method syntax has these parts:
Part Description
591
iFIX Automation Reference
Part Description
pDataSourceList Variant array. The fully qualified names of the data sources.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
InsertPoint Method
Inserts a new point at the given index.
Syntax
object.InsertPoint lIndex, pdispPoint
Properties
The InsertPoint method syntax has these parts:
Part Description
InteractiveExport Method
Launches the Export dialog box for the Enhanced Chart, even if the chart is non-modifiable at run
time.
Syntax
object.InteractiveExport
Properties
The InteractiveExport method syntax has this part:
592
IFIX Automation Reference
Part Description
IsColorSelectionVisible Method
Determines if the WorkSpace’s Color Selection dialog box is open.
Syntax
object.IsColorSelectionVisible
Properties
The IsColorSelectionVisible method syntax has this part::
Part Description
Return Value
Boolean. True if the Color Selection dialog box is open, False if it is not.
Remarks
IsColorSelectionVisible is a Configuration environment method only.
IsConnected Method
Determines if the specified property has an assigned animation connection.
Syntax
object.IsConnected bstrPropertyName, bHasConnection, iIndex, iStatus
Properties
The IsConnected method syntax has these parts:
593
iFIX Automation Reference
Part Description
bHasConnection Boolean. Returns True if the property has a connection, otherwise False.
iIndex Long. Returns the index for the property connection (useful for
GetConnectionInformation).
IsEmpty Method
Determines if the Lookup object contains any levels.
Syntax
object.IsEmpty pbRefVal
Properties
The IsEmpty method syntax has these parts:
Part Description
bstrEventName Boolean. Returns True if the Lookup object doesn't contain any levels, False if
it does.
IsKeyMacroDefined Method
Returns whether or not a key macro defined by the key combination exits.
594
IFIX Automation Reference
Syntax
object.IsKeyMacroDefined (ComboKey, KeyCode )
Properties
The IsKeyMacroDefined method syntax has these parts:
Part Description
KeyCode Integer. The ASCII value of the main key of the key combination.
IsNodeSignEnabled Method
Checks to see if the node is enabled for electronic signature by determining if the Electronic Signature
option is enabled on the node’s hardware key, if iFIX security is enabled on the node, and whether
bypass signature is in effect. Bypass signature applies when the currently logged in iFIX user has the
Electronic Signature-Bypass application feature assigned.
Syntax
object.IsNodeSignEnabled(pbEnabled)
Properties
The IsNodeSignEnabled method syntax has these parts:
Part Description
pbEnabled Boolean. Returns True if signature is enabled on the local node, False if it is not.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
595
iFIX Automation Reference
IsSignatureRequired Method
Evaluates the variables set by the Initialize method and the value of the nAction parameter to
determine whether the signature is required for the data source.
Syntax
object.IsSignatureRequired(nAction, bSignaturedRequired, [pInfo], [bVerify],
[bAllowContinuousUse])
Properties
The IsSignatureRequired method syntax has these parts:
Part Description
nAction Integer. Indicates the type of action associated with this signature. Valid
entries for nAction include:
0 – (WRITE_VAL). Writes a value to a single data source.
1 – (ACK). Acknowledges a single alarm.
3 – (ACK_OR_REMOVE). Acknowledges or manually deletes a single
alarm.
bSignatureRequired Boolean. Returns True if signature is required for the data source, False
if it is not.
596
IFIX Automation Reference
Part Description
bVerify Boolean. (Optional). Returns True if verification is required for the tag,
and False if it is not.
bAllowContinuousUse
Boolean. (Optional). Returns True if continuous use is allowed for
the tag, and False it is not.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
IsSignatureRequiredForList Method
Evaluates the variables set by the InitializeList() method and the value of the nAction parameter to
determine whether a signature is required for the list of data sources.
Syntax
object.IsSignatureRequiredForList(nAction, bSignatureRequired, [pInfo], [bVerify],
[bAllowContinuousUse])
Properties
The IsSignatureRequiredForList method syntax has these parts:
Part Description
nAction Action Type. Indicates the type of action associated with this signature.
Valid entries for nAction include:
ACK_LIST – Acknowledges multiple alarms.
ACK_OR_REMOVE_LIST – Acknowledges or manually deletes
multiple alarms.
bSignatureRequired Boolean. Returns True if signature is required for the list of data
sources, and False if it is not. If one tag requires signature all are
considered to require signature.
597
iFIX Automation Reference
Part Description
bVerify Boolean. (Optional). Returns True if verification is required for the data
source list, False if it is not. If one tag requires verification, all require
verification.
bAllowContinuousUse Boolean. (Optional). Returns True if continuous use is allowed for the
data source list, False if it is not. If one tag disallows continuous use, all
are considered to disallow continuous use.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
Item Method
Returns the indicated event member in the Procedures collection, Lines collection. and/or Sources
collection.
Syntax
object.Item (lIndex)
Properties
The Item method syntax has these parts:
598
IFIX Automation Reference
Part Description
lIndex Long. An expression that specifies the position of a member of the Procedures
collection. The index must be a number from 1 to the value of the Collection's Count
property.
Return Value
Object. The dispatch pointer to the item object in the collection.
Remarks
If the specified member does not exist, Item returns EMPTY.
ListEvents Method
Return a complete list of events for the specified object.
Syntax
object.ListEvents pvEvents, piNumEvents
Properties
The ListEvents method syntax has these parts:
Part Description
pvEvents Variant table of strings. Returns a list of event names that have been configured in
VBA.
ListMethods Method
Return a complete list of methods for the specified object.
599
iFIX Automation Reference
Syntax
object.ListMethods pvMethods, piNumMethods
Properties
The ListMethods method syntax has these parts:
Part Description
pvMethods Variant table of strings. Returns a list of method names that have been
configured in VBA.
piNumMethods Integer. Returns the number of methods returned in the Methods array.
ListProperties Method
Return a complete list of properties and their associated data types for the specified object.
Syntax
object.ListProperties pvProperties, pvDataTypes, piNumProperties
Properties
The ListProperties method syntax has these parts:
Part Description
pvProperties Variant array. Returns an array of property names for this object.
pvDataTypes Variant array. Returns an array of associated property types for the properties.
Remarks
ListProperties can be used to get a list of the object’s properties, which you can use to call the
600
IFIX Automation Reference
GetProperty method to extract the contents of the object. Generic import and export functions can be
built with these functions.
ListWindowsGroupNames Method
Returns a string array of Windows group names that map to iFIX security privileges.
Syntax
object.ListWindowsGroupNames bNT4NamesOnly
Properties
The ListWindowsGroupNames method syntax has these parts:
Part Description
bNT4NamesOnly Boolean. When False, returns an array of strings that contains all valid
Windows group names.
When True, returns only Windows group names that do not exceed twenty
characters. This satisfies the group name requirements of Windows NT 4.0.
Remarks
ListWindowsGroupNames reads the current iFIX security configuration to generate these names.
This method is used primarily by the CreateWindowsGroups.exe tool.
Load_TS_List Method
Loads a tag status list into the active Tag Control Panel Picture. The Tag Control Panel Picture can be
viewed when there are multiple tags associated with the selected object(s).
Syntax
object.Load_TS_List TagList
Properties
The Load_TS_List method syntax has these parts:
601
iFIX Automation Reference
Part Description
TagList An array of strings to be loaded into the tag control panel picture.
LoadImage Method
Loads the primary or secondary image at the specified index.
Syntax
object.LoadImage bPrimary, nIndex, bstrFileName
Properties
The LoadImage method syntax has these parts:
Part Description
bPrimary Boolean. If True, the primary image at the specified index is loaded. If False, the
secondary image is loaded.
nIndex Integer. The index of the image to load. This index is one-based.
bstrFileName String. The path and file name of the image to load.
LoadTagGroupFile Method
Loads a tag group file into the picture.
Syntax
object.LoadTagGroupFile bstrTagGroupFileName
Properties
The LoadTagGroupFile method syntax has these parts:
602
IFIX Automation Reference
Part Description
bstrTagGroupFileName String. The name of the tag group file to load into the picture.
Remarks
If there is already a tag group file associated with the picture, performs an unload. The unload of the
tag group would perform any clean up necessary. If the picture has not been resolved against the
passed tag group file it peforms a Resolve action – performing substitutions and establishing
connections; otherwise, it loads the correct stream from the tag group storage which will contain the
data system blob and substituted string information. The load will establish connections between the
picture tag group objects and the data source objects. It loops through the contained string list, reads
the substitution string from the tag group file and writes the value to the objects properties.
The load will validate the picture version and tag group file version. If either does not match the
current versions a re-resolve will occur. It also sends the messages informing linear and pen objects to
reset their EGU information and sends the message informing any pen objects to recheck their
historical data status.
LogicalToPercentage Method
Converts coordinates in logical units and converts them to percentage of screen space available. This is
useful if the user wishes to position a picture (whose window location is measured in screen
percentages) next to a shape (whose position is measured in logical units).
Syntax
object.LogicalToPercentage plfTop, plfLeft, [plfHeight], [plfWidth]
Properties
The LogicalToPercentage method syntax has these parts:
Part Description
plfTop Double. Specifies the logical top coordinate and returns the converted screen
percentage coordinate.
plfLeft String. The code to be written to the event in the form of strings.
603
iFIX Automation Reference
Part Description
plfHeight Double. Specifies the logical left coordinate and returns the converted screen
percentage coordinate.
plfWidth Double. (Optional) Specifies the width of the page in logical coordinates and returns
the width in screen percentage.
LogicalToUserFormPoint Method
Converts coordinates in logical units and converts them to “UserForm Point” coordinate, which is the
measure for position VBA user forms on screen.
Syntax
object.LogicalToUserFormPoint plfTop, plfLeft
Properties
The LogicalToUserFormPoint method syntax has these parts:
Part Description
plfTop Double. Specifies the logical top coordinate and returns the converted UserForm point
coordinate.
plfLeft Double. Specifies the logical left coordinate and returns the converted userform point
coordinate.
Remarks
Prior to performing the conversion, the StartUpPosition property of the form should be changed from
CenterOwner to either Manual or WindowsDefault. A setting of CenterOwner will result in the form
being popped up in the middle of the picture window.
604
IFIX Automation Reference
M-P
MakeLinesHorizontal Method
Makes the selected lines horizontal.
Syntax
object.MakeLinesHorizontal
Properties
The MakeLinesHorizontal method syntax has this part:
Part Description
MakeLinesVertical Method
Makes the selected lines vertical.
Syntax
object.MakeLinesVertical
Properties
The MakeLinesVertical method syntax has this part:
Part Description
MakeSameSize Method
Makes the currently selected object's specified dimensions the same size. It is the equivalent to
selecting MakeSameSize from the Format menu.
605
iFIX Automation Reference
Syntax
object.MakeSameSize type
Properties
The MakeSameSize method syntax has these parts:
Part Description
Remarks
MakeSameSize is a Configuration environment method only.
Modify Method
Displays the Modify Block dialog box for the specified block.
Syntax
object.Modify bstrFullyQualifiedName, bReadOnly, iStatus
Properties
The Modify method syntax has these parts:
Part Description
bstrFullyQualifiedName String. The fully qualified name of the block you want to modify.
bReadOnly Boolean. True if the block can only be showed, False if the block can
be modified.
606
IFIX Automation Reference
Part Description
Istatus
Long. Returns the error status value.
Return values are:
0 – OK
1 – Syntax error
2 – Data Undefined
3 – Data type mismatch
ModifyColumnLength Method
Modifies the specified column in the Legend to display the number of characters specified.
Syntax
object.ModifyColumnLength iColumn, iNumChars
Properties
The ModifyColumnLength method syntax has these parts:
Part Description
Move Method
Moves the object to a new position determined by the X and Y offsets.
Syntax
object.Move fXOffset, fYOffset
Properties
The Move method syntax has these parts:
607
iFIX Automation Reference
Part Description
fXOffset Double. The offset to move the shape in the horizontal direction in logical units.
fYOffset Double. The offset to move the shape in the vertical direction in logical units.
Open Method
Opens a Document in the WorkSpace. This is equivalent to selecting Open from the File menu.
Syntax
object.Open(Filename, [DisplayOption])
Properties
The Open method syntax has these parts:
Part Description
Filename String. The name of the file to open. The file name includes the full path and
extension. If a file name is not specified, the user is prompted to enter one.
Return Value
Object. The dispatch pointer to the opened Document.
Open_QT_Pic Method
Opens a Quick Trend Picture for the selected object(s) with a set of pens based on the first eight (8)
valid tags.
608
IFIX Automation Reference
NOTE: To allow a user to open multiple instances of the Quick Trend Picture, use the
Open_QT_Pic_Ex Method.
Syntax
object.Open_QT_Pic
Properties
The Open_QT_Pic method syntax has this part:
Part Description
Open_QT_Pic_Ex Method
Opens a Quick Trend Picture for the selected object(s) with a set of pens based on the first eight (8)
valid tags. This method allows you to do the same as the Open_QT_Pic Method, but allows for
multiple instances.
Syntax
object.Open_QT_Pic_Ex (OpenMultipleInstances)
Properties
The Open_QT_Pic_Ex method syntax has these parts:
Part Description
OpenMultipleInstances Integer. If set to 1 (true) another instance of the picture is opened. If set
to 0 (false), no additional instances of this picture are opened.
Open_TCP_Pic Method
Opens a Tag Control Panel Picture that displays up to 20 of the valid tags associated with the currently
selected object.
NOTE: To allow a user to open multiple instances of the Tag Control Panel Picture, use the
Open_TCP_Pic_Ex Method.
609
iFIX Automation Reference
Syntax
object.Open_TCP_Pic
Properties
The Open_TCP_Pic method syntax has this part:
Part Description
Open_TCP_Pic_Ex Method
Opens a Tag Control Panel Picture that displays up to 20 of the valid tags associated with the currently
selected object. This method allows you to do the same as the Open_TCP_Pic Method, but allows for
multiple instances.
Syntax
object.Open_TCP_Pic_Ex (OpenMultipleInstances)
Properties
The Open_TCP_Pic_Ex method syntax has these parts:
Part Description
OpenMultipleInstances Integer. If set to 1 (true) another instance of the picture is opened. If set
to 0 (false), no additional instances of this picture are opened.
Open_TS_Pic Method
Opens the Tag Status Picture for first found tag for the selected object(s).
NOTE: To allow a user to open multiple instances of the Tag Status Picture, use the Open_TS_Pic_Ex
Method.
Syntax
object.Open_TS_Pic
610
IFIX Automation Reference
Properties
The Open_TS_Pic method syntax has this part:
Part Description
Open_TS_Pic_Ex Method
Opens the Tag Status Picture for first found tag for the selected object(s). This method allows you to
do the same as the Open_TS_Pic Method, but allows for multiple instances.
Syntax
object.Open_TS_Pic_Ex (OpenMultipleInstances)
Properties
The Open_TS_Pic_Ex method syntax has these parts:
Part Description
OpenMultipleInstances Integer. If set to 1 (true) another instance of the picture is opened. If set
to 0 (false), no additional instances of this picture are opened.
Open_TS_Pic_Type Method
Specifies the type of Tag Status picture to open.
NOTE: To allow a user to open multiple instances of a Tag Status picture, use the
Open_TS_Pic_Type_Ex Method.
Syntax
object.Open_TS_Pic_Type (TSPicType, [TagList])
Properties
The Open_TS_Pic_Type method syntax has these parts:
611
iFIX Automation Reference
Part Description
TagList Variant. (Optional) An array of strings to be used in the tag status picture.
Open_TS_Pic_Type_Ex Method
Specifies the type of Tag Status picture to open. This method allows you to do the same as the
Open_TS_Pic_Type Method, but allows for multiple instances.
Syntax
object.Open_TS_Pic_Type (TSPicType, [TagList], OpenMultipleInstances)
Properties
The Open_TS_Pic_Type_Ex method syntax has these parts:
Part Description
OpenMultipleInstances Integer. If set to 1 (true) another instance of the picture is opened. If set
to 0 (false), no additional instances of the picture are opened.
612
IFIX Automation Reference
ParseConnectionSource Method
Parses the specified Data Source to determine if it is a valid connection.
Syntax
object.ParseConnectionSource bstrPropertyName, bstrSource, iStatus, pvaValidObjects,
pvaUndefinedObjects, bstrFullyQualifiedSource
Properties
The ParseConnectionSource method syntax has these parts:
Part Description
bstrSource String. The Data Source. This can be either a Data System data source
or a shape's property.
iStatus
Long. Returns the status of the connection.
Return values are:
0 – OK
1 – Invalid Syntax (Data Source could never exist
2 – Undefined Object (Data Source does not exist, could be added)
3 – Data Type Mismatch
pvaValidObjects Variant. Returns an array of objects that are identified as part of the
Data Source and are currently valid and used in the system.
pvaUndefinedObjects Variant. Returns an array of objects that are identified as part of the
Data Source but are not yet defined (Use Anyway objects).
bstrFullyQualifiedSource
Variant. Returns an array of objects that are identified as part of the
Data Source but are not yet defined (Use Anyway objects).
Remarks
The object that you apply this method to has a property that may be animated by another object.
Parsing checks to see the status of the Data Source and also checks to see if each object that is part of
the source is defined or undefined.
613
iFIX Automation Reference
ParseConnectionSource also checks complex expressions and returns individual sources. For
example, when used on AI1+AI2, the method will return AI1 and AI2 in the Valid or Undefined object
array.
Paste Method
Pastes the contents of the Clipboard into the document.
Syntax
object.Paste
Properties
The Paste method syntax has this part:
Part Description
Remarks
Paste is a Configuration environment method only.
PasteFromClipboard Method
Paste KeyMacros from the clipboard into the key macro collection
Syntax
object.PasteFromClipboard (Overwrite)
Properties
The PasteFromClipboard method syntax has these parts:
Part Description
614
IFIX Automation Reference
Part Description
Overwrite Boolean (optional). Indicates whether the to add the key macro objects from the
clipboard, or to remove all the existing key macro objects before adding the new key
macro objects.
False will simply add the new key macro objects to the collection, while True will
first clear the collection before adding the new key macro objects.
Note: While appending any key combinations found in the existing collection will be
overwritten by the key macro object from the clipboard. A prompt appears to state
that duplicates were found and asks whether you want to abort or continue.
PasteSpecial Method
Opens the Paste Special dialog box.
Syntax
object.PasteSpecial
Properties
The PasteSpecial method syntax has this part:
Part Description
Remarks
PasteSpecial is a Configuration environment method only.
Pause Method
Pauses the Chart.
Syntax
object.Pause
Properties
The Pause method syntax has this part:
615
iFIX Automation Reference
Part Description
Remarks
A paused Chart can resume displaying data by calling the Resume method. If Resume is not called,
the Chart will automatically resume after the time interval specified in the Timeout property.
PauseAlarmRead Method
Temporarily disables the alarm refresh rate and instructs the Alarm Summary object to stop updating
its spreadsheet.
Syntax
object.PauseAlarmRead
Properties
The PauseAlarmRead method syntax has this part:
Part Description
Remarks
Use the ResumeAlarmRead method to resume refreshing the Alarm Summary object.
PercentageToLogical Method
Converts coordinates in percentage of screen space available to logical units. This is useful if the user
wishes to position a picture (whose window location is measured in screen percentages) next to a shape
(whose position is measured in logical units).
Syntax
object.PercentageToLogical plfTop, plfLeft, [plfHeight], [plfWidth]
616
IFIX Automation Reference
Properties
The PercentageToLogical method syntax has these parts:
Part Description
plfTop Double. Specifies the top screen percentage coordinate and returns the converted
logical coordinate.
plfLeft Double. Specifies the left screen percentage coordinate and returns the converted
logical coordinate.
plfHeight
Double. (Optional) Specifies the height of the page in screen percentage and
returns the height in logical coordinates.
plfWidth
Double. (Optional) Specifies the width of the page in screen percentage and returns
the width in logical coordinates.
PercentageToPixel Method
Converts a screen percentage (i.e., a window location) to pixel coordinates that are relative to the
picture’s coordinate system. This is useful if the user is working with an ActiveX control which
requires inputs in the form of pixels.
Syntax
object.PercentageToPixel plfTop, plfLeft, [plfHeight], [plfWidth]
Properties
The PercentageToPixel method syntax has these parts:
Part Description
plfTop Double. Specifies the top screen percentage coordinate and returns the converted pixel
coordinate.
617
iFIX Automation Reference
Part Description
plfLeft Double. Specifies the left screen percentage coordinate and returns the converted
pixel coordinate.
plfHeight Double. (Optional) Specifies the height of the page in screen percentage and returns
the height in pixel coordinates.
plfWidth Double. (Optional) Specifies the width of the page in screen percentage and returns
the width in pixel coordinates.
PixelToPercentage Method
Converts pixel coordinates that are relative to the picture’s coordinate system to a screen percentage
(i.e., a window location).
Syntax
object.PixelToPercentage plfTop, plfLeft, [plfHeight], [plfWidth]
Properties
The PixelToPercentage method syntax has these parts:
Part Description
plfTop Double. Specifies the pixel top coordinate and returns the converted screen percentage
coordinate.
plfLeft Double. Specifies the pixel left coordinate and returns the converted screen
percentage coordinate.
plfHeight Double. (Optional) Specifies the height of the page in pixel coordinates and returns
the height in screen percentage.
plfWidth Double. (Optional) Specifies the width of the page in pixel coordinates and returns the
width in screen percentage.
618
IFIX Automation Reference
PrintChart Method
Sends the Enhanced Chart to the printer for output. Causes the Printer Setup dialog box to display.
Syntax
object.PrintChart enuSizeUnits, [dblWidth], [dblHeight]
Properties
The PrintChart method syntax has these parts:
Part Description
enuSizeUnits Enum/Long. Specifies in what units the image size is specified with dblWidth and
dblHeight. It can be either of type enumSizeUnits or a corresponding numerical
value, as follows:
SizeUnits_FullPage (0). Prints to the full page.
SizeUnits_Millimeters (1): in millimeters.
SizeUnits_Inches (2): in inches.
SizeUnits_Points (3): in Postscript points (1/72 inches).
NOTE: In order to use the enumSizeUnits enumerations, you must add the type
library file for object to the references of the VBA project. If the type library file is
not included in the references, then only numerical values are accepted. The type
libraries for objects in the Applied To list are as follows:
619
iFIX Automation Reference
Part Description
dblWidth Double. Specifies the width of the printed image, in the units specified in
enuSizeUnits. This parameter is optional and ignored when SizeUnits_FullPage is
specified.
dblHeight Double. Specifies the height of the printed image, in the units specified in
enuSizeUnits. This parameter is optional and ignored when SizeUnits_FullPage is
specified.
Remarks
The aspect ratio must be between 0.1 and 10.
PrintOut Method
Prints the Document object.
Syntax
object.PrintOut()
Properties
The PrintOut method syntax has this part:
Part Description
Return Value
Boolean. True if printing was successful; False otherwise.
PromptToChangePassword Method
Displays the Change Password dialog box and allows the user to change his password.
Syntax
object.PromptToChangePassword(bstrUsername, [bstrDomain])
620
IFIX Automation Reference
Properties
The PromptToChangePassword method syntax has these parts:
Part Description
bstrDomain String. (Optional). The Windows domain name where the user account is
located. For a local user account, omit or pass an empty string.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
Q-R
Quit Method
Shuts down the WorkSpace, closing all documents and saving them, if specified.
Syntax
object.Quit [SaveChanges]
Properties
The Quit method syntax has these parts:
Part Description
621
iFIX Automation Reference
Part Description
Read Method
Reads in the Value, Timestamp, and Quality of the data source represented by the DataItem.
Syntax
object.Read
Properties
The Read method syntax has this part:
Part Description
Refresh Method
Repaints an object.
Syntax
object.Refresh
Properties
The Refresh method syntax has this part:
Part Description
622
IFIX Automation Reference
RefreshChartData Method
Refetches and replots data in an Enhanced Chart (HistogramChart, LineChart, SPCBarChart, or
XYChart Object. object).
Syntax
object.RefreshChartData
Properties
The RefreshChartData method syntax has this part:
Part Description
Remove Method
Removes a member from the specified collection.
Syntax
object.Remove lIndex
Properties
The Remove method syntax has these parts:
Part Description
lIndex Long. An expression that specifies the position of a member of the collection. If a
numeric expression, index must be a number from 1 to the value of the Collection's
Count property.
623
iFIX Automation Reference
Properties
The Remove method syntax has these parts:
Part Description
tIndex Variant. An expression that specifies the position of a member of the collection. If a
numeric expression, index must be a number from 1 to the value of the Collection's
Count property. If a string expression, the index is the object name.
RemoveAll Method
Removes all members from a Lines collection.
Syntax
object.RemoveAll
Properties
The RemoveAll method syntax has this part:
Part Description
RemoveAllLevels Method
Removes all levels from the Lookup table.
Syntax
object.RemoveAllLevels
Properties
The RemoveAllLevels method syntax has this part:
624
IFIX Automation Reference
Part Description
RemoveItem Method
Removes the specified column from the Legend.
Syntax
object.RemoveItem iColumn
Properties
The RemoveItem method syntax has these parts:
Part Description
RemoveKeyMacro Method
Deletes the key macro object defined by key combination, if one exists.
Syntax
object.RemoveKeyMacro (variant )
Properties
The RemoveKeyMacro method syntax has these parts:
Part Description
625
iFIX Automation Reference
RemoveLegendItem Method
Removes the specified Legend item.
Syntax
object.RemoveLegendItem szItem
Properties
The RemoveLegendItem method syntax has these parts:
Part Description
RemoveLevel Method
Removes a level based on the index.
Syntax
object.RemoveLevel iIndex
626
IFIX Automation Reference
Properties
The RemoveLevel method syntax has these parts:
Part Description
RemoveObject Method
Removes the specified object from a schedule.
Syntax
object.RemoveObject bstrObjectName
Properties
The RemoveObject method syntax has these parts:
Part Description
Remarks
It is necessary to call the DoMenuCommand method for the schedule with the scHREFreshView
parameter in order for the object to appear as removed from the Schedule.
RemovePictureFromStartupList Method
Removes pictures from the Proficy iFIX WorkSpace's startup lists. The startup lists determine the
pictures that will be opened automatically when the WorkSpace starts.
Syntax
object.RemovePictureFromStartupList bstrPictureName, bMode
627
iFIX Automation Reference
Properties
The RemovePictureFromStartupList method syntax has these parts:
Part Description
bstrPictureName String. Name of the picture to be removed from the startup list. You must
include the file path and extension
bMode Boolean. Specifies whether to remove the picture when the WorkSpace starts
in the Configuration environment or in the Runtime environment.
Valid entries:
0 – AppConfigurePicturePreferences
1 – AppRunPicturePreferences
ReplaceDocument Method
Replaces the existing document with a new Document in the existing document's window.
Syntax
object.ReplaceDocument(FileName)
Properties
The ReplaceDocument method syntax has these parts:
Part Description
Return Value
Object. The dispatch pointer to the new Document.
Remarks
If possible, always make this call the last line in your script. Note that when the ReplaceDocument
method is used, and the document being replaced is the document that contains the script, the call must
be the last line in the script. Otherwise, you may experience unexpected behavior when executing the
628
IFIX Automation Reference
script.
If the ReplaceDocument method is not called from the picture being replaced and is not the last line in
your script, be certain that the operation is complete before the rest of the script continues to execute.
Immediately after making the call, you must relinquish the CPU by calling DoEvents. For example, the
following sample script replaces the active Document with the picture TestPicture, and then saves it
without prompting.
DoEvents
ReplaceInString Method
Replaces a match occurrence in one string with another string.
Syntax
object.ReplaceInString pbstrTargetString, bstrReplacementString, bstrMarkedMatchString,
lFirstChar, lCharCount, lFlags, pbstrResultString, pbSuccess
Properties
The ReplaceInString method syntax has these parts:
Part Description
lFirstChar Long. One-based index of the first character to be replaced in the target
string returned from a previous FindInString method call.
629
iFIX Automation Reference
Part Description
pbstrResultString String. Returns the new string with the specified replacement.
Remarks
Calling ReplaceInString after calling FindInString produces the same result as calling the
FindReplaceInString method.
Replace_QT_Pic Method
Replaces the current picture with a Quick Trend picture.
Syntax
object.Replace_QT_Pic
Properties
The Replace_QT_Pic method syntax has this part:
Part Description
Replace_TCP_Pic Method
Replaces the current picture with a Tag Control Panel picture.
630
IFIX Automation Reference
Syntax
object.Replace_TCP_Pic
Properties
The Replace_TCP_Pic method syntax has this part:
Part Description
Replace_TS_Pic Method
Replaces the current picture with a Tag Status picture.
Syntax
object.Replace_TS_Pic
Properties
The Replace_TS_Pic method syntax has this part:
Part Description
Replace_TS_Pic_Type Method
Replaces the current picture with the specified Tag Status picture type.
Syntax
object.Replace_TS_Pic_Type TSPicType; [TagList]
Properties
The Replace_TS_Pic_Type method syntax has these parts:
631
iFIX Automation Reference
Part Description
TagList Variant. (Optional) An array of strings to be used in the tag status picture.
ResetChartData Method
Resets the data displayed in a Chart.
Syntax
object.ResetChartData
Properties
The ResetChartData method syntax has this part:
Part Description
ResetObjectStats Method
Resets the statistics for the specified objects.
Syntax
object.ResetObjectStats vObjectNames
Properties
The ResetObjectStats method syntax has these parts:
632
IFIX Automation Reference
Part Description
ObjectNames Variant. The object(s) for which you want to reset statistics.
Valid entries:
0 – All Objects
1 – All Timer Objects
2 – All Event Objects
A string containing the name of the object to reset.
A list of objects to reset.
ResetStats Method
Resets the statistics of the Timer or Event object to zero, including the number of times fired, and the
time stamp of the last time fired.
Syntax
object.ResetStats
Properties
The ResetStats method syntax has this part:
Part Description
ResetZoom Method
Resets the Chart to its default viewing area.
Syntax
object.ResetZoom
Properties
The ResetZoom method syntax has this part:
633
iFIX Automation Reference
Part Description
Remarks
ResetZoom is used to reset the Chart to its default state after calling the Zoom method.
ResolveTagGroupFile Method
Resolves the picture against the passed tag group file.
Syntax
object.ResolveTagGroupFile bstrTagGroupFileName
Properties
The ResolveTagGroupFile method syntax has these parts:
Part Description
bstrTagGroupFileName String. The name of the tag group file to resolve the picture against.
Remarks
This method loops through the list of tag group objects in the picture, performs the necessary
substitutions based on the definitions in the tag group file, and establishes connections with these data
sources. It then persists identifying information of the picture and tag group file, a list of the complete
strings after substitution, and the connection information into a unique stream in the tag group storage.
Once this is saved, all the connections between the tag group objects and data sources will be broken.
Resume Method
Resumes the Chart after it has been paused.
Syntax
object.Resume
634
IFIX Automation Reference
Properties
The Resume method syntax has this part:
Part Description
Remarks
Resume is used to resume the chart after calling the Pause method.
ResumeAlarmRead Method
Resumes updating the Alarm Summary object after it has been paused.
Syntax
object.ResumeAlarmRead
Properties
The ResumeAlarmRead method syntax has this part:
Part Description
Remarks
Use the ResumeAlarmRead method after calling the PauseAlarmRead method.
RetrieveDefinition Method
Retrieves the definitions contained in a tag group file.
Syntax
object.RetrieveDefinition TagGroupName, Count, TokenList, ReplacementList, DescriptionList
635
iFIX Automation Reference
Properties
Part Description
TagGroupName String. The name of the tag group file in the Picture path to open.
TokenList Variant. The array of symbols. The array index ranges from 0 to Count-1.
ReplacementList Variant. The array of substitutions. The array index ranges from 0 to Count-1.
DescriptionList Variant. The array of descriptions associated with each substitution. The array
index ranges from 0 to Count-1.
RetrieveTagGroupVariables Method
Retrieves a list of all tag group references in the picture, including connections, string substitutions,
and scripts.
Syntax
object.RetrieveTagGroupVariables intCountOfVars, varTagGroupVars
Properties
The RetrieveTagGroupVariables method syntax has these parts:
Part Description
Remarks
The tag group reference list will only contain the tag group symbols, not the full syntax of partial
substitutions. The list will have a single entry per tag group symbol regardless of the number of uses.
636
IFIX Automation Reference
Rotate Method
Rotates the shape according to the angle, specified in either degrees or radians.
Syntax
object.Rotate fAngle, bInRadians
Properties
The Rotate method syntax has these parts:
Part Description
bInRadians Boolean. If True, rotate the object by the specified angle in radians. If False, rotate
the object by the specified angle in degrees.
RunObject Method
Starts or stops the Timer and/or Event from running.
Syntax
object.RunObject vObjectNames, bRunStatus
Properties
The RunObject method syntax has these parts:
Part Description
637
iFIX Automation Reference
Part Description
ObjectNames Variant. The object(s) for which you want to reset statistics.
Valid entries:
0 - All Objects
1 - All Timer Objects
2 - All Event Objects
A string containing the name of the object to reset.
A list of objects to reset.
bRunStatus Boolean. If True, the event is running. If False, the event is stopped.
Remarks
To stop an event that is running, pass in False for bRunStatus.
Save Method
Saves the Document to disk. When called off the Documents Collection, this method saves all open
documents in the Proficy iFIX WorkSpace. This is equivalent to selecting SaveAll from the File menu.
When used with the Document object, this method saves the Document object with the optionally
specified file name.
Properties
The Save method syntax has these parts:
Part Description
Prompt Boolean. (Optional) If True, prompt the user to save changes. If False, do not prompt
the user. (default)
638
IFIX Automation Reference
Remarks
Note that if the Save method for the Documents Collection is called for newly created pictures, the
user is prompted to save changes regardless of the value specified in bPrompt. This is because pictures
cannot be saved as their default name (e.g. “Untitled#”).
Properties
The Save method syntax has these parts:
Part Description
PromptToSave Boolean. (Optional) If True, prompt the user before saving. (default)
Remarks
If the Save method for the Document object is called for newly created pictures, the user is prompted
to save changes regardless of the value specified in PromptToSave. This is because pictures cannot be
saved as their default name (e.g. “Untitled#”). The user must also specify the appropriate extension for
the document type in the filename. The following table contains the extensions and their document
types.
639
iFIX Automation Reference
If the Save method for the Document object is called for an existing file, the file is overwritten. You
may want to check for file existence before calling the Save method.
Note that if the Save method is called using the Save [Filename] syntax, a Save As operation is
performed.
Save_TS_List Method
Saves the tag status list to the Tag Status subdirectory of the PIC folder in your iFIX installation
location. The tag status list is saved as a ".tags" file.
Syntax
object.Save_TS_List
Properties
The Save_TS_List method syntax has this part:
Part Description
SaveAsSVG Method
Saves pictures as Scalable Vector Graphics, with a .svg extension.
NOTE: Proficy Portal uses the SVG format for importing picture files.
Syntax
object.SaveAsSVG
Properties
The SaveAsSVG method syntax has this part:
Part Description
640
IFIX Automation Reference
SaveToHistoryList Method
Places the specified string in the history list of the animation expression control. It will subsequently
appear in the history drop-down combo box of the animation dialogs, VBA forms which contain an
expression control (such as the animation experts) and chart pen configuration.
Syntax
object.SaveToHistoryList szHistoryItem
Properties
The SaveToHistoryList method syntax has these parts:
Part Description
Return Value
Integer. Returns 1 if the operation was successful.
ScrollBack Method
Scrolls back in the Chart by the factor specified in the chart’s ScrollPercentage property.
Syntax
object.ScrollBack
Properties
The ScrollBack method syntax has this part:
Part Description
641
iFIX Automation Reference
ScrollForward Method
Scrolls forward in the Chart by the factor specified in the chart’s ScrollPercentage property.
Syntax
object.ScrollForward
Properties
The ScrollForward method syntax has this part:
Part Description
ScrollTimeBack Method
Scrolls time back in the specified Pen by the factor specified in the pen’s ScrollPercentage property.
Syntax
object.ScrollTimeBack
Properties
The ScrollTimeBack method syntax has this part:
Part Description
ScrollTimeForward Method
Scrolls time forward in the specified Pen by the factor specified in the pen’s ScrollPercentage
property.
Syntax
object.ScrollTimeForward
642
IFIX Automation Reference
Properties
The ScrollTimeForward method syntax has this part:
Part Description
Select Method
Selects the specified object.
Syntax
object.Select
Properties
The Select method syntax has this part:
Part Description
SelectAlarmRow Method
Selects a row in the Alarm Summary object.
Syntax
object.SelectAlarmRow(RowNum As Integer, bSelect As Boolean) As Integer
Properties
The SelectAlarmRow method syntax has these parts:
Part Description
643
iFIX Automation Reference
Part Description
RowNum Integer. The row in the Alarm Summary object’s spreadsheet you want to select.
Row numbers start at 1 and you can specify any row even if it is not visible on the
screen.
bSelect Boolean. When True, the row is selected. When False, the row is not selected.
Return Value
Zero. Reserved for future use.
Remarks
Selecting a row that is not displayed on the screen does not cause the spreadsheet to scroll to the
selected row.
If you select a row that is not visible, you will not receive the Acknowledgement status, the Latched
Alarm status, the Value, and the User Defined Columns when calling the GetSelectedRow or
GetSelectedUserDefFields methods. You can work around this by reading these values after calling
the GetSelectedRow method.
SelectAll Method
Selects all objects in the document.
Syntax
object.SelectAll
Properties
The SelectAll method syntax has this part:
Part Description
SelectObject Method
Selects the specified object and/or group of objects.
644
IFIX Automation Reference
Syntax
object.SelectObject bSingleSelect
Properties
The SelectObject method syntax has these parts:
Part Description
bSingleSelect Boolean. If True, the user is only allowed to do single object selection. If False,
the user is allowed to select multiple objects.
Remarks
When bSingleSelect is False, the SelectObject method performs object selection as if the user is
holding the CTRL key when clicking on objects to select them.
SendOperatorMessage Method
Sends an event message to the specified node. If no node is specified, it the message is sent to the local
node This message is sent to all of the typers including the alarm history window.
Syntax
object.SendOperatorMessage Text, [NodeName]
Properties
The SendOperatorMessage method syntax has these parts:
Part Description
645
iFIX Automation Reference
SendSignedOperatorMessage Method
Sends the signed operator message to the alarm system.
Syntax
object.SendSignedOperatorMessage(bstrMessageText, bstrNodeName, bstrTagName,
bstrPerformedByUserID, [bstrPerformComment], [bstrVerifiedByUserID], [bstrVerifyComment])
Properties
The SendSignedOperatorMessage method syntax has these parts:
Part Description
bstrNodeName String. Name of the SCADA node the you made the change on.
bstrTagName String. Name of the tag that has been changed (may be empty string).
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
SendToBack Method
Moves the selected object to the back of the stack of objects, making it the bottom object in the stack.
It is equivalent to selecting Send To Back from the Format menu.
646
IFIX Automation Reference
Syntax
object.SendToBack
Properties
The SendToBack method syntax has this part:
Part Description
Remarks
SendToBack is a Configuration environment method only.
If you select several objects and call SendToBack, the selected objects are placed at the bottom of the
stack, however, they keep their positions relative to one other. The SendToBack method is useful for
creating complex shapes and using stacking or masking techniques.
SetContinuousUser Method
Sets the continuous user.
Syntax
object.SetContinuousUse(bstrUserName)
Properties
The SetContinuousUser method syntax has these parts:
Part Description
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
647
iFIX Automation Reference
SetCurrrentValue Method
Sets the current value, time and quality for a Pen.
Syntax
object.SetCurrentValue cValue, dt, lQual
Properties
The SetCurrentValue method syntax has these parts:
Part Description
dt Date. The date at which to set the value for the Pen.
lQual Long. The quality at which to set the value for the Pen.
SetDispatch Method
Reserved for internal purposes.
SetDispid Method
Reserved for internal purposes.
SetDuration Method
Sets the length of time to display the Chart.
Syntax
object.SetDuration days, hours, minutes, seconds
Properties
The SetDuration method syntax has these parts:
648
IFIX Automation Reference
Part Description
SetGlobalDuration Method
Sets the GlobalDuration property of the the Global Time Control.
Syntax
object.SetGlobalDuration days, hours, minutes, seconds
Properties
The SetGlobalDuration method syntax has these parts:
Part Description
SetGlobalHistoricalUpdateRate Method
Sets the historical update rate for the historical data sources in run mode.
649
iFIX Automation Reference
Syntax
object.SetGlobalHistoricalUpdateRate hrs, mins, secs
Properties
The SetGlobalHistoricalUpdateRate method syntax has these parts:
Part Description
SetGlobalMovingEndTimeToCurrent Method
Sets the end time of the Global Time Control to the current time.
Syntax
object.SetGlobalMovingEndTimeToCurrent
Properties
The SetGlobalMovingEndTimeToCurrent method syntax has this part:
Part Description
SetFocusToComboBox Method
Sets focus to the ComboBox field of the ExpressionEditor.
Syntax
object.SetFocusToComboBox
650
IFIX Automation Reference
Properties
The SetFocusToComboBox method syntax has this part:
Part Description
SetIndirectionInfo Method
Reserved for internal purposes.
SetInterval Method
Sets the interval of time to elapse between data points in a Chart.
Syntax
object.SetInterval days, hours, minutes, seconds
Properties
The SetInterval method syntax has these parts:
Part Description
SetKeyCombination Method
Used to set both the KeyCode and CombinationKey simultaneously.
651
iFIX Automation Reference
Syntax
object.SetKeyCombination (ComboKey, KeyCode)
Properties
The SetKeyCombination method syntax has these parts:
Part Description
KeyCode Integer. The ASCII value of the main key of the key combination.
SetLegendMask Method
Indicates which legend items to show in the HistoricalDataSet, RealTimeDataSet, or
RealTimeSPCDataSet object.
Syntax
object.SetLegendMasklngMask
Properties
The SetLegendMask method syntax has these parts:
Part Description
652
IFIX Automation Reference
Part Description
lngMask A value that represents the Legend items to show in the data set:
LegendMaskSourceName (1)
LegendMaskDescription (2)
LegendMaskCurrentValue(4)
LegendMaskLowLimit (8)
LegendMaskHighLimit (16)
LegendMaskAvgOverRange (32)
LegendMaskLowOverRange (64)
LegendMaskHighOverRange (128)
LegendMaskQuality (256)
NOTE: In order to use the lngMask enumerations, you must add the type library file for
object to the references of the VBA project. If the type library file is not included in the
references, then only numerical values are accepted. The type libraries for objects in the
Applied To list are as follows:
Remarks
Calling this method is functionally equivalent to setting the LegendMask property. However, if the
type library is included in the project references, VBA's IntelliSense will display a user-friendly list of
legend mask symbols while you are typing in the VBA Code Window, and there is no need to
memorize or look up for numerical values of the legend mask.
For example, if you are combining multiple mask values using the bitwise OR operation, such as
and you want VBA IntelliSens to display the list repeatedly, you need only to type the vertical bar (the
OR operator) before the first mask value, move the cursor before it, and invoke the menu item by
pressing Ctrl + Shit + J.
653
iFIX Automation Reference
SetNumericFormat Method
Sets the format of a numeric value.
Syntax
object.SetNumericFormat [vaWholeDigits], [vaDecimalDigits], [vaJustify]
Properties
The SetNumericFormat method syntax has these parts:
Part Description
SetPenDataArray Method
Creates a static Pen in a Chart with the specified data. Used to add pens from other data sources.
Syntax
object.SetPenDataArray lNumPoints, pValue, pTime, pQuality
Properties
The SetPenDataArray method syntax has these parts:
Part Description
654
IFIX Automation Reference
Part Description
pValue Double array. An array of values for the points in the Pen.
pTime Date array. An array of times for the points in the Pen.
pQuality Long array. An array of qualities for the points in the Pen. Use OPC quality values.
SetPointAt Method
Modifies the location of the point at the given index to location specified.
Syntax
object.SetPointAt lIndex, pdispPoint
Properties
The SetPointAt method syntax has these parts:
Part Description
Remarks
A point is an OLE object specifying a point object to add to the list of existing data points. The point
object has an (x, y) pair that contains the logical coordinate of the data point (see FixFloatPoint.)
SetPriorityColor Method
Sets the row background color to display for the alarms with the specified alarm priority.
655
iFIX Automation Reference
Syntax
object.SetPriorityColor PriorityId, PriorityColor
Properties
The SetPriorityColor method syntax has these parts:
Part Description
PriorityColor OLE_COLOR. The row background color to display for the alarms with the
alarm priority.
SetProperty Method
Sets the specified property to the specified value for the given object.
Syntax
object.SetProperty bstrPropertyName, vaValue
Properties
The SetProperty method syntax has these parts:
Part Description
656
IFIX Automation Reference
Part Description
Remarks
Calling iOval.SetProperty “ForegroundColor”, 255 is equivalent to executing iOval.ForegroundColor
= 255.
SetScriptWindow Method
Instantiates the Visual Basic Editor for the specified event for the currently selected object.
Syntax
object.SetScriptWindow bCreateIfEmpty,bstrEventName
Properties
The SetScriptWindow method syntax has these parts:
Part Description
bCreateIfEmpty Boolean. If True, the default event procedure should be prototyped in VBA if
there are no procedures present for this object.
bstrEventName String. The name of the event procedure to display in the code window.
Remarks
SetScriptWindow is a Configuration environment method only.
SetSource Method
Sets up the source connection properties for the animation object. This method is used instead of
directly setting the animation object’s source property if additional properties have to be specified for
the connection.
657
iFIX Automation Reference
Syntax
object.SetSource bstrExpression, [bUseAnyway], [vaUpdateRate], [vaDeadband], [vaTolerance],
[vaConnectionFlags]
Properties
The SetSource method syntax has these parts:
Part Description
aUpdateRate Float. (Optional) The value at which to set the update rate for the connection.
aDeadband Float. (Optional) The value at which to set the deadband for the connection.
aTolerance Float. (Optional) The value at which to set the tolerance for the connection.
Remarks
The vaTolerance parameter only applies in expressions and exact match tables.
SetStatusColor Method
Sets the row foreground color to display for the alarms with the specified status.
Syntax
object.SetStatusColor StatusId, StatusColor
Properties
The SetStatusColor method syntax has these parts:
658
IFIX Automation Reference
Part Description
SetStatusFont Method
Sets the font for alarms with the specified status.
Syntax
object.SetStatusFont nStatusID, lpszFaceName, bStrikeout, bUnderline, bBold, bItalic
659
iFIX Automation Reference
Properties
The SetStatusFont method syntax has these parts:
Part Description
bStrikeout Boolean. Specifies the Strikeout option for the text. If True, the text appears
with a line through it.
660
IFIX Automation Reference
Part Description
Remarks
SetStatusFont is a Configuration environment method only.
SetStringFormat Method
Sets the raw formatting for a string value.
Syntax
object.SetStringFormat [pFormat]
Properties
The SetStringFormat method syntax has these parts:
Part Description
SetTabSelection Method
Specifies which tabs of the expression editor dialog are displayed.
Syntax
object.SetTabSelection(TabIndex)
Properties
The SetTabSelection method syntax has these parts:
661
iFIX Automation Reference
Part Description
TabIndex Integer. The value that corresponds to which tabs are displayed.
Return Value
Boolean. Returns True if the operation was successful, False otherwise.
SetTimeBeforeNow Method
Sets the time for a Chart based on a value that is some time before the current time.
Syntax
object.SetTimeBeforeNow hours, minutes, seconds
Properties
The SetTimeBeforeNow method syntax has these parts:
Part Description
hours Long. The number of hours before now to set the Chart to.
minutes Long. The number of minutes before now to set the Chart to.
seconds Long. The number of seconds before now to set the Chart to.
Remarks
Calling the SetTimeBeforeNow method with an hours parameter of 2, minutes parameter of 0 and
seconds parameter of 0 causes the Chart to display data that occurred 2 hours before the current time.
This eliminates the need to calculate the Chart time based on the current time.
SetTimeCursorTime Method
Sets the time for the Time Cursor position. The time of the Time Cursor is specified relative to a Pen,
662
IFIX Automation Reference
Syntax
object.SetTimeCursorTime dt, lPenNum
Properties
The SetTimeCursorTime method syntax has these parts:
Part Description
lPenNum Long. The index of the pen in the pen array for which you want to set the Time
Cursor.
Remarks
The time of the Time Cursor is specified relative to a Pen, since pens can have different times on the
same Chart.
SetWindowLocation Method
Sets the window’s size and location in terms of percentage of the screen.
Syntax
object.SetWindowLocation lfTopPct, lfLeftPct, lfHeightPct, lfWidthPct, [bRedraw],
[bDesiredLocation], [bClampWindow]
Properties
The SetWindowLocation method syntax has these parts:
Part Description
LfTopPct Double. The top percentage of the window relative to the WorkSpace client
area.
663
iFIX Automation Reference
Part Description
LfLeftPct Double. The left percentage of the window relative to the WorkSpace client
area.
Remarks
The lfTopPct parameter sets the window’s location relative to the WorkSpace’s MDI Client area origin
and the lfLeftPct parameter sets the window’s location relative to the absolute screen resolution’s
origin.
Calling the SetWindowLocation will not alter the location of the document that is saved to disk. To
alter the window location that is saved to disk, set the WindowHeightPercentage,
WindowLeftPercentage, WindowTopPercentage, and WindowWidthPercentage properties.
ShowAnimations Method
Opens the Animation dialog box for the currently selected object.
Syntax
object.ShowAnimations
Properties
The ShowAnimations method syntax has this part:
664
IFIX Automation Reference
Part Description
ShowBrowseDialog Method
Opens the ExpressionEditor dialog box.
Syntax
object.ShowBrowseDialog
Properties
The ShowBrowseDialog method syntax has this part:
Part Description
ShowColorBox Method
Opens the color dialog box for the Color Button object.
Syntax
object.ShowColorBox
Properties
The ShowColorBox method syntax has this part:
Part Description
ShowColorSelection Method
Opens or closes the color selection dialog box for the currently selected object.
665
iFIX Automation Reference
Syntax
object.ShowColorSelection bShow
Properties
The ShowColorSelection method syntax has these parts:
Part Description
bShow Boolean.
True – Opens the dialog box.
False – Closes the dialog box.
Remarks
ShowColorSelection is a Configuration environment method only.
ShowCustomPages Method
Displays custom pages associated with the object.
Syntax
object.ShowCustomPages
Properties
The ShowCustomPages method syntax has this part:
Part Description
ShowPipePreviewDialog Method
Displays the Modify Pipe Characteristics dialog box for the selected pipe object.
666
IFIX Automation Reference
Syntax
object.ShowPipePreviewDialog
Properties
The ShowPipePreviewDialog method syntax has this part:
Part Description
ShowTaskWizard Method
Opens the WorkSpace’s Task Wizard dialog box.
Syntax
object.ShowTaskWizard
Properties
The ShowTaskWizard method syntax has this part:
Part Description
ShowVBAProcedure Method
Creates a procedure to receive the focus in the code window by concatenating the script name of the
object with the procedure name.
Syntax
object.ShowVBAProcedure (bstrProcName, [objObject])
Properties
The ShowVBAProcedure method syntax has these parts:
667
iFIX Automation Reference
Part Description
bstrProcName String. The name of the procedure or event to be located in the VBA code
window.
Object Object. The name of the object to which the procedure or event is associated.
Remarks
If the object is omitted, the procedure name is used by itself. If the procedure is not found, the focus
will be set to the top of the script window. For example, to set the code window to Rect2’s Mouse
Down event, you would make the following call:
ShowVBAProcedure("MouseDown", Rect2)
To find any subroutine within the picture’s project, you would make the following call:
ShowVBAProcedure("MySubProcedure")
ShowVisualBasicEditor Method
Opens the WorkSpace’s Visual Basic Editor.
Syntax
object.ShowVisualBasicEditor
Properties
The ShowVisualBasicEditor method syntax has this part:
Part Description
SilenceAlarmHorn Method
Silences the alarm horn.
668
IFIX Automation Reference
Syntax
AlarmHornSilence ([intErrorMode])
Properties
The SilenceAlarmHorn method syntax has this part:
Part Description
Remarks
The alarm horn must be enabled for this method to work. If you call this method and the alarm horn is
disabled, no error will be reported.
SnapObjectsToGrid Method
Snaps the currently selected object to the grid. It is equivalent to selecting SnapObjectsToGrid from
the Format menu.
Syntax
object.SnapObjectsToGrid
Properties
The SnapObjectsToGrid method syntax has this part:
Part Description
Remarks
SnapObjectsToGrid is a Configuration environment method only.
This method only works when the GridEnabled property of the Picture or Dynamo Set is set to
True.
669
iFIX Automation Reference
SpaceEvenly Method
Positions a group of selected objects so that the amount of horizontal or vertical space between them is
equal.
Syntax
object.SpaceEvenly type
Properties
The SpaceEvenly method syntax has these parts:
Part Description
type Integer.
Valid entries:
0 – Horizontal
1 – Vertical
Remarks
SpaceEvenly is a Configuration environment method only.
StartEvent Method
Enables the Event object to fire its events when data changes.
Syntax
object.StartEvent
Properties
The StartEvent method syntax has this part:
Part Description
670
IFIX Automation Reference
StartTimer Method
Starts the Timer object.
Syntax
object.StartTimer
Properties
The StartTimer method syntax has this part:
Part Description
Remarks
StartTimer is a Run-time environment only method that will only start the Timer if its
TimerEnabled property is set to True.
StickToCursor Method
Causes a shape object to stick to the cursor upon creation.
Syntax
object.StickToCursor
Properties
The StickToCursor method syntax has this part:
Part Description
Remarks
StickToCursor is a Configuration environment method only. It allows the user to have functionality
for all shapes similar to that which occurs when the user selects CurrentTime from the Insert menu.
671
iFIX Automation Reference
StopEvent Method
Disables the Event object from firing its events when data changes.
Syntax
object.StopEvent
Properties
The StopEvent method syntax has this part:
Part Description
StopTimer Method
Stops the Timer.
Syntax
object.StopTimer
Properties
The StopTimer method syntax has this part:
Part Description
Stretch Method
Scales the shape according to the percentage of scale entered for the shape's Height and Width.
Syntax
object.Stretch fXPercentage, fYPercentage
672
IFIX Automation Reference
Properties
The Stretch method syntax has these parts:
Part Description
SwitchLanguage Method
Changes the displayed text strings of the specified picture from one language to another.
The method Object.SwitchLanguage (xxxx), uses the specified language to switch language.
Syntax
object.SwitchLanguage [LanguageDesired as Long]
Properties
The SwitchLanguage method syntax has these parts:
Part Description
673
iFIX Automation Reference
Part Description
LanguageDesired Long
(Optional) Default
CA_Catalan
CS_Czech
DA_Danish
DE_German
EL_Greek
EN_English
ES_Spanish
FI_Finnish
HU_Hungarian
IT_Italian
JA_Japanese
KO_Korean
NL_Dutch
NO_Norwegian
PL_Polish
RU_Russian
SR_Cyrillic
HR_Croatian
SK_Slovak
SV_Swedish
TH_Thai
TR_Turkish
IN_Indonesian
SL_Slovenian
EU_Basque
ZHTW_Chinese - Taiwan
FR_French
PTBR_Brazilian Portuguese
PT_Portuguese
ZHCH_Chinese PRC
FRCA_French Canadian
SwitchMode Method
Sets the mode of the WorkSpace.
Syntax
object.SwitchMode bMode
Properties
The SwitchMode method syntax has these parts:
674
IFIX Automation Reference
Part Description
Remarks
If possible, always make this call the last line in your script. Note that when the SwitchMode method
is used from anywhere other than a toolbar, the call must be the last line in the script. Otherwise, you
may experience unexpected behavior when executing the script. Otherwise, you may experience
unexpected behavior when executing the script.
If the SwitchMode method is made from a toolbar and is not the last line in your script, be certain that
the operation is complete before the rest of the script continues to execute. Immediately after making
the call, you must relinquish the CPU by calling DoEvents. For example, the following sample script
sets the mode of the WorkSpace to run mode, then opens the picture TestPicture:
Application.SwitchMode 4
DoEvents
SynchronizeSecurity Method
Performs the entire security synchronization process based on the property values set before this
method is called. This method returns no values.
Syntax
object.SynchronizeSecurity
Properties
The SynchronizeSecurity method syntax has this part:
Part Description
675
iFIX Automation Reference
Remarks
The actions performed during the synchronization process include the following:
Depending on the size of your Windows and iFIX security configurations, this method may take longer
to complete because it performs a great amount of work.
TagGroupSubstitution Method
Returns the substitution string supplied by the user in the tag group file.
Syntax
object.TagGroupSubstitution bstrTagGroupSymbol
Properties
The TagGroupSubstitution method syntax has these parts:
Part Description
Remarks
This method returns the tag group substitution associated with the passed tag group symbol, or an
empty string if not found.
676
IFIX Automation Reference
TagGroupValue Method
Returns the value of the tag group substitution string of the passed tag group symbol.
Syntax
object.TagGroupValue bstrTagGroupSymbol
Properties
The TagGroupValue method syntax has these parts:
Part Description
Remarks
This method returns a variant containing the value of the item in the substitution string. The variant
will be empty if the method fails.
U-Z
UIActivate Method
Sets the object in its custom active mode.
Syntax
object.UIActivate
Properties
The UIActivate method syntax has this part:
Part Description
677
iFIX Automation Reference
UIDeActivate Method
Sets the object in its custom inactive mode.
Syntax
object.UIDeActivate
Properties
The UIDeActivate method syntax has this part:
Part Description
Undo Method
Reverses the last action completed in a picture. It is the equivalent of selecting Undo on the Edit menu.
Syntax
object.Undo
Properties
The Undo method syntax has this part:
Part Description
Remarks
Undo is a Configuration environment method only.
UndoTransaction Method
Allows a user to start an undo transaction (a series of nested undoable operations )
678
IFIX Automation Reference
Syntax
object.UndoTransaction evUndoTransactionFlag
Properties
The UndoTransaction method syntax has these parts:
Part Description
Settings
The settings for peTransactionFlags are:
UndoZoom Method
Reverses all of the zooming that the user has done in run mode and reverts the Enhanced Chart to its
default coordinates. It is the equivalent of selecting Undo Zoom on the Chart Options right-mouse
menu in run mode.
Syntax
object.UndoZoom
Properties
The UndoZoom method syntax has this part:
Part Description
679
iFIX Automation Reference
Remarks
UndoZoom can be used whether the chart is Modifiable or not.
UnGroup Method
Disbands the currently selected Group object. It is the equivalent of selecting Ungroup on the Format
menu.
Syntax
object.UnGroup
Properties
The UnGroup method syntax has this part:
Part Description
Remarks
When you disband a Group, any changes you made to the Group that affected a member object are
retained by that object. In other words, ungrouping does not return the member objects back to the
original state of the objects before you grouped them.
For example, suppose you have a grouped object in your picture that consists of red and black squares.
When you change the Group color to black, all the squares turn black. If you ungroup the object after
making this change, the squares remain black.
UnloadTagGroupFile Method
Unloads a tag group file from the picture.
Syntax
object.UnloadTagGroupFile
Properties
The UnloadTagGroupFile method syntax has this part:
680
IFIX Automation Reference
Part Description
Remarks
If a tag group file is currently loaded, disconnects all tag group objects from their data sources and
sends a message to release historical pens.
Update_A_Dynamo_By_Name Method
Updates a Dynamo by using the fully qualified name of the Master Dynamo and its instance.
Syntax
object.Update_A_Dynamo_By_Name (bstrMasterDynamoName, bstrDynamoInstanceName,
nDataSourceMismatchOption, bstrChoiceDialogTitle, pnResultCode)
Properties
The Update_A_Dynamo_By_Name method syntax has these parts:
Part Description
681
iFIX Automation Reference
Part Description
Update_A_Dynamo_By_Name2 Method
Updates a Dynamo by using the fully qualified name of the Master Dynamo and its instance.
Syntax
object.Update_A_Dynamo_By_Name2 (bstrMasterDynamoName, bstrDynamoInstanceName,
nDataSourceMismatchOption, bstrChoiceDialogTitle, pnResultCode)
Properties
The Update_A_Dynamo_By_Name2 method syntax has these parts:
Part Description
682
IFIX Automation Reference
Part Description
683
iFIX Automation Reference
Part Description
Update_A_Dynamo_By_Ref Method
Updates a Dynamo by using a reference from the Master Dynamo and its instance.
Syntax
object.Update_A_Dynamo_By_Ref (pIMasterDynamo, pIDynamoInstance,
684
IFIX Automation Reference
Properties
The Update_A_Dynamo_By_Ref method syntax has these parts:
Part Description
Update_A_Dynamo_By_Ref2 Method
Updates a Dynamo by using a reference from the Master Dynamo and its instance.
685
iFIX Automation Reference
Syntax
object.Update_A_Dynamo_By_Ref2 (pIMasterDynamo, pIDynamoInstance,
nDataSourceMismatchOption, bstrChoiceDialogTitle, pnResultCode)
Properties
The Update_A_Dynamo_By_Ref2 method syntax has these parts:
Part Description
686
IFIX Automation Reference
Part Description
687
iFIX Automation Reference
UpdateBackgroundObject Method
Forces changes made to an object in the foreground to be transferred to a Schedule running in the
background FixBackgroundServer application.
Syntax
object.UpdateBackgroundObject bstrObjectName, [iUpdateMode], [iRunMode]
Properties
The UpdateBackgroundObject method syntax has these parts:
Part Description
bstrObjectName String. The name of the object in the schedule to be updated in the background
task.
iUpdateMode Long.
Valid entries:
1 – Add (default)
2 – Modify
3 – Delete
iRunMode Long.
Valid entries:
1 – Run (default)
2 – Stop
UpdateConnectionParameters Method
Updates the refresh rate, deadband, and tolerance for an object’s connection.
Syntax
object.UpdateConnectionParameters bstrPropertyName, [vaUpdateRate], [vaDeadband],
[vaTolerance], [vaConnectionFlags]
Properties
The UpdateConnectionParameters method syntax has these parts:
688
IFIX Automation Reference
Part Description
aUpdateRate Variant. (Optional) The value at which to set the refresh rate for the
connection.
aDeadband Variant. (Optional) The value at which to set the deadband for the
connection.
aTolerance Variant. (Optional) The value at which to set the tolerance for the
connection.
Remarks
Use this method with object to object connections only.
UpdateDefinition Method
Modifies existing definitions, appends new definitions to a tag group file, or creates new tag group
files. Before using this method, use RetrieveDefinition method to read in the definitions you want to
modify or append to.
You should not delete definitions by omitting them from an update. Instead, to delete a tag group
definition, you delete the tag group file and then add all the definitions you want to keep.
Syntax
object.UpdateDefinition TagGroupName, Count, TokenList, ReplacementList, DescriptionList
Properties
The UpdateDefinition method syntax has these parts:
Part Description
TagGroupName String. The name of the tag group file in the Picture path to update.
689
iFIX Automation Reference
Part Description
TokenList Variant. The array of symbols. The array index ranges from 0 to Count-1.
ReplacementList Variant. The array of substitutions. The array index ranges from 0 to Count-1.
DescriptionList Variant. The array of descriptions associated with each substitution. The array
index ranges from 0 to Count-1.
Remarks
Use the string Trim methods to ensure that there is no whitespace in either the TokenList entries or the
Replacement list entries in the UpdateDefinition Tag Group File.
Make sure that Count correctly indicates the size of the array you pass into UpdateDefinition. If it is
not correct, you can lose substitutions or you can get a crash.
UserFormPointToLogical Method
Converts “UserForm Point” coordinates to coordinates in logical units. “UserForm Point” coordinates
are the measure for position VBA user forms on screen.
Syntax
object.UserFormPointToLogical plfTop, plfLeft
Properties
The UserFormPointToLogical method syntax has these parts:
Part Description
plfTop Double. Specifies the userform point top coordinate and returns the converted logical
coordinate.
plfLeft Double. Specifies the userform point left coordinate and returns the converted logical
coordinate.
690
IFIX Automation Reference
Remarks
Prior to performing the conversion, the StartUpPosition property of the form should be changed from
CenterOwner to either Manual or WindowsDefault. A setting of CenterOwner will result in the form
being popped up in the middle of the picture window.
ValidateSignature Method
Performs validation of a user name and password. Typically, you call this method when you want to
gather signature information through your application, but still use the ESignature object to validate
the signature and perform security checks.
Syntax
object.ValidateSignature(bstrUsername, bstrPassword, nSigType, pbValidSig, bstrUserID,
[bCheckTag])
Properties
The ValidateSignature method syntax has these parts:
Part Description
nSigType Integer. Indicates the type of signature to be validated. Valid values include:
1. – (PERFORM). Signature is for an action being performed.
2. – (VERIFY). Signature is for an action being verified.
bstrUserID String. Returns the user ID of the user. This ID is used when sending a signed
operator message.
bCheckTag
Boolean. (Optional). Indicates whether the user has access to security assigned
to the tag. The default value is False. If this parameter is True, you must call
the Initialize() method prior to calling this method. If you do not call
Initialize(), or the tag is not a FIX32 data source, the method fails and an error
generates.
691
iFIX Automation Reference
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
ValidateSignatureAndWriteValue Method
Performs validation of both the Performed By and Verified By user names and passwords. Based on
the value of the nAction parameter, the ValidateSignatureAndWriteValue method writes the value
passed in to the tag or acknowledges the alarm or list of alarms, and sends a signed operator message
to the alarm system. This method can only write to FIX32 data sources.
Typically, you call this method when you want to gather signature information through the application,
but still want to use the ESignature object to perform signature validation, write to FIX32 data
source(s), and send the signed operator message.
You must call the Initialize() method prior to calling this method if you are writing values to the
database or acknowledging alarms, otherwise the function fails and an error is returned.
Syntax
object.ValidateSignatureAndWriteValue(nAction, pValue, bstrPerformUsername,
bstrPerformPassword, [bstrPerformComment], [bstrVerifyUsername], [bstrVerifyPassword],
[bstrVerifyComment])
Properties
The ValidateSignatureAndWriteValue method syntax has these parts:
Part Description
nAction Integer. Indicates the type of action associated with this signature. Valid
entries include:
0 – (WRITE_VAL). Writes a value to a single data source.
3 – (ACK_OR_REMOVE). Acknowledges a single alarm.
4 – (ACK_OR_REMOVE_LIST). Acknowledges multiple alarms.
692
IFIX Automation Reference
Part Description
bstrPerformComment String. (Optional). The performed by comment to be sent with the signed
operator message.
Return Value
This method returns HRESULT. If the HRESULT is a value other than S_OK, VBA generates an
error. You can handle this error using the On Error Statement. You can find out more information
about the error by using Err Object.
ValidateSource Method
Validates the specified data source.
Syntax
object.ValidateSource bstrObject, iStatus, ppdispObject, bstrPropertyName
Properties
The ValidateSource method syntax has these parts:
Part Description
693
iFIX Automation Reference
Part Description
iStatus Long. Returns the status for the validity of the source.
Return values are:
0 – OK
1 – Syntax error
2 – Data Undefined
3 – Data type mismatch
ppdispObject Object. Returns the dispatch pointer to the source object if it exists.
bstrPropertyName String. Returns the name of the actual property of the data source.
ValueTimeFromXY Method
Gets information for a Pen based on the X and Y coordinates specified.
Syntax
object.ValueTimeFromXY x, y, pfVal, pdt, bReal
Properties
The ValueTimeFromXY method syntax has these parts:
Part Description
pfVal Double. Returns the value for the Pen at the specified x and y coordinates.
pdt Date. Returns the time information for the Pen at the specified x and y coordinates.
bReal Boolean. Returns True if the (x,y) point was on a real point and False if the (x,y) point
was on an interpolated point.
694
IFIX Automation Reference
Write Method
Writes a value to the data source represented by the DataItem or Group (DataSystem).
Properties
The Write method syntax has these parts:
Part Description
Properties
The Write method syntax has these parts:
Part Description
WritePictureToImageFile Method
Writes a specified picture to an image file.
Syntax
object.WritePictureToImageFile ([bstrFileName], [bstrOutFileName], [bLeavePictureInOpenState],
[iScaleFactor])
Properties
The WritePictureToImageFile method syntax has these parts:
695
iFIX Automation Reference
Part Description
bstrFileName String. The name of the iFIX picture file, with or without full path.
If the path is set to “” or omitted, then the active picture is used.
bstrOutFileName String. The name you want to give the image file that you create,
with or without the full path. If the path is set to “” or omitted, then
take bstrFileName as the out file name. If bstOutFileName is
omitted, then take the picture name with no extension. If the path is
not specified, use the path from the WritePictureOutLocation
property. If the file extension is not specified, use the
WritePictureFormatType property to determine the output format
(currently, .jpg or .bmp).
bLeavePictureInOpenState Boolean. Indicates whether the iFIX picture remains open after you
write the picture to an image file. If this value is set to TRUE, the
picture remains open. The default is FALSE.
iScaleFactor Long. Not currently available for use. The percentage by which you
want to scale the picture for the image file. By default, this value is
set to 100 percent.
XYFromValueTime Method
Gets the X and Y coordinates for a Pen based on the time and value specified.
Syntax
object.XYFromValueTime fVal, dt, px, py
Properties
The XYFromValueTime method syntax has these parts:
Part Description
696
IFIX Automation Reference
Part Description
XYHitTest Method
Returns information for a Pen based on the specified coordinates. Typically used with the MouseUp
and MouseDown events.
Syntax
object.XYHitTest lfX, lfY, pDt, pfV, pszPenName, ppPen, lPenNum, pbReal
Properties
The XYHitTest method syntax has these parts:
Part Description
pDt Date. Returns the date for the Pen that corresponds to the specified X and Y
coordinates.
pfV Double. Returns the value for the Pen that corresponds to the specified X and Y
coordinates.
pszPenName String. Returns the name of the Pen that corresponds to the specified X and Y
coordinates.
ppPen Object. Returns the Pen object that corresponds to the specified X and Y
coordinates.
697
iFIX Automation Reference
Part Description
lPenNum Long. Returns the index in the Pens collection for the Pen that corresponds to the
specified X and Y coordinates.
pbReal Boolean. Returns True if the hit test was on a real point and False if it was on an
interpolated point.
Remarks
This method is useful for performing operations based on Pen selection, or for creating data
annotations. It returns the time and date of the clicked point, the value on the line, the pen's data
source, a pointer to the Pen, the pen number, and whether the user clicked on a real or interpolated data
point.
Zoom Method
Zooms in on an exact position.
Syntax
object.Zoom fYHi, fYLo, fXHi, fXLo
Properties
The Zoom method syntax has these parts:
Part Description
698
Events
Event Summary
The following list contains the iFIX object events that are available to the Automation Interface. For
information on non iFIX events, refer to the appropriate help system.
A-B
Activated
AfterKillFocus
AlarmAck
AlarmAcknowledged
AlarmListChanged
C
Click
Close
ColorChanged
D
DataChange
DblClick
DeActivated
E-H
Edit
EditChange
699
iFIX Automation Reference
I-J
Initialize
InitializeConfigure
K
KeyDown
KeyUp
L
LMouseClick
LoadedTagGroup
M-N
MouseDown
MouseMove
MouseUp
MouseUpOffObject
NewAlarm
O
OnChange
OnChartFull
OnChartRefresh
OnFalse
OnPenSelect
OnTimeOut
OnTrue
700
IFIX Automation Reference
P-R
RMouseClick
S-V
SelectionChanged
SeverityIncreased
UIDeactivate
W-Z
WhileFalse
WhileTrue
A-D
Activated Event
Occurs when a window gets the user focus. This is defined as the moment when the user’s keyboard
and mouse focus are directed to that window. The user can tell this is happening by looking at the
titlebar (if the document has one).
Syntax
object_Activated( )
Properties
The Activated event syntax has this part:
Part Description
701
iFIX Automation Reference
AfterKillFocus Event
Occurs when focus is taken away from the specified ExpressionEditor control.
Syntax
object_AfterKillFocus( )
Properties
The AfterKillFocus event syntax has this part:
Part Description
AlarmAck Event
Occurs when an alarm is acknowledged.
Syntax
object_AlarmAck( )
Properties
The AlarmAck event syntax has this part:
Part Description
AlarmAcknowledged Event
Occurs when an alarm is acknowledged by double-clicking an alarm or calling the AckAlarm,
AckAlarmPage, or the AckAllAlarms methods. Unlike the AlarmAck event, the
AlarmAcknowledged event returns the name of the node, tag, and field that was acknowledged.
Syntax
object_AlarmAcknowledged(strNode As String, strTag As String, strField As String)
702
IFIX Automation Reference
Properties
The AlarmAcknowledged event syntax has these parts:
Part Description
strNode String. The name of the node on which the alarm was acknowledged.
StrTag String. The name of the tag whose alarm was acknowledged.
StrField String. The name of the field whose alarm was acknowledged.
Remarks
If you acknowledge a page of alarms, you receive one event for each alarm. If you acknowledge all
alarms, the event does not occur.
AlarmListChanged Event
Occurs when the contents or order of information in the Alarm Summary object changes. By default,
this event does not fire. To trigger the event when information in the Alarm Summary object changes,
set the CheckForAlarmListChanged property to TRUE.
Syntax
object_AlarmListChanged()
Properties
The AlarmListChanged event syntax has this part:
Part Description
Remarks
This event occurs on the initial receipt of alarms by the Alarm Summary object. The event occurs
subsequently whenever the contents or order of alarms displayed by the Alarm Summary object
changes. For example, the event may also occur when you change the alarm filter if the modified filter
changes the content of the object’s spreadsheet (for example, if it filters out alarms or adds alarms from
another alarm area). The event occurs even if the change in content happens off screen. The following
703
iFIX Automation Reference
actions may also cause the AlarmListChanged event to fire but only if the action changes the content
of the object’s spreadsheet:
You can disable the AlarmListChanged event by setting the CheckForAlarmListChanged property
to FALSE.
Click Event
Occurs when the user releases the left mouse key in the Run-time environment.
Syntax
object_Click( )
Properties
The Click event syntax has this part:
Part Description
Remarks
This event is the common event used to initiate an operator action. It is also the default event used by
the script authoring wizards.
• MouseDown
• MouseUp
• Click
• DblClick
Close Event
Occurs when a page container is shut down or closed in the Run-time environment.
Syntax
object_Close( )
704
IFIX Automation Reference
Properties
The Close event syntax has this part:
Part Description
ColorChanged Event
Occurs when a new color is selected in the Run-time environment.
Syntax
object_ColorChanged(ByVal Color As Long)
Properties
The ColorChanged event syntax has these parts:
Part Description
DataChange Event
Occurs when a data source’s value changes by more than the deadband limit or if the quality or error
information associated with the data source changes.
The DataChange event occurs at the end of data change processing, therefore, the animation or event
object’s internal state (properties) will reflect this change. The previous value is not stored in the
object.
If the same events occur while the script is executing, the system queues one and only one event for
this situation. That is, if multiple data changes occur, the next event firing reflects the newest
information.
Syntax
object_DataChange(ByVal DataValue As Variant, ByVal TimeStamp as Date, ByVal Transition As
Long, ByVal Reserved As Variant)
705
iFIX Automation Reference
Properties
The DataChange event syntax has these parts:
Part Description
Transition Specifies whether the value changed from non-zero to zero or vice versa.
Reserved Reserved.
When data changes from an unknown state to a known state, the DataChange event triggers. Therefore,
actions such as switching from the Configuration environment to the Run-time environment while an
iFIX schedule is open will cause the DataChange event to trigger accordingly.
706
IFIX Automation Reference
DblClick Event
Occurs when the user double-clicks the mouse.
Syntax
object_DblClick( )
Properties
The DblClick event syntax has these parts:
Part Description
Remarks
The DblClick event occurs when multiple left mouse clicks are received in the object.
• MouseDown
• MouseUp
• Click
• DblClick
707
iFIX Automation Reference
Properties
The DblClick event syntax has these parts:
Part Description
DeActivated Event
Occurs when a window loses the focus. This is fired when another document receives the focus.
Syntax
object_DeActivated( )
Properties
The DeActivated event syntax has this part:
Part Description
Remarks
When a picture is closed, the DeActivated event does not fire.
708
IFIX Automation Reference
E-N
Edit Event
Occurs when:
Syntax
object_Edit( )
Properties
The Edit event syntax has this part:
Part Description
Remarks
This method is the primary mechanism for creating a custom property page for an object that is in the
form of a VBA custom form, which is useful for creating Dynamo objects. When an object is
modified, the order of execution is:
TIP: Put all substitution logic in the Edit event and pass all object context into a shared or global
form. Object names are automatically modified on a duplicate if the reference is in the event handler.
Hard-coded object references in user forms are not modified when an object is duplicated.
EditChange Event
Occurs when the text in the edit box portion of the ExpressionEditor is changed.
Syntax
object_EditChange(ByVal bSourceEmpty As Boolean)
709
iFIX Automation Reference
Properties
The EditChange event syntax has these parts:
Part Description
bSourceEmpty Whether the edit box is empty or not. If True, the edit box is empty. If False, the
edit box is not empty.
Initialize Event
Occurs when a document is opened in the Run-time environment.
Syntax
object_Initialize( )
Properties
The Initialize event syntax has this part:
Part Description
InitializeConfigure Event
Occurs when a document is opened in the Configuration environment, or when the user switches to the
Configuration environment.
Syntax
object_InitializeConfigure( )
Properties
The InitializeConfigure event syntax has this part:
710
IFIX Automation Reference
Part Description
KeyDown Event
Occurs when the user presses a key on the keyboard.
Syntax
object_KeyDown(ByVal KeyCode As Long, ByVal Shift As Long, ContinueProcessing As Boolean)
Properties
The KeyDown event syntax has these parts:
Part Description
KeyCode An integer that represents the key code of the key that was pressed or released.
Settings
The settings for Shift are:
Value Description
Remarks
Key events are sent to the selected object first. If there is no script tied to the event, the key event is
sent to the contained object (group or page). If you have common key events across a set of pictures, it
is recommended that you use shared subroutines in the user global page that are called from the
711
iFIX Automation Reference
The ContinueProcessing As Boolean parameter is related to the Key Macro scheme. Since key macros
can be tied to objects, there is a certain hierarchy. For example, you can have the same key macro run
different scripts on an object and in the picture. The processing starts in the object, and the
ContinueProcessing parameter prevents the processing from being passed up to the next level. For
example, if F10 runs MacroA on a rectangle, and F10 also runs MacroB in the picture, a false value
would keep the picture's macro from firing.
KeyUp Event
Occurs when the user presses a key on the keyboard.
The object placeholder represents an object expression that evaluates to an object in the Applies To
list.
Syntax
object_KeyUp(ByVal KeyCode As Long, ByVal Shift As Long, ContinueProcessing As Boolean)
Properties
The KeyUp event syntax has these parts:
Part Description
KeyCode An integer that represents the key code of the key that was pressed or released.
Settings
The settings for Shift are:
Value Description
712
IFIX Automation Reference
Remarks
Key events are sent to the selected object first. If there is no script tied to the event, the key event is
sent to the contained object (group or page). If you have common key events across a set of pictures, it
is recommended that you use shared subroutines in the user global page that are called from the
picture’s key events.
The ContinueProcessing As Boolean parameter is related to the Key Macro scheme. Since key macros
can be tied to objects, there is a certain hierarchy. For example, you can have the same key macro run
different scripts on an object and in the picture. The processing starts in the object, and the
ContinueProcessing parameter prevents the processing from being passed up to the next level. For
example, if F10 runs MacroA on a rectangle, and F10 also runs MacroB in the picture, a false value
would keep the picture's macro from firing.
LMouseClick Event
Occurs when the user clicks the left mouse button on the Alarm Summary object in either the
Configuration or Run-time environment.
Syntax
object_LMouseClick(ByVal Col As Long, ByVal Row As Long)
Properties
The LMouseClick event syntax has these parts:
Part Description
LoadedTagGroup Event
Occurs when the user loads a tag group in the runtime environment.
Syntax
object_LoadedTagGroup(TagGroupName As String)
713
iFIX Automation Reference
Properties
The LoadedTagGroup event syntax has these parts:
Part Description
MouseDown Event
Occurs when the user presses a mouse button.
Syntax
object_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Double, byVal
Y As Double)
Properties
The MouseDown event syntax has these parts:
Part Description
Button An integer value that identifies which mouse button was pressed.
X The horizontal position, in logical coordinates, from the left or top edge of the page
where the mouse was pressed.
Y The vertical position, in logical coordinates, from the left or top edge of the page where
the mouse was pressed.
Settings
The settings for Button are:
714
IFIX Automation Reference
Value Description
Value Description
Remarks
The sequence of mouse-related events is:
• MouseDown
• MouseUp
• Click
• DblClick
MouseDown or MouseUp event procedures specify actions that occur when a mouse button is pressed
or released. They enable you to distinguish between the left, right, and middle mouse buttons. You can
also write code for mouse-keyboard combinations that use the SHIFT, CTRL, and ALT keyboard
modifiers.
Use the Shift argument to identify the state of the SHIFT, CTRL, and ALT keys when the
MouseDown or MouseUp event occurred. For example, if both CTRL and ALT are pressed, the value
of Shift is 6.
715
iFIX Automation Reference
Mouse events are sent to the selected object first. If there is no event script tied to the selected object,
then the event is sent to the object’s container (group or page).
MouseMove Event
Occurs when the user moves the mouse over an object.
Syntax
object_MouseMove(ByVal Button As Integer, ByVal Shift As Long, ByVal X As Double, ByVal Y
As Double)
Properties
The MouseMove event syntax has these parts:
Part Description
Button An integer value that identifies which mouse button was pressed.
X The horizontal position, in logical coordinates, from the left or top edge of the page
where the mouse was pressed.
Y The vertical position, in logical coordinates, from the left or top edge of the page where
the mouse was pressed.
Settings
The settings for Button are:
Value Description
716
IFIX Automation Reference
Value Description
Remarks
Mouse events are sent to the selected object first. If there is no event script tied to the selected object,
then the event is sent to the object’s container (group or page).
MouseUp Event
Occurs when the user releases any of the mouse keys.
Syntax
object_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Double, ByVal Y
As Double)
Properties
The MouseUp event syntax has these parts:
Part Description
Button An integer value that identifies which mouse button was pressed.
717
iFIX Automation Reference
Part Description
X The horizontal position, in logical coordinates, from the left or top edge of the page
where the mouse was pressed.
Y The vertical position, in logical coordinates, from the left or top edge of the page where
the mouse was pressed.
Settings
The settings for Button are:
Value Description
Value Description
718
IFIX Automation Reference
Remarks
The sequence of mouse-related events is:
• MouseDown
• MouseUp
• Click
• DblClick
MouseDown or MouseUp event procedures specify actions that occur when a mouse button is pressed
or released. They enable you to distinguish between the left, right, and middle mouse buttons. You can
also write code for mouse-keyboard combinations that use the SHIFT, CTRL, and ALT keyboard
modifiers.
Use the Shift argument to identify the state of the SHIFT, CTRL, and ALT keys when the
MouseDown or MouseUp event occurred. For example, if both CTRL and ALT are pressed, the value
of Shift is 6.
Mouse events are sent to the selected object first. If there is no event script tied to the selected object,
then the event is sent to the object’s container (group or page).
MouseUpOffObject Event
Occurs when the left mouse button is pressed on an object, the mouse cursor is moved off the object
and then released to the UP position.
Syntax
object_MouseUpOffObject()
Properties
The MouseUpOffObject event syntax has one part:
Part Description
Remarks
The MouseUpOffObject event is only used with the left mouse button. This event will not apply to
the right mouse button.
719
iFIX Automation Reference
If the MouseUpOffObject event is enabled and there is MouseUpOffObject event script created for
the object, then the MouseUpOffObject event is processed and the script in the event is executed. If
MouseUpOffObject event is NOT enabled, then the MouseUp event is sent to the object’s container
(group or page).
NewAlarm Event
Occurs when a new alarm is detected after the initial receipt of alarms by the Alarm Summary object.
By default, this event does not fire. To trigger the event when information in the Alarm Summary
object changes, set the CheckForNewAlarms property to TRUE. The event occurs even if the change
in content happens off screen.
For example, in run mode, if a tag goes into a HI alarm and then changes to HIHI, the NewAlarm
event fires once, unless the previous HI alarm is acknowledged. The NewAlarm event detects if an
alarm is new, not a new severity. If you want to detect a change in severity, use the
CheckForSeverityIncrease property and SeverityIncreased event.
Syntax
object_NewAlarm(strNode As String, strTag As String)
Properties
The NewAlarm event syntax has these parts:
Part Description
strNode String. A list of nodes with new alarms. Example of parsing the list
StrTag String. A list of tags with new alarms. Example of parsing the list
Remarks
Whenever you change the filter or sort configuration, the Alarm Summary object updates its list of
alarm. However, this change does not cause the NewAlarm event to occur.
If a tag is in alarm and another alarm occurs for this tag, the NewAlarm event does not trigger again.
For example, if a tag is in HI alarm and it goes to HIHI alarm the NewAlarm event fires only once. In
order for the event to trigger twice, the HI alarm would have to be acknowledged and return to an OK
alarm state prior to the tag going into a HIHI alarm.
720
IFIX Automation Reference
O-Z
OnChange Event
Occurs when the CurrentValue of the specified Variable object is changed.
Syntax
object_OnChange( )
Properties
The OnChange event syntax has this part:
Part Description
OnChartFull Event
Occurs when the data for a Chart object scrolls all the way to the right and hits the edge. This event
can only occur if the ScrollDirection property of the Chart is set to LeftToRight.
Syntax
object_OnChartFull( )
Properties
The OnChartFull event syntax has this part:
Part Description
Remarks
This event is useful for handling the appropriate UI action when the data fills up the Chart. Possible
options are to clear the data and change the start time to now, effectively wiping out the Chart, or to
scroll the Chart over 50%.
721
iFIX Automation Reference
OnChartRefresh Event
Occurs when the Chart object's data automatically scrolls. The event occurs at an interval defined by
the RefreshRate property.
Syntax
object_OnChartRefresh( )
Properties
The OnChartRefresh event syntax has this part:
Part Description
OnFalse Event
Occurs when an expression in an Event object changes from True to False (non-zero to zero).
Syntax
object_OnFalse( )
Properties
The OnFalse event syntax has this part:
Part Description
Remarks
When using an expression such as AI1 > 55.0, the value of this expression is 0 when AI1 is less than or
equal to 55.0. When AI1 exceeds 55.0 the value of the expression is 1. The OnFalse event is triggered
when the value of the expression changes from 1 to 0. If the expression is a single tag, then the value
of the tag is evaluated as either 0.0 or non-zero to determine whether to fire the event.
See the complete event firing event transition described in the DataChange event.
722
IFIX Automation Reference
OnPenSelect Event
Occurs when the user changes the currently active Pen by selecting another Pen.
Syntax
object_OnPenSelect(ByVal IPenNum As Long)
Properties
The OnPenSelect event syntax has these parts:
Part Description
IPenNum The index in the Pens collection that defines the selected Pen.
OnTimeOut Event
Occurs depending on the TriggerType of the Timer:
Continuous - The event is fired at the StartTime and then at the interval specified for the
Interval property.
Daily - The event is fired at the StartTime for those days that have been configured (see
DaysOfWeek).
Monthly - The event is fired at the StartTime for every day that has been configured (see
DaysOfMonth).
Syntax
object_OnTimeOut(ByVal lTimerId As Long)
Properties
The OnTimeOut event syntax has these parts:
Part Description
723
iFIX Automation Reference
Part Description
lTimerId Reserved.
OnTrue Event
Occurs when an expression in an Event object changes from False to True (zero to non-zero).
Syntax
object_OnTrue( )
Properties
The OnTrue event syntax has this part:
Part Description
Remarks
When using an expression such as AI1 > 55.0, the value of this expression is 0 when AI1 is less than or
equal to 55.0. When AI1 exceeds 55.0 the value of the expression is 1. The OnTrue event is triggered
when the value of the expression changes from 0 to 1. If the expression is a single tag, then the value
of the tag is evaluated as either 0.0 or non-zero to determine whether to fire the event.
See the complete event firing event transition described in the DataChange event.
RMouseClick Event
Occurs when the user clicks the right mouse button on the Alarm Summary object in either the
Configuration or Run-time environment.
Syntax
object_RMouseClick(ByVal Col As Long, ByVal Row As Long, ByVal x As Long, ByVal y As
Long)
724
IFIX Automation Reference
Properties
The RMouseClick event syntax has these parts:
Part Description
SelectionChanged Event
Reserved for internal purposes.
SeverityIncreased Event
Occurs when an alarm’s status increases in severity. The CheckForSeverityIncrease property must set
to TRUE to allow this event to be triggered. The CheckForSeverityIncrease property must be set in
run mode. The value you enter here is not persisted. In other words, when you switch from run mode to
configure mode, the value changes back to FALSE (0), which is the default. If you enter TRUE (1) in
configure mode, it switches back to FALSE (0) when you enter run mode. You must set this value in
run mode.
Syntax
object_SeverityIncreased( )
Properties
The SeverityIncreased event syntax has this part:
Part Description
725
iFIX Automation Reference
UIDeactivate Event
Reserved for internal purposes.
WhileFalse Event
Occurs in the Event object, while the value is zero. This event is continually called back at an interval
specified by the Interval property of the Event object.
Syntax
object_WhileFalse( )
Properties
The WhileFalse event syntax has this part:
Part Description
Remarks
See the complete event firing event transition described in the DataChange event.
WhileTrue Event
Occurs in the Event object, while the value is non-zero. This event is continually called back at an
interval specified by the Interval property of the Event object.
Syntax
object_WhileTrue( )
Properties
The WhileTrue event syntax has this part:
Part Description
726
IFIX Automation Reference
Remarks
See the complete event firing event transition described in the DataChange event.
727
Subroutines
Subroutine Summary
The following list contains the iFIX subroutines that are available to the Automation Interface. For
information on non iFIX objects, refer to the appropriate help system.
A-B
AcknowledgeAllAlarms
AcknowledgeAnAlarm
AlarmHornEnabled
AlarmHornEnabledToggle
AlarmHornSilence
C
CloseDigitalPoint
ClosePicture
D
DisableAlarm
E
EnableAlarm
F-K
FetchLimits
FindDataSource
729
iFIX Automation Reference
FindLocalObject
GeneratePicture
GetAllConnections
GetDecimalSeparator
GetFormDynamoColor
GetFormNumeric
GetFormPushbutton
GetFormRamp
GetFormSlider
GetLocaleInfoA
GetUserDefaultLCID
HandleError
IsUserFxg
L-N
LocateObject
LogIn
O
OffScan
OnScan
OpenDigitalPoint
OpenPicture
OpenTGDPicture
P-Q
PictureAlias
730
IFIX Automation Reference
PrintReport
QuickAdd
R
RampValue
ReadValue
RegCloseKey
RegOpenKeyEx
ReplacePicture
ReplaceTGDPicture
S
SetAuto
SetManual
ShellExecute
T
ToggleDigitalPoint
ToggleManual
ToggleScan
U-Z
WriteValue
731
iFIX Automation Reference
A-F
AcknowledgeAllAlarms Subroutine
Acknowledges alarms for all tags in the specified Picture. If any of the alarms in the picture require an
electronic signature, acknowledgement depends on the setting of the Unsigned Writes options in each
alarm’s block:
Accept Enabled – The subroutine will also acknowledge the alarm associated with this block.
Reject Enabled – The subroutine will acknowledge other alarms, but not the alarm associated
with this block.
Syntax
AcknowledgeAllAlarms [Picture], [intErrorMode]
Properties
The AcknowledgeAllAlarms subroutine syntax has these parts:
Part Description
Picture String. (Optional) The file name of the Picture for which you want to
acknowledge all alarms. If no picture is specified, the current picture is used.
Remarks
If the only object in a picture is an Alarm Summary object that has Allow Acknowledge All Alarms
disabled, this subroutine will not acknowledge any alarms. The order of logic in the subroutine is as
follows:
732
IFIX Automation Reference
2. Check for whether the Allow Acknowledge All Alarms option is enabled.
If you are using the AcknowledgeAllAlarms subroutine on an Alarm Summary OCX, this subroutine
checks to ensure that the Allow Acknowledge All Alarms property is enabled. If the property is
disabled, no alarms associated with that Alarm Summary OCX are acknowledged.
AcknowledgeAnAlarm Subroutine
Acknowledges new alarms for the specified block.
Syntax
AcknowledgeAnAlarm [DataPoint], [intErrorMode]
Properties
The AcknowledgeAnAlarm subroutine syntax has these parts:
Part Description
DataPoint String. (Optional) The name of the database block for which you want to
acknowledge alarms. If no block is specified, alarms for the database block
associated with the selected object are acknowledged.
AlarmHornEnabled Subroutine
Gets or sets the alarm horn enabled status.
733
iFIX Automation Reference
Syntax
AlarmHornEnabled ([blnNewValue], [intErrorMode])
Properties
The AlarmHornEnabled subroutine syntax has these parts:
Part Description
blnNewValue Boolean. (Optional). The value to which you want to set the alarm horn enable
property.
Return Value
Boolean. The status of the AlarmHornEnable after the call is completed.
False = The horn will not sound for any new alarms.
AlarmHornEnabledToggle Subroutine
Toggles the system’s AlarmHornEnabled status.
Syntax
AlarmHornEnabledToggle ([intErrorMode])
Properties
The AlarmHornEnabledToggle subroutine syntax has this part:
734
IFIX Automation Reference
Part Description
Return Value
Boolean. The status of the AlarmHornEnable after the call is completed.
True = The status was toggled to True. The horn will sound on any new alarm.
False = The status was toggled to False. The horn will not sound for any new alarms.
AlarmHornSilence Subroutine
Silences the alarm horn.
Syntax
AlarmHornSilence ([intErrorMode])
Properties
The AlarmHornSilence subroutine syntax has this part:
Part Description
Remarks
The alarm horn must be enabled for this to work. If you call this routine and the alarm horn is disabled,
no error will be reported.
If a new alarm comes in after this routine is called, the alarm horn will sound again. When alarms
come in at a rapid rate, it may seem as though the AlarmHornSilence subroutine is not working
because the new alarms keep retriggering the horn.
735
iFIX Automation Reference
CloseDigitalPoint Subroutine
Closes, or sends a value of 1, to the specified digital block.
Syntax
CloseDigitalPoint [DigitalPoint], [intErrorMode]
Properties
The CloseDigitalPoint subroutine syntax has these parts:
Part Description
DigitalPoint String. (Optional). The name of the digital block that you want to close. If no
block is specified, it closes the digital point associated with the selected object.
Remarks
If no block is specified and the selected object does not have an associated digital point, an error
message appears informing the user that the write was not successful.
ClosePicture Subroutine
Closes the specified Picture. If there are multiple instances of a picture open, all instances of that
picture are closed. If a different alias is assigned to each instance, you can close one instance using an
alias.
Syntax
ClosePicture [Picture], [intErrorMode]
Properties
The ClosePicture subroutine syntax has these parts:
736
IFIX Automation Reference
Part Description
Picture String. (Optional). The file name or alias of the picture you want to close. If no
file name is specified, the currently active picture is closed.
Remarks
If possible, always make this call the last line in your script. Note that when the ClosePicture
subroutine is used, and the document being closed is the document that contains the script, the call
must be the last line in the script. Otherwise, you may experience unexpected behavior when executing
the script.
If the ClosePicture subroutine is not called from the picture being closed and is not the last line in
your script, be certain that the operation is complete before the rest of the script continues to execute.
Immediately after making the call, you must relinquish the CPU by calling DoEvents. For example, the
following sample scripts close a picture called TANK1 and opens a picture called TANK2:
ClosePicture “Tank1”
DoEvents
OpenPicture “Tank2”
End Sub
NOTE: You cannot call methods on pictures that you have closed.
DisableAlarm Subroutine
Disables alarm limit checking for the specified block.
Syntax
DisableAlarm [DataPoint], [intErrorMode]
Properties
The DisableAlarm subroutine syntax has these parts:
737
iFIX Automation Reference
Part Description
DataPoint String. (Optional) The name of the database block for which you want to disable
alarming. If no block is specified, alarming is disabled for the block associated
with the selected object.
EnableAlarm Subroutine
Enables alarm limit checking for the specified block.
Syntax
EnableAlarm [DataPoint], [intErrorMode]
Properties
The EnableAlarm subroutine syntax has these parts:
Part Description
DataPoint String. (Optional). The name of the database block for which you want to enable
alarming. If no block is specified, alarming is enabled for the database block
associated with the selected object.
738
IFIX Automation Reference
FetchLimits Subroutine
Returns the High and Low EGUs of the specified data source.
Syntax
FetchLimits DataSource, HiLimit, LoLimit, ret, [intErrorMode]
Properties
The FetchLimits subroutine syntax has these parts:
Part Description
DataSource String. The string name for the data source. For example,
FIX32.MYNODE.AI1.F_CV
HiLimit Single. Returns the high EGU limit for the data source.
LoLimit Single. Returns the low EGU limit for the data source.
FindDataSource Subroutine
Returns the string name of the data source that is connected to a property of the specified object if the
data source is an iFIX database tag or animation object.
739
iFIX Automation Reference
Syntax
FindDataSource (Object, [strProperty])
Properties
The FindDataSource function syntax has these parts:
Part Description
strProperty String. (Optional). The property connected to the data source. If no property is
specified, the function returns the connection to the first property if finds that is
connected to a data source.
Return Value
String. The string name of the data source object.
Remarks
This function does not return a value for items within groups. For example, if you have a group of data
links all connected to different data sources but, the group itself is not connected to a data source, this
function will return an empty string. It only returns the name of the data source that is connected to the
object you pass in for the Object parameter.
FindLocalObject Subroutine
Finds an object inside a group based on the object’s partial name. The group could be a Picture,
DynamoSet or a Group of shapes.
Syntax
FindLocalObject (StartObject, PartialName)
Properties
The FindLocalObject subroutine syntax has these parts:
Part Description
StartObject Object. The name of the Picture or Group where the object you are looking for is
contained.
740
IFIX Automation Reference
Part Description
PartialName String. A partial name for the object to be found. For example, if the object’s full
name is PipeColorAnim1, you can pass in “PipeColorA”, or “PipeC”.
Return Value
Object. The first object in the Group whose name contains what is entered for PartialName.
Remarks
For example, if, through scripting, you want to get an object inside a Group in order to animate that
particular object’s vertical fill, use FindLocalObject with the group’s name and just a partial name of
the object to fill.
FindLocalObject is typically used for Dynamo sets where a Dynamo objects share common names for
all of their contained objects - the only difference being the numeric ending. Forms and subroutines
that call this subroutine make use of the partial name to operate on all similar Dynamo objects so that
all similar Dynamo objects in a picture can use the same subroutines and forms. This assumes that user
creating the Dynamo objects uses a naming convention for the objects inside of the Dynamo object.
G-I
GeneratePicture Subroutine
Creates a new Picture.
Syntax
GeneratePicture (aPicInfo)
Properties
The GeneratePicture subroutine syntax has this part:
Part Description
aPicInfo The PictureInfo structure specifies the properties of the picture to be generated.
741
iFIX Automation Reference
Member Description
lfTopPct The preferred top window edge location of the picture being generated. The
location Unit, pixel or percent, is determined by bPixels. Type is Double.
lfLeftPct The preferred left window edge location of the picture being generated. The
location Unit, pixel or percent, is determined by bPixels. Type is Double.
lfHeightPct The preferred window height of the picture being generated. The dimension
Unit, pixel or percent, is determined by bPixels. Type is Double.
lfWidthPct The preferred window width of the picture being generated. The dimension
Unit, pixel or percent, is determined by bPixels. Type is Double.
bPixels Determines whether the window location units are pixel or percent. Type is
Boolean.
bTitlebar Defines whether or not the picture window has a title bar. Type is Boolean.
bSystemMenu Defines whether or not the picture window has a system menu. Type is
Boolean.
bResizable Defines whether or not the picture window is resizable. Type is Boolean.
bAlwaysOnTop Defines whether or not the picture window is always on top of other picture
windows. Type is Boolean.
bRuntimeVisible Defines whether or not the picture is visible at run time. Type is Boolean.
GetAllConnections Subroutine
Retrieves all data blocks connected to objects in a Picture or in a Group.
Syntax
GetAllConnections (Obj)
742
IFIX Automation Reference
Properties
The GetAllConnections subroutine syntax has this part:
Part Description
Obj Object. Usually the page object that represents the Picture whose connections you want
to retrieve. This can also be a Group object.
Return Value
Collection. The Collection of all the fully qualified names of database items in the Picture. These
items can be either data links or data items that animate objects.
GetDecimalSeparator Subroutine
Reserved method used internally for Experts.
Syntax
GetDecimalSeparator ([intErrorMode])
Properties
The GetDecimalSeparator subroutine syntax has this part:
Part Description
GetFormDynamoColor Subroutine
Reserved method used internally for iFIX Dynamos.
743
iFIX Automation Reference
Syntax
GetFormDynamoColor DynColor
GetFormNumeric Subroutine
Reserved method used internally for Experts.
Syntax
GetFormNumeric ()
GetFormPushbutton Subroutine
Reserved method used internally for Experts.
Syntax
GetFormPushbutton ()
GetFormRamp Subroutine
Reserved method used internally for Experts.
Syntax
GetFormRamp ()
GetFormSlider Subroutine
Reserved method used internally for Experts.
Syntax
GetFormSlider ()
GetLocaleInfoA Subroutine
Retrieves information relating to a specific locale.
744
IFIX Automation Reference
Syntax
GetLocaleInfoA (Locale, LCType, lpLCData, cchData)
Properties
The GetLocaleInfoA subroutine syntax has these parts:
Part Description
Locale Long. The locale ID from where you want to get information.
LCType Long. The type of information to retrieve. Refer to the API32.TXT file for constants
with the LOCALE_ prefix.
lpLCData String. Buffer to load with the information. Make sure this string is initialized to the
appropriate length.
cchData Long. The length of the lpLCData buffer , or zero to get the buffer length.
Return Value
Long. The number of characters loaded into the buffer. Zero on error.
Remarks
GetLocaleInfoA is a Windows API call.
GetUserDefaultLCID Subroutine
Retrieves the default locale for the current user.
Syntax
GetUserDefaultLCID ()
Return Value
Long. The default locale ID for the current user.
Remarks
GetUserDefaultLCID is a Windows API call.
745
iFIX Automation Reference
HandleError Subroutine
The global error handler routine. It displays the error number and its description when an error occurs.
Syntax
HandleError([intErrorMode])
Properties
The HandleError subroutine syntax has this part:
Part Description
IsUserFxg Subroutine
Determines whether the active document is the User.fxg.
Syntax
IsUserFxg ()
Return Value
Boolean. True if the active picture is the User.fxg. False if it is not.
Remarks
This subroutine is useful when cycling through the collection of open Documents. Typically, a user
would not want to perform the same actions that you do on User.fxg that he/she would on a picture or
schedule. Thus, if IsUserFxg returns True, the user can write their code to skip User.fxg.
746
IFIX Automation Reference
L-R
LocateObject Subroutine
Searches a Picture for the specified object and selects the object.
Syntax
LocateObject LinkName, bRelative, [intErrorMode]
Properties
The LocateObject subroutine syntax has these parts:
Part Description
LinkName String. The name of the object for which you want to search.
bRelative Boolean. If True, the current picture is searched; if False, all open pictures are
searched.
LogIn Subroutine
The LogIn subroutine:
747
iFIX Automation Reference
Syntax
LogIn([intErrorMode])([bPushCurrentUser As Boolean])
Properties
The LogIn subroutine syntax has these parts:
Part Description
OffScan Subroutine
Places the specified block off scan.
Syntax
OffScan [DataPoint], [intErrorMode]
Properties
The OffScan subroutine syntax has these parts:
Part Description
DataPoint String. (Optional). The name of the database block that you want to turn off scan.
If no block is specified, the database block for the selected object is turned off
scan.
748
IFIX Automation Reference
Part Description
OnScan Subroutine
Places the specified block on scan.
Syntax
OnScan [DataPoint], [intErrorMode]
Properties
The OnScan subroutine syntax has these parts:
Part Description
DataPoint String. (Optional). The name of the database block that you want to put on scan.
If you do not specify a name, the database block for the selected object is put on
scan.
749
iFIX Automation Reference
OpenDigitalPoint Subroutine
Opens, or sends a value of 0, to the specified digital block.
Syntax
OpenDigitalPoint [DigitalPoint], [intErrorMode]
Properties
The OpenDigitalPoint subroutine syntax has these parts:
Part Description
DigitalPoint String. (Optional). The name of the digital block that you want to open. If no
block is specified, it opens the digital point associated with the selected object.
Remarks
If no block is specified and the selected object does not have an associated digital point, an error
message will occur informing the user that the write was not successful.
OpenPicture Subroutine
Opens the specified Picture.
Syntax
OpenPicture [Picture], [PictureAlias], [TopPosition], [LeftPosition], [intErrorMode],
[CallingPicture], [TSPicType], [TagList], [bNewInstance]
Properties
The OpenPicture subroutine syntax has these parts:
750
IFIX Automation Reference
Part Description
Picture String. (Optional) The file name of the Picture you want to open. If no file name
is specified, the Open dialog is launched allowing the user to select a picture to
open.
PictureAlias String. (Optional) The alias that you want to assign to the Picture.
TopPosition Variant. (Optional) The position at which you want to place the top of the
Picture. Default = 0.
LeftPosition Variant. (Optional) The position at which you want to place the left side of the
Picture. Default = 0.
Calling Object. (Optional) The picture whose tag status functionality will be accessed.
Picture
TagList Variant. (Optional) An array of strings to be used in the tag status picture.
bNewInstance Boolean. (Optional) Describes whether the picture is a new instance. This field is
useful when opening multiple pictures.
True – Opens a new instance of the same picture.
False – Does not open a new instance of the picture. This is the default setting.
Remarks
The alias is a user-defined generic picture name. By using aliases, you can control the opening and
closing of multiple pictures without concern for the currently displayed picture.
751
iFIX Automation Reference
Tag status functionality is available only when no Picture string has been provided and if the
CallingPicture and TSPicType parameters are provided. If the CallingPicture parameter is not
provided, the call to OpenPicture is treated as a regular OpenPicture request. If the CallingPicture
parameter is provided, but the TSPicType parameter is not, the call to OpenPicture generates an error
message.
If a string has been provided via the Picture parameter, the standard OpenPicture functionality is
invoked. In this case, the CallingPicture, TSPicType, and TagList parameters are ignored.
In run mode, you can modify the VBA scripting in a new instance of a picture. However, modifications
to scripts in an instance of a picture will not be saved. Saving changes to scripts in run mode is not
allowed. To make changes to a script in the main picture, switch to configure mode and edit the script
in the main picture (not the instance).
OpenTGDPicture Subroutine
Opens the specified Picture with the specified tag group file.
Syntax
OpenTGDPicture [Picture], [PictureAlias], [TopPosition], [LeftPosition], [TagGroupName],
[intErrorMode], [bNewInstance]
Properties
The OpenTGDPicture subroutine syntax has these parts:
Part Description
Picture String. (Optional) The file name of the Picture you want to open. If no file
name is specified, the Open dialog is launched allowing the user to select a
picture to open.
PictureAlias String. (Optional) The alias that you want to assign to the Picture.
TopPosition Variant. (Optional) The position at which you want to place the top of the
Picture. Default = 0.
LeftPosition Variant. (Optional) The position at which you want to place the left side of the
Picture. Default = 0.
TagGroupName String (Optional) The tag group file name. Do not specify a path for this
parameter.
752
IFIX Automation Reference
Part Description
bNewInstance Boolean. (Optional) Describes whether the picture is a new instance. This field
is useful when opening multiple pictures.
True – Opens a new instance of the same picture.
False – Does not open a new instance of the picture. This is the default setting.
Remarks
The alias is a user-defined generic picture name. By using aliases, you can control the opening and
closing of multiple pictures without concern for the currently displayed picture.
In run mode, you can modify the VBA scripting in a new instance of a picture. However, modifications
to scripts in an instance of a picture will not be saved. Saving changes to scripts in run mode is not
allowed. To make changes to a script in the main picture, switch to configure mode and edit the script
in the main picture (not the instance).
PictureAlias Subroutine
Assigns an alias, or nickname, to the current Picture.
Syntax
PictureAlias PictureAlias, [intErrorMode]
Properties
The PictureAlias subroutine syntax has these parts:
Part Description
PictureAlias String. The alias that you want to assign to the current picture.
753
iFIX Automation Reference
Part Description
PrintReport Subroutine
Prints the specified Crystal Report.
Syntax
PrintReport Report, [Prompt],[Copies],[Coll],[StartNo],[EndNo], [intErrorMode]
Properties
The PrintReport subroutine syntax has these parts:
Part Description
Report String. The name of the report to print, including the file’s full path.
Prompt Boolean. (Optional) If True, the user is prompted with the open report dialog,
allowing the user to select the report to print. If False, the report specified is
printed. This option is ignored in Crystal XI.
Copies Long. (Optional) The number of copies to print. Default = 1. This option is
ignored in Crystal XI.
Coll Boolean. (Optional) If True, the reports are collated. If False, they are not. This
option is ignored in Crystal XI.
StartNo Long. (Optional) The first page of the report to print. This option is ignored in
Crystal XI.
EndNo Long. (Optional) The last page of the report to print. This option is ignored in
Crystal XI.
754
IFIX Automation Reference
Part Description
intErrorMode Integer. (Optional). The error mode. This option is ignored in Crystal XI.
0 (default) – Allows the subroutines to provide the error messages. Errors are
displayed in the form of a message box. If no entry is made for the intErrorMode
parameter, the default is used.
1 - Allows the user to handle the error messages. Errors in the subroutines are
passed back to the calling routine for handling.
2 – Writes errors to all destinations. No error messages display. Instead, the
errors are written to all iFIX destinations, including the Alarm History window
destinations using SendOperatorMessage.
QuickAdd Subroutine
Launches the Quick Add dialog box for adding a data block.
Syntax
QuickAdd (DataSource, [intErrorMode])
Properties
The QuickAdd subroutine syntax has these parts:
Part Description
DataSource String. The name of the database block you want to add.
Return Value
Integer. The status of the database block.
755
iFIX Automation Reference
1 = Invalid Syntax
RampValue Subroutine
Manually ramps the specified database block by increasing or decreasing its current value by a
specified percentage of the engineering units (EGU) range.
Syntax
RampValue RampValue, ByPercent, [DataPoint], [intErrorMode]
Properties
The RampValue subroutine syntax has these parts:
Part Description
RampValue String. The value you want to use to ramp the database block.
ByPercent Boolean. If True, the block is ramped by the percentage of the EGU range. If
False, the data point is ramped by the RampValue.
DataPoint String. (Optional). The name of the database block that you want to ramp. If no
block is specified, the value of the data source associated with the selected object
is ramped.
756
IFIX Automation Reference
ReadValue Subroutine
Reads the value of the specified block.
Syntax
ReadValue [DataPoint], [intErrorMode]
Properties
The ReadValue subroutine syntax has these parts:
Part Description
DataPoint String. (Optional). The database block that you want to read. If no block is
specified, the data source associated with the selected object is read.
Return Value
ReadValue returns the value of the specified block.
RegCloseKey Subroutine
Closes a key in the system registry. FactoryGlobals provides the Declare statement in
GlobalSubroutines so you can use this Windows API call without declaring it in your procedures.
NOTE: For Crystal XI users, use the PrintReport subroutine instead of using the RegOpenKeyEx and
RegCloseKeyEx subroutines. The PrintReport subroutine will do all of the registry entries for you.
Syntax
RegCloseKey (hKey)
757
iFIX Automation Reference
Properties
The RegCloseKey subroutine syntax has this part:
Part Description
Return Value
Long. Zero on success. All other values indicate an error.
Remarks
RegCloseKey is a Windows API call.
RegOpenKeyEx Subroutine
Opens an existing registry key. FactoryGlobals provides the Declare statement in GlobalSubroutines so
you can use this Windows API call without declaring it in your procedures.
NOTE: For Crystal XI users, use the PrintReport subroutine instead of using the RegOpenKeyEx and
RegCloseKeyEx subroutines. The PrintReport subroutine will do all of the registry entries for you.
Syntax
RegOpenKeyEx (hKey, lpSubKey, ulOptions, samDesired, phkResult)
Properties
The RegOpenKeyEx subroutine syntax has these parts:
Part Description
hKey Long. Handle of an open key or one of the standard key names.
HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
HKEY_CURRENT_CONFIG
HKEY_DYN_DATA
Use the VB5.0 API Viewer to get the correct hex number for the key.
758
IFIX Automation Reference
Part Description
samDesired Long. One or more constants with the prefix KEY_ that describes which operation
are allowed for this key.
phkResult
Long. Variable to load with a handle to the open key.
Return Value
Long. Zero on success. All other values indicate an error.
Remarks
RegOpenKeyEx is a Windows API call.
ReplacePicture Subroutine
Closes a Picture and replaces it with another Picture. If a picture with a specified tag group file is
already open in the WorkSpace, another instance of that picture with the same tag group file opens in
the WorkSpace. The picture being opened will stretch or skew to fit the document height and width of
the picture being replaced. The DisableAutoScale setting does not affect this behavior.
Syntax
ReplacePicture NewPicture, [OldPicture], [TagGroupFileName], [intErrorMode],
[bShowPictureNotOpenErrors]; [CallingPicture]; [TSPicType]; [TagList]; [bNewInstance]
Properties
The ReplacePicture subroutine syntax has these parts:
Part Description
NewPicture String. The file name of the Picture you want to open.
OldPicture String. (Optional) The file name of the Picture you want to
replace. If no picture is specified, the currently active picture is
replaced.
759
iFIX Automation Reference
Part Description
String. (Optional) The file name of the Tag Group File you
TagGroupFileName want to load with the new picture.
Remarks
Tag status functionality is available only when no NewPicture string has been provided and if the
CallingPicture and TSPicType parameters are provided. If the CallingPicture parameter is not
provided, the call to ReplacePicture is treated as an invalid ReplacePicture request. If the
760
IFIX Automation Reference
CallingPicture parameter is provided, but the TSPicType parameter is not, the call to ReplacePicture is
treated as an invalid ReplacePicture request.
If a string has been provided via the NewPicture parameter, the standard ReplacePicture functionality
is invoked. In this case the CallingPicture, TSPicType, and TagList parameters are ignored.
If possible, always make this call the last line in your script. Note that when the ReplacePicture
subroutine is used, and the document being replaced is the document that contains the script, the call
must be the last line in the script. Otherwise, you may experience unexpected behavior when executing
the script.
If the ReplacePicture subroutine is not in the picture being replaced and is not the last line in your
script, be certain that the operation is complete before the rest of the script continues to execute.
Immediately after making the call, you must relinquish the CPU by calling DoEvents. For example, the
following sample script replaces a picture called TANK1 with a picture called TANK2, then opens
another picture called TANK3:
DoEvents
OpenPicture "Tank3"
End Sub
ReplaceTGDPicture Subroutine
Closes a Picture and replaces it with another Picture with the specified tag group file. If a picture with
that specified tag group file is already open in the WorkSpace, another instance of that picture with the
same tag group file opens in the WorkSpace.
Syntax
ReplaceTGDPicture NewPicture, TagGroupName, [OldPicture], [bNewInstance]
Properties
The ReplaceTGDPicture subroutine syntax has these parts:
Part Description
NewPicture String. The file name of the Picture you want to open.
OldPicture String. (Optional) The file name of the Picture you want to replace. If no
picture is specified, the currently active picture is replaced.
761
iFIX Automation Reference
Part Description
bNewInstance Boolean. (Optional). Describes whether the picture is a new instance. This field
is useful when opening multiple pictures. If the value is set to TRUE, a new
instance of the same picture is opened. If the value is set to FALSE, then a new
instance of the picture is not opened. The default is FALSE.
Remarks
If possible, always make this call the last line in your script. Note that when the ReplaceTGDPicture
subroutine is used, and the document being replaced is the document that contains the script, the call
must be the last line in the script. Otherwise, you may experience unexpected behavior when executing
the script.
If the ReplaceTGDPicture subroutine is not in the picture being replaced and is not the last line in your
script, be certain that the operation is complete before the rest of the script continues to execute.
Immediately after making the call, you must relinquish the CPU by calling DoEvents.
S-Z
SetAuto Subroutine
Sets the specified block to automatic mode.
Syntax
SetAuto [DataPoint], [intErrorMode]
Properties
The SetAuto subroutine syntax has these parts:
Part Description
DataPoint String. (Optional) The name of the database block that you want to set to
automatic mode. If no block is specified, the database block associated with the
selected object is set to automatic mode.
762
IFIX Automation Reference
Part Description
SetManual Subroutine
Sets the specified block to manual mode.
Syntax
SetManual [DataPoint], [intErrorMode]
Properties
The SetManual subroutine syntax has these parts:
Part Description
DataPoint String. (Optional) The name of the database block that you want to set to manual
mode. If no block is specified, the database block associated with the selected
object is set to manual mode.
763
iFIX Automation Reference
ShellExecute Subroutine
Finds the file name of the program that is associated with a specified file and either runs the program
for the file or prints the file. FactoryGlobals provides the Declare statement in GlobalSubroutines so
you can use this Windows API call without declaring it in your procedures.
Syntax
ShellExecute (hwnd, lpOperation, lpFile, lpParameters, lpDirectory, nShowCmd)
Properties
The ShellExecute subroutine syntax has these parts:
Part Description
lpOperation String. The string “Open” to open the lpFile document or “Print” to print it. You
can use vbNullString to default to “Open”.
lpFile String. A program name or the name of a file to print or open using the associated
program.
lpParameters String. A string with parameters to pass to the exe file if lpszFile is an executable
file. VbNullString if lpszFile refers to a document file or if on parameters are
used.
nShowCmd Long. A constant value specifying how to show the launched program.
Return Value
Long. The success of the ShellExecute call. A value greater than 32 signifies success.
Remarks
ShellExecute is a Windows API call.
ToggleDigitalPoint Subroutine
Toggles the current state of the digital block between open and closed.
764
IFIX Automation Reference
Syntax
ToggleDigitalPoint [DigitalPoint], [intErrorMode]
Properties
The ToggleDigitalPoint subroutine syntax has these parts:
Part Description
DigitalPoint String. (Optional). The name of the digital block that you want to toggle. If no
block is specified, it opens the digital point associated with the selected object.
ToggleManual Subroutine
Toggles the mode status of the specified block between manual and automatic modes.
Syntax
ToggleManual [DataPoint], [intErrorMode]
Properties
The ToggleManual subroutine syntax has these parts:
Part Description
DataPoint String. (Optional). The name of the database block whose state you want to
toggle. If no name is specified, the database block associated with the selected
object is toggled.
765
iFIX Automation Reference
Part Description
ToggleScan Subroutine
Toggles the scan status of the specified block.
Syntax
ToggleScan [DataPoint], [intErrorMode]
Properties
The ToggleScan subroutine syntax has these parts:
Part Description
DataPoint String. (Optional). The name of the database block whose scan status you want to
toggle. If you do not specify a name, the scan status of the database block
associated with the selected object is toggled.
766
IFIX Automation Reference
WriteValue Subroutine
Sets the value of the current value of the specified database block.
Syntax
WriteValue Value , [DataPoint], [intErrorMode]
Properties
The WriteValue subroutine syntax has these parts:
Part Description
Value String. The value that you want to write to the specified database block.
DataPoint String. (Optional). The database block to which you want to write the specified
value. If no block is specified, the data source associated with the selected object
is write.
767
Database Functions
• eda_add_block
• eda_delete_block
• eda_get_pdb_name
• eda_reload_databse
• eda_save_database
• eda_type_to_index
• FixGetMyName
• NlsGetText
eda_add_block Function
Add a new block of the specified type on the specified node.
Syntax
Function eda_add_block(NodeName, TagName, BlkType)
Properties
The eda_add_block function syntax has these parts:
Part Description
769
iFIX Automation Reference
Return Value
Integer. FE_OK if data is valid
Remarks
Note that the type is passed as an integer. A type string such as “AI” can be converted to a type index
by calling the eda_type_to_index function as listed below. The new tag will be initialized to the same
default values that appear when a new tag is created with DatabaseManager. These values can be
written using the various other functions mentioned here.
eda_delete_block Function
Deletes the specified database block from the database.
Syntax
Function eda_delete_block (NodeName, TagName)
Properties
The eda_delete_block function syntax has these parts:
Part Description
Return Value
FE_OK if successful; FE_XXX if error.
Remarks
Deletes the specified block from the database. If this block is part of a chain, then the previous and
next blocks of the chain will be reconnected. It is good practice to place the block OFFSCAN before
deleting it.
eda_get_pdb_name Function
Retrieves the PDB file name from the database.
770
IFIX Automation Reference
Syntax
Function eda_get_pdb_name As Integer (NodeName, DatabaseName, BufSize)
Properties
The eda_get_pdb_name function syntax has these parts:
Part Description
NodeName String. The name of the node on which the database resides.
Return Value
Integer. FE_OK if no error.
Remarks
This is the name of the current PDB file loaded by the system (for example, by the DBB RELOAD
function or by the eda_reload_database function). The name is returned without the path or extension.
The DatabaseName parameter must be declared either as fixed-length strings of 260 characters or as
variable-length strings that are initialized as 260 characters before calling eda_get_pdb_name. The
NodeName parameter must be declared either as fixed-length strings of 9 characters or as variable-
length strings that are initialized as 9 characters before calling eda_get_pdb_name. For example, you
could initialize the NodeName parameter in either of the following ways:
or
eda_reload_database Function
Loads the specified PDB to a file into the specified node.
771
iFIX Automation Reference
Syntax
Function eda_reload_database (NodeName, DatabaseName)
Properties
The eda_reload_database function syntax has these parts:
Part Description
NodeName String. The name of the node on which to re-load the database.
DatabaseName String. The name of the database file that is to be loaded into memory.
Return Value
Integer. FE_OK if no error
Remarks
This is equivalent to the DBB Reload... function. The name passed becomes the new name of the
database. The name should be passed without a path or extension.
NOTE: The previous database in memory is replaced. No check is made to see if the database has
been modified.
eda_save_database Function
Saves the current active database to a file.
Syntax
Function eda_save_database (NodeName, DatabaseName)
Properties
The eda_save_database function syntax has these parts:
Part Description
772
IFIX Automation Reference
DatabaseName String. The name of the file to which the current database is to be saved.
Return Value
Long. Some typical errors would be:
Value Description
FE_OK Successful.
Remarks
This is equivalent to the DBB Save As... function. The name passed becomes the new name of the
database. The name should be passed without a path or extension.
NOTE: This file will only exist on the node whose database is being saved. This may be different than
the node that is making the eda_save_database call.
eda_type_to_index Function
Retrieves the type index for the specified string containing a block type.
Syntax
Function eda_type_to_index (NodeName, BlockType)
Properties
The eda_type_to_index function syntax has these parts:
Part Description
773
iFIX Automation Reference
Return Value
Integer. The database block type (a value between 1 and 150). Returns 0 if the type name is not
recognized.
Remarks
The block index returned by this function should be used when adding blocks to the database via the
eda_add_block function.
FixGetMyname Function
Get the node name of this node. This function works whether or not the FIX is running.
Syntax
Function FixGetMyname (Myname, MaxSize)
Properties
The FixGetMyname function syntax has these parts:
Part Description
Return Value
Long.
Value Description
FTK_OK Successful.
774
IFIX Automation Reference
Remarks
The maximum size for MyName (MaxSize) is NODE_NAME_SIZE.
The MyName parameter must be declared either as a fixed-length string of 9 characters before calling
FixGetMyName. For example, initialize the MyName parameter in the following way:
When the length of the Myname string (the node name) does not fill the maximum size (9 characters),
the returned string contains NULL. To remove the NULL from the VBA string, you can use the
following code snippet:
rtn = FixGetMyname(Myname, 9)
StrMyNode = ""
For i = 1 To Len(Myname)
If Asc(rtn) >= 65 And (Asc(rtn) <= 95) Then ‘check if I’m Alpha
Else
If Asc(rtn) >= 48 And (Asc(rtn) <= 57) Then ‘Check if I’m numeric
End If
Next i
In addition, you may want to check for characters such as the underscore (_) and other valid characters
used in a node name. The previous example assumes that your node name only contains the characters
A to Z, or the numbers 1 to 9.
775
iFIX Automation Reference
NlsGetText Function
Translates an error number returned as a string.
Syntax
Function NlsGetText (ErrCode, MsgString, MaxLength)
Properties
The NlsGetText function syntax has these parts:
Part Description
ErrCode Integer. The error code returned from a previous eda function call.
Return Value
Long.
Part Description
FTK_OK Successful.
Remarks
The Error originates from iFIX. If the message is longer than specified in MaxLength, then string will
be truncated. If no message exists for Error, FTK_NO_MESSAGE will be returned.
The MsgString parameter must be declared as a fixed-length string of 255 characters before calling
NlsGetText. For example, you
776
IFIX Automation Reference
777
Examples
Examples
The following list contains available examples. For information on non-iFIX methods, refer to the
appropriate help system.
A
AboutBox Method Example
779
iFIX Automation Reference
B
BringToFront Method Example
C
CanConstruct Method Example
780
IFIX Automation Reference
D
DeActivateWorkspaceUI Method Example
781
iFIX Automation Reference
E
EditPicture Method Example
782
IFIX Automation Reference
F
FetchLimits Subroutine Example
783
iFIX Automation Reference
G
GeneratePicture Subroutine Example
784
IFIX Automation Reference
785
iFIX Automation Reference
H
HandleError Subroutine Example
I-K
ImportToolbar Method Example
786
IFIX Automation Reference
L
ListEvents Method Example
M-N
MakeLinesHorizontal Method Example
O
OffScan Subroutine Example
787
iFIX Automation Reference
P-Q
ParseConnectionSource Method Example
PauseAlarmRead Example
PixelToPercentageMethod Example
788
IFIX Automation Reference
R
RampValue Subroutine Example
789
iFIX Automation Reference
S
Save Method Example
790
IFIX Automation Reference
791
iFIX Automation Reference
T
TagGroupSubstitution Method Example
792
IFIX Automation Reference
U
UIActivate Method Example
V-Z
ValidateSignature Method Example
793
iFIX Automation Reference
AlarmSummaryOCX1.AboutBox
iRVal = AlarmSummaryOCX1.AckAlarmPage
AlarmSummaryOCX1.AckAlarmPageEx
iRVal = AlarmSummaryOCX1.AckAllAlarms
794
IFIX Automation Reference
AcknowledgeAllAlarms "TestPicture"
AcknowledgeAnAlarm "AI1"
Application.ActivateWorkspaceUI
Application.Documents.Add
Application.Documents.Add "Word.Document"
The following example adds the subroutine MySub to Rect1's Procedures collection.
The following example adds a line of code to the fifth line in Rect1's first event's event handler using
the Lines collection.
The following example adds a data Group to the Groups of the FixDataSystem FDS.
FDS.Groups.Add ("DataGroup1")
795
iFIX Automation Reference
Bitmap1.CurrentImage = Bitmap1.ImageCount
The following example adds a level to the Lookup object Lookup1, using an exact match comparison.
For each input of 40, this level will display an output of 75.
Lookup1.AddLevel 40, 75
796
IFIX Automation Reference
TestGroup.AddObject TestOval
AddPictureToStartupList Example
The following example adds a Picture named pic1.grf (in the D:\Program Files\Proficy\Proficy
iFIX\PIC directory) to the Runtime environment's startup list of the Proficy iFIX WorkSpace.
lErr = Application.UserPreferences.AddPictureToStartupList_
("D:\Program Files\Proficy\Proficy iFIX\pic\pic1.grf", True)
Note that the full path is required for the picture. Also note that the second paramater, when set to
TRUE, adds the picture to the Runtime startup list. When set to FALSE, it adds the picture to the
Configuration environment's startup list.
iPoint.x = 50.5
iPoint.y = 60.1
Polygon1.AddPoint iPoint
MsgBox strMessage
797
iFIX Automation Reference
End Sub
Dim o As Object
Set o = Application.ActiveDocument.Page.FindObject("Rect2")
AlarmHornEnabled Example
In Example 1, blnReturn contains the status of the system’s AlarmHornEnabled property
Example 1
Dim blnReturn As Boolean
blnReturn = AlarmHornEnabled
In Example 2, True passed to enable the alarm horn, then checks to see if
it was set.
Example 2
Dim blnReturn As Boolean
blnReturn = AlarmHornEnabled(True)
End If
AlarmHornEnabledToggle Example
This example shows how to toggle the alarm horn and read the return value that indicates how the
status was changed.
blnReturn = AlarmHornEnabledToggle
If blnReturn Then
Else
End If
798
IFIX Automation Reference
AlarmHornSilence Example
This example silences the alarm horn.
AlarmHornSilence
End Sub
Oval1.SelectObject False
Polygon1.SelectObject False
untitled1.Align 3
Chart1.AutoScaleDisplayLimits
Oval1.Select
TestPicture.BringToFront
799
iFIX Automation Reference
iRect.HorizontalPosition = 10.0
iRect.VerticalPosition = 30.0
iRect.EdgeWidth = 5
iRect.FillStyle = 1
iRect.Commit
800
IFIX Automation Reference
UserName = "expire"
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.PromptToChangePassword UserName
End If
Else
MsgBox "Password is due to expire in " & daysLeft & " days."
End If
Else
End If
ESig.CheckSecurityEnabled bEnabled
801
iFIX Automation Reference
bSuccess = ExpressionEditor1.CheckSyntax(strExpression)
UserName = "username"
PassWord = "password"
result = False
ESig.IsNodeSignEnabled bNodeSignEnabled
802
IFIX Automation Reference
MsgBox "User: " & UserName & vbCr & "Has rights to Bypass Signature? " &
result
MsgBox "User: " & UserName & vbCr & "Has rights to Security Area B? " &
result
Else
End If
UserName = "username"
PassWord = "password"
result = False
ESig.IsNodeSignEnabled bNodeSignEnabled
803
iFIX Automation Reference
feature
MsgBox "User: " & UserName & vbCr & "Has rights to Bypass Signature? " &
result
MsgBox "User: " & UserName & vbCr & "Has rights to Security Area B? " &
result
Else
End If
FDS.Groups.Clear
TestPicture.ClearUndo
Application.Documents.Close 1, 2
The following example opens the Document TestPicture and then closes it
without saving any changes.
iDoc.Close 2, 1
804
IFIX Automation Reference
CloseDigitalPoint "DO1"
ClosePicture "TestPicture"
iRect.HorizontalPosition = 10.0
iRect.VerticalPosition = 30.0
iRect.EdgeWidth = 5
iRect.FillStyle = 1
iRect.Commit
A connection is a one-way mechanism. Therefore, changes to the caption property directly (via OLE
automation) will not be written to the connected source. Also, it may be necessary to transform the
data from one type or range to another to create the appropriate user interface (i.e. numeric to string,
numeric to color, numeric to screen coordinates). To accomplish this, an animation object should be
used (Linear, Lookup, Format).
objAnim.Source = "Fix32.Scada1.AI1.F_CV"
805
iFIX Automation Reference
Oval1.ConnectedPropertyCount lCount
806
IFIX Automation Reference
UpdateDynamoResult
iDataSourceOption = g_WizardConfig.iDataSourceOption
If g_ReturnFromPromptForChoiceOnConvert =
PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_BUT_NOT_APPLY
ElseIf g_ReturnFromPromptForChoiceOnConvert =
PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_AND_APPLY
ElseIf g_ReturnFromPromptForChoiceOnConvert =
PROMPT_DLG_SEL_DO_NOT_UPDATE_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_NOT_UPDATE
End If
End If
iUpdateOptions = &H0
iUpdateOptions = UPDATE_OPTION_ON_MISMATCH_PROMT_FOR_CHOICE
iUpdateOptions = UPDATE_OPTION_ON_MISMATCH_UPDATE_DYNAMO +
UPDATE_OPTION_ON_MISMATCH_APPLY_DATA_SOURCES
iUpdateOptions = UPDATE_OPTION_ON_MISMATCH_UPDATE_DYNAMO
End If
807
iFIX Automation Reference
End If
End If
End If
PlugandSolve.GeometryHelperObj.Convert_A_Group_To_A_Dynamo_By_Ref
objGroup, iUpdateOptions, mobjStrMgr.GetNLSStr(4143), iResult
strReturnMsg = PlugandSolve.GeometryHelperObj.Get_Last_Result_String
' End If
'End If
808
IFIX Automation Reference
ConvertADynamo = DYNAMO_UPDATED
End If
ConvertADynamo = DYNAMO_NOTUPDATED
End If
ConvertADynamo = DYNAMO_UPDATE_ABORTED
End If
End Function
Call ObjHelper.ConvertPipe
iAreaID = System.ConvertSecurityAreaNameToNumber("D")
sAreaName = System.ConvertSecurityAreaNumberToName(11)
809
iFIX Automation Reference
Oval1.Select
TestPicture.Copy
Application.Coupled_Activate_Workspace_UI
Application.Coupled_DeActivate_Workspace_UI False
The following example de-activates the WorkSpace UI, allowing a form to act modeless. This call
would be made on the form's initialization.
Application.Coupled_DeActivate_Workspace_UI True
Oval1.Select
TestPicture.CopyAsBitmap
Me.Create_Dynamo_By_Grouping
End Sub
810
IFIX Automation Reference
iActiveX.CreateFromDialog
iActiveX.CreateFromProgId "ALARMSUMMARYOCX.AlarmSummaryOCXCtrl.2"
iOval.CreateWithMouse
Pie1.Select
TestPicture.Cut
Application.DeActivateWorkspaceUI False
811
iFIX Automation Reference
The following example de-activates the WorkSpace UI, allowing a form to act modeless. This call
would be made on the form's initialization.
Application.DeActivateWorkspaceUI True
TestPicture.DefaultView
The following example sets the Picture TestPicture to its default window location, preventing the
repainting of the picture.
TestPicture.DefaultView False
iRval = AlarmSummaryOCX1.DeleteAllAlarms
LineChart1.DeleteAllDataSets
LineChart1.DeleteDataSet 0
812
IFIX Automation Reference
Bitmap1.DeleteImage 1
Dim x As Integer
x = Chart1.Pens.Count
Chart1.DeletePen x
The following example deletes a pen in a Chart named Chart1, and then replaces it with another one
using the AddPen method, if it does not already exist.
Strtn = Chart1.CurrentPen
If user_reponse = 6 Then
Chart1.DeletePen (Strtn)
End If
End Sub
‘delete all pen from the pen collection under a specific chart
813
iFIX Automation Reference
Chart1.DeletePen (Inti)
Next Inti
End If
End Sub
‘after checking the pens are not already inside the pen collection
' first time the chart is used the collection contains a default pen
Chart1.DeletePen (1)
End If
checkifalreadyexist ("Fix32.Alice.MyTag1")
checkifalreadyexist ("Fix32.Alice.MyTag2")
checkifalreadyexist ("Fix32.Alice.MyTag3")
End Sub
Egu_tagname = Tagname
If Chart1.Pens.Count = 0 Then
Chart1.AddPen (loc_tagname)
Else
Tag_found = False
For i = 1 To Chart1.Pens.Count
Tag_found = True
814
IFIX Automation Reference
Else
End If
Next i
Chart1.AddPen (loc_tagname)
Tag_found = False
End If
End If
End Function
PolyLine1.DeletePoint 3
Chord1.SelectObject False
Polygon1.SelectObject False
TestPicture.DeleteSelectedObjects
TestSchedule.DemandFire "MyTimer"
The following example fires the OnTimeOut event for the Timer MyTimer.
MyTimer.DemandFire
The following example fires whatever event is configured for the Event object MyEvent.
MyEvent.DemandFire
815
iFIX Automation Reference
TestPicture.DeselectObject True
Chord1.DestroyObject
DisableAlarm "AI1"
Oval1.Disconnect "VerticalFillPercentage"
Oval1.DisplaysControlPoints False
816
IFIX Automation Reference
Call ObjHelper.DoExtendLines
Call ObjHelper.DoLinesToPolyline
TestSchedule.DoMenuCommand schNewTimer
The following example refreshes the Schedule after the Event object MyEvent has been removed from
the Schedule TestSchedule.
TestSchedule.RemoveObject "MyEvent"
TestSchedule.DoMenuCommand scHREFreshView
817
iFIX Automation Reference
Call ObjHelper.DoTrimLines
Oval1.Select
TestPicture.Duplicate
TestPicture.EditPicture
ColorButton1.Enable False
EnableAlarm "AI1"
818
IFIX Automation Reference
' Useful to add a reference to iFix Geometry Helper & iFIX Collection
Set GH = Me.BuildObject("GeometryHelper")
Next aDynamo
GH.DestroyObject
End Sub
819
iFIX Automation Reference
GetAllGroupList = False
GoTo CLEAN_UP
End If
'End If
colDIList.Remove (1)
Loop
Call PlugandSolve.GeometryHelperObj.Enumerate_All_Groups(colPIC,
colList)
GetAllGroupList = True
GoTo CLEAN_UP
End If
colDIList.Add objDI
Next objDI
GetAllGroupList = True
CLEAN_UP:
820
IFIX Automation Reference
End Function
' Useful to add a reference to iFix Geometry Helper & iFIX Collection
Set GH = Me.BuildObject("GeometryHelper")
Next aDynamo
GH.DestroyObject
End Sub
821
iFIX Automation Reference
GetOldDynamoList = False
GoTo CLEAN_UP
End If
'End If
colDMList.Remove (1)
Loop
Call
PlugandSolve.GeometryHelperObj.Enumerate_Top_Level_Groups(colFDS,
colList)
GetOldDynamoList = True
GoTo CLEAN_UP
End If
colDMList.Add objDM
822
IFIX Automation Reference
Next objDM
GetOldDynamoList = True
CLEAN_UP:
End Function
The sample code below illustrates how to use the ESignature object in VBA applications.
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.IsSignatureRequired 0, bSigRequired
Value = 1
ESig.GetSignatureAndWriteValue 0, Value
823
iFIX Automation Reference
Else
'Signature not required for this data source, just write the value
End If
Else
End If
Chart1.ExchangePenPositions 3, 1
End Sub
End Sub
pic.LanguageDesired = ES_Spanish
pic.ExportLanguageFile
- OR -
pic.ExportLanguageFile (ES_Spanish)
824
IFIX Automation Reference
If intRet = 0 Then
txtHighEGU.Caption = sngHi
txtLowEGU.Caption = sngLo
End If
TestPicture.FindAndReplaceDialog
825
iFIX Automation Reference
The following example returns a data item reference for the block AI1 on
node NODE1.
Set iLinear =
System.FindObject("TestPicture.Rect4.AnimatedHorizontalFill")
826
IFIX Automation Reference
sTarget = "FIX32.NODE1.AI1.F_CV"
TestPicture.FitDocumentToWindow
The following example changes the size of the TestPicture Document to fit within the window,
preventing the repainting of the Picture.
TestPicture.FitWindowToDocument
The following example changes the size of the window to fit the size of the TestPicture Document,
preventing the repainting of the Picture.
lAccess = System.FixCheckApplicationAccess(DatabaseManager)
827
iFIX Automation Reference
lAccess = System.FixCheckApplicationAccessQuiet(DatabaseManager)
lAccess = System.FixCheckAreaAccess(11)
lAccess = System.FixCheckAreaAccessQuiet(11)
lEnabled = System.FixCheckSecurityEnabled()
System.FixGetManualAlmDeleteEnabled bManlAlmDel
End If
828
IFIX Automation Reference
System.FixLogout
Text1.FontProperties
TestPicture.FullView
829
iFIX Automation Reference
aPicInfo.lfTopPct = TopPct
aPicInfo.lfLeftPct = LeftPct
aPicInfo.lfHeightPct = 100
aPicInfo.lfWidthPct = 100
aPicInfo.lBkColor = RGB(255,0,0)
aPicInfo.szName = "Tank1"
aPicInfo.bPixels = True
aPicInfo.bTitlebar = True
aPicInfo.bSystemMenu = True
aPicInfo.bResizable = True
aPicInfo.bAlwaysOnTop = False
aPicInfo.bRuntimeVisible = True
Dim retVal
retVal = GeneratePicture(aPicInfo)
iDataSourceOption = g_WizardConfig.iDataSourceOption
If g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_BUT_NOT_APPLY
ElseIf g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL Then
830
IFIX Automation Reference
iDataSourceOption = DYNAMO_UPDATE_AND_APPLY
ElseIf g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_DO_NOT_UPDATE_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_NOT_UPDATE
End If
End If
PlugandSolve.GeometryHelperObj.Update_A_Dynamo_By_Ref
objMasterDynamo, objDynamoInstance, iDataSourceOption,
mobjStrMgr.GetNLSStr(4069), iResult
strReturnMsg = PlugandSolve.GeometryHelperObj.Get_Last_Result_String
iPrompt = PlugandSolve.GeometryHelperObj.Get_Last_Prompt_Value
If (iPrompt = PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL) Or _
(iPrompt = PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL)
Or _
g_ReturnFromPromptForChoice = iPrompt
End If
End If
' strReturnMsg = ">>>" & strDIName & " was not updated with " &
strDMName
831
iFIX Automation Reference
' Else
' strReturnMsg = strDIName & " was updated successfully with " &
strDMName
' End If
UpdateADynamo = DYNAMO_UPDATED
UpdateADynamo = DYNAMO_NOTUPDATED
Else
UpdateADynamo = DYNAMO_UPDATE_ABORTED
End If
End Function
832
IFIX Automation Reference
iDataSourceOption = g_WizardConfig.iDataSourceOption
If g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_BUT_NOT_APPLY
ElseIf g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_AND_APPLY
ElseIf g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_DO_NOT_UPDATE_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_NOT_UPDATE
End If
End If
PlugandSolve.GeometryHelperObj.Update_A_Dynamo_By_Ref
objMasterDynamo, objDynamoInstance, iDataSourceOption,
mobjStrMgr.GetNLSStr(4069), iResult
strReturnMsg = PlugandSolve.GeometryHelperObj.Get_Last_Result_String
iPrompt = PlugandSolve.GeometryHelperObj.Get_Last_Prompt_Value
If (iPrompt = PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL) Or _
(iPrompt = PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL)
Or _
g_ReturnFromPromptForChoice = iPrompt
833
iFIX Automation Reference
End If
End If
' strReturnMsg = ">>>" & strDIName & " was not updated with " &
strDMName
' Else
' strReturnMsg = strDIName & " was updated successfully with " &
strDMName
' End If
UpdateADynamo = DYNAMO_UPDATED
UpdateADynamo = DYNAMO_NOTUPDATED
Else
UpdateADynamo = DYNAMO_UPDATE_ABORTED
End If
End Function
834
IFIX Automation Reference
2. In the tree view, double-click the Project_PlugandSolve folder, and then the Modules folder,
and finally the modDynamoUpdater.
3. Search for UpdateADynamo to locate this code.
Dim obj
GetAllConnections Me
Next
End Sub
lErr = AlarmSummaryOCX1.GetColHeadings(bstrColHeadings)
835
iFIX Automation Reference
836
IFIX Automation Reference
user.
SetName = "TestUser"
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.SetContinuousUser SetName
ESig.GetContinuousUser UserName
Else
End If
End Sub
837
iFIX Automation Reference
End Sub
Dim dt As Date
Return Value
838
IFIX Automation Reference
sDecimal = GetDecimalSeparator
Bitmap1.CurrentImage = 4
errhand:
sErrString = System.GetErrorString(Err.Number)
839
iFIX Automation Reference
If lFound = 1 Then
CurrentObject.Procedures.Remove lIndex
End If
GetFormDynamoColor frmDynamoColor
840
IFIX Automation Reference
ESig.IsNodeSignEnabled bNodeSignEnabled
'Show Results
841
iFIX Automation Reference
+ ") " + PerformComment + " and verified by " + VerifyUserName + " (" +
VerifyFullName + ") " + VerifyComment
Else
End If
Else
End If
nNumOfDS = LineChart1.GetNumberOfDataSets
842
IFIX Automation Reference
Set iLookup =
System.FindObject("TestPicture.Oval1.AnimatedForegroundColor")
strDecChar = Space$(255)
'Get the decimal separator and the count of characters for the thousand
'separator
Exit Function
ErrorHandler:
HandleError
End Function
843
iFIX Automation Reference
Objects(0) = "MyTimer"
Objects(1) = "MyTimer1"
Properties(0) = "StartTime"
Properties(1) = "Interval"
RTN = ""
Mypath = System.BasePath
RTN = Dir(myfile)
'File do exist
Kill myfile
End If
844
IFIX Automation Reference
For i = 1 To Chart1.Pens.Count
For j = 0 To (lNumPts - 1)
Value = vVal(j)
Time = vPsa(j)
Quality = vQual(j)
Mill = vMill(j)
Write #1, Chart1.Pens.Item(i).Source; " "; Time; " "; Value; ""
Next j
Next i
Close #1
End If
Dim dX as double
Dim dY as double
dX = iPoint.x
dY = iPoint.y
845
iFIX Automation Reference
lLow = AlarmSummaryOCX1.GetPriorityColor(7)
lMedium = AlarmSummaryOCX1.GetPriorityColor(6)
lHigh = AlarmSummaryOCX1.GetPriorityColor(5)
GetProcedureIndex Example
The following example finds the index of the procedure Rect2_DisplayMessage in the
ActiveDocument's project.
Dim o As Object
Set o = Application.ActiveDocument.Page.FindObject("Rect2")
If (lFound) Then
End If
846
IFIX Automation Reference
Dim vtResults
Dim vtAttributes
Dim LoEGUval
strLoEGU = vtAttributes(0)
LoEGUval = vtResults(0)
In the above example, the variable strLoEGU will now hold the string "FIX32.NODE1.AI1.A_ELO"
and the variable LoEGUval will hold tag AI1's low EGU value.
847
iFIX Automation Reference
848
IFIX Automation Reference
ESig.IsNodeSignEnabled bNodeSignEnabled
849
iFIX Automation Reference
'Show Results
Else
End If
Else
End If
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.Initialize "Fix32.thisnode.DO1.F_CV"
ESig.IsSignatureRequired 0, bSigRequired
'Capture the signature, write the new value and send a message to the
audit trail
NewValue = 1
850
IFIX Automation Reference
ESig.GetSignatureAndWriteValue 0, NewValue
Else
End If
Else
End If
lHiHi = AlarmSummaryOCX1.GetStatusColor(2)
851
iFIX Automation Reference
Dim Dt As Date
strDecChar = Space$(255)
'Get the decimal separator and the count of characters for the thousand
'separator
Exit Function
ErrorHandler:
HandleError
End Function
852
IFIX Automation Reference
UserName = "username"
PassWord = "password"
result = False
ESig.IsNodeSignEnabled bNodeSignEnabled
MsgBox "User: " & UserName & vbCr & "Has rights to Bypass Signature? " &
result
MsgBox "User: " & UserName & vbCr & "Has rights to Security Area B? " &
result
Else
End If
853
iFIX Automation Reference
System.GlobalScrollBackFast
End Sub
System.GlobalScrollBackSlow
End Sub
System.GlobalScrollForwardFast
End Sub
854
IFIX Automation Reference
RightButton_Click()
System.GlobalScrollForwardSlow
End Sub
System.GlobalStartTime = DTPicker7.Value
System.GlobalTimerApply
End Sub
Oval1.SelectObject False
Polygon1.SelectObject False
TestPicture.Group
855
iFIX Automation Reference
strDecChar = Space$(255)
'Get the decimal separator and the count of characters for the thousand
'separator
Exit Function
ErrorHandler:
HandleError
End Function
I-K
856
IFIX Automation Reference
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.Initialize "Fix32.thisnode.DO1.F_CV"
'Validate the signature, write the new value and send a message to the
audit trail
NewValue = 1
Else
End If
Else
End If
857
iFIX Automation Reference
Else
End If
DataSources(0) = "Fix32.THISNODE.TAG1.F_CV"
DataSources(1) = "Fix32.THISNODE.TAG2.F_CV"
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.InitializeList DataSources
If bSigRequired Then
Else
'signature is not required for this list, check info parameter for reason
858
IFIX Automation Reference
End If
Else
End If
iPoint.x = 55
iPoint.y = 75
PolyLine1.InsertPoint 3, iPoint
LineChart1.InteractiveExport
End Sub
bIsVisible = TestPicture.IsColorSelectionVisible
859
iFIX Automation Reference
iLookup.IsEmpty bIsEmpty
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.Initialize "Fix32.thisnode.DO1.F_CV"
'Validate the signature, write the new value and send a message to the
audit trail
NewValue = 1
860
IFIX Automation Reference
Else
End If
Else
End If
Else
End If
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.Initialize "Fix32.thisnode.DO1.F_CV"
861
iFIX Automation Reference
'Validate the signature, write the new value and send a message to the
audit trail
NewValue = 1
Else
End If
Else
End If
Else
End If
DataSources(0) = "Fix32.THISNODE.TAG1.F_CV"
DataSources(1) = "Fix32.THISNODE.TAG2.F_CV"
ESig.IsNodeSignEnabled bNodeSignEnabled
862
IFIX Automation Reference
ESig.InitializeList DataSources
If bSigRequired Then
Else
'signature is not required for this list, check info parameter for reason
End If
Else
End If
bUserFxg = IsUserFxg
The following example retrieves the Item object associated with index 3 in the Lines collection for the
second item in the Procedures collection for the object CurrentObject.
863
iFIX Automation Reference
Next
End Sub
Next
864
IFIX Automation Reference
Next
bNT4NamesOnly = True
objSecSynch.ListWindowsGroupNames bNT4NamesOnly
Setting the bNT4NamesOnly variable to True returns only Windows group names that do not exceed
twenty characters.
Me.Load_TS_List TAGSTATUS
865
iFIX Automation Reference
End Sub
LoadTagGroupFile Example
The following example loads the tag group file mytaggroup.tgd into the iFIX picture pic1.
pic1.LoadTagGroupFile "mytaggroup.tgd"
End Sub
dTop = 30
dLeft = 30
dHeight = 100
dWidth = 150
866
IFIX Automation Reference
dTop = 30
dLeft = 50
M-N
Call ObjHelper.MakeLinesHorizontal
Call ObjHelper.MakeLinesVertical
Polygon1.SelectObject False
867
iFIX Automation Reference
Oval1.SelectObject False
TestPicture.MakeSameSize 1
Chart1.ModifyColumnLength 1, 7
Tank1.Move 10, 25
' parses through the list of new alarms (there could be more than one)
lngNumAlarms = Len(strTag) / 30
strThisNode = Trim(strThisNode)
868
IFIX Automation Reference
strThisTag = Trim(strThisTag)
Next lngLoop
End Sub
OffScan "AI1"
OnScan "AI1"
Me.Open_QT_Pic
End Sub
869
iFIX Automation Reference
Me.Open_QT_Pic_Ex (1)
End Sub
Me.Open_TCP_Pic
End Sub
Me.Open_TCP_Pic_Ex (1)
End Sub
870
IFIX Automation Reference
Object1.Open_TS_Pic
End Sub
Object1.Open_TS_Pic_Ex (1)
End Sub
SomeStrings(0) = "FIX32.THISNODE.AI.A_NAME"
SomeStrings(1) = "FIX32.THISNODE.AO.A_NAME"
SomeStrings(2) = "FIX32.THISNODE.DI.A_NAME"
End Sub
The following example opens the Quick Trend Picture QUICKTREND into the current picture and
displays the tag list AI, AO, and DI when a button is pressed.
871
iFIX Automation Reference
SomeStrings(0) = "FIX32.THISNODE.AI.A_NAME"
SomeStrings(1) = "FIX32.THISNODE.AO.A_NAME"
SomeStrings(2) = "FIX32.THISNODE.DI.A_NAME"
End Sub
The following example opens the Tag Control Panel Picture TAGCONTROLPANEL into the current
picture and displays the tag list AI, AO, and DI when a button is pressed.
SomeStrings(0) = "FIX32.THISNODE.AI.A_NAME"
SomeStrings(1) = "FIX32.THISNODE.AO.A_NAME"
SomeStrings(2) = "FIX32.THISNODE.DI.A_NAME"
End Sub
SomeStrings(0) = "FIX32.THISNODE.AI.A_NAME"
SomeStrings(1) = "FIX32.THISNODE.AO.A_NAME"
SomeStrings(2) = "FIX32.THISNODE.DI.A_NAME"
872
IFIX Automation Reference
End Sub
The following example opens the Quick Trend Picture QUICKTREND into the current picture and
displays the tag list AI, AO, and DI when a button is pressed. If one instance of this picture is already
open, another instance displays.
SomeStrings(0) = "FIX32.THISNODE.AI.A_NAME"
SomeStrings(1) = "FIX32.THISNODE.AO.A_NAME"
SomeStrings(2) = "FIX32.THISNODE.DI.A_NAME"
End Sub
The following example opens the Tag Control Panel Picture TAGCONTROLPANEL into the current
picture and displays the tag list AI, AO, and DI when a button is pressed. If one instance of this picture
is already open, another instance displays.
SomeStrings(0) = "FIX32.THISNODE.AI.A_NAME"
SomeStrings(1) = "FIX32.THISNODE.AO.A_NAME"
SomeStrings(2) = "FIX32.THISNODE.DI.A_NAME"
End Sub
OpenDigitalPoint "DO1"
873
iFIX Automation Reference
The following example opens another instance of a picture if it is already open in the iFIX WorkSpace:
The following example opens another instance of a picture if it is already open in the iFIX WorkSpace,
but with a different tag group file (named taglist3):
The next example shows the OpenPicture subroutine using the optional intErrormode parameter, with a
value of 0:
OpenPicture "BadPic", , , , 0
When you use 0 for the intErrorMode, if you try to open a picture that does not exist, a message box
appears whose title is the name of the picture that made the erroneous call and whose contents are the
error number and error description. This is the default. If no entry is made for the intErrorMode
parameter, the default is used.
If you enter a 1 for intErrorMode the error is raised for you to handle:
OpenPicture "BadPic", , , , 1
Your error handling code would have to look something like this:
OpenPicture "BadPic", , , , 1
End Sub
Errorhandler:
If you enter a 2 for intErrorMode, the error is sent to all typers, including the Alarm History window
using the SendOperatorMessage method:
OpenPicture "BadPic", , , , 2
When you use 2 for the intErrorMode, you provide for silent error tracking.
The following example allows the calling Picture Test to open a Quick Trend Picture and display the
tag list Strings1.
The following example allows the calling picture Test to open a Tag Status Picture and display the tag
874
IFIX Automation Reference
list Strings2.
The following example allows the calling picture Test to open a Tag Control Panel Picture and display
the tag list Strings3.
This next example opens the picture TestPicture, allowing for multiple instances. The coordinates of
the top-left side of the picture are 75, 75.
This next example opens the picture TestPicture, allowing for multiple instances. It opens the instance
with the taggroup file TestTGD. The coordinates of the top-left side of the picture are 75, 75.
P-Q
875
iFIX Automation Reference
clipboard.
Oval1.Select
TestPicture.Copy
TestPicture.Paste
TestPicture.PasteSpecial
Chart1.Pause
AlarmSummaryOCX1.PauseAlarmRead
lngTotalFiltered = AlarmSummaryOCX1.TotalFilteredAlarms
ListBox1.Clear
Next lngLoop
AlarmSummaryOCX1.ResumeAlarmRead
876
IFIX Automation Reference
percentage of screen space available to logical units for the Picture TestPicture.
dTop = 30
dLeft = 30
dHeight = 100
dWidth = 150
dTop = 30
dLeft = 30
dHeight = 100
dWidth = 150
PictureAlias "TestPicAlias"
ClosePicture "TestPicAlias"
877
iFIX Automation Reference
dTop = 30
dLeft = 30
dHeight = 100
dWidth = 150
LineChart1.PrintChart SizeUnits_FullPage
End Sub
bPrinted = Application.ActiveDocument.PrintOut
878
IFIX Automation Reference
UserName = "expire"
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.PromptToChangePassword UserName
End If
Else
MsgBox "Password is due to expire in " & daysLeft & " days."
End If
Else
End If
879
iFIX Automation Reference
iStatus = QuickAdd("NewBlock1")
Application.Quit 3
880
IFIX Automation Reference
FDS.Groups.Add ("DataGroup1")
FDS.Groups.Item("DataGroup1").DataItems.Add("Fix32.THISNODE.AI1.F_CV")
'Read DataGroup1
FDS.Groups.Item("DataGroup1").Read
FDS.Groups.Item("DataGroup1").DataItems.Item(1).Read
lValue = ReadValue("AI1")
Rect1.Refresh
Chart1.RefreshChartData
The following example shows a refresh of an Enhanced Chart, LineChart1, after scroll forward of 50%
is performed on the Enhanced Chart.
dInterval = LineChart1.Duration
881
iFIX Automation Reference
'scroll time
dtTime = HistoricalDataset1.FixedTime
HistoricalDataset1.FixedTime = dtTime
dtDate = HistoricalDataset1.FixedDate
HistoricalDataset1.FixedDate = dtDate
'refresh chart
LineChart1.RefreshChartData
The second example above requires a reference to the historical data set named “iFIX
HistoricalDataSet Object v 1.0 Type Library” in your VBA project.
NOTE: This example does not apply to Crystal XI; it applies to an earlier version, such as Crystal 7.
For Crystal XI, use the PrintReport subroutine instead. The PrintReport subroutine will do all of the
registry entries for you.
882
IFIX Automation Reference
If lngResult = 0 Then
Else
End
End If
lngResult = RegCloseKey(&H80000000)
Exit Sub
ErrorHandler:
HandleError
End Sub
NOTE: This example does not apply to Crystal XI; it applies to an earlier version, such as Crystal 7.
For Crystal XI, use the PrintReport subroutine instead. The PrintReport subroutine will do all of the
registry entries for you.
883
iFIX Automation Reference
lngRes)
If lngResult = 0 Then
Else
End
End If
lngResult = RegCloseKey(&H80000000)
Exit Sub
ErrorHandler:
HandleError
End Sub
If lFound = 1 Then
CurrentObject.Remove lIndex
End If
The following example removes the Group DataGroup1 from the Groups
collection of the FixDataSystem FDS.
FDS.Groups.Remove("DataGroup1")
The following example removes the first Group from the Groups collection
of the FixDataSystem FDS.
FDS.Groups.Remove(1)
884
IFIX Automation Reference
Dim o As Object
Set o = Application.ActiveDocument.Page.FindObject("Rect2")
If (lFound) Then
oProc.Lines.RemoveAll
End If
iLookup.RemoveAllLevels
Chart1.RemoveItem 1
Chart1.RemoveLegendItem "Value"
Lookup1.RemoveLevel 4
885
iFIX Automation Reference
TestSchedule.RemoveObject "MyTimer"
TestSchedule.DoMenuCommand scHREFreshView
The following example allows the calling picture TestPicture to replace the active Quick Trend Picture
with QuickTrend1 and display the tag list Strings1.
The following example allows the calling picture TestPicture to replace the active Tag Status Picture
with TagStatus1 and display the tag list Strings2.
The following example allows the calling picture TestPicture to replace the active Tag Control Panel
Picture with TagControlPanel1 and display the tag list Strings3.
RemovePictureFromStartupList Example
The following example removes the Picture named pic1.grf (in the D:\Program Files\Proficy\Proficy
iFIX\PIC directory) from the Configuration environment's startup list of the Proficy iFIX WorkSpace.
lErr = Application.UserPreferences.RemovePictureFromStartupList_
("D:\Program Files\Proficy\Proficy iFIX\pic\pic1.grf", False)
Note that the full path is required for the picture. Also note that the second paramater, when set to
FALSE, removes the picture from the Configuration environment's startup list. When set to TRUE, it
removes the picture from the Runtime environment's startup list.
886
IFIX Automation Reference
Me.Replace_QT_Pic
End Sub
Me.Replace_TCP_Pic
End Sub
The following example replaces the current picture Pic1 with the Tag Status picture TSPic1 and the tag
list Strings2.
The following example replaces the current picture Pic1 with the Tag Control Panel picture TCPPic1
and the tag list Strings3.
Me.Replace_TS_Pic
887
iFIX Automation Reference
End Sub
Application.ActiveWindow.ReplaceDocument "C:\Program
Files\Proficy\Proficy iFIX\Pic\TestPicture.grf"
sTarget = "FIX32.NODE1.AI1.F_CV"
Chart1.ResetChartData
888
IFIX Automation Reference
TestSchedule.ResetObjectStats 2
The following example resets the statistics for the Timer MyTimer in the Schedule TestSchedule.
TestSchedule.ResetObjectStats "MyTimer"
The following example resets the statistics for the Timer objects TestTimer, TestTimer1, TestTimer2 in
the Schedule TestSchedule.
objects(0) = "TestTimer"
objects(1) = "TestTimer1"
objects(2) = "TestTimer2"
TestSchedule.ResetObjectStats objects
iTimer.ResetStats
Chart1.ResetZoom
ResolveTagGroupFile Example
The following example resolves the tag group file mytaggroup.tgd in the iFIX picture pic1.
pic1.ResolveTagGroupFile "mytaggroup.tgd"
The ResolveTagGroupFile method is a Configuration environment method that loops through the tag
groups referenced in the picture, perform the substitutions, and persist the information. Using this
method provides you with a faster load time.
889
iFIX Automation Reference
Chart1.Resume
AlarmSummaryOCX1.PauseAlarmRead
lngTotalFiltered = AlarmSummaryOCX1.TotalFilteredAlarms
ListBox1.Clear
Next lngLoop
AlarmSummaryOCX1.ResumeAlarmRead
Set TGD =
CreateObject("TagGroupDefinitionInterfaceDll.TagGroupDefinitionInterface"
)
890
IFIX Automation Reference
TestSchedule.RunObject 1
The following example runs the Timer MyTimer in the Schedule TestSchedule.
The following example runs the Timer objects TestTimer, TestTimer1, TestTimer2 in the Schedule
TestSchedule.
objects(0) = "TestTimer"
objects(1) = "TestTimer1"
objects(2) = "TestTimer2"
iStatus = Application.Documents.Save(True)
891
iFIX Automation Reference
Me.Save_TS_List
End Sub
End Sub
iIndex = ExpressionEditor1.SaveToHistoryList("AI1.F_CV")
892
IFIX Automation Reference
Chart1.ScrollBack
Chart1.ScrollForward
Pen1.ScrollTimeBack
Pen1.ScrollTimeForward
Oval1.Select
AlarmSummaryOCX1.PauseAlarmRead
lngTotalFiltered = AlarmSummaryOCX1.TotalFilteredAlarms
ListBox1.Clear
893
iFIX Automation Reference
Next lngLoop
AlarmSummaryOCX1.ResumeAlarmRead
TestPicture.SelectAll
PolyLine1.SelectObject False
Oval1.SelectObject False
PolyLine1.SelectObject True
Oval1.SelectObject True
894
IFIX Automation Reference
ESig.IsNodeSignEnabled bNodeSignEnabled
'Show Results
Else
End If
Else
895
iFIX Automation Reference
End If
Oval1.Select
TestPicture.SendToBack
SetAuto "AI1"
SetName = "TestUser"
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.SetContinuousUser SetName
896
IFIX Automation Reference
ESig.GetContinuousUser UserName
Else
End If
Chart1.SetDuration 0, 1, 35, 0
ExpressionEditor1.SetFocusToComboBox
897
iFIX Automation Reference
System.SetGlobalMovingEndTimeToCurrent
End Sub
Chart1.SetInterval 0, 0, 5, 30
SetManual "AI1"
With objDataSet
End With
End Sub
Format1.SetNumericFormat 3, 3, 2
898
IFIX Automation Reference
record_var.MoveLast
iCount = record_var.RecordCount
record_var.MoveFirst
Dim i As Integer
For i = 0 To iCount - 1
Value(i) = record_var.Fields("Value").Value
Times(i) = record_var.Fields("Time").Value
Quality(i) = record_var.Fields("Quality").Value
record_var.MoveNext
Next i
db_var_name.Close
899
iFIX Automation Reference
dVal = Value
dtDate = Times
lQual = Quality
iPoint.x = 75
iPoint.y = 10
Polygon1.SetPointAt 2, iPoint
lGreen = 57344
lBlue = 16722988
lRed = 725759
AlarmSummaryOCX1.SetPriorityColor 7, lGreen
AlarmSummaryOCX1.SetPriorityColor 6, lBlue
AlarmSummaryOCX1.SetPriorityColor 5, lRed
Oval1.SetProperty "FillStyle", 3
900
IFIX Automation Reference
Oval1.Select
lGreen = 57344
AlarmSummaryOCX1.SetStatusColor 1, lGreen
901
iFIX Automation Reference
bResult = ExpressionEditor1.SetTabSelection(11)
Chart1.SetTimeBeforeNow 2, 30, 0
Oval1.Select
902
IFIX Automation Reference
TestPicture.ShowAnimations
ExpressionEditor1.ShowBrowseDialog
ColorButton1.ShowColorBox
TestPicture1.ShowColorSelection True
Chart1.ShowCustomPages
Call ObjHelper.ShowPipePreviewDialog
Application.ShowTaskWizard
903
iFIX Automation Reference
Application.ShowVisualBasicEditor
AlarmHornSilence Example
This example silences the alarm horn.
AlarmHornSilence
End Sub
Oval1.SelectObject False
DataLink1.SelectObject False
TestPicture.SnapObjectsToGrid
Oval1.SelectObject False
Polygon1.SelectObject False
904
IFIX Automation Reference
RoundRect1.SelectObject False
TestPicture.SpaceEvenly 0
iEvent.StartEvent
iTimer.StartTimer
iRect.HorizontalPosition = 3#
iRect.VerticalPosition = 3#
iRect.StickToCursor
iEvent.StopEvent
905
iFIX Automation Reference
iTimer.StopTimer
Oval1.Stretch 10, 20
pic.LanguageDesired = 1034
pic.SwitchLanguage
- OR -
pic.SwitchLanguge (ES_Spanish)
NOTE: For a list of the ID numbers representing each language, refer to the Language Letter
Acronyms table in the Exporting and Importing Language Files topic.
The following example shows how you to switch the language on only the AlarmSummary object, by
clicking a rectangle in run mode.
AlarmSummaryOCX1.SwitchLanguage RU_Russian
End Sub
Application.SwitchMode 4
906
IFIX Automation Reference
This example creates the SecuritySynchronizer object and calls the SynchronizeSecurity method.
objSecSynch.UseLocalSecurity = True
objSecSynch.SynchronizeSecurity
Before calling the SynchronizeSecurity method, you must set either one or both of the following
properties to True:
• UseLocalSecurity
• UseDomainSecurity
If you set the UseDomainSecurity property to True, you must also set the Domain property to a valid
Windows domain name.
907
iFIX Automation Reference
This method looks in the currently loaded tag group file for the tag and retrieves the substitution. The
TagGroupSubstitution method is only available in the Runtime environment. If you pass it a string that
is not a tag group symbol, it will return the same string.
This Runtime-only method looks in the currently-loaded tag group file to find the substitution for the
passed tag and reads the current value. Calling this method is similar to calling the
TagGroupSubstitution method, finding the Object based on the returned string, and then reading the
value. If you pass it a string that is not a tag group symbol, it will return the same string.
ToggleDigitalPoint "DO1"
ToggleManual "AI1"
ToggleScan "AI1"
CommandButton1.UIActivate
908
IFIX Automation Reference
CommandButton1.UIDeActivate
TestPicture.Undo
TestPicture.UndoTransaction pUndoTransactionStart
LineChart1.UndoZoom
End Sub
TestPicture.UnGroup
pic1.UnloadTagGroupFile
End Sub
909
iFIX Automation Reference
iDataSourceOption = g_WizardConfig.iDataSourceOption
If g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_BUT_NOT_APPLY
ElseIf g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_AND_APPLY
ElseIf g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_DO_NOT_UPDATE_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_NOT_UPDATE
End If
End If
PlugandSolve.GeometryHelperObj.Update_A_Dynamo_By_Name
MasterDynamoFullyQualifiedName, DynamoInstanceFullyQualifiedName,
iDataSourceOption, mobjStrMgr.GetNLSStr(4069), iResult
strReturnMsg = PlugandSolve.GeometryHelperObj.Get_Last_Result_String
iPrompt = PlugandSolve.GeometryHelperObj.Get_Last_Prompt_Value
910
IFIX Automation Reference
If (iPrompt = PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL) Or _
(iPrompt = PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL)
Or _
g_ReturnFromPromptForChoice = iPrompt
End If
End If
' Else
' End If
UpdateADynamo = DYNAMO_UPDATED
UpdateADynamo = DYNAMO_NOTUPDATED
Else
UpdateADynamo = DYNAMO_UPDATE_ABORTED
End If
End Function
911
iFIX Automation Reference
iDataSourceOption = g_WizardConfig.iDataSourceOption
If g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_BUT_NOT_APPLY
ElseIf g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_AND_APPLY
ElseIf g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_DO_NOT_UPDATE_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_NOT_UPDATE
End If
End If
912
IFIX Automation Reference
iUpdateOptions = &H0
iUpdateOptions = UPDATE_OPTION_ON_MISMATCH_PROMT_FOR_CHOICE
iUpdateOptions = UPDATE_OPTION_ON_MISMATCH_UPDATE_DYNAMO +
UPDATE_OPTION_ON_MISMATCH_APPLY_DATA_SOURCES
iUpdateOptions = UPDATE_OPTION_ON_MISMATCH_UPDATE_DYNAMO
End If
End If
End If
If g_iDynamoToolType = DYN_QUICK_CONVERTER Or _
End If
PlugandSolve.GeometryHelperObj.Update_A_Dynamo_By_Ref2 objMasterDynamo,
objDynamoInstance, iUpdateOptions, mobjStrMgr.GetNLSStr(4069), iResult
strReturnMsg = PlugandSolve.GeometryHelperObj.Get_Last_Result_String
iPrompt = PlugandSolve.GeometryHelperObj.Get_Last_Prompt_Value
If (iPrompt = PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL) Or _
(iPrompt = PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL) Or _
913
iFIX Automation Reference
g_ReturnFromPromptForChoice = iPrompt
End If
End If
' Else
' End If
UpdateADynamo2 = DYNAMO_UPDATED
End If
UpdateADynamo2 = DYNAMO_NOTUPDATED
End If
UpdateADynamo2 = DYNAMO_UPDATE_ABORTED
End If
End Function
914
IFIX Automation Reference
iDataSourceOption = g_WizardConfig.iDataSourceOption
If g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_BUT_NOT_APPLY
ElseIf g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_UPDATE_AND_APPLY
ElseIf g_ReturnFromPromptForChoice =
PROMPT_DLG_SEL_DO_NOT_UPDATE_APPLY_TO_ALL Then
iDataSourceOption = DYNAMO_NOT_UPDATE
End If
End If
PlugandSolve.GeometryHelperObj.Update_A_Dynamo_By_Ref2 objMasterDynamo,
objDynamoInstance, iDataSourceOption, mobjStrMgr.GetNLSStr(4069), iResult
strReturnMsg = PlugandSolve.GeometryHelperObj.Get_Last_Result_String
915
iFIX Automation Reference
iPrompt = PlugandSolve.GeometryHelperObj.Get_Last_Prompt_Value
If (iPrompt = PROMPT_DLG_SEL_UPDATE_NO_DS_APPLY_TO_ALL) Or _
(iPrompt = PROMPT_DLG_SEL_UPDATE_ATTEMPT_MATCH_APPLY_TO_ALL) Or _
g_ReturnFromPromptForChoice = iPrompt
End If
End If
' strReturnMsg = ">>>" & strDIName & " was not updated with " &
strDMName
' Else
' strReturnMsg = strDIName & " was updated successfully with " &
strDMName
' End If
UpdateADynamo = DYNAMO_UPDATED
UpdateADynamo = DYNAMO_NOTUPDATED
Else
916
IFIX Automation Reference
UpdateADynamo = DYNAMO_UPDATE_ABORTED
End If
End Function
iTimer.Name = "TimerTest"
iTimer.TriggerType = 1
iTimer.Interval = 2000
917
iFIX Automation Reference
Set TGD =
CreateObject("TagGroupDefinitionInterfaceDll.TagGroupDefinitionInterface"
)
TokenList(2) = "Tag3"
TokenList(3) = "Tag4"
Set TGD =
CreateObject("TagGroupDefinitionInterfaceDll.TagGroupDefinitionInterface"
)
dTop = 30
dLeft = 50
918
IFIX Automation Reference
V-Z
ESig.IsNodeSignEnabled bNodeSignEnabled
signer
'Show Results
Else
End If
919
iFIX Automation Reference
Else
End If
ESig.IsNodeSignEnabled bNodeSignEnabled
ESig.Initialize "Fix32.thisnode.DO1.F_CV"
'Validate the signature, write the new value and send a message to the
audit trail
NewValue = 1
Else
920
IFIX Automation Reference
End If
Else
End If
Else
End If
921
iFIX Automation Reference
WriteValue 1, "DO1"
FDS.Groups.Add ("DataGroup1")
FDS.Groups.Item("DataGroup1").DataItems.Add("Fix32.THISNODE.AI1.F_CV")
'Write DataGroup1
FDS.Groups.Item("DataGroup1").Write
FDS.Groups.Item("DataGroup1").DataItems.Item(1).Write(45)
Dim dX As Double
Dim dY As Double
922
IFIX Automation Reference
923
Index
active ...................................................... 248, 249 axis................. 255, 256, 266, 523, 535, 536, 539,
564, 595, 596
ActiveX .................................................. 210, 491
backdrop ......... 267, 268, 269, 270, 271, 272, 274
AdvancedGraphics property ........................... 250
background ..................... 267, 268, 275, 276, 277
alarm ................................. 293, 294, 473, 474, 22
background color ............................................479
Alarm Summary ............................................. 208
bars .................................................................534
alarmhorn........................................................ 251
BarVal property ..............................................278
AlarmHornEnabled.............................................5
base .................................................................279
AlarmHornSilence ............................................ 21
bitmap .............................................................210
AlarmHornSilence subroutine ............................7
BitmapGradientMode property .......................279
AlarmHornToggle ..............................................6
blend .......................................................268, 280
alarms .............. 252, 343, 365, 585, 593, 15, 4, 5,
4, 5, 6, 9, 10, 21 blink ................................ 280, 281, 472, 473, 508
angle ....................................... 258, 351, 507, 547 bottom ............................................. 282, 283, 284
application ...................................... 208, 209, 259 button .............................................. 285, 286, 288
925
IFIX Automation Reference
center .............. 283, 290, 291, 292, 418, 506, 576 data source ................................ 319, 395, 519, 11
chord ............................................................... 210 date ......... 305, 306, 307, 309, 310, 365, 525, 549
click ................................ 349, 6, 9, 15, 16, 19, 26 days ................................................. 306, 315, 316
collection ................................................ 218, 544 default .................... 318, 319, 478, 479, 480, 481,
482, 483
collections ....................................... 304, 328, 477
delete ................................................................58
color....... 266, 269, 270, 275, 296, 297, 338, 371,
400, 414, 422, 473, 474, 475, 509, 567, delta ................................................................589
580, 585, 592, 600, 7, 15
demand .............................................................58
colorbutton...................................................... 210
descending ......................................................543
CombinationKey ............................................ 298
description ...................................... 321, 420, 474
comments ....................................................... 298
DeskColor property ........................................321
configure........................................................... 12
digital point .............................................8, 22, 36
connections ....................................... 300, 361, 14
digits .......................................................317, 607
containment .................................................... 302
DigitsOfPrecision property .............................323
contextID ........................................................ 303
direction ..........................................................515
control container ............................................. 210
disable alarms .................................................... 9
count ............................................................... 304
DisableAutoScale property .............................323
cursor ...................................................... 537, 567
display ....................................................392, 433
data ........ 211, 305, 311, 312, 318, 393, 437, 497,
544, 594, 7 displaystring ...................................................326
data entry ........................................................ 300 document ................................ 249, 327, 328, 329
925
iFIX Automation Reference
documents ...... 211, 212, 214, 216, 217, 220, 222, enabled............................................................251
328
errors ...............................................................355
doubleclick .........................................................9
esignature ................................................212, 342
drilldown ........................................................ 254
event 213, 498, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 14,
DSDescription property .................................. 331 15, 16, 18, 19, 22, 23, 24, 25, 26, 27, 28
926
IFIX Automation Reference
grid ........ 386, 387, 389, 400, 457, 460, 461, 464, Justification Property ......................................412
515, 528, 530, 540, 541, 600
key macro collection .......................................214
GridInFront property ...................................... 387
key macros ......................................................215
GridLinesToShow property ............................ 388
keydown ...........................................................13
GridStyle property .......................................... 389
keyup ................................................................14
group............................................................... 215
LabelBold property .........................................413
groups ..................................................... 215, 390
LabelFont property .........................................414
HDA ...................................................................8
LabelItalic property ........................................415
headers ............................................................ 529
labels ....................................... 414, 462, 565, 595
height ...... 327, 390, 467, 479, 483, 514, 604, 608
LabelUnderline property.................................415
help ................................................... 303, 391, 15
LanguageDesired ............................................416
helper functions .............................................. 6, 8
layer ................................................................417
hide ................................................................. 392
layers ..............................................................324
highlight ................................................. 394, 395
LCL property ..................................................417
HistDatalink object ......................................... 215
left ................................... 283, 418, 576, 604, 609
HistMode property ......................................... 396
legend .... 216, 419, 420, 421, 422, 423, 424, 425,
HistogramChart object.................................... 216 426, 427, 428, 429, 430, 531
927
iFIX Automation Reference
linear ....................................................... 216, 430 method .. 268, 271, 272, 280, 360, 383, 15, 58, 31
lines ....... 216, 217, 219, 301, 430, 448, 457, 458, mode ....................................... 423, 549, 552, 613
460, 461, 464, 528
MonoDeskColor property ...............................449
LineType property .......................................... 431
MonoGraphBackColor property .....................450
load ................................................................... 15
MonoGraphForeColor property ......................450
lockstarttime ................................................... 432
MonoShadowColor property ..........................451
log in ................................................. 434, 435, 19
MonoTableBackColor property ......................451
lookup ............................................................. 217
MonoTableForeColor property .......................452
LWL property ................................................. 438
MonoTextColor property ................................452
MainTitle property.......................................... 438
mouse..............................................................349
MainTitleBold property .................................. 439
MouseUpOffObject event .................................21
MainTitleFont property .................................. 439
move .................................................................18
MainTitleItalic property ................................. 440
MyNodeName ................................................454
MainTitleUnderline property.......................... 441
name ....................... 376, 435, 454, 455, 484, 610
manager .......................................................... 574
names ........................................ 363, 374, 612, 25
manual mode .............................................. 35, 37
next .................................................................455
ManualMaxX property ................................... 441
NlsGetText ........................................................ 8
ManualMaxY property ................................... 442
NoSaveOnClose property ...............................456
ManualMinX property .................................... 442
NumOfPoints property ...................................460
ManualMinY property .................................... 443
NumPointsToGraph property .........................461
ManualScaleControlY property ...................... 444
NumRandomSubsets property ........................463
MarkDataPoints property ............................... 445
NumScrollingSubsets property .......................463
markers ................................................... 446, 591
object ..... 209, 210, 211, 212, 213, 214, 215, 216,
Master Property .............................................. 447 217, 218, 219, 220, 221, 222, 465
928
IFIX Automation Reference
open ............................................................ 22, 24 property.. 248, 249, 251, 252, 253, 254, 255, 256,
257, 258, 259, 260, 261, 263, 264, 265,
origin ...................................................... 468, 469 266, 267, 268, 269, 270, 273, 274, 275,
276, 277, 279, 280, 281, 282, 283, 284,
output ...................................................... 378, 469 285, 286, 287, 288, 289, 290, 291, 292,
293, 294, 296, 297, 298, 299, 300, 301,
output value .................................................... 319 302, 303, 304, 305, 306, 307, 308, 309,
310, 311, 312, 313, 314, 315, 316, 317,
oval ................................................................. 217 318, 319, 320, 321, 322, 324, 325, 326,
327, 328, 329, 330, 337, 338, 339, 340,
owner .............................................................. 470 341, 342, 343, 344, 345, 346, 348, 349,
350, 351, 352, 353, 354, 355, 356, 357,
page ................................................................ 470 358, 359, 360, 361, 362, 363, 364, 365,
366, 367, 368, 369, 371, 372, 373, 374,
path ......... 279, 328, 367, 456, 471, 484, 513, 575 375, 376, 378, 382, 386, 387, 389, 390,
391, 392, 393, 394, 395, 396, 397, 399,
pause indicator ................................ 472, 473, 474 400, 401, 402, 403, 405, 406, 407, 408,
410, 411, 412, 413, 414, 416, 417, 418,
pen .................................................. 217, 308, 474 419, 420, 421, 422, 423, 424, 425, 426,
427, 428, 429, 430, 431, 432, 433, 434,
435, 436, 437, 444, 446, 448, 449, 453,
picture217, 280, 308, 360, 383, 478, 479, 480, 481, 482, 483, 484, 8, 13, 22, 24, 31, 33
454, 455, 456, 457, 458, 459, 460, 461,
462, 464, 465, 466, 467, 468, 469, 470,
pictures
471, 472, 473, 474, 475, 476, 477, 478,
479, 480, 481, 482, 483, 484, 485, 488,
securing ...................................................... 518
489, 490, 491, 492, 493, 494, 495, 496,
497, 498, 500, 501, 502, 503, 504, 505,
pie ........................................................... 217, 485
506, 507, 508, 509, 510, 511, 512, 513,
514, 515, 516, 517, 518, 519, 520, 521,
Pipe object ...................................................... 217 522, 523, 524, 525, 527, 528, 529, 530,
531, 532, 533, 534, 535, 536, 537, 538,
PipeConnector object...................................... 218 539, 540, 541, 542, 543, 544, 545, 547,
548, 549, 550, 551, 552, 553, 554, 555,
PlottingMethod property ................................ 486 556, 557, 560, 561, 563, 564, 565, 566,
567, 568, 569, 570, 571, 572, 573, 574,
point ........................................ 214, 550, 615, 617 575, 576, 577, 578, 579, 580, 582, 583,
584, 585, 586, 587, 589, 590, 591, 592,
points ...................... 291, 292, 352, 449, 459, 462 593, 594, 595, 596, 597, 598, 599, 600,
601, 602, 604, 605, 606, 607, 608, 609,
PointType property ......................................... 487 610, 611, 612, 613, 615, 617, 620
procedures .............. 217, 218, 219, 220, 489, 490 ramp ............................................................27, 28
929
iFIX Automation Reference
rate .......................................................... 502, 573 scripting .................................. 217, 219, 220, 404
read values .................................................. 29, 30 scroll ....................................... 515, 516, 517, 534
replace ................................................ 213, 31, 33 SecuritySynchronizer..... 219, 257, 258, 299, 322,
329, 434, 444, 503, 521, 590
report ................................................................ 26
SelectedDatasource Property ..........................519
reset ................................................................ 503
SelectedFieldName Property ..........................519
resizable .......................................................... 480
SelectedNodeName Property ..........................519
resize............................................................... 504
SelectedTagName Property ............................520
restricting access to pictures ........................... 518
selection ........................ 303, 410, 411, 58, 25, 27
revision ........................................................... 505
selections ................................................302, 520
Revision Property ........................................... 505
separator ...........................................................15
right ................................................ 284, 506, 577
servers .............................................................320
RightAngleLineConnector object ................... 219
SeverityIncreased..............................................27
rotate ....................................................... 290, 507
ShadowColor property ....................................522
rotation ........................................................... 258
shapes .............................................................520
rounded rectangle ........................................... 219
shell ..................................................................36
row.................................................. 284, 533, 577
ShowDSLegend property................................526
run indicator ................................... 508, 509, 592
size ..................................................................263
runtime ........................................................... 349
sort .................................................. 345, 542, 543
save ................................................................. 511
source...................................... 361, 544, 545, 573
SaveThumbnail property ................................ 511
sources ............................................ 219, 220, 544
scale ................................ 402, 403, 512, 586, 602
SPCBarChart object........................................220
scan ....................................................... 20, 21, 38
SPCChartType property .................................545
scheduler......................................................... 219
SPCInterval property ......................................546
screen ...................................... 375, 467, 468, 514
930
IFIX Automation Reference
status bar ......................................... 325, 534, 555 ticks ................................................ 464, 565, 596
strikethrough ................................................... 557 time ........ 308, 348, 353, 366, 453, 535, 536, 550,
551, 552, 553, 566, 570
style ....... 268, 269, 276, 277, 286, 339, 364, 372,
400, 475, 600 time axis.......................................... 220, 255, 565
subroutine ...... 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, timeout ....................................................521, 568
16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27,
28, 29, 30, 31, 33, 34, 35, 36, 37, 38, 39, timer........................................................220, 569
21
timezonebiasexplicit .......................................570
subroutines..........................................................1
timezonebiasrelative .......................................571
SubTitle property ............................................ 557
title .................................. 266, 536, 538, 572, 596
SubTitleBold property .................................... 558
title bar ............................................................482
SubTitleFont property .................................... 559
titles ................................................................566
SubTitleItalic property.................................... 559
toggle .................................. 378, 382, 573, 36, 38
SubTitleUnderline property ............................ 560
toggle state ........................................................37
summaries ................................... 161, 204, 223, 1
tolerance .........................................................574
system ..................................................... 220, 560
toolbar .....................................................221, 574
system menu ................................................... 481
toolbar manager ..............................................574
system tree ...................................................... 327
tooltips ............................................ 350, 537, 568
table ................................................................ 297
top ........................... 256, 575, 576, 577, 605, 611
table of contents.............................................. 161
TotalFilteredAlarms........................................578
TableBackColor property ............................... 562
TranslateOnOpen ............................................578
TableFont property ......................................... 562
transparent ..............................................579, 580
TableForeColor property ................................ 563
TreatSinglePointsAsLines property ................581
tag groups ..................................... 220, 15, 24, 33
trend ................................................................556
tags ................................................................. 424
931
iFIX Automation Reference
UCL property ................................................. 584 width ...... 276, 329, 340, 373, 389, 468, 476, 483,
484, 512, 514, 605, 608, 612
underline ......................................................... 585
window ...........................................................249
units ................................................ 258, 424, 587
windows .................. 222, 608, 609, 610, 611, 612
unload ............................................................... 15
wizards ............................................................612
update rate ...................................................... 319
WorkSpace .....................................................613
UpdateRate property....................................... 588
write point .........................................................39
user ................................................................... 18
WritePictureFormatType property..................613
user globals ..................................................... 221
WritePictureOutLocation property .................614
User Preferences ..................................... 221, 593
WritePictureScalePercentage property ...........614
UWL property ................................................ 594
WriteValue Subroutine .....................................39
validate ........................................................... 545
x 354, 468, 507, 553, 615
value ...... 310, 395, 396, 405, 430, 436, 437, 469,
539, 594 XAxisLabel property ......................................616
932
Proficy* HMI/SCADA - iFIX
IFIX DATABASE REFERENCE
Version 5.1
May 2010
All rights reserved. No part of this publication may be reproduced in any form or by any electronic or mechanical
means, including photocopying and recording, without permission in writing from GE Intelligent Platforms, Inc.
The information contained in this manual is believed to be accurate and reliable. However, GE Intelligent Platforms,
Inc. assumes no responsibilities for any errors, omissions or inaccuracies whatsoever. Without limiting the foregoing,
GE Intelligent Platforms, Inc. disclaims any and all warranties, expressed or implied, including the warranty of
merchantability and fitness for a particular purpose, with respect to the information contained in this manual and the
equipment or software described herein. The entire risk as to the quality and performance of such information,
equipment and software, is upon the buyer or user. GE Intelligent Platforms, Inc. shall not be liable for any damages,
including special or consequential damages, arising out of the user of such information, equipment and software, even
if GE Intelligent Platforms, Inc. has been advised in advance of the possibility of such damages. The user of the
information contained in the manual and the software described herein is subject to the GE Intelligent Platforms, Inc.
standard license agreement, which must be executed by the buyer or user before the use of such information, equipment
or software.
Notice
©2010 GE Intelligent Platforms, Inc. All rights reserved. *Trademark of GE Intelligent Platforms, Inc.
Microsoft® is a registered trademark of Microsoft Corporation, in the United States and/or other countries.
All other brands or names are property of their respective holders.
We want to hear from you. If you have comments, questions, or suggestions about our documentation, send them to the
following email address:
doc@ge.com
Table of Contents
About this Guide ...............................................................................................................................1
iii
IFIX Database Reference
A.............................................................................................................................................. 31
B-C .......................................................................................................................................... 32
D ............................................................................................................................................. 32
E-L .......................................................................................................................................... 32
M-Q ......................................................................................................................................... 32
R-S .......................................................................................................................................... 32
T-Z .......................................................................................................................................... 33
A ................................................................................................................................................. 33
B-C .............................................................................................................................................. 37
D ................................................................................................................................................. 38
iv
IFIX Database Reference
E-L .............................................................................................................................................. 40
M-Q ............................................................................................................................................. 43
R-S .............................................................................................................................................. 46
T-Z .............................................................................................................................................. 50
A.............................................................................................................................................. 52
v
IFIX Database Reference
B-C .......................................................................................................................................... 52
D ............................................................................................................................................. 52
E-L .......................................................................................................................................... 52
M-Q ......................................................................................................................................... 52
R-S .......................................................................................................................................... 53
T-Z .......................................................................................................................................... 53
A ................................................................................................................................................. 53
B-C .............................................................................................................................................. 85
D ................................................................................................................................................. 97
vi
IFIX Database Reference
A............................................................................................................................................ 256
D ........................................................................................................................................... 257
A ............................................................................................................................................... 258
vii
IFIX Database Reference
D ............................................................................................................................................... 260
viii
IFIX Database Reference
A............................................................................................................................................ 266
D ........................................................................................................................................... 267
A ............................................................................................................................................... 268
D ............................................................................................................................................... 271
ix
IFIX Database Reference
x
IFIX Database Reference
C-D........................................................................................................................................ 296
xi
IFIX Database Reference
Statistical Data Block – Constants and Formulas for Control Charts ...................................322
Statistical Data Block – Factors for Standard Deviation Control Limits ................................322
Alarm States, Contacts, and the Digital Alarm Block ............................................................... 330
xii
IFIX Database Reference
xiii
IFIX Database Reference
OK ......................................................................................................................................... 340
Help....................................................................................................................................... 340
xiv
About this Guide
This e-book is intended for process engineers responsible for designing and building a process
database. It contains the following sections which provide more details on how to use the database
blocks and functions that are available in the Proficy iFIX Database Manager:
Click the appropriate link below for more detailed information on creating a process database:
1
IFIX Database Reference
1. In the Database Manager, in Ribbon view, on the Home tab, in the Process Database group,
click Load Empty.
2. - Or -
3. In Classic view, click the New button on the Database Manager’s toolbar.
4. An empty spreadsheet appears.
Opening a Database
To open a database:
1. In the Database Manager, in Ribbon view, click the Main Button, then click Open.
- Or -
In Classic view, on the Database Manager's toolbar, click the Open button.
2. Double-click the SCADA server to which you want to connect.
Closing a Database
To close a database:
1. In the Database Manager, in Ribbon view, click the Main Button, and then click Close.
2
IFIX Database Reference
- Or -
In Classic view, on the Database Menu click Close.
2. If you made changes to the database, you are prompted to save when exiting.
WARNING: If you click Yes to save and there is an AAD file mismatch, the database is not saved
even though it appears that the system saves it. An error message does not appear.
Saving a Database
To save a database:
In the Database Manager, in Ribbon view, on the Home tab, in the Process Database group,
click Save.
- Or -
In Classic view, on the Database Manager’s toolbar, click Save.
NOTE: If there is an AAD file mismatch, you cannot save the file. An error message will
appear if you try to save.
1. In the Database Manager, in Ribbon view, click the Main Button, then click Save As.
- Or -
In Classic view, on the Database Menu, click Save As.
The Save As Dialog Box appears.
2. In the Enter Database Name field, enter the name of the database.
3. Click Save As to save the database.
1. In the Database Manager, in Ribbon view, on the Home tab, in the Process Database group,
click Reload.
- Or -
In Classic view, on the Database Menu, click Reload.
The Reload Dialog Box appears.
2. Double-click the node whose database you want to reload.
3. Double-click the name of the database you want to load.
IMPORTANT: When you reload a database, all I/O points are reset to the appropriate
starting values. Do not use this function during an active production cycle.
3
IFIX Database Reference
NOTE: When you reload the database, all of the new database tags are added to Historian.
In addition, all of the tags from the previous database are hidden from Historian. It may seem
as though those tags are deleted, but they are not.
4
IFIX Database Reference
1. In the Database Manager, double-click any cell of the first block in the chain you want to
create.
2. In the Next field, enter the name of the next block in the chain, or click the Browse button to
select the next block from the list that appears.
Modifying Blocks
To modify a block:
1. In the Database Manager, double-click any cell of the block you want to modify.
2. Modify the fields in the block configuration dialog box as needed.
NOTE: If the block you are modifying is collected by Proficy Historian, and the Collector is
running, it takes approximately two minutes for the modification to appear. This change
affects all blocks; at the time of modification, all tags stop collecting briefly while the tag is
modified.
Deleting Blocks
To delete blocks:
• If you are using Proficy Historian to collect block values, and you delete a block from
the iFIX database, the tag is also deleted from the Historian Collector.
5
IFIX Database Reference
• If the block you are deleting is collected by Proficy Historian, and the Collector is
running, it takes approximately two minutes for the deletion to appear. This change
affects all blocks; at the time of deletion, all tags stop collecting briefly while the
deleted tag is removed from the collection.
Displaying Blocks
1. In the Database Manager, double-click the block you want to modify from the database
spreadsheet.
2. From the block configuration dialog box, click the Alarms tab.
3. Select the Enable Event Messaging check box.
1. In the Database Manager, double-click the block you want to modify from the database
spreadsheet.
2. From the block configuration dialog box, click the Alarms tab.
3. Select the Enable Alarming check box to enable alarming or clear the check box to disable
alarming.
1. In the Database Manager, double-click the block you want to modify from the database
spreadsheet.
2. From the block’s configuration dialog box, click the Alarms tab.
3. Double-click a line in the Alarm Areas list box.
4. Enter an alarm area name.
5. Repeat steps 3 and 4 until you enter all the names you require.
You can also select alarm areas from the alarm area database by double-clicking a line in the
6
IFIX Database Reference
Alarm Areas list box and selecting the Browse button. When Configure Alarm Areas dialog
box, perform one or more of the following tasks, as desired:
• To assign all available alarm areas, select the Use All Alarm Areas check box.
• To add individual alarm areas, clear the Use All Alarm Areas check box, select the area in
the Available Areas list box, and click the right-arrow button to add it to the Configured
Areas list box.
• To create a new alarm area, clear the Use All Alarm Areas check box, enter the alarm area
name in the field provided, and click the Add New button. The new alarm area appears in
both the Available Areas list box and the Configured Areas list box.
1. In the Database Manager, double-click the block you want to modify from the database
spreadsheet.
2. From the block configuration dialog box, click the Alarms tab.
3. In the Alarms area, complete the fields for the analog blocks. For digital blocks, in the Alarms
Type area, select the type of alarm you want.
1. In the Database Manager, double-click the block you want to modify from the database
spreadsheet.
2. From the block configuration dialog box, click the Alarms tab.
3. From the Priority area, select the alarm priority.
1. In the Database Manager, navigate to the Advanced tab of the tag’s dialog box.
2. Select the type of electronic signature that you want for this tag:
• None – Do not require Electronic Signatures for this tag at run time. This is the default
option.
• Perform Only – Require a Performed By signature for any changes or alarm
acknowledgements to this tag at run time.
• Perform and Verify – Require both a Performed By and a Verified By signature for
any changes or alarm acknowledgements to this tag at run time.
3. Select the options that you want for this tag:
• Allow Continuous Use – Select to allow the operator to repeatedly sign for successive
7
IFIX Database Reference
actions by supplying only a password. Continuous use applies only to the person
performing an action and does not affect the person verifying an action. This is
selected by default.
• Exempt Alarm Acknowledgement – Select to allow operators to acknowledge
alarms without entering a signature, even when this tag requires electronic signature
for data entry.
4. Select how you want the tag to handle unsigned writes. Your options are as follows:
• Accept – Accept the unsigned write.
• Log – When an unsigned write is accepted, send a message indicating that the tag
accepted an unsigned write. This option is only available when the tag is configured to
accept unsigned writes.
• Reject – Reject the unsigned write and do not update the database. A message is sent
indicating that the tag rejected an unsigned write. (default)
NOTE: You must have purchased the Electronic Signature option for these parameters to
take effect at run time.
1. In the Database Manager, right-click the block you want to modify from the database
spreadsheet.
2. Select Enable Collection to begin block collection by Historian. Select Disable Collection to
stop block collection by Historian.
NOTES:
• If Enable Collection is unavailable from the menu, it means that the selected block has
already been designated for collection. Similarly, if Disable Collection is unavailable,
the selected block has been removed from collection by Historian.
• To modify default Proficy Historian collection options, double-click the block and on
the Proficy Historian tab of the dialog box, choose the desired parameters.
TIP: To view which blocks are collected, add the Collect column to the database; it displays
if a block is collected or not. For instructions, see Adding Columns to a Spreadsheet.
Managing Blocks
Click any of the following links for more information about managing blocks:
8
IFIX Database Reference
1. In the Database Manager, in Ribbon view, on the Home tab, in the Blocks group, click the
Generate button.
- Or -
In Classic view, on the Blocks menu, click Generate.
The Generate Wizard appears.
2. Use the Generate Wizard to create the block you want.
1. In the Database Manager, double-click the type of block you want to create.
2. Complete the dialog box that appears. Refer to the Database Block Reference topic for more
information about the block types available.
1. In the Database Manager, in Ribbon view, on the Home tab, in the Blocks group, click
Generate.
- Or -
In Classic view, on the Blocks menu, click Generate.
A message about SAC appears.
2. Click OK to continue. The Generate Wizard dialog box appears.
3. Click the browse (...) button next to the Enter tag field to display the Select Tag Names dialog
box. The Select Tag Names dialog box appears.
4. From the Nodes list box, select the SCADA server containing the database block you want to
use.
5. In the Enter Tag Name field, enter the name of the block you want the Generate Wizard to use
as a template or select the block from the Tag Names list box.
6. Click OK.
1. In the Database Manager, in Ribbon view, on the Home tab, in the Blocks group, click
Generate.
9
IFIX Database Reference
- Or -
In Classic view, on the Blocks menu, click Generate.
A message about SAC appears.
2. Click OK to continue. The Generate Wizard dialog box appears.
3. Enter the required information on each page of the wizard. Click Next until you are on page 3
of the wizard.
4. On page 3 of the wizard, click the browse (...) button next to a field name to open the Select
Column dialog box.
5. Double-click the column (block field) that you want to use. The Select Column dialog box
closes and you return to page 3 of the wizard.
6. Repeat steps 5-6 for each field name that you want to add.
7. On page 3 of the wizard, enter information into the Prefix, Start, End, Inc, and Suffix field, as
required.
8. Click OK. When the wizard creates the blocks you specified, it will assign a custom value for
the block fields you have selected.
Duplicating Blocks
To duplicate blocks:
10
IFIX Database Reference
Managing Databases
Click any of the following links for more information about managing databases:
11
IFIX Database Reference
Next field of the previous block so that the chain remains intact.
3. Import one of the databases you want to merge into an empty database.
4. Import the other database.
Verifying a Database
To verify a database:
1. In the Database Manager, in Ribbon view, on the Home tab, in the Diagnostics group, click
Verify.
- Or -
In Classic view, on the Database Menu, click Verify.
If Database Manager detects no errors, the following text appears:
Database verified on node: [nodename]. No errors detected.
In the Database Manager, in Ribbon view, on the Home tab, in the Diagnostics group, click
Summary.
- Or -
In Classic view, on the Database menu, click Summary.
The Database Summary for Node dialog box appears.
The Database Summary lists the database blocks by block type. By scrolling through the list
box, you can see how many blocks are used and allocated for each block type.
• Database – displays the name of the database.
• Size – indicates the number of bytes actually in use by the database.
• SN – displays the serial number of the database generated anytime a block is added to or
12
IFIX Database Reference
deleted from the database. Allows you to determine if the database has been changed (by
adding or deleting a database block) since you last saved it. To do this, record the serial
number when you finish making changes to the database. You can later compare that
number with the number displayed in the Database Summary dialog box.
• I/O Count – displays the number of allocated blocks that use I/O. The block types are
AA, AI, AO, AR, BB, DA, DC, DI, DO, DR, MDI, and TX.
• Type – displays the type of block.
• Used – lists the number of blocks that exists for each block type.
• Allocated – lists the number of blocks allocated per block type. Each SCADA node
automatically pre-allocates a specific number of blocks for each block type to make
efficient use of memory and improve performance. The number of block allocated equals
the number of blocks of one type that fits in four kilobytes of memory. Since blocks vary
in size according to their type, the exact number of blocks varies for each block type.
Importing a Database
To import a database:
IMPORTANT: Be aware that before you perform a large import, you should adjust the
spreadsheet refresh rate to 20 or more seconds. If you leave the refresh rate at a low number,
such as the default of 5 seconds, and you try to import a large amount of tags, the database
may appear unresponsive. To adjust the refresh rate, in Classic view, on the Tools menu, click
Options, or in Ribbon view, on the Home tab, in the Settings group, click Options, and then
edit the value for the Spreadsheet Auto Refresh field, if it’s enabled. After this is done, you
can import the database.
1. In the Database Manager, in Ribbon view, on the Home tab, in the Process Database group,
click Import.
- Or -
In Classic view, on the Database Menu, click Import.
The following text appears:
SAC will be stopped while blocks are being imported and then restarted.
• If you are using Proficy Historian as your Historian and you import and open a
database on a machine that does not have Proficy Historian 3.1 or above installed,
fields added for Historian collection are disabled. Additionally, the values for
Historian fields are retained.
• All imported tags will be added to the default collector and collection by
Proficy Historian are enabled.
13
IFIX Database Reference
• If you have an existing database and import a new database and both
databases contain a tag with the same name, the existing database tag are
overwritten by the new database tag.
• If you have an existing database and those tags are not enabled for collection
in Historian, at reload time the tags are not enabled for collection. In other
words, this setting does not override Historian's settings.
Exporting a Database
To export a database:
1. In the Database Manager, in Ribbon view, on the Home tab, in the Process Database group,
click Export.
- Or -
In Classic view, on the Database menu, click Export.
The Export Database Blocks... dialog box appears.
2. Select the path and file type you want to use.
3. In the File Name field, enter the file name.
14
IFIX Database Reference
1. In the Database Manager, select the Do Not Prompt Next Time check box.
2. Click Yes to place this block on scan and to automatically place all blocks on scan that you
modify in the future.
TIP: You can also set the on/off scan setting for the database using preferences. For steps,
refer to the Setting Database Manager Preferences section.
• Reload a database.
• Save a database under a new database name.
IMPORTANT: When you reload a database, all I/O points are reset to the appropriate starting
values. Do not use this function during an active production cycle.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Options.
- Or -
In Classic view, on the View menu, click Options.
The Options Dialog Box appears.
2. Select the General Options preferences you want to enable.
3. Select the View Options preferences you want to enable.
4. Select the Edit Options preferences you want to enable.
Locating Data
Click the appropriate link below for more information about locating data:
15
IFIX Database Reference
The Database Manager lets you find data and replace data within a spreadsheet. For steps, refer to the
following sections:
16
IFIX Database Reference
To go to a row:
1. In the Database Manager, in Ribbon view, on the Home tab, in the Edit group, click Go to.
- Or -
In Classic view, on the Edit menu, click Go To.
The Go To dialog box appears.
2. From the Go to What list box, select Row.
3. Enter the row number you want to display.
To go to a column:
1. In Ribbon view, on the Home tab, in the Edit group, click Go to.
- Or -
In Classic view, on the Edit menu, click Go To.
The Go To dialog box appears.
2. From the Go to What list box, select Column.
3. Double-click the column you want to display from the Select any column list box.
To go to a specific block:
1. In Ribbon view, on the Home tab, in the Edit group, click Go to.
- Or -
In Classic view, on the Edit menu, click Go To.
The Go To dialog box appears.
2. From the Go to What list box, select Tag.
3. Click the browse (...) button and double-click the block you want to display.
17
IFIX Database Reference
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Options.
- Or -
In Classic view, on the View menu, click Options.
The Options Dialog Box appears.
2. From the View Options area, select Enable Spreadsheet Auto Refresh.
3. In the Enter refresh period field, type in the refresh rate you want.
IMPORTANT: Be aware that for a large database, you should increase the refresh rate to 20
or more seconds. Do not use the default of 5 seconds for large databases. If you leave the
refresh rate at low number, such as the default of 5 seconds, and you try to import a large
amount tags, the database may appear unresponsive.
1. In the Database Manager, in Ribbon view, on the View tab, in the SpreadSheet Settings
group, click Pause.
- Or -
In Classic view, on the Database Manager's toolbar, click Pause.
2. To resume updating the spreadsheet:
In Ribbon view, on the View tab, in the SpreadSheet Settings group, click Refresh.
- Or -
In Classic view, on the Database Manager's toolbar, click Refresh.
The spreadsheet resumes updating.
In the Database Manager, in Ribbon view, on the View tab, in the SpreadSheet Settings
group, click Refresh.
- Or -
In Classic view, on the Database Manager's toolbar, click the Refresh button.
18
IFIX Database Reference
Click the appropriate link below for more information about working with spreadsheet column
properties:
19
IFIX Database Reference
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Column tab, and then double-click the column you want to add from the Available
Columns list box.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Column tab, and then click the Load button.
3. Enter the name of the format file you want to open.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Column tab, and then click the Save button.
3. Enter the name of the format file you want to create.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
20
IFIX Database Reference
1. In the Database Manager, click and drag the right edge of the column heading.
2. Release the mouse when the column is the correct size.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Column tab, and then double-click the column you want to remove from the Display
Columns list box.
NOTE: The Tag Name column cannot be removed from the spreadsheet.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Column tab, and click Clear.
NOTE: The Tag Name column cannot be removed from the spreadsheet.
21
IFIX Database Reference
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Column tab.
3. From the Display Columns list box, select the column you want to move.
4. Click the up arrow button to move the column left in the spreadsheet. Click the down arrow
button to move the column right in the spreadsheet.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Column tab, and then create the layout you want as the new default.
3. Save the layout to a file.
4. Click OK to apply the new layout to the database.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Column tab, and then click the Load button.
3. Double-click the DEFAULT.FMT file.
4. Click OK to apply the default layout to the database.
22
IFIX Database Reference
Click the appropriate link below for more information about sorting the database:
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Sort tab, and then click the Load button.
3. Enter the name of the sort order file you want to open.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Sort tab, and then click the Save button.
3. Enter the name of the sort order file you want to create.
23
IFIX Database Reference
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Sort tab, and then double-click the column you want to add from the Display
Columns list box.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Sort tab, and then double-click the column you want to remove from the Sort Order
List box.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Sort tab, and select the column you want to sort from the Sort Order list box.
3. Click the Ascending button to sort a column in ascending order. Click the Descending button
to sort a column in descending order.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
24
IFIX Database Reference
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Sort tab, and then select the column you want to move from the Sort Order list box.
3. To move the column up in the list box, select the up arrow button. To move the column down,
select the down arrow button.
Disabling Sorting
To disable sorting:
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the view Menu, click Properties.
The Properties dialog box appears.
2. Click the Sort tab, and remove all the columns from the Sort Order list box.
3. Click the Save button and enter the name DEFAULT.SRT when prompted for a file name.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Sort tab, and then define the sort order you want to use as the new default.
3. Save the sort order to a file.
4. Click OK to apply the new sort order to the database.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
25
IFIX Database Reference
2. Click the Sort tab, and then click the Load button.
3. Double-click the DEFAULT.SRT file.
4. Click OK to apply the default query to the database.
Click the appropriate link below for more information about working with queries:
• Creating a Query
• Loading a Query
• Saving a Query
• Appending a New a Query to an Existing Query
• Overriding the Default Query
• Restoring the Default Query
Creating a Query
To create a query:
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Query tab, and enter the query you want.
Loading a Query
To load a query:
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Query tab, and then click the Load button.
3. Enter the name of the query file you want to open.
26
IFIX Database Reference
Saving a Query
To save a query:
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Query tab, and then click the Save button.
3. Enter the name of the query file you want to create.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Query tab, and press the right arrow key to position the cursor at the end of the field.
3. Enter the new query you want to append.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Query tab, and enter the query you want as the new default.
3. Save the query to a file.
4. Click OK to apply the new query to the database.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
27
IFIX Database Reference
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties dialog box appears.
2. Click the Query tab, and then click the Load button.
3. Double-click the DEFAULT.QRY file.
4. Click OK to apply the default query to the database.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Color tab.
3. Select the property you want to color.
4. Select the color you want to assign to the selected property.
1. In the Database Manager, in Ribbon view, on the Home or View tab, in the Settings group,
click Properties.
- Or -
In Classic view, on the View menu, click Properties.
The Properties Dialog Box appears.
2. Click the Font tab.
3. Select the font type, style, and size for the text in the spreadsheet.
NOTE: The first item in the list applies to Classic view only. Ribbon view includes all options.
28
IFIX Database Reference
NOTE: The following list applies to Classic view only. Ribbon view includes all options.
NOTE: The following steps apply to Classic view only. Ribbon view includes all options.
1. In the Database Manager, in Classic view, on the Tools Menu, click Customize. The
Customize dialog box appears.
2. Click the Toolbars tab.
3. Click and drag the button you want to add onto the toolbar.
NOTE: The following steps apply to Classic view only. Ribbon view includes all options.
1. In the Database Manager, in Classic view, on the Tools Menu, click Customize. The
Customize dialog box appears.
2. Select the Toolbar Tab.
3. Click and drag the button you want to remove off the toolbar.
NOTE: The following steps apply to Classic view only. Ribbon view includes all options.
1. In the Database Manager, in Classic view, on the Tools Menu, click Customize. The
Customize dialog box appears.
2. Click and drag the button you want to move to its new location.
29
IFIX Database Reference
1. In the Database Manager, in Ribbon view, on the Home tab, in the Customize Tools group,
click the Customize Dialog Box Launcher.
- Or -
In Classic view, on the Tools Menu, click Customize.
The Customize Dialog Box appears.
2. Click the Tools tab.
3. Select the application you want to launch on the Database Manager.
4. In the Menu Text field, enter the text you want displayed in the Tools menu.
5. Enter any arguments you want to use when the application runs. If you want to prompt the
user for arguments, select the Prompt for Arguments check box instead.
6. Select the Place Separator After This Entry check box to add a dividing line between this
menu entry and the next menu entry.
In the Database Manager, in Ribbon view, on the Home tab, in the Customize Tools group,
click Tools, then click the application you want to launch.
- Or -
In Classic view, on the Tools menu, click the application you want to launch.
1. In the Database Manager, in Ribbon view, on the Home tab, in the Customize Tools group,
click the Customize Dialog Box Launcher.
- Or -
30
IFIX Database Reference
1. In the Database Manager, in Ribbon view, on the Home tab, in the Customize Tools group,
click the Customize Dialog Box Launcher.
- Or -
In Classic view, on the Tools menu, click Customize.
The Customize dialog box appears.
2. Click the Tools tab.
3. Select the menu entry you want to delete and click the Delete button.
To launch an application:
In the Database Manager, in Ribbon view, on the Home tab, in the Customize Tools group,
click Tools, select an application.
- Or -
In Classic view, on the Tools Menu, click the application.
A
Analog Alarm
Analog Input
Analog Output
Analog Register
31
IFIX Database Reference
B-C
Boolean
Calculation
D
Dead Time
Device Control
Digital Alarm
Digital Input
Digital Output
Digital Register
E-L
Event Action
Extended Trend
Fanout
Histogram
Lead Lag
M-Q
Multi-State Digital
On-Off Control
Pareto
Program
PID
R-S
Ramp
Ratio Bias
Signal Select
32
IFIX Database Reference
SQL Data
SQL Trigger
Statistical Control
Statistical Data
T-Z
Text
Timer
Totalizer
Trend
Purpose
The Analog Alarm (AA) block sends and receives analog data from the I/O driver or OPC server to
provide alarm control. Using this block you can suspend alarms and define limits and priorities for
each alarm. The block can also wait a specified time interval before issuing an alarm, close a contact
when an alarm occurs, and automatically reissue and acknowledge alarms.
Features
• Is a primary block.
• Can be used as a stand-alone block.
• Generates alarms when values are outside of defined limits.
• Sends and receives values from an I/O driver or OPC server when placed in Automatic mode.
• Receives values from operator input in the Proficy iFIX WorkSpace, from scripts, from
Program blocks, or from Easy Database Access programs when operating in Manual mode.
• Can be used in a chain with exception-based or time-based processing.
• Can use linear scaling on values received. The following formula is used to determine the
linear scale value:
The equation for a line is Y = mX + b
Where Y is the scaled output value, X is the raw value from the PLC, m is the slope
of the line and b is the y intercept.
33
IFIX Database Reference
The slope for our linearization is defined by output range divided by the input.
m = (ScaleHigh - ScaleLow ) / (RawHigh - RawLow)
The y intercept is determined by using the low values and the slope.
b = ScaleLow - m(RawLow)
In the analog block this results in the block’s current value is equal to the driver
value times the slope plus the y intercept.
X_CV = (IO value)m + b
The driver value equates to the block current value minus the y intercept divided by
the slope.
IO Value = (X_CV – b) / m
Purpose
The Analog Input (AI) block sends and receives analog data from an I/O driver or OPC server every
time the Scan, Alarm, and Control (SAC) program scans the block.
Features
• Is a primary block.
• Can be used as a stand-alone block.
• Generates alarms when values are outside of defined limits.
• Sends and receives values from an I/O driver or OPC server when placed in Automatic mode.
• Receives values from operator input in the Proficy iFIX WorkSpace, from scripts, from
Program blocks, or from Easy Database Access programs when operating in Manual mode.
• Can be used in a chain with exception-based or time-based processing.
• Can use linear scaling on values received. The following formula is used to determine the
linear scale value:
The equation for a line is Y = mX + b
Where Y is the scaled output value, X is the raw value from the PLC, m is the slope
of the line and b is the y intercept.
The slope for our linearization is defined by output range divided by the input.
m = (ScaleHigh - ScaleLow ) / (RawHigh - RawLow)
The y intercept is determined by using the low values and the slope.
b = ScaleLow - m(RawLow)
In the analog block this results in the block’s current value is equal to the driver
value times the slope plus the y intercept.
X_CV = (IO value)m + b
34
IFIX Database Reference
The driver value equates to the block current value minus the y intercept divided by
the slope.
IO Value = (X_CV – b) / m
Purpose
The Analog Output (AO) block sends an analog signal to an I/O driver or OPC server every time it
receives a value from an upstream block, an operator, a Program block, a script, or from its Initial
Value field.
Features
• Is a primary block.
• Can be used as a stand-alone block.
• Can be used in a chain with exception-based or time-based processing.
• Can read back the current PLC value when iFIX starts or when the database is reloaded.
Values are only read back once when the database is initialized.
• Can use linear scaling on values received. The following formula is used to determine the
linear scale value:
The equation for a line is Y = mX + b
Where Y is the scaled output value, X is the raw value from the PLC, m is the slope
of the line and b is the y intercept.
The slope for our linearization is defined by output range divided by the input.
m = (ScaleHigh - ScaleLow ) / (RawHigh - RawLow)
The y intercept is determined by using the low values and the slope.
b = ScaleLow - m(RawLow)
In the analog block this results in the block’s current value is equal to the driver
value times the slope plus the y intercept.
X_CV = (IO value)m + b
The driver value equates to the block current value minus the y intercept divided by
the slope.
IO Value = (X_CV – b) / m
Purpose
The Analog Register (AR) block reads and writes analog values to process hardware. It provides both
input and output capacity in a single block using a minimum amount of memory because iFIX only
35
IFIX Database Reference
Features
• Is a primary block.
• Is always a stand-alone block.
• Sends and receives values from an I/O driver or OPC server.
• Requires no SAC processing.
• Lowers CPU overhead when compared to an Analog Input block and increases SAC
performance.
• Is processed when the picture containing the Analog Register block is displayed in the Proficy
iFIX WorkSpace, even when SAC is not running. The block is not processed when another
picture is displayed or when the operator exits the Proficy iFIX WorkSpace.
• Accepts pulse count or word value (register) analog signals, which are then converted to
engineering units (EGU) for viewing.
• Accesses up to 1024 Analog points in the same poll record.
• Does not support alarming.
• Can use linear scaling on values received. The following formula is used to determine the
linear scale value:
The equation for a line is Y = mX + b
Where Y is the scaled output value, X is the raw value from the PLC, m is the slope
of the line and b is the y intercept.
The slope for our linearization is defined by output range divided by the input.
m = (ScaleHigh - ScaleLow ) / (RawHigh - RawLow)
The y intercept is determined by using the low values and the slope.
b = ScaleLow - m(RawLow)
In the analog block this results in the block’s current value is equal to the driver
value times the slope plus the y intercept.
X_CV = (IO value)m + b
The driver value equates to the block current value minus the y intercept divided by
the slope.
IO Value = (X_CV – b) / m
36
IFIX Database Reference
B-C
Boolean Block
Purpose
The Boolean (BL) block calculates a single true/false output from multiple inputs.
Features
• Is a primary block.
• Can be used as a stand-alone block.
• Takes up to eight input values and calculates a single output value.
• Can use alarm states as inputs.
• Can be used in a chain with time-based or exception-based processing.
Calculation Block
Purpose
The Calculation (CA) block performs simple mathematical calculations on the value passed by the
upstream block and up to seven other constants or block values.
NOTE: The precision of calculations is fifteen digits. Round-off errors can occur in the sixteenth digit.
Features
• Is a secondary block.
• Accepts the output values and fields of other blocks.
• Accepts floating point, integer, or exponential constants.
• Can be used in a chain with time-based or exception-based processing. Note that if any of the
inputs (from B - H) are exception-based, the Calculation block will not trigger when any of
these change.
37
IFIX Database Reference
Purpose
The Dead Time (DT) block can delay the transfer of an input value to the next block in the chain.
Features
Purpose
The Device Control (DC) block coordinates the opening and closing of digital devices on the plant
floor based upon certain user-defined conditions. This block allows for the timed operation of a device
by confirming its status with feedback signals.
Features
• Is a primary block.
• Is an optional batch block.
• Can monitor up to 16 digital-input points and can output up to 8 digital-output points.
• Allows two feedback signals (confirm Open and confirm Close) for each output.
• Can be placed on scan by a RUN or CALL command in the Program block or through a Data
link.
• Executes all commands without interruption in Automatic mode.
• Suspends the execution of all commands in Manual mode.
Purpose
The Digital Alarm (DA) block sends and receives digital data (1 or 0) from an I/O driver or OPC
server to provide alarm control. Using this block, you can suspend alarms and define an alarm
condition and an alarm priority. The block can also wait a specified time interval before issuing an
alarm, close a contact when an alarm occurs, and automatically reissue and acknowledge alarms.
38
IFIX Database Reference
Features
• Is a primary block.
• Can be used as a stand-alone block.
• Generates alarms when values are outside of defined limits.
• Sends and receives values from an I/O driver or OPC server when placed in Automatic mode.
• Receives values from operator input in the Proficy iFIX WorkSpace, from scripts, from
Program blocks, or from Easy Database Access programs when operating in Manual mode.
• Can be used in a chain with exception-based or time-based processing.
Purpose
The Digital Input (DI) block sends and receives digital data (1 or 0) from an I/O driver or OPC server
every time the Scan, Alarm, and Control (SAC) program scans the block.
Features
• Is a primary block.
• Can be used as a stand-alone block.
• Generates alarms when values are outside of defined limits.
• Sends and receives values from an I/O driver or OPC server when placed in Automatic mode.
• Receives values from an operator input in the Proficy iFIX WorkSpace, from scripts, from
Program blocks, or from Easy Database Access programs when operating in Manual mode.
• Can be used in a chain with exception-based or time-based processing.
Purpose
The Digital Output (DO) block sends a digital value (1 or 0) to an I/O driver or OPC server every time
it receives a value from an upstream block, an operator, a Program block, a script, or from its Initial
Value field.
Because iFIX processes Digital Output blocks whenever a new value is sent to the hardware, they
generally operate as though they were latched. If you configure a Digital Output block as a stand alone
block, it outputs a digital value each time the value changes.
Features
39
IFIX Database Reference
• Is a primary block.
• Can be used as a stand-alone block.
• Can be used in a chain with exception-based or time-based processing.
• Can read back the current PLC value when iFIX starts or when the database is reloaded.
Values are only read back when the database is initialized.
• Can receive values from a Program block or a script.
Purpose
The Digital Register (DR) block reads and writes digital values to process hardware. It provides both
input and output capacity in a single block using a minimum amount of memory because iFIX only
processes the block when a picture that references it is open.
Features
• Is a primary block.
• Is always a stand-alone block.
• Sends and receives values from an I/O driver or OPC server.
• Requires no SAC processing.
• Lowers CPU overhead when compared to an Digital Input block and increases SAC
performance.
• Is processed when the picture containing the Digital Register block is displayed in the Proficy
iFIX WorkSpace, even when SAC is not running. The block is not processed when another
picture is displayed or when the operator exits the Proficy iFIX WorkSpace.
• Accepts pulse or digital signals.
• Accesses up to 1024 digital I/O points in the same poll record.
• Does not support alarming.
E-L
Purpose
The Event Action (EV) block tests the value or alarm condition of the previous block using IF-THEN-
ELSE logic. Based upon the outcome of the test expression, the block can then either open or close a
digital point or turn a block on or off scan.
40
IFIX Database Reference
Features
• Is a secondary block.
• Has undefined default values so that if a field is left blank, no action takes place.
• Tests up to two conditions consecutively.
Purpose
The Extended Trend (ETR) block collects up to 600 values from an upstream block. By using this
block, you can trend up to 10 minutes worth of data (assuming a one second scan time) with one block
instead of chaining multiple Trend blocks together. In addition, you can store several hours, or even
days of real-time data, by combining different scan rates in conjunction with the Average Compress
field.
The upstream primary block in the chain determines Extended Trend block’s scan time. When the
block receives a value, it stores the data and passes it to the next downstream block immediately. You
can display data collected by the block using a chart in the Proficy iFIX WorkSpace.
Note that the process database also provides a Trend block. This block trends up to 80 values. If you
need to trend more than 80 values, use the Extended Trend block.
Features
• Is a secondary block.
• Stores up to 600 values from an upstream block in a First In, First Out (FIFO) queue.
• Averages groups of data (optional) and stores the averages for trending.
• Displays values in the Proficy iFIX WorkSpace through a chart.
• Uses data in conjunction with Easy Database Access programs.
Fanout Block
Purpose
The Fanout (FN) block sends the value it receives to the Next Block and up to four additional blocks.
The block listed as a Next Block receives the value immediately. The additional destination blocks
receive the value the next time iFIX scans those blocks. If the destination block is in Manual mode, the
update is instantaneous.
Features
41
IFIX Database Reference
• Is a secondary block.
• Sends values to blocks that are in the same database.
• Requires that the target primary blocks be in Manual mode to receive values.
• Can only send values to a Trend block that is in the Next Block field.
• Does not place blocks on scan by sending its values.
• Does not generate alarms.
• Can be used in a chain with exception-based or time-based processing.
Histogram Block
Purpose
The Histogram (HS) block records how frequently a value occurs during a specified period.
Features
Display Considerations
The Histogram block displays only previously collected values. The Group field determines the
number of values the block collects before it displays them. For example, if the upstream block’s scan
rate is 5 seconds and you specify a Group value of 10, the chart only reflects the values collected
during the last 50 seconds.
Meanwhile, the Histogram block is collecting another set of values, which it will display at the end of
the next 50-second, scan interval. Note that if the upstream block is taken off scan, the histogram does
not register the frequency-of-occurrence data.
Purpose
The Lead Lag (LL) block allows you to simulate process dynamics by combining the advantages of
lead and lag compensation strategies.
TIP: We suggest you use this block only if you are thoroughly familiar with lead lag theory. If you
simply need a time delay, consider using the Dead Time block.
42
IFIX Database Reference
C1, C2, and the scan time (of the primary block) are in seconds. K is the constant defined in the
block’s Constant field.
Features
NOTE: Lead compensation tends to improve the rise time and overshoot of the system, but increases
the dead band. Lag compensation improves the steady-state response, but results in a longer rise time
since the dead band decreases.
M-Q
Purpose
The Multistate Digital Input (MDI) block provides a means of monitoring the state of one, two, or
three related digital inputs. The block produces a raw input value (0 - 7) based on digital values it
receives from an I/O driver or OPC server every time the Scan, Alarm, and Control (SAC) program
scans the block.
Features
• Is a primary block.
• Can be used as a stand-alone block.
• Provides more detailed information about a device than a Digital Input block.
• Generates alarms when values are outside of defined limits.
• Receives values from up to three driver I/O addresses or OPC servers.
• Receives values from Program blocks or from Easy Database Access programs.
43
IFIX Database Reference
Purpose
The On-Off Control (BB) block opens and closes up to two digital outputs based upon an incoming
analog value or an operator input.
Features
Pareto Block
Purpose
The Pareto (PA) block can accept up to eight inputs and calculate percentages for them.
Features
44
IFIX Database Reference
PID Block
Purpose
The PID block maintains balance in a closed loop by changing the controlled variable (an analog
output) in response to deviations from a user-defined set point. The difference between the actual value
(an analog input) and the set point value is the error, or deviation.
In response to errors, the PID block calculates an appropriate control output signal, which attempts to
reduce the error to zero. The adjustment that the PID block makes is a function of the difference
between the set point and the measurement, in addition to the values of the proportional band, the reset,
and the rate.
Features
• Maintains the balance in the process loop when operating in Automatic mode.
• Suspends updates to the PID algorithm when operating in Manual mode. You can change
block parameters, such as the Set Point, Tuning Parameters, and Engineering Units Output
from the keyboard in Manual mode.
Program Block
Purpose
The Program (PG) block provides a powerful means of running short programs to increase the degree
of automation in your process or to assist in batch control.
45
IFIX Database Reference
Features
• Is a Batch block.
• Works in Automatic mode by executing all programming commands without interruption.
• Works in Manual mode by suspending the execution of programming commands until the
block returns to Automatic mode. When returned to Automatic mode, the Program block
continues executing commands where it left off.
• Cannot execute time-related commands, such as WAITFOR, CALL, MAXWAIT,
WAITSTAT, SETDEBUG, and DELAY, when the scan time is either 0 or exception-based.
• Triggers an immediate scan on manual inputs. For example, if AI1 is in manual mode and the
Program block contains the command SETOUT AI1 50, an immediate scan of AI1 occurs
when the Program block runs.
R-S
Ramp Block
Purpose
The Ramp (RM) block decreases or increases a target output value. The block provides up to three
stages for ramping values. Each ramp stage lets you specify a target value and a ramp rate. The first
two stages also provide a hold time. At each scan cycle, the Ramp block sends its output value to the
block specified in the Next Block field.
Features
• Is a primary block.
• Is a control block.
• Can be used as a stand-alone block.
• Can have a ramp rate manually changed in the Proficy iFIX WorkSpace through a Data link.
• Can have a target value manually changed in the Proficy iFIX WorkSpace through a Data link
or by the Program block’s SETTARG command.
• Can have a hold time manually changed in the Proficy iFIX WorkSpace through a Data link
or by the Program block’s SETTIME command.
• Can send its value to any secondary block.
• Operates in Automatic mode by initializing its current value based on the Low Limit value.
On a transition to Automatic mode, the Ramp block begins the ramping process from where it
last left off, using either the value it had reached when it was placed in Manual mode, or the
latest values from the WorkSpace if the operator entered values while the block was in
Manual mode.
46
IFIX Database Reference
• Operates in Manual mode by initializing its current value from either a manual entry or the
Low Limit value. On a transition to Manual, iFIX suspends ramping until the block is
returned to Automatic mode. The last current value of the block is output until the block is
switched back to Automatic mode.
Purpose
The Ratio Bias (RB) block lets you change an incoming signal by adding a constant (bias) and/or by
multiplying by a constant (ratio). The block calculates the constant by subtracting an offset from the
signal.
Features
• Is a control block.
• Is a secondary block.
• Can be used in a chain with exception-based or time-based processing.
Purpose
The Signal Select (SS) block provides a means of sampling up to six inputs, manipulating the inputs
according to a user-selected mode, and sending the result to the next block.
Features
• Is a secondary block.
• Supports changing the Selected Mode from a Data link, Program block, or Easy Database
Access program.
• Accepts multiple inputs and generates one output.
47
IFIX Database Reference
Purpose
The SQL Data (SQD) block identifies the data to read or write when a SQL Trigger block executes.
The SQL Data block transfers data between the iFIX process database and your relational database.
Features
• Is a secondary block.
• Only follows an SQL Trigger block.
• Identifies up to 20 block and field name pairs.
• Chains to other SQL Data blocks.
• Determines the direction of data transfer.
Purpose
The SQL Trigger (SQT) block lets iFIX execute SQL commands.
Features
Purpose
The Statistical Control (SC) block lets you adjust a value from another block by calculating the
average offset and the rate of deviation from the average XBARBAR.
Features
• Is a statistical block.
48
IFIX Database Reference
Purpose
The Statistical Data (SD) block collects and performs statistical calculations on data.
Features
• Is a statistical block.
• Can be used as a stand-alone block.
• Can only be followed by a Statistical Control block, if appropriate.
• Receives data from Analog Input, Analog Output, Analog Alarm, and Calculation blocks
through the Input field, not from a previous block’s Next Block field.
• Supports from 12 to 50 groups and from 1 to 25 observations per group.
• Performs alarming and charting on control and warning limits.
• Provides out of process control alarms.
• Operates in Automatic mode by accepting automatic updates.
• Operates in Manual mode by accepting manual updates from operators or from Easy Database
Access programs.
• Can be used in a chain with exception-based processing if you do not enter a time in the Wait
Time field.
49
IFIX Database Reference
T-Z
Text Block
Purpose
The Text (TX) block reads and writes text from your process hardware or an OPC server. When the
block receives text, it sends the data to all enabled alarm destinations assigned to the block's alarm
areas.
Features
• Is a primary block.
• Reads up to 80 characters.
• Allows operators to write up to 80 characters from the Proficy iFIX WorkSpace.
• Displays a null-terminated message through a Data link referencing the A_CV field.
• Operates in Automatic mode by reading or writing its current value.
• Operates in Manual mode by disabling its processing.
• Supports the SIM driver.
IMPORTANT: You can only use the Text block with drivers that support it. Check with your
local GE Intelligent Platforms distributor for the availability of TX-compatible I/O drivers.
Timer Block
Purpose
The Timer (TM) block functions as a time counter by incrementing or decrementing its value.
Features
• Is a secondary block.
• Passes the value (0 or 1) from its upstream block to the downstream block.
• Can be chained from a Digital Input block, a Digital Alarm block, or a Boolean block. The
Timer block can also be chained from a Digital Output block but only if the Digital Output
block is part of an chain that starts with a scanned block.
• Starts counting from a preset value or zero.
• Increments its value up to 365 days or until reset.
• Decrements its value to a target value or to zero.
• Triggers an alarm upon reaching a target value.
50
IFIX Database Reference
Totalizer Block
Purpose
The Totalizer (TT) block maintains a floating-point total for values passed to it from upstream blocks.
Features
• Is a secondary block.
• Displays values in the Proficy iFIX WorkSpace and passes values to downstream blocks with
up to 15 digits of precision.
• Can be reset by using a SETOUT command from the Program block, a PUT operation from a
Easy Database Access program, reloading the process database, or restarting the computer.
• Can be used in a chain with exception-based or time-based processing.
Trend Block
Purpose
The Trend (TR) block can collects up to 80 values over a period of time. You can trend these values by
connecting the block to a chart in the Proficy iFIX WorkSpace.
The upstream primary block in the chain determines Trend block’s scan time. When the block receives
a value, it stores the data and passes it with negligible dead time (transportation delay) to the next
downstream block immediately.
Features
• Is a secondary block.
• Stores up to 80 values from an upstream block in the First In, First Out (FIFO) queue.
• Can be chained to other Trend blocks to trend more than 80 values.
• Averages groups of data and stores the averages for trending.
• Displays its data in a picture through a chart.
• Uses data in conjunction with Easy Database Access programs.
51
IFIX Database Reference
A
Analog Alarm
Analog Input
Analog Output
Analog Register
B-C
Boolean
Calculation
D
Dead Time
Device Control
Digital Alarm
Digital Input
Digital Output
Digital Register
E-L
Event Action
Extended Trend
Fanout
Histogram
Lead Lag
M-Q
Multistate Digital Input
52
IFIX Database Reference
On-Off Control
Pareto
PID
Program
R-S
Ramp
Ratio Bias
Signal Select
SQL Data
SQL Trigger
Statistical Control
Statistical Data
T-Z
Text
Timer
Totalizer
Trend
53
IFIX Database Reference
A_ALMINTIME The time and date at which the block N/A. This is a display
generated the alarm. only field.
A_ALMLASTTIME The time and date at which the block last N/A. This is a display
generated an alarm. only field.
A_ALMSN The serial number of the alarm area N/A. This is a display
database. only field.
A_ALMOCCUR The number of times a block goes in and N/A. This is a display
F_ALMOCCUR out of alarm before it is acknowledged. only field.
A_AREA1 through The alarm areas assigned to the block. ALL or an alarm area
A_AREA15 name.
54
IFIX Database Reference
A_DTDEV The length of time to wait before Any time from 00:00 to
generating deviation alarms. 50:00.
A_DTHH The length of time to wait before Any time from 00:00 to
generating High High alarms. 50:00.
A_DTHI The length of time to wait before Any time from 00:00 to
generating High alarms. 50:00.
A_DTLL The length of time to wait before Any time from 00:00 to
generating Low Low alarms. 50:00.
A_DTLO The length of time to wait before Any time from 00:00 to
generating Low alarms. 50:00.
55
IFIX Database Reference
A_DTOTH The length of time to wait before Any time from 00:00 to
generating other alarms. 50:00.
A_DTROC The length of time to wait before Any time from 00:00 to
generating rate of change alarms. 50:00.
A_DVALM The current alarm status for deviation N/A. This is a display
alarms. only field.
A_EOUT Yes, if the block writes data to the process Yes or No.
hardware, or No, if the block does not.
56
IFIX Database Reference
A_ETAG The first four characters of the blocks N/A. This field is
engineering units label. provided for backward
compatibility.
A_HHALM The current alarm status for High High N/A. This is a display
alarms. only field.
A_HHPRI The alarm priority of High High alarms. Low, Medium, or High.
A_HIHI The blocks High High alarm limit. A numeric value within
E_HIHI the EGU range.
F_HIHI
A_HIALM The current alarm status for High alarms. N/A. This is a display
only field.
A_HIST_COLLECT Sets whether or not this block is under Yes (1) or No (0).
F_HIST_COLLECT collection.
57
IFIX Database Reference
A_HIST_INTERVAL The collection interval for this block. The A float value, in
F_HIST_INTERVAL value of this field must be greater than the milliseconds. Values
value of the A_HIST_OFFSET and must be entered in
F_HIST_OFFSET fields. increments of 100.
Minimum value: 100
Use the following formula to determine if
ms.
the entered value is acceptable for this
field.
A_/F_HIST_INTERVAL >
A_/F_HIST_OFFSET * 1000
NOTE: The values for the
A_HIST_OFFSET and F_HIST_OFFSET
fields are in seconds.
58
IFIX Database Reference
A_IODV The name of the blocks I/O driver. Depends on your driver.
Refer to your driver
manual for more
information.
A_LLALM The current alarm status for Low Low N/A. This is a display
alarms. only field.
A_LLPRI The alarm priority of Low Low alarms. Low, Medium, or High.
A_LOALM The current alarm status for Low alarms. N/A. This is a display
only field.
A_LOLO The blocks Low Low alarm limit. A numeric value within
E_LOLO the EGU range.
F_LOLO
59
IFIX Database Reference
A_NAME The blocks type, for example AI for an N/A. This is a display
Analog Input block. only field.
A_NAREA Enters a new alarm area in the alarm area N/A. This is a write only
database. field.
A_NEXT The name of the next block in the chain. N/A. This is a display
only field.
A_OPCLIMIT The hardware options of the OPC server. N/A. This is a display
only field.
A_OPCQLTY The quality status of the OPC server. N/A. This is a display
only field.
60